highcharts 13.0.0 → 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 (1264) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +2 -1
  3. package/es-modules/Accessibility/A11yI18n.js +4 -4
  4. package/es-modules/Accessibility/Accessibility.js +38 -1
  5. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +6 -4
  6. package/es-modules/Accessibility/Components/LegendComponent.js +3 -4
  7. package/es-modules/Accessibility/Components/NavigatorComponent.js +3 -4
  8. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +13 -10
  9. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +8 -4
  10. package/es-modules/Accessibility/Components/ZoomComponent.js +2 -2
  11. package/es-modules/Accessibility/FocusBorder.js +2 -2
  12. package/es-modules/Accessibility/Options/A11yDefaults.js +12 -3
  13. package/es-modules/Accessibility/Options/DeprecatedOptions.js +1 -2
  14. package/es-modules/Accessibility/ProxyElement.js +1 -0
  15. package/es-modules/Core/Animation/AnimationUtilities.js +34 -43
  16. package/es-modules/Core/Animation/Fx.js +16 -19
  17. package/es-modules/Core/Axis/Axis.js +49 -59
  18. package/es-modules/Core/Axis/Axis3DComposition.js +8 -6
  19. package/es-modules/Core/Axis/AxisDefaults.js +12 -2
  20. package/es-modules/Core/Axis/BrokenAxis.js +6 -5
  21. package/es-modules/Core/Axis/Color/ColorAxis.js +24 -12
  22. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -3
  23. package/es-modules/Core/Axis/GridAxis.js +12 -5
  24. package/es-modules/Core/Axis/LogarithmicAxis.js +5 -3
  25. package/es-modules/Core/Axis/NavigatorAxisComposition.js +2 -2
  26. package/es-modules/Core/Axis/OrdinalAxis.js +21 -11
  27. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -2
  28. package/es-modules/Core/Axis/RadialAxis.js +23 -22
  29. package/es-modules/Core/Axis/ScrollbarAxis.js +3 -3
  30. package/es-modules/Core/Axis/Stacking/StackItem.js +5 -5
  31. package/es-modules/Core/Axis/Stacking/StackingAxis.js +5 -6
  32. package/es-modules/Core/Axis/Tick.js +10 -11
  33. package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +1 -1
  34. package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -3
  35. package/es-modules/Core/Chart/Chart.js +58 -53
  36. package/es-modules/Core/Chart/Chart3D.js +3 -3
  37. package/es-modules/Core/Chart/ChartDefaults.js +24 -1
  38. package/es-modules/Core/Chart/MapChart.js +7 -10
  39. package/es-modules/Core/Chart/StockChart.js +15 -11
  40. package/es-modules/Core/Color/Color.js +3 -1
  41. package/es-modules/Core/Defaults.js +44 -2
  42. package/es-modules/Core/Globals.js +1 -1
  43. package/es-modules/Core/Legend/Legend.js +20 -17
  44. package/es-modules/Core/Legend/LegendSymbol.js +2 -2
  45. package/es-modules/Core/MSPointer.js +2 -2
  46. package/es-modules/Core/Math3D.js +6 -7
  47. package/es-modules/Core/Pointer.js +20 -10
  48. package/es-modules/Core/Renderer/HTML/AST.js +5 -1
  49. package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -16
  50. package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
  51. package/es-modules/Core/Renderer/SVG/SVGElement.js +12 -11
  52. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +2 -2
  53. package/es-modules/Core/Renderer/SVG/SVGLabel.js +5 -5
  54. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +6 -6
  55. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +13 -12
  56. package/es-modules/Core/Renderer/SVG/Symbols.js +6 -5
  57. package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
  58. package/es-modules/Core/Responsive.js +7 -5
  59. package/es-modules/Core/Series/DataLabel.js +9 -8
  60. package/es-modules/Core/Series/OverlappingDataLabels.js +5 -2
  61. package/es-modules/Core/Series/Point.js +31 -24
  62. package/es-modules/Core/Series/Series.js +125 -82
  63. package/es-modules/Core/Series/Series3D.js +2 -2
  64. package/es-modules/Core/Series/SeriesDefaults.js +33 -0
  65. package/es-modules/Core/Templating.js +18 -15
  66. package/es-modules/Core/Tooltip.js +12 -9
  67. package/es-modules/Core/Utilities.js +4 -3
  68. package/es-modules/Data/Connectors/DataConnector.js +2 -2
  69. package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
  70. package/es-modules/Data/DataTable.js +17 -0
  71. package/es-modules/Data/DataTableCore.js +1 -1
  72. package/es-modules/Extensions/Annotations/Annotation.js +5 -6
  73. package/es-modules/Extensions/Annotations/AnnotationChart.js +2 -2
  74. package/es-modules/Extensions/Annotations/AnnotationDefaults.js +4 -4
  75. package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
  76. package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +2 -2
  77. package/es-modules/Extensions/Annotations/EventEmitter.js +4 -4
  78. package/es-modules/Extensions/Annotations/MockPoint.js +7 -9
  79. package/es-modules/Extensions/Annotations/NavigationBindings.js +6 -3
  80. package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +31 -4
  81. package/es-modules/Extensions/Annotations/Popup/Popup.js +3 -2
  82. package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +6 -8
  83. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +4 -4
  84. package/es-modules/Extensions/Annotations/Types/Measure.js +28 -10
  85. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +4 -2
  86. package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -1
  87. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +3 -3
  88. package/es-modules/Extensions/Boost/Boost.js +13 -0
  89. package/es-modules/Extensions/Boost/BoostChart.js +11 -4
  90. package/es-modules/Extensions/Boost/BoostSeries.js +17 -11
  91. package/es-modules/Extensions/Boost/WGLRenderer.js +9 -6
  92. package/es-modules/Extensions/Boost/WGLShader.js +3 -3
  93. package/es-modules/Extensions/BoostCanvas.js +2 -2
  94. package/es-modules/Extensions/BorderRadius.js +12 -10
  95. package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +6 -5
  96. package/es-modules/Extensions/DataGrouping/DataGrouping.js +2 -2
  97. package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +4 -3
  98. package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +2 -2
  99. package/es-modules/Extensions/DraggablePoints/DragDropProps.js +2 -3
  100. package/es-modules/Extensions/DraggablePoints/DraggableChart.js +1 -2
  101. package/es-modules/Extensions/Drilldown/Drilldown.js +1 -2
  102. package/es-modules/Extensions/Drilldown/DrilldownSeries.js +1 -2
  103. package/es-modules/Extensions/ExportData/ExportData.js +21 -16
  104. package/es-modules/Extensions/Exporting/Exporting.js +28 -28
  105. package/es-modules/Extensions/Exporting/ExportingDefaults.js +32 -0
  106. package/es-modules/Extensions/MarkerClusters/MarkerClusterScatter.js +1 -2
  107. package/es-modules/Extensions/MarkerClusters/MarkerClusters.js +1 -2
  108. package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +2 -2
  109. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +31 -4
  110. package/es-modules/Extensions/Pane/PaneComposition.js +2 -2
  111. package/es-modules/Extensions/Pane/PaneDefaults.js +1 -1
  112. package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -2
  113. package/es-modules/Extensions/ParallelCoordinates/ParallelCoordinates.js +3 -0
  114. package/es-modules/Extensions/PatternFill.js +7 -5
  115. package/es-modules/Extensions/PriceIndication.js +5 -4
  116. package/es-modules/Extensions/ScrollablePlotArea.js +8 -2
  117. package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +8 -9
  118. package/es-modules/Extensions/Sonification/MIDI.js +2 -3
  119. package/es-modules/Extensions/Sonification/Sonification.js +2 -2
  120. package/es-modules/Extensions/Sonification/SonificationSpeaker.js +3 -2
  121. package/es-modules/Extensions/Sonification/SynthPatch.js +4 -4
  122. package/es-modules/Extensions/Sonification/TimelineFromChart.js +11 -11
  123. package/es-modules/Gantt/Legacy.js +2 -2
  124. package/es-modules/Gantt/Pathfinder.js +3 -3
  125. package/es-modules/Gantt/PathfinderAlgorithms.js +4 -3
  126. package/es-modules/Gantt/Tree.js +1 -1
  127. package/es-modules/Maps/GeoJSONComposition.js +14 -1
  128. package/es-modules/Maps/MapNavigation.js +4 -4
  129. package/es-modules/Maps/MapPointer.js +2 -2
  130. package/es-modules/Maps/MapView.js +3 -3
  131. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +8 -6
  132. package/es-modules/Series/Area/AreaSeries.js +4 -5
  133. package/es-modules/Series/AreaRange/AreaRangeSeries.js +87 -147
  134. package/es-modules/Series/AreaRange/AreaRangeSeriesDefaults.js +42 -4
  135. package/es-modules/Series/Bellcurve/BellcurveSeries.js +10 -6
  136. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +40 -32
  137. package/es-modules/Series/BoxPlot/BoxPlotSeriesDefaults.js +33 -1
  138. package/es-modules/Series/Bubble/BubbleLegendItem.js +10 -6
  139. package/es-modules/Series/Bubble/BubbleSeries.js +25 -9
  140. package/es-modules/Series/Bullet/BulletSeries.js +17 -10
  141. package/es-modules/Series/Candlestick/CandlestickSeries.js +3 -3
  142. package/es-modules/Series/CenteredUtilities.js +12 -9
  143. package/es-modules/Series/ColorMapComposition.js +7 -4
  144. package/es-modules/Series/Column/ColumnPoint.js +2 -0
  145. package/es-modules/Series/Column/ColumnSeries.js +14 -14
  146. package/es-modules/Series/Column/ColumnSeriesDefaults.js +4 -2
  147. package/es-modules/Series/Column3D/Column3DComposition.js +22 -19
  148. package/es-modules/Series/ColumnPyramid/ColumnPyramidPoint.js +18 -0
  149. package/es-modules/Series/ColumnPyramid/ColumnPyramidPointOptions.js +12 -0
  150. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +7 -6
  151. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeriesOptions.js +12 -0
  152. package/es-modules/Series/ColumnRange/ColumnRangePoint.js +2 -0
  153. package/es-modules/Series/ColumnRange/ColumnRangePointOptions.js +12 -0
  154. package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +13 -144
  155. package/es-modules/Series/ColumnRange/ColumnRangeSeriesDefaults.js +148 -0
  156. package/es-modules/Series/ColumnRange/ColumnRangeSeriesOptions.js +12 -0
  157. package/es-modules/Series/Contour/ContourPoint.js +2 -0
  158. package/es-modules/Series/Contour/ContourSeries.js +1 -0
  159. package/es-modules/Series/Contour/ContourSeriesDefaults.js +7 -0
  160. package/es-modules/Series/Contour/ContourShader.js +9 -1
  161. package/es-modules/Series/CrossSymbol.js +3 -2
  162. package/es-modules/Series/Cylinder/CylinderComposition.js +12 -12
  163. package/es-modules/Series/Cylinder/CylinderPoint.js +2 -0
  164. package/es-modules/Series/Cylinder/CylinderPointOptions.js +15 -0
  165. package/es-modules/Series/Cylinder/CylinderSeries.js +2 -1
  166. package/es-modules/Series/Cylinder/CylinderSeriesOptions.js +15 -0
  167. package/es-modules/Series/Cylinder/SVGElement3DCylinder.js +2 -0
  168. package/es-modules/Series/DataModifyComposition.js +9 -7
  169. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +3 -1
  170. package/es-modules/Series/DependencyWheel/DependencyWheelPointOptions.js +14 -0
  171. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +8 -8
  172. package/es-modules/Series/DependencyWheel/DependencyWheelSeriesOptions.js +14 -0
  173. package/es-modules/Series/DerivedComposition.js +9 -8
  174. package/es-modules/Series/DotPlot/DotPlotPoint.js +18 -0
  175. package/es-modules/Series/DotPlot/DotPlotPointOptions.js +12 -0
  176. package/es-modules/Series/DotPlot/DotPlotSeries.js +6 -4
  177. package/es-modules/Series/DotPlot/DotPlotSeriesOptions.js +12 -0
  178. package/es-modules/Series/DragNodesComposition.js +11 -8
  179. package/es-modules/Series/DrawPointUtilities.js +3 -1
  180. package/es-modules/Series/Dumbbell/DumbbellPoint.js +19 -6
  181. package/es-modules/Series/Dumbbell/DumbbellPointOptions.js +12 -0
  182. package/es-modules/Series/Dumbbell/DumbbellSeries.js +33 -15
  183. package/es-modules/Series/Dumbbell/DumbbellSeriesOptions.js +12 -0
  184. package/es-modules/Series/ErrorBar/ErrorBarPoint.js +18 -0
  185. package/es-modules/Series/ErrorBar/ErrorBarPointOptions.js +12 -0
  186. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +6 -9
  187. package/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js +15 -1
  188. package/es-modules/Series/ErrorBar/ErrorBarSeriesOptions.js +12 -0
  189. package/es-modules/Series/Flags/FlagsSeries.js +5 -14
  190. package/es-modules/Series/Flags/FlagsSeriesDefaults.js +2 -1
  191. package/es-modules/Series/FlowMap/FlowMapPoint.js +5 -3
  192. package/es-modules/Series/FlowMap/FlowMapSeries.js +17 -9
  193. package/es-modules/Series/Funnel/FunnelSeries.js +25 -26
  194. package/es-modules/Series/Funnel/FunnelSeriesDefaults.js +12 -0
  195. package/es-modules/Series/Funnel3D/Funnel3DSeries.js +7 -5
  196. package/es-modules/Series/Gantt/GanttSeries.js +2 -1
  197. package/es-modules/Series/Gauge/GaugeSeries.js +2 -2
  198. package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +9 -9
  199. package/es-modules/Series/GraphLayoutComposition.js +3 -3
  200. package/es-modules/Series/Heatmap/HeatmapPoint.js +6 -6
  201. package/es-modules/Series/Heatmap/HeatmapPointOptions.js +12 -0
  202. package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -13
  203. package/es-modules/Series/Heatmap/HeatmapSeriesOptions.js +12 -0
  204. package/es-modules/Series/Histogram/HistogramPoint.js +17 -0
  205. package/es-modules/Series/Histogram/HistogramPointOptions.js +12 -0
  206. package/es-modules/Series/Histogram/HistogramSeries.js +15 -3
  207. package/es-modules/Series/Histogram/HistogramSeriesOptions.js +12 -0
  208. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +9 -9
  209. package/es-modules/Series/InterpolationUtilities.js +5 -5
  210. package/es-modules/Series/Item/ItemPointOptions.js +14 -0
  211. package/es-modules/Series/Item/ItemSeries.js +18 -6
  212. package/es-modules/Series/Item/ItemSeriesOptions.js +14 -0
  213. package/es-modules/Series/Map/MapPoint.js +5 -3
  214. package/es-modules/Series/Map/MapSeries.js +6 -10
  215. package/es-modules/Series/Map/MapSeriesDefaults.js +11 -1
  216. package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +3 -3
  217. package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +14 -9
  218. package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +12 -0
  219. package/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +18 -9
  220. package/es-modules/Series/NodesComposition.js +9 -10
  221. package/es-modules/Series/OHLC/OHLCPoint.js +2 -2
  222. package/es-modules/Series/OHLC/OHLCSeries.js +1 -0
  223. package/es-modules/Series/Organization/OrganizationPoint.js +3 -2
  224. package/es-modules/Series/Organization/OrganizationSeries.js +29 -7
  225. package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +11 -4
  226. package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -3
  227. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +5 -5
  228. package/es-modules/Series/Pictorial/PictorialSeries.js +4 -2
  229. package/es-modules/Series/Pie/PieDataLabel.js +2 -2
  230. package/es-modules/Series/Pie/PiePoint.js +3 -4
  231. package/es-modules/Series/Pie/PieSeries.js +3 -2
  232. package/es-modules/Series/Pie3D/Pie3DSeries.js +8 -4
  233. package/es-modules/Series/PolarComposition.js +13 -14
  234. package/es-modules/Series/Polygon/PolygonSeries.js +2 -2
  235. package/es-modules/Series/Polygon/PolygonSeriesDefaults.js +20 -0
  236. package/es-modules/Series/RangeDataLabel.js +128 -0
  237. package/es-modules/Series/Sankey/SankeySeries.js +13 -7
  238. package/es-modules/Series/Sankey/SankeySeriesDefaults.js +2 -2
  239. package/es-modules/Series/Scatter/ScatterSeries.js +6 -5
  240. package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +2 -0
  241. package/es-modules/Series/SimulationSeriesUtilities.js +1 -2
  242. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +4 -4
  243. package/es-modules/Series/Spline/SplineSeries.js +5 -5
  244. package/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +8 -0
  245. package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +20 -12
  246. package/es-modules/Series/Tilemap/TilemapSeriesDefaults.js +2 -1
  247. package/es-modules/Series/Tilemap/TilemapShapes.js +2 -2
  248. package/es-modules/Series/Timeline/TimelinePoint.js +2 -2
  249. package/es-modules/Series/Timeline/TimelineSeries.js +13 -6
  250. package/es-modules/Series/TreeUtilities.js +16 -7
  251. package/es-modules/Series/Treegraph/TreegraphLink.js +2 -2
  252. package/es-modules/Series/Treegraph/TreegraphSeries.js +22 -13
  253. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  254. package/es-modules/Series/Treemap/TreemapSeries.js +14 -11
  255. package/es-modules/Series/Treemap/TreemapSeriesDefaults.js +22 -1
  256. package/es-modules/Series/VariablePie/VariablePieSeries.js +6 -4
  257. package/es-modules/Series/VariablePie/VariablePieSeriesDefaults.js +3 -2
  258. package/es-modules/Series/Variwide/VariwideSeries.js +2 -2
  259. package/es-modules/Series/Vector/VectorSeries.js +7 -9
  260. package/es-modules/Series/Venn/VennSeries.js +3 -4
  261. package/es-modules/Series/Waterfall/WaterfallSeries.js +3 -3
  262. package/es-modules/Series/Windbarb/WindbarbSeries.js +8 -10
  263. package/es-modules/Series/XRange/XRangeSeries.js +8 -8
  264. package/es-modules/Shared/TimeBase.js +13 -8
  265. package/es-modules/Shared/Utilities.js +9 -7
  266. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -3
  267. package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +4 -3
  268. package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +1 -1
  269. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +2 -2
  270. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +1 -2
  271. package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +4 -4
  272. package/es-modules/Stock/Navigator/Navigator.js +26 -26
  273. package/es-modules/Stock/Navigator/NavigatorDefaults.js +9 -2
  274. package/es-modules/Stock/Navigator/NavigatorSymbols.js +2 -1
  275. package/es-modules/Stock/Navigator/StandaloneNavigator.js +55 -14
  276. package/es-modules/Stock/RangeSelector/RangeSelector.js +15 -11
  277. package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +3 -3
  278. package/es-modules/Stock/Scrollbar/Scrollbar.js +8 -7
  279. package/es-modules/Stock/StockTools/StockToolbar.js +6 -6
  280. package/es-modules/Stock/StockTools/StockTools.js +2 -2
  281. package/es-modules/Stock/StockTools/StockToolsBindings.js +7 -7
  282. package/es-modules/Stock/StockTools/StockToolsGui.js +6 -4
  283. package/es-modules/masters/highcharts-3d.src.js +1 -1
  284. package/es-modules/masters/highcharts-autoload.src.js +1 -1
  285. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  286. package/es-modules/masters/highcharts-more.src.js +1 -1
  287. package/es-modules/masters/highcharts.src.js +13 -8
  288. package/es-modules/masters/highmaps.src.js +1 -1
  289. package/es-modules/masters/highstock.src.js +1 -1
  290. package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
  291. package/es-modules/masters/i18n/fr-FR.src.js +1 -1
  292. package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
  293. package/es-modules/masters/i18n/nb-NO.src.js +1 -1
  294. package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
  295. package/es-modules/masters/i18n/zh-CN.src.js +1 -1
  296. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  297. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  298. package/es-modules/masters/indicators/ao.src.js +1 -1
  299. package/es-modules/masters/indicators/apo.src.js +1 -1
  300. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  301. package/es-modules/masters/indicators/aroon.src.js +1 -1
  302. package/es-modules/masters/indicators/atr.src.js +1 -1
  303. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  304. package/es-modules/masters/indicators/cci.src.js +1 -1
  305. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  306. package/es-modules/masters/indicators/cmf.src.js +1 -1
  307. package/es-modules/masters/indicators/cmo.src.js +1 -1
  308. package/es-modules/masters/indicators/dema.src.js +1 -1
  309. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  310. package/es-modules/masters/indicators/dmi.src.js +1 -1
  311. package/es-modules/masters/indicators/dpo.src.js +1 -1
  312. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  313. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  314. package/es-modules/masters/indicators/indicators.src.js +1 -1
  315. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  316. package/es-modules/masters/indicators/klinger.src.js +1 -1
  317. package/es-modules/masters/indicators/macd.src.js +1 -1
  318. package/es-modules/masters/indicators/mfi.src.js +1 -1
  319. package/es-modules/masters/indicators/momentum.src.js +1 -1
  320. package/es-modules/masters/indicators/natr.src.js +1 -1
  321. package/es-modules/masters/indicators/obv.src.js +1 -1
  322. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  323. package/es-modules/masters/indicators/ppo.src.js +1 -1
  324. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  325. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  326. package/es-modules/masters/indicators/psar.src.js +1 -1
  327. package/es-modules/masters/indicators/regressions.src.js +1 -1
  328. package/es-modules/masters/indicators/roc.src.js +1 -1
  329. package/es-modules/masters/indicators/rsi.src.js +1 -1
  330. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  331. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  332. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  333. package/es-modules/masters/indicators/tema.src.js +1 -1
  334. package/es-modules/masters/indicators/trendline.src.js +1 -1
  335. package/es-modules/masters/indicators/trix.src.js +1 -1
  336. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  337. package/es-modules/masters/indicators/vwap.src.js +1 -1
  338. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  339. package/es-modules/masters/indicators/wma.src.js +1 -1
  340. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  341. package/es-modules/masters/modules/accessibility.src.js +1 -1
  342. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  343. package/es-modules/masters/modules/annotations.src.js +1 -1
  344. package/es-modules/masters/modules/arc-diagram.src.js +1 -1
  345. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  346. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  347. package/es-modules/masters/modules/boost.src.js +1 -1
  348. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  349. package/es-modules/masters/modules/bullet.src.js +1 -1
  350. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  351. package/es-modules/masters/modules/contour.src.js +1 -1
  352. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  353. package/es-modules/masters/modules/cylinder.src.js +1 -1
  354. package/es-modules/masters/modules/data-sorting.src.js +1 -1
  355. package/es-modules/masters/modules/data-tools.src.js +1 -1
  356. package/es-modules/masters/modules/data.src.js +1 -1
  357. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  358. package/es-modules/masters/modules/debugger.src.js +1 -1
  359. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  360. package/es-modules/masters/modules/dotplot.src.js +1 -1
  361. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  362. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  363. package/es-modules/masters/modules/drilldown.src.js +1 -1
  364. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  365. package/es-modules/masters/modules/export-data.src.js +1 -1
  366. package/es-modules/masters/modules/exporting.src.js +1 -1
  367. package/es-modules/masters/modules/flowmap.src.js +2 -1
  368. package/es-modules/masters/modules/full-screen.src.js +1 -1
  369. package/es-modules/masters/modules/funnel.src.js +1 -1
  370. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  371. package/es-modules/masters/modules/gantt.src.js +1 -1
  372. package/es-modules/masters/modules/geoheatmap.src.js +1 -1
  373. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  374. package/es-modules/masters/modules/heatmap.src.js +1 -1
  375. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  376. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  377. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  378. package/es-modules/masters/modules/item-series.src.js +1 -1
  379. package/es-modules/masters/modules/lollipop.src.js +1 -1
  380. package/es-modules/masters/modules/map.src.js +1 -1
  381. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  382. package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
  383. package/es-modules/masters/modules/navigator.src.js +1 -1
  384. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  385. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  386. package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
  387. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  388. package/es-modules/masters/modules/organization.src.js +1 -1
  389. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  390. package/es-modules/masters/modules/pareto.src.js +1 -1
  391. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  392. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  393. package/es-modules/masters/modules/pictorial.src.js +1 -1
  394. package/es-modules/masters/modules/pointandfigure.src.js +1 -1
  395. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  396. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  397. package/es-modules/masters/modules/renko.src.js +1 -1
  398. package/es-modules/masters/modules/sankey.src.js +1 -1
  399. package/es-modules/masters/modules/series-label.src.js +1 -1
  400. package/es-modules/masters/modules/series-on-point.src.js +1 -1
  401. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  402. package/es-modules/masters/modules/sonification.src.js +1 -1
  403. package/es-modules/masters/modules/static-scale.src.js +1 -1
  404. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  405. package/es-modules/masters/modules/stock.src.js +1 -1
  406. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  407. package/es-modules/masters/modules/sunburst.src.js +3 -2
  408. package/es-modules/masters/modules/textpath.src.js +1 -1
  409. package/es-modules/masters/modules/tiledwebmap.src.js +1 -1
  410. package/es-modules/masters/modules/tilemap.src.js +1 -1
  411. package/es-modules/masters/modules/timeline.src.js +1 -1
  412. package/es-modules/masters/modules/treegraph.src.js +1 -1
  413. package/es-modules/masters/modules/treegrid.src.js +1 -1
  414. package/es-modules/masters/modules/treemap.src.js +1 -1
  415. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  416. package/es-modules/masters/modules/variwide.src.js +1 -1
  417. package/es-modules/masters/modules/vector.src.js +1 -1
  418. package/es-modules/masters/modules/venn.src.js +1 -1
  419. package/es-modules/masters/modules/windbarb.src.js +1 -1
  420. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  421. package/es-modules/masters/modules/xrange.src.js +1 -1
  422. package/es-modules/masters/standalone-navigator.src.js +1 -1
  423. package/es-modules/masters/themes/adaptive.src.js +1 -1
  424. package/es-modules/masters/themes/avocado.src.js +1 -1
  425. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  426. package/es-modules/masters/themes/grid-light.src.js +1 -1
  427. package/es-modules/masters/themes/high-contrast.src.js +1 -1
  428. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  429. package/es-modules/masters/themes/sunset.src.js +1 -1
  430. package/es-modules/tsconfig.tsbuildinfo +1 -1
  431. package/esm/highcharts-3d.js +2 -2
  432. package/esm/highcharts-3d.src.js +78 -55
  433. package/esm/highcharts-autoload.js +2 -2
  434. package/esm/highcharts-autoload.src.js +22 -8
  435. package/esm/highcharts-gantt.js +2 -2
  436. package/esm/highcharts-gantt.src.js +1 -24
  437. package/esm/highcharts-more.js +2 -2
  438. package/esm/highcharts-more.src.js +1198 -981
  439. package/esm/highcharts.js +5 -5
  440. package/esm/highcharts.src.js +702 -515
  441. package/esm/highmaps.js +2 -2
  442. package/esm/highmaps.src.js +1 -24
  443. package/esm/highstock.js +2 -2
  444. package/esm/highstock.src.js +1 -24
  445. package/esm/i18n/fr-FR.js +2 -2
  446. package/esm/i18n/fr-FR.src.js +22 -8
  447. package/esm/i18n/nb-NO.js +2 -2
  448. package/esm/i18n/nb-NO.src.js +22 -8
  449. package/esm/i18n/zh-CN.js +2 -2
  450. package/esm/i18n/zh-CN.src.js +22 -8
  451. package/esm/indicators/acceleration-bands.js +2 -2
  452. package/esm/indicators/acceleration-bands.src.js +22 -8
  453. package/esm/indicators/accumulation-distribution.js +2 -2
  454. package/esm/indicators/accumulation-distribution.src.js +22 -8
  455. package/esm/indicators/ao.js +2 -2
  456. package/esm/indicators/ao.src.js +22 -8
  457. package/esm/indicators/apo.js +2 -2
  458. package/esm/indicators/apo.src.js +22 -8
  459. package/esm/indicators/aroon-oscillator.js +2 -2
  460. package/esm/indicators/aroon-oscillator.src.js +22 -8
  461. package/esm/indicators/aroon.js +2 -2
  462. package/esm/indicators/aroon.src.js +24 -10
  463. package/esm/indicators/atr.js +2 -2
  464. package/esm/indicators/atr.src.js +22 -8
  465. package/esm/indicators/bollinger-bands.js +2 -2
  466. package/esm/indicators/bollinger-bands.src.js +22 -8
  467. package/esm/indicators/cci.js +2 -2
  468. package/esm/indicators/cci.src.js +22 -8
  469. package/esm/indicators/chaikin.js +2 -2
  470. package/esm/indicators/chaikin.src.js +22 -8
  471. package/esm/indicators/cmf.js +2 -2
  472. package/esm/indicators/cmf.src.js +22 -8
  473. package/esm/indicators/cmo.js +2 -2
  474. package/esm/indicators/cmo.src.js +22 -8
  475. package/esm/indicators/dema.js +2 -2
  476. package/esm/indicators/dema.src.js +22 -8
  477. package/esm/indicators/disparity-index.js +2 -2
  478. package/esm/indicators/disparity-index.src.js +22 -8
  479. package/esm/indicators/dmi.js +2 -2
  480. package/esm/indicators/dmi.src.js +22 -8
  481. package/esm/indicators/dpo.js +2 -2
  482. package/esm/indicators/dpo.src.js +25 -10
  483. package/esm/indicators/ichimoku-kinko-hyo.js +2 -2
  484. package/esm/indicators/ichimoku-kinko-hyo.src.js +22 -8
  485. package/esm/indicators/indicators-all.js +2 -2
  486. package/esm/indicators/indicators-all.src.js +31 -17
  487. package/esm/indicators/indicators.js +2 -2
  488. package/esm/indicators/indicators.src.js +24 -10
  489. package/esm/indicators/keltner-channels.js +2 -2
  490. package/esm/indicators/keltner-channels.src.js +22 -8
  491. package/esm/indicators/klinger.js +2 -2
  492. package/esm/indicators/klinger.src.js +22 -8
  493. package/esm/indicators/macd.js +2 -2
  494. package/esm/indicators/macd.src.js +22 -8
  495. package/esm/indicators/mfi.js +2 -2
  496. package/esm/indicators/mfi.src.js +22 -8
  497. package/esm/indicators/momentum.js +2 -2
  498. package/esm/indicators/momentum.src.js +22 -8
  499. package/esm/indicators/natr.js +2 -2
  500. package/esm/indicators/natr.src.js +22 -8
  501. package/esm/indicators/obv.js +2 -2
  502. package/esm/indicators/obv.src.js +22 -8
  503. package/esm/indicators/pivot-points.js +2 -2
  504. package/esm/indicators/pivot-points.src.js +22 -8
  505. package/esm/indicators/ppo.js +2 -2
  506. package/esm/indicators/ppo.src.js +22 -8
  507. package/esm/indicators/price-channel.js +2 -2
  508. package/esm/indicators/price-channel.src.js +22 -8
  509. package/esm/indicators/price-envelopes.js +2 -2
  510. package/esm/indicators/price-envelopes.src.js +22 -8
  511. package/esm/indicators/psar.js +2 -2
  512. package/esm/indicators/psar.src.js +22 -8
  513. package/esm/indicators/regressions.js +2 -2
  514. package/esm/indicators/regressions.src.js +22 -8
  515. package/esm/indicators/roc.js +2 -2
  516. package/esm/indicators/roc.src.js +22 -8
  517. package/esm/indicators/rsi.js +2 -2
  518. package/esm/indicators/rsi.src.js +23 -9
  519. package/esm/indicators/slow-stochastic.js +2 -2
  520. package/esm/indicators/slow-stochastic.src.js +22 -8
  521. package/esm/indicators/stochastic.js +2 -2
  522. package/esm/indicators/stochastic.src.js +22 -8
  523. package/esm/indicators/supertrend.js +2 -2
  524. package/esm/indicators/supertrend.src.js +22 -8
  525. package/esm/indicators/tema.js +2 -2
  526. package/esm/indicators/tema.src.js +22 -8
  527. package/esm/indicators/trendline.js +2 -2
  528. package/esm/indicators/trendline.src.js +22 -8
  529. package/esm/indicators/trix.js +2 -2
  530. package/esm/indicators/trix.src.js +22 -8
  531. package/esm/indicators/volume-by-price.js +2 -2
  532. package/esm/indicators/volume-by-price.src.js +23 -10
  533. package/esm/indicators/vwap.js +2 -2
  534. package/esm/indicators/vwap.src.js +22 -8
  535. package/esm/indicators/williams-r.js +2 -2
  536. package/esm/indicators/williams-r.src.js +22 -8
  537. package/esm/indicators/wma.js +2 -2
  538. package/esm/indicators/wma.src.js +22 -8
  539. package/esm/indicators/zigzag.js +2 -2
  540. package/esm/indicators/zigzag.src.js +22 -8
  541. package/esm/modules/accessibility.js +2 -2
  542. package/esm/modules/accessibility.src.js +564 -92
  543. package/esm/modules/annotations-advanced.js +11 -11
  544. package/esm/modules/annotations-advanced.src.js +224 -162
  545. package/esm/modules/annotations.js +11 -11
  546. package/esm/modules/annotations.src.js +184 -144
  547. package/esm/modules/arc-diagram.js +2 -2
  548. package/esm/modules/arc-diagram.src.js +37 -22
  549. package/esm/modules/arrow-symbols.js +3 -3
  550. package/esm/modules/arrow-symbols.src.js +22 -8
  551. package/esm/modules/boost-canvas.js +2 -2
  552. package/esm/modules/boost-canvas.src.js +60 -30
  553. package/esm/modules/boost.js +2 -2
  554. package/esm/modules/boost.src.js +72 -29
  555. package/esm/modules/broken-axis.js +2 -2
  556. package/esm/modules/broken-axis.src.js +27 -12
  557. package/esm/modules/bullet.js +2 -2
  558. package/esm/modules/bullet.src.js +38 -17
  559. package/esm/modules/coloraxis.js +2 -2
  560. package/esm/modules/coloraxis.src.js +47 -21
  561. package/esm/modules/contour.js +3 -3
  562. package/esm/modules/contour.src.js +46 -13
  563. package/esm/modules/current-date-indicator.js +2 -2
  564. package/esm/modules/current-date-indicator.src.js +22 -8
  565. package/esm/modules/cylinder.js +2 -2
  566. package/esm/modules/cylinder.src.js +46 -28
  567. package/esm/modules/data-sorting.js +2 -2
  568. package/esm/modules/data-sorting.src.js +22 -8
  569. package/esm/modules/data-tools.js +2 -2
  570. package/esm/modules/data-tools.src.js +44 -13
  571. package/esm/modules/data.js +4 -4
  572. package/esm/modules/data.src.js +23 -9
  573. package/esm/modules/datagrouping.js +2 -2
  574. package/esm/modules/datagrouping.src.js +28 -13
  575. package/esm/modules/debugger.js +2 -2
  576. package/esm/modules/debugger.src.js +22 -8
  577. package/esm/modules/dependency-wheel.js +2 -2
  578. package/esm/modules/dependency-wheel.src.js +428 -17
  579. package/esm/modules/dotplot.js +2 -2
  580. package/esm/modules/dotplot.src.js +27 -11
  581. package/esm/modules/drag-panes.js +2 -2
  582. package/esm/modules/drag-panes.src.js +22 -8
  583. package/esm/modules/draggable-points.js +2 -2
  584. package/esm/modules/draggable-points.src.js +24 -12
  585. package/esm/modules/drilldown.js +2 -2
  586. package/esm/modules/drilldown.src.js +38 -25
  587. package/esm/modules/dumbbell.js +2 -2
  588. package/esm/modules/dumbbell.src.js +72 -27
  589. package/esm/modules/export-data.js +2 -2
  590. package/esm/modules/export-data.src.js +42 -23
  591. package/esm/modules/exporting.js +2 -2
  592. package/esm/modules/exporting.src.js +83 -37
  593. package/esm/modules/flowmap.js +3 -2
  594. package/esm/modules/flowmap.src.js +43 -18
  595. package/esm/modules/full-screen.js +2 -2
  596. package/esm/modules/full-screen.src.js +22 -8
  597. package/esm/modules/funnel.js +2 -2
  598. package/esm/modules/funnel.src.js +73 -42
  599. package/esm/modules/funnel3d.js +2 -2
  600. package/esm/modules/funnel3d.src.js +35 -20
  601. package/esm/modules/gantt.js +2 -2
  602. package/esm/modules/gantt.src.js +542 -100
  603. package/esm/modules/geoheatmap.js +2 -2
  604. package/esm/modules/geoheatmap.src.js +35 -21
  605. package/esm/modules/grid-axis.js +2 -2
  606. package/esm/modules/grid-axis.src.js +33 -12
  607. package/esm/modules/heatmap.js +2 -2
  608. package/esm/modules/heatmap.src.js +50 -33
  609. package/esm/modules/heikinashi.js +2 -2
  610. package/esm/modules/heikinashi.src.js +22 -8
  611. package/esm/modules/histogram-bellcurve.js +2 -2
  612. package/esm/modules/histogram-bellcurve.src.js +56 -25
  613. package/esm/modules/hollowcandlestick.js +2 -2
  614. package/esm/modules/hollowcandlestick.src.js +31 -17
  615. package/esm/modules/item-series.js +2 -2
  616. package/esm/modules/item-series.src.js +72 -13
  617. package/esm/modules/lollipop.js +2 -2
  618. package/esm/modules/lollipop.src.js +22 -8
  619. package/esm/modules/map.js +2 -2
  620. package/esm/modules/map.src.js +148 -91
  621. package/esm/modules/marker-clusters.js +2 -2
  622. package/esm/modules/marker-clusters.src.js +25 -13
  623. package/esm/modules/mouse-wheel-zoom.js +2 -2
  624. package/esm/modules/mouse-wheel-zoom.src.js +54 -13
  625. package/esm/modules/navigator.js +2 -2
  626. package/esm/modules/navigator.src.js +534 -74
  627. package/esm/modules/networkgraph.js +2 -2
  628. package/esm/modules/networkgraph.src.js +87 -46
  629. package/esm/modules/no-data-to-display.js +2 -2
  630. package/esm/modules/no-data-to-display.src.js +22 -8
  631. package/esm/modules/non-cartesian-zoom.js +2 -2
  632. package/esm/modules/non-cartesian-zoom.src.js +22 -8
  633. package/esm/modules/offline-exporting.js +2 -2
  634. package/esm/modules/offline-exporting.src.js +53 -12
  635. package/esm/modules/organization.js +4 -2
  636. package/esm/modules/organization.src.js +63 -19
  637. package/esm/modules/parallel-coordinates.js +2 -2
  638. package/esm/modules/parallel-coordinates.src.js +26 -9
  639. package/esm/modules/pareto.js +2 -2
  640. package/esm/modules/pareto.src.js +31 -16
  641. package/esm/modules/pathfinder.js +2 -2
  642. package/esm/modules/pathfinder.src.js +28 -13
  643. package/esm/modules/pattern-fill.js +2 -2
  644. package/esm/modules/pattern-fill.src.js +28 -12
  645. package/esm/modules/pictorial.js +2 -2
  646. package/esm/modules/pictorial.src.js +36 -19
  647. package/esm/modules/pointandfigure.js +2 -2
  648. package/esm/modules/pointandfigure.src.js +26 -11
  649. package/esm/modules/price-indicator.js +2 -2
  650. package/esm/modules/price-indicator.src.js +26 -11
  651. package/esm/modules/pyramid3d.js +2 -2
  652. package/esm/modules/pyramid3d.src.js +22 -8
  653. package/esm/modules/renko.js +2 -2
  654. package/esm/modules/renko.src.js +22 -8
  655. package/esm/modules/sankey.js +2 -2
  656. package/esm/modules/sankey.src.js +59 -31
  657. package/esm/modules/series-label.js +2 -2
  658. package/esm/modules/series-label.src.js +31 -18
  659. package/esm/modules/series-on-point.js +2 -2
  660. package/esm/modules/series-on-point.src.js +23 -9
  661. package/esm/modules/solid-gauge.js +2 -2
  662. package/esm/modules/solid-gauge.src.js +40 -20
  663. package/esm/modules/sonification.js +2 -2
  664. package/esm/modules/sonification.src.js +45 -30
  665. package/esm/modules/static-scale.js +2 -2
  666. package/esm/modules/static-scale.src.js +22 -8
  667. package/esm/modules/stock-tools.js +3 -3
  668. package/esm/modules/stock-tools.src.js +73 -27
  669. package/esm/modules/stock.js +2 -2
  670. package/esm/modules/stock.src.js +554 -122
  671. package/esm/modules/streamgraph.js +2 -2
  672. package/esm/modules/streamgraph.src.js +22 -8
  673. package/esm/modules/sunburst.js +2 -2
  674. package/esm/modules/sunburst.src.js +110 -45
  675. package/esm/modules/textpath.js +2 -2
  676. package/esm/modules/textpath.src.js +22 -8
  677. package/esm/modules/tiledwebmap.js +3 -3
  678. package/esm/modules/tiledwebmap.src.js +44 -19
  679. package/esm/modules/tilemap.js +2 -2
  680. package/esm/modules/tilemap.src.js +27 -12
  681. package/esm/modules/timeline.js +2 -2
  682. package/esm/modules/timeline.src.js +35 -14
  683. package/esm/modules/treegraph.js +2 -2
  684. package/esm/modules/treegraph.src.js +59 -27
  685. package/esm/modules/treegrid.js +2 -2
  686. package/esm/modules/treegrid.src.js +58 -27
  687. package/esm/modules/treemap.js +2 -2
  688. package/esm/modules/treemap.src.js +89 -36
  689. package/esm/modules/variable-pie.js +2 -2
  690. package/esm/modules/variable-pie.src.js +30 -13
  691. package/esm/modules/variwide.js +2 -2
  692. package/esm/modules/variwide.src.js +23 -9
  693. package/esm/modules/vector.js +2 -2
  694. package/esm/modules/vector.src.js +28 -16
  695. package/esm/modules/venn.js +2 -2
  696. package/esm/modules/venn.src.js +28 -13
  697. package/esm/modules/windbarb.js +2 -2
  698. package/esm/modules/windbarb.src.js +29 -17
  699. package/esm/modules/wordcloud.js +2 -2
  700. package/esm/modules/wordcloud.src.js +25 -9
  701. package/esm/modules/xrange.js +2 -2
  702. package/esm/modules/xrange.src.js +29 -15
  703. package/esm/standalone-navigator.js +5 -5
  704. package/esm/standalone-navigator.src.js +808 -570
  705. package/esm/themes/adaptive.js +3 -3
  706. package/esm/themes/adaptive.src.js +22 -8
  707. package/esm/themes/avocado.js +2 -2
  708. package/esm/themes/avocado.src.js +22 -8
  709. package/esm/themes/dark-unica.js +2 -2
  710. package/esm/themes/dark-unica.src.js +22 -8
  711. package/esm/themes/grid-light.js +2 -2
  712. package/esm/themes/grid-light.src.js +22 -8
  713. package/esm/themes/high-contrast.js +2 -2
  714. package/esm/themes/high-contrast.src.js +22 -8
  715. package/esm/themes/sand-signika.js +2 -2
  716. package/esm/themes/sand-signika.src.js +22 -8
  717. package/esm/themes/sunset.js +2 -2
  718. package/esm/themes/sunset.src.js +22 -8
  719. package/highcharts-3d.js +2 -2
  720. package/highcharts-3d.src.js +116 -92
  721. package/highcharts-autoload.d.ts +15 -5
  722. package/highcharts-autoload.js +4 -4
  723. package/highcharts-autoload.src.d.ts +15 -5
  724. package/highcharts-autoload.src.js +724 -499
  725. package/highcharts-gantt.js +4 -4
  726. package/highcharts-gantt.src.js +851 -590
  727. package/highcharts-more.d.ts +7 -3
  728. package/highcharts-more.js +2 -2
  729. package/highcharts-more.src.d.ts +7 -3
  730. package/highcharts-more.src.js +1313 -1095
  731. package/highcharts.d.ts +34795 -25647
  732. package/highcharts.js +4 -4
  733. package/highcharts.src.d.ts +34795 -25647
  734. package/highcharts.src.js +723 -498
  735. package/highmaps.js +4 -4
  736. package/highmaps.src.js +863 -583
  737. package/highstock.js +4 -4
  738. package/highstock.src.js +899 -619
  739. package/i18n/fr-FR.js +2 -2
  740. package/i18n/fr-FR.src.js +32 -16
  741. package/i18n/nb-NO.js +2 -2
  742. package/i18n/nb-NO.src.js +32 -16
  743. package/i18n/zh-CN.js +2 -2
  744. package/i18n/zh-CN.src.js +32 -16
  745. package/indicators/acceleration-bands.js +2 -2
  746. package/indicators/acceleration-bands.src.js +31 -16
  747. package/indicators/accumulation-distribution.js +2 -2
  748. package/indicators/accumulation-distribution.src.js +31 -16
  749. package/indicators/ao.js +2 -2
  750. package/indicators/ao.src.js +31 -16
  751. package/indicators/apo.js +2 -2
  752. package/indicators/apo.src.js +31 -16
  753. package/indicators/aroon-oscillator.js +2 -2
  754. package/indicators/aroon-oscillator.src.js +31 -16
  755. package/indicators/aroon.js +2 -2
  756. package/indicators/aroon.src.js +33 -18
  757. package/indicators/atr.js +2 -2
  758. package/indicators/atr.src.js +31 -16
  759. package/indicators/bollinger-bands.js +2 -2
  760. package/indicators/bollinger-bands.src.js +31 -16
  761. package/indicators/cci.js +2 -2
  762. package/indicators/cci.src.js +31 -16
  763. package/indicators/chaikin.js +2 -2
  764. package/indicators/chaikin.src.js +31 -16
  765. package/indicators/cmf.js +2 -2
  766. package/indicators/cmf.src.js +31 -16
  767. package/indicators/cmo.js +2 -2
  768. package/indicators/cmo.src.js +31 -16
  769. package/indicators/dema.js +2 -2
  770. package/indicators/dema.src.js +31 -16
  771. package/indicators/disparity-index.js +2 -2
  772. package/indicators/disparity-index.src.js +31 -16
  773. package/indicators/dmi.js +2 -2
  774. package/indicators/dmi.src.js +31 -16
  775. package/indicators/dpo.js +2 -2
  776. package/indicators/dpo.src.js +34 -18
  777. package/indicators/ichimoku-kinko-hyo.js +2 -2
  778. package/indicators/ichimoku-kinko-hyo.src.js +41 -26
  779. package/indicators/indicators-all.js +2 -2
  780. package/indicators/indicators-all.src.js +52 -37
  781. package/indicators/indicators.js +2 -2
  782. package/indicators/indicators.src.js +39 -24
  783. package/indicators/keltner-channels.js +2 -2
  784. package/indicators/keltner-channels.src.js +31 -16
  785. package/indicators/klinger.js +2 -2
  786. package/indicators/klinger.src.js +31 -16
  787. package/indicators/macd.js +2 -2
  788. package/indicators/macd.src.js +31 -16
  789. package/indicators/mfi.js +2 -2
  790. package/indicators/mfi.src.js +31 -16
  791. package/indicators/momentum.js +2 -2
  792. package/indicators/momentum.src.js +31 -16
  793. package/indicators/natr.js +2 -2
  794. package/indicators/natr.src.js +31 -16
  795. package/indicators/obv.js +2 -2
  796. package/indicators/obv.src.js +31 -16
  797. package/indicators/pivot-points.js +2 -2
  798. package/indicators/pivot-points.src.js +31 -16
  799. package/indicators/ppo.js +2 -2
  800. package/indicators/ppo.src.js +31 -16
  801. package/indicators/price-channel.js +2 -2
  802. package/indicators/price-channel.src.js +31 -16
  803. package/indicators/price-envelopes.js +2 -2
  804. package/indicators/price-envelopes.src.js +31 -16
  805. package/indicators/psar.js +2 -2
  806. package/indicators/psar.src.js +31 -16
  807. package/indicators/regressions.js +2 -2
  808. package/indicators/regressions.src.js +31 -16
  809. package/indicators/roc.js +2 -2
  810. package/indicators/roc.src.js +31 -16
  811. package/indicators/rsi.js +2 -2
  812. package/indicators/rsi.src.js +32 -17
  813. package/indicators/slow-stochastic.js +2 -2
  814. package/indicators/slow-stochastic.src.js +31 -16
  815. package/indicators/stochastic.js +2 -2
  816. package/indicators/stochastic.src.js +31 -16
  817. package/indicators/supertrend.js +2 -2
  818. package/indicators/supertrend.src.js +31 -16
  819. package/indicators/tema.js +2 -2
  820. package/indicators/tema.src.js +31 -16
  821. package/indicators/trendline.js +2 -2
  822. package/indicators/trendline.src.js +31 -16
  823. package/indicators/trix.js +2 -2
  824. package/indicators/trix.src.js +31 -16
  825. package/indicators/volume-by-price.js +2 -2
  826. package/indicators/volume-by-price.src.js +32 -18
  827. package/indicators/vwap.js +2 -2
  828. package/indicators/vwap.src.js +31 -16
  829. package/indicators/williams-r.js +2 -2
  830. package/indicators/williams-r.src.js +31 -16
  831. package/indicators/wma.js +2 -2
  832. package/indicators/wma.src.js +31 -16
  833. package/indicators/zigzag.js +2 -2
  834. package/indicators/zigzag.src.js +31 -16
  835. package/modules/accessibility.d.ts +47 -0
  836. package/modules/accessibility.js +2 -2
  837. package/modules/accessibility.src.d.ts +47 -0
  838. package/modules/accessibility.src.js +603 -130
  839. package/modules/annotations-advanced.js +11 -11
  840. package/modules/annotations-advanced.src.js +246 -183
  841. package/modules/annotations.js +11 -11
  842. package/modules/annotations.src.js +206 -165
  843. package/modules/arc-diagram.js +2 -2
  844. package/modules/arc-diagram.src.js +58 -42
  845. package/modules/arrow-symbols.js +2 -2
  846. package/modules/arrow-symbols.src.js +28 -13
  847. package/modules/boost-canvas.js +2 -2
  848. package/modules/boost-canvas.src.js +69 -38
  849. package/modules/boost.js +2 -2
  850. package/modules/boost.src.js +81 -37
  851. package/modules/broken-axis.js +2 -2
  852. package/modules/broken-axis.src.js +36 -20
  853. package/modules/bullet.js +2 -2
  854. package/modules/bullet.src.js +50 -28
  855. package/modules/coloraxis.js +2 -2
  856. package/modules/coloraxis.src.js +65 -38
  857. package/modules/contour.js +5 -5
  858. package/modules/contour.src.js +91 -44
  859. package/modules/current-date-indicator.js +2 -2
  860. package/modules/current-date-indicator.src.js +28 -13
  861. package/modules/cylinder.js +2 -2
  862. package/modules/cylinder.src.js +67 -48
  863. package/modules/data-sorting.js +2 -2
  864. package/modules/data-sorting.src.js +28 -13
  865. package/modules/data-tools.js +2 -2
  866. package/modules/data-tools.src.js +50 -18
  867. package/modules/data.js +2 -2
  868. package/modules/data.src.js +50 -35
  869. package/modules/datagrouping.js +2 -2
  870. package/modules/datagrouping.src.js +42 -26
  871. package/modules/debugger.js +2 -2
  872. package/modules/debugger.src.js +28 -13
  873. package/modules/dependency-wheel.d.ts +7 -1
  874. package/modules/dependency-wheel.js +2 -2
  875. package/modules/dependency-wheel.src.d.ts +7 -1
  876. package/modules/dependency-wheel.src.js +440 -28
  877. package/modules/dotplot.js +2 -2
  878. package/modules/dotplot.src.js +36 -19
  879. package/modules/drag-panes.js +2 -2
  880. package/modules/drag-panes.src.js +28 -13
  881. package/modules/draggable-points.js +2 -2
  882. package/modules/draggable-points.src.js +30 -17
  883. package/modules/drilldown.js +2 -2
  884. package/modules/drilldown.src.js +49 -35
  885. package/modules/dumbbell.js +2 -2
  886. package/modules/dumbbell.src.js +86 -40
  887. package/modules/export-data.d.ts +66 -1
  888. package/modules/export-data.js +2 -2
  889. package/modules/export-data.src.d.ts +66 -1
  890. package/modules/export-data.src.js +56 -36
  891. package/modules/exporting.d.ts +0 -103
  892. package/modules/exporting.js +2 -2
  893. package/modules/exporting.src.d.ts +0 -103
  894. package/modules/exporting.src.js +97 -50
  895. package/modules/flowmap.js +3 -2
  896. package/modules/flowmap.src.js +52 -26
  897. package/modules/full-screen.js +2 -2
  898. package/modules/full-screen.src.js +31 -16
  899. package/modules/funnel.d.ts +3 -3
  900. package/modules/funnel.js +2 -2
  901. package/modules/funnel.src.d.ts +3 -3
  902. package/modules/funnel.src.js +82 -50
  903. package/modules/funnel3d.js +2 -2
  904. package/modules/funnel3d.src.js +56 -40
  905. package/modules/gantt.d.ts +47 -0
  906. package/modules/gantt.js +8 -8
  907. package/modules/gantt.src.d.ts +47 -0
  908. package/modules/gantt.src.js +602 -156
  909. package/modules/geoheatmap.d.ts +13 -12
  910. package/modules/geoheatmap.js +2 -2
  911. package/modules/geoheatmap.src.d.ts +13 -12
  912. package/modules/geoheatmap.src.js +44 -29
  913. package/modules/grid-axis.js +2 -2
  914. package/modules/grid-axis.src.js +42 -20
  915. package/modules/heatmap.d.ts +0 -12
  916. package/modules/heatmap.js +4 -4
  917. package/modules/heatmap.src.d.ts +0 -12
  918. package/modules/heatmap.src.js +102 -71
  919. package/modules/heikinashi.js +2 -2
  920. package/modules/heikinashi.src.js +31 -16
  921. package/modules/histogram-bellcurve.js +2 -2
  922. package/modules/histogram-bellcurve.src.js +70 -38
  923. package/modules/hollowcandlestick.js +2 -2
  924. package/modules/hollowcandlestick.src.js +45 -30
  925. package/modules/item-series.js +2 -2
  926. package/modules/item-series.src.js +81 -21
  927. package/modules/lollipop.js +2 -2
  928. package/modules/lollipop.src.js +36 -21
  929. package/modules/map.d.ts +0 -20
  930. package/modules/map.js +4 -4
  931. package/modules/map.src.d.ts +0 -20
  932. package/modules/map.src.js +212 -140
  933. package/modules/marker-clusters.js +2 -2
  934. package/modules/marker-clusters.src.js +31 -18
  935. package/modules/mouse-wheel-zoom.js +2 -2
  936. package/modules/mouse-wheel-zoom.src.js +60 -18
  937. package/modules/navigator.d.ts +47 -0
  938. package/modules/navigator.js +2 -2
  939. package/modules/navigator.src.d.ts +47 -0
  940. package/modules/navigator.src.js +556 -95
  941. package/modules/networkgraph.js +2 -2
  942. package/modules/networkgraph.src.js +99 -57
  943. package/modules/no-data-to-display.js +2 -2
  944. package/modules/no-data-to-display.src.js +31 -16
  945. package/modules/non-cartesian-zoom.js +2 -2
  946. package/modules/non-cartesian-zoom.src.js +28 -13
  947. package/modules/offline-exporting.js +2 -2
  948. package/modules/offline-exporting.src.js +67 -25
  949. package/modules/organization.js +4 -2
  950. package/modules/organization.src.js +75 -30
  951. package/modules/parallel-coordinates.js +2 -2
  952. package/modules/parallel-coordinates.src.js +37 -19
  953. package/modules/pareto.js +2 -2
  954. package/modules/pareto.src.js +45 -29
  955. package/modules/pathfinder.js +2 -2
  956. package/modules/pathfinder.src.js +37 -21
  957. package/modules/pattern-fill.js +2 -2
  958. package/modules/pattern-fill.src.js +34 -17
  959. package/modules/pictorial.js +2 -2
  960. package/modules/pictorial.src.js +62 -43
  961. package/modules/pointandfigure.js +2 -2
  962. package/modules/pointandfigure.src.js +35 -19
  963. package/modules/price-indicator.js +2 -2
  964. package/modules/price-indicator.src.js +32 -16
  965. package/modules/pyramid3d.js +2 -2
  966. package/modules/pyramid3d.src.js +31 -16
  967. package/modules/renko.js +2 -2
  968. package/modules/renko.src.js +34 -19
  969. package/modules/sankey.js +2 -2
  970. package/modules/sankey.src.js +80 -51
  971. package/modules/series-label.js +2 -2
  972. package/modules/series-label.src.js +42 -28
  973. package/modules/series-on-point.js +2 -2
  974. package/modules/series-on-point.src.js +40 -25
  975. package/modules/solid-gauge.d.ts +3 -3
  976. package/modules/solid-gauge.js +2 -2
  977. package/modules/solid-gauge.src.d.ts +3 -3
  978. package/modules/solid-gauge.src.js +54 -33
  979. package/modules/sonification.js +2 -2
  980. package/modules/sonification.src.js +56 -40
  981. package/modules/static-scale.js +2 -2
  982. package/modules/static-scale.src.js +28 -13
  983. package/modules/stock-tools.js +3 -3
  984. package/modules/stock-tools.src.js +90 -43
  985. package/modules/stock.d.ts +47 -0
  986. package/modules/stock.js +6 -6
  987. package/modules/stock.src.d.ts +47 -0
  988. package/modules/stock.src.js +650 -185
  989. package/modules/streamgraph.js +2 -2
  990. package/modules/streamgraph.src.js +31 -16
  991. package/modules/sunburst.js +2 -2
  992. package/modules/sunburst.src.js +137 -71
  993. package/modules/textpath.js +2 -2
  994. package/modules/textpath.src.js +28 -13
  995. package/modules/tiledwebmap.js +3 -3
  996. package/modules/tiledwebmap.src.js +65 -32
  997. package/modules/tilemap.js +2 -2
  998. package/modules/tilemap.src.js +41 -25
  999. package/modules/timeline.js +2 -2
  1000. package/modules/timeline.src.js +47 -25
  1001. package/modules/treegraph.js +2 -2
  1002. package/modules/treegraph.src.js +83 -50
  1003. package/modules/treegrid.js +2 -2
  1004. package/modules/treegrid.src.js +76 -44
  1005. package/modules/treemap.js +2 -2
  1006. package/modules/treemap.src.js +116 -62
  1007. package/modules/variable-pie.js +2 -2
  1008. package/modules/variable-pie.src.js +39 -21
  1009. package/modules/variwide.js +2 -2
  1010. package/modules/variwide.src.js +32 -17
  1011. package/modules/vector.js +2 -2
  1012. package/modules/vector.src.js +37 -24
  1013. package/modules/venn.js +2 -2
  1014. package/modules/venn.src.js +42 -26
  1015. package/modules/windbarb.js +2 -2
  1016. package/modules/windbarb.src.js +51 -38
  1017. package/modules/wordcloud.js +2 -2
  1018. package/modules/wordcloud.src.js +34 -17
  1019. package/modules/xrange.js +2 -2
  1020. package/modules/xrange.src.js +43 -28
  1021. package/options/abands.d.ts +722 -83
  1022. package/options/abands.src.d.ts +722 -83
  1023. package/options/ad.d.ts +381 -26
  1024. package/options/ad.src.d.ts +381 -26
  1025. package/options/ao.d.ts +744 -70
  1026. package/options/ao.src.d.ts +744 -70
  1027. package/options/apo.d.ts +381 -26
  1028. package/options/apo.src.d.ts +381 -26
  1029. package/options/arcdiagram.d.ts +80 -534
  1030. package/options/arcdiagram.src.d.ts +80 -534
  1031. package/options/area.d.ts +432 -129
  1032. package/options/area.src.d.ts +432 -129
  1033. package/options/arearange.d.ts +46 -4
  1034. package/options/arearange.src.d.ts +46 -4
  1035. package/options/areaspline.d.ts +141 -866
  1036. package/options/areaspline.src.d.ts +141 -866
  1037. package/options/areasplinerange.d.ts +221 -871
  1038. package/options/areasplinerange.src.d.ts +221 -871
  1039. package/options/aroon.d.ts +432 -124
  1040. package/options/aroon.src.d.ts +432 -124
  1041. package/options/aroonoscillator.d.ts +127 -689
  1042. package/options/aroonoscillator.src.d.ts +127 -689
  1043. package/options/atr.d.ts +381 -71
  1044. package/options/atr.src.d.ts +381 -71
  1045. package/options/bar.d.ts +103 -12
  1046. package/options/bar.src.d.ts +103 -12
  1047. package/options/bb.d.ts +87 -762
  1048. package/options/bb.src.d.ts +87 -762
  1049. package/options/bellcurve.d.ts +87 -364
  1050. package/options/bellcurve.src.d.ts +87 -364
  1051. package/options/boxplot.d.ts +82 -13
  1052. package/options/boxplot.src.d.ts +82 -13
  1053. package/options/bubble.d.ts +83 -874
  1054. package/options/bubble.src.d.ts +83 -874
  1055. package/options/bullet.d.ts +354 -717
  1056. package/options/bullet.src.d.ts +354 -717
  1057. package/options/candlestick.d.ts +99 -1214
  1058. package/options/candlestick.src.d.ts +99 -1214
  1059. package/options/cci.d.ts +381 -26
  1060. package/options/cci.src.d.ts +381 -26
  1061. package/options/chaikin.d.ts +728 -83
  1062. package/options/chaikin.src.d.ts +728 -83
  1063. package/options/cmf.d.ts +381 -26
  1064. package/options/cmf.src.d.ts +381 -26
  1065. package/options/cmo.d.ts +730 -79
  1066. package/options/cmo.src.d.ts +730 -79
  1067. package/options/column.d.ts +1265 -99
  1068. package/options/column.src.d.ts +1265 -99
  1069. package/options/columnpyramid.d.ts +102 -1158
  1070. package/options/columnpyramid.src.d.ts +102 -1158
  1071. package/options/columnrange.d.ts +952 -95
  1072. package/options/columnrange.src.d.ts +952 -95
  1073. package/options/contour.d.ts +31 -443
  1074. package/options/contour.src.d.ts +31 -443
  1075. package/options/cylinder.d.ts +100 -12
  1076. package/options/cylinder.src.d.ts +100 -12
  1077. package/options/dema.d.ts +80 -736
  1078. package/options/dema.src.d.ts +80 -736
  1079. package/options/dependencywheel.d.ts +599 -218
  1080. package/options/dependencywheel.src.d.ts +599 -218
  1081. package/options/disparityindex.d.ts +84 -365
  1082. package/options/disparityindex.src.d.ts +84 -365
  1083. package/options/dmi.d.ts +86 -775
  1084. package/options/dmi.src.d.ts +86 -775
  1085. package/options/dpo.d.ts +83 -365
  1086. package/options/dpo.src.d.ts +83 -365
  1087. package/options/dumbbell.d.ts +27 -4
  1088. package/options/dumbbell.src.d.ts +27 -4
  1089. package/options/ema.d.ts +81 -703
  1090. package/options/ema.src.d.ts +81 -703
  1091. package/options/errorbar.d.ts +91 -1161
  1092. package/options/errorbar.src.d.ts +91 -1161
  1093. package/options/flags.d.ts +98 -1192
  1094. package/options/flags.src.d.ts +98 -1192
  1095. package/options/flowmap.d.ts +48 -373
  1096. package/options/flowmap.src.d.ts +48 -373
  1097. package/options/funnel.d.ts +40 -3
  1098. package/options/funnel.src.d.ts +40 -3
  1099. package/options/gantt.d.ts +37 -40
  1100. package/options/gantt.src.d.ts +37 -40
  1101. package/options/gauge.d.ts +398 -472
  1102. package/options/gauge.src.d.ts +398 -472
  1103. package/options/geoheatmap.d.ts +462 -63
  1104. package/options/geoheatmap.src.d.ts +462 -63
  1105. package/options/heatmap.d.ts +31 -380
  1106. package/options/heatmap.src.d.ts +31 -380
  1107. package/options/heikinashi.d.ts +20 -2
  1108. package/options/heikinashi.src.d.ts +20 -2
  1109. package/options/hlc.d.ts +20 -2
  1110. package/options/hlc.src.d.ts +20 -2
  1111. package/options/ikh.d.ts +750 -103
  1112. package/options/ikh.src.d.ts +750 -103
  1113. package/options/item.d.ts +34 -74
  1114. package/options/item.src.d.ts +34 -74
  1115. package/options/keltnerchannels.d.ts +87 -708
  1116. package/options/keltnerchannels.src.d.ts +87 -708
  1117. package/options/klinger.d.ts +34 -365
  1118. package/options/klinger.src.d.ts +34 -365
  1119. package/options/line.d.ts +151 -851
  1120. package/options/line.src.d.ts +151 -851
  1121. package/options/linearregression.d.ts +960 -85
  1122. package/options/linearregression.src.d.ts +960 -85
  1123. package/options/linearregressionangle.d.ts +96 -699
  1124. package/options/linearregressionangle.src.d.ts +96 -699
  1125. package/options/linearregressionintercept.d.ts +381 -26
  1126. package/options/linearregressionintercept.src.d.ts +381 -26
  1127. package/options/linearregressionslope.d.ts +381 -26
  1128. package/options/linearregressionslope.src.d.ts +381 -26
  1129. package/options/lollipop.d.ts +214 -851
  1130. package/options/lollipop.src.d.ts +214 -851
  1131. package/options/macd.d.ts +386 -83
  1132. package/options/macd.src.d.ts +386 -83
  1133. package/options/map.d.ts +470 -36
  1134. package/options/map.src.d.ts +470 -36
  1135. package/options/mapbubble.d.ts +43 -532
  1136. package/options/mapbubble.src.d.ts +43 -532
  1137. package/options/mapline.d.ts +135 -58
  1138. package/options/mapline.src.d.ts +135 -58
  1139. package/options/mappoint.d.ts +205 -283
  1140. package/options/mappoint.src.d.ts +205 -283
  1141. package/options/mfi.d.ts +772 -82
  1142. package/options/mfi.src.d.ts +772 -82
  1143. package/options/momentum.d.ts +381 -71
  1144. package/options/momentum.src.d.ts +381 -71
  1145. package/options/natr.d.ts +776 -75
  1146. package/options/natr.src.d.ts +776 -75
  1147. package/options/networkgraph.d.ts +184 -207
  1148. package/options/networkgraph.src.d.ts +184 -207
  1149. package/options/obv.d.ts +426 -26
  1150. package/options/obv.src.d.ts +426 -26
  1151. package/options/ohlc.d.ts +77 -14
  1152. package/options/ohlc.src.d.ts +77 -14
  1153. package/options/packedbubble.d.ts +76 -696
  1154. package/options/packedbubble.src.d.ts +76 -696
  1155. package/options/pareto.d.ts +28 -364
  1156. package/options/pareto.src.d.ts +28 -364
  1157. package/options/pc.d.ts +724 -85
  1158. package/options/pc.src.d.ts +724 -85
  1159. package/options/pictorial.d.ts +1093 -58
  1160. package/options/pictorial.src.d.ts +1093 -58
  1161. package/options/pie.d.ts +595 -129
  1162. package/options/pie.src.d.ts +595 -129
  1163. package/options/pivotpoints.d.ts +34 -365
  1164. package/options/pivotpoints.src.d.ts +34 -365
  1165. package/options/pointandfigure.d.ts +10 -50
  1166. package/options/pointandfigure.src.d.ts +10 -50
  1167. package/options/polygon.d.ts +803 -74
  1168. package/options/polygon.src.d.ts +803 -74
  1169. package/options/ppo.d.ts +34 -365
  1170. package/options/ppo.src.d.ts +34 -365
  1171. package/options/priceenvelopes.d.ts +93 -719
  1172. package/options/priceenvelopes.src.d.ts +93 -719
  1173. package/options/psar.d.ts +34 -365
  1174. package/options/psar.src.d.ts +34 -365
  1175. package/options/pyramid.d.ts +35 -3
  1176. package/options/pyramid.src.d.ts +35 -3
  1177. package/options/renko.d.ts +25 -2
  1178. package/options/renko.src.d.ts +25 -2
  1179. package/options/roc.d.ts +78 -712
  1180. package/options/roc.src.d.ts +78 -712
  1181. package/options/rsi.d.ts +34 -365
  1182. package/options/rsi.src.d.ts +34 -365
  1183. package/options/sankey.d.ts +27 -5
  1184. package/options/sankey.src.d.ts +27 -5
  1185. package/options/scatter.d.ts +896 -290
  1186. package/options/scatter.src.d.ts +896 -290
  1187. package/options/series.d.ts +938 -83
  1188. package/options/series.src.d.ts +938 -83
  1189. package/options/slowstochastic.d.ts +381 -26
  1190. package/options/slowstochastic.src.d.ts +381 -26
  1191. package/options/sma.d.ts +729 -79
  1192. package/options/sma.src.d.ts +729 -79
  1193. package/options/solidgauge.d.ts +882 -105
  1194. package/options/solidgauge.src.d.ts +882 -105
  1195. package/options/spline.d.ts +389 -90
  1196. package/options/spline.src.d.ts +389 -90
  1197. package/options/stochastic.d.ts +83 -716
  1198. package/options/stochastic.src.d.ts +83 -716
  1199. package/options/streamgraph.d.ts +97 -364
  1200. package/options/streamgraph.src.d.ts +97 -364
  1201. package/options/sunburst.d.ts +87 -19
  1202. package/options/sunburst.src.d.ts +87 -19
  1203. package/options/supertrend.d.ts +77 -749
  1204. package/options/supertrend.src.d.ts +77 -749
  1205. package/options/tema.d.ts +83 -365
  1206. package/options/tema.src.d.ts +83 -365
  1207. package/options/tiledwebmap.d.ts +13 -72
  1208. package/options/tiledwebmap.src.d.ts +13 -72
  1209. package/options/tilemap.d.ts +372 -533
  1210. package/options/tilemap.src.d.ts +372 -533
  1211. package/options/timeline.d.ts +49 -154
  1212. package/options/timeline.src.d.ts +49 -154
  1213. package/options/treegraph.d.ts +174 -696
  1214. package/options/treegraph.src.d.ts +174 -696
  1215. package/options/treemap.d.ts +468 -1079
  1216. package/options/treemap.src.d.ts +468 -1079
  1217. package/options/trendline.d.ts +381 -26
  1218. package/options/trendline.src.d.ts +381 -26
  1219. package/options/trix.d.ts +712 -82
  1220. package/options/trix.src.d.ts +712 -82
  1221. package/options/variablepie.d.ts +130 -587
  1222. package/options/variablepie.src.d.ts +130 -587
  1223. package/options/variwide.d.ts +1123 -94
  1224. package/options/variwide.src.d.ts +1123 -94
  1225. package/options/vbp.d.ts +57 -383
  1226. package/options/vbp.src.d.ts +57 -383
  1227. package/options/vector.d.ts +22 -58
  1228. package/options/vector.src.d.ts +22 -58
  1229. package/options/venn.d.ts +32 -78
  1230. package/options/venn.src.d.ts +32 -78
  1231. package/options/vwap.d.ts +122 -703
  1232. package/options/vwap.src.d.ts +122 -703
  1233. package/options/waterfall.d.ts +139 -1150
  1234. package/options/waterfall.src.d.ts +139 -1150
  1235. package/options/williamsr.d.ts +381 -76
  1236. package/options/williamsr.src.d.ts +381 -76
  1237. package/options/windbarb.d.ts +39 -2
  1238. package/options/windbarb.src.d.ts +39 -2
  1239. package/options/wma.d.ts +78 -704
  1240. package/options/wma.src.d.ts +78 -704
  1241. package/options/wordcloud.d.ts +98 -595
  1242. package/options/wordcloud.src.d.ts +98 -595
  1243. package/options/xrange.d.ts +166 -1056
  1244. package/options/xrange.src.d.ts +166 -1056
  1245. package/options/zigzag.d.ts +34 -410
  1246. package/options/zigzag.src.d.ts +34 -410
  1247. package/package.json +1 -1
  1248. package/standalone-navigator.js +4 -4
  1249. package/standalone-navigator.src.js +829 -553
  1250. package/themes/adaptive.js +2 -2
  1251. package/themes/adaptive.src.js +33 -18
  1252. package/themes/avocado.js +2 -2
  1253. package/themes/avocado.src.js +28 -13
  1254. package/themes/dark-unica.js +2 -2
  1255. package/themes/dark-unica.src.js +28 -13
  1256. package/themes/grid-light.js +2 -2
  1257. package/themes/grid-light.src.js +28 -13
  1258. package/themes/high-contrast.js +2 -2
  1259. package/themes/high-contrast.src.js +28 -13
  1260. package/themes/sand-signika.js +2 -2
  1261. package/themes/sand-signika.src.js +28 -13
  1262. package/themes/sunset.js +2 -2
  1263. package/themes/sunset.src.js +28 -13
  1264. package/css/.stylelintrc.json +0 -8
@@ -1,5 +1,5 @@
1
1
  let t;/**
2
- * Highmaps JS v13.0.0 (2026-06-11)
2
+ * Highmaps JS v13.0.2 (2026-08-27)
3
3
  * @module highcharts/modules/map
4
4
  * @requires highcharts
5
5
  *
@@ -10,4 +10,4 @@ let t;/**
10
10
  *
11
11
  * A commercial license may be required depending on use,
12
12
  * see www.highcharts.com/license
13
- */import*as e from"../highcharts.js";import"./coloraxis.js";var i,o,s,r,a,n,l,h,p={};p.n=t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return p.d(e,{a:e}),e},p.d=(t,e)=>{for(var i in e)p.o(e,i)&&!p.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},p.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let d=e.default;var c=p.n(d);let u={lang:{zoomIn:"Zoom in",zoomOut:"Zoom out"},mapNavigation:{buttonOptions:{alignTo:"plotBox",align:"left",verticalAlign:"top",x:0,width:18,height:18,padding:5,style:{color:"var(--highcharts-neutral-color-60)",fontSize:"1em",fontWeight:"bold"},theme:{fill:"var(--highcharts-background-color)",stroke:"var(--highcharts-neutral-color-10)","stroke-width":1,"text-align":"center"}},buttons:{zoomIn:{onclick:function(){this.mapZoom(.5)},text:"+",y:0},zoomOut:{onclick:function(){this.mapZoom(2)},text:"-",y:28}},mouseWheelSensitivity:1.1}};!function(t){let e,i=0;function o(t){let e=this.chart;t=this.normalize(t),e.options.mapNavigation.enableDoubleClickZoomTo?e.pointer.inClass(t.target,"highcharts-tracker")&&e.hoverPoint&&e.hoverPoint.zoomTo():e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop)&&e.mapZoom(.5,void 0,void 0,t.chartX,t.chartY)}function s(t){let o=this.chart;t=this.normalize(t);let s=(0,d.defined)(t.wheelDelta)&&-t.wheelDelta/120||t.deltaY||t.detail;Math.abs(s)>=1&&(i+=Math.abs(s),e&&(0,d.internalClearTimeout)(e),e=setTimeout(()=>{i=0},50)),i<10&&o.isInsidePlot(t.chartX-o.plotLeft,t.chartY-o.plotTop)&&o.mapView&&o.mapView.zoomBy(-((o.options.mapNavigation.mouseWheelSensitivity-1)*s),void 0,[t.chartX,t.chartY],!(1>Math.abs(s))&&void 0)}function r(t,e,i){let o=this.chart;if(e=t.call(this,e,i),o&&o.mapView){let t=o.mapView.pixelsToLonLat({x:e.chartX-o.plotLeft,y:e.chartY-o.plotTop});t&&(0,d.extend)(e,t)}return e}function a(t){let e=this.chart.options.mapNavigation;e&&(0,d.pick)(e.enableTouchZoom,e.enabled)&&(this.chart.zooming.pinchType="xy"),t.apply(this,[].slice.call(arguments,1))}t.compose=function(t){let e=t.prototype;e.onContainerDblClick||((0,d.extend)(e,{onContainerDblClick:o,onContainerMouseWheel:s}),(0,d.wrap)(e,"normalize",r),(0,d.wrap)(e,"zoomOption",a))}}(r||(r={}));let m=r;function g(e,i,o,s,r){if(r){let t=r?.r||0;r.brBoxY=i-t,r.brBoxHeight=s+t}return t.roundedRect(e,i,o,s,r)}function b(e,i,o,s,r){if(r){let t=r?.r||0;r.brBoxHeight=s+t}return t.roundedRect(e,i,o,s,r)}let f=function(e){(t=e.prototype.symbols).bottombutton=g,t.topbutton=b},{setOptions:y}=c(),{composed:x}=c();function M(t){t&&(t.preventDefault?.(),t.stopPropagation?.(),t.cancelBubble=!0)}class v{static compose(t,e,i){m.compose(e),f(i),(0,d.pushUnique)(x,"Map.Navigation")&&((0,d.addEvent)(t,"beforeRender",function(){this.mapNavigation=new v(this),this.mapNavigation.update()}),y(u))}constructor(t){this.chart=t,this.navButtons=[]}update(t){let e=this,i=e.chart,o=e.navButtons,s=function(t){this.handler.call(i,t),M(t)},r=i.options.mapNavigation;for(t&&(r=i.options.mapNavigation=(0,d.merge)(i.options.mapNavigation,t));o.length;)o.pop()?.destroy();!i.renderer.forExport&&(0,d.pick)(r.enableButtons,r.enabled)&&(e.navButtonsGroup||(e.navButtonsGroup=i.renderer.g().attr({zIndex:7}).add()),(0,d.objectEach)(r.buttons,(t,a)=>{let n={padding:(t=(0,d.merge)(r.buttonOptions,t)).padding};!i.styledMode&&t.theme&&((0,d.extend)(n,t.theme),n.style=(0,d.merge)(t.theme.style,t.style));let{text:l,width:h=0,height:p=0,padding:c=0}=t,u=i.renderer.button("+"!==l&&"-"!==l&&l||"",0,0,s,n,void 0,void 0,void 0,"zoomIn"===a?"topbutton":"bottombutton").addClass("highcharts-map-navigation highcharts-"+({zoomIn:"zoom-in",zoomOut:"zoom-out"})[a]).attr({width:h,height:p,title:i.options.lang[a],zIndex:5}).add(e.navButtonsGroup);if("+"===l||"-"===l){let e=h+1,o=[["M",c+3,c+p/2],["L",c+e-3,c+p/2]];"+"===l&&o.push(["M",c+e/2,c+3],["L",c+e/2,c+p-3]),i.renderer.path(o).addClass("highcharts-button-symbol").attr(i.styledMode?{}:{stroke:t.style?.color,"stroke-width":3,"stroke-linecap":"round"}).add(u)}if(u.handler=t.onclick,(0,d.addEvent)(u.element,"dblclick",M),o.push(u),(0,d.extend)(t,{width:u.width,height:2*(u.height||0)}),i.hasLoaded)u.align(t,!1,t.alignTo);else{let e=(0,d.addEvent)(i,"load",()=>{u.element&&u.align(t,!1,t.alignTo),e()})}}),i.hasLoaded||(0,d.addEvent)(i,"render",function(){let t=i.exporting?.group?.getBBox();if(t){let i=e.navButtonsGroup.getBBox();if(!(i.x>=t.x+t.width||i.x+i.width<=t.x||i.y>=t.y+t.height||i.y+i.height<=t.y)){let o=-i.y-i.height+t.y-5,s=t.y+t.height-i.y+5,a=r.buttonOptions&&r.buttonOptions.verticalAlign;e.navButtonsGroup.attr({translateY:"bottom"===a?o:s})}}})),this.updateEvents(r)}updateEvents(t){let e=this.chart;(0,d.pick)(t.enableDoubleClickZoom,t.enabled)||t.enableDoubleClickZoomTo?this.unbindDblClick=this.unbindDblClick||(0,d.addEvent)(e.container,"dblclick",function(t){e.pointer.onContainerDblClick(t)}):this.unbindDblClick&&(this.unbindDblClick=this.unbindDblClick()),(0,d.pick)(t.enableMouseWheelZoom,t.enabled)?this.unbindMouseWheel=this.unbindMouseWheel||(0,d.addEvent)(e.container,"wheel",function(t){if(!e.pointer.inClass(t.target,"highcharts-no-mousewheel")){let i=e.mapView?.zoom;e.pointer.onContainerMouseWheel(t),i!==e.mapView?.zoom&&M(t)}return!1}):this.unbindMouseWheel&&(this.unbindMouseWheel=this.unbindMouseWheel())}}let w=e.default.SeriesRegistry;var T=p.n(w);let P=e.default.SVGElement;var C=p.n(P);let{column:{prototype:k}}=T().seriesTypes;var j=a||(a={});function L(t){let e=this.series,i=e.chart.renderer;this.moveToTopOnHover&&this.graphic&&(e.stateMarkerGraphic||(e.stateMarkerGraphic=new(C())(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:""}))}j.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))}},j.seriesMembers={colorKey:"value",axisTypes:["xAxis","yAxis","colorAxis"],parallelArrays:["x","y","value"],pointArrayMap:["value"],trackerGroups:["group","markerGroup","dataLabelsGroup"],colorAttribs:function(t){let e={};return(0,d.defined)(t.color)&&(!t.state||"normal"===t.state)&&(e[this.colorProp||"fill"]=t.color),e},pointAttribs:k.pointAttribs},j.compose=function(t){let e=t.prototype.pointClass;return(0,d.addEvent)(e,"afterSetState",L),t};let A=a,{deg2rad:z}=c();(i=n||(n={})).getCenter=function(){let t=this.options,e=this.chart,i=2*(t.slicedOffset||0),o=e.plotWidth-2*i,s=e.plotHeight-2*i,r=t.center,a=Math.min(o,s),n=t.thickness,l,h=t.size,p=t.innerSize||0,c,u;"string"==typeof h&&(h=parseFloat(h)),"string"==typeof p&&(p=parseFloat(p));let m=[(0,d.pick)(r?.[0],"50%"),(0,d.pick)(r?.[1],"50%"),(0,d.pick)(h&&h<0?void 0:t.size,"100%"),(0,d.pick)(p&&p<0?void 0:t.innerSize||0,"0%")];for(c=0;c<4;++c)u=m[c],l=c<2||2===c&&/%$/.test(u),m[c]=(0,d.relativeLength)(u,[o,s,a,m[2]][c])+(l?i:0);return m[3]>m[2]&&(m[3]=m[2]),(0,d.isNumber)(n)&&2*n<m[2]&&n>0&&(m[3]=m[2]-2*n),(0,d.fireEvent)(this,"afterGetCenter",{positions:m}),m},i.getStartAndEndRadians=function(t,e){let i=(0,d.isNumber)(t)?t:0,o=(0,d.isNumber)(e)&&e>i&&e-i<360?e:i+360;return{start:z*(i+-90),end:z*(o+-90)}};let E=n,{setLength:N,splice:B}={convertToNumber:function(t,e){switch(typeof t){case"boolean":return+!!t;case"number":return isNaN(t)&&!e?null:t;default:return isNaN(t=parseFloat(`${t??""}`))&&!e?null:t}},setLength:function(t,e,i){return Array.isArray(t)?(t.length=e,t):t[i?"subarray":"slice"](0,e)},splice:function(t,e,i,o,s=[]){if(Array.isArray(t))return Array.isArray(s)||(s=Array.from(s)),{removed:t.splice(e,i,...s),array:t};let r=Object.getPrototypeOf(t).constructor,a=t[o?"subarray":"slice"](e,e+i),n=new r(t.length-i+s.length);return n.set(t.subarray(0,e),0),n.set(s,e),n.set(t.subarray(e+i),e+s.length),{removed:a,array:n}}},S=class{constructor(t={}){this.isDataTable=!0,this.autoId=!t.id,this.columns={},this.id=t.id||(0,d.uniqueKey)(),this.rowCount=0,this.versionTag=(0,d.uniqueKey)();let e=0;(0,d.objectEach)(t.columns||{},(t,i)=>{this.columns[i]=t.slice(),e=Math.max(e,t.length)}),this.applyRowCount(e)}applyRowCount(t){this.rowCount=t,(0,d.objectEach)(this.columns,(e,i)=>{e.length!==t&&(this.columns[i]=N(e,t))})}deleteRows(t,e=1){if(e>0&&t<this.rowCount){let i=0;(0,d.objectEach)(this.columns,(o,s)=>{this.columns[s]=B(o,t,e).array,i=o.length}),this.rowCount=i}(0,d.fireEvent)(this,"afterDeleteRows",{rowIndex:t,rowCount:e}),this.versionTag=(0,d.uniqueKey)()}getColumn(t,e){return this.columns[t]}getColumns(t,e){return(t||Object.keys(this.columns)).reduce((t,e)=>(t[e]=this.columns[e],t),{})}getRowObject(t,e){let i={},o=this.columns;for(let s of(e??(e=Object.keys(this.columns)),e))i[s]=o[s]?.[t];return i}setColumn(t,e=[],i=0,o){this.setColumns({[t]:e},i,o)}setColumns(t,e,i){let o=this.rowCount;(0,d.objectEach)(t,(t,e)=>{this.columns[e]=t.slice(),o=t.length}),this.applyRowCount(o),i?.silent||((0,d.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,d.uniqueKey)())}setRow(t,e=this.rowCount,i,o){var s;let{columns:r}=this,a=i?this.rowCount+1:e+1,n=Object.keys(t);if(o?.addColumns!==!1)for(let t=0,e=n.length;t<e;t++)r[s=n[t]]||(r[s]=Array(this.rowCount));(0,d.objectEach)(r,(o,s)=>{o&&(i?o=B(o,e,0,!0,[t[s]]).array:o[e]=s in t?t[s]:o[e],r[s]=o)}),this.applyRowCount(Math.max(a,this.rowCount)),o?.silent||((0,d.fireEvent)(this,"afterSetRows",{rowIndex:e}),this.versionTag=(0,d.uniqueKey)())}getModified(){return this.modified||this}},O=e.default.Chart;var D=p.n(O);let I=e.default.SVGRenderer;var V=p.n(I);let{getOptions:R}=c();class X extends D(){init(t,e){let i=R().credits,o=(0,d.merge)({chart:{panning:{enabled:!0,type:"xy"},type:"map"},credits:{mapText:(0,d.pick)(i.mapText,' \xa9 <a href="{geojson.copyrightUrl}">{geojson.copyrightShort}</a>'),mapTextFull:(0,d.pick)(i.mapTextFull,"{geojson.copyright}")},mapView:{},tooltip:{followTouchMove:!1}},t);super.init(o,e)}mapZoom(t,e,i,o,s){this.mapView&&((0,d.isNumber)(t)&&(t=Math.log(t)/Math.log(.5)),this.mapView.zoomBy(t,(0,d.isNumber)(e)&&(0,d.isNumber)(i)?this.mapView.projection.inverse([e,i]):void 0,(0,d.isNumber)(o)&&(0,d.isNumber)(s)?[o,s]:void 0))}update(t){t.chart&&"map"in t.chart&&this.mapView?.recommendMapView(this,[t.chart.map,...(this.options.series||[]).map(t=>t.mapData)],!0),super.update.apply(this,arguments)}}(o=X||(X={})).maps={},o.mapChart=function(t,e,i){let s=new o(t,e,i);return s.promise||s},o.splitPath=function(t){let e;return e="string"==typeof t?(t=t.replace(/([A-Z])/gi," $1 ").replace(/^\s*/,"").replace(/\s*$/,"")).split(/[ ,;]+/).map(t=>/[A-Z]/i.test(t)?t:parseFloat(t)):t,V().prototype.pathToSegments(e)};let G=X,F={boundsFromPath:function(t){let e=-Number.MAX_VALUE,i=Number.MAX_VALUE,o=-Number.MAX_VALUE,s=Number.MAX_VALUE,r;if(t.forEach(t=>{let a=t[t.length-2],n=t[t.length-1];"number"==typeof a&&"number"==typeof n&&(i=Math.min(i,a),e=Math.max(e,a),s=Math.min(s,n),o=Math.max(o,n),r=!0)}),r)return{x1:i,y1:s,x2:e,y2:o}}},{boundsFromPath:Y}=F,U=T().seriesTypes.scatter.prototype.pointClass;class Z extends U{static getProjectedPath(t,e){return t.projectedPath||(e&&t.geometry?(e.hasCoordinates=!0,t.projectedPath=e.path(t.geometry)):t.projectedPath=t.path),t.projectedPath||[]}applyOptions(t,e,i){let o=this.series,s=super.applyOptions(t,e,i),r=o.joinBy;if(o.mapData&&o.mapMap){let t=r[1],e=super.getNestedProperty(t),i=void 0!==e&&o.mapMap[e];i?(0,d.extend)(s,{...i,name:s.name??i.name}):-1!==o.pointArrayMap.indexOf("value")&&(s.value=s.value||null)}return s}getProjectedBounds(t){let e=Y(Z.getProjectedPath(this,t)),i=this.properties,o=this.series.chart.mapView;if(e){let s=i?.["hc-middle-lon"],r=i?.["hc-middle-lat"];if(o&&(0,d.isNumber)(s)&&(0,d.isNumber)(r)){let i=t.forward([s,r]);e.midX=i[0],e.midY=i[1]}else{let t=i?.["hc-middle-x"],o=i?.["hc-middle-y"];e.midX=e.x1+(e.x2-e.x1)*(0,d.pick)(this.middleX,(0,d.isNumber)(t)?t:.5);let s=(0,d.pick)(this.middleY,(0,d.isNumber)(o)?o:.5);this.geometry||(s=1-s),e.midY=e.y2-(e.y2-e.y1)*s}return e}}onMouseOver(t){(0,d.internalClearTimeout)(this.colorInterval),!this.isNull&&this.visible||this.series.options.nullInteraction?super.onMouseOver.call(this,t):this.series.onMouseOut()}setVisible(t){this.visible=this.options.visible=!!t,this.dataLabel&&this.dataLabel[t?"show":"hide"](),this.graphic&&this.graphic.attr(this.series.pointAttribs(this))}zoomTo(t){let e=this.series.chart,i=e.mapView,o=this.bounds;if(i&&o){let s=(0,d.isNumber)(this.insetIndex)&&i.insets[this.insetIndex];if(s){let t=s.projectedUnitsToPixels({x:o.x1,y:o.y1}),e=s.projectedUnitsToPixels({x:o.x2,y:o.y2}),r=i.pixelsToProjectedUnits({x:t.x,y:t.y}),a=i.pixelsToProjectedUnits({x:e.x,y:e.y});o={x1:r.x,y1:r.y,x2:a.x,y2:a.y}}i.fitToBounds(o,void 0,!1),this.series.isDirty=!0,e.redraw(t)}}}(0,d.extend)(Z.prototype,{dataLabelOnNull:A.pointMembers.dataLabelOnNull,moveToTopOnHover:A.pointMembers.moveToTopOnHover,isValid:A.pointMembers.isValid});let W={center:[0,0],fitToGeometry:void 0,maxZoom:void 0,padding:0,projection:{name:void 0,parallels:void 0,rotation:void 0},zoom:void 0,insetOptions:{borderColor:"var(--highcharts-neutral-color-20)",borderWidth:1,padding:"10%",relativeTo:"mapBoundingBox",units:"percent"}},H=e.default.Templating;var _=p.n(H);let{win:q}=c(),{format:K}=_();!function(t){function e(t){return this.mapView?.lonLatToProjectedUnits(t)}function i(t){return this.mapView?.projectedUnitsToLonLat(t)}function o(t,e){let i=this.options.chart.proj4||q.proj4;if(!i)return void(0,d.error)(21,!1,this);let{jsonmarginX:o=0,jsonmarginY:s=0,jsonres:r=1,scale:a=1,xoffset:n=0,xpan:l=0,yoffset:h=0,ypan:p=0}=e,c=i(e.crs,[t.lon,t.lat]),u=e.cosAngle||e.rotation&&Math.cos(e.rotation),m=e.sinAngle||e.rotation&&Math.sin(e.rotation),g=e.rotation?[c[0]*u+c[1]*m,-c[0]*m+c[1]*u]:c;return{x:((g[0]-n)*a+l)*r+o,y:-(((h-g[1])*a+p)*r-s)}}function s(t,e){let i=this.options.chart.proj4||q.proj4;if(!i)return void(0,d.error)(21,!1,this);if(null===t.y)return;let{jsonmarginX:o=0,jsonmarginY:s=0,jsonres:r=1,scale:a=1,xoffset:n=0,xpan:l=0,yoffset:h=0,ypan:p=0}=e,c={x:((t.x-o)/r-l)/a+n,y:((t.y-s)/r+p)/a+h},u=e.cosAngle||e.rotation&&Math.cos(e.rotation),m=e.sinAngle||e.rotation&&Math.sin(e.rotation),g=i(e.crs,"WGS84",e.rotation?{x:c.x*u+-(c.y*m),y:c.x*m+c.y*u}:c);return{lat:g.y,lon:g.x}}function r(t,e){e||(e=Object.keys(t.objects)[0]);let i=t.objects[e];if(i["hc-decoded-geojson"]&&i["hc-decoded-geojson"].title===t.title)return i["hc-decoded-geojson"];let o=t.arcs;if(t.transform){let e,i,s,r=t.arcs,{scale:a,translate:n}=t.transform;o=[];for(let t=0,l=r.length;t<l;++t){let l=r[t];o.push(e=[]),i=0,s=0;for(let t=0,o=l.length;t<o;++t)e.push([(i+=l[t][0])*a[0]+n[0],(s+=l[t][1])*a[1]+n[1]])}}let s=t=>"number"==typeof t[0]?t.reduce((t,e,i)=>{let s=e<0?o[~e]:o[e];return e<0?(s=s.slice(0,0===i?s.length:s.length-1)).reverse():i&&(s=s.slice(1)),t.concat(s)},[]):t.map(s),r=i.geometries,a=[];for(let t=0,e=r.length;t<e;++t)a.push({type:"Feature",properties:r[t].properties,geometry:{type:r[t].type,coordinates:r[t].coordinates||s(r[t].arcs)}});let n={type:"FeatureCollection",copyright:t.copyright,copyrightShort:t.copyrightShort,copyrightUrl:t.copyrightUrl,features:a,"hc-recommended-mapview":i["hc-recommended-mapview"],bbox:t.bbox,title:t.title};return i["hc-decoded-geojson"]=n,n}function a(t,e){e=(0,d.merge)(!0,this.options.credits,e),t.call(this,e),this.credits&&this.mapCreditsFull&&this.credits.attr({title:this.mapCreditsFull})}t.compose=function(t){let r=t.prototype;r.transformFromLatLon||(r.fromLatLonToPoint=e,r.fromPointToLatLon=i,r.transformFromLatLon=o,r.transformToLatLon=s,(0,d.wrap)(r,"addCredits",a))},t.geojson=function(t,e="map",i){let o=[],s="Topology"===t.type?r(t):t,a=s.features;for(let t=0,i=a.length;t<i;++t){let i,s=a[t],r=s.geometry||{},n=r.type,l=r.coordinates,h=s.properties;if(("map"===e||"mapbubble"===e)&&("Polygon"===n||"MultiPolygon"===n)||"mapline"===e&&("LineString"===n||"MultiLineString"===n)?l.length&&(i={geometry:{coordinates:l,type:n}}):"mappoint"===e&&"Point"===n&&l.length&&(i={geometry:{coordinates:l,type:n}}),i){let t=h&&(h.name||h.NAME),e=h&&h.lon,s=h&&h.lat;o.push((0,d.extend)(i,{lat:"number"==typeof s?s:void 0,lon:"number"==typeof e?e:void 0,name:"string"==typeof t?t:void 0,properties:h}))}}return i&&s.copyrightShort&&(i.chart.mapCredits=K(i.chart.options.credits?.mapText,{geojson:s}),i.chart.mapCreditsFull=K(i.chart.options.credits?.mapTextFull,{geojson:s})),o},t.topo2geo=r}(l||(l={}));let $=l;(s=h||(h={})).getCenterOfPoints=function(t){let e=t.reduce((t,e)=>(t.x+=e.x,t.y+=e.y,t),{x:0,y:0});return{x:e.x/t.length,y:e.y/t.length}},s.getDistanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},s.getAngleBetweenPoints=function(t,e){return Math.atan2(e.x-t.x,e.y-t.y)},s.pointInPolygon=function({x:t,y:e},i){let o=i.length,s,r,a=!1;for(s=0,r=o-1;s<o;r=s++){let[o,n]=i[s],[l,h]=i[r];n>e!=h>e&&t<(l-o)*(e-n)/(h-n)+o&&(a=!a)}return a};let J=h;function Q(t,e,i=!0){let o=e[e.length-1],s,r,a,n=t;for(let t=0;t<e.length;t++){let l=n;s=e[t],n=[],r=i?l[l.length-1]:l[0];for(let t=0;t<l.length;t++)tt(o,s,a=l[t])?(tt(o,s,r)||n.push(te(o,s,r,a)),n.push(a)):tt(o,s,r)&&n.push(te(o,s,r,a)),r=a;o=s}return n}function tt(t,e,i){return(e[0]-t[0])*(i[1]-t[1])>(e[1]-t[1])*(i[0]-t[0])}function te(t,e,i,o){let s=[t[0]-e[0],t[1]-e[1]],r=[i[0]-o[0],i[1]-o[1]],a=t[0]*e[1]-t[1]*e[0],n=i[0]*o[1]-i[1]*o[0],l=1/(s[0]*r[1]-s[1]*r[0]),h=[(a*r[0]-n*s[0])*l,(a*r[1]-n*s[1])*l];return h.isIntersection=!0,h}let ti=Math.sign||(t=>0===t?0:t>0?1:-1),to=Math.PI/180,ts=Math.PI/2,tr=t=>Math.tan((ts+t)/2),ta=class{constructor(t){let e=(t.parallels||[]).map(t=>t*to),i=e[0]||0,o=e[1]??i,s=Math.cos(i);"object"==typeof t.projectedBounds&&(this.projectedBounds=t.projectedBounds);let r=i===o?Math.sin(i):Math.log(s/Math.cos(o))/Math.log(tr(o)/tr(i));1e-10>Math.abs(r)&&(r=1e-10*(ti(r)||1)),this.n=r,this.c=s*Math.pow(tr(i),r)/r}forward(t){let{c:e,n:i,projectedBounds:o}=this,s=t[0]*to,r=t[1]*to;e>0?r<-ts+1e-6&&(r=-ts+1e-6):r>ts-1e-6&&(r=ts-1e-6);let a=e/Math.pow(tr(r),i),n=a*Math.sin(i*s)*63.78137,l=(e-a*Math.cos(i*s))*63.78137,h=[n,l];return o&&(n<o.x1||n>o.x2||l<o.y1||l>o.y2)&&(h.outside=!0),h}inverse(t){let{c:e,n:i}=this,o=t[0]/63.78137,s=e-t[1]/63.78137,r=ti(i)*Math.sqrt(o*o+s*s),a=Math.atan2(o,Math.abs(s))*ti(s);return s*i<0&&(a-=Math.PI*ti(o)*ti(s)),[a/i/to,(2*Math.atan(Math.pow(e/r,1/i))-ts)/to]}},tn=Math.sqrt(3)/2,tl=class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-97.52595454902263,y2:97.52595454902263}}forward(t){let e=Math.PI/180,i=Math.asin(tn*Math.sin(t[1]*e)),o=i*i,s=o*o*o;return[t[0]*e*Math.cos(i)*74.03120656864502/(tn*(1.340264+-.24331799999999998*o+s*(.0062510000000000005+.034164*o))),74.03120656864502*i*(1.340264+-.081106*o+s*(893e-6+.003796*o))]}inverse(t){let e=t[0]/74.03120656864502,i=t[1]/74.03120656864502,o=180/Math.PI,s=i,r,a,n,l;for(let t=0;t<12&&(a=(r=s*s)*r*r,n=s*(1.340264+-.081106*r+a*(893e-6+.003796*r))-i,s-=l=n/(1.340264+-.24331799999999998*r+a*(.0062510000000000005+.034164*r)),!(1e-9>Math.abs(l)));++t);a=(r=s*s)*r*r;let h=o*tn*e*(1.340264+-.24331799999999998*r+a*(.0062510000000000005+.034164*r))/Math.cos(s),p=o*Math.asin(Math.sin(s)/tn);return Math.abs(h)>180?[NaN,NaN]:[h,p]}},th=Math.PI/4,tp=Math.PI/180,td=class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-146.91480769173063,y2:146.91480769173063}}forward(t){return[t[0]*tp*63.78137,79.7267125*Math.log(Math.tan(th+.4*t[1]*tp))]}inverse(t){return[t[0]/63.78137/tp,2.5*(Math.atan(Math.exp(.8*(t[1]/63.78137)))-th)/tp]}},tc=Math.PI/180,tu=class{constructor(){this.antimeridianCutting=!1,this.bounds={x1:-63.78460826781007,x2:63.78460826781007,y1:-63.78460826781007,y2:63.78460826781007}}forward(t){let e=t[0],i=t[1]*tc,o=[Math.cos(i)*Math.sin(e*tc)*63.78460826781007,63.78460826781007*Math.sin(i)];return(e<-90||e>90)&&(o.outside=!0),o}inverse(t){let e=t[0]/63.78460826781007,i=t[1]/63.78460826781007,o=Math.sqrt(e*e+i*i),s=Math.asin(o),r=Math.sin(s);return[Math.atan2(e*r,o*Math.cos(s))/tc,Math.asin(o&&i*r/o)/tc]}},tm=Math.PI/180,tg=class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-200.3750834278071,y2:200.3750834278071},this.maxLatitude=85.0511287798}forward(t){let e=Math.sin(t[1]*tm),i=[63.78137*t[0]*tm,63.78137*Math.log((1+e)/(1-e))/2];return Math.abs(t[1])>this.maxLatitude&&(i.outside=!0),i}inverse(t){return[t[0]/(63.78137*tm),(2*Math.atan(Math.exp(t[1]/63.78137))-Math.PI/2)/tm]}},{clipLineString:tb,clipPolygon:tf}={clipLineString:function(t,e){let i=[],o=Q(t,e,!1);for(let t=1;t<o.length;t++)o[t].isIntersection&&o[t-1].isIntersection&&(i.push(o.splice(0,t)),t=0),t===o.length-1&&i.push(o);return i},clipPolygon:Q},ty=2*Math.PI/360,tx=t=>(t<-180&&(t+=360),t>180&&(t-=360),t),tM=t=>(1-Math.cos(t))/2;class tv{static add(t,e){tv.registry[t]=e}static distance(t,e){let i,o,s,r,a,{atan2:n,sqrt:l}=Math,h=(i=Math.cos,o=t[1]*ty,s=t[0]*ty,r=e[1]*ty,a=e[0]*ty,tM(r-o)+i(o)*i(r)*tM(a-s));return 6371e3*(2*n(l(h),l(1-h)))}static geodesic(t,e,i,o=5e5){let{atan2:s,cos:r,sin:a,sqrt:n}=Math,l=tv.distance,h=t[1]*ty,p=t[0]*ty,d=e[1]*ty,c=e[0]*ty,u=r(h)*r(p),m=r(d)*r(c),g=r(h)*a(p),b=r(d)*a(c),f=a(h),y=a(d),x=l(t,e),M=x/6371e3,v=a(M),w=Math.round(x/o),T=[];if(i&&T.push(t),w>1){let t=1/w;for(let e=t;e<.999;e+=t){let t=a((1-e)*M)/v,i=a(e*M)/v,o=t*u+i*m,r=t*g+i*b,l=s(t*f+i*y,n(o*o+r*r)),h=s(r,o);T.push([h/ty,l/ty])}}return i&&T.push(e),T}static insertGeodesics(t){let e=t.length-1;for(;e--;)if(Math.max(Math.abs(t[e][0]-t[e+1][0]),Math.abs(t[e][1]-t[e+1][1]))>10){let i=tv.geodesic(t[e],t[e+1]);i.length&&t.splice(e+1,0,...i)}}static toString(t){let{name:e,rotation:i}=t||{};return[e,i&&i.join(",")].join(";")}constructor(t={}){this.hasCoordinates=!1,this.hasGeoProjection=!1,this.maxLatitude=90,this.options=t;let{name:e,projectedBounds:i,rotation:o}=t;this.rotator=o?this.getRotator(o):void 0;let s=e?tv.registry[e]:void 0;s&&(this.def=new s(t));let{def:r,rotator:a}=this;r&&(this.maxLatitude=r.maxLatitude||90,this.hasGeoProjection=!0),a&&r?(this.forward=t=>r.forward(a.forward(t)),this.inverse=t=>a.inverse(r.inverse(t))):r?(this.forward=t=>r.forward(t),this.inverse=t=>r.inverse(t)):a&&(this.forward=a.forward,this.inverse=a.inverse),this.bounds="world"===i?r&&r.bounds:i}lineIntersectsBounds(t){let{x1:e,x2:i,y1:o,y2:s}=this.bounds||{},r=(t,e,i)=>{let[o,s]=t,r=+!e;if("number"==typeof i&&o[e]>=i!=s[e]>=i){let t=(i-o[e])/(s[e]-o[e]),a=o[r]+t*(s[r]-o[r]);return e?[a,i]:[i,a]}},a,n=t[0];return(a=r(t,0,e))?(n=a,t[1]=a):(a=r(t,0,i))&&(n=a,t[1]=a),(a=r(t,1,o))?n=a:(a=r(t,1,s))&&(n=a),n}getRotator(t){let e=t[0]*ty,i=(t[1]||0)*ty,o=(t[2]||0)*ty,s=Math.cos(i),r=Math.sin(i),a=Math.cos(o),n=Math.sin(o);if(0!==e||0!==i||0!==o)return{forward:t=>{let i=t[0]*ty+e,o=t[1]*ty,l=Math.cos(o),h=Math.cos(i)*l,p=Math.sin(i)*l,d=Math.sin(o),c=d*s+h*r;return[Math.atan2(p*a-c*n,h*s-d*r)/ty,Math.asin(c*a+p*n)/ty]},inverse:t=>{let i=t[0]*ty,o=t[1]*ty,l=Math.cos(o),h=Math.cos(i)*l,p=Math.sin(i)*l,d=Math.sin(o),c=d*a-p*n;return[(Math.atan2(p*a+d*n,h*s+c*r)-e)/ty,Math.asin(c*s-h*r)/ty]}}}forward(t){return t}inverse(t){return t}cutOnAntimeridian(t,e){let i,o=[],s=[t];for(let i=0,s=t.length;i<s;++i){let s=t[i],r=t[i-1];if(!i){if(!e)continue;r=t[t.length-1]}let a=r[0],n=s[0];if((a<-90||a>90)&&(n<-90||n>90)&&a>0!=n>0){let t=(0,d.clamp)((180-(a+360)%360)/((n+360)%360-(a+360)%360),0,1),e=r[1]+t*(s[1]-r[1]);o.push({i,lat:e,direction:a<0?1:-1,previousLonLat:r,lonLat:s})}}if(o.length)if(e){o.length%2==1&&(i=o.slice().sort((t,e)=>Math.abs(e.lat)-Math.abs(t.lat))[0],(0,d.erase)(o,i));let e=o.length-2;for(;e>=0;){let i=o[e].i,r=tx(180+1e-6*o[e].direction),a=tx(180-1e-6*o[e].direction),n=t.splice(i,o[e+1].i-i,...tv.geodesic([r,o[e].lat],[r,o[e+1].lat],!0));n.push(...tv.geodesic([a,o[e+1].lat],[a,o[e].lat],!0)),s.push(n),e-=2}if(i)for(let t=0;t<s.length;t++){let{direction:e,lat:o}=i,r=s[t],a=r.indexOf(i.lonLat);if(a>-1){let t=(o<0?-1:1)*this.maxLatitude,s=tx(180+1e-6*e),n=tx(180-1e-6*e),l=tv.geodesic([s,o],[s,t],!0);for(let i=s+120*e;i>-180&&i<180;i+=120*e)l.push([i,t]);l.push(...tv.geodesic([n,t],[n,i.lat],!0)),r.splice(a,0,...l);break}}}else{let e=o.length;for(;e--;){let i=o[e].i,r=t.splice(i,t.length,[tx(180+1e-6*o[e].direction),o[e].lat]);r.unshift([tx(180-1e-6*o[e].direction),o[e].lat]),s.push(r)}}return s}path(t){let e,{bounds:i,def:o,rotator:s}=this,r=[],a="Polygon"===t.type||"MultiPolygon"===t.type,n=this.hasGeoProjection,l=!o||!1!==o.antimeridianCutting,h=l?s:void 0,p=l&&o||this;i&&(e=[[i.x1,i.y1],[i.x2,i.y1],[i.x2,i.y2],[i.x1,i.y2]]);let d=t=>{let o=t.map(t=>{if(l){h&&(t=h.forward(t));let e=t[0];1e-6>Math.abs(e-180)&&(e=e<180?179.999999:180.000001),t=[e,t[1]]}return t}),s=[o];n&&(tv.insertGeodesics(o),l&&(s=this.cutOnAntimeridian(o,a))),s.forEach(t=>{let o,s;if(t.length<2)return;let h=!1,d=!1,c=t=>{h?r.push(["L",t[0],t[1]]):(r.push(["M",t[0],t[1]]),h=!0)},u=!1,m=!1,g=t.map(t=>{let e=p.forward(t);return e.outside?u=!0:m=!0,e[1]===1/0?e[1]=1e10:e[1]===-1/0&&(e[1]=-1e10),e});if(l){if(a&&g.push(g[0]),u){if(!m)return;if(e){if(a)g=tf(g,e);else if(i)return void tb(g,e).forEach(t=>{h=!1,t.forEach(c)})}}g.forEach(c)}else for(let e=0;e<g.length;e++){let i=t[e],r=g[e];r.outside?d=!0:(a&&!o&&(o=i,t.push(i),g.push(r)),d&&s&&(a&&n?tv.geodesic(s,i).forEach(t=>c(p.forward(t))):h=!1),c(r),s=i,d=!1)}})};return"LineString"===t.type?d(t.coordinates):"MultiLineString"===t.type?t.coordinates.forEach(t=>d(t)):"Polygon"===t.type?(t.coordinates.forEach(t=>d(t)),r.length&&r.push(["Z"])):"MultiPolygon"===t.type&&(t.coordinates.forEach(t=>{t.forEach(t=>d(t))}),r.length&&r.push(["Z"])),r}}tv.registry={EqualEarth:tl,LambertConformalConic:ta,Miller:td,Orthographic:tu,WebMercator:tg};let{composed:tw}=c(),{pointInPolygon:tT}=J,{topo2geo:tP}=$,{boundsFromPath:tC}=F,tk={};function tj(t,e){let{width:i,height:o}=e;return Math.log(400.979322/Math.max((t.x2-t.x1)/(i/256),(t.y2-t.y1)/(o/256)))/Math.log(2)}function tL(t){t.seriesOptions.mapData&&this.mapView?.recommendMapView(this,[this.options.chart.map,t.seriesOptions.mapData],this.options.drilldown?.mapZooming)}class tA{static compose(t){(0,d.pushUnique)(tw,"MapView")&&(tk=t.maps,(0,d.addEvent)(t,"afterInit",function(){this.mapView=new tA(this,this.options.mapView)},{order:0}),(0,d.addEvent)(t,"addSeriesAsDrilldown",tL),(0,d.addEvent)(t,"afterDrillUp",tL))}static compositeBounds(t){if(t.length)return t.slice(1).reduce((t,e)=>(t.x1=Math.min(t.x1,e.x1),t.y1=Math.min(t.y1,e.y1),t.x2=Math.max(t.x2,e.x2),t.y2=Math.max(t.y2,e.y2),t),(0,d.merge)(t[0]))}static mergeInsets(t,e){let i=t=>{let e={};return t.forEach((t,i)=>{e[t&&t.id||`i${i}`]=t}),e},o=(0,d.merge)(i(t),i(e));return Object.keys(o).map(t=>o[t])}constructor(t,e){this.allowTransformAnimation=!0,this.eventsToUnbind=[],this.insets=[],this.padding=[0,0,0,0],this.recommendedMapView={},this instanceof tz||this.recommendMapView(t,[t.options.chart.map,...(t.options.series||[]).map(t=>t.mapData)]),this.userOptions=e||{};let i=(0,d.merge)(W,this.recommendedMapView,e),o=this.recommendedMapView?.insets,s=e&&e.insets;o&&s&&(i.insets=tA.mergeInsets(o,s)),this.chart=t,this.center=i.center,this.options=i,this.projection=new tv(i.projection),this.playingField=t.plotBox,this.zoom=i.zoom||0,this.minZoom=i.minZoom,this.createInsets(),this.eventsToUnbind.push((0,d.addEvent)(t,"afterSetChartSize",()=>{this.playingField=this.getField(),(void 0===this.minZoom||this.minZoom===this.zoom)&&(this.fitToBounds(void 0,void 0,!1),!this.chart.hasRendered&&(0,d.isNumber)(this.userOptions.zoom)&&(this.zoom=this.userOptions.zoom),this.userOptions.center&&(0,d.merge)(!0,this.center,this.userOptions.center))})),this.setUpEvents()}createInsets(){let t=this.options,e=t.insets;e&&e.forEach(e=>{let i=new tz(this,(0,d.merge)(t.insetOptions,e));this.insets.push(i)})}fitToBounds(t,e,i=!0,o){let s=t||this.getProjectedBounds();if(s){let r=(0,d.pick)(e,t?0:this.options.padding),a=this.getField(!1),n=(0,d.isArray)(r)?r:[r,r,r,r];this.padding=[(0,d.relativeLength)(n[0],a.height),(0,d.relativeLength)(n[1],a.width),(0,d.relativeLength)(n[2],a.height),(0,d.relativeLength)(n[3],a.width)],this.playingField=this.getField();let l=tj(s,this.playingField);t||(this.minZoom=l);let h=this.projection.inverse([(s.x2+s.x1)/2,(s.y2+s.y1)/2]);this.setView(h,l,i,o)}}getField(t=!0){let e=t?this.padding:[0,0,0,0];return{x:e[3],y:e[0],width:this.chart.plotWidth-e[1]-e[3],height:this.chart.plotHeight-e[0]-e[2]}}getGeoMap(t){if((0,d.isString)(t))return tk[t]&&"Topology"===tk[t].type?tP(tk[t]):tk[t];if((0,d.isObject)(t,!0)){if("FeatureCollection"===t.type)return t;if("Topology"===t.type)return tP(t)}}getMapBBox(){let t=this.getProjectedBounds(),e=this.getScale();if(t){let i=this.padding,o=this.projectedUnitsToPixels({x:t.x1,y:t.y2});return{width:(t.x2-t.x1)*e+i[1]+i[3],height:(t.y2-t.y1)*e+i[0]+i[2],x:o.x-i[3],y:o.y-i[0]}}}getProjectedBounds(){let t=this.projection,e=this.chart.series.reduce((t,e)=>{let i=e.getProjectedBounds&&e.getProjectedBounds();return i&&!1!==e.options.affectsMapView&&t.push(i),t},[]),i=this.options.fitToGeometry;if(i){if(!this.fitToGeometryCache)if("MultiPoint"===i.type){let e=i.coordinates.map(e=>t.forward(e)),o=e.map(t=>t[0]),s=e.map(t=>t[1]);this.fitToGeometryCache={x1:Math.min.apply(0,o),x2:Math.max.apply(0,o),y1:Math.min.apply(0,s),y2:Math.max.apply(0,s)}}else this.fitToGeometryCache=tC(t.path(i));return this.fitToGeometryCache}return this.projection.bounds||tA.compositeBounds(e)}getScale(){return 256/400.979322*Math.pow(2,this.zoom)}getSVGTransform(){let{x:t,y:e,width:i,height:o}=this.playingField,s=this.projection.forward(this.center),r=this.projection.hasCoordinates?-1:1,a=this.getScale(),n=a*r,l=t+i/2-s[0]*a,h=e+o/2-s[1]*n;return{scaleX:a,scaleY:n,translateX:l,translateY:h}}lonLatToPixels(t){let e=this.lonLatToProjectedUnits(t);if(e)return this.projectedUnitsToPixels(e)}lonLatToProjectedUnits(t){let e=this.chart,i=e.mapTransforms;if(i){for(let o in i)if(Object.hasOwnProperty.call(i,o)&&i[o].hitZone){let s=e.transformFromLatLon(t,i[o]);if(s&&tT(s,i[o].hitZone.coordinates[0]))return s}return e.transformFromLatLon(t,i.default)}for(let e of this.insets)if(e.options.geoBounds&&tT({x:t.lon,y:t.lat},e.options.geoBounds.coordinates[0])){let i=e.projection.forward([t.lon,t.lat]),o=e.projectedUnitsToPixels({x:i[0],y:i[1]});return this.pixelsToProjectedUnits(o)}let o=this.projection.forward([t.lon,t.lat]);if(!o.outside)return{x:o[0],y:o[1]}}pixelsToLonLat(t){return this.projectedUnitsToLonLat(this.pixelsToProjectedUnits(t))}pixelsToProjectedUnits(t){let{x:e,y:i}=t,o=this.getScale(),s=this.projection.forward(this.center),r=this.playingField,a=r.x+r.width/2,n=r.y+r.height/2;return{x:s[0]+(e-a)/o,y:s[1]-(i-n)/o}}projectedUnitsToLonLat(t){let e=this.chart,i=e.mapTransforms;if(i){for(let o in i)if(Object.hasOwnProperty.call(i,o)&&i[o].hitZone&&tT(t,i[o].hitZone.coordinates[0]))return e.transformToLatLon(t,i[o]);return e.transformToLatLon(t,i.default)}let o=this.projectedUnitsToPixels(t);for(let t of this.insets)if(t.hitZone&&tT(o,t.hitZone.coordinates[0])){let e=t.pixelsToProjectedUnits(o),i=t.projection.inverse([e.x,e.y]);return{lon:i[0],lat:i[1]}}let s=this.projection.inverse([t.x,t.y]);return{lon:s[0],lat:s[1]}}projectedUnitsToPixels(t){let e=this.getScale(),i=this.projection.forward(this.center),o=this.playingField,s=o.x+o.width/2,r=o.y+o.height/2;return{x:s-e*(i[0]-t.x),y:r+e*(i[1]-t.y)}}recommendMapView(t,e,i=!1){this.recommendedMapView={};let o=e.map(t=>this.getGeoMap(t)),s=[];o.forEach(t=>{if(t&&(Object.keys(this.recommendedMapView).length||(this.recommendedMapView=t["hc-recommended-mapview"]||{}),t.bbox)){let[e,i,o,r]=t.bbox;s.push({x1:e,y1:i,x2:o,y2:r})}});let r=s.length&&tA.compositeBounds(s);(0,d.fireEvent)(this,"onRecommendMapView",{geoBounds:r,chart:t},function(){if(r&&this.recommendedMapView){if(!this.recommendedMapView.projection){let{x1:t,y1:e,x2:i,y2:o}=r;this.recommendedMapView.projection=i-t>180&&o-e>90?{name:"EqualEarth",parallels:[0,0],rotation:[0]}:{name:"LambertConformalConic",parallels:[e,o],rotation:[-(t+i)/2]}}this.recommendedMapView.insets||(this.recommendedMapView.insets=void 0)}}),this.geoMap=o[0],i&&t.hasRendered&&!t.userOptions.mapView?.projection&&this.recommendedMapView&&this.update(this.recommendedMapView)}redraw(t){this.chart.series.forEach(t=>{t.useMapGeometry&&(t.isDirty=!0)}),this.chart.redraw(t)}setView(t,e,i=!0,o){t&&(this.center=t),"number"==typeof e&&("number"==typeof this.minZoom&&(e=Math.max(e,this.minZoom)),"number"==typeof this.options.maxZoom&&(e=Math.min(e,this.options.maxZoom)),(0,d.isNumber)(e)&&(this.zoom=e));let s=this.getProjectedBounds();if(s){let t=this.projection.forward(this.center),{x:e,y:i,width:o,height:r}=this.playingField,a=this.getScale(),n=this.projectedUnitsToPixels({x:s.x1,y:s.y1}),l=this.projectedUnitsToPixels({x:s.x2,y:s.y2}),h=[(s.x1+s.x2)/2,(s.y1+s.y2)/2];if(!this.chart.series.some(t=>t.isDrilling)){let s=n.x,p=l.y,d=l.x,c=n.y;d-s<o?t[0]=h[0]:s<e&&d<e+o?t[0]+=Math.max(s-e,d-o-e)/a:d>e+o&&s>e&&(t[0]+=Math.min(d-o-e,s-e)/a),c-p<r?t[1]=h[1]:p<i&&c<i+r?t[1]-=Math.max(p-i,c-r-i)/a:c>i+r&&p>i&&(t[1]-=Math.min(c-r-i,p-i)/a),this.center=this.projection.inverse(t)}this.insets.forEach(t=>{t.options.field&&(t.hitZone=t.getHitZone(),t.playingField=t.getField())}),this.render()}(0,d.fireEvent)(this,"afterSetView"),i&&this.redraw(o)}setUpEvents(){let t,e,i,{chart:o}=this,s=s=>{let{lastTouches:r,pinchDown:a}=o.pointer,n=this.projection,l=s.touches,{mouseDownX:h,mouseDownY:p}=o,c=0;if(a?.length===1?(h=a[0].chartX,p=a[0].chartY):a?.length===2&&(h=(a[0].chartX+a[1].chartX)/2,p=(a[0].chartY+a[1].chartY)/2),l?.length===2&&r&&(c=Math.log(Math.sqrt(Math.pow(r[0].chartX-r[1].chartX,2)+Math.pow(r[0].chartY-r[1].chartY,2))/Math.sqrt(Math.pow(l[0].chartX-l[1].chartX,2)+Math.pow(l[0].chartY-l[1].chartY,2)))/Math.log(.5)),(0,d.isNumber)(h)&&(0,d.isNumber)(p)){let r=`${h},${p}`,{chartX:a,chartY:u}=s.originalEvent;l?.length===2&&(a=(l[0].chartX+l[1].chartX)/2,u=(l[0].chartY+l[1].chartY)/2),r!==e&&(e=r,t=this.projection.forward(this.center),i=(this.projection.options.rotation||[0,0]).slice());let m=n.def&&n.def.bounds,g=m&&tj(m,this.playingField)||-1/0;if("Orthographic"===n.options.name&&2>(l?.length||0)&&(this.minZoom||1/0)<1.3*g){let t=440/(this.getScale()*Math.min(o.plotWidth,o.plotHeight));if(i){let e=(h-a)*t-i[0],s=(0,d.clamp)(-i[1]-(p-u)*t,-80,80),r=this.zoom;this.update({projection:{rotation:[-e,-s]}},!1),this.fitToBounds(void 0,void 0,!1),this.zoom=r,o.redraw(!1)}}else if((0,d.isNumber)(a)&&(0,d.isNumber)(u)){let e=this.getScale(),i=this.projection.hasCoordinates?1:-1,o=this.projection.inverse([t[0]+(h-a)/e,t[1]-(p-u)/e*i]);isNaN(o[0]+o[1])||this.zoomBy(c,o,void 0,!1)}s.preventDefault()}};(0,d.addEvent)(o,"pan",s),(0,d.addEvent)(o,"touchpan",s),(0,d.addEvent)(o,"selection",t=>{if(t.resetSelection)this.zoomBy();else{let e=t.x-o.plotLeft,i=t.y-o.plotTop,{y:s,x:r}=this.pixelsToProjectedUnits({x:e,y:i}),{y:a,x:n}=this.pixelsToProjectedUnits({x:e+t.width,y:i+t.height});this.fitToBounds({x1:r,y1:s,x2:n,y2:a},void 0,!0,!t.originalEvent.touches&&void 0),/^touch/.test(t.originalEvent.type)||o.showResetZoom(),t.preventDefault()}})}render(){let t=this.chart;this.group?this.groupClipRect&&this.groupClipRect.animate(t.plotBox):(this.groupClipRect=t.renderer.clipRect(t.plotBox),this.group=t.renderer.g("map-view").attr({zIndex:4}).clip(this.groupClipRect).add())}update(t,e=!0,i){let o=t.projection,s=o&&tv.toString(o)!==tv.toString(this.options.projection),r=!1;(0,d.merge)(!0,this.userOptions,t),(0,d.merge)(!0,this.options,t),"insets"in t&&(this.insets.forEach(t=>t.destroy()),this.insets.length=0,r=!0),(s||"fitToGeometry"in t)&&delete this.fitToGeometryCache,(s||r)&&(this.chart.series.forEach(t=>{let e=t.transformGroups;if(t.clearBounds&&t.clearBounds(),t.isDirty=!0,t.isDirtyData=!0,r&&e)for(;e.length>1;){let t=e.pop();t&&t.destroy()}}),s&&(this.projection=new tv(this.options.projection)),r&&this.createInsets(),!t.center&&Object.hasOwnProperty.call(t,"zoom")&&!(0,d.isNumber)(t.zoom)&&this.fitToBounds(void 0,void 0,!1)),t.center||(0,d.isNumber)(t.zoom)?this.setView(this.options.center,t.zoom,!1):"fitToGeometry"in t&&this.fitToBounds(void 0,void 0,!1),e&&this.redraw(i)}zoomBy(t,e,i,o){let s=this.chart,r=this.projection.forward(this.center);if("number"==typeof t){let a,n,l,h=this.zoom+t;if(i){let[t,e]=i,o=this.getScale(),a=t-s.plotLeft-s.plotWidth/2,h=e-s.plotTop-s.plotHeight/2;n=r[0]+a/o,l=r[1]+h/o}if("number"==typeof n&&"number"==typeof l){let t=1-Math.pow(2,this.zoom)/Math.pow(2,h),e=r[0]-n,i=r[1]-l;r[0]-=e*t,r[1]+=i*t,a=this.projection.inverse(r)}this.setView(e||a,h,void 0,o)}else this.fitToBounds(void 0,void 0,void 0,o)}}class tz extends tA{constructor(t,e){if(super(t.chart,e),this.id=e.id,this.mapView=t,this.options=(0,d.merge)({center:[0,0]},t.options.insetOptions,e),this.allBounds=[],this.options.geoBounds){let e=t.projection.path(this.options.geoBounds);this.geoBoundsProjectedBox=tC(e),this.geoBoundsProjectedPolygon=e.map(t=>[t[1]||0,t[2]||0])}}getField(t=!0){let e=this.hitZone;if(e){let i=t?this.padding:[0,0,0,0],o=e.coordinates[0],s=o.map(t=>t[0]),r=o.map(t=>t[1]),a=Math.min.apply(0,s)+i[3],n=Math.max.apply(0,s)-i[1],l=Math.min.apply(0,r)+i[0],h=Math.max.apply(0,r)-i[2];if((0,d.isNumber)(a)&&(0,d.isNumber)(l))return{x:a,y:l,width:n-a,height:h-l}}return super.getField.call(this,t)}getHitZone(){let{chart:t,mapView:e,options:i}=this,{coordinates:o}=i.field||{};if(o){let s=o[0];if("percent"===i.units){let o="mapBoundingBox"===i.relativeTo&&e.getMapBBox()||(0,d.merge)(t.plotBox,{x:0,y:0});s=s.map(t=>[(0,d.relativeLength)(`${t[0]}%`,o.width,o.x),(0,d.relativeLength)(`${t[1]}%`,o.height,o.y)])}return{type:"Polygon",coordinates:[s]}}}getProjectedBounds(){return tA.compositeBounds(this.allBounds)}isInside(t){let{geoBoundsProjectedBox:e,geoBoundsProjectedPolygon:i}=this;return!!(e&&t.x>=e.x1&&t.x<=e.x2&&t.y>=e.y1&&t.y<=e.y2&&i&&tT(t,i))}render(){let{chart:t,mapView:e,options:i}=this,o=i.borderPath||i.field;if(o&&e.group){let s=!0;this.border||(this.border=t.renderer.path().addClass("highcharts-mapview-inset-border").add(e.group),s=!1),t.styledMode||this.border.attr({stroke:i.borderColor,"stroke-width":i.borderWidth});let r=this.border.strokeWidth(),a="mapBoundingBox"===i.relativeTo&&e.getMapBBox()||e.playingField,n=(o.coordinates||[]).reduce((e,o)=>o.reduce((e,o,s)=>{let[n,l]=o;return"percent"===i.units&&(n=t.plotLeft+(0,d.relativeLength)(`${n}%`,a.width,a.x),l=t.plotTop+(0,d.relativeLength)(`${l}%`,a.height,a.y)),n=(0,d.crisp)(n,r),l=(0,d.crisp)(l,r),e.push(0===s?["M",n,l]:["L",n,l]),e},e),[]);this.border[s?"animate":"attr"]({d:n})}}destroy(){this.border&&(this.border=this.border.destroy()),this.eventsToUnbind.forEach(t=>t())}setUpEvents(){}}let{animObject:tE,stop:tN}=c(),{noop:tB}=c(),{splitPath:tS}=G,{column:tO,scatter:tD}=T().seriesTypes;class tI extends tD{constructor(){super(...arguments),this.tupleKey="hc-key"}animate(t){let{chart:e,group:i}=this,o=tE(this.options.animation);t?i.attr({translateX:e.plotLeft+e.plotWidth/2,translateY:e.plotTop+e.plotHeight/2,scaleX:.001,scaleY:.001}):i.animate({translateX:e.plotLeft,translateY:e.plotTop,scaleX:1,scaleY:1},o)}clearBounds(){this.points.forEach(t=>{delete t.bounds,delete t.insetIndex,delete t.projectedPath}),delete this.bounds}doFullTranslate(){return!!(this.isDirtyData||this.chart.isResizing||!this.hasRendered)}drawMapDataLabels(){super.drawDataLabels(),this.dataLabelsGroups?.forEach(t=>t?.clip(this.chart.clipRect))}drawPoints(){let t=this,{chart:e,group:i,transformGroups:o=[]}=this,{mapView:s,renderer:r}=e;if(s){this.transformGroups=o,o[0]||(o[0]=r.g().add(i));for(let t=0,e=s.insets.length;t<e;++t)o[t+1]||o.push(r.g().add(i));this.doFullTranslate()&&(this.points.forEach(t=>{let{graphic:e}=t;t.group=o["number"==typeof t.insetIndex?t.insetIndex+1:0],e&&e.parentGroup!==t.group&&e.add(t.group)}),tO.prototype.drawPoints.apply(this),this.points.forEach(i=>{let o=i.graphic;if(o){let s=o.animate,r="";i.name&&(r+="highcharts-name-"+i.name.replace(/ /g,"-").toLowerCase()),i.properties?.["hc-key"]&&(r+=" highcharts-key-"+i.properties["hc-key"].toString().toLowerCase()),r&&o.addClass(r),e.styledMode&&o.css(this.pointAttribs(i,i.selected&&"select"||void 0)),o.attr({visibility:!i.visible&&(i.visible||i.isNull)?"hidden":"inherit"}),o.animate=function(i,r,a){let n=(0,d.isNumber)(i["stroke-width"])&&!(0,d.isNumber)(o["stroke-width"]),l=(0,d.isNumber)(o["stroke-width"])&&!(0,d.isNumber)(i["stroke-width"]);if(n||l){let s=(0,d.pick)(t.getStrokeWidth(t.options),1)/(e.mapView?.getScale()||1);n&&(o["stroke-width"]=s),l&&(i["stroke-width"]=s)}return s.call(o,i,r,l?function(){o.element.removeAttribute("stroke-width"),delete o["stroke-width"],a&&a.apply(this,arguments)}:a)}}})),o.forEach((i,o)=>{let a=(0===o?s:s.insets[o-1]).getSVGTransform(),n=(0,d.pick)(this.getStrokeWidth(this.options),1),l=a.scaleX,h=a.scaleY>0?1:-1,p=e=>{(t.points||[]).forEach(t=>{let i,o=t.graphic;o?.["stroke-width"]&&(i=this.getStrokeWidth(t.options))&&o.attr({"stroke-width":i/e})})};if(r.globalAnimation&&e.hasRendered&&s.allowTransformAnimation){let t=Number(i.attr("translateX")),e=Number(i.attr("translateY")),o=Number(i.attr("scaleX")),s=(s,r)=>{let d=o+(l-o)*r.pos;i.attr({translateX:t+(a.translateX-t)*r.pos,translateY:e+(a.translateY-e)*r.pos,scaleX:d,scaleY:d*h,"stroke-width":n/d}),p(d)},c=(0,d.merge)(tE(r.globalAnimation)),u=c.step;c.step=function(){u&&u.apply(this,arguments),s.apply(this,arguments)},i.attr({animator:0}).animate({animator:1},c,(function(){"boolean"!=typeof r.globalAnimation&&r.globalAnimation.complete&&r.globalAnimation.complete({applyDrilldown:!0}),(0,d.fireEvent)(this,"mapZoomComplete")}).bind(this))}else tN(i),i.attr((0,d.merge)(a,{"stroke-width":n/l})),p(l)}),this.isDrilling||this.drawMapDataLabels()}}getProjectedBounds(){if(!this.bounds&&this.chart.mapView){let{insets:t,projection:e}=this.chart.mapView,i=[];(this.points||[]).forEach(o=>{if(o.path||o.geometry){if("string"==typeof o.path?o.path=tS(o.path):(0,d.isArray)(o.path)&&"M"===o.path[0]&&(o.path=this.chart.renderer.pathToSegments(o.path)),!o.bounds){let i=o.getProjectedBounds(e);if(i){o.labelrank=(0,d.pick)(o.labelrank,(i.x2-i.x1)*(i.y2-i.y1));let{midX:e,midY:s}=i;if(t&&(0,d.isNumber)(e)&&(0,d.isNumber)(s)){let r=(0,d.find)(t,t=>t.isInside({x:e,y:s}));r&&(delete o.projectedPath,(i=o.getProjectedBounds(r.projection))&&r.allBounds.push(i),o.insetIndex=t.indexOf(r))}o.bounds=i}}o.bounds&&void 0===o.insetIndex&&i.push(o.bounds)}}),this.bounds=tA.compositeBounds(i)}return this.bounds}getStrokeWidth(t){let e=this.pointAttrToOptions;return t[e?.["stroke-width"]||"borderWidth"]}hasData(){return!!this.dataTable.getModified().rowCount}pointAttribs(t,e){let{mapView:i,styledMode:o}=(t?.series||this).chart,s=o&&t?this.colorAttribs(t):tO.prototype.pointAttribs.call(this,t,e),r=this.getStrokeWidth(t?.options||{});if(e){let i=(0,d.merge)(this.options.states?.[e],t?.options.states?.[e]||{}),o=this.getStrokeWidth(i);(0,d.defined)(o)&&(r=o),s.stroke=i.borderColor??t?.color}r&&i&&(r/=i.getScale());let a=this.getStrokeWidth(this.options);return s.dashstyle&&i&&(0,d.isNumber)(a)&&(r=a/i.getScale()),t?.visible===!1&&(s.fill=this.options.nullColor),t?.isNull&&this.options.nullInteraction&&(s.opacity=1),(0,d.defined)(r)?s["stroke-width"]=r:delete s["stroke-width"],s["stroke-linecap"]=s["stroke-linejoin"]=this.options.linecap,s}matchPoints(){return!this.hasProcessedDataTable&&super.matchPoints.apply(this,arguments)}setData(t,e=!0,i,o){delete this.bounds,super.setData(t,!1,void 0,o),this.processData(),this.generatePoints(),e&&this.chart.redraw(i)}getDataColumnKeys(){return this.pointArrayMap}processData(){let t,e,i,o=this.options,s=this.dataTable,r=this.chart,a=r.options.chart,n=this.joinBy,l=[],h={},p=this.chart.mapView,u=p&&((0,d.isObject)(o.mapData,!0)?p.getGeoMap(o.mapData):p.geoMap),m=r.mapTransforms=a.mapTransforms||u?.["hc-transform"]||r.mapTransforms,g=new S;if(this.hasProcessedDataTable=!0,m&&(0,d.objectEach)(m,t=>{t.rotation&&(t.cosAngle=Math.cos(t.rotation),t.sinAngle=Math.sin(t.rotation))}),(0,d.isArray)(o.mapData)?i=o.mapData:u?.type==="FeatureCollection"&&(this.mapTitle=u.title,i=c().geojson(u,this.type,this)),Object.entries(s.columns).forEach(([t,e])=>{g.setColumn(t,e)}),"_i"===n[0]&&g.setColumn("_i",Array.from({length:g.rowCount},(t,e)=>e)),i){this.mapData=i,this.mapMap={};for(let o=0;o<i.length;o++)e=(t=i[o]).properties,t._i=o,n[0]&&e&&e[n[0]]&&(t[n[0]]=e[n[0]]),h[t[n[0]]]=t;if(this.mapMap=h,n[1]){let t=n[1];for(let e=0;e<g.rowCount;e++){let i="_i"===t?e:(0,d.getNestedProperty)(t,g.getRowObject(e));h[i]&&l.push(h[i])}}if(o.allAreas){let t="|"+l.map(function(t){return t&&t[n[0]]}).join("|")+"|";i.forEach(e=>{n[0]&&-1!==t.indexOf("|"+e[n[0]]+"|")||g.setRow((0,d.merge)(e,{value:null}))})}}this.dataTable.modified=g}setOptions(t){let e=super.setOptions(t),i=e.joinBy;return null===e.joinBy&&(i="_i"),i&&(this.joinBy=(0,d.splat)(i),this.joinBy[1]||(this.joinBy[1]=this.joinBy[0])),e}translate(){let t=this.doFullTranslate(),e=this.chart.mapView,i=e?.projection;if(this.chart.hasRendered&&(this.isDirtyData||!this.hasRendered)&&(this.processData(),this.generatePoints(),delete this.bounds,!e||e.userOptions.center||(0,d.isNumber)(e.userOptions.zoom)||e.zoom!==e.minZoom?this.getProjectedBounds():e.fitToBounds(void 0,void 0,!1)),e){let o=e.getSVGTransform();this.points.forEach(s=>{let r=(0,d.isNumber)(s.insetIndex)&&e.insets[s.insetIndex].getSVGTransform()||o;r&&s.bounds&&(0,d.isNumber)(s.bounds.midX)&&(0,d.isNumber)(s.bounds.midY)&&(s.plotX=s.bounds.midX*r.scaleX+r.translateX,s.plotY=s.bounds.midY*r.scaleY+r.translateY),t&&(s.shapeType="path",s.shapeArgs={d:Z.getProjectedPath(s,i)}),!s.hiddenInDataClass&&(s.projectedPath&&!s.projectedPath.length?s.setVisible(!1):s.visible||s.setVisible(!0))})}(0,d.fireEvent)(this,"afterTranslate")}update(t){t.mapData&&this.chart.mapView?.recommendMapView(this.chart,[this.chart.options.chart.map,...(this.chart.options.series||[]).map((e,i)=>i===this._i?t.mapData:e.mapData)],!0),super.update.apply(this,arguments)}}tI.defaultOptions=(0,d.merge)(tD.defaultOptions,{affectsMapView:!0,animation:!1,dataLabels:{crop:!1,distance:0,formatter:function(){let{numberFormatter:t}=this.series.chart,{value:e}=this.point;return(0,d.isNumber)(e)?t(e,-1):this.point.name||""},inside:!0,overflow:!1,padding:[0,2],verticalAlign:"middle"},linecap:"round",marker:null,nullColor:"var(--highcharts-neutral-color-3)",stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:"{point.name}: {point.value}<br/>"},turboThreshold:0,allAreas:!0,borderColor:"var(--highcharts-neutral-color-20)",borderWidth:1,joinBy:"hc-key",states:{hover:{halo:void 0,borderColor:"var(--highcharts-neutral-color-60)",borderWidth:2},normal:{animation:!0},select:{color:"var(--highcharts-neutral-color-20)"}},legendSymbol:"rectangle"}),(0,d.extend)(tI.prototype,{type:"map",axisTypes:A.seriesMembers.axisTypes,colorAttribs:A.seriesMembers.colorAttribs,colorKey:A.seriesMembers.colorKey,directTouch:!0,drawDataLabels:tB,drawGraph:tB,forceDL:!0,getCenter:E.getCenter,getExtremesFromAll:!0,getSymbol:tB,isCartesian:!1,parallelArrays:A.seriesMembers.parallelArrays,pointArrayMap:A.seriesMembers.pointArrayMap,pointClass:Z,preserveAspectRatio:!0,searchPoint:tB,trackerGroups:A.seriesMembers.trackerGroups,useMapGeometry:!0}),A.compose(tI),T().registerSeriesType("map",tI);let tV=tI;class tR extends tV{pointAttribs(t,e){let i=super.pointAttribs(t,e);return i.fill=this.options.fillColor,i}}tR.defaultOptions=(0,d.merge)(tV.defaultOptions,{lineWidth:1,fillColor:"none",legendSymbol:"lineMarker"}),(0,d.extend)(tR.prototype,{type:"mapline",colorProp:"stroke",pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"}}),T().registerSeriesType("mapline",tR);let{scatter:tX}=T().seriesTypes;class tG extends tX.prototype.pointClass{isValid(){return!!(this.options.geometry||(0,d.isNumber)(this.x)&&(0,d.isNumber)(this.y)||(0,d.isNumber)(this.options.lon)&&(0,d.isNumber)(this.options.lat))}}p.d({},{});let{noop:tF}=c(),{map:tY,scatter:tU}=T().seriesTypes;class tZ extends tU{constructor(){super(...arguments),this.clearBounds=tY.prototype.clearBounds}drawDataLabels(){super.drawDataLabels(),this.dataLabelsGroups?.forEach(t=>{t?.clip(this.chart.clipRect)})}projectPoint(t){let e=this.chart.mapView;if(e){let{geometry:i,lon:o,lat:s}=t,r=i&&"Point"===i.type&&i.coordinates;if((0,d.isNumber)(o)&&(0,d.isNumber)(s)&&(r=[o,s]),r)return e.lonLatToProjectedUnits({lon:r[0],lat:r[1]})}}translate(){let t=this.chart.mapView;if(this.generatePoints(),this.getProjectedBounds&&this.isDirtyData&&(delete this.bounds,this.getProjectedBounds()),t){let e=t.getSVGTransform(),{hasCoordinates:i}=t.projection;this.points.forEach(o=>{let s,{x:r,y:a}=o,n=(0,d.isNumber)(o.insetIndex)&&t.insets[o.insetIndex].getSVGTransform()||e,l=this.projectPoint(o.options)||o.properties&&this.projectPoint(o.properties);if(l?(r=l.x,a=l.y):o.bounds&&(r=o.bounds.midX,a=o.bounds.midY,n&&(0,d.isNumber)(r)&&(0,d.isNumber)(a)&&(o.plotX=r*n.scaleX+n.translateX,o.plotY=a*n.scaleY+n.translateY,s=!0)),(0,d.isNumber)(r)&&(0,d.isNumber)(a)){if(!s){let e=t.projectedUnitsToPixels({x:r,y:a});o.plotX=e.x,o.plotY=i?e.y:this.chart.plotHeight-e.y}}else o.y=o.plotX=o.plotY=void 0;o.isInside=this.isPointInside(o),o.zone=this.zones.length?o.getZone():void 0})}(0,d.fireEvent)(this,"afterTranslate")}}tZ.defaultOptions=(0,d.merge)(tU.defaultOptions,{dataLabels:{crop:!1,defer:!1,enabled:!0,formatter:function(){return this.point.name},overflow:!1,style:{color:"var(--highcharts-neutral-color-100)"}},legendSymbol:"lineMarker",stickyTracking:!0,tooltip:{pointFormat:"{#if point.name}{point.name}{else}Lat: {point.lat}, Lon: {point.lon}{/if}"}}),V().prototype.symbols.mapmarker=(t,e,i,o,s)=>{let r,a,n=s&&"legend"===s.context;n?(r=t+i/2,a=e+o):s&&"number"==typeof s.anchorX&&"number"==typeof s.anchorY?(r=s.anchorX,a=s.anchorY):(r=t+i/2,a=e+o/2,e-=o);let l=n?o/3:o/2;return[["M",r,a],["C",r,a,r-l,e+1.5*l,r-l,e+l],["A",l,l,1,1,1,r+l,e+l],["C",r+l,e+1.5*l,r,a,r,a],["Z"]]},(0,d.extend)(tZ.prototype,{type:"mappoint",axisTypes:["colorAxis"],forceDL:!0,isCartesian:!1,pointClass:tG,searchPoint:tF,useMapGeometry:!0}),T().registerSeriesType("mappoint",tZ);let tW={borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:"0.9em",color:"var(--highcharts-neutral-color-100)"},x:0,y:0},maxSize:60,minSize:10,legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0},{noop:tH}=c(),t_=class{constructor(t,e){this.setState=tH,this.init(t,e)}init(t,e){this.options=t,this.visible=!0,this.chart=e.chart,this.legend=e}addToLegend(t){t.splice(this.options.legendIndex,0,this)}drawLegendSymbol(t){let e,i=(0,d.pick)(t.options.itemDistance,20),o=this.legendItem||{},s=this.options,r=s.ranges,a=s.connectorDistance;if(!r||!r.length||!(0,d.isNumber)(r[0].value)){t.options.bubbleLegend.autoRanges=!0;return}(0,d.stableSort)(r,function(t,e){return e.value-t.value}),this.ranges=r,this.setOptions(),this.render();let n=this.getMaxLabelSize(),l=this.ranges[0].radius,h=2*l;e=(e=a-l+n.width)>0?e:0,this.maxLabel=n,this.movementX="left"===s.labels.align?e:0,o.labelWidth=h+e+i,o.labelHeight=h+n.height/2}setOptions(){let t=this.ranges,e=this.options,i=this.chart.series[e.seriesIndex],o=this.legend.baseline,s={zIndex:e.zIndex,"stroke-width":e.borderWidth},r={zIndex:e.zIndex,"stroke-width":e.connectorWidth},a={align:this.legend.options.rtl||"left"===e.labels.align?"right":"left",zIndex:e.zIndex},n=i.options.marker.fillOpacity,l=this.chart.styledMode;t.forEach(function(h,p){l||(s.stroke=(0,d.pick)(h.borderColor,e.borderColor,i.color),s.fill=h.color||e.color,s.fill||(s.fill=i.color,s["fill-opacity"]=n??1),r.stroke=(0,d.pick)(h.connectorColor,e.connectorColor,i.color)),t[p].radius=this.getRangeRadius(h.value),t[p]=(0,d.merge)(t[p],{center:t[0].radius-t[p].radius+o}),l||(0,d.merge)(!0,t[p],{bubbleAttribs:(0,d.merge)(s),connectorAttribs:(0,d.merge)(r),labelAttribs:a})},this)}getRangeRadius(t){let e=this.options,i=this.options.seriesIndex,o=this.chart.series[i],s=e.ranges[0].value,r=e.ranges[e.ranges.length-1].value,a=e.minSize,n=e.maxSize;return o.getRadius.call(this,r,s,a,n,t)}render(){let t=this.legendItem||{},e=this.chart.renderer,i=this.options.zThreshold;for(let o of(this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]}),t.symbol=e.g("bubble-legend"),t.label=e.g("bubble-legend-item").css(this.legend.itemStyle||{}),t.symbol.translateX=0,t.symbol.translateY=0,t.symbol.add(t.label),t.label.add(t.group),this.ranges))o.value>=i&&this.renderRange(o);this.hideOverlappingLabels()}renderRange(t){let e=this.ranges[0],i=this.legend,o=this.options,s=o.labels,r=this.chart,a=r.series[o.seriesIndex],n=r.renderer,l=this.symbols,h=l.labels,p=t.center,d=Math.abs(t.radius),c=o.connectorDistance||0,u=s.align,m=i.options.rtl,g=o.borderWidth,b=o.connectorWidth,f=e.radius||0,y=p-d-g/2+b/2,x=(y%1?1:.5)-(b%2?0:.5),M=n.styledMode,v=m||"left"===u?-c:c;"center"===u&&(v=0,o.connectorDistance=0,t.labelAttribs.align="center"),l.bubbleItems.push(n.circle(f,p+x,d).attr(M?{}:t.bubbleAttribs).addClass((M?"highcharts-color-"+a.colorIndex+" ":"")+"highcharts-bubble-legend-symbol "+(o.className||"")).add(this.legendItem.symbol)),l.connectors.push(n.path(n.crispLine([["M",f,y],["L",f+v,y]],o.connectorWidth)).attr(M?{}:t.connectorAttribs).addClass((M?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(o.connectorClassName||"")).add(this.legendItem.symbol));let w=n.text(this.formatLabel(t)).attr(M?{}:t.labelAttribs).css(M?{}:s.style).addClass("highcharts-bubble-legend-labels "+(o.labels.className||"")).add(this.legendItem.symbol),T={x:f+v+o.labels.x,y:y+o.labels.y+.4*w.getBBox().height};w.attr(T),h.push(w),w.placed=!0,w.alignAttr=T}getMaxLabelSize(){let t,e;return this.symbols.labels.forEach(function(i){e=i.getBBox(!0),t=t?e.width>t.width?e:t:e}),t||{}}formatLabel(t){let e=this.options,i=e.labels.formatter,o=e.labels.format,{numberFormatter:s}=this.chart;return o?_().format(o,t,this.chart):i?i.call(t,t):s(t.value,1)}hideOverlappingLabels(){let t=this.chart,e=this.options.labels.allowOverlap,i=this.symbols;!e&&i&&(t.hideOverlappingLabels(i.labels),i.labels.forEach(function(t,e){t.newOpacity?t.newOpacity!==t.oldOpacity&&i.connectors[e].show():i.connectors[e].hide()}))}getRanges(){let t=this.legend.bubbleLegend,e=t.chart.series,i=t.options.ranges,o,s,r=Number.MAX_VALUE,a=-Number.MAX_VALUE;return e.forEach(function(t){t.isBubble&&!t.ignoreSeries&&(s=t.getColumn("z").filter(d.isNumber)).length&&(r=(0,d.pick)(t.options.zMin,Math.min(r,Math.max((0,d.arrayMin)(s),!1===t.options.displayNegative?t.options.zThreshold:-Number.MAX_VALUE))),a=(0,d.pick)(t.options.zMax,Math.max(a,(0,d.arrayMax)(s))))}),o=r===a?[{value:a}]:[{value:r},{value:(r+a)/2},{value:a,autoRanges:!0}],i.length&&i[0].radius&&o.reverse(),o.forEach(function(t,e){i&&i[e]&&(o[e]=(0,d.merge)(i[e],t))}),o}predictBubbleSizes(){let t=this.chart,e=t.legend.options,i=e.floating,o="horizontal"===e.layout,s=o?t.legend.lastLineHeight:0,r=t.plotSizeX,a=t.plotSizeY,n=t.series[this.options.seriesIndex],l=n.getPxExtremes(),h=Math.ceil(l.minPxSize),p=Math.ceil(l.maxPxSize),d=Math.min(a,r),c,u=n.options.maxSize;return i||!/%$/.test(u)?c=p:(c=(d+s)*(u=parseFloat(u))/100/(u/100+1),(o&&a-c>=r||!o&&r-c>=a)&&(c=p)),[h,Math.ceil(c)]}updateRanges(t,e){let i=this.legend.options.bubbleLegend;i.minSize=t,i.maxSize=e,i.ranges=this.getRanges()}correctSizes(){let t=this.legend,e=this.chart.series[this.options.seriesIndex].getPxExtremes();Math.abs(Math.ceil(e.maxPxSize)-this.options.maxSize)>1&&(this.updateRanges(this.options.minSize,e.maxPxSize),t.render())}},{setOptions:tq}=c(),{composed:tK}=c();function t$(t,e,i){let o,s,r,a=this.legend,n=tJ(this)>=0;a&&a.options.enabled&&a.bubbleLegend&&a.options.bubbleLegend.autoRanges&&n?(o=a.bubbleLegend.options,s=a.bubbleLegend.predictBubbleSizes(),a.bubbleLegend.updateRanges(s[0],s[1]),o.placed||(a.group.placed=!1,a.allItems.forEach(t=>{(r=t.legendItem||{}).group&&(r.group.translateY=void 0)})),a.render(),o.placed||(this.getMargins(),this.axes.forEach(t=>{t.setScale(),t.updateNames(),(0,d.objectEach)(t.ticks,function(t){t.isNew=!0,t.isNewLabel=!0})}),this.getMargins()),o.placed=!0,t.call(this,e,i),a.bubbleLegend.correctSizes()):(t.call(this,e,i),a&&a.options.enabled&&a.bubbleLegend&&a.render())}function tJ(t){let e=t.series,i=0;for(;i<e.length;){if(e[i]&&e[i].isBubble&&e[i].visible&&e[i].dataTable.rowCount)return i;i++}return -1}function tQ(t){let e=this.bubbleLegend,i=this.options,o=i.bubbleLegend,s=tJ(this.chart);e&&e.ranges&&e.ranges.length&&(o.ranges.length&&(o.autoRanges=!!o.ranges[0].autoRanges),this.destroyItem(e)),s>=0&&i.enabled&&o.enabled&&(o.seriesIndex=s,this.bubbleLegend=new t_(o,this),this.bubbleLegend.addToLegend(t.allItems))}function t0(){if(this.bubbleLegend){let t=this.allItems,e=this.options.rtl,i=function(t){let e=t.allItems,i=[],o=e.length,s,r,a,n=0,l=0;for(n=0;n<o;n++)if(r=e[n].legendItem||{},a=(e[n+1]||{}).legendItem||{},r.labelHeight&&(e[n].itemHeight=r.labelHeight),e[n]===e[o-1]||r.y!==a.y){for(i.push({height:0}),s=i[i.length-1];l<=n;l++)e[l].itemHeight>s.height&&(s.height=e[l].itemHeight);s.step=n}return i}(this),o,s,r,a,n=0;t.forEach((t,l)=>{(a=t.legendItem||{}).group&&(o=a.group.translateX||0,s=a.y||0,((r=t.movementX)||e&&t.ranges)&&(r=e?o-t.options.maxSize/2:o+r,a.group.attr({translateX:r})),l>i[n].step&&n++,a.group.attr({translateY:Math.round(s+i[n].height/2)}),a.y=s+i[n].height/2)})}}function t1(t){let e;if(t.defaultPrevented)return!1;let i=t.legendItem,o=this.chart,s=i.visible;this&&this.bubbleLegend&&(i.visible=!s,i.ignoreSeries=s,e=tJ(o)>=0,this.bubbleLegend.visible!==e&&(this.update({bubbleLegend:{enabled:e}}),this.bubbleLegend.visible=e),i.visible=s)}let t2=function(t,e){(0,d.pushUnique)(tK,"Series.BubbleLegend")&&(tq({legend:{bubbleLegend:tW}}),(0,d.wrap)(t.prototype,"drawChartBox",t$),(0,d.addEvent)(e,"afterGetAllItems",tQ),(0,d.addEvent)(e,"afterRender",t0),(0,d.addEvent)(e,"itemClick",t1))},t3=e.default.Point;var t6=p.n(t3);let{seriesTypes:{scatter:{prototype:{pointClass:t8}}}}=T();class t7 extends t8{haloPath(t){let e=(t&&this.marker&&this.marker.radius||0)+t;if(this.series.chart.inverted){let t=this.pos()||[0,0],{xAxis:i,yAxis:o,chart:s}=this.series,r=2*e;return s.renderer.symbols.circle((i?.len||0)-t[1]-e,(o?.len||0)-t[0]-e,r,r)}return t6().prototype.haloPath.call(this,e)}}(0,d.extend)(t7.prototype,{ttBelow:!1});let t9=t7,{composed:t4,noop:t5}=c(),{series:et,seriesTypes:{column:{prototype:ee},scatter:ei}}=T();function eo(){let t=this.len,{coll:e,isXAxis:i,min:o}=this,s=(this.max||0)-(o||0),r=0,a=t,n=t/s,l;("xAxis"===e||"yAxis"===e)&&(this.series.forEach(t=>{if(t.bubblePadding&&t.reserveSpace()){this.allowZoomOutside=!0,l=!0;let e=t.getColumn(i?"x":"y");if(i&&((t.onPoint||t).getRadii(0,0,t),t.onPoint&&(t.radii=t.onPoint.radii)),s>0){let i=e.length;for(;i--;)if((0,d.isNumber)(e[i])&&this.dataMin<=e[i]&&e[i]<=this.max){let s=t.radii&&t.radii[i]||0;r=Math.min((e[i]-o)*n-s,r),a=Math.max((e[i]-o)*n+s,a)}}}}),l&&s>0&&!this.logarithmic&&(a-=t,n*=(t+Math.max(0,r)-Math.min(a,t))/t,[["min","userMin",r],["max","userMax",a]].forEach(t=>{void 0===(0,d.pick)(this.options[t[0]],this[t[1]])&&(this[t[0]]+=t[2]/n)})))}function es(){let{ticks:t,tickPositions:e,dataMin:i=0,dataMax:o=0,categories:s}=this,r=this.options.type;if((s?.length||"category"===r)&&this.series.find(t=>t.bubblePadding)){let s=e.length;for(;s--;){let r=t[e[s]],a=r.pos||0;(a>o||a<i)&&r.label?.hide()}}}class er extends ei{static compose(t,e,i){t2(e,i),(0,d.pushUnique)(t4,"Series.Bubble")&&((0,d.addEvent)(t,"foundExtremes",eo),(0,d.addEvent)(t,"afterRender",es))}animate(t){!t&&this.points.length<this.options.animationLimit&&this.points.forEach(function(t){let{graphic:e,plotX:i=0,plotY:o=0}=t;e&&e.width&&(this.hasRendered||e.attr({x:i,y:o,width:1,height:1}),e.animate(this.markerAttribs(t),this.options.animation))},this)}getRadii(){let t=[...this.getColumn("z",!1,!0)],e=this.getColumn("y"),i=[],o,s,r,a=this.chart.bubbleZExtremes,{minPxSize:n,maxPxSize:l}=this.getPxExtremes();if(!a){let t,e=Number.MAX_VALUE,i=-Number.MAX_VALUE;this.chart.series.forEach(o=>{if(o.bubblePadding&&o.reserveSpace()){let s=(o.onPoint||o).getZExtremes();s&&(e=Math.min((0,d.pick)(e,s.zMin),s.zMin),i=Math.max((0,d.pick)(i,s.zMax),s.zMax),t=!0)}}),t?(a={zMin:e,zMax:i},this.chart.bubbleZExtremes=a):a={zMin:0,zMax:0}}for(s=0,o=t.length;s<o;s++)r=t[s],i.push(this.getRadius(a.zMin,a.zMax,n,l,r,e&&e[s]));this.radii=i}getRadius(t,e,i,o,s,r){let a=this.options,n="width"!==a.sizeBy,l=a.zThreshold,h=e-t,p=.5;if(null===r||null===s)return null;if((0,d.isNumber)(s)){if(a.sizeByAbsoluteValue&&(s=Math.abs(s-l),e=h=Math.max(e-l,Math.abs(t-l)),t=0),s<t)return i/2-1;h>0&&(p=(s-t)/h)}return n&&p>=0&&(p=Math.sqrt(p)),Math.ceil(i+p*(o-i))/2}hasData(){return!!this.dataTable.rowCount}markerAttribs(t,e){let i=super.markerAttribs(t,e),{height:o=0,width:s=0}=i;return this.chart.inverted?(0,d.extend)(i,{x:(t.plotX||0)-s/2,y:(t.plotY||0)-o/2}):i}pointAttribs(t,e){let i=this.options.marker,o=i?.fillOpacity,s=et.prototype.pointAttribs.call(this,t,e);return s["fill-opacity"]=o??1,s}translate(){super.translate.call(this),this.getRadii(),this.translateBubble()}translateBubble(){let{options:t,radii:e}=this,{minPxSize:i}=this.getPxExtremes();this.data.concat(this.condemnedPoints).forEach((o,s)=>{let{plotX:r=0,plotY:a=0}=o,n=o.condemned?o.marker?.radius||0:e?e[s]:0;"z"===this.zoneAxis&&(o.negative=(o.z||0)<(t.zThreshold||0)),(0,d.isNumber)(n)&&(o.marker=(0,d.extend)(o.marker,{radius:n,width:2*n,height:2*n})),(0,d.isNumber)(n)&&n>=i/2?o.dlBox={x:r-n,y:a-n,width:2*n,height:2*n}:(o.shapeArgs=o.plotY=o.dlBox=void 0,o.isInside=!1)})}getPxExtremes(){let t=Math.min(this.chart.plotWidth,this.chart.plotHeight),e=e=>{let i;return"string"==typeof e&&(i=/%$/.test(e),e=parseInt(e,10)),i?t*e/100:e},i=e((0,d.pick)(this.options.minSize,8)),o=Math.max(e((0,d.pick)(this.options.maxSize,"20%")),i);return{minPxSize:i,maxPxSize:o}}getZExtremes(){let t=this.options,e=this.getColumn("z").filter(d.isNumber);if(e.length){let i=(0,d.pick)(t.zMin,(0,d.clamp)((0,d.arrayMin)(e),!1===t.displayNegative?t.zThreshold||0:-Number.MAX_VALUE,Number.MAX_VALUE)),o=(0,d.pick)(t.zMax,(0,d.arrayMax)(e));if((0,d.isNumber)(i)&&(0,d.isNumber)(o))return{zMin:i,zMax:o}}}searchKDTree(t,e,i,o=t5,s=t5){return o=(t,e,i)=>{let o=t[i]||0,s=e[i]||0,r,a=!1;return o===s?r=t.index>e.index?t:e:o<0&&s<0?(r=o-(t.marker?.radius||0)>=s-(e.marker?.radius||0)?t:e,a=!0):r=o<s?t:e,[r,a]},s=(t,e,i)=>!i&&t>e||t<e,super.searchKDTree(t,e,i,o,s)}}er.defaultOptions=(0,d.merge)(ei.defaultOptions,{dataLabels:{formatter:function(){let{numberFormatter:t}=this.series.chart,{z:e}=this.point;return(0,d.isNumber)(e)?t(e,-1):""},inside:!0,verticalAlign:"middle"},animationLimit:250,marker:{lineColor:null,lineWidth:1,fillOpacity:.5,radius:null,states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"}),(0,d.extend)(er.prototype,{alignDataLabel:ee.alignDataLabel,applyZones:t5,bubblePadding:!0,isBubble:!0,keysAffectYAxis:["y"],pointArrayMap:["y","z"],pointClass:t9,parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",zoneAxis:"z"}),(0,d.addEvent)(er,"updatedData",t=>{delete t.target.chart.bubbleZExtremes}),(0,d.addEvent)(er,"remove",t=>{delete t.target.chart.bubbleZExtremes}),(0,d.addEvent)(er,"update",t=>{let e=t.target.options;((0,d.defined)(e.zMin)||(0,d.defined)(e.zMax))&&delete t.target.chart.bubbleZExtremes}),T().registerSeriesType("bubble",er);let ea=er,{seriesTypes:{map:{prototype:{pointClass:{prototype:en}}}}}=T();class el extends t9{isValid(){return"number"==typeof this.z}}(0,d.extend)(el.prototype,{applyOptions:en.applyOptions,getProjectedBounds:en.getProjectedBounds});let{seriesTypes:{map:{prototype:eh},mappoint:{prototype:ep}}}=T();class ed extends ea{constructor(){super(...arguments),this.clearBounds=eh.clearBounds}searchPoint(t,e){return this.searchKDTree({plotX:t.chartX-this.chart.plotLeft,plotY:t.chartY-this.chart.plotTop},e,t)}translate(){ep.translate.call(this),this.getRadii(),this.translateBubble()}}ed.defaultOptions=(0,d.merge)(ea.defaultOptions,{lineWidth:0,animationLimit:500,joinBy:"hc-key",tooltip:{pointFormat:"{point.name}: {point.z}"},stickyTracking:!0}),(0,d.extend)(ed.prototype,{type:"mapbubble",axisTypes:["colorAxis"],getProjectedBounds:eh.getProjectedBounds,isCartesian:!1,pointArrayMap:["z"],pointClass:el,processData:eh.processData,projectPoint:ep.projectPoint,kdAxisArray:["plotX","plotY"],setData:eh.setData,setOptions:eh.setOptions,useMapGeometry:!0,xyFromShape:!0}),T().registerSeriesType("mapbubble",ed);let ec=e.default.Color;var eu=p.n(ec);let{scatter:{prototype:{pointClass:em}}}=T().seriesTypes;class eg extends em{applyOptions(t,e){return(this.isNull||null===this.value)&&delete this.color,super.applyOptions(t,e),this.formatPrefix=this.isNull||null===this.value?"null":"point",this}getCellAttributes(){let t=this.series,e=t.options,i=(e.colsize||1)/2,o=(e.rowsize||1)/2,s=t.xAxis,r=t.yAxis,a=this.options.marker||t.options.marker,n=t.pointPlacementToXValue(),l=(0,d.pick)(this.pointPadding,e.pointPadding,0),h={x1:(0,d.clamp)(Math.round(s.len-s.translate(this.x-i,!1,!0,!1,!0,-n)),-s.len,2*s.len),x2:(0,d.clamp)(Math.round(s.len-s.translate(this.x+i,!1,!0,!1,!0,-n)),-s.len,2*s.len),y1:(0,d.clamp)(Math.round(r.translate(this.y-o,!1,!0,!1,!0)),-r.len,2*r.len),y2:(0,d.clamp)(Math.round(r.translate(this.y+o,!1,!0,!1,!0)),-r.len,2*r.len)};for(let t of[["width","x"],["height","y"]]){let e=t[0],i=t[1],o=i+"1",n=i+"2",p=Math.abs(h[o]-h[n]),c=a&&a.lineWidth||0,u=Math.abs(h[o]+h[n])/2,m=a&&a[e];if((0,d.defined)(m)&&m<p){let t=m/2+c/2;h[o]=u-t,h[n]=u+t}l&&(("x"===i&&s.reversed||"y"===i&&!r.reversed)&&(o=n,n=i+"1"),h[o]+=l,h[n]-=l)}return h}haloPath(t){if(!t)return[];let{x:e=0,y:i=0,width:o=0,height:s=0}=this.shapeArgs||{};return[["M",e-t,i-t],["L",e-t,i+s+t],["L",e+o+t,i+s+t],["L",e+o+t,i-t],["Z"]]}isValid(){return this.value!==1/0&&this.value!==-1/0}}(0,d.extend)(eg.prototype,{dataLabelOnNull:!0,moveToTopOnHover:!0,ttBelow:!1});let{doc:eb}=c(),{series:ef,seriesTypes:{column:ey,scatter:ex}}=T(),{prototype:{symbols:eM}}=V(),{colorFromPoint:ev,getContext:ew}={colorFromPoint:function(t,e){let i=e.series.colorAxis;if(i){let o=i.toColor(t||0,e).split(")")[0].split("(")[1].split(",").map(t=>(0,d.pick)(parseFloat(t),parseInt(t,10)));return o[3]=255*(0,d.pick)(o[3],1),(0,d.defined)(t)&&e.visible||(o[3]=0),o}return[0,0,0,0]},getContext:function(t){let{canvas:e,context:i}=t;return e&&i?.clearRect?(i.clearRect(0,0,e.width,e.height),i):(t.canvas=eb.createElement("canvas"),t.context=t.canvas.getContext("2d",{willReadFrequently:!0})||void 0,t.context)}};class eT extends ex{constructor(){super(...arguments),this.valueMax=NaN,this.valueMin=NaN,this.isDirtyCanvas=!0}drawPoints(){let t=this,e=t.options,i=e.interpolation,o=e.marker||{};if(i){let{image:e,chart:i,xAxis:o,yAxis:s}=t,{reversed:r=!1,len:a}=o,{reversed:n=!1,len:l}=s,h={width:a,height:l};if(!e||t.isDirtyData||t.isDirtyCanvas){let a=ew(t),{canvas:l,options:{colsize:p=1,rowsize:d=1},points:c,points:{length:u}}=t,m=i.colorAxis&&i.colorAxis[0];if(l&&a&&m){let{min:m,max:g}=o.getExtremes(),{min:b,max:f}=s.getExtremes(),y=g-m,x=f-b,M=Math.round(y/p/8*8),v=Math.round(x/d/8*8),[w,T]=[[M,M/y,r,"ceil"],[v,v/x,!n,"floor"]].map(([t,e,i,o])=>i?i=>Math[o](t-e*i):t=>Math[o](e*t)),P=l.width=M+1,C=P*(l.height=v+1),k=(u-1)/C,j=new Uint8ClampedArray(4*C),L=(t,e)=>4*Math.ceil(P*T(e-b)+w(t-m));t.buildKDTree();for(let t=0;t<C;t++){let e=c[Math.ceil(k*t)],{x:i,y:o}=e;j.set(ev(e.value,e),L(i,o))}a.putImageData(new ImageData(j,P),0,0),e?e.attr({...h,href:l.toDataURL("image/png",1)}):(t.directTouch=!1,t.image=i.renderer.image(l.toDataURL("image/png",1)).attr(h).add(t.group))}t.isDirtyCanvas=!1}else(e.width!==a||e.height!==l)&&e.attr(h)}else(o.enabled||t._hasPointMarkers)&&(ef.prototype.drawPoints.call(t),t.points.forEach(e=>{e.graphic&&(e.graphic[t.chart.styledMode?"css":"animate"](t.colorAttribs(e)),null===e.value&&e.graphic.addClass("highcharts-null-point"))}))}getSymbol(){this.symbol=this.options.marker?.symbol||"rect"}getExtremes(){let{dataMin:t,dataMax:e}=ef.prototype.getExtremes.call(this,this.getColumn("value"));return(0,d.isNumber)(t)&&(this.valueMin=t),(0,d.isNumber)(e)&&(this.valueMax=e),ef.prototype.getExtremes.call(this)}getValidPoints(t,e){return ef.prototype.getValidPoints.call(this,t,e,!0)}hasData(){return!!this.dataTable.rowCount}init(){super.init.apply(this,arguments);let t=this.options;t.pointRange=(0,d.pick)(t.pointRange,t.colsize||1),this.yAxis.axisPointRange=t.rowsize||1,eM.ellipse=eM.circle,t.marker&&(0,d.isNumber)(t.borderRadius)&&(t.marker.r=t.borderRadius);let e=this.canvas=document.createElement("canvas");e&&(this.context=e?.getContext("webgpu"))}markerAttribs(t,e){let i=t.shapeArgs||{};if(t.hasImage)return{x:t.plotX,y:t.plotY};if(e&&"normal"!==e){let o=t.options.marker||{},s=this.options.marker||{},r=s.states?.[e]||{},a=o.states?.[e]||{},n=(a.width||r.width||i.width||0)+(a.widthPlus||r.widthPlus||0),l=(a.height||r.height||i.height||0)+(a.heightPlus||r.heightPlus||0);return{x:(i.x||0)+((i.width||0)-n)/2,y:(i.y||0)+((i.height||0)-l)/2,width:n,height:l}}return i}pointAttribs(t,e){let i=ef.prototype.pointAttribs.call(this,t,e),o=this.options||{},s=this.chart.options.plotOptions||{},r=s.series||{},a=s.heatmap||{},n=t?.options.borderColor||o.borderColor||a.borderColor||r.borderColor,l=t?.options.borderWidth||o.borderWidth||a.borderWidth||r.borderWidth||i["stroke-width"];if(i.stroke=t?.marker?.lineColor||o.marker?.lineColor||n||this.color,i["stroke-width"]=l,e&&"normal"!==e){let s=(0,d.merge)(o.states?.[e],o.marker?.states?.[e],t?.options.marker?.states?.[e]||{});i.fill=s.color||eu().parse(i.fill).brighten(s.brightness||0).get(),i.stroke=s.lineColor||i.stroke}return i}translate(){let{borderRadius:t,marker:e}=this.options,i=e?.symbol||"rect",o=eM[i]?i:"rect",s=-1!==["circle","square"].indexOf(o);for(let e of(this.generatePoints(),this.points)){let r=e.getCellAttributes(),a=Math.min(r.x1,r.x2),n=Math.min(r.y1,r.y2),l=Math.max(Math.abs(r.x2-r.x1),0),h=Math.max(Math.abs(r.y2-r.y1),0);if(e.hasImage=0===(e.marker?.symbol||i||"").indexOf("url"),s){let t=Math.abs(l-h);a=Math.min(r.x1,r.x2)+(l<h?0:t/2),n=Math.min(r.y1,r.y2)+(l<h?t/2:0),l=h=Math.min(l,h)}e.hasImage&&(e.marker={width:l,height:h}),e.plotX=e.clientX=(r.x1+r.x2)/2,e.plotY=(r.y1+r.y2)/2,e.shapeType="path",e.shapeArgs=(0,d.merge)(!0,{x:a,y:n,width:l,height:h},{d:eM[o](a,n,l,h,{r:(0,d.isNumber)(t)?t:0})})}(0,d.fireEvent)(this,"afterTranslate")}}eT.defaultOptions=(0,d.merge)(ex.defaultOptions,{animation:!1,borderRadius:0,borderWidth:0,interpolation:!1,nullColor:"var(--highcharts-neutral-color-3)",dataLabels:{formatter:function(){let{numberFormatter:t}=this.series.chart,{value:e}=this.point;return(0,d.isNumber)(e)?t(e,-1):""},inside:!0,verticalAlign:"middle",crop:!1,overflow:"allow",padding:0},marker:{radius:0,lineColor:void 0,states:{hover:{lineWidthPlus:0},select:{}}},clip:!0,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}<br/>"},states:{hover:{halo:!1,brightness:.2}},legendSymbol:"rectangle"}),(0,d.addEvent)(eT,"afterDataClassLegendClick",function(){this.isDirtyCanvas=!0,this.drawPoints(),this.options.enableMouseTracking&&this.drawTracker()}),(0,d.extend)(eT.prototype,{axisTypes:A.seriesMembers.axisTypes,colorKey:A.seriesMembers.colorKey,directTouch:!0,getExtremesFromAll:!0,keysAffectYAxis:["y"],parallelArrays:A.seriesMembers.parallelArrays,pointArrayMap:["y","value"],pointClass:eg,specialGroup:"group",trackerGroups:A.seriesMembers.trackerGroups,alignDataLabel:ey.prototype.alignDataLabel,colorAttribs:A.seriesMembers.colorAttribs}),A.compose(eT),T().registerSeriesType("heatmap",eT);let eP=c();eP.ColorMapComposition=A,eP.MapChart=eP.MapChart||G,eP.MapNavigation=eP.MapNavigation||v,eP.MapView=eP.MapView||tA,eP.Projection=eP.Projection||tv,eP.mapChart=eP.Map=eP.MapChart.mapChart,eP.maps=eP.MapChart.maps,eP.geojson=$.geojson,eP.topo2geo=$.topo2geo,$.compose(eP.Chart),ed.compose(eP.Axis,eP.Chart,eP.Legend),v.compose(G,eP.Pointer,eP.SVGRenderer),tA.compose(G);let eC=c();export{eC as default};
13
+ */import*as e from"../highcharts.js";import"./coloraxis.js";let i={};i.n=t=>{let e=t&&t.__esModule?()=>t.default:()=>t;return i.d(e,{a:e}),e},i.d=(t,e)=>{if(Array.isArray(e))for(var o=0;o<e.length;){var s=e[o++],r=e[o++];i.o(t,s)?0===r&&o++:0===r?Object.defineProperty(t,s,{enumerable:!0,value:e[o++]}):Object.defineProperty(t,s,{enumerable:!0,get:r})}else for(var s in e)i.o(e,s)&&!i.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:e[s]})},i.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let o=e.default;var s,r,a,n,l,h,p,d,c=i.n(o);let u={lang:{zoomIn:"Zoom in",zoomOut:"Zoom out"},mapNavigation:{buttonOptions:{alignTo:"plotBox",align:"left",verticalAlign:"top",x:0,width:18,height:18,padding:5,style:{color:"var(--highcharts-neutral-color-60)",fontSize:"1em",fontWeight:"bold"},theme:{fill:"var(--highcharts-background-color)",stroke:"var(--highcharts-neutral-color-10)","stroke-width":1,"text-align":"center"}},buttons:{zoomIn:{onclick:function(){this.mapZoom(.5)},text:"+",y:0},zoomOut:{onclick:function(){this.mapZoom(2)},text:"-",y:28}},mouseWheelSensitivity:1.1}};!function(t){let e,i=0;function s(t){let e=this.chart;t=this.normalize(t),e.options.mapNavigation.enableDoubleClickZoomTo?e.pointer.inClass(t.target,"highcharts-tracker")&&e.hoverPoint&&e.hoverPoint.zoomTo():e.isInsidePlot(t.chartX-e.plotLeft,t.chartY-e.plotTop)&&e.mapZoom(.5,void 0,void 0,t.chartX,t.chartY)}function r(t){let s=this.chart;t=this.normalize(t);let r=(0,o.defined)(t.wheelDelta)&&-t.wheelDelta/120||t.deltaY||t.detail;Math.abs(r)>=1&&(i+=Math.abs(r),e&&(0,o.internalClearTimeout)(e),e=setTimeout(()=>{i=0},50)),i<10&&s.isInsidePlot(t.chartX-s.plotLeft,t.chartY-s.plotTop)&&s.mapView&&s.mapView.zoomBy(-((s.options.mapNavigation.mouseWheelSensitivity-1)*r),void 0,[t.chartX,t.chartY],!(1>Math.abs(r))&&void 0)}function a(t,e,i){let s=this.chart;if(e=t.call(this,e,i),s&&s.mapView){let t=s.mapView.pixelsToLonLat({x:e.chartX-s.plotLeft,y:e.chartY-s.plotTop});t&&(0,o.extend)(e,t)}return e}function n(t){let e=this.chart.options.mapNavigation;e&&(e.enableTouchZoom??e.enabled)&&(this.chart.zooming.pinchType="xy"),t.apply(this,[].slice.call(arguments,1))}t.compose=function(t){let e=t.prototype;e.onContainerDblClick||((0,o.extend)(e,{onContainerDblClick:s,onContainerMouseWheel:r}),(0,o.wrap)(e,"normalize",a),(0,o.wrap)(e,"zoomOption",n))}}(n||(n={}));let m=n;function g(e,i,o,s,r){if(r){let t=r?.r||0;r.brBoxY=i-t,r.brBoxHeight=s+t}return t.roundedRect(e,i,o,s,r)}function b(e,i,o,s,r){if(r){let t=r?.r||0;r.brBoxHeight=s+t}return t.roundedRect(e,i,o,s,r)}let f=function(e){(t=e.prototype.symbols).bottombutton=g,t.topbutton=b},{setOptions:y}=c(),{composed:x}=c();function M(t){t&&(t.preventDefault?.(),t.stopPropagation?.(),t.cancelBubble=!0)}class v{static compose(t,e,i){m.compose(e),f(i),(0,o.pushUnique)(x,"Map.Navigation")&&((0,o.addEvent)(t,"beforeRender",function(){this.mapNavigation=new v(this),this.mapNavigation.update()}),y(u))}constructor(t){this.chart=t,this.navButtons=[]}update(t){let e=this,i=e.chart,s=e.navButtons,r=function(t){this.handler.call(i,t),M(t)},a=i.options.mapNavigation;for(t&&(a=i.options.mapNavigation=(0,o.merge)(i.options.mapNavigation,t));s.length;)s.pop()?.destroy();!i.renderer.forExport&&(a.enableButtons??a.enabled)&&(e.navButtonsGroup||(e.navButtonsGroup=i.renderer.g().attr({zIndex:7}).add()),(0,o.objectEach)(a.buttons,(t,n)=>{let l={padding:(t=(0,o.merge)(a.buttonOptions,t)).padding};!i.styledMode&&t.theme&&((0,o.extend)(l,t.theme),l.style=(0,o.merge)(t.theme.style,t.style));let{text:h,width:p=0,height:d=0,padding:c=0}=t,u=i.renderer.button("+"!==h&&"-"!==h&&h||"",0,0,r,l,void 0,void 0,void 0,"zoomIn"===n?"topbutton":"bottombutton").addClass("highcharts-map-navigation highcharts-"+({zoomIn:"zoom-in",zoomOut:"zoom-out"})[n]).attr({width:p,height:d,title:i.options.lang[n],zIndex:5}).add(e.navButtonsGroup);if("+"===h||"-"===h){let e=p+1,o=[["M",c+3,c+d/2],["L",c+e-3,c+d/2]];"+"===h&&o.push(["M",c+e/2,c+3],["L",c+e/2,c+d-3]),i.renderer.path(o).addClass("highcharts-button-symbol").attr(i.styledMode?{}:{stroke:t.style?.color,"stroke-width":3,"stroke-linecap":"round"}).add(u)}if(u.handler=t.onclick,(0,o.addEvent)(u.element,"dblclick",M),s.push(u),(0,o.extend)(t,{width:u.width,height:2*(u.height||0)}),i.hasLoaded)u.align(t,!1,t.alignTo);else{let e=(0,o.addEvent)(i,"load",()=>{u.element&&u.align(t,!1,t.alignTo),e()})}}),i.hasLoaded||(0,o.addEvent)(i,"render",function(){let t=i.exporting?.group?.getBBox();if(t){let i=e.navButtonsGroup.getBBox();if(!(i.x>=t.x+t.width||i.x+i.width<=t.x||i.y>=t.y+t.height||i.y+i.height<=t.y)){let o=-i.y-i.height+t.y-5,s=t.y+t.height-i.y+5,r=a.buttonOptions&&a.buttonOptions.verticalAlign;e.navButtonsGroup.attr({translateY:"bottom"===r?o:s})}}})),this.updateEvents(a)}updateEvents(t){let e=this.chart;(t.enableDoubleClickZoom??t.enabled)||t.enableDoubleClickZoomTo?this.unbindDblClick=this.unbindDblClick||(0,o.addEvent)(e.container,"dblclick",function(t){e.pointer.onContainerDblClick(t)}):this.unbindDblClick&&(this.unbindDblClick=this.unbindDblClick()),t.enableMouseWheelZoom??t.enabled?this.unbindMouseWheel=this.unbindMouseWheel||(0,o.addEvent)(e.container,"wheel",function(t){if(!e.pointer.inClass(t.target,"highcharts-no-mousewheel")){let i=e.mapView?.zoom;e.pointer.onContainerMouseWheel(t),i!==e.mapView?.zoom&&M(t)}return!1}):this.unbindMouseWheel&&(this.unbindMouseWheel=this.unbindMouseWheel())}}let w=e.default.SeriesRegistry;var T=i.n(w);let P=e.default.SVGElement;var C=i.n(P);let{column:{prototype:j}}=T().seriesTypes;var L=l||(l={});function A(t){let e=this.series,i=e.chart.renderer;this.moveToTopOnHover&&this.graphic&&(e.stateMarkerGraphic||(e.stateMarkerGraphic=new(C())(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:""}))}L.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))}},L.seriesMembers={colorKey:"value",axisTypes:["xAxis","yAxis","colorAxis"],parallelArrays:["x","y","value"],pointArrayMap:["value"],trackerGroups:["group","markerGroup","dataLabelsGroup"],colorAttribs:function(t){let e={};return(0,o.defined)(t.color)&&(!t.state||"normal"===t.state)&&(e[this.colorProp||"fill"]=t.color),e},pointAttribs:j.pointAttribs},L.compose=function(t){let e=t.prototype.pointClass;return(0,o.addEvent)(e,"afterSetState",A),t};let k=l,{deg2rad:z}=c();(s=h||(h={})).getCenter=function(){let t=this.options,e=this.chart,i=2*(t.slicedOffset||0),s=e.plotWidth-2*i,r=e.plotHeight-2*i,a=t.center,n=Math.min(s,r),l=t.thickness,h,p=t.size,d=t.innerSize||0,c,u;"string"==typeof p&&(p=parseFloat(p)),"string"==typeof d&&(d=parseFloat(d));let m=[a?.[0]??"50%",a?.[1]??"50%",(p&&p<0?void 0:t.size)??"100%",(d&&d<0?void 0:t.innerSize||0)??"0%"];for(c=0;c<4;++c)u=m[c],h=c<2||2===c&&/%$/.test(u),m[c]=(0,o.relativeLength)(u,[s,r,n,m[2]][c])+(h?i:0);return m[3]>m[2]&&(m[3]=m[2]),(0,o.isNumber)(l)&&2*l<m[2]&&l>0&&(m[3]=m[2]-2*l),(0,o.fireEvent)(this,"afterGetCenter",{positions:m}),m},s.getStartAndEndRadians=function(t,e){let i=(0,o.isNumber)(t)?t:0,s=(0,o.isNumber)(e)&&e>i&&e-i<360?e:i+360;return{start:z*(i+-90),end:z*(s+-90)}};let E=h,{setLength:N,splice:B}={convertToNumber:function(t,e){switch(typeof t){case"boolean":return+!!t;case"number":return isNaN(t)&&!e?null:t;default:return isNaN(t=parseFloat(`${t??""}`))&&!e?null:t}},setLength:function(t,e,i){return Array.isArray(t)?(t.length=e,t):t[i?"subarray":"slice"](0,e)},splice:function(t,e,i,o,s=[]){if(Array.isArray(t))return Array.isArray(s)||(s=Array.from(s)),{removed:t.splice(e,i,...s),array:t};let r=Object.getPrototypeOf(t).constructor,a=t[o?"subarray":"slice"](e,e+i),n=new r(t.length-i+s.length);return n.set(t.subarray(0,e),0),n.set(s,e),n.set(t.subarray(e+i),e+s.length),{removed:a,array:n}}},S=class{constructor(t={}){this.isDataTable=!0,this.autoId=!t.id,this.columns={},this.id=t.id||(0,o.uniqueKey)(),this.rowCount=0,this.versionTag=(0,o.uniqueKey)();let e=0;(0,o.objectEach)(t.columns||{},(t,i)=>{this.columns[i]=t.slice(),e=Math.max(e,t.length)}),this.applyRowCount(e)}applyRowCount(t){this.rowCount=t,(0,o.objectEach)(this.columns,(e,i)=>{e.length!==t&&(this.columns[i]=N(e,t))})}deleteRows(t,e=1){if(e>0&&t<this.rowCount){let i=0;(0,o.objectEach)(this.columns,(o,s)=>{this.columns[s]=B(o,t,e).array,i=o.length}),this.rowCount=i}(0,o.fireEvent)(this,"afterDeleteRows",{rowIndex:t,rowCount:e}),this.versionTag=(0,o.uniqueKey)()}getColumn(t,e){return this.columns[t]}getColumns(t,e){return(t||Object.keys(this.columns)).reduce((t,e)=>(t[e]=this.columns[e],t),{})}getRowObject(t,e){let i={},o=this.columns;for(let s of(e??(e=Object.keys(this.columns)),e))i[s]=o[s]?.[t];return i}setColumn(t,e=[],i=0,o){this.setColumns({[t]:e},i,o)}setColumns(t,e,i){let s=this.rowCount;(0,o.objectEach)(t,(t,e)=>{this.columns[e]=t.slice(),s=t.length}),this.applyRowCount(s),i?.silent||((0,o.fireEvent)(this,"afterSetColumns"),this.versionTag=(0,o.uniqueKey)())}setRow(t,e=this.rowCount,i,s){var r;let{columns:a}=this,n=i?this.rowCount+1:e+1,l=Object.keys(t);if(s?.addColumns!==!1)for(let t=0,e=l.length;t<e;t++)a[r=l[t]]||(a[r]=Array(this.rowCount));(0,o.objectEach)(a,(o,s)=>{o&&(i?o=B(o,e,0,!0,[t[s]]).array:o[e]=s in t?t[s]:o[e],a[s]=o)}),this.applyRowCount(Math.max(n,this.rowCount)),s?.silent||((0,o.fireEvent)(this,"afterSetRows",{rowIndex:e}),this.versionTag=(0,o.uniqueKey)())}getModified(){return this.modified||this}},O=e.default.Chart;var D=i.n(O);let I=e.default.SVGRenderer;var V=i.n(I);let{getOptions:R}=c();class X extends D(){init(t,e){let i=R().credits,s=(0,o.merge)({chart:{panning:{enabled:!0,type:"xy"},type:"map"},credits:{mapText:i.mapText??' \xa9 <a href="{geojson.copyrightUrl}">{geojson.copyrightShort}</a>',mapTextFull:i.mapTextFull??"{geojson.copyright}"},mapView:{},tooltip:{followTouchMove:!1}},t);super.init(s,e)}mapZoom(t,e,i,s,r){this.mapView&&((0,o.isNumber)(t)&&(t=Math.log(t)/Math.log(.5)),this.mapView.zoomBy(t,(0,o.isNumber)(e)&&(0,o.isNumber)(i)?this.mapView.projection.inverse([e,i]):void 0,(0,o.isNumber)(s)&&(0,o.isNumber)(r)?[s,r]:void 0))}update(t){t.chart&&"map"in t.chart&&this.mapView?.recommendMapView(this,[t.chart.map,...(this.options.series||[]).map(t=>t.mapData)],!0),super.update.apply(this,arguments)}}(r=X||(X={})).maps={},r.mapChart=function(t,e,i){let o=new r(t,e,i);return o.promise??o},r.splitPath=function(t){let e;return e="string"==typeof t?(t=t.replace(/([A-Z])/gi," $1 ").replace(/^\s*/,"").replace(/\s*$/,"")).split(/[ ,;]+/).map(t=>/[A-Z]/i.test(t)?t:parseFloat(t)):t,V().prototype.pathToSegments(e)};let G=X,F={boundsFromPath:function(t){let e=-Number.MAX_VALUE,i=Number.MAX_VALUE,o=-Number.MAX_VALUE,s=Number.MAX_VALUE,r;if(t.forEach(t=>{let a=t[t.length-2],n=t[t.length-1];"number"==typeof a&&"number"==typeof n&&(i=Math.min(i,a),e=Math.max(e,a),s=Math.min(s,n),o=Math.max(o,n),r=!0)}),r)return{x1:i,y1:s,x2:e,y2:o}}},{boundsFromPath:Y}=F,U=T().seriesTypes.scatter.prototype.pointClass;class Z extends U{static getProjectedPath(t,e){return t.projectedPath||(e&&t.geometry?(e.hasCoordinates=!0,t.projectedPath=e.path(t.geometry)):t.projectedPath=t.path),t.projectedPath||[]}applyOptions(t,e,i){let s=this.series,r=super.applyOptions(t,e,i),a=s.joinBy;if(s.mapData&&s.mapMap){let t=a[1],e=super.getNestedProperty(t),i=void 0!==e&&s.mapMap[e];i?(0,o.extend)(r,{...i,name:r.name??i.name}):-1!==s.pointArrayMap.indexOf("value")&&(r.value=r.value||null)}return r}getProjectedBounds(t){let e=Y(Z.getProjectedPath(this,t)),i=this.properties,s=this.series.chart.mapView;if(e){let r=i?.["hc-middle-lon"],a=i?.["hc-middle-lat"];if(s&&(0,o.isNumber)(r)&&(0,o.isNumber)(a)){let i=t.forward([r,a]);e.midX=i[0],e.midY=i[1]}else{let t=i?.["hc-middle-x"],s=i?.["hc-middle-y"];e.midX=e.x1+(e.x2-e.x1)*(this.middleX??((0,o.isNumber)(t)?t:.5));let r=this.middleY??((0,o.isNumber)(s)?s:.5);this.geometry||(r=1-r),e.midY=e.y2-(e.y2-e.y1)*r}return e}}onMouseOver(t){(0,o.internalClearTimeout)(this.colorInterval),!this.isNull&&this.visible||this.series.options.nullInteraction?super.onMouseOver.call(this,t):this.series.onMouseOut()}setVisible(t){this.visible=this.options.visible=!!t,this.dataLabel&&this.dataLabel[t?"show":"hide"](),this.graphic&&this.graphic.attr(this.series.pointAttribs(this))}zoomTo(t){let e=this.series.chart,i=e.mapView,s=this.bounds;if(i&&s){let r=(0,o.isNumber)(this.insetIndex)&&i.insets[this.insetIndex];if(r){let t=r.projectedUnitsToPixels({x:s.x1,y:s.y1}),e=r.projectedUnitsToPixels({x:s.x2,y:s.y2}),o=i.pixelsToProjectedUnits({x:t.x,y:t.y}),a=i.pixelsToProjectedUnits({x:e.x,y:e.y});s={x1:o.x,y1:o.y,x2:a.x,y2:a.y}}i.fitToBounds(s,void 0,!1),this.series.isDirty=!0,e.redraw(t)}}}(0,o.extend)(Z.prototype,{dataLabelOnNull:k.pointMembers.dataLabelOnNull,moveToTopOnHover:k.pointMembers.moveToTopOnHover,isValid:k.pointMembers.isValid});let W={center:[0,0],fitToGeometry:void 0,maxZoom:void 0,padding:0,projection:{name:void 0,parallels:void 0,rotation:void 0},zoom:void 0,insetOptions:{borderColor:"var(--highcharts-neutral-color-20)",borderWidth:1,padding:"10%",relativeTo:"mapBoundingBox",units:"percent"}},H=e.default.Templating;var _=i.n(H);let{win:q}=c(),{format:K}=_();!function(t){function e(t){return this.mapView?.lonLatToProjectedUnits(t)}function i(t){return this.mapView?.projectedUnitsToLonLat(t)}function s(t,e){let i=this.options.chart.proj4||q.proj4;if(!i)return void(0,o.error)(21,!1,this);let{jsonmarginX:s=0,jsonmarginY:r=0,jsonres:a=1,scale:n=1,xoffset:l=0,xpan:h=0,yoffset:p=0,ypan:d=0}=e,c=i(e.crs,[t.lon,t.lat]),u=e.cosAngle||e.rotation&&Math.cos(e.rotation),m=e.sinAngle||e.rotation&&Math.sin(e.rotation),g=e.rotation?[c[0]*u+c[1]*m,-c[0]*m+c[1]*u]:c;return{x:((g[0]-l)*n+h)*a+s,y:-(((p-g[1])*n+d)*a-r)}}function r(t,e){let i=this.options.chart.proj4||q.proj4;if(!i)return void(0,o.error)(21,!1,this);if(null===t.y)return;let{jsonmarginX:s=0,jsonmarginY:r=0,jsonres:a=1,scale:n=1,xoffset:l=0,xpan:h=0,yoffset:p=0,ypan:d=0}=e,c={x:((t.x-s)/a-h)/n+l,y:((t.y-r)/a+d)/n+p},u=e.cosAngle||e.rotation&&Math.cos(e.rotation),m=e.sinAngle||e.rotation&&Math.sin(e.rotation),g=i(e.crs,"WGS84",e.rotation?{x:c.x*u+-(c.y*m),y:c.x*m+c.y*u}:c);return{lat:g.y,lon:g.x}}function a(t,e){e||(e=Object.keys(t.objects)[0]);let i=t.objects[e];if(i["hc-decoded-geojson"]&&i["hc-decoded-geojson"].title===t.title)return i["hc-decoded-geojson"];let o=t.arcs;if(t.transform){let e,i,s,r=t.arcs,{scale:a,translate:n}=t.transform;o=[];for(let t=0,l=r.length;t<l;++t){let l=r[t];o.push(e=[]),i=0,s=0;for(let t=0,o=l.length;t<o;++t)e.push([(i+=l[t][0])*a[0]+n[0],(s+=l[t][1])*a[1]+n[1]])}}let s=t=>"number"==typeof t[0]?t.reduce((t,e,i)=>{let s=e<0?o[~e]:o[e];return e<0?(s=s.slice(0,0===i?s.length:s.length-1)).reverse():i&&(s=s.slice(1)),t.concat(s)},[]):t.map(s),r=i.geometries,a=[];for(let t=0,e=r.length;t<e;++t)a.push({type:"Feature",properties:r[t].properties,geometry:{type:r[t].type,coordinates:r[t].coordinates||s(r[t].arcs)}});let n={type:"FeatureCollection",copyright:t.copyright,copyrightShort:t.copyrightShort,copyrightUrl:t.copyrightUrl,features:a,"hc-recommended-mapview":i["hc-recommended-mapview"],bbox:t.bbox,title:t.title};return i["hc-decoded-geojson"]=n,n}function n(t,e){e=(0,o.merge)(!0,this.options.credits,e),t.call(this,e),this.credits&&this.mapCreditsFull&&this.credits.attr({title:this.mapCreditsFull})}t.compose=function(t){let a=t.prototype;a.transformFromLatLon||(a.fromLatLonToPoint=e,a.fromPointToLatLon=i,a.transformFromLatLon=s,a.transformToLatLon=r,(0,o.wrap)(a,"addCredits",n))},t.geojson=function(t,e="map",i){let s=[],r="Topology"===t.type?a(t):t,n=r.features;for(let t=0,i=n.length;t<i;++t){let i,r=n[t],a=r.geometry||{},l=a.type,h=a.coordinates,p=r.properties;if(("map"===e||"mapbubble"===e)&&("Polygon"===l||"MultiPolygon"===l)||"mapline"===e&&("LineString"===l||"MultiLineString"===l)?h.length&&(i={geometry:{coordinates:h,type:l}}):"mappoint"===e&&"Point"===l&&h.length&&(i={geometry:{coordinates:h,type:l}}),i){let t=p&&(p.name||p.NAME),e=p&&p.lon,r=p&&p.lat;s.push((0,o.extend)(i,{lat:"number"==typeof r?r:void 0,lon:"number"==typeof e?e:void 0,name:"string"==typeof t?t:void 0,properties:p}))}}return i&&r.copyrightShort&&(i.chart.mapCredits=K(i.chart.options.credits?.mapText,{geojson:r}),i.chart.mapCreditsFull=K(i.chart.options.credits?.mapTextFull,{geojson:r})),s},t.topo2geo=a}(p||(p={}));let $=p;(a=d||(d={})).getCenterOfPoints=function(t){let e=t.reduce((t,e)=>(t.x+=e.x,t.y+=e.y,t),{x:0,y:0});return{x:e.x/t.length,y:e.y/t.length}},a.getDistanceBetweenPoints=function(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))},a.getAngleBetweenPoints=function(t,e){return Math.atan2(e.x-t.x,e.y-t.y)},a.pointInPolygon=function({x:t,y:e},i){let o=i.length,s,r,a=!1;for(s=0,r=o-1;s<o;r=s++){let[o,n]=i[s],[l,h]=i[r];n>e!=h>e&&t<(l-o)*(e-n)/(h-n)+o&&(a=!a)}return a};let J=d;function Q(t,e,i=!0){let o=e[e.length-1],s,r,a,n=t;for(let t=0;t<e.length;t++){let l=n;s=e[t],n=[],r=i?l[l.length-1]:l[0];for(let t=0;t<l.length;t++)tt(o,s,a=l[t])?(tt(o,s,r)||n.push(te(o,s,r,a)),n.push(a)):tt(o,s,r)&&n.push(te(o,s,r,a)),r=a;o=s}return n}function tt(t,e,i){return(e[0]-t[0])*(i[1]-t[1])>(e[1]-t[1])*(i[0]-t[0])}function te(t,e,i,o){let s=[t[0]-e[0],t[1]-e[1]],r=[i[0]-o[0],i[1]-o[1]],a=t[0]*e[1]-t[1]*e[0],n=i[0]*o[1]-i[1]*o[0],l=1/(s[0]*r[1]-s[1]*r[0]),h=[(a*r[0]-n*s[0])*l,(a*r[1]-n*s[1])*l];return h.isIntersection=!0,h}let ti=Math.sign||(t=>0===t?0:t>0?1:-1),to=Math.PI/180,ts=Math.PI/2,tr=t=>Math.tan((ts+t)/2),ta=class{constructor(t){let e=(t.parallels||[]).map(t=>t*to),i=e[0]||0,o=e[1]??i,s=Math.cos(i);"object"==typeof t.projectedBounds&&(this.projectedBounds=t.projectedBounds);let r=i===o?Math.sin(i):Math.log(s/Math.cos(o))/Math.log(tr(o)/tr(i));1e-10>Math.abs(r)&&(r=1e-10*(ti(r)||1)),this.n=r,this.c=s*Math.pow(tr(i),r)/r}forward(t){let{c:e,n:i,projectedBounds:o}=this,s=t[0]*to,r=t[1]*to;e>0?r<-ts+1e-6&&(r=-ts+1e-6):r>ts-1e-6&&(r=ts-1e-6);let a=e/Math.pow(tr(r),i),n=a*Math.sin(i*s)*63.78137,l=(e-a*Math.cos(i*s))*63.78137,h=[n,l];return o&&(n<o.x1||n>o.x2||l<o.y1||l>o.y2)&&(h.outside=!0),h}inverse(t){let{c:e,n:i}=this,o=t[0]/63.78137,s=e-t[1]/63.78137,r=ti(i)*Math.sqrt(o*o+s*s),a=Math.atan2(o,Math.abs(s))*ti(s);return s*i<0&&(a-=Math.PI*ti(o)*ti(s)),[a/i/to,(2*Math.atan(Math.pow(e/r,1/i))-ts)/to]}},tn=Math.sqrt(3)/2,tl=class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-97.52595454902263,y2:97.52595454902263}}forward(t){let e=Math.PI/180,i=Math.asin(tn*Math.sin(t[1]*e)),o=i*i,s=o*o*o;return[t[0]*e*Math.cos(i)*74.03120656864502/(tn*(1.340264+-.24331799999999998*o+s*(.0062510000000000005+.034164*o))),74.03120656864502*i*(1.340264+-.081106*o+s*(893e-6+.003796*o))]}inverse(t){let e=t[0]/74.03120656864502,i=t[1]/74.03120656864502,o=180/Math.PI,s=i,r,a,n,l;for(let t=0;t<12&&(a=(r=s*s)*r*r,n=s*(1.340264+-.081106*r+a*(893e-6+.003796*r))-i,s-=l=n/(1.340264+-.24331799999999998*r+a*(.0062510000000000005+.034164*r)),!(1e-9>Math.abs(l)));++t);a=(r=s*s)*r*r;let h=o*tn*e*(1.340264+-.24331799999999998*r+a*(.0062510000000000005+.034164*r))/Math.cos(s),p=o*Math.asin(Math.sin(s)/tn);return Math.abs(h)>180?[NaN,NaN]:[h,p]}},th=Math.PI/4,tp=Math.PI/180,td=class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-146.91480769173063,y2:146.91480769173063}}forward(t){return[t[0]*tp*63.78137,79.7267125*Math.log(Math.tan(th+.4*t[1]*tp))]}inverse(t){return[t[0]/63.78137/tp,2.5*(Math.atan(Math.exp(.8*(t[1]/63.78137)))-th)/tp]}},tc=Math.PI/180,tu=class{constructor(){this.antimeridianCutting=!1,this.bounds={x1:-63.78460826781007,x2:63.78460826781007,y1:-63.78460826781007,y2:63.78460826781007}}forward(t){let e=t[0],i=t[1]*tc,o=[Math.cos(i)*Math.sin(e*tc)*63.78460826781007,63.78460826781007*Math.sin(i)];return(e<-90||e>90)&&(o.outside=!0),o}inverse(t){let e=t[0]/63.78460826781007,i=t[1]/63.78460826781007,o=Math.sqrt(e*e+i*i),s=Math.asin(o),r=Math.sin(s);return[Math.atan2(e*r,o*Math.cos(s))/tc,Math.asin(o&&i*r/o)/tc]}},tm=Math.PI/180,tg=class{constructor(){this.bounds={x1:-200.37508342789243,x2:200.37508342789243,y1:-200.3750834278071,y2:200.3750834278071},this.maxLatitude=85.0511287798}forward(t){let e=Math.sin(t[1]*tm),i=[63.78137*t[0]*tm,63.78137*Math.log((1+e)/(1-e))/2];return Math.abs(t[1])>this.maxLatitude&&(i.outside=!0),i}inverse(t){return[t[0]/(63.78137*tm),(2*Math.atan(Math.exp(t[1]/63.78137))-Math.PI/2)/tm]}},{clipLineString:tb,clipPolygon:tf}={clipLineString:function(t,e){let i=[],o=Q(t,e,!1);for(let t=1;t<o.length;t++)o[t].isIntersection&&o[t-1].isIntersection&&(i.push(o.splice(0,t)),t=0),t===o.length-1&&i.push(o);return i},clipPolygon:Q},ty=2*Math.PI/360,tx=t=>(t<-180&&(t+=360),t>180&&(t-=360),t),tM=t=>(1-Math.cos(t))/2;class tv{static add(t,e){tv.registry[t]=e}static distance(t,e){let i,o,s,r,a,{atan2:n,sqrt:l}=Math,h=(i=Math.cos,o=t[1]*ty,s=t[0]*ty,r=e[1]*ty,a=e[0]*ty,tM(r-o)+i(o)*i(r)*tM(a-s));return 6371e3*(2*n(l(h),l(1-h)))}static geodesic(t,e,i,o=5e5){let{atan2:s,cos:r,sin:a,sqrt:n}=Math,l=tv.distance,h=t[1]*ty,p=t[0]*ty,d=e[1]*ty,c=e[0]*ty,u=r(h)*r(p),m=r(d)*r(c),g=r(h)*a(p),b=r(d)*a(c),f=a(h),y=a(d),x=l(t,e),M=x/6371e3,v=a(M),w=Math.round(x/o),T=[];if(i&&T.push(t),w>1){let t=1/w;for(let e=t;e<.999;e+=t){let t=a((1-e)*M)/v,i=a(e*M)/v,o=t*u+i*m,r=t*g+i*b,l=s(t*f+i*y,n(o*o+r*r)),h=s(r,o);T.push([h/ty,l/ty])}}return i&&T.push(e),T}static insertGeodesics(t){let e=t.length-1;for(;e--;)if(Math.max(Math.abs(t[e][0]-t[e+1][0]),Math.abs(t[e][1]-t[e+1][1]))>10){let i=tv.geodesic(t[e],t[e+1]);i.length&&t.splice(e+1,0,...i)}}static toString(t){let{name:e,rotation:i}=t||{};return[e,i&&i.join(",")].join(";")}constructor(t={}){this.hasCoordinates=!1,this.hasGeoProjection=!1,this.maxLatitude=90,this.options=t;let{name:e,projectedBounds:i,rotation:o}=t;this.rotator=o?this.getRotator(o):void 0;let s=e?tv.registry[e]:void 0;s&&(this.def=new s(t));let{def:r,rotator:a}=this;r&&(this.maxLatitude=r.maxLatitude||90,this.hasGeoProjection=!0),a&&r?(this.forward=t=>r.forward(a.forward(t)),this.inverse=t=>a.inverse(r.inverse(t))):r?(this.forward=t=>r.forward(t),this.inverse=t=>r.inverse(t)):a&&(this.forward=a.forward,this.inverse=a.inverse),this.bounds="world"===i?r&&r.bounds:i}lineIntersectsBounds(t){let{x1:e,x2:i,y1:o,y2:s}=this.bounds||{},r=(t,e,i)=>{let[o,s]=t,r=+!e;if("number"==typeof i&&o[e]>=i!=s[e]>=i){let t=(i-o[e])/(s[e]-o[e]),a=o[r]+t*(s[r]-o[r]);return e?[a,i]:[i,a]}},a,n=t[0];return(a=r(t,0,e))?(n=a,t[1]=a):(a=r(t,0,i))&&(n=a,t[1]=a),(a=r(t,1,o))?n=a:(a=r(t,1,s))&&(n=a),n}getRotator(t){let e=t[0]*ty,i=(t[1]||0)*ty,o=(t[2]||0)*ty,s=Math.cos(i),r=Math.sin(i),a=Math.cos(o),n=Math.sin(o);if(0!==e||0!==i||0!==o)return{forward:t=>{let i=t[0]*ty+e,o=t[1]*ty,l=Math.cos(o),h=Math.cos(i)*l,p=Math.sin(i)*l,d=Math.sin(o),c=d*s+h*r;return[Math.atan2(p*a-c*n,h*s-d*r)/ty,Math.asin(c*a+p*n)/ty]},inverse:t=>{let i=t[0]*ty,o=t[1]*ty,l=Math.cos(o),h=Math.cos(i)*l,p=Math.sin(i)*l,d=Math.sin(o),c=d*a-p*n;return[(Math.atan2(p*a+d*n,h*s+c*r)-e)/ty,Math.asin(c*s-h*r)/ty]}}}forward(t){return t}inverse(t){return t}cutOnAntimeridian(t,e){let i,s=[],r=[t];for(let i=0,r=t.length;i<r;++i){let r=t[i],a=t[i-1];if(!i){if(!e)continue;a=t[t.length-1]}let n=a[0],l=r[0];if((n<-90||n>90)&&(l<-90||l>90)&&n>0!=l>0){let t=(0,o.clamp)((180-(n+360)%360)/((l+360)%360-(n+360)%360),0,1),e=a[1]+t*(r[1]-a[1]);s.push({i,lat:e,direction:n<0?1:-1,previousLonLat:a,lonLat:r})}}if(s.length)if(e){s.length%2==1&&(i=s.slice().sort((t,e)=>Math.abs(e.lat)-Math.abs(t.lat))[0],(0,o.erase)(s,i));let e=s.length-2;for(;e>=0;){let i=s[e].i,o=tx(180+1e-6*s[e].direction),a=tx(180-1e-6*s[e].direction),n=t.splice(i,s[e+1].i-i,...tv.geodesic([o,s[e].lat],[o,s[e+1].lat],!0));n.push(...tv.geodesic([a,s[e+1].lat],[a,s[e].lat],!0)),r.push(n),e-=2}if(i)for(let t=0;t<r.length;t++){let{direction:e,lat:o}=i,s=r[t],a=s.indexOf(i.lonLat);if(a>-1){let t=(o<0?-1:1)*this.maxLatitude,r=tx(180+1e-6*e),n=tx(180-1e-6*e),l=tv.geodesic([r,o],[r,t],!0);for(let i=r+120*e;i>-180&&i<180;i+=120*e)l.push([i,t]);l.push(...tv.geodesic([n,t],[n,i.lat],!0)),s.splice(a,0,...l);break}}}else{let e=s.length;for(;e--;){let i=s[e].i,o=t.splice(i,t.length,[tx(180+1e-6*s[e].direction),s[e].lat]);o.unshift([tx(180-1e-6*s[e].direction),s[e].lat]),r.push(o)}}return r}path(t){let e,{bounds:i,def:o,rotator:s}=this,r=[],a="Polygon"===t.type||"MultiPolygon"===t.type,n=this.hasGeoProjection,l=!o||!1!==o.antimeridianCutting,h=l?s:void 0,p=l&&o||this;i&&(e=[[i.x1,i.y1],[i.x2,i.y1],[i.x2,i.y2],[i.x1,i.y2]]);let d=t=>{let o=t.map(t=>{if(l){h&&(t=h.forward(t));let e=t[0];1e-6>Math.abs(e-180)&&(e=e<180?179.999999:180.000001),t=[e,t[1]]}return t}),s=[o];n&&(tv.insertGeodesics(o),l&&(s=this.cutOnAntimeridian(o,a))),s.forEach(t=>{let o,s;if(t.length<2)return;let h=!1,d=!1,c=t=>{h?r.push(["L",t[0],t[1]]):(r.push(["M",t[0],t[1]]),h=!0)},u=!1,m=!1,g=t.map(t=>{let e=p.forward(t);return e.outside?u=!0:m=!0,e[1]===1/0?e[1]=1e10:e[1]===-1/0&&(e[1]=-1e10),e});if(l){if(a&&g.push(g[0]),u){if(!m)return;if(e){if(a)g=tf(g,e);else if(i)return void tb(g,e).forEach(t=>{h=!1,t.forEach(c)})}}g.forEach(c)}else for(let e=0;e<g.length;e++){let i=t[e],r=g[e];r.outside?d=!0:(a&&!o&&(o=i,t.push(i),g.push(r)),d&&s&&(a&&n?tv.geodesic(s,i).forEach(t=>c(p.forward(t))):h=!1),c(r),s=i,d=!1)}})};return"LineString"===t.type?d(t.coordinates):"MultiLineString"===t.type?t.coordinates.forEach(t=>d(t)):"Polygon"===t.type?(t.coordinates.forEach(t=>d(t)),r.length&&r.push(["Z"])):"MultiPolygon"===t.type&&(t.coordinates.forEach(t=>{t.forEach(t=>d(t))}),r.length&&r.push(["Z"])),r}}tv.registry={EqualEarth:tl,LambertConformalConic:ta,Miller:td,Orthographic:tu,WebMercator:tg};let{composed:tw}=c(),{pointInPolygon:tT}=J,{topo2geo:tP}=$,{boundsFromPath:tC}=F,tj={};function tL(t,e){let{width:i,height:o}=e;return Math.log(400.979322/Math.max((t.x2-t.x1)/(i/256),(t.y2-t.y1)/(o/256)))/Math.log(2)}function tA(t){t.seriesOptions.mapData&&this.mapView?.recommendMapView(this,[this.options.chart.map,t.seriesOptions.mapData],this.options.drilldown?.mapZooming)}class tk{static compose(t){(0,o.pushUnique)(tw,"MapView")&&(tj=t.maps,(0,o.addEvent)(t,"afterInit",function(){this.mapView=new tk(this,this.options.mapView)},{order:0}),(0,o.addEvent)(t,"addSeriesAsDrilldown",tA),(0,o.addEvent)(t,"afterDrillUp",tA))}static compositeBounds(t){if(t.length)return t.slice(1).reduce((t,e)=>(t.x1=Math.min(t.x1,e.x1),t.y1=Math.min(t.y1,e.y1),t.x2=Math.max(t.x2,e.x2),t.y2=Math.max(t.y2,e.y2),t),(0,o.merge)(t[0]))}static mergeInsets(t,e){let i=t=>{let e={};return t.forEach((t,i)=>{e[t&&t.id||`i${i}`]=t}),e},s=(0,o.merge)(i(t),i(e));return Object.keys(s).map(t=>s[t])}constructor(t,e){this.allowTransformAnimation=!0,this.eventsToUnbind=[],this.insets=[],this.padding=[0,0,0,0],this.recommendedMapView={},this instanceof tz||this.recommendMapView(t,[t.options.chart.map,...(t.options.series||[]).map(t=>t.mapData)]),this.userOptions=e||{};let i=(0,o.merge)(W,this.recommendedMapView,e),s=this.recommendedMapView?.insets,r=e&&e.insets;s&&r&&(i.insets=tk.mergeInsets(s,r)),this.chart=t,this.center=i.center,this.options=i,this.projection=new tv(i.projection),this.playingField=t.plotBox,this.zoom=i.zoom||0,this.minZoom=i.minZoom,this.createInsets(),this.eventsToUnbind.push((0,o.addEvent)(t,"afterSetChartSize",()=>{this.playingField=this.getField(),(void 0===this.minZoom||this.minZoom===this.zoom)&&(this.fitToBounds(void 0,void 0,!1),!this.chart.hasRendered&&(0,o.isNumber)(this.userOptions.zoom)&&(this.zoom=this.userOptions.zoom),this.userOptions.center&&(0,o.merge)(!0,this.center,this.userOptions.center))})),this.setUpEvents()}createInsets(){let t=this.options,e=t.insets;e&&e.forEach(e=>{let i=new tz(this,(0,o.merge)(t.insetOptions,e));this.insets.push(i)})}fitToBounds(t,e,i=!0,s){let r=t||this.getProjectedBounds();if(r){let a=e??(t?0:this.options.padding),n=this.getField(!1),l=(0,o.isArray)(a)?a:[a,a,a,a];this.padding=[(0,o.relativeLength)(l[0],n.height),(0,o.relativeLength)(l[1],n.width),(0,o.relativeLength)(l[2],n.height),(0,o.relativeLength)(l[3],n.width)],this.playingField=this.getField();let h=tL(r,this.playingField);t||(this.minZoom=h);let p=this.projection.inverse([(r.x2+r.x1)/2,(r.y2+r.y1)/2]);this.setView(p,h,i,s)}}getField(t=!0){let e=t?this.padding:[0,0,0,0];return{x:e[3],y:e[0],width:this.chart.plotWidth-e[1]-e[3],height:this.chart.plotHeight-e[0]-e[2]}}getGeoMap(t){if((0,o.isString)(t))return tj[t]&&"Topology"===tj[t].type?tP(tj[t]):tj[t];if((0,o.isObject)(t,!0)){if("FeatureCollection"===t.type)return t;if("Topology"===t.type)return tP(t)}}getMapBBox(){let t=this.getProjectedBounds(),e=this.getScale();if(t){let i=this.padding,o=this.projectedUnitsToPixels({x:t.x1,y:t.y2});return{width:(t.x2-t.x1)*e+i[1]+i[3],height:(t.y2-t.y1)*e+i[0]+i[2],x:o.x-i[3],y:o.y-i[0]}}}getProjectedBounds(){let t=this.projection,e=this.chart.series.reduce((t,e)=>{let i=e.getProjectedBounds&&e.getProjectedBounds();return i&&!1!==e.options.affectsMapView&&t.push(i),t},[]),i=this.options.fitToGeometry;if(i){if(!this.fitToGeometryCache)if("MultiPoint"===i.type){let e=i.coordinates.map(e=>t.forward(e)),o=e.map(t=>t[0]),s=e.map(t=>t[1]);this.fitToGeometryCache={x1:Math.min.apply(0,o),x2:Math.max.apply(0,o),y1:Math.min.apply(0,s),y2:Math.max.apply(0,s)}}else this.fitToGeometryCache=tC(t.path(i));return this.fitToGeometryCache}return this.projection.bounds||tk.compositeBounds(e)}getScale(){return 256/400.979322*Math.pow(2,this.zoom)}getSVGTransform(){let{x:t,y:e,width:i,height:o}=this.playingField,s=this.projection.forward(this.center),r=this.projection.hasCoordinates?-1:1,a=this.getScale(),n=a*r,l=t+i/2-s[0]*a,h=e+o/2-s[1]*n;return{scaleX:a,scaleY:n,translateX:l,translateY:h}}lonLatToPixels(t){let e=this.lonLatToProjectedUnits(t);if(e)return this.projectedUnitsToPixels(e)}lonLatToProjectedUnits(t){let e=this.chart,i=e.mapTransforms;if(i){for(let o in i)if(Object.hasOwnProperty.call(i,o)&&i[o].hitZone){let s=e.transformFromLatLon(t,i[o]);if(s&&tT(s,i[o].hitZone.coordinates[0]))return s}return e.transformFromLatLon(t,i.default)}for(let e of this.insets)if(e.options.geoBounds&&tT({x:t.lon,y:t.lat},e.options.geoBounds.coordinates[0])){let i=e.projection.forward([t.lon,t.lat]),o=e.projectedUnitsToPixels({x:i[0],y:i[1]});return this.pixelsToProjectedUnits(o)}let o=this.projection.forward([t.lon,t.lat]);if(!o.outside)return{x:o[0],y:o[1]}}pixelsToLonLat(t){return this.projectedUnitsToLonLat(this.pixelsToProjectedUnits(t))}pixelsToProjectedUnits(t){let{x:e,y:i}=t,o=this.getScale(),s=this.projection.forward(this.center),r=this.playingField,a=r.x+r.width/2,n=r.y+r.height/2;return{x:s[0]+(e-a)/o,y:s[1]-(i-n)/o}}projectedUnitsToLonLat(t){let e=this.chart,i=e.mapTransforms;if(i){for(let o in i)if(Object.hasOwnProperty.call(i,o)&&i[o].hitZone&&tT(t,i[o].hitZone.coordinates[0]))return e.transformToLatLon(t,i[o]);return e.transformToLatLon(t,i.default)}let o=this.projectedUnitsToPixels(t);for(let t of this.insets)if(t.hitZone&&tT(o,t.hitZone.coordinates[0])){let e=t.pixelsToProjectedUnits(o),i=t.projection.inverse([e.x,e.y]);return{lon:i[0],lat:i[1]}}let s=this.projection.inverse([t.x,t.y]);return{lon:s[0],lat:s[1]}}projectedUnitsToPixels(t){let e=this.getScale(),i=this.projection.forward(this.center),o=this.playingField,s=o.x+o.width/2,r=o.y+o.height/2;return{x:s-e*(i[0]-t.x),y:r+e*(i[1]-t.y)}}recommendMapView(t,e,i=!1){this.recommendedMapView={};let s=e.map(t=>this.getGeoMap(t)),r=[];s.forEach(t=>{if(t&&(Object.keys(this.recommendedMapView).length||(this.recommendedMapView=t["hc-recommended-mapview"]||{}),t.bbox)){let[e,i,o,s]=t.bbox;r.push({x1:e,y1:i,x2:o,y2:s})}});let a=r.length&&tk.compositeBounds(r);(0,o.fireEvent)(this,"onRecommendMapView",{geoBounds:a,chart:t},function(){if(a&&this.recommendedMapView){if(!this.recommendedMapView.projection){let{x1:t,y1:e,x2:i,y2:o}=a;this.recommendedMapView.projection=i-t>180&&o-e>90?{name:"EqualEarth",parallels:[0,0],rotation:[0]}:{name:"LambertConformalConic",parallels:[e,o],rotation:[-(t+i)/2]}}this.recommendedMapView.insets||(this.recommendedMapView.insets=void 0)}}),this.geoMap=s[0],i&&t.hasRendered&&!t.userOptions.mapView?.projection&&this.recommendedMapView&&this.update(this.recommendedMapView)}redraw(t){this.chart.series.forEach(t=>{t.useMapGeometry&&(t.isDirty=!0)}),this.chart.redraw(t)}setView(t,e,i=!0,s){t&&(this.center=t),"number"==typeof e&&("number"==typeof this.minZoom&&(e=Math.max(e,this.minZoom)),"number"==typeof this.options.maxZoom&&(e=Math.min(e,this.options.maxZoom)),(0,o.isNumber)(e)&&(this.zoom=e));let r=this.getProjectedBounds();if(r){let t=this.projection.forward(this.center),{x:e,y:i,width:o,height:s}=this.playingField,a=this.getScale(),n=this.projectedUnitsToPixels({x:r.x1,y:r.y1}),l=this.projectedUnitsToPixels({x:r.x2,y:r.y2}),h=[(r.x1+r.x2)/2,(r.y1+r.y2)/2];if(!this.chart.series.some(t=>t.isDrilling)){let r=n.x,p=l.y,d=l.x,c=n.y;d-r<o?t[0]=h[0]:r<e&&d<e+o?t[0]+=Math.max(r-e,d-o-e)/a:d>e+o&&r>e&&(t[0]+=Math.min(d-o-e,r-e)/a),c-p<s?t[1]=h[1]:p<i&&c<i+s?t[1]-=Math.max(p-i,c-s-i)/a:c>i+s&&p>i&&(t[1]-=Math.min(c-s-i,p-i)/a),this.center=this.projection.inverse(t)}this.insets.forEach(t=>{t.options.field&&(t.hitZone=t.getHitZone(),t.playingField=t.getField())}),this.render()}(0,o.fireEvent)(this,"afterSetView"),i&&this.redraw(s)}setUpEvents(){let t,e,i,{chart:s}=this,r=r=>{let{lastTouches:a,pinchDown:n}=s.pointer,l=this.projection,h=r.touches,{mouseDownX:p,mouseDownY:d}=s,c=0;if(n?.length===1?(p=n[0].chartX,d=n[0].chartY):n?.length===2&&(p=(n[0].chartX+n[1].chartX)/2,d=(n[0].chartY+n[1].chartY)/2),h?.length===2&&a&&(c=Math.log(Math.sqrt(Math.pow(a[0].chartX-a[1].chartX,2)+Math.pow(a[0].chartY-a[1].chartY,2))/Math.sqrt(Math.pow(h[0].chartX-h[1].chartX,2)+Math.pow(h[0].chartY-h[1].chartY,2)))/Math.log(.5)),(0,o.isNumber)(p)&&(0,o.isNumber)(d)){let a=`${p},${d}`,{chartX:n,chartY:u}=r.originalEvent;h?.length===2&&(n=(h[0].chartX+h[1].chartX)/2,u=(h[0].chartY+h[1].chartY)/2),a!==e&&(e=a,t=this.projection.forward(this.center),i=(this.projection.options.rotation||[0,0]).slice());let m=l.def&&l.def.bounds,g=m&&tL(m,this.playingField)||-1/0;if("Orthographic"===l.options.name&&2>(h?.length||0)&&(this.minZoom||1/0)<1.3*g){let t=440/(this.getScale()*Math.min(s.plotWidth,s.plotHeight));if(i){let e=(p-n)*t-i[0],r=(0,o.clamp)(-i[1]-(d-u)*t,-80,80),a=this.zoom;this.update({projection:{rotation:[-e,-r]}},!1),this.fitToBounds(void 0,void 0,!1),this.zoom=a,s.redraw(!1)}}else if((0,o.isNumber)(n)&&(0,o.isNumber)(u)){let e=this.getScale(),i=this.projection.hasCoordinates?1:-1,o=this.projection.inverse([t[0]+(p-n)/e,t[1]-(d-u)/e*i]);isNaN(o[0]+o[1])||this.zoomBy(c,o,void 0,!1)}r.preventDefault()}};(0,o.addEvent)(s,"pan",r),(0,o.addEvent)(s,"touchpan",r),(0,o.addEvent)(s,"selection",t=>{if(t.resetSelection)this.zoomBy();else{let e=t.x-s.plotLeft,i=t.y-s.plotTop,{y:o,x:r}=this.pixelsToProjectedUnits({x:e,y:i}),{y:a,x:n}=this.pixelsToProjectedUnits({x:e+t.width,y:i+t.height});this.fitToBounds({x1:r,y1:o,x2:n,y2:a},void 0,!0,!t.originalEvent.touches&&void 0),/^touch/.test(t.originalEvent.type)||s.showResetZoom(),t.preventDefault()}})}render(){let t=this.chart;this.group?this.groupClipRect&&this.groupClipRect.animate(t.plotBox):(this.groupClipRect=t.renderer.clipRect(t.plotBox),this.group=t.renderer.g("map-view").attr({zIndex:4}).clip(this.groupClipRect).add())}update(t,e=!0,i){let s=t.projection,r=s&&tv.toString(s)!==tv.toString(this.options.projection),a=!1;(0,o.merge)(!0,this.userOptions,t),(0,o.merge)(!0,this.options,t),"insets"in t&&(this.insets.forEach(t=>t.destroy()),this.insets.length=0,a=!0),(r||"fitToGeometry"in t)&&delete this.fitToGeometryCache,(r||a)&&(this.chart.series.forEach(t=>{let e=t.transformGroups;if(t.clearBounds&&t.clearBounds(),t.isDirty=!0,t.isDirtyData=!0,a&&e)for(;e.length>1;){let t=e.pop();t&&t.destroy()}}),r&&(this.projection=new tv(this.options.projection)),a&&this.createInsets(),!t.center&&Object.hasOwnProperty.call(t,"zoom")&&!(0,o.isNumber)(t.zoom)&&this.fitToBounds(void 0,void 0,!1)),t.center||(0,o.isNumber)(t.zoom)?this.setView(this.options.center,t.zoom,!1):"fitToGeometry"in t&&this.fitToBounds(void 0,void 0,!1),e&&this.redraw(i)}zoomBy(t,e,i,o){let s=this.chart,r=this.projection.forward(this.center);if("number"==typeof t){let a,n,l,h=this.zoom+t;if(i){let[t,e]=i,o=this.getScale(),a=t-s.plotLeft-s.plotWidth/2,h=e-s.plotTop-s.plotHeight/2;n=r[0]+a/o,l=r[1]+h/o}if("number"==typeof n&&"number"==typeof l){let t=1-Math.pow(2,this.zoom)/Math.pow(2,h),e=r[0]-n,i=r[1]-l;r[0]-=e*t,r[1]+=i*t,a=this.projection.inverse(r)}this.setView(e||a,h,void 0,o)}else this.fitToBounds(void 0,void 0,void 0,o)}}class tz extends tk{constructor(t,e){if(super(t.chart,e),this.id=e.id,this.mapView=t,this.options=(0,o.merge)({center:[0,0]},t.options.insetOptions,e),this.allBounds=[],this.options.geoBounds){let e=t.projection.path(this.options.geoBounds);this.geoBoundsProjectedBox=tC(e),this.geoBoundsProjectedPolygon=e.map(t=>[t[1]||0,t[2]||0])}}getField(t=!0){let e=this.hitZone;if(e){let i=t?this.padding:[0,0,0,0],s=e.coordinates[0],r=s.map(t=>t[0]),a=s.map(t=>t[1]),n=Math.min.apply(0,r)+i[3],l=Math.max.apply(0,r)-i[1],h=Math.min.apply(0,a)+i[0],p=Math.max.apply(0,a)-i[2];if((0,o.isNumber)(n)&&(0,o.isNumber)(h))return{x:n,y:h,width:l-n,height:p-h}}return super.getField.call(this,t)}getHitZone(){let{chart:t,mapView:e,options:i}=this,{coordinates:s}=i.field||{};if(s){let r=s[0];if("percent"===i.units){let s="mapBoundingBox"===i.relativeTo&&e.getMapBBox()||(0,o.merge)(t.plotBox,{x:0,y:0});r=r.map(t=>[(0,o.relativeLength)(`${t[0]}%`,s.width,s.x),(0,o.relativeLength)(`${t[1]}%`,s.height,s.y)])}return{type:"Polygon",coordinates:[r]}}}getProjectedBounds(){return tk.compositeBounds(this.allBounds)}isInside(t){let{geoBoundsProjectedBox:e,geoBoundsProjectedPolygon:i}=this;return!!(e&&t.x>=e.x1&&t.x<=e.x2&&t.y>=e.y1&&t.y<=e.y2&&i&&tT(t,i))}render(){let{chart:t,mapView:e,options:i}=this,s=i.borderPath||i.field;if(s&&e.group){let r=!0;this.border||(this.border=t.renderer.path().addClass("highcharts-mapview-inset-border").add(e.group),r=!1),t.styledMode||this.border.attr({stroke:i.borderColor,"stroke-width":i.borderWidth});let a=this.border.strokeWidth(),n="mapBoundingBox"===i.relativeTo&&e.getMapBBox()||e.playingField,l=(s.coordinates||[]).reduce((e,s)=>s.reduce((e,s,r)=>{let[l,h]=s;return"percent"===i.units&&(l=t.plotLeft+(0,o.relativeLength)(`${l}%`,n.width,n.x),h=t.plotTop+(0,o.relativeLength)(`${h}%`,n.height,n.y)),l=(0,o.crisp)(l,a),h=(0,o.crisp)(h,a),e.push(0===r?["M",l,h]:["L",l,h]),e},e),[]);this.border[r?"animate":"attr"]({d:l})}}destroy(){this.border&&(this.border=this.border.destroy()),this.eventsToUnbind.forEach(t=>t())}setUpEvents(){}}let{noop:tE}=c(),{splitPath:tN}=G,{column:tB,scatter:tS}=T().seriesTypes;class tO extends tS{constructor(){super(...arguments),this.tupleKey="hc-key"}animate(t){let{chart:e,group:i}=this,s=(0,o.animObject)(this.options.animation);t?i.attr({translateX:e.plotLeft+e.plotWidth/2,translateY:e.plotTop+e.plotHeight/2,scaleX:.001,scaleY:.001}):i.animate({translateX:e.plotLeft,translateY:e.plotTop,scaleX:1,scaleY:1},s)}clearBounds(){this.points.forEach(t=>{delete t.bounds,delete t.insetIndex,delete t.projectedPath}),delete this.bounds}doFullTranslate(){return!!(this.isDirtyData||this.chart.isResizing||!this.hasRendered)}drawMapDataLabels(){super.drawDataLabels(),this.dataLabelsGroups?.forEach(t=>t?.clip(this.chart.clipRect))}drawPoints(){let t=this,{chart:e,group:i,transformGroups:s=[]}=this,{mapView:r,renderer:a}=e;if(r){this.transformGroups=s,s[0]||(s[0]=a.g().add(i));for(let t=0,e=r.insets.length;t<e;++t)s[t+1]||s.push(a.g().add(i));this.doFullTranslate()&&(this.points.forEach(t=>{let{graphic:e}=t;t.group=s["number"==typeof t.insetIndex?t.insetIndex+1:0],e&&e.parentGroup!==t.group&&e.add(t.group)}),tB.prototype.drawPoints.apply(this),this.points.forEach(i=>{let s=i.graphic;if(s){let r=s.animate,a="";i.name&&(a+="highcharts-name-"+i.name.replace(/ /g,"-").toLowerCase()),i.properties?.["hc-key"]&&(a+=" highcharts-key-"+i.properties["hc-key"].toString().toLowerCase()),a&&s.addClass(a),e.styledMode&&s.css(this.pointAttribs(i,i.selected&&"select"||void 0)),s.attr({visibility:!i.visible&&(i.visible||i.isNull)?"hidden":"inherit"}),s.animate=function(i,a,n){let l=(0,o.isNumber)(i["stroke-width"])&&!(0,o.isNumber)(s["stroke-width"]),h=(0,o.isNumber)(s["stroke-width"])&&!(0,o.isNumber)(i["stroke-width"]);if(l||h){let o=(t.getStrokeWidth(t.options)??1)/(e.mapView?.getScale()||1);l&&(s["stroke-width"]=o),h&&(i["stroke-width"]=o)}return r.call(s,i,a,h?function(){s.element.removeAttribute("stroke-width"),delete s["stroke-width"],n&&n.apply(this,arguments)}:n)}}})),s.forEach((i,s)=>{let n=(0===s?r:r.insets[s-1]).getSVGTransform(),l=this.getStrokeWidth(this.options)??1,h=n.scaleX,p=n.scaleY>0?1:-1,d=e=>{(t.points||[]).forEach(t=>{let i,o=t.graphic;o?.["stroke-width"]&&(i=this.getStrokeWidth(t.options))&&o.attr({"stroke-width":i/e})})};if(a.globalAnimation&&e.hasRendered&&r.allowTransformAnimation){let t=Number(i.attr("translateX")),e=Number(i.attr("translateY")),s=Number(i.attr("scaleX")),r=(o,r)=>{let a=s+(h-s)*r.pos;i.attr({translateX:t+(n.translateX-t)*r.pos,translateY:e+(n.translateY-e)*r.pos,scaleX:a,scaleY:a*p,"stroke-width":l/a}),d(a)},c=(0,o.merge)((0,o.animObject)(a.globalAnimation)),u=c.step;c.step=function(){u&&u.apply(this,arguments),r.apply(this,arguments)},i.attr({animator:0}).animate({animator:1},c,(function(){"boolean"!=typeof a.globalAnimation&&a.globalAnimation.complete&&a.globalAnimation.complete({applyDrilldown:!0}),(0,o.fireEvent)(this,"mapZoomComplete")}).bind(this))}else(0,o.stop)(i),i.attr((0,o.merge)(n,{"stroke-width":l/h})),d(h)}),this.isDrilling||this.drawMapDataLabels()}}getProjectedBounds(){if(!this.bounds&&this.chart.mapView){let{insets:t,projection:e}=this.chart.mapView,i=[];(this.points||[]).forEach(s=>{if(s.path||s.geometry){if("string"==typeof s.path?s.path=tN(s.path):(0,o.isArray)(s.path)&&"M"===s.path[0]&&(s.path=this.chart.renderer.pathToSegments(s.path)),!s.bounds){let i=s.getProjectedBounds(e);if(i){s.labelrank=s.labelrank??(i.x2-i.x1)*(i.y2-i.y1);let{midX:e,midY:r}=i;if(t&&(0,o.isNumber)(e)&&(0,o.isNumber)(r)){let a=(0,o.find)(t,t=>t.isInside({x:e,y:r}));a&&(delete s.projectedPath,(i=s.getProjectedBounds(a.projection))&&a.allBounds.push(i),s.insetIndex=t.indexOf(a))}s.bounds=i}}s.bounds&&void 0===s.insetIndex&&i.push(s.bounds)}}),this.bounds=tk.compositeBounds(i)}return this.bounds}getStrokeWidth(t){let e=this.pointAttrToOptions;return t[e?.["stroke-width"]||"borderWidth"]}hasData(){return!!this.dataTable.getModified().rowCount}pointAttribs(t,e){let{mapView:i,styledMode:s}=(t?.series||this).chart,r=s&&t?this.colorAttribs(t):tB.prototype.pointAttribs.call(this,t,e),a=this.getStrokeWidth(t?.options||{});if(e){let i=(0,o.merge)(this.options.states?.[e],t?.options.states?.[e]||{}),s=this.getStrokeWidth(i);(0,o.defined)(s)&&(a=s),r.stroke=i.borderColor??t?.color}a&&i&&(a/=i.getScale());let n=this.getStrokeWidth(this.options);return r.dashstyle&&i&&(0,o.isNumber)(n)&&(a=n/i.getScale()),t?.visible===!1&&(r.fill=this.options.nullColor),t?.isNull&&this.options.nullInteraction&&(r.opacity=1),(0,o.defined)(a)?r["stroke-width"]=a:delete r["stroke-width"],r["stroke-linecap"]=r["stroke-linejoin"]=this.options.linecap,r}matchPoints(){return!this.hasProcessedDataTable&&super.matchPoints.apply(this,arguments)}setData(t,e=!0,i,o){delete this.bounds,super.setData(t,!1,void 0,o),this.processData(),this.generatePoints(),e&&this.chart.redraw(i)}getDataColumnKeys(){return this.pointArrayMap}processData(){let t,e,i,s=this.options,r=this.dataTable,a=this.chart,n=a.options.chart,l=this.joinBy,h=[],p={},d=this.chart.mapView,u=d&&((0,o.isObject)(s.mapData,!0)?d.getGeoMap(s.mapData):d.geoMap),m=a.mapTransforms=n.mapTransforms||u?.["hc-transform"]||a.mapTransforms,g=new S;if(this.hasProcessedDataTable=!0,m&&(0,o.objectEach)(m,t=>{t.rotation&&(t.cosAngle=Math.cos(t.rotation),t.sinAngle=Math.sin(t.rotation))}),(0,o.isArray)(s.mapData)?i=s.mapData:u?.type==="FeatureCollection"&&(this.mapTitle=u.title,i=c().geojson(u,this.type,this)),Object.entries(r.columns).forEach(([t,e])=>{g.setColumn(t,e)}),"_i"===l[0]&&g.setColumn("_i",Array.from({length:g.rowCount},(t,e)=>e)),i){this.mapData=i,this.mapMap={};for(let o=0;o<i.length;o++)e=(t=i[o]).properties,t._i=o,l[0]&&e&&e[l[0]]&&(t[l[0]]=e[l[0]]),p[t[l[0]]]=t;if(this.mapMap=p,l[1]){let t=l[1];for(let e=0;e<g.rowCount;e++){let i="_i"===t?e:(0,o.getNestedProperty)(t,g.getRowObject(e));p[i]&&h.push(p[i])}}if(s.allAreas){let t="|"+h.map(function(t){return t&&t[l[0]]}).join("|")+"|";i.forEach(e=>{l[0]&&-1!==t.indexOf("|"+e[l[0]]+"|")||g.setRow((0,o.merge)(e,{value:null}))})}}this.dataTable.modified=g}setOptions(t){let e=super.setOptions(t),i=e.joinBy;return null===e.joinBy&&(i="_i"),i&&(this.joinBy=(0,o.splat)(i),this.joinBy[1]||(this.joinBy[1]=this.joinBy[0])),e}translate(){let t=this.doFullTranslate(),e=this.chart.mapView,i=e?.projection;if(this.chart.hasRendered&&(this.isDirtyData||!this.hasRendered)&&(this.processData(),this.generatePoints(),delete this.bounds,!e||e.userOptions.center||(0,o.isNumber)(e.userOptions.zoom)||e.zoom!==e.minZoom?this.getProjectedBounds():e.fitToBounds(void 0,void 0,!1)),e){let s=e.getSVGTransform();this.points.forEach(r=>{let a=(0,o.isNumber)(r.insetIndex)&&e.insets[r.insetIndex].getSVGTransform()||s;a&&r.bounds&&(0,o.isNumber)(r.bounds.midX)&&(0,o.isNumber)(r.bounds.midY)&&(r.plotX=r.bounds.midX*a.scaleX+a.translateX,r.plotY=r.bounds.midY*a.scaleY+a.translateY),t&&(r.shapeType="path",r.shapeArgs={d:Z.getProjectedPath(r,i)}),!r.hiddenInDataClass&&(r.projectedPath&&!r.projectedPath.length?r.setVisible(!1):r.visible||r.setVisible(!0))})}(0,o.fireEvent)(this,"afterTranslate")}update(t){t.mapData&&this.chart.mapView?.recommendMapView(this.chart,[this.chart.options.chart.map,...(this.chart.options.series||[]).map((e,i)=>i===this._i?t.mapData:e.mapData)],!0),super.update.apply(this,arguments)}}tO.defaultOptions=(0,o.merge)(tS.defaultOptions,{affectsMapView:!0,animation:!1,dataLabels:{crop:!1,distance:0,formatter:function(){let{numberFormatter:t}=this.series.chart,{value:e}=this.point;return(0,o.isNumber)(e)?t(e,-1):this.point.name||""},inside:!0,overflow:!1,padding:[0,2],verticalAlign:"middle"},linecap:"round",marker:null,nullColor:"var(--highcharts-neutral-color-3)",stickyTracking:!1,tooltip:{followPointer:!0,pointFormat:"{point.name}: {point.value}<br/>"},turboThreshold:0,allAreas:!0,borderColor:"var(--highcharts-neutral-color-20)",borderWidth:1,joinBy:"hc-key",states:{hover:{halo:void 0,borderColor:"var(--highcharts-neutral-color-60)",borderWidth:2},normal:{animation:!0},select:{color:"var(--highcharts-neutral-color-20)"}},legendSymbol:"rectangle"}),(0,o.extend)(tO.prototype,{type:"map",axisTypes:k.seriesMembers.axisTypes,colorAttribs:k.seriesMembers.colorAttribs,colorKey:k.seriesMembers.colorKey,directTouch:!0,drawDataLabels:tE,drawGraph:tE,forceDL:!0,getCenter:E.getCenter,getExtremesFromAll:!0,getSymbol:tE,isCartesian:!1,parallelArrays:k.seriesMembers.parallelArrays,pointArrayMap:k.seriesMembers.pointArrayMap,pointClass:Z,preserveAspectRatio:!0,searchPoint:tE,trackerGroups:k.seriesMembers.trackerGroups,useMapGeometry:!0}),k.compose(tO),T().registerSeriesType("map",tO);let tD=tO;class tI extends tD{pointAttribs(t,e){let i=super.pointAttribs(t,e);return i.fill=this.options.fillColor,i}}tI.defaultOptions=(0,o.merge)(tD.defaultOptions,{lineWidth:1,fillColor:"none",legendSymbol:"lineMarker"}),(0,o.extend)(tI.prototype,{type:"mapline",colorProp:"stroke",pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"}}),T().registerSeriesType("mapline",tI);let{scatter:tV}=T().seriesTypes;class tR extends tV.prototype.pointClass{isValid(){return!!(this.options.geometry||(0,o.isNumber)(this.x)&&(0,o.isNumber)(this.y)||(0,o.isNumber)(this.options.lon)&&(0,o.isNumber)(this.options.lat))}}i.d({},{});let{noop:tX}=c(),{map:tG,scatter:tF}=T().seriesTypes;class tY extends tF{constructor(){super(...arguments),this.clearBounds=tG.prototype.clearBounds}drawDataLabels(){super.drawDataLabels(),this.dataLabelsGroups?.forEach(t=>{t?.clip(this.chart.clipRect)})}projectPoint(t){let e=this.chart.mapView;if(e){let{geometry:i,lon:s,lat:r}=t,a=i&&"Point"===i.type&&i.coordinates;if((0,o.isNumber)(s)&&(0,o.isNumber)(r)&&(a=[s,r]),a)return e.lonLatToProjectedUnits({lon:a[0],lat:a[1]})}}translate(){let t=this.chart.mapView;if(this.generatePoints(),this.getProjectedBounds&&this.isDirtyData&&(delete this.bounds,this.getProjectedBounds()),t){let e=t.getSVGTransform(),{hasCoordinates:i}=t.projection;this.points.forEach(s=>{let r,{x:a,y:n}=s,l=(0,o.isNumber)(s.insetIndex)&&t.insets[s.insetIndex].getSVGTransform()||e,h=this.projectPoint(s.options)||s.properties&&this.projectPoint(s.properties);if(h?(a=h.x,n=h.y):s.bounds&&(a=s.bounds.midX,n=s.bounds.midY,l&&(0,o.isNumber)(a)&&(0,o.isNumber)(n)&&(s.plotX=a*l.scaleX+l.translateX,s.plotY=n*l.scaleY+l.translateY,r=!0)),(0,o.isNumber)(a)&&(0,o.isNumber)(n)){if(!r){let e=t.projectedUnitsToPixels({x:a,y:n});s.plotX=e.x,s.plotY=i?e.y:this.chart.plotHeight-e.y}}else s.y=s.plotX=s.plotY=void 0;s.isInside=this.isPointInside(s),s.zone=this.zones.length?s.getZone():void 0})}(0,o.fireEvent)(this,"afterTranslate")}}tY.defaultOptions=(0,o.merge)(tF.defaultOptions,{dataLabels:{crop:!1,defer:!1,enabled:!0,formatter:function(){return this.point.name},overflow:!1,style:{color:"var(--highcharts-neutral-color-100)"}},legendSymbol:"lineMarker",stickyTracking:!0,tooltip:{pointFormat:"{#if point.name}{point.name}{else}Lat: {point.lat}, Lon: {point.lon}{/if}"}}),V().prototype.symbols.mapmarker=(t,e,i,o,s)=>{let r,a,n=s&&"legend"===s.context;n?(r=t+i/2,a=e+o):s&&"number"==typeof s.anchorX&&"number"==typeof s.anchorY?(r=s.anchorX,a=s.anchorY):(r=t+i/2,a=e+o/2,e-=o);let l=n?o/3:o/2;return[["M",r,a],["C",r,a,r-l,e+1.5*l,r-l,e+l],["A",l,l,1,1,1,r+l,e+l],["C",r+l,e+1.5*l,r,a,r,a],["Z"]]},(0,o.extend)(tY.prototype,{type:"mappoint",axisTypes:["colorAxis"],forceDL:!0,isCartesian:!1,pointClass:tR,searchPoint:tX,useMapGeometry:!0}),T().registerSeriesType("mappoint",tY);let tU={borderColor:void 0,borderWidth:2,className:void 0,color:void 0,connectorClassName:void 0,connectorColor:void 0,connectorDistance:60,connectorWidth:1,enabled:!1,labels:{className:void 0,allowOverlap:!1,format:"",formatter:void 0,align:"right",style:{fontSize:"0.9em",color:"var(--highcharts-neutral-color-100)"},x:0,y:0},maxSize:60,minSize:10,legendIndex:0,ranges:{value:void 0,borderColor:void 0,color:void 0,connectorColor:void 0},sizeBy:"area",sizeByAbsoluteValue:!1,zIndex:1,zThreshold:0},{noop:tZ}=c(),tW=class{constructor(t,e){this.setState=tZ,this.init(t,e)}init(t,e){this.options=t,this.visible=!0,this.chart=e.chart,this.legend=e}addToLegend(t){t.splice(this.options.legendIndex,0,this)}drawLegendSymbol(t){let e,i=t.options.itemDistance??20,s=this.legendItem||{},r=this.options,a=r.ranges,n=r.connectorDistance;if(!a||!a.length||!(0,o.isNumber)(a[0].value)){t.options.bubbleLegend.autoRanges=!0;return}(0,o.stableSort)(a,function(t,e){return e.value-t.value}),this.ranges=a,this.setOptions(),this.render();let l=this.getMaxLabelSize(),h=this.ranges[0].radius,p=2*h;e=(e=n-h+l.width)>0?e:0,this.maxLabel=l,this.movementX="left"===r.labels.align?e:0,s.labelWidth=p+e+i,s.labelHeight=p+l.height/2}setOptions(){let t=this.ranges,e=this.options,i=this.chart.series[e.seriesIndex],s=this.legend.baseline,r={zIndex:e.zIndex,"stroke-width":e.borderWidth},a={zIndex:e.zIndex,"stroke-width":e.connectorWidth},n={align:this.legend.options.rtl||"left"===e.labels.align?"right":"left",zIndex:e.zIndex},l=i.options.marker.fillOpacity,h=this.chart.styledMode;t.forEach(function(p,d){h||(r.stroke=p.borderColor??e.borderColor??i.color,r.fill=p.color||e.color,r.fill||(r.fill=i.color,r["fill-opacity"]=l??1),a.stroke=p.connectorColor??e.connectorColor??i.color),t[d].radius=this.getRangeRadius(p.value),t[d]=(0,o.merge)(t[d],{center:t[0].radius-t[d].radius+s}),h||(0,o.merge)(!0,t[d],{bubbleAttribs:(0,o.merge)(r),connectorAttribs:(0,o.merge)(a),labelAttribs:n})},this)}getRangeRadius(t){let e=this.options,i=this.options.seriesIndex,o=this.chart.series[i],s=e.ranges[0].value,r=e.ranges[e.ranges.length-1].value,a=e.minSize,n=e.maxSize;return o.getRadius.call(this,r,s,a,n,t)}render(){let t=this.legendItem||{},e=this.chart.renderer,i=this.options.zThreshold;for(let o of(this.symbols||(this.symbols={connectors:[],bubbleItems:[],labels:[]}),t.symbol=e.g("bubble-legend"),t.label=e.g("bubble-legend-item").css(this.legend.itemStyle||{}),t.symbol.translateX=0,t.symbol.translateY=0,t.symbol.add(t.label),t.label.add(t.group),this.ranges))o.value>=i&&this.renderRange(o);this.hideOverlappingLabels()}renderRange(t){let e=this.ranges[0],i=this.legend,o=this.options,s=o.labels,r=this.chart,a=r.series[o.seriesIndex],n=r.renderer,l=this.symbols,h=l.labels,p=t.center,d=Math.abs(t.radius),c=o.connectorDistance||0,u=s.align,m=i.options.rtl,g=o.borderWidth,b=o.connectorWidth,f=e.radius||0,y=p-d-g/2+b/2,x=(y%1?1:.5)-(b%2?0:.5),M=n.styledMode,v=m||"left"===u?-c:c;"center"===u&&(v=0,o.connectorDistance=0,t.labelAttribs.align="center"),l.bubbleItems.push(n.circle(f,p+x,d).attr(M?{}:t.bubbleAttribs).addClass((M?"highcharts-color-"+a.colorIndex+" ":"")+"highcharts-bubble-legend-symbol "+(o.className||"")).add(this.legendItem.symbol)),l.connectors.push(n.path(n.crispLine([["M",f,y],["L",f+v,y]],o.connectorWidth)).attr(M?{}:t.connectorAttribs).addClass((M?"highcharts-color-"+this.options.seriesIndex+" ":"")+"highcharts-bubble-legend-connectors "+(o.connectorClassName||"")).add(this.legendItem.symbol));let w=n.text(this.formatLabel(t)).attr(M?{}:t.labelAttribs).css(M?{}:s.style).addClass("highcharts-bubble-legend-labels "+(o.labels.className||"")).add(this.legendItem.symbol),T={x:f+v+o.labels.x,y:y+o.labels.y+.4*w.getBBox().height};w.attr(T),h.push(w),w.placed=!0,w.alignAttr=T}getMaxLabelSize(){let t,e;return this.symbols.labels.forEach(function(i){e=i.getBBox(!0),t=t?e.width>t.width?e:t:e}),t||{}}formatLabel(t){let e=this.options,i=e.labels.formatter,o=e.labels.format,{numberFormatter:s}=this.chart;return o?_().format(o,t,this.chart):i?i.call(t,t):s(t.value,1)}hideOverlappingLabels(){let t=this.chart,e=this.options.labels.allowOverlap,i=this.symbols;!e&&i&&(t.hideOverlappingLabels(i.labels),i.labels.forEach(function(t,e){t.newOpacity?t.newOpacity!==t.oldOpacity&&i.connectors[e].show():i.connectors[e].hide()}))}getRanges(){let t=this.legend.bubbleLegend,e=t.chart.series,i=t.options.ranges,s,r,a=Number.MAX_VALUE,n=-Number.MAX_VALUE;return e.forEach(function(t){t.isBubble&&!t.ignoreSeries&&(r=t.getColumn("z").filter(o.isNumber)).length&&(a=t.options.zMin??Math.min(a,Math.max((0,o.arrayMin)(r),!1===t.options.displayNegative?t.options.zThreshold:-Number.MAX_VALUE)),n=t.options.zMax??Math.max(n,(0,o.arrayMax)(r)))}),s=a===n?[{value:n}]:[{value:a},{value:(a+n)/2},{value:n,autoRanges:!0}],i.length&&i[0].radius&&s.reverse(),s.forEach(function(t,e){i&&i[e]&&(s[e]=(0,o.merge)(i[e],t))}),s}predictBubbleSizes(){let t=this.chart,e=t.legend.options,i=e.floating,o="horizontal"===e.layout,s=o?t.legend.lastLineHeight:0,r=t.plotSizeX,a=t.plotSizeY,n=t.series[this.options.seriesIndex],l=n.getPxExtremes(),h=Math.ceil(l.minPxSize),p=Math.ceil(l.maxPxSize),d=Math.min(a,r),c,u=n.options.maxSize;return i||!/%$/.test(u)?c=p:(c=(d+s)*(u=parseFloat(u))/100/(u/100+1),(o&&a-c>=r||!o&&r-c>=a)&&(c=p)),[h,Math.ceil(c)]}updateRanges(t,e){let i=this.legend.options.bubbleLegend;i.minSize=t,i.maxSize=e,i.ranges=this.getRanges()}correctSizes(){let t=this.legend,e=this.chart.series[this.options.seriesIndex].getPxExtremes();Math.abs(Math.ceil(e.maxPxSize)-this.options.maxSize)>1&&(this.updateRanges(this.options.minSize,e.maxPxSize),t.render())}},{setOptions:tH}=c(),{composed:t_}=c();function tq(t,e,i){let s,r,a,n=this.legend,l=tK(this)>=0;n&&n.options.enabled&&n.bubbleLegend&&n.options.bubbleLegend.autoRanges&&l?(s=n.bubbleLegend.options,r=n.bubbleLegend.predictBubbleSizes(),n.bubbleLegend.updateRanges(r[0],r[1]),s.placed||(n.group.placed=!1,n.allItems.forEach(t=>{(a=t.legendItem||{}).group&&(a.group.translateY=void 0)})),n.render(),s.placed||(this.getMargins(),this.axes.forEach(t=>{t.setScale(),t.updateNames(),(0,o.objectEach)(t.ticks,function(t){t.isNew=!0,t.isNewLabel=!0})}),this.getMargins()),s.placed=!0,t.call(this,e,i),n.bubbleLegend.correctSizes()):(t.call(this,e,i),n&&n.options.enabled&&n.bubbleLegend&&n.render())}function tK(t){let e=t.series,i=0;for(;i<e.length;){if(e[i]&&e[i].isBubble&&e[i].visible&&e[i].dataTable.rowCount)return i;i++}return -1}function t$(t){let e=this.bubbleLegend,i=this.options,o=i.bubbleLegend,s=tK(this.chart);e&&e.ranges&&e.ranges.length&&(o.ranges.length&&(o.autoRanges=!!o.ranges[0].autoRanges),this.destroyItem(e)),s>=0&&i.enabled&&o.enabled&&(o.seriesIndex=s,this.bubbleLegend=new tW(o,this),this.bubbleLegend.addToLegend(t.allItems))}function tJ(){if(this.bubbleLegend){let t=this.allItems,e=this.options.rtl,i=function(t){let e=t.allItems,i=[],o=e.length,s,r,a,n=0,l=0;for(n=0;n<o;n++)if(r=e[n].legendItem||{},a=(e[n+1]||{}).legendItem||{},r.labelHeight&&(e[n].itemHeight=r.labelHeight),e[n]===e[o-1]||r.y!==a.y){for(i.push({height:0}),s=i[i.length-1];l<=n;l++)e[l].itemHeight>s.height&&(s.height=e[l].itemHeight);s.step=n}return i}(this),o,s,r,a,n=0;t.forEach((t,l)=>{(a=t.legendItem||{}).group&&(o=a.group.translateX||0,s=a.y||0,((r=t.movementX)||e&&t.ranges)&&(r=e?o-t.options.maxSize/2:o+r,a.group.attr({translateX:r})),l>i[n].step&&n++,a.group.attr({translateY:Math.round(s+i[n].height/2)}),a.y=s+i[n].height/2)})}}function tQ(t){let e;if(t.defaultPrevented)return!1;let i=t.legendItem,o=this.chart,s=i.visible;this&&this.bubbleLegend&&(i.visible=!s,i.ignoreSeries=s,e=tK(o)>=0,this.bubbleLegend.visible!==e&&(this.update({bubbleLegend:{enabled:e}}),this.bubbleLegend.visible=e),i.visible=s)}let t0=function(t,e){(0,o.pushUnique)(t_,"Series.BubbleLegend")&&(tH({legend:{bubbleLegend:tU}}),(0,o.wrap)(t.prototype,"drawChartBox",tq),(0,o.addEvent)(e,"afterGetAllItems",t$),(0,o.addEvent)(e,"afterRender",tJ),(0,o.addEvent)(e,"itemClick",tQ))},t1=e.default.Point;var t2=i.n(t1);let{seriesTypes:{scatter:{prototype:{pointClass:t3}}}}=T();class t6 extends t3{haloPath(t){let e=(t&&this.marker&&this.marker.radius||0)+t;if(this.series.chart.inverted){let t=this.pos()||[0,0],{xAxis:i,yAxis:o,chart:s}=this.series,r=2*e;return s.renderer.symbols.circle((i?.len||0)-t[1]-e,(o?.len||0)-t[0]-e,r,r)}return t2().prototype.haloPath.call(this,e)}}(0,o.extend)(t6.prototype,{ttBelow:!1});let t8=t6,{composed:t7,noop:t9}=c(),{series:t4,seriesTypes:{column:{prototype:t5},scatter:et}}=T();function ee(){let t=this.len,{coll:e,isXAxis:i,min:s}=this,r=(this.max||0)-(s||0),a=0,n=t,l=t/r,h;("xAxis"===e||"yAxis"===e)&&(this.series.forEach(t=>{if(t.bubblePadding&&t.reserveSpace()){this.allowZoomOutside=!0,h=!0;let e=t.getColumn(i?"x":"y");if(i&&((t.onPoint||t).getRadii(0,0,t),t.onPoint&&(t.radii=t.onPoint.radii)),r>0){let i=e.length;for(;i--;)if((0,o.isNumber)(e[i])&&this.dataMin<=e[i]&&e[i]<=this.max){let o=t.radii&&t.radii[i]||0;a=Math.min((e[i]-s)*l-o,a),n=Math.max((e[i]-s)*l+o,n)}}}}),h&&r>0&&!this.logarithmic&&(n-=t,l*=(t+Math.max(0,a)-Math.min(n,t))/t,[["min","userMin",a],["max","userMax",n]].forEach(t=>{void 0===(this.options[t[0]]??this[t[1]])&&(this[t[0]]+=t[2]/l)})))}function ei(){let{ticks:t,tickPositions:e,dataMin:i=0,dataMax:o=0,categories:s}=this,r=this.options.type;if((s?.length||"category"===r)&&this.series.find(t=>t.bubblePadding)){let s=e.length;for(;s--;){let r=t[e[s]],a=r.pos||0;(a>o||a<i)&&r.label?.hide()}}}class eo extends et{static compose(t,e,i){t0(e,i),(0,o.pushUnique)(t7,"Series.Bubble")&&((0,o.addEvent)(t,"foundExtremes",ee),(0,o.addEvent)(t,"afterRender",ei))}animate(t){!t&&this.points.length<this.options.animationLimit&&this.points.forEach(function(t){let{graphic:e,plotX:i=0,plotY:o=0}=t;e&&e.width&&(this.hasRendered||e.attr({x:i,y:o,width:1,height:1}),e.animate(this.markerAttribs(t),this.options.animation))},this)}getRadii(){let t=[...this.getColumn("z",!1,!0)],e=this.getColumn("y"),i=[],o,s,r,a=this.chart.bubbleZExtremes,{minPxSize:n,maxPxSize:l}=this.getPxExtremes();if(!a){let t,e=Number.MAX_VALUE,i=-Number.MAX_VALUE;this.chart.series.forEach(o=>{if(o.bubblePadding&&o.reserveSpace()){let s=(o.onPoint||o).getZExtremes();s&&(e=Math.min(e??s.zMin,s.zMin),i=Math.max(i??s.zMax,s.zMax),t=!0)}}),t?(a={zMin:e,zMax:i},this.chart.bubbleZExtremes=a):a={zMin:0,zMax:0}}for(s=0,o=t.length;s<o;s++)r=t[s],i.push(this.getRadius(a.zMin,a.zMax,n,l,r,e&&e[s]));this.radii=i}getRadius(t,e,i,s,r,a){let n=this.options,l="width"!==n.sizeBy,h=n.zThreshold,p=e-t,d=.5;if(null===a||null===r)return null;if((0,o.isNumber)(r)){if(n.sizeByAbsoluteValue&&(r=Math.abs(r-h),e=p=Math.max(e-h,Math.abs(t-h)),t=0),r<t)return i/2-1;p>0&&(d=(r-t)/p)}return l&&d>=0&&(d=Math.sqrt(d)),Math.ceil(i+d*(s-i))/2}hasData(){return!!this.dataTable.rowCount}markerAttribs(t,e){let i=super.markerAttribs(t,e),{height:s=0,width:r=0}=i;return this.chart.inverted?(0,o.extend)(i,{x:(t.plotX||0)-r/2,y:(t.plotY||0)-s/2}):i}pointAttribs(t,e){let i=this.options.marker,o=i?.fillOpacity,s=t4.prototype.pointAttribs.call(this,t,e);return s["fill-opacity"]=o??1,s}translate(){super.translate.call(this),this.getRadii(),this.translateBubble()}translateBubble(){let{options:t,radii:e}=this,{minPxSize:i}=this.getPxExtremes();this.data.concat(this.condemnedPoints).forEach((s,r)=>{let{plotX:a=0,plotY:n=0}=s,l=s.condemned?s.marker?.radius||0:e?e[r]:0;"z"===this.zoneAxis&&(s.negative=(s.z||0)<(t.zThreshold||0)),(0,o.isNumber)(l)&&(s.marker=(0,o.extend)(s.marker,{radius:l,width:2*l,height:2*l})),(0,o.isNumber)(l)&&l>=i/2?s.dlBox={x:a-l,y:n-l,width:2*l,height:2*l}:(s.shapeArgs=s.plotY=s.dlBox=void 0,s.isInside=!1)})}getPxExtremes(){let t=Math.min(this.chart.plotWidth,this.chart.plotHeight),e=e=>{let i;return"string"==typeof e&&(i=/%$/.test(e),e=parseInt(e,10)),i?t*e/100:e},i=e(this.options.minSize??8),o=Math.max(e(this.options.maxSize??"20%"),i);return{minPxSize:i,maxPxSize:o}}getZExtremes(){let t=this.options,e=this.getColumn("z").filter(o.isNumber);if(e.length){let i=t.zMin??(0,o.clamp)((0,o.arrayMin)(e),!1===t.displayNegative?t.zThreshold||0:-Number.MAX_VALUE,Number.MAX_VALUE),s=t.zMax??(0,o.arrayMax)(e);if((0,o.isNumber)(i)&&(0,o.isNumber)(s))return{zMin:i,zMax:s}}}searchKDTree(t,e,i,o=t9,s=t9){return o=(t,e,i)=>{let o=t[i]||0,s=e[i]||0,r,a=!1;return o===s?r=t.index>e.index?t:e:o<0&&s<0?(r=o-(t.marker?.radius||0)>=s-(e.marker?.radius||0)?t:e,a=!0):r=o<s?t:e,[r,a]},s=(t,e,i)=>!i&&t>e||t<e,super.searchKDTree(t,e,i,o,s)}}eo.defaultOptions=(0,o.merge)(et.defaultOptions,{dataLabels:{formatter:function(){let{numberFormatter:t}=this.series.chart,{z:e}=this.point;return(0,o.isNumber)(e)?t(e,-1):""},inside:!0,verticalAlign:"middle"},animationLimit:250,marker:{lineColor:null,lineWidth:1,fillOpacity:.5,radius:null,states:{hover:{radiusPlus:0}},symbol:"circle"},minSize:8,maxSize:"20%",softThreshold:!1,states:{hover:{halo:{size:5}}},tooltip:{pointFormat:"({point.x}, {point.y}), Size: {point.z}"},turboThreshold:0,zThreshold:0,zoneAxis:"z"}),(0,o.extend)(eo.prototype,{alignDataLabel:t5.alignDataLabel,applyZones:t9,bubblePadding:!0,isBubble:!0,keysAffectYAxis:["y"],pointArrayMap:["y","z"],pointClass:t8,parallelArrays:["x","y","z"],trackerGroups:["group","dataLabelsGroup"],specialGroup:"group",zoneAxis:"z"}),(0,o.addEvent)(eo,"updatedData",t=>{delete t.target.chart.bubbleZExtremes}),(0,o.addEvent)(eo,"remove",t=>{delete t.target.chart.bubbleZExtremes}),(0,o.addEvent)(eo,"update",t=>{let e=t.target.options;((0,o.defined)(e.zMin)||(0,o.defined)(e.zMax))&&delete t.target.chart.bubbleZExtremes}),T().registerSeriesType("bubble",eo);let es=eo,{seriesTypes:{map:{prototype:{pointClass:{prototype:er}}}}}=T();class ea extends t8{isValid(){return"number"==typeof this.z}}(0,o.extend)(ea.prototype,{applyOptions:er.applyOptions,getProjectedBounds:er.getProjectedBounds});let{seriesTypes:{map:{prototype:en},mappoint:{prototype:el}}}=T();class eh extends es{constructor(){super(...arguments),this.clearBounds=en.clearBounds}searchPoint(t,e){return this.searchKDTree({plotX:t.chartX-this.chart.plotLeft,plotY:t.chartY-this.chart.plotTop},e,t)}translate(){el.translate.call(this),this.getRadii(),this.translateBubble()}}eh.defaultOptions=(0,o.merge)(es.defaultOptions,{lineWidth:0,animationLimit:500,joinBy:"hc-key",tooltip:{pointFormat:"{point.name}: {point.z}"},stickyTracking:!0}),(0,o.extend)(eh.prototype,{type:"mapbubble",axisTypes:["colorAxis"],getProjectedBounds:en.getProjectedBounds,isCartesian:!1,pointArrayMap:["z"],pointClass:ea,processData:en.processData,projectPoint:el.projectPoint,kdAxisArray:["plotX","plotY"],setData:en.setData,setOptions:en.setOptions,useMapGeometry:!0,xyFromShape:!0}),T().registerSeriesType("mapbubble",eh);let ep=e.default.Color;var ed=i.n(ep);let{scatter:{prototype:{pointClass:ec}}}=T().seriesTypes;class eu extends ec{applyOptions(t,e){return(this.isNull||null===this.value)&&delete this.color,super.applyOptions(t,e),this.formatPrefix=this.isNull||null===this.value?"null":"point",this}getCellAttributes(){let t=this.series,e=t.options,i=(e.colsize||1)/2,s=(e.rowsize||1)/2,r=t.xAxis,a=t.yAxis,n=this.options.marker||t.options.marker,l=t.pointPlacementToXValue(),h=this.pointPadding??e.pointPadding??0,p={x1:(0,o.clamp)(Math.round(r.len-r.translate(this.x-i,!1,!0,!1,!0,-l)),-r.len,2*r.len),x2:(0,o.clamp)(Math.round(r.len-r.translate(this.x+i,!1,!0,!1,!0,-l)),-r.len,2*r.len),y1:(0,o.clamp)(Math.round(a.translate(this.y-s,!1,!0,!1,!0)),-a.len,2*a.len),y2:(0,o.clamp)(Math.round(a.translate(this.y+s,!1,!0,!1,!0)),-a.len,2*a.len)};for(let t of[["width","x"],["height","y"]]){let e=t[0],i=t[1],s=i+"1",l=i+"2",d=Math.abs(p[s]-p[l]),c=n&&n.lineWidth||0,u=Math.abs(p[s]+p[l])/2,m=n&&n[e];if((0,o.defined)(m)&&m<d){let t=m/2+c/2;p[s]=u-t,p[l]=u+t}h&&(("x"===i&&r.reversed||"y"===i&&!a.reversed)&&(s=l,l=i+"1"),p[s]+=h,p[l]-=h)}return p}haloPath(t){if(!t)return[];let{x:e=0,y:i=0,width:o=0,height:s=0}=this.shapeArgs||{};return[["M",e-t,i-t],["L",e-t,i+s+t],["L",e+o+t,i+s+t],["L",e+o+t,i-t],["Z"]]}isValid(){return this.value!==1/0&&this.value!==-1/0}}(0,o.extend)(eu.prototype,{dataLabelOnNull:!0,moveToTopOnHover:!0,ttBelow:!1});let{doc:em}=c(),{series:eg,seriesTypes:{column:eb,scatter:ef}}=T(),{prototype:{symbols:ey}}=V(),{colorFromPoint:ex,getContext:eM}={colorFromPoint:function(t,e){let i=e.series.colorAxis;if(i){let s=i.toColor(t||0,e).split(")")[0].split("(")[1].split(",").map(t=>parseFloat(t)??parseInt(t,10));return s[3]=(s[3]??1)*255,(0,o.defined)(t)&&e.visible||(s[3]=0),s}return[0,0,0,0]},getContext:function(t){let{canvas:e,context:i}=t;return e&&i?.clearRect?(i.clearRect(0,0,e.width,e.height),i):(t.canvas=em.createElement("canvas"),t.context=t.canvas.getContext("2d",{willReadFrequently:!0})||void 0,t.context)}};class ev extends ef{constructor(){super(...arguments),this.valueMax=NaN,this.valueMin=NaN,this.isDirtyCanvas=!0}drawPoints(){let t=this,e=t.options,i=e.interpolation,o=e.marker||{};if(i){let{image:e,chart:i,xAxis:o,yAxis:s}=t,{reversed:r=!1,len:a}=o,{reversed:n=!1,len:l}=s,h={width:a,height:l};if(!e||t.isDirtyData||t.isDirtyCanvas){let a=eM(t),{canvas:l,options:{colsize:p=1,rowsize:d=1},points:c,points:{length:u}}=t,m=i.colorAxis&&i.colorAxis[0];if(l&&a&&m){let{min:m,max:g}=o.getExtremes(),{min:b,max:f}=s.getExtremes(),y=g-m,x=f-b,M=Math.round(y/p/8*8),v=Math.round(x/d/8*8),[w,T]=[[M,M/y,r,"ceil"],[v,v/x,!n,"floor"]].map(([t,e,i,o])=>i?i=>Math[o](t-e*i):t=>Math[o](e*t)),P=l.width=M+1,C=P*(l.height=v+1),j=(u-1)/C,L=new Uint8ClampedArray(4*C),A=(t,e)=>4*Math.ceil(P*T(e-b)+w(t-m));t.buildKDTree();for(let t=0;t<C;t++){let e=c[Math.ceil(j*t)],{x:i,y:o}=e;L.set(ex(e.value,e),A(i,o))}a.putImageData(new ImageData(L,P),0,0),e?e.attr({...h,href:l.toDataURL("image/png",1)}):(t.directTouch=!1,t.image=i.renderer.image(l.toDataURL("image/png",1)).attr(h).add(t.group))}t.isDirtyCanvas=!1}else(e.width!==a||e.height!==l)&&e.attr(h)}else(o.enabled||t._hasPointMarkers)&&(eg.prototype.drawPoints.call(t),t.points.forEach(e=>{e.graphic&&(e.graphic[t.chart.styledMode?"css":"animate"](t.colorAttribs(e)),null===e.value&&e.graphic.addClass("highcharts-null-point"))}))}getSymbol(){this.symbol=this.options.marker?.symbol||"rect"}getExtremes(){let{dataMin:t,dataMax:e}=eg.prototype.getExtremes.call(this,this.getColumn("value"));return(0,o.isNumber)(t)&&(this.valueMin=t),(0,o.isNumber)(e)&&(this.valueMax=e),eg.prototype.getExtremes.call(this)}getValidPoints(t,e){return eg.prototype.getValidPoints.call(this,t,e,!0)}hasData(){return!!this.dataTable.rowCount}init(){super.init.apply(this,arguments);let t=this.options;t.pointRange=t.pointRange??(t.colsize||1),this.yAxis.axisPointRange=t.rowsize||1,ey.ellipse=ey.circle,t.marker&&(0,o.isNumber)(t.borderRadius)&&(t.marker.r=t.borderRadius);let e=this.canvas=document.createElement("canvas");e&&(this.context=e?.getContext("webgpu"))}markerAttribs(t,e){let i=t.shapeArgs||{};if(t.hasImage)return{x:t.plotX,y:t.plotY};if(e&&"normal"!==e){let o=t.options.marker||{},s=this.options.marker||{},r=s.states?.[e]||{},a=o.states?.[e]||{},n=(a.width||r.width||i.width||0)+(a.widthPlus||r.widthPlus||0),l=(a.height||r.height||i.height||0)+(a.heightPlus||r.heightPlus||0);return{x:(i.x||0)+((i.width||0)-n)/2,y:(i.y||0)+((i.height||0)-l)/2,width:n,height:l}}return i}pointAttribs(t,e){let i=eg.prototype.pointAttribs.call(this,t,e),s=this.options||{},r=this.chart.options.plotOptions||{},a=r.series||{},n=r.heatmap||{},l=t?.options.borderColor||s.borderColor||n.borderColor||a.borderColor,h=t?.options.borderWidth||s.borderWidth||n.borderWidth||a.borderWidth||i["stroke-width"];if(i.stroke=t?.marker?.lineColor||s.marker?.lineColor||l||this.color,i["stroke-width"]=h,e&&"normal"!==e){let r=(0,o.merge)(s.states?.[e],s.marker?.states?.[e],t?.options.marker?.states?.[e]||{});i.fill=r.color||ed().parse(i.fill).brighten(r.brightness||0).get(),i.stroke=r.lineColor||i.stroke}return i}translate(){let{borderRadius:t,marker:e}=this.options,i=e?.symbol||"rect",s=ey[i]?i:"rect",r=-1!==["circle","square"].indexOf(s);for(let e of(this.generatePoints(),this.points)){let a=e.getCellAttributes(),n=Math.min(a.x1,a.x2),l=Math.min(a.y1,a.y2),h=Math.max(Math.abs(a.x2-a.x1),0),p=Math.max(Math.abs(a.y2-a.y1),0);if(e.hasImage=0===(e.marker?.symbol||i||"").indexOf("url"),r){let t=Math.abs(h-p);n=Math.min(a.x1,a.x2)+(h<p?0:t/2),l=Math.min(a.y1,a.y2)+(h<p?t/2:0),h=p=Math.min(h,p)}e.hasImage&&(e.marker={width:h,height:p}),e.plotX=e.clientX=(a.x1+a.x2)/2,e.plotY=(a.y1+a.y2)/2,e.shapeType="path",e.shapeArgs=(0,o.merge)(!0,{x:n,y:l,width:h,height:p},{d:ey[s](n,l,h,p,{r:(0,o.isNumber)(t)?t:0})})}(0,o.fireEvent)(this,"afterTranslate")}}ev.defaultOptions=(0,o.merge)(ef.defaultOptions,{animation:!1,borderRadius:0,borderWidth:0,interpolation:!1,nullColor:"var(--highcharts-neutral-color-3)",dataLabels:{formatter:function(){let{numberFormatter:t}=this.series.chart,{value:e}=this.point;return(0,o.isNumber)(e)?t(e,-1):""},inside:!0,verticalAlign:"middle",crop:!1,overflow:"allow",padding:0},marker:{radius:0,lineColor:void 0,states:{hover:{lineWidthPlus:0},select:{}}},clip:!0,pointRange:null,tooltip:{pointFormat:"{point.x}, {point.y}: {point.value}<br/>"},states:{hover:{halo:!1,brightness:.2}},legendSymbol:"rectangle"}),(0,o.addEvent)(ev,"afterDataClassLegendClick",function(){this.isDirtyCanvas=!0,this.drawPoints(),this.options.enableMouseTracking&&this.drawTracker()}),(0,o.extend)(ev.prototype,{axisTypes:k.seriesMembers.axisTypes,colorKey:k.seriesMembers.colorKey,directTouch:!0,getExtremesFromAll:!0,keysAffectYAxis:["y"],parallelArrays:k.seriesMembers.parallelArrays,pointArrayMap:["y","value"],pointClass:eu,specialGroup:"group",trackerGroups:k.seriesMembers.trackerGroups,alignDataLabel:eb.prototype.alignDataLabel,colorAttribs:k.seriesMembers.colorAttribs}),k.compose(ev),T().registerSeriesType("heatmap",ev);let ew=c();ew.ColorMapComposition=k,ew.MapChart=ew.MapChart||G,ew.MapNavigation=ew.MapNavigation||v,ew.MapView=ew.MapView||tk,ew.Projection=ew.Projection||tv,ew.mapChart=ew.Map=ew.MapChart.mapChart,ew.maps=ew.MapChart.maps,ew.geojson=$.geojson,ew.topo2geo=$.topo2geo,$.compose(ew.Chart),eh.compose(ew.Axis,ew.Chart,ew.Legend),v.compose(G,ew.Pointer,ew.SVGRenderer),tk.compose(G);let eT=c();export{eT as default};