highcharts 13.0.1 → 13.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 (915) hide show
  1. package/bower.json +2 -3
  2. package/es-modules/Accessibility/A11yI18n.js +4 -4
  3. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +6 -4
  4. package/es-modules/Accessibility/Components/LegendComponent.js +2 -2
  5. package/es-modules/Accessibility/Components/NavigatorComponent.js +2 -2
  6. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +13 -10
  7. package/es-modules/Accessibility/Components/ZoomComponent.js +2 -2
  8. package/es-modules/Accessibility/FocusBorder.js +2 -2
  9. package/es-modules/Accessibility/Options/DeprecatedOptions.js +1 -2
  10. package/es-modules/Core/Animation/AnimationUtilities.js +3 -2
  11. package/es-modules/Core/Axis/Axis.js +48 -57
  12. package/es-modules/Core/Axis/Axis3DComposition.js +8 -6
  13. package/es-modules/Core/Axis/BrokenAxis.js +6 -5
  14. package/es-modules/Core/Axis/Color/ColorAxis.js +17 -10
  15. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +2 -2
  16. package/es-modules/Core/Axis/GridAxis.js +4 -4
  17. package/es-modules/Core/Axis/LogarithmicAxis.js +5 -3
  18. package/es-modules/Core/Axis/NavigatorAxisComposition.js +2 -2
  19. package/es-modules/Core/Axis/OrdinalAxis.js +9 -7
  20. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -2
  21. package/es-modules/Core/Axis/RadialAxis.js +15 -9
  22. package/es-modules/Core/Axis/ScrollbarAxis.js +3 -3
  23. package/es-modules/Core/Axis/Stacking/StackItem.js +5 -5
  24. package/es-modules/Core/Axis/Stacking/StackingAxis.js +4 -4
  25. package/es-modules/Core/Axis/Tick.js +10 -11
  26. package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -3
  27. package/es-modules/Core/Chart/Chart.js +14 -14
  28. package/es-modules/Core/Chart/Chart3D.js +3 -3
  29. package/es-modules/Core/Chart/ChartDefaults.js +23 -0
  30. package/es-modules/Core/Chart/MapChart.js +7 -5
  31. package/es-modules/Core/Chart/StockChart.js +15 -11
  32. package/es-modules/Core/Color/Color.js +3 -1
  33. package/es-modules/Core/Defaults.js +35 -0
  34. package/es-modules/Core/Globals.js +1 -1
  35. package/es-modules/Core/Legend/Legend.js +16 -12
  36. package/es-modules/Core/Legend/LegendSymbol.js +2 -2
  37. package/es-modules/Core/MSPointer.js +2 -2
  38. package/es-modules/Core/Math3D.js +6 -7
  39. package/es-modules/Core/Pointer.js +9 -9
  40. package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
  41. package/es-modules/Core/Renderer/SVG/SVGElement.js +11 -9
  42. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +2 -2
  43. package/es-modules/Core/Renderer/SVG/SVGLabel.js +5 -5
  44. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +5 -5
  45. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +11 -9
  46. package/es-modules/Core/Renderer/SVG/Symbols.js +6 -5
  47. package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
  48. package/es-modules/Core/Responsive.js +7 -5
  49. package/es-modules/Core/Series/DataLabel.js +8 -6
  50. package/es-modules/Core/Series/OverlappingDataLabels.js +5 -2
  51. package/es-modules/Core/Series/Point.js +3 -3
  52. package/es-modules/Core/Series/Series.js +37 -21
  53. package/es-modules/Core/Series/Series3D.js +2 -2
  54. package/es-modules/Core/Templating.js +2 -2
  55. package/es-modules/Core/Tooltip.js +11 -7
  56. package/es-modules/Core/Utilities.js +4 -3
  57. package/es-modules/Data/Connectors/DataConnector.js +2 -2
  58. package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
  59. package/es-modules/Data/DataTable.js +17 -0
  60. package/es-modules/Extensions/Annotations/Annotation.js +4 -4
  61. package/es-modules/Extensions/Annotations/AnnotationChart.js +2 -2
  62. package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
  63. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +2 -2
  64. package/es-modules/Extensions/Annotations/EventEmitter.js +4 -4
  65. package/es-modules/Extensions/Annotations/NavigationBindings.js +6 -3
  66. package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +2 -2
  67. package/es-modules/Extensions/Annotations/Popup/Popup.js +3 -2
  68. package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +4 -6
  69. package/es-modules/Extensions/Annotations/Types/Measure.js +3 -3
  70. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +3 -3
  71. package/es-modules/Extensions/Boost/BoostChart.js +11 -4
  72. package/es-modules/Extensions/Boost/BoostSeries.js +8 -9
  73. package/es-modules/Extensions/Boost/WGLRenderer.js +9 -6
  74. package/es-modules/Extensions/Boost/WGLShader.js +3 -3
  75. package/es-modules/Extensions/BoostCanvas.js +2 -2
  76. package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +5 -4
  77. package/es-modules/Extensions/DataGrouping/DataGrouping.js +2 -2
  78. package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +4 -3
  79. package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +2 -2
  80. package/es-modules/Extensions/DraggablePoints/DragDropProps.js +2 -3
  81. package/es-modules/Extensions/ExportData/ExportData.js +17 -16
  82. package/es-modules/Extensions/Exporting/Exporting.js +7 -7
  83. package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +2 -2
  84. package/es-modules/Extensions/Pane/PaneComposition.js +2 -2
  85. package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -2
  86. package/es-modules/Extensions/PatternFill.js +7 -5
  87. package/es-modules/Extensions/PriceIndication.js +5 -4
  88. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +7 -7
  89. package/es-modules/Extensions/Sonification/MIDI.js +2 -3
  90. package/es-modules/Extensions/Sonification/Sonification.js +2 -2
  91. package/es-modules/Extensions/Sonification/SonificationSpeaker.js +3 -2
  92. package/es-modules/Extensions/Sonification/SynthPatch.js +3 -3
  93. package/es-modules/Extensions/Sonification/TimelineFromChart.js +11 -11
  94. package/es-modules/Gantt/Legacy.js +2 -2
  95. package/es-modules/Gantt/Pathfinder.js +3 -3
  96. package/es-modules/Gantt/PathfinderAlgorithms.js +4 -3
  97. package/es-modules/Gantt/Tree.js +1 -1
  98. package/es-modules/Maps/MapNavigation.js +4 -4
  99. package/es-modules/Maps/MapPointer.js +2 -2
  100. package/es-modules/Maps/MapView.js +2 -2
  101. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +8 -6
  102. package/es-modules/Series/Area/AreaSeries.js +4 -5
  103. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +13 -4
  104. package/es-modules/Series/Bubble/BubbleLegendItem.js +10 -6
  105. package/es-modules/Series/Bubble/BubbleSeries.js +10 -9
  106. package/es-modules/Series/Bullet/BulletSeries.js +17 -10
  107. package/es-modules/Series/CenteredUtilities.js +7 -5
  108. package/es-modules/Series/Column/ColumnSeries.js +2 -2
  109. package/es-modules/Series/Column3D/Column3DComposition.js +6 -5
  110. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +4 -4
  111. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +4 -2
  112. package/es-modules/Series/Cylinder/CylinderComposition.js +2 -2
  113. package/es-modules/Series/DataModifyComposition.js +9 -7
  114. package/es-modules/Series/DotPlot/DotPlotSeries.js +3 -2
  115. package/es-modules/Series/Dumbbell/DumbbellPoint.js +14 -3
  116. package/es-modules/Series/Dumbbell/DumbbellSeries.js +24 -7
  117. package/es-modules/Series/FlowMap/FlowMapPoint.js +5 -3
  118. package/es-modules/Series/FlowMap/FlowMapSeries.js +17 -9
  119. package/es-modules/Series/Funnel/FunnelSeries.js +2 -2
  120. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +7 -5
  121. package/es-modules/Series/Gauge/GaugeSeries.js +2 -2
  122. package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +4 -4
  123. package/es-modules/Series/Heatmap/HeatmapPoint.js +6 -6
  124. package/es-modules/Series/Heatmap/HeatmapPointOptions.js +12 -0
  125. package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -13
  126. package/es-modules/Series/Heatmap/HeatmapSeriesOptions.js +12 -0
  127. package/es-modules/Series/Histogram/HistogramPoint.js +17 -0
  128. package/es-modules/Series/Histogram/HistogramPointOptions.js +12 -0
  129. package/es-modules/Series/Histogram/HistogramSeries.js +14 -2
  130. package/es-modules/Series/Histogram/HistogramSeriesOptions.js +12 -0
  131. package/es-modules/Series/InterpolationUtilities.js +5 -5
  132. package/es-modules/Series/Item/ItemPointOptions.js +14 -0
  133. package/es-modules/Series/Item/ItemSeries.js +18 -6
  134. package/es-modules/Series/Item/ItemSeriesOptions.js +14 -0
  135. package/es-modules/Series/Map/MapPoint.js +5 -3
  136. package/es-modules/Series/Map/MapSeries.js +5 -8
  137. package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +3 -3
  138. package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +4 -2
  139. package/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +18 -9
  140. package/es-modules/Series/NodesComposition.js +9 -10
  141. package/es-modules/Series/Organization/OrganizationPoint.js +3 -2
  142. package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -3
  143. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +5 -5
  144. package/es-modules/Series/Pictorial/PictorialSeries.js +4 -2
  145. package/es-modules/Series/Pie/PieDataLabel.js +2 -2
  146. package/es-modules/Series/Pie/PiePoint.js +2 -2
  147. package/es-modules/Series/Pie/PieSeries.js +3 -2
  148. package/es-modules/Series/Pie3D/Pie3DSeries.js +8 -4
  149. package/es-modules/Series/PolarComposition.js +8 -7
  150. package/es-modules/Series/Sankey/SankeySeries.js +11 -5
  151. package/es-modules/Series/Scatter/ScatterSeries.js +6 -5
  152. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +2 -2
  153. package/es-modules/Series/Spline/SplineSeries.js +5 -5
  154. package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +8 -6
  155. package/es-modules/Series/Tilemap/TilemapShapes.js +2 -2
  156. package/es-modules/Series/Timeline/TimelinePoint.js +2 -2
  157. package/es-modules/Series/Timeline/TimelineSeries.js +4 -3
  158. package/es-modules/Series/TreeUtilities.js +16 -7
  159. package/es-modules/Series/Treegraph/TreegraphLink.js +2 -2
  160. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  161. package/es-modules/Series/Treemap/TreemapSeries.js +14 -11
  162. package/es-modules/Series/VariablePie/VariablePieSeries.js +6 -4
  163. package/es-modules/Series/Variwide/VariwideSeries.js +2 -2
  164. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -2
  165. package/es-modules/Series/Windbarb/WindbarbSeries.js +2 -2
  166. package/es-modules/Shared/TimeBase.js +8 -2
  167. package/es-modules/Shared/Utilities.js +9 -7
  168. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -3
  169. package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +4 -3
  170. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +1 -1
  171. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +2 -2
  172. package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +4 -4
  173. package/es-modules/Stock/Navigator/Navigator.js +26 -26
  174. package/es-modules/Stock/Navigator/StandaloneNavigator.js +4 -4
  175. package/es-modules/Stock/RangeSelector/RangeSelector.js +15 -11
  176. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +3 -3
  177. package/es-modules/Stock/Scrollbar/Scrollbar.js +8 -7
  178. package/es-modules/Stock/StockTools/StockToolbar.js +5 -5
  179. package/es-modules/Stock/StockTools/StockTools.js +2 -2
  180. package/es-modules/Stock/StockTools/StockToolsGui.js +4 -2
  181. package/es-modules/masters/highcharts-3d.src.js +1 -1
  182. package/es-modules/masters/highcharts-autoload.src.js +1 -1
  183. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  184. package/es-modules/masters/highcharts-more.src.js +1 -1
  185. package/es-modules/masters/highcharts.src.js +7 -2
  186. package/es-modules/masters/highmaps.src.js +1 -1
  187. package/es-modules/masters/highstock.src.js +1 -1
  188. package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
  189. package/es-modules/masters/i18n/fr-FR.src.js +1 -1
  190. package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
  191. package/es-modules/masters/i18n/nb-NO.src.js +1 -1
  192. package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
  193. package/es-modules/masters/i18n/zh-CN.src.js +1 -1
  194. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  195. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  196. package/es-modules/masters/indicators/ao.src.js +1 -1
  197. package/es-modules/masters/indicators/apo.src.js +1 -1
  198. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  199. package/es-modules/masters/indicators/aroon.src.js +1 -1
  200. package/es-modules/masters/indicators/atr.src.js +1 -1
  201. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  202. package/es-modules/masters/indicators/cci.src.js +1 -1
  203. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  204. package/es-modules/masters/indicators/cmf.src.js +1 -1
  205. package/es-modules/masters/indicators/cmo.src.js +1 -1
  206. package/es-modules/masters/indicators/dema.src.js +1 -1
  207. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  208. package/es-modules/masters/indicators/dmi.src.js +1 -1
  209. package/es-modules/masters/indicators/dpo.src.js +1 -1
  210. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  211. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  212. package/es-modules/masters/indicators/indicators.src.js +1 -1
  213. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  214. package/es-modules/masters/indicators/klinger.src.js +1 -1
  215. package/es-modules/masters/indicators/macd.src.js +1 -1
  216. package/es-modules/masters/indicators/mfi.src.js +1 -1
  217. package/es-modules/masters/indicators/momentum.src.js +1 -1
  218. package/es-modules/masters/indicators/natr.src.js +1 -1
  219. package/es-modules/masters/indicators/obv.src.js +1 -1
  220. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  221. package/es-modules/masters/indicators/ppo.src.js +1 -1
  222. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  223. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  224. package/es-modules/masters/indicators/psar.src.js +1 -1
  225. package/es-modules/masters/indicators/regressions.src.js +1 -1
  226. package/es-modules/masters/indicators/roc.src.js +1 -1
  227. package/es-modules/masters/indicators/rsi.src.js +1 -1
  228. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  229. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  230. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  231. package/es-modules/masters/indicators/tema.src.js +1 -1
  232. package/es-modules/masters/indicators/trendline.src.js +1 -1
  233. package/es-modules/masters/indicators/trix.src.js +1 -1
  234. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  235. package/es-modules/masters/indicators/vwap.src.js +1 -1
  236. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  237. package/es-modules/masters/indicators/wma.src.js +1 -1
  238. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  239. package/es-modules/masters/modules/accessibility.src.js +1 -1
  240. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  241. package/es-modules/masters/modules/annotations.src.js +1 -1
  242. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  243. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  244. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  245. package/es-modules/masters/modules/boost.src.js +1 -1
  246. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  247. package/es-modules/masters/modules/bullet.src.js +1 -1
  248. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  249. package/es-modules/masters/modules/contour.src.js +1 -1
  250. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  251. package/es-modules/masters/modules/cylinder.src.js +1 -1
  252. package/es-modules/masters/modules/data-sorting.src.js +1 -1
  253. package/es-modules/masters/modules/data-tools.src.js +1 -1
  254. package/es-modules/masters/modules/data.src.js +1 -1
  255. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  256. package/es-modules/masters/modules/debugger.src.js +1 -1
  257. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  258. package/es-modules/masters/modules/dotplot.src.js +1 -1
  259. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  260. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  261. package/es-modules/masters/modules/drilldown.src.js +1 -1
  262. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  263. package/es-modules/masters/modules/export-data.src.js +1 -1
  264. package/es-modules/masters/modules/exporting.src.js +1 -1
  265. package/es-modules/masters/modules/flowmap.src.js +1 -1
  266. package/es-modules/masters/modules/full-screen.src.js +1 -1
  267. package/es-modules/masters/modules/funnel.src.js +1 -1
  268. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  269. package/es-modules/masters/modules/gantt.src.js +1 -1
  270. package/es-modules/masters/modules/geoheatmap.src.js +1 -1
  271. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  272. package/es-modules/masters/modules/heatmap.src.js +1 -1
  273. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  274. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  275. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  276. package/es-modules/masters/modules/item-series.src.js +1 -1
  277. package/es-modules/masters/modules/lollipop.src.js +1 -1
  278. package/es-modules/masters/modules/map.src.js +1 -1
  279. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  280. package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
  281. package/es-modules/masters/modules/navigator.src.js +1 -1
  282. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  283. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  284. package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
  285. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  286. package/es-modules/masters/modules/organization.src.js +1 -1
  287. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  288. package/es-modules/masters/modules/pareto.src.js +1 -1
  289. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  290. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  291. package/es-modules/masters/modules/pictorial.src.js +1 -1
  292. package/es-modules/masters/modules/pointandfigure.src.js +1 -1
  293. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  294. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  295. package/es-modules/masters/modules/renko.src.js +1 -1
  296. package/es-modules/masters/modules/sankey.src.js +1 -1
  297. package/es-modules/masters/modules/series-label.src.js +1 -1
  298. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  299. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  300. package/es-modules/masters/modules/sonification.src.js +1 -1
  301. package/es-modules/masters/modules/static-scale.src.js +1 -1
  302. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  303. package/es-modules/masters/modules/stock.src.js +1 -1
  304. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  305. package/es-modules/masters/modules/sunburst.src.js +1 -1
  306. package/es-modules/masters/modules/textpath.src.js +1 -1
  307. package/es-modules/masters/modules/tiledwebmap.src.js +1 -1
  308. package/es-modules/masters/modules/tilemap.src.js +1 -1
  309. package/es-modules/masters/modules/timeline.src.js +1 -1
  310. package/es-modules/masters/modules/treegraph.src.js +1 -1
  311. package/es-modules/masters/modules/treegrid.src.js +1 -1
  312. package/es-modules/masters/modules/treemap.src.js +1 -1
  313. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  314. package/es-modules/masters/modules/variwide.src.js +1 -1
  315. package/es-modules/masters/modules/vector.src.js +1 -1
  316. package/es-modules/masters/modules/venn.src.js +1 -1
  317. package/es-modules/masters/modules/windbarb.src.js +1 -1
  318. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  319. package/es-modules/masters/modules/xrange.src.js +1 -1
  320. package/es-modules/masters/standalone-navigator.src.js +1 -1
  321. package/es-modules/masters/themes/adaptive.src.js +1 -1
  322. package/es-modules/masters/themes/avocado.src.js +1 -1
  323. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  324. package/es-modules/masters/themes/grid-light.src.js +1 -1
  325. package/es-modules/masters/themes/high-contrast.src.js +1 -1
  326. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  327. package/es-modules/masters/themes/sunset.src.js +1 -1
  328. package/es-modules/tsconfig.tsbuildinfo +1 -1
  329. package/esm/highcharts-3d.js +2 -2
  330. package/esm/highcharts-3d.src.js +40 -32
  331. package/esm/highcharts-autoload.js +1 -1
  332. package/esm/highcharts-autoload.src.js +1 -1
  333. package/esm/highcharts-gantt.js +1 -1
  334. package/esm/highcharts-gantt.src.js +1 -1
  335. package/esm/highcharts-more.js +2 -2
  336. package/esm/highcharts-more.src.js +90 -56
  337. package/esm/highcharts.js +4 -4
  338. package/esm/highcharts.src.js +312 -207
  339. package/esm/highmaps.js +1 -1
  340. package/esm/highmaps.src.js +1 -1
  341. package/esm/highstock.js +1 -1
  342. package/esm/highstock.src.js +1 -1
  343. package/esm/i18n/fr-FR.js +1 -1
  344. package/esm/i18n/fr-FR.src.js +1 -1
  345. package/esm/i18n/nb-NO.js +1 -1
  346. package/esm/i18n/nb-NO.src.js +1 -1
  347. package/esm/i18n/zh-CN.js +1 -1
  348. package/esm/i18n/zh-CN.src.js +1 -1
  349. package/esm/indicators/acceleration-bands.js +1 -1
  350. package/esm/indicators/acceleration-bands.src.js +1 -1
  351. package/esm/indicators/accumulation-distribution.js +1 -1
  352. package/esm/indicators/accumulation-distribution.src.js +1 -1
  353. package/esm/indicators/ao.js +1 -1
  354. package/esm/indicators/ao.src.js +1 -1
  355. package/esm/indicators/apo.js +1 -1
  356. package/esm/indicators/apo.src.js +1 -1
  357. package/esm/indicators/aroon-oscillator.js +1 -1
  358. package/esm/indicators/aroon-oscillator.src.js +1 -1
  359. package/esm/indicators/aroon.js +2 -2
  360. package/esm/indicators/aroon.src.js +3 -3
  361. package/esm/indicators/atr.js +1 -1
  362. package/esm/indicators/atr.src.js +1 -1
  363. package/esm/indicators/bollinger-bands.js +1 -1
  364. package/esm/indicators/bollinger-bands.src.js +1 -1
  365. package/esm/indicators/cci.js +1 -1
  366. package/esm/indicators/cci.src.js +1 -1
  367. package/esm/indicators/chaikin.js +1 -1
  368. package/esm/indicators/chaikin.src.js +1 -1
  369. package/esm/indicators/cmf.js +1 -1
  370. package/esm/indicators/cmf.src.js +1 -1
  371. package/esm/indicators/cmo.js +1 -1
  372. package/esm/indicators/cmo.src.js +1 -1
  373. package/esm/indicators/dema.js +1 -1
  374. package/esm/indicators/dema.src.js +1 -1
  375. package/esm/indicators/disparity-index.js +1 -1
  376. package/esm/indicators/disparity-index.src.js +1 -1
  377. package/esm/indicators/dmi.js +1 -1
  378. package/esm/indicators/dmi.src.js +1 -1
  379. package/esm/indicators/dpo.js +2 -2
  380. package/esm/indicators/dpo.src.js +4 -3
  381. package/esm/indicators/ichimoku-kinko-hyo.js +1 -1
  382. package/esm/indicators/ichimoku-kinko-hyo.src.js +1 -1
  383. package/esm/indicators/indicators-all.js +2 -2
  384. package/esm/indicators/indicators-all.src.js +8 -7
  385. package/esm/indicators/indicators.js +2 -2
  386. package/esm/indicators/indicators.src.js +2 -2
  387. package/esm/indicators/keltner-channels.js +1 -1
  388. package/esm/indicators/keltner-channels.src.js +1 -1
  389. package/esm/indicators/klinger.js +1 -1
  390. package/esm/indicators/klinger.src.js +1 -1
  391. package/esm/indicators/macd.js +1 -1
  392. package/esm/indicators/macd.src.js +1 -1
  393. package/esm/indicators/mfi.js +1 -1
  394. package/esm/indicators/mfi.src.js +1 -1
  395. package/esm/indicators/momentum.js +1 -1
  396. package/esm/indicators/momentum.src.js +1 -1
  397. package/esm/indicators/natr.js +1 -1
  398. package/esm/indicators/natr.src.js +1 -1
  399. package/esm/indicators/obv.js +1 -1
  400. package/esm/indicators/obv.src.js +1 -1
  401. package/esm/indicators/pivot-points.js +1 -1
  402. package/esm/indicators/pivot-points.src.js +1 -1
  403. package/esm/indicators/ppo.js +1 -1
  404. package/esm/indicators/ppo.src.js +1 -1
  405. package/esm/indicators/price-channel.js +1 -1
  406. package/esm/indicators/price-channel.src.js +1 -1
  407. package/esm/indicators/price-envelopes.js +1 -1
  408. package/esm/indicators/price-envelopes.src.js +1 -1
  409. package/esm/indicators/psar.js +1 -1
  410. package/esm/indicators/psar.src.js +1 -1
  411. package/esm/indicators/regressions.js +1 -1
  412. package/esm/indicators/regressions.src.js +1 -1
  413. package/esm/indicators/roc.js +1 -1
  414. package/esm/indicators/roc.src.js +1 -1
  415. package/esm/indicators/rsi.js +1 -1
  416. package/esm/indicators/rsi.src.js +2 -2
  417. package/esm/indicators/slow-stochastic.js +1 -1
  418. package/esm/indicators/slow-stochastic.src.js +1 -1
  419. package/esm/indicators/stochastic.js +1 -1
  420. package/esm/indicators/stochastic.src.js +1 -1
  421. package/esm/indicators/supertrend.js +1 -1
  422. package/esm/indicators/supertrend.src.js +1 -1
  423. package/esm/indicators/tema.js +1 -1
  424. package/esm/indicators/tema.src.js +1 -1
  425. package/esm/indicators/trendline.js +1 -1
  426. package/esm/indicators/trendline.src.js +1 -1
  427. package/esm/indicators/trix.js +1 -1
  428. package/esm/indicators/trix.src.js +1 -1
  429. package/esm/indicators/volume-by-price.js +1 -1
  430. package/esm/indicators/volume-by-price.src.js +1 -1
  431. package/esm/indicators/vwap.js +1 -1
  432. package/esm/indicators/vwap.src.js +1 -1
  433. package/esm/indicators/williams-r.js +1 -1
  434. package/esm/indicators/williams-r.src.js +1 -1
  435. package/esm/indicators/wma.js +1 -1
  436. package/esm/indicators/wma.src.js +1 -1
  437. package/esm/indicators/zigzag.js +1 -1
  438. package/esm/indicators/zigzag.src.js +1 -1
  439. package/esm/modules/accessibility.js +2 -2
  440. package/esm/modules/accessibility.src.js +69 -63
  441. package/esm/modules/annotations-advanced.js +3 -3
  442. package/esm/modules/annotations-advanced.src.js +25 -23
  443. package/esm/modules/annotations.js +3 -3
  444. package/esm/modules/annotations.src.js +21 -19
  445. package/esm/modules/arc-diagram.js +2 -2
  446. package/esm/modules/arc-diagram.src.js +16 -15
  447. package/esm/modules/arrow-symbols.js +1 -1
  448. package/esm/modules/arrow-symbols.src.js +1 -1
  449. package/esm/modules/boost-canvas.js +2 -2
  450. package/esm/modules/boost-canvas.src.js +29 -20
  451. package/esm/modules/boost.js +2 -2
  452. package/esm/modules/boost.src.js +28 -19
  453. package/esm/modules/broken-axis.js +2 -2
  454. package/esm/modules/broken-axis.src.js +6 -5
  455. package/esm/modules/bullet.js +2 -2
  456. package/esm/modules/bullet.src.js +17 -10
  457. package/esm/modules/coloraxis.js +2 -2
  458. package/esm/modules/coloraxis.src.js +18 -11
  459. package/esm/modules/contour.js +1 -1
  460. package/esm/modules/contour.src.js +1 -1
  461. package/esm/modules/current-date-indicator.js +1 -1
  462. package/esm/modules/current-date-indicator.src.js +1 -1
  463. package/esm/modules/cylinder.js +2 -2
  464. package/esm/modules/cylinder.src.js +9 -10
  465. package/esm/modules/data-sorting.js +1 -1
  466. package/esm/modules/data-sorting.src.js +1 -1
  467. package/esm/modules/data-tools.js +2 -2
  468. package/esm/modules/data-tools.src.js +20 -3
  469. package/esm/modules/data.js +1 -1
  470. package/esm/modules/data.src.js +1 -1
  471. package/esm/modules/datagrouping.js +2 -2
  472. package/esm/modules/datagrouping.src.js +6 -5
  473. package/esm/modules/debugger.js +1 -1
  474. package/esm/modules/debugger.src.js +1 -1
  475. package/esm/modules/dependency-wheel.js +1 -1
  476. package/esm/modules/dependency-wheel.src.js +1 -1
  477. package/esm/modules/dotplot.js +2 -2
  478. package/esm/modules/dotplot.src.js +3 -2
  479. package/esm/modules/drag-panes.js +1 -1
  480. package/esm/modules/drag-panes.src.js +1 -1
  481. package/esm/modules/draggable-points.js +2 -2
  482. package/esm/modules/draggable-points.src.js +2 -3
  483. package/esm/modules/drilldown.js +2 -2
  484. package/esm/modules/drilldown.src.js +5 -4
  485. package/esm/modules/dumbbell.js +2 -2
  486. package/esm/modules/dumbbell.src.js +37 -9
  487. package/esm/modules/export-data.js +2 -2
  488. package/esm/modules/export-data.src.js +17 -16
  489. package/esm/modules/exporting.js +2 -2
  490. package/esm/modules/exporting.src.js +7 -7
  491. package/esm/modules/flowmap.js +2 -2
  492. package/esm/modules/flowmap.src.js +21 -11
  493. package/esm/modules/full-screen.js +1 -1
  494. package/esm/modules/full-screen.src.js +1 -1
  495. package/esm/modules/funnel.js +2 -2
  496. package/esm/modules/funnel.src.js +2 -2
  497. package/esm/modules/funnel3d.js +2 -2
  498. package/esm/modules/funnel3d.src.js +14 -13
  499. package/esm/modules/gantt.js +2 -2
  500. package/esm/modules/gantt.src.js +93 -76
  501. package/esm/modules/geoheatmap.js +2 -2
  502. package/esm/modules/geoheatmap.src.js +8 -8
  503. package/esm/modules/grid-axis.js +2 -2
  504. package/esm/modules/grid-axis.src.js +4 -4
  505. package/esm/modules/heatmap.js +2 -2
  506. package/esm/modules/heatmap.src.js +22 -22
  507. package/esm/modules/heikinashi.js +1 -1
  508. package/esm/modules/heikinashi.src.js +1 -1
  509. package/esm/modules/histogram-bellcurve.js +1 -1
  510. package/esm/modules/histogram-bellcurve.src.js +15 -3
  511. package/esm/modules/hollowcandlestick.js +1 -1
  512. package/esm/modules/hollowcandlestick.src.js +1 -1
  513. package/esm/modules/item-series.js +2 -2
  514. package/esm/modules/item-series.src.js +18 -6
  515. package/esm/modules/lollipop.js +1 -1
  516. package/esm/modules/lollipop.src.js +1 -1
  517. package/esm/modules/map.js +2 -2
  518. package/esm/modules/map.src.js +65 -57
  519. package/esm/modules/marker-clusters.js +1 -1
  520. package/esm/modules/marker-clusters.src.js +1 -1
  521. package/esm/modules/mouse-wheel-zoom.js +2 -2
  522. package/esm/modules/mouse-wheel-zoom.src.js +3 -3
  523. package/esm/modules/navigator.js +2 -2
  524. package/esm/modules/navigator.src.js +47 -45
  525. package/esm/modules/networkgraph.js +2 -2
  526. package/esm/modules/networkgraph.src.js +31 -21
  527. package/esm/modules/no-data-to-display.js +1 -1
  528. package/esm/modules/no-data-to-display.src.js +1 -1
  529. package/esm/modules/non-cartesian-zoom.js +1 -1
  530. package/esm/modules/non-cartesian-zoom.src.js +1 -1
  531. package/esm/modules/offline-exporting.js +1 -1
  532. package/esm/modules/offline-exporting.src.js +1 -1
  533. package/esm/modules/organization.js +2 -2
  534. package/esm/modules/organization.src.js +3 -2
  535. package/esm/modules/parallel-coordinates.js +2 -2
  536. package/esm/modules/parallel-coordinates.src.js +2 -2
  537. package/esm/modules/pareto.js +1 -1
  538. package/esm/modules/pareto.src.js +1 -1
  539. package/esm/modules/pathfinder.js +2 -2
  540. package/esm/modules/pathfinder.src.js +7 -6
  541. package/esm/modules/pattern-fill.js +2 -2
  542. package/esm/modules/pattern-fill.src.js +7 -5
  543. package/esm/modules/pictorial.js +2 -2
  544. package/esm/modules/pictorial.src.js +10 -6
  545. package/esm/modules/pointandfigure.js +1 -1
  546. package/esm/modules/pointandfigure.src.js +1 -1
  547. package/esm/modules/price-indicator.js +2 -2
  548. package/esm/modules/price-indicator.src.js +5 -4
  549. package/esm/modules/pyramid3d.js +1 -1
  550. package/esm/modules/pyramid3d.src.js +1 -1
  551. package/esm/modules/renko.js +1 -1
  552. package/esm/modules/renko.src.js +1 -1
  553. package/esm/modules/sankey.js +2 -2
  554. package/esm/modules/sankey.src.js +34 -20
  555. package/esm/modules/series-label.js +2 -2
  556. package/esm/modules/series-label.src.js +7 -7
  557. package/esm/modules/series-on-point.js +1 -1
  558. package/esm/modules/series-on-point.src.js +1 -1
  559. package/esm/modules/solid-gauge.js +2 -2
  560. package/esm/modules/solid-gauge.src.js +2 -2
  561. package/esm/modules/sonification.js +2 -2
  562. package/esm/modules/sonification.src.js +19 -19
  563. package/esm/modules/static-scale.js +1 -1
  564. package/esm/modules/static-scale.src.js +1 -1
  565. package/esm/modules/stock-tools.js +3 -3
  566. package/esm/modules/stock-tools.src.js +15 -10
  567. package/esm/modules/stock.js +2 -2
  568. package/esm/modules/stock.src.js +90 -76
  569. package/esm/modules/streamgraph.js +1 -1
  570. package/esm/modules/streamgraph.src.js +1 -1
  571. package/esm/modules/sunburst.js +2 -2
  572. package/esm/modules/sunburst.src.js +41 -26
  573. package/esm/modules/textpath.js +1 -1
  574. package/esm/modules/textpath.src.js +1 -1
  575. package/esm/modules/tiledwebmap.js +2 -2
  576. package/esm/modules/tiledwebmap.src.js +8 -6
  577. package/esm/modules/tilemap.js +2 -2
  578. package/esm/modules/tilemap.src.js +3 -3
  579. package/esm/modules/timeline.js +2 -2
  580. package/esm/modules/timeline.src.js +5 -4
  581. package/esm/modules/treegraph.js +2 -2
  582. package/esm/modules/treegraph.src.js +17 -8
  583. package/esm/modules/treegrid.js +2 -2
  584. package/esm/modules/treegrid.src.js +28 -18
  585. package/esm/modules/treemap.js +2 -2
  586. package/esm/modules/treemap.src.js +35 -22
  587. package/esm/modules/variable-pie.js +2 -2
  588. package/esm/modules/variable-pie.src.js +6 -4
  589. package/esm/modules/variwide.js +2 -2
  590. package/esm/modules/variwide.src.js +2 -2
  591. package/esm/modules/vector.js +1 -1
  592. package/esm/modules/vector.src.js +1 -1
  593. package/esm/modules/venn.js +1 -1
  594. package/esm/modules/venn.src.js +1 -1
  595. package/esm/modules/windbarb.js +2 -2
  596. package/esm/modules/windbarb.src.js +2 -2
  597. package/esm/modules/wordcloud.js +1 -1
  598. package/esm/modules/wordcloud.src.js +1 -1
  599. package/esm/modules/xrange.js +1 -1
  600. package/esm/modules/xrange.src.js +1 -1
  601. package/esm/standalone-navigator.js +4 -4
  602. package/esm/standalone-navigator.src.js +355 -249
  603. package/esm/themes/adaptive.js +1 -1
  604. package/esm/themes/adaptive.src.js +1 -1
  605. package/esm/themes/avocado.js +1 -1
  606. package/esm/themes/avocado.src.js +1 -1
  607. package/esm/themes/dark-unica.js +1 -1
  608. package/esm/themes/dark-unica.src.js +1 -1
  609. package/esm/themes/grid-light.js +1 -1
  610. package/esm/themes/grid-light.src.js +1 -1
  611. package/esm/themes/high-contrast.js +1 -1
  612. package/esm/themes/high-contrast.src.js +1 -1
  613. package/esm/themes/sand-signika.js +1 -1
  614. package/esm/themes/sand-signika.src.js +1 -1
  615. package/esm/themes/sunset.js +1 -1
  616. package/esm/themes/sunset.src.js +1 -1
  617. package/highcharts-3d.js +2 -2
  618. package/highcharts-3d.src.js +40 -32
  619. package/highcharts-autoload.d.ts +8 -2
  620. package/highcharts-autoload.js +4 -4
  621. package/highcharts-autoload.src.d.ts +8 -2
  622. package/highcharts-autoload.src.js +313 -208
  623. package/highcharts-gantt.js +4 -4
  624. package/highcharts-gantt.src.js +404 -283
  625. package/highcharts-more.js +2 -2
  626. package/highcharts-more.src.js +90 -56
  627. package/highcharts.d.ts +61 -4
  628. package/highcharts.js +4 -4
  629. package/highcharts.src.d.ts +61 -4
  630. package/highcharts.src.js +312 -207
  631. package/highmaps.js +4 -4
  632. package/highmaps.src.js +390 -272
  633. package/highstock.js +4 -4
  634. package/highstock.src.js +413 -293
  635. package/i18n/fr-FR.js +1 -1
  636. package/i18n/fr-FR.src.js +1 -1
  637. package/i18n/nb-NO.js +1 -1
  638. package/i18n/nb-NO.src.js +1 -1
  639. package/i18n/zh-CN.js +1 -1
  640. package/i18n/zh-CN.src.js +1 -1
  641. package/indicators/acceleration-bands.js +1 -1
  642. package/indicators/acceleration-bands.src.js +1 -1
  643. package/indicators/accumulation-distribution.js +1 -1
  644. package/indicators/accumulation-distribution.src.js +1 -1
  645. package/indicators/ao.js +1 -1
  646. package/indicators/ao.src.js +1 -1
  647. package/indicators/apo.js +1 -1
  648. package/indicators/apo.src.js +1 -1
  649. package/indicators/aroon-oscillator.js +1 -1
  650. package/indicators/aroon-oscillator.src.js +1 -1
  651. package/indicators/aroon.js +2 -2
  652. package/indicators/aroon.src.js +3 -3
  653. package/indicators/atr.js +1 -1
  654. package/indicators/atr.src.js +1 -1
  655. package/indicators/bollinger-bands.js +1 -1
  656. package/indicators/bollinger-bands.src.js +1 -1
  657. package/indicators/cci.js +1 -1
  658. package/indicators/cci.src.js +1 -1
  659. package/indicators/chaikin.js +1 -1
  660. package/indicators/chaikin.src.js +1 -1
  661. package/indicators/cmf.js +1 -1
  662. package/indicators/cmf.src.js +1 -1
  663. package/indicators/cmo.js +1 -1
  664. package/indicators/cmo.src.js +1 -1
  665. package/indicators/dema.js +1 -1
  666. package/indicators/dema.src.js +1 -1
  667. package/indicators/disparity-index.js +1 -1
  668. package/indicators/disparity-index.src.js +1 -1
  669. package/indicators/dmi.js +1 -1
  670. package/indicators/dmi.src.js +1 -1
  671. package/indicators/dpo.js +2 -2
  672. package/indicators/dpo.src.js +4 -3
  673. package/indicators/ichimoku-kinko-hyo.js +1 -1
  674. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  675. package/indicators/indicators-all.js +2 -2
  676. package/indicators/indicators-all.src.js +8 -7
  677. package/indicators/indicators.js +2 -2
  678. package/indicators/indicators.src.js +2 -2
  679. package/indicators/keltner-channels.js +1 -1
  680. package/indicators/keltner-channels.src.js +1 -1
  681. package/indicators/klinger.js +1 -1
  682. package/indicators/klinger.src.js +1 -1
  683. package/indicators/macd.js +1 -1
  684. package/indicators/macd.src.js +1 -1
  685. package/indicators/mfi.js +1 -1
  686. package/indicators/mfi.src.js +1 -1
  687. package/indicators/momentum.js +1 -1
  688. package/indicators/momentum.src.js +1 -1
  689. package/indicators/natr.js +1 -1
  690. package/indicators/natr.src.js +1 -1
  691. package/indicators/obv.js +1 -1
  692. package/indicators/obv.src.js +1 -1
  693. package/indicators/pivot-points.js +1 -1
  694. package/indicators/pivot-points.src.js +1 -1
  695. package/indicators/ppo.js +1 -1
  696. package/indicators/ppo.src.js +1 -1
  697. package/indicators/price-channel.js +1 -1
  698. package/indicators/price-channel.src.js +1 -1
  699. package/indicators/price-envelopes.js +1 -1
  700. package/indicators/price-envelopes.src.js +1 -1
  701. package/indicators/psar.js +1 -1
  702. package/indicators/psar.src.js +1 -1
  703. package/indicators/regressions.js +1 -1
  704. package/indicators/regressions.src.js +1 -1
  705. package/indicators/roc.js +1 -1
  706. package/indicators/roc.src.js +1 -1
  707. package/indicators/rsi.js +1 -1
  708. package/indicators/rsi.src.js +2 -2
  709. package/indicators/slow-stochastic.js +1 -1
  710. package/indicators/slow-stochastic.src.js +1 -1
  711. package/indicators/stochastic.js +1 -1
  712. package/indicators/stochastic.src.js +1 -1
  713. package/indicators/supertrend.js +1 -1
  714. package/indicators/supertrend.src.js +1 -1
  715. package/indicators/tema.js +1 -1
  716. package/indicators/tema.src.js +1 -1
  717. package/indicators/trendline.js +1 -1
  718. package/indicators/trendline.src.js +1 -1
  719. package/indicators/trix.js +1 -1
  720. package/indicators/trix.src.js +1 -1
  721. package/indicators/volume-by-price.js +1 -1
  722. package/indicators/volume-by-price.src.js +1 -1
  723. package/indicators/vwap.js +1 -1
  724. package/indicators/vwap.src.js +1 -1
  725. package/indicators/williams-r.js +1 -1
  726. package/indicators/williams-r.src.js +1 -1
  727. package/indicators/wma.js +1 -1
  728. package/indicators/wma.src.js +1 -1
  729. package/indicators/zigzag.js +1 -1
  730. package/indicators/zigzag.src.js +1 -1
  731. package/modules/accessibility.js +2 -2
  732. package/modules/accessibility.src.js +69 -63
  733. package/modules/annotations-advanced.js +3 -3
  734. package/modules/annotations-advanced.src.js +25 -23
  735. package/modules/annotations.js +3 -3
  736. package/modules/annotations.src.js +21 -19
  737. package/modules/arc-diagram.js +2 -2
  738. package/modules/arc-diagram.src.js +16 -15
  739. package/modules/arrow-symbols.js +1 -1
  740. package/modules/arrow-symbols.src.js +1 -1
  741. package/modules/boost-canvas.js +2 -2
  742. package/modules/boost-canvas.src.js +29 -20
  743. package/modules/boost.js +2 -2
  744. package/modules/boost.src.js +28 -19
  745. package/modules/broken-axis.js +2 -2
  746. package/modules/broken-axis.src.js +6 -5
  747. package/modules/bullet.js +2 -2
  748. package/modules/bullet.src.js +17 -10
  749. package/modules/coloraxis.js +2 -2
  750. package/modules/coloraxis.src.js +18 -11
  751. package/modules/contour.js +4 -4
  752. package/modules/contour.src.js +19 -12
  753. package/modules/current-date-indicator.js +1 -1
  754. package/modules/current-date-indicator.src.js +1 -1
  755. package/modules/cylinder.js +2 -2
  756. package/modules/cylinder.src.js +9 -10
  757. package/modules/data-sorting.js +1 -1
  758. package/modules/data-sorting.src.js +1 -1
  759. package/modules/data-tools.js +2 -2
  760. package/modules/data-tools.src.js +20 -3
  761. package/modules/data.js +1 -1
  762. package/modules/data.src.js +1 -1
  763. package/modules/datagrouping.js +2 -2
  764. package/modules/datagrouping.src.js +6 -5
  765. package/modules/debugger.js +1 -1
  766. package/modules/debugger.src.js +1 -1
  767. package/modules/dependency-wheel.js +1 -1
  768. package/modules/dependency-wheel.src.js +1 -1
  769. package/modules/dotplot.js +2 -2
  770. package/modules/dotplot.src.js +3 -2
  771. package/modules/drag-panes.js +1 -1
  772. package/modules/drag-panes.src.js +1 -1
  773. package/modules/draggable-points.js +2 -2
  774. package/modules/draggable-points.src.js +2 -3
  775. package/modules/drilldown.js +2 -2
  776. package/modules/drilldown.src.js +5 -4
  777. package/modules/dumbbell.js +2 -2
  778. package/modules/dumbbell.src.js +37 -9
  779. package/modules/export-data.js +2 -2
  780. package/modules/export-data.src.js +17 -16
  781. package/modules/exporting.js +2 -2
  782. package/modules/exporting.src.js +7 -7
  783. package/modules/flowmap.js +2 -2
  784. package/modules/flowmap.src.js +21 -11
  785. package/modules/full-screen.js +1 -1
  786. package/modules/full-screen.src.js +1 -1
  787. package/modules/funnel.js +2 -2
  788. package/modules/funnel.src.js +2 -2
  789. package/modules/funnel3d.js +2 -2
  790. package/modules/funnel3d.src.js +14 -13
  791. package/modules/gantt.js +6 -6
  792. package/modules/gantt.src.js +96 -79
  793. package/modules/geoheatmap.d.ts +0 -12
  794. package/modules/geoheatmap.js +2 -2
  795. package/modules/geoheatmap.src.d.ts +0 -12
  796. package/modules/geoheatmap.src.js +8 -8
  797. package/modules/grid-axis.js +2 -2
  798. package/modules/grid-axis.src.js +4 -4
  799. package/modules/heatmap.d.ts +0 -12
  800. package/modules/heatmap.js +4 -4
  801. package/modules/heatmap.src.d.ts +0 -12
  802. package/modules/heatmap.src.js +40 -33
  803. package/modules/heikinashi.js +1 -1
  804. package/modules/heikinashi.src.js +1 -1
  805. package/modules/histogram-bellcurve.js +1 -1
  806. package/modules/histogram-bellcurve.src.js +15 -3
  807. package/modules/hollowcandlestick.js +1 -1
  808. package/modules/hollowcandlestick.src.js +1 -1
  809. package/modules/item-series.js +2 -2
  810. package/modules/item-series.src.js +18 -6
  811. package/modules/lollipop.js +1 -1
  812. package/modules/lollipop.src.js +1 -1
  813. package/modules/map.d.ts +0 -12
  814. package/modules/map.js +4 -4
  815. package/modules/map.src.d.ts +0 -12
  816. package/modules/map.src.js +83 -68
  817. package/modules/marker-clusters.js +1 -1
  818. package/modules/marker-clusters.src.js +1 -1
  819. package/modules/mouse-wheel-zoom.js +2 -2
  820. package/modules/mouse-wheel-zoom.src.js +3 -3
  821. package/modules/navigator.js +2 -2
  822. package/modules/navigator.src.js +47 -45
  823. package/modules/networkgraph.js +2 -2
  824. package/modules/networkgraph.src.js +31 -21
  825. package/modules/no-data-to-display.js +1 -1
  826. package/modules/no-data-to-display.src.js +1 -1
  827. package/modules/non-cartesian-zoom.js +1 -1
  828. package/modules/non-cartesian-zoom.src.js +1 -1
  829. package/modules/offline-exporting.js +1 -1
  830. package/modules/offline-exporting.src.js +1 -1
  831. package/modules/organization.js +2 -2
  832. package/modules/organization.src.js +3 -2
  833. package/modules/parallel-coordinates.js +2 -2
  834. package/modules/parallel-coordinates.src.js +2 -2
  835. package/modules/pareto.js +1 -1
  836. package/modules/pareto.src.js +1 -1
  837. package/modules/pathfinder.js +2 -2
  838. package/modules/pathfinder.src.js +7 -6
  839. package/modules/pattern-fill.js +2 -2
  840. package/modules/pattern-fill.src.js +7 -5
  841. package/modules/pictorial.js +2 -2
  842. package/modules/pictorial.src.js +10 -6
  843. package/modules/pointandfigure.js +1 -1
  844. package/modules/pointandfigure.src.js +1 -1
  845. package/modules/price-indicator.js +2 -2
  846. package/modules/price-indicator.src.js +5 -4
  847. package/modules/pyramid3d.js +1 -1
  848. package/modules/pyramid3d.src.js +1 -1
  849. package/modules/renko.js +1 -1
  850. package/modules/renko.src.js +1 -1
  851. package/modules/sankey.js +2 -2
  852. package/modules/sankey.src.js +34 -20
  853. package/modules/series-label.js +2 -2
  854. package/modules/series-label.src.js +7 -7
  855. package/modules/series-on-point.js +1 -1
  856. package/modules/series-on-point.src.js +1 -1
  857. package/modules/solid-gauge.js +2 -2
  858. package/modules/solid-gauge.src.js +2 -2
  859. package/modules/sonification.js +2 -2
  860. package/modules/sonification.src.js +19 -19
  861. package/modules/static-scale.js +1 -1
  862. package/modules/static-scale.src.js +1 -1
  863. package/modules/stock-tools.js +3 -3
  864. package/modules/stock-tools.src.js +15 -10
  865. package/modules/stock.js +6 -6
  866. package/modules/stock.src.js +105 -89
  867. package/modules/streamgraph.js +1 -1
  868. package/modules/streamgraph.src.js +1 -1
  869. package/modules/sunburst.js +2 -2
  870. package/modules/sunburst.src.js +41 -26
  871. package/modules/textpath.js +1 -1
  872. package/modules/textpath.src.js +1 -1
  873. package/modules/tiledwebmap.js +2 -2
  874. package/modules/tiledwebmap.src.js +8 -6
  875. package/modules/tilemap.js +2 -2
  876. package/modules/tilemap.src.js +3 -3
  877. package/modules/timeline.js +2 -2
  878. package/modules/timeline.src.js +5 -4
  879. package/modules/treegraph.js +2 -2
  880. package/modules/treegraph.src.js +17 -8
  881. package/modules/treegrid.js +2 -2
  882. package/modules/treegrid.src.js +28 -18
  883. package/modules/treemap.js +2 -2
  884. package/modules/treemap.src.js +35 -22
  885. package/modules/variable-pie.js +2 -2
  886. package/modules/variable-pie.src.js +6 -4
  887. package/modules/variwide.js +2 -2
  888. package/modules/variwide.src.js +2 -2
  889. package/modules/vector.js +1 -1
  890. package/modules/vector.src.js +1 -1
  891. package/modules/venn.js +1 -1
  892. package/modules/venn.src.js +1 -1
  893. package/modules/windbarb.js +2 -2
  894. package/modules/windbarb.src.js +2 -2
  895. package/modules/wordcloud.js +1 -1
  896. package/modules/wordcloud.src.js +1 -1
  897. package/modules/xrange.js +1 -1
  898. package/modules/xrange.src.js +1 -1
  899. package/package.json +2 -3
  900. package/standalone-navigator.js +4 -4
  901. package/standalone-navigator.src.js +355 -249
  902. package/themes/adaptive.js +1 -1
  903. package/themes/adaptive.src.js +1 -1
  904. package/themes/avocado.js +1 -1
  905. package/themes/avocado.src.js +1 -1
  906. package/themes/dark-unica.js +1 -1
  907. package/themes/dark-unica.src.js +1 -1
  908. package/themes/grid-light.js +1 -1
  909. package/themes/grid-light.src.js +1 -1
  910. package/themes/high-contrast.js +1 -1
  911. package/themes/high-contrast.src.js +1 -1
  912. package/themes/sand-signika.js +1 -1
  913. package/themes/sand-signika.src.js +1 -1
  914. package/themes/sunset.js +1 -1
  915. package/themes/sunset.src.js +1 -1
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/sunburst
4
4
  * @requires highcharts
5
5
  *
@@ -8,4 +8,4 @@
8
8
  *
9
9
  * A commercial license may be required depending on use,
10
10
  * see www.highcharts.com/license
11
- */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.Templating,t._Highcharts.Color,t._Highcharts.SeriesRegistry,t._Highcharts.SVGElement,t._Highcharts.Series):"function"==typeof define&&define.amd?define("highcharts/modules/sunburst",["highcharts/highcharts"],function(t){return e(t,t.Templating,t.Color,t.SeriesRegistry,t.SVGElement,t.Series)}):"object"==typeof exports?exports["highcharts/modules/sunburst"]=e(t._Highcharts,t._Highcharts.Templating,t._Highcharts.Color,t._Highcharts.SeriesRegistry,t._Highcharts.SVGElement,t._Highcharts.Series):t.Highcharts=e(t.Highcharts,t.Highcharts.Templating,t.Highcharts.Color,t.Highcharts.SeriesRegistry,t.Highcharts.SVGElement,t.Highcharts.Series)}("u"<typeof window?this:window,(t,e,i,s,r,o)=>(()=>{"use strict";var a,l,n,h,d,p={620(t){t.exports=i},28(t){t.exports=r},820(t){t.exports=o},512(t){t.exports=s},984(t){t.exports=e},944(e){e.exports=t}};let u={};function c(t){let e=u[t];if(void 0!==e)return e.exports;let i=u[t]={exports:{}};return p[t](i,i.exports,c),i.exports}c.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return c.d(e,{a:e}),e},c.d=(t,e)=>{if(Array.isArray(e))for(var i=0;i<e.length;){var s=e[i++],r=e[i++];c.o(t,s)?0===r&&i++:0===r?Object.defineProperty(t,s,{enumerable:!0,value:e[i++]}):Object.defineProperty(t,s,{enumerable:!0,get:r})}else for(var s in e)c.o(e,s)&&!c.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},c.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let g={};c.d(g,{default:()=>tC});var v=c(944),b=c.n(v);let f={mainBreadcrumb:"Main"};var m=c(984);let{format:x}=c.n(m)(),{composed:y}=b();function L(){if(this.breadcrumbs){let t=this.resetZoomButton&&this.resetZoomButton.getBBox(),e=this.breadcrumbs.options;t&&"right"===e.position.align&&"plotBox"===e.relativeTo&&this.breadcrumbs.alignBreadcrumbsGroup(-t.width-e.buttonSpacing)}}function P(){this.breadcrumbs&&(this.breadcrumbs.destroy(),this.breadcrumbs=void 0)}function T(){let t=this.breadcrumbs;if(t&&!t.options.floating&&t.level){let e=t.options,i=e.buttonTheme,s=(i.height||0)+2*(i.padding||0)+e.buttonSpacing,r=e.position.verticalAlign;"bottom"===r?(this.marginBottom=(this.marginBottom||0)+s,t.yOffset=s):"middle"!==r?(this.plotTop+=s,t.yOffset=-s):t.yOffset=void 0}}function w(){this.breadcrumbs&&this.breadcrumbs.redraw()}function A(t){!0===t.resetSelection&&this.breadcrumbs&&this.breadcrumbs.alignBreadcrumbsGroup()}class O{static compose(t,e){(0,v.pushUnique)(y,"Breadcrumbs")&&((0,v.addEvent)(t,"destroy",P),(0,v.addEvent)(t,"afterShowResetZoom",L),(0,v.addEvent)(t,"getMargins",T),(0,v.addEvent)(t,"redraw",w),(0,v.addEvent)(t,"selection",A),(0,v.extend)(e.lang,f))}constructor(t,e){this.elementList={},this.isDirty=!0,this.level=0,this.list=[];const i=(0,v.merge)(t.options.drilldown&&t.options.drilldown.drillUpButton,O.defaultOptions,t.options.navigation&&t.options.navigation.breadcrumbs,e);this.chart=t,this.options=i||{}}updateProperties(t){this.setList(t),this.setLevel(),this.isDirty=!0}setList(t){this.list=t}setLevel(){this.level=this.list.length&&this.list.length-1}getLevel(){return this.level}getButtonText(t){let e=this.chart,i=this.options,s=e.options.lang,r=(0,v.pick)(i.format,i.showFullPath?"{level.name}":"← {level.name}"),o=s&&(0,v.pick)(s.drillUpText,s.mainBreadcrumb),a=i.formatter&&i.formatter(t)||x(r,{level:t.levelOptions},e)||"";return((0,v.isString)(a)&&!a.length||"← "===a)&&(0,v.defined)(o)&&(a=i.showFullPath?o:"← "+o),a}redraw(){this.isDirty&&this.render(),this.group&&this.group.align(),this.isDirty=!1}render(){let t=this.chart,e=this.options;!this.group&&e&&(this.group=t.renderer.g("breadcrumbs-group").addClass("highcharts-no-tooltip highcharts-breadcrumbs").attr({zIndex:e.zIndex}).add()),e.showFullPath?this.renderFullPathButtons():this.renderSingleButton(),this.alignBreadcrumbsGroup()}renderFullPathButtons(){this.destroySingleButton(),this.resetElementListState(),this.updateListElements(),this.destroyListElements()}renderSingleButton(){let t=this.chart,e=this.list,i=this.options.buttonSpacing;this.destroyListElements();let s=this.group?this.group.getBBox().width:i,r=e[e.length-2];!t.drillUpButton&&this.level>0?t.drillUpButton=this.renderButton(r,s,i):t.drillUpButton&&(this.level>0?this.updateSingleButton():this.destroySingleButton())}alignBreadcrumbsGroup(t){if(this.group){let e=this.options,i=e.buttonTheme,s=e.position,r="chart"===e.relativeTo||"spacingBox"===e.relativeTo?void 0:"plotBox",o=this.group.getBBox(),a=2*(i.padding||0)+e.buttonSpacing;s.width=o.width+a,s.height=o.height+a;let l=(0,v.merge)(s);t&&(l.x+=t),this.options.rtl&&(l.x+=s.width),l.y=(0,v.pick)(l.y,this.yOffset,0),this.group.align(l,!0,r)}}renderButton(t,e,i){let s=this,r=this.chart,o=s.options,a=(0,v.merge)(o.buttonTheme),l=r.renderer.button(s.getButtonText(t),e,i,function(e){let i,r=o.events&&o.events.click;r&&(i=r.call(s,e,t,s)),!1!==i&&(o.showFullPath?e.newLevel=t.level:e.newLevel=s.level-1,(0,v.fireEvent)(s,"up",e))},a).addClass("highcharts-breadcrumbs-button").add(s.group);return r.styledMode||l.attr(o.style),l}renderSeparator(t,e){let i=this.chart,s=this.options.separator,r=i.renderer.label(s.text,t,e,void 0,void 0,void 0,!1).addClass("highcharts-breadcrumbs-separator").add(this.group);return i.styledMode||r.css(s.style),r}update(t){(0,v.merge)(!0,this.options,t),this.destroy(),this.isDirty=!0}updateSingleButton(){let t=this.chart,e=this.list[this.level-1];t.drillUpButton&&t.drillUpButton.attr({text:this.getButtonText(e)})}destroy(){this.destroySingleButton(),this.destroyListElements(!0),this.group&&this.group.destroy(),this.group=void 0}destroyListElements(t){let e=this.elementList;(0,v.objectEach)(e,(i,s)=>{(t||!e[s].updated)&&((i=e[s]).button&&i.button.destroy(),i.separator&&i.separator.destroy(),delete i.button,delete i.separator,delete e[s])}),t&&(this.elementList={})}destroySingleButton(){this.chart.drillUpButton&&(this.chart.drillUpButton.destroy(),this.chart.drillUpButton=void 0)}resetElementListState(){(0,v.objectEach)(this.elementList,t=>{t.updated=!1})}updateListElements(){let t=this.elementList,e=this.options.buttonSpacing,i=this.list,s=this.options.rtl,r=s?-1:1,o=function(t,e){return r*t.getBBox().width+r*e},a=function(t,e,i){t.translate(e-t.getBBox().width,i)},l=this.group?o(this.group,e):e,n,h;for(let d=0,p=i.length;d<p;++d){let u,c,g=d===p-1;t[(h=i[d]).level]?(u=(n=t[h.level]).button,n.separator||g?n.separator&&g&&(n.separator.destroy(),delete n.separator):(l+=r*e,n.separator=this.renderSeparator(l,e),s&&a(n.separator,l,e),l+=o(n.separator,e)),t[h.level].updated=!0):(u=this.renderButton(h,l,e),s&&a(u,l,e),l+=o(u,e),g||(c=this.renderSeparator(l,e),s&&a(c,l,e),l+=o(c,e)),t[h.level]={button:u,separator:c,updated:!0}),u&&u.setState(2*!!g)}}}O.defaultOptions={buttonSpacing:5,buttonTheme:{fill:"none",height:18,padding:2,"stroke-width":0,zIndex:7,states:{select:{fill:"none"}},style:{color:"var(--highcharts-highlight-color-80)"}},floating:!1,format:void 0,relativeTo:"plotBox",rtl:!1,position:{align:"left",verticalAlign:"top",x:0,y:void 0},separator:{text:"/",style:{color:"var(--highcharts-neutral-color-60)",fontSize:"0.8em"}},showFullPath:!0,style:{},useHTML:!1,zIndex:7};var S=c(620),R=c.n(S),C=c(512),M=c.n(C),B=c(28),I=c.n(B);let{column:{prototype:N}}=M().seriesTypes;var E=n||(n={});function k(t){let e=this.series,i=e.chart.renderer;this.moveToTopOnHover&&this.graphic&&(e.stateMarkerGraphic||(e.stateMarkerGraphic=new(I())(i,"use").css({pointerEvents:"none"}).add(this.graphic.parentGroup)),t?.state==="hover"?(this.graphic.attr({id:this.id}),e.stateMarkerGraphic.attr({href:`${i.url}#${this.id}`,visibility:"visible"})):e.stateMarkerGraphic.attr({href:""}))}E.pointMembers={dataLabelOnNull:!0,moveToTopOnHover:!0,isValid:function(){return null!==this.value&&this.value!==1/0&&this.value!==-1/0&&(void 0===this.value||!isNaN(this.value))}},E.seriesMembers={colorKey:"value",axisTypes:["xAxis","yAxis","colorAxis"],parallelArrays:["x","y","value"],pointArrayMap:["value"],trackerGroups:["group","markerGroup","dataLabelsGroup"],colorAttribs:function(t){let e={};return(0,v.defined)(t.color)&&(!t.state||"normal"===t.state)&&(e[this.colorProp||"fill"]=t.color),e},pointAttribs:N.pointAttribs},E.compose=function(t){let e=t.prototype.pointClass;return(0,v.addEvent)(e,"afterSetState",k),t};let D=n;var H=c(820),G=c.n(H);let z=class{constructor(t,e,i,s){this.height=t,this.width=e,this.plot=s,this.direction=i,this.startDirection=i,this.total=0,this.nW=0,this.lW=0,this.nH=0,this.lH=0,this.elArr=[],this.lP={total:0,lH:0,nH:0,lW:0,nW:0,nR:0,lR:0,aspectRatio:function(t,e){return Math.max(t/e,e/t)}}}addElement(t){this.lP.total=this.elArr[this.elArr.length-1],this.total=this.total+t,0===this.direction?(this.lW=this.nW,this.lP.lH=this.lP.total/this.lW,this.lP.lR=this.lP.aspectRatio(this.lW,this.lP.lH),this.nW=this.total/this.height,this.lP.nH=this.lP.total/this.nW,this.lP.nR=this.lP.aspectRatio(this.nW,this.lP.nH)):(this.lH=this.nH,this.lP.lW=this.lP.total/this.lH,this.lP.lR=this.lP.aspectRatio(this.lP.lW,this.lH),this.nH=this.total/this.width,this.lP.nW=this.lP.total/this.nH,this.lP.nR=this.lP.aspectRatio(this.lP.nW,this.nH)),this.elArr.push(t)}reset(){this.nW=0,this.lW=0,this.elArr=[],this.total=0}},V=class{constructor(){this.childrenTotal=0,this.visible=!1}init(t,e,i,s,r,o,a){return this.id=t,this.i=e,this.children=i,this.height=s,this.level=r,this.series=o,this.parent=a,this}},U=function(t,e){let{animatableAttribs:i,onComplete:s,css:r,renderer:o}=e,a=t.series&&t.series.chart.hasRendered?void 0:t.series&&t.series.options.animation,l=t.graphic;if(e.attribs={...e.attribs,class:t.getClassName()},t.shouldDraw())l||(t.graphic=l="text"===e.shapeType?o.text():"image"===e.shapeType?o.image(e.imageUrl||"").attr(e.shapeArgs||{}):o[e.shapeType](e.shapeArgs||{}),l.add(e.group)),r&&l.css(r),l.attr(e.attribs).animate(i,!e.isNew&&a,s);else if(l){let e=()=>{t.graphic=l=l&&l.destroy(),"function"==typeof s&&s()};Object.keys(i).length?l.animate(i,void 0,()=>e()):e()}},{pie:{prototype:{pointClass:W}},scatter:{prototype:{pointClass:j}}}=M().seriesTypes;class F extends j{constructor(){super(...arguments),this.groupedPointsAmount=0,this.shapeType="rect"}draw(t){U(this,t)}getClassName(){let t=this.series,e=t.options,i=super.getClassName();return this.node.level<=t.nodeMap[t.rootNode].level&&this.node.children.length?i+=" highcharts-above-level":this.node.isGroup||this.node.isLeaf||t.nodeMap[t.rootNode].isGroup||(0,v.pick)(e.interactByLeaf,!e.allowTraversingTree)?this.node.isGroup||this.node.isLeaf||t.nodeMap[t.rootNode].isGroup||(i+=" highcharts-internal-node"):i+=" highcharts-internal-node-interactive",i}isValid(){return!!(this.id||(0,v.isNumber)(this.value))}setState(t){super.setState.apply(this,arguments),this.graphic&&this.graphic.attr({zIndex:+("hover"===t)})}shouldDraw(){return(0,v.isNumber)(this.plotY)&&null!==this.y}}(0,v.extend)(F.prototype,{setVisible:W.prototype.setVisible});let _={allowTraversingTree:!1,animationLimit:250,borderRadius:0,showInLegend:!1,marker:void 0,colorByPoint:!1,dataLabels:{enabled:!0,formatter:function(){let t=this&&this.point?this.point:{};return(0,v.isString)(t.name)?t.name:""},headers:!1,inside:!0,padding:2,verticalAlign:"middle",style:{textOverflow:"ellipsis"}},tooltip:{headerFormat:"",pointFormat:"<b>{point.name}</b>: {point.value}<br/>",clusterFormat:"+ {point.groupedPointsAmount} more...<br/>"},ignoreHiddenPoint:!0,layoutAlgorithm:"sliceAndDice",layoutStartingDirection:"vertical",alternateStartingDirection:!1,levelIsConstant:!0,traverseUpButton:{position:{align:"right",x:-10,y:10}},borderColor:"var(--highcharts-neutral-color-10)",borderWidth:1,colorKey:"colorValue",opacity:.15,states:{hover:{borderColor:"var(--highcharts-neutral-color-40)",brightness:.1*!M().seriesTypes.heatmap,halo:!1,opacity:.75,shadow:!1}},legendSymbol:"rectangle",traverseToLeaf:!1,cluster:{className:void 0,color:void 0,enabled:!1,pixelWidth:void 0,pixelHeight:void 0,name:void 0,reductionFactor:void 0,minimumClusterSize:5,layoutAlgorithm:{distance:0,gridSize:0,kmeansThreshold:0},marker:{lineWidth:0,radius:0}}};(h||(h={})).recursive=function t(e,i,s){let r=i.call(s||this,e);!1!==r&&t(r,i,s)};let Y=h,X={getColor:function(t,e){let i,s,r,o,a,l,n=e.index,h=e.mapOptionsToLevel,d=e.parentColor,p=e.parentColorIndex,u=e.series,c=e.colors,g=e.siblings,b=u.points,f=u.chart.options.chart;if(t){let m;i=b[t.i],s=h[t.level]||{},i&&s.colorByPoint&&(o=i.index%(c?c.length:f.colorCount),r=c&&c[o]),u.chart.styledMode||(a=(0,v.pick)(i&&i.options.color,s&&s.color,r,d&&((m=s&&s.colorVariation)&&"brightness"===m.key&&n&&g?R().parse(d).brighten(m.to*(n/g)).get():d),u.color)),l=(0,v.pick)(i&&i.options.colorIndex,s&&s.colorIndex,o,p,e.colorIndex)}return{color:a,colorIndex:l}},getLevelOptions:function(t){let e,i,s,r,o,a,l={};if((0,v.isObject)(t))for(r=(0,v.isNumber)(t.from)?t.from:1,a=t.levels,i={},e=(0,v.isObject)(t.defaults)?t.defaults:{},(0,v.isArray)(a)&&(i=a.reduce((t,i)=>{let s,o,a;return(0,v.isObject)(i)&&(0,v.isNumber)(i.level)&&(a=(0,v.merge)({},i),o=(0,v.pick)(a.levelIsConstant,e.levelIsConstant),delete a.levelIsConstant,delete a.level,s=i.level+(o?0:r-1),(0,v.isObject)(t[s])?(0,v.merge)(!0,t[s],a):t[s]=a),t},{})),o=(0,v.isNumber)(t.to)?t.to:1,s=0;s<=o;s++)l[s]=(0,v.merge)({},e,(0,v.isObject)(i[s])?i[s]:{});return l},getNodeWidth:function(t,e){let{chart:i,options:s}=t,{nodeDistance:r=0,nodeWidth:o=0}=s,{plotSizeX:a=1}=i;if("auto"===o){if("string"==typeof r&&/%$/.test(r))return a/(e+parseFloat(r)/100*(e-1));let t=Number(r);return(a+t)/(e||1)-t}return(0,v.relativeLength)(o,a)},setTreeValues:function t(e,i){let s=i.before,r=i.idRoot,o=i.mapIdToNode[r],a=!1!==i.levelIsConstant,l=i.points[e.i],n=l&&l.options||{},h=[],d=0;e.levelDynamic=e.level-(a?0:o.level),e.name=(0,v.pick)(l&&l.name,""),e.visible=r===e.id||!0===i.visible,"function"==typeof s&&(e=s(e,i)),e.children.forEach((s,r)=>{let o=(0,v.extend)({},i);(0,v.extend)(o,{index:r,siblings:e.children.length,visible:e.visible}),s=t(s,o),h.push(s),s.visible&&(d+=s.val)});let p=(0,v.pick)(n.value,d);return e.visible=p>=0&&(d>0||e.visible),e.children=h,e.childrenTotal=d,e.isLeaf=e.visible&&!d,e.val=p,e},updateRootId:function(t){let e,i;return(0,v.isObject)(t)&&(i=(0,v.isObject)(t.options)?t.options:{},e=(0,v.pick)(t.rootNode,i.rootId,""),(0,v.isObject)(t.userOptions)&&(t.userOptions.rootId=e),t.rootNode=e),e}},{parse:$}=R(),{composed:q,noop:K}=b(),{column:Z,scatter:J}=M().seriesTypes,{getColor:Q,getLevelOptions:tt,updateRootId:te}=X;G().keepProps.push("simulation","hadOutsideDataLabels");let ti=!1;function ts(){let t=this.xAxis,e=this.yAxis;if(t&&e)if(this.is("treemap")){let i={endOnTick:!1,startOnTick:!1,visible:!1};this.is("treegraph")||(i.min=0,i.max=100,i.tickPositions=[]),(0,v.merge)(!0,t.options,i,t.userOptions),(0,v.merge)(!0,e.options,i,e.userOptions),t.visible=t.options.visible,e.visible=e.options.visible,this.is("treegraph")&&(this.isCartesian=t.visible),ti=!0}else ti&&(e.setOptions(e.userOptions),t.setOptions(t.userOptions),ti=!1)}class tr extends J{constructor(){super(...arguments),this.simulation=0}static compose(t){(0,v.pushUnique)(q,"TreemapSeries")&&(0,v.addEvent)(t,"afterBindAxes",ts)}algorithmCalcPoints(t,e,i,s){let r=i.plot,o=i.elArr.length-1,a,l,n,h,d=i.lW,p=i.lH,u,c=0;for(let t of(e?(d=i.nW,p=i.nH):u=i.elArr[o],i.elArr))(e||c<o)&&(0===i.direction?(a=r.x,l=r.y,h=t/(n=d)):(a=r.x,l=r.y,n=t/(h=p)),s.push({x:a,y:l,width:n,height:(0,v.correctFloat)(h)}),0===i.direction?r.y=r.y+h:r.x=r.x+n),c+=1;i.reset(),0===i.direction?i.width=i.width-d:i.height=i.height-p,r.y=r.parent.y+(r.parent.height-i.height),r.x=r.parent.x+(r.parent.width-i.width),t&&(i.direction=1-i.direction),e||i.addElement(u)}algorithmFill(t,e,i){let s=[],r,o=e.direction,a=e.x,l=e.y,n=e.width,h=e.height,d,p,u,c;for(let g of i)r=e.width*e.height*(g.val/e.val),d=a,p=l,0===o?(n-=u=r/(c=h),a+=u):(h-=c=r/(u=n),l+=c),s.push({x:d,y:p,width:u,height:c,direction:0,val:0}),t&&(o=1-o);return s}algorithmLowAspectRatio(t,e,i){let s=[],r={x:e.x,y:e.y,parent:e},o=e.direction,a=i.length-1,l=new z(e.height,e.width,o,r),n,h=0;for(let o of i)n=e.width*e.height*(o.val/e.val),l.addElement(n),l.lP.nR>l.lP.lR&&this.algorithmCalcPoints(t,!1,l,s,r),h===a&&this.algorithmCalcPoints(t,!0,l,s,r),++h;return s}alignDataLabel(t,e,i){Z.prototype.alignDataLabel.apply(this,arguments),t.dataLabel&&t.dataLabel.attr({zIndex:(t.node.zIndex||0)+1})}applyTreeGrouping(){let t=this,e=t.parentList||{},{cluster:i}=t.options,s=i?.minimumClusterSize||5;if(i?.enabled){let r={},o=t=>{if(t?.point?.shapeArgs){let{width:e=0,height:s=0}=t.point.shapeArgs,{pixelWidth:o=0,pixelHeight:a=0}=i,l=(0,v.defined)(a),n=a?o*a:o*o;(e<o||s<(l?a:o)||e*s<n)&&!t.isGroup&&(0,v.defined)(t.parent)&&(r[t.parent]||(r[t.parent]=[]),r[t.parent].push(t))}t?.children.forEach(t=>{o(t)})};for(let a in o(t.tree),r)r[a]&&r[a].length>s&&r[a].forEach(s=>{let r=e[a].indexOf(s.i);if(-1!==r){e[a].splice(r,1);let o=`highcharts-grouped-treemap-points-${s.parent||"root"}`,l=t.points.find(t=>t.id===o);if(!l){let s=t.pointClass,r=t.points.length;l=new s(t,{className:i.className,color:i.color,id:o,index:r,isGroup:!0,value:0}),(0,v.extend)(l,{formatPrefix:"cluster"}),t.points.push(l),e[a].push(r),e[o]=[]}let n=l.groupedPointsAmount+1,h=t.points[l.index].options.value||0,d=i.name||`+ ${n}`;t.points[l.index].groupedPointsAmount=n,t.points[l.index].options.value=h+(s.point.value||0),t.points[l.index].name=d,e[o].push(s.point.index)}});t.nodeMap={},t.nodeList=[],t.parentList=e;let a=t.buildTree("",-1,0,t.parentList);t.translate(a)}}calculateChildrenAreas(t,e){let i=this.options,s=this.mapOptionsToLevel[t.level+1],r=(0,v.pick)(s?.layoutAlgorithm&&this[s?.layoutAlgorithm]&&s.layoutAlgorithm,i.layoutAlgorithm),o=i.alternateStartingDirection,a=t.children.filter(e=>t.isGroup||!e.ignore),l=s?.groupPadding??i.groupPadding??0,n=this.nodeMap[this.rootNode];if(!r)return;let h=[],d=n.pointValues?.width||0,p=n.pointValues?.height||0;s?.layoutStartingDirection&&(e.direction=+("vertical"!==s.layoutStartingDirection)),h=this[r](e,a);let u=-1;for(let t of a){let i=h[++u];t===n&&(d=d||i.width,p=i.height);let s=l/(this.xAxis.len/p),r=l/(this.yAxis.len/p);if(t.values=(0,v.merge)(i,{val:t.childrenTotal,direction:o?1-e.direction:e.direction}),t.children.length&&t.point.dataLabels?.length){let e=(0,v.arrayMax)(t.point.dataLabels.map(t=>t.options?.headers&&t.height||0))/(this.yAxis.len/p);e<t.values.height/2&&(t.values.y+=e,t.values.height-=e)}if(l){let e=Math.min(s,t.values.width/4),i=Math.min(r,t.values.height/4);t.values.x+=e,t.values.width-=2*e,t.values.y+=i,t.values.height-=2*i}t.pointValues=(0,v.merge)(i,{x:i.x/this.axisRatio,y:100-i.y-i.height,width:i.width/this.axisRatio}),t.children.length&&this.calculateChildrenAreas(t,t.values)}let c=(t,e=[],i=!0)=>(t.children.forEach(t=>{i&&t.isLeaf?e.push(t.point):i||t.isLeaf||e.push(t.point),t.children.length&&c(t,e,i)}),e);if("leaf"===i.nodeSizeBy&&t===n&&this.hasOutsideDataLabels&&!c(n,void 0,!1).some(t=>(0,v.isNumber)(t.options.value))&&!(0,v.isNumber)(n.point?.options.value)){let i=c(n),s=i.map(t=>t.options.value||0),r=i.map(({node:{pointValues:t}})=>t?t.width*t.height:0),o=s.reduce((t,e)=>t+e,0),a=r.reduce((t,e)=>t+e,0)/o,l=0,h=0;i.forEach((t,e)=>{let i=s[e]?r[e]/s[e]:1,o=(0,v.clamp)(i/a,.8,1.4),n=1-o;t.value&&(r[e]<20&&(n*=r[e]/20),n>h&&(h=n),n<l&&(l=n),t.simulatedValue=(t.simulatedValue||t.value)/o)}),(l<-.05||h>.05)&&this.simulation<10?(this.simulation++,this.setTreeValues(t),e.val=t.val,this.calculateChildrenAreas(t,e)):(i.forEach(t=>{delete t.simulatedValue}),this.setTreeValues(t),this.simulation=0)}}createList(t){let e=this.chart,i=e.breadcrumbs,s=[];if(i){let i=0;s.push({level:i,levelOptions:e.series[0]});let r=t.target.nodeMap[t.newRootId],o=[];for(;r.parent||""===r.parent;)o.push(r),r=t.target.nodeMap[r.parent];for(let t of o.reverse())s.push({level:++i,levelOptions:t});s.length<=1&&(s.length=0)}return s}drawDataLabels(){let t=this.mapOptionsToLevel,e=this.points.filter(function(t){return t.node.visible||(0,v.defined)(t.dataLabel)}),i=(0,v.splat)(this.options.dataLabels||{})[0]?.padding,s=e.some(t=>(0,v.isNumber)(t.plotY));for(let r of e){let e={},o={style:e},a=t[r.node.level];if((!r.node.isLeaf&&!r.node.isGroup||r.node.isGroup&&r.node.level<=this.nodeMap[this.rootNode].level)&&(o.enabled=!1),a?.dataLabels&&((0,v.merge)(!0,o,(0,v.splat)(a.dataLabels)[0]),this.hasDataLabels=()=>!0),r.node.isLeaf?o.inside=!0:o.headers&&(o.verticalAlign="top"),r.shapeArgs&&s){let{height:t=0,width:s=0}=r.shapeArgs;if(s>32&&t>16&&r.shouldDraw()){let a=s-2*((0,v.splat)(o.padding)[0]||(0,v.splat)(i)[0]||0);e.width=`${a}px`,e.lineClamp??(e.lineClamp=Math.floor(t/16)),this.options.allowTraversingTree&&(e.visibility="inherit"),r.dataLabel?.attr({width:o.headers?a:void 0})}else e.width=`${s}px`,e.visibility="hidden"}r.dlOptions=(0,v.merge)(o,r.options.dataLabels,{zIndex:void 0}),delete r.dlOptions.zIndex}super.drawDataLabels(e)}drawPoints(t=this.points){let e=this.chart,i=e.renderer,s=e.styledMode,r=this.options,o=s?{}:r.shadow,a=r.borderRadius,l=e.pointCount<r.animationLimit,n=r.allowTraversingTree;for(let e of t){let t={},h={},d={},p="level-group-"+e.node.level,u=!!e.graphic,c=l&&u,g=e.shapeArgs;e.shouldDraw()&&(e.isInside=!0,a&&(h.r=a),(0,v.merge)(!0,c?t:h,u?g:{},s?{}:this.pointAttribs(e,e.selected?"select":void 0)),this.colorAttribs&&s&&(0,v.extend)(d,this.colorAttribs(e)),this[p]||(this[p]=i.g(p).attr({zIndex:-(e.node.level||0)}).add(this.group),this[p].survive=!0)),e.draw({animatableAttribs:t,attribs:h,css:d,group:this[p],imageUrl:e.imageUrl,renderer:i,shadow:o,shapeArgs:g,shapeType:e.shapeType}),n&&e.graphic&&(e.drillId=r.interactByLeaf?this.drillToByLeaf(e):this.drillToByGroup(e))}}drillToByGroup(t){return(!t.node.isLeaf||!!t.node.isGroup)&&t.id}drillToByLeaf(t){let{traverseToLeaf:e}=t.series.options,i=!1,s;if(t.node.parent!==this.rootNode&&t.node.isLeaf)if(e)i=t.id;else for(s=t.node;!i;)void 0!==s.parent&&(s=this.nodeMap[s.parent]),s.parent===this.rootNode&&(i=s.id);return i}drillToNode(t,e){(0,v.error)(32,!1,void 0,{"treemap.drillToNode":"use treemap.setRootNode"}),this.setRootNode(t,e)}drillUp(){let t=this.nodeMap[this.rootNode];t&&(0,v.isString)(t.parent)&&this.setRootNode(t.parent,!0,{trigger:"traverseUpButton"})}getExtremes(){let{dataMin:t,dataMax:e}=super.getExtremes(this.colorValueData);return this.valueMin=t,this.valueMax=e,super.getExtremes()}getListOfParents(t,e){let i=(0,v.isArray)(t)?t:[],s=(0,v.isArray)(e)?e:[],r=i.reduce(function(t,e,i){let s=(0,v.pick)(e.parent,"");return void 0===t[s]&&(t[s]=[]),t[s].push(i),t},{"":[]});for(let t of Object.keys(r)){let e=r[t];if(""!==t&&-1===s.indexOf(t)){for(let t of e)r[""].push(t);delete r[t]}}return r}getTree(){let t=this.data.map(function(t){return t.id});return this.parentList=this.getListOfParents(this.data,t),this.nodeMap={},this.nodeList=[],this.buildTree("",-1,0,this.parentList||{})}buildTree(t,e,i,s,r){let o=[],a=this.points[e],l=0,n;for(let e of s[t]||[])l=Math.max((n=this.buildTree(this.points[e].id,e,i+1,s,t)).height+1,l),o.push(n),this.is("treegraph")&&(n.visible=!0);let h=new this.NodeClass().init(t,e,o,l,i,this,r);for(let t of o)t.parentNode=h;return this.nodeMap[h.id]=h,this.nodeList.push(h),a&&(a.node=h,h.point=a,(0,v.defined)(a.options.x)||(a.x=i)),h}hasData(){return!!this.dataTable.rowCount}init(t,e){let i=this,s=(0,v.merge)(e.drillUpButton,e.breadcrumbs),r=(0,v.addEvent)(i,"setOptions",t=>{let e=t.userOptions;(0,v.defined)(e.allowDrillToNode)&&!(0,v.defined)(e.allowTraversingTree)&&(e.allowTraversingTree=e.allowDrillToNode,delete e.allowDrillToNode),(0,v.defined)(e.drillUpButton)&&!(0,v.defined)(e.traverseUpButton)&&(e.traverseUpButton=e.drillUpButton,delete e.drillUpButton);let i=(0,v.splat)(e.dataLabels||{});e.levels?.forEach(t=>{i.push.apply(i,(0,v.splat)(t.dataLabels||{}))}),this.hasOutsideDataLabels=i.some(t=>t.headers)});super.init(t,e),delete i.opacity,i.eventsToUnbind.push(r),i.options.allowTraversingTree&&(i.eventsToUnbind.push((0,v.addEvent)(i,"click",i.onClickDrillToNode)),i.eventsToUnbind.push((0,v.addEvent)(i,"setRootNode",function(t){let e=i.chart;e.breadcrumbs&&e.breadcrumbs.updateProperties(i.createList(t))})),i.eventsToUnbind.push((0,v.addEvent)(i,"update",function(t,e){let i=this.chart.breadcrumbs;i&&t.options.breadcrumbs&&i.update(t.options.breadcrumbs),this.hadOutsideDataLabels=this.hasOutsideDataLabels})),i.eventsToUnbind.push((0,v.addEvent)(i,"destroy",function(t){let e=this.chart;e.breadcrumbs&&!t.keepEventsForUpdate&&(e.breadcrumbs.destroy(),e.breadcrumbs=void 0)}))),t.breadcrumbs||(t.breadcrumbs=new O(t,s)),i.eventsToUnbind.push((0,v.addEvent)(t.breadcrumbs,"up",function(t){let e=this.level-t.newLevel;for(let t=0;t<e;t++)i.drillUp()}))}onClickDrillToNode(t){let e=t.point,i=e?.drillId;(0,v.isString)(i)&&(e.setState(""),this.setRootNode(i,!0,{trigger:"click"}))}pointAttribs(t,e){let i=(0,v.isObject)(this.mapOptionsToLevel)?this.mapOptionsToLevel:{},s=t?.node&&i[t.node.level]||{},r=this.options,o=e&&r.states&&r.states[e]||{},a=t?.node&&t.getClassName()||"",l={stroke:t&&t.borderColor||s.borderColor||o.borderColor||r.borderColor,"stroke-width":(0,v.pick)(t&&t.borderWidth,s.borderWidth,o.borderWidth,r.borderWidth),dashstyle:t?.borderDashStyle||s.borderDashStyle||o.borderDashStyle||r.borderDashStyle,fill:t?.color||this.color};return -1!==a.indexOf("highcharts-above-level")?(l.fill="none",l["stroke-width"]=0):-1!==a.indexOf("highcharts-internal-node-interactive")?(l["fill-opacity"]=o.opacity??r.opacity??1,l.cursor="pointer"):-1!==a.indexOf("highcharts-internal-node")?l.fill="none":e&&o.brightness&&(l.fill=$(l.fill).brighten(o.brightness).get()),l}setColorRecursive(t,e,i,s,r){let o=this?.chart,a=o?.options?.colors;if(t){let o=Q(t,{colors:a,index:s,mapOptionsToLevel:this.mapOptionsToLevel,parentColor:e,parentColorIndex:i,series:this,siblings:r}),l=this.points[t.i];l&&(l.color=o.color,l.colorIndex=o.colorIndex);let n=-1;for(let e of t.children||[])this.setColorRecursive(e,o.color,o.colorIndex,++n,t.children.length)}}setPointValues(){let t=this,{points:e,xAxis:i,yAxis:s}=t,r=t.chart.styledMode,o=e=>r?0:t.pointAttribs(e)["stroke-width"]||0;for(let t of e){let{pointValues:e,visible:r}=t.node;if(e&&r){let{height:r,width:a,x:l,y:n}=e,h=o(t),d=i.toPixels(l,!0),p=i.toPixels(l+a,!0),u=s.toPixels(n,!0),c=s.toPixels(n+r,!0),g=0===d?h/2:(0,v.crisp)(i.toPixels(l,!0),h,!0),b=p===i.len?i.len-h/2:(0,v.crisp)(i.toPixels(l+a,!0),h,!0),f=u===s.len?s.len-h/2:(0,v.crisp)(s.toPixels(n,!0),h,!0),m=0===c?h/2:(0,v.crisp)(s.toPixels(n+r,!0),h,!0),x={x:Math.min(g,b),y:Math.min(f,m),width:Math.abs(b-g),height:Math.abs(m-f)};t.plotX=x.x+x.width/2,t.plotY=x.y+x.height/2,t.shapeArgs=x}else delete t.plotX,delete t.plotY}}setRootNode(t,e,i){let s=(0,v.extend)({newRootId:t,previousRootId:this.rootNode,redraw:(0,v.pick)(e,!0),series:this},i);(0,v.fireEvent)(this,"setRootNode",s,function(t){let e=t.series;e.idPreviousRoot=t.previousRootId,e.rootNode=t.newRootId,e.isDirty=!0,t.redraw&&e.chart.redraw()})}setState(t){this.options.inactiveOtherPoints=!0,super.setState(t,!1),this.options.inactiveOtherPoints=!1}setTreeValues(t){let e=this.options,i=this.rootNode,s=this.nodeMap[i],r="boolean"!=typeof e.levelIsConstant||e.levelIsConstant,o=[],a=this.points[t.i],l=0;for(let e of t.children)e=this.setTreeValues(e),o.push(e),e.ignore||(l+=e.val);(0,v.stableSort)(o,(t,e)=>(t.sortIndex||0)-(e.sortIndex||0));let n=(0,v.pick)(a?.simulatedValue,a?.options.value,l);return a&&(a.value=n),a?.isGroup&&e.cluster?.reductionFactor&&(n/=e.cluster.reductionFactor),t.parentNode?.point?.isGroup&&this.rootNode!==t.parent&&(t.visible=!1),(0,v.extend)(t,{children:o,childrenTotal:l,ignore:!((0,v.pick)(a?.visible,!0)&&n>0),isLeaf:t.visible&&!("treegraph"===this.type?o.length>0:l),isGroup:a?.isGroup,levelDynamic:t.level-(r?0:s.level),name:(0,v.pick)(a?.name,""),sortIndex:(0,v.pick)(a?.sortIndex,-n),val:n}),t}sliceAndDice(t,e){return this.algorithmFill(!0,t,e)}squarified(t,e){return this.algorithmLowAspectRatio(!0,t,e)}strip(t,e){return this.algorithmLowAspectRatio(!1,t,e)}stripes(t,e){return this.algorithmFill(!1,t,e)}translate(t){let e=this,i=e.options,s=!t,r=te(e),o,a,l,n;t||r.startsWith("highcharts-grouped-treemap-points-")||((this.points||[]).forEach(t=>{t.isGroup&&t.destroy()}),super.translate(),t=e.getTree()),e.tree=t=t||e.tree,o=e.nodeMap[r],""===r||o||(e.setRootNode("",!1),r=e.rootNode,o=e.nodeMap[r]),o.point?.isGroup||(e.mapOptionsToLevel=tt({from:o.level+1,levels:i.levels,to:t.height,defaults:{levelIsConstant:e.options.levelIsConstant,colorByPoint:i.colorByPoint}})),Y.recursive(e.nodeMap[e.rootNode],t=>{let i=t.parent,s=!1;return t.visible=!0,(i||""===i)&&(s=e.nodeMap[i]),s}),Y.recursive(e.nodeMap[e.rootNode].children,t=>{let e=!1;for(let i of t)i.visible=!0,i.children.length&&(e=(e||[]).concat(i.children));return e}),e.setTreeValues(t),e.axisRatio=e.xAxis.len/e.yAxis.len,e.nodeMap[""].pointValues=a={x:0,y:0,width:100,height:100},e.nodeMap[""].values=l=(0,v.merge)(a,{width:a.width*e.axisRatio,direction:+("vertical"!==i.layoutStartingDirection),val:t.val}),(this.hasOutsideDataLabels||this.hadOutsideDataLabels)&&this.drawDataLabels(),e.calculateChildrenAreas(t,l),e.colorAxis||i.colorByPoint||e.setColorRecursive(e.tree),i.allowTraversingTree&&o.pointValues&&(n=o.pointValues,e.xAxis.setExtremes(n.x,n.x+n.width,!1),e.yAxis.setExtremes(n.y,n.y+n.height,!1),e.xAxis.setScale(),e.yAxis.setScale()),e.setPointValues(),s&&e.applyTreeGrouping()}}tr.defaultOptions=(0,v.merge)(J.defaultOptions,_),(0,v.extend)(tr.prototype,{buildKDTree:K,colorAttribs:D.seriesMembers.colorAttribs,colorKey:"colorValue",directTouch:!0,getExtremesFromAll:!0,getSymbol:K,optionalAxis:"colorAxis",parallelArrays:["x","y","value","colorValue"],pointArrayMap:["value","colorValue"],pointClass:F,NodeClass:V,trackerGroups:["group","dataLabelsGroup"],utils:Y}),D.compose(tr),M().registerSeriesType("treemap",tr);let{deg2rad:to}=b();(a=d||(d={})).getCenter=function(){let t=this.options,e=this.chart,i=2*(t.slicedOffset||0),s=e.plotWidth-2*i,r=e.plotHeight-2*i,o=t.center,a=Math.min(s,r),l=t.thickness,n,h=t.size,d=t.innerSize||0,p,u;"string"==typeof h&&(h=parseFloat(h)),"string"==typeof d&&(d=parseFloat(d));let c=[(0,v.pick)(o?.[0],"50%"),(0,v.pick)(o?.[1],"50%"),(0,v.pick)(h&&h<0?void 0:t.size,"100%"),(0,v.pick)(d&&d<0?void 0:t.innerSize||0,"0%")];for(p=0;p<4;++p)u=c[p],n=p<2||2===p&&/%$/.test(u),c[p]=(0,v.relativeLength)(u,[s,r,a,c[2]][p])+(n?i:0);return c[3]>c[2]&&(c[3]=c[2]),(0,v.isNumber)(l)&&2*l<c[2]&&l>0&&(c[3]=c[2]-2*l),(0,v.fireEvent)(this,"afterGetCenter",{positions:c}),c},a.getStartAndEndRadians=function(t,e){let i=(0,v.isNumber)(t)?t:0,s=(0,v.isNumber)(e)&&e>i&&e-i<360?e:i+360;return{start:to*(i+-90),end:to*(s+-90)}};let ta=d,{series:{prototype:{pointClass:tl}},seriesTypes:{treemap:{prototype:{pointClass:tn}}}}=M();class th extends tn{getDataLabelPath(t){let e=this.series.chart.renderer,i=this.shapeExisting,s=i.r+(0,v.pInt)(t.options?.distance||0),r=i.start,o=i.end,a=r+(o-r)/2,l=a<0&&a>-Math.PI||a>Math.PI,n;return r===-Math.PI/2&&(0,v.correctFloat)(o)===(0,v.correctFloat)(1.5*Math.PI)&&(r=-Math.PI+Math.PI/360,o=-Math.PI/360,l=!0),o-r>Math.PI&&(l=!1,n=!0,o-r>2*Math.PI-.01&&(r+=.01,o-=.01)),this.dataLabelPath&&(this.dataLabelPath=this.dataLabelPath.destroy()),this.dataLabelPath=e.arc({open:!0,longArc:+!!n}).attr({start:l?r:o,end:l?o:r,clockwise:+l,x:i.x,y:i.y,r:(s+i.innerR)/2}).add(e.defs),this.dataLabelPath}isValid(){return!0}}(0,v.extend)(th.prototype,{getClassName:tl.prototype.getClassName,haloPath:tl.prototype.haloPath,setState:tl.prototype.setState});let{seriesTypes:{treemap:td}}=M();function tp(t,e){let i=[];if((0,v.isNumber)(t)&&(0,v.isNumber)(e)&&t<=e)for(let s=t;s<=e;s++)i.push(s);return i}let tu={calculateLevelSizes:function(t,e){let i=(0,v.isObject)(e)?e:{},s,r=0,o,a,l,n;if((0,v.isObject)(t)){for(let e of(s=(0,v.merge)({},t),a=tp((0,v.isNumber)(i.from)?i.from:0,(0,v.isNumber)(i.to)?i.to:0),l=Object.keys(s).filter(t=>-1===a.indexOf(+t)),o=n=(0,v.isNumber)(i.diffRadius)?i.diffRadius:0,a)){let t=s[e],i=t.levelSize.unit,a=t.levelSize.value;"weight"===i?r+=a:"percentage"===i?(t.levelSize={unit:"pixels",value:a/100*o},n-=t.levelSize.value):"pixels"===i&&(n-=a)}for(let t of a){let e=s[t];if("weight"===e.levelSize.unit){let i=e.levelSize.value;s[t].levelSize={unit:"pixels",value:i/r*n}}}for(let t of l)s[t].levelSize={value:0,unit:"pixels"}}return s},getLevelFromAndTo:function({level:t,height:e}){return{from:t>0?t:1,to:t+e}},range:tp,recursive:td.prototype.utils.recursive},{composed:tc,deg2rad:tg}=b(),{getCenter:tv,getStartAndEndRadians:tb}=ta,{noop:tf}=b(),{column:tm,treemap:tx}=M().seriesTypes,{getColor:ty,getLevelOptions:tL,setTreeValues:tP,updateRootId:tT}=X;l=I(),(0,v.pushUnique)(tc,"TextPath")&&((0,v.addEvent)(l,"afterGetBBox",function(t){let e=t.bBox,i=this.element?.querySelector("textPath");if(i){let t=[],{b:s,h:r}=this.renderer.fontMetrics(this.element),o=r-s,a=RegExp('(<tspan>|<tspan(?!\\sclass="highcharts-br")[^>]*>|<\\/tspan>)',"g"),l=i.innerHTML.replace(a,"").split(/<tspan class="highcharts-br"[^>]*>/),n=l.length,h=(t,e)=>{let{x:r,y:a}=e,l=(i.getRotationOfChar(t)-90)*tg,n=Math.cos(l),h=Math.sin(l);return[[r-o*n,a-o*h],[r+s*n,a+s*h]]};for(let e=0,s=0;s<n;s++){let r=l[s].length;for(let o=0;o<r;o+=5)try{let r=e+o+s,[a,l]=h(r,i.getStartPositionOfChar(r));0===o?(t.push(l),t.push(a)):(0===s&&t.unshift(l),s===n-1&&t.push(a))}catch{break}e+=r-1;try{let r=e+s,o=i.getEndPositionOfChar(r),[a,l]=h(r,o);t.unshift(l),t.unshift(a)}catch{break}}t.length&&t.push(t[0].slice()),e.polygon=t}return e}),(0,v.addEvent)(l,"beforeAddingDataLabel",function(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()))}),l.prototype.setTextPath=l.prototype.setTextPath??function(t,e){let i=this.renderer.url,s=this.text||this,r=s.textPath,{attributes:o,enabled:a}=(0,v.merge)({enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},e);if(t=t||r&&r.path,r?.undo(),t&&a){let e=(0,v.addEvent)(s,"afterModifyTree",e=>{if(t&&a){let r=t.attr("id");r||t.attr("id",r=(0,v.uniqueKey)());let a={x:0,y:0};(0,v.defined)(o.dx)&&(a.dx=o.dx,delete o.dx),(0,v.defined)(o.dy)&&(a.dy=o.dy,delete o.dy),s.attr(a),this.attr({transform:""}),this.box&&(this.box=this.box.destroy());let l=e.nodes.slice(0);e.nodes.length=0,e.nodes[0]={tagName:"textPath",attributes:(0,v.extend)(o,{"text-anchor":o.textAnchor,href:`${i}#${r}`}),children:l}}});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});let tw=180/Math.PI,tA=function(t,e,i,s){return{x:t+Math.cos(i)*s,y:e+Math.sin(i)*s}};function tO(t,e){let i=e.mapIdToNode,s=t.parent,r=s?i[s]:void 0,o=e.series,a=o.chart,l=o.points[t.i],n=ty(t,{colors:o.options.colors||a&&a.options.colors,colorIndex:o.colorIndex,index:e.index,mapOptionsToLevel:e.mapOptionsToLevel,parentColor:r&&r.color,parentColorIndex:r&&r.colorIndex,series:e.series,siblings:e.siblings});return t.color=n.color,t.colorIndex=n.colorIndex,l&&(l.color=t.color,l.colorIndex=t.colorIndex,t.sliced=t.id!==e.idRoot&&l.sliced),t}class tS extends tx{alignDataLabel(t,e,i){if(!i.textPath||!i.textPath.enabled)return e.placed=!1,super.alignDataLabel.apply(this,arguments)}animate(t){let e,i=this.chart,s=[i.plotWidth/2,i.plotHeight/2],r=i.plotLeft,o=i.plotTop,a=this.group;t?(e={translateX:s[0]+r,translateY:s[1]+o,scaleX:.001,scaleY:.001,rotation:10,opacity:.01},a.attr(e)):(e={translateX:r,translateY:o,scaleX:1,scaleY:1,rotation:0,opacity:1},a.animate(e,this.options.animation))}drawPoints(){let t=this,e=t.mapOptionsToLevel,i=t.shapeRoot,s=t.group,r=t.hasRendered,o=t.rootNode,a=t.idPreviousRoot,l=t.nodeMap,n=l[a],h=n&&n.shapeArgs,d=t.points,p=t.startAndEndRadians,u=t.chart,c=u&&u.options&&u.options.chart||{},g="boolean"!=typeof c.animation||c.animation,b=t.center,f={x:b[0],y:b[1]},m=b[3]/2,x=t.chart.renderer,y=!!(g&&r&&o!==a&&t.dataLabelsGroup),L,P=!1,T=!1;for(let n of(y&&(t.dataLabelsGroup.attr({opacity:0}),L=function(){P=!0,t.dataLabelsGroup.animate({opacity:1,visibility:"inherit"})}),d)){let d,c,b=n.node,y=e[b.level],P=n.shapeExisting||{},w=b.shapeArgs||{},A=!!(b.visible&&b.shapeArgs);w.borderRadius=t.options.borderRadius,d=r&&g?function(t,e){let i=e.point,s=e.radians,r=e.innerR,o=e.idRoot,a=e.idPreviousRoot,l=e.shapeExisting,n=e.shapeRoot,h=e.shapePreviousRoot,d=e.visible,p={},u={end:t.end,start:t.start,innerR:t.innerR,r:t.r,x:t.x,y:t.y};return d?!i.graphic&&h&&((p=o===i.id?{start:s.start,end:s.end}:h.end<=t.start?{start:s.end,end:s.end}:{start:s.start,end:s.start}).innerR=p.r=r):i.graphic&&(a===i.id?u={innerR:r,r:r}:n&&(u=n.end<=l.start?{innerR:r,r:r,start:s.end,end:s.end}:{innerR:r,r:r,start:s.start,end:s.start})),{from:p,to:u}}(w,{center:f,point:n,radians:p,innerR:m,idRoot:o,idPreviousRoot:a,shapeExisting:P,shapeRoot:i,shapePreviousRoot:h,visible:A}):{to:w,from:{}},(0,v.extend)(n,{shapeExisting:w,tooltipPos:[w.plotX,w.plotY],drillId:function(t,e,i){let s;return t.node.isLeaf||(s=e===t.id?i[e].parent:t.id),s}(n,o,l),name:""+(n.name||n.id||n.index),plotX:w.plotX,plotY:w.plotY,value:b.val,isInside:A,isNull:!A}),n.dlOptions={...function(t){let e=t.point,i=(0,v.isObject)(t.shapeArgs)?t.shapeArgs:{},{end:s=0,radius:r=0,start:o=0}=i,a=(0,v.isObject)(t.optionsPoint)?t.optionsPoint.dataLabels:{},l=(0,v.splat)((0,v.isObject)(t.level)?t.level.dataLabels:{})[0],n=(0,v.merge)(l,a),h=n.style=n.style||{},d=(0,v.splat)(n.padding||0),p=d[3%d.length],u=d[1%d.length],{innerArcLength:c=0,outerArcLength:g=0}=e,b,f,m=n.rotationMode,x=(0,v.defined)(h.width)?parseInt(h.width||"0",10):void 0;return(0,v.isNumber)(n.rotation)||(("auto"===m||"circular"===m)&&(n.useHTML&&"circular"===m&&(m="auto"),c<1&&g>r?(b=0,e.dataLabelPath&&"circular"===m&&(n.textPath={enabled:!0}),s-o<Math.PI&&(x=.7*r)):c>1&&g>1.5*r?"circular"===m?n.textPath={enabled:!0,attributes:{dy:5}}:m="parallel":(e.dataLabel?.textPath&&"circular"===m&&(n.textPath={enabled:!1}),m="perpendicular")),"auto"!==m&&"circular"!==m&&(e.dataLabel?.textPath&&(n.textPath={enabled:!1}),b=s-(s-o)/2),"parallel"===m?x=Math.min(2.5*r,(g+c)/2):!(0,v.defined)(x)&&r&&(x=1===e.node.level?2*r:r),"perpendicular"===m&&(g<16?x=1:i.radius&&(h.lineClamp=Math.floor(c/16)||1,x=r-(c<16?(16-c)/(g-c)*r:0))),x=Math.max((x||0)-p-u,1),f=(b||0)*tw%180,"parallel"===m&&(f-=90),f>90?f-=180:f<-90&&(f+=180),n.rotation=f),n.textPath&&(0===e.shapeExisting.innerR&&n.textPath.enabled?(n.rotation=0,n.textPath.enabled=!1,x=Math.max(2*e.shapeExisting.r-p-u,1)):e.dlOptions?.textPath&&!e.dlOptions.textPath.enabled&&"circular"===m&&(n.textPath.enabled=!0),n.textPath.enabled&&(n.rotation=0,x=Math.max((g+c)/2-p-u,1),h.whiteSpace="nowrap")),h.width=x+"px",n}({point:n,level:y,optionsPoint:n.options,shapeArgs:w}),zIndex:void 0},delete n.dlOptions.zIndex,!T&&A&&(T=!0,c=L),n.draw({animatableAttribs:d.to,attribs:(0,v.extend)(d.from,!u.styledMode&&t.pointAttribs(n,n.selected&&"select")),onComplete:c,group:s,renderer:x,shapeType:"arc",shapeArgs:w})}y&&T?(t.hasRendered=!1,t.options.dataLabels.defer=!0,tm.prototype.drawDataLabels.call(t),t.hasRendered=!0,P&&L?.()):tm.prototype.drawDataLabels.call(t),t.idPreviousRoot=o}layoutAlgorithm(t,e,i){let s=t.start,r=t.end-s,o=t.val,a=t.x,l=t.y,n=i&&(0,v.isObject)(i.levelSize)&&(0,v.isNumber)(i.levelSize.value)?i.levelSize.value:0,h=t.r,d=h+n,p=i&&(0,v.isNumber)(i.slicedOffset)?i.slicedOffset:0;return(e||[]).reduce((t,e)=>{let i=1/o*e.val*r,u=tA(a,l,s+i/2,p),c={x:e.sliced?u.x:a,y:e.sliced?u.y:l,innerR:h,r:d,radius:n,start:s,end:s+i};return t.push(c),s=c.end,t},[])}setRootNode(t,e,i){if(1===this.nodeMap[t].level&&1===this.nodeList.filter(t=>1===t.level).length){if(""===this.idPreviousRoot)return;t=""}super.setRootNode(t,e,i)}setShapeArgs(t,e,i){let s=i[t.level+1],r=t.children.filter(function(t){return t.visible}),o=[];o=this.layoutAlgorithm(e,r,s);let a=-1;for(let t of r){let e=o[++a],s=e.start+(e.end-e.start)/2,r=e.innerR+(e.r-e.innerR)/2,l=e.end-e.start,n=0===e.innerR&&l>6.28?{x:e.x,y:e.y}:tA(e.x,e.y,s,r),h=t.val?t.childrenTotal>t.val?t.childrenTotal:t.val:t.childrenTotal;this.points[t.i]&&(this.points[t.i].innerArcLength=l*e.innerR,this.points[t.i].outerArcLength=l*e.r),t.shapeArgs=(0,v.merge)(e,{plotX:n.x,plotY:n.y}),t.values=(0,v.merge)(e,{val:h}),t.children.length&&this.setShapeArgs(t,t.values,i)}}translate(){let t=this.options,e=this.center=this.getCenter(),i=this.startAndEndRadians=tb(t.startAngle,t.endAngle),s=e[3]/2,r=e[2]/2,o=tT(this),a=this.nodeMap,l,n=a&&a[o],h={};this.shapeRoot=n&&n.shapeArgs,this.generatePoints(),(0,v.fireEvent)(this,"afterTranslate");let d=this.tree=this.getTree();n=(a=this.nodeMap)[o];let p=a[(0,v.isString)(n.parent)?n.parent:""],{from:u,to:c}=tu.getLevelFromAndTo(n);l=tL({from:u,levels:this.options.levels,to:c,defaults:{colorByPoint:t.colorByPoint,dataLabels:t.dataLabels,levelIsConstant:t.levelIsConstant,levelSize:t.levelSize,slicedOffset:t.slicedOffset}}),l=tu.calculateLevelSizes(l,{diffRadius:r-s,from:u,to:c}),tP(d,{before:tO,idRoot:o,levelIsConstant:t.levelIsConstant,mapOptionsToLevel:l,mapIdToNode:a,points:this.points,series:this});let g=a[""].shapeArgs={end:i.end,r:s,start:i.start,val:n.val,x:e[0],y:e[1]};for(let t of(this.setShapeArgs(p,g,l),this.mapOptionsToLevel=l,this.points))h[t.id]&&(0,v.error)(31,!1,this.chart),h[t.id]=!0}}tS.defaultOptions=(0,v.merge)(tx.defaultOptions,{center:["50%","50%"],clip:!1,colorByPoint:!1,opacity:1,dataLabels:{allowOverlap:!0,defer:!0,rotationMode:"circular",style:{textOverflow:"ellipsis"}},rootId:void 0,levelIsConstant:!0,levelSize:{value:1,unit:"weight"},slicedOffset:10}),(0,v.extend)(tS.prototype,{axisTypes:[],drawDataLabels:tf,getCenter:tv,isCartesian:!1,onPointSupported:!0,pointAttribs:tm.prototype.pointAttribs,pointClass:th,NodeClass:class extends V{},utils:tu}),M().registerSeriesType("sunburst",tS);let tR=b();tR.Breadcrumbs=tR.Breadcrumbs||O,tR.Breadcrumbs.compose(tR.Chart,tR.defaultOptions),tr.compose(tR.Series);let tC=b();return g.default})());
11
+ */function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(t._Highcharts,t._Highcharts.Templating,t._Highcharts.Color,t._Highcharts.SeriesRegistry,t._Highcharts.SVGElement,t._Highcharts.Series):"function"==typeof define&&define.amd?define("highcharts/modules/sunburst",["highcharts/highcharts"],function(t){return e(t,t.Templating,t.Color,t.SeriesRegistry,t.SVGElement,t.Series)}):"object"==typeof exports?exports["highcharts/modules/sunburst"]=e(t._Highcharts,t._Highcharts.Templating,t._Highcharts.Color,t._Highcharts.SeriesRegistry,t._Highcharts.SVGElement,t._Highcharts.Series):t.Highcharts=e(t.Highcharts,t.Highcharts.Templating,t.Highcharts.Color,t.Highcharts.SeriesRegistry,t.Highcharts.SVGElement,t.Highcharts.Series)}("u"<typeof window?this:window,(t,e,i,s,r,o)=>(()=>{"use strict";var a,l,n,h,d,p={620(t){t.exports=i},28(t){t.exports=r},820(t){t.exports=o},512(t){t.exports=s},984(t){t.exports=e},944(e){e.exports=t}};let u={};function c(t){let e=u[t];if(void 0!==e)return e.exports;let i=u[t]={exports:{}};return p[t](i,i.exports,c),i.exports}c.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return c.d(e,{a:e}),e},c.d=(t,e)=>{if(Array.isArray(e))for(var i=0;i<e.length;){var s=e[i++],r=e[i++];c.o(t,s)?0===r&&i++:0===r?Object.defineProperty(t,s,{enumerable:!0,value:e[i++]}):Object.defineProperty(t,s,{enumerable:!0,get:r})}else for(var s in e)c.o(e,s)&&!c.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},c.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let g={};c.d(g,{default:()=>tC});var v=c(944),b=c.n(v);let f={mainBreadcrumb:"Main"};var m=c(984);let{format:x}=c.n(m)(),{composed:y}=b();function L(){if(this.breadcrumbs){let t=this.resetZoomButton&&this.resetZoomButton.getBBox(),e=this.breadcrumbs.options;t&&"right"===e.position.align&&"plotBox"===e.relativeTo&&this.breadcrumbs.alignBreadcrumbsGroup(-t.width-e.buttonSpacing)}}function P(){this.breadcrumbs&&(this.breadcrumbs.destroy(),this.breadcrumbs=void 0)}function T(){let t=this.breadcrumbs;if(t&&!t.options.floating&&t.level){let e=t.options,i=e.buttonTheme,s=(i.height||0)+2*(i.padding||0)+e.buttonSpacing,r=e.position.verticalAlign;"bottom"===r?(this.marginBottom=(this.marginBottom||0)+s,t.yOffset=s):"middle"!==r?(this.plotTop+=s,t.yOffset=-s):t.yOffset=void 0}}function w(){this.breadcrumbs&&this.breadcrumbs.redraw()}function A(t){!0===t.resetSelection&&this.breadcrumbs&&this.breadcrumbs.alignBreadcrumbsGroup()}class O{static compose(t,e){(0,v.pushUnique)(y,"Breadcrumbs")&&((0,v.addEvent)(t,"destroy",P),(0,v.addEvent)(t,"afterShowResetZoom",L),(0,v.addEvent)(t,"getMargins",T),(0,v.addEvent)(t,"redraw",w),(0,v.addEvent)(t,"selection",A),(0,v.extend)(e.lang,f))}constructor(t,e){this.elementList={},this.isDirty=!0,this.level=0,this.list=[];const i=(0,v.merge)(t.options.drilldown&&t.options.drilldown.drillUpButton,O.defaultOptions,t.options.navigation&&t.options.navigation.breadcrumbs,e);this.chart=t,this.options=i||{}}updateProperties(t){this.setList(t),this.setLevel(),this.isDirty=!0}setList(t){this.list=t}setLevel(){this.level=this.list.length&&this.list.length-1}getLevel(){return this.level}getButtonText(t){let e=this.chart,i=this.options,s=e.options.lang,r=i.format??(i.showFullPath?"{level.name}":"← {level.name}"),o=s&&(s.drillUpText??s.mainBreadcrumb),a=i.formatter&&i.formatter(t)||x(r,{level:t.levelOptions},e)||"";return((0,v.isString)(a)&&!a.length||"← "===a)&&(0,v.defined)(o)&&(a=i.showFullPath?o:"← "+o),a}redraw(){this.isDirty&&this.render(),this.group&&this.group.align(),this.isDirty=!1}render(){let t=this.chart,e=this.options;!this.group&&e&&(this.group=t.renderer.g("breadcrumbs-group").addClass("highcharts-no-tooltip highcharts-breadcrumbs").attr({zIndex:e.zIndex}).add()),e.showFullPath?this.renderFullPathButtons():this.renderSingleButton(),this.alignBreadcrumbsGroup()}renderFullPathButtons(){this.destroySingleButton(),this.resetElementListState(),this.updateListElements(),this.destroyListElements()}renderSingleButton(){let t=this.chart,e=this.list,i=this.options.buttonSpacing;this.destroyListElements();let s=this.group?this.group.getBBox().width:i,r=e[e.length-2];!t.drillUpButton&&this.level>0?t.drillUpButton=this.renderButton(r,s,i):t.drillUpButton&&(this.level>0?this.updateSingleButton():this.destroySingleButton())}alignBreadcrumbsGroup(t){if(this.group){let e=this.options,i=e.buttonTheme,s=e.position,r="chart"===e.relativeTo||"spacingBox"===e.relativeTo?void 0:"plotBox",o=this.group.getBBox(),a=2*(i.padding||0)+e.buttonSpacing;s.width=o.width+a,s.height=o.height+a;let l=(0,v.merge)(s);t&&(l.x+=t),this.options.rtl&&(l.x+=s.width),l.y=l.y??this.yOffset??0,this.group.align(l,!0,r)}}renderButton(t,e,i){let s=this,r=this.chart,o=s.options,a=(0,v.merge)(o.buttonTheme),l=r.renderer.button(s.getButtonText(t),e,i,function(e){let i,r=o.events&&o.events.click;r&&(i=r.call(s,e,t,s)),!1!==i&&(o.showFullPath?e.newLevel=t.level:e.newLevel=s.level-1,(0,v.fireEvent)(s,"up",e))},a).addClass("highcharts-breadcrumbs-button").add(s.group);return r.styledMode||l.attr(o.style),l}renderSeparator(t,e){let i=this.chart,s=this.options.separator,r=i.renderer.label(s.text,t,e,void 0,void 0,void 0,!1).addClass("highcharts-breadcrumbs-separator").add(this.group);return i.styledMode||r.css(s.style),r}update(t){(0,v.merge)(!0,this.options,t),this.destroy(),this.isDirty=!0}updateSingleButton(){let t=this.chart,e=this.list[this.level-1];t.drillUpButton&&t.drillUpButton.attr({text:this.getButtonText(e)})}destroy(){this.destroySingleButton(),this.destroyListElements(!0),this.group&&this.group.destroy(),this.group=void 0}destroyListElements(t){let e=this.elementList;(0,v.objectEach)(e,(i,s)=>{(t||!e[s].updated)&&((i=e[s]).button&&i.button.destroy(),i.separator&&i.separator.destroy(),delete i.button,delete i.separator,delete e[s])}),t&&(this.elementList={})}destroySingleButton(){this.chart.drillUpButton&&(this.chart.drillUpButton.destroy(),this.chart.drillUpButton=void 0)}resetElementListState(){(0,v.objectEach)(this.elementList,t=>{t.updated=!1})}updateListElements(){let t=this.elementList,e=this.options.buttonSpacing,i=this.list,s=this.options.rtl,r=s?-1:1,o=function(t,e){return r*t.getBBox().width+r*e},a=function(t,e,i){t.translate(e-t.getBBox().width,i)},l=this.group?o(this.group,e):e,n,h;for(let d=0,p=i.length;d<p;++d){let u,c,g=d===p-1;t[(h=i[d]).level]?(u=(n=t[h.level]).button,n.separator||g?n.separator&&g&&(n.separator.destroy(),delete n.separator):(l+=r*e,n.separator=this.renderSeparator(l,e),s&&a(n.separator,l,e),l+=o(n.separator,e)),t[h.level].updated=!0):(u=this.renderButton(h,l,e),s&&a(u,l,e),l+=o(u,e),g||(c=this.renderSeparator(l,e),s&&a(c,l,e),l+=o(c,e)),t[h.level]={button:u,separator:c,updated:!0}),u&&u.setState(2*!!g)}}}O.defaultOptions={buttonSpacing:5,buttonTheme:{fill:"none",height:18,padding:2,"stroke-width":0,zIndex:7,states:{select:{fill:"none"}},style:{color:"var(--highcharts-highlight-color-80)"}},floating:!1,format:void 0,relativeTo:"plotBox",rtl:!1,position:{align:"left",verticalAlign:"top",x:0,y:void 0},separator:{text:"/",style:{color:"var(--highcharts-neutral-color-60)",fontSize:"0.8em"}},showFullPath:!0,style:{},useHTML:!1,zIndex:7};var S=c(620),R=c.n(S),C=c(512),M=c.n(C),B=c(28),I=c.n(B);let{column:{prototype:N}}=M().seriesTypes;var E=n||(n={});function D(t){let e=this.series,i=e.chart.renderer;this.moveToTopOnHover&&this.graphic&&(e.stateMarkerGraphic||(e.stateMarkerGraphic=new(I())(i,"use").css({pointerEvents:"none"}).add(this.graphic.parentGroup)),t?.state==="hover"?(this.graphic.attr({id:this.id}),e.stateMarkerGraphic.attr({href:`${i.url}#${this.id}`,visibility:"visible"})):e.stateMarkerGraphic.attr({href:""}))}E.pointMembers={dataLabelOnNull:!0,moveToTopOnHover:!0,isValid:function(){return null!==this.value&&this.value!==1/0&&this.value!==-1/0&&(void 0===this.value||!isNaN(this.value))}},E.seriesMembers={colorKey:"value",axisTypes:["xAxis","yAxis","colorAxis"],parallelArrays:["x","y","value"],pointArrayMap:["value"],trackerGroups:["group","markerGroup","dataLabelsGroup"],colorAttribs:function(t){let e={};return(0,v.defined)(t.color)&&(!t.state||"normal"===t.state)&&(e[this.colorProp||"fill"]=t.color),e},pointAttribs:N.pointAttribs},E.compose=function(t){let e=t.prototype.pointClass;return(0,v.addEvent)(e,"afterSetState",D),t};let H=n;var G=c(820),z=c.n(G);let V=class{constructor(t,e,i,s){this.height=t,this.width=e,this.plot=s,this.direction=i,this.startDirection=i,this.total=0,this.nW=0,this.lW=0,this.nH=0,this.lH=0,this.elArr=[],this.lP={total:0,lH:0,nH:0,lW:0,nW:0,nR:0,lR:0,aspectRatio:function(t,e){return Math.max(t/e,e/t)}}}addElement(t){this.lP.total=this.elArr[this.elArr.length-1],this.total=this.total+t,0===this.direction?(this.lW=this.nW,this.lP.lH=this.lP.total/this.lW,this.lP.lR=this.lP.aspectRatio(this.lW,this.lP.lH),this.nW=this.total/this.height,this.lP.nH=this.lP.total/this.nW,this.lP.nR=this.lP.aspectRatio(this.nW,this.lP.nH)):(this.lH=this.nH,this.lP.lW=this.lP.total/this.lH,this.lP.lR=this.lP.aspectRatio(this.lP.lW,this.lH),this.nH=this.total/this.width,this.lP.nW=this.lP.total/this.nH,this.lP.nR=this.lP.aspectRatio(this.lP.nW,this.nH)),this.elArr.push(t)}reset(){this.nW=0,this.lW=0,this.elArr=[],this.total=0}},k=class{constructor(){this.childrenTotal=0,this.visible=!1}init(t,e,i,s,r,o,a){return this.id=t,this.i=e,this.children=i,this.height=s,this.level=r,this.series=o,this.parent=a,this}},U=function(t,e){let{animatableAttribs:i,onComplete:s,css:r,renderer:o}=e,a=t.series&&t.series.chart.hasRendered?void 0:t.series&&t.series.options.animation,l=t.graphic;if(e.attribs={...e.attribs,class:t.getClassName()},t.shouldDraw())l||(t.graphic=l="text"===e.shapeType?o.text():"image"===e.shapeType?o.image(e.imageUrl||"").attr(e.shapeArgs||{}):o[e.shapeType](e.shapeArgs||{}),l.add(e.group)),r&&l.css(r),l.attr(e.attribs).animate(i,!e.isNew&&a,s);else if(l){let e=()=>{t.graphic=l=l&&l.destroy(),"function"==typeof s&&s()};Object.keys(i).length?l.animate(i,void 0,()=>e()):e()}},{pie:{prototype:{pointClass:W}},scatter:{prototype:{pointClass:j}}}=M().seriesTypes;class F extends j{constructor(){super(...arguments),this.groupedPointsAmount=0,this.shapeType="rect"}draw(t){U(this,t)}getClassName(){let t=this.series,e=t.options,i=super.getClassName();return this.node.level<=t.nodeMap[t.rootNode].level&&this.node.children.length?i+=" highcharts-above-level":this.node.isGroup||this.node.isLeaf||t.nodeMap[t.rootNode].isGroup||(e.interactByLeaf??!e.allowTraversingTree)?this.node.isGroup||this.node.isLeaf||t.nodeMap[t.rootNode].isGroup||(i+=" highcharts-internal-node"):i+=" highcharts-internal-node-interactive",i}isValid(){return!!(this.id||(0,v.isNumber)(this.value))}setState(t){super.setState.apply(this,arguments),this.graphic&&this.graphic.attr({zIndex:+("hover"===t)})}shouldDraw(){return(0,v.isNumber)(this.plotY)&&null!==this.y}}(0,v.extend)(F.prototype,{setVisible:W.prototype.setVisible});let _={allowTraversingTree:!1,animationLimit:250,borderRadius:0,showInLegend:!1,marker:void 0,colorByPoint:!1,dataLabels:{enabled:!0,formatter:function(){let t=this&&this.point?this.point:{};return(0,v.isString)(t.name)?t.name:""},headers:!1,inside:!0,padding:2,verticalAlign:"middle",style:{textOverflow:"ellipsis"}},tooltip:{headerFormat:"",pointFormat:"<b>{point.name}</b>: {point.value}<br/>",clusterFormat:"+ {point.groupedPointsAmount} more...<br/>"},ignoreHiddenPoint:!0,layoutAlgorithm:"sliceAndDice",layoutStartingDirection:"vertical",alternateStartingDirection:!1,levelIsConstant:!0,traverseUpButton:{position:{align:"right",x:-10,y:10}},borderColor:"var(--highcharts-neutral-color-10)",borderWidth:1,colorKey:"colorValue",opacity:.15,states:{hover:{borderColor:"var(--highcharts-neutral-color-40)",brightness:.1*!M().seriesTypes.heatmap,halo:!1,opacity:.75,shadow:!1}},legendSymbol:"rectangle",traverseToLeaf:!1,cluster:{className:void 0,color:void 0,enabled:!1,pixelWidth:void 0,pixelHeight:void 0,name:void 0,reductionFactor:void 0,minimumClusterSize:5,layoutAlgorithm:{distance:0,gridSize:0,kmeansThreshold:0},marker:{lineWidth:0,radius:0}}};(h||(h={})).recursive=function t(e,i,s){let r=i.call(s||this,e);!1!==r&&t(r,i,s)};let Y=h,X={getColor:function(t,e){let i,s,r,o,a,l,n=e.index,h=e.mapOptionsToLevel,d=e.parentColor,p=e.parentColorIndex,u=e.series,c=e.colors,g=e.siblings,v=u.points,b=u.chart.options.chart;if(t){let f;i=v[t.i],s=h[t.level]||{},i&&s.colorByPoint&&(o=i.index%(c?c.length:b.colorCount),r=c&&c[o]),u.chart.styledMode||(a=(i&&i.options.color)??(s&&s.color)??r??(d&&((f=s&&s.colorVariation)&&"brightness"===f.key&&n&&g?R().parse(d).brighten(f.to*(n/g)).get():d))??u.color),l=(i&&i.options.colorIndex)??(s&&s.colorIndex)??o??p??e.colorIndex}return{color:a,colorIndex:l}},getLevelOptions:function(t){let e,i,s,r,o,a,l={};if((0,v.isObject)(t))for(r=(0,v.isNumber)(t.from)?t.from:1,a=t.levels,i={},e=(0,v.isObject)(t.defaults)?t.defaults:{},(0,v.isArray)(a)&&(i=a.reduce((t,i)=>{let s,o,a;return(0,v.isObject)(i)&&(0,v.isNumber)(i.level)&&(o=(a=(0,v.merge)({},i)).levelIsConstant??e.levelIsConstant,delete a.levelIsConstant,delete a.level,s=i.level+(o?0:r-1),(0,v.isObject)(t[s])?(0,v.merge)(!0,t[s],a):t[s]=a),t},{})),o=(0,v.isNumber)(t.to)?t.to:1,s=0;s<=o;s++)l[s]=(0,v.merge)({},e,(0,v.isObject)(i[s])?i[s]:{});return l},getNodeWidth:function(t,e){let{chart:i,options:s}=t,{nodeDistance:r=0,nodeWidth:o=0}=s,{plotSizeX:a=1}=i;if("auto"===o){if("string"==typeof r&&/%$/.test(r))return a/(e+parseFloat(r)/100*(e-1));let t=Number(r);return(a+t)/(e||1)-t}return(0,v.relativeLength)(o,a)},setTreeValues:function t(e,i){let s=i.before,r=i.idRoot,o=i.mapIdToNode[r],a=!1!==i.levelIsConstant,l=i.points[e.i],n=l&&l.options||{},h=[],d=0;e.levelDynamic=e.level-(a?0:o.level),e.name=(l&&l.name)??"",e.visible=r===e.id||!0===i.visible,"function"==typeof s&&(e=s(e,i)),e.children.forEach((s,r)=>{let o=(0,v.extend)({},i);(0,v.extend)(o,{index:r,siblings:e.children.length,visible:e.visible}),s=t(s,o),h.push(s),s.visible&&(d+=s.val)});let p=n.value??d;return e.visible=p>=0&&(d>0||e.visible),e.children=h,e.childrenTotal=d,e.isLeaf=e.visible&&!d,e.val=p,e},updateRootId:function(t){let e,i;return(0,v.isObject)(t)&&(i=(0,v.isObject)(t.options)?t.options:{},e=t.rootNode??i.rootId??"",(0,v.isObject)(t.userOptions)&&(t.userOptions.rootId=e),t.rootNode=e),e}},{parse:$}=R(),{composed:q,noop:K}=b(),{column:Z,scatter:J}=M().seriesTypes,{getColor:Q,getLevelOptions:tt,updateRootId:te}=X;z().keepProps.push("simulation","hadOutsideDataLabels");let ti=!1;function ts(){let t=this.xAxis,e=this.yAxis;if(t&&e)if(this.is("treemap")){let i={endOnTick:!1,startOnTick:!1,visible:!1};this.is("treegraph")||(i.min=0,i.max=100,i.tickPositions=[]),(0,v.merge)(!0,t.options,i,t.userOptions),(0,v.merge)(!0,e.options,i,e.userOptions),t.visible=t.options.visible,e.visible=e.options.visible,this.is("treegraph")&&(this.isCartesian=t.visible),ti=!0}else ti&&(e.setOptions(e.userOptions),t.setOptions(t.userOptions),ti=!1)}class tr extends J{constructor(){super(...arguments),this.simulation=0}static compose(t){(0,v.pushUnique)(q,"TreemapSeries")&&(0,v.addEvent)(t,"afterBindAxes",ts)}algorithmCalcPoints(t,e,i,s){let r=i.plot,o=i.elArr.length-1,a,l,n,h,d=i.lW,p=i.lH,u,c=0;for(let t of(e?(d=i.nW,p=i.nH):u=i.elArr[o],i.elArr))(e||c<o)&&(0===i.direction?(a=r.x,l=r.y,h=t/(n=d)):(a=r.x,l=r.y,n=t/(h=p)),s.push({x:a,y:l,width:n,height:(0,v.correctFloat)(h)}),0===i.direction?r.y=r.y+h:r.x=r.x+n),c+=1;i.reset(),0===i.direction?i.width=i.width-d:i.height=i.height-p,r.y=r.parent.y+(r.parent.height-i.height),r.x=r.parent.x+(r.parent.width-i.width),t&&(i.direction=1-i.direction),e||i.addElement(u)}algorithmFill(t,e,i){let s=[],r,o=e.direction,a=e.x,l=e.y,n=e.width,h=e.height,d,p,u,c;for(let g of i)r=e.width*e.height*(g.val/e.val),d=a,p=l,0===o?(n-=u=r/(c=h),a+=u):(h-=c=r/(u=n),l+=c),s.push({x:d,y:p,width:u,height:c,direction:0,val:0}),t&&(o=1-o);return s}algorithmLowAspectRatio(t,e,i){let s=[],r={x:e.x,y:e.y,parent:e},o=e.direction,a=i.length-1,l=new V(e.height,e.width,o,r),n,h=0;for(let o of i)n=e.width*e.height*(o.val/e.val),l.addElement(n),l.lP.nR>l.lP.lR&&this.algorithmCalcPoints(t,!1,l,s,r),h===a&&this.algorithmCalcPoints(t,!0,l,s,r),++h;return s}alignDataLabel(t,e,i){Z.prototype.alignDataLabel.apply(this,arguments),t.dataLabel&&t.dataLabel.attr({zIndex:(t.node.zIndex||0)+1})}applyTreeGrouping(){let t=this,e=t.parentList||{},{cluster:i}=t.options,s=i?.minimumClusterSize||5;if(i?.enabled){let r={},o=t=>{if(t?.point?.shapeArgs){let{width:e=0,height:s=0}=t.point.shapeArgs,{pixelWidth:o=0,pixelHeight:a=0}=i,l=(0,v.defined)(a),n=a?o*a:o*o;(e<o||s<(l?a:o)||e*s<n)&&!t.isGroup&&(0,v.defined)(t.parent)&&(r[t.parent]||(r[t.parent]=[]),r[t.parent].push(t))}t?.children.forEach(t=>{o(t)})};for(let a in o(t.tree),r)r[a]&&r[a].length>s&&r[a].forEach(s=>{let r=e[a].indexOf(s.i);if(-1!==r){e[a].splice(r,1);let o=`highcharts-grouped-treemap-points-${s.parent||"root"}`,l=t.points.find(t=>t.id===o);if(!l){let s=t.pointClass,r=t.points.length;l=new s(t,{className:i.className,color:i.color,id:o,index:r,isGroup:!0,value:0}),(0,v.extend)(l,{formatPrefix:"cluster"}),t.points.push(l),e[a].push(r),e[o]=[]}let n=l.groupedPointsAmount+1,h=t.points[l.index].options.value||0,d=i.name||`+ ${n}`;t.points[l.index].groupedPointsAmount=n,t.points[l.index].options.value=h+(s.point.value||0),t.points[l.index].name=d,e[o].push(s.point.index)}});t.nodeMap={},t.nodeList=[],t.parentList=e;let a=t.buildTree("",-1,0,t.parentList);t.translate(a)}}calculateChildrenAreas(t,e){let i=this.options,s=this.mapOptionsToLevel[t.level+1],r=(s?.layoutAlgorithm&&this[s?.layoutAlgorithm]&&s.layoutAlgorithm)??i.layoutAlgorithm,o=i.alternateStartingDirection,a=t.children.filter(e=>t.isGroup||!e.ignore),l=s?.groupPadding??i.groupPadding??0,n=this.nodeMap[this.rootNode];if(!r)return;let h=[],d=n.pointValues?.width||0,p=n.pointValues?.height||0;s?.layoutStartingDirection&&(e.direction=+("vertical"!==s.layoutStartingDirection)),h=this[r](e,a);let u=-1;for(let t of a){let i=h[++u];t===n&&(d=d||i.width,p=i.height);let s=l/(this.xAxis.len/p),r=l/(this.yAxis.len/p);if(t.values=(0,v.merge)(i,{val:t.childrenTotal,direction:o?1-e.direction:e.direction}),t.children.length&&t.point.dataLabels?.length){let e=(0,v.arrayMax)(t.point.dataLabels.map(t=>t.options?.headers&&t.height||0))/(this.yAxis.len/p);e<t.values.height/2&&(t.values.y+=e,t.values.height-=e)}if(l){let e=Math.min(s,t.values.width/4),i=Math.min(r,t.values.height/4);t.values.x+=e,t.values.width-=2*e,t.values.y+=i,t.values.height-=2*i}t.pointValues=(0,v.merge)(i,{x:i.x/this.axisRatio,y:100-i.y-i.height,width:i.width/this.axisRatio}),t.children.length&&this.calculateChildrenAreas(t,t.values)}let c=(t,e=[],i=!0)=>(t.children.forEach(t=>{i&&t.isLeaf?e.push(t.point):i||t.isLeaf||e.push(t.point),t.children.length&&c(t,e,i)}),e);if("leaf"===i.nodeSizeBy&&t===n&&this.hasOutsideDataLabels&&!c(n,void 0,!1).some(t=>(0,v.isNumber)(t.options.value))&&!(0,v.isNumber)(n.point?.options.value)){let i=c(n),s=i.map(t=>t.options.value||0),r=i.map(({node:{pointValues:t}})=>t?t.width*t.height:0),o=s.reduce((t,e)=>t+e,0),a=r.reduce((t,e)=>t+e,0)/o,l=0,h=0;i.forEach((t,e)=>{let i=s[e]?r[e]/s[e]:1,o=(0,v.clamp)(i/a,.8,1.4),n=1-o;t.value&&(r[e]<20&&(n*=r[e]/20),n>h&&(h=n),n<l&&(l=n),t.simulatedValue=(t.simulatedValue||t.value)/o)}),(l<-.05||h>.05)&&this.simulation<10?(this.simulation++,this.setTreeValues(t),e.val=t.val,this.calculateChildrenAreas(t,e)):(i.forEach(t=>{delete t.simulatedValue}),this.setTreeValues(t),this.simulation=0)}}createList(t){let e=this.chart,i=e.breadcrumbs,s=[];if(i){let i=0;s.push({level:i,levelOptions:e.series[0]});let r=t.target.nodeMap[t.newRootId],o=[];for(;r.parent||""===r.parent;)o.push(r),r=t.target.nodeMap[r.parent];for(let t of o.reverse())s.push({level:++i,levelOptions:t});s.length<=1&&(s.length=0)}return s}drawDataLabels(){let t=this.mapOptionsToLevel,e=this.points.filter(function(t){return t.node.visible||(0,v.defined)(t.dataLabel)}),i=(0,v.splat)(this.options.dataLabels||{})[0]?.padding,s=e.some(t=>(0,v.isNumber)(t.plotY));for(let r of e){let e={},o={style:e},a=t[r.node.level];if((!r.node.isLeaf&&!r.node.isGroup||r.node.isGroup&&r.node.level<=this.nodeMap[this.rootNode].level)&&(o.enabled=!1),a?.dataLabels&&((0,v.merge)(!0,o,(0,v.splat)(a.dataLabels)[0]),this.hasDataLabels=()=>!0),r.node.isLeaf?o.inside=!0:o.headers&&(o.verticalAlign="top"),r.shapeArgs&&s){let{height:t=0,width:s=0}=r.shapeArgs;if(s>32&&t>16&&r.shouldDraw()){let a=s-2*((0,v.splat)(o.padding)[0]||(0,v.splat)(i)[0]||0);e.width=`${a}px`,e.lineClamp??(e.lineClamp=Math.floor(t/16)),this.options.allowTraversingTree&&(e.visibility="inherit"),r.dataLabel?.attr({width:o.headers?a:void 0})}else e.width=`${s}px`,e.visibility="hidden"}r.dlOptions=(0,v.merge)(o,r.options.dataLabels,{zIndex:void 0}),delete r.dlOptions.zIndex}super.drawDataLabels(e)}drawPoints(t=this.points){let e=this.chart,i=e.renderer,s=e.styledMode,r=this.options,o=s?{}:r.shadow,a=r.borderRadius,l=e.pointCount<r.animationLimit,n=r.allowTraversingTree;for(let e of t){let t={},h={},d={},p="level-group-"+e.node.level,u=!!e.graphic,c=l&&u,g=e.shapeArgs;e.shouldDraw()&&(e.isInside=!0,a&&(h.r=a),(0,v.merge)(!0,c?t:h,u?g:{},s?{}:this.pointAttribs(e,e.selected?"select":void 0)),this.colorAttribs&&s&&(0,v.extend)(d,this.colorAttribs(e)),this[p]||(this[p]=i.g(p).attr({zIndex:-(e.node.level||0)}).add(this.group),this[p].survive=!0)),e.draw({animatableAttribs:t,attribs:h,css:d,group:this[p],imageUrl:e.imageUrl,renderer:i,shadow:o,shapeArgs:g,shapeType:e.shapeType}),n&&e.graphic&&(e.drillId=r.interactByLeaf?this.drillToByLeaf(e):this.drillToByGroup(e))}}drillToByGroup(t){return(!t.node.isLeaf||!!t.node.isGroup)&&t.id}drillToByLeaf(t){let{traverseToLeaf:e}=t.series.options,i=!1,s;if(t.node.parent!==this.rootNode&&t.node.isLeaf)if(e)i=t.id;else for(s=t.node;!i;)void 0!==s.parent&&(s=this.nodeMap[s.parent]),s.parent===this.rootNode&&(i=s.id);return i}drillToNode(t,e){(0,v.error)(32,!1,void 0,{"treemap.drillToNode":"use treemap.setRootNode"}),this.setRootNode(t,e)}drillUp(){let t=this.nodeMap[this.rootNode];t&&(0,v.isString)(t.parent)&&this.setRootNode(t.parent,!0,{trigger:"traverseUpButton"})}getExtremes(){let{dataMin:t,dataMax:e}=super.getExtremes(this.colorValueData);return this.valueMin=t,this.valueMax=e,super.getExtremes()}getListOfParents(t,e){let i=(0,v.isArray)(t)?t:[],s=(0,v.isArray)(e)?e:[],r=i.reduce(function(t,e,i){let s=e.parent??"";return void 0===t[s]&&(t[s]=[]),t[s].push(i),t},{"":[]});for(let t of Object.keys(r)){let e=r[t];if(""!==t&&-1===s.indexOf(t)){for(let t of e)r[""].push(t);delete r[t]}}return r}getTree(){let t=this.data.map(function(t){return t.id});return this.parentList=this.getListOfParents(this.data,t),this.nodeMap={},this.nodeList=[],this.buildTree("",-1,0,this.parentList||{})}buildTree(t,e,i,s,r){let o=[],a=this.points[e],l=0,n;for(let e of s[t]||[])l=Math.max((n=this.buildTree(this.points[e].id,e,i+1,s,t)).height+1,l),o.push(n),this.is("treegraph")&&(n.visible=!0);let h=new this.NodeClass().init(t,e,o,l,i,this,r);for(let t of o)t.parentNode=h;return this.nodeMap[h.id]=h,this.nodeList.push(h),a&&(a.node=h,h.point=a,(0,v.defined)(a.options.x)||(a.x=i)),h}hasData(){return!!this.dataTable.rowCount}init(t,e){let i=this,s=(0,v.merge)(e.drillUpButton,e.breadcrumbs),r=(0,v.addEvent)(i,"setOptions",t=>{let e=t.userOptions;(0,v.defined)(e.allowDrillToNode)&&!(0,v.defined)(e.allowTraversingTree)&&(e.allowTraversingTree=e.allowDrillToNode,delete e.allowDrillToNode),(0,v.defined)(e.drillUpButton)&&!(0,v.defined)(e.traverseUpButton)&&(e.traverseUpButton=e.drillUpButton,delete e.drillUpButton);let i=(0,v.splat)(e.dataLabels||{});e.levels?.forEach(t=>{i.push.apply(i,(0,v.splat)(t.dataLabels||{}))}),this.hasOutsideDataLabels=i.some(t=>t.headers)});super.init(t,e),delete i.opacity,i.eventsToUnbind.push(r),i.options.allowTraversingTree&&(i.eventsToUnbind.push((0,v.addEvent)(i,"click",i.onClickDrillToNode)),i.eventsToUnbind.push((0,v.addEvent)(i,"setRootNode",function(t){let e=i.chart;e.breadcrumbs&&e.breadcrumbs.updateProperties(i.createList(t))})),i.eventsToUnbind.push((0,v.addEvent)(i,"update",function(t,e){let i=this.chart.breadcrumbs;i&&t.options.breadcrumbs&&i.update(t.options.breadcrumbs),this.hadOutsideDataLabels=this.hasOutsideDataLabels})),i.eventsToUnbind.push((0,v.addEvent)(i,"destroy",function(t){let e=this.chart;e.breadcrumbs&&!t.keepEventsForUpdate&&(e.breadcrumbs.destroy(),e.breadcrumbs=void 0)}))),t.breadcrumbs||(t.breadcrumbs=new O(t,s)),i.eventsToUnbind.push((0,v.addEvent)(t.breadcrumbs,"up",function(t){let e=this.level-t.newLevel;for(let t=0;t<e;t++)i.drillUp()}))}onClickDrillToNode(t){let e=t.point,i=e?.drillId;(0,v.isString)(i)&&(e.setState(""),this.setRootNode(i,!0,{trigger:"click"}))}pointAttribs(t,e){let i=(0,v.isObject)(this.mapOptionsToLevel)?this.mapOptionsToLevel:{},s=t?.node&&i[t.node.level]||{},r=this.options,o=e&&r.states&&r.states[e]||{},a=t?.node&&t.getClassName()||"",l={stroke:t&&t.borderColor||s.borderColor||o.borderColor||r.borderColor,"stroke-width":(t&&t.borderWidth)??s.borderWidth??o.borderWidth??r.borderWidth,dashstyle:t?.borderDashStyle||s.borderDashStyle||o.borderDashStyle||r.borderDashStyle,fill:t?.color||this.color};return -1!==a.indexOf("highcharts-above-level")?(l.fill="none",l["stroke-width"]=0):-1!==a.indexOf("highcharts-internal-node-interactive")?(l["fill-opacity"]=o.opacity??r.opacity??1,l.cursor="pointer"):-1!==a.indexOf("highcharts-internal-node")?l.fill="none":e&&o.brightness&&(l.fill=$(l.fill).brighten(o.brightness).get()),l}setColorRecursive(t,e,i,s,r){let o=this?.chart,a=o?.options?.colors;if(t){let o=Q(t,{colors:a,index:s,mapOptionsToLevel:this.mapOptionsToLevel,parentColor:e,parentColorIndex:i,series:this,siblings:r}),l=this.points[t.i];l&&(l.color=o.color,l.colorIndex=o.colorIndex);let n=-1;for(let e of t.children||[])this.setColorRecursive(e,o.color,o.colorIndex,++n,t.children.length)}}setPointValues(){let t=this,{points:e,xAxis:i,yAxis:s}=t,r=t.chart.styledMode,o=e=>r?0:t.pointAttribs(e)["stroke-width"]||0;for(let t of e){let{pointValues:e,visible:r}=t.node;if(e&&r){let{height:r,width:a,x:l,y:n}=e,h=o(t),d=i.toPixels(l,!0),p=i.toPixels(l+a,!0),u=s.toPixels(n,!0),c=s.toPixels(n+r,!0),g=0===d?h/2:(0,v.crisp)(i.toPixels(l,!0),h,!0),b=p===i.len?i.len-h/2:(0,v.crisp)(i.toPixels(l+a,!0),h,!0),f=u===s.len?s.len-h/2:(0,v.crisp)(s.toPixels(n,!0),h,!0),m=0===c?h/2:(0,v.crisp)(s.toPixels(n+r,!0),h,!0),x={x:Math.min(g,b),y:Math.min(f,m),width:Math.abs(b-g),height:Math.abs(m-f)};t.plotX=x.x+x.width/2,t.plotY=x.y+x.height/2,t.shapeArgs=x}else delete t.plotX,delete t.plotY}}setRootNode(t,e,i){let s=(0,v.extend)({newRootId:t,previousRootId:this.rootNode,redraw:e??!0,series:this},i);(0,v.fireEvent)(this,"setRootNode",s,function(t){let e=t.series;e.idPreviousRoot=t.previousRootId,e.rootNode=t.newRootId,e.isDirty=!0,t.redraw&&e.chart.redraw()})}setState(t){this.options.inactiveOtherPoints=!0,super.setState(t,!1),this.options.inactiveOtherPoints=!1}setTreeValues(t){let e=this.options,i=this.rootNode,s=this.nodeMap[i],r="boolean"!=typeof e.levelIsConstant||e.levelIsConstant,o=[],a=this.points[t.i],l=0;for(let e of t.children)e=this.setTreeValues(e),o.push(e),e.ignore||(l+=e.val);(0,v.stableSort)(o,(t,e)=>(t.sortIndex||0)-(e.sortIndex||0));let n=a?.simulatedValue??a?.options.value??l;return a&&(a.value=n),a?.isGroup&&e.cluster?.reductionFactor&&(n/=e.cluster.reductionFactor),t.parentNode?.point?.isGroup&&this.rootNode!==t.parent&&(t.visible=!1),(0,v.extend)(t,{children:o,childrenTotal:l,ignore:!((a?.visible??!0)&&n>0),isLeaf:t.visible&&!("treegraph"===this.type?o.length>0:l),isGroup:a?.isGroup,levelDynamic:t.level-(r?0:s.level),name:a?.name??"",sortIndex:a?.sortIndex??-n,val:n}),t}sliceAndDice(t,e){return this.algorithmFill(!0,t,e)}squarified(t,e){return this.algorithmLowAspectRatio(!0,t,e)}strip(t,e){return this.algorithmLowAspectRatio(!1,t,e)}stripes(t,e){return this.algorithmFill(!1,t,e)}translate(t){let e=this,i=e.options,s=!t,r=te(e),o,a,l,n;t||r.startsWith("highcharts-grouped-treemap-points-")||((this.points||[]).forEach(t=>{t.isGroup&&t.destroy()}),super.translate(),t=e.getTree()),e.tree=t=t||e.tree,o=e.nodeMap[r],""===r||o||(e.setRootNode("",!1),r=e.rootNode,o=e.nodeMap[r]),o.point?.isGroup||(e.mapOptionsToLevel=tt({from:o.level+1,levels:i.levels,to:t.height,defaults:{levelIsConstant:e.options.levelIsConstant,colorByPoint:i.colorByPoint}})),Y.recursive(e.nodeMap[e.rootNode],t=>{let i=t.parent,s=!1;return t.visible=!0,(i||""===i)&&(s=e.nodeMap[i]),s}),Y.recursive(e.nodeMap[e.rootNode].children,t=>{let e=!1;for(let i of t)i.visible=!0,i.children.length&&(e=(e||[]).concat(i.children));return e}),e.setTreeValues(t),e.axisRatio=e.xAxis.len/e.yAxis.len,e.nodeMap[""].pointValues=a={x:0,y:0,width:100,height:100},e.nodeMap[""].values=l=(0,v.merge)(a,{width:a.width*e.axisRatio,direction:+("vertical"!==i.layoutStartingDirection),val:t.val}),(this.hasOutsideDataLabels||this.hadOutsideDataLabels)&&this.drawDataLabels(),e.calculateChildrenAreas(t,l),e.colorAxis||i.colorByPoint||e.setColorRecursive(e.tree),i.allowTraversingTree&&o.pointValues&&(n=o.pointValues,e.xAxis.setExtremes(n.x,n.x+n.width,!1),e.yAxis.setExtremes(n.y,n.y+n.height,!1),e.xAxis.setScale(),e.yAxis.setScale()),e.setPointValues(),s&&e.applyTreeGrouping()}}tr.defaultOptions=(0,v.merge)(J.defaultOptions,_),(0,v.extend)(tr.prototype,{buildKDTree:K,colorAttribs:H.seriesMembers.colorAttribs,colorKey:"colorValue",directTouch:!0,getExtremesFromAll:!0,getSymbol:K,optionalAxis:"colorAxis",parallelArrays:["x","y","value","colorValue"],pointArrayMap:["value","colorValue"],pointClass:F,NodeClass:k,trackerGroups:["group","dataLabelsGroup"],utils:Y}),H.compose(tr),M().registerSeriesType("treemap",tr);let{deg2rad:to}=b();(a=d||(d={})).getCenter=function(){let t=this.options,e=this.chart,i=2*(t.slicedOffset||0),s=e.plotWidth-2*i,r=e.plotHeight-2*i,o=t.center,a=Math.min(s,r),l=t.thickness,n,h=t.size,d=t.innerSize||0,p,u;"string"==typeof h&&(h=parseFloat(h)),"string"==typeof d&&(d=parseFloat(d));let c=[o?.[0]??"50%",o?.[1]??"50%",(h&&h<0?void 0:t.size)??"100%",(d&&d<0?void 0:t.innerSize||0)??"0%"];for(p=0;p<4;++p)u=c[p],n=p<2||2===p&&/%$/.test(u),c[p]=(0,v.relativeLength)(u,[s,r,a,c[2]][p])+(n?i:0);return c[3]>c[2]&&(c[3]=c[2]),(0,v.isNumber)(l)&&2*l<c[2]&&l>0&&(c[3]=c[2]-2*l),(0,v.fireEvent)(this,"afterGetCenter",{positions:c}),c},a.getStartAndEndRadians=function(t,e){let i=(0,v.isNumber)(t)?t:0,s=(0,v.isNumber)(e)&&e>i&&e-i<360?e:i+360;return{start:to*(i+-90),end:to*(s+-90)}};let ta=d,{series:{prototype:{pointClass:tl}},seriesTypes:{treemap:{prototype:{pointClass:tn}}}}=M();class th extends tn{getDataLabelPath(t){let e=this.series.chart.renderer,i=this.shapeExisting,s=i.r+(0,v.pInt)(t.options?.distance||0),r=i.start,o=i.end,a=r+(o-r)/2,l=a<0&&a>-Math.PI||a>Math.PI,n;return r===-Math.PI/2&&(0,v.correctFloat)(o)===(0,v.correctFloat)(1.5*Math.PI)&&(r=-Math.PI+Math.PI/360,o=-Math.PI/360,l=!0),o-r>Math.PI&&(l=!1,n=!0,o-r>2*Math.PI-.01&&(r+=.01,o-=.01)),this.dataLabelPath&&(this.dataLabelPath=this.dataLabelPath.destroy()),this.dataLabelPath=e.arc({open:!0,longArc:+!!n}).attr({start:l?r:o,end:l?o:r,clockwise:+l,x:i.x,y:i.y,r:(s+i.innerR)/2}).add(e.defs),this.dataLabelPath}isValid(){return!0}}(0,v.extend)(th.prototype,{getClassName:tl.prototype.getClassName,haloPath:tl.prototype.haloPath,setState:tl.prototype.setState});let{seriesTypes:{treemap:td}}=M();function tp(t,e){let i=[];if((0,v.isNumber)(t)&&(0,v.isNumber)(e)&&t<=e)for(let s=t;s<=e;s++)i.push(s);return i}let tu={calculateLevelSizes:function(t,e){let i=(0,v.isObject)(e)?e:{},s,r=0,o,a,l,n;if((0,v.isObject)(t)){for(let e of(s=(0,v.merge)({},t),a=tp((0,v.isNumber)(i.from)?i.from:0,(0,v.isNumber)(i.to)?i.to:0),l=Object.keys(s).filter(t=>-1===a.indexOf(+t)),o=n=(0,v.isNumber)(i.diffRadius)?i.diffRadius:0,a)){let t=s[e],i=t.levelSize.unit,a=t.levelSize.value;"weight"===i?r+=a:"percentage"===i?(t.levelSize={unit:"pixels",value:a/100*o},n-=t.levelSize.value):"pixels"===i&&(n-=a)}for(let t of a){let e=s[t];if("weight"===e.levelSize.unit){let i=e.levelSize.value;s[t].levelSize={unit:"pixels",value:i/r*n}}}for(let t of l)s[t].levelSize={value:0,unit:"pixels"}}return s},getLevelFromAndTo:function({level:t,height:e}){return{from:t>0?t:1,to:t+e}},range:tp,recursive:td.prototype.utils.recursive},{composed:tc,deg2rad:tg}=b(),{getCenter:tv,getStartAndEndRadians:tb}=ta,{noop:tf}=b(),{column:tm,treemap:tx}=M().seriesTypes,{getColor:ty,getLevelOptions:tL,setTreeValues:tP,updateRootId:tT}=X;l=I(),(0,v.pushUnique)(tc,"TextPath")&&((0,v.addEvent)(l,"afterGetBBox",function(t){let e=t.bBox,i=this.element?.querySelector("textPath");if(i){let t=[],{b:s,h:r}=this.renderer.fontMetrics(this.element),o=r-s,a=RegExp('(<tspan>|<tspan(?!\\sclass="highcharts-br")[^>]*>|<\\/tspan>)',"g"),l=i.innerHTML.replace(a,"").split(/<tspan class="highcharts-br"[^>]*>/),n=l.length,h=(t,e)=>{let{x:r,y:a}=e,l=(i.getRotationOfChar(t)-90)*tg,n=Math.cos(l),h=Math.sin(l);return[[r-o*n,a-o*h],[r+s*n,a+s*h]]};for(let e=0,s=0;s<n;s++){let r=l[s].length;for(let o=0;o<r;o+=5)try{let r=e+o+s,[a,l]=h(r,i.getStartPositionOfChar(r));0===o?(t.push(l),t.push(a)):(0===s&&t.unshift(l),s===n-1&&t.push(a))}catch{break}e+=r-1;try{let r=e+s,o=i.getEndPositionOfChar(r),[a,l]=h(r,o);t.unshift(l),t.unshift(a)}catch{break}}t.length&&t.push(t[0].slice()),e.polygon=t}return e}),(0,v.addEvent)(l,"beforeAddingDataLabel",function(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()))}),l.prototype.setTextPath=l.prototype.setTextPath??function(t,e){let i=this.renderer.url,s=this.text||this,r=s.textPath,{attributes:o,enabled:a}=(0,v.merge)({enabled:!0,attributes:{dy:-5,startOffset:"50%",textAnchor:"middle"}},e);if(t=t||r&&r.path,r?.undo(),t&&a){let e=(0,v.addEvent)(s,"afterModifyTree",e=>{if(t&&a){let r=t.attr("id");r||t.attr("id",r=(0,v.uniqueKey)());let a={x:0,y:0};(0,v.defined)(o.dx)&&(a.dx=o.dx,delete o.dx),(0,v.defined)(o.dy)&&(a.dy=o.dy,delete o.dy),s.attr(a),this.attr({transform:""}),this.box&&(this.box=this.box.destroy());let l=e.nodes.slice(0);e.nodes.length=0,e.nodes[0]={tagName:"textPath",attributes:(0,v.extend)(o,{"text-anchor":o.textAnchor,href:`${i}#${r}`}),children:l}}});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});let tw=180/Math.PI,tA=function(t,e,i,s){return{x:t+Math.cos(i)*s,y:e+Math.sin(i)*s}};function tO(t,e){let i=e.mapIdToNode,s=t.parent,r=s?i[s]:void 0,o=e.series,a=o.chart,l=o.points[t.i],n=ty(t,{colors:o.options.colors||a&&a.options.colors,colorIndex:o.colorIndex,index:e.index,mapOptionsToLevel:e.mapOptionsToLevel,parentColor:r&&r.color,parentColorIndex:r&&r.colorIndex,series:e.series,siblings:e.siblings});return t.color=n.color,t.colorIndex=n.colorIndex,l&&(l.color=t.color,l.colorIndex=t.colorIndex,t.sliced=t.id!==e.idRoot&&l.sliced),t}class tS extends tx{alignDataLabel(t,e,i){if(!i.textPath||!i.textPath.enabled)return e.placed=!1,super.alignDataLabel.apply(this,arguments)}animate(t){let e,i=this.chart,s=[i.plotWidth/2,i.plotHeight/2],r=i.plotLeft,o=i.plotTop,a=this.group;t?(e={translateX:s[0]+r,translateY:s[1]+o,scaleX:.001,scaleY:.001,rotation:10,opacity:.01},a.attr(e)):(e={translateX:r,translateY:o,scaleX:1,scaleY:1,rotation:0,opacity:1},a.animate(e,this.options.animation))}drawPoints(){let t=this,e=t.mapOptionsToLevel,i=t.shapeRoot,s=t.group,r=t.hasRendered,o=t.rootNode,a=t.idPreviousRoot,l=t.nodeMap,n=l[a],h=n&&n.shapeArgs,d=t.points,p=t.startAndEndRadians,u=t.chart,c=u&&u.options&&u.options.chart||{},g="boolean"!=typeof c.animation||c.animation,b=t.center,f={x:b[0],y:b[1]},m=b[3]/2,x=t.chart.renderer,y=!!(g&&r&&o!==a&&t.dataLabelsGroup),L,P=!1,T=!1;for(let n of(y&&(t.dataLabelsGroup.attr({opacity:0}),L=function(){P=!0,t.dataLabelsGroup.animate({opacity:1,visibility:"inherit"})}),d)){let d,c,b=n.node,y=e[b.level],P=n.shapeExisting||{},w=b.shapeArgs||{},A=!!(b.visible&&b.shapeArgs);w.borderRadius=t.options.borderRadius,d=r&&g?function(t,e){let i=e.point,s=e.radians,r=e.innerR,o=e.idRoot,a=e.idPreviousRoot,l=e.shapeExisting,n=e.shapeRoot,h=e.shapePreviousRoot,d=e.visible,p={},u={end:t.end,start:t.start,innerR:t.innerR,r:t.r,x:t.x,y:t.y};return d?!i.graphic&&h&&((p=o===i.id?{start:s.start,end:s.end}:h.end<=t.start?{start:s.end,end:s.end}:{start:s.start,end:s.start}).innerR=p.r=r):i.graphic&&(a===i.id?u={innerR:r,r:r}:n&&(u=n.end<=l.start?{innerR:r,r:r,start:s.end,end:s.end}:{innerR:r,r:r,start:s.start,end:s.start})),{from:p,to:u}}(w,{center:f,point:n,radians:p,innerR:m,idRoot:o,idPreviousRoot:a,shapeExisting:P,shapeRoot:i,shapePreviousRoot:h,visible:A}):{to:w,from:{}},(0,v.extend)(n,{shapeExisting:w,tooltipPos:[w.plotX,w.plotY],drillId:function(t,e,i){let s;return t.node.isLeaf||(s=e===t.id?i[e].parent:t.id),s}(n,o,l),name:""+(n.name||n.id||n.index),plotX:w.plotX,plotY:w.plotY,value:b.val,isInside:A,isNull:!A}),n.dlOptions={...function(t){let e=t.point,i=(0,v.isObject)(t.shapeArgs)?t.shapeArgs:{},{end:s=0,radius:r=0,start:o=0}=i,a=(0,v.isObject)(t.optionsPoint)?t.optionsPoint.dataLabels:{},l=(0,v.splat)((0,v.isObject)(t.level)?t.level.dataLabels:{})[0],n=(0,v.merge)(l,a),h=n.style=n.style||{},d=(0,v.splat)(n.padding||0),p=d[3%d.length],u=d[1%d.length],{innerArcLength:c=0,outerArcLength:g=0}=e,b,f,m=n.rotationMode,x=(0,v.defined)(h.width)?parseInt(h.width||"0",10):void 0;return(0,v.isNumber)(n.rotation)||(("auto"===m||"circular"===m)&&(n.useHTML&&"circular"===m&&(m="auto"),c<1&&g>r?(b=0,e.dataLabelPath&&"circular"===m&&(n.textPath={enabled:!0}),s-o<Math.PI&&(x=.7*r)):c>1&&g>1.5*r?"circular"===m?n.textPath={enabled:!0,attributes:{dy:5}}:m="parallel":(e.dataLabel?.textPath&&"circular"===m&&(n.textPath={enabled:!1}),m="perpendicular")),"auto"!==m&&"circular"!==m&&(e.dataLabel?.textPath&&(n.textPath={enabled:!1}),b=s-(s-o)/2),"parallel"===m?x=Math.min(2.5*r,(g+c)/2):!(0,v.defined)(x)&&r&&(x=1===e.node.level?2*r:r),"perpendicular"===m&&(g<16?x=1:i.radius&&(h.lineClamp=Math.floor(c/16)||1,x=r-(c<16?(16-c)/(g-c)*r:0))),x=Math.max((x||0)-p-u,1),f=(b||0)*tw%180,"parallel"===m&&(f-=90),f>90?f-=180:f<-90&&(f+=180),n.rotation=f),n.textPath&&(0===e.shapeExisting.innerR&&n.textPath.enabled?(n.rotation=0,n.textPath.enabled=!1,x=Math.max(2*e.shapeExisting.r-p-u,1)):e.dlOptions?.textPath&&!e.dlOptions.textPath.enabled&&"circular"===m&&(n.textPath.enabled=!0),n.textPath.enabled&&(n.rotation=0,x=Math.max((g+c)/2-p-u,1),h.whiteSpace="nowrap")),h.width=x+"px",n}({point:n,level:y,optionsPoint:n.options,shapeArgs:w}),zIndex:void 0},delete n.dlOptions.zIndex,!T&&A&&(T=!0,c=L),n.draw({animatableAttribs:d.to,attribs:(0,v.extend)(d.from,!u.styledMode&&t.pointAttribs(n,n.selected&&"select")),onComplete:c,group:s,renderer:x,shapeType:"arc",shapeArgs:w})}y&&T?(t.hasRendered=!1,t.options.dataLabels.defer=!0,tm.prototype.drawDataLabels.call(t),t.hasRendered=!0,P&&L?.()):tm.prototype.drawDataLabels.call(t),t.idPreviousRoot=o}layoutAlgorithm(t,e,i){let s=t.start,r=t.end-s,o=t.val,a=t.x,l=t.y,n=i&&(0,v.isObject)(i.levelSize)&&(0,v.isNumber)(i.levelSize.value)?i.levelSize.value:0,h=t.r,d=h+n,p=i&&(0,v.isNumber)(i.slicedOffset)?i.slicedOffset:0;return(e||[]).reduce((t,e)=>{let i=1/o*e.val*r,u=tA(a,l,s+i/2,p),c={x:e.sliced?u.x:a,y:e.sliced?u.y:l,innerR:h,r:d,radius:n,start:s,end:s+i};return t.push(c),s=c.end,t},[])}setRootNode(t,e,i){if(1===this.nodeMap[t].level&&1===this.nodeList.filter(t=>1===t.level).length){if(""===this.idPreviousRoot)return;t=""}super.setRootNode(t,e,i)}setShapeArgs(t,e,i){let s=i[t.level+1],r=t.children.filter(function(t){return t.visible}),o=[];o=this.layoutAlgorithm(e,r,s);let a=-1;for(let t of r){let e=o[++a],s=e.start+(e.end-e.start)/2,r=e.innerR+(e.r-e.innerR)/2,l=e.end-e.start,n=0===e.innerR&&l>6.28?{x:e.x,y:e.y}:tA(e.x,e.y,s,r),h=t.val?t.childrenTotal>t.val?t.childrenTotal:t.val:t.childrenTotal;this.points[t.i]&&(this.points[t.i].innerArcLength=l*e.innerR,this.points[t.i].outerArcLength=l*e.r),t.shapeArgs=(0,v.merge)(e,{plotX:n.x,plotY:n.y}),t.values=(0,v.merge)(e,{val:h}),t.children.length&&this.setShapeArgs(t,t.values,i)}}translate(){let t=this.options,e=this.center=this.getCenter(),i=this.startAndEndRadians=tb(t.startAngle,t.endAngle),s=e[3]/2,r=e[2]/2,o=tT(this),a=this.nodeMap,l,n=a&&a[o],h={};this.shapeRoot=n&&n.shapeArgs,this.generatePoints(),(0,v.fireEvent)(this,"afterTranslate");let d=this.tree=this.getTree();n=(a=this.nodeMap)[o];let p=a[(0,v.isString)(n.parent)?n.parent:""],{from:u,to:c}=tu.getLevelFromAndTo(n);l=tL({from:u,levels:this.options.levels,to:c,defaults:{colorByPoint:t.colorByPoint,dataLabels:t.dataLabels,levelIsConstant:t.levelIsConstant,levelSize:t.levelSize,slicedOffset:t.slicedOffset}}),l=tu.calculateLevelSizes(l,{diffRadius:r-s,from:u,to:c}),tP(d,{before:tO,idRoot:o,levelIsConstant:t.levelIsConstant,mapOptionsToLevel:l,mapIdToNode:a,points:this.points,series:this});let g=a[""].shapeArgs={end:i.end,r:s,start:i.start,val:n.val,x:e[0],y:e[1]};for(let t of(this.setShapeArgs(p,g,l),this.mapOptionsToLevel=l,this.points))h[t.id]&&(0,v.error)(31,!1,this.chart),h[t.id]=!0}}tS.defaultOptions=(0,v.merge)(tx.defaultOptions,{center:["50%","50%"],clip:!1,colorByPoint:!1,opacity:1,dataLabels:{allowOverlap:!0,defer:!0,rotationMode:"circular",style:{textOverflow:"ellipsis"}},rootId:void 0,levelIsConstant:!0,levelSize:{value:1,unit:"weight"},slicedOffset:10}),(0,v.extend)(tS.prototype,{axisTypes:[],drawDataLabels:tf,getCenter:tv,isCartesian:!1,onPointSupported:!0,pointAttribs:tm.prototype.pointAttribs,pointClass:th,NodeClass:class extends k{},utils:tu}),M().registerSeriesType("sunburst",tS);let tR=b();tR.Breadcrumbs=tR.Breadcrumbs||O,tR.Breadcrumbs.compose(tR.Chart,tR.defaultOptions),tr.compose(tR.Series);let tC=b();return g.default})());
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/sunburst
5
5
  * @requires highcharts
6
6
  *
@@ -609,8 +609,9 @@ class Breadcrumbs {
609
609
  * Formatted text.
610
610
  */
611
611
  getButtonText(breadcrumb) {
612
- const breadcrumbs = this, chart = breadcrumbs.chart, breadcrumbsOptions = breadcrumbs.options, lang = chart.options.lang, textFormat = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(breadcrumbsOptions.format, breadcrumbsOptions.showFullPath ?
613
- '{level.name}' : '← {level.name}'), defaultText = lang && (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(lang.drillUpText, lang.mainBreadcrumb);
612
+ const breadcrumbs = this, chart = breadcrumbs.chart, breadcrumbsOptions = breadcrumbs.options, lang = chart.options.lang, textFormat = breadcrumbsOptions.format ?? (breadcrumbsOptions.showFullPath ?
613
+ '{level.name}' :
614
+ '← {level.name}'), defaultText = lang && (lang.drillUpText ?? lang.mainBreadcrumb);
614
615
  let returnText = breadcrumbsOptions.formatter &&
615
616
  breadcrumbsOptions.formatter(breadcrumb) ||
616
617
  format(textFormat, { level: breadcrumb.levelOptions }, chart) || '';
@@ -731,7 +732,7 @@ class Breadcrumbs {
731
732
  if (breadcrumbs.options.rtl) {
732
733
  newPositions.x += positionOptions.width;
733
734
  }
734
- newPositions.y = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(newPositions.y, this.yOffset, 0);
735
+ newPositions.y = (newPositions.y ?? this.yOffset ?? 0);
735
736
  breadcrumbs.group.align(newPositions, true, alignTo);
736
737
  }
737
738
  }
@@ -1460,7 +1461,7 @@ class TreemapPoint extends ScatterPoint {
1460
1461
  else if (!this.node.isGroup &&
1461
1462
  !this.node.isLeaf &&
1462
1463
  !series.nodeMap[series.rootNode].isGroup &&
1463
- !(0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(options.interactByLeaf, !options.allowTraversingTree)) {
1464
+ !(options.interactByLeaf ?? !options.allowTraversingTree)) {
1464
1465
  className += ' highcharts-internal-node-interactive';
1465
1466
  }
1466
1467
  else if (!this.node.isGroup &&
@@ -2343,9 +2344,17 @@ function getColor(node, options) {
2343
2344
  }
2344
2345
  // Select either point color, level color or inherited color.
2345
2346
  if (!series.chart.styledMode) {
2346
- color = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point && point.options.color, level && level.color, colorByPoint, parentColor && variateColor(parentColor), series.color);
2347
- }
2348
- colorIndex = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point && point.options.colorIndex, level && level.colorIndex, colorIndexByPoint, parentColorIndex, options.colorIndex);
2347
+ color = ((point && point.options.color) ??
2348
+ (level && level.color) ??
2349
+ colorByPoint ??
2350
+ (parentColor && variateColor(parentColor)) ??
2351
+ series.color);
2352
+ }
2353
+ colorIndex = ((point && point.options.colorIndex) ??
2354
+ (level && level.colorIndex) ??
2355
+ colorIndexByPoint ??
2356
+ parentColorIndex ??
2357
+ options.colorIndex);
2349
2358
  }
2350
2359
  return {
2351
2360
  color: color,
@@ -2382,7 +2391,8 @@ function getLevelOptions(params) {
2382
2391
  let level, levelIsConstant, options;
2383
2392
  if ((0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.isObject)(item) && (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.isNumber)(item.level)) {
2384
2393
  options = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.merge)({}, item);
2385
- levelIsConstant = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(options.levelIsConstant, defaults.levelIsConstant);
2394
+ levelIsConstant =
2395
+ options.levelIsConstant ?? defaults.levelIsConstant;
2386
2396
  // Delete redundant properties.
2387
2397
  delete options.levelIsConstant;
2388
2398
  delete options.level;
@@ -2414,7 +2424,7 @@ function setTreeValues(tree, options) {
2414
2424
  const before = options.before, idRoot = options.idRoot, mapIdToNode = options.mapIdToNode, nodeRoot = mapIdToNode[idRoot], levelIsConstant = (options.levelIsConstant !== false), points = options.points, point = points[tree.i], optionsPoint = point && point.options || {}, children = [];
2415
2425
  let childrenTotal = 0;
2416
2426
  tree.levelDynamic = tree.level - (levelIsConstant ? 0 : nodeRoot.level);
2417
- tree.name = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point && point.name, '');
2427
+ tree.name = ((point && point.name) ?? '');
2418
2428
  tree.visible = (idRoot === tree.id ||
2419
2429
  options.visible === true);
2420
2430
  if (typeof before === 'function') {
@@ -2435,7 +2445,7 @@ function setTreeValues(tree, options) {
2435
2445
  }
2436
2446
  });
2437
2447
  // Set the values
2438
- const value = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(optionsPoint.value, childrenTotal);
2448
+ const value = (optionsPoint.value ?? childrenTotal);
2439
2449
  tree.visible = value >= 0 && (childrenTotal > 0 || tree.visible);
2440
2450
  tree.children = children;
2441
2451
  tree.childrenTotal = childrenTotal;
@@ -2461,7 +2471,7 @@ function updateRootId(series) {
2461
2471
  // Get the series options.
2462
2472
  options = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.isObject)(series.options) ? series.options : {};
2463
2473
  // Calculate the rootId.
2464
- rootId = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(series.rootNode, options.rootId, '');
2474
+ rootId = (series.rootNode ?? options.rootId ?? '');
2465
2475
  // Set rootId on series.userOptions to pick it up in exporting.
2466
2476
  if ((0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.isObject)(series.userOptions)) {
2467
2477
  series.userOptions.rootId = rootId;
@@ -2851,9 +2861,9 @@ class TreemapSeries extends ScatterSeries {
2851
2861
  * The rectangular area of the parent.
2852
2862
  */
2853
2863
  calculateChildrenAreas(parent, area) {
2854
- const series = this, options = series.options, mapOptionsToLevel = series.mapOptionsToLevel, level = mapOptionsToLevel[parent.level + 1], algorithm = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)((level?.layoutAlgorithm &&
2864
+ const series = this, options = series.options, mapOptionsToLevel = series.mapOptionsToLevel, level = mapOptionsToLevel[parent.level + 1], algorithm = ((level?.layoutAlgorithm &&
2855
2865
  series[level?.layoutAlgorithm] &&
2856
- level.layoutAlgorithm), options.layoutAlgorithm), alternate = options.alternateStartingDirection,
2866
+ level.layoutAlgorithm) ?? options.layoutAlgorithm), alternate = options.alternateStartingDirection,
2857
2867
  // Collect all children which should be included
2858
2868
  children = parent.children.filter((n) => parent.isGroup || !n.ignore), groupPadding = level?.groupPadding ?? options.groupPadding ?? 0, rootNode = series.nodeMap[series.rootNode];
2859
2869
  if (!algorithm) {
@@ -3235,7 +3245,7 @@ class TreemapSeries extends ScatterSeries {
3235
3245
  */
3236
3246
  getListOfParents(data, existingIds) {
3237
3247
  const arr = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.isArray)(data) ? data : [], ids = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.isArray)(existingIds) ? existingIds : [], listOfParents = arr.reduce(function (prev, curr, i) {
3238
- const parent = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(curr.parent, '');
3248
+ const parent = (curr.parent ?? '');
3239
3249
  if (typeof prev[parent] === 'undefined') {
3240
3250
  prev[parent] = [];
3241
3251
  }
@@ -3388,13 +3398,16 @@ class TreemapSeries extends ScatterSeries {
3388
3398
  series.mapOptionsToLevel :
3389
3399
  {}), level = point?.node && mapOptionsToLevel[point.node.level] || {}, options = this.options, stateOptions = state && options.states && options.states[state] || {}, className = point?.node && point.getClassName() || '',
3390
3400
  // Set attributes by precedence. Point trumps level trumps series.
3391
- // Stroke width uses pick because it can be 0.
3401
+ // Stroke width uses nullish coalescing because it can be 0.
3392
3402
  attr = {
3393
3403
  'stroke': (point && point.borderColor) ||
3394
3404
  level.borderColor ||
3395
3405
  stateOptions.borderColor ||
3396
3406
  options.borderColor,
3397
- 'stroke-width': (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point && point.borderWidth, level.borderWidth, stateOptions.borderWidth, options.borderWidth),
3407
+ 'stroke-width': ((point && point.borderWidth) ??
3408
+ level.borderWidth ??
3409
+ stateOptions.borderWidth ??
3410
+ options.borderWidth),
3398
3411
  'dashstyle': point?.borderDashStyle ||
3399
3412
  level.borderDashStyle ||
3400
3413
  stateOptions.borderDashStyle ||
@@ -3535,7 +3548,7 @@ class TreemapSeries extends ScatterSeries {
3535
3548
  const series = this, eventArgs = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.extend)({
3536
3549
  newRootId: id,
3537
3550
  previousRootId: series.rootNode,
3538
- redraw: (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(redraw, true),
3551
+ redraw: (redraw ?? true),
3539
3552
  series: series
3540
3553
  }, eventArguments);
3541
3554
  /**
@@ -3592,7 +3605,7 @@ class TreemapSeries extends ScatterSeries {
3592
3605
  // Sort the children
3593
3606
  (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.stableSort)(children, (a, b) => ((a.sortIndex || 0) - (b.sortIndex || 0)));
3594
3607
  // Set the values
3595
- let val = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point?.simulatedValue, point?.options.value, childrenTotal);
3608
+ let val = point?.simulatedValue ?? point?.options.value ?? childrenTotal;
3596
3609
  if (point) {
3597
3610
  point.value = val;
3598
3611
  }
@@ -3606,14 +3619,14 @@ class TreemapSeries extends ScatterSeries {
3606
3619
  children: children,
3607
3620
  childrenTotal: childrenTotal,
3608
3621
  // Ignore this node if point is not visible
3609
- ignore: !((0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point?.visible, true) && (val > 0)),
3622
+ ignore: !((point?.visible ?? true) && (val > 0)),
3610
3623
  isLeaf: tree.visible && !(series.type === 'treegraph' ?
3611
3624
  children.length > 0 :
3612
3625
  childrenTotal),
3613
3626
  isGroup: point?.isGroup,
3614
3627
  levelDynamic: (tree.level - (levelIsConstant ? 0 : nodeRoot.level)),
3615
- name: (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point?.name, ''),
3616
- sortIndex: (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(point?.sortIndex, -val),
3628
+ name: (point?.name ?? ''),
3629
+ sortIndex: (point?.sortIndex ?? -val),
3617
3630
  val: val
3618
3631
  });
3619
3632
  return tree;
@@ -3799,11 +3812,13 @@ var CenteredUtilities;
3799
3812
  innerSize = parseFloat(innerSize);
3800
3813
  }
3801
3814
  const positions = [
3802
- (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(centerOption?.[0], '50%'),
3803
- (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(centerOption?.[1], '50%'),
3815
+ (centerOption?.[0] ?? '50%'),
3816
+ (centerOption?.[1] ?? '50%'),
3804
3817
  // Prevent from negative values
3805
- (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(size && size < 0 ? void 0 : options.size, '100%'),
3806
- (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(innerSize && innerSize < 0 ? void 0 : options.innerSize || 0, '0%')
3818
+ ((size && size < 0 ? void 0 : options.size) ?? '100%'),
3819
+ ((innerSize && innerSize < 0 ?
3820
+ void 0 :
3821
+ options.innerSize || 0) ?? '0%')
3807
3822
  ];
3808
3823
  for (i = 0; i < 4; ++i) {
3809
3824
  value = positions[i];
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/textpath
4
4
  * @requires highcharts
5
5
  *
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/textpath
5
5
  * @requires highcharts
6
6
  *
@@ -1,5 +1,5 @@
1
1
  !/**
2
- * Highcharts JS v13.0.1 (2026-08-17)
2
+ * Highcharts JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/tiledwebmap
4
4
  * @requires highcharts
5
5
  *
@@ -10,4 +10,4 @@
10
10
  */function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(e._Highcharts,e._Highcharts.Fx,e._Highcharts.SeriesRegistry):"function"==typeof define&&define.amd?define("highcharts/modules/tiledwebmap",["highcharts/highcharts"],function(e){return t(e,e.Fx,e.SeriesRegistry)}):"object"==typeof exports?exports["highcharts/modules/tiledwebmap"]=t(e._Highcharts,e._Highcharts.Fx,e._Highcharts.SeriesRegistry):e.Highcharts=t(e.Highcharts,e.Highcharts.Fx,e.Highcharts.SeriesRegistry)}("u"<typeof window?this:window,(e,t,o)=>(()=>{"use strict";var r={168(e){e.exports=t},512(e){e.exports=o},944(t){t.exports=e}};let i={};function a(e){let t=i[e];if(void 0!==t)return t.exports;let o=i[e]={exports:{}};return r[e](o,o.exports,a),o.exports}a.n=e=>{let t=e&&e.__esModule?()=>e.default:()=>e;return a.d(t,{a:t}),t},a.d=(e,t)=>{if(Array.isArray(t))for(var o=0;o<t.length;){var r=t[o++],i=t[o++];a.o(e,r)?0===i&&o++:0===i?Object.defineProperty(e,r,{enumerable:!0,value:t[o++]}):Object.defineProperty(e,r,{enumerable:!0,get:i})}else for(var r in t)a.o(t,r)&&!a.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},a.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let s={};a.d(s,{default:()=>M});var n=a(944),p=a.n(n);let l={Esri:class{constructor(){this.defaultCredits="Tiles &copy; Esri &mdash; Source: Esri, DeLorme, NAVTEQ, USGS, Intermap, iPC, NRCAN, Esri Japan, METI, Esri China (Hong Kong), Esri (Thailand), TomTom, 2012",this.initialProjectionName="WebMercator",this.themes={WorldStreetMap:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Street_Map/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20},DeLorme:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/Specialty/DeLorme_World_Base_Map/MapServer/tile/{z}/{y}/{x}",minZoom:1,maxZoom:11,credits:"Tiles &copy; Esri &mdash; Copyright: &copy;2012 DeLorme"},WorldTopoMap:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Topo_Map/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20,credits:"Tiles &copy; Esri &mdash; Esri, DeLorme, NAVTEQ, TomTom, Intermap, iPC, USGS, FAO, NPS, NRCAN, GeoBase, Kadaster NL, Ordnance Survey, Esri Japan, METI, Esri China (Hong Kong), and the GIS User Community"},WorldImagery:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20,credits:"Tiles &copy; Esri &mdash; Source: Esri, i-cubed, USDA, USGS, AEX, GeoEye, Getmapping, Aerogrid, IGN, IGP, UPR-EGP, and the GIS User Community"},WorldTerrain:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Terrain_Base/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:13,credits:"Tiles &copy; Esri &mdash; Source: USGS, Esri, TANA, DeLorme, and NPS"},WorldShadedRelief:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Shaded_Relief/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:13,credits:"Tiles &copy; Esri &mdash; Source: Esri"},WorldPhysical:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/World_Physical_Map/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:8,credits:"Tiles &copy; Esri &mdash; Source: US National Park Service"},NatGeoWorldMap:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/NatGeo_World_Map/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:16,credits:"Tiles &copy; Esri &mdash; National Geographic, Esri, DeLorme, NAVTEQ, UNEP-WCMC, USGS, NASA, ESA, METI, NRCAN, GEBCO, NOAA, iPC"},WorldGrayCanvas:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Light_Gray_Base/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:16,credits:"Tiles &copy; Esri &mdash; Esri, DeLorme, NAVTEQ"},WorldDarkGrayCanvas:{url:"https://server.arcgisonline.com/ArcGIS/rest/services/Canvas/World_Dark_Gray_Base/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:16,credits:"Tiles &copy; Esri &mdash; Esri, DeLorme, NAVTEQ"}}}},LimaLabs:class{constructor(){this.defaultCredits='Map data &copy;2023 <a href="https://maps.lima-labs.com/">LimaLabs</a>',this.initialProjectionName="WebMercator",this.requiresApiKey=!0,this.themes={Standard:{url:"https://cdn.lima-labs.com/{zoom}/{x}/{y}.png?api={apikey}",minZoom:0,maxZoom:20}}}},OpenStreetMap:class{constructor(){this.defaultCredits='Map data &copy2023 <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a>',this.initialProjectionName="WebMercator",this.subdomains=["a","b","c"],this.themes={Standard:{url:"https://tile.openstreetmap.org/{zoom}/{x}/{y}.png",minZoom:0,maxZoom:19},Hot:{url:"https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png",minZoom:0,maxZoom:19},OpenTopoMap:{url:"https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png",minZoom:0,maxZoom:17,credits:`Map data: &copy; <a href="https://www.openstreetmap.org/copyright">
11
11
  OpenStreetMap</a> contributors, <a href="https://viewfinderpanoramas.org">SRTM</a>
12
12
  | Map style: &copy; <a href="https://opentopomap.org">OpenTopoMap</a>
13
- (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)`}}}},Stamen:class{constructor(){this.defaultCredits='&copy; Map tiles by <a href="https://stamen.com">Stamen Design</a>, under <a href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>. Data by <a href="https://openstreetmap.org">OpenStreetMap</a>, under <a href="https://www.openstreetmap.org/copyright">ODbL</a>',this.initialProjectionName="WebMercator",this.subdomains=["a","b","c","d"],this.themes={Toner:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/toner/{z}/{x}/{y}.png",minZoom:0,maxZoom:20},TonerBackground:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/toner-background/{z}/{x}/{y}.png",minZoom:0,maxZoom:20},TonerLite:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/toner-lite/{z}/{x}/{y}.png",minZoom:0,maxZoom:20},Terrain:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png",minZoom:0,maxZoom:18},TerrainBackground:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/terrain-background/{z}/{x}/{y}.png",minZoom:0,maxZoom:18},Watercolor:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png",minZoom:1,maxZoom:16,credits:'&copy Map tiles by <a href="https://stamen.com">Stamen Design</a>, under <a href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>. Data by <a href="https://openstreetmap.org">OpenStreetMap</a>, under <a href="https://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>'}}}},Thunderforest:class{constructor(){this.defaultCredits='Maps &copy <a href="https://www.thunderforest.com">Thunderforest</a>, Data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap contributors</a>',this.initialProjectionName="WebMercator",this.requiresApiKey=!0,this.subdomains=["a","b","c"],this.themes={OpenCycleMap:{url:"https://{s}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Transport:{url:"https://{s}.tile.thunderforest.com/transport/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},TransportDark:{url:"https://{s}.tile.thunderforest.com/transport-dark/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},SpinalMap:{url:"https://{s}.tile.thunderforest.com/spinal-map/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Landscape:{url:"https://{s}.tile.thunderforest.com/landscape/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Outdoors:{url:"https://{s}.tile.thunderforest.com/outdoors/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Pioneer:{url:"https://{s}.tile.thunderforest.com/pioneer/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},MobileAtlas:{url:"https://{s}.tile.thunderforest.com/mobile-atlas/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Neighbourhood:{url:"https://{s}.tile.thunderforest.com/neighbourhood/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22}}}},USGS:class{constructor(){this.defaultCredits='Tiles courtesy of the <a href="https://usgs.gov/">U.S. GeologicalSurvey</a>',this.initialProjectionName="WebMercator",this.themes={USTopo:{url:"https://basemap.nationalmap.gov/arcgis/rest/services/USGSTopo/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20},USImagery:{url:"https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryOnly/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20},USImageryTopo:{url:"https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryTopo/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20}}}}};var m=a(168),h=a.n(m),c=a(512),d=a.n(c);let{composed:y}=p(),{map:u}=d().seriesTypes;function g(e){let{geoBounds:t,chart:o}=e,r=(o.options.series||[]).filter(e=>"tiledwebmap"===e.type)[0];if(r&&r.provider&&r.provider.type&&!r.provider.url){let e=l[r.provider.type];if((0,n.defined)(e)){let{initialProjectionName:o}=new e;if(t){let{x1:e,y1:r,x2:i,y2:a}=t;this.recommendedMapView={projection:{name:o,parallels:[r,a],rotation:[-(e+i)/2]}}}else this.recommendedMapView={projection:{name:o},minZoom:0};return!1}(0,n.error)("Highcharts warning: Tiles Provider not defined in the Provider Registry.",!1)}return!0}class f extends u{constructor(){super(...arguments),this.redrawTiles=!1,this.isAnimating=!1}static compose(e){(0,n.pushUnique)(y,"TiledWebMapSeries")&&(0,n.addEvent)(e,"onRecommendMapView",g)}lonLatToTile(e,t){let{lon:o,lat:r}=e;return{x:Math.floor((o+180)/360*Math.pow(2,t)),y:Math.floor((1-Math.log(Math.tan(r*Math.PI/180)+1/Math.cos(r*Math.PI/180))/Math.PI)/2*Math.pow(2,t))}}tileToLonLat(e,t,o){let r=e/Math.pow(2,o)*360-180,i=Math.PI-2*Math.PI*t/Math.pow(2,o);return{lon:r,lat:180/Math.PI*Math.atan(.5*(Math.exp(i)-Math.exp(-i)))}}drawPoints(){let e=this.chart,t=e.mapView;if(!t)return;let o=this.tiles=this.tiles||{},r=this.transformGroups=this.transformGroups||[],i=this,a=this.options.provider,{zoom:s}=t,p=(0,n.pick)(t.projection.options.rotation&&t.projection.options.rotation[0],0),m=200*!e.renderer.forExport,c=e=>{for(let r of Object.keys(o))parseFloat(r)===(t.zoom<0?0:Math.floor(t.zoom))||i.minZoom&&(t.zoom<0?0:Math.floor(t.zoom))<i.minZoom&&parseFloat(r)===i.minZoom||i.maxZoom&&(t.zoom<0?0:Math.floor(t.zoom))>i.maxZoom&&parseFloat(r)===i.maxZoom?Object.keys(o[r].tiles).forEach((t,i)=>{o[r].tiles[t].animate({opacity:1},{duration:e},()=>{i===Object.keys(o[r].tiles).length-1&&(o[r].isActive=!0)})}):Object.keys(o[r].tiles).forEach((t,i)=>{o[r].tiles[t].animate({opacity:0},{duration:e,defer:e/2},()=>{o[r].tiles[t].destroy(),delete o[r].tiles[t],i===Object.keys(o[r].tiles).length-1&&(o[r].isActive=!1,o[r].loaded=!1)})})},d=s<0?0:Math.floor(s),y=Math.pow(2,d),u=.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,d)),g=256*u;if(a&&(a.type||a.url)){if(a.type&&!a.url){let o=l[a.type];if(!(0,n.defined)(o))return void(0,n.error)("Highcharts warning: Tiles Provider '"+a.type+"' not defined in the ProviderRegistry.",!1);let r=new o,i=r.initialProjectionName,s,p="";if(a.theme&&(0,n.defined)(r.themes[a.theme]))s=r.themes[a.theme];else{let e=Object.keys(r.themes)[0];s=r.themes[e],(0,n.error)("Highcharts warning: The Tiles Provider's Theme '"+a.theme+"' is not defined in the Provider definition - falling back to '"+e+"'.",!1)}a.subdomain&&r.subdomains&&-1!==r.subdomains.indexOf(a.subdomain)?p=a.subdomain:(0,n.defined)(r.subdomains)&&-1!==s.url.indexOf("{s}")&&(p=(0,n.pick)(r.subdomains&&r.subdomains[0],""),(0,n.error)("Highcharts warning: The Tiles Provider's Subdomain '"+a.subdomain+"' is not defined in the Provider definition - falling back to '"+p+"'.",!1)),r.requiresApiKey&&(a.apiKey?s.url=s.url.replace("{apikey}",a.apiKey):((0,n.error)("Highcharts warning: The Tiles Provider requires API Key to use tiles, use provider.apiKey to provide a token.",!1),s.url=s.url.replace("?apikey={apikey}",""))),a.url=s.url.replace("{s}",p),this.minZoom=s.minZoom,this.maxZoom=s.maxZoom;let m=(0,n.pick)(e.userOptions.credits&&e.userOptions.credits.text,"Highcharts.com "+(0,n.pick)(s.credits,r.defaultCredits));e.credits?e.credits.update({text:m}):e.addCredits({text:m,style:(0,n.pick)(e.options.credits?.style,{})}),t.projection.options.name!==i&&(0,n.error)("Highcharts warning: The set projection is different than supported by Tiles Provider.",!1)}else t.projection.options.name||(0,n.error)("Highcharts warning: The set projection is different than supported by Tiles Provider.",!1);if((0,n.defined)(this.minZoom)&&d<this.minZoom?(y=Math.pow(2,d=this.minZoom),g=256*(u=.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,d)))):(0,n.defined)(this.maxZoom)&&d>this.maxZoom&&(y=Math.pow(2,d=this.maxZoom),g=256*(u=.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,d)))),t.projection&&t.projection.def){t.projection.hasCoordinates=!0,r[d]||(r[d]=e.renderer.g().add(this.group));let s=(s,n,p,l,h)=>{let d=s%y,u=n%y,f=d<0?d+y:d,x=u<0?u+y:u;if(!o[`${p}`].tiles[`${s},${n}`]&&a.url){let d,y=(d=a.url,d.replace("{x}",f.toString()).replace("{y}",x.toString()).replace("{zoom}",p.toString()).replace("{z}",p.toString()));o[p].loaded=!1,o[`${p}`].tiles[`${s},${n}`]=e.renderer.image(y,s*g-l,n*g-h,g,g).attr({zIndex:2,opacity:0}).on("load",function(){a.onload&&a.onload.apply(this),(p===(t.zoom<0?0:Math.floor(t.zoom))||p===i.minZoom)&&(o[`${p}`].actualTilesCount++,o[`${p}`].howManyTiles===o[`${p}`].actualTilesCount&&(o[p].loaded=!0,i.isAnimating?i.redrawTiles=!0:(i.redrawTiles=!1,c(m)),o[`${p}`].actualTilesCount=0))}).add(r[p]),o[`${p}`].tiles[`${s},${n}`].posX=s,o[`${p}`].tiles[`${s},${n}`].posY=n,o[`${p}`].tiles[`${s},${n}`].originalURL=y}},n=t.pixelsToProjectedUnits({x:0,y:0}),l=t.projection.def.inverse([n.x,n.y]),h={lon:l[0]-p,lat:l[1]},u=t.pixelsToProjectedUnits({x:e.plotWidth,y:e.plotHeight}),f=t.projection.def.inverse([u.x,u.y]),x={lon:f[0]-p,lat:f[1]};(h.lat>t.projection.maxLatitude||x.lat<-1*t.projection.maxLatitude)&&(h.lat=t.projection.maxLatitude,x.lat=-1*t.projection.maxLatitude);let M=this.lonLatToTile(h,d),S=this.lonLatToTile(x,d),T=this.tileToLonLat(M.x,M.y,d),v=t.projection.def.forward([T.lon+p,T.lat]),b=t.projectedUnitsToPixels({x:v[0],y:v[1]}),Z=M.x*g-b.x,w=M.y*g-b.y;o[`${d}`]||(o[`${d}`]={tiles:{},isActive:!1,howManyTiles:0,actualTilesCount:0,loaded:!1}),o[`${d}`].howManyTiles=(S.x-M.x+1)*(S.y-M.y+1),o[`${d}`].actualTilesCount=0;for(let e=M.x;e<=S.x;e++)for(let t=M.y;t<=S.y;t++)s(e,t,d,Z,w)}for(let r of Object.keys(o))for(let a of Object.keys(o[r].tiles))if(t.projection&&t.projection.def){let l=o[r].tiles[a];h().timers.length>0&&(0,n.stop)(l,"animator");let y=256*(.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,parseFloat(r)))),u=o[r].tiles[Object.keys(o[r].tiles)[0]],{posX:g,posY:f}=l;if((0,n.defined)(g)&&(0,n.defined)(f)&&(0,n.defined)(u.posX)&&(0,n.defined)(u.posY)){let a=this.tileToLonLat(u.posX,u.posY,parseFloat(r)),s=t.projection.def.forward([a.lon+p,a.lat]),n=t.projectedUnitsToPixels({x:s[0],y:s[1]}),h=u.posX*y-n.x,x=u.posY*y-n.y;if(e.renderer.globalAnimation&&e.hasRendered){let e=Number(l.attr("x")),t=Number(l.attr("y")),o=Number(l.attr("width")),r=Number(l.attr("height")),a=(i,a)=>{l.attr({x:e+(g*y-h-e)*a.pos,y:t+(f*y-x-t)*a.pos,width:o+(Math.ceil(y)+1-o)*a.pos,height:r+(Math.ceil(y)+1-r)*a.pos})};i.isAnimating=!0,l.attr({animator:0}).animate({animator:1},{step:a},function(){i.isAnimating=!1,i.redrawTiles&&(i.redrawTiles=!1,c(m))})}else(i.redrawTiles||parseFloat(r)!==d||(o[r].isActive||parseFloat(r)===d)&&Object.keys(o[r].tiles).map(e=>o[r].tiles[e]).some(e=>0===e.opacity))&&(i.redrawTiles=!1,c(m)),l.attr({x:g*y-h,y:f*y-x,width:Math.ceil(y)+1,height:Math.ceil(y)+1})}}}else(0,n.error)("Highcharts warning: Tiles Provider not defined in the Provider Registry.",!1)}update(e){let{transformGroups:t}=this,o=this.chart,r=o.mapView,{provider:i}=e;if(t&&(t.forEach(e=>{0!==Object.keys(e).length&&e.destroy()}),this.transformGroups=[]),r&&!(0,n.defined)(o.userOptions.mapView?.projection)&&i?.type){let e=l[i.type];e&&r.update({projection:{name:new e().initialProjectionName}},!1)}super.update.apply(this,arguments)}}f.defaultOptions=(0,n.merge)(u.defaultOptions,{states:{inactive:{enabled:!1}}}),d().registerSeriesType("tiledwebmap",f);let x=p();x.TilesProviderRegistry=x.TilesProviderRegistry||l,f.compose(x.MapView);let M=p();return s.default})());
13
+ (<a href="https://creativecommons.org/licenses/by-sa/3.0/">CC-BY-SA</a>)`}}}},Stamen:class{constructor(){this.defaultCredits='&copy; Map tiles by <a href="https://stamen.com">Stamen Design</a>, under <a href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>. Data by <a href="https://openstreetmap.org">OpenStreetMap</a>, under <a href="https://www.openstreetmap.org/copyright">ODbL</a>',this.initialProjectionName="WebMercator",this.subdomains=["a","b","c","d"],this.themes={Toner:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/toner/{z}/{x}/{y}.png",minZoom:0,maxZoom:20},TonerBackground:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/toner-background/{z}/{x}/{y}.png",minZoom:0,maxZoom:20},TonerLite:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/toner-lite/{z}/{x}/{y}.png",minZoom:0,maxZoom:20},Terrain:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/terrain/{z}/{x}/{y}.png",minZoom:0,maxZoom:18},TerrainBackground:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/terrain-background/{z}/{x}/{y}.png",minZoom:0,maxZoom:18},Watercolor:{url:"https://stamen-tiles-{s}.a.ssl.fastly.net/watercolor/{z}/{x}/{y}.png",minZoom:1,maxZoom:16,credits:'&copy Map tiles by <a href="https://stamen.com">Stamen Design</a>, under <a href="https://creativecommons.org/licenses/by/3.0">CC BY 3.0</a>. Data by <a href="https://openstreetmap.org">OpenStreetMap</a>, under <a href="https://creativecommons.org/licenses/by-sa/3.0">CC BY SA</a>'}}}},Thunderforest:class{constructor(){this.defaultCredits='Maps &copy <a href="https://www.thunderforest.com">Thunderforest</a>, Data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap contributors</a>',this.initialProjectionName="WebMercator",this.requiresApiKey=!0,this.subdomains=["a","b","c"],this.themes={OpenCycleMap:{url:"https://{s}.tile.thunderforest.com/cycle/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Transport:{url:"https://{s}.tile.thunderforest.com/transport/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},TransportDark:{url:"https://{s}.tile.thunderforest.com/transport-dark/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},SpinalMap:{url:"https://{s}.tile.thunderforest.com/spinal-map/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Landscape:{url:"https://{s}.tile.thunderforest.com/landscape/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Outdoors:{url:"https://{s}.tile.thunderforest.com/outdoors/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Pioneer:{url:"https://{s}.tile.thunderforest.com/pioneer/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},MobileAtlas:{url:"https://{s}.tile.thunderforest.com/mobile-atlas/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22},Neighbourhood:{url:"https://{s}.tile.thunderforest.com/neighbourhood/{z}/{x}/{y}.png?apikey={apikey}",minZoom:0,maxZoom:22}}}},USGS:class{constructor(){this.defaultCredits='Tiles courtesy of the <a href="https://usgs.gov/">U.S. GeologicalSurvey</a>',this.initialProjectionName="WebMercator",this.themes={USTopo:{url:"https://basemap.nationalmap.gov/arcgis/rest/services/USGSTopo/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20},USImagery:{url:"https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryOnly/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20},USImageryTopo:{url:"https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryTopo/MapServer/tile/{z}/{y}/{x}",minZoom:0,maxZoom:20}}}}};var m=a(168),h=a.n(m),c=a(512),d=a.n(c);let{composed:y}=p(),{map:u}=d().seriesTypes;function g(e){let{geoBounds:t,chart:o}=e,r=(o.options.series||[]).filter(e=>"tiledwebmap"===e.type)[0];if(r&&r.provider&&r.provider.type&&!r.provider.url){let e=l[r.provider.type];if((0,n.defined)(e)){let{initialProjectionName:o}=new e;if(t){let{x1:e,y1:r,x2:i,y2:a}=t;this.recommendedMapView={projection:{name:o,parallels:[r,a],rotation:[-(e+i)/2]}}}else this.recommendedMapView={projection:{name:o},minZoom:0};return!1}(0,n.error)("Highcharts warning: Tiles Provider not defined in the Provider Registry.",!1)}return!0}class f extends u{constructor(){super(...arguments),this.redrawTiles=!1,this.isAnimating=!1}static compose(e){(0,n.pushUnique)(y,"TiledWebMapSeries")&&(0,n.addEvent)(e,"onRecommendMapView",g)}lonLatToTile(e,t){let{lon:o,lat:r}=e;return{x:Math.floor((o+180)/360*Math.pow(2,t)),y:Math.floor((1-Math.log(Math.tan(r*Math.PI/180)+1/Math.cos(r*Math.PI/180))/Math.PI)/2*Math.pow(2,t))}}tileToLonLat(e,t,o){let r=e/Math.pow(2,o)*360-180,i=Math.PI-2*Math.PI*t/Math.pow(2,o);return{lon:r,lat:180/Math.PI*Math.atan(.5*(Math.exp(i)-Math.exp(-i)))}}drawPoints(){let e=this.chart,t=e.mapView;if(!t)return;let o=this.tiles=this.tiles||{},r=this.transformGroups=this.transformGroups||[],i=this,a=this.options.provider,{zoom:s}=t,p=(t.projection.options.rotation&&t.projection.options.rotation[0])??0,m=200*!e.renderer.forExport,c=e=>{for(let r of Object.keys(o))parseFloat(r)===(t.zoom<0?0:Math.floor(t.zoom))||i.minZoom&&(t.zoom<0?0:Math.floor(t.zoom))<i.minZoom&&parseFloat(r)===i.minZoom||i.maxZoom&&(t.zoom<0?0:Math.floor(t.zoom))>i.maxZoom&&parseFloat(r)===i.maxZoom?Object.keys(o[r].tiles).forEach((t,i)=>{o[r].tiles[t].animate({opacity:1},{duration:e},()=>{i===Object.keys(o[r].tiles).length-1&&(o[r].isActive=!0)})}):Object.keys(o[r].tiles).forEach((t,i)=>{o[r].tiles[t].animate({opacity:0},{duration:e,defer:e/2},()=>{o[r].tiles[t].destroy(),delete o[r].tiles[t],i===Object.keys(o[r].tiles).length-1&&(o[r].isActive=!1,o[r].loaded=!1)})})},d=s<0?0:Math.floor(s),y=Math.pow(2,d),u=.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,d)),g=256*u;if(a&&(a.type||a.url)){if(a.type&&!a.url){let o=l[a.type];if(!(0,n.defined)(o))return void(0,n.error)("Highcharts warning: Tiles Provider '"+a.type+"' not defined in the ProviderRegistry.",!1);let r=new o,i=r.initialProjectionName,s,p="";if(a.theme&&(0,n.defined)(r.themes[a.theme]))s=r.themes[a.theme];else{let e=Object.keys(r.themes)[0];s=r.themes[e],(0,n.error)("Highcharts warning: The Tiles Provider's Theme '"+a.theme+"' is not defined in the Provider definition - falling back to '"+e+"'.",!1)}a.subdomain&&r.subdomains&&-1!==r.subdomains.indexOf(a.subdomain)?p=a.subdomain:(0,n.defined)(r.subdomains)&&-1!==s.url.indexOf("{s}")&&(p=(r.subdomains&&r.subdomains[0])??"",(0,n.error)("Highcharts warning: The Tiles Provider's Subdomain '"+a.subdomain+"' is not defined in the Provider definition - falling back to '"+p+"'.",!1)),r.requiresApiKey&&(a.apiKey?s.url=s.url.replace("{apikey}",a.apiKey):((0,n.error)("Highcharts warning: The Tiles Provider requires API Key to use tiles, use provider.apiKey to provide a token.",!1),s.url=s.url.replace("?apikey={apikey}",""))),a.url=s.url.replace("{s}",p),this.minZoom=s.minZoom,this.maxZoom=s.maxZoom;let m=(e.userOptions.credits&&e.userOptions.credits.text)??"Highcharts.com "+(s.credits??r.defaultCredits);e.credits?e.credits.update({text:m}):e.addCredits({text:m,style:e.options.credits?.style??{}}),t.projection.options.name!==i&&(0,n.error)("Highcharts warning: The set projection is different than supported by Tiles Provider.",!1)}else t.projection.options.name||(0,n.error)("Highcharts warning: The set projection is different than supported by Tiles Provider.",!1);if((0,n.defined)(this.minZoom)&&d<this.minZoom?(y=Math.pow(2,d=this.minZoom),g=256*(u=.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,d)))):(0,n.defined)(this.maxZoom)&&d>this.maxZoom&&(y=Math.pow(2,d=this.maxZoom),g=256*(u=.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,d)))),t.projection&&t.projection.def){t.projection.hasCoordinates=!0,r[d]||(r[d]=e.renderer.g().add(this.group));let s=(s,n,p,l,h)=>{let d=s%y,u=n%y,f=d<0?d+y:d,x=u<0?u+y:u;if(!o[`${p}`].tiles[`${s},${n}`]&&a.url){let d,y=(d=a.url,d.replace("{x}",f.toString()).replace("{y}",x.toString()).replace("{zoom}",p.toString()).replace("{z}",p.toString()));o[p].loaded=!1,o[`${p}`].tiles[`${s},${n}`]=e.renderer.image(y,s*g-l,n*g-h,g,g).attr({zIndex:2,opacity:0}).on("load",function(){a.onload&&a.onload.apply(this),(p===(t.zoom<0?0:Math.floor(t.zoom))||p===i.minZoom)&&(o[`${p}`].actualTilesCount++,o[`${p}`].howManyTiles===o[`${p}`].actualTilesCount&&(o[p].loaded=!0,i.isAnimating?i.redrawTiles=!0:(i.redrawTiles=!1,c(m)),o[`${p}`].actualTilesCount=0))}).add(r[p]),o[`${p}`].tiles[`${s},${n}`].posX=s,o[`${p}`].tiles[`${s},${n}`].posY=n,o[`${p}`].tiles[`${s},${n}`].originalURL=y}},n=t.pixelsToProjectedUnits({x:0,y:0}),l=t.projection.def.inverse([n.x,n.y]),h={lon:l[0]-p,lat:l[1]},u=t.pixelsToProjectedUnits({x:e.plotWidth,y:e.plotHeight}),f=t.projection.def.inverse([u.x,u.y]),x={lon:f[0]-p,lat:f[1]};(h.lat>t.projection.maxLatitude||x.lat<-1*t.projection.maxLatitude)&&(h.lat=t.projection.maxLatitude,x.lat=-1*t.projection.maxLatitude);let M=this.lonLatToTile(h,d),S=this.lonLatToTile(x,d),T=this.tileToLonLat(M.x,M.y,d),v=t.projection.def.forward([T.lon+p,T.lat]),b=t.projectedUnitsToPixels({x:v[0],y:v[1]}),Z=M.x*g-b.x,w=M.y*g-b.y;o[`${d}`]||(o[`${d}`]={tiles:{},isActive:!1,howManyTiles:0,actualTilesCount:0,loaded:!1}),o[`${d}`].howManyTiles=(S.x-M.x+1)*(S.y-M.y+1),o[`${d}`].actualTilesCount=0;for(let e=M.x;e<=S.x;e++)for(let t=M.y;t<=S.y;t++)s(e,t,d,Z,w)}for(let r of Object.keys(o))for(let a of Object.keys(o[r].tiles))if(t.projection&&t.projection.def){let l=o[r].tiles[a];h().timers.length>0&&(0,n.stop)(l,"animator");let y=256*(.638436911716859*Math.pow(2,s)/(.638436911716859*Math.pow(2,parseFloat(r)))),u=o[r].tiles[Object.keys(o[r].tiles)[0]],{posX:g,posY:f}=l;if((0,n.defined)(g)&&(0,n.defined)(f)&&(0,n.defined)(u.posX)&&(0,n.defined)(u.posY)){let a=this.tileToLonLat(u.posX,u.posY,parseFloat(r)),s=t.projection.def.forward([a.lon+p,a.lat]),n=t.projectedUnitsToPixels({x:s[0],y:s[1]}),h=u.posX*y-n.x,x=u.posY*y-n.y;if(e.renderer.globalAnimation&&e.hasRendered){let e=Number(l.attr("x")),t=Number(l.attr("y")),o=Number(l.attr("width")),r=Number(l.attr("height")),a=(i,a)=>{l.attr({x:e+(g*y-h-e)*a.pos,y:t+(f*y-x-t)*a.pos,width:o+(Math.ceil(y)+1-o)*a.pos,height:r+(Math.ceil(y)+1-r)*a.pos})};i.isAnimating=!0,l.attr({animator:0}).animate({animator:1},{step:a},function(){i.isAnimating=!1,i.redrawTiles&&(i.redrawTiles=!1,c(m))})}else(i.redrawTiles||parseFloat(r)!==d||(o[r].isActive||parseFloat(r)===d)&&Object.keys(o[r].tiles).map(e=>o[r].tiles[e]).some(e=>0===e.opacity))&&(i.redrawTiles=!1,c(m)),l.attr({x:g*y-h,y:f*y-x,width:Math.ceil(y)+1,height:Math.ceil(y)+1})}}}else(0,n.error)("Highcharts warning: Tiles Provider not defined in the Provider Registry.",!1)}update(e){let{transformGroups:t}=this,o=this.chart,r=o.mapView,{provider:i}=e;if(t&&(t.forEach(e=>{0!==Object.keys(e).length&&e.destroy()}),this.transformGroups=[]),r&&!(0,n.defined)(o.userOptions.mapView?.projection)&&i?.type){let e=l[i.type];e&&r.update({projection:{name:new e().initialProjectionName}},!1)}super.update.apply(this,arguments)}}f.defaultOptions=(0,n.merge)(u.defaultOptions,{states:{inactive:{enabled:!1}}}),d().registerSeriesType("tiledwebmap",f);let x=p();x.TilesProviderRegistry=x.TilesProviderRegistry||l,f.compose(x.MapView);let M=p();return s.default})());
@@ -1,6 +1,6 @@
1
1
  // SPDX-License-Identifier: LicenseRef-Highcharts
2
2
  /**
3
- * @license Highcharts JS v13.0.1 (2026-08-17)
3
+ * @license Highcharts JS v13.0.2 (2026-08-27)
4
4
  * @module highcharts/modules/tiledwebmap
5
5
  * @requires highcharts
6
6
  *
@@ -846,8 +846,8 @@ class TiledWebMapSeries extends MapSeries {
846
846
  if (!mapView) {
847
847
  return;
848
848
  }
849
- const tiles = (this.tiles = this.tiles || {}), transformGroups = (this.transformGroups = this.transformGroups || []), series = this, options = this.options, provider = options.provider, { zoom } = mapView, lambda = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)((mapView.projection.options.rotation &&
850
- mapView.projection.options.rotation[0]), 0), worldSize = 400.979322, tileSize = 256, duration = chart.renderer.forExport ? 0 : 200, animateTiles = (duration) => {
849
+ const tiles = (this.tiles = this.tiles || {}), transformGroups = (this.transformGroups = this.transformGroups || []), series = this, options = this.options, provider = options.provider, { zoom } = mapView, lambda = ((mapView.projection.options.rotation &&
850
+ mapView.projection.options.rotation[0]) ?? 0), worldSize = 400.979322, tileSize = 256, duration = chart.renderer.forExport ? 0 : 200, animateTiles = (duration) => {
851
851
  for (const zoomKey of Object.keys(tiles)) {
852
852
  if ((parseFloat(zoomKey) === (mapView.zoom < 0 ? 0 :
853
853
  Math.floor(mapView.zoom))) ||
@@ -928,7 +928,7 @@ class TiledWebMapSeries extends MapSeries {
928
928
  else if ((0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.defined)(def.subdomains) &&
929
929
  // Do not show warning if no subdomain in URL
930
930
  theme.url.indexOf('{s}') !== -1) {
931
- subdomain = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(def.subdomains && def.subdomains[0], '');
931
+ subdomain = ((def.subdomains && def.subdomains[0]) ?? '');
932
932
  (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.error)('Highcharts warning: The Tiles Provider\'s Subdomain ' +
933
933
  '\'' + provider.subdomain + '\' is not defined in ' +
934
934
  'the Provider definition - falling back to \'' +
@@ -951,7 +951,9 @@ class TiledWebMapSeries extends MapSeries {
951
951
  this.minZoom = theme.minZoom;
952
952
  this.maxZoom = theme.maxZoom;
953
953
  // Add as credits.text, to prevent changing the default mapText
954
- const creditsText = (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(chart.userOptions.credits && chart.userOptions.credits.text, 'Highcharts.com ' + (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(theme.credits, def.defaultCredits));
954
+ const creditsText = ((chart.userOptions.credits &&
955
+ chart.userOptions.credits.text) ??
956
+ ('Highcharts.com ' + (theme.credits ?? def.defaultCredits)));
955
957
  if (chart.credits) {
956
958
  chart.credits.update({
957
959
  text: creditsText
@@ -960,7 +962,7 @@ class TiledWebMapSeries extends MapSeries {
960
962
  else {
961
963
  chart.addCredits({
962
964
  text: creditsText,
963
- style: (0,highcharts_commonjs_highcharts_commonjs2_highcharts_root_Highcharts_.pick)(chart.options.credits?.style, {})
965
+ style: (chart.options.credits?.style ?? {})
964
966
  });
965
967
  }
966
968
  if (mapView.projection.options.name !== providerProjection) {