highcharts 9.1.1 → 9.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (718) hide show
  1. package/bower.json +1 -1
  2. package/css/annotations/popup.css +29 -28
  3. package/css/annotations/popup.scss +29 -27
  4. package/css/highcharts.css +15 -0
  5. package/css/highcharts.scss +12 -0
  6. package/css/stocktools/gui.css +1 -0
  7. package/css/stocktools/gui.scss +1 -0
  8. package/css/themes/dark-unica.css +15 -0
  9. package/css/themes/grid-light.css +15 -0
  10. package/css/themes/sand-signika.css +15 -0
  11. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +8 -2
  12. package/es-modules/Accessibility/Components/LegendComponent.js +19 -8
  13. package/es-modules/Accessibility/Components/MenuComponent.js +19 -13
  14. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +4 -8
  15. package/es-modules/Accessibility/FocusBorder.js +1 -3
  16. package/es-modules/Accessibility/Options/LangOptions.js +3 -3
  17. package/es-modules/Accessibility/Utils/Announcer.js +22 -5
  18. package/es-modules/Accessibility/Utils/ChartUtilities.js +6 -1
  19. package/es-modules/Core/Animation/AnimationUtilities.js +12 -4
  20. package/es-modules/Core/Animation/Fx.js +15 -12
  21. package/es-modules/Core/Axis/Axis.js +25 -13
  22. package/es-modules/Core/Axis/AxisDefaults.js +0 -1
  23. package/es-modules/Core/Axis/BrokenAxis.js +32 -15
  24. package/es-modules/Core/Axis/Color/ColorAxis.js +665 -0
  25. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +237 -0
  26. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +434 -0
  27. package/es-modules/Core/Axis/DateTimeAxis.js +163 -133
  28. package/es-modules/Core/Axis/GridAxis.js +8 -3
  29. package/es-modules/Core/Axis/LogarithmicAxis.js +159 -117
  30. package/es-modules/Core/Axis/OrdinalAxis.js +666 -460
  31. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +874 -0
  32. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +292 -0
  33. package/es-modules/Core/Axis/RadialAxis.js +858 -745
  34. package/es-modules/Core/Axis/ScrollbarAxis.js +7 -0
  35. package/es-modules/Core/Axis/StackingAxis.js +159 -140
  36. package/es-modules/Core/Axis/Tick.js +17 -27
  37. package/es-modules/Core/Chart/Chart.js +24 -38
  38. package/es-modules/Core/Chart/ChartDefaults.js +1 -1
  39. package/es-modules/Core/Chart/StockChart.js +12 -0
  40. package/es-modules/Core/Color/Color.js +96 -104
  41. package/es-modules/Core/DefaultOptions.js +269 -248
  42. package/es-modules/Core/Foundation.js +9 -8
  43. package/es-modules/Core/Geometry/CircleUtilities.js +385 -0
  44. package/es-modules/Core/Geometry/GeometryUtilities.js +83 -0
  45. package/es-modules/Core/Globals.js +23 -1
  46. package/es-modules/{Extensions/Ajax.js → Core/HttpUtilities.js} +86 -42
  47. package/es-modules/Core/{Legend.js → Legend/Legend.js} +142 -116
  48. package/es-modules/{Mixins → Core/Legend}/LegendSymbol.js +54 -38
  49. package/es-modules/Core/Navigator.js +3 -0
  50. package/es-modules/Core/Pointer.js +9 -0
  51. package/es-modules/Core/Renderer/HTML/AST.js +100 -82
  52. package/es-modules/Core/Renderer/HTML/HTMLElement.js +17 -7
  53. package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +26 -9
  54. package/es-modules/Core/Renderer/RendererRegistry.js +9 -4
  55. package/es-modules/Core/Renderer/RendererUtilities.js +159 -0
  56. package/es-modules/Core/Renderer/SVG/SVGElement.js +13 -7
  57. package/es-modules/Core/Renderer/SVG/SVGLabel.js +9 -29
  58. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +2 -2
  59. package/es-modules/Core/Renderer/SVG/TextBuilder.js +18 -16
  60. package/es-modules/Core/Responsive.js +166 -148
  61. package/es-modules/Core/Series/DataLabel.js +564 -0
  62. package/es-modules/Core/Series/Point.js +233 -209
  63. package/es-modules/Core/Series/Series.js +174 -2339
  64. package/es-modules/Core/Series/SeriesDefaults.js +2293 -0
  65. package/es-modules/Core/Series/SeriesRegistry.js +3 -9
  66. package/es-modules/Core/Time.js +78 -2
  67. package/es-modules/Core/Tooltip.js +178 -236
  68. package/es-modules/Core/Utilities.js +409 -394
  69. package/es-modules/Extensions/Annotations/Annotations.js +102 -49
  70. package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +9 -1
  71. package/es-modules/Extensions/Annotations/NavigationBindings.js +30 -25
  72. package/es-modules/Extensions/Annotations/Popup.js +16 -7
  73. package/es-modules/Extensions/Boost/BoostOverrides.js +5 -1
  74. package/es-modules/Extensions/Boost/WGLRenderer.js +5 -4
  75. package/es-modules/Extensions/Boost/WGLVBuffer.js +3 -0
  76. package/es-modules/Extensions/BoostCanvas.js +1 -1
  77. package/es-modules/Extensions/CurrentDateIndication.js +1 -1
  78. package/es-modules/Extensions/Data.js +82 -76
  79. package/es-modules/Extensions/DataGrouping.js +225 -184
  80. package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
  81. package/es-modules/Extensions/DraggablePoints.js +13 -5
  82. package/es-modules/Extensions/Drilldown.js +41 -14
  83. package/es-modules/Extensions/ExportData.js +7 -4
  84. package/es-modules/Extensions/Exporting/Exporting.js +1273 -0
  85. package/es-modules/Extensions/Exporting/ExportingDefaults.js +803 -0
  86. package/es-modules/Extensions/Exporting/ExportingSymbols.js +73 -0
  87. package/es-modules/Extensions/FullScreen.js +7 -5
  88. package/es-modules/Extensions/NoDataToDisplay.js +1 -1
  89. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +617 -0
  90. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +58 -0
  91. package/es-modules/Extensions/Oldie/Oldie.js +1 -1
  92. package/es-modules/Extensions/Pane.js +0 -1
  93. package/es-modules/Extensions/PatternFill.js +23 -10
  94. package/es-modules/Extensions/Polar.js +2 -1
  95. package/es-modules/Extensions/RangeSelector.js +1 -1
  96. package/es-modules/Extensions/Themes/Avocado.js +49 -20
  97. package/es-modules/Extensions/Themes/DarkBlue.js +226 -203
  98. package/es-modules/Extensions/Themes/DarkGreen.js +231 -203
  99. package/es-modules/Extensions/Themes/DarkUnica.js +201 -172
  100. package/es-modules/Extensions/Themes/Gray.js +228 -205
  101. package/es-modules/Extensions/Themes/Grid.js +109 -81
  102. package/es-modules/Extensions/Themes/GridLight.js +83 -55
  103. package/es-modules/Extensions/Themes/HighContrastDark.js +192 -164
  104. package/es-modules/Extensions/Themes/HighContrastLight.js +49 -21
  105. package/es-modules/Extensions/Themes/SandSignika.js +115 -86
  106. package/es-modules/Extensions/Themes/Skies.js +102 -74
  107. package/es-modules/Extensions/Themes/Sunset.js +47 -19
  108. package/es-modules/Mixins/ColorSeries.js +0 -1
  109. package/es-modules/Mixins/MultipleLines.js +6 -0
  110. package/es-modules/Mixins/TreeSeries.js +1 -1
  111. package/es-modules/Series/Area/AreaSeries.js +2 -2
  112. package/es-modules/Series/AreaSpline/AreaSplineSeries.js +2 -2
  113. package/es-modules/Series/Bubble/BubbleLegendComposition.js +279 -0
  114. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +267 -0
  115. package/es-modules/Series/Bubble/BubbleLegendItem.js +472 -0
  116. package/es-modules/Series/Bubble/BubbleSeries.js +6 -2
  117. package/es-modules/Series/Column/ColumnDataLabel.js +109 -0
  118. package/es-modules/Series/Column/ColumnSeries.js +39 -26
  119. package/es-modules/Series/Column3D/Column3DComposition.js +5 -2
  120. package/es-modules/Series/Flags/FlagsSeries.js +8 -1
  121. package/es-modules/Series/Gantt/GanttSeries.js +3 -3
  122. package/es-modules/Series/Heatmap/HeatmapSeries.js +9 -5
  123. package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +60 -0
  124. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +277 -0
  125. package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +83 -0
  126. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +370 -0
  127. package/es-modules/Series/Line/LineSeries.js +12 -8
  128. package/es-modules/Series/Map/MapSeries.js +5 -3
  129. package/es-modules/Series/MapBubble/MapBubbleSeries.js +6 -5
  130. package/es-modules/Series/OHLC/OHLCPoint.js +11 -0
  131. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -1
  132. package/es-modules/Series/Pie/PieDataLabel.js +448 -0
  133. package/es-modules/Series/Pie/PiePoint.js +35 -34
  134. package/es-modules/Series/Pie/PieSeries.js +19 -16
  135. package/es-modules/Series/Polygon/PolygonSeries.js +3 -3
  136. package/es-modules/Series/Sankey/SankeySeries.js +9 -7
  137. package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +2 -2
  138. package/es-modules/Series/Sunburst/SunburstSeries.js +1 -14
  139. package/es-modules/Series/Timeline/TimelinePoint.js +6 -0
  140. package/es-modules/Series/Timeline/TimelineSeries.js +14 -17
  141. package/es-modules/Series/Treemap/TreemapSeries.js +3 -3
  142. package/es-modules/Series/Venn/VennSeries.js +4 -4
  143. package/es-modules/Series/Venn/VennUtils.js +10 -16
  144. package/es-modules/Series/Waterfall/WaterfallSeries.js +40 -35
  145. package/es-modules/Series/Wordcloud/WordcloudSeries.js +1 -0
  146. package/es-modules/Series/XRange/XRangeSeries.js +4 -2
  147. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +92 -75
  148. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +20 -8
  149. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +17 -4
  150. package/es-modules/Stock/StockToolsBindings.js +77 -38
  151. package/es-modules/Stock/StockToolsGui.js +28 -3
  152. package/es-modules/masters/highcharts-3d.src.js +1 -1
  153. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  154. package/es-modules/masters/highcharts-more.src.js +11 -7
  155. package/es-modules/masters/highcharts.src.js +25 -9
  156. package/es-modules/masters/highmaps.src.js +1 -1
  157. package/es-modules/masters/highstock.src.js +1 -1
  158. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  159. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  160. package/es-modules/masters/indicators/ao.src.js +1 -1
  161. package/es-modules/masters/indicators/apo.src.js +1 -1
  162. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  163. package/es-modules/masters/indicators/aroon.src.js +1 -1
  164. package/es-modules/masters/indicators/atr.src.js +1 -1
  165. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  166. package/es-modules/masters/indicators/cci.src.js +1 -1
  167. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  168. package/es-modules/masters/indicators/cmf.src.js +1 -1
  169. package/es-modules/masters/indicators/cmo.src.js +1 -1
  170. package/es-modules/masters/indicators/dema.src.js +1 -1
  171. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  172. package/es-modules/masters/indicators/dmi.src.js +1 -1
  173. package/es-modules/masters/indicators/dpo.src.js +1 -1
  174. package/es-modules/masters/indicators/ema.src.js +1 -1
  175. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  176. package/es-modules/masters/indicators/indicators-all.src.js +1 -1
  177. package/es-modules/masters/indicators/indicators.src.js +1 -1
  178. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  179. package/es-modules/masters/indicators/klinger.src.js +1 -1
  180. package/es-modules/masters/indicators/macd.src.js +1 -1
  181. package/es-modules/masters/indicators/mfi.src.js +1 -1
  182. package/es-modules/masters/indicators/momentum.src.js +1 -1
  183. package/es-modules/masters/indicators/natr.src.js +1 -1
  184. package/es-modules/masters/indicators/obv.src.js +1 -1
  185. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  186. package/es-modules/masters/indicators/ppo.src.js +1 -1
  187. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  188. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  189. package/es-modules/masters/indicators/psar.src.js +1 -1
  190. package/es-modules/masters/indicators/regressions.src.js +1 -1
  191. package/es-modules/masters/indicators/roc.src.js +1 -1
  192. package/es-modules/masters/indicators/rsi.src.js +1 -1
  193. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  194. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  195. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  196. package/es-modules/masters/indicators/tema.src.js +1 -1
  197. package/es-modules/masters/indicators/trendline.src.js +1 -1
  198. package/es-modules/masters/indicators/trix.src.js +1 -1
  199. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  200. package/es-modules/masters/indicators/vwap.src.js +1 -1
  201. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  202. package/es-modules/masters/indicators/wma.src.js +1 -1
  203. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  204. package/es-modules/masters/modules/accessibility.src.js +1 -1
  205. package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
  206. package/es-modules/masters/modules/annotations.src.js +1 -1
  207. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  208. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  209. package/es-modules/masters/modules/boost.src.js +1 -1
  210. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  211. package/es-modules/masters/modules/bullet.src.js +1 -1
  212. package/es-modules/masters/modules/coloraxis.src.js +6 -2
  213. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  214. package/es-modules/masters/modules/cylinder.src.js +1 -1
  215. package/es-modules/masters/modules/data.src.js +8 -1
  216. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  217. package/es-modules/masters/modules/debugger.src.js +1 -1
  218. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  219. package/es-modules/masters/modules/dotplot.src.js +1 -1
  220. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  221. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  222. package/es-modules/masters/modules/drilldown.src.js +1 -1
  223. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  224. package/es-modules/masters/modules/export-data.src.js +1 -1
  225. package/es-modules/masters/modules/exporting.src.js +10 -2
  226. package/es-modules/masters/modules/full-screen.src.js +1 -1
  227. package/es-modules/masters/modules/funnel.src.js +1 -1
  228. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  229. package/es-modules/masters/modules/gantt.src.js +9 -4
  230. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  231. package/es-modules/masters/modules/heatmap.src.js +6 -2
  232. package/es-modules/masters/modules/heikinashi.src.js +14 -0
  233. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  234. package/es-modules/masters/modules/hollowcandlestick.src.js +14 -0
  235. package/es-modules/masters/modules/item-series.src.js +1 -1
  236. package/es-modules/masters/modules/lollipop.src.js +1 -1
  237. package/es-modules/masters/modules/map.src.js +10 -6
  238. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  239. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  240. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  241. package/es-modules/masters/modules/offline-exporting.src.js +8 -2
  242. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  243. package/es-modules/masters/modules/oldie.src.js +1 -1
  244. package/es-modules/masters/modules/organization.src.js +1 -1
  245. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  246. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  247. package/es-modules/masters/modules/pareto.src.js +1 -1
  248. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  249. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  250. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  251. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  252. package/es-modules/masters/modules/sankey.src.js +1 -1
  253. package/es-modules/masters/modules/series-label.src.js +1 -1
  254. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  255. package/es-modules/masters/modules/sonification.src.js +1 -1
  256. package/es-modules/masters/modules/static-scale.src.js +1 -1
  257. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  258. package/es-modules/masters/modules/stock.src.js +3 -2
  259. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  260. package/es-modules/masters/modules/sunburst.src.js +1 -1
  261. package/es-modules/masters/modules/tilemap.src.js +1 -1
  262. package/es-modules/masters/modules/timeline.src.js +1 -1
  263. package/es-modules/masters/modules/treegrid.src.js +1 -1
  264. package/es-modules/masters/modules/treemap.src.js +1 -1
  265. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  266. package/es-modules/masters/modules/variwide.src.js +1 -1
  267. package/es-modules/masters/modules/vector.src.js +1 -1
  268. package/es-modules/masters/modules/venn.src.js +1 -1
  269. package/es-modules/masters/modules/windbarb.src.js +1 -1
  270. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  271. package/es-modules/masters/modules/xrange.src.js +1 -1
  272. package/es-modules/masters/themes/avocado.src.js +5 -2
  273. package/es-modules/masters/themes/dark-blue.src.js +5 -2
  274. package/es-modules/masters/themes/dark-green.src.js +5 -2
  275. package/es-modules/masters/themes/dark-unica.src.js +5 -2
  276. package/es-modules/masters/themes/gray.src.js +5 -2
  277. package/es-modules/masters/themes/grid-light.src.js +5 -2
  278. package/es-modules/masters/themes/grid.src.js +5 -2
  279. package/es-modules/masters/themes/high-contrast-dark.src.js +5 -2
  280. package/es-modules/masters/themes/high-contrast-light.src.js +5 -2
  281. package/es-modules/masters/themes/sand-signika.src.js +5 -2
  282. package/es-modules/masters/themes/skies.src.js +5 -2
  283. package/es-modules/masters/themes/sunset.src.js +5 -2
  284. package/gfx/stock-icons/annotations-hidden.svg +1 -1
  285. package/gfx/stock-icons/annotations-visible.svg +2 -2
  286. package/gfx/stock-icons/arrow-bottom.svg +1 -1
  287. package/gfx/stock-icons/arrow-left.svg +1 -1
  288. package/gfx/stock-icons/arrow-line.svg +1 -1
  289. package/gfx/stock-icons/arrow-ray.svg +1 -1
  290. package/gfx/stock-icons/arrow-right.svg +1 -1
  291. package/gfx/stock-icons/arrow-segment.svg +1 -2
  292. package/gfx/stock-icons/circle.svg +1 -1
  293. package/gfx/stock-icons/close.svg +2 -2
  294. package/gfx/stock-icons/crooked-3.svg +1 -1
  295. package/gfx/stock-icons/crooked-5.svg +1 -1
  296. package/gfx/stock-icons/current-price-hide.svg +3 -3
  297. package/gfx/stock-icons/current-price-show.svg +2 -2
  298. package/gfx/stock-icons/destroy.svg +1 -1
  299. package/gfx/stock-icons/drawing.svg +18 -0
  300. package/gfx/stock-icons/edit.svg +1 -1
  301. package/gfx/stock-icons/elliott-3.svg +1 -1
  302. package/gfx/stock-icons/elliott-5.svg +1 -1
  303. package/gfx/stock-icons/ellipse.svg +11 -0
  304. package/gfx/stock-icons/fibonacci-timezone.svg +16 -0
  305. package/gfx/stock-icons/fibonacci.svg +1 -1
  306. package/gfx/stock-icons/flag-basic.svg +1 -1
  307. package/gfx/stock-icons/flag-diamond.svg +2 -2
  308. package/gfx/stock-icons/flag-elipse.svg +1 -1
  309. package/gfx/stock-icons/flag-trapeze.svg +2 -2
  310. package/gfx/stock-icons/fullscreen.svg +4 -4
  311. package/gfx/stock-icons/horizontal-line.svg +1 -1
  312. package/gfx/stock-icons/indicators.svg +3 -3
  313. package/gfx/stock-icons/label.svg +4 -4
  314. package/gfx/stock-icons/line.svg +1 -1
  315. package/gfx/stock-icons/linear.svg +11 -0
  316. package/gfx/stock-icons/logarithmic.svg +1 -0
  317. package/gfx/stock-icons/measure-x.svg +2 -2
  318. package/gfx/stock-icons/measure-xy.svg +1 -1
  319. package/gfx/stock-icons/measure-y.svg +1 -1
  320. package/gfx/stock-icons/panning.svg +17 -0
  321. package/gfx/stock-icons/parallel-channel.svg +1 -1
  322. package/gfx/stock-icons/pitchfork.svg +1 -1
  323. package/gfx/stock-icons/ray.svg +1 -1
  324. package/gfx/stock-icons/rectangle.svg +1 -1
  325. package/gfx/stock-icons/remove-annotations.svg +2 -2
  326. package/gfx/stock-icons/save-chart.svg +3 -3
  327. package/gfx/stock-icons/segment.svg +1 -1
  328. package/gfx/stock-icons/separator.svg +1 -1
  329. package/gfx/stock-icons/series-candlestick.svg +1 -1
  330. package/gfx/stock-icons/series-heikin-ashi.svg +1 -0
  331. package/gfx/stock-icons/series-hlc.svg +1 -0
  332. package/gfx/stock-icons/series-hollow-candlestick.svg +1 -0
  333. package/gfx/stock-icons/series-line.svg +1 -1
  334. package/gfx/stock-icons/series-ohlc.svg +4 -4
  335. package/gfx/stock-icons/time-cycles.svg +35 -0
  336. package/gfx/stock-icons/vertical-arrow.svg +1 -1
  337. package/gfx/stock-icons/vertical-counter.svg +1 -1
  338. package/gfx/stock-icons/vertical-double-arrow.svg +1 -1
  339. package/gfx/stock-icons/vertical-label.svg +3 -3
  340. package/gfx/stock-icons/vertical-line.svg +1 -1
  341. package/gfx/stock-icons/zoom-x.svg +2 -2
  342. package/gfx/stock-icons/zoom-xy.svg +2 -2
  343. package/gfx/stock-icons/zoom-y.svg +2 -2
  344. package/highcharts-3d.js +24 -24
  345. package/highcharts-3d.js.map +1 -1
  346. package/highcharts-3d.src.js +6 -3
  347. package/highcharts-gantt.js +800 -792
  348. package/highcharts-gantt.js.map +1 -1
  349. package/highcharts-gantt.src.js +16535 -15918
  350. package/highcharts-more.d.ts +73 -1
  351. package/highcharts-more.js +193 -192
  352. package/highcharts-more.js.map +1 -1
  353. package/highcharts-more.src.d.ts +73 -1
  354. package/highcharts-more.src.js +8044 -7839
  355. package/highcharts.d.ts +3850 -177
  356. package/highcharts.js +589 -581
  357. package/highcharts.js.map +1 -1
  358. package/highcharts.src.d.ts +3850 -177
  359. package/highcharts.src.js +16635 -16060
  360. package/highmaps.js +708 -698
  361. package/highmaps.js.map +1 -1
  362. package/highmaps.src.js +17419 -16521
  363. package/highstock.js +782 -769
  364. package/highstock.js.map +1 -1
  365. package/highstock.src.js +28867 -27975
  366. package/indicators/acceleration-bands.js +9 -9
  367. package/indicators/acceleration-bands.js.map +1 -1
  368. package/indicators/acceleration-bands.src.js +7 -1
  369. package/indicators/accumulation-distribution.js +1 -1
  370. package/indicators/accumulation-distribution.src.js +1 -1
  371. package/indicators/ao.js +1 -1
  372. package/indicators/ao.src.js +1 -1
  373. package/indicators/apo.js +1 -1
  374. package/indicators/apo.src.js +1 -1
  375. package/indicators/aroon-oscillator.js +9 -9
  376. package/indicators/aroon-oscillator.js.map +1 -1
  377. package/indicators/aroon-oscillator.src.js +7 -1
  378. package/indicators/aroon.js +9 -9
  379. package/indicators/aroon.js.map +1 -1
  380. package/indicators/aroon.src.js +7 -1
  381. package/indicators/atr.js +1 -1
  382. package/indicators/atr.src.js +1 -1
  383. package/indicators/bollinger-bands.js +9 -9
  384. package/indicators/bollinger-bands.js.map +1 -1
  385. package/indicators/bollinger-bands.src.js +7 -1
  386. package/indicators/cci.js +1 -1
  387. package/indicators/cci.src.js +1 -1
  388. package/indicators/chaikin.js +1 -1
  389. package/indicators/chaikin.src.js +1 -1
  390. package/indicators/cmf.js +1 -1
  391. package/indicators/cmf.src.js +1 -1
  392. package/indicators/cmo.js +1 -1
  393. package/indicators/cmo.src.js +1 -1
  394. package/indicators/dema.js +1 -1
  395. package/indicators/dema.src.js +1 -1
  396. package/indicators/disparity-index.js +1 -1
  397. package/indicators/disparity-index.src.js +1 -1
  398. package/indicators/dmi.js +11 -11
  399. package/indicators/dmi.js.map +1 -1
  400. package/indicators/dmi.src.js +7 -1
  401. package/indicators/dpo.js +1 -1
  402. package/indicators/dpo.src.js +1 -1
  403. package/indicators/ema.js +1 -1
  404. package/indicators/ema.src.js +1 -1
  405. package/indicators/ichimoku-kinko-hyo.js +1 -1
  406. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  407. package/indicators/indicators-all.js +203 -200
  408. package/indicators/indicators-all.js.map +1 -1
  409. package/indicators/indicators-all.src.js +206 -104
  410. package/indicators/indicators.js +12 -11
  411. package/indicators/indicators.js.map +1 -1
  412. package/indicators/indicators.src.js +108 -90
  413. package/indicators/keltner-channels.js +9 -9
  414. package/indicators/keltner-channels.js.map +1 -1
  415. package/indicators/keltner-channels.src.js +7 -1
  416. package/indicators/klinger.js +13 -13
  417. package/indicators/klinger.js.map +1 -1
  418. package/indicators/klinger.src.js +7 -1
  419. package/indicators/macd.js +1 -1
  420. package/indicators/macd.src.js +1 -1
  421. package/indicators/mfi.js +1 -1
  422. package/indicators/mfi.src.js +1 -1
  423. package/indicators/momentum.js +1 -1
  424. package/indicators/momentum.src.js +1 -1
  425. package/indicators/natr.js +1 -1
  426. package/indicators/natr.src.js +1 -1
  427. package/indicators/obv.js +1 -1
  428. package/indicators/obv.src.js +1 -1
  429. package/indicators/pivot-points.js +1 -1
  430. package/indicators/pivot-points.src.js +1 -1
  431. package/indicators/ppo.js +1 -1
  432. package/indicators/ppo.src.js +1 -1
  433. package/indicators/price-channel.js +9 -9
  434. package/indicators/price-channel.js.map +1 -1
  435. package/indicators/price-channel.src.js +7 -1
  436. package/indicators/price-envelopes.js +1 -1
  437. package/indicators/price-envelopes.src.js +1 -1
  438. package/indicators/psar.js +1 -1
  439. package/indicators/psar.src.js +1 -1
  440. package/indicators/regressions.js +1 -1
  441. package/indicators/regressions.src.js +1 -1
  442. package/indicators/roc.js +1 -1
  443. package/indicators/roc.src.js +1 -1
  444. package/indicators/rsi.js +1 -1
  445. package/indicators/rsi.src.js +1 -1
  446. package/indicators/slow-stochastic.js +1 -1
  447. package/indicators/slow-stochastic.src.js +1 -1
  448. package/indicators/stochastic.js +10 -10
  449. package/indicators/stochastic.js.map +1 -1
  450. package/indicators/stochastic.src.js +7 -1
  451. package/indicators/supertrend.js +10 -10
  452. package/indicators/supertrend.js.map +1 -1
  453. package/indicators/supertrend.src.js +23 -10
  454. package/indicators/tema.js +1 -1
  455. package/indicators/tema.src.js +1 -1
  456. package/indicators/trendline.js +1 -1
  457. package/indicators/trendline.src.js +1 -1
  458. package/indicators/trix.js +1 -1
  459. package/indicators/trix.src.js +1 -1
  460. package/indicators/volume-by-price.js +17 -15
  461. package/indicators/volume-by-price.js.map +1 -1
  462. package/indicators/volume-by-price.src.js +71 -6
  463. package/indicators/vwap.js +1 -1
  464. package/indicators/vwap.src.js +1 -1
  465. package/indicators/williams-r.js +1 -1
  466. package/indicators/williams-r.src.js +1 -1
  467. package/indicators/wma.js +1 -1
  468. package/indicators/wma.src.js +1 -1
  469. package/indicators/zigzag.js +1 -1
  470. package/indicators/zigzag.src.js +1 -1
  471. package/modules/accessibility.js +203 -202
  472. package/modules/accessibility.js.map +1 -1
  473. package/modules/accessibility.src.js +89 -49
  474. package/modules/annotations-advanced.js +164 -163
  475. package/modules/annotations-advanced.js.map +1 -1
  476. package/modules/annotations-advanced.src.js +162 -87
  477. package/modules/annotations.js +111 -111
  478. package/modules/annotations.js.map +1 -1
  479. package/modules/annotations.src.js +162 -87
  480. package/modules/arrow-symbols.js +1 -1
  481. package/modules/arrow-symbols.src.js +1 -1
  482. package/modules/boost-canvas.js +2 -2
  483. package/modules/boost-canvas.js.map +1 -1
  484. package/modules/boost-canvas.src.js +2 -2
  485. package/modules/boost.js +52 -52
  486. package/modules/boost.js.map +1 -1
  487. package/modules/boost.src.js +15 -7
  488. package/modules/broken-axis.js +13 -13
  489. package/modules/broken-axis.js.map +1 -1
  490. package/modules/broken-axis.src.js +34 -15
  491. package/modules/bullet.js +1 -1
  492. package/modules/bullet.src.js +1 -1
  493. package/modules/coloraxis.js +24 -22
  494. package/modules/coloraxis.js.map +1 -1
  495. package/modules/coloraxis.src.js +954 -774
  496. package/modules/current-date-indicator.js +2 -2
  497. package/modules/current-date-indicator.js.map +1 -1
  498. package/modules/current-date-indicator.src.js +2 -2
  499. package/modules/cylinder.js +1 -1
  500. package/modules/cylinder.src.js +1 -1
  501. package/modules/data.js +33 -32
  502. package/modules/data.js.map +1 -1
  503. package/modules/data.src.js +182 -134
  504. package/modules/datagrouping.d.ts +5 -0
  505. package/modules/datagrouping.js +20 -20
  506. package/modules/datagrouping.js.map +1 -1
  507. package/modules/datagrouping.src.d.ts +5 -0
  508. package/modules/datagrouping.src.js +270 -228
  509. package/modules/debugger.js +3 -3
  510. package/modules/debugger.js.map +1 -1
  511. package/modules/debugger.src.js +3 -3
  512. package/modules/dependency-wheel.js +1 -1
  513. package/modules/dependency-wheel.src.js +1 -1
  514. package/modules/dotplot.js +1 -1
  515. package/modules/dotplot.src.js +1 -1
  516. package/modules/drag-panes.js +1 -1
  517. package/modules/drag-panes.src.js +1 -1
  518. package/modules/draggable-points.js +34 -34
  519. package/modules/draggable-points.js.map +1 -1
  520. package/modules/draggable-points.src.js +14 -5
  521. package/modules/drilldown.d.ts +27 -0
  522. package/modules/drilldown.js +18 -18
  523. package/modules/drilldown.js.map +1 -1
  524. package/modules/drilldown.src.d.ts +27 -0
  525. package/modules/drilldown.src.js +42 -16
  526. package/modules/dumbbell.js +1 -1
  527. package/modules/dumbbell.src.js +1 -1
  528. package/modules/export-data.js +20 -20
  529. package/modules/export-data.js.map +1 -1
  530. package/modules/export-data.src.js +8 -5
  531. package/modules/exporting.d.ts +29 -0
  532. package/modules/exporting.js +38 -35
  533. package/modules/exporting.js.map +1 -1
  534. package/modules/exporting.src.d.ts +29 -0
  535. package/modules/exporting.src.js +1937 -1614
  536. package/modules/full-screen.js +2 -2
  537. package/modules/full-screen.js.map +1 -1
  538. package/modules/full-screen.src.js +8 -6
  539. package/modules/funnel.js +1 -1
  540. package/modules/funnel.src.js +1 -1
  541. package/modules/funnel3d.js +1 -1
  542. package/modules/funnel3d.src.js +1 -1
  543. package/modules/gantt.js +218 -217
  544. package/modules/gantt.js.map +1 -1
  545. package/modules/gantt.src.js +74 -32
  546. package/modules/grid-axis.js +23 -22
  547. package/modules/grid-axis.js.map +1 -1
  548. package/modules/grid-axis.src.js +9 -4
  549. package/modules/heatmap.js +39 -37
  550. package/modules/heatmap.js.map +1 -1
  551. package/modules/heatmap.src.js +963 -779
  552. package/modules/heikinashi.js +17 -0
  553. package/modules/heikinashi.js.map +1 -0
  554. package/modules/heikinashi.src.js +394 -0
  555. package/modules/histogram-bellcurve.js +1 -1
  556. package/modules/histogram-bellcurve.src.js +1 -1
  557. package/modules/hollowcandlestick.js +18 -0
  558. package/modules/hollowcandlestick.js.map +1 -0
  559. package/modules/hollowcandlestick.src.js +504 -0
  560. package/modules/item-series.js +1 -1
  561. package/modules/item-series.src.js +1 -1
  562. package/modules/lollipop.js +1 -1
  563. package/modules/lollipop.src.js +1 -1
  564. package/modules/map.d.ts +9 -0
  565. package/modules/map.js +122 -119
  566. package/modules/map.js.map +1 -1
  567. package/modules/map.src.d.ts +9 -0
  568. package/modules/map.src.js +1655 -1332
  569. package/modules/marker-clusters.js +1 -1
  570. package/modules/marker-clusters.src.js +1 -1
  571. package/modules/networkgraph.js +1 -1
  572. package/modules/networkgraph.src.js +1 -1
  573. package/modules/no-data-to-display.js +3 -3
  574. package/modules/no-data-to-display.js.map +1 -1
  575. package/modules/no-data-to-display.src.js +2 -2
  576. package/modules/offline-exporting.js +18 -16
  577. package/modules/offline-exporting.js.map +1 -1
  578. package/modules/offline-exporting.src.js +623 -562
  579. package/modules/oldie-polyfills.js +1 -1
  580. package/modules/oldie-polyfills.src.js +1 -1
  581. package/modules/oldie.js +2 -2
  582. package/modules/oldie.src.js +2 -2
  583. package/modules/organization.js +1 -1
  584. package/modules/organization.src.js +1 -1
  585. package/modules/overlapping-datalabels.js +1 -1
  586. package/modules/overlapping-datalabels.src.js +1 -1
  587. package/modules/parallel-coordinates.js +1 -1
  588. package/modules/parallel-coordinates.src.js +1 -1
  589. package/modules/pareto.js +1 -1
  590. package/modules/pareto.src.js +1 -1
  591. package/modules/pathfinder.js +1 -1
  592. package/modules/pathfinder.src.js +1 -1
  593. package/modules/pattern-fill.js +14 -14
  594. package/modules/pattern-fill.js.map +1 -1
  595. package/modules/pattern-fill.src.js +24 -12
  596. package/modules/price-indicator.js +1 -1
  597. package/modules/price-indicator.src.js +1 -1
  598. package/modules/pyramid3d.js +1 -1
  599. package/modules/pyramid3d.src.js +1 -1
  600. package/modules/sankey.js +28 -28
  601. package/modules/sankey.js.map +1 -1
  602. package/modules/sankey.src.js +11 -11
  603. package/modules/series-label.js +1 -1
  604. package/modules/series-label.src.js +1 -1
  605. package/modules/solid-gauge.js +2 -2
  606. package/modules/solid-gauge.js.map +1 -1
  607. package/modules/solid-gauge.src.js +3 -3
  608. package/modules/sonification.js +1 -1
  609. package/modules/sonification.src.js +1 -1
  610. package/modules/static-scale.js +1 -1
  611. package/modules/static-scale.src.js +1 -1
  612. package/modules/stock-tools.js +159 -157
  613. package/modules/stock-tools.js.map +1 -1
  614. package/modules/stock-tools.src.js +253 -123
  615. package/modules/stock.d.ts +5 -0
  616. package/modules/stock.js +196 -191
  617. package/modules/stock.js.map +1 -1
  618. package/modules/stock.src.d.ts +5 -0
  619. package/modules/stock.src.js +7749 -7432
  620. package/modules/streamgraph.js +1 -1
  621. package/modules/streamgraph.src.js +1 -1
  622. package/modules/sunburst.js +5 -5
  623. package/modules/sunburst.js.map +1 -1
  624. package/modules/sunburst.src.js +6 -19
  625. package/modules/tilemap.js +1 -1
  626. package/modules/tilemap.src.js +1 -1
  627. package/modules/timeline.js +18 -17
  628. package/modules/timeline.js.map +1 -1
  629. package/modules/timeline.src.js +21 -24
  630. package/modules/treegrid.js +57 -57
  631. package/modules/treegrid.js.map +1 -1
  632. package/modules/treegrid.src.js +43 -19
  633. package/modules/treemap.js +5 -5
  634. package/modules/treemap.js.map +1 -1
  635. package/modules/treemap.src.js +5 -5
  636. package/modules/variable-pie.js +1 -1
  637. package/modules/variable-pie.src.js +1 -1
  638. package/modules/variwide.js +1 -1
  639. package/modules/variwide.src.js +1 -1
  640. package/modules/vector.js +1 -1
  641. package/modules/vector.src.js +1 -1
  642. package/modules/venn.js +31 -30
  643. package/modules/venn.js.map +1 -1
  644. package/modules/venn.src.js +508 -424
  645. package/modules/windbarb.js +1 -1
  646. package/modules/windbarb.src.js +1 -1
  647. package/modules/wordcloud.js +4 -4
  648. package/modules/wordcloud.js.map +1 -1
  649. package/modules/wordcloud.src.js +2 -1
  650. package/modules/xrange.js +17 -17
  651. package/modules/xrange.js.map +1 -1
  652. package/modules/xrange.src.js +7 -4
  653. package/package.json +1 -1
  654. package/themes/avocado.d.ts +6 -1
  655. package/themes/avocado.js +3 -3
  656. package/themes/avocado.js.map +1 -1
  657. package/themes/avocado.src.d.ts +6 -1
  658. package/themes/avocado.src.js +53 -22
  659. package/themes/dark-blue.d.ts +6 -1
  660. package/themes/dark-blue.js +3 -3
  661. package/themes/dark-blue.js.map +1 -1
  662. package/themes/dark-blue.src.d.ts +6 -1
  663. package/themes/dark-blue.src.js +231 -205
  664. package/themes/dark-green.d.ts +6 -1
  665. package/themes/dark-green.js +4 -4
  666. package/themes/dark-green.js.map +1 -1
  667. package/themes/dark-green.src.d.ts +6 -1
  668. package/themes/dark-green.src.js +236 -205
  669. package/themes/dark-unica.d.ts +6 -1
  670. package/themes/dark-unica.js +7 -7
  671. package/themes/dark-unica.js.map +1 -1
  672. package/themes/dark-unica.src.d.ts +6 -1
  673. package/themes/dark-unica.src.js +206 -174
  674. package/themes/gray.d.ts +6 -1
  675. package/themes/gray.js +3 -3
  676. package/themes/gray.js.map +1 -1
  677. package/themes/gray.src.d.ts +6 -1
  678. package/themes/gray.src.js +233 -207
  679. package/themes/grid-light.d.ts +6 -1
  680. package/themes/grid-light.js +4 -4
  681. package/themes/grid-light.js.map +1 -1
  682. package/themes/grid-light.src.d.ts +6 -1
  683. package/themes/grid-light.src.js +88 -57
  684. package/themes/grid.d.ts +6 -1
  685. package/themes/grid.js +3 -3
  686. package/themes/grid.js.map +1 -1
  687. package/themes/grid.src.d.ts +6 -1
  688. package/themes/grid.src.js +114 -83
  689. package/themes/high-contrast-dark.js +5 -4
  690. package/themes/high-contrast-dark.js.map +1 -1
  691. package/themes/high-contrast-dark.src.js +197 -166
  692. package/themes/high-contrast-light.js +3 -3
  693. package/themes/high-contrast-light.js.map +1 -1
  694. package/themes/high-contrast-light.src.js +54 -23
  695. package/themes/sand-signika.d.ts +6 -1
  696. package/themes/sand-signika.js +5 -5
  697. package/themes/sand-signika.js.map +1 -1
  698. package/themes/sand-signika.src.d.ts +6 -1
  699. package/themes/sand-signika.src.js +119 -88
  700. package/themes/skies.d.ts +6 -1
  701. package/themes/skies.js +5 -5
  702. package/themes/skies.js.map +1 -1
  703. package/themes/skies.src.d.ts +6 -1
  704. package/themes/skies.src.js +107 -76
  705. package/themes/sunset.d.ts +6 -1
  706. package/themes/sunset.js +3 -3
  707. package/themes/sunset.js.map +1 -1
  708. package/themes/sunset.src.d.ts +6 -1
  709. package/themes/sunset.src.js +52 -21
  710. package/es-modules/Core/Axis/ColorAxis.js +0 -1164
  711. package/es-modules/Core/Axis/HiddenAxis.js +0 -46
  712. package/es-modules/Core/Axis/PlotLineOrBand.js +0 -1051
  713. package/es-modules/Core/Series/DataLabels.js +0 -1173
  714. package/es-modules/Extensions/Exporting.js +0 -2024
  715. package/es-modules/Extensions/OfflineExporting.js +0 -621
  716. package/es-modules/Mixins/Geometry.js +0 -56
  717. package/es-modules/Mixins/GeometryCircles.js +0 -320
  718. package/es-modules/Series/Bubble/BubbleLegend.js +0 -893
@@ -1,5 +1,5 @@
1
1
  /*
2
- Highstock JS v9.1.1 (2021-06-03)
2
+ Highstock JS v9.2.2 (2021-08-24)
3
3
 
4
4
  Advanced Highcharts Stock tools
5
5
 
@@ -8,165 +8,167 @@
8
8
 
9
9
  License: www.highcharts.com/license
10
10
  */
11
- 'use strict';(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/stock-tools",["highcharts","highcharts/modules/stock"],function(w){a(w);a.Highcharts=w;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function w(d,a,v,x){d.hasOwnProperty(a)||(d[a]=x.apply(null,v))}a=a?a._modules:{};w(a,"Extensions/Annotations/Mixins/EventEmitterMixin.js",[a["Core/Globals.js"],a["Core/Utilities.js"]],
12
- function(d,a){var g=a.addEvent,x=a.fireEvent,q=a.objectEach,k=a.pick,c=a.removeEvent;return{addEvents:function(){var c=this,e=function(e){g(e,d.isTouchDevice?"touchstart":"mousedown",function(e){c.onMouseDown(e)},{passive:!1})};e(this.graphic.element);(c.labels||[]).forEach(function(c){c.options.useHTML&&c.graphic.text&&e(c.graphic.text.element)});q(c.options.events,function(e,m){var p=function(p){"click"===m&&c.cancelClick||e.call(c,c.chart.pointer.normalize(p),c.target)};if(-1===(c.nonDOMEvents||
13
- []).indexOf(m))c.graphic.on(m,p);else g(c,m,p,{passive:!1})});if(c.options.draggable&&(g(c,"drag",c.onDrag),!c.graphic.renderer.styledMode)){var m={cursor:{x:"ew-resize",y:"ns-resize",xy:"move"}[c.options.draggable]};c.graphic.css(m);(c.labels||[]).forEach(function(e){e.options.useHTML&&e.graphic.text&&e.graphic.text.css(m)})}c.isUpdating||x(c,"add")},removeDocEvents:function(){this.removeDrag&&(this.removeDrag=this.removeDrag());this.removeMouseUp&&(this.removeMouseUp=this.removeMouseUp())},onMouseDown:function(c){var e=
14
- this,m=e.chart.pointer;c.preventDefault&&c.preventDefault();if(2!==c.button){c=m.normalize(c);var t=c.chartX;var l=c.chartY;e.cancelClick=!1;e.chart.hasDraggedAnnotation=!0;e.removeDrag=g(d.doc,d.isTouchDevice?"touchmove":"mousemove",function(c){e.hasDragged=!0;c=m.normalize(c);c.prevChartX=t;c.prevChartY=l;x(e,"drag",c);t=c.chartX;l=c.chartY},d.isTouchDevice?{passive:!1}:void 0);e.removeMouseUp=g(d.doc,d.isTouchDevice?"touchend":"mouseup",function(c){e.cancelClick=e.hasDragged;e.hasDragged=!1;e.chart.hasDraggedAnnotation=
15
- !1;x(k(e.target,e),"afterUpdate");e.onMouseUp(c)},d.isTouchDevice?{passive:!1}:void 0)}},onMouseUp:function(c){var e=this.chart;c=this.target||this;var m=e.options.annotations;e=e.annotations.indexOf(c);this.removeDocEvents();m[e]=c.options},onDrag:function(c){if(this.chart.isInsidePlot(c.chartX-this.chart.plotLeft,c.chartY-this.chart.plotTop,{visiblePlotOnly:!0})){var e=this.mouseMoveToTranslation(c);"x"===this.options.draggable&&(e.y=0);"y"===this.options.draggable&&(e.x=0);this.points.length?this.translate(e.x,
16
- e.y):(this.shapes.forEach(function(c){c.translate(e.x,e.y)}),this.labels.forEach(function(c){c.translate(e.x,e.y)}));this.redraw(!1)}},mouseMoveToRadians:function(c,e,m){var d=c.prevChartY-m,l=c.prevChartX-e;m=c.chartY-m;c=c.chartX-e;this.chart.inverted&&(e=l,l=d,d=e,e=c,c=m,m=e);return Math.atan2(m,c)-Math.atan2(d,l)},mouseMoveToTranslation:function(c){var e=c.chartX-c.prevChartX;c=c.chartY-c.prevChartY;if(this.chart.inverted){var m=c;c=e;e=m}return{x:e,y:c}},mouseMoveToScale:function(c,e,m){e=(c.chartX-
17
- e||1)/(c.prevChartX-e||1);c=(c.chartY-m||1)/(c.prevChartY-m||1);this.chart.inverted&&(m=c,c=e,e=m);return{x:e,y:c}},destroy:function(){this.removeDocEvents();c(this);this.hcEvents=null}}});w(a,"Extensions/Annotations/ControlPoint.js",[a["Core/Utilities.js"],a["Extensions/Annotations/Mixins/EventEmitterMixin.js"]],function(d,a){var g=d.merge,x=d.pick;return function(){function d(d,c,C,e){this.addEvents=a.addEvents;this.graphic=void 0;this.mouseMoveToRadians=a.mouseMoveToRadians;this.mouseMoveToScale=
18
- 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=d;this.target=c;this.options=C;this.index=x(C.index,e)}d.prototype.setVisibility=function(d){this.graphic.attr("visibility",d?"visible":"hidden");this.options.visible=d};d.prototype.render=function(){var d=this.chart,c=this.options;this.graphic=d.renderer.symbol(c.symbol,0,
19
- 0,c.width,c.height).add(d.controlPointsGroup).css(c.style);this.setVisibility(c.visible);this.addEvents()};d.prototype.redraw=function(d){this.graphic[d?"animate":"attr"](this.options.positioner.call(this,this.target))};d.prototype.destroy=function(){a.destroy.call(this);this.graphic&&(this.graphic=this.graphic.destroy());this.options=this.target=this.chart=null};d.prototype.update=function(d){var c=this.chart,a=this.target,e=this.index;d=g(!0,this.options,d);this.destroy();this.constructor(c,a,d,
20
- e);this.render(c.controlPointsGroup);this.redraw()};return d}()});w(a,"Extensions/Annotations/MockPoint.js",[a["Core/Series/Series.js"],a["Core/Utilities.js"],a["Core/Axis/Axis.js"]],function(d,a,v){var g=a.defined,q=a.fireEvent;return function(){function a(c,a,e){this.y=this.x=this.ttBelow=this.plotY=this.plotX=this.negative=this.isInside=void 0;this.mock=!0;this.series={visible:!0,chart:c,getPlotBox:d.prototype.getPlotBox};this.target=a||null;this.options=e;this.applyOptions(this.getOptions())}
21
- a.fromPoint=function(c){return new a(c.series.chart,null,{x:c.x,y:c.y,xAxis:c.series.xAxis,yAxis:c.series.yAxis})};a.pointToPixels=function(c,d){var e=c.series,m=e.chart,a=c.plotX,l=c.plotY;m.inverted&&(c.mock?(a=c.plotY,l=c.plotX):(a=m.plotWidth-c.plotY,l=m.plotHeight-c.plotX));e&&!d&&(c=e.getPlotBox(),a+=c.translateX,l+=c.translateY);return{x:a,y:l}};a.pointToOptions=function(c){return{x:c.x,y:c.y,xAxis:c.series.xAxis,yAxis:c.series.yAxis}};a.prototype.hasDynamicOptions=function(){return"function"===
22
- typeof this.options};a.prototype.getOptions=function(){return this.hasDynamicOptions()?this.options(this.target):this.options};a.prototype.applyOptions=function(c){this.command=c.command;this.setAxis(c,"x");this.setAxis(c,"y");this.refresh()};a.prototype.setAxis=function(c,d){d+="Axis";c=c[d];var e=this.series.chart;this.series[d]=c instanceof v?c:g(c)?e[d][c]||e.get(c):null};a.prototype.toAnchor=function(){var c=[this.plotX,this.plotY,0,0];this.series.chart.inverted&&(c[0]=this.plotY,c[1]=this.plotX);
23
- return c};a.prototype.getLabelConfig=function(){return{x:this.x,y:this.y,point:this}};a.prototype.isInsidePlot=function(){var c=this.plotX,d=this.plotY,e=this.series.xAxis,m=this.series.yAxis,a={x:c,y:d,isInsidePlot:!0};e&&(a.isInsidePlot=g(c)&&0<=c&&c<=e.len);m&&(a.isInsidePlot=a.isInsidePlot&&g(d)&&0<=d&&d<=m.len);q(this.series.chart,"afterIsInsidePlot",a);return a.isInsidePlot};a.prototype.refresh=function(){var c=this.series,d=c.xAxis;c=c.yAxis;var e=this.getOptions();d?(this.x=e.x,this.plotX=
24
- d.toPixels(e.x,!0)):(this.x=null,this.plotX=e.x);c?(this.y=e.y,this.plotY=c.toPixels(e.y,!0)):(this.y=null,this.plotY=e.y);this.isInside=this.isInsidePlot()};a.prototype.translate=function(c,d,e,a){this.hasDynamicOptions()||(this.plotX+=e,this.plotY+=a,this.refreshOptions())};a.prototype.scale=function(c,d,e,a){if(!this.hasDynamicOptions()){var m=this.plotY*a;this.plotX=(1-e)*c+this.plotX*e;this.plotY=(1-a)*d+m;this.refreshOptions()}};a.prototype.rotate=function(c,d,e){if(!this.hasDynamicOptions()){var a=
25
- Math.cos(e);e=Math.sin(e);var t=this.plotX,l=this.plotY;t-=c;l-=d;this.plotX=t*a-l*e+c;this.plotY=t*e+l*a+d;this.refreshOptions()}};a.prototype.refreshOptions=function(){var c=this.series,d=c.xAxis;c=c.yAxis;this.x=this.options.x=d?this.options.x=d.toValue(this.plotX,!0):this.plotX;this.y=this.options.y=c?c.toValue(this.plotY,!0):this.plotY};return a}()});w(a,"Extensions/Annotations/Mixins/ControllableMixin.js",[a["Extensions/Annotations/ControlPoint.js"],a["Extensions/Annotations/MockPoint.js"],
26
- a["Core/Tooltip.js"],a["Core/Utilities.js"]],function(d,a,v,x){var g=x.isObject,k=x.isString,c=x.merge,C=x.splat;return{init:function(c,d,a){this.annotation=c;this.chart=c.chart;this.options=d;this.points=[];this.controlPoints=[];this.index=a;this.linkPoints();this.addControlPoints()},attr:function(){this.graphic.attr.apply(this.graphic,arguments)},getPointsOptions:function(){var c=this.options;return c.points||c.point&&C(c.point)},attrsFromOptions:function(c){var d=this.constructor.attrsMap,e={},
27
- a,p=this.chart.styledMode;for(a in c){var u=d[a];!u||p&&-1!==["fill","stroke","stroke-width"].indexOf(u)||(e[u]=c[a])}return e},anchor:function(d){var e=d.series.getPlotBox(),a=d.series.chart,l=d.mock?d.toAnchor():v.prototype.getAnchor.call({chart:d.series.chart},d);l={x:l[0]+(this.options.x||0),y:l[1]+(this.options.y||0),height:l[2]||0,width:l[3]||0};return{relativePosition:l,absolutePosition:c(l,{x:l.x+(d.mock?e.translateX:a.plotLeft),y:l.y+(d.mock?e.translateY:a.plotTop)})}},point:function(c,d){if(c&&
28
- c.series)return c;d&&null!==d.series||(g(c)?d=new a(this.chart,this,c):k(c)?d=this.chart.get(c)||null:"function"===typeof c&&(d=c.call(d,this),d=d.series?d:new a(this.chart,this,c)));return d},linkPoints:function(){var c=this.getPointsOptions(),d=this.points,a=c&&c.length||0,l;for(l=0;l<a;l++){var p=this.point(c[l],d[l]);if(!p){d.length=0;return}p.mock&&p.refresh();d[l]=p}return d},addControlPoints:function(){var a=this.options.controlPoints;(a||[]).forEach(function(e,t){e=c(this.options.controlPointOptions,
29
- e);e.index||(e.index=t);a[t]=e;this.controlPoints.push(new d(this.chart,this,e))},this)},shouldBeDrawn:function(){return!!this.points.length},render:function(c){this.controlPoints.forEach(function(c){c.render()})},redraw:function(c){this.controlPoints.forEach(function(d){d.redraw(c)})},transform:function(c,d,a,l,p){if(this.chart.inverted){var e=d;d=a;a=e}this.points.forEach(function(e,h){this.transformPoint(c,d,a,l,p,h)},this)},transformPoint:function(c,d,t,l,p,u){var e=this.points[u];e.mock||(e=
30
- this.points[u]=a.fromPoint(e));e[c](d,t,l,p)},translate:function(c,d){this.transform("translate",null,null,c,d)},translatePoint:function(c,d,a){this.transformPoint("translate",null,null,c,d,a)},translateShape:function(c,d){var a=this.annotation.chart,e=this.annotation.userOptions,p=a.annotations.indexOf(this.annotation);a=a.options.annotations[p];this.translatePoint(c,d,0);a[this.collection][this.index].point=this.options.point;e[this.collection][this.index].point=this.options.point},rotate:function(c,
31
- d,a){this.transform("rotate",c,d,a)},scale:function(c,d,a,l){this.transform("scale",c,d,a,l)},setControlPointsVisibility:function(c){this.controlPoints.forEach(function(d){d.setVisibility(c)})},destroy:function(){this.graphic&&(this.graphic=this.graphic.destroy());this.tracker&&(this.tracker=this.tracker.destroy());this.controlPoints.forEach(function(c){c.destroy()});this.options=this.controlPoints=this.points=this.chart=null;this.annotation&&(this.annotation=null)},update:function(d){var a=this.annotation;
32
- d=c(!0,this.options,d);var e=this.graphic.parentGroup;this.destroy();this.constructor(a,d,this.index);this.render(e);this.redraw()}}});w(a,"Extensions/Annotations/Mixins/MarkerMixin.js",[a["Core/Chart/Chart.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Utilities.js"]],function(d,a,v){function g(c){return function(d){this.attr(c,"url(#"+d+")")}}var q=v.addEvent,k=v.defined,c=v.merge,C=v.uniqueKey,e={arrow:{tagName:"marker",attributes:{id:"arrow",refY:5,refX:9,markerWidth:10,markerHeight:10},children:[{tagName:"path",
33
- 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(d,a){var e={attributes:{id:d}},p={stroke:a.color||"none",fill:a.color||"rgba(0, 0, 0, 0.75)"};e.children=a.children&&a.children.map(function(d){return c(p,d)});a=c(!0,{attributes:{markerWidth:20,markerHeight:20,refX:0,
34
- refY:0,orient:"auto"}},a,e);a=this.definition(a);a.id=d;return a};a={markerEndSetter:g("marker-end"),markerStartSetter:g("marker-start"),setItemMarkers:function(d){var a=d.options,e=d.chart,p=e.options.defs,u=a.fill,m=k(u)&&"none"!==u?u:a.stroke;["markerStart","markerEnd"].forEach(function(h){var b=a[h],f;if(b){for(f in p){var n=p[f];if((b===(n.attributes&&n.attributes.id)||b===n.id)&&"marker"===n.tagName){var r=n;break}}r&&(b=d[h]=e.renderer.addMarker((a.id||C())+"-"+b,c(r,{color:m})),d.attr(h,b.getAttribute("id")))}})}};
35
- q(d,"afterGetContainer",function(){this.options.defs=c(e,this.options.defs||{})});return a});w(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(d,a,v,x){var g=x.extend,k="rgba(192,192,192,"+(a.svg?.0001:.002)+")";return function(){function c(c,a,k){this.addControlPoints=d.addControlPoints;this.anchor=d.anchor;this.attr=d.attr;
36
- this.attrsFromOptions=d.attrsFromOptions;this.destroy=d.destroy;this.getPointsOptions=d.getPointsOptions;this.init=d.init;this.linkPoints=d.linkPoints;this.point=d.point;this.rotate=d.rotate;this.scale=d.scale;this.setControlPointsVisibility=d.setControlPointsVisibility;this.setMarkers=v.setItemMarkers;this.transform=d.transform;this.transformPoint=d.transformPoint;this.translate=d.translate;this.translatePoint=d.translatePoint;this.translateShape=d.translateShape;this.update=d.update;this.type="path";
37
- this.init(c,a,k);this.collection="shapes"}c.prototype.toD=function(){var c=this.options.d;if(c)return"function"===typeof c?c.call(this):c;c=this.points;var d=c.length,a=d,k=c[0],l=a&&this.anchor(k).absolutePosition,p=0,u=[];if(l)for(u.push(["M",l.x,l.y]);++p<d&&a;)k=c[p],a=k.command||"L",l=this.anchor(k).absolutePosition,"M"===a?u.push([a,l.x,l.y]):"L"===a?u.push([a,l.x,l.y]):"Z"===a&&u.push([a]),a=k.series.visible;return a?this.chart.renderer.crispLine(u,this.graphic.strokeWidth()):null};c.prototype.shouldBeDrawn=
38
- function(){return d.shouldBeDrawn.call(this)||!!this.options.d};c.prototype.render=function(c){var a=this.options,m=this.attrsFromOptions(a);this.graphic=this.annotation.chart.renderer.path([["M",0,0]]).attr(m).add(c);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(c);this.annotation.chart.styledMode||this.tracker.attr({"stroke-linejoin":"round",stroke:k,fill:k,"stroke-width":this.graphic.strokeWidth()+
39
- 2*a.snap});d.render.call(this);g(this.graphic,{markerStartSetter:v.markerStartSetter,markerEndSetter:v.markerEndSetter});this.setMarkers(this)};c.prototype.redraw=function(c){var a=this.toD(),k=c?"animate":"attr";a?(this.graphic[k]({d:a}),this.tracker[k]({d:a})):(this.graphic.attr({d:"M 0 -9000000000"}),this.tracker.attr({d:"M 0 -9000000000"}));this.graphic.placed=this.tracker.placed=!!a;d.redraw.call(this,c)};c.attrsMap={dashStyle:"dashstyle",strokeWidth:"stroke-width",stroke:"stroke",fill:"fill",
40
- zIndex:"zIndex"};return c}()});w(a,"Extensions/Annotations/Controllables/ControllableRect.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(d,a,v){var g=v.merge;return function(){function q(a,c,g){this.addControlPoints=d.addControlPoints;this.anchor=d.anchor;this.attr=d.attr;this.attrsFromOptions=d.attrsFromOptions;this.destroy=d.destroy;this.getPointsOptions=d.getPointsOptions;this.init=d.init;
41
- this.linkPoints=d.linkPoints;this.point=d.point;this.rotate=d.rotate;this.scale=d.scale;this.setControlPointsVisibility=d.setControlPointsVisibility;this.shouldBeDrawn=d.shouldBeDrawn;this.transform=d.transform;this.transformPoint=d.transformPoint;this.translatePoint=d.translatePoint;this.translateShape=d.translateShape;this.update=d.update;this.type="rect";this.translate=d.translateShape;this.init(a,c,g);this.collection="shapes"}q.prototype.render=function(a){var c=this.attrsFromOptions(this.options);
42
- this.graphic=this.annotation.chart.renderer.rect(0,-9E9,0,0).attr(c).add(a);d.render.call(this)};q.prototype.redraw=function(a){var c=this.anchor(this.points[0]).absolutePosition;if(c)this.graphic[a?"animate":"attr"]({x:c.x,y:c.y,width:this.options.width,height:this.options.height});else this.attr({x:0,y:-9E9});this.graphic.placed=!!c;d.redraw.call(this,a)};q.attrsMap=g(a.attrsMap,{width:"width",height:"height"});return q}()});w(a,"Extensions/Annotations/Controllables/ControllableCircle.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],
43
- a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(d,a,v){var g=v.merge;return function(){function q(a,c,g){this.addControlPoints=d.addControlPoints;this.anchor=d.anchor;this.attr=d.attr;this.attrsFromOptions=d.attrsFromOptions;this.destroy=d.destroy;this.getPointsOptions=d.getPointsOptions;this.init=d.init;this.linkPoints=d.linkPoints;this.point=d.point;this.rotate=d.rotate;this.scale=d.scale;this.setControlPointsVisibility=d.setControlPointsVisibility;
44
- this.shouldBeDrawn=d.shouldBeDrawn;this.transform=d.transform;this.transformPoint=d.transformPoint;this.translatePoint=d.translatePoint;this.translateShape=d.translateShape;this.update=d.update;this.type="circle";this.translate=d.translateShape;this.init(a,c,g);this.collection="shapes"}q.prototype.render=function(a){var c=this.attrsFromOptions(this.options);this.graphic=this.annotation.chart.renderer.circle(0,-9E9,0).attr(c).add(a);d.render.call(this)};q.prototype.redraw=function(a){var c=this.anchor(this.points[0]).absolutePosition;
45
- if(c)this.graphic[a?"animate":"attr"]({x:c.x,y:c.y,r:this.options.r});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!c;d.redraw.call(this,a)};q.prototype.setRadius=function(a){this.options.r=a};q.attrsMap=g(a.attrsMap,{r:"r"});return q}()});w(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"],
46
- a["Core/Utilities.js"]],function(a,g,v,x,q,k){var c=g.format;g=x.prototype.symbols;var d=k.extend,e=k.isNumber,m=k.pick;k=function(){function e(c,d,e){this.addControlPoints=a.addControlPoints;this.attr=a.attr;this.attrsFromOptions=a.attrsFromOptions;this.destroy=a.destroy;this.getPointsOptions=a.getPointsOptions;this.init=a.init;this.linkPoints=a.linkPoints;this.point=a.point;this.rotate=a.rotate;this.scale=a.scale;this.setControlPointsVisibility=a.setControlPointsVisibility;this.shouldBeDrawn=a.shouldBeDrawn;
47
- this.transform=a.transform;this.transformPoint=a.transformPoint;this.translateShape=a.translateShape;this.update=a.update;this.init(c,d,e);this.collection="labels"}e.alignedPosition=function(c,a){var d=c.align,e=c.verticalAlign,h=(a.x||0)+(c.x||0),b=(a.y||0)+(c.y||0),f,n;"right"===d?f=1:"center"===d&&(f=2);f&&(h+=(a.width-(c.width||0))/f);"bottom"===e?n=1:"middle"===e&&(n=2);n&&(b+=(a.height-(c.height||0))/n);return{x:Math.round(h),y:Math.round(b)}};e.justifiedOptions=function(c,a,d,e){var h=d.align,
48
- b=d.verticalAlign,f=a.box?0:a.padding||0,n=a.getBBox();a={align:h,verticalAlign:b,x:d.x,y:d.y,width:a.width,height:a.height};d=(e.x||0)-c.plotLeft;e=(e.y||0)-c.plotTop;var r=d+f;0>r&&("right"===h?a.align="left":a.x=(a.x||0)-r);r=d+n.width-f;r>c.plotWidth&&("left"===h?a.align="right":a.x=(a.x||0)+c.plotWidth-r);r=e+f;0>r&&("bottom"===b?a.verticalAlign="top":a.y=(a.y||0)-r);r=e+n.height-f;r>c.plotHeight&&("top"===b?a.verticalAlign="bottom":a.y=(a.y||0)+c.plotHeight-r);return a};e.prototype.translatePoint=
49
- function(c,d){a.translatePoint.call(this,c,d,0)};e.prototype.translate=function(c,a){var d=this.annotation.chart,e=this.annotation.userOptions,h=d.annotations.indexOf(this.annotation);h=d.options.annotations[h];d.inverted&&(d=c,c=a,a=d);this.options.x+=c;this.options.y+=a;h[this.collection][this.index].x=this.options.x;h[this.collection][this.index].y=this.options.y;e[this.collection][this.index].x=this.options.x;e[this.collection][this.index].y=this.options.y};e.prototype.render=function(c){var d=
50
- this.options,l=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(l).add(c);this.annotation.chart.styledMode||("contrast"===g.color&&(g.color=this.annotation.chart.renderer.getContrast(-1<e.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;a.render.call(this)};
51
- e.prototype.redraw=function(d){var e=this.options,l=this.text||e.format||e.text,g=this.graphic,h=this.points[0];g.attr({text:l?c(l,h.getLabelConfig(),this.annotation.chart):e.formatter.call(h,this)});e=this.anchor(h);(l=this.position(e))?(g.alignAttr=l,l.anchorX=e.absolutePosition.x,l.anchorY=e.absolutePosition.y,g[d?"animate":"attr"](l)):g.attr({x:0,y:-9999});g.placed=!!l;a.redraw.call(this,d)};e.prototype.anchor=function(c){var d=a.anchor.apply(this,arguments),e=this.options.x||0,l=this.options.y||
52
- 0;d.absolutePosition.x-=e;d.absolutePosition.y-=l;d.relativePosition.x-=e;d.relativePosition.y-=l;return d};e.prototype.position=function(c){var a=this.graphic,l=this.annotation.chart,g=this.points[0],h=this.options,b=c.absolutePosition,f=c.relativePosition,n=g.series.visible&&v.prototype.isInsidePlot.call(g);c=a.width;c=void 0===c?0:c;var r=a.height;r=void 0===r?0:r;if(n){if(h.distance)var B=q.prototype.getPosition.call({chart:l,distance:m(h.distance,16)},c,r,{plotX:f.x,plotY:f.y,negative:g.negative,
53
- ttBelow:g.ttBelow,h:f.height||f.width});else h.positioner?B=h.positioner.call(this):(g={x:b.x,y:b.y,width:0,height:0},B=e.alignedPosition(d(h,{width:c,height:r}),g),"justify"===this.options.overflow&&(B=e.alignedPosition(e.justifiedOptions(l,a,h,B),g)));h.crop&&(a=B.x-l.plotLeft,h=B.y-l.plotTop,n=l.isInsidePlot(a,h)&&l.isInsidePlot(a+c,h+r))}return n?B:null};e.attrsMap={backgroundColor:"fill",borderColor:"stroke",borderWidth:"stroke-width",zIndex:"zIndex",borderRadius:"r",padding:"padding"};e.shapesWithoutBackground=
54
- ["connector"];return e}();g.connector=function(c,a,d,g,k){var h=k&&k.anchorX;k=k&&k.anchorY;var b=d/2;if(e(h)&&e(k)){var f=[["M",h,k]];var n=a-k;0>n&&(n=-g-n);n<d&&(b=h<c+d/2?n:d-n);k>a+g?f.push(["L",c+b,a+g]):k<a?f.push(["L",c+b,a]):h<c?f.push(["L",c,a+g/2]):h>c+d&&f.push(["L",c+d,a+g/2])}return f||[]};return k});w(a,"Extensions/Annotations/Controllables/ControllableImage.js",[a["Extensions/Annotations/Controllables/ControllableLabel.js"],a["Extensions/Annotations/Mixins/ControllableMixin.js"]],
55
- function(a,g){return function(){function d(a,d,k){this.addControlPoints=g.addControlPoints;this.anchor=g.anchor;this.attr=g.attr;this.attrsFromOptions=g.attrsFromOptions;this.destroy=g.destroy;this.getPointsOptions=g.getPointsOptions;this.init=g.init;this.linkPoints=g.linkPoints;this.point=g.point;this.rotate=g.rotate;this.scale=g.scale;this.setControlPointsVisibility=g.setControlPointsVisibility;this.shouldBeDrawn=g.shouldBeDrawn;this.transform=g.transform;this.transformPoint=g.transformPoint;this.translatePoint=
56
- g.translatePoint;this.translateShape=g.translateShape;this.update=g.update;this.type="image";this.translate=g.translateShape;this.init(a,d,k);this.collection="shapes"}d.prototype.render=function(a){var d=this.attrsFromOptions(this.options),k=this.options;this.graphic=this.annotation.chart.renderer.image(k.src,0,-9E9,k.width,k.height).attr(d).add(a);this.graphic.width=k.width;this.graphic.height=k.height;g.render.call(this)};d.prototype.redraw=function(d){var q=this.anchor(this.points[0]);if(q=a.prototype.position.call(this,
57
- q))this.graphic[d?"animate":"attr"]({x:q.x,y:q.y});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!q;g.redraw.call(this,d)};d.attrsMap={width:"width",height:"height",zIndex:"zIndex"};return d}()});w(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"],
58
- 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"],a["Core/Color/Palette.js"]],function(a,g,v,x,q,k,c,C,e,m,t,l,p,u,w){var d=a.getDeferredAnimation;a=g.prototype;
59
- var b=u.addEvent,f=u.defined,n=u.destroyObjectProperties,r=u.erase,B=u.extend,D=u.find,y=u.fireEvent,z=u.merge,A=u.pick,G=u.splat;u=u.wrap;var E=function(){function b(b,a){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=b;this.points=[];this.controlPoints=[];this.coll="annotations";this.labels=[];this.shapes=[];this.options=z(this.defaultOptions,a);this.userOptions=a;
60
- a=this.getLabelsAndShapesOptions(this.options,a);this.options.labels=a.labels;this.options.shapes=a.shapes;this.init(b,this.options)}b.prototype.init=function(){var b=this.chart,a=this.options.animation;this.linkPoints();this.addControlPoints();this.addShapes();this.addLabels();this.setLabelCollector();this.animationConfig=d(b,a)};b.prototype.getLabelsAndShapesOptions=function(b,a){var c={};["labels","shapes"].forEach(function(f){b[f]&&(c[f]=G(a[f]).map(function(a,c){return z(b[f][c],a)}))});return c};
61
- b.prototype.addShapes=function(){(this.options.shapes||[]).forEach(function(b,a){b=this.initShape(b,a);z(!0,this.options.shapes[a],b.options)},this)};b.prototype.addLabels=function(){(this.options.labels||[]).forEach(function(b,a){b=this.initLabel(b,a);z(!0,this.options.labels[a],b.options)},this)};b.prototype.addClipPaths=function(){this.setClipAxes();this.clipXAxis&&this.clipYAxis&&(this.clipRect=this.chart.renderer.clipRect(this.getClipBox()))};b.prototype.setClipAxes=function(){var b=this.chart.xAxis,
62
- a=this.chart.yAxis,c=(this.options.labels||[]).concat(this.options.shapes||[]).reduce(function(c,f){return[b[f&&f.point&&f.point.xAxis]||c[0],a[f&&f.point&&f.point.yAxis]||c[1]]},[]);this.clipXAxis=c[0];this.clipYAxis=c[1]};b.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}};b.prototype.setLabelCollector=function(){var b=this;b.labelCollector=function(){return b.labels.reduce(function(b,
63
- a){a.options.allowOverlap||b.push(a.graphic);return b},[])};b.chart.labelCollectors.push(b.labelCollector)};b.prototype.setOptions=function(b){this.options=z(this.defaultOptions,b)};b.prototype.redraw=function(b){this.linkPoints();this.graphic||this.render();this.clipRect&&this.clipRect.animate(this.getClipBox());this.redrawItems(this.shapes,b);this.redrawItems(this.labels,b);v.redraw.call(this,b)};b.prototype.redrawItems=function(b,a){for(var c=b.length;c--;)this.redrawItem(b[c],a)};b.prototype.renderItems=
64
- function(b){for(var a=b.length;a--;)this.renderItem(b[a])};b.prototype.render=function(){var b=this.chart.renderer;this.graphic=b.g("annotation").attr({opacity:0,zIndex:this.options.zIndex,visibility:this.options.visible?"visible":"hidden"}).add();this.shapesGroup=b.g("annotation-shapes").add(this.graphic).clip(this.chart.plotBoxClip);this.labelsGroup=b.g("annotation-labels").attr({translateX:0,translateY:0}).add(this.graphic);this.addClipPaths();this.clipRect&&this.graphic.clip(this.clipRect);this.renderItems(this.shapes);
65
- this.renderItems(this.labels);this.addEvents();v.render.call(this)};b.prototype.setVisibility=function(b){var a=this.options;b=A(b,!a.visible);this.graphic.attr("visibility",b?"visible":"hidden");b||this.setControlPointsVisibility(!1);a.visible=b};b.prototype.setControlPointsVisibility=function(b){var a=function(a){a.setControlPointsVisibility(b)};v.setControlPointsVisibility.call(this,b);this.shapes.forEach(a);this.labels.forEach(a)};b.prototype.destroy=function(){var b=this.chart,a=function(b){b.destroy()};
66
- this.labels.forEach(a);this.shapes.forEach(a);this.clipYAxis=this.clipXAxis=null;r(b.labelCollectors,this.labelCollector);m.destroy.call(this);v.destroy.call(this);n(this,b)};b.prototype.remove=function(){return this.chart.removeAnnotation(this)};b.prototype.update=function(b,a){var c=this.chart,f=this.getLabelsAndShapesOptions(this.userOptions,b),d=c.annotations.indexOf(this);b=z(!0,this.userOptions,b);b.labels=f.labels;b.shapes=f.shapes;this.destroy();this.constructor(c,b);c.options.annotations[d]=
67
- b;this.isUpdating=!0;A(a,!0)&&c.redraw();y(this,"afterUpdate");this.isUpdating=!1};b.prototype.initShape=function(a,c){a=z(this.options.shapeOptions,{controlPointOptions:this.options.controlPointOptions},a);c=new b.shapesMap[a.type](this,a,c);c.itemType="shape";this.shapes.push(c);return c};b.prototype.initLabel=function(b,a){b=z(this.options.labelOptions,{controlPointOptions:this.options.controlPointOptions},b);a=new C(this,b,a);a.itemType="label";this.labels.push(a);return a};b.prototype.redrawItem=
68
- function(b,a){b.linkPoints();b.shouldBeDrawn()?(b.graphic||this.renderItem(b),b.redraw(A(a,!0)&&b.graphic.placed),b.points.length&&this.adjustVisibility(b)):this.destroyItem(b)};b.prototype.adjustVisibility=function(b){var a=!1,c=b.graphic;b.points.forEach(function(b){!1!==b.series.visible&&!1!==b.visible&&(a=!0)});a?"hidden"===c.visibility&&c.show():c.hide()};b.prototype.destroyItem=function(b){r(this[b.itemType+"s"],b);b.destroy()};b.prototype.renderItem=function(b){b.render("label"===b.itemType?
69
- this.labelsGroup:this.shapesGroup)};b.ControlPoint=e;b.MockPoint=l;b.shapesMap={rect:x,circle:q,path:k,image:c};b.types={};return b}();z(!0,E.prototype,v,m,z(E.prototype,{nonDOMEvents:["add","afterUpdate","drag","remove"],defaultOptions:{visible:!0,animation:{},draggable:"xy",labelOptions:{align:"center",allowOverlap:!1,backgroundColor:"rgba(0, 0, 0, 0.75)",borderColor:w.neutralColor100,borderRadius:3,borderWidth:1,className:"highcharts-no-tooltip",crop:!1,formatter:function(){return f(this.y)?this.y:
70
- "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:{stroke:w.neutralColor100,"stroke-width":2,fill:w.backgroundColor},visible:!1,events:{}},events:{},zIndex:6}}));t.extendAnnotation=function(b,
71
- a,c,f){a=a||E;B(b.prototype,z(a.prototype,c));b.prototype.defaultOptions=z(b.prototype.defaultOptions,f||{})};B(a,{initAnnotation:function(b){b=new (E.types[b.type]||E)(this,b);this.annotations.push(b);return b},addAnnotation:function(b,a){b=this.initAnnotation(b);this.options.annotations.push(b.options);A(a,!0)&&(b.redraw(),b.graphic.attr({opacity:1}));return b},removeAnnotation:function(b){var a=this.annotations,c="annotations"===b.coll?b:D(a,function(a){return a.options.id===b});c&&(y(c,"remove"),
72
- r(this.options.annotations,c.options),r(a,c),c.destroy())},drawAnnotations:function(){this.plotBoxClip.attr(this.plotBox);this.annotations.forEach(function(b){b.redraw();b.graphic.animate({opacity:1},b.animationConfig)})}});a.collectionsWithUpdate.push("annotations");a.collectionsWithInit.annotations=[a.addAnnotation];b(g,"afterInit",function(){this.annotations=[];this.options.annotations||(this.options.annotations=[])});a.callbacks.push(function(a){a.plotBoxClip=this.renderer.clipRect(this.plotBox);
73
- 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 f=a.initAnnotation(b);a.options.annotations[c]=f.options}});a.drawAnnotations();b(a,"redraw",a.drawAnnotations);b(a,"destroy",function(){a.plotBoxClip.destroy();a.controlPointsGroup.destroy()});b(a,"exportData",function(b){var c=(this.options.exporting&&this.options.exporting.csv||{}).columnHeaderFormatter,
74
- f=!b.dataRows[1].xValues,d=a.options.lang&&a.options.lang.exportData&&a.options.lang.exportData.annotationHeader,n=function(b){if(c){var a=c(b);if(!1!==a)return a}a=d+" "+b;return f?{columnTitle:a,topLevelColumnTitle:a}:a},e=b.dataRows[0].length,h=a.options.exporting&&a.options.exporting.csv&&a.options.exporting.csv.annotations&&a.options.exporting.csv.annotations.itemDelimiter,z=a.options.exporting&&a.options.exporting.csv&&a.options.exporting.csv.annotations&&a.options.exporting.csv.annotations.join;
75
- 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 f=a.x,d=a.series.xAxis?a.series.xAxis.options.index:-1,n=!1;if(-1===d){a=b.dataRows[0].length;for(var y=Array(a),A=0;A<a;++A)y[A]="";y.push(c);y.xValues=[];y.xValues[d]=f;b.dataRows.push(y);n=!0}n||b.dataRows.forEach(function(b,a){!n&&b.xValues&&void 0!==d&&f===b.xValues[d]&&(z&&b.length>e?b[b.length-1]+=h+c:b.push(c),n=
76
- !0)});if(!n){a=b.dataRows[0].length;y=Array(a);for(A=0;A<a;++A)y[A]="";y[0]=f;y.push(c);y.xValues=[];void 0!==d&&(y.xValues[d]=f);b.dataRows.push(y)}})}})});var y=0;b.dataRows.forEach(function(b){y=Math.max(y,b.length)});for(var r=y-b.dataRows[0].length,A=0;A<r;A++){var g=n(A+1);f?(b.dataRows[0].push(g.topLevelColumnTitle),b.dataRows[1].push(g.columnTitle)):b.dataRows[0].push(g)}})});u(p.prototype,"onContainerMouseDown",function(b){this.chart.hasDraggedAnnotation||b.apply(this,Array.prototype.slice.call(arguments,
77
- 1))});return t.Annotation=E});w(a,"Mixins/Navigation.js",[],function(){return{initUpdate:function(a){a.navigation||(a.navigation={updates:[],update:function(a,d){this.updates.forEach(function(g){g.update.call(g.context,a,d)})}})},addUpdate:function(a,g){g.navigation||this.initUpdate(g);g.navigation.updates.push({update:a,context:g})}}});w(a,"Extensions/Annotations/NavigationBindings.js",[a["Extensions/Annotations/Annotations.js"],a["Core/Chart/Chart.js"],a["Mixins/Navigation.js"],a["Core/FormatUtilities.js"],
78
- a["Core/Globals.js"],a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,g,v,x,q,k,c){function d(a){var c=a.prototype.defaultOptions.events&&a.prototype.defaultOptions.events.click;b(!0,a.prototype.defaultOptions.events,{click:function(b){var a=this,f=a.chart.navigationBindings,d=f.activeAnnotation;c&&c.call(a,b);d!==a?(f.deselectAnnotation(),f.activeAnnotation=a,a.setControlPointsVisibility(!0),l(f,"showPopup",{annotation:a,formType:"annotation-toolbar",options:f.annotationToFields(a),
79
- onSubmit:function(b){var c={};"remove"===b.actionType?(f.activeAnnotation=!1,f.chart.removeAnnotation(a)):(f.fieldsToOptions(b.fields,c),f.deselectAnnotation(),b=c.typeOptions,"measure"===a.options.type&&(b.crosshairY.enabled=0!==b.crosshairY.strokeWidth,b.crosshairX.enabled=0!==b.crosshairX.strokeWidth),a.update(c))}})):l(f,"closePopup");b.activeAnnotation=!0}})}var e=x.format;x=k.setOptions;var m=c.addEvent,t=c.attr,l=c.fireEvent,p=c.isArray,u=c.isFunction,w=c.isNumber,h=c.isObject,b=c.merge,f=
80
- c.objectEach,n=c.pick,r=q.doc,B=q.win,D=function(){function a(b,a){this.selectedButton=this.boundClassNames=void 0;this.chart=b;this.options=a;this.eventsToUnbind=[];this.container=r.getElementsByClassName(this.options.bindingsClassName||"")}a.prototype.initEvents=function(){var b=this,a=b.chart,c=b.container,d=b.options;b.boundClassNames={};f(d.bindings||{},function(a){b.boundClassNames[a.className]=a});[].forEach.call(c,function(a){b.eventsToUnbind.push(m(a,"click",function(c){var f=b.getButtonEvents(a,
81
- c);f&&-1===f.button.className.indexOf("highcharts-disabled-btn")&&b.bindingsButtonClick(f.button,f.events,c)}))});f(d.events||{},function(a,c){u(a)&&b.eventsToUnbind.push(m(b,c,a,{passive:!1}))});b.eventsToUnbind.push(m(a.container,"click",function(c){!a.cancelClick&&a.isInsidePlot(c.chartX-a.plotLeft,c.chartY-a.plotTop,{visiblePlotOnly:!0})&&b.bindingsChartClick(this,c)}));b.eventsToUnbind.push(m(a.container,q.isTouchDevice?"touchmove":"mousemove",function(a){b.bindingsContainerMouseMove(this,a)},
82
- q.isTouchDevice?{passive:!1}:void 0))};a.prototype.initUpdate=function(){var b=this;v.addUpdate(function(a){b.update(a)},this.chart)};a.prototype.bindingsButtonClick=function(b,a,c){var f=this.chart;this.selectedButtonElement&&(l(this,"deselectButton",{button:this.selectedButtonElement}),this.nextEvent&&(this.currentUserDetails&&"annotations"===this.currentUserDetails.coll&&f.removeAnnotation(this.currentUserDetails),this.mouseMoveEvent=this.nextEvent=!1));this.selectedButton=a;this.selectedButtonElement=
83
- b;l(this,"selectButton",{button:b});a.init&&a.init.call(this,b,c);(a.start||a.steps)&&f.renderer.boxWrapper.addClass("highcharts-draw-mode")};a.prototype.bindingsChartClick=function(b,a){b=this.chart;var c=this.selectedButton;b=b.renderer.boxWrapper;var f;if(f=this.activeAnnotation&&!a.activeAnnotation&&a.target.parentNode){a:{f=a.target;var d=B.Element.prototype,n=d.matches||d.msMatchesSelector||d.webkitMatchesSelector,e=null;if(d.closest)e=d.closest.call(f,".highcharts-popup");else{do{if(n.call(f,
84
- ".highcharts-popup"))break a;f=f.parentElement||f.parentNode}while(null!==f&&1===f.nodeType)}f=e}f=!f}f&&l(this,"closePopup");c&&c.start&&(this.nextEvent?(this.nextEvent(a,this.currentUserDetails),this.steps&&(this.stepIndex++,c.steps[this.stepIndex]?this.mouseMoveEvent=this.nextEvent=c.steps[this.stepIndex]:(l(this,"deselectButton",{button:this.selectedButtonElement}),b.removeClass("highcharts-draw-mode"),c.end&&c.end.call(this,a,this.currentUserDetails),this.mouseMoveEvent=this.nextEvent=!1,this.selectedButton=
85
- null))):(this.currentUserDetails=c.start.call(this,a))&&c.steps?(this.stepIndex=0,this.steps=!0,this.mouseMoveEvent=this.nextEvent=c.steps[this.stepIndex]):(l(this,"deselectButton",{button:this.selectedButtonElement}),b.removeClass("highcharts-draw-mode"),this.steps=!1,this.selectedButton=null,c.end&&c.end.call(this,a,this.currentUserDetails)))};a.prototype.bindingsContainerMouseMove=function(b,a){this.mouseMoveEvent&&this.mouseMoveEvent(a,this.currentUserDetails)};a.prototype.fieldsToOptions=function(b,
86
- a){f(b,function(b,c){var f=parseFloat(b),d=c.split("."),e=a,h=d.length-1;!w(f)||b.match(/px/g)||c.match(/format/g)||(b=f);""!==b&&"undefined"!==b&&d.forEach(function(a,c){var f=n(d[c+1],"");h===c?e[a]=b:(e[a]||(e[a]=f.match(/\d/g)?[]:{}),e=e[a])})});return a};a.prototype.deselectAnnotation=function(){this.activeAnnotation&&(this.activeAnnotation.setControlPointsVisibility(!1),this.activeAnnotation=!1)};a.prototype.annotationToFields=function(b){function c(a,d,n,r){if(n&&a&&-1===B.indexOf(d)&&(0<=
87
- (n.indexOf&&n.indexOf(d))||n[d]||!0===n))if(p(a))r[d]=[],a.forEach(function(b,a){h(b)?(r[d][a]={},f(b,function(b,f){c(b,f,y[d],r[d][a])})):c(b,0,y[d],r[d])});else if(h(a)){var g={};p(r)?(r.push(g),g[d]={},g=g[d]):r[d]=g;f(a,function(b,a){c(b,a,0===d?n:y[d],g)})}else"format"===d?r[d]=[e(a,b.labels[0].points[0]).toString(),"text"]:p(r)?r.push([a,z(a)]):r[d]=[a,z(a)]}var d=b.options,r=a.annotationsEditable,y=r.nestedOptions,z=this.utils.getFieldType,g=n(d.type,d.shapes&&d.shapes[0]&&d.shapes[0].type,
88
- d.labels&&d.labels[0]&&d.labels[0].itemType,"label"),B=a.annotationsNonEditable[d.langKey]||[],k={langKey:d.langKey,type:g};f(d,function(b,a){"typeOptions"===a?(k[a]={},f(d[a],function(b,f){c(b,f,y,k[a],!0)})):c(b,a,r[g],k)});return k};a.prototype.getClickedClassNames=function(b,a){var c=a.target;a=[];for(var f;c&&((f=t(c,"class"))&&(a=a.concat(f.split(" ").map(function(b){return[b,c]}))),c=c.parentNode,c!==b););return a};a.prototype.getButtonEvents=function(b,a){var c=this,f;this.getClickedClassNames(b,
89
- a).forEach(function(b){c.boundClassNames[b[0]]&&!f&&(f={events:c.boundClassNames[b[0]],button:b[1]})});return f};a.prototype.update=function(a){this.options=b(!0,this.options,a);this.removeEvents();this.initEvents()};a.prototype.removeEvents=function(){this.eventsToUnbind.forEach(function(b){b()})};a.prototype.destroy=function(){this.removeEvents()};a.annotationsEditable={nestedOptions:{labelOptions:["style","format","backgroundColor"],labels:["style"],label:["style"],style:["fontSize","color"],background:["fill",
90
- "strokeWidth","stroke"],innerBackground:["fill","strokeWidth","stroke"],outerBackground:["fill","strokeWidth","stroke"],shapeOptions:["fill","strokeWidth","stroke"],shapes:["fill","strokeWidth","stroke"],line:["strokeWidth","stroke"],backgroundColors:[!0],connector:["fill","strokeWidth","stroke"],crosshairX:["strokeWidth","stroke"],crosshairY:["strokeWidth","stroke"]},circle:["shapes"],verticalLine:[],label:["labelOptions"],measure:["background","crosshairY","crosshairX"],fibonacci:[],tunnel:["background",
91
- "line","height"],pitchfork:["innerBackground","outerBackground"],rect:["shapes"],crookedLine:[],basicAnnotation:["shapes","labelOptions"]};a.annotationsNonEditable={rectangle:["crosshairX","crosshairY","label"]};return a}();D.prototype.utils={getFieldType:function(b){return{string:"text",number:"number","boolean":"checkbox"}[typeof b]},updateRectSize:function(b,a){var c=a.chart,f=a.options.typeOptions,d=c.pointer.getCoordinates(b);b=c.navigationBindings.utils.getAssignedAxis(d.xAxis);d=c.navigationBindings.utils.getAssignedAxis(d.yAxis);
92
- b&&d&&(b=b.value-f.point.x,f=f.point.y-d.value,a.update({typeOptions:{background:{width:c.inverted?f:b,height:c.inverted?b:f}}}))},getAssignedAxis:function(b){return b.filter(function(b){var a=b.axis.min,c=b.axis.max,f=n(b.axis.minPointOffset,0);return w(a)&&w(c)&&b.value>=a-f&&b.value<=c+f&&!b.axis.options.isInternal})[0]}};g.prototype.initNavigationBindings=function(){var b=this.options;b&&b.navigation&&b.navigation.bindings&&(this.navigationBindings=new D(this,b.navigation),this.navigationBindings.initEvents(),
93
- this.navigationBindings.initUpdate())};m(g,"load",function(){this.initNavigationBindings()});m(g,"destroy",function(){this.navigationBindings&&this.navigationBindings.destroy()});m(D,"deselectButton",function(){this.selectedButtonElement=null});m(a,"remove",function(){this.chart.navigationBindings&&this.chart.navigationBindings.deselectAnnotation()});q.Annotation&&(d(a),f(a.types,function(b){d(b)}));x({lang:{navigation:{popup:{simpleShapes:"Simple shapes",lines:"Lines",circle:"Circle",rectangle:"Rectangle",
94
- label:"Label",shapeOptions:"Shape options",typeOptions:"Details",fill:"Fill",format:"Text",strokeWidth:"Line width",stroke:"Line color",title:"Title",name:"Name",labelOptions:"Label options",labels:"Labels",backgroundColor:"Background color",backgroundColors:"Background colors",borderColor:"Border color",borderRadius:"Border radius",borderWidth:"Border width",style:"Style",padding:"Padding",fontSize:"Font size",color:"Color",height:"Height",shapes:"Shape options"}}},navigation:{bindingsClassName:"highcharts-bindings-container",
95
- bindings:{circleAnnotation:{className:"highcharts-circle-annotation",start:function(a){var c=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(c.xAxis);c=this.utils.getAssignedAxis(c.yAxis);var f=this.chart.options.navigation;if(a&&c)return this.chart.addAnnotation(b({langKey:"circle",type:"basicAnnotation",shapes:[{type:"circle",point:{x:a.value,y:c.value,xAxis:a.axis.options.index,yAxis:c.axis.options.index},r:5}]},f.annotationsOptions,f.bindings.circleAnnotation.annotationsOptions))},
96
- steps:[function(b,a){var c=a.options.shapes[0].point,f=this.chart.inverted;if(w(c.xAxis)&&w(c.yAxis)){var d=this.chart.xAxis[c.xAxis].toPixels(c.x);c=this.chart.yAxis[c.yAxis].toPixels(c.y);d=Math.max(Math.sqrt(Math.pow(f?c-b.chartX:d-b.chartX,2)+Math.pow(f?d-b.chartY:c-b.chartY,2)),5)}a.update({shapes:[{r:d}]})}]},rectangleAnnotation:{className:"highcharts-rectangle-annotation",start:function(a){a=this.chart.pointer.getCoordinates(a);var c=this.utils.getAssignedAxis(a.xAxis),f=this.utils.getAssignedAxis(a.yAxis);
97
- if(c&&f){a=c.value;var d=f.value;c=c.axis.options.index;f=f.axis.options.index;var n=this.chart.options.navigation;return this.chart.addAnnotation(b({langKey:"rectangle",type:"basicAnnotation",shapes:[{type:"path",points:[{xAxis:c,yAxis:f,x:a,y:d},{xAxis:c,yAxis:f,x:a,y:d},{xAxis:c,yAxis:f,x:a,y:d},{xAxis:c,yAxis:f,x:a,y:d}]}]},n.annotationsOptions,n.bindings.rectangleAnnotation.annotationsOptions))}},steps:[function(b,a){var c=a.options.shapes[0].points,f=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(f.xAxis);
98
- f=this.utils.getAssignedAxis(f.yAxis);b&&f&&(b=b.value,f=f.value,c[1].x=b,c[2].x=b,c[2].y=f,c[3].y=f,a.update({shapes:[{points:c}]}))}]},labelAnnotation:{className:"highcharts-label-annotation",start:function(a){var c=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(c.xAxis);c=this.utils.getAssignedAxis(c.yAxis);var f=this.chart.options.navigation;if(a&&c)return this.chart.addAnnotation(b({langKey:"label",type:"basicAnnotation",labelOptions:{format:"{y:.2f}"},labels:[{point:{xAxis:a.axis.options.index,
99
- yAxis:c.axis.options.index,x:a.value,y:c.value},overflow:"none",crop:!0}]},f.annotationsOptions,f.bindings.labelAnnotation.annotationsOptions))}}},events:{},annotationsOptions:{animation:{defer:0}}}});m(g,"render",function(){var b=this,a=b.navigationBindings;if(b&&a){var c=!1;b.series.forEach(function(b){!b.options.isInternal&&b.visible&&(c=!0)});f(a.boundClassNames,function(a,f){b.navigationBindings&&b.navigationBindings.container&&b.navigationBindings.container[0]&&(f=b.navigationBindings.container[0].querySelectorAll("."+
100
- f))&&("normal"===a.noDataState?f.forEach(function(b){-1!==b.className.indexOf("highcharts-disabled-btn")&&b.classList.remove("highcharts-disabled-btn")}):c?f.forEach(function(b){-1!==b.className.indexOf("highcharts-disabled-btn")&&b.classList.remove("highcharts-disabled-btn")}):f.forEach(function(b){-1===b.className.indexOf("highcharts-disabled-btn")&&(b.className+=" highcharts-disabled-btn")}))})}});m(D,"closePopup",function(){this.deselectAnnotation()});return D});w(a,"Stock/StockToolsBindings.js",
101
- [a["Core/Globals.js"],a["Extensions/Annotations/NavigationBindings.js"],a["Core/DefaultOptions.js"],a["Core/Series/Series.js"],a["Core/Utilities.js"],a["Core/Color/Palette.js"]],function(a,g,v,w,q,k){var c=v.getOptions;v=v.setOptions;var d=q.correctFloat,e=q.defined,m=q.extend,t=q.fireEvent,l=q.isNumber,p=q.merge,u=q.pick,x=q.uniqueKey,h=g.prototype.utils;h.addFlagFromForm=function(b){return function(a){var c=this,f=c.chart,d=f.stockTools,e=h.getFieldType;a=h.attractToPoint(a,f);if(a){var g={type:"flags",
102
- onSeries:a.series.id,shape:b,data:[{x:a.x,y:a.y}],xAxis:a.xAxis,yAxis:a.yAxis,point:{events:{click:function(){var b=this,a=b.options;t(c,"showPopup",{point:b,formType:"annotation-toolbar",options:{langKey:"flags",type:"flags",title:[a.title,e(a.title)],name:[a.name,e(a.name)]},onSubmit:function(a){"remove"===a.actionType?b.remove():b.update(c.fieldsToOptions(a.fields,{}))}})}}}};d&&d.guiEnabled||f.addSeries(g);t(c,"showPopup",{formType:"flag",options:{langKey:"flags",type:"flags",title:["A",e("A")],
103
- name:["Flag A",e("Flag A")]},onSubmit:function(b){c.fieldsToOptions(b.fields,g.data[0]);f.addSeries(g)}})}}};h.manageIndicators=function(b){var a=this.chart,d={linkedTo:b.linkedTo,type:b.type},h="ad cmf klinger mfi obv vbp vwap".split(" "),g="ad atr cci cmf disparityindex cmo dmi macd mfi roc rsi ao aroon aroonoscillator trix apo dpo ppo natr obv williamsr stochastic slowstochastic linearRegression linearRegressionSlope linearRegressionIntercept linearRegressionAngle klinger".split(" ");if("edit"===
104
- b.actionType)this.fieldsToOptions(b.fields,d),(b=a.get(b.seriesId))&&b.update(d,!1);else if("remove"===b.actionType){if(b=a.get(b.seriesId)){var k=b.yAxis;b.linkedSeries&&b.linkedSeries.forEach(function(b){b.remove(!1)});b.remove(!1);0<=g.indexOf(b.type)&&(d=k.options.height,k.remove(!1),this.resizeYAxes(d))}}else{d.id=x();this.fieldsToOptions(b.fields,d);k=a.get(d.linkedTo);var l=c().plotOptions;"undefined"!==typeof k&&k instanceof w&&"sum"===k.getDGApproximation()&&!e(l&&l[d.type]&&l.dataGrouping&&
105
- l.dataGrouping.approximation)&&(d.dataGrouping={approximation:"sum"});0<=g.indexOf(b.type)?(k=a.addAxis({id:x(),offset:0,opposite:!0,title:{text:""},tickPixelInterval:40,showLastLabel:!1,labels:{align:"left",y:-2}},!1,!1),d.yAxis=k.options.id,this.resizeYAxes()):d.yAxis=a.get(b.linkedTo).options.yAxis;0<=h.indexOf(b.type)&&(d.params.volumeSeriesID=a.series.filter(function(b){return"column"===b.options.type})[0].options.id);a.addSeries(d,!1)}t(this,"deselectButton",{button:this.selectedButtonElement});
106
- a.redraw()};h.updateHeight=function(b,a){(b=this.utils.getAssignedAxis(this.chart.pointer.getCoordinates(b).yAxis))&&a.update({typeOptions:{height:b.value-a.options.typeOptions.points[1].y}})};h.attractToPoint=function(b,a){b=a.pointer.getCoordinates(b);var c=Number.MAX_VALUE,f;if(a.navigationBindings){var d=a.navigationBindings.utils.getAssignedAxis(b.xAxis);var e=a.navigationBindings.utils.getAssignedAxis(b.yAxis)}if(d&&e){var h=d.value;a=e.value;e.axis.series.forEach(function(b){b.points&&b.points.forEach(function(b){b&&
107
- c>Math.abs(b.x-h)&&(c=Math.abs(b.x-h),f=b)})});if(f&&f.x&&f.y)return{x:f.x,y:f.y,below:a<f.y,series:f.series,xAxis:f.series.xAxis.options.index||0,yAxis:f.series.yAxis.options.index||0}}};h.isNotNavigatorYAxis=function(b){return"highcharts-navigator-yaxis"!==b.userOptions.className};h.isPriceIndicatorEnabled=function(b){return b.some(function(b){return b.lastVisiblePrice||b.lastPrice})};h.updateNthPoint=function(b){return function(a,c){var f=c.options.typeOptions;a=this.chart.pointer.getCoordinates(a);
108
- var d=this.utils.getAssignedAxis(a.xAxis),e=this.utils.getAssignedAxis(a.yAxis);d&&e&&(f.points.forEach(function(a,c){c>=b&&(a.x=d.value,a.y=e.value)}),c.update({typeOptions:{points:f.points}}))}};m(g.prototype,{getYAxisPositions:function(b,a,c,h){function f(b){return e(b)&&!l(b)&&b.match("%")}var n=0,r,g;h&&(g=d(parseFloat(h)/100));return{positions:b.map(function(e,h){var k=d(f(e.options.height)?parseFloat(e.options.height)/100:e.height/a);e=d(f(e.options.top)?parseFloat(e.options.top)/100:(e.top-
109
- e.chart.plotTop)/a);g?e<=n?n=d(Math.max(n,(e||0)+(k||0))):(e=d(e-g),n=d(n+k)):(l(k)||(k=b[h-1].series.every(function(b){return b.is("sma")})?r:c/100),l(e)||(e=n),r=k,n=d(Math.max(n,(e||0)+(k||0))));return{height:100*k,top:100*e}}),allAxesHeight:n}},getYAxisResizers:function(b){var a=[];b.forEach(function(c,f){c=b[f+1];a[f]=c?{enabled:!0,controlledAxis:{next:[u(c.options.id,c.options.index)]}}:{enabled:!1}});return a},resizeYAxes:function(b){var a=this.chart,c=a.yAxis.filter(h.isNotNavigatorYAxis);
110
- a=this.getYAxisPositions(c,a.plotHeight,20,b);var e=a.positions,g=a.allAxesHeight,k=this.getYAxisResizers(c);!b&&g<=d(1)?e[e.length-1]={height:20,top:d(100*g-20)}:e.forEach(function(b){b.height=b.height/(100*g)*100;b.top=b.top/(100*g)*100});e.forEach(function(b,a){c[a].update({height:b.height+"%",top:b.top+"%",resize:k[a],offset:0},!1)})},recalculateYAxisPositions:function(b,a,c,e){b.forEach(function(f,n){n=b[n-1];f.top=n?d(n.height+n.top):0;c&&(f.height=d(f.height+e*a))});return b}});q={segment:{className:"highcharts-segment",
111
- start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"segment",type:"crookedLine",typeOptions:{xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.segment.annotationsOptions),this.chart.addAnnotation(b)},steps:[h.updateNthPoint(1)]},arrowSegment:{className:"highcharts-arrow-segment",
112
- start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"arrowSegment",type:"crookedLine",typeOptions:{line:{markerEnd:"arrow"},xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.arrowSegment.annotationsOptions),this.chart.addAnnotation(b)},steps:[h.updateNthPoint(1)]},
113
- ray:{className:"highcharts-ray",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"ray",type:"infinityLine",typeOptions:{type:"ray",xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.ray.annotationsOptions),this.chart.addAnnotation(b)},steps:[h.updateNthPoint(1)]},
114
- arrowRay:{className:"highcharts-arrow-ray",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"arrowRay",type:"infinityLine",typeOptions:{type:"ray",line:{markerEnd:"arrow"},xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.arrowRay.annotationsOptions),this.chart.addAnnotation(b)},
115
- steps:[h.updateNthPoint(1)]},infinityLine:{className:"highcharts-infinity-line",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"infinityLine",type:"infinityLine",typeOptions:{type:"line",xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.infinityLine.annotationsOptions),
116
- this.chart.addAnnotation(b)},steps:[h.updateNthPoint(1)]},arrowInfinityLine:{className:"highcharts-arrow-infinity-line",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"arrowInfinityLine",type:"infinityLine",typeOptions:{type:"line",line:{markerEnd:"arrow"},xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,
117
- y:a.value}]}},c.annotationsOptions,c.bindings.arrowInfinityLine.annotationsOptions),this.chart.addAnnotation(b)},steps:[h.updateNthPoint(1)]},horizontalLine:{className:"highcharts-horizontal-line",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;a&&b&&(a=p({langKey:"horizontalLine",type:"infinityLine",draggable:"y",typeOptions:{type:"horizontalLine",xAxis:a.axis.options.index,
118
- yAxis:b.axis.options.index,points:[{x:a.value,y:b.value}]}},c.annotationsOptions,c.bindings.horizontalLine.annotationsOptions),this.chart.addAnnotation(a))}},verticalLine:{className:"highcharts-vertical-line",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;a&&b&&(a=p({langKey:"verticalLine",type:"infinityLine",draggable:"x",typeOptions:{type:"verticalLine",xAxis:a.axis.options.index,
119
- yAxis:b.axis.options.index,points:[{x:a.value,y:b.value}]}},c.annotationsOptions,c.bindings.verticalLine.annotationsOptions),this.chart.addAnnotation(a))}},crooked3:{className:"highcharts-crooked3",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"crooked3",type:"crookedLine",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,
120
- points:[{x:c,y:d},{x:c,y:d},{x:c,y:d}]}},e.annotationsOptions,e.bindings.crooked3.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateNthPoint(1),h.updateNthPoint(2)]},crooked5:{className:"highcharts-crooked5",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"crookedLine",type:"crookedLine",typeOptions:{xAxis:a.axis.options.index,
121
- yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d}]}},e.annotationsOptions,e.bindings.crooked5.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateNthPoint(1),h.updateNthPoint(2),h.updateNthPoint(3),h.updateNthPoint(4)]},elliott3:{className:"highcharts-elliott3",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;
122
- a=p({langKey:"elliott3",type:"elliottWave",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d}]},labelOptions:{style:{color:k.neutralColor60}}},e.annotationsOptions,e.bindings.elliott3.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateNthPoint(1),h.updateNthPoint(2),h.updateNthPoint(3)]},elliott5:{className:"highcharts-elliott5",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);
123
- b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"elliott5",type:"elliottWave",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d}]},labelOptions:{style:{color:k.neutralColor60}}},e.annotationsOptions,e.bindings.elliott5.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateNthPoint(1),h.updateNthPoint(2),h.updateNthPoint(3),h.updateNthPoint(4),
124
- h.updateNthPoint(5)]},measureX:{className:"highcharts-measure-x",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=this.chart.options.navigation;a=p({langKey:"measure",type:"measure",typeOptions:{selectType:"x",xAxis:a.axis.options.index,yAxis:b.axis.options.index,point:{x:a.value,y:b.value},crosshairX:{strokeWidth:1,stroke:k.neutralColor100},crosshairY:{enabled:!1,strokeWidth:0,stroke:k.neutralColor100},
125
- background:{width:0,height:0,strokeWidth:0,stroke:k.backgroundColor}},labelOptions:{style:{color:k.neutralColor60}}},c.annotationsOptions,c.bindings.measureX.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateRectSize]},measureY:{className:"highcharts-measure-y",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=this.chart.options.navigation;a=p({langKey:"measure",type:"measure",
126
- typeOptions:{selectType:"y",xAxis:a.axis.options.index,yAxis:b.axis.options.index,point:{x:a.value,y:b.value},crosshairX:{enabled:!1,strokeWidth:0,stroke:k.neutralColor100},crosshairY:{strokeWidth:1,stroke:k.neutralColor100},background:{width:0,height:0,strokeWidth:0,stroke:k.backgroundColor}},labelOptions:{style:{color:k.neutralColor60}}},c.annotationsOptions,c.bindings.measureY.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateRectSize]},measureXY:{className:"highcharts-measure-xy",
127
- start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=this.chart.options.navigation;a=p({langKey:"measure",type:"measure",typeOptions:{selectType:"xy",xAxis:a.axis.options.index,yAxis:b.axis.options.index,point:{x:a.value,y:b.value},background:{width:0,height:0,strokeWidth:10},crosshairX:{strokeWidth:1,stroke:k.neutralColor100},crosshairY:{strokeWidth:1,stroke:k.neutralColor100}},labelOptions:{style:{color:k.neutralColor60}}},
128
- c.annotationsOptions,c.bindings.measureXY.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateRectSize]},fibonacci:{className:"highcharts-fibonacci",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"fibonacci",type:"fibonacci",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,
129
- y:d}]},labelOptions:{style:{color:k.neutralColor60}}},e.annotationsOptions,e.bindings.fibonacci.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateNthPoint(1),h.updateHeight]},parallelChannel:{className:"highcharts-parallel-channel",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"parallelChannel",type:"tunnel",
130
- typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d}]}},e.annotationsOptions,e.bindings.parallelChannel.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateNthPoint(1),h.updateHeight]},pitchfork:{className:"highcharts-pitchfork",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"pitchfork",
131
- type:"pitchfork",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:a.value,y:b.value,controlPoint:{style:{fill:k.negativeColor}}},{x:c,y:d},{x:c,y:d}],innerBackground:{fill:"rgba(100, 170, 255, 0.8)"}},shapeOptions:{strokeWidth:2}},e.annotationsOptions,e.bindings.pitchfork.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[h.updateNthPoint(1),h.updateNthPoint(2)]},verticalCounter:{className:"highcharts-vertical-counter",start:function(a){a=h.attractToPoint(a,
132
- this.chart);var b=this.chart.options.navigation;a&&(this.verticalCounter=this.verticalCounter||0,a=p({langKey:"verticalCounter",type:"verticalLine",typeOptions:{point:{x:a.x,y:a.y,xAxis:a.xAxis,yAxis:a.yAxis},label:{offset:a.below?40:-40,text:this.verticalCounter.toString()}},labelOptions:{style:{color:k.neutralColor60,fontSize:"11px"}},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1}},b.annotationsOptions,b.bindings.verticalCounter.annotationsOptions),a=this.chart.addAnnotation(a),this.verticalCounter++,
133
- a.options.events.click.call(a,{}))}},verticalLabel:{className:"highcharts-vertical-label",start:function(a){a=h.attractToPoint(a,this.chart);var b=this.chart.options.navigation;a&&(a=p({langKey:"verticalLabel",type:"verticalLine",typeOptions:{point:{x:a.x,y:a.y,xAxis:a.xAxis,yAxis:a.yAxis},label:{offset:a.below?40:-40}},labelOptions:{style:{color:k.neutralColor60,fontSize:"11px"}},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1}},b.annotationsOptions,b.bindings.verticalLabel.annotationsOptions),
134
- a=this.chart.addAnnotation(a),a.options.events.click.call(a,{}))}},verticalArrow:{className:"highcharts-vertical-arrow",start:function(a){a=h.attractToPoint(a,this.chart);var b=this.chart.options.navigation;a&&(a=p({langKey:"verticalArrow",type:"verticalLine",typeOptions:{point:{x:a.x,y:a.y,xAxis:a.xAxis,yAxis:a.yAxis},label:{offset:a.below?40:-40,format:" "},connector:{fill:"none",stroke:a.below?k.negativeColor:k.positiveColor}},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1}},b.annotationsOptions,
135
- b.bindings.verticalArrow.annotationsOptions),a=this.chart.addAnnotation(a),a.options.events.click.call(a,{}))}},flagCirclepin:{className:"highcharts-flag-circlepin",start:h.addFlagFromForm("circlepin")},flagDiamondpin:{className:"highcharts-flag-diamondpin",start:h.addFlagFromForm("flag")},flagSquarepin:{className:"highcharts-flag-squarepin",start:h.addFlagFromForm("squarepin")},flagSimplepin:{className:"highcharts-flag-simplepin",start:h.addFlagFromForm("nopin")},zoomX:{className:"highcharts-zoom-x",
136
- init:function(a){this.chart.update({chart:{zoomType:"x"}});t(this,"deselectButton",{button:a})}},zoomY:{className:"highcharts-zoom-y",init:function(a){this.chart.update({chart:{zoomType:"y"}});t(this,"deselectButton",{button:a})}},zoomXY:{className:"highcharts-zoom-xy",init:function(a){this.chart.update({chart:{zoomType:"xy"}});t(this,"deselectButton",{button:a})}},seriesTypeLine:{className:"highcharts-series-type-line",init:function(a){this.chart.series[0].update({type:"line",useOhlcData:!0});t(this,
137
- "deselectButton",{button:a})}},seriesTypeOhlc:{className:"highcharts-series-type-ohlc",init:function(a){this.chart.series[0].update({type:"ohlc"});t(this,"deselectButton",{button:a})}},seriesTypeCandlestick:{className:"highcharts-series-type-candlestick",init:function(a){this.chart.series[0].update({type:"candlestick"});t(this,"deselectButton",{button:a})}},fullScreen:{className:"highcharts-full-screen",noDataState:"normal",init:function(a){this.chart.fullscreen.toggle();t(this,"deselectButton",{button:a})}},
138
- currentPriceIndicator:{className:"highcharts-current-price-indicator",init:function(a){var b=this.chart,c=b.series,d=b.stockTools,e=h.isPriceIndicatorEnabled(b.series);d&&d.guiEnabled&&(c.forEach(function(a){a.update({lastPrice:{enabled:!e},lastVisiblePrice:{enabled:!e,label:{enabled:!0}}},!1)}),b.redraw());t(this,"deselectButton",{button:a})}},indicators:{className:"highcharts-indicators",init:function(){var a=this;t(a,"showPopup",{formType:"indicators",options:{},onSubmit:function(b){a.utils.manageIndicators.call(a,
139
- b)}})}},toggleAnnotations:{className:"highcharts-toggle-annotations",init:function(a){var b=this.chart,c=b.stockTools,d=c.getIconsURL();this.toggledAnnotations=!this.toggledAnnotations;(b.annotations||[]).forEach(function(a){a.setVisibility(!this.toggledAnnotations)},this);c&&c.guiEnabled&&(a.firstChild.style["background-image"]=this.toggledAnnotations?'url("'+d+'annotations-hidden.svg")':'url("'+d+'annotations-visible.svg")');t(this,"deselectButton",{button:a})}},saveChart:{className:"highcharts-save-chart",
140
- noDataState:"normal",init:function(b){var c=this.chart,d=[],e=[],g=[],k=[];c.annotations.forEach(function(a,b){d[b]=a.userOptions});c.series.forEach(function(a){a.is("sma")?e.push(a.userOptions):"flags"===a.type&&g.push(a.userOptions)});c.yAxis.forEach(function(a){h.isNotNavigatorYAxis(a)&&k.push(a.options)});a.win.localStorage.setItem("highcharts-chart",JSON.stringify({annotations:d,indicators:e,flags:g,yAxes:k}));t(this,"deselectButton",{button:b})}}};v({navigation:{bindings:q}});g.prototype.utils=
141
- p(h,g.prototype.utils)});w(a,"Stock/StockToolsGui.js",[a["Core/Chart/Chart.js"],a["Core/Globals.js"],a["Extensions/Annotations/NavigationBindings.js"],a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,g,v,w,q){w=w.setOptions;var d=q.addEvent,c=q.createElement,x=q.css,e=q.extend,m=q.fireEvent,t=q.getStyle,l=q.isArray,p=q.merge,u=q.pick;w({lang:{stockTools:{gui:{simpleShapes:"Simple shapes",lines:"Lines",crookedLines:"Crooked lines",measure:"Measure",advanced:"Advanced",toggleAnnotations:"Toggle annotations",
142
- verticalLabels:"Vertical labels",flags:"Flags",zoomChange:"Zoom change",typeChange:"Type change",saveChart:"Save chart",indicators:"Indicators",currentPriceIndicator:"Current Price Indicators",zoomX:"Zoom X",zoomY:"Zoom Y",zoomXY:"Zooom XY",fullScreen:"Fullscreen",typeOHLC:"OHLC",typeLine:"Line",typeCandlestick:"Candlestick",circle:"Circle",label:"Label",rectangle:"Rectangle",flagCirclepin:"Flag circle",flagDiamondpin:"Flag diamond",flagSquarepin:"Flag square",flagSimplepin:"Flag simple",measureXY:"Measure XY",
143
- measureX:"Measure X",measureY:"Measure Y",segment:"Segment",arrowSegment:"Arrow segment",ray:"Ray",arrowRay:"Arrow ray",line:"Line",arrowLine:"Arrow line",horizontalLine:"Horizontal line",verticalLine:"Vertical line",infinityLine:"Infinity line",crooked3:"Crooked 3 line",crooked5:"Crooked 5 line",elliott3:"Elliott 3 line",elliott5:"Elliott 5 line",verticalCounter:"Vertical counter",verticalLabel:"Vertical label",verticalArrow:"Vertical arrow",fibonacci:"Fibonacci",pitchfork:"Pitchfork",parallelChannel:"Parallel channel"}},
144
- navigation:{popup:{circle:"Circle",rectangle:"Rectangle",label:"Label",segment:"Segment",arrowSegment:"Arrow segment",ray:"Ray",arrowRay:"Arrow ray",line:"Line",arrowLine:"Arrow line",horizontalLine:"Horizontal line",verticalLine:"Vertical line",crooked3:"Crooked 3 line",crooked5:"Crooked 5 line",elliott3:"Elliott 3 line",elliott5:"Elliott 5 line",verticalCounter:"Vertical counter",verticalLabel:"Vertical label",verticalArrow:"Vertical arrow",fibonacci:"Fibonacci",pitchfork:"Pitchfork",parallelChannel:"Parallel channel",
145
- infinityLine:"Infinity line",measure:"Measure",measureXY:"Measure XY",measureX:"Measure X",measureY:"Measure Y",flags:"Flags",addButton:"add",saveButton:"save",editButton:"edit",removeButton:"remove",series:"Series",volume:"Volume",connector:"Connector",innerBackground:"Inner background",outerBackground:"Outer background",crosshairX:"Crosshair X",crosshairY:"Crosshair Y",tunnel:"Tunnel",background:"Background",index:"Index",period:"Period",standardDeviation:"Standard deviation",periodTenkan:"Tenkan period",
11
+ 'use strict';(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/stock-tools",["highcharts","highcharts/modules/stock"],function(w){a(w);a.Highcharts=w;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function w(d,a,u,x){d.hasOwnProperty(a)||(d[a]=x.apply(null,u))}a=a?a._modules:{};w(a,"Extensions/Annotations/Mixins/EventEmitterMixin.js",[a["Core/Globals.js"],a["Core/Utilities.js"]],
12
+ function(d,a){var k=a.addEvent,x=a.fireEvent,q=a.objectEach,n=a.pick,c=a.removeEvent;return{addEvents:function(){var c=this,e=function(e){k(e,d.isTouchDevice?"touchstart":"mousedown",function(e){c.onMouseDown(e)},{passive:!1})};e(this.graphic.element);(c.labels||[]).forEach(function(c){c.options.useHTML&&c.graphic.text&&e(c.graphic.text.element)});q(c.options.events,function(e,d){var g=function(g){"click"===d&&c.cancelClick||e.call(c,c.chart.pointer.normalize(g),c.target)};if(-1===(c.nonDOMEvents||
13
+ []).indexOf(d))c.graphic.on(d,g);else k(c,d,g,{passive:!1})});if(c.options.draggable&&(k(c,"drag",c.onDrag),!c.graphic.renderer.styledMode)){var z={cursor:{x:"ew-resize",y:"ns-resize",xy:"move"}[c.options.draggable]};c.graphic.css(z);(c.labels||[]).forEach(function(e){e.options.useHTML&&e.graphic.text&&e.graphic.text.css(z)})}c.isUpdating||x(c,"add")},removeDocEvents:function(){this.removeDrag&&(this.removeDrag=this.removeDrag());this.removeMouseUp&&(this.removeMouseUp=this.removeMouseUp())},onMouseDown:function(c){var e=
14
+ this,z=e.chart.pointer;c.preventDefault&&c.preventDefault();if(2!==c.button){c=z.normalize(c);var g=c.chartX;var m=c.chartY;e.cancelClick=!1;e.chart.hasDraggedAnnotation=!0;e.removeDrag=k(d.doc,d.isTouchDevice?"touchmove":"mousemove",function(c){e.hasDragged=!0;c=z.normalize(c);c.prevChartX=g;c.prevChartY=m;x(e,"drag",c);g=c.chartX;m=c.chartY},d.isTouchDevice?{passive:!1}:void 0);e.removeMouseUp=k(d.doc,d.isTouchDevice?"touchend":"mouseup",function(c){var g=n(e.target&&e.target.annotation,e.target);
15
+ g&&(g.cancelClick=e.hasDragged);e.cancelClick=e.hasDragged;e.hasDragged=!1;e.chart.hasDraggedAnnotation=!1;x(n(g,e),"afterUpdate");e.onMouseUp(c)},d.isTouchDevice?{passive:!1}:void 0)}},onMouseUp:function(c){var e=this.chart;c=this.target||this;var d=e.options.annotations;e=e.annotations.indexOf(c);this.removeDocEvents();d[e]=c.options},onDrag:function(c){if(this.chart.isInsidePlot(c.chartX-this.chart.plotLeft,c.chartY-this.chart.plotTop,{visiblePlotOnly:!0})){var e=this.mouseMoveToTranslation(c);
16
+ "x"===this.options.draggable&&(e.y=0);"y"===this.options.draggable&&(e.x=0);this.points.length?this.translate(e.x,e.y):(this.shapes.forEach(function(c){c.translate(e.x,e.y)}),this.labels.forEach(function(c){c.translate(e.x,e.y)}));this.redraw(!1)}},mouseMoveToRadians:function(c,e,d){var g=c.prevChartY-d,z=c.prevChartX-e;d=c.chartY-d;c=c.chartX-e;this.chart.inverted&&(e=z,z=g,g=e,e=c,c=d,d=e);return Math.atan2(d,c)-Math.atan2(g,z)},mouseMoveToTranslation:function(c){var e=c.chartX-c.prevChartX;c=c.chartY-
17
+ c.prevChartY;if(this.chart.inverted){var d=c;c=e;e=d}return{x:e,y:c}},mouseMoveToScale:function(c,e,d){e=(c.chartX-e||1)/(c.prevChartX-e||1);c=(c.chartY-d||1)/(c.prevChartY-d||1);this.chart.inverted&&(d=c,c=e,e=d);return{x:e,y:c}},destroy:function(){this.removeDocEvents();c(this);this.hcEvents=null}}});w(a,"Extensions/Annotations/ControlPoint.js",[a["Core/Utilities.js"],a["Extensions/Annotations/Mixins/EventEmitterMixin.js"]],function(d,a){var k=d.merge,x=d.pick;return function(){function d(d,c,D,
18
+ e){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=d;this.target=c;this.options=D;this.index=x(D.index,e)}d.prototype.setVisibility=function(d){this.graphic.attr("visibility",d?"visible":"hidden");this.options.visible=
19
+ d};d.prototype.render=function(){var d=this.chart,c=this.options;this.graphic=d.renderer.symbol(c.symbol,0,0,c.width,c.height).add(d.controlPointsGroup).css(c.style);this.setVisibility(c.visible);this.addEvents()};d.prototype.redraw=function(d){this.graphic[d?"animate":"attr"](this.options.positioner.call(this,this.target))};d.prototype.destroy=function(){a.destroy.call(this);this.graphic&&(this.graphic=this.graphic.destroy());this.options=this.target=this.chart=null};d.prototype.update=function(d){var c=
20
+ this.chart,a=this.target,e=this.index;d=k(!0,this.options,d);this.destroy();this.constructor(c,a,d,e);this.render(c.controlPointsGroup);this.redraw()};return d}()});w(a,"Extensions/Annotations/MockPoint.js",[a["Core/Series/Series.js"],a["Core/Utilities.js"],a["Core/Axis/Axis.js"]],function(d,a,u){var k=a.defined,q=a.fireEvent;return function(){function a(c,a,e){this.y=this.x=this.ttBelow=this.plotY=this.plotX=this.negative=this.isInside=void 0;this.mock=!0;this.series={visible:!0,chart:c,getPlotBox:d.prototype.getPlotBox};
21
+ this.target=a||null;this.options=e;this.applyOptions(this.getOptions())}a.fromPoint=function(c){return new a(c.series.chart,null,{x:c.x,y:c.y,xAxis:c.series.xAxis,yAxis:c.series.yAxis})};a.pointToPixels=function(c,d){var e=c.series,a=e.chart,g=c.plotX,m=c.plotY;a.inverted&&(c.mock?(g=c.plotY,m=c.plotX):(g=a.plotWidth-c.plotY,m=a.plotHeight-c.plotX));e&&!d&&(c=e.getPlotBox(),g+=c.translateX,m+=c.translateY);return{x:g,y:m}};a.pointToOptions=function(c){return{x:c.x,y:c.y,xAxis:c.series.xAxis,yAxis:c.series.yAxis}};
22
+ 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(c){this.command=c.command;this.setAxis(c,"x");this.setAxis(c,"y");this.refresh()};a.prototype.setAxis=function(c,d){d+="Axis";c=c[d];var e=this.series.chart;this.series[d]=c instanceof u?c:k(c)?e[d][c]||e.get(c):null};a.prototype.toAnchor=function(){var c=[this.plotX,this.plotY,0,
23
+ 0];this.series.chart.inverted&&(c[0]=this.plotY,c[1]=this.plotX);return c};a.prototype.getLabelConfig=function(){return{x:this.x,y:this.y,point:this}};a.prototype.isInsidePlot=function(){var c=this.plotX,d=this.plotY,e=this.series.xAxis,a=this.series.yAxis,g={x:c,y:d,isInsidePlot:!0};e&&(g.isInsidePlot=k(c)&&0<=c&&c<=e.len);a&&(g.isInsidePlot=g.isInsidePlot&&k(d)&&0<=d&&d<=a.len);q(this.series.chart,"afterIsInsidePlot",g);return g.isInsidePlot};a.prototype.refresh=function(){var c=this.series,d=c.xAxis;
24
+ c=c.yAxis;var e=this.getOptions();d?(this.x=e.x,this.plotX=d.toPixels(e.x,!0)):(this.x=null,this.plotX=e.x);c?(this.y=e.y,this.plotY=c.toPixels(e.y,!0)):(this.y=null,this.plotY=e.y);this.isInside=this.isInsidePlot()};a.prototype.translate=function(c,d,e,a){this.hasDynamicOptions()||(this.plotX+=e,this.plotY+=a,this.refreshOptions())};a.prototype.scale=function(c,d,e,a){if(!this.hasDynamicOptions()){var g=this.plotY*a;this.plotX=(1-e)*c+this.plotX*e;this.plotY=(1-a)*d+g;this.refreshOptions()}};a.prototype.rotate=
25
+ function(c,d,e){if(!this.hasDynamicOptions()){var a=Math.cos(e);e=Math.sin(e);var g=this.plotX,m=this.plotY;g-=c;m-=d;this.plotX=g*a-m*e+c;this.plotY=g*e+m*a+d;this.refreshOptions()}};a.prototype.refreshOptions=function(){var c=this.series,d=c.xAxis;c=c.yAxis;this.x=this.options.x=d?this.options.x=d.toValue(this.plotX,!0):this.plotX;this.y=this.options.y=c?c.toValue(this.plotY,!0):this.plotY};return a}()});w(a,"Extensions/Annotations/Mixins/ControllableMixin.js",[a["Extensions/Annotations/ControlPoint.js"],
26
+ a["Extensions/Annotations/MockPoint.js"],a["Core/Tooltip.js"],a["Core/Utilities.js"]],function(d,a,u,x){var k=x.isObject,n=x.isString,c=x.merge,D=x.splat;return{init:function(c,d,a){this.annotation=c;this.chart=c.chart;this.options=d;this.points=[];this.controlPoints=[];this.index=a;this.linkPoints();this.addControlPoints()},attr:function(){this.graphic.attr.apply(this.graphic,arguments)},getPointsOptions:function(){var c=this.options;return c.points||c.point&&D(c.point)},attrsFromOptions:function(c){var d=
27
+ this.constructor.attrsMap,e={},a,p=this.chart.styledMode;for(a in c){var r=d[a];!r||p&&-1!==["fill","stroke","stroke-width"].indexOf(r)||(e[r]=c[a])}return e},anchor:function(d){var e=d.series.getPlotBox(),a=d.series.chart,m=d.mock?d.toAnchor():u.prototype.getAnchor.call({chart:d.series.chart},d);m={x:m[0]+(this.options.x||0),y:m[1]+(this.options.y||0),height:m[2]||0,width:m[3]||0};return{relativePosition:m,absolutePosition:c(m,{x:m.x+(d.mock?e.translateX:a.plotLeft),y:m.y+(d.mock?e.translateY:a.plotTop)})}},
28
+ point:function(c,d){if(c&&c.series)return c;d&&null!==d.series||(k(c)?d=new a(this.chart,this,c):n(c)?d=this.chart.get(c)||null:"function"===typeof c&&(d=c.call(d,this),d=d.series?d:new a(this.chart,this,c)));return d},linkPoints:function(){var c=this.getPointsOptions(),d=this.points,a=c&&c.length||0,m;for(m=0;m<a;m++){var p=this.point(c[m],d[m]);if(!p){d.length=0;return}p.mock&&p.refresh();d[m]=p}return d},addControlPoints:function(){var a=this.options.controlPoints;(a||[]).forEach(function(e,g){e=
29
+ c(this.options.controlPointOptions,e);e.index||(e.index=g);a[g]=e;this.controlPoints.push(new d(this.chart,this,e))},this)},shouldBeDrawn:function(){return!!this.points.length},render:function(c){this.controlPoints.forEach(function(c){c.render()})},redraw:function(c){this.controlPoints.forEach(function(d){d.redraw(c)})},transform:function(c,d,a,m,p){if(this.chart.inverted){var e=d;d=a;a=e}this.points.forEach(function(e,f){this.transformPoint(c,d,a,m,p,f)},this)},transformPoint:function(c,d,g,m,p,
30
+ r){var e=this.points[r];e.mock||(e=this.points[r]=a.fromPoint(e));e[c](d,g,m,p)},translate:function(c,d){this.transform("translate",null,null,c,d)},translatePoint:function(c,d,a){this.transformPoint("translate",null,null,c,d,a)},translateShape:function(c,d){var a=this.annotation.chart,e=this.annotation.userOptions,p=a.annotations.indexOf(this.annotation);a=a.options.annotations[p];this.translatePoint(c,d,0);a[this.collection][this.index].point=this.options.point;e[this.collection][this.index].point=
31
+ this.options.point},rotate:function(c,d,a){this.transform("rotate",c,d,a)},scale:function(c,d,a,m){this.transform("scale",c,d,a,m)},setControlPointsVisibility:function(c){this.controlPoints.forEach(function(d){d.setVisibility(c)})},destroy:function(){this.graphic&&(this.graphic=this.graphic.destroy());this.tracker&&(this.tracker=this.tracker.destroy());this.controlPoints.forEach(function(c){c.destroy()});this.options=this.controlPoints=this.points=this.chart=null;this.annotation&&(this.annotation=
32
+ null)},update:function(d){var a=this.annotation;d=c(!0,this.options,d);var e=this.graphic.parentGroup;this.destroy();this.constructor(a,d,this.index);this.render(e);this.redraw()}}});w(a,"Extensions/Annotations/Mixins/MarkerMixin.js",[a["Core/Chart/Chart.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Utilities.js"]],function(d,a,u){function k(c){return function(d){this.attr(c,"url(#"+d+")")}}var q=u.addEvent,n=u.defined,c=u.merge,D=u.uniqueKey,e={arrow:{tagName:"marker",attributes:{id:"arrow",
33
+ 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(d,a){var e={attributes:{id:d}},p={stroke:a.color||"none",fill:a.color||"rgba(0, 0, 0, 0.75)"};e.children=a.children&&a.children.map(function(d){return c(p,
34
+ d)});a=c(!0,{attributes:{markerWidth:20,markerHeight:20,refX:0,refY:0,orient:"auto"}},a,e);a=this.definition(a);a.id=d;return a};a={markerEndSetter:k("marker-end"),markerStartSetter:k("marker-start"),setItemMarkers:function(d){var a=d.options,e=d.chart,p=e.options.defs,r=a.fill,k=n(r)&&"none"!==r?r:a.stroke;["markerStart","markerEnd"].forEach(function(f){var b=a[f],h;if(b){for(h in p){var l=p[h];if((b===(l.attributes&&l.attributes.id)||b===l.id)&&"marker"===l.tagName){var t=l;break}}t&&(b=d[f]=e.renderer.addMarker((a.id||
35
+ D())+"-"+b,c(t,{color:k})),d.attr(f,b.getAttribute("id")))}})}};q(d,"afterGetContainer",function(){this.options.defs=c(e,this.options.defs||{})});return a});w(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(d,a,u,x){var k=x.extend,n="rgba(192,192,192,"+(a.svg?.0001:.002)+")";return function(){function c(c,a,n){this.addControlPoints=
36
+ d.addControlPoints;this.anchor=d.anchor;this.attr=d.attr;this.attrsFromOptions=d.attrsFromOptions;this.destroy=d.destroy;this.getPointsOptions=d.getPointsOptions;this.init=d.init;this.linkPoints=d.linkPoints;this.point=d.point;this.rotate=d.rotate;this.scale=d.scale;this.setControlPointsVisibility=d.setControlPointsVisibility;this.setMarkers=u.setItemMarkers;this.transform=d.transform;this.transformPoint=d.transformPoint;this.translate=d.translate;this.translatePoint=d.translatePoint;this.translateShape=
37
+ d.translateShape;this.update=d.update;this.type="path";this.init(c,a,n);this.collection="shapes"}c.prototype.toD=function(){var c=this.options.d;if(c)return"function"===typeof c?c.call(this):c;c=this.points;var d=c.length,a=d,g=c[0],m=a&&this.anchor(g).absolutePosition,p=0,r=[];if(m)for(r.push(["M",m.x,m.y]);++p<d&&a;)g=c[p],a=g.command||"L",m=this.anchor(g).absolutePosition,"M"===a?r.push([a,m.x,m.y]):"L"===a?r.push([a,m.x,m.y]):"Z"===a&&r.push([a]),a=g.series.visible;return a?this.chart.renderer.crispLine(r,
38
+ this.graphic.strokeWidth()):null};c.prototype.shouldBeDrawn=function(){return d.shouldBeDrawn.call(this)||!!this.options.d};c.prototype.render=function(c){var a=this.options,q=this.attrsFromOptions(a);this.graphic=this.annotation.chart.renderer.path([["M",0,0]]).attr(q).add(c);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(c);this.annotation.chart.styledMode||this.tracker.attr({"stroke-linejoin":"round",
39
+ stroke:n,fill:n,"stroke-width":this.graphic.strokeWidth()+2*a.snap});d.render.call(this);k(this.graphic,{markerStartSetter:u.markerStartSetter,markerEndSetter:u.markerEndSetter});this.setMarkers(this)};c.prototype.redraw=function(c){var a=this.toD(),n=c?"animate":"attr";a?(this.graphic[n]({d:a}),this.tracker[n]({d:a})):(this.graphic.attr({d:"M 0 -9000000000"}),this.tracker.attr({d:"M 0 -9000000000"}));this.graphic.placed=this.tracker.placed=!!a;d.redraw.call(this,c)};c.attrsMap={dashStyle:"dashstyle",
40
+ strokeWidth:"stroke-width",stroke:"stroke",fill:"fill",zIndex:"zIndex"};return c}()});w(a,"Extensions/Annotations/Controllables/ControllableRect.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(d,a,u){var k=u.merge;return function(){function q(a,c,k){this.addControlPoints=d.addControlPoints;this.anchor=d.anchor;this.attr=d.attr;this.attrsFromOptions=d.attrsFromOptions;this.destroy=d.destroy;
41
+ this.getPointsOptions=d.getPointsOptions;this.init=d.init;this.linkPoints=d.linkPoints;this.point=d.point;this.rotate=d.rotate;this.scale=d.scale;this.setControlPointsVisibility=d.setControlPointsVisibility;this.shouldBeDrawn=d.shouldBeDrawn;this.transform=d.transform;this.transformPoint=d.transformPoint;this.translatePoint=d.translatePoint;this.translateShape=d.translateShape;this.update=d.update;this.type="rect";this.translate=d.translateShape;this.init(a,c,k);this.collection="shapes"}q.prototype.render=
42
+ function(a){var c=this.attrsFromOptions(this.options);this.graphic=this.annotation.chart.renderer.rect(0,-9E9,0,0).attr(c).add(a);d.render.call(this)};q.prototype.redraw=function(a){var c=this.anchor(this.points[0]).absolutePosition;if(c)this.graphic[a?"animate":"attr"]({x:c.x,y:c.y,width:this.options.width,height:this.options.height});else this.attr({x:0,y:-9E9});this.graphic.placed=!!c;d.redraw.call(this,a)};q.attrsMap=k(a.attrsMap,{width:"width",height:"height"});return q}()});w(a,"Extensions/Annotations/Controllables/ControllableCircle.js",
43
+ [a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Extensions/Annotations/Controllables/ControllablePath.js"],a["Core/Utilities.js"]],function(d,a,u){var k=u.merge;return function(){function q(a,c,k){this.addControlPoints=d.addControlPoints;this.anchor=d.anchor;this.attr=d.attr;this.attrsFromOptions=d.attrsFromOptions;this.destroy=d.destroy;this.getPointsOptions=d.getPointsOptions;this.init=d.init;this.linkPoints=d.linkPoints;this.point=d.point;this.rotate=d.rotate;this.scale=d.scale;this.setControlPointsVisibility=
44
+ d.setControlPointsVisibility;this.shouldBeDrawn=d.shouldBeDrawn;this.transform=d.transform;this.transformPoint=d.transformPoint;this.translatePoint=d.translatePoint;this.translateShape=d.translateShape;this.update=d.update;this.type="circle";this.translate=d.translateShape;this.init(a,c,k);this.collection="shapes"}q.prototype.render=function(a){var c=this.attrsFromOptions(this.options);this.graphic=this.annotation.chart.renderer.circle(0,-9E9,0).attr(c).add(a);d.render.call(this)};q.prototype.redraw=
45
+ function(a){var c=this.anchor(this.points[0]).absolutePosition;if(c)this.graphic[a?"animate":"attr"]({x:c.x,y:c.y,r:this.options.r});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!c;d.redraw.call(this,a)};q.prototype.setRadius=function(d){this.options.r=d};q.attrsMap=k(a.attrsMap,{r:"r"});return q}()});w(a,"Extensions/Annotations/Controllables/ControllableLabel.js",[a["Extensions/Annotations/Mixins/ControllableMixin.js"],a["Core/FormatUtilities.js"],a["Extensions/Annotations/MockPoint.js"],
46
+ a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Tooltip.js"],a["Core/Utilities.js"]],function(d,a,u,x,q,n){var c=a.format;a=x.prototype.symbols;var k=n.extend,e=n.isNumber,z=n.pick;n=function(){function a(c,a,e){this.addControlPoints=d.addControlPoints;this.attr=d.attr;this.attrsFromOptions=d.attrsFromOptions;this.destroy=d.destroy;this.getPointsOptions=d.getPointsOptions;this.init=d.init;this.linkPoints=d.linkPoints;this.point=d.point;this.rotate=d.rotate;this.scale=d.scale;this.setControlPointsVisibility=
47
+ d.setControlPointsVisibility;this.shouldBeDrawn=d.shouldBeDrawn;this.transform=d.transform;this.transformPoint=d.transformPoint;this.translateShape=d.translateShape;this.update=d.update;this.init(c,a,e);this.collection="labels"}a.alignedPosition=function(c,a){var d=c.align,e=c.verticalAlign,f=(a.x||0)+(c.x||0),b=(a.y||0)+(c.y||0),h,l;"right"===d?h=1:"center"===d&&(h=2);h&&(f+=(a.width-(c.width||0))/h);"bottom"===e?l=1:"middle"===e&&(l=2);l&&(b+=(a.height-(c.height||0))/l);return{x:Math.round(f),y:Math.round(b)}};
48
+ a.justifiedOptions=function(c,a,d,e){var f=d.align,b=d.verticalAlign,h=a.box?0:a.padding||0,l=a.getBBox();a={align:f,verticalAlign:b,x:d.x,y:d.y,width:a.width,height:a.height};d=(e.x||0)-c.plotLeft;e=(e.y||0)-c.plotTop;var t=d+h;0>t&&("right"===f?a.align="left":a.x=(a.x||0)-t);t=d+l.width-h;t>c.plotWidth&&("left"===f?a.align="right":a.x=(a.x||0)+c.plotWidth-t);t=e+h;0>t&&("bottom"===b?a.verticalAlign="top":a.y=(a.y||0)-t);t=e+l.height-h;t>c.plotHeight&&("top"===b?a.verticalAlign="bottom":a.y=(a.y||
49
+ 0)+c.plotHeight-t);return a};a.prototype.translatePoint=function(c,a){d.translatePoint.call(this,c,a,0)};a.prototype.translate=function(c,a){var d=this.annotation.chart,e=this.annotation.userOptions,f=d.annotations.indexOf(this.annotation);f=d.options.annotations[f];d.inverted&&(d=c,c=a,a=d);this.options.x+=c;this.options.y+=a;f[this.collection][this.index].x=this.options.x;f[this.collection][this.index].y=this.options.y;e[this.collection][this.index].x=this.options.x;e[this.collection][this.index].y=
50
+ this.options.y};a.prototype.render=function(c){var e=this.options,g=this.attrsFromOptions(e),m=e.style;this.graphic=this.annotation.chart.renderer.label("",0,-9999,e.shape,null,null,e.useHTML,null,"annotation-label").attr(g).add(c);this.annotation.chart.styledMode||("contrast"===m.color&&(m.color=this.annotation.chart.renderer.getContrast(-1<a.shapesWithoutBackground.indexOf(e.shape)?"#FFFFFF":e.backgroundColor)),this.graphic.css(e.style).shadow(e.shadow));e.className&&this.graphic.addClass(e.className);
51
+ this.graphic.labelrank=e.labelrank;d.render.call(this)};a.prototype.redraw=function(a){var e=this.options,g=this.text||e.format||e.text,m=this.graphic,f=this.points[0];m.attr({text:g?c(g,f.getLabelConfig(),this.annotation.chart):e.formatter.call(f,this)});e=this.anchor(f);(g=this.position(e))?(m.alignAttr=g,g.anchorX=e.absolutePosition.x,g.anchorY=e.absolutePosition.y,m[a?"animate":"attr"](g)):m.attr({x:0,y:-9999});m.placed=!!g;d.redraw.call(this,a)};a.prototype.anchor=function(c){var a=d.anchor.apply(this,
52
+ arguments),e=this.options.x||0,g=this.options.y||0;a.absolutePosition.x-=e;a.absolutePosition.y-=g;a.relativePosition.x-=e;a.relativePosition.y-=g;return a};a.prototype.position=function(c){var d=this.graphic,e=this.annotation.chart,g=this.points[0],f=this.options,b=c.absolutePosition,h=c.relativePosition,l=g.series.visible&&u.prototype.isInsidePlot.call(g);c=d.width;c=void 0===c?0:c;var t=d.height;t=void 0===t?0:t;if(l){if(f.distance)var y=q.prototype.getPosition.call({chart:e,distance:z(f.distance,
53
+ 16)},c,t,{plotX:h.x,plotY:h.y,negative:g.negative,ttBelow:g.ttBelow,h:h.height||h.width});else f.positioner?y=f.positioner.call(this):(g={x:b.x,y:b.y,width:0,height:0},y=a.alignedPosition(k(f,{width:c,height:t}),g),"justify"===this.options.overflow&&(y=a.alignedPosition(a.justifiedOptions(e,d,f,y),g)));f.crop&&(d=y.x-e.plotLeft,f=y.y-e.plotTop,l=e.isInsidePlot(d,f)&&e.isInsidePlot(d+c,f+t))}return l?y:null};a.attrsMap={backgroundColor:"fill",borderColor:"stroke",borderWidth:"stroke-width",zIndex:"zIndex",
54
+ borderRadius:"r",padding:"padding"};a.shapesWithoutBackground=["connector"];return a}();a.connector=function(c,a,d,k,n){var f=n&&n.anchorX;n=n&&n.anchorY;var b=d/2;if(e(f)&&e(n)){var h=[["M",f,n]];var l=a-n;0>l&&(l=-k-l);l<d&&(b=f<c+d/2?l:d-l);n>a+k?h.push(["L",c+b,a+k]):n<a?h.push(["L",c+b,a]):f<c?h.push(["L",c,a+k/2]):f>c+d&&h.push(["L",c+d,a+k/2])}return h||[]};return n});w(a,"Extensions/Annotations/Controllables/ControllableImage.js",[a["Extensions/Annotations/Controllables/ControllableLabel.js"],
55
+ a["Extensions/Annotations/Mixins/ControllableMixin.js"]],function(a,k){return function(){function d(a,d,n){this.addControlPoints=k.addControlPoints;this.anchor=k.anchor;this.attr=k.attr;this.attrsFromOptions=k.attrsFromOptions;this.destroy=k.destroy;this.getPointsOptions=k.getPointsOptions;this.init=k.init;this.linkPoints=k.linkPoints;this.point=k.point;this.rotate=k.rotate;this.scale=k.scale;this.setControlPointsVisibility=k.setControlPointsVisibility;this.shouldBeDrawn=k.shouldBeDrawn;this.transform=
56
+ k.transform;this.transformPoint=k.transformPoint;this.translatePoint=k.translatePoint;this.translateShape=k.translateShape;this.update=k.update;this.type="image";this.translate=k.translateShape;this.init(a,d,n);this.collection="shapes"}d.prototype.render=function(a){var d=this.attrsFromOptions(this.options),n=this.options;this.graphic=this.annotation.chart.renderer.image(n.src,0,-9E9,n.width,n.height).attr(d).add(a);this.graphic.width=n.width;this.graphic.height=n.height;k.render.call(this)};d.prototype.redraw=
57
+ function(d){var q=this.anchor(this.points[0]);if(q=a.prototype.position.call(this,q))this.graphic[d?"animate":"attr"]({x:q.x,y:q.y});else this.graphic.attr({x:0,y:-9E9});this.graphic.placed=!!q;k.redraw.call(this,d)};d.attrsMap={width:"width",height:"height",zIndex:"zIndex"};return d}()});w(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"],
58
+ a["Extensions/Annotations/Controllables/ControllableCircle.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"],a["Core/Color/Palette.js"]],function(a,k,u,
59
+ x,q,n,c,D,e,z,g,m,p,r,w){var d=a.getDeferredAnimation;a=k.prototype;var b=r.addEvent,h=r.defined,l=r.destroyObjectProperties,t=r.erase,y=r.extend,G=r.find,C=r.fireEvent,v=r.merge,A=r.pick,F=r.splat;r=r.wrap;var B=function(){function b(b,a){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=b;this.points=[];this.controlPoints=[];this.coll="annotations";this.labels=[];this.shapes=
60
+ [];this.options=v(this.defaultOptions,a);this.userOptions=a;a=this.getLabelsAndShapesOptions(this.options,a);this.options.labels=a.labels;this.options.shapes=a.shapes;this.init(b,this.options)}b.prototype.init=function(){var b=this.chart,a=this.options.animation;this.linkPoints();this.addControlPoints();this.addShapes();this.addLabels();this.setLabelCollector();this.animationConfig=d(b,a)};b.prototype.getLabelsAndShapesOptions=function(b,a){var c={};["labels","shapes"].forEach(function(d){b[d]&&(c[d]=
61
+ a[d]?F(a[d]).map(function(a,c){return v(b[d][c],a)}):b[d])});return c};b.prototype.addShapes=function(){(this.options.shapes||[]).forEach(function(b,a){b=this.initShape(b,a);v(!0,this.options.shapes[a],b.options)},this)};b.prototype.addLabels=function(){(this.options.labels||[]).forEach(function(b,a){b=this.initLabel(b,a);v(!0,this.options.labels[a],b.options)},this)};b.prototype.addClipPaths=function(){this.setClipAxes();this.clipXAxis&&this.clipYAxis&&(this.clipRect=this.chart.renderer.clipRect(this.getClipBox()))};
62
+ b.prototype.setClipAxes=function(){var b=this.chart.xAxis,a=this.chart.yAxis,c=(this.options.labels||[]).concat(this.options.shapes||[]).reduce(function(c,d){d=d&&(d.point||d.points&&d.points[0]);return[b[d&&d.xAxis]||c[0],a[d&&d.yAxis]||c[1]]},[]);this.clipXAxis=c[0];this.clipYAxis=c[1]};b.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}};b.prototype.setLabelCollector=function(){var b=
63
+ this;b.labelCollector=function(){return b.labels.reduce(function(b,a){a.options.allowOverlap||b.push(a.graphic);return b},[])};b.chart.labelCollectors.push(b.labelCollector)};b.prototype.setOptions=function(b){this.options=v(this.defaultOptions,b)};b.prototype.redraw=function(b){this.linkPoints();this.graphic||this.render();this.clipRect&&this.clipRect.animate(this.getClipBox());this.redrawItems(this.shapes,b);this.redrawItems(this.labels,b);u.redraw.call(this,b)};b.prototype.redrawItems=function(b,
64
+ a){for(var c=b.length;c--;)this.redrawItem(b[c],a)};b.prototype.renderItems=function(b){for(var a=b.length;a--;)this.renderItem(b[a])};b.prototype.render=function(){var b=this.chart.renderer;this.graphic=b.g("annotation").attr({opacity:0,zIndex:this.options.zIndex,visibility:this.options.visible?"visible":"hidden"}).add();this.shapesGroup=b.g("annotation-shapes").add(this.graphic).clip(this.chart.plotBoxClip);this.labelsGroup=b.g("annotation-labels").attr({translateX:0,translateY:0}).add(this.graphic);
65
+ this.addClipPaths();this.clipRect&&this.graphic.clip(this.clipRect);this.renderItems(this.shapes);this.renderItems(this.labels);this.addEvents();u.render.call(this)};b.prototype.setVisibility=function(b){var a=this.options,c=this.chart.navigationBindings;b=A(b,!a.visible);this.graphic.attr("visibility",b?"visible":"hidden");b||(this.setControlPointsVisibility(!1),c.activeAnnotation===this&&c.popup&&"annotation-toolbar"===c.popup.formType&&C(c,"closePopup"));a.visible=b};b.prototype.setControlPointsVisibility=
66
+ function(b){var a=function(a){a.setControlPointsVisibility(b)};u.setControlPointsVisibility.call(this,b);this.shapes.forEach(a);this.labels.forEach(a)};b.prototype.destroy=function(){var b=this.chart,a=function(b){b.destroy()};this.labels.forEach(a);this.shapes.forEach(a);this.clipYAxis=this.clipXAxis=null;t(b.labelCollectors,this.labelCollector);z.destroy.call(this);u.destroy.call(this);l(this,b)};b.prototype.remove=function(){return this.chart.removeAnnotation(this)};b.prototype.update=function(b,
67
+ a){var c=this.chart,d=this.getLabelsAndShapesOptions(this.userOptions,b),h=c.annotations.indexOf(this);b=v(!0,this.userOptions,b);b.labels=d.labels;b.shapes=d.shapes;this.destroy();this.constructor(c,b);c.options.annotations[h]=b;this.isUpdating=!0;A(a,!0)&&c.redraw();C(this,"afterUpdate");this.isUpdating=!1};b.prototype.initShape=function(a,c){a=v(this.options.shapeOptions,{controlPointOptions:this.options.controlPointOptions},a);c=new b.shapesMap[a.type](this,a,c);c.itemType="shape";this.shapes.push(c);
68
+ return c};b.prototype.initLabel=function(b,a){b=v(this.options.labelOptions,{controlPointOptions:this.options.controlPointOptions},b);a=new D(this,b,a);a.itemType="label";this.labels.push(a);return a};b.prototype.redrawItem=function(b,a){b.linkPoints();b.shouldBeDrawn()?(b.graphic||this.renderItem(b),b.redraw(A(a,!0)&&b.graphic.placed),b.points.length&&this.adjustVisibility(b)):this.destroyItem(b)};b.prototype.adjustVisibility=function(b){var a=!1,c=b.graphic;b.points.forEach(function(b){!1!==b.series.visible&&
69
+ !1!==b.visible&&(a=!0)});a?"hidden"===c.visibility&&c.show():c.hide()};b.prototype.destroyItem=function(b){t(this[b.itemType+"s"],b);b.destroy()};b.prototype.renderItem=function(b){b.render("label"===b.itemType?this.labelsGroup:this.shapesGroup)};b.ControlPoint=e;b.MockPoint=m;b.shapesMap={rect:x,circle:q,path:n,image:c};b.types={};return b}();v(!0,B.prototype,u,z,v(B.prototype,{nonDOMEvents:["add","afterUpdate","drag","remove"],defaultOptions:{visible:!0,animation:{},draggable:"xy",labelOptions:{align:"center",
70
+ allowOverlap:!1,backgroundColor:"rgba(0, 0, 0, 0.75)",borderColor:w.neutralColor100,borderRadius:3,borderWidth:1,className:"highcharts-no-tooltip",crop:!1,formatter:function(){return h(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",
71
+ width:10,height:10,style:{stroke:w.neutralColor100,"stroke-width":2,fill:w.backgroundColor},visible:!1,events:{}},events:{},zIndex:6}}));g.extendAnnotation=function(b,a,c,d){a=a||B;y(b.prototype,v(a.prototype,c));b.prototype.defaultOptions=v(b.prototype.defaultOptions,d||{})};y(a,{initAnnotation:function(b){b=new (B.types[b.type]||B)(this,b);this.annotations.push(b);return b},addAnnotation:function(b,a){b=this.initAnnotation(b);this.options.annotations.push(b.options);A(a,!0)&&(b.redraw(),b.graphic.attr({opacity:1}));
72
+ return b},removeAnnotation:function(b){var a=this.annotations,c="annotations"===b.coll?b:G(a,function(a){return a.options.id===b});c&&(C(c,"remove"),t(this.options.annotations,c.options),t(a,c),c.destroy())},drawAnnotations:function(){this.plotBoxClip.attr(this.plotBox);this.annotations.forEach(function(b){b.redraw();b.graphic.animate({opacity:1},b.animationConfig)})}});a.collectionsWithUpdate.push("annotations");a.collectionsWithInit.annotations=[a.addAnnotation];b(k,"afterInit",function(){this.annotations=
73
+ [];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 d=a.initAnnotation(b);a.options.annotations[c]=d.options}});a.drawAnnotations();b(a,"redraw",a.drawAnnotations);b(a,"destroy",function(){a.plotBoxClip.destroy();
74
+ a.controlPointsGroup.destroy()});b(a,"exportData",function(b){var c=(this.options.exporting&&this.options.exporting.csv||{}).columnHeaderFormatter,d=!b.dataRows[1].xValues,h=a.options.lang&&a.options.lang.exportData&&a.options.lang.exportData.annotationHeader,l=function(b){if(c){var a=c(b);if(!1!==a)return a}a=h+" "+b;return d?{columnTitle:a,topLevelColumnTitle:a}:a},e=b.dataRows[0].length,f=a.options.exporting&&a.options.exporting.csv&&a.options.exporting.csv.annotations&&a.options.exporting.csv.annotations.itemDelimiter,
75
+ t=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 d=a.x,h=a.series.xAxis?a.series.xAxis.options.index:-1,l=!1;if(-1===h){a=b.dataRows[0].length;for(var v=Array(a),A=0;A<a;++A)v[A]="";v.push(c);v.xValues=[];v.xValues[h]=d;b.dataRows.push(v);l=!0}l||
76
+ b.dataRows.forEach(function(b,a){!l&&b.xValues&&void 0!==h&&d===b.xValues[h]&&(t&&b.length>e?b[b.length-1]+=f+c:b.push(c),l=!0)});if(!l){a=b.dataRows[0].length;v=Array(a);for(A=0;A<a;++A)v[A]="";v[0]=d;v.push(c);v.xValues=[];void 0!==h&&(v.xValues[h]=d);b.dataRows.push(v)}})}})});var v=0;b.dataRows.forEach(function(b){v=Math.max(v,b.length)});for(var A=v-b.dataRows[0].length,B=0;B<A;B++){var F=l(B+1);d?(b.dataRows[0].push(F.topLevelColumnTitle),b.dataRows[1].push(F.columnTitle)):b.dataRows[0].push(F)}})});
77
+ r(p.prototype,"onContainerMouseDown",function(b){this.chart.hasDraggedAnnotation||b.apply(this,Array.prototype.slice.call(arguments,1))});g.Annotation=B;"";return B});w(a,"Mixins/Navigation.js",[],function(){return{initUpdate:function(a){a.navigation||(a.navigation={updates:[],update:function(a,d){this.updates.forEach(function(k){k.update.call(k.context,a,d)})}})},addUpdate:function(a,k){k.navigation||this.initUpdate(k);k.navigation.updates.push({update:a,context:k})}}});w(a,"Extensions/Annotations/NavigationBindings.js",
78
+ [a["Extensions/Annotations/Annotations.js"],a["Core/Chart/Chart.js"],a["Mixins/Navigation.js"],a["Core/FormatUtilities.js"],a["Core/Globals.js"],a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,k,u,x,q,n,c){function d(b,a){var c=G.Element.prototype,d=c.matches||c.msMatchesSelector||c.webkitMatchesSelector,h=null;if(c.closest)h=c.closest.call(b,a);else{do{if(d.call(b,a))return b;b=b.parentElement||b.parentNode}while(null!==b&&1===b.nodeType)}return h}function e(b){var a=b.prototype.defaultOptions.events&&
79
+ b.prototype.defaultOptions.events.click;h(!0,b.prototype.defaultOptions.events,{click:function(b){var c=this,d=c.chart.navigationBindings,h=d.activeAnnotation;a&&a.call(c,b);h!==c?(d.deselectAnnotation(),d.activeAnnotation=c,c.setControlPointsVisibility(!0),p(d,"showPopup",{annotation:c,formType:"annotation-toolbar",options:d.annotationToFields(c),onSubmit:function(b){var a={};"remove"===b.actionType?(d.activeAnnotation=!1,d.chart.removeAnnotation(c)):(d.fieldsToOptions(b.fields,a),d.deselectAnnotation(),
80
+ b=a.typeOptions,"measure"===c.options.type&&(b.crosshairY.enabled=0!==b.crosshairY.strokeWidth,b.crosshairX.enabled=0!==b.crosshairX.strokeWidth),c.update(a))}})):p(d,"closePopup");b.activeAnnotation=!0}})}var w=x.format;x=n.setOptions;var g=c.addEvent,m=c.attr,p=c.fireEvent,r=c.isArray,E=c.isFunction,f=c.isNumber,b=c.isObject,h=c.merge,l=c.objectEach,t=c.pick,y=q.doc,G=q.win,C=function(){function a(b,a){this.selectedButton=this.boundClassNames=void 0;this.chart=b;this.options=a;this.eventsToUnbind=
81
+ [];this.container=y.getElementsByClassName(this.options.bindingsClassName||"")}a.prototype.initEvents=function(){var b=this,a=b.chart,c=b.container,d=b.options;b.boundClassNames={};l(d.bindings||{},function(a){b.boundClassNames[a.className]=a});[].forEach.call(c,function(a){b.eventsToUnbind.push(g(a,"click",function(c){var d=b.getButtonEvents(a,c);d&&-1===d.button.className.indexOf("highcharts-disabled-btn")&&b.bindingsButtonClick(d.button,d.events,c)}))});l(d.events||{},function(a,c){E(a)&&b.eventsToUnbind.push(g(b,
82
+ c,a,{passive:!1}))});b.eventsToUnbind.push(g(a.container,"click",function(c){!a.cancelClick&&a.isInsidePlot(c.chartX-a.plotLeft,c.chartY-a.plotTop,{visiblePlotOnly:!0})&&b.bindingsChartClick(this,c)}));b.eventsToUnbind.push(g(a.container,q.isTouchDevice?"touchmove":"mousemove",function(a){b.bindingsContainerMouseMove(this,a)},q.isTouchDevice?{passive:!1}:void 0))};a.prototype.initUpdate=function(){var b=this;u.addUpdate(function(a){b.update(a)},this.chart)};a.prototype.bindingsButtonClick=function(b,
83
+ a,c){var d=this.chart;this.selectedButtonElement&&(p(this,"deselectButton",{button:this.selectedButtonElement}),this.nextEvent&&(this.currentUserDetails&&"annotations"===this.currentUserDetails.coll&&d.removeAnnotation(this.currentUserDetails),this.mouseMoveEvent=this.nextEvent=!1));this.selectedButton=a;this.selectedButtonElement=b;p(this,"selectButton",{button:b});a.init&&a.init.call(this,b,c);(a.start||a.steps)&&d.renderer.boxWrapper.addClass("highcharts-draw-mode")};a.prototype.bindingsChartClick=
84
+ function(b,a){b=this.chart;var c=this.activeAnnotation,h=this.selectedButton;b=b.renderer.boxWrapper;c&&(c.cancelClick||a.activeAnnotation||!a.target.parentNode||d(a.target,".highcharts-popup")?c.cancelClick&&setTimeout(function(){c.cancelClick=!1},0):p(this,"closePopup"));h&&h.start&&(this.nextEvent?(this.nextEvent(a,this.currentUserDetails),this.steps&&(this.stepIndex++,h.steps[this.stepIndex]?this.mouseMoveEvent=this.nextEvent=h.steps[this.stepIndex]:(p(this,"deselectButton",{button:this.selectedButtonElement}),
85
+ b.removeClass("highcharts-draw-mode"),h.end&&h.end.call(this,a,this.currentUserDetails),this.mouseMoveEvent=this.nextEvent=!1,this.selectedButton=null))):(this.currentUserDetails=h.start.call(this,a))&&h.steps?(this.stepIndex=0,this.steps=!0,this.mouseMoveEvent=this.nextEvent=h.steps[this.stepIndex]):(p(this,"deselectButton",{button:this.selectedButtonElement}),b.removeClass("highcharts-draw-mode"),this.steps=!1,this.selectedButton=null,h.end&&h.end.call(this,a,this.currentUserDetails)))};a.prototype.bindingsContainerMouseMove=
86
+ function(b,a){this.mouseMoveEvent&&this.mouseMoveEvent(a,this.currentUserDetails)};a.prototype.fieldsToOptions=function(b,a){l(b,function(b,c){var d=parseFloat(b),h=c.split("."),l=a,e=h.length-1;!f(d)||b.match(/px/g)||c.match(/format/g)||(b=d);""!==b&&"undefined"!==b&&h.forEach(function(a,c){var d=t(h[c+1],"");e===c?l[a]=b:(l[a]||(l[a]=d.match(/\d/g)?[]:{}),l=l[a])})});return a};a.prototype.deselectAnnotation=function(){this.activeAnnotation&&(this.activeAnnotation.setControlPointsVisibility(!1),
87
+ this.activeAnnotation=!1)};a.prototype.annotationToFields=function(c){function d(a,h,e,t){if(e&&a&&-1===A.indexOf(h)&&(0<=(e.indexOf&&e.indexOf(h))||e[h]||!0===e))if(r(a))t[h]=[],a.forEach(function(a,c){b(a)?(t[h][c]={},l(a,function(b,a){d(b,a,f[h],t[h][c])})):d(a,0,f[h],t[h])});else if(b(a)){var g={};r(t)?(t.push(g),g[h]={},g=g[h]):t[h]=g;l(a,function(b,a){d(b,a,0===h?e:f[h],g)})}else"format"===h?t[h]=[w(a,c.labels[0].points[0]).toString(),"text"]:r(t)?t.push([a,v(a)]):t[h]=[a,v(a)]}var h=c.options,
88
+ e=a.annotationsEditable,f=e.nestedOptions,v=this.utils.getFieldType,g=t(h.type,h.shapes&&h.shapes[0]&&h.shapes[0].type,h.labels&&h.labels[0]&&h.labels[0].itemType,"label"),A=a.annotationsNonEditable[h.langKey]||[],y={langKey:h.langKey,type:g};l(h,function(b,a){"typeOptions"===a?(y[a]={},l(h[a],function(b,c){d(b,c,f,y[a],!0)})):d(b,a,e[g],y)});return y};a.prototype.getClickedClassNames=function(b,a){var c=a.target;a=[];for(var d;c&&((d=m(c,"class"))&&(a=a.concat(d.split(" ").map(function(b){return[b,
89
+ c]}))),c=c.parentNode,c!==b););return a};a.prototype.getButtonEvents=function(b,a){var c=this,d;this.getClickedClassNames(b,a).forEach(function(b){c.boundClassNames[b[0]]&&!d&&(d={events:c.boundClassNames[b[0]],button:b[1]})});return d};a.prototype.update=function(b){this.options=h(!0,this.options,b);this.removeEvents();this.initEvents()};a.prototype.removeEvents=function(){this.eventsToUnbind.forEach(function(b){b()})};a.prototype.destroy=function(){this.removeEvents()};a.annotationsEditable={nestedOptions:{labelOptions:["style",
90
+ "format","backgroundColor"],labels:["style"],label:["style"],style:["fontSize","color"],background:["fill","strokeWidth","stroke"],innerBackground:["fill","strokeWidth","stroke"],outerBackground:["fill","strokeWidth","stroke"],shapeOptions:["fill","strokeWidth","stroke"],shapes:["fill","strokeWidth","stroke"],line:["strokeWidth","stroke"],backgroundColors:[!0],connector:["fill","strokeWidth","stroke"],crosshairX:["strokeWidth","stroke"],crosshairY:["strokeWidth","stroke"]},circle:["shapes"],verticalLine:[],
91
+ label:["labelOptions"],measure:["background","crosshairY","crosshairX"],fibonacci:[],tunnel:["background","line","height"],pitchfork:["innerBackground","outerBackground"],rect:["shapes"],crookedLine:[],basicAnnotation:["shapes","labelOptions"]};a.annotationsNonEditable={rectangle:["crosshairX","crosshairY","label"]};return a}();C.prototype.utils={getFieldType:function(b){return{string:"text",number:"number","boolean":"checkbox"}[typeof b]},updateRectSize:function(b,a){var c=a.chart,d=a.options.typeOptions,
92
+ h=f(d.xAxis)&&c.xAxis[d.xAxis],l=f(d.yAxis)&&c.yAxis[d.yAxis];h&&l&&(h=h.toValue(b[h.horiz?"chartX":"chartY"]),b=l.toValue(b[l.horiz?"chartX":"chartY"]),l=h-d.point.x,d=d.point.y-b,a.update({typeOptions:{background:{width:c.inverted?d:l,height:c.inverted?l:d}}}))},getAssignedAxis:function(b){return b.filter(function(b){var a=b.axis.min,c=b.axis.max,d=t(b.axis.minPointOffset,0);return f(a)&&f(c)&&b.value>=a-d&&b.value<=c+d&&!b.axis.options.isInternal})[0]}};k.prototype.initNavigationBindings=function(){var b=
93
+ this.options;b&&b.navigation&&b.navigation.bindings&&(this.navigationBindings=new C(this,b.navigation),this.navigationBindings.initEvents(),this.navigationBindings.initUpdate())};g(k,"load",function(){this.initNavigationBindings()});g(k,"destroy",function(){this.navigationBindings&&this.navigationBindings.destroy()});g(C,"deselectButton",function(){this.selectedButtonElement=null});g(a,"remove",function(){this.chart.navigationBindings&&this.chart.navigationBindings.deselectAnnotation()});q.Annotation&&
94
+ (e(a),l(a.types,function(b){e(b)}));x({lang:{navigation:{popup:{simpleShapes:"Simple shapes",lines:"Lines",circle:"Circle",rectangle:"Rectangle",label:"Label",shapeOptions:"Shape options",typeOptions:"Details",fill:"Fill",format:"Text",strokeWidth:"Line width",stroke:"Line color",title:"Title",name:"Name",labelOptions:"Label options",labels:"Labels",backgroundColor:"Background color",backgroundColors:"Background colors",borderColor:"Border color",borderRadius:"Border radius",borderWidth:"Border width",
95
+ style:"Style",padding:"Padding",fontSize:"Font size",color:"Color",height:"Height",shapes:"Shape options"}}},navigation:{bindingsClassName:"highcharts-bindings-container",bindings:{circleAnnotation:{className:"highcharts-circle-annotation",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return this.chart.addAnnotation(h({langKey:"circle",type:"basicAnnotation",shapes:[{type:"circle",
96
+ point:{x:b.value,y:a.value,xAxis:b.axis.options.index,yAxis:a.axis.options.index},r:5}]},c.annotationsOptions,c.bindings.circleAnnotation.annotationsOptions))},steps:[function(b,a){var c=a.options.shapes[0].point,d=this.chart.inverted;if(f(c.xAxis)&&f(c.yAxis)){var h=this.chart.xAxis[c.xAxis].toPixels(c.x);c=this.chart.yAxis[c.yAxis].toPixels(c.y);h=Math.max(Math.sqrt(Math.pow(d?c-b.chartX:h-b.chartX,2)+Math.pow(d?h-b.chartY:c-b.chartY,2)),5)}a.update({shapes:[{r:h}]})}]},rectangleAnnotation:{className:"highcharts-rectangle-annotation",
97
+ start:function(b){b=this.chart.pointer.getCoordinates(b);var a=this.utils.getAssignedAxis(b.xAxis),c=this.utils.getAssignedAxis(b.yAxis);if(a&&c){b=a.value;var d=c.value;a=a.axis.options.index;c=c.axis.options.index;var l=this.chart.options.navigation;return this.chart.addAnnotation(h({langKey:"rectangle",type:"basicAnnotation",shapes:[{type:"path",points:[{xAxis:a,yAxis:c,x:b,y:d},{xAxis:a,yAxis:c,x:b,y:d},{xAxis:a,yAxis:c,x:b,y:d},{xAxis:a,yAxis:c,x:b,y:d}]}]},l.annotationsOptions,l.bindings.rectangleAnnotation.annotationsOptions))}},
98
+ steps:[function(b,a){var c=a.options.shapes[0].points,d=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(d.xAxis);d=this.utils.getAssignedAxis(d.yAxis);b&&d&&(b=b.value,d=d.value,c[1].x=b,c[2].x=b,c[2].y=d,c[3].y=d,a.update({shapes:[{points:c}]}))}]},labelAnnotation:{className:"highcharts-label-annotation",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&
99
+ a)return this.chart.addAnnotation(h({langKey:"label",type:"basicAnnotation",labelOptions:{format:"{y:.2f}"},labels:[{point:{xAxis:b.axis.options.index,yAxis:a.axis.options.index,x:b.value,y:a.value},overflow:"none",crop:!0}]},c.annotationsOptions,c.bindings.labelAnnotation.annotationsOptions))}}},events:{},annotationsOptions:{animation:{defer:0}}}});g(k,"render",function(){var b=this,a=b.navigationBindings;if(b&&a){var c=!1;b.series.forEach(function(b){!b.options.isInternal&&b.visible&&(c=!0)});l(a.boundClassNames,
100
+ function(a,d){if(b.navigationBindings&&b.navigationBindings.container&&b.navigationBindings.container[0]&&(d=b.navigationBindings.container[0].querySelectorAll("."+d)))for(var h=0;h<d.length;h++){var l=d[h];"normal"===a.noDataState?-1!==l.className.indexOf("highcharts-disabled-btn")&&l.classList.remove("highcharts-disabled-btn"):c?-1!==l.className.indexOf("highcharts-disabled-btn")&&l.classList.remove("highcharts-disabled-btn"):-1===l.className.indexOf("highcharts-disabled-btn")&&(l.className+=" highcharts-disabled-btn")}})}});
101
+ g(C,"closePopup",function(){this.deselectAnnotation()});return C});w(a,"Stock/StockToolsBindings.js",[a["Core/Globals.js"],a["Extensions/Annotations/NavigationBindings.js"],a["Core/DefaultOptions.js"],a["Core/Series/Series.js"],a["Core/Utilities.js"],a["Core/Color/Palette.js"]],function(a,k,u,x,q,n){var c=u.getOptions;u=u.setOptions;var d=q.correctFloat,e=q.defined,w=q.extend,g=q.fireEvent,m=q.isNumber,p=q.merge,r=q.pick,E=q.uniqueKey,f=k.prototype.utils;f.addFlagFromForm=function(b){return function(a){var c=
102
+ this,d=c.chart,h=d.stockTools,e=f.getFieldType;a=f.attractToPoint(a,d);if(a){var k={type:"flags",onSeries:a.series.id,shape:b,data:[{x:a.x,y:a.y}],xAxis:a.xAxis,yAxis:a.yAxis,point:{events:{click:function(){var b=this,a=b.options;g(c,"showPopup",{point:b,formType:"annotation-toolbar",options:{langKey:"flags",type:"flags",title:[a.title,e(a.title)],name:[a.name,e(a.name)]},onSubmit:function(a){"remove"===a.actionType?b.remove():b.update(c.fieldsToOptions(a.fields,{}))}})}}}};h&&h.guiEnabled||d.addSeries(k);
103
+ g(c,"showPopup",{formType:"flag",options:{langKey:"flags",type:"flags",title:["A",e("A")],name:["Flag A",e("Flag A")]},onSubmit:function(b){c.fieldsToOptions(b.fields,k.data[0]);d.addSeries(k)}})}}};f.indicatorsWithAxes="ad atr cci cmf disparityindex cmo dmi macd mfi roc rsi ao aroon aroonoscillator trix apo dpo ppo natr obv williamsr stochastic slowstochastic linearRegression linearRegressionSlope linearRegressionIntercept linearRegressionAngle klinger".split(" ");f.manageIndicators=function(b){var a=
104
+ this.chart,d={linkedTo:b.linkedTo,type:b.type},t="ad cmf klinger mfi obv vbp vwap".split(" "),y=f.indicatorsWithAxes;if("edit"===b.actionType)this.fieldsToOptions(b.fields,d),(b=a.get(b.seriesId))&&b.update(d,!1);else if("remove"===b.actionType){if(b=a.get(b.seriesId)){var k=b.yAxis;b.linkedSeries&&b.linkedSeries.forEach(function(b){b.remove(!1)});b.remove(!1);0<=y.indexOf(b.type)&&(d=k.options.height,k.remove(!1),this.resizeYAxes(d))}}else{d.id=E();this.fieldsToOptions(b.fields,d);k=a.get(d.linkedTo);
105
+ var n=c().plotOptions;"undefined"!==typeof k&&k instanceof x&&"sum"===k.getDGApproximation()&&!e(n&&n[d.type]&&n.dataGrouping&&n.dataGrouping.approximation)&&(d.dataGrouping={approximation:"sum"});0<=y.indexOf(b.type)?(k=a.addAxis({id:E(),offset:0,opposite:!0,title:{text:""},tickPixelInterval:40,showLastLabel:!1,labels:{align:"left",y:-2}},!1,!1),d.yAxis=k.options.id,this.resizeYAxes()):d.yAxis=a.get(b.linkedTo).options.yAxis;0<=t.indexOf(b.type)&&(d.params.volumeSeriesID=a.series.filter(function(b){return"column"===
106
+ b.options.type})[0].options.id);a.addSeries(d,!1)}g(this,"deselectButton",{button:this.selectedButtonElement});a.redraw()};f.updateHeight=function(b,a){var c=a.options.typeOptions,d=m(c.yAxis)&&this.chart.yAxis[c.yAxis];d&&c.points&&a.update({typeOptions:{height:d.toValue(b[d.horiz?"chartX":"chartY"])-(c.points[1].y||0)}})};f.attractToPoint=function(b,a){b=a.pointer.getCoordinates(b);var c=Number.MAX_VALUE,d;if(a.navigationBindings){var h=a.navigationBindings.utils.getAssignedAxis(b.xAxis);var e=
107
+ a.navigationBindings.utils.getAssignedAxis(b.yAxis)}if(h&&e){var f=h.value;a=e.value;e.axis.series.forEach(function(b){b.points&&b.points.forEach(function(b){b&&c>Math.abs(b.x-f)&&(c=Math.abs(b.x-f),d=b)})});if(d&&d.x&&d.y)return{x:d.x,y:d.y,below:a<d.y,series:d.series,xAxis:d.series.xAxis.options.index||0,yAxis:d.series.yAxis.options.index||0}}};f.isNotNavigatorYAxis=function(b){return"highcharts-navigator-yaxis"!==b.userOptions.className};f.isPriceIndicatorEnabled=function(b){return b.some(function(b){return b.lastVisiblePrice||
108
+ b.lastPrice})};f.updateNthPoint=function(b){return function(a,c){var d=c.options.typeOptions,h=m(d.xAxis)&&this.chart.xAxis[d.xAxis],l=m(d.yAxis)&&this.chart.yAxis[d.yAxis];h&&l&&(d.points.forEach(function(c,d){d>=b&&(c.x=h.toValue(a[h.horiz?"chartX":"chartY"]),c.y=l.toValue(a[l.horiz?"chartX":"chartY"]))}),c.update({typeOptions:{points:d.points}}))}};w(k.prototype,{getYAxisPositions:function(b,a,c,f){function h(b){return e(b)&&!m(b)&&b.match("%")}var l=0,t,g;f&&(g=d(parseFloat(f)/100));return{positions:b.map(function(e,
109
+ f){var k=d(h(e.options.height)?parseFloat(e.options.height)/100:e.height/a);e=d(h(e.options.top)?parseFloat(e.options.top)/100:(e.top-e.chart.plotTop)/a);g?e<=l?l=d(Math.max(l,(e||0)+(k||0))):(e=d(e-g),l=d(l+k)):(m(k)||(k=b[f-1].series.every(function(b){return b.is("sma")})?t:c/100),m(e)||(e=l),t=k,l=d(Math.max(l,(e||0)+(k||0))));return{height:100*k,top:100*e}}),allAxesHeight:l}},getYAxisResizers:function(b){var a=[];b.forEach(function(c,d){c=b[d+1];a[d]=c?{enabled:!0,controlledAxis:{next:[r(c.options.id,
110
+ c.options.index)]}}:{enabled:!1}});return a},resizeYAxes:function(b){var a=this.chart,c=a.yAxis.filter(f.isNotNavigatorYAxis);a=this.getYAxisPositions(c,a.plotHeight,20,b);var e=a.positions,g=a.allAxesHeight,k=this.getYAxisResizers(c);!b&&g<=d(1)?e[e.length-1]={height:20,top:d(100*g-20)}:e.forEach(function(b){b.height=b.height/(100*g)*100;b.top=b.top/(100*g)*100});e.forEach(function(b,a){c[a].update({height:b.height+"%",top:b.top+"%",resize:k[a],offset:0},!1)})},recalculateYAxisPositions:function(b,
111
+ a,c,e){b.forEach(function(h,l){l=b[l-1];h.top=l?d(l.height+l.top):0;c&&(h.height=d(h.height+e*a))});return b}});q={segment:{className:"highcharts-segment",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"segment",type:"crookedLine",typeOptions:{xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},
112
+ c.annotationsOptions,c.bindings.segment.annotationsOptions),this.chart.addAnnotation(b)},steps:[f.updateNthPoint(1)]},arrowSegment:{className:"highcharts-arrow-segment",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"arrowSegment",type:"crookedLine",typeOptions:{line:{markerEnd:"arrow"},xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,
113
+ y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.arrowSegment.annotationsOptions),this.chart.addAnnotation(b)},steps:[f.updateNthPoint(1)]},ray:{className:"highcharts-ray",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"ray",type:"infinityLine",typeOptions:{type:"ray",xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,
114
+ y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.ray.annotationsOptions),this.chart.addAnnotation(b)},steps:[f.updateNthPoint(1)]},arrowRay:{className:"highcharts-arrow-ray",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"arrowRay",type:"infinityLine",typeOptions:{type:"ray",line:{markerEnd:"arrow"},xAxis:b.axis.options.index,
115
+ yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.arrowRay.annotationsOptions),this.chart.addAnnotation(b)},steps:[f.updateNthPoint(1)]},infinityLine:{className:"highcharts-infinity-line",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"infinityLine",type:"infinityLine",typeOptions:{type:"line",
116
+ xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.infinityLine.annotationsOptions),this.chart.addAnnotation(b)},steps:[f.updateNthPoint(1)]},arrowInfinityLine:{className:"highcharts-arrow-infinity-line",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=this.chart.options.navigation;if(b&&a)return b=p({langKey:"arrowInfinityLine",
117
+ type:"infinityLine",typeOptions:{type:"line",line:{markerEnd:"arrow"},xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value},{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.arrowInfinityLine.annotationsOptions),this.chart.addAnnotation(b)},steps:[f.updateNthPoint(1)]},horizontalLine:{className:"highcharts-horizontal-line",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);var c=
118
+ this.chart.options.navigation;b&&a&&(b=p({langKey:"horizontalLine",type:"infinityLine",draggable:"y",typeOptions:{type:"horizontalLine",xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.horizontalLine.annotationsOptions),this.chart.addAnnotation(b))}},verticalLine:{className:"highcharts-vertical-line",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);
119
+ var c=this.chart.options.navigation;b&&a&&(b=p({langKey:"verticalLine",type:"infinityLine",draggable:"x",typeOptions:{type:"verticalLine",xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:b.value,y:a.value}]}},c.annotationsOptions,c.bindings.verticalLine.annotationsOptions),this.chart.addAnnotation(b))}},crooked3:{className:"highcharts-crooked3",start:function(b){var a=this.chart.pointer.getCoordinates(b);b=this.utils.getAssignedAxis(a.xAxis);a=this.utils.getAssignedAxis(a.yAxis);if(b&&
120
+ a){var c=b.value,d=a.value,e=this.chart.options.navigation;b=p({langKey:"crooked3",type:"crookedLine",typeOptions:{xAxis:b.axis.options.index,yAxis:a.axis.options.index,points:[{x:c,y:d},{x:c,y:d},{x:c,y:d}]}},e.annotationsOptions,e.bindings.crooked3.annotationsOptions);return this.chart.addAnnotation(b)}},steps:[f.updateNthPoint(1),f.updateNthPoint(2)]},crooked5:{className:"highcharts-crooked5",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);
121
+ if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"crookedLine",type:"crookedLine",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d}]}},e.annotationsOptions,e.bindings.crooked5.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[f.updateNthPoint(1),f.updateNthPoint(2),f.updateNthPoint(3),f.updateNthPoint(4)]},elliott3:{className:"highcharts-elliott3",start:function(a){var b=this.chart.pointer.getCoordinates(a);
122
+ a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"elliott3",type:"elliottWave",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d}]},labelOptions:{style:{color:n.neutralColor60}}},e.annotationsOptions,e.bindings.elliott3.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[f.updateNthPoint(1),f.updateNthPoint(2),f.updateNthPoint(3)]},
123
+ elliott5:{className:"highcharts-elliott5",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"elliott5",type:"elliottWave",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d},{x:c,y:d}]},labelOptions:{style:{color:n.neutralColor60}}},e.annotationsOptions,e.bindings.elliott5.annotationsOptions);
124
+ return this.chart.addAnnotation(a)}},steps:[f.updateNthPoint(1),f.updateNthPoint(2),f.updateNthPoint(3),f.updateNthPoint(4),f.updateNthPoint(5)]},measureX:{className:"highcharts-measure-x",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=this.chart.options.navigation;a=p({langKey:"measure",type:"measure",typeOptions:{selectType:"x",xAxis:a.axis.options.index,yAxis:b.axis.options.index,point:{x:a.value,
125
+ y:b.value},crosshairX:{strokeWidth:1,stroke:n.neutralColor100},crosshairY:{enabled:!1,strokeWidth:0,stroke:n.neutralColor100},background:{width:0,height:0,strokeWidth:0,stroke:n.backgroundColor}},labelOptions:{style:{color:n.neutralColor60}}},c.annotationsOptions,c.bindings.measureX.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[f.updateRectSize]},measureY:{className:"highcharts-measure-y",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);
126
+ b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=this.chart.options.navigation;a=p({langKey:"measure",type:"measure",typeOptions:{selectType:"y",xAxis:a.axis.options.index,yAxis:b.axis.options.index,point:{x:a.value,y:b.value},crosshairX:{enabled:!1,strokeWidth:0,stroke:n.neutralColor100},crosshairY:{strokeWidth:1,stroke:n.neutralColor100},background:{width:0,height:0,strokeWidth:0,stroke:n.backgroundColor}},labelOptions:{style:{color:n.neutralColor60}}},c.annotationsOptions,c.bindings.measureY.annotationsOptions);
127
+ return this.chart.addAnnotation(a)}},steps:[f.updateRectSize]},measureXY:{className:"highcharts-measure-xy",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=this.chart.options.navigation;a=p({langKey:"measure",type:"measure",typeOptions:{selectType:"xy",xAxis:a.axis.options.index,yAxis:b.axis.options.index,point:{x:a.value,y:b.value},background:{width:0,height:0,strokeWidth:10},crosshairX:{strokeWidth:1,
128
+ stroke:n.neutralColor100},crosshairY:{strokeWidth:1,stroke:n.neutralColor100}},labelOptions:{style:{color:n.neutralColor60}}},c.annotationsOptions,c.bindings.measureXY.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[f.updateRectSize]},fibonacci:{className:"highcharts-fibonacci",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"fibonacci",
129
+ type:"fibonacci",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d}]},labelOptions:{style:{color:n.neutralColor60}}},e.annotationsOptions,e.bindings.fibonacci.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[f.updateNthPoint(1),f.updateHeight]},parallelChannel:{className:"highcharts-parallel-channel",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);if(a&&
130
+ b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"parallelChannel",type:"tunnel",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:c,y:d},{x:c,y:d}]}},e.annotationsOptions,e.bindings.parallelChannel.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[f.updateNthPoint(1),f.updateHeight]},pitchfork:{className:"highcharts-pitchfork",start:function(a){var b=this.chart.pointer.getCoordinates(a);a=this.utils.getAssignedAxis(b.xAxis);b=this.utils.getAssignedAxis(b.yAxis);
131
+ if(a&&b){var c=a.value,d=b.value,e=this.chart.options.navigation;a=p({langKey:"pitchfork",type:"pitchfork",typeOptions:{xAxis:a.axis.options.index,yAxis:b.axis.options.index,points:[{x:a.value,y:b.value,controlPoint:{style:{fill:n.negativeColor}}},{x:c,y:d},{x:c,y:d}],innerBackground:{fill:"rgba(100, 170, 255, 0.8)"}},shapeOptions:{strokeWidth:2}},e.annotationsOptions,e.bindings.pitchfork.annotationsOptions);return this.chart.addAnnotation(a)}},steps:[f.updateNthPoint(1),f.updateNthPoint(2)]},verticalCounter:{className:"highcharts-vertical-counter",
132
+ start:function(a){a=f.attractToPoint(a,this.chart);var b=this.chart.options.navigation;a&&(this.verticalCounter=this.verticalCounter||0,a=p({langKey:"verticalCounter",type:"verticalLine",typeOptions:{point:{x:a.x,y:a.y,xAxis:a.xAxis,yAxis:a.yAxis},label:{offset:a.below?40:-40,text:this.verticalCounter.toString()}},labelOptions:{style:{color:n.neutralColor60,fontSize:"11px"}},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1}},b.annotationsOptions,b.bindings.verticalCounter.annotationsOptions),
133
+ a=this.chart.addAnnotation(a),this.verticalCounter++,a.options.events.click.call(a,{}))}},verticalLabel:{className:"highcharts-vertical-label",start:function(a){a=f.attractToPoint(a,this.chart);var b=this.chart.options.navigation;a&&(a=p({langKey:"verticalLabel",type:"verticalLine",typeOptions:{point:{x:a.x,y:a.y,xAxis:a.xAxis,yAxis:a.yAxis},label:{offset:a.below?40:-40}},labelOptions:{style:{color:n.neutralColor60,fontSize:"11px"}},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",strokeWidth:1}},b.annotationsOptions,
134
+ b.bindings.verticalLabel.annotationsOptions),a=this.chart.addAnnotation(a),a.options.events.click.call(a,{}))}},verticalArrow:{className:"highcharts-vertical-arrow",start:function(a){a=f.attractToPoint(a,this.chart);var b=this.chart.options.navigation;a&&(a=p({langKey:"verticalArrow",type:"verticalLine",typeOptions:{point:{x:a.x,y:a.y,xAxis:a.xAxis,yAxis:a.yAxis},label:{offset:a.below?40:-40,format:" "},connector:{fill:"none",stroke:a.below?n.negativeColor:n.positiveColor}},shapeOptions:{stroke:"rgba(0, 0, 0, 0.75)",
135
+ strokeWidth:1}},b.annotationsOptions,b.bindings.verticalArrow.annotationsOptions),a=this.chart.addAnnotation(a),a.options.events.click.call(a,{}))}},flagCirclepin:{className:"highcharts-flag-circlepin",start:f.addFlagFromForm("circlepin")},flagDiamondpin:{className:"highcharts-flag-diamondpin",start:f.addFlagFromForm("flag")},flagSquarepin:{className:"highcharts-flag-squarepin",start:f.addFlagFromForm("squarepin")},flagSimplepin:{className:"highcharts-flag-simplepin",start:f.addFlagFromForm("nopin")},
136
+ zoomX:{className:"highcharts-zoom-x",init:function(a){this.chart.update({chart:{zoomType:"x"}});g(this,"deselectButton",{button:a})}},zoomY:{className:"highcharts-zoom-y",init:function(a){this.chart.update({chart:{zoomType:"y"}});g(this,"deselectButton",{button:a})}},zoomXY:{className:"highcharts-zoom-xy",init:function(a){this.chart.update({chart:{zoomType:"xy"}});g(this,"deselectButton",{button:a})}},seriesTypeLine:{className:"highcharts-series-type-line",init:function(a){this.chart.series[0].update({type:"line",
137
+ useOhlcData:!0});g(this,"deselectButton",{button:a})}},seriesTypeOhlc:{className:"highcharts-series-type-ohlc",init:function(a){this.chart.series[0].update({type:"ohlc"});g(this,"deselectButton",{button:a})}},seriesTypeCandlestick:{className:"highcharts-series-type-candlestick",init:function(a){this.chart.series[0].update({type:"candlestick"});g(this,"deselectButton",{button:a})}},seriesTypeHeikinAshi:{className:"highcharts-series-type-heikinashi",init:function(a){this.chart.series[0].update({type:"heikinashi"});
138
+ g(this,"deselectButton",{button:a})}},seriesTypeHollowCandlestick:{className:"highcharts-series-type-hollowcandlestick",init:function(a){this.chart.series[0].update({type:"hollowcandlestick"});g(this,"deselectButton",{button:a})}},fullScreen:{className:"highcharts-full-screen",noDataState:"normal",init:function(a){this.chart.fullscreen.toggle();g(this,"deselectButton",{button:a})}},currentPriceIndicator:{className:"highcharts-current-price-indicator",init:function(a){var b=this.chart,c=b.series,d=
139
+ b.stockTools,e=f.isPriceIndicatorEnabled(b.series);d&&d.guiEnabled&&(c.forEach(function(a){a.update({lastPrice:{enabled:!e},lastVisiblePrice:{enabled:!e,label:{enabled:!0}}},!1)}),b.redraw());g(this,"deselectButton",{button:a})}},indicators:{className:"highcharts-indicators",init:function(){var a=this;g(a,"showPopup",{formType:"indicators",options:{},onSubmit:function(b){a.utils.manageIndicators.call(a,b)}})}},toggleAnnotations:{className:"highcharts-toggle-annotations",init:function(a){var b=this.chart,
140
+ c=b.stockTools,d=c.getIconsURL();this.toggledAnnotations=!this.toggledAnnotations;(b.annotations||[]).forEach(function(a){a.setVisibility(!this.toggledAnnotations)},this);c&&c.guiEnabled&&(a.firstChild.style["background-image"]=this.toggledAnnotations?'url("'+d+'annotations-hidden.svg")':'url("'+d+'annotations-visible.svg")');g(this,"deselectButton",{button:a})}},saveChart:{className:"highcharts-save-chart",noDataState:"normal",init:function(b){var c=this.chart,d=[],e=[],k=[],n=[];c.annotations.forEach(function(a,
141
+ b){d[b]=a.userOptions});c.series.forEach(function(a){a.is("sma")?e.push(a.userOptions):"flags"===a.type&&k.push(a.userOptions)});c.yAxis.forEach(function(a){f.isNotNavigatorYAxis(a)&&n.push(a.options)});a.win.localStorage.setItem("highcharts-chart",JSON.stringify({annotations:d,indicators:e,flags:k,yAxes:n}));g(this,"deselectButton",{button:b})}}};u({navigation:{bindings:q}});k.prototype.utils=p(f,k.prototype.utils)});w(a,"Stock/StockToolsGui.js",[a["Core/Chart/Chart.js"],a["Core/Globals.js"],a["Extensions/Annotations/NavigationBindings.js"],
142
+ a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,k,u,x,q){x=x.setOptions;var d=q.addEvent,c=q.createElement,w=q.css,e=q.extend,z=q.fireEvent,g=q.getStyle,m=q.isArray,p=q.merge,r=q.pick;x({lang:{stockTools:{gui:{simpleShapes:"Simple shapes",lines:"Lines",crookedLines:"Crooked lines",measure:"Measure",advanced:"Advanced",toggleAnnotations:"Toggle annotations",verticalLabels:"Vertical labels",flags:"Flags",zoomChange:"Zoom change",typeChange:"Type change",saveChart:"Save chart",indicators:"Indicators",
143
+ currentPriceIndicator:"Current Price Indicators",zoomX:"Zoom X",zoomY:"Zoom Y",zoomXY:"Zooom XY",fullScreen:"Fullscreen",typeOHLC:"OHLC",typeLine:"Line",typeCandlestick:"Candlestick",typeHollowCandlestick:"Hollow Candlestick",typeHeikinAshi:"Heikin Ashi",circle:"Circle",label:"Label",rectangle:"Rectangle",flagCirclepin:"Flag circle",flagDiamondpin:"Flag diamond",flagSquarepin:"Flag square",flagSimplepin:"Flag simple",measureXY:"Measure XY",measureX:"Measure X",measureY:"Measure Y",segment:"Segment",
144
+ arrowSegment:"Arrow segment",ray:"Ray",arrowRay:"Arrow ray",line:"Line",arrowLine:"Arrow line",horizontalLine:"Horizontal line",verticalLine:"Vertical line",infinityLine:"Infinity line",crooked3:"Crooked 3 line",crooked5:"Crooked 5 line",elliott3:"Elliott 3 line",elliott5:"Elliott 5 line",verticalCounter:"Vertical counter",verticalLabel:"Vertical label",verticalArrow:"Vertical arrow",fibonacci:"Fibonacci",pitchfork:"Pitchfork",parallelChannel:"Parallel channel"}},navigation:{popup:{circle:"Circle",
145
+ rectangle:"Rectangle",label:"Label",segment:"Segment",arrowSegment:"Arrow segment",ray:"Ray",arrowRay:"Arrow ray",line:"Line",arrowLine:"Arrow line",horizontalLine:"Horizontal line",verticalLine:"Vertical line",crooked3:"Crooked 3 line",crooked5:"Crooked 5 line",elliott3:"Elliott 3 line",elliott5:"Elliott 5 line",verticalCounter:"Vertical counter",verticalLabel:"Vertical label",verticalArrow:"Vertical arrow",fibonacci:"Fibonacci",pitchfork:"Pitchfork",parallelChannel:"Parallel channel",infinityLine:"Infinity line",
146
+ measure:"Measure",measureXY:"Measure XY",measureX:"Measure X",measureY:"Measure Y",flags:"Flags",addButton:"add",saveButton:"save",editButton:"edit",removeButton:"remove",series:"Series",volume:"Volume",connector:"Connector",innerBackground:"Inner background",outerBackground:"Outer background",crosshairX:"Crosshair X",crosshairY:"Crosshair Y",tunnel:"Tunnel",background:"Background",index:"Index",period:"Period",periods:"Periods",standardDeviation:"Standard deviation",periodTenkan:"Tenkan period",
146
147
  periodSenkouSpanB:"Senkou Span B period",periodATR:"ATR period",multiplierATR:"ATR multiplier",shortPeriod:"Short period",longPeriod:"Long period",signalPeriod:"Signal period",decimals:"Decimals",algorithm:"Algorithm",topBand:"Top band",bottomBand:"Bottom band",initialAccelerationFactor:"Initial acceleration factor",maxAccelerationFactor:"Max acceleration factor",increment:"Increment",multiplier:"Multiplier",ranges:"Ranges",highIndex:"High index",lowIndex:"Low index",deviation:"Deviation",xAxisUnit:"x-axis unit",
147
148
  factor:"Factor",fastAvgPeriod:"Fast average period",slowAvgPeriod:"Slow average period",average:"Average"}}},stockTools:{gui:{enabled:!0,className:"highcharts-bindings-wrapper",toolbarClassName:"stocktools-toolbar",buttons:"indicators separator simpleShapes lines crookedLines measure advanced toggleAnnotations separator verticalLabels flags separator zoomChange fullScreen typeChange separator currentPriceIndicator saveChart".split(" "),definitions:{separator:{symbol:"separator.svg"},simpleShapes:{items:["label",
148
149
  "circle","rectangle"],circle:{symbol:"circle.svg"},rectangle:{symbol:"rectangle.svg"},label:{symbol:"label.svg"}},flags:{items:["flagCirclepin","flagDiamondpin","flagSquarepin","flagSimplepin"],flagSimplepin:{symbol:"flag-basic.svg"},flagDiamondpin:{symbol:"flag-diamond.svg"},flagSquarepin:{symbol:"flag-trapeze.svg"},flagCirclepin:{symbol:"flag-elipse.svg"}},lines:{items:"segment arrowSegment ray arrowRay line arrowLine horizontalLine verticalLine".split(" "),segment:{symbol:"segment.svg"},arrowSegment:{symbol:"arrow-segment.svg"},
149
150
  ray:{symbol:"ray.svg"},arrowRay:{symbol:"arrow-ray.svg"},line:{symbol:"line.svg"},arrowLine:{symbol:"arrow-line.svg"},verticalLine:{symbol:"vertical-line.svg"},horizontalLine:{symbol:"horizontal-line.svg"}},crookedLines:{items:["elliott3","elliott5","crooked3","crooked5"],crooked3:{symbol:"crooked-3.svg"},crooked5:{symbol:"crooked-5.svg"},elliott3:{symbol:"elliott-3.svg"},elliott5:{symbol:"elliott-5.svg"}},verticalLabels:{items:["verticalCounter","verticalLabel","verticalArrow"],verticalCounter:{symbol:"vertical-counter.svg"},
150
151
  verticalLabel:{symbol:"vertical-label.svg"},verticalArrow:{symbol:"vertical-arrow.svg"}},advanced:{items:["fibonacci","pitchfork","parallelChannel"],pitchfork:{symbol:"pitchfork.svg"},fibonacci:{symbol:"fibonacci.svg"},parallelChannel:{symbol:"parallel-channel.svg"}},measure:{items:["measureXY","measureX","measureY"],measureX:{symbol:"measure-x.svg"},measureY:{symbol:"measure-y.svg"},measureXY:{symbol:"measure-xy.svg"}},toggleAnnotations:{symbol:"annotations-visible.svg"},currentPriceIndicator:{symbol:"current-price-show.svg"},
151
- indicators:{symbol:"indicators.svg"},zoomChange:{items:["zoomX","zoomY","zoomXY"],zoomX:{symbol:"zoom-x.svg"},zoomY:{symbol:"zoom-y.svg"},zoomXY:{symbol:"zoom-xy.svg"}},typeChange:{items:["typeOHLC","typeLine","typeCandlestick"],typeOHLC:{symbol:"series-ohlc.svg"},typeLine:{symbol:"series-line.svg"},typeCandlestick:{symbol:"series-candlestick.svg"}},fullScreen:{symbol:"fullscreen.svg"},saveChart:{symbol:"save-chart.svg"}}}}});d(a,"afterGetContainer",function(){this.setStockTools()});d(a,"getMargins",
152
- function(){var a=this.stockTools&&this.stockTools.listWrapper;(a=a&&(a.startWidth+t(a,"padding-left")+t(a,"padding-right")||a.offsetWidth))&&a<this.plotWidth&&(this.plotLeft+=a,this.spacing[3]+=a)},{order:0});["beforeRender","beforeRedraw"].forEach(function(c){d(a,c,function(){if(this.stockTools){var a=this.options.chart,c=this.stockTools.listWrapper;c=c&&(c.startWidth+t(c,"padding-left")+t(c,"padding-right")||c.offsetWidth);var d=!1;c&&c<this.plotWidth?(a=u(a.spacingLeft,a.spacing&&a.spacing[3],
153
- 0)+c,d=a-this.spacingBox.x,this.spacingBox.x=a,this.spacingBox.width-=d,d=!0):0===c&&(d=!0);c!==this.stockTools.prevOffsetWidth&&(this.stockTools.prevOffsetWidth=c,d&&(this.isDirtyLegend=!0))}})});d(a,"destroy",function(){this.stockTools&&this.stockTools.destroy()});d(a,"redraw",function(){this.stockTools&&this.stockTools.guiEnabled&&this.stockTools.redraw()});var F=function(){function a(a,c,d){this.wrapper=this.toolbar=this.submenu=this.showhideBtn=this.listWrapper=this.arrowWrapper=this.arrowUp=
154
- this.arrowDown=void 0;this.chart=d;this.options=a;this.lang=c;this.iconsURL=this.getIconsURL();this.guiEnabled=a.enabled;this.visible=u(a.visible,!0);this.placed=u(a.placed,!1);this.eventsToUnbind=[];this.guiEnabled&&(this.createHTML(),this.init(),this.showHideNavigatorion());m(this,"afterInit")}a.prototype.init=function(){var a=this,c=this.lang,e=this.options,g=this.toolbar,h=a.addSubmenu,k=e.definitions,m=g.childNodes,p;e.buttons.forEach(function(b){p=a.addButton(g,k,b,c);a.eventsToUnbind.push(d(p.buttonWrapper,
155
- "click",function(){a.eraseActiveButtons(m,p.buttonWrapper)}));l(k[b].items)&&h.call(a,p,k[b])})};a.prototype.addSubmenu=function(a,e){var b=this,f=a.submenuArrow,g=a.buttonWrapper,h=t(g,"width"),k=this.wrapper,l=this.listWrapper,p=this.toolbar.childNodes,m=0,q;this.submenu=q=c("ul",{className:"highcharts-submenu-wrapper"},void 0,g);this.addSubmenuItems(g,e);b.eventsToUnbind.push(d(f,"click",function(a){a.stopPropagation();b.eraseActiveButtons(p,g);0<=g.className.indexOf("highcharts-current")?(l.style.width=
156
- l.startWidth+"px",g.classList.remove("highcharts-current"),q.style.display="none"):(q.style.display="block",m=q.offsetHeight-g.offsetHeight-3,q.offsetHeight+g.offsetTop>k.offsetHeight&&g.offsetTop>m||(m=0),x(q,{top:-m+"px",left:h+3+"px"}),g.className+=" highcharts-current",l.startWidth=k.offsetWidth,l.style.width=l.startWidth+t(l,"padding-left")+q.offsetWidth+3+"px")}))};a.prototype.addSubmenuItems=function(a,c){var b=this,e=this.submenu,f=this.lang,g=this.listWrapper,h;c.items.forEach(function(k){h=
157
- b.addButton(e,c,k,f);b.eventsToUnbind.push(d(h.mainButton,"click",function(){b.switchSymbol(this,a,!0);g.style.width=g.startWidth+"px";e.style.display="none"}))});var k=e.querySelectorAll("li > .highcharts-menu-item-btn")[0];b.switchSymbol(k,!1)};a.prototype.eraseActiveButtons=function(a,c,d){[].forEach.call(a,function(a){a!==c&&(a.classList.remove("highcharts-current"),a.classList.remove("highcharts-active"),d=a.querySelectorAll(".highcharts-submenu-wrapper"),0<d.length&&(d[0].style.display="none"))})};
158
- a.prototype.addButton=function(b,d,e,g){void 0===g&&(g={});d=d[e];var f=d.items,h=d.className||"";e=c("li",{className:u(a.prototype.classMapping[e],"")+" "+h,title:g[e]||e},void 0,b);b=c("span",{className:"highcharts-menu-item-btn"},void 0,e);if(f&&f.length){var k=c("span",{className:"highcharts-submenu-item-arrow highcharts-arrow-right"},void 0,e);k.style.backgroundImage="url("+this.iconsURL+"arrow-bottom.svg)"}else b.style.backgroundImage="url("+this.iconsURL+d.symbol+")";return{buttonWrapper:e,
159
- mainButton:b,submenuArrow:k}};a.prototype.addNavigation=function(){var a=this.wrapper;this.arrowWrapper=c("div",{className:"highcharts-arrow-wrapper"});this.arrowUp=c("div",{className:"highcharts-arrow-up"},void 0,this.arrowWrapper);this.arrowUp.style.backgroundImage="url("+this.iconsURL+"arrow-right.svg)";this.arrowDown=c("div",{className:"highcharts-arrow-down"},void 0,this.arrowWrapper);this.arrowDown.style.backgroundImage="url("+this.iconsURL+"arrow-right.svg)";a.insertBefore(this.arrowWrapper,
160
- a.childNodes[0]);this.scrollButtons()};a.prototype.scrollButtons=function(){var a=0,c=this.wrapper,e=this.toolbar,g=.1*c.offsetHeight;this.eventsToUnbind.push(d(this.arrowUp,"click",function(){0<a&&(a-=g,e.style.marginTop=-a+"px")}));this.eventsToUnbind.push(d(this.arrowDown,"click",function(){c.offsetHeight+a<=e.offsetHeight+g&&(a+=g,e.style.marginTop=-a+"px")}))};a.prototype.createHTML=function(){var a=this.chart,e=this.options,g=a.container,h=a.options.navigation,k=this.wrapper=c("div",{className:"highcharts-stocktools-wrapper "+
161
- e.className+" "+(h&&h.bindingsClassName)});g.appendChild(k);["mousemove","click","touchstart"].forEach(function(a){d(k,a,function(a){return a.stopPropagation()})});d(k,"mouseover",function(b){return a.pointer.onContainerMouseLeave(b)});this.toolbar=g=c("ul",{className:"highcharts-stocktools-toolbar "+e.toolbarClassName});this.listWrapper=e=c("div",{className:"highcharts-menu-wrapper"});k.insertBefore(e,k.childNodes[0]);e.insertBefore(g,e.childNodes[0]);this.showHideToolbar();this.addNavigation()};
162
- a.prototype.showHideNavigatorion=function(){this.visible&&this.toolbar.offsetHeight>this.wrapper.offsetHeight-50?this.arrowWrapper.style.display="block":(this.toolbar.style.marginTop="0px",this.arrowWrapper.style.display="none")};a.prototype.showHideToolbar=function(){var a=this.chart,e=this.wrapper,g=this.listWrapper,h=this.submenu,k=this.visible,l;this.showhideBtn=l=c("div",{className:"highcharts-toggle-toolbar highcharts-arrow-left"},void 0,e);l.style.backgroundImage="url("+this.iconsURL+"arrow-right.svg)";
163
- k?(e.style.height="100%",l.style.top=t(g,"padding-top")+"px",l.style.left=e.offsetWidth+t(g,"padding-left")+"px"):(h&&(h.style.display="none"),l.style.left="0px",this.visible=k=!1,g.classList.add("highcharts-hide"),l.classList.toggle("highcharts-arrow-right"),e.style.height=l.offsetHeight+"px");this.eventsToUnbind.push(d(l,"click",function(){a.update({stockTools:{gui:{visible:!k,placed:!0}}})}))};a.prototype.switchSymbol=function(a,c){var b=a.parentNode,d=b.classList.value;b=b.parentNode.parentNode;
164
- -1<d.indexOf("highcharts-disabled-btn")||(b.className="",d&&b.classList.add(d.trim()),b.querySelectorAll(".highcharts-menu-item-btn")[0].style.backgroundImage=a.style.backgroundImage,c&&this.selectButton(b))};a.prototype.selectButton=function(a){0<=a.className.indexOf("highcharts-active")?a.classList.remove("highcharts-active"):a.classList.add("highcharts-active")};a.prototype.unselectAllButtons=function(a){var b=a.parentNode.querySelectorAll(".highcharts-active");[].forEach.call(b,function(b){b!==
165
- a&&b.classList.remove("highcharts-active")})};a.prototype.update=function(a,c){p(!0,this.chart.options.stockTools,a);this.destroy();this.chart.setStockTools(a);this.chart.navigationBindings&&this.chart.navigationBindings.update();this.chart.isDirtyBox=!0;u(c,!0)&&this.chart.redraw()};a.prototype.destroy=function(){var a=this.wrapper,c=a&&a.parentNode;this.eventsToUnbind.forEach(function(a){a()});c&&c.removeChild(a)};a.prototype.redraw=function(){this.showHideNavigatorion()};a.prototype.getIconsURL=
166
- function(){return this.chart.options.navigation.iconsURL||this.options.iconsURL||"https://code.highcharts.com/9.1.1/gfx/stock-icons/"};return a}();F.prototype.classMapping={circle:"highcharts-circle-annotation",rectangle:"highcharts-rectangle-annotation",label:"highcharts-label-annotation",segment:"highcharts-segment",arrowSegment:"highcharts-arrow-segment",ray:"highcharts-ray",arrowRay:"highcharts-arrow-ray",line:"highcharts-infinity-line",arrowLine:"highcharts-arrow-infinity-line",verticalLine:"highcharts-vertical-line",
167
- horizontalLine:"highcharts-horizontal-line",crooked3:"highcharts-crooked3",crooked5:"highcharts-crooked5",elliott3:"highcharts-elliott3",elliott5:"highcharts-elliott5",pitchfork:"highcharts-pitchfork",fibonacci:"highcharts-fibonacci",parallelChannel:"highcharts-parallel-channel",measureX:"highcharts-measure-x",measureY:"highcharts-measure-y",measureXY:"highcharts-measure-xy",verticalCounter:"highcharts-vertical-counter",verticalLabel:"highcharts-vertical-label",verticalArrow:"highcharts-vertical-arrow",
168
- currentPriceIndicator:"highcharts-current-price-indicator",indicators:"highcharts-indicators",flagCirclepin:"highcharts-flag-circlepin",flagDiamondpin:"highcharts-flag-diamondpin",flagSquarepin:"highcharts-flag-squarepin",flagSimplepin:"highcharts-flag-simplepin",zoomX:"highcharts-zoom-x",zoomY:"highcharts-zoom-y",zoomXY:"highcharts-zoom-xy",typeLine:"highcharts-series-type-line",typeOHLC:"highcharts-series-type-ohlc",typeCandlestick:"highcharts-series-type-candlestick",fullScreen:"highcharts-full-screen",
169
- toggleAnnotations:"highcharts-toggle-annotations",saveChart:"highcharts-save-chart",separator:"highcharts-separator"};e(a.prototype,{setStockTools:function(a){var b=this.options,c=b.lang;a=p(b.stockTools&&b.stockTools.gui,a&&a.gui);this.stockTools=new F(a,c&&c.stockTools&&c.stockTools.gui,this);this.stockTools.guiEnabled&&(this.isDirtyBox=!0)}});d(v,"selectButton",function(a){var b=a.button,c=this.chart.stockTools;c&&c.guiEnabled&&(c.unselectAllButtons(a.button),0<=b.parentNode.className.indexOf("highcharts-submenu-wrapper")&&
170
- (b=b.parentNode.parentNode),c.selectButton(b))});d(v,"deselectButton",function(a){a=a.button;var b=this.chart.stockTools;b&&b.guiEnabled&&(0<=a.parentNode.className.indexOf("highcharts-submenu-wrapper")&&(a=a.parentNode.parentNode),b.selectButton(a))});d(a,"render",function(){var a=this.stockTools,b=a&&a.toolbar&&a.toolbar.querySelector(".highcharts-current-price-indicator");a&&this.navigationBindings&&this.options.series&&b&&(this.navigationBindings.constructor.prototype.utils.isPriceIndicatorEnabled(this.series)?
171
- b.firstChild.style["background-image"]='url("'+a.getIconsURL()+'current-price-hide.svg")':b.firstChild.style["background-image"]='url("'+a.getIconsURL()+'current-price-show.svg")')});g.Toolbar=F;return g.Toolbar});w(a,"masters/modules/stock-tools.src.js",[],function(){})});
152
+ indicators:{symbol:"indicators.svg"},zoomChange:{items:["zoomX","zoomY","zoomXY"],zoomX:{symbol:"zoom-x.svg"},zoomY:{symbol:"zoom-y.svg"},zoomXY:{symbol:"zoom-xy.svg"}},typeChange:{items:["typeOHLC","typeLine","typeCandlestick","typeHollowCandlestick","typeHeikinAshi"],typeOHLC:{symbol:"series-ohlc.svg"},typeLine:{symbol:"series-line.svg"},typeCandlestick:{symbol:"series-candlestick.svg"},typeHeikinAshi:{symbol:"series-heikin-ashi.svg"},typeHollowCandlestick:{symbol:"series-hollow-candlestick.svg"}},
153
+ fullScreen:{symbol:"fullscreen.svg"},saveChart:{symbol:"save-chart.svg"}}}}});d(a,"afterGetContainer",function(){this.setStockTools()});d(a,"getMargins",function(){var a=this.stockTools&&this.stockTools.listWrapper;(a=a&&(a.startWidth+g(a,"padding-left")+g(a,"padding-right")||a.offsetWidth))&&a<this.plotWidth&&(this.plotLeft+=a,this.spacing[3]+=a)},{order:0});["beforeRender","beforeRedraw"].forEach(function(c){d(a,c,function(){if(this.stockTools){var a=this.options.chart,c=this.stockTools.listWrapper;
154
+ c=c&&(c.startWidth+g(c,"padding-left")+g(c,"padding-right")||c.offsetWidth);var d=!1;c&&c<this.plotWidth?(a=r(a.spacingLeft,a.spacing&&a.spacing[3],0)+c,d=a-this.spacingBox.x,this.spacingBox.x=a,this.spacingBox.width-=d,d=!0):0===c&&(d=!0);c!==this.stockTools.prevOffsetWidth&&(this.stockTools.prevOffsetWidth=c,d&&(this.isDirtyLegend=!0))}})});d(a,"destroy",function(){this.stockTools&&this.stockTools.destroy()});d(a,"redraw",function(){this.stockTools&&this.stockTools.guiEnabled&&this.stockTools.redraw()});
155
+ var E=function(){function a(a,c,d){this.wrapper=this.toolbar=this.submenu=this.showhideBtn=this.listWrapper=this.arrowWrapper=this.arrowUp=this.arrowDown=void 0;this.chart=d;this.options=a;this.lang=c;this.iconsURL=this.getIconsURL();this.guiEnabled=a.enabled;this.visible=r(a.visible,!0);this.placed=r(a.placed,!1);this.eventsToUnbind=[];this.guiEnabled&&(this.createHTML(),this.init(),this.showHideNavigatorion());z(this,"afterInit")}a.prototype.init=function(){var a=this,c=this.lang,e=this.options,
156
+ f=this.toolbar,g=a.addSubmenu,k=e.definitions,n=f.childNodes,p;e.buttons.forEach(function(b){p=a.addButton(f,k,b,c);a.eventsToUnbind.push(d(p.buttonWrapper,"click",function(){a.eraseActiveButtons(n,p.buttonWrapper)}));m(k[b].items)&&g.call(a,p,k[b])})};a.prototype.addSubmenu=function(a,e){var b=this,h=a.submenuArrow,f=a.buttonWrapper,k=g(f,"width"),n=this.wrapper,m=this.listWrapper,p=this.toolbar.childNodes,q=0,r;this.submenu=r=c("ul",{className:"highcharts-submenu-wrapper"},void 0,f);this.addSubmenuItems(f,
157
+ e);b.eventsToUnbind.push(d(h,"click",function(a){a.stopPropagation();b.eraseActiveButtons(p,f);0<=f.className.indexOf("highcharts-current")?(m.style.width=m.startWidth+"px",f.classList.remove("highcharts-current"),r.style.display="none"):(r.style.display="block",q=r.offsetHeight-f.offsetHeight-3,r.offsetHeight+f.offsetTop>n.offsetHeight&&f.offsetTop>q||(q=0),w(r,{top:-q+"px",left:k+3+"px"}),f.className+=" highcharts-current",m.startWidth=n.offsetWidth,m.style.width=m.startWidth+g(m,"padding-left")+
158
+ r.offsetWidth+3+"px")}))};a.prototype.addSubmenuItems=function(a,c){var b=this,e=this.submenu,h=this.lang,f=this.listWrapper,g;c.items.forEach(function(l){g=b.addButton(e,c,l,h);b.eventsToUnbind.push(d(g.mainButton,"click",function(){b.switchSymbol(this,a,!0);f.style.width=f.startWidth+"px";e.style.display="none"}))});var k=e.querySelectorAll("li > .highcharts-menu-item-btn")[0];b.switchSymbol(k,!1)};a.prototype.eraseActiveButtons=function(a,c,d){[].forEach.call(a,function(a){a!==c&&(a.classList.remove("highcharts-current"),
159
+ a.classList.remove("highcharts-active"),d=a.querySelectorAll(".highcharts-submenu-wrapper"),0<d.length&&(d[0].style.display="none"))})};a.prototype.addButton=function(b,d,e,f){void 0===f&&(f={});d=d[e];var h=d.items,g=d.className||"";e=c("li",{className:r(a.prototype.classMapping[e],"")+" "+g,title:f[e]||e},void 0,b);b=c("span",{className:"highcharts-menu-item-btn"},void 0,e);if(h&&h.length){var k=c("span",{className:"highcharts-submenu-item-arrow highcharts-arrow-right"},void 0,e);k.style.backgroundImage=
160
+ "url("+this.iconsURL+"arrow-bottom.svg)"}else b.style.backgroundImage="url("+this.iconsURL+d.symbol+")";return{buttonWrapper:e,mainButton:b,submenuArrow:k}};a.prototype.addNavigation=function(){var a=this.wrapper;this.arrowWrapper=c("div",{className:"highcharts-arrow-wrapper"});this.arrowUp=c("div",{className:"highcharts-arrow-up"},void 0,this.arrowWrapper);this.arrowUp.style.backgroundImage="url("+this.iconsURL+"arrow-right.svg)";this.arrowDown=c("div",{className:"highcharts-arrow-down"},void 0,
161
+ this.arrowWrapper);this.arrowDown.style.backgroundImage="url("+this.iconsURL+"arrow-right.svg)";a.insertBefore(this.arrowWrapper,a.childNodes[0]);this.scrollButtons()};a.prototype.scrollButtons=function(){var a=0,c=this.wrapper,e=this.toolbar,f=.1*c.offsetHeight;this.eventsToUnbind.push(d(this.arrowUp,"click",function(){0<a&&(a-=f,e.style.marginTop=-a+"px")}));this.eventsToUnbind.push(d(this.arrowDown,"click",function(){c.offsetHeight+a<=e.offsetHeight+f&&(a+=f,e.style.marginTop=-a+"px")}))};a.prototype.createHTML=
162
+ function(){var a=this.chart,e=this.options,f=a.container,g=a.options.navigation,k=this.wrapper=c("div",{className:"highcharts-stocktools-wrapper "+e.className+" "+(g&&g.bindingsClassName)});f.appendChild(k);["mousedown","mousemove","click","touchstart"].forEach(function(a){d(k,a,function(a){return a.stopPropagation()})});d(k,"mouseover",function(b){return a.pointer.onContainerMouseLeave(b)});this.toolbar=f=c("ul",{className:"highcharts-stocktools-toolbar "+e.toolbarClassName});this.listWrapper=e=
163
+ c("div",{className:"highcharts-menu-wrapper"});k.insertBefore(e,k.childNodes[0]);e.insertBefore(f,e.childNodes[0]);this.showHideToolbar();this.addNavigation()};a.prototype.showHideNavigatorion=function(){this.visible&&this.toolbar.offsetHeight>this.wrapper.offsetHeight-50?this.arrowWrapper.style.display="block":(this.toolbar.style.marginTop="0px",this.arrowWrapper.style.display="none")};a.prototype.showHideToolbar=function(){var a=this.chart,e=this.wrapper,f=this.listWrapper,k=this.submenu,n=this.visible,
164
+ m;this.showhideBtn=m=c("div",{className:"highcharts-toggle-toolbar highcharts-arrow-left"},void 0,e);m.style.backgroundImage="url("+this.iconsURL+"arrow-right.svg)";n?(e.style.height="100%",m.style.top=g(f,"padding-top")+"px",m.style.left=e.offsetWidth+g(f,"padding-left")+"px"):(k&&(k.style.display="none"),m.style.left="0px",this.visible=n=!1,f.classList.add("highcharts-hide"),m.classList.toggle("highcharts-arrow-right"),e.style.height=m.offsetHeight+"px");this.eventsToUnbind.push(d(m,"click",function(){a.update({stockTools:{gui:{visible:!n,
165
+ placed:!0}}})}))};a.prototype.switchSymbol=function(a,c){var b=a.parentNode,d=b.className;b=b.parentNode.parentNode;-1<d.indexOf("highcharts-disabled-btn")||(b.className="",d&&b.classList.add(d.trim()),b.querySelectorAll(".highcharts-menu-item-btn")[0].style.backgroundImage=a.style.backgroundImage,c&&this.selectButton(b))};a.prototype.selectButton=function(a){0<=a.className.indexOf("highcharts-active")?a.classList.remove("highcharts-active"):a.classList.add("highcharts-active")};a.prototype.unselectAllButtons=
166
+ function(a){var b=a.parentNode.querySelectorAll(".highcharts-active");[].forEach.call(b,function(b){b!==a&&b.classList.remove("highcharts-active")})};a.prototype.update=function(a,c){p(!0,this.chart.options.stockTools,a);this.destroy();this.chart.setStockTools(a);this.chart.navigationBindings&&this.chart.navigationBindings.update();this.chart.isDirtyBox=!0;r(c,!0)&&this.chart.redraw()};a.prototype.destroy=function(){var a=this.wrapper,c=a&&a.parentNode;this.eventsToUnbind.forEach(function(a){a()});
167
+ c&&c.removeChild(a)};a.prototype.redraw=function(){this.showHideNavigatorion()};a.prototype.getIconsURL=function(){return this.chart.options.navigation.iconsURL||this.options.iconsURL||"https://code.highcharts.com/9.2.2/gfx/stock-icons/"};return a}();E.prototype.classMapping={circle:"highcharts-circle-annotation",rectangle:"highcharts-rectangle-annotation",label:"highcharts-label-annotation",segment:"highcharts-segment",arrowSegment:"highcharts-arrow-segment",ray:"highcharts-ray",arrowRay:"highcharts-arrow-ray",
168
+ line:"highcharts-infinity-line",arrowLine:"highcharts-arrow-infinity-line",verticalLine:"highcharts-vertical-line",horizontalLine:"highcharts-horizontal-line",crooked3:"highcharts-crooked3",crooked5:"highcharts-crooked5",elliott3:"highcharts-elliott3",elliott5:"highcharts-elliott5",pitchfork:"highcharts-pitchfork",fibonacci:"highcharts-fibonacci",parallelChannel:"highcharts-parallel-channel",measureX:"highcharts-measure-x",measureY:"highcharts-measure-y",measureXY:"highcharts-measure-xy",verticalCounter:"highcharts-vertical-counter",
169
+ verticalLabel:"highcharts-vertical-label",verticalArrow:"highcharts-vertical-arrow",currentPriceIndicator:"highcharts-current-price-indicator",indicators:"highcharts-indicators",flagCirclepin:"highcharts-flag-circlepin",flagDiamondpin:"highcharts-flag-diamondpin",flagSquarepin:"highcharts-flag-squarepin",flagSimplepin:"highcharts-flag-simplepin",zoomX:"highcharts-zoom-x",zoomY:"highcharts-zoom-y",zoomXY:"highcharts-zoom-xy",typeLine:"highcharts-series-type-line",typeOHLC:"highcharts-series-type-ohlc",
170
+ typeCandlestick:"highcharts-series-type-candlestick",typeHollowCandlestick:"highcharts-series-type-hollowcandlestick",typeHeikinAshi:"highcharts-series-type-heikinashi",fullScreen:"highcharts-full-screen",toggleAnnotations:"highcharts-toggle-annotations",saveChart:"highcharts-save-chart",separator:"highcharts-separator"};e(a.prototype,{setStockTools:function(a){var b=this.options,c=b.lang;a=p(b.stockTools&&b.stockTools.gui,a&&a.gui);this.stockTools=new E(a,c&&c.stockTools&&c.stockTools.gui,this);
171
+ this.stockTools.guiEnabled&&(this.isDirtyBox=!0)}});d(u,"selectButton",function(a){var b=a.button,c=this.chart.stockTools;c&&c.guiEnabled&&(c.unselectAllButtons(a.button),0<=b.parentNode.className.indexOf("highcharts-submenu-wrapper")&&(b=b.parentNode.parentNode),c.selectButton(b))});d(u,"deselectButton",function(a){a=a.button;var b=this.chart.stockTools;b&&b.guiEnabled&&(0<=a.parentNode.className.indexOf("highcharts-submenu-wrapper")&&(a=a.parentNode.parentNode),b.selectButton(a))});d(a,"render",
172
+ function(){var a=this.stockTools,b=a&&a.toolbar&&a.toolbar.querySelector(".highcharts-current-price-indicator");a&&this.navigationBindings&&this.options.series&&b&&(this.navigationBindings.constructor.prototype.utils.isPriceIndicatorEnabled(this.series)?b.firstChild.style["background-image"]='url("'+a.getIconsURL()+'current-price-hide.svg")':b.firstChild.style["background-image"]='url("'+a.getIconsURL()+'current-price-show.svg")')});k.Toolbar=E;return k.Toolbar});w(a,"masters/modules/stock-tools.src.js",
173
+ [],function(){})});
172
174
  //# sourceMappingURL=stock-tools.js.map