highcharts 9.3.2 → 10.1.0

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 (700) hide show
  1. package/bower.json +1 -1
  2. package/css/highcharts.css +19 -2
  3. package/css/highcharts.scss +17 -2
  4. package/css/themes/dark-unica.css +19 -2
  5. package/css/themes/grid-light.css +19 -2
  6. package/css/themes/sand-signika.css +19 -2
  7. package/es-modules/Accessibility/A11yI18n.js +4 -4
  8. package/es-modules/Accessibility/Accessibility.js +1 -1
  9. package/es-modules/Accessibility/Components/ContainerComponent.js +8 -9
  10. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +14 -9
  11. package/es-modules/Accessibility/Components/LegendComponent.js +31 -23
  12. package/es-modules/Accessibility/Components/MenuComponent.js +15 -5
  13. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +2 -2
  14. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +7 -6
  15. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +1 -1
  16. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +0 -1
  17. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +34 -18
  18. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +84 -33
  19. package/es-modules/Accessibility/Components/ZoomComponent.js +13 -10
  20. package/es-modules/Accessibility/FocusBorder.js +6 -5
  21. package/es-modules/Accessibility/HighContrastMode.js +2 -2
  22. package/es-modules/Accessibility/KeyboardNavigation.js +113 -98
  23. package/es-modules/Accessibility/Options/LangOptions.js +36 -31
  24. package/es-modules/Accessibility/Options/Options.js +66 -3
  25. package/es-modules/Accessibility/ProxyElement.js +14 -6
  26. package/es-modules/Accessibility/ProxyProvider.js +10 -2
  27. package/es-modules/Accessibility/Utils/ChartUtilities.js +9 -4
  28. package/es-modules/Core/Axis/Axis.js +180 -73
  29. package/es-modules/Core/Axis/Color/ColorAxis.js +22 -5
  30. package/es-modules/Core/Axis/GridAxis.js +15 -11
  31. package/es-modules/Core/Axis/LogarithmicAxis.js +1 -1
  32. package/es-modules/Core/Axis/OrdinalAxis.js +3 -2
  33. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +1 -1
  34. package/es-modules/Core/Axis/StackingAxis.js +0 -1
  35. package/es-modules/Core/Axis/Tick.js +2 -2
  36. package/es-modules/Core/Axis/TreeGridTick.js +11 -0
  37. package/es-modules/Core/Chart/Chart.js +21 -3
  38. package/es-modules/Core/Chart/Chart3D.js +1 -11
  39. package/es-modules/Core/Chart/ChartDefaults.js +43 -11
  40. package/es-modules/Core/Chart/MapChart.js +1 -6
  41. package/es-modules/Core/Chart/StockChart.js +1 -1
  42. package/es-modules/Core/DefaultOptions.js +8 -4
  43. package/es-modules/Core/Geometry/PolygonClip.js +84 -0
  44. package/es-modules/Core/Globals.js +4 -18
  45. package/es-modules/Core/HttpUtilities.js +13 -8
  46. package/es-modules/Core/Legend/Legend.js +11 -9
  47. package/es-modules/Core/Navigator.js +10 -7
  48. package/es-modules/Core/Pointer.js +15 -11
  49. package/es-modules/Core/Renderer/HTML/AST.js +68 -8
  50. package/es-modules/Core/Renderer/SVG/SVGElement.js +47 -63
  51. package/es-modules/Core/Renderer/SVG/SVGElement3D.js +17 -5
  52. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +31 -28
  53. package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +1 -1
  54. package/es-modules/Core/Renderer/SVG/TextBuilder.js +12 -10
  55. package/es-modules/Core/Scrollbar.js +9 -5
  56. package/es-modules/Core/Series/DataLabel.js +65 -36
  57. package/es-modules/Core/Series/Point.js +2 -2
  58. package/es-modules/Core/Series/Series.js +52 -22
  59. package/es-modules/Core/Series/SeriesDefaults.js +4 -1
  60. package/es-modules/Core/Tooltip.js +14 -31
  61. package/es-modules/Core/Utilities.js +29 -29
  62. package/es-modules/Extensions/Annotations/Annotations.js +9 -2
  63. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
  64. package/es-modules/Extensions/Annotations/MockPoint.js +1 -1
  65. package/es-modules/Extensions/Annotations/NavigationBindings.js +9 -1
  66. package/es-modules/Extensions/Annotations/Popup.js +1 -1
  67. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +5 -3
  68. package/es-modules/Extensions/Boost/BoostInit.js +6 -1
  69. package/es-modules/Extensions/Boost/BoostOptions.js +26 -0
  70. package/es-modules/Extensions/Boost/Boostables.js +1 -0
  71. package/es-modules/Extensions/Boost/WGLRenderer.js +48 -37
  72. package/es-modules/Extensions/Boost/WGLShader.js +4 -3
  73. package/es-modules/Extensions/Breadcrumbs.js +873 -0
  74. package/es-modules/Extensions/Data.js +26 -14
  75. package/es-modules/Extensions/DataGrouping.js +8 -3
  76. package/es-modules/Extensions/Debugger/ErrorMessages.js +4 -0
  77. package/es-modules/Extensions/DraggablePoints.js +9 -7
  78. package/es-modules/Extensions/Drilldown.js +150 -95
  79. package/es-modules/Extensions/ExportData.js +1 -2
  80. package/es-modules/Extensions/Exporting/Exporting.js +31 -20
  81. package/es-modules/Extensions/Exporting/ExportingDefaults.js +49 -1
  82. package/es-modules/Extensions/FullScreen.js +121 -54
  83. package/es-modules/Extensions/GeoJSON.js +151 -125
  84. package/es-modules/Extensions/MarkerClusters.js +34 -20
  85. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +110 -22
  86. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  87. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  88. package/es-modules/Extensions/OverlappingDataLabels.js +5 -4
  89. package/es-modules/Extensions/Polar.js +4 -1
  90. package/es-modules/Extensions/ScrollablePlotArea.js +5 -1
  91. package/es-modules/Extensions/Stacking.js +4 -3
  92. package/es-modules/Extensions/Themes/HighContrastDark.js +10 -10
  93. package/es-modules/Extensions/Themes/HighContrastLight.js +10 -10
  94. package/es-modules/Maps/MapNavigation.js +50 -13
  95. package/es-modules/Maps/MapPointer.js +16 -0
  96. package/es-modules/Maps/MapUtilities.js +56 -0
  97. package/es-modules/Maps/MapView.js +611 -136
  98. package/es-modules/Maps/MapViewInsetsOptionsDefault.js +148 -0
  99. package/es-modules/Maps/MapViewOptionsDefault.js +60 -20
  100. package/es-modules/Maps/Projection.js +169 -77
  101. package/es-modules/Maps/Projections/EqualEarth.js +15 -6
  102. package/es-modules/Maps/Projections/LambertConformalConic.js +27 -19
  103. package/es-modules/Maps/Projections/Miller.js +23 -10
  104. package/es-modules/Maps/Projections/Orthographic.js +21 -10
  105. package/es-modules/Maps/Projections/WebMercator.js +25 -13
  106. package/es-modules/Series/ArcDiagram/ArcDiagramPoint.js +77 -0
  107. package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +589 -0
  108. package/es-modules/Series/CenteredUtilities.js +6 -1
  109. package/es-modules/Series/Column/ColumnSeries.js +4 -3
  110. package/es-modules/Series/DataModifyComposition.js +1 -0
  111. package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +2 -2
  112. package/es-modules/Series/DrawPointComposition.js +7 -4
  113. package/es-modules/Series/Flags/FlagsSeries.js +7 -12
  114. package/es-modules/Series/Gauge/GaugeSeries.js +1 -1
  115. package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -20
  116. package/es-modules/Series/Lollipop/LollipopSeries.js +1 -1
  117. package/es-modules/Series/Map/MapPoint.js +24 -1
  118. package/es-modules/Series/Map/MapSeries.js +206 -169
  119. package/es-modules/Series/MapBubble/MapBubblePoint.js +16 -24
  120. package/es-modules/Series/MapBubble/MapBubbleSeries.js +58 -1
  121. package/es-modules/Series/MapPoint/MapPointPoint.js +2 -8
  122. package/es-modules/Series/MapPoint/MapPointSeries.js +40 -14
  123. package/es-modules/Series/NodesComposition.js +60 -13
  124. package/es-modules/Series/OHLC/OHLCSeries.js +7 -0
  125. package/es-modules/Series/Organization/OrganizationPoint.js +68 -2
  126. package/es-modules/Series/Organization/OrganizationSeries.js +79 -25
  127. package/es-modules/Series/Pie/PieDataLabel.js +3 -1
  128. package/es-modules/Series/Pie/PiePoint.js +12 -5
  129. package/es-modules/Series/Pie/PieSeries.js +12 -1
  130. package/es-modules/Series/Pie3D/Pie3DSeries.js +19 -0
  131. package/es-modules/Series/Sankey/SankeyColumnComposition.js +193 -0
  132. package/es-modules/Series/Sankey/SankeyPoint.js +37 -1
  133. package/es-modules/Series/Sankey/SankeySeries.js +13 -128
  134. package/es-modules/Series/Scatter/ScatterSeries.js +1 -1
  135. package/es-modules/Series/Sunburst/SunburstSeries.js +14 -3
  136. package/es-modules/Series/Treemap/TreemapSeries.js +88 -80
  137. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -0
  138. package/es-modules/Series/Wordcloud/WordcloudSeries.js +4 -4
  139. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +9 -2
  140. package/es-modules/Stock/StockToolsBindings.js +31 -24
  141. package/es-modules/Stock/StockToolsGui.js +1 -1
  142. package/es-modules/masters/highcharts-3d.src.js +1 -1
  143. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  144. package/es-modules/masters/highcharts-more.src.js +1 -1
  145. package/es-modules/masters/highcharts.src.js +1 -1
  146. package/es-modules/masters/highmaps.src.js +1 -1
  147. package/es-modules/masters/highstock.src.js +1 -1
  148. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  149. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  150. package/es-modules/masters/indicators/ao.src.js +1 -1
  151. package/es-modules/masters/indicators/apo.src.js +1 -1
  152. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  153. package/es-modules/masters/indicators/aroon.src.js +1 -1
  154. package/es-modules/masters/indicators/atr.src.js +1 -1
  155. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  156. package/es-modules/masters/indicators/cci.src.js +1 -1
  157. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  158. package/es-modules/masters/indicators/cmf.src.js +1 -1
  159. package/es-modules/masters/indicators/cmo.src.js +1 -1
  160. package/es-modules/masters/indicators/dema.src.js +1 -1
  161. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  162. package/es-modules/masters/indicators/dmi.src.js +1 -1
  163. package/es-modules/masters/indicators/dpo.src.js +1 -1
  164. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  165. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  166. package/es-modules/masters/indicators/indicators.src.js +1 -1
  167. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  168. package/es-modules/masters/indicators/klinger.src.js +1 -1
  169. package/es-modules/masters/indicators/macd.src.js +1 -1
  170. package/es-modules/masters/indicators/mfi.src.js +1 -1
  171. package/es-modules/masters/indicators/momentum.src.js +1 -1
  172. package/es-modules/masters/indicators/natr.src.js +1 -1
  173. package/es-modules/masters/indicators/obv.src.js +1 -1
  174. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  175. package/es-modules/masters/indicators/ppo.src.js +1 -1
  176. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  177. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  178. package/es-modules/masters/indicators/psar.src.js +1 -1
  179. package/es-modules/masters/indicators/regressions.src.js +1 -1
  180. package/es-modules/masters/indicators/roc.src.js +1 -1
  181. package/es-modules/masters/indicators/rsi.src.js +1 -1
  182. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  183. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  184. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  185. package/es-modules/masters/indicators/tema.src.js +1 -1
  186. package/es-modules/masters/indicators/trendline.src.js +1 -1
  187. package/es-modules/masters/indicators/trix.src.js +1 -1
  188. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  189. package/es-modules/masters/indicators/vwap.src.js +1 -1
  190. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  191. package/es-modules/masters/indicators/wma.src.js +1 -1
  192. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  193. package/es-modules/masters/modules/accessibility.src.js +1 -1
  194. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  195. package/es-modules/masters/modules/annotations.src.js +1 -1
  196. package/es-modules/masters/modules/arc-diagram.src.js +14 -0
  197. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  198. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  199. package/es-modules/masters/modules/boost.src.js +1 -1
  200. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  201. package/es-modules/masters/modules/bullet.src.js +1 -1
  202. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  203. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  204. package/es-modules/masters/modules/cylinder.src.js +1 -1
  205. package/es-modules/masters/modules/data.src.js +1 -1
  206. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  207. package/es-modules/masters/modules/debugger.src.js +1 -1
  208. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  209. package/es-modules/masters/modules/dotplot.src.js +1 -1
  210. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  211. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  212. package/es-modules/masters/modules/drilldown.src.js +2 -1
  213. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  214. package/es-modules/masters/modules/export-data.src.js +1 -1
  215. package/es-modules/masters/modules/exporting.src.js +1 -1
  216. package/es-modules/masters/modules/full-screen.src.js +1 -1
  217. package/es-modules/masters/modules/funnel.src.js +1 -1
  218. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  219. package/es-modules/masters/modules/gantt.src.js +1 -1
  220. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  221. package/es-modules/masters/modules/heatmap.src.js +1 -1
  222. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  223. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  224. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  225. package/es-modules/masters/modules/item-series.src.js +1 -1
  226. package/es-modules/masters/modules/lollipop.src.js +1 -1
  227. package/es-modules/masters/modules/map.src.js +5 -1
  228. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  229. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  230. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  231. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  232. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  233. package/es-modules/masters/modules/oldie.src.js +1 -1
  234. package/es-modules/masters/modules/organization.src.js +1 -1
  235. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  236. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  237. package/es-modules/masters/modules/pareto.src.js +1 -1
  238. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  239. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  240. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  241. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  242. package/es-modules/masters/modules/sankey.src.js +1 -1
  243. package/es-modules/masters/modules/series-label.src.js +1 -1
  244. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  245. package/es-modules/masters/modules/sonification.src.js +1 -1
  246. package/es-modules/masters/modules/static-scale.src.js +1 -1
  247. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  248. package/es-modules/masters/modules/stock.src.js +1 -1
  249. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  250. package/es-modules/masters/modules/sunburst.src.js +1 -1
  251. package/es-modules/masters/modules/tilemap.src.js +1 -1
  252. package/es-modules/masters/modules/timeline.src.js +1 -1
  253. package/es-modules/masters/modules/treegrid.src.js +1 -1
  254. package/es-modules/masters/modules/treemap.src.js +5 -1
  255. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  256. package/es-modules/masters/modules/variwide.src.js +1 -1
  257. package/es-modules/masters/modules/vector.src.js +1 -1
  258. package/es-modules/masters/modules/venn.src.js +1 -1
  259. package/es-modules/masters/modules/windbarb.src.js +1 -1
  260. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  261. package/es-modules/masters/modules/xrange.src.js +1 -1
  262. package/es-modules/masters/themes/avocado.src.js +1 -1
  263. package/es-modules/masters/themes/brand-dark.src.js +1 -1
  264. package/es-modules/masters/themes/brand-light.src.js +1 -1
  265. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  266. package/es-modules/masters/themes/dark-green.src.js +1 -1
  267. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  268. package/es-modules/masters/themes/gray.src.js +1 -1
  269. package/es-modules/masters/themes/grid-light.src.js +1 -1
  270. package/es-modules/masters/themes/grid.src.js +1 -1
  271. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  272. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  273. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  274. package/es-modules/masters/themes/skies.src.js +1 -1
  275. package/es-modules/masters/themes/sunset.src.js +1 -1
  276. package/highcharts-3d.js +99 -98
  277. package/highcharts-3d.js.map +1 -1
  278. package/highcharts-3d.src.js +51 -21
  279. package/highcharts-gantt.js +808 -800
  280. package/highcharts-gantt.js.map +1 -1
  281. package/highcharts-gantt.src.js +781 -426
  282. package/highcharts-more.js +195 -194
  283. package/highcharts-more.js.map +1 -1
  284. package/highcharts-more.src.js +18 -4
  285. package/highcharts.d.ts +3224 -542
  286. package/highcharts.js +592 -584
  287. package/highcharts.js.map +1 -1
  288. package/highcharts.src.d.ts +3224 -542
  289. package/highcharts.src.js +732 -400
  290. package/highmaps.js +760 -728
  291. package/highmaps.js.map +1 -1
  292. package/highmaps.src.js +3840 -2189
  293. package/highstock.js +793 -786
  294. package/highstock.js.map +1 -1
  295. package/highstock.src.js +783 -432
  296. package/indicators/acceleration-bands.js +12 -11
  297. package/indicators/acceleration-bands.js.map +1 -1
  298. package/indicators/acceleration-bands.src.js +11 -2
  299. package/indicators/accumulation-distribution.js +5 -5
  300. package/indicators/accumulation-distribution.js.map +1 -1
  301. package/indicators/accumulation-distribution.src.js +11 -2
  302. package/indicators/ao.js +6 -6
  303. package/indicators/ao.js.map +1 -1
  304. package/indicators/ao.src.js +11 -2
  305. package/indicators/apo.js +5 -5
  306. package/indicators/apo.js.map +1 -1
  307. package/indicators/apo.src.js +11 -2
  308. package/indicators/aroon-oscillator.js +10 -10
  309. package/indicators/aroon-oscillator.js.map +1 -1
  310. package/indicators/aroon-oscillator.src.js +11 -2
  311. package/indicators/aroon.js +11 -11
  312. package/indicators/aroon.js.map +1 -1
  313. package/indicators/aroon.src.js +11 -2
  314. package/indicators/atr.js +5 -5
  315. package/indicators/atr.js.map +1 -1
  316. package/indicators/atr.src.js +11 -2
  317. package/indicators/bollinger-bands.js +12 -12
  318. package/indicators/bollinger-bands.js.map +1 -1
  319. package/indicators/bollinger-bands.src.js +11 -2
  320. package/indicators/cci.js +5 -5
  321. package/indicators/cci.js.map +1 -1
  322. package/indicators/cci.src.js +11 -2
  323. package/indicators/chaikin.js +8 -8
  324. package/indicators/chaikin.js.map +1 -1
  325. package/indicators/chaikin.src.js +11 -2
  326. package/indicators/cmf.js +6 -6
  327. package/indicators/cmf.js.map +1 -1
  328. package/indicators/cmf.src.js +11 -2
  329. package/indicators/cmo.js +5 -5
  330. package/indicators/cmo.js.map +1 -1
  331. package/indicators/cmo.src.js +11 -2
  332. package/indicators/dema.js +5 -5
  333. package/indicators/dema.js.map +1 -1
  334. package/indicators/dema.src.js +11 -2
  335. package/indicators/disparity-index.js +6 -6
  336. package/indicators/disparity-index.js.map +1 -1
  337. package/indicators/disparity-index.src.js +11 -2
  338. package/indicators/dmi.js +12 -12
  339. package/indicators/dmi.js.map +1 -1
  340. package/indicators/dmi.src.js +11 -2
  341. package/indicators/dpo.js +5 -5
  342. package/indicators/dpo.js.map +1 -1
  343. package/indicators/dpo.src.js +11 -2
  344. package/indicators/ema.js +2 -1
  345. package/indicators/ema.js.map +1 -1
  346. package/indicators/ema.src.js +10 -1
  347. package/indicators/ichimoku-kinko-hyo.js +16 -16
  348. package/indicators/ichimoku-kinko-hyo.js.map +1 -1
  349. package/indicators/ichimoku-kinko-hyo.src.js +11 -2
  350. package/indicators/indicators-all.js +195 -194
  351. package/indicators/indicators-all.js.map +1 -1
  352. package/indicators/indicators-all.src.js +21 -5
  353. package/indicators/indicators.js +13 -12
  354. package/indicators/indicators.js.map +1 -1
  355. package/indicators/indicators.src.js +21 -5
  356. package/indicators/keltner-channels.js +12 -11
  357. package/indicators/keltner-channels.js.map +1 -1
  358. package/indicators/keltner-channels.src.js +11 -2
  359. package/indicators/klinger.js +13 -13
  360. package/indicators/klinger.js.map +1 -1
  361. package/indicators/klinger.src.js +11 -2
  362. package/indicators/macd.js +12 -11
  363. package/indicators/macd.js.map +1 -1
  364. package/indicators/macd.src.js +11 -2
  365. package/indicators/mfi.js +6 -6
  366. package/indicators/mfi.js.map +1 -1
  367. package/indicators/mfi.src.js +11 -2
  368. package/indicators/momentum.js +5 -5
  369. package/indicators/momentum.js.map +1 -1
  370. package/indicators/momentum.src.js +11 -2
  371. package/indicators/natr.js +5 -4
  372. package/indicators/natr.js.map +1 -1
  373. package/indicators/natr.src.js +11 -2
  374. package/indicators/obv.js +5 -5
  375. package/indicators/obv.js.map +1 -1
  376. package/indicators/obv.src.js +11 -2
  377. package/indicators/pivot-points.js +11 -11
  378. package/indicators/pivot-points.js.map +1 -1
  379. package/indicators/pivot-points.src.js +11 -2
  380. package/indicators/ppo.js +5 -5
  381. package/indicators/ppo.js.map +1 -1
  382. package/indicators/ppo.src.js +11 -2
  383. package/indicators/price-channel.js +11 -11
  384. package/indicators/price-channel.js.map +1 -1
  385. package/indicators/price-channel.src.js +11 -2
  386. package/indicators/price-envelopes.js +8 -8
  387. package/indicators/price-envelopes.js.map +1 -1
  388. package/indicators/price-envelopes.src.js +11 -2
  389. package/indicators/psar.js +7 -6
  390. package/indicators/psar.js.map +1 -1
  391. package/indicators/psar.src.js +11 -2
  392. package/indicators/regressions.js +12 -12
  393. package/indicators/regressions.js.map +1 -1
  394. package/indicators/regressions.src.js +11 -2
  395. package/indicators/roc.js +5 -5
  396. package/indicators/roc.js.map +1 -1
  397. package/indicators/roc.src.js +11 -2
  398. package/indicators/rsi.js +6 -5
  399. package/indicators/rsi.js.map +1 -1
  400. package/indicators/rsi.src.js +11 -2
  401. package/indicators/slow-stochastic.js +5 -5
  402. package/indicators/slow-stochastic.js.map +1 -1
  403. package/indicators/slow-stochastic.src.js +11 -2
  404. package/indicators/stochastic.js +12 -12
  405. package/indicators/stochastic.js.map +1 -1
  406. package/indicators/stochastic.src.js +11 -2
  407. package/indicators/supertrend.js +10 -10
  408. package/indicators/supertrend.js.map +1 -1
  409. package/indicators/supertrend.src.js +11 -2
  410. package/indicators/tema.js +6 -6
  411. package/indicators/tema.js.map +1 -1
  412. package/indicators/tema.src.js +11 -2
  413. package/indicators/trendline.js +5 -5
  414. package/indicators/trendline.js.map +1 -1
  415. package/indicators/trendline.src.js +11 -2
  416. package/indicators/trix.js +4 -4
  417. package/indicators/trix.js.map +1 -1
  418. package/indicators/trix.src.js +11 -2
  419. package/indicators/volume-by-price.js +17 -17
  420. package/indicators/volume-by-price.js.map +1 -1
  421. package/indicators/volume-by-price.src.js +11 -2
  422. package/indicators/vwap.js +5 -5
  423. package/indicators/vwap.js.map +1 -1
  424. package/indicators/vwap.src.js +11 -2
  425. package/indicators/williams-r.js +6 -5
  426. package/indicators/williams-r.js.map +1 -1
  427. package/indicators/williams-r.src.js +11 -2
  428. package/indicators/wma.js +5 -5
  429. package/indicators/wma.js.map +1 -1
  430. package/indicators/wma.src.js +11 -2
  431. package/indicators/zigzag.js +6 -6
  432. package/indicators/zigzag.js.map +1 -1
  433. package/indicators/zigzag.src.js +11 -2
  434. package/lib/jspdf.js +299 -184
  435. package/lib/jspdf.src.js +25266 -18067
  436. package/lib/svg2pdf.js +35 -31
  437. package/lib/svg2pdf.src.js +5721 -4179
  438. package/modules/accessibility.js +245 -240
  439. package/modules/accessibility.js.map +1 -1
  440. package/modules/accessibility.src.js +510 -283
  441. package/modules/annotations-advanced.js +144 -144
  442. package/modules/annotations-advanced.js.map +1 -1
  443. package/modules/annotations-advanced.src.js +37 -11
  444. package/modules/annotations.js +79 -79
  445. package/modules/annotations.js.map +1 -1
  446. package/modules/annotations.src.js +32 -8
  447. package/modules/arc-diagram.js +25 -0
  448. package/modules/arc-diagram.js.map +1 -0
  449. package/modules/arc-diagram.src.js +778 -0
  450. package/modules/arrow-symbols.js +4 -3
  451. package/modules/arrow-symbols.js.map +1 -1
  452. package/modules/arrow-symbols.src.js +11 -2
  453. package/modules/boost-canvas.js +15 -15
  454. package/modules/boost-canvas.js.map +1 -1
  455. package/modules/boost-canvas.src.js +11 -2
  456. package/modules/boost.js +80 -79
  457. package/modules/boost.js.map +1 -1
  458. package/modules/boost.src.js +71 -43
  459. package/modules/broken-axis.js +13 -13
  460. package/modules/broken-axis.js.map +1 -1
  461. package/modules/broken-axis.src.js +11 -2
  462. package/modules/bullet.js +9 -9
  463. package/modules/bullet.js.map +1 -1
  464. package/modules/bullet.src.js +11 -2
  465. package/modules/coloraxis.js +24 -24
  466. package/modules/coloraxis.js.map +1 -1
  467. package/modules/coloraxis.src.js +33 -7
  468. package/modules/current-date-indicator.js +5 -4
  469. package/modules/current-date-indicator.js.map +1 -1
  470. package/modules/current-date-indicator.src.js +11 -2
  471. package/modules/cylinder.js +11 -11
  472. package/modules/cylinder.js.map +1 -1
  473. package/modules/cylinder.src.js +11 -2
  474. package/modules/data.js +34 -33
  475. package/modules/data.js.map +1 -1
  476. package/modules/data.src.js +59 -32
  477. package/modules/datagrouping.js +21 -20
  478. package/modules/datagrouping.js.map +1 -1
  479. package/modules/datagrouping.src.js +19 -5
  480. package/modules/debugger.js +8 -7
  481. package/modules/debugger.js.map +1 -1
  482. package/modules/debugger.src.js +15 -2
  483. package/modules/dependency-wheel.js +12 -11
  484. package/modules/dependency-wheel.js.map +1 -1
  485. package/modules/dependency-wheel.src.js +14 -5
  486. package/modules/dotplot.js +6 -6
  487. package/modules/dotplot.js.map +1 -1
  488. package/modules/dotplot.src.js +11 -2
  489. package/modules/drag-panes.js +10 -10
  490. package/modules/drag-panes.js.map +1 -1
  491. package/modules/drag-panes.src.js +11 -2
  492. package/modules/draggable-points.js +35 -34
  493. package/modules/draggable-points.js.map +1 -1
  494. package/modules/draggable-points.src.js +20 -9
  495. package/modules/drilldown.d.ts +19 -0
  496. package/modules/drilldown.js +36 -25
  497. package/modules/drilldown.js.map +1 -1
  498. package/modules/drilldown.src.d.ts +19 -0
  499. package/modules/drilldown.src.js +1091 -106
  500. package/modules/dumbbell.js +17 -17
  501. package/modules/dumbbell.js.map +1 -1
  502. package/modules/dumbbell.src.js +11 -2
  503. package/modules/export-data.js +21 -20
  504. package/modules/export-data.js.map +1 -1
  505. package/modules/export-data.src.js +12 -4
  506. package/modules/exporting.js +39 -39
  507. package/modules/exporting.js.map +1 -1
  508. package/modules/exporting.src.js +227 -92
  509. package/modules/full-screen.js +8 -7
  510. package/modules/full-screen.js.map +1 -1
  511. package/modules/full-screen.src.js +135 -58
  512. package/modules/funnel.js +12 -12
  513. package/modules/funnel.js.map +1 -1
  514. package/modules/funnel.src.js +11 -2
  515. package/modules/funnel3d.js +21 -21
  516. package/modules/funnel3d.js.map +1 -1
  517. package/modules/funnel3d.src.js +11 -2
  518. package/modules/gantt.js +216 -215
  519. package/modules/gantt.js.map +1 -1
  520. package/modules/gantt.src.js +60 -28
  521. package/modules/grid-axis.js +23 -23
  522. package/modules/grid-axis.js.map +1 -1
  523. package/modules/grid-axis.src.js +27 -13
  524. package/modules/heatmap.js +40 -39
  525. package/modules/heatmap.js.map +1 -1
  526. package/modules/heatmap.src.js +46 -27
  527. package/modules/heikinashi.js +8 -8
  528. package/modules/heikinashi.js.map +1 -1
  529. package/modules/heikinashi.src.js +11 -2
  530. package/modules/histogram-bellcurve.js +13 -13
  531. package/modules/histogram-bellcurve.js.map +1 -1
  532. package/modules/histogram-bellcurve.src.js +11 -2
  533. package/modules/hollowcandlestick.js +9 -9
  534. package/modules/hollowcandlestick.js.map +1 -1
  535. package/modules/hollowcandlestick.src.js +11 -2
  536. package/modules/item-series.js +12 -12
  537. package/modules/item-series.js.map +1 -1
  538. package/modules/item-series.src.js +11 -2
  539. package/modules/lollipop.js +7 -7
  540. package/modules/lollipop.js.map +1 -1
  541. package/modules/lollipop.src.js +12 -3
  542. package/modules/map.d.ts +80 -43
  543. package/modules/map.js +169 -144
  544. package/modules/map.js.map +1 -1
  545. package/modules/map.src.d.ts +80 -43
  546. package/modules/map.src.js +8024 -6696
  547. package/modules/marker-clusters.js +36 -36
  548. package/modules/marker-clusters.js.map +1 -1
  549. package/modules/marker-clusters.src.js +47 -23
  550. package/modules/networkgraph.d.ts +5 -0
  551. package/modules/networkgraph.js +49 -48
  552. package/modules/networkgraph.js.map +1 -1
  553. package/modules/networkgraph.src.d.ts +5 -0
  554. package/modules/networkgraph.src.js +77 -15
  555. package/modules/no-data-to-display.js +5 -5
  556. package/modules/no-data-to-display.js.map +1 -1
  557. package/modules/no-data-to-display.src.js +11 -2
  558. package/modules/offline-exporting.js +20 -18
  559. package/modules/offline-exporting.js.map +1 -1
  560. package/modules/offline-exporting.src.js +126 -25
  561. package/modules/oldie-polyfills.js +7 -7
  562. package/modules/oldie-polyfills.js.map +1 -1
  563. package/modules/oldie-polyfills.src.js +11 -2
  564. package/modules/oldie.js +30 -30
  565. package/modules/oldie.js.map +1 -1
  566. package/modules/oldie.src.js +12 -3
  567. package/modules/organization.js +16 -14
  568. package/modules/organization.js.map +1 -1
  569. package/modules/organization.src.js +166 -32
  570. package/modules/overlapping-datalabels.js +3 -2
  571. package/modules/overlapping-datalabels.js.map +1 -1
  572. package/modules/overlapping-datalabels.src.js +11 -2
  573. package/modules/parallel-coordinates.js +11 -11
  574. package/modules/parallel-coordinates.js.map +1 -1
  575. package/modules/parallel-coordinates.src.js +11 -2
  576. package/modules/pareto.js +7 -7
  577. package/modules/pareto.js.map +1 -1
  578. package/modules/pareto.src.js +11 -2
  579. package/modules/pathfinder.js +31 -31
  580. package/modules/pathfinder.js.map +1 -1
  581. package/modules/pathfinder.src.js +11 -2
  582. package/modules/pattern-fill.js +14 -14
  583. package/modules/pattern-fill.js.map +1 -1
  584. package/modules/pattern-fill.src.js +11 -2
  585. package/modules/price-indicator.js +5 -5
  586. package/modules/price-indicator.js.map +1 -1
  587. package/modules/price-indicator.src.js +11 -2
  588. package/modules/pyramid3d.js +4 -4
  589. package/modules/pyramid3d.js.map +1 -1
  590. package/modules/pyramid3d.src.js +11 -2
  591. package/modules/sankey.d.ts +5 -0
  592. package/modules/sankey.js +32 -29
  593. package/modules/sankey.js.map +1 -1
  594. package/modules/sankey.src.d.ts +5 -0
  595. package/modules/sankey.src.js +341 -157
  596. package/modules/series-label.js +18 -17
  597. package/modules/series-label.js.map +1 -1
  598. package/modules/series-label.src.js +11 -2
  599. package/modules/solid-gauge.js +10 -10
  600. package/modules/solid-gauge.js.map +1 -1
  601. package/modules/solid-gauge.src.js +11 -2
  602. package/modules/sonification.js +59 -59
  603. package/modules/sonification.js.map +1 -1
  604. package/modules/sonification.src.js +11 -2
  605. package/modules/static-scale.js +5 -4
  606. package/modules/static-scale.js.map +1 -1
  607. package/modules/static-scale.src.js +11 -2
  608. package/modules/stock-tools.js +145 -145
  609. package/modules/stock-tools.js.map +1 -1
  610. package/modules/stock-tools.src.js +64 -32
  611. package/modules/stock.js +204 -204
  612. package/modules/stock.js.map +1 -1
  613. package/modules/stock.src.js +62 -34
  614. package/modules/streamgraph.js +5 -4
  615. package/modules/streamgraph.js.map +1 -1
  616. package/modules/streamgraph.src.js +11 -2
  617. package/modules/sunburst.d.ts +3 -0
  618. package/modules/sunburst.js +73 -60
  619. package/modules/sunburst.js.map +1 -1
  620. package/modules/sunburst.src.d.ts +3 -0
  621. package/modules/sunburst.src.js +1048 -97
  622. package/modules/tilemap.js +17 -17
  623. package/modules/tilemap.js.map +1 -1
  624. package/modules/tilemap.src.js +11 -2
  625. package/modules/timeline.js +18 -18
  626. package/modules/timeline.js.map +1 -1
  627. package/modules/timeline.src.js +11 -2
  628. package/modules/treegrid.js +57 -56
  629. package/modules/treegrid.js.map +1 -1
  630. package/modules/treegrid.src.js +38 -13
  631. package/modules/treemap.d.ts +3 -0
  632. package/modules/treemap.js +53 -41
  633. package/modules/treemap.js.map +1 -1
  634. package/modules/treemap.src.d.ts +3 -0
  635. package/modules/treemap.src.js +1037 -95
  636. package/modules/variable-pie.js +9 -9
  637. package/modules/variable-pie.js.map +1 -1
  638. package/modules/variable-pie.src.js +11 -2
  639. package/modules/variwide.js +12 -12
  640. package/modules/variwide.js.map +1 -1
  641. package/modules/variwide.src.js +11 -2
  642. package/modules/vector.js +8 -7
  643. package/modules/vector.js.map +1 -1
  644. package/modules/vector.src.js +11 -2
  645. package/modules/venn.js +31 -31
  646. package/modules/venn.js.map +1 -1
  647. package/modules/venn.src.js +18 -6
  648. package/modules/windbarb.js +15 -15
  649. package/modules/windbarb.js.map +1 -1
  650. package/modules/windbarb.src.js +11 -2
  651. package/modules/wordcloud.js +24 -23
  652. package/modules/wordcloud.js.map +1 -1
  653. package/modules/wordcloud.src.js +22 -10
  654. package/modules/xrange.js +16 -16
  655. package/modules/xrange.js.map +1 -1
  656. package/modules/xrange.src.js +11 -2
  657. package/package.json +1 -1
  658. package/themes/avocado.js +4 -3
  659. package/themes/avocado.js.map +1 -1
  660. package/themes/avocado.src.js +11 -2
  661. package/themes/brand-dark.js +9 -8
  662. package/themes/brand-dark.js.map +1 -1
  663. package/themes/brand-dark.src.js +11 -2
  664. package/themes/brand-light.js +8 -8
  665. package/themes/brand-light.js.map +1 -1
  666. package/themes/brand-light.src.js +11 -2
  667. package/themes/dark-blue.js +9 -8
  668. package/themes/dark-blue.js.map +1 -1
  669. package/themes/dark-blue.src.js +11 -2
  670. package/themes/dark-green.js +9 -8
  671. package/themes/dark-green.js.map +1 -1
  672. package/themes/dark-green.src.js +11 -2
  673. package/themes/dark-unica.js +8 -7
  674. package/themes/dark-unica.js.map +1 -1
  675. package/themes/dark-unica.src.js +11 -2
  676. package/themes/gray.js +9 -8
  677. package/themes/gray.js.map +1 -1
  678. package/themes/gray.src.js +11 -2
  679. package/themes/grid-light.js +5 -4
  680. package/themes/grid-light.js.map +1 -1
  681. package/themes/grid-light.src.js +11 -2
  682. package/themes/grid.js +5 -5
  683. package/themes/grid.js.map +1 -1
  684. package/themes/grid.src.js +11 -2
  685. package/themes/high-contrast-dark.js +7 -7
  686. package/themes/high-contrast-dark.js.map +1 -1
  687. package/themes/high-contrast-dark.src.js +21 -12
  688. package/themes/high-contrast-light.js +3 -3
  689. package/themes/high-contrast-light.js.map +1 -1
  690. package/themes/high-contrast-light.src.js +21 -12
  691. package/themes/sand-signika.js +5 -5
  692. package/themes/sand-signika.js.map +1 -1
  693. package/themes/sand-signika.src.js +11 -2
  694. package/themes/skies.js +5 -5
  695. package/themes/skies.js.map +1 -1
  696. package/themes/skies.src.js +11 -2
  697. package/themes/sunset.js +3 -3
  698. package/themes/sunset.js.map +1 -1
  699. package/themes/sunset.src.js +11 -2
  700. package/es-modules/Maps/ProjectionDefinition.js +0 -9
@@ -1,5 +1,5 @@
1
1
  /**
2
- * @license Highcharts JS v9.3.2 (2021-11-29)
2
+ * @license Highcharts JS v10.1.0 (2022-04-29)
3
3
  *
4
4
  * Annotations module
5
5
  *
@@ -7,7 +7,6 @@
7
7
  *
8
8
  * License: www.highcharts.com/license
9
9
  */
10
- 'use strict';
11
10
  (function (factory) {
12
11
  if (typeof module === 'object' && module.exports) {
13
12
  factory['default'] = factory;
@@ -22,10 +21,20 @@
22
21
  factory(typeof Highcharts !== 'undefined' ? Highcharts : undefined);
23
22
  }
24
23
  }(function (Highcharts) {
24
+ 'use strict';
25
25
  var _modules = Highcharts ? Highcharts._modules : {};
26
26
  function _registerModule(obj, path, args, fn) {
27
27
  if (!obj.hasOwnProperty(path)) {
28
28
  obj[path] = fn.apply(null, args);
29
+
30
+ if (typeof CustomEvent === 'function') {
31
+ window.dispatchEvent(
32
+ new CustomEvent(
33
+ 'HighchartsModuleLoaded',
34
+ { detail: { path: path, module: obj[path] }
35
+ })
36
+ );
37
+ }
29
38
  }
30
39
  }
31
40
  _registerModule(_modules, 'Extensions/Annotations/Mixins/EventEmitterMixin.js', [_modules['Core/Globals.js'], _modules['Core/Utilities.js']], function (H, U) {
@@ -362,7 +371,7 @@
362
371
  *
363
372
  */
364
373
  ControlPoint.prototype.setVisibility = function (visible) {
365
- this.graphic.attr('visibility', visible ? 'visible' : 'hidden');
374
+ this.graphic[visible ? 'show' : 'hide']();
366
375
  this.options.visible = visible;
367
376
  };
368
377
  /**
@@ -771,7 +780,7 @@
771
780
  this.plotX = xAxis.toPixels(options.x, true);
772
781
  }
773
782
  else {
774
- this.x = null;
783
+ this.x = void 0;
775
784
  this.plotX = options.x;
776
785
  }
777
786
  if (yAxis) {
@@ -2957,7 +2966,7 @@
2957
2966
  opacity: 0,
2958
2967
  zIndex: this.options.zIndex,
2959
2968
  visibility: this.options.visible ?
2960
- 'visible' :
2969
+ 'inherit' :
2961
2970
  'hidden'
2962
2971
  })
2963
2972
  .add();
@@ -2996,7 +3005,7 @@
2996
3005
  var options = this.options,
2997
3006
  navigation = this.chart.navigationBindings,
2998
3007
  visibility = pick(visible, !options.visible);
2999
- this.graphic.attr('visibility', visibility ? 'visible' : 'hidden');
3008
+ this.graphic.attr('visibility', visibility ? 'inherit' : 'hidden');
3000
3009
  if (!visibility) {
3001
3010
  this.setControlPointsVisibility(false);
3002
3011
  if (navigation.activeAnnotation === this &&
@@ -3797,6 +3806,13 @@
3797
3806
  * @since 7.1.0
3798
3807
  * @apioption annotations.events.afterUpdate
3799
3808
  */
3809
+ /**
3810
+ * Fires when the annotation is clicked.
3811
+ *
3812
+ * @type {Highcharts.EventCallbackFunction<Highcharts.Annotation>}
3813
+ * @since 7.1.0
3814
+ * @apioption annotations.events.click
3815
+ */
3800
3816
  /**
3801
3817
  * Event callback when annotation is removed from the chart.
3802
3818
  *
@@ -4161,11 +4177,13 @@
4161
4177
  var options = this.options;
4162
4178
  if (options.shapes) {
4163
4179
  delete options.labelOptions;
4164
- if (options.shapes[0].type) {
4165
- this.basicType = options.shapes[0].type;
4180
+ var type = options.shapes[0].type;
4181
+ // The rectangle is rendered as a path, whereas other basic shapes
4182
+ // are rendered as their respecitve SVG shapes.
4183
+ if (type && type !== 'path') {
4184
+ this.basicType = type;
4166
4185
  }
4167
4186
  else {
4168
- // Defalut shape would be rectangle.
4169
4187
  this.basicType = 'rectangle';
4170
4188
  }
4171
4189
  }
@@ -8107,6 +8125,14 @@
8107
8125
  }
8108
8126
  ]
8109
8127
  },
8128
+ /**
8129
+ * A ellipse annotation bindings. Includes `start` and two events in
8130
+ * `steps` array. First updates the second point, responsible for a
8131
+ * rx width, and second updates the ry width.
8132
+ *
8133
+ * @type {Highcharts.NavigationBindingsOptionsObject}
8134
+ * @default {"className": "highcharts-ellipse-annotation", "start": function() {}, "steps": [function() {}], "annotationsOptions": {}}
8135
+ */
8110
8136
  ellipseAnnotation: {
8111
8137
  className: 'highcharts-ellipse-annotation',
8112
8138
  start: function (e) {
@@ -8279,7 +8305,7 @@
8279
8305
  * from a different server.
8280
8306
  *
8281
8307
  * @type {string}
8282
- * @default https://code.highcharts.com/9.3.2/gfx/stock-icons/
8308
+ * @default https://code.highcharts.com/10.1.0/gfx/stock-icons/
8283
8309
  * @since 7.1.3
8284
8310
  * @apioption navigation.iconsURL
8285
8311
  */
@@ -9597,7 +9623,7 @@
9597
9623
  this.popup = new H.Popup(this.chart.container, (this.chart.options.navigation.iconsURL ||
9598
9624
  (this.chart.options.stockTools &&
9599
9625
  this.chart.options.stockTools.gui.iconsURL) ||
9600
- 'https://code.highcharts.com/9.3.2/gfx/stock-icons/'), this.chart);
9626
+ 'https://code.highcharts.com/10.1.0/gfx/stock-icons/'), this.chart);
9601
9627
  }
9602
9628
  this.popup.showForm(config.formType, this.chart, config.options, config.onSubmit);
9603
9629
  });
@@ -1,5 +1,5 @@
1
1
  /*
2
- Highcharts JS v9.3.2 (2021-11-29)
2
+ Highcharts JS v10.1.0 (2022-04-29)
3
3
 
4
4
  Annotations module
5
5
 
@@ -7,82 +7,82 @@
7
7
 
8
8
  License: www.highcharts.com/license
9
9
  */
10
- 'use strict';(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/annotations",["highcharts"],function(u){a(u);a.Highcharts=u;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function u(c,a,t,v){c.hasOwnProperty(a)||(c[a]=v.apply(null,t))}a=a?a._modules:{};u(a,"Extensions/Annotations/Mixins/EventEmitterMixin.js",[a["Core/Globals.js"],a["Core/Utilities.js"]],function(c,
11
- a){var h=a.addEvent,v=a.fireEvent,q=a.objectEach,l=a.pick,b=a.removeEvent;return{addEvents:function(){var b=this,d=function(d){h(d,c.isTouchDevice?"touchstart":"mousedown",function(d){b.onMouseDown(d)},{passive:!1})};d(this.graphic.element);(b.labels||[]).forEach(function(b){b.options.useHTML&&b.graphic.text&&d(b.graphic.text.element)});q(b.options.events,function(d,g){var f=function(f){"click"===g&&b.cancelClick||d.call(b,b.chart.pointer.normalize(f),b.target)};if(-1===(b.nonDOMEvents||[]).indexOf(g))b.graphic.on(g,
12
- f);else h(b,g,f,{passive:!1})});if(b.options.draggable&&(h(b,"drag",b.onDrag),!b.graphic.renderer.styledMode)){var g={cursor:{x:"ew-resize",y:"ns-resize",xy:"move"}[b.options.draggable]};b.graphic.css(g);(b.labels||[]).forEach(function(d){d.options.useHTML&&d.graphic.text&&d.graphic.text.css(g)})}b.isUpdating||v(b,"add")},removeDocEvents:function(){this.removeDrag&&(this.removeDrag=this.removeDrag());this.removeMouseUp&&(this.removeMouseUp=this.removeMouseUp())},onMouseDown:function(b){var d=this,
13
- g=d.chart.pointer;b.preventDefault&&b.preventDefault();if(2!==b.button){b=g.normalize(b);var f=b.chartX;var x=b.chartY;d.cancelClick=!1;d.chart.hasDraggedAnnotation=!0;d.removeDrag=h(c.doc,c.isTouchDevice?"touchmove":"mousemove",function(b){d.hasDragged=!0;b=g.normalize(b);b.prevChartX=f;b.prevChartY=x;v(d,"drag",b);f=b.chartX;x=b.chartY},c.isTouchDevice?{passive:!1}:void 0);d.removeMouseUp=h(c.doc,c.isTouchDevice?"touchend":"mouseup",function(b){var g=l(d.target&&d.target.annotation,d.target);g&&
14
- (g.cancelClick=d.hasDragged);d.cancelClick=d.hasDragged;d.hasDragged=!1;d.chart.hasDraggedAnnotation=!1;v(l(g,d),"afterUpdate");d.onMouseUp(b)},c.isTouchDevice?{passive:!1}:void 0)}},onMouseUp:function(b){var d=this.chart;b=this.target||this;var g=d.options.annotations;d=d.annotations.indexOf(b);this.removeDocEvents();g[d]=b.options},onDrag:function(b){if(this.chart.isInsidePlot(b.chartX-this.chart.plotLeft,b.chartY-this.chart.plotTop,{visiblePlotOnly:!0})){var d=this.mouseMoveToTranslation(b);"x"===
15
- this.options.draggable&&(d.y=0);"y"===this.options.draggable&&(d.x=0);this.points.length?this.translate(d.x,d.y):(this.shapes.forEach(function(b){b.translate(d.x,d.y)}),this.labels.forEach(function(b){b.translate(d.x,d.y)}));this.redraw(!1)}},mouseMoveToRadians:function(b,d,g){var f=b.prevChartY-g,c=b.prevChartX-d;g=b.chartY-g;b=b.chartX-d;this.chart.inverted&&(d=c,c=f,f=d,d=b,b=g,g=d);return Math.atan2(g,b)-Math.atan2(f,c)},mouseMoveToTranslation:function(b){var d=b.chartX-b.prevChartX;b=b.chartY-
16
- b.prevChartY;if(this.chart.inverted){var g=b;b=d;d=g}return{x:d,y:b}},mouseMoveToScale:function(b,d,g){d=(b.chartX-d||1)/(b.prevChartX-d||1);b=(b.chartY-g||1)/(b.prevChartY-g||1);this.chart.inverted&&(g=b,b=d,d=g);return{x:d,y:b}},destroy:function(){this.removeDocEvents();b(this);this.hcEvents=null}}});u(a,"Extensions/Annotations/ControlPoint.js",[a["Core/Utilities.js"],a["Extensions/Annotations/Mixins/EventEmitterMixin.js"]],function(c,a){var h=c.merge,v=c.pick;return function(){function c(c,b,x,
17
- d){this.addEvents=a.addEvents;this.graphic=void 0;this.mouseMoveToRadians=a.mouseMoveToRadians;this.mouseMoveToScale=a.mouseMoveToScale;this.mouseMoveToTranslation=a.mouseMoveToTranslation;this.onDrag=a.onDrag;this.onMouseDown=a.onMouseDown;this.onMouseUp=a.onMouseUp;this.removeDocEvents=a.removeDocEvents;this.nonDOMEvents=["drag"];this.chart=c;this.target=b;this.options=x;this.index=v(x.index,d)}c.prototype.setVisibility=function(c){this.graphic.attr("visibility",c?"visible":"hidden");this.options.visible=
18
- c};c.prototype.render=function(){var c=this.chart,b=this.options;this.graphic=c.renderer.symbol(b.symbol,0,0,b.width,b.height).add(c.controlPointsGroup).css(b.style);this.setVisibility(b.visible);this.addEvents()};c.prototype.redraw=function(c){this.graphic[c?"animate":"attr"](this.options.positioner.call(this,this.target))};c.prototype.destroy=function(){a.destroy.call(this);this.graphic&&(this.graphic=this.graphic.destroy());this.options=this.target=this.chart=null};c.prototype.update=function(c){var b=
19
- this.chart,a=this.target,d=this.index;c=h(!0,this.options,c);this.destroy();this.constructor(b,a,c,d);this.render(b.controlPointsGroup);this.redraw()};return c}()});u(a,"Extensions/Annotations/MockPoint.js",[a["Core/Series/Series.js"],a["Core/Utilities.js"],a["Core/Axis/Axis.js"]],function(c,a,t){var h=a.defined,q=a.fireEvent;return function(){function a(b,a,d){this.y=this.x=this.ttBelow=this.plotY=this.plotX=this.negative=this.isInside=void 0;this.mock=!0;this.series={visible:!0,chart:b,getPlotBox:c.prototype.getPlotBox};
20
- this.target=a||null;this.options=d;this.applyOptions(this.getOptions())}a.fromPoint=function(b){return new a(b.series.chart,null,{x:b.x,y:b.y,xAxis:b.series.xAxis,yAxis:b.series.yAxis})};a.pointToPixels=function(b,c){var d=b.series,g=d.chart,f=b.plotX,a=b.plotY;g.inverted&&(b.mock?(f=b.plotY,a=b.plotX):(f=g.plotWidth-b.plotY,a=g.plotHeight-b.plotX));d&&!c&&(b=d.getPlotBox(),f+=b.translateX,a+=b.translateY);return{x:f,y:a}};a.pointToOptions=function(b){return{x:b.x,y:b.y,xAxis:b.series.xAxis,yAxis:b.series.yAxis}};
21
- a.prototype.hasDynamicOptions=function(){return"function"===typeof this.options};a.prototype.getOptions=function(){return this.hasDynamicOptions()?this.options(this.target):this.options};a.prototype.applyOptions=function(b){this.command=b.command;this.setAxis(b,"x");this.setAxis(b,"y");this.refresh()};a.prototype.setAxis=function(b,c){c+="Axis";b=b[c];var d=this.series.chart;this.series[c]=b instanceof t?b:h(b)?d[c][b]||d.get(b):null};a.prototype.toAnchor=function(){var b=[this.plotX,this.plotY,0,
22
- 0];this.series.chart.inverted&&(b[0]=this.plotY,b[1]=this.plotX);return b};a.prototype.getLabelConfig=function(){return{x:this.x,y:this.y,point:this}};a.prototype.isInsidePlot=function(){var b=this.plotX,c=this.plotY,d=this.series.xAxis,g=this.series.yAxis,f={x:b,y:c,isInsidePlot:!0};d&&(f.isInsidePlot=h(b)&&0<=b&&b<=d.len);g&&(f.isInsidePlot=f.isInsidePlot&&h(c)&&0<=c&&c<=g.len);q(this.series.chart,"afterIsInsidePlot",f);return f.isInsidePlot};a.prototype.refresh=function(){var b=this.series,c=b.xAxis;
23
- b=b.yAxis;var d=this.getOptions();c?(this.x=d.x,this.plotX=c.toPixels(d.x,!0)):(this.x=null,this.plotX=d.x);b?(this.y=d.y,this.plotY=b.toPixels(d.y,!0)):(this.y=null,this.plotY=d.y);this.isInside=this.isInsidePlot()};a.prototype.translate=function(b,c,d,g){this.hasDynamicOptions()||(this.plotX+=d,this.plotY+=g,this.refreshOptions())};a.prototype.scale=function(b,c,d,g){if(!this.hasDynamicOptions()){var f=this.plotY*g;this.plotX=(1-d)*b+this.plotX*d;this.plotY=(1-g)*c+f;this.refreshOptions()}};a.prototype.rotate=
24
- function(b,c,d){if(!this.hasDynamicOptions()){var g=Math.cos(d);d=Math.sin(d);var f=this.plotX,a=this.plotY;f-=b;a-=c;this.plotX=f*g-a*d+b;this.plotY=f*d+a*g+c;this.refreshOptions()}};a.prototype.refreshOptions=function(){var b=this.series,c=b.xAxis;b=b.yAxis;this.x=this.options.x=c?this.options.x=c.toValue(this.plotX,!0):this.plotX;this.y=this.options.y=b?b.toValue(this.plotY,!0):this.plotY};return a}()});u(a,"Extensions/Annotations/Mixins/ControllableMixin.js",[a["Extensions/Annotations/ControlPoint.js"],
25
- a["Extensions/Annotations/MockPoint.js"],a["Core/Tooltip.js"],a["Core/Utilities.js"]],function(c,a,t,v){var h=v.isObject,l=v.isString,b=v.merge,x=v.splat;return{init:function(b,c,f){this.annotation=b;this.chart=b.chart;this.options=c;this.points=[];this.controlPoints=[];this.index=f;this.linkPoints();this.addControlPoints()},attr:function(){this.graphic.attr.apply(this.graphic,arguments)},getPointsOptions:function(){var b=this.options;return b.points||b.point&&x(b.point)},attrsFromOptions:function(b){var d=
26
- this.constructor.attrsMap,c={},a,r=this.chart.styledMode;for(a in b){var w=d[a];!w||r&&-1!==["fill","stroke","stroke-width"].indexOf(w)||(c[w]=b[a])}return c},anchor:function(d){var c=d.series.getPlotBox(),a=d.series.chart,k=d.mock?d.toAnchor():t.prototype.getAnchor.call({chart:d.series.chart},d);k={x:k[0]+(this.options.x||0),y:k[1]+(this.options.y||0),height:k[2]||0,width:k[3]||0};return{relativePosition:k,absolutePosition:b(k,{x:k.x+(d.mock?c.translateX:a.plotLeft),y:k.y+(d.mock?c.translateY:a.plotTop)})}},
27
- point:function(b,c){if(b&&b.series)return b;c&&null!==c.series||(h(b)?c=new a(this.chart,this,b):l(b)?c=this.chart.get(b)||null:"function"===typeof b&&(c=b.call(c,this),c=c.series?c:new a(this.chart,this,b)));return c},linkPoints:function(){var b=this.getPointsOptions(),c=this.points,a=b&&b.length||0,k;for(k=0;k<a;k++){var r=this.point(b[k],c[k]);if(!r){c.length=0;return}r.mock&&r.refresh();c[k]=r}return c},addControlPoints:function(){var d=this.options.controlPoints;(d||[]).forEach(function(a,f){a=
28
- b(this.options.controlPointOptions,a);a.index||(a.index=f);d[f]=a;this.controlPoints.push(new c(this.chart,this,a))},this)},shouldBeDrawn:function(){return!!this.points.length},render:function(b){this.controlPoints.forEach(function(b){b.render()})},redraw:function(b){this.controlPoints.forEach(function(c){c.redraw(b)})},transform:function(b,c,a,k,r){if(this.chart.inverted){var d=c;c=a;a=d}this.points.forEach(function(d,f){this.transformPoint(b,c,a,k,r,f)},this)},transformPoint:function(b,c,f,k,r,
29
- w){var d=this.points[w];d.mock||(d=this.points[w]=a.fromPoint(d));d[b](c,f,k,r)},translate:function(b,c){this.transform("translate",null,null,b,c)},translatePoint:function(b,c,a){this.transformPoint("translate",null,null,b,c,a)},translateShape:function(b,c,a){var d=this.annotation.chart,f=this.annotation.userOptions,g=d.annotations.indexOf(this.annotation);d=d.options.annotations[g];this.translatePoint(b,c,0);a&&this.translatePoint(b,c,1);d[this.collection][this.index].point=this.options.point;f[this.collection][this.index].point=
30
- this.options.point},rotate:function(b,c,a){this.transform("rotate",b,c,a)},scale:function(b,c,a,k){this.transform("scale",b,c,a,k)},setControlPointsVisibility:function(b){this.controlPoints.forEach(function(c){c.setVisibility(b)})},destroy:function(){this.graphic&&(this.graphic=this.graphic.destroy());this.tracker&&(this.tracker=this.tracker.destroy());this.controlPoints.forEach(function(b){b.destroy()});this.options=this.controlPoints=this.points=this.chart=null;this.annotation&&(this.annotation=
31
- null)},update:function(c){var a=this.annotation;c=b(!0,this.options,c);var d=this.graphic.parentGroup;this.destroy();this.constructor(a,c,this.index);this.render(d);this.redraw()}}});u(a,"Extensions/Annotations/Mixins/MarkerMixin.js",[a["Core/Chart/Chart.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Utilities.js"]],function(c,a,t){function h(b){return function(c){this.attr(b,"url(#"+c+")")}}var q=t.addEvent,l=t.defined,b=t.merge,x=t.uniqueKey,d={arrow:{tagName:"marker",attributes:{id:"arrow",
32
- refY:5,refX:9,markerWidth:10,markerHeight:10},children:[{tagName:"path",attributes:{d:"M 0 0 L 10 5 L 0 10 Z","stroke-width":0}}]},"reverse-arrow":{tagName:"marker",attributes:{id:"reverse-arrow",refY:5,refX:1,markerWidth:10,markerHeight:10},children:[{tagName:"path",attributes:{d:"M 0 5 L 10 0 L 10 10 Z","stroke-width":0}}]}};a.prototype.addMarker=function(c,a){var d={attributes:{id:c}},f={stroke:a.color||"none",fill:a.color||"rgba(0, 0, 0, 0.75)"};d.children=a.children&&a.children.map(function(c){return b(f,
33
- c)});a=b(!0,{attributes:{markerWidth:20,markerHeight:20,refX:0,refY:0,orient:"auto"}},a,d);a=this.definition(a);a.id=c;return a};a={markerEndSetter:h("marker-end"),markerStartSetter:h("marker-start"),setItemMarkers:function(c){var a=c.options,d=c.chart,r=d.options.defs,g=a.fill,h=l(g)&&"none"!==g?g:a.stroke;["markerStart","markerEnd"].forEach(function(f){var g=a[f],k;if(g){for(k in r){var w=r[k];if((g===(w.attributes&&w.attributes.id)||g===w.id)&&"marker"===w.tagName){var l=w;break}}l&&(g=c[f]=d.renderer.addMarker((a.id||
34
- x())+"-"+g,b(l,{color:h})),c.attr(f,g.getAttribute("id")))}})}};q(c,"afterGetContainer",function(){this.options.defs=b(d,this.options.defs||{})});return a});u(a,"Extensions/Annotations/Controllables/ControllablePath.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Core/Globals.js"],a["Extensions/Annotations/Mixins/MarkerMixin.js"],a["Core/Utilities.js"]],function(c,a,t,v){var h=v.extend,l="rgba(192,192,192,"+(a.svg?.0001:.002)+")";return function(){function b(b,a,g){this.addControlPoints=
35
- c.addControlPoints;this.anchor=c.anchor;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.setMarkers=t.setItemMarkers;this.transform=c.transform;this.transformPoint=c.transformPoint;this.translate=c.translate;this.translatePoint=c.translatePoint;this.translateShape=
36
- c.translateShape;this.update=c.update;this.type="path";this.init(b,a,g);this.collection="shapes"}b.prototype.toD=function(){var b=this.options.d;if(b)return"function"===typeof b?b.call(this):b;b=this.points;var c=b.length,a=c,f=b[0],k=a&&this.anchor(f).absolutePosition,r=0,w=[];if(k)for(w.push(["M",k.x,k.y]);++r<c&&a;)f=b[r],a=f.command||"L",k=this.anchor(f).absolutePosition,"M"===a?w.push([a,k.x,k.y]):"L"===a?w.push([a,k.x,k.y]):"Z"===a&&w.push([a]),a=f.series.visible;return a?this.chart.renderer.crispLine(w,
37
- this.graphic.strokeWidth()):null};b.prototype.shouldBeDrawn=function(){return c.shouldBeDrawn.call(this)||!!this.options.d};b.prototype.render=function(b){var a=this.options,g=this.attrsFromOptions(a);this.graphic=this.annotation.chart.renderer.path([["M",0,0]]).attr(g).add(b);a.className&&this.graphic.addClass(a.className);this.tracker=this.annotation.chart.renderer.path([["M",0,0]]).addClass("highcharts-tracker-line").attr({zIndex:2}).add(b);this.annotation.chart.styledMode||this.tracker.attr({"stroke-linejoin":"round",
38
- stroke:l,fill:l,"stroke-width":this.graphic.strokeWidth()+2*a.snap});c.render.call(this);h(this.graphic,{markerStartSetter:t.markerStartSetter,markerEndSetter:t.markerEndSetter});this.setMarkers(this)};b.prototype.redraw=function(b){var a=this.toD(),g=b?"animate":"attr";a?(this.graphic[g]({d:a}),this.tracker[g]({d:a})):(this.graphic.attr({d:"M 0 -9000000000"}),this.tracker.attr({d:"M 0 -9000000000"}));this.graphic.placed=this.tracker.placed=!!a;c.redraw.call(this,b)};b.attrsMap={dashStyle:"dashstyle",
39
- strokeWidth:"stroke-width",stroke:"stroke",fill:"fill",zIndex:"zIndex"};return b}()});u(a,"Extensions/Annotations/Controllables/ControllableRect.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(c,a,t){var h=t.merge;return function(){function q(a,b,h){this.addControlPoints=c.addControlPoints;this.anchor=c.anchor;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;
40
- this.getPointsOptions=c.getPointsOptions;this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;this.transform=c.transform;this.transformPoint=c.transformPoint;this.translatePoint=c.translatePoint;this.translateShape=c.translateShape;this.update=c.update;this.type="rect";this.translate=c.translateShape;this.init(a,b,h);this.collection="shapes"}q.prototype.render=
41
- function(a){var b=this.attrsFromOptions(this.options);this.graphic=this.annotation.chart.renderer.rect(0,-9E9,0,0).attr(b).add(a);c.render.call(this)};q.prototype.redraw=function(a){var b=this.anchor(this.points[0]).absolutePosition;if(b)this.graphic[a?"animate":"attr"]({x:b.x,y:b.y,width:this.options.width,height:this.options.height});else this.attr({x:0,y:-9E9});this.graphic.placed=!!b;c.redraw.call(this,a)};q.attrsMap=h(a.attrsMap,{width:"width",height:"height"});return q}()});u(a,"Extensions/Annotations/Controllables/ControllableCircle.js",
42
- [a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(c,a,t){var h=t.merge;return function(){function q(a,b,h){this.addControlPoints=c.addControlPoints;this.anchor=c.anchor;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=
43
- c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;this.transform=c.transform;this.transformPoint=c.transformPoint;this.translatePoint=c.translatePoint;this.translateShape=c.translateShape;this.update=c.update;this.type="circle";this.translate=c.translateShape;this.init(a,b,h);this.collection="shapes"}q.prototype.render=function(a){var b=this.attrsFromOptions(this.options);this.graphic=this.annotation.chart.renderer.circle(0,-9E9,0).attr(b).add(a);c.render.call(this)};q.prototype.redraw=
44
- function(a){var b=this.anchor(this.points[0]).absolutePosition;if(b)this.graphic[a?"animate":"attr"]({x:b.x,y:b.y,r:this.options.r});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!b;c.redraw.call(this,a)};q.prototype.setRadius=function(c){this.options.r=c};q.attrsMap=h(a.attrsMap,{r:"r"});return q}()});u(a,"Extensions/Annotations/Controllables/ControllableEllipse.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],
45
- a["Core/Utilities.js"]],function(c,a,t){var h=t.merge,q=t.defined;return function(){function l(b,a,d){this.addControlPoints=c.addControlPoints;this.anchor=c.anchor;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.linkPoints=c.linkPoints;this.point=c.point;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;this.transform=c.transform;this.translatePoint=c.translatePoint;
46
- this.transformPoint=c.transformPoint;this.type="ellipse";this.init(b,a,d);this.collection="shapes"}l.prototype.init=function(b,a,d){q(a.yAxis)&&a.points.forEach(function(b){b.yAxis=a.yAxis});q(a.xAxis)&&a.points.forEach(function(b){b.xAxis=a.xAxis});c.init.call(this,b,a,d)};l.prototype.render=function(b){this.graphic=this.annotation.chart.renderer.createElement("ellipse").attr(this.attrsFromOptions(this.options)).add(b);c.render.call(this)};l.prototype.translate=function(b,a){c.translateShape.call(this,
47
- b,a,!0)};l.prototype.getDistanceFromLine=function(b,c,a,g){return Math.abs((c.y-b.y)*a-(c.x-b.x)*g+c.x*b.y-c.y*b.x)/Math.sqrt((c.y-b.y)*(c.y-b.y)+(c.x-b.x)*(c.x-b.x))};l.prototype.getAttrs=function(b,c){var a=b.x,g=b.y,f=c.x,k=c.y;c=(a+f)/2;b=(g+k)/2;var r=Math.sqrt((a-f)*(a-f)/4+(g-k)*(g-k)/4);g=180*Math.atan((k-g)/(f-a))/Math.PI;c<a&&(g+=180);a=this.getRY();return{cx:c,cy:b,rx:r,ry:a,angle:g}};l.prototype.getRY=function(){var b=this.getYAxis();return q(b)?Math.abs(b.toPixels(this.options.ry)-b.toPixels(0)):
48
- this.options.ry};l.prototype.getYAxis=function(){return this.chart.yAxis[this.options.yAxis]};l.prototype.getAbsolutePosition=function(b){return this.anchor(b).absolutePosition};l.prototype.redraw=function(b){var a=this.getAbsolutePosition(this.points[0]),d=this.getAbsolutePosition(this.points[1]);d=this.getAttrs(a,d);if(a)this.graphic[b?"animate":"attr"]({cx:d.cx,cy:d.cy,rx:d.rx,ry:d.ry,rotation:d.angle,rotationOriginX:d.cx,rotationOriginY:d.cy});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=
49
- !!a;c.redraw.call(this,b)};l.prototype.setYRadius=function(b){this.options.ry=b;this.annotation.userOptions.shapes[0].ry=b;this.annotation.options.shapes[0].ry=b};l.attrsMap=h(a.attrsMap,{ry:"ry"});return l}()});u(a,"Extensions/Annotations/Controllables/ControllableLabel.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Core/FormatUtilities.js"],a["Extensions/Annotations/MockPoint.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Tooltip.js"],a["Core/Utilities.js"]],function(c,a,t,
50
- v,q,l){var b=a.format;a=v.prototype.symbols;var h=l.extend,d=l.isNumber,g=l.pick;l=function(){function a(b,a,d){this.addControlPoints=c.addControlPoints;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;this.transform=c.transform;
51
- this.transformPoint=c.transformPoint;this.translateShape=c.translateShape;this.update=c.update;this.init(b,a,d);this.collection="labels"}a.alignedPosition=function(b,a){var c=b.align,d=b.verticalAlign,f=(a.x||0)+(b.x||0),r=(a.y||0)+(b.y||0),g,k;"right"===c?g=1:"center"===c&&(g=2);g&&(f+=(a.width-(b.width||0))/g);"bottom"===d?k=1:"middle"===d&&(k=2);k&&(r+=(a.height-(b.height||0))/k);return{x:Math.round(f),y:Math.round(r)}};a.justifiedOptions=function(b,a,c,d){var f=c.align,g=c.verticalAlign,k=a.box?
52
- 0:a.padding||0,r=a.getBBox();a={align:f,verticalAlign:g,x:c.x,y:c.y,width:a.width,height:a.height};c=(d.x||0)-b.plotLeft;d=(d.y||0)-b.plotTop;var h=c+k;0>h&&("right"===f?a.align="left":a.x=(a.x||0)-h);h=c+r.width-k;h>b.plotWidth&&("left"===f?a.align="right":a.x=(a.x||0)+b.plotWidth-h);h=d+k;0>h&&("bottom"===g?a.verticalAlign="top":a.y=(a.y||0)-h);h=d+r.height-k;h>b.plotHeight&&("top"===g?a.verticalAlign="bottom":a.y=(a.y||0)+b.plotHeight-h);return a};a.prototype.translatePoint=function(b,a){c.translatePoint.call(this,
53
- b,a,0)};a.prototype.translate=function(b,a){var c=this.annotation.chart,d=this.annotation.userOptions,f=c.annotations.indexOf(this.annotation);f=c.options.annotations[f];c.inverted&&(c=b,b=a,a=c);this.options.x+=b;this.options.y+=a;f[this.collection][this.index].x=this.options.x;f[this.collection][this.index].y=this.options.y;d[this.collection][this.index].x=this.options.x;d[this.collection][this.index].y=this.options.y};a.prototype.render=function(b){var d=this.options,f=this.attrsFromOptions(d),
54
- g=d.style;this.graphic=this.annotation.chart.renderer.label("",0,-9999,d.shape,null,null,d.useHTML,null,"annotation-label").attr(f).add(b);this.annotation.chart.styledMode||("contrast"===g.color&&(g.color=this.annotation.chart.renderer.getContrast(-1<a.shapesWithoutBackground.indexOf(d.shape)?"#FFFFFF":d.backgroundColor)),this.graphic.css(d.style).shadow(d.shadow));d.className&&this.graphic.addClass(d.className);this.graphic.labelrank=d.labelrank;c.render.call(this)};a.prototype.redraw=function(a){var d=
55
- this.options,f=this.text||d.format||d.text,g=this.graphic,h=this.points[0];g.attr({text:f?b(f,h.getLabelConfig(),this.annotation.chart):d.formatter.call(h,this)});d=this.anchor(h);(f=this.position(d))?(g.alignAttr=f,f.anchorX=d.absolutePosition.x,f.anchorY=d.absolutePosition.y,g[a?"animate":"attr"](f)):g.attr({x:0,y:-9999});g.placed=!!f;c.redraw.call(this,a)};a.prototype.anchor=function(b){var a=c.anchor.apply(this,arguments),d=this.options.x||0,f=this.options.y||0;a.absolutePosition.x-=d;a.absolutePosition.y-=
56
- f;a.relativePosition.x-=d;a.relativePosition.y-=f;return a};a.prototype.position=function(b){var c=this.graphic,d=this.annotation.chart,f=this.points[0],k=this.options,l=b.absolutePosition,v=b.relativePosition,y=f.series.visible&&t.prototype.isInsidePlot.call(f);b=c.width;b=void 0===b?0:b;var u=c.height;u=void 0===u?0:u;if(y){if(k.distance)var x=q.prototype.getPosition.call({chart:d,distance:g(k.distance,16)},b,u,{plotX:v.x,plotY:v.y,negative:f.negative,ttBelow:f.ttBelow,h:v.height||v.width});else k.positioner?
57
- x=k.positioner.call(this):(f={x:l.x,y:l.y,width:0,height:0},x=a.alignedPosition(h(k,{width:b,height:u}),f),"justify"===this.options.overflow&&(x=a.alignedPosition(a.justifiedOptions(d,c,k,x),f)));k.crop&&(c=x.x-d.plotLeft,k=x.y-d.plotTop,y=d.isInsidePlot(c,k)&&d.isInsidePlot(c+b,k+u))}return y?x:null};a.attrsMap={backgroundColor:"fill",borderColor:"stroke",borderWidth:"stroke-width",zIndex:"zIndex",borderRadius:"r",padding:"padding"};a.shapesWithoutBackground=["connector"];return a}();a.connector=
58
- function(b,a,c,g,h){var f=h&&h.anchorX;h=h&&h.anchorY;var k=c/2;if(d(f)&&d(h)){var l=[["M",f,h]];var q=a-h;0>q&&(q=-g-q);q<c&&(k=f<b+c/2?q:c-q);h>a+g?l.push(["L",b+k,a+g]):h<a?l.push(["L",b+k,a]):f<b?l.push(["L",b,a+g/2]):f>b+c&&l.push(["L",b+c,a+g/2])}return l||[]};return l});u(a,"Extensions/Annotations/Controllables/ControllableImage.js",[a["Extensions/Annotations/Controllables/ControllableLabel.js"],a["Extensions/Annotations/Mixins/ControllableMixin.js"]],function(a,h){return function(){function c(a,
59
- c,l){this.addControlPoints=h.addControlPoints;this.anchor=h.anchor;this.attr=h.attr;this.attrsFromOptions=h.attrsFromOptions;this.destroy=h.destroy;this.getPointsOptions=h.getPointsOptions;this.init=h.init;this.linkPoints=h.linkPoints;this.point=h.point;this.rotate=h.rotate;this.scale=h.scale;this.setControlPointsVisibility=h.setControlPointsVisibility;this.shouldBeDrawn=h.shouldBeDrawn;this.transform=h.transform;this.transformPoint=h.transformPoint;this.translatePoint=h.translatePoint;this.translateShape=
60
- h.translateShape;this.update=h.update;this.type="image";this.translate=h.translateShape;this.init(a,c,l);this.collection="shapes"}c.prototype.render=function(a){var c=this.attrsFromOptions(this.options),l=this.options;this.graphic=this.annotation.chart.renderer.image(l.src,0,-9E9,l.width,l.height).attr(c).add(a);this.graphic.width=l.width;this.graphic.height=l.height;h.render.call(this)};c.prototype.redraw=function(c){var q=this.anchor(this.points[0]);if(q=a.prototype.position.call(this,q))this.graphic[c?
61
- "animate":"attr"]({x:q.x,y:q.y});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!q;h.redraw.call(this,c)};c.attrsMap={width:"width",height:"height",zIndex:"zIndex"};return c}()});u(a,"Extensions/Annotations/Annotations.js",[a["Core/Animation/AnimationUtilities.js"],a["Core/Chart/Chart.js"],a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllableRect.js"],a["Extensions/Annotations/Controllables/ControllableCircle.js"],a["Extensions/Annotations/Controllables/ControllableEllipse.js"],
62
- a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Extensions/Annotations/Controllables/ControllableImage.js"],a["Extensions/Annotations/Controllables/ControllableLabel.js"],a["Extensions/Annotations/ControlPoint.js"],a["Extensions/Annotations/Mixins/EventEmitterMixin.js"],a["Core/Globals.js"],a["Extensions/Annotations/MockPoint.js"],a["Core/Pointer.js"],a["Core/Utilities.js"]],function(a,h,t,v,q,l,b,u,d,g,f,k,r,w,z){var c=a.getDeferredAnimation;a=h.prototype;var x=z.addEvent,E=z.defined,
63
- y=z.destroyObjectProperties,C=z.erase,G=z.extend,n=z.find,m=z.fireEvent,e=z.merge,p=z.pick,A=z.splat;z=z.wrap;var B=function(){function a(a,b){this.annotation=void 0;this.coll="annotations";this.shapesGroup=this.labelsGroup=this.labelCollector=this.group=this.graphic=this.animationConfig=this.collection=void 0;this.chart=a;this.points=[];this.controlPoints=[];this.coll="annotations";this.labels=[];this.shapes=[];this.options=e(this.defaultOptions,b);this.userOptions=b;b=this.getLabelsAndShapesOptions(this.options,
64
- b);this.options.labels=b.labels;this.options.shapes=b.shapes;this.init(a,this.options)}a.prototype.init=function(){var a=this.chart,b=this.options.animation;this.linkPoints();this.addControlPoints();this.addShapes();this.addLabels();this.setLabelCollector();this.animationConfig=c(a,b)};a.prototype.getLabelsAndShapesOptions=function(a,b){var c={};["labels","shapes"].forEach(function(p){a[p]&&(c[p]=b[p]?A(b[p]).map(function(b,c){return e(a[p][c],b)}):a[p])});return c};a.prototype.addShapes=function(){(this.options.shapes||
65
- []).forEach(function(a,b){a=this.initShape(a,b);e(!0,this.options.shapes[b],a.options)},this)};a.prototype.addLabels=function(){(this.options.labels||[]).forEach(function(a,b){a=this.initLabel(a,b);e(!0,this.options.labels[b],a.options)},this)};a.prototype.addClipPaths=function(){this.setClipAxes();this.clipXAxis&&this.clipYAxis&&this.options.crop&&(this.clipRect=this.chart.renderer.clipRect(this.getClipBox()))};a.prototype.setClipAxes=function(){var a=this.chart.xAxis,b=this.chart.yAxis,c=(this.options.labels||
66
- []).concat(this.options.shapes||[]).reduce(function(c,e){e=e&&(e.point||e.points&&e.points[0]);return[a[e&&e.xAxis]||c[0],b[e&&e.yAxis]||c[1]]},[]);this.clipXAxis=c[0];this.clipYAxis=c[1]};a.prototype.getClipBox=function(){if(this.clipXAxis&&this.clipYAxis)return{x:this.clipXAxis.left,y:this.clipYAxis.top,width:this.clipXAxis.width,height:this.clipYAxis.height}};a.prototype.setLabelCollector=function(){var a=this;a.labelCollector=function(){return a.labels.reduce(function(a,b){b.options.allowOverlap||
67
- a.push(b.graphic);return a},[])};a.chart.labelCollectors.push(a.labelCollector)};a.prototype.setOptions=function(a){this.options=e(this.defaultOptions,a)};a.prototype.redraw=function(a){this.linkPoints();this.graphic||this.render();this.clipRect&&this.clipRect.animate(this.getClipBox());this.redrawItems(this.shapes,a);this.redrawItems(this.labels,a);t.redraw.call(this,a)};a.prototype.redrawItems=function(a,b){for(var c=a.length;c--;)this.redrawItem(a[c],b)};a.prototype.renderItems=function(a){for(var b=
68
- a.length;b--;)this.renderItem(a[b])};a.prototype.render=function(){var a=this.chart.renderer;this.graphic=a.g("annotation").attr({opacity:0,zIndex:this.options.zIndex,visibility:this.options.visible?"visible":"hidden"}).add();this.shapesGroup=a.g("annotation-shapes").add(this.graphic);this.options.crop&&this.shapesGroup.clip(this.chart.plotBoxClip);this.labelsGroup=a.g("annotation-labels").attr({translateX:0,translateY:0}).add(this.graphic);this.addClipPaths();this.clipRect&&this.graphic.clip(this.clipRect);
69
- this.renderItems(this.shapes);this.renderItems(this.labels);this.addEvents();t.render.call(this)};a.prototype.setVisibility=function(a){var b=this.options,c=this.chart.navigationBindings;a=p(a,!b.visible);this.graphic.attr("visibility",a?"visible":"hidden");a||(this.setControlPointsVisibility(!1),c.activeAnnotation===this&&c.popup&&"annotation-toolbar"===c.popup.formType&&m(c,"closePopup"));b.visible=a};a.prototype.setControlPointsVisibility=function(a){var b=function(b){b.setControlPointsVisibility(a)};
70
- t.setControlPointsVisibility.call(this,a);this.shapes.forEach(b);this.labels.forEach(b)};a.prototype.destroy=function(){var a=this.chart,b=function(a){a.destroy()};this.labels.forEach(b);this.shapes.forEach(b);this.clipYAxis=this.clipXAxis=null;C(a.labelCollectors,this.labelCollector);f.destroy.call(this);t.destroy.call(this);y(this,a)};a.prototype.remove=function(){return this.chart.removeAnnotation(this)};a.prototype.update=function(a,b){var c=this.chart,d=this.getLabelsAndShapesOptions(this.userOptions,
71
- a),A=c.annotations.indexOf(this);a=e(!0,this.userOptions,a);a.labels=d.labels;a.shapes=d.shapes;this.destroy();this.constructor(c,a);c.options.annotations[A]=a;this.isUpdating=!0;p(b,!0)&&c.redraw();m(this,"afterUpdate");this.isUpdating=!1};a.prototype.initShape=function(b,c){b=e(this.options.shapeOptions,{controlPointOptions:this.options.controlPointOptions},b);c=new a.shapesMap[b.type](this,b,c);c.itemType="shape";this.shapes.push(c);return c};a.prototype.initLabel=function(a,b){a=e(this.options.labelOptions,
72
- {controlPointOptions:this.options.controlPointOptions},a);b=new d(this,a,b);b.itemType="label";this.labels.push(b);return b};a.prototype.redrawItem=function(a,b){a.linkPoints();a.shouldBeDrawn()?(a.graphic||this.renderItem(a),a.redraw(p(b,!0)&&a.graphic.placed),a.points.length&&this.adjustVisibility(a)):this.destroyItem(a)};a.prototype.adjustVisibility=function(a){var b=!1,c=a.graphic;a.points.forEach(function(a){!1!==a.series.visible&&!1!==a.visible&&(b=!0)});b?"hidden"===c.visibility&&c.show():
73
- c.hide()};a.prototype.destroyItem=function(a){C(this[a.itemType+"s"],a);a.destroy()};a.prototype.renderItem=function(a){a.render("label"===a.itemType?this.labelsGroup:this.shapesGroup)};a.ControlPoint=g;a.MockPoint=r;a.shapesMap={rect:v,circle:q,ellipse:l,path:b,image:u};a.types={};return a}();e(!0,B.prototype,t,f,e(B.prototype,{nonDOMEvents:["add","afterUpdate","drag","remove"],defaultOptions:{visible:!0,animation:{},crop:!0,draggable:"xy",labelOptions:{align:"center",allowOverlap:!1,backgroundColor:"rgba(0, 0, 0, 0.75)",
74
- borderColor:"#000000",borderRadius:3,borderWidth:1,className:"highcharts-no-tooltip",crop:!1,formatter:function(){return E(this.y)?this.y:"Annotation label"},includeInDataExport:!0,overflow:"justify",padding:5,shadow:!1,shape:"callout",style:{fontSize:"11px",fontWeight:"normal",color:"contrast"},useHTML:!1,verticalAlign:"bottom",x:0,y:-16},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1,fill:"rgba(0, 0, 0, 0.75)",r:0,snap:2},controlPointOptions:{symbol:"circle",width:10,height:10,style:{cursor:"pointer",
75
- fill:"#ffffff",stroke:"#000000","stroke-width":2},visible:!1,events:{}},events:{},zIndex:6}}));k.extendAnnotation=function(a,b,c,p){b=b||B;G(a.prototype,e(b.prototype,c));a.prototype.defaultOptions=e(a.prototype.defaultOptions,p||{})};G(a,{initAnnotation:function(a){a=new (B.types[a.type]||B)(this,a);this.annotations.push(a);return a},addAnnotation:function(a,b){a=this.initAnnotation(a);this.options.annotations.push(a.options);p(b,!0)&&(a.redraw(),a.graphic.attr({opacity:1}));return a},removeAnnotation:function(a){var b=
76
- this.annotations,c="annotations"===a.coll?a:n(b,function(b){return b.options.id===a});c&&(m(c,"remove"),C(this.options.annotations,c.options),C(b,c),c.destroy())},drawAnnotations:function(){this.plotBoxClip.attr(this.plotBox);this.annotations.forEach(function(a){a.redraw();a.graphic.animate({opacity:1},a.animationConfig)})}});a.collectionsWithUpdate.push("annotations");a.collectionsWithInit.annotations=[a.addAnnotation];x(h,"afterInit",function(){this.annotations=[];this.options.annotations||(this.options.annotations=
77
- [])});a.callbacks.push(function(a){a.plotBoxClip=this.renderer.clipRect(this.plotBox);a.controlPointsGroup=a.renderer.g("control-points").attr({zIndex:99}).clip(a.plotBoxClip).add();a.options.annotations.forEach(function(b,c){if(!a.annotations.some(function(a){return a.options===b})){var e=a.initAnnotation(b);a.options.annotations[c]=e.options}});a.drawAnnotations();x(a,"redraw",a.drawAnnotations);x(a,"destroy",function(){a.plotBoxClip.destroy();a.controlPointsGroup.destroy()});x(a,"exportData",function(b){var c=
78
- (this.options.exporting&&this.options.exporting.csv||{}).columnHeaderFormatter,e=!b.dataRows[1].xValues,p=a.options.lang&&a.options.lang.exportData&&a.options.lang.exportData.annotationHeader,d=function(a){if(c){var b=c(a);if(!1!==b)return b}b=p+" "+a;return e?{columnTitle:b,topLevelColumnTitle:b}:b},A=b.dataRows[0].length,B=a.options.exporting&&a.options.exporting.csv&&a.options.exporting.csv.annotations&&a.options.exporting.csv.annotations.itemDelimiter,f=a.options.exporting&&a.options.exporting.csv&&
79
- a.options.exporting.csv.annotations&&a.options.exporting.csv.annotations.join;a.annotations.forEach(function(a){a.options.labelOptions.includeInDataExport&&a.labels.forEach(function(a){if(a.options.text){var c=a.options.text;a.points.forEach(function(a){var e=a.x,p=a.series.xAxis?a.series.xAxis.options.index:-1,d=!1;if(-1===p){a=b.dataRows[0].length;for(var m=Array(a),n=0;n<a;++n)m[n]="";m.push(c);m.xValues=[];m.xValues[p]=e;b.dataRows.push(m);d=!0}d||b.dataRows.forEach(function(a){!d&&a.xValues&&
80
- void 0!==p&&e===a.xValues[p]&&(f&&a.length>A?a[a.length-1]+=B+c:a.push(c),d=!0)});if(!d){a=b.dataRows[0].length;m=Array(a);for(n=0;n<a;++n)m[n]="";m[0]=e;m.push(c);m.xValues=[];void 0!==p&&(m.xValues[p]=e);b.dataRows.push(m)}})}})});var m=0;b.dataRows.forEach(function(a){m=Math.max(m,a.length)});for(var n=m-b.dataRows[0].length,g=0;g<n;g++){var H=d(g+1);e?(b.dataRows[0].push(H.topLevelColumnTitle),b.dataRows[1].push(H.columnTitle)):b.dataRows[0].push(H)}})});z(w.prototype,"onContainerMouseDown",function(a){this.chart.hasDraggedAnnotation||
81
- a.apply(this,Array.prototype.slice.call(arguments,1))});k.Annotation=B;"";return B});u(a,"Core/Chart/ChartNavigationComposition.js",[],function(){var a;(function(a){a.compose=function(a){a.navigation||(a.navigation=new c(a));return a};var c=function(){function a(a){this.updates=[];this.chart=a}a.prototype.addUpdate=function(a){this.chart.navigation.updates.push(a)};a.prototype.update=function(a,c){var b=this;this.updates.forEach(function(h){h.call(b.chart,a,c)})};return a}();a.Additions=c})(a||(a=
82
- {}));return a});u(a,"Extensions/Annotations/NavigationBindings.js",[a["Extensions/Annotations/Annotations.js"],a["Core/Chart/Chart.js"],a["Core/Chart/ChartNavigationComposition.js"],a["Core/FormatUtilities.js"],a["Core/Globals.js"],a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,h,t,v,q,l,b){function c(a,b){var c=n.Element.prototype,e=c.matches||c.msMatchesSelector||c.webkitMatchesSelector,p=null;if(c.closest)p=c.closest.call(a,b);else{do{if(e.call(a,b))return a;a=a.parentElement||
83
- a.parentNode}while(null!==a&&1===a.nodeType)}return p}function d(a){var b=a.prototype.defaultOptions.events&&a.prototype.defaultOptions.events.click;E(!0,a.prototype.defaultOptions.events,{click:function(a){var c=this,e=c.chart.navigationBindings,p=e.activeAnnotation;b&&b.call(c,a);p!==c?(e.deselectAnnotation(),e.activeAnnotation=c,c.setControlPointsVisibility(!0),r(e,"showPopup",{annotation:c,formType:"annotation-toolbar",options:e.annotationToFields(c),onSubmit:function(a){var b={};"remove"===a.actionType?
84
- (e.activeAnnotation=!1,e.chart.removeAnnotation(c)):(e.fieldsToOptions(a.fields,b),e.deselectAnnotation(),a=b.typeOptions,"measure"===c.options.type&&(a.crosshairY.enabled=0!==a.crosshairY.strokeWidth,a.crosshairX.enabled=0!==a.crosshairX.strokeWidth),c.update(b))}})):r(e,"closePopup");a.activeAnnotation=!0}})}var g=v.format;v=l.setOptions;var f=b.addEvent,k=b.attr,r=b.fireEvent,w=b.isArray,u=b.isFunction,D=b.isNumber,F=b.isObject,E=b.merge,y=b.objectEach,C=b.pick,G=q.doc,n=q.win,m=function(){function a(a,
85
- b){this.selectedButton=this.boundClassNames=void 0;this.chart=a;this.options=b;this.eventsToUnbind=[];this.container=G.getElementsByClassName(this.options.bindingsClassName||"")}a.prototype.initEvents=function(){var a=this,b=a.chart,c=a.container,e=a.options;a.boundClassNames={};y(e.bindings||{},function(b){a.boundClassNames[b.className]=b});[].forEach.call(c,function(b){a.eventsToUnbind.push(f(b,"click",function(c){var e=a.getButtonEvents(b,c);e&&-1===e.button.className.indexOf("highcharts-disabled-btn")&&
10
+ (function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/annotations",["highcharts"],function(u){a(u);a.Highcharts=u;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function u(c,a,t,v){c.hasOwnProperty(a)||(c[a]=v.apply(null,t),"function"===typeof CustomEvent&&window.dispatchEvent(new CustomEvent("HighchartsModuleLoaded",{detail:{path:a,module:c[a]}})))}a=a?a._modules:{};
11
+ u(a,"Extensions/Annotations/Mixins/EventEmitterMixin.js",[a["Core/Globals.js"],a["Core/Utilities.js"]],function(c,a){var h=a.addEvent,v=a.fireEvent,q=a.objectEach,l=a.pick,b=a.removeEvent;return{addEvents:function(){var b=this,d=function(d){h(d,c.isTouchDevice?"touchstart":"mousedown",function(d){b.onMouseDown(d)},{passive:!1})};d(this.graphic.element);(b.labels||[]).forEach(function(b){b.options.useHTML&&b.graphic.text&&d(b.graphic.text.element)});q(b.options.events,function(d,g){var f=function(f){"click"===
12
+ g&&b.cancelClick||d.call(b,b.chart.pointer.normalize(f),b.target)};if(-1===(b.nonDOMEvents||[]).indexOf(g))b.graphic.on(g,f);else h(b,g,f,{passive:!1})});if(b.options.draggable&&(h(b,"drag",b.onDrag),!b.graphic.renderer.styledMode)){var g={cursor:{x:"ew-resize",y:"ns-resize",xy:"move"}[b.options.draggable]};b.graphic.css(g);(b.labels||[]).forEach(function(d){d.options.useHTML&&d.graphic.text&&d.graphic.text.css(g)})}b.isUpdating||v(b,"add")},removeDocEvents:function(){this.removeDrag&&(this.removeDrag=
13
+ this.removeDrag());this.removeMouseUp&&(this.removeMouseUp=this.removeMouseUp())},onMouseDown:function(b){var d=this,g=d.chart.pointer;b.preventDefault&&b.preventDefault();if(2!==b.button){b=g.normalize(b);var f=b.chartX;var x=b.chartY;d.cancelClick=!1;d.chart.hasDraggedAnnotation=!0;d.removeDrag=h(c.doc,c.isTouchDevice?"touchmove":"mousemove",function(b){d.hasDragged=!0;b=g.normalize(b);b.prevChartX=f;b.prevChartY=x;v(d,"drag",b);f=b.chartX;x=b.chartY},c.isTouchDevice?{passive:!1}:void 0);d.removeMouseUp=
14
+ h(c.doc,c.isTouchDevice?"touchend":"mouseup",function(b){var g=l(d.target&&d.target.annotation,d.target);g&&(g.cancelClick=d.hasDragged);d.cancelClick=d.hasDragged;d.hasDragged=!1;d.chart.hasDraggedAnnotation=!1;v(l(g,d),"afterUpdate");d.onMouseUp(b)},c.isTouchDevice?{passive:!1}:void 0)}},onMouseUp:function(b){var d=this.chart;b=this.target||this;var g=d.options.annotations;d=d.annotations.indexOf(b);this.removeDocEvents();g[d]=b.options},onDrag:function(b){if(this.chart.isInsidePlot(b.chartX-this.chart.plotLeft,
15
+ b.chartY-this.chart.plotTop,{visiblePlotOnly:!0})){var d=this.mouseMoveToTranslation(b);"x"===this.options.draggable&&(d.y=0);"y"===this.options.draggable&&(d.x=0);this.points.length?this.translate(d.x,d.y):(this.shapes.forEach(function(b){b.translate(d.x,d.y)}),this.labels.forEach(function(b){b.translate(d.x,d.y)}));this.redraw(!1)}},mouseMoveToRadians:function(b,d,g){var f=b.prevChartY-g,c=b.prevChartX-d;g=b.chartY-g;b=b.chartX-d;this.chart.inverted&&(d=c,c=f,f=d,d=b,b=g,g=d);return Math.atan2(g,
16
+ b)-Math.atan2(f,c)},mouseMoveToTranslation:function(b){var d=b.chartX-b.prevChartX;b=b.chartY-b.prevChartY;if(this.chart.inverted){var g=b;b=d;d=g}return{x:d,y:b}},mouseMoveToScale:function(b,d,g){d=(b.chartX-d||1)/(b.prevChartX-d||1);b=(b.chartY-g||1)/(b.prevChartY-g||1);this.chart.inverted&&(g=b,b=d,d=g);return{x:d,y:b}},destroy:function(){this.removeDocEvents();b(this);this.hcEvents=null}}});u(a,"Extensions/Annotations/ControlPoint.js",[a["Core/Utilities.js"],a["Extensions/Annotations/Mixins/EventEmitterMixin.js"]],
17
+ function(c,a){var h=c.merge,v=c.pick;return function(){function c(c,b,x,d){this.addEvents=a.addEvents;this.graphic=void 0;this.mouseMoveToRadians=a.mouseMoveToRadians;this.mouseMoveToScale=a.mouseMoveToScale;this.mouseMoveToTranslation=a.mouseMoveToTranslation;this.onDrag=a.onDrag;this.onMouseDown=a.onMouseDown;this.onMouseUp=a.onMouseUp;this.removeDocEvents=a.removeDocEvents;this.nonDOMEvents=["drag"];this.chart=c;this.target=b;this.options=x;this.index=v(x.index,d)}c.prototype.setVisibility=function(c){this.graphic[c?
18
+ "show":"hide"]();this.options.visible=c};c.prototype.render=function(){var c=this.chart,b=this.options;this.graphic=c.renderer.symbol(b.symbol,0,0,b.width,b.height).add(c.controlPointsGroup).css(b.style);this.setVisibility(b.visible);this.addEvents()};c.prototype.redraw=function(c){this.graphic[c?"animate":"attr"](this.options.positioner.call(this,this.target))};c.prototype.destroy=function(){a.destroy.call(this);this.graphic&&(this.graphic=this.graphic.destroy());this.options=this.target=this.chart=
19
+ null};c.prototype.update=function(c){var b=this.chart,a=this.target,d=this.index;c=h(!0,this.options,c);this.destroy();this.constructor(b,a,c,d);this.render(b.controlPointsGroup);this.redraw()};return c}()});u(a,"Extensions/Annotations/MockPoint.js",[a["Core/Series/Series.js"],a["Core/Utilities.js"],a["Core/Axis/Axis.js"]],function(c,a,t){var h=a.defined,q=a.fireEvent;return function(){function a(b,a,d){this.y=this.x=this.ttBelow=this.plotY=this.plotX=this.negative=this.isInside=void 0;this.mock=
20
+ !0;this.series={visible:!0,chart:b,getPlotBox:c.prototype.getPlotBox};this.target=a||null;this.options=d;this.applyOptions(this.getOptions())}a.fromPoint=function(b){return new a(b.series.chart,null,{x:b.x,y:b.y,xAxis:b.series.xAxis,yAxis:b.series.yAxis})};a.pointToPixels=function(b,c){var d=b.series,g=d.chart,f=b.plotX,a=b.plotY;g.inverted&&(b.mock?(f=b.plotY,a=b.plotX):(f=g.plotWidth-b.plotY,a=g.plotHeight-b.plotX));d&&!c&&(b=d.getPlotBox(),f+=b.translateX,a+=b.translateY);return{x:f,y:a}};a.pointToOptions=
21
+ function(b){return{x:b.x,y:b.y,xAxis:b.series.xAxis,yAxis:b.series.yAxis}};a.prototype.hasDynamicOptions=function(){return"function"===typeof this.options};a.prototype.getOptions=function(){return this.hasDynamicOptions()?this.options(this.target):this.options};a.prototype.applyOptions=function(b){this.command=b.command;this.setAxis(b,"x");this.setAxis(b,"y");this.refresh()};a.prototype.setAxis=function(b,c){c+="Axis";b=b[c];var d=this.series.chart;this.series[c]=b instanceof t?b:h(b)?d[c][b]||d.get(b):
22
+ null};a.prototype.toAnchor=function(){var b=[this.plotX,this.plotY,0,0];this.series.chart.inverted&&(b[0]=this.plotY,b[1]=this.plotX);return b};a.prototype.getLabelConfig=function(){return{x:this.x,y:this.y,point:this}};a.prototype.isInsidePlot=function(){var b=this.plotX,c=this.plotY,d=this.series.xAxis,g=this.series.yAxis,f={x:b,y:c,isInsidePlot:!0};d&&(f.isInsidePlot=h(b)&&0<=b&&b<=d.len);g&&(f.isInsidePlot=f.isInsidePlot&&h(c)&&0<=c&&c<=g.len);q(this.series.chart,"afterIsInsidePlot",f);return f.isInsidePlot};
23
+ a.prototype.refresh=function(){var b=this.series,c=b.xAxis;b=b.yAxis;var d=this.getOptions();c?(this.x=d.x,this.plotX=c.toPixels(d.x,!0)):(this.x=void 0,this.plotX=d.x);b?(this.y=d.y,this.plotY=b.toPixels(d.y,!0)):(this.y=null,this.plotY=d.y);this.isInside=this.isInsidePlot()};a.prototype.translate=function(b,c,d,g){this.hasDynamicOptions()||(this.plotX+=d,this.plotY+=g,this.refreshOptions())};a.prototype.scale=function(b,c,d,g){if(!this.hasDynamicOptions()){var f=this.plotY*g;this.plotX=(1-d)*b+
24
+ this.plotX*d;this.plotY=(1-g)*c+f;this.refreshOptions()}};a.prototype.rotate=function(b,c,d){if(!this.hasDynamicOptions()){var g=Math.cos(d);d=Math.sin(d);var f=this.plotX,a=this.plotY;f-=b;a-=c;this.plotX=f*g-a*d+b;this.plotY=f*d+a*g+c;this.refreshOptions()}};a.prototype.refreshOptions=function(){var b=this.series,c=b.xAxis;b=b.yAxis;this.x=this.options.x=c?this.options.x=c.toValue(this.plotX,!0):this.plotX;this.y=this.options.y=b?b.toValue(this.plotY,!0):this.plotY};return a}()});u(a,"Extensions/Annotations/Mixins/ControllableMixin.js",
25
+ [a["Extensions/Annotations/ControlPoint.js"],a["Extensions/Annotations/MockPoint.js"],a["Core/Tooltip.js"],a["Core/Utilities.js"]],function(c,a,t,v){var h=v.isObject,l=v.isString,b=v.merge,x=v.splat;return{init:function(b,c,f){this.annotation=b;this.chart=b.chart;this.options=c;this.points=[];this.controlPoints=[];this.index=f;this.linkPoints();this.addControlPoints()},attr:function(){this.graphic.attr.apply(this.graphic,arguments)},getPointsOptions:function(){var b=this.options;return b.points||
26
+ b.point&&x(b.point)},attrsFromOptions:function(b){var d=this.constructor.attrsMap,c={},a,r=this.chart.styledMode;for(a in b){var w=d[a];!w||r&&-1!==["fill","stroke","stroke-width"].indexOf(w)||(c[w]=b[a])}return c},anchor:function(c){var d=c.series.getPlotBox(),a=c.series.chart,k=c.mock?c.toAnchor():t.prototype.getAnchor.call({chart:c.series.chart},c);k={x:k[0]+(this.options.x||0),y:k[1]+(this.options.y||0),height:k[2]||0,width:k[3]||0};return{relativePosition:k,absolutePosition:b(k,{x:k.x+(c.mock?
27
+ d.translateX:a.plotLeft),y:k.y+(c.mock?d.translateY:a.plotTop)})}},point:function(b,c){if(b&&b.series)return b;c&&null!==c.series||(h(b)?c=new a(this.chart,this,b):l(b)?c=this.chart.get(b)||null:"function"===typeof b&&(c=b.call(c,this),c=c.series?c:new a(this.chart,this,b)));return c},linkPoints:function(){var b=this.getPointsOptions(),c=this.points,a=b&&b.length||0,k;for(k=0;k<a;k++){var r=this.point(b[k],c[k]);if(!r){c.length=0;return}r.mock&&r.refresh();c[k]=r}return c},addControlPoints:function(){var d=
28
+ this.options.controlPoints;(d||[]).forEach(function(a,f){a=b(this.options.controlPointOptions,a);a.index||(a.index=f);d[f]=a;this.controlPoints.push(new c(this.chart,this,a))},this)},shouldBeDrawn:function(){return!!this.points.length},render:function(b){this.controlPoints.forEach(function(b){b.render()})},redraw:function(b){this.controlPoints.forEach(function(c){c.redraw(b)})},transform:function(b,c,a,k,r){if(this.chart.inverted){var d=c;c=a;a=d}this.points.forEach(function(d,f){this.transformPoint(b,
29
+ c,a,k,r,f)},this)},transformPoint:function(b,c,f,k,r,w){var d=this.points[w];d.mock||(d=this.points[w]=a.fromPoint(d));d[b](c,f,k,r)},translate:function(b,c){this.transform("translate",null,null,b,c)},translatePoint:function(b,c,a){this.transformPoint("translate",null,null,b,c,a)},translateShape:function(b,c,a){var d=this.annotation.chart,f=this.annotation.userOptions,g=d.annotations.indexOf(this.annotation);d=d.options.annotations[g];this.translatePoint(b,c,0);a&&this.translatePoint(b,c,1);d[this.collection][this.index].point=
30
+ this.options.point;f[this.collection][this.index].point=this.options.point},rotate:function(b,c,a){this.transform("rotate",b,c,a)},scale:function(b,c,a,k){this.transform("scale",b,c,a,k)},setControlPointsVisibility:function(b){this.controlPoints.forEach(function(c){c.setVisibility(b)})},destroy:function(){this.graphic&&(this.graphic=this.graphic.destroy());this.tracker&&(this.tracker=this.tracker.destroy());this.controlPoints.forEach(function(b){b.destroy()});this.options=this.controlPoints=this.points=
31
+ this.chart=null;this.annotation&&(this.annotation=null)},update:function(c){var a=this.annotation;c=b(!0,this.options,c);var d=this.graphic.parentGroup;this.destroy();this.constructor(a,c,this.index);this.render(d);this.redraw()}}});u(a,"Extensions/Annotations/Mixins/MarkerMixin.js",[a["Core/Chart/Chart.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Utilities.js"]],function(c,a,t){function h(b){return function(c){this.attr(b,"url(#"+c+")")}}var q=t.addEvent,l=t.defined,b=t.merge,x=t.uniqueKey,
32
+ d={arrow:{tagName:"marker",attributes:{id:"arrow",refY:5,refX:9,markerWidth:10,markerHeight:10},children:[{tagName:"path",attributes:{d:"M 0 0 L 10 5 L 0 10 Z","stroke-width":0}}]},"reverse-arrow":{tagName:"marker",attributes:{id:"reverse-arrow",refY:5,refX:1,markerWidth:10,markerHeight:10},children:[{tagName:"path",attributes:{d:"M 0 5 L 10 0 L 10 10 Z","stroke-width":0}}]}};a.prototype.addMarker=function(c,a){var d={attributes:{id:c}},f={stroke:a.color||"none",fill:a.color||"rgba(0, 0, 0, 0.75)"};
33
+ d.children=a.children&&a.children.map(function(c){return b(f,c)});a=b(!0,{attributes:{markerWidth:20,markerHeight:20,refX:0,refY:0,orient:"auto"}},a,d);a=this.definition(a);a.id=c;return a};a={markerEndSetter:h("marker-end"),markerStartSetter:h("marker-start"),setItemMarkers:function(c){var a=c.options,d=c.chart,r=d.options.defs,g=a.fill,h=l(g)&&"none"!==g?g:a.stroke;["markerStart","markerEnd"].forEach(function(f){var g=a[f],k;if(g){for(k in r){var w=r[k];if((g===(w.attributes&&w.attributes.id)||
34
+ g===w.id)&&"marker"===w.tagName){var l=w;break}}l&&(g=c[f]=d.renderer.addMarker((a.id||x())+"-"+g,b(l,{color:h})),c.attr(f,g.getAttribute("id")))}})}};q(c,"afterGetContainer",function(){this.options.defs=b(d,this.options.defs||{})});return a});u(a,"Extensions/Annotations/Controllables/ControllablePath.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Core/Globals.js"],a["Extensions/Annotations/Mixins/MarkerMixin.js"],a["Core/Utilities.js"]],function(c,a,t,v){var h=v.extend,l="rgba(192,192,192,"+
35
+ (a.svg?.0001:.002)+")";return function(){function b(b,a,g){this.addControlPoints=c.addControlPoints;this.anchor=c.anchor;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.setMarkers=t.setItemMarkers;this.transform=c.transform;this.transformPoint=c.transformPoint;
36
+ this.translate=c.translate;this.translatePoint=c.translatePoint;this.translateShape=c.translateShape;this.update=c.update;this.type="path";this.init(b,a,g);this.collection="shapes"}b.prototype.toD=function(){var b=this.options.d;if(b)return"function"===typeof b?b.call(this):b;b=this.points;var c=b.length,a=c,f=b[0],k=a&&this.anchor(f).absolutePosition,r=0,w=[];if(k)for(w.push(["M",k.x,k.y]);++r<c&&a;)f=b[r],a=f.command||"L",k=this.anchor(f).absolutePosition,"M"===a?w.push([a,k.x,k.y]):"L"===a?w.push([a,
37
+ k.x,k.y]):"Z"===a&&w.push([a]),a=f.series.visible;return a?this.chart.renderer.crispLine(w,this.graphic.strokeWidth()):null};b.prototype.shouldBeDrawn=function(){return c.shouldBeDrawn.call(this)||!!this.options.d};b.prototype.render=function(b){var a=this.options,g=this.attrsFromOptions(a);this.graphic=this.annotation.chart.renderer.path([["M",0,0]]).attr(g).add(b);a.className&&this.graphic.addClass(a.className);this.tracker=this.annotation.chart.renderer.path([["M",0,0]]).addClass("highcharts-tracker-line").attr({zIndex:2}).add(b);
38
+ this.annotation.chart.styledMode||this.tracker.attr({"stroke-linejoin":"round",stroke:l,fill:l,"stroke-width":this.graphic.strokeWidth()+2*a.snap});c.render.call(this);h(this.graphic,{markerStartSetter:t.markerStartSetter,markerEndSetter:t.markerEndSetter});this.setMarkers(this)};b.prototype.redraw=function(b){var a=this.toD(),g=b?"animate":"attr";a?(this.graphic[g]({d:a}),this.tracker[g]({d:a})):(this.graphic.attr({d:"M 0 -9000000000"}),this.tracker.attr({d:"M 0 -9000000000"}));this.graphic.placed=
39
+ this.tracker.placed=!!a;c.redraw.call(this,b)};b.attrsMap={dashStyle:"dashstyle",strokeWidth:"stroke-width",stroke:"stroke",fill:"fill",zIndex:"zIndex"};return b}()});u(a,"Extensions/Annotations/Controllables/ControllableRect.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(c,a,t){var h=t.merge;return function(){function q(a,b,h){this.addControlPoints=c.addControlPoints;this.anchor=c.anchor;
40
+ this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;this.transform=c.transform;this.transformPoint=c.transformPoint;this.translatePoint=c.translatePoint;this.translateShape=c.translateShape;this.update=c.update;this.type="rect";this.translate=
41
+ c.translateShape;this.init(a,b,h);this.collection="shapes"}q.prototype.render=function(a){var b=this.attrsFromOptions(this.options);this.graphic=this.annotation.chart.renderer.rect(0,-9E9,0,0).attr(b).add(a);c.render.call(this)};q.prototype.redraw=function(a){var b=this.anchor(this.points[0]).absolutePosition;if(b)this.graphic[a?"animate":"attr"]({x:b.x,y:b.y,width:this.options.width,height:this.options.height});else this.attr({x:0,y:-9E9});this.graphic.placed=!!b;c.redraw.call(this,a)};q.attrsMap=
42
+ h(a.attrsMap,{width:"width",height:"height"});return q}()});u(a,"Extensions/Annotations/Controllables/ControllableCircle.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(c,a,t){var h=t.merge;return function(){function q(a,b,h){this.addControlPoints=c.addControlPoints;this.anchor=c.anchor;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;
43
+ this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;this.transform=c.transform;this.transformPoint=c.transformPoint;this.translatePoint=c.translatePoint;this.translateShape=c.translateShape;this.update=c.update;this.type="circle";this.translate=c.translateShape;this.init(a,b,h);this.collection="shapes"}q.prototype.render=function(a){var b=this.attrsFromOptions(this.options);
44
+ this.graphic=this.annotation.chart.renderer.circle(0,-9E9,0).attr(b).add(a);c.render.call(this)};q.prototype.redraw=function(a){var b=this.anchor(this.points[0]).absolutePosition;if(b)this.graphic[a?"animate":"attr"]({x:b.x,y:b.y,r:this.options.r});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!b;c.redraw.call(this,a)};q.prototype.setRadius=function(c){this.options.r=c};q.attrsMap=h(a.attrsMap,{r:"r"});return q}()});u(a,"Extensions/Annotations/Controllables/ControllableEllipse.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],
45
+ a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(c,a,t){var h=t.merge,q=t.defined;return function(){function l(b,a,d){this.addControlPoints=c.addControlPoints;this.anchor=c.anchor;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.linkPoints=c.linkPoints;this.point=c.point;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;
46
+ this.transform=c.transform;this.translatePoint=c.translatePoint;this.transformPoint=c.transformPoint;this.type="ellipse";this.init(b,a,d);this.collection="shapes"}l.prototype.init=function(b,a,d){q(a.yAxis)&&a.points.forEach(function(b){b.yAxis=a.yAxis});q(a.xAxis)&&a.points.forEach(function(b){b.xAxis=a.xAxis});c.init.call(this,b,a,d)};l.prototype.render=function(b){this.graphic=this.annotation.chart.renderer.createElement("ellipse").attr(this.attrsFromOptions(this.options)).add(b);c.render.call(this)};
47
+ l.prototype.translate=function(b,a){c.translateShape.call(this,b,a,!0)};l.prototype.getDistanceFromLine=function(b,c,a,g){return Math.abs((c.y-b.y)*a-(c.x-b.x)*g+c.x*b.y-c.y*b.x)/Math.sqrt((c.y-b.y)*(c.y-b.y)+(c.x-b.x)*(c.x-b.x))};l.prototype.getAttrs=function(b,c){var a=b.x,g=b.y,f=c.x,k=c.y;c=(a+f)/2;b=(g+k)/2;var r=Math.sqrt((a-f)*(a-f)/4+(g-k)*(g-k)/4);g=180*Math.atan((k-g)/(f-a))/Math.PI;c<a&&(g+=180);a=this.getRY();return{cx:c,cy:b,rx:r,ry:a,angle:g}};l.prototype.getRY=function(){var b=this.getYAxis();
48
+ return q(b)?Math.abs(b.toPixels(this.options.ry)-b.toPixels(0)):this.options.ry};l.prototype.getYAxis=function(){return this.chart.yAxis[this.options.yAxis]};l.prototype.getAbsolutePosition=function(b){return this.anchor(b).absolutePosition};l.prototype.redraw=function(b){var a=this.getAbsolutePosition(this.points[0]),d=this.getAbsolutePosition(this.points[1]);d=this.getAttrs(a,d);if(a)this.graphic[b?"animate":"attr"]({cx:d.cx,cy:d.cy,rx:d.rx,ry:d.ry,rotation:d.angle,rotationOriginX:d.cx,rotationOriginY:d.cy});
49
+ else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!a;c.redraw.call(this,b)};l.prototype.setYRadius=function(b){this.options.ry=b;this.annotation.userOptions.shapes[0].ry=b;this.annotation.options.shapes[0].ry=b};l.attrsMap=h(a.attrsMap,{ry:"ry"});return l}()});u(a,"Extensions/Annotations/Controllables/ControllableLabel.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Core/FormatUtilities.js"],a["Extensions/Annotations/MockPoint.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Tooltip.js"],
50
+ a["Core/Utilities.js"]],function(c,a,t,v,q,l){var b=a.format;a=v.prototype.symbols;var h=l.extend,d=l.isNumber,g=l.pick;l=function(){function a(b,a,d){this.addControlPoints=c.addControlPoints;this.attr=c.attr;this.attrsFromOptions=c.attrsFromOptions;this.destroy=c.destroy;this.getPointsOptions=c.getPointsOptions;this.init=c.init;this.linkPoints=c.linkPoints;this.point=c.point;this.rotate=c.rotate;this.scale=c.scale;this.setControlPointsVisibility=c.setControlPointsVisibility;this.shouldBeDrawn=c.shouldBeDrawn;
51
+ this.transform=c.transform;this.transformPoint=c.transformPoint;this.translateShape=c.translateShape;this.update=c.update;this.init(b,a,d);this.collection="labels"}a.alignedPosition=function(b,a){var c=b.align,d=b.verticalAlign,f=(a.x||0)+(b.x||0),r=(a.y||0)+(b.y||0),g,k;"right"===c?g=1:"center"===c&&(g=2);g&&(f+=(a.width-(b.width||0))/g);"bottom"===d?k=1:"middle"===d&&(k=2);k&&(r+=(a.height-(b.height||0))/k);return{x:Math.round(f),y:Math.round(r)}};a.justifiedOptions=function(b,a,c,d){var f=c.align,
52
+ g=c.verticalAlign,k=a.box?0:a.padding||0,r=a.getBBox();a={align:f,verticalAlign:g,x:c.x,y:c.y,width:a.width,height:a.height};c=(d.x||0)-b.plotLeft;d=(d.y||0)-b.plotTop;var h=c+k;0>h&&("right"===f?a.align="left":a.x=(a.x||0)-h);h=c+r.width-k;h>b.plotWidth&&("left"===f?a.align="right":a.x=(a.x||0)+b.plotWidth-h);h=d+k;0>h&&("bottom"===g?a.verticalAlign="top":a.y=(a.y||0)-h);h=d+r.height-k;h>b.plotHeight&&("top"===g?a.verticalAlign="bottom":a.y=(a.y||0)+b.plotHeight-h);return a};a.prototype.translatePoint=
53
+ function(b,a){c.translatePoint.call(this,b,a,0)};a.prototype.translate=function(b,a){var c=this.annotation.chart,d=this.annotation.userOptions,f=c.annotations.indexOf(this.annotation);f=c.options.annotations[f];c.inverted&&(c=b,b=a,a=c);this.options.x+=b;this.options.y+=a;f[this.collection][this.index].x=this.options.x;f[this.collection][this.index].y=this.options.y;d[this.collection][this.index].x=this.options.x;d[this.collection][this.index].y=this.options.y};a.prototype.render=function(b){var d=
54
+ this.options,f=this.attrsFromOptions(d),g=d.style;this.graphic=this.annotation.chart.renderer.label("",0,-9999,d.shape,null,null,d.useHTML,null,"annotation-label").attr(f).add(b);this.annotation.chart.styledMode||("contrast"===g.color&&(g.color=this.annotation.chart.renderer.getContrast(-1<a.shapesWithoutBackground.indexOf(d.shape)?"#FFFFFF":d.backgroundColor)),this.graphic.css(d.style).shadow(d.shadow));d.className&&this.graphic.addClass(d.className);this.graphic.labelrank=d.labelrank;c.render.call(this)};
55
+ a.prototype.redraw=function(a){var d=this.options,f=this.text||d.format||d.text,g=this.graphic,h=this.points[0];g.attr({text:f?b(f,h.getLabelConfig(),this.annotation.chart):d.formatter.call(h,this)});d=this.anchor(h);(f=this.position(d))?(g.alignAttr=f,f.anchorX=d.absolutePosition.x,f.anchorY=d.absolutePosition.y,g[a?"animate":"attr"](f)):g.attr({x:0,y:-9999});g.placed=!!f;c.redraw.call(this,a)};a.prototype.anchor=function(b){var a=c.anchor.apply(this,arguments),d=this.options.x||0,f=this.options.y||
56
+ 0;a.absolutePosition.x-=d;a.absolutePosition.y-=f;a.relativePosition.x-=d;a.relativePosition.y-=f;return a};a.prototype.position=function(b){var c=this.graphic,d=this.annotation.chart,f=this.points[0],k=this.options,l=b.absolutePosition,v=b.relativePosition,y=f.series.visible&&t.prototype.isInsidePlot.call(f);b=c.width;b=void 0===b?0:b;var u=c.height;u=void 0===u?0:u;if(y){if(k.distance)var x=q.prototype.getPosition.call({chart:d,distance:g(k.distance,16)},b,u,{plotX:v.x,plotY:v.y,negative:f.negative,
57
+ ttBelow:f.ttBelow,h:v.height||v.width});else k.positioner?x=k.positioner.call(this):(f={x:l.x,y:l.y,width:0,height:0},x=a.alignedPosition(h(k,{width:b,height:u}),f),"justify"===this.options.overflow&&(x=a.alignedPosition(a.justifiedOptions(d,c,k,x),f)));k.crop&&(c=x.x-d.plotLeft,k=x.y-d.plotTop,y=d.isInsidePlot(c,k)&&d.isInsidePlot(c+b,k+u))}return y?x:null};a.attrsMap={backgroundColor:"fill",borderColor:"stroke",borderWidth:"stroke-width",zIndex:"zIndex",borderRadius:"r",padding:"padding"};a.shapesWithoutBackground=
58
+ ["connector"];return a}();a.connector=function(b,a,c,g,h){var f=h&&h.anchorX;h=h&&h.anchorY;var k=c/2;if(d(f)&&d(h)){var l=[["M",f,h]];var q=a-h;0>q&&(q=-g-q);q<c&&(k=f<b+c/2?q:c-q);h>a+g?l.push(["L",b+k,a+g]):h<a?l.push(["L",b+k,a]):f<b?l.push(["L",b,a+g/2]):f>b+c&&l.push(["L",b+c,a+g/2])}return l||[]};return l});u(a,"Extensions/Annotations/Controllables/ControllableImage.js",[a["Extensions/Annotations/Controllables/ControllableLabel.js"],a["Extensions/Annotations/Mixins/ControllableMixin.js"]],
59
+ function(a,h){return function(){function c(a,c,l){this.addControlPoints=h.addControlPoints;this.anchor=h.anchor;this.attr=h.attr;this.attrsFromOptions=h.attrsFromOptions;this.destroy=h.destroy;this.getPointsOptions=h.getPointsOptions;this.init=h.init;this.linkPoints=h.linkPoints;this.point=h.point;this.rotate=h.rotate;this.scale=h.scale;this.setControlPointsVisibility=h.setControlPointsVisibility;this.shouldBeDrawn=h.shouldBeDrawn;this.transform=h.transform;this.transformPoint=h.transformPoint;this.translatePoint=
60
+ h.translatePoint;this.translateShape=h.translateShape;this.update=h.update;this.type="image";this.translate=h.translateShape;this.init(a,c,l);this.collection="shapes"}c.prototype.render=function(a){var c=this.attrsFromOptions(this.options),l=this.options;this.graphic=this.annotation.chart.renderer.image(l.src,0,-9E9,l.width,l.height).attr(c).add(a);this.graphic.width=l.width;this.graphic.height=l.height;h.render.call(this)};c.prototype.redraw=function(c){var q=this.anchor(this.points[0]);if(q=a.prototype.position.call(this,
61
+ q))this.graphic[c?"animate":"attr"]({x:q.x,y:q.y});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!q;h.redraw.call(this,c)};c.attrsMap={width:"width",height:"height",zIndex:"zIndex"};return c}()});u(a,"Extensions/Annotations/Annotations.js",[a["Core/Animation/AnimationUtilities.js"],a["Core/Chart/Chart.js"],a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllableRect.js"],a["Extensions/Annotations/Controllables/ControllableCircle.js"],
62
+ a["Extensions/Annotations/Controllables/ControllableEllipse.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Extensions/Annotations/Controllables/ControllableImage.js"],a["Extensions/Annotations/Controllables/ControllableLabel.js"],a["Extensions/Annotations/ControlPoint.js"],a["Extensions/Annotations/Mixins/EventEmitterMixin.js"],a["Core/Globals.js"],a["Extensions/Annotations/MockPoint.js"],a["Core/Pointer.js"],a["Core/Utilities.js"]],function(a,h,t,v,q,l,b,u,d,g,f,k,r,w,z){var c=
63
+ a.getDeferredAnimation;a=h.prototype;var x=z.addEvent,E=z.defined,y=z.destroyObjectProperties,C=z.erase,G=z.extend,n=z.find,m=z.fireEvent,e=z.merge,p=z.pick,A=z.splat;z=z.wrap;var B=function(){function a(a,b){this.annotation=void 0;this.coll="annotations";this.shapesGroup=this.labelsGroup=this.labelCollector=this.group=this.graphic=this.animationConfig=this.collection=void 0;this.chart=a;this.points=[];this.controlPoints=[];this.coll="annotations";this.labels=[];this.shapes=[];this.options=e(this.defaultOptions,
64
+ b);this.userOptions=b;b=this.getLabelsAndShapesOptions(this.options,b);this.options.labels=b.labels;this.options.shapes=b.shapes;this.init(a,this.options)}a.prototype.init=function(){var a=this.chart,b=this.options.animation;this.linkPoints();this.addControlPoints();this.addShapes();this.addLabels();this.setLabelCollector();this.animationConfig=c(a,b)};a.prototype.getLabelsAndShapesOptions=function(a,b){var c={};["labels","shapes"].forEach(function(p){a[p]&&(c[p]=b[p]?A(b[p]).map(function(b,c){return e(a[p][c],
65
+ b)}):a[p])});return c};a.prototype.addShapes=function(){(this.options.shapes||[]).forEach(function(a,b){a=this.initShape(a,b);e(!0,this.options.shapes[b],a.options)},this)};a.prototype.addLabels=function(){(this.options.labels||[]).forEach(function(a,b){a=this.initLabel(a,b);e(!0,this.options.labels[b],a.options)},this)};a.prototype.addClipPaths=function(){this.setClipAxes();this.clipXAxis&&this.clipYAxis&&this.options.crop&&(this.clipRect=this.chart.renderer.clipRect(this.getClipBox()))};a.prototype.setClipAxes=
66
+ function(){var a=this.chart.xAxis,b=this.chart.yAxis,c=(this.options.labels||[]).concat(this.options.shapes||[]).reduce(function(c,e){e=e&&(e.point||e.points&&e.points[0]);return[a[e&&e.xAxis]||c[0],b[e&&e.yAxis]||c[1]]},[]);this.clipXAxis=c[0];this.clipYAxis=c[1]};a.prototype.getClipBox=function(){if(this.clipXAxis&&this.clipYAxis)return{x:this.clipXAxis.left,y:this.clipYAxis.top,width:this.clipXAxis.width,height:this.clipYAxis.height}};a.prototype.setLabelCollector=function(){var a=this;a.labelCollector=
67
+ function(){return a.labels.reduce(function(a,b){b.options.allowOverlap||a.push(b.graphic);return a},[])};a.chart.labelCollectors.push(a.labelCollector)};a.prototype.setOptions=function(a){this.options=e(this.defaultOptions,a)};a.prototype.redraw=function(a){this.linkPoints();this.graphic||this.render();this.clipRect&&this.clipRect.animate(this.getClipBox());this.redrawItems(this.shapes,a);this.redrawItems(this.labels,a);t.redraw.call(this,a)};a.prototype.redrawItems=function(a,b){for(var c=a.length;c--;)this.redrawItem(a[c],
68
+ b)};a.prototype.renderItems=function(a){for(var b=a.length;b--;)this.renderItem(a[b])};a.prototype.render=function(){var a=this.chart.renderer;this.graphic=a.g("annotation").attr({opacity:0,zIndex:this.options.zIndex,visibility:this.options.visible?"inherit":"hidden"}).add();this.shapesGroup=a.g("annotation-shapes").add(this.graphic);this.options.crop&&this.shapesGroup.clip(this.chart.plotBoxClip);this.labelsGroup=a.g("annotation-labels").attr({translateX:0,translateY:0}).add(this.graphic);this.addClipPaths();
69
+ this.clipRect&&this.graphic.clip(this.clipRect);this.renderItems(this.shapes);this.renderItems(this.labels);this.addEvents();t.render.call(this)};a.prototype.setVisibility=function(a){var b=this.options,c=this.chart.navigationBindings;a=p(a,!b.visible);this.graphic.attr("visibility",a?"inherit":"hidden");a||(this.setControlPointsVisibility(!1),c.activeAnnotation===this&&c.popup&&"annotation-toolbar"===c.popup.formType&&m(c,"closePopup"));b.visible=a};a.prototype.setControlPointsVisibility=function(a){var b=
70
+ function(b){b.setControlPointsVisibility(a)};t.setControlPointsVisibility.call(this,a);this.shapes.forEach(b);this.labels.forEach(b)};a.prototype.destroy=function(){var a=this.chart,b=function(a){a.destroy()};this.labels.forEach(b);this.shapes.forEach(b);this.clipYAxis=this.clipXAxis=null;C(a.labelCollectors,this.labelCollector);f.destroy.call(this);t.destroy.call(this);y(this,a)};a.prototype.remove=function(){return this.chart.removeAnnotation(this)};a.prototype.update=function(a,b){var c=this.chart,
71
+ d=this.getLabelsAndShapesOptions(this.userOptions,a),A=c.annotations.indexOf(this);a=e(!0,this.userOptions,a);a.labels=d.labels;a.shapes=d.shapes;this.destroy();this.constructor(c,a);c.options.annotations[A]=a;this.isUpdating=!0;p(b,!0)&&c.redraw();m(this,"afterUpdate");this.isUpdating=!1};a.prototype.initShape=function(b,c){b=e(this.options.shapeOptions,{controlPointOptions:this.options.controlPointOptions},b);c=new a.shapesMap[b.type](this,b,c);c.itemType="shape";this.shapes.push(c);return c};a.prototype.initLabel=
72
+ function(a,b){a=e(this.options.labelOptions,{controlPointOptions:this.options.controlPointOptions},a);b=new d(this,a,b);b.itemType="label";this.labels.push(b);return b};a.prototype.redrawItem=function(a,b){a.linkPoints();a.shouldBeDrawn()?(a.graphic||this.renderItem(a),a.redraw(p(b,!0)&&a.graphic.placed),a.points.length&&this.adjustVisibility(a)):this.destroyItem(a)};a.prototype.adjustVisibility=function(a){var b=!1,c=a.graphic;a.points.forEach(function(a){!1!==a.series.visible&&!1!==a.visible&&(b=
73
+ !0)});b?"hidden"===c.visibility&&c.show():c.hide()};a.prototype.destroyItem=function(a){C(this[a.itemType+"s"],a);a.destroy()};a.prototype.renderItem=function(a){a.render("label"===a.itemType?this.labelsGroup:this.shapesGroup)};a.ControlPoint=g;a.MockPoint=r;a.shapesMap={rect:v,circle:q,ellipse:l,path:b,image:u};a.types={};return a}();e(!0,B.prototype,t,f,e(B.prototype,{nonDOMEvents:["add","afterUpdate","drag","remove"],defaultOptions:{visible:!0,animation:{},crop:!0,draggable:"xy",labelOptions:{align:"center",
74
+ allowOverlap:!1,backgroundColor:"rgba(0, 0, 0, 0.75)",borderColor:"#000000",borderRadius:3,borderWidth:1,className:"highcharts-no-tooltip",crop:!1,formatter:function(){return E(this.y)?this.y:"Annotation label"},includeInDataExport:!0,overflow:"justify",padding:5,shadow:!1,shape:"callout",style:{fontSize:"11px",fontWeight:"normal",color:"contrast"},useHTML:!1,verticalAlign:"bottom",x:0,y:-16},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1,fill:"rgba(0, 0, 0, 0.75)",r:0,snap:2},controlPointOptions:{symbol:"circle",
75
+ width:10,height:10,style:{cursor:"pointer",fill:"#ffffff",stroke:"#000000","stroke-width":2},visible:!1,events:{}},events:{},zIndex:6}}));k.extendAnnotation=function(a,b,c,p){b=b||B;G(a.prototype,e(b.prototype,c));a.prototype.defaultOptions=e(a.prototype.defaultOptions,p||{})};G(a,{initAnnotation:function(a){a=new (B.types[a.type]||B)(this,a);this.annotations.push(a);return a},addAnnotation:function(a,b){a=this.initAnnotation(a);this.options.annotations.push(a.options);p(b,!0)&&(a.redraw(),a.graphic.attr({opacity:1}));
76
+ return a},removeAnnotation:function(a){var b=this.annotations,c="annotations"===a.coll?a:n(b,function(b){return b.options.id===a});c&&(m(c,"remove"),C(this.options.annotations,c.options),C(b,c),c.destroy())},drawAnnotations:function(){this.plotBoxClip.attr(this.plotBox);this.annotations.forEach(function(a){a.redraw();a.graphic.animate({opacity:1},a.animationConfig)})}});a.collectionsWithUpdate.push("annotations");a.collectionsWithInit.annotations=[a.addAnnotation];x(h,"afterInit",function(){this.annotations=
77
+ [];this.options.annotations||(this.options.annotations=[])});a.callbacks.push(function(a){a.plotBoxClip=this.renderer.clipRect(this.plotBox);a.controlPointsGroup=a.renderer.g("control-points").attr({zIndex:99}).clip(a.plotBoxClip).add();a.options.annotations.forEach(function(b,c){if(!a.annotations.some(function(a){return a.options===b})){var e=a.initAnnotation(b);a.options.annotations[c]=e.options}});a.drawAnnotations();x(a,"redraw",a.drawAnnotations);x(a,"destroy",function(){a.plotBoxClip.destroy();
78
+ a.controlPointsGroup.destroy()});x(a,"exportData",function(b){var c=(this.options.exporting&&this.options.exporting.csv||{}).columnHeaderFormatter,e=!b.dataRows[1].xValues,p=a.options.lang&&a.options.lang.exportData&&a.options.lang.exportData.annotationHeader,d=function(a){if(c){var b=c(a);if(!1!==b)return b}b=p+" "+a;return e?{columnTitle:b,topLevelColumnTitle:b}:b},A=b.dataRows[0].length,B=a.options.exporting&&a.options.exporting.csv&&a.options.exporting.csv.annotations&&a.options.exporting.csv.annotations.itemDelimiter,
79
+ f=a.options.exporting&&a.options.exporting.csv&&a.options.exporting.csv.annotations&&a.options.exporting.csv.annotations.join;a.annotations.forEach(function(a){a.options.labelOptions.includeInDataExport&&a.labels.forEach(function(a){if(a.options.text){var c=a.options.text;a.points.forEach(function(a){var e=a.x,p=a.series.xAxis?a.series.xAxis.options.index:-1,d=!1;if(-1===p){a=b.dataRows[0].length;for(var m=Array(a),n=0;n<a;++n)m[n]="";m.push(c);m.xValues=[];m.xValues[p]=e;b.dataRows.push(m);d=!0}d||
80
+ b.dataRows.forEach(function(a){!d&&a.xValues&&void 0!==p&&e===a.xValues[p]&&(f&&a.length>A?a[a.length-1]+=B+c:a.push(c),d=!0)});if(!d){a=b.dataRows[0].length;m=Array(a);for(n=0;n<a;++n)m[n]="";m[0]=e;m.push(c);m.xValues=[];void 0!==p&&(m.xValues[p]=e);b.dataRows.push(m)}})}})});var m=0;b.dataRows.forEach(function(a){m=Math.max(m,a.length)});for(var n=m-b.dataRows[0].length,g=0;g<n;g++){var H=d(g+1);e?(b.dataRows[0].push(H.topLevelColumnTitle),b.dataRows[1].push(H.columnTitle)):b.dataRows[0].push(H)}})});
81
+ z(w.prototype,"onContainerMouseDown",function(a){this.chart.hasDraggedAnnotation||a.apply(this,Array.prototype.slice.call(arguments,1))});k.Annotation=B;"";return B});u(a,"Core/Chart/ChartNavigationComposition.js",[],function(){var a;(function(a){a.compose=function(a){a.navigation||(a.navigation=new c(a));return a};var c=function(){function a(a){this.updates=[];this.chart=a}a.prototype.addUpdate=function(a){this.chart.navigation.updates.push(a)};a.prototype.update=function(a,c){var b=this;this.updates.forEach(function(h){h.call(b.chart,
82
+ a,c)})};return a}();a.Additions=c})(a||(a={}));return a});u(a,"Extensions/Annotations/NavigationBindings.js",[a["Extensions/Annotations/Annotations.js"],a["Core/Chart/Chart.js"],a["Core/Chart/ChartNavigationComposition.js"],a["Core/FormatUtilities.js"],a["Core/Globals.js"],a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,h,t,v,q,l,b){function c(a,b){var c=n.Element.prototype,e=c.matches||c.msMatchesSelector||c.webkitMatchesSelector,p=null;if(c.closest)p=c.closest.call(a,b);else{do{if(e.call(a,
83
+ b))return a;a=a.parentElement||a.parentNode}while(null!==a&&1===a.nodeType)}return p}function d(a){var b=a.prototype.defaultOptions.events&&a.prototype.defaultOptions.events.click;E(!0,a.prototype.defaultOptions.events,{click:function(a){var c=this,e=c.chart.navigationBindings,p=e.activeAnnotation;b&&b.call(c,a);p!==c?(e.deselectAnnotation(),e.activeAnnotation=c,c.setControlPointsVisibility(!0),r(e,"showPopup",{annotation:c,formType:"annotation-toolbar",options:e.annotationToFields(c),onSubmit:function(a){var b=
84
+ {};"remove"===a.actionType?(e.activeAnnotation=!1,e.chart.removeAnnotation(c)):(e.fieldsToOptions(a.fields,b),e.deselectAnnotation(),a=b.typeOptions,"measure"===c.options.type&&(a.crosshairY.enabled=0!==a.crosshairY.strokeWidth,a.crosshairX.enabled=0!==a.crosshairX.strokeWidth),c.update(b))}})):r(e,"closePopup");a.activeAnnotation=!0}})}var g=v.format;v=l.setOptions;var f=b.addEvent,k=b.attr,r=b.fireEvent,w=b.isArray,u=b.isFunction,D=b.isNumber,F=b.isObject,E=b.merge,y=b.objectEach,C=b.pick,G=q.doc,
85
+ n=q.win,m=function(){function a(a,b){this.selectedButton=this.boundClassNames=void 0;this.chart=a;this.options=b;this.eventsToUnbind=[];this.container=G.getElementsByClassName(this.options.bindingsClassName||"")}a.prototype.initEvents=function(){var a=this,b=a.chart,c=a.container,e=a.options;a.boundClassNames={};y(e.bindings||{},function(b){a.boundClassNames[b.className]=b});[].forEach.call(c,function(b){a.eventsToUnbind.push(f(b,"click",function(c){var e=a.getButtonEvents(b,c);e&&-1===e.button.className.indexOf("highcharts-disabled-btn")&&
86
86
  a.bindingsButtonClick(e.button,e.events,c)}))});y(e.events||{},function(b,c){u(b)&&a.eventsToUnbind.push(f(a,c,b,{passive:!1}))});a.eventsToUnbind.push(f(b.container,"click",function(c){!b.cancelClick&&b.isInsidePlot(c.chartX-b.plotLeft,c.chartY-b.plotTop,{visiblePlotOnly:!0})&&a.bindingsChartClick(this,c)}));a.eventsToUnbind.push(f(b.container,q.isTouchDevice?"touchmove":"mousemove",function(b){a.bindingsContainerMouseMove(this,b)},q.isTouchDevice?{passive:!1}:void 0))};a.prototype.initUpdate=function(){var a=
87
87
  this;t.compose(this.chart).navigation.addUpdate(function(b){a.update(b)})};a.prototype.bindingsButtonClick=function(a,b,c){var e=this.chart,d=e.renderer.boxWrapper,p=!0;this.selectedButtonElement&&(this.selectedButtonElement.classList===a.classList&&(p=!1),r(this,"deselectButton",{button:this.selectedButtonElement}),this.nextEvent&&(this.currentUserDetails&&"annotations"===this.currentUserDetails.coll&&e.removeAnnotation(this.currentUserDetails),this.mouseMoveEvent=this.nextEvent=!1));p?(this.selectedButton=
88
88
  b,this.selectedButtonElement=a,r(this,"selectButton",{button:a}),b.init&&b.init.call(this,a,c),(b.start||b.steps)&&e.renderer.boxWrapper.addClass("highcharts-draw-mode")):(e.stockTools&&e.stockTools.toggleButtonAciveClass(a),d.removeClass("highcharts-draw-mode"),this.mouseMoveEvent=this.nextEvent=!1,this.selectedButton=null)};a.prototype.bindingsChartClick=function(a,b){a=this.chart;var e=this.activeAnnotation,d=this.selectedButton;a=a.renderer.boxWrapper;e&&(e.cancelClick||b.activeAnnotation||!b.target.parentNode||
@@ -101,7 +101,7 @@ style:"Style",padding:"Padding",fontSize:"Font size",color:"Color",height:"Heigh
101
101
  point:{x:a.value,y:b.value,xAxis:a.axis.options.index,yAxis:b.axis.options.index},r:5}]},c.annotationsOptions,c.bindings.circleAnnotation.annotationsOptions))},steps:[function(a,b){var c=b.options.shapes[0].point;if(D(c.xAxis)&&D(c.yAxis)){var e=this.chart.inverted;var d=this.chart.xAxis[c.xAxis].toPixels(c.x);c=this.chart.yAxis[c.yAxis].toPixels(c.y);e=Math.max(Math.sqrt(Math.pow(e?c-a.chartX:d-a.chartX,2)+Math.pow(e?d-a.chartY:c-a.chartY,2)),5)}b.update({shapes:[{r:e}]})}]},ellipseAnnotation:{className:"highcharts-ellipse-annotation",
102
102
  start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);var c=this.chart.options.navigation;if(a&&b)return this.chart.addAnnotation(E({langKey:"ellipse",type:"basicAnnotation",shapes:[{type:"ellipse",xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:a.value,y:b.value},{x:a.value,y:b.value}],ry:1}]},c.annotationsOptions,c.bindings.ellipseAnnotation.annotationOptions))},steps:[function(a,b){b=b.shapes[0];
103
103
  var c=b.getAbsolutePosition(b.points[1]);b.translatePoint(a.chartX-c.x,a.chartY-c.y,1);b.redraw(!1)},function(a,b){b=b.shapes[0];var c=b.getAbsolutePosition(b.points[0]),e=b.getAbsolutePosition(b.points[1]);a=b.getDistanceFromLine(c,e,a.chartX,a.chartY);c=b.getYAxis();a=Math.abs(c.toValue(0)-c.toValue(a));b.setYRadius(a);b.redraw(!1)}]},rectangleAnnotation:{className:"highcharts-rectangle-annotation",start:function(a){a=this.chart.pointer.getCoordinates(a);var b=this.utils.getAssignedAxis(a.xAxis),
104
- c=this.utils.getAssignedAxis(a.yAxis);if(b&&c){a=b.value;var d=c.value;b=b.axis.options.index;c=c.axis.options.index;var e=this.chart.options.navigation;return this.chart.addAnnotation(E({langKey:"rectangle",type:"basicAnnotation",shapes:[{type:"path",points:[{xAxis:b,yAxis:c,x:a,y:d},{xAxis:b,yAxis:c,x:a,y:d},{xAxis:b,yAxis:c,x:a,y:d},{xAxis:b,yAxis:c,x:a,y:d},{command:"Z"}]}]},e.annotationsOptions,e.bindings.rectangleAnnotation.annotationsOptions))}},steps:[function(a,b){var c=b.options.shapes[0].points,
104
+ c=this.utils.getAssignedAxis(a.yAxis);if(b&&c){a=b.value;var e=c.value;b=b.axis.options.index;c=c.axis.options.index;var d=this.chart.options.navigation;return this.chart.addAnnotation(E({langKey:"rectangle",type:"basicAnnotation",shapes:[{type:"path",points:[{xAxis:b,yAxis:c,x:a,y:e},{xAxis:b,yAxis:c,x:a,y:e},{xAxis:b,yAxis:c,x:a,y:e},{xAxis:b,yAxis:c,x:a,y:e},{command:"Z"}]}]},d.annotationsOptions,d.bindings.rectangleAnnotation.annotationsOptions))}},steps:[function(a,b){var c=b.options.shapes[0].points,
105
105
  d=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(d.xAxis);d=this.utils.getAssignedAxis(d.yAxis);a&&d&&(a=a.value,d=d.value,c[1].x=a,c[2].x=a,c[2].y=d,c[3].y=d,b.update({shapes:[{points:c}]}))}]},labelAnnotation:{className:"highcharts-label-annotation",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);var c=this.chart.options.navigation;if(a&&b)return this.chart.addAnnotation(E({langKey:"label",
106
106
  type:"basicAnnotation",labelOptions:{format:"{y:.2f}"},labels:[{point:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,x:a.value,y:b.value},overflow:"none",crop:!0}]},c.annotationsOptions,c.bindings.labelAnnotation.annotationsOptions))}}},events:{},annotationsOptions:{animation:{defer:0}}}});f(h,"render",function(){var a=this,b=a.navigationBindings;if(a&&b){var c=!1;a.series.forEach(function(a){!a.options.isInternal&&a.visible&&(c=!0)});y(b.boundClassNames,function(b,d){if(a.navigationBindings&&
107
107
  a.navigationBindings.container&&a.navigationBindings.container[0]&&(d=a.navigationBindings.container[0].querySelectorAll("."+d)))for(var e=0;e<d.length;e++){var m=d[e],n=m.className;"normal"===b.noDataState?-1!==n.indexOf("highcharts-disabled-btn")&&m.classList.remove("highcharts-disabled-btn"):c?-1!==n.indexOf("highcharts-disabled-btn")&&m.classList.remove("highcharts-disabled-btn"):-1===n.indexOf("highcharts-disabled-btn")&&(m.className+=" highcharts-disabled-btn")}})}});f(m,"closePopup",function(){this.deselectAnnotation()});
@@ -130,6 +130,6 @@ c,g,d,d.linkedParent&&d.linkedParent.options.id);h.volumeSeriesID&&this.indicato
130
130
  l,c)}else"params.volumeSeriesID"===n||u(c)||m.call(e,n,d,f,{value:c,type:"text"})})},getAmount:function(){var a=0;this.series.forEach(function(b){var c=b.options;(b.params||c&&c.params)&&a++});return a}},tabs:{init:function(a){var b=this.tabs,c=this.indicators.getAmount.call(a);a&&(a=b.addMenuItem.call(this,"add"),b.addMenuItem.call(this,"edit",c),b.addContentItem.call(this,"add"),b.addContentItem.call(this,"edit"),b.switchTabs.call(this,c),b.selectTab.call(this,a,0))},addMenuItem:function(a,c){var d=
131
131
  this.popup.container,g="highcharts-tab-item",h=this.lang;0===c&&(g+=" highcharts-tab-disabled");c=f("span",{className:g},void 0,d);c.appendChild(b.createTextNode(h[a+"Button"]||a));c.setAttribute("highcharts-data-tab-type",a);return c},addContentItem:function(){return f("div",{className:"highcharts-tab-item-content highcharts-no-mousewheel"},void 0,this.popup.container)},switchTabs:function(a){var b=this,c;this.popup.container.querySelectorAll(".highcharts-tab-item").forEach(function(d,e){c=d.getAttribute("highcharts-data-tab-type");
132
132
  "edit"===c&&0===a||["click","touchstart"].forEach(function(a){g(d,a,function(){b.tabs.deselectAll.call(b);b.tabs.selectTab.call(b,this,e)})})})},selectTab:function(a,b){var c=this.popup.container.querySelectorAll(".highcharts-tab-item-content");a.className+=" highcharts-tab-item-active";c[b].className+=" highcharts-tab-item-show"},deselectAll:function(){var a=this.popup.container,b=a.querySelectorAll(".highcharts-tab-item");a=a.querySelectorAll(".highcharts-tab-item-content");var c;for(c=0;c<b.length;c++)b[c].classList.remove("highcharts-tab-item-active"),
133
- a[c].classList.remove("highcharts-tab-item-show")}}};g(t,"showPopup",function(a){this.popup||(this.popup=new h.Popup(this.chart.container,this.chart.options.navigation.iconsURL||this.chart.options.stockTools&&this.chart.options.stockTools.gui.iconsURL||"https://code.highcharts.com/9.3.2/gfx/stock-icons/",this.chart));this.popup.showForm(a.formType,this.chart,a.options,a.onSubmit)});g(t,"closePopup",function(){this.popup&&this.popup.closePopup()});return h.Popup});u(a,"masters/modules/annotations.src.js",
133
+ a[c].classList.remove("highcharts-tab-item-show")}}};g(t,"showPopup",function(a){this.popup||(this.popup=new h.Popup(this.chart.container,this.chart.options.navigation.iconsURL||this.chart.options.stockTools&&this.chart.options.stockTools.gui.iconsURL||"https://code.highcharts.com/10.1.0/gfx/stock-icons/",this.chart));this.popup.showForm(a.formType,this.chart,a.options,a.onSubmit)});g(t,"closePopup",function(){this.popup&&this.popup.closePopup()});return h.Popup});u(a,"masters/modules/annotations.src.js",
134
134
  [],function(){})});
135
135
  //# sourceMappingURL=annotations.js.map