highcharts 12.0.1 → 12.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (304) hide show
  1. package/bower.json +1 -1
  2. package/es-modules/Core/Axis/Axis.js +1 -1
  3. package/es-modules/Core/Renderer/SVG/SVGElement.js +8 -2
  4. package/es-modules/Core/Renderer/SVG/TextBuilder.js +1 -1
  5. package/es-modules/Core/Tooltip.js +2 -1
  6. package/es-modules/Core/Utilities.js +53 -53
  7. package/es-modules/Extensions/Boost/WGLRenderer.js +12 -4
  8. package/es-modules/Extensions/Drilldown/Drilldown.js +3 -3
  9. package/es-modules/Series/Line/LineSeries.js +2 -4
  10. package/es-modules/Stock/RangeSelector/RangeSelector.js +1 -1
  11. package/es-modules/tsconfig.tsbuildinfo +1 -1
  12. package/highcharts-3d.js +2 -2
  13. package/highcharts-3d.src.js +5 -5
  14. package/highcharts-gantt.js +5 -5
  15. package/highcharts-gantt.src.js +30 -25
  16. package/highcharts-more.js +2 -2
  17. package/highcharts-more.src.js +5 -5
  18. package/highcharts.js +3 -3
  19. package/highcharts.src.js +24 -19
  20. package/highmaps.js +5 -5
  21. package/highmaps.src.js +27 -22
  22. package/highstock.js +5 -5
  23. package/highstock.src.js +30 -25
  24. package/indicators/acceleration-bands.js +2 -2
  25. package/indicators/acceleration-bands.src.js +5 -5
  26. package/indicators/accumulation-distribution.js +2 -2
  27. package/indicators/accumulation-distribution.src.js +5 -5
  28. package/indicators/ao.js +2 -2
  29. package/indicators/ao.src.js +5 -5
  30. package/indicators/apo.js +2 -2
  31. package/indicators/apo.src.js +5 -5
  32. package/indicators/aroon-oscillator.js +2 -2
  33. package/indicators/aroon-oscillator.src.js +5 -5
  34. package/indicators/aroon.js +2 -2
  35. package/indicators/aroon.src.js +5 -5
  36. package/indicators/atr.js +2 -2
  37. package/indicators/atr.src.js +5 -5
  38. package/indicators/bollinger-bands.js +2 -2
  39. package/indicators/bollinger-bands.src.js +5 -5
  40. package/indicators/cci.js +2 -2
  41. package/indicators/cci.src.js +5 -5
  42. package/indicators/chaikin.js +2 -2
  43. package/indicators/chaikin.src.js +5 -5
  44. package/indicators/cmf.js +2 -2
  45. package/indicators/cmf.src.js +5 -5
  46. package/indicators/cmo.js +2 -2
  47. package/indicators/cmo.src.js +5 -5
  48. package/indicators/dema.js +2 -2
  49. package/indicators/dema.src.js +5 -5
  50. package/indicators/disparity-index.js +2 -2
  51. package/indicators/disparity-index.src.js +5 -5
  52. package/indicators/dmi.js +2 -2
  53. package/indicators/dmi.src.js +5 -5
  54. package/indicators/dpo.js +2 -2
  55. package/indicators/dpo.src.js +5 -5
  56. package/indicators/ema.js +1 -1
  57. package/indicators/ema.src.js +4 -4
  58. package/indicators/ichimoku-kinko-hyo.js +2 -2
  59. package/indicators/ichimoku-kinko-hyo.src.js +5 -5
  60. package/indicators/indicators-all.js +2 -2
  61. package/indicators/indicators-all.src.js +5 -5
  62. package/indicators/indicators.js +2 -2
  63. package/indicators/indicators.src.js +5 -5
  64. package/indicators/keltner-channels.js +2 -2
  65. package/indicators/keltner-channels.src.js +5 -5
  66. package/indicators/klinger.js +2 -2
  67. package/indicators/klinger.src.js +5 -5
  68. package/indicators/macd.js +2 -2
  69. package/indicators/macd.src.js +5 -5
  70. package/indicators/mfi.js +2 -2
  71. package/indicators/mfi.src.js +5 -5
  72. package/indicators/momentum.js +2 -2
  73. package/indicators/momentum.src.js +5 -5
  74. package/indicators/natr.js +2 -2
  75. package/indicators/natr.src.js +5 -5
  76. package/indicators/obv.js +2 -2
  77. package/indicators/obv.src.js +5 -5
  78. package/indicators/pivot-points.js +2 -2
  79. package/indicators/pivot-points.src.js +5 -5
  80. package/indicators/ppo.js +2 -2
  81. package/indicators/ppo.src.js +5 -5
  82. package/indicators/price-channel.js +2 -2
  83. package/indicators/price-channel.src.js +5 -5
  84. package/indicators/price-envelopes.js +2 -2
  85. package/indicators/price-envelopes.src.js +5 -5
  86. package/indicators/psar.js +2 -2
  87. package/indicators/psar.src.js +5 -5
  88. package/indicators/regressions.js +2 -2
  89. package/indicators/regressions.src.js +5 -5
  90. package/indicators/roc.js +2 -2
  91. package/indicators/roc.src.js +5 -5
  92. package/indicators/rsi.js +2 -2
  93. package/indicators/rsi.src.js +5 -5
  94. package/indicators/slow-stochastic.js +2 -2
  95. package/indicators/slow-stochastic.src.js +5 -5
  96. package/indicators/stochastic.js +2 -2
  97. package/indicators/stochastic.src.js +5 -5
  98. package/indicators/supertrend.js +2 -2
  99. package/indicators/supertrend.src.js +5 -5
  100. package/indicators/tema.js +2 -2
  101. package/indicators/tema.src.js +5 -5
  102. package/indicators/trendline.js +2 -2
  103. package/indicators/trendline.src.js +5 -5
  104. package/indicators/trix.js +2 -2
  105. package/indicators/trix.src.js +5 -5
  106. package/indicators/volume-by-price.js +2 -2
  107. package/indicators/volume-by-price.src.js +5 -5
  108. package/indicators/vwap.js +2 -2
  109. package/indicators/vwap.src.js +5 -5
  110. package/indicators/williams-r.js +2 -2
  111. package/indicators/williams-r.src.js +5 -5
  112. package/indicators/wma.js +2 -2
  113. package/indicators/wma.src.js +5 -5
  114. package/indicators/zigzag.js +2 -2
  115. package/indicators/zigzag.src.js +5 -5
  116. package/modules/accessibility.js +2 -2
  117. package/modules/accessibility.src.js +5 -5
  118. package/modules/annotations-advanced.js +4 -4
  119. package/modules/annotations-advanced.src.js +8 -8
  120. package/modules/annotations.js +2 -2
  121. package/modules/annotations.src.js +7 -7
  122. package/modules/arc-diagram.js +2 -2
  123. package/modules/arc-diagram.src.js +5 -5
  124. package/modules/arrow-symbols.js +2 -2
  125. package/modules/arrow-symbols.src.js +5 -5
  126. package/modules/boost-canvas.js +2 -2
  127. package/modules/boost-canvas.src.js +21 -10
  128. package/modules/boost.js +2 -2
  129. package/modules/boost.src.js +21 -10
  130. package/modules/broken-axis.js +2 -2
  131. package/modules/broken-axis.src.js +5 -5
  132. package/modules/bullet.js +2 -2
  133. package/modules/bullet.src.js +5 -5
  134. package/modules/coloraxis.js +2 -2
  135. package/modules/coloraxis.src.js +5 -5
  136. package/modules/current-date-indicator.js +2 -2
  137. package/modules/current-date-indicator.src.js +5 -5
  138. package/modules/cylinder.js +2 -2
  139. package/modules/cylinder.src.js +5 -5
  140. package/modules/data-tools.js +2 -2
  141. package/modules/data-tools.src.js +5 -5
  142. package/modules/data.js +2 -2
  143. package/modules/data.src.js +5 -5
  144. package/modules/datagrouping.js +2 -2
  145. package/modules/datagrouping.src.js +5 -5
  146. package/modules/debugger.js +2 -2
  147. package/modules/debugger.src.js +5 -5
  148. package/modules/dependency-wheel.js +2 -2
  149. package/modules/dependency-wheel.src.js +5 -5
  150. package/modules/dotplot.js +2 -2
  151. package/modules/dotplot.src.js +5 -5
  152. package/modules/drag-panes.js +2 -2
  153. package/modules/drag-panes.src.js +5 -5
  154. package/modules/draggable-points.js +2 -2
  155. package/modules/draggable-points.src.js +5 -5
  156. package/modules/drilldown.js +2 -2
  157. package/modules/drilldown.src.js +8 -8
  158. package/modules/dumbbell.js +2 -2
  159. package/modules/dumbbell.src.js +5 -5
  160. package/modules/export-data.js +2 -2
  161. package/modules/export-data.src.js +5 -5
  162. package/modules/exporting.js +2 -2
  163. package/modules/exporting.src.js +5 -5
  164. package/modules/flowmap.js +2 -2
  165. package/modules/flowmap.src.js +5 -5
  166. package/modules/full-screen.js +2 -2
  167. package/modules/full-screen.src.js +5 -5
  168. package/modules/funnel.js +2 -2
  169. package/modules/funnel.src.js +5 -5
  170. package/modules/funnel3d.js +2 -2
  171. package/modules/funnel3d.src.js +5 -5
  172. package/modules/gantt.js +5 -5
  173. package/modules/gantt.src.js +9 -9
  174. package/modules/geoheatmap.js +2 -2
  175. package/modules/geoheatmap.src.js +5 -5
  176. package/modules/grid-axis.js +2 -2
  177. package/modules/grid-axis.src.js +5 -5
  178. package/modules/heatmap.js +3 -3
  179. package/modules/heatmap.src.js +6 -6
  180. package/modules/heikinashi.js +2 -2
  181. package/modules/heikinashi.src.js +5 -5
  182. package/modules/histogram-bellcurve.js +2 -2
  183. package/modules/histogram-bellcurve.src.js +5 -5
  184. package/modules/hollowcandlestick.js +2 -2
  185. package/modules/hollowcandlestick.src.js +5 -5
  186. package/modules/item-series.js +2 -2
  187. package/modules/item-series.src.js +5 -5
  188. package/modules/lollipop.js +2 -2
  189. package/modules/lollipop.src.js +5 -5
  190. package/modules/map.js +4 -4
  191. package/modules/map.src.js +6 -6
  192. package/modules/marker-clusters.js +2 -2
  193. package/modules/marker-clusters.src.js +5 -5
  194. package/modules/mouse-wheel-zoom.js +2 -2
  195. package/modules/mouse-wheel-zoom.src.js +5 -5
  196. package/modules/navigator.js +2 -2
  197. package/modules/navigator.src.js +5 -5
  198. package/modules/networkgraph.js +2 -2
  199. package/modules/networkgraph.src.js +5 -5
  200. package/modules/no-data-to-display.js +2 -2
  201. package/modules/no-data-to-display.src.js +5 -5
  202. package/modules/offline-exporting.js +2 -2
  203. package/modules/offline-exporting.src.js +6 -6
  204. package/modules/organization.js +2 -2
  205. package/modules/organization.src.js +5 -5
  206. package/modules/overlapping-datalabels.js +2 -2
  207. package/modules/overlapping-datalabels.src.js +5 -5
  208. package/modules/parallel-coordinates.js +2 -2
  209. package/modules/parallel-coordinates.src.js +5 -5
  210. package/modules/pareto.js +2 -2
  211. package/modules/pareto.src.js +5 -5
  212. package/modules/pathfinder.js +2 -2
  213. package/modules/pathfinder.src.js +5 -5
  214. package/modules/pattern-fill.js +2 -2
  215. package/modules/pattern-fill.src.js +5 -5
  216. package/modules/pictorial.js +2 -2
  217. package/modules/pictorial.src.js +5 -5
  218. package/modules/pointandfigure.js +2 -2
  219. package/modules/pointandfigure.src.js +5 -5
  220. package/modules/price-indicator.js +2 -2
  221. package/modules/price-indicator.src.js +5 -5
  222. package/modules/pyramid3d.js +2 -2
  223. package/modules/pyramid3d.src.js +5 -5
  224. package/modules/renko.js +2 -2
  225. package/modules/renko.src.js +5 -5
  226. package/modules/sankey.js +2 -2
  227. package/modules/sankey.src.js +5 -5
  228. package/modules/series-label.js +2 -2
  229. package/modules/series-label.src.js +5 -5
  230. package/modules/series-on-point.js +2 -2
  231. package/modules/series-on-point.src.js +5 -5
  232. package/modules/solid-gauge.js +2 -2
  233. package/modules/solid-gauge.src.js +5 -5
  234. package/modules/sonification.js +2 -2
  235. package/modules/sonification.src.js +5 -5
  236. package/modules/static-scale.js +2 -2
  237. package/modules/static-scale.src.js +5 -5
  238. package/modules/stock-tools.js +2 -2
  239. package/modules/stock-tools.src.js +7 -7
  240. package/modules/stock.js +5 -5
  241. package/modules/stock.src.js +9 -9
  242. package/modules/streamgraph.js +2 -2
  243. package/modules/streamgraph.src.js +5 -5
  244. package/modules/sunburst.js +2 -2
  245. package/modules/sunburst.src.js +5 -5
  246. package/modules/textpath.js +2 -2
  247. package/modules/textpath.src.js +5 -5
  248. package/modules/tiledwebmap.js +2 -2
  249. package/modules/tiledwebmap.src.js +5 -5
  250. package/modules/tilemap.js +2 -2
  251. package/modules/tilemap.src.js +5 -5
  252. package/modules/timeline.js +2 -2
  253. package/modules/timeline.src.js +5 -5
  254. package/modules/treegraph.js +2 -2
  255. package/modules/treegraph.src.js +5 -5
  256. package/modules/treegrid.js +2 -2
  257. package/modules/treegrid.src.js +5 -5
  258. package/modules/treemap.js +2 -2
  259. package/modules/treemap.src.js +5 -5
  260. package/modules/variable-pie.js +2 -2
  261. package/modules/variable-pie.src.js +5 -5
  262. package/modules/variwide.js +2 -2
  263. package/modules/variwide.src.js +5 -5
  264. package/modules/vector.js +2 -2
  265. package/modules/vector.src.js +5 -5
  266. package/modules/venn.js +2 -2
  267. package/modules/venn.src.js +5 -5
  268. package/modules/windbarb.js +2 -2
  269. package/modules/windbarb.src.js +5 -5
  270. package/modules/wordcloud.js +2 -2
  271. package/modules/wordcloud.src.js +5 -5
  272. package/modules/xrange.js +2 -2
  273. package/modules/xrange.src.js +5 -5
  274. package/package.json +1 -1
  275. package/standalone-navigator.js +3 -3
  276. package/standalone-navigator.src.js +25 -20
  277. package/themes/avocado.js +2 -2
  278. package/themes/avocado.src.js +5 -5
  279. package/themes/brand-dark.js +2 -2
  280. package/themes/brand-dark.src.js +5 -5
  281. package/themes/brand-light.js +2 -2
  282. package/themes/brand-light.src.js +5 -5
  283. package/themes/dark-blue.js +2 -2
  284. package/themes/dark-blue.src.js +5 -5
  285. package/themes/dark-green.js +2 -2
  286. package/themes/dark-green.src.js +5 -5
  287. package/themes/dark-unica.js +2 -2
  288. package/themes/dark-unica.src.js +5 -5
  289. package/themes/gray.js +2 -2
  290. package/themes/gray.src.js +5 -5
  291. package/themes/grid-light.js +2 -2
  292. package/themes/grid-light.src.js +5 -5
  293. package/themes/grid.js +2 -2
  294. package/themes/grid.src.js +5 -5
  295. package/themes/high-contrast-dark.js +2 -2
  296. package/themes/high-contrast-dark.src.js +5 -5
  297. package/themes/high-contrast-light.js +2 -2
  298. package/themes/high-contrast-light.src.js +5 -5
  299. package/themes/sand-signika.js +2 -2
  300. package/themes/sand-signika.src.js +5 -5
  301. package/themes/skies.js +2 -2
  302. package/themes/skies.src.js +5 -5
  303. package/themes/sunset.js +2 -2
  304. package/themes/sunset.src.js +5 -5
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v12.0.1 (2024-11-28)
2
+ * Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/networkgraph
4
4
  * @requires highcharts
5
5
  *
@@ -8,4 +8,4 @@
8
8
  * (c) 2010-2024 Torstein Honsi
9
9
  *
10
10
  * License: www.highcharts.com/license
11
- */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("highcharts"),require("highcharts").SVGElement,require("highcharts").SeriesRegistry):"function"==typeof define&&define.amd?define("highcharts/networkgraph",[["highcharts/highcharts"],["highcharts/highcharts","SVGElement"],["highcharts/highcharts","SeriesRegistry"]],e):"object"==typeof exports?exports["highcharts/networkgraph"]=e(require("highcharts"),require("highcharts").SVGElement,require("highcharts").SeriesRegistry):t.Highcharts=e(t.Highcharts,t.Highcharts.SVGElement,t.Highcharts.SeriesRegistry)}(this,(t,e,i)=>(()=>{"use strict";var s,o={28:t=>{t.exports=e},512:t=>{t.exports=i},563:e=>{e.exports=t}},r={};function a(t){var e=r[t];if(void 0!==e)return e.exports;var i=r[t]={exports:{}};return o[t](i,i.exports,a),i.exports}a.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return a.d(e,{a:e}),e},a.d=(t,e)=>{for(var i in e)a.o(e,i)&&!a.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},a.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var n={};a.d(n,{default:()=>tS});var h=a(563),l=/*#__PURE__*/a.n(h),d=a(28),p=/*#__PURE__*/a.n(d);let{composed:c}=l(),{addEvent:u,pushUnique:f}=l();function m(){let t,e,i;let s=this;s.container&&(t=u(s.container,"mousedown",t=>{let o=s.hoverPoint;o&&o.series&&o.series.hasDraggableNodes&&o.series.options.draggable&&(o.series.onMouseDown(o,t),e=u(s.container,"mousemove",t=>o&&o.series&&o.series.onMouseMove(o,t)),i=u(s.container.ownerDocument,"mouseup",t=>(e(),i(),o&&o.series&&o.series.onMouseUp(o,t))))})),u(s,"destroy",function(){t()})}let g={compose:function(t){f(c,"DragNodes")&&u(t,"load",m)},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,a=t.fixedPosition.chartX-r.chartX,n=t.fixedPosition.chartY-r.chartY,h=o.graphLayoutsLookup;(Math.abs(a)>5||Math.abs(n)>5)&&(i=t.fixedPosition.plotX-a,s=t.fixedPosition.plotY-n,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)})}},{setAnimation:y}=l(),{composed:x}=l(),{addEvent:b,pushUnique:k}=l();function v(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation()}),this.redraw())}function N(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation(!1)}),this.redraw())}function L(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(t=>{t.stop()})}function P(){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(y(!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()})}}let w={compose:function(t){k(x,"GraphLayout")&&(b(t,"afterPrint",v),b(t,"beforePrint",N),b(t,"predraw",L),b(t,"render",P))},integrations:{},layouts:{}};var S=a(512),M=/*#__PURE__*/a.n(S);let{series:{prototype:X,prototype:{pointClass:{prototype:T}}}}=M(),{defined:Y,extend:D,find:E,merge:F,pick:C}=l();!function(t){function e(){return this.data=[].concat(this.points||[],this.nodes),X.destroy.apply(this,arguments)}function i(){this.nodes&&(this.nodes.forEach(t=>{t.destroy()}),this.nodes.length=0),X.setData.apply(this,arguments)}function s(t){let e=arguments,i=this.isNode?this.linksTo.concat(this.linksFrom):[this.fromNode,this.toNode];"select"!==t&&i.forEach(t=>{t&&t.series&&(T.setState.apply(t,e),!t.isNode&&(t.fromNode.graphic&&T.setState.apply(t.fromNode,e),t.toNode&&t.toNode.graphic&&T.setState.apply(t.toNode,e)))}),T.setState.apply(this,e)}function o(t,e,i,s){let o=this.series.options.nodes,r=this.series.options.data,a=r?.length||0,n=r?.[this.index];if(T.update.call(this,t,!this.isNode&&e,i,s),this.isNode){let t=(o||[]).reduce((t,e,i)=>this.id===e.id?i:t,-1),s=F(o&&o[t]||{},r?.[this.index]||{});r&&(n?r[this.index]=n:r.length=a),o?t>=0?o[t]=s:o.push(s):this.series.options.nodes=[s],C(e,!0)&&this.series.chart.redraw(i)}}t.compose=function(t,r){let a=t.prototype,n=r.prototype;return a.setNodeState=s,a.setState=s,a.update=o,n.destroy=e,n.setData=i,r},t.createNode=function(t){let e=this.pointClass,i=(t,e)=>E(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,D({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=C(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={};X.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=>{Y(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=C(i.options.colorIndex,e[i.from].colorIndex):i.color=i.options.color||e[i.from].color),Y(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=s,t.updateNode=o}(s||(s={}));let I=s,{series:{prototype:A,prototype:{pointClass:O}}}=M(),{addEvent:R,css:q,defined:B,extend:G,pick:H}=l();class K 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":H(e.width,t.width),stroke:e.color||t.color,dashstyle:e.dashStyle||t.dashStyle,opacity:H(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(){q(this.series.chart.container,{cursor:"move"})}),R(this,"mouseOut",function(){q(this.series.chart.container,{cursor:"default"})}))}isValid(){return!this.isNode||B(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,s=i.options.nodes||[],o,r=s.length;if(this.isNode){for(i.points=[],[].concat(this.linksFrom).concat(this.linksTo).forEach(function(t){(o=t.fromNode.linksFrom.indexOf(t))>-1&&t.fromNode.linksFrom.splice(o,1),(o=t.toNode.linksTo.indexOf(t))>-1&&t.toNode.linksTo.splice(o,1),A.removePoint.call(i,i.data.indexOf(t),!1,!1)}),i.points=i.data.slice(),i.nodes.splice(i.nodes.indexOf(this),1);r--;)if(s[r].id===this.options.id){i.options.nodes.splice(r,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})})))}}G(K.prototype,{setState:I.setNodeState});let U={attractive:function(t,e,i,s){let o=t.getMass(),r=i.x/s*e,a=i.y/s*e;t.fromNode.fixedPosition||(t.fromNode.dispX-=r*o.fromNode/t.fromNode.degree,t.fromNode.dispY-=a*o.fromNode/t.fromNode.degree),t.toNode.fixedPosition||(t.toNode.dispX+=r*o.toNode/t.toNode.degree,t.toNode.dispY+=a*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}};class j{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 t=this.box.width/2,e=this.box.height/2;this.nodes[0]=new j({left:this.box.left,top:this.box.top,width:t,height:e}),this.nodes[1]=new j({left:this.box.left+t,top:this.box.top,width:t,height:e}),this.nodes[2]=new j({left:this.box.left+t,top:this.box.top+e,width:t,height:e}),this.nodes[3]=new j({left:this.box.left,top:this.box.top+e,width:t,height:e})}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(t,e){let i;this.isInternal?this.nodes[this.getBoxPosition(t)].insert(t,e-1):(this.isEmpty=!1,this.body?e?(this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,e-1),this.body=!0),this.nodes[this.getBoxPosition(t)].insert(t,e-1)):((i=new j({top:t.plotX||NaN,left:t.plotY||NaN,width:.1,height:.1})).body=t,i.isInternal=!1,this.nodes.push(i)):(this.isInternal=!1,this.body=t))}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}}let z=class{constructor(t,e,i,s){this.box={left:t,top:e,width:i,height:s},this.maxDepth=25,this.root=new j(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)}}},V={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,a=(e.plotX+e.dispX-o)*i,n=(e.plotY+e.dispY-r)*i,h=Math.abs,l=h(a)/(a||1),d=h(n)/(n||1),p=l*Math.min(s,Math.abs(a)),c=d*Math.min(s,Math.abs(n));e.prevX=e.plotX+e.dispX,e.prevY=e.plotY+e.dispY,e.plotX+=p,e.plotY+=c,e.temperature=t.vectorLength({x:p,y:c})},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)}},{win:Q}=l(),{clamp:$,defined:_,isFunction:W,fireEvent:J,pick:Z}=l();class tt{constructor(){this.box={},this.currentStep=0,this.initialRendering=!0,this.links=[],this.nodes=[],this.series=[],this.simulation=!1}static compose(t){w.compose(t),w.integrations.euler=U,w.integrations.verlet=V,w.layouts["reingold-fruchterman"]=tt}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=w.integrations[t.integration],this.enableSimulation=t.enableSimulation,this.attractiveForce=Z(t.attractiveForce,this.integration.attractiveForceFunction),this.repulsiveForce=Z(t.repulsiveForce,this.integration.repulsiveForceFunction),this.approximation=t.approximation}updateSimulation(t){this.enableSimulation=Z(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&&Q.cancelAnimationFrame(this.simulation),this.simulation=Q.requestAnimationFrame(()=>this.step())):(this.simulation=!1,this.series.forEach(t=>{J(t,"afterSimulation")}))}}stop(){this.simulation&&Q.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=Z(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 z(this.box.left,this.box.top,this.box.width,this.box.height),this.quadTree.insertNodes(this.nodes)}initPositions(){let t=this.options.initialPositions;if(W(t))for(let e of(t.call(this),this.nodes))_(e.prevX)||(e.prevX=e.plotX),_(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={},a=this.options.initialPositionRadius,n=t=>{for(let e of t.linksFrom||[])r[e.toNode.id]||(r[e.toNode.id]=!0,h.push(e.toNode),n(e.toNode))},h=[];for(let t of o)h.push(t),n(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=Z(t.plotX,e.width/2+a*Math.cos(i*s)),t.plotY=t.prevY=Z(t.plotY,e.height/2+a*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,a=i.length;r<a;++r)(t=i[r]).plotX=t.prevX=Z(t.plotX,e.width*o(r)),t.plotY=t.prevY=Z(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=$(t.plotX,e.left+i,e.width-i),t.plotY=$(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)}}}let{merge:te,syncTimeout:ti}=l(),{animObject:ts}=l(),{deg2rad:to}=l(),{addEvent:tr,merge:ta,uniqueKey:tn,defined:th,extend:tl}=l();function td(t,e){e=ta(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},e);let i=this.renderer.url,s=this.text||this,o=s.textPath,{attributes:r,enabled:a}=e;if(t=t||o&&o.path,o&&o.undo(),t&&a){let e=tr(s,"afterModifyTree",e=>{if(t&&a){let o=t.attr("id");o||t.attr("id",o=tn());let a={x:0,y:0};th(r.dx)&&(a.dx=r.dx,delete r.dx),th(r.dy)&&(a.dy=r.dy,delete r.dy),s.attr(a),this.attr({transform:""}),this.box&&(this.box=this.box.destroy());let n=e.nodes.slice(0);e.nodes.length=0,e.nodes[0]={tagName:"textPath",attributes:tl(r,{"text-anchor":r.textAnchor,href:`${i}#${o}`}),children:n}}});s.textPath={path:t,undo:e}}else s.attr({dx:0,dy:0}),delete s.textPath;return this.added&&(s.textCache="",this.renderer.buildText(s)),this}function tp(t){let e=t.bBox,i=this.element?.querySelector("textPath");if(i){let t=[],{b:s,h:o}=this.renderer.fontMetrics(this.element),r=o-s,a=RegExp('(<tspan>|<tspan(?!\\sclass="highcharts-br")[^>]*>|<\\/tspan>)',"g"),n=i.innerHTML.replace(a,"").split(/<tspan class="highcharts-br"[^>]*>/),h=n.length,l=(t,e)=>{let{x:o,y:a}=e,n=(i.getRotationOfChar(t)-90)*to,h=Math.cos(n),l=Math.sin(n);return[[o-r*h,a-r*l],[o+s*h,a+s*l]]};for(let e=0,s=0;s<h;s++){let o=n[s].length;for(let r=0;r<o;r+=5)try{let o=e+r+s,[a,n]=l(o,i.getStartPositionOfChar(o));0===r?(t.push(n),t.push(a)):(0===s&&t.unshift(n),s===h-1&&t.push(a))}catch(t){break}e+=o-1;try{let o=e+s,r=i.getEndPositionOfChar(o),[a,n]=l(o,r);t.unshift(n),t.unshift(a)}catch(t){break}}t.length&&t.push(t[0].slice()),e.polygon=t}return e}function tc(t){let e=t.labelOptions,i=t.point,s=e[i.formatPrefix+"TextPath"]||e.textPath;s&&!e.useHTML&&(this.setTextPath(i.getDataLabelPath?.(this)||i.graphic,s),i.dataLabelPath&&!s.enabled&&(i.dataLabelPath=i.dataLabelPath.destroy()))}let{noop:tu}=l(),{series:tf,seriesTypes:{column:{prototype:tm},line:{prototype:tg}}}=M(),{initDataLabels:ty,initDataLabelsDefer:tx}={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(te({opacity:1},this.getPlotBox("data-labels"))),this.dataLabelsGroup},initDataLabelsDefer:function(){let t=this.options.dataLabels;t?.defer&&this.options.layoutAlgorithm?.enableSimulation?ti(()=>{this.deferDataLabels=!1},t?ts(t.animation).defer:0):this.deferDataLabels=!1}},{addEvent:tb,defined:tk,extend:tv,merge:tN,pick:tL}=l();({compose:function(t){tr(t,"afterGetBBox",tp),tr(t,"beforeAddingDataLabel",tc);let e=t.prototype;e.setTextPath||(e.setTextPath=td)}}).compose(p());class tP extends tf{constructor(){super(...arguments),this.deferDataLabels=!0}static compose(t){g.compose(t),tt.compose(t)}deferLayout(){let t=this.options.layoutAlgorithm,e=this.chart.options.chart,i,s=this.chart.graphLayoutsStorage,o=this.chart.graphLayoutsLookup;this.visible&&(s||(this.chart.graphLayoutsStorage=s={},this.chart.graphLayoutsLookup=o=[]),(i=s[t.type])||(t.enableSimulation=tk(e.forExport)?!e.forExport:t.enableSimulation,s[t.type]=i=new w.layouts[t.type],i.init(t),o.splice(i.index,0,i)),this.layout=i,i.setArea(0,0,this.chart.plotWidth,this.chart.plotHeight),i.addElementsToCollection([this],i.series),i.addElementsToCollection(this.nodes,i.nodes),i.addElementsToCollection(this.points,i.links))}destroy(){this.layout&&this.layout.removeElementFromCollection(this,this.layout.series),I.destroy.call(this)}drawDataLabels(){let t;if(this.deferDataLabels)return;let e=this.options.dataLabels;e?.textPath&&(t=e.textPath),tf.prototype.drawDataLabels.call(this,this.nodes),e?.linkTextPath&&(e.textPath=e.linkTextPath),tf.prototype.drawDataLabels.call(this,this.data),e?.textPath&&(e.textPath=t)}generatePoints(){let t,e;for(I.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=tL(t.marker&&t.marker.radius,this.options.marker&&this.options.marker.radius,0),t.key=t.name,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),tx.call(this),tb(this,"updatedData",()=>{this.layout&&this.layout.stop()}),tb(this,"afterUpdate",()=>{this.nodes.forEach(t=>{t&&t.series&&t.resolveColor()})}),tb(this,"afterSimulation",function(){this.deferDataLabels=!1,this.drawDataLabels()}),this}markerAttribs(t,e){let i=tf.prototype.markerAttribs.call(this,t,e);return tk(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=tf.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:tL(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,tg.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),tf.prototype.setState.apply(this,arguments),this.points=this.data):tf.prototype.setState.apply(this,arguments),this.layout.simulation||t||this.render()}translate(){this.generatePoints(),this.deferLayout(),this.nodes.forEach(function(t){t.isInside=!0,t.linksFrom.forEach(function(t){t.shapeType="path",t.y=1})})}}tP.defaultOptions=tN(tf.defaultOptions,{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 String(this.key??"")},linkFormatter:function(){return this.fromNode.name+"<br>"+this.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}),tv(tP.prototype,{pointClass:K,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:ty,buildKDTree:tu,createNode:I.createNode,drawTracker:tm.drawTracker,onMouseDown:g.onMouseDown,onMouseMove:g.onMouseMove,onMouseUp:g.onMouseUp,redrawHalo:g.redrawHalo}),M().registerSeriesType("networkgraph",tP);let tw=l();tP.compose(tw.Chart);let tS=l();return n.default})());
11
+ */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.SVGElement,t._Highcharts.SeriesRegistry):"function"==typeof define&&define.amd?define("highcharts/modules/networkgraph",["highcharts/highcharts"],function(t){return e(t,t.SVGElement,t.SeriesRegistry)}):"object"==typeof exports?exports["highcharts/modules/networkgraph"]=e(t._Highcharts,t._Highcharts.SVGElement,t._Highcharts.SeriesRegistry):t.Highcharts=e(t.Highcharts,t.Highcharts.SVGElement,t.Highcharts.SeriesRegistry)}("undefined"==typeof window?this:window,(t,e,i)=>(()=>{"use strict";var s,o={28:t=>{t.exports=e},512:t=>{t.exports=i},563:e=>{e.exports=t}},r={};function a(t){var e=r[t];if(void 0!==e)return e.exports;var i=r[t]={exports:{}};return o[t](i,i.exports,a),i.exports}a.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return a.d(e,{a:e}),e},a.d=(t,e)=>{for(var i in e)a.o(e,i)&&!a.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},a.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var n={};a.d(n,{default:()=>tS});var h=a(563),l=/*#__PURE__*/a.n(h),d=a(28),p=/*#__PURE__*/a.n(d);let{composed:c}=l(),{addEvent:u,pushUnique:f}=l();function m(){let t,e,i;let s=this;s.container&&(t=u(s.container,"mousedown",t=>{let o=s.hoverPoint;o&&o.series&&o.series.hasDraggableNodes&&o.series.options.draggable&&(o.series.onMouseDown(o,t),e=u(s.container,"mousemove",t=>o&&o.series&&o.series.onMouseMove(o,t)),i=u(s.container.ownerDocument,"mouseup",t=>(e(),i(),o&&o.series&&o.series.onMouseUp(o,t))))})),u(s,"destroy",function(){t()})}let g={compose:function(t){f(c,"DragNodes")&&u(t,"load",m)},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,a=t.fixedPosition.chartX-r.chartX,n=t.fixedPosition.chartY-r.chartY,h=o.graphLayoutsLookup;(Math.abs(a)>5||Math.abs(n)>5)&&(i=t.fixedPosition.plotX-a,s=t.fixedPosition.plotY-n,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)})}},{setAnimation:y}=l(),{composed:x}=l(),{addEvent:b,pushUnique:k}=l();function v(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation()}),this.redraw())}function N(){this.graphLayoutsLookup&&(this.graphLayoutsLookup.forEach(t=>{t.updateSimulation(!1)}),this.redraw())}function L(){this.graphLayoutsLookup&&this.graphLayoutsLookup.forEach(t=>{t.stop()})}function P(){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(y(!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()})}}let w={compose:function(t){k(x,"GraphLayout")&&(b(t,"afterPrint",v),b(t,"beforePrint",N),b(t,"predraw",L),b(t,"render",P))},integrations:{},layouts:{}};var S=a(512),M=/*#__PURE__*/a.n(S);let{series:{prototype:X,prototype:{pointClass:{prototype:T}}}}=M(),{defined:Y,extend:D,find:E,merge:F,pick:C}=l();!function(t){function e(){return this.data=[].concat(this.points||[],this.nodes),X.destroy.apply(this,arguments)}function i(){this.nodes&&(this.nodes.forEach(t=>{t.destroy()}),this.nodes.length=0),X.setData.apply(this,arguments)}function s(t){let e=arguments,i=this.isNode?this.linksTo.concat(this.linksFrom):[this.fromNode,this.toNode];"select"!==t&&i.forEach(t=>{t&&t.series&&(T.setState.apply(t,e),!t.isNode&&(t.fromNode.graphic&&T.setState.apply(t.fromNode,e),t.toNode&&t.toNode.graphic&&T.setState.apply(t.toNode,e)))}),T.setState.apply(this,e)}function o(t,e,i,s){let o=this.series.options.nodes,r=this.series.options.data,a=r?.length||0,n=r?.[this.index];if(T.update.call(this,t,!this.isNode&&e,i,s),this.isNode){let t=(o||[]).reduce((t,e,i)=>this.id===e.id?i:t,-1),s=F(o&&o[t]||{},r?.[this.index]||{});r&&(n?r[this.index]=n:r.length=a),o?t>=0?o[t]=s:o.push(s):this.series.options.nodes=[s],C(e,!0)&&this.series.chart.redraw(i)}}t.compose=function(t,r){let a=t.prototype,n=r.prototype;return a.setNodeState=s,a.setState=s,a.update=o,n.destroy=e,n.setData=i,r},t.createNode=function(t){let e=this.pointClass,i=(t,e)=>E(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,D({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=C(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={};X.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=>{Y(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=C(i.options.colorIndex,e[i.from].colorIndex):i.color=i.options.color||e[i.from].color),Y(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=s,t.updateNode=o}(s||(s={}));let I=s,{series:{prototype:A,prototype:{pointClass:O}}}=M(),{addEvent:R,css:H,defined:B,extend:G,pick:q}=l();class _ 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":q(e.width,t.width),stroke:e.color||t.color,dashstyle:e.dashStyle||t.dashStyle,opacity:q(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(){H(this.series.chart.container,{cursor:"move"})}),R(this,"mouseOut",function(){H(this.series.chart.container,{cursor:"default"})}))}isValid(){return!this.isNode||B(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,s=i.options.nodes||[],o,r=s.length;if(this.isNode){for(i.points=[],[].concat(this.linksFrom).concat(this.linksTo).forEach(function(t){(o=t.fromNode.linksFrom.indexOf(t))>-1&&t.fromNode.linksFrom.splice(o,1),(o=t.toNode.linksTo.indexOf(t))>-1&&t.toNode.linksTo.splice(o,1),A.removePoint.call(i,i.data.indexOf(t),!1,!1)}),i.points=i.data.slice(),i.nodes.splice(i.nodes.indexOf(this),1);r--;)if(s[r].id===this.options.id){i.options.nodes.splice(r,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})})))}}G(_.prototype,{setState:I.setNodeState});let K={attractive:function(t,e,i,s){let o=t.getMass(),r=i.x/s*e,a=i.y/s*e;t.fromNode.fixedPosition||(t.fromNode.dispX-=r*o.fromNode/t.fromNode.degree,t.fromNode.dispY-=a*o.fromNode/t.fromNode.degree),t.toNode.fixedPosition||(t.toNode.dispX+=r*o.toNode/t.toNode.degree,t.toNode.dispY+=a*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}};class U{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 t=this.box.width/2,e=this.box.height/2;this.nodes[0]=new U({left:this.box.left,top:this.box.top,width:t,height:e}),this.nodes[1]=new U({left:this.box.left+t,top:this.box.top,width:t,height:e}),this.nodes[2]=new U({left:this.box.left+t,top:this.box.top+e,width:t,height:e}),this.nodes[3]=new U({left:this.box.left,top:this.box.top+e,width:t,height:e})}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(t,e){let i;this.isInternal?this.nodes[this.getBoxPosition(t)].insert(t,e-1):(this.isEmpty=!1,this.body?e?(this.isInternal=!0,this.divideBox(),!0!==this.body&&(this.nodes[this.getBoxPosition(this.body)].insert(this.body,e-1),this.body=!0),this.nodes[this.getBoxPosition(t)].insert(t,e-1)):((i=new U({top:t.plotX||NaN,left:t.plotY||NaN,width:.1,height:.1})).body=t,i.isInternal=!1,this.nodes.push(i)):(this.isInternal=!1,this.body=t))}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}}let j=class{constructor(t,e,i,s){this.box={left:t,top:e,width:i,height:s},this.maxDepth=25,this.root=new U(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)}}},z={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,a=(e.plotX+e.dispX-o)*i,n=(e.plotY+e.dispY-r)*i,h=Math.abs,l=h(a)/(a||1),d=h(n)/(n||1),p=l*Math.min(s,Math.abs(a)),c=d*Math.min(s,Math.abs(n));e.prevX=e.plotX+e.dispX,e.prevY=e.plotY+e.dispY,e.plotX+=p,e.plotY+=c,e.temperature=t.vectorLength({x:p,y:c})},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)}},{win:V}=l(),{clamp:Q,defined:$,isFunction:W,fireEvent:J,pick:Z}=l();class tt{constructor(){this.box={},this.currentStep=0,this.initialRendering=!0,this.links=[],this.nodes=[],this.series=[],this.simulation=!1}static compose(t){w.compose(t),w.integrations.euler=K,w.integrations.verlet=z,w.layouts["reingold-fruchterman"]=tt}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=w.integrations[t.integration],this.enableSimulation=t.enableSimulation,this.attractiveForce=Z(t.attractiveForce,this.integration.attractiveForceFunction),this.repulsiveForce=Z(t.repulsiveForce,this.integration.repulsiveForceFunction),this.approximation=t.approximation}updateSimulation(t){this.enableSimulation=Z(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&&V.cancelAnimationFrame(this.simulation),this.simulation=V.requestAnimationFrame(()=>this.step())):(this.simulation=!1,this.series.forEach(t=>{J(t,"afterSimulation")}))}}stop(){this.simulation&&V.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=Z(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 j(this.box.left,this.box.top,this.box.width,this.box.height),this.quadTree.insertNodes(this.nodes)}initPositions(){let t=this.options.initialPositions;if(W(t))for(let e of(t.call(this),this.nodes))$(e.prevX)||(e.prevX=e.plotX),$(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={},a=this.options.initialPositionRadius,n=t=>{for(let e of t.linksFrom||[])r[e.toNode.id]||(r[e.toNode.id]=!0,h.push(e.toNode),n(e.toNode))},h=[];for(let t of o)h.push(t),n(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=Z(t.plotX,e.width/2+a*Math.cos(i*s)),t.plotY=t.prevY=Z(t.plotY,e.height/2+a*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,a=i.length;r<a;++r)(t=i[r]).plotX=t.prevX=Z(t.plotX,e.width*o(r)),t.plotY=t.prevY=Z(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=Q(t.plotX,e.left+i,e.width-i),t.plotY=Q(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)}}}let{merge:te,syncTimeout:ti}=l(),{animObject:ts}=l(),{deg2rad:to}=l(),{addEvent:tr,merge:ta,uniqueKey:tn,defined:th,extend:tl}=l();function td(t,e){e=ta(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},e);let i=this.renderer.url,s=this.text||this,o=s.textPath,{attributes:r,enabled:a}=e;if(t=t||o&&o.path,o&&o.undo(),t&&a){let e=tr(s,"afterModifyTree",e=>{if(t&&a){let o=t.attr("id");o||t.attr("id",o=tn());let a={x:0,y:0};th(r.dx)&&(a.dx=r.dx,delete r.dx),th(r.dy)&&(a.dy=r.dy,delete r.dy),s.attr(a),this.attr({transform:""}),this.box&&(this.box=this.box.destroy());let n=e.nodes.slice(0);e.nodes.length=0,e.nodes[0]={tagName:"textPath",attributes:tl(r,{"text-anchor":r.textAnchor,href:`${i}#${o}`}),children:n}}});s.textPath={path:t,undo:e}}else s.attr({dx:0,dy:0}),delete s.textPath;return this.added&&(s.textCache="",this.renderer.buildText(s)),this}function tp(t){let e=t.bBox,i=this.element?.querySelector("textPath");if(i){let t=[],{b:s,h:o}=this.renderer.fontMetrics(this.element),r=o-s,a=RegExp('(<tspan>|<tspan(?!\\sclass="highcharts-br")[^>]*>|<\\/tspan>)',"g"),n=i.innerHTML.replace(a,"").split(/<tspan class="highcharts-br"[^>]*>/),h=n.length,l=(t,e)=>{let{x:o,y:a}=e,n=(i.getRotationOfChar(t)-90)*to,h=Math.cos(n),l=Math.sin(n);return[[o-r*h,a-r*l],[o+s*h,a+s*l]]};for(let e=0,s=0;s<h;s++){let o=n[s].length;for(let r=0;r<o;r+=5)try{let o=e+r+s,[a,n]=l(o,i.getStartPositionOfChar(o));0===r?(t.push(n),t.push(a)):(0===s&&t.unshift(n),s===h-1&&t.push(a))}catch(t){break}e+=o-1;try{let o=e+s,r=i.getEndPositionOfChar(o),[a,n]=l(o,r);t.unshift(n),t.unshift(a)}catch(t){break}}t.length&&t.push(t[0].slice()),e.polygon=t}return e}function tc(t){let e=t.labelOptions,i=t.point,s=e[i.formatPrefix+"TextPath"]||e.textPath;s&&!e.useHTML&&(this.setTextPath(i.getDataLabelPath?.(this)||i.graphic,s),i.dataLabelPath&&!s.enabled&&(i.dataLabelPath=i.dataLabelPath.destroy()))}let{noop:tu}=l(),{series:tf,seriesTypes:{column:{prototype:tm},line:{prototype:tg}}}=M(),{initDataLabels:ty,initDataLabelsDefer:tx}={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(te({opacity:1},this.getPlotBox("data-labels"))),this.dataLabelsGroup},initDataLabelsDefer:function(){let t=this.options.dataLabels;t?.defer&&this.options.layoutAlgorithm?.enableSimulation?ti(()=>{this.deferDataLabels=!1},t?ts(t.animation).defer:0):this.deferDataLabels=!1}},{addEvent:tb,defined:tk,extend:tv,merge:tN,pick:tL}=l();({compose:function(t){tr(t,"afterGetBBox",tp),tr(t,"beforeAddingDataLabel",tc);let e=t.prototype;e.setTextPath||(e.setTextPath=td)}}).compose(p());class tP extends tf{constructor(){super(...arguments),this.deferDataLabels=!0}static compose(t){g.compose(t),tt.compose(t)}deferLayout(){let t=this.options.layoutAlgorithm,e=this.chart.options.chart,i,s=this.chart.graphLayoutsStorage,o=this.chart.graphLayoutsLookup;this.visible&&(s||(this.chart.graphLayoutsStorage=s={},this.chart.graphLayoutsLookup=o=[]),(i=s[t.type])||(t.enableSimulation=tk(e.forExport)?!e.forExport:t.enableSimulation,s[t.type]=i=new w.layouts[t.type],i.init(t),o.splice(i.index,0,i)),this.layout=i,i.setArea(0,0,this.chart.plotWidth,this.chart.plotHeight),i.addElementsToCollection([this],i.series),i.addElementsToCollection(this.nodes,i.nodes),i.addElementsToCollection(this.points,i.links))}destroy(){this.layout&&this.layout.removeElementFromCollection(this,this.layout.series),I.destroy.call(this)}drawDataLabels(){let t;if(this.deferDataLabels)return;let e=this.options.dataLabels;e?.textPath&&(t=e.textPath),tf.prototype.drawDataLabels.call(this,this.nodes),e?.linkTextPath&&(e.textPath=e.linkTextPath),tf.prototype.drawDataLabels.call(this,this.data),e?.textPath&&(e.textPath=t)}generatePoints(){let t,e;for(I.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=tL(t.marker&&t.marker.radius,this.options.marker&&this.options.marker.radius,0),t.key=t.name,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),tx.call(this),tb(this,"updatedData",()=>{this.layout&&this.layout.stop()}),tb(this,"afterUpdate",()=>{this.nodes.forEach(t=>{t&&t.series&&t.resolveColor()})}),tb(this,"afterSimulation",function(){this.deferDataLabels=!1,this.drawDataLabels()}),this}markerAttribs(t,e){let i=tf.prototype.markerAttribs.call(this,t,e);return tk(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=tf.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:tL(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,tg.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),tf.prototype.setState.apply(this,arguments),this.points=this.data):tf.prototype.setState.apply(this,arguments),this.layout.simulation||t||this.render()}translate(){this.generatePoints(),this.deferLayout(),this.nodes.forEach(function(t){t.isInside=!0,t.linksFrom.forEach(function(t){t.shapeType="path",t.y=1})})}}tP.defaultOptions=tN(tf.defaultOptions,{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 String(this.key??"")},linkFormatter:function(){return this.fromNode.name+"<br>"+this.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}),tv(tP.prototype,{pointClass:_,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:ty,buildKDTree:tu,createNode:I.createNode,drawTracker:tm.drawTracker,onMouseDown:g.onMouseDown,onMouseMove:g.onMouseMove,onMouseUp:g.onMouseUp,redrawHalo:g.redrawHalo}),M().registerSeriesType("networkgraph",tP);let tw=l();tP.compose(tw.Chart);let tS=l();return n.default})());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v12.0.1 (2024-11-28)
2
+ * @license Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/networkgraph
4
4
  * @requires highcharts
5
5
  *
@@ -11,14 +11,14 @@
11
11
  */
12
12
  (function webpackUniversalModuleDefinition(root, factory) {
13
13
  if(typeof exports === 'object' && typeof module === 'object')
14
- module.exports = factory(require("highcharts"), require("highcharts")["SVGElement"], require("highcharts")["SeriesRegistry"]);
14
+ module.exports = factory(root["_Highcharts"], root["_Highcharts"]["SVGElement"], root["_Highcharts"]["SeriesRegistry"]);
15
15
  else if(typeof define === 'function' && define.amd)
16
- define("highcharts/networkgraph", [["highcharts/highcharts"], ["highcharts/highcharts","SVGElement"], ["highcharts/highcharts","SeriesRegistry"]], factory);
16
+ define("highcharts/modules/networkgraph", ["highcharts/highcharts"], function (amd1) {return factory(amd1,amd1["SVGElement"],amd1["SeriesRegistry"]);});
17
17
  else if(typeof exports === 'object')
18
- exports["highcharts/networkgraph"] = factory(require("highcharts"), require("highcharts")["SVGElement"], require("highcharts")["SeriesRegistry"]);
18
+ exports["highcharts/modules/networkgraph"] = factory(root["_Highcharts"], root["_Highcharts"]["SVGElement"], root["_Highcharts"]["SeriesRegistry"]);
19
19
  else
20
20
  root["Highcharts"] = factory(root["Highcharts"], root["Highcharts"]["SVGElement"], root["Highcharts"]["SeriesRegistry"]);
21
- })(this, (__WEBPACK_EXTERNAL_MODULE__563__, __WEBPACK_EXTERNAL_MODULE__28__, __WEBPACK_EXTERNAL_MODULE__512__) => {
21
+ })(typeof window === 'undefined' ? this : window, (__WEBPACK_EXTERNAL_MODULE__563__, __WEBPACK_EXTERNAL_MODULE__28__, __WEBPACK_EXTERNAL_MODULE__512__) => {
22
22
  return /******/ (() => { // webpackBootstrap
23
23
  /******/ "use strict";
24
24
  /******/ var __webpack_modules__ = ({
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v12.0.1 (2024-11-28)
2
+ * Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/no-data-to-display
4
4
  * @requires highcharts
5
5
  *
@@ -9,4 +9,4 @@
9
9
  * Author: Oystein Moseng
10
10
  *
11
11
  * License: www.highcharts.com/license
12
- */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("highcharts"),require("highcharts").AST):"function"==typeof define&&define.amd?define("highcharts/no-data-to-display",[["highcharts/highcharts"],["highcharts/highcharts","AST"]],e):"object"==typeof exports?exports["highcharts/no-data-to-display"]=e(require("highcharts"),require("highcharts").AST):t.Highcharts=e(t.Highcharts,t.Highcharts.AST)}(this,(t,e)=>(()=>{"use strict";var a={660:t=>{t.exports=e},944:e=>{e.exports=t}},o={};function r(t){var e=o[t];if(void 0!==e)return e.exports;var i=o[t]={exports:{}};return a[t](i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var a in e)r.o(e,a)&&!r.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var i={};r.d(i,{default:()=>x});var s=r(944),n=/*#__PURE__*/r.n(s),h=r(660),l=/*#__PURE__*/r.n(h);let d={lang:{noData:"No data to display"},noData:{attr:{zIndex:1},position:{x:0,y:0,align:"center",verticalAlign:"middle"},style:{fontWeight:"bold",fontSize:"0.8em",color:"#666666"}}},{addEvent:c,extend:p,merge:u}=n();function f(){let t=this.series||[],e=t.length;for(;e--;)if(t[e].hasData()&&!t[e].options.isInternal)return!0;return this.loadingShown}function g(){this.noDataLabel&&(this.noDataLabel=this.noDataLabel.destroy())}function D(t){let e=this.options,a=t||e&&e.lang.noData||"",o=e&&(e.noData||{});this.renderer&&(this.noDataLabel||(this.noDataLabel=this.renderer.label(a,0,0,void 0,void 0,void 0,o.useHTML,void 0,"no-data").add()),this.styledMode||this.noDataLabel.attr(l().filterUserAttributes(o.attr||{})).css(o.style||{}),this.noDataLabel.align(p(this.noDataLabel.getBBox(),o.position||{}),!1,"plotBox"))}function b(){this.hasData()?this.hideNoData():this.showNoData()}let y=n();({compose:function(t,e){let a=t.prototype;a.showNoData||(a.hasData=f,a.hideNoData=g,a.showNoData=D,c(t,"render",b),u(!0,e,d))}}).compose(y.Chart,y.defaultOptions);let x=n();return i.default})());
12
+ */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.AST):"function"==typeof define&&define.amd?define("highcharts/modules/no-data-to-display",["highcharts/highcharts"],function(t){return e(t,t.AST)}):"object"==typeof exports?exports["highcharts/modules/no-data-to-display"]=e(t._Highcharts,t._Highcharts.AST):t.Highcharts=e(t.Highcharts,t.Highcharts.AST)}("undefined"==typeof window?this:window,(t,e)=>(()=>{"use strict";var a={660:t=>{t.exports=e},944:e=>{e.exports=t}},o={};function i(t){var e=o[t];if(void 0!==e)return e.exports;var n=o[t]={exports:{}};return a[t](n,n.exports,i),n.exports}i.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return i.d(e,{a:e}),e},i.d=(t,e)=>{for(var a in e)i.o(e,a)&&!i.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var n={};i.d(n,{default:()=>x});var r=i(944),s=/*#__PURE__*/i.n(r),h=i(660),d=/*#__PURE__*/i.n(h);let l={lang:{noData:"No data to display"},noData:{attr:{zIndex:1},position:{x:0,y:0,align:"center",verticalAlign:"middle"},style:{fontWeight:"bold",fontSize:"0.8em",color:"#666666"}}},{addEvent:c,extend:p,merge:f}=s();function u(){let t=this.series||[],e=t.length;for(;e--;)if(t[e].hasData()&&!t[e].options.isInternal)return!0;return this.loadingShown}function g(){this.noDataLabel&&(this.noDataLabel=this.noDataLabel.destroy())}function D(t){let e=this.options,a=t||e&&e.lang.noData||"",o=e&&(e.noData||{});this.renderer&&(this.noDataLabel||(this.noDataLabel=this.renderer.label(a,0,0,void 0,void 0,void 0,o.useHTML,void 0,"no-data").add()),this.styledMode||this.noDataLabel.attr(d().filterUserAttributes(o.attr||{})).css(o.style||{}),this.noDataLabel.align(p(this.noDataLabel.getBBox(),o.position||{}),!1,"plotBox"))}function b(){this.hasData()?this.hideNoData():this.showNoData()}let y=s();({compose:function(t,e){let a=t.prototype;a.showNoData||(a.hasData=u,a.hideNoData=g,a.showNoData=D,c(t,"render",b),f(!0,e,l))}}).compose(y.Chart,y.defaultOptions);let x=s();return n.default})());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v12.0.1 (2024-11-28)
2
+ * @license Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/no-data-to-display
4
4
  * @requires highcharts
5
5
  *
@@ -12,14 +12,14 @@
12
12
  */
13
13
  (function webpackUniversalModuleDefinition(root, factory) {
14
14
  if(typeof exports === 'object' && typeof module === 'object')
15
- module.exports = factory(require("highcharts"), require("highcharts")["AST"]);
15
+ module.exports = factory(root["_Highcharts"], root["_Highcharts"]["AST"]);
16
16
  else if(typeof define === 'function' && define.amd)
17
- define("highcharts/no-data-to-display", [["highcharts/highcharts"], ["highcharts/highcharts","AST"]], factory);
17
+ define("highcharts/modules/no-data-to-display", ["highcharts/highcharts"], function (amd1) {return factory(amd1,amd1["AST"]);});
18
18
  else if(typeof exports === 'object')
19
- exports["highcharts/no-data-to-display"] = factory(require("highcharts"), require("highcharts")["AST"]);
19
+ exports["highcharts/modules/no-data-to-display"] = factory(root["_Highcharts"], root["_Highcharts"]["AST"]);
20
20
  else
21
21
  root["Highcharts"] = factory(root["Highcharts"], root["Highcharts"]["AST"]);
22
- })(this, (__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__660__) => {
22
+ })(typeof window === 'undefined' ? this : window, (__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__660__) => {
23
23
  return /******/ (() => { // webpackBootstrap
24
24
  /******/ "use strict";
25
25
  /******/ var __webpack_modules__ = ({
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v12.0.1 (2024-11-28)
2
+ * Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/offline-exporting
4
4
  * @requires highcharts
5
5
  * @requires highcharts/modules/exporting
@@ -9,4 +9,4 @@
9
9
  * (c) 2015-2024 Torstein Honsi / Oystein Moseng
10
10
  *
11
11
  * License: www.highcharts.com/license
12
- */function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("highcharts"),require("highcharts").AST,require("highcharts").Chart,require("highcharts").HttpUtilities):"function"==typeof define&&define.amd?define("highcharts/offline-exporting",[["highcharts/highcharts"],["highcharts/highcharts","AST"],["highcharts/highcharts","Chart"],["highcharts/highcharts","HttpUtilities"]],t):"object"==typeof exports?exports["highcharts/offline-exporting"]=t(require("highcharts"),require("highcharts").AST,require("highcharts").Chart,require("highcharts").HttpUtilities):e.Highcharts=t(e.Highcharts,e.Highcharts.AST,e.Highcharts.Chart,e.Highcharts.HttpUtilities)}(this,(e,t,n,o)=>(()=>{"use strict";var i,r,l,s,a={660:e=>{e.exports=t},960:e=>{e.exports=n},156:e=>{e.exports=o},944:t=>{t.exports=e}},c={};function h(e){var t=c[e];if(void 0!==t)return t.exports;var n=c[e]={exports:{}};return a[e](n,n.exports,h),n.exports}h.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return h.d(t,{a:t}),t},h.d=(e,t)=>{for(var n in t)h.o(t,n)&&!h.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},h.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var d={};h.d(d,{default:()=>ed});var p=h(944),u=/*#__PURE__*/h.n(p);let{isSafari:g,win:f,win:{document:m}}=u(),x=f.URL||f.webkitURL||f;function y(e){let t=e.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([A-Z+\d\/]+)/i);if(t&&t.length>3&&f.atob&&f.ArrayBuffer&&f.Uint8Array&&f.Blob&&x.createObjectURL){let e=f.atob(t[3]),n=new f.ArrayBuffer(e.length),o=new f.Uint8Array(n);for(let t=0;t<o.length;++t)o[t]=e.charCodeAt(t);return x.createObjectURL(new f.Blob([o],{type:t[1]}))}}let b={dataURLtoBlob:y,downloadURL:function(e,t){let n=f.navigator,o=m.createElement("a");if("string"!=typeof e&&!(e instanceof String)&&n.msSaveOrOpenBlob){n.msSaveOrOpenBlob(e,t);return}if(e=""+e,n.userAgent.length>1e3)throw Error("Input too long");let i=/Edge\/\d+/.test(n.userAgent);if((g&&"string"==typeof e&&0===e.indexOf("data:application/pdf")||i||e.length>2e6)&&!(e=y(e)||""))throw Error("Failed to convert to blob");if(void 0!==o.download)o.href=e,o.download=t,m.body.appendChild(o),o.click(),m.body.removeChild(o);else try{if(!f.open(e,"chart"))throw Error("Failed to open window")}catch{f.location.href=e}}};var v=h(660),w=/*#__PURE__*/h.n(v);h(960),function(e){e.compose=function(e){return e.navigation||(e.navigation=new t(e)),e};class t{constructor(e){this.updates=[],this.chart=e}addUpdate(e){this.chart.navigation.updates.push(e)}update(e,t){this.updates.forEach(n=>{n.call(this.chart,e,t)})}}e.Additions=t}(i||(i={}));let S=i,{isTouchDevice:E}=u(),C={exporting:{allowTableSorting:!0,type:"image/png",url:"https://export-svg.highcharts.com/",pdfFont:{normal:void 0,bold:void 0,bolditalic:void 0,italic:void 0},printMaxWidth:780,scale:2,buttons:{contextButton:{className:"highcharts-contextbutton",menuClassName:"highcharts-contextmenu",symbol:"menu",titleKey:"contextButtonTitle",menuItems:["viewFullscreen","printChart","separator","downloadPNG","downloadJPEG","downloadSVG"],y:-5}},menuItemDefinitions:{viewFullscreen:{textKey:"viewFullscreen",onclick:function(){this.fullscreen&&this.fullscreen.toggle()}},printChart:{textKey:"printChart",onclick:function(){this.print()}},separator:{separator:!0},downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChart()}},downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},downloadSVG:{textKey:"downloadSVG",onclick:function(){this.exportChart({type:"image/svg+xml"})}}}},lang:{viewFullscreen:"View in full screen",exitFullscreen:"Exit from full screen",printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"},navigation:{buttonOptions:{symbolSize:14,symbolX:14.5,symbolY:13.5,align:"right",buttonSpacing:5,height:28,verticalAlign:"top",width:28,symbolFill:"#666666",symbolStroke:"#666666",symbolStrokeWidth:3,theme:{fill:"#ffffff",padding:5,stroke:"none","stroke-linecap":"round"}},menuStyle:{border:"none",borderRadius:"3px",background:"#ffffff",padding:"0.5em"},menuItemStyle:{background:"none",borderRadius:"3px",color:"#333333",padding:"0.5em",fontSize:E?"0.9em":"0.8em",transition:"background 250ms, color 250ms"},menuItemHoverStyle:{background:"#f2f2f2"}}};!function(e){let t=[];function n(e,t,n,o){return[["M",e,t+2.5],["L",e+n,t+2.5],["M",e,t+o/2+.5],["L",e+n,t+o/2+.5],["M",e,t+o-1.5],["L",e+n,t+o-1.5]]}function o(e,t,n,o){let i=o/3-2;return[].concat(this.circle(n-i,t,i,i),this.circle(n-i,t+i+4,i,i),this.circle(n-i,t+2*(i+4),i,i))}e.compose=function(e){if(-1===t.indexOf(e)){t.push(e);let i=e.prototype.symbols;i.menu=n,i.menuball=o.bind(i)}}}(r||(r={}));let F=r,{composed:O}=u(),{addEvent:T,fireEvent:k,pushUnique:L}=u();function M(){this.fullscreen=new N(this)}class N{static compose(e){L(O,"Fullscreen")&&T(e,"beforeRender",M)}constructor(e){this.chart=e,this.isOpen=!1;let t=e.renderTo;!this.browserProps&&("function"==typeof t.requestFullscreen?this.browserProps={fullscreenChange:"fullscreenchange",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen"}:t.mozRequestFullScreen?this.browserProps={fullscreenChange:"mozfullscreenchange",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen"}:t.webkitRequestFullScreen?this.browserProps={fullscreenChange:"webkitfullscreenchange",requestFullscreen:"webkitRequestFullScreen",exitFullscreen:"webkitExitFullscreen"}:t.msRequestFullscreen&&(this.browserProps={fullscreenChange:"MSFullscreenChange",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen"}))}close(){let e=this,t=e.chart,n=t.options.chart;k(t,"fullscreenClose",null,function(){e.isOpen&&e.browserProps&&t.container.ownerDocument instanceof Document&&t.container.ownerDocument[e.browserProps.exitFullscreen](),e.unbindFullscreenEvent&&(e.unbindFullscreenEvent=e.unbindFullscreenEvent()),t.setSize(e.origWidth,e.origHeight,!1),e.origWidth=void 0,e.origHeight=void 0,n.width=e.origWidthOption,n.height=e.origHeightOption,e.origWidthOption=void 0,e.origHeightOption=void 0,e.isOpen=!1,e.setButtonText()})}open(){let e=this,t=e.chart,n=t.options.chart;k(t,"fullscreenOpen",null,function(){if(n&&(e.origWidthOption=n.width,e.origHeightOption=n.height),e.origWidth=t.chartWidth,e.origHeight=t.chartHeight,e.browserProps){let n=T(t.container.ownerDocument,e.browserProps.fullscreenChange,function(){e.isOpen?(e.isOpen=!1,e.close()):(t.setSize(null,null,!1),e.isOpen=!0,e.setButtonText())}),o=T(t,"destroy",n);e.unbindFullscreenEvent=()=>{n(),o()};let i=t.renderTo[e.browserProps.requestFullscreen]();i&&i.catch(function(){alert("Full screen is not supported inside a frame.")})}})}setButtonText(){let e=this.chart,t=e.exportDivElements,n=e.options.exporting,o=n&&n.buttons&&n.buttons.contextButton.menuItems,i=e.options.lang;if(n&&n.menuItemDefinitions&&i&&i.exitFullscreen&&i.viewFullscreen&&o&&t){let e=t[o.indexOf("viewFullscreen")];e&&w().setElementHTML(e,this.isOpen?i.exitFullscreen:n.menuItemDefinitions.viewFullscreen.text||i.viewFullscreen)}}toggle(){this.isOpen?this.close():this.open()}}var P=h(156),G=/*#__PURE__*/h.n(P);let{defaultOptions:D}=u(),{doc:A,SVG_NS:R,win:H}=u(),{addEvent:B,css:I,createElement:U,discardElement:V,extend:j,find:q,fireEvent:W,isObject:z,merge:$,objectEach:K,pick:J,removeEvent:_,uniqueKey:X}=u();!function(e){let t;let n=[/-/,/^(clipPath|cssText|d|height|width)$/,/^font$/,/[lL]ogical(Width|Height)$/,/^parentRule$/,/^(cssRules|ownerRules)$/,/perspective/,/TapHighlightColor/,/^transition/,/^length$/,/^\d+$/],o=["fill","stroke","strokeLinecap","strokeLinejoin","strokeWidth","textAnchor","x","y"];e.inlineAllowlist=[];let i=["clipPath","defs","desc"];function r(e){let t,n;let o=this,i=o.renderer,r=$(o.options.navigation.buttonOptions,e),l=r.onclick,s=r.menuItems,a=r.symbolSize||12;if(o.btnCount||(o.btnCount=0),o.exportDivElements||(o.exportDivElements=[],o.exportSVGElements=[]),!1===r.enabled||!r.theme)return;let c=o.styledMode?{}:r.theme;l?n=function(e){e&&e.stopPropagation(),l.call(o,e)}:s&&(n=function(e){e&&e.stopPropagation(),o.contextMenu(h.menuClassName,s,h.translateX||0,h.translateY||0,h.width||0,h.height||0,h),h.setState(2)}),r.text&&r.symbol?c.paddingLeft=J(c.paddingLeft,30):r.text||j(c,{width:r.width,height:r.height,padding:0});let h=i.button(r.text,0,0,n,c,void 0,void 0,void 0,void 0,r.useHTML).addClass(e.className).attr({title:J(o.options.lang[r._titleKey||r.titleKey],"")});h.menuClassName=e.menuClassName||"highcharts-menu-"+o.btnCount++,r.symbol&&(t=i.symbol(r.symbol,Math.round((r.symbolX||0)-a/2),Math.round((r.symbolY||0)-a/2),a,a,{width:a,height:a}).addClass("highcharts-button-symbol").attr({zIndex:1}).add(h),o.styledMode||t.attr({stroke:r.symbolStroke,fill:r.symbolFill,"stroke-width":r.symbolStrokeWidth||1})),h.add(o.exportingGroup).align(j(r,{width:h.width,x:J(r.x,o.buttonOffset)}),!0,"spacingBox"),o.buttonOffset+=((h.width||0)+r.buttonSpacing)*("right"===r.align?-1:1),o.exportSVGElements.push(h,t)}function l(){if(!this.printReverseInfo)return;let{childNodes:e,origDisplay:n,resetParams:o}=this.printReverseInfo;this.moveContainers(this.renderTo),[].forEach.call(e,function(e,t){1===e.nodeType&&(e.style.display=n[t]||"")}),this.isPrinting=!1,o&&this.setSize.apply(this,o),delete this.printReverseInfo,t=void 0,W(this,"afterPrint")}function s(){let e=A.body,t=this.options.exporting.printMaxWidth,n={childNodes:e.childNodes,origDisplay:[],resetParams:void 0};this.isPrinting=!0,this.pointer?.reset(void 0,0),W(this,"beforePrint"),t&&this.chartWidth>t&&(n.resetParams=[this.options.chart.width,void 0,!1],this.setSize(t,void 0,!1)),[].forEach.call(n.childNodes,function(e,t){1===e.nodeType&&(n.origDisplay[t]=e.style.display,e.style.display="none")}),this.moveContainers(e),this.printReverseInfo=n}function a(e){e.renderExporting(),B(e,"redraw",e.renderExporting),B(e,"destroy",e.destroyExport)}function c(e,t,n,o,i,r,l){let s=this,a=s.options.navigation,c=s.chartWidth,h=s.chartHeight,d="cache-"+e,p=Math.max(i,r),g,f=s[d];f||(s.exportContextMenu=s[d]=f=U("div",{className:e},{position:"absolute",zIndex:1e3,padding:p+"px",pointerEvents:"auto",...s.renderer.style},s.scrollablePlotArea?.fixedDiv||s.container),g=U("ul",{className:"highcharts-menu"},s.styledMode?{}:{listStyle:"none",margin:0,padding:0},f),s.styledMode||I(g,j({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},a.menuStyle)),f.hideMenu=function(){I(f,{display:"none"}),l&&l.setState(0),s.openMenu=!1,I(s.renderTo,{overflow:"hidden"}),I(s.container,{overflow:"hidden"}),u().clearTimeout(f.hideTimer),W(s,"exportMenuHidden")},s.exportEvents.push(B(f,"mouseleave",function(){f.hideTimer=H.setTimeout(f.hideMenu,500)}),B(f,"mouseenter",function(){u().clearTimeout(f.hideTimer)}),B(A,"mouseup",function(t){s.pointer?.inClass(t.target,e)||f.hideMenu()}),B(f,"click",function(){s.openMenu&&f.hideMenu()})),t.forEach(function(e){if("string"==typeof e&&(e=s.options.exporting.menuItemDefinitions[e]),z(e,!0)){let t;e.separator?t=U("hr",void 0,void 0,g):("viewData"===e.textKey&&s.isDataTableVisible&&(e.textKey="hideData"),t=U("li",{className:"highcharts-menu-item",onclick:function(t){t&&t.stopPropagation(),f.hideMenu(),"string"!=typeof e&&e.onclick&&e.onclick.apply(s,arguments)}},void 0,g),w().setElementHTML(t,e.text||s.options.lang[e.textKey]),s.styledMode||(t.onmouseover=function(){I(this,a.menuItemHoverStyle)},t.onmouseout=function(){I(this,a.menuItemStyle)},I(t,j({cursor:"pointer"},a.menuItemStyle||{})))),s.exportDivElements.push(t)}}),s.exportDivElements.push(g,f),s.exportMenuWidth=f.offsetWidth,s.exportMenuHeight=f.offsetHeight);let m={display:"block"};n+(s.exportMenuWidth||0)>c?m.right=c-n-i-p+"px":m.left=n-p+"px",o+r+(s.exportMenuHeight||0)>h&&l.alignOptions?.verticalAlign!=="top"?m.bottom=h-o-p+"px":m.top=o+r-p+"px",I(f,m),I(s.renderTo,{overflow:""}),I(s.container,{overflow:""}),s.openMenu=!0,W(s,"exportMenuShown")}function h(e){let t;let n=e?e.target:this,o=n.exportSVGElements,i=n.exportDivElements,r=n.exportEvents;o&&(o.forEach((e,i)=>{e&&(e.onclick=e.ontouchstart=null,n[t="cache-"+e.menuClassName]&&delete n[t],o[i]=e.destroy())}),o.length=0),n.exportingGroup&&(n.exportingGroup.destroy(),delete n.exportingGroup),i&&(i.forEach(function(e,t){e&&(u().clearTimeout(e.hideTimer),_(e,"mouseleave"),i[t]=e.onmouseout=e.onmouseover=e.ontouchstart=e.onclick=null,V(e))}),i.length=0),r&&(r.forEach(function(e){e()}),r.length=0)}function d(e,t){let n=this.getSVGForExport(e,t);e=$(this.options.exporting,e),G().post(e.url,{filename:e.filename?e.filename.replace(/\//g,"-"):this.getFilename(),type:e.type,width:e.width,scale:e.scale,svg:n},e.fetchOptions)}function p(e){return e&&this.inlineStyles(),this.container.innerHTML}function g(){let e=this.userOptions.title&&this.userOptions.title.text,t=this.options.exporting.filename;return t?t.replace(/\//g,"-"):("string"==typeof e&&(t=e.toLowerCase().replace(/<\/?[^>]+(>|$)/g,"").replace(/[\s_]+/g,"-").replace(/[^a-z\d\-]/g,"").replace(/^[\-]+/g,"").replace(/[\-]+/g,"-").substr(0,24).replace(/[\-]+$/g,"")),(!t||t.length<5)&&(t="chart"),t)}function f(e){let t,n,o=$(this.options,e);o.plotOptions=$(this.userOptions.plotOptions,e&&e.plotOptions),o.time=$(this.userOptions.time,e&&e.time);let i=U("div",null,{position:"absolute",top:"-9999em",width:this.chartWidth+"px",height:this.chartHeight+"px"},A.body),r=this.renderTo.style.width,l=this.renderTo.style.height,s=o.exporting.sourceWidth||o.chart.width||/px$/.test(r)&&parseInt(r,10)||(o.isGantt?800:600),a=o.exporting.sourceHeight||o.chart.height||/px$/.test(l)&&parseInt(l,10)||400;j(o.chart,{animation:!1,renderTo:i,forExport:!0,renderer:"SVGRenderer",width:s,height:a}),o.exporting.enabled=!1,delete o.data,o.series=[],this.series.forEach(function(e){(n=$(e.userOptions,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:e.visible})).isInternal||o.series.push(n)});let c={};this.axes.forEach(function(e){e.userOptions.internalKey||(e.userOptions.internalKey=X()),e.options.isInternal||(c[e.coll]||(c[e.coll]=!0,o[e.coll]=[]),o[e.coll].push($(e.userOptions,{visible:e.visible,type:e.type,uniqueNames:e.uniqueNames})))}),o.colorAxis=this.userOptions.colorAxis;let h=new this.constructor(o,this.callback);return e&&["xAxis","yAxis","series"].forEach(function(t){let n={};e[t]&&(n[t]=e[t],h.update(n))}),this.axes.forEach(function(e){let t=q(h.axes,function(t){return t.options.internalKey===e.userOptions.internalKey}),n=e.getExtremes(),o=n.userMin,i=n.userMax;t&&(void 0!==o&&o!==t.min||void 0!==i&&i!==t.max)&&t.setExtremes(o,i,!0,!1)}),t=h.getChartHTML(this.styledMode||o.exporting?.applyStyleSheets),W(this,"getSVG",{chartCopy:h}),t=this.sanitizeSVG(t,o),o=null,h.destroy(),V(i),t}function m(e,t){let n=this.options.exporting;return this.getSVG($({chart:{borderRadius:0}},n.chartOptions,t,{exporting:{sourceWidth:e&&e.sourceWidth||n.sourceWidth,sourceHeight:e&&e.sourceHeight||n.sourceHeight}}))}function x(){let t;let r=e.inlineAllowlist,l={},s=A.createElement("iframe");I(s,{width:"1px",height:"1px",visibility:"hidden"}),A.body.appendChild(s);let a=s.contentWindow&&s.contentWindow.document;a&&a.body.appendChild(a.createElementNS(R,"svg")),function e(s){let c,h,d,p,g,f;let m={};if(a&&1===s.nodeType&&-1===i.indexOf(s.nodeName)){if(c=H.getComputedStyle(s,null),h="svg"===s.nodeName?{}:H.getComputedStyle(s.parentNode,null),!l[s.nodeName]){t=a.getElementsByTagName("svg")[0],d=a.createElementNS(s.namespaceURI,s.nodeName),t.appendChild(d);let e=H.getComputedStyle(d,null),n={};for(let t in e)t.length<1e3&&"string"==typeof e[t]&&!/^\d+$/.test(t)&&(n[t]=e[t]);l[s.nodeName]=n,"text"===s.nodeName&&delete l.text.fill,t.removeChild(d)}for(let e in c)(u().isFirefox||u().isMS||u().isSafari||Object.hasOwnProperty.call(c,e))&&function(e,t){if(p=g=!1,r.length){for(f=r.length;f--&&!g;)g=r[f].test(t);p=!g}for("transform"===t&&"none"===e&&(p=!0),f=n.length;f--&&!p;){if(t.length>1e3)throw Error("Input too long");p=n[f].test(t)||"function"==typeof e}!p&&(h[t]!==e||"svg"===s.nodeName)&&l[s.nodeName][t]!==e&&(o&&-1===o.indexOf(t)?m[t]=e:e&&s.setAttribute(t.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()}),e))}(c[e],e);if(I(s,m),"svg"===s.nodeName&&s.setAttribute("stroke-width","1px"),"text"===s.nodeName)return;[].forEach.call(s.children||s.childNodes,e)}}(this.container.querySelector("svg")),t.parentNode.removeChild(t),s.parentNode.removeChild(s)}function y(e){let{scrollablePlotArea:t}=this;(t?[t.fixedDiv,t.scrollingContainer]:[this.container]).forEach(function(t){e.appendChild(t)})}function b(){let e=this,t=(t,n,o)=>{e.isDirtyExporting=!0,$(!0,e.options[t],n),J(o,!0)&&e.redraw()};e.exporting={update:function(e,n){t("exporting",e,n)}},S.compose(e).navigation.addUpdate((e,n)=>{t("navigation",e,n)})}function v({alignTo:e,key:t,textPxLength:n}){let o=this.options.exporting,{align:i,buttonSpacing:r=0,verticalAlign:l,width:s=0}=$(this.options.navigation?.buttonOptions,o?.buttons?.contextButton),a=e.width-n,c=s+r;(o?.enabled??!0)&&"title"===t&&"right"===i&&"top"===l&&a<2*c&&(a<c?e.width-=c:this.title?.alignValue!=="left"&&(e.x-=c-a/2))}function E(){let e=this;e.isPrinting||(t=e,u().isSafari||e.beforePrint(),setTimeout(()=>{H.focus(),H.print(),u().isSafari||setTimeout(()=>{e.afterPrint()},1e3)},1))}function O(){let e=this,t=e.options.exporting,n=t.buttons,o=e.isDirtyExporting||!e.exportSVGElements;e.buttonOffset=0,e.isDirtyExporting&&e.destroyExport(),o&&!1!==t.enabled&&(e.exportEvents=[],e.exportingGroup=e.exportingGroup||e.renderer.g("exporting-group").attr({zIndex:3}).add(),K(n,function(t){e.addButton(t)}),e.isDirtyExporting=!1)}function T(e,t){let n=e.indexOf("</svg>")+6,o=e.substr(n);return e=e.substr(0,n),t&&t.exporting&&t.exporting.allowHTML&&o&&(o='<foreignObject x="0" y="0" width="'+t.chart.width+'" height="'+t.chart.height+'"><body xmlns="http://www.w3.org/1999/xhtml">'+o.replace(/(<(?:img|br).*?(?=\>))>/g,"$1 />")+"</body></foreignObject>",e=e.replace("</svg>",o+"</svg>")),e=e.replace(/zIndex="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery\d+="[^"]+"/g,"").replace(/url\(("|&quot;)(.*?)("|&quot;)\;?\)/g,"url($2)").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (NS\d+\:)?href=/g," xlink:href=").replace(/\n+/g," ").replace(/(fill|stroke)="rgba\(([ \d]+,[ \d]+,[ \d]+),([ \d\.]+)\)"/g,'$1="rgb($2)" $1-opacity="$3"').replace(/&nbsp;/g,"\xa0").replace(/&shy;/g,"\xad")}e.compose=function(e,n){F.compose(n),N.compose(e);let o=e.prototype;o.exportChart||(o.afterPrint=l,o.exportChart=d,o.inlineStyles=x,o.print=E,o.sanitizeSVG=T,o.getChartHTML=p,o.getSVG=f,o.getSVGForExport=m,o.getFilename=g,o.moveContainers=y,o.beforePrint=s,o.contextMenu=c,o.addButton=r,o.destroyExport=h,o.renderExporting=O,o.callbacks.push(a),B(e,"init",b),B(e,"layOutTitle",v),u().isSafari&&H.matchMedia("print").addListener(function(e){t&&(e.matches?t.beforePrint():t.afterPrint())}),D.exporting=$(C.exporting,D.exporting),D.lang=$(C.lang,D.lang),D.navigation=$(C.navigation,D.navigation))}}(l||(l={}));let Y=l,Z={libURL:"https://code.highcharts.com/12.0.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"})}}}},{defaultOptions:Q}=u(),{downloadURL:ee}=b,{doc:et,win:en}=u(),{ajax:eo}=G(),{addEvent:ei,error:er,extend:el,fireEvent:es,merge:ea}=u();w().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"),w().allowedTags.push("desc","clippath","g"),function(e){function t(t,n){let o=this,i=ea(o.options.exporting,t),r=function(e){!1===i.fallbackToExportServer?i.error?i.error(i,e):er(28,!0):o.exportChart(i)};if(u().isMS&&o.styledMode&&!Y.inlineAllowlist.length&&Y.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$/),u().isMS&&("application/pdf"===i.type||o.container.getElementsByTagName("image").length&&"image/svg+xml"!==i.type)||"application/pdf"===i.type&&[].some.call(o.container.getElementsByTagName("image"),function(e){let t=e.getAttribute("href");return""!==t&&"string"==typeof t&&0!==t.indexOf("data:")})){r(Error("Image type not supported for this chart/browser."));return}o.getSVGForLocalExport(i,n||{},r,function(t){t.indexOf("<foreignObject")>-1&&"image/svg+xml"!==i.type&&(u().isMS||"application/pdf"===i.type)?r(Error("Image type not supported for charts with embedded HTML")):e.downloadSVGLocal(t,el({filename:o.getFilename()},i),r,()=>es(o,"exportChartLocalSuccess"))})}function n(e,t){let n=et.getElementsByTagName("head")[0],o=et.createElement("script");o.type="text/javascript",o.src=e,o.onload=t,o.onerror=function(){er("Error loading script "+e)},n.appendChild(o)}function o(t,n,o,i){let r=this,l=e=>r.sanitizeSVG(e,d),s=()=>{u&&f===g&&i(l(h.innerHTML))},a=(e,t,n)=>{++f,n.imageElement.setAttributeNS("http://www.w3.org/1999/xlink","href",e),s()},c,h,d,p=null,u,g=0,f=0;r.unbindGetSVG=ei(r,"getSVG",e=>{d=e.chartCopy.options,g=(u=(h=e.chartCopy.container.cloneNode(!0))&&h.getElementsByTagName("image")||[]).length}),r.getSVGForExport(t,n);try{if(!u||!u.length){i(l(h.innerHTML));return}for(let n=0;n<u.length;n++)(p=(c=u[n]).getAttributeNS("http://www.w3.org/1999/xlink","href"))?e.imageToDataUrl(p,"image/png",{imageElement:c},t.scale,a,o,o,o):(f++,c.parentNode.removeChild(c),n--,s())}catch(e){o(e)}r.unbindGetSVG()}function i(t,n,o,i,r,l,s,a,c){let h=new en.Image,d,p=()=>{setTimeout(function(){let e;let l=et.createElement("canvas"),a=l.getContext&&l.getContext("2d");try{if(a){l.height=h.height*i,l.width=h.width*i,a.drawImage(h,0,0,l.width,l.height);try{e=l.toDataURL(n),r(e,n,o,i)}catch(e){d(t,n,o,i)}}else s(t,n,o,i)}finally{c&&c(t,n,o,i)}},e.loadEventDeferDelay)},u=()=>{a(t,n,o,i),c&&c(t,n,o,i)};d=()=>{h=new en.Image,d=l,h.crossOrigin="Anonymous",h.onload=p,h.onerror=u,h.src=t},h.onload=p,h.onerror=u,h.src=t}function r(t){let n=en.navigator.userAgent,o=n.indexOf("WebKit")>-1&&0>n.indexOf("Chrome");try{if(!o&&-1===t.indexOf("<foreignObject"))return e.domurl.createObjectURL(new en.Blob([t],{type:"image/svg+xml;charset-utf-16"}))}catch(e){}return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(t)}function l(e,t,n,o){let i=(Number(e.getAttribute("width"))+2*t)*n,r=(Number(e.getAttribute("height"))+2*t)*n,l=new en.jspdf.jsPDF(r>i?"p":"l","pt",[i,r]);[].forEach.call(e.querySelectorAll('*[visibility="hidden"]'),function(e){e.parentNode.removeChild(e)});let s=e.querySelectorAll("linearGradient");for(let e=0;e<s.length;e++){let t=s[e].querySelectorAll("stop"),n=0;for(;n<t.length&&"0"===t[n].getAttribute("offset")&&"0"===t[n+1].getAttribute("offset");)t[n].remove(),n++}[].forEach.call(e.querySelectorAll("tspan"),e=>{"​"===e.textContent&&(e.textContent=" ",e.setAttribute("dx",-5))}),l.svg(e,{x:0,y:0,width:i,height:r,removeInvalid:!0}).then(()=>o(l.output("datauristring")))}e.CanVGRenderer={},e.domurl=en.URL||en.webkitURL||en,e.loadEventDeferDelay=u().isMS?150:0,e.compose=function(e){let n=e.prototype;return n.exportChartLocal||(n.getSVGForLocalExport=o,n.exportChartLocal=t,ea(!0,Q.exporting,Z)),e},e.downloadSVGLocal=function(t,o,s,a){let c=et.createElement("div"),h=o.type||"image/png",d=(o.filename||"chart")+"."+("image/svg+xml"===h?"svg":h.split("/")[1]),p=o.scale||1,u,g,f,m=o.libURL||Q.exporting.libURL,x=!0,y=o.pdfFont;m="/"!==m.slice(-1)?m+"/":m;let b=(e,t)=>{let n,o;let i=(e,t)=>{en.jspdf.jsPDF.API.events.push(["initialized",function(){this.addFileToVFS(e,t),this.addFont(e,"HighchartsFont",e),this.getFontList().HighchartsFont||this.setFont("HighchartsFont")}])};y&&(o=e.textContent||"",!/[^\u0000-\u007F\u200B]+/.test(o))&&(y=void 0);let r=["normal","italic","bold","bolditalic"],l=()=>{let e=r.shift();if(!e)return t();let o=y&&y[e];o?eo({url:o,responseType:"blob",success:(t,o)=>{let r=new FileReader;r.onloadend=function(){if("string"==typeof this.result){let t=this.result.split(",")[1];i(e,t),"normal"===e&&(n=t)}l()},r.readAsDataURL(o.response)},error:l}):(n&&i(e,n),l())};l()},v=()=>{let e,n;w().setElementHTML(c,t);let o=c.getElementsByTagName("text"),i=function(e,t){let n=e;for(;n&&n!==c;){if(n.style[t]){let o=n.style[t];"fontSize"===t&&/em$/.test(o)&&(o=Math.round(16*parseFloat(o))+"px"),e.style[t]=o;break}n=n.parentNode}};[].forEach.call(o,function(t){for(["fontFamily","fontSize"].forEach(e=>{i(t,e)}),t.style.fontFamily=y&&y.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;){let e=n[0];e.parentNode&&e.parentNode.removeChild(e)}});let r=c.querySelector("svg");r&&b(r,()=>{l(r,0,p,e=>{try{ee(e,d),a&&a()}catch(e){s(e)}})})};if("image/svg+xml"===h)try{void 0!==en.MSBlobBuilder?((g=new en.MSBlobBuilder).append(t),u=g.getBlob("image/svg+xml")):u=r(t),ee(u,d),a&&a()}catch(e){s(e)}else"application/pdf"===h?en.jspdf&&en.jspdf.jsPDF?v():(x=!0,n(m+"jspdf.js",function(){n(m+"svg2pdf.js",v)})):(u=r(t),f=function(){try{e.domurl.revokeObjectURL(u)}catch(e){}},i(u,h,{},p,function(e){try{ee(e,d),a&&a()}catch(e){s(e)}},function(){if(t.length>1e8)throw Error("Input too long");let e=et.createElement("canvas"),o=e.getContext("2d"),i=t.match(/^<svg[^>]*\s{,1000}width\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/),r=t.match(/^<svg[^>]*\s{0,1000}height\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/);if(o&&i&&r){let l=+i[1]*p,c=+r[1]*p,u=()=>{en.canvg.Canvg.fromString(o,t).start();try{ee(en.navigator.msSaveOrOpenBlob?e.msToBlob():e.toDataURL(h),d),a&&a()}catch(e){s(e)}finally{f()}};e.width=l,e.height=c,en.canvg?u():(x=!0,n(m+"canvg.js",u))}},s,s,function(){x&&f()}))},e.getScript=n,e.imageToDataUrl=i,e.svgToDataUrl=r,e.svgToPdf=l}(s||(s={}));let ec=s,eh=u();eh.dataURLtoBlob=eh.dataURLtoBlob||b.dataURLtoBlob,eh.downloadSVGLocal=ec.downloadSVGLocal,eh.downloadURL=eh.downloadURL||b.downloadURL,ec.compose(eh.Chart);let ed=u();return d.default})());
12
+ */function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(e._Highcharts,e._Highcharts.AST,e._Highcharts.Chart,e._Highcharts.HttpUtilities):"function"==typeof define&&define.amd?define("highcharts/modules/offline-exporting",["highcharts/highcharts"],function(e){return t(e,e.AST,e.Chart,e.HttpUtilities)}):"object"==typeof exports?exports["highcharts/modules/offline-exporting"]=t(e._Highcharts,e._Highcharts.AST,e._Highcharts.Chart,e._Highcharts.HttpUtilities):e.Highcharts=t(e.Highcharts,e.Highcharts.AST,e.Highcharts.Chart,e.Highcharts.HttpUtilities)}("undefined"==typeof window?this:window,(e,t,n,o)=>(()=>{"use strict";var i,r,l,s,a={660:e=>{e.exports=t},960:e=>{e.exports=n},156:e=>{e.exports=o},944:t=>{t.exports=e}},c={};function h(e){var t=c[e];if(void 0!==t)return t.exports;var n=c[e]={exports:{}};return a[e](n,n.exports,h),n.exports}h.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return h.d(t,{a:t}),t},h.d=(e,t)=>{for(var n in t)h.o(t,n)&&!h.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},h.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var d={};h.d(d,{default:()=>ed});var p=h(944),u=/*#__PURE__*/h.n(p);let{isSafari:g,win:f,win:{document:m}}=u(),x=f.URL||f.webkitURL||f;function y(e){let t=e.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([A-Z+\d\/]+)/i);if(t&&t.length>3&&f.atob&&f.ArrayBuffer&&f.Uint8Array&&f.Blob&&x.createObjectURL){let e=f.atob(t[3]),n=new f.ArrayBuffer(e.length),o=new f.Uint8Array(n);for(let t=0;t<o.length;++t)o[t]=e.charCodeAt(t);return x.createObjectURL(new f.Blob([o],{type:t[1]}))}}let b={dataURLtoBlob:y,downloadURL:function(e,t){let n=f.navigator,o=m.createElement("a");if("string"!=typeof e&&!(e instanceof String)&&n.msSaveOrOpenBlob){n.msSaveOrOpenBlob(e,t);return}if(e=""+e,n.userAgent.length>1e3)throw Error("Input too long");let i=/Edge\/\d+/.test(n.userAgent);if((g&&"string"==typeof e&&0===e.indexOf("data:application/pdf")||i||e.length>2e6)&&!(e=y(e)||""))throw Error("Failed to convert to blob");if(void 0!==o.download)o.href=e,o.download=t,m.body.appendChild(o),o.click(),m.body.removeChild(o);else try{if(!f.open(e,"chart"))throw Error("Failed to open window")}catch{f.location.href=e}}};var v=h(660),w=/*#__PURE__*/h.n(v);h(960),function(e){e.compose=function(e){return e.navigation||(e.navigation=new t(e)),e};class t{constructor(e){this.updates=[],this.chart=e}addUpdate(e){this.chart.navigation.updates.push(e)}update(e,t){this.updates.forEach(n=>{n.call(this.chart,e,t)})}}e.Additions=t}(i||(i={}));let S=i,{isTouchDevice:E}=u(),C={exporting:{allowTableSorting:!0,type:"image/png",url:"https://export-svg.highcharts.com/",pdfFont:{normal:void 0,bold:void 0,bolditalic:void 0,italic:void 0},printMaxWidth:780,scale:2,buttons:{contextButton:{className:"highcharts-contextbutton",menuClassName:"highcharts-contextmenu",symbol:"menu",titleKey:"contextButtonTitle",menuItems:["viewFullscreen","printChart","separator","downloadPNG","downloadJPEG","downloadSVG"],y:-5}},menuItemDefinitions:{viewFullscreen:{textKey:"viewFullscreen",onclick:function(){this.fullscreen&&this.fullscreen.toggle()}},printChart:{textKey:"printChart",onclick:function(){this.print()}},separator:{separator:!0},downloadPNG:{textKey:"downloadPNG",onclick:function(){this.exportChart()}},downloadJPEG:{textKey:"downloadJPEG",onclick:function(){this.exportChart({type:"image/jpeg"})}},downloadPDF:{textKey:"downloadPDF",onclick:function(){this.exportChart({type:"application/pdf"})}},downloadSVG:{textKey:"downloadSVG",onclick:function(){this.exportChart({type:"image/svg+xml"})}}}},lang:{viewFullscreen:"View in full screen",exitFullscreen:"Exit from full screen",printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"},navigation:{buttonOptions:{symbolSize:14,symbolX:14.5,symbolY:13.5,align:"right",buttonSpacing:5,height:28,verticalAlign:"top",width:28,symbolFill:"#666666",symbolStroke:"#666666",symbolStrokeWidth:3,theme:{fill:"#ffffff",padding:5,stroke:"none","stroke-linecap":"round"}},menuStyle:{border:"none",borderRadius:"3px",background:"#ffffff",padding:"0.5em"},menuItemStyle:{background:"none",borderRadius:"3px",color:"#333333",padding:"0.5em",fontSize:E?"0.9em":"0.8em",transition:"background 250ms, color 250ms"},menuItemHoverStyle:{background:"#f2f2f2"}}};!function(e){let t=[];function n(e,t,n,o){return[["M",e,t+2.5],["L",e+n,t+2.5],["M",e,t+o/2+.5],["L",e+n,t+o/2+.5],["M",e,t+o-1.5],["L",e+n,t+o-1.5]]}function o(e,t,n,o){let i=o/3-2;return[].concat(this.circle(n-i,t,i,i),this.circle(n-i,t+i+4,i,i),this.circle(n-i,t+2*(i+4),i,i))}e.compose=function(e){if(-1===t.indexOf(e)){t.push(e);let i=e.prototype.symbols;i.menu=n,i.menuball=o.bind(i)}}}(r||(r={}));let F=r,{composed:O}=u(),{addEvent:T,fireEvent:k,pushUnique:L}=u();function M(){this.fullscreen=new N(this)}class N{static compose(e){L(O,"Fullscreen")&&T(e,"beforeRender",M)}constructor(e){this.chart=e,this.isOpen=!1;let t=e.renderTo;!this.browserProps&&("function"==typeof t.requestFullscreen?this.browserProps={fullscreenChange:"fullscreenchange",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen"}:t.mozRequestFullScreen?this.browserProps={fullscreenChange:"mozfullscreenchange",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen"}:t.webkitRequestFullScreen?this.browserProps={fullscreenChange:"webkitfullscreenchange",requestFullscreen:"webkitRequestFullScreen",exitFullscreen:"webkitExitFullscreen"}:t.msRequestFullscreen&&(this.browserProps={fullscreenChange:"MSFullscreenChange",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen"}))}close(){let e=this,t=e.chart,n=t.options.chart;k(t,"fullscreenClose",null,function(){e.isOpen&&e.browserProps&&t.container.ownerDocument instanceof Document&&t.container.ownerDocument[e.browserProps.exitFullscreen](),e.unbindFullscreenEvent&&(e.unbindFullscreenEvent=e.unbindFullscreenEvent()),t.setSize(e.origWidth,e.origHeight,!1),e.origWidth=void 0,e.origHeight=void 0,n.width=e.origWidthOption,n.height=e.origHeightOption,e.origWidthOption=void 0,e.origHeightOption=void 0,e.isOpen=!1,e.setButtonText()})}open(){let e=this,t=e.chart,n=t.options.chart;k(t,"fullscreenOpen",null,function(){if(n&&(e.origWidthOption=n.width,e.origHeightOption=n.height),e.origWidth=t.chartWidth,e.origHeight=t.chartHeight,e.browserProps){let n=T(t.container.ownerDocument,e.browserProps.fullscreenChange,function(){e.isOpen?(e.isOpen=!1,e.close()):(t.setSize(null,null,!1),e.isOpen=!0,e.setButtonText())}),o=T(t,"destroy",n);e.unbindFullscreenEvent=()=>{n(),o()};let i=t.renderTo[e.browserProps.requestFullscreen]();i&&i.catch(function(){alert("Full screen is not supported inside a frame.")})}})}setButtonText(){let e=this.chart,t=e.exportDivElements,n=e.options.exporting,o=n&&n.buttons&&n.buttons.contextButton.menuItems,i=e.options.lang;if(n&&n.menuItemDefinitions&&i&&i.exitFullscreen&&i.viewFullscreen&&o&&t){let e=t[o.indexOf("viewFullscreen")];e&&w().setElementHTML(e,this.isOpen?i.exitFullscreen:n.menuItemDefinitions.viewFullscreen.text||i.viewFullscreen)}}toggle(){this.isOpen?this.close():this.open()}}var P=h(156),G=/*#__PURE__*/h.n(P);let{defaultOptions:H}=u(),{doc:D,SVG_NS:A,win:R}=u(),{addEvent:B,css:I,createElement:U,discardElement:V,extend:j,find:W,fireEvent:z,isObject:$,merge:q,objectEach:K,pick:_,removeEvent:J,uniqueKey:X}=u();!function(e){let t;let n=[/-/,/^(clipPath|cssText|d|height|width)$/,/^font$/,/[lL]ogical(Width|Height)$/,/^parentRule$/,/^(cssRules|ownerRules)$/,/perspective/,/TapHighlightColor/,/^transition/,/^length$/,/^\d+$/],o=["fill","stroke","strokeLinecap","strokeLinejoin","strokeWidth","textAnchor","x","y"];e.inlineAllowlist=[];let i=["clipPath","defs","desc"];function r(e){let t,n;let o=this,i=o.renderer,r=q(o.options.navigation.buttonOptions,e),l=r.onclick,s=r.menuItems,a=r.symbolSize||12;if(o.btnCount||(o.btnCount=0),o.exportDivElements||(o.exportDivElements=[],o.exportSVGElements=[]),!1===r.enabled||!r.theme)return;let c=o.styledMode?{}:r.theme;l?n=function(e){e&&e.stopPropagation(),l.call(o,e)}:s&&(n=function(e){e&&e.stopPropagation(),o.contextMenu(h.menuClassName,s,h.translateX||0,h.translateY||0,h.width||0,h.height||0,h),h.setState(2)}),r.text&&r.symbol?c.paddingLeft=_(c.paddingLeft,30):r.text||j(c,{width:r.width,height:r.height,padding:0});let h=i.button(r.text,0,0,n,c,void 0,void 0,void 0,void 0,r.useHTML).addClass(e.className).attr({title:_(o.options.lang[r._titleKey||r.titleKey],"")});h.menuClassName=e.menuClassName||"highcharts-menu-"+o.btnCount++,r.symbol&&(t=i.symbol(r.symbol,Math.round((r.symbolX||0)-a/2),Math.round((r.symbolY||0)-a/2),a,a,{width:a,height:a}).addClass("highcharts-button-symbol").attr({zIndex:1}).add(h),o.styledMode||t.attr({stroke:r.symbolStroke,fill:r.symbolFill,"stroke-width":r.symbolStrokeWidth||1})),h.add(o.exportingGroup).align(j(r,{width:h.width,x:_(r.x,o.buttonOffset)}),!0,"spacingBox"),o.buttonOffset+=((h.width||0)+r.buttonSpacing)*("right"===r.align?-1:1),o.exportSVGElements.push(h,t)}function l(){if(!this.printReverseInfo)return;let{childNodes:e,origDisplay:n,resetParams:o}=this.printReverseInfo;this.moveContainers(this.renderTo),[].forEach.call(e,function(e,t){1===e.nodeType&&(e.style.display=n[t]||"")}),this.isPrinting=!1,o&&this.setSize.apply(this,o),delete this.printReverseInfo,t=void 0,z(this,"afterPrint")}function s(){let e=D.body,t=this.options.exporting.printMaxWidth,n={childNodes:e.childNodes,origDisplay:[],resetParams:void 0};this.isPrinting=!0,this.pointer?.reset(void 0,0),z(this,"beforePrint"),t&&this.chartWidth>t&&(n.resetParams=[this.options.chart.width,void 0,!1],this.setSize(t,void 0,!1)),[].forEach.call(n.childNodes,function(e,t){1===e.nodeType&&(n.origDisplay[t]=e.style.display,e.style.display="none")}),this.moveContainers(e),this.printReverseInfo=n}function a(e){e.renderExporting(),B(e,"redraw",e.renderExporting),B(e,"destroy",e.destroyExport)}function c(e,t,n,o,i,r,l){let s=this,a=s.options.navigation,c=s.chartWidth,h=s.chartHeight,d="cache-"+e,p=Math.max(i,r),g,f=s[d];f||(s.exportContextMenu=s[d]=f=U("div",{className:e},{position:"absolute",zIndex:1e3,padding:p+"px",pointerEvents:"auto",...s.renderer.style},s.scrollablePlotArea?.fixedDiv||s.container),g=U("ul",{className:"highcharts-menu"},s.styledMode?{}:{listStyle:"none",margin:0,padding:0},f),s.styledMode||I(g,j({MozBoxShadow:"3px 3px 10px #888",WebkitBoxShadow:"3px 3px 10px #888",boxShadow:"3px 3px 10px #888"},a.menuStyle)),f.hideMenu=function(){I(f,{display:"none"}),l&&l.setState(0),s.openMenu=!1,I(s.renderTo,{overflow:"hidden"}),I(s.container,{overflow:"hidden"}),u().clearTimeout(f.hideTimer),z(s,"exportMenuHidden")},s.exportEvents.push(B(f,"mouseleave",function(){f.hideTimer=R.setTimeout(f.hideMenu,500)}),B(f,"mouseenter",function(){u().clearTimeout(f.hideTimer)}),B(D,"mouseup",function(t){s.pointer?.inClass(t.target,e)||f.hideMenu()}),B(f,"click",function(){s.openMenu&&f.hideMenu()})),t.forEach(function(e){if("string"==typeof e&&(e=s.options.exporting.menuItemDefinitions[e]),$(e,!0)){let t;e.separator?t=U("hr",void 0,void 0,g):("viewData"===e.textKey&&s.isDataTableVisible&&(e.textKey="hideData"),t=U("li",{className:"highcharts-menu-item",onclick:function(t){t&&t.stopPropagation(),f.hideMenu(),"string"!=typeof e&&e.onclick&&e.onclick.apply(s,arguments)}},void 0,g),w().setElementHTML(t,e.text||s.options.lang[e.textKey]),s.styledMode||(t.onmouseover=function(){I(this,a.menuItemHoverStyle)},t.onmouseout=function(){I(this,a.menuItemStyle)},I(t,j({cursor:"pointer"},a.menuItemStyle||{})))),s.exportDivElements.push(t)}}),s.exportDivElements.push(g,f),s.exportMenuWidth=f.offsetWidth,s.exportMenuHeight=f.offsetHeight);let m={display:"block"};n+(s.exportMenuWidth||0)>c?m.right=c-n-i-p+"px":m.left=n-p+"px",o+r+(s.exportMenuHeight||0)>h&&l.alignOptions?.verticalAlign!=="top"?m.bottom=h-o-p+"px":m.top=o+r-p+"px",I(f,m),I(s.renderTo,{overflow:""}),I(s.container,{overflow:""}),s.openMenu=!0,z(s,"exportMenuShown")}function h(e){let t;let n=e?e.target:this,o=n.exportSVGElements,i=n.exportDivElements,r=n.exportEvents;o&&(o.forEach((e,i)=>{e&&(e.onclick=e.ontouchstart=null,n[t="cache-"+e.menuClassName]&&delete n[t],o[i]=e.destroy())}),o.length=0),n.exportingGroup&&(n.exportingGroup.destroy(),delete n.exportingGroup),i&&(i.forEach(function(e,t){e&&(u().clearTimeout(e.hideTimer),J(e,"mouseleave"),i[t]=e.onmouseout=e.onmouseover=e.ontouchstart=e.onclick=null,V(e))}),i.length=0),r&&(r.forEach(function(e){e()}),r.length=0)}function d(e,t){let n=this.getSVGForExport(e,t);e=q(this.options.exporting,e),G().post(e.url,{filename:e.filename?e.filename.replace(/\//g,"-"):this.getFilename(),type:e.type,width:e.width,scale:e.scale,svg:n},e.fetchOptions)}function p(e){return e&&this.inlineStyles(),this.container.innerHTML}function g(){let e=this.userOptions.title&&this.userOptions.title.text,t=this.options.exporting.filename;return t?t.replace(/\//g,"-"):("string"==typeof e&&(t=e.toLowerCase().replace(/<\/?[^>]+(>|$)/g,"").replace(/[\s_]+/g,"-").replace(/[^a-z\d\-]/g,"").replace(/^[\-]+/g,"").replace(/[\-]+/g,"-").substr(0,24).replace(/[\-]+$/g,"")),(!t||t.length<5)&&(t="chart"),t)}function f(e){let t,n,o=q(this.options,e);o.plotOptions=q(this.userOptions.plotOptions,e&&e.plotOptions),o.time=q(this.userOptions.time,e&&e.time);let i=U("div",null,{position:"absolute",top:"-9999em",width:this.chartWidth+"px",height:this.chartHeight+"px"},D.body),r=this.renderTo.style.width,l=this.renderTo.style.height,s=o.exporting.sourceWidth||o.chart.width||/px$/.test(r)&&parseInt(r,10)||(o.isGantt?800:600),a=o.exporting.sourceHeight||o.chart.height||/px$/.test(l)&&parseInt(l,10)||400;j(o.chart,{animation:!1,renderTo:i,forExport:!0,renderer:"SVGRenderer",width:s,height:a}),o.exporting.enabled=!1,delete o.data,o.series=[],this.series.forEach(function(e){(n=q(e.userOptions,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:e.visible})).isInternal||o.series.push(n)});let c={};this.axes.forEach(function(e){e.userOptions.internalKey||(e.userOptions.internalKey=X()),e.options.isInternal||(c[e.coll]||(c[e.coll]=!0,o[e.coll]=[]),o[e.coll].push(q(e.userOptions,{visible:e.visible,type:e.type,uniqueNames:e.uniqueNames})))}),o.colorAxis=this.userOptions.colorAxis;let h=new this.constructor(o,this.callback);return e&&["xAxis","yAxis","series"].forEach(function(t){let n={};e[t]&&(n[t]=e[t],h.update(n))}),this.axes.forEach(function(e){let t=W(h.axes,function(t){return t.options.internalKey===e.userOptions.internalKey}),n=e.getExtremes(),o=n.userMin,i=n.userMax;t&&(void 0!==o&&o!==t.min||void 0!==i&&i!==t.max)&&t.setExtremes(o,i,!0,!1)}),t=h.getChartHTML(this.styledMode||o.exporting?.applyStyleSheets),z(this,"getSVG",{chartCopy:h}),t=this.sanitizeSVG(t,o),o=null,h.destroy(),V(i),t}function m(e,t){let n=this.options.exporting;return this.getSVG(q({chart:{borderRadius:0}},n.chartOptions,t,{exporting:{sourceWidth:e&&e.sourceWidth||n.sourceWidth,sourceHeight:e&&e.sourceHeight||n.sourceHeight}}))}function x(){let t;let r=e.inlineAllowlist,l={},s=D.createElement("iframe");I(s,{width:"1px",height:"1px",visibility:"hidden"}),D.body.appendChild(s);let a=s.contentWindow&&s.contentWindow.document;a&&a.body.appendChild(a.createElementNS(A,"svg")),function e(s){let c,h,d,p,g,f;let m={};if(a&&1===s.nodeType&&-1===i.indexOf(s.nodeName)){if(c=R.getComputedStyle(s,null),h="svg"===s.nodeName?{}:R.getComputedStyle(s.parentNode,null),!l[s.nodeName]){t=a.getElementsByTagName("svg")[0],d=a.createElementNS(s.namespaceURI,s.nodeName),t.appendChild(d);let e=R.getComputedStyle(d,null),n={};for(let t in e)t.length<1e3&&"string"==typeof e[t]&&!/^\d+$/.test(t)&&(n[t]=e[t]);l[s.nodeName]=n,"text"===s.nodeName&&delete l.text.fill,t.removeChild(d)}for(let e in c)(u().isFirefox||u().isMS||u().isSafari||Object.hasOwnProperty.call(c,e))&&function(e,t){if(p=g=!1,r.length){for(f=r.length;f--&&!g;)g=r[f].test(t);p=!g}for("transform"===t&&"none"===e&&(p=!0),f=n.length;f--&&!p;){if(t.length>1e3)throw Error("Input too long");p=n[f].test(t)||"function"==typeof e}!p&&(h[t]!==e||"svg"===s.nodeName)&&l[s.nodeName][t]!==e&&(o&&-1===o.indexOf(t)?m[t]=e:e&&s.setAttribute(t.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()}),e))}(c[e],e);if(I(s,m),"svg"===s.nodeName&&s.setAttribute("stroke-width","1px"),"text"===s.nodeName)return;[].forEach.call(s.children||s.childNodes,e)}}(this.container.querySelector("svg")),t.parentNode.removeChild(t),s.parentNode.removeChild(s)}function y(e){let{scrollablePlotArea:t}=this;(t?[t.fixedDiv,t.scrollingContainer]:[this.container]).forEach(function(t){e.appendChild(t)})}function b(){let e=this,t=(t,n,o)=>{e.isDirtyExporting=!0,q(!0,e.options[t],n),_(o,!0)&&e.redraw()};e.exporting={update:function(e,n){t("exporting",e,n)}},S.compose(e).navigation.addUpdate((e,n)=>{t("navigation",e,n)})}function v({alignTo:e,key:t,textPxLength:n}){let o=this.options.exporting,{align:i,buttonSpacing:r=0,verticalAlign:l,width:s=0}=q(this.options.navigation?.buttonOptions,o?.buttons?.contextButton),a=e.width-n,c=s+r;(o?.enabled??!0)&&"title"===t&&"right"===i&&"top"===l&&a<2*c&&(a<c?e.width-=c:this.title?.alignValue!=="left"&&(e.x-=c-a/2))}function E(){let e=this;e.isPrinting||(t=e,u().isSafari||e.beforePrint(),setTimeout(()=>{R.focus(),R.print(),u().isSafari||setTimeout(()=>{e.afterPrint()},1e3)},1))}function O(){let e=this,t=e.options.exporting,n=t.buttons,o=e.isDirtyExporting||!e.exportSVGElements;e.buttonOffset=0,e.isDirtyExporting&&e.destroyExport(),o&&!1!==t.enabled&&(e.exportEvents=[],e.exportingGroup=e.exportingGroup||e.renderer.g("exporting-group").attr({zIndex:3}).add(),K(n,function(t){e.addButton(t)}),e.isDirtyExporting=!1)}function T(e,t){let n=e.indexOf("</svg>")+6,o=e.substr(n);return e=e.substr(0,n),t&&t.exporting&&t.exporting.allowHTML&&o&&(o='<foreignObject x="0" y="0" width="'+t.chart.width+'" height="'+t.chart.height+'"><body xmlns="http://www.w3.org/1999/xhtml">'+o.replace(/(<(?:img|br).*?(?=\>))>/g,"$1 />")+"</body></foreignObject>",e=e.replace("</svg>",o+"</svg>")),e=e.replace(/zIndex="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery\d+="[^"]+"/g,"").replace(/url\(("|&quot;)(.*?)("|&quot;)\;?\)/g,"url($2)").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (NS\d+\:)?href=/g," xlink:href=").replace(/\n+/g," ").replace(/(fill|stroke)="rgba\(([ \d]+,[ \d]+,[ \d]+),([ \d\.]+)\)"/g,'$1="rgb($2)" $1-opacity="$3"').replace(/&nbsp;/g,"\xa0").replace(/&shy;/g,"\xad")}e.compose=function(e,n){F.compose(n),N.compose(e);let o=e.prototype;o.exportChart||(o.afterPrint=l,o.exportChart=d,o.inlineStyles=x,o.print=E,o.sanitizeSVG=T,o.getChartHTML=p,o.getSVG=f,o.getSVGForExport=m,o.getFilename=g,o.moveContainers=y,o.beforePrint=s,o.contextMenu=c,o.addButton=r,o.destroyExport=h,o.renderExporting=O,o.callbacks.push(a),B(e,"init",b),B(e,"layOutTitle",v),u().isSafari&&R.matchMedia("print").addListener(function(e){t&&(e.matches?t.beforePrint():t.afterPrint())}),H.exporting=q(C.exporting,H.exporting),H.lang=q(C.lang,H.lang),H.navigation=q(C.navigation,H.navigation))}}(l||(l={}));let Y=l,Z={libURL:"https://code.highcharts.com/12.0.2/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"})}}}},{defaultOptions:Q}=u(),{downloadURL:ee}=b,{doc:et,win:en}=u(),{ajax:eo}=G(),{addEvent:ei,error:er,extend:el,fireEvent:es,merge:ea}=u();w().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"),w().allowedTags.push("desc","clippath","g"),function(e){function t(t,n){let o=this,i=ea(o.options.exporting,t),r=function(e){!1===i.fallbackToExportServer?i.error?i.error(i,e):er(28,!0):o.exportChart(i)};if(u().isMS&&o.styledMode&&!Y.inlineAllowlist.length&&Y.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$/),u().isMS&&("application/pdf"===i.type||o.container.getElementsByTagName("image").length&&"image/svg+xml"!==i.type)||"application/pdf"===i.type&&[].some.call(o.container.getElementsByTagName("image"),function(e){let t=e.getAttribute("href");return""!==t&&"string"==typeof t&&0!==t.indexOf("data:")})){r(Error("Image type not supported for this chart/browser."));return}o.getSVGForLocalExport(i,n||{},r,function(t){t.indexOf("<foreignObject")>-1&&"image/svg+xml"!==i.type&&(u().isMS||"application/pdf"===i.type)?r(Error("Image type not supported for charts with embedded HTML")):e.downloadSVGLocal(t,el({filename:o.getFilename()},i),r,()=>es(o,"exportChartLocalSuccess"))})}function n(e,t){let n=et.getElementsByTagName("head")[0],o=et.createElement("script");o.type="text/javascript",o.src=e,o.onload=t,o.onerror=function(){er("Error loading script "+e)},n.appendChild(o)}function o(t,n,o,i){let r=this,l=e=>r.sanitizeSVG(e,d),s=()=>{u&&f===g&&i(l(h.innerHTML))},a=(e,t,n)=>{++f,n.imageElement.setAttributeNS("http://www.w3.org/1999/xlink","href",e),s()},c,h,d,p=null,u,g=0,f=0;r.unbindGetSVG=ei(r,"getSVG",e=>{d=e.chartCopy.options,g=(u=(h=e.chartCopy.container.cloneNode(!0))&&h.getElementsByTagName("image")||[]).length}),r.getSVGForExport(t,n);try{if(!u||!u.length){i(l(h.innerHTML));return}for(let n=0;n<u.length;n++)(p=(c=u[n]).getAttributeNS("http://www.w3.org/1999/xlink","href"))?e.imageToDataUrl(p,"image/png",{imageElement:c},t.scale,a,o,o,o):(f++,c.parentNode.removeChild(c),n--,s())}catch(e){o(e)}r.unbindGetSVG()}function i(t,n,o,i,r,l,s,a,c){let h=new en.Image,d,p=()=>{setTimeout(function(){let e;let l=et.createElement("canvas"),a=l.getContext&&l.getContext("2d");try{if(a){l.height=h.height*i,l.width=h.width*i,a.drawImage(h,0,0,l.width,l.height);try{e=l.toDataURL(n),r(e,n,o,i)}catch(e){d(t,n,o,i)}}else s(t,n,o,i)}finally{c&&c(t,n,o,i)}},e.loadEventDeferDelay)},u=()=>{a(t,n,o,i),c&&c(t,n,o,i)};d=()=>{h=new en.Image,d=l,h.crossOrigin="Anonymous",h.onload=p,h.onerror=u,h.src=t},h.onload=p,h.onerror=u,h.src=t}function r(t){let n=en.navigator.userAgent,o=n.indexOf("WebKit")>-1&&0>n.indexOf("Chrome");try{if(!o&&-1===t.indexOf("<foreignObject"))return e.domurl.createObjectURL(new en.Blob([t],{type:"image/svg+xml;charset-utf-16"}))}catch(e){}return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(t)}function l(e,t,n,o){let i=(Number(e.getAttribute("width"))+2*t)*n,r=(Number(e.getAttribute("height"))+2*t)*n,l=new en.jspdf.jsPDF(r>i?"p":"l","pt",[i,r]);[].forEach.call(e.querySelectorAll('*[visibility="hidden"]'),function(e){e.parentNode.removeChild(e)});let s=e.querySelectorAll("linearGradient");for(let e=0;e<s.length;e++){let t=s[e].querySelectorAll("stop"),n=0;for(;n<t.length&&"0"===t[n].getAttribute("offset")&&"0"===t[n+1].getAttribute("offset");)t[n].remove(),n++}[].forEach.call(e.querySelectorAll("tspan"),e=>{"​"===e.textContent&&(e.textContent=" ",e.setAttribute("dx",-5))}),l.svg(e,{x:0,y:0,width:i,height:r,removeInvalid:!0}).then(()=>o(l.output("datauristring")))}e.CanVGRenderer={},e.domurl=en.URL||en.webkitURL||en,e.loadEventDeferDelay=u().isMS?150:0,e.compose=function(e){let n=e.prototype;return n.exportChartLocal||(n.getSVGForLocalExport=o,n.exportChartLocal=t,ea(!0,Q.exporting,Z)),e},e.downloadSVGLocal=function(t,o,s,a){let c=et.createElement("div"),h=o.type||"image/png",d=(o.filename||"chart")+"."+("image/svg+xml"===h?"svg":h.split("/")[1]),p=o.scale||1,u,g,f,m=o.libURL||Q.exporting.libURL,x=!0,y=o.pdfFont;m="/"!==m.slice(-1)?m+"/":m;let b=(e,t)=>{let n,o;let i=(e,t)=>{en.jspdf.jsPDF.API.events.push(["initialized",function(){this.addFileToVFS(e,t),this.addFont(e,"HighchartsFont",e),this.getFontList().HighchartsFont||this.setFont("HighchartsFont")}])};y&&(o=e.textContent||"",!/[^\u0000-\u007F\u200B]+/.test(o))&&(y=void 0);let r=["normal","italic","bold","bolditalic"],l=()=>{let e=r.shift();if(!e)return t();let o=y&&y[e];o?eo({url:o,responseType:"blob",success:(t,o)=>{let r=new FileReader;r.onloadend=function(){if("string"==typeof this.result){let t=this.result.split(",")[1];i(e,t),"normal"===e&&(n=t)}l()},r.readAsDataURL(o.response)},error:l}):(n&&i(e,n),l())};l()},v=()=>{let e,n;w().setElementHTML(c,t);let o=c.getElementsByTagName("text"),i=function(e,t){let n=e;for(;n&&n!==c;){if(n.style[t]){let o=n.style[t];"fontSize"===t&&/em$/.test(o)&&(o=Math.round(16*parseFloat(o))+"px"),e.style[t]=o;break}n=n.parentNode}};[].forEach.call(o,function(t){for(["fontFamily","fontSize"].forEach(e=>{i(t,e)}),t.style.fontFamily=y&&y.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;){let e=n[0];e.parentNode&&e.parentNode.removeChild(e)}});let r=c.querySelector("svg");r&&b(r,()=>{l(r,0,p,e=>{try{ee(e,d),a&&a()}catch(e){s(e)}})})};if("image/svg+xml"===h)try{void 0!==en.MSBlobBuilder?((g=new en.MSBlobBuilder).append(t),u=g.getBlob("image/svg+xml")):u=r(t),ee(u,d),a&&a()}catch(e){s(e)}else"application/pdf"===h?en.jspdf&&en.jspdf.jsPDF?v():(x=!0,n(m+"jspdf.js",function(){n(m+"svg2pdf.js",v)})):(u=r(t),f=function(){try{e.domurl.revokeObjectURL(u)}catch(e){}},i(u,h,{},p,function(e){try{ee(e,d),a&&a()}catch(e){s(e)}},function(){if(t.length>1e8)throw Error("Input too long");let e=et.createElement("canvas"),o=e.getContext("2d"),i=t.match(/^<svg[^>]*\s{,1000}width\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/),r=t.match(/^<svg[^>]*\s{0,1000}height\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/);if(o&&i&&r){let l=+i[1]*p,c=+r[1]*p,u=()=>{en.canvg.Canvg.fromString(o,t).start();try{ee(en.navigator.msSaveOrOpenBlob?e.msToBlob():e.toDataURL(h),d),a&&a()}catch(e){s(e)}finally{f()}};e.width=l,e.height=c,en.canvg?u():(x=!0,n(m+"canvg.js",u))}},s,s,function(){x&&f()}))},e.getScript=n,e.imageToDataUrl=i,e.svgToDataUrl=r,e.svgToPdf=l}(s||(s={}));let ec=s,eh=u();eh.dataURLtoBlob=eh.dataURLtoBlob||b.dataURLtoBlob,eh.downloadSVGLocal=ec.downloadSVGLocal,eh.downloadURL=eh.downloadURL||b.downloadURL,ec.compose(eh.Chart);let ed=u();return d.default})());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v12.0.1 (2024-11-28)
2
+ * @license Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/offline-exporting
4
4
  * @requires highcharts
5
5
  * @requires highcharts/modules/exporting
@@ -12,14 +12,14 @@
12
12
  */
13
13
  (function webpackUniversalModuleDefinition(root, factory) {
14
14
  if(typeof exports === 'object' && typeof module === 'object')
15
- module.exports = factory(require("highcharts"), require("highcharts")["AST"], require("highcharts")["Chart"], require("highcharts")["HttpUtilities"]);
15
+ module.exports = factory(root["_Highcharts"], root["_Highcharts"]["AST"], root["_Highcharts"]["Chart"], root["_Highcharts"]["HttpUtilities"]);
16
16
  else if(typeof define === 'function' && define.amd)
17
- define("highcharts/offline-exporting", [["highcharts/highcharts"], ["highcharts/highcharts","AST"], ["highcharts/highcharts","Chart"], ["highcharts/highcharts","HttpUtilities"]], factory);
17
+ define("highcharts/modules/offline-exporting", ["highcharts/highcharts"], function (amd1) {return factory(amd1,amd1["AST"],amd1["Chart"],amd1["HttpUtilities"]);});
18
18
  else if(typeof exports === 'object')
19
- exports["highcharts/offline-exporting"] = factory(require("highcharts"), require("highcharts")["AST"], require("highcharts")["Chart"], require("highcharts")["HttpUtilities"]);
19
+ exports["highcharts/modules/offline-exporting"] = factory(root["_Highcharts"], root["_Highcharts"]["AST"], root["_Highcharts"]["Chart"], root["_Highcharts"]["HttpUtilities"]);
20
20
  else
21
21
  root["Highcharts"] = factory(root["Highcharts"], root["Highcharts"]["AST"], root["Highcharts"]["Chart"], root["Highcharts"]["HttpUtilities"]);
22
- })(this, (__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__660__, __WEBPACK_EXTERNAL_MODULE__960__, __WEBPACK_EXTERNAL_MODULE__156__) => {
22
+ })(typeof window === 'undefined' ? this : window, (__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__660__, __WEBPACK_EXTERNAL_MODULE__960__, __WEBPACK_EXTERNAL_MODULE__156__) => {
23
23
  return /******/ (() => { // webpackBootstrap
24
24
  /******/ "use strict";
25
25
  /******/ var __webpack_modules__ = ({
@@ -2954,7 +2954,7 @@ var Exporting;
2954
2954
  *
2955
2955
  * */
2956
2956
  const OfflineExportingDefaults = {
2957
- libURL: 'https://code.highcharts.com/12.0.1/lib/',
2957
+ libURL: 'https://code.highcharts.com/12.0.2/lib/',
2958
2958
  // When offline-exporting is loaded, redefine the menu item definitions
2959
2959
  // related to download.
2960
2960
  menuItemDefinitions: {
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v12.0.1 (2024-11-28)
2
+ * Highcharts JS v12.0.2 (2024-12-04)
3
3
  * Organization chart series type
4
4
  * @module highcharts/modules/organization
5
5
  * @requires highcharts
@@ -8,4 +8,4 @@
8
8
  * (c) 2019-2024 Torstein Honsi
9
9
  *
10
10
  * License: www.highcharts.com/license
11
- */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("highcharts"),require("highcharts").SeriesRegistry,require("highcharts").SVGElement):"function"==typeof define&&define.amd?define("highcharts/organization",[["highcharts/highcharts"],["highcharts/highcharts","SeriesRegistry"],["highcharts/highcharts","SVGElement"]],e):"object"==typeof exports?exports["highcharts/organization"]=e(require("highcharts"),require("highcharts").SeriesRegistry,require("highcharts").SVGElement):t.Highcharts=e(t.Highcharts,t.Highcharts.SeriesRegistry,t.Highcharts.SVGElement)}(this,(t,e,i)=>(()=>{"use strict";var s={28:t=>{t.exports=i},512:t=>{t.exports=e},944:e=>{e.exports=t}},n={};function r(t){var e=n[t];if(void 0!==e)return e.exports;var i=n[t]={exports:{}};return s[t](i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var h={};r.d(h,{default:()=>D});var a=r(944),o=/*#__PURE__*/r.n(a),l=r(512),d=/*#__PURE__*/r.n(l);let{sankey:{prototype:{pointClass:p}}}=d().seriesTypes,{defined:g,find:u,pick:c}=o(),f=class extends p{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(!g(t.options.column)&&0!==t.linksTo.length&&e&&"hanging"===e.options.layout){let i=-1,s;t.options.layout=c(t.options.layout,"hanging"),t.hangsFrom=e,u(e.linksFrom,(e,s)=>{let n=e.toNode===t;return n&&(i=s),n});for(let n=0;n<e.linksFrom.length;++n)(s=e.linksFrom[n]).toNode.id===t.id?n=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}(s.toNode);t.column=(t.column||0)+i}}},y={applyRadius:function(t,e){let i=[];for(let s=0;s<t.length;s++){let n=t[s][1],r=t[s][2];if("number"==typeof n&&"number"==typeof r){if(0===s)i.push(["M",n,r]);else if(s===t.length-1)i.push(["L",n,r]);else if(e){let h=t[s-1],a=t[s+1];if(h&&a){let t=h[1],s=h[2],o=a[1],l=a[2];if("number"==typeof t&&"number"==typeof o&&"number"==typeof s&&"number"==typeof l&&t!==o&&s!==l){let h=t<o?1:-1,a=s<l?1:-1;i.push(["L",n-h*Math.min(Math.abs(n-t),e),r-a*Math.min(Math.abs(r-s),e)],["C",n,r,n,r,n+h*Math.min(Math.abs(n-o),e),r+a*Math.min(Math.abs(r-l),e)])}}}else i.push(["L",n,r])}}return i}};var m=r(28),k=/*#__PURE__*/r.n(m);let{deg2rad:x}=o(),{addEvent:b,merge:A,uniqueKey:L,defined:v,extend:M}=o();function w(t,e){e=A(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},e);let i=this.renderer.url,s=this.text||this,n=s.textPath,{attributes:r,enabled:h}=e;if(t=t||n&&n.path,n&&n.undo(),t&&h){let e=b(s,"afterModifyTree",e=>{if(t&&h){let n=t.attr("id");n||t.attr("id",n=L());let h={x:0,y:0};v(r.dx)&&(h.dx=r.dx,delete r.dx),v(r.dy)&&(h.dy=r.dy,delete r.dy),s.attr(h),this.attr({transform:""}),this.box&&(this.box=this.box.destroy());let a=e.nodes.slice(0);e.nodes.length=0,e.nodes[0]={tagName:"textPath",attributes:M(r,{"text-anchor":r.textAnchor,href:`${i}#${n}`}),children:a}}});s.textPath={path:t,undo:e}}else s.attr({dx:0,dy:0}),delete s.textPath;return this.added&&(s.textCache="",this.renderer.buildText(s)),this}function N(t){let e=t.bBox,i=this.element?.querySelector("textPath");if(i){let t=[],{b:s,h:n}=this.renderer.fontMetrics(this.element),r=n-s,h=RegExp('(<tspan>|<tspan(?!\\sclass="highcharts-br")[^>]*>|<\\/tspan>)',"g"),a=i.innerHTML.replace(h,"").split(/<tspan class="highcharts-br"[^>]*>/),o=a.length,l=(t,e)=>{let{x:n,y:h}=e,a=(i.getRotationOfChar(t)-90)*x,o=Math.cos(a),l=Math.sin(a);return[[n-r*o,h-r*l],[n+s*o,h+s*l]]};for(let e=0,s=0;s<o;s++){let n=a[s].length;for(let r=0;r<n;r+=5)try{let n=e+r+s,[h,a]=l(n,i.getStartPositionOfChar(n));0===r?(t.push(a),t.push(h)):(0===s&&t.unshift(a),s===o-1&&t.push(h))}catch(t){break}e+=n-1;try{let n=e+s,r=i.getEndPositionOfChar(n),[h,a]=l(n,r);t.unshift(a),t.unshift(h)}catch(t){break}}t.length&&t.push(t[0].slice()),e.polygon=t}return e}function P(t){let e=t.labelOptions,i=t.point,s=e[i.formatPrefix+"TextPath"]||e.textPath;s&&!e.useHTML&&(this.setTextPath(i.getDataLabelPath?.(this)||i.graphic,s),i.dataLabelPath&&!s.enabled&&(i.dataLabelPath=i.dataLabelPath.destroy()))}let{sankey:T}=d().seriesTypes,{css:O,crisp:S,extend:W,isNumber:F,merge:C,pick:R}=o();({compose:function(t){b(t,"afterGetBBox",N),b(t,"beforeAddingDataLabel",P);let e=t.prototype;e.setTextPath||(e.setTextPath=w)}}).compose(k());class H extends T{alignDataLabel(t,e,i){let s=t.shapeArgs;if(i.useHTML&&s){let t=this.options.borderWidth+2*this.options.dataLabels.padding,i=s.width||0,n=s.height||0;this.chart.inverted&&(i=n,n=s.width||0),n-=t,i-=t;let r=e.text;r&&(O(r.element.parentNode,{width:i+"px",height:n+"px"}),O(r.element,{left:0,top:0,width:"100%",height:"100%",overflow:"hidden"})),e.getBBox=()=>({width:i,height:n,x:0,y:0}),e.width=i,e.height=n}super.alignDataLabel.apply(this,arguments)}createNode(t){let e=super.createNode.call(this,t);return e.getSum=()=>1,e}pointAttribs(t,e){let i=T.prototype.pointAttribs.call(this,t,e),s=t.isNode?t.level:t.fromNode.level,n=this.mapOptionsToLevel[s||0]||{},r=t.options,h=n.states&&n.states[e]||{},a=R(h.borderRadius,r.borderRadius,n.borderRadius,this.options.borderRadius),o=R(h.linkColor,r.linkColor,n.linkColor,this.options.linkColor,h.link&&h.link.color,r.link&&r.link.color,n.link&&n.link.color,this.options.link&&this.options.link.color),l=R(h.linkLineWidth,r.linkLineWidth,n.linkLineWidth,this.options.linkLineWidth,h.link&&h.link.lineWidth,r.link&&r.link.lineWidth,n.link&&n.link.lineWidth,this.options.link&&this.options.link.lineWidth),d=R(h.linkOpacity,r.linkOpacity,n.linkOpacity,this.options.linkOpacity,h.link&&h.link.linkOpacity,r.link&&r.link.linkOpacity,n.link&&n.link.linkOpacity,this.options.link&&this.options.link.linkOpacity);return t.isNode?F(a)&&(i.r=a):(i.stroke=o,i["stroke-width"]=l,i.opacity=d,delete i.fill),i}translateLink(t){let e=this.chart,i=this.options,s=t.fromNode,n=t.toNode,r=R(i.linkLineWidth,i.link.lineWidth,0),h=R(i.link.offset,.5),a=R(t.options.link&&t.options.link.type,i.link.type);if(s.shapeArgs&&n.shapeArgs){let o=i.hangingIndent,l="right"===i.hangingSide,d=n.options.offset,p=/%$/.test(d)&&parseInt(d,10),g=e.inverted,u=S((s.shapeArgs.x||0)+(s.shapeArgs.width||0),r),c=S((s.shapeArgs.y||0)+(s.shapeArgs.height||0)/2,r),f=S(n.shapeArgs.x||0,r),m=S((n.shapeArgs.y||0)+(n.shapeArgs.height||0)/2,r),k;if(g&&(u-=s.shapeArgs.width||0,f+=n.shapeArgs.width||0),k=this.colDistance?S(f+(g?1:-1)*(this.colDistance-this.nodeWidth)/2,r):S((f+u)/2,r),p&&(p>=50||p<=-50)&&(k=f=S(f+(g?-.5:.5)*(n.shapeArgs.width||0),r),m=n.shapeArgs.y||0,p>0&&(m+=n.shapeArgs.height||0)),n.hangsFrom===s&&(e.inverted?(c=l?S((s.shapeArgs.y||0)+o/2,r):S((s.shapeArgs.y||0)+(s.shapeArgs.height||0)-o/2,r),m=l?(n.shapeArgs.y||0)+o/2:(n.shapeArgs.y||0)+(n.shapeArgs.height||0)):c=S((s.shapeArgs.y||0)+o/2,r),k=f=S((n.shapeArgs.x||0)+(n.shapeArgs.width||0)/2,r)),t.plotX=k,t.plotY=(c+m)/2,t.shapeType="path","straight"===a)t.shapeArgs={d:[["M",u,c],["L",f,m]]};else if("curved"===a){let e=Math.abs(f-u)*h*(g?-1:1);t.shapeArgs={d:[["M",u,c],["C",u+e,c,f-e,m,f,m]]}}else t.shapeArgs={d:y.applyRadius([["M",u,c],["L",k,c],["L",k,m],["L",f,m]],R(i.linkRadius,i.link.radius))};t.dlBox={x:(u+f)/2,y:(c+m)/2,height:r,width:0}}}translateNode(t,e){super.translateNode(t,e);let i=this.chart,s=this.options,n=Math.max(Math.round(t.getSum()*this.translationFactor),s.minLinkWidth||0),r="right"===s.hangingSide,h=s.hangingIndent||0,a=s.hangingIndentTranslation,o=s.minNodeLength||10,l=Math.round(this.nodeWidth),d=t.shapeArgs,p=i.inverted?-1:1,g=t.hangsFrom;if(g){if("cumulative"===a)for(d.height-=h,i.inverted&&!r&&(d.y-=p*h);g;)d.y+=(r?1:p)*h,g=g.hangsFrom;else if("shrink"===a)for(;g&&d.height>h+o;)d.height-=h,(!i.inverted||r)&&(d.y+=h),g=g.hangsFrom;else d.height-=h,(!i.inverted||r)&&(d.y+=h)}t.nodeHeight=i.inverted?d.width:d.height,t.shapeArgs&&!t.hangsFrom&&(t.shapeArgs=C(t.shapeArgs,{x:(t.shapeArgs.x||0)+l/2-(t.shapeArgs.width||0)/2,y:(t.shapeArgs.y||0)+n/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=C(t.options.dataLabels,{useHTML:!1});super.drawDataLabels()}}H.defaultOptions=C(T.defaultOptions,{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 s(t){return Object.keys(t).reduce(function(e,i){return e+i+":"+t[i]+";"},'style="')+'"'}let{description:n,image:r,title:h}=this.point;r&&(e["max-width"]="30%",i.width="70%"),this.series.chart.renderer.forExport&&(t.display="block",i.position="absolute",i.left=r?"30%":0,i.top=0);let a="<div "+s(t)+">";return r&&(a+='<img src="'+r+'" '+s(e)+">"),a+="<div "+s(i)+">",this.point.name&&(a+="<h4 "+s({margin:0})+">"+this.point.name+"</h4>"),h&&(a+="<p "+s({margin:0})+">"+(h||"")+"</p>"),n&&(a+="<p "+s({opacity:.75,margin:"5px"})+">"+n+"</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}"}}),W(H.prototype,{pointClass:f}),d().registerSeriesType("organization",H);let D=o();return h.default})());
11
+ */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.SeriesRegistry,t._Highcharts.SVGElement):"function"==typeof define&&define.amd?define("highcharts/modules/organization",["highcharts/highcharts"],function(t){return e(t,t.SeriesRegistry,t.SVGElement)}):"object"==typeof exports?exports["highcharts/modules/organization"]=e(t._Highcharts,t._Highcharts.SeriesRegistry,t._Highcharts.SVGElement):t.Highcharts=e(t.Highcharts,t.Highcharts.SeriesRegistry,t.Highcharts.SVGElement)}("undefined"==typeof window?this:window,(t,e,i)=>(()=>{"use strict";var s={28:t=>{t.exports=i},512:t=>{t.exports=e},944:e=>{e.exports=t}},n={};function r(t){var e=n[t];if(void 0!==e)return e.exports;var i=n[t]={exports:{}};return s[t](i,i.exports,r),i.exports}r.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return r.d(e,{a:e}),e},r.d=(t,e)=>{for(var i in e)r.o(e,i)&&!r.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},r.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var o={};r.d(o,{default:()=>D});var a=r(944),h=/*#__PURE__*/r.n(a),l=r(512),d=/*#__PURE__*/r.n(l);let{sankey:{prototype:{pointClass:p}}}=d().seriesTypes,{defined:g,find:u,pick:c}=h(),f=class extends p{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(!g(t.options.column)&&0!==t.linksTo.length&&e&&"hanging"===e.options.layout){let i=-1,s;t.options.layout=c(t.options.layout,"hanging"),t.hangsFrom=e,u(e.linksFrom,(e,s)=>{let n=e.toNode===t;return n&&(i=s),n});for(let n=0;n<e.linksFrom.length;++n)(s=e.linksFrom[n]).toNode.id===t.id?n=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}(s.toNode);t.column=(t.column||0)+i}}},y={applyRadius:function(t,e){let i=[];for(let s=0;s<t.length;s++){let n=t[s][1],r=t[s][2];if("number"==typeof n&&"number"==typeof r){if(0===s)i.push(["M",n,r]);else if(s===t.length-1)i.push(["L",n,r]);else if(e){let o=t[s-1],a=t[s+1];if(o&&a){let t=o[1],s=o[2],h=a[1],l=a[2];if("number"==typeof t&&"number"==typeof h&&"number"==typeof s&&"number"==typeof l&&t!==h&&s!==l){let o=t<h?1:-1,a=s<l?1:-1;i.push(["L",n-o*Math.min(Math.abs(n-t),e),r-a*Math.min(Math.abs(r-s),e)],["C",n,r,n,r,n+o*Math.min(Math.abs(n-h),e),r+a*Math.min(Math.abs(r-l),e)])}}}else i.push(["L",n,r])}}return i}};var m=r(28),k=/*#__PURE__*/r.n(m);let{deg2rad:x}=h(),{addEvent:b,merge:A,uniqueKey:L,defined:w,extend:v}=h();function M(t,e){e=A(!0,{enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},e);let i=this.renderer.url,s=this.text||this,n=s.textPath,{attributes:r,enabled:o}=e;if(t=t||n&&n.path,n&&n.undo(),t&&o){let e=b(s,"afterModifyTree",e=>{if(t&&o){let n=t.attr("id");n||t.attr("id",n=L());let o={x:0,y:0};w(r.dx)&&(o.dx=r.dx,delete r.dx),w(r.dy)&&(o.dy=r.dy,delete r.dy),s.attr(o),this.attr({transform:""}),this.box&&(this.box=this.box.destroy());let a=e.nodes.slice(0);e.nodes.length=0,e.nodes[0]={tagName:"textPath",attributes:v(r,{"text-anchor":r.textAnchor,href:`${i}#${n}`}),children:a}}});s.textPath={path:t,undo:e}}else s.attr({dx:0,dy:0}),delete s.textPath;return this.added&&(s.textCache="",this.renderer.buildText(s)),this}function N(t){let e=t.bBox,i=this.element?.querySelector("textPath");if(i){let t=[],{b:s,h:n}=this.renderer.fontMetrics(this.element),r=n-s,o=RegExp('(<tspan>|<tspan(?!\\sclass="highcharts-br")[^>]*>|<\\/tspan>)',"g"),a=i.innerHTML.replace(o,"").split(/<tspan class="highcharts-br"[^>]*>/),h=a.length,l=(t,e)=>{let{x:n,y:o}=e,a=(i.getRotationOfChar(t)-90)*x,h=Math.cos(a),l=Math.sin(a);return[[n-r*h,o-r*l],[n+s*h,o+s*l]]};for(let e=0,s=0;s<h;s++){let n=a[s].length;for(let r=0;r<n;r+=5)try{let n=e+r+s,[o,a]=l(n,i.getStartPositionOfChar(n));0===r?(t.push(a),t.push(o)):(0===s&&t.unshift(a),s===h-1&&t.push(o))}catch(t){break}e+=n-1;try{let n=e+s,r=i.getEndPositionOfChar(n),[o,a]=l(n,r);t.unshift(a),t.unshift(o)}catch(t){break}}t.length&&t.push(t[0].slice()),e.polygon=t}return e}function P(t){let e=t.labelOptions,i=t.point,s=e[i.formatPrefix+"TextPath"]||e.textPath;s&&!e.useHTML&&(this.setTextPath(i.getDataLabelPath?.(this)||i.graphic,s),i.dataLabelPath&&!s.enabled&&(i.dataLabelPath=i.dataLabelPath.destroy()))}let{sankey:T}=d().seriesTypes,{css:O,crisp:S,extend:W,isNumber:F,merge:H,pick:C}=h();({compose:function(t){b(t,"afterGetBBox",N),b(t,"beforeAddingDataLabel",P);let e=t.prototype;e.setTextPath||(e.setTextPath=M)}}).compose(k());class R extends T{alignDataLabel(t,e,i){let s=t.shapeArgs;if(i.useHTML&&s){let t=this.options.borderWidth+2*this.options.dataLabels.padding,i=s.width||0,n=s.height||0;this.chart.inverted&&(i=n,n=s.width||0),n-=t,i-=t;let r=e.text;r&&(O(r.element.parentNode,{width:i+"px",height:n+"px"}),O(r.element,{left:0,top:0,width:"100%",height:"100%",overflow:"hidden"})),e.getBBox=()=>({width:i,height:n,x:0,y:0}),e.width=i,e.height=n}super.alignDataLabel.apply(this,arguments)}createNode(t){let e=super.createNode.call(this,t);return e.getSum=()=>1,e}pointAttribs(t,e){let i=T.prototype.pointAttribs.call(this,t,e),s=t.isNode?t.level:t.fromNode.level,n=this.mapOptionsToLevel[s||0]||{},r=t.options,o=n.states&&n.states[e]||{},a=C(o.borderRadius,r.borderRadius,n.borderRadius,this.options.borderRadius),h=C(o.linkColor,r.linkColor,n.linkColor,this.options.linkColor,o.link&&o.link.color,r.link&&r.link.color,n.link&&n.link.color,this.options.link&&this.options.link.color),l=C(o.linkLineWidth,r.linkLineWidth,n.linkLineWidth,this.options.linkLineWidth,o.link&&o.link.lineWidth,r.link&&r.link.lineWidth,n.link&&n.link.lineWidth,this.options.link&&this.options.link.lineWidth),d=C(o.linkOpacity,r.linkOpacity,n.linkOpacity,this.options.linkOpacity,o.link&&o.link.linkOpacity,r.link&&r.link.linkOpacity,n.link&&n.link.linkOpacity,this.options.link&&this.options.link.linkOpacity);return t.isNode?F(a)&&(i.r=a):(i.stroke=h,i["stroke-width"]=l,i.opacity=d,delete i.fill),i}translateLink(t){let e=this.chart,i=this.options,s=t.fromNode,n=t.toNode,r=C(i.linkLineWidth,i.link.lineWidth,0),o=C(i.link.offset,.5),a=C(t.options.link&&t.options.link.type,i.link.type);if(s.shapeArgs&&n.shapeArgs){let h=i.hangingIndent,l="right"===i.hangingSide,d=n.options.offset,p=/%$/.test(d)&&parseInt(d,10),g=e.inverted,u=S((s.shapeArgs.x||0)+(s.shapeArgs.width||0),r),c=S((s.shapeArgs.y||0)+(s.shapeArgs.height||0)/2,r),f=S(n.shapeArgs.x||0,r),m=S((n.shapeArgs.y||0)+(n.shapeArgs.height||0)/2,r),k;if(g&&(u-=s.shapeArgs.width||0,f+=n.shapeArgs.width||0),k=this.colDistance?S(f+(g?1:-1)*(this.colDistance-this.nodeWidth)/2,r):S((f+u)/2,r),p&&(p>=50||p<=-50)&&(k=f=S(f+(g?-.5:.5)*(n.shapeArgs.width||0),r),m=n.shapeArgs.y||0,p>0&&(m+=n.shapeArgs.height||0)),n.hangsFrom===s&&(e.inverted?(c=l?S((s.shapeArgs.y||0)+h/2,r):S((s.shapeArgs.y||0)+(s.shapeArgs.height||0)-h/2,r),m=l?(n.shapeArgs.y||0)+h/2:(n.shapeArgs.y||0)+(n.shapeArgs.height||0)):c=S((s.shapeArgs.y||0)+h/2,r),k=f=S((n.shapeArgs.x||0)+(n.shapeArgs.width||0)/2,r)),t.plotX=k,t.plotY=(c+m)/2,t.shapeType="path","straight"===a)t.shapeArgs={d:[["M",u,c],["L",f,m]]};else if("curved"===a){let e=Math.abs(f-u)*o*(g?-1:1);t.shapeArgs={d:[["M",u,c],["C",u+e,c,f-e,m,f,m]]}}else t.shapeArgs={d:y.applyRadius([["M",u,c],["L",k,c],["L",k,m],["L",f,m]],C(i.linkRadius,i.link.radius))};t.dlBox={x:(u+f)/2,y:(c+m)/2,height:r,width:0}}}translateNode(t,e){super.translateNode(t,e);let i=this.chart,s=this.options,n=Math.max(Math.round(t.getSum()*this.translationFactor),s.minLinkWidth||0),r="right"===s.hangingSide,o=s.hangingIndent||0,a=s.hangingIndentTranslation,h=s.minNodeLength||10,l=Math.round(this.nodeWidth),d=t.shapeArgs,p=i.inverted?-1:1,g=t.hangsFrom;if(g){if("cumulative"===a)for(d.height-=o,i.inverted&&!r&&(d.y-=p*o);g;)d.y+=(r?1:p)*o,g=g.hangsFrom;else if("shrink"===a)for(;g&&d.height>o+h;)d.height-=o,(!i.inverted||r)&&(d.y+=o),g=g.hangsFrom;else d.height-=o,(!i.inverted||r)&&(d.y+=o)}t.nodeHeight=i.inverted?d.width:d.height,t.shapeArgs&&!t.hangsFrom&&(t.shapeArgs=H(t.shapeArgs,{x:(t.shapeArgs.x||0)+l/2-(t.shapeArgs.width||0)/2,y:(t.shapeArgs.y||0)+n/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=H(t.options.dataLabels,{useHTML:!1});super.drawDataLabels()}}R.defaultOptions=H(T.defaultOptions,{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 s(t){return Object.keys(t).reduce(function(e,i){return e+i+":"+t[i]+";"},'style="')+'"'}let{description:n,image:r,title:o}=this.point;r&&(e["max-width"]="30%",i.width="70%"),this.series.chart.renderer.forExport&&(t.display="block",i.position="absolute",i.left=r?"30%":0,i.top=0);let a="<div "+s(t)+">";return r&&(a+='<img src="'+r+'" '+s(e)+">"),a+="<div "+s(i)+">",this.point.name&&(a+="<h4 "+s({margin:0})+">"+this.point.name+"</h4>"),o&&(a+="<p "+s({margin:0})+">"+(o||"")+"</p>"),n&&(a+="<p "+s({opacity:.75,margin:"5px"})+">"+n+"</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}"}}),W(R.prototype,{pointClass:f}),d().registerSeriesType("organization",R);let D=h();return o.default})());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v12.0.1 (2024-11-28)
2
+ * @license Highcharts JS v12.0.2 (2024-12-04)
3
3
  * Organization chart series type
4
4
  * @module highcharts/modules/organization
5
5
  * @requires highcharts
@@ -11,14 +11,14 @@
11
11
  */
12
12
  (function webpackUniversalModuleDefinition(root, factory) {
13
13
  if(typeof exports === 'object' && typeof module === 'object')
14
- module.exports = factory(require("highcharts"), require("highcharts")["SeriesRegistry"], require("highcharts")["SVGElement"]);
14
+ module.exports = factory(root["_Highcharts"], root["_Highcharts"]["SeriesRegistry"], root["_Highcharts"]["SVGElement"]);
15
15
  else if(typeof define === 'function' && define.amd)
16
- define("highcharts/organization", [["highcharts/highcharts"], ["highcharts/highcharts","SeriesRegistry"], ["highcharts/highcharts","SVGElement"]], factory);
16
+ define("highcharts/modules/organization", ["highcharts/highcharts"], function (amd1) {return factory(amd1,amd1["SeriesRegistry"],amd1["SVGElement"]);});
17
17
  else if(typeof exports === 'object')
18
- exports["highcharts/organization"] = factory(require("highcharts"), require("highcharts")["SeriesRegistry"], require("highcharts")["SVGElement"]);
18
+ exports["highcharts/modules/organization"] = factory(root["_Highcharts"], root["_Highcharts"]["SeriesRegistry"], root["_Highcharts"]["SVGElement"]);
19
19
  else
20
20
  root["Highcharts"] = factory(root["Highcharts"], root["Highcharts"]["SeriesRegistry"], root["Highcharts"]["SVGElement"]);
21
- })(this, (__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__512__, __WEBPACK_EXTERNAL_MODULE__28__) => {
21
+ })(typeof window === 'undefined' ? this : window, (__WEBPACK_EXTERNAL_MODULE__944__, __WEBPACK_EXTERNAL_MODULE__512__, __WEBPACK_EXTERNAL_MODULE__28__) => {
22
22
  return /******/ (() => { // webpackBootstrap
23
23
  /******/ "use strict";
24
24
  /******/ var __webpack_modules__ = ({
@@ -1,9 +1,9 @@
1
1
  !/**
2
- * Highcharts JS v12.0.1 (2024-11-28)
2
+ * Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/overlapping-datalabels
4
4
  * @requires highcharts
5
5
  *
6
6
  * (c) 2009-2024 Torstein Honsi
7
7
  *
8
8
  * License: www.highcharts.com/license
9
- */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("highcharts")):"function"==typeof define&&define.amd?define("highcharts/overlapping-datalabels",[["highcharts/highcharts"]],e):"object"==typeof exports?exports["highcharts/overlapping-datalabels"]=e(require("highcharts")):t.Highcharts=e(t.Highcharts)}(this,t=>(()=>{"use strict";var e,a={944:e=>{e.exports=t}},l={};function i(t){var e=l[t];if(void 0!==e)return e.exports;var r=l[t]={exports:{}};return a[t](r,r.exports,i),r.exports}i.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return i.d(e,{a:e}),e},i.d=(t,e)=>{for(var a in e)i.o(e,a)&&!i.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var r={};i.d(r,{default:()=>b});var o=i(944),n=/*#__PURE__*/i.n(o);!function(t){t.getCenterOfPoints=function(t){let e=t.reduce((t,e)=>(t.x+=e.x,t.y+=e.y,t),{x:0,y:0});return{x:e.x/t.length,y:e.y/t.length}},t.getDistanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},t.getAngleBetweenPoints=function(t,e){return Math.atan2(e.x-t.x,e.y-t.y)},t.pointInPolygon=function({x:t,y:e},a){let l=a.length,i,r,o=!1;for(i=0,r=l-1;i<l;r=i++){let[l,n]=a[i],[s,h]=a[r];n>e!=h>e&&t<(s-l)*(e-n)/(h-n)+l&&(o=!o)}return o}}(e||(e={}));let{pointInPolygon:s}=e,{addEvent:h,fireEvent:p,objectEach:c,pick:d}=n();function f(t){let e=t.length,a=(t,e)=>!(e.x>=t.x+t.width||e.x+e.width<=t.x||e.y>=t.y+t.height||e.y+e.height<=t.y),l=(t,e)=>{for(let a of t)if(s({x:a[0],y:a[1]},e))return!0;return!1},i,r,o,n,h,c=!1;for(let a=0;a<e;a++)(i=t[a])&&(i.oldOpacity=i.opacity,i.newOpacity=1,i.absoluteBox=function(t){if(t&&(!t.alignAttr||t.placed)){let e=t.box?0:t.padding||0,a=t.alignAttr||{x:t.attr("x"),y:t.attr("y")},l=t.getBBox();return t.width=l.width,t.height=l.height,{x:a.x+(t.parentGroup?.translateX||0)+e,y:a.y+(t.parentGroup?.translateY||0)+e,width:(t.width||0)-2*e,height:(t.height||0)-2*e,polygon:l?.polygon}}}(i));t.sort((t,e)=>(e.labelrank||0)-(t.labelrank||0));for(let i=0;i<e;++i){n=(r=t[i])&&r.absoluteBox;let s=n?.polygon;for(let p=i+1;p<e;++p){h=(o=t[p])&&o.absoluteBox;let e=!1;if(n&&h&&r!==o&&0!==r.newOpacity&&0!==o.newOpacity&&"hidden"!==r.visibility&&"hidden"!==o.visibility){let t=h.polygon;if(s&&t&&s!==t?l(s,t)&&(e=!0):a(n,h)&&(e=!0),e){let t=r.labelrank<o.labelrank?r:o,e=t.text;t.newOpacity=0,e?.element.querySelector("textPath")&&e.hide()}}}}for(let e of t)y(e,this)&&(c=!0);c&&p(this,"afterHideAllOverlappingLabels")}function y(t,e){let a,l,i=!1;return t&&(l=t.newOpacity,t.oldOpacity!==l&&(t.hasClass("highcharts-data-label")?(t[l?"removeClass":"addClass"]("highcharts-data-label-hidden"),a=function(){e.styledMode||t.css({pointerEvents:l?"auto":"none"})},i=!0,t[t.isOld?"animate":"attr"]({opacity:l},void 0,a),p(e,"afterHideOverlappingLabel")):t.attr({opacity:l})),t.isOld=!0),i}function g(){let t=this,e=[];for(let a of t.labelCollectors||[])e=e.concat(a());for(let a of t.yAxis||[])a.stacking&&a.options.stackLabels&&!a.options.stackLabels.allowOverlap&&c(a.stacking.stacks,t=>{c(t,t=>{t.label&&e.push(t.label)})});for(let a of t.series||[])if(a.visible&&a.hasDataLabels?.()){let l=a=>{for(let l of a)l.visible&&(l.dataLabels||[]).forEach(a=>{let i=a.options||{};a.labelrank=d(i.labelrank,l.labelrank,l.shapeArgs?.height),i.allowOverlap??Number(i.distance)>0?(a.oldOpacity=a.opacity,a.newOpacity=1,y(a,t)):e.push(a)})};l(a.nodes||[]),l(a.points)}this.hideOverlappingLabels(e)}let u=n();u.OverlappingDataLabels=u.OverlappingDataLabels||{compose:function(t){let e=t.prototype;e.hideOverlappingLabels||(e.hideOverlappingLabels=f,h(t,"render",g))}},u.OverlappingDataLabels.compose(u.Chart);let b=n();return r.default})());
9
+ */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts):"function"==typeof define&&define.amd?define("highcharts/modules/overlapping-datalabels",["highcharts/highcharts"],function(t){return e(t)}):"object"==typeof exports?exports["highcharts/modules/overlapping-datalabels"]=e(t._Highcharts):t.Highcharts=e(t.Highcharts)}("undefined"==typeof window?this:window,t=>(()=>{"use strict";var e,a={944:e=>{e.exports=t}},l={};function o(t){var e=l[t];if(void 0!==e)return e.exports;var i=l[t]={exports:{}};return a[t](i,i.exports,o),i.exports}o.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return o.d(e,{a:e}),e},o.d=(t,e)=>{for(var a in e)o.o(e,a)&&!o.o(t,a)&&Object.defineProperty(t,a,{enumerable:!0,get:e[a]})},o.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var i={};o.d(i,{default:()=>b});var n=o(944),r=/*#__PURE__*/o.n(n);!function(t){t.getCenterOfPoints=function(t){let e=t.reduce((t,e)=>(t.x+=e.x,t.y+=e.y,t),{x:0,y:0});return{x:e.x/t.length,y:e.y/t.length}},t.getDistanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},t.getAngleBetweenPoints=function(t,e){return Math.atan2(e.x-t.x,e.y-t.y)},t.pointInPolygon=function({x:t,y:e},a){let l=a.length,o,i,n=!1;for(o=0,i=l-1;o<l;i=o++){let[l,r]=a[o],[s,p]=a[i];r>e!=p>e&&t<(s-l)*(e-r)/(p-r)+l&&(n=!n)}return n}}(e||(e={}));let{pointInPolygon:s}=e,{addEvent:p,fireEvent:h,objectEach:c,pick:d}=r();function f(t){let e=t.length,a=(t,e)=>!(e.x>=t.x+t.width||e.x+e.width<=t.x||e.y>=t.y+t.height||e.y+e.height<=t.y),l=(t,e)=>{for(let a of t)if(s({x:a[0],y:a[1]},e))return!0;return!1},o,i,n,r,p,c=!1;for(let a=0;a<e;a++)(o=t[a])&&(o.oldOpacity=o.opacity,o.newOpacity=1,o.absoluteBox=function(t){if(t&&(!t.alignAttr||t.placed)){let e=t.box?0:t.padding||0,a=t.alignAttr||{x:t.attr("x"),y:t.attr("y")},l=t.getBBox();return t.width=l.width,t.height=l.height,{x:a.x+(t.parentGroup?.translateX||0)+e,y:a.y+(t.parentGroup?.translateY||0)+e,width:(t.width||0)-2*e,height:(t.height||0)-2*e,polygon:l?.polygon}}}(o));t.sort((t,e)=>(e.labelrank||0)-(t.labelrank||0));for(let o=0;o<e;++o){r=(i=t[o])&&i.absoluteBox;let s=r?.polygon;for(let h=o+1;h<e;++h){p=(n=t[h])&&n.absoluteBox;let e=!1;if(r&&p&&i!==n&&0!==i.newOpacity&&0!==n.newOpacity&&"hidden"!==i.visibility&&"hidden"!==n.visibility){let t=p.polygon;if(s&&t&&s!==t?l(s,t)&&(e=!0):a(r,p)&&(e=!0),e){let t=i.labelrank<n.labelrank?i:n,e=t.text;t.newOpacity=0,e?.element.querySelector("textPath")&&e.hide()}}}}for(let e of t)u(e,this)&&(c=!0);c&&h(this,"afterHideAllOverlappingLabels")}function u(t,e){let a,l,o=!1;return t&&(l=t.newOpacity,t.oldOpacity!==l&&(t.hasClass("highcharts-data-label")?(t[l?"removeClass":"addClass"]("highcharts-data-label-hidden"),a=function(){e.styledMode||t.css({pointerEvents:l?"auto":"none"})},o=!0,t[t.isOld?"animate":"attr"]({opacity:l},void 0,a),h(e,"afterHideOverlappingLabel")):t.attr({opacity:l})),t.isOld=!0),o}function y(){let t=this,e=[];for(let a of t.labelCollectors||[])e=e.concat(a());for(let a of t.yAxis||[])a.stacking&&a.options.stackLabels&&!a.options.stackLabels.allowOverlap&&c(a.stacking.stacks,t=>{c(t,t=>{t.label&&e.push(t.label)})});for(let a of t.series||[])if(a.visible&&a.hasDataLabels?.()){let l=a=>{for(let l of a)l.visible&&(l.dataLabels||[]).forEach(a=>{let o=a.options||{};a.labelrank=d(o.labelrank,l.labelrank,l.shapeArgs?.height),o.allowOverlap??Number(o.distance)>0?(a.oldOpacity=a.opacity,a.newOpacity=1,u(a,t)):e.push(a)})};l(a.nodes||[]),l(a.points)}this.hideOverlappingLabels(e)}let g=r();g.OverlappingDataLabels=g.OverlappingDataLabels||{compose:function(t){let e=t.prototype;e.hideOverlappingLabels||(e.hideOverlappingLabels=f,p(t,"render",y))}},g.OverlappingDataLabels.compose(g.Chart);let b=r();return i.default})());
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v12.0.1 (2024-11-28)
2
+ * @license Highcharts JS v12.0.2 (2024-12-04)
3
3
  * @module highcharts/modules/overlapping-datalabels
4
4
  * @requires highcharts
5
5
  *
@@ -9,14 +9,14 @@
9
9
  */
10
10
  (function webpackUniversalModuleDefinition(root, factory) {
11
11
  if(typeof exports === 'object' && typeof module === 'object')
12
- module.exports = factory(require("highcharts"));
12
+ module.exports = factory(root["_Highcharts"]);
13
13
  else if(typeof define === 'function' && define.amd)
14
- define("highcharts/overlapping-datalabels", [["highcharts/highcharts"]], factory);
14
+ define("highcharts/modules/overlapping-datalabels", ["highcharts/highcharts"], function (amd1) {return factory(amd1);});
15
15
  else if(typeof exports === 'object')
16
- exports["highcharts/overlapping-datalabels"] = factory(require("highcharts"));
16
+ exports["highcharts/modules/overlapping-datalabels"] = factory(root["_Highcharts"]);
17
17
  else
18
18
  root["Highcharts"] = factory(root["Highcharts"]);
19
- })(this, (__WEBPACK_EXTERNAL_MODULE__944__) => {
19
+ })(typeof window === 'undefined' ? this : window, (__WEBPACK_EXTERNAL_MODULE__944__) => {
20
20
  return /******/ (() => { // webpackBootstrap
21
21
  /******/ "use strict";
22
22
  /******/ var __webpack_modules__ = ({