highcharts 9.2.2 → 9.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (747) hide show
  1. package/README.md +13 -6
  2. package/bower.json +1 -1
  3. package/css/annotations/popup.css +48 -8
  4. package/css/annotations/popup.scss +70 -22
  5. package/css/highcharts.css +45 -0
  6. package/css/highcharts.scss +40 -0
  7. package/css/themes/dark-unica.css +45 -0
  8. package/css/themes/grid-light.css +45 -0
  9. package/css/themes/sand-signika.css +45 -0
  10. package/es-modules/Accessibility/A11yI18n.js +273 -224
  11. package/es-modules/Accessibility/Accessibility.js +233 -128
  12. package/es-modules/Accessibility/AccessibilityComponent.js +79 -314
  13. package/es-modules/Accessibility/Components/AnnotationsA11y.js +10 -0
  14. package/es-modules/Accessibility/Components/ContainerComponent.js +52 -27
  15. package/es-modules/Accessibility/Components/InfoRegionsComponent.js +46 -23
  16. package/es-modules/Accessibility/Components/LegendComponent.js +97 -65
  17. package/es-modules/Accessibility/Components/MenuComponent.js +59 -40
  18. package/es-modules/Accessibility/Components/RangeSelectorComponent.js +5 -8
  19. package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +152 -115
  20. package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +133 -68
  21. package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +64 -27
  22. package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +38 -21
  23. package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +380 -325
  24. package/es-modules/Accessibility/Components/ZoomComponent.js +28 -20
  25. package/es-modules/Accessibility/FocusBorder.js +192 -147
  26. package/es-modules/Accessibility/HighContrastMode.js +78 -66
  27. package/es-modules/Accessibility/HighContrastTheme.js +10 -0
  28. package/es-modules/Accessibility/KeyboardNavigation.js +144 -70
  29. package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
  30. package/es-modules/Accessibility/Options/DeprecatedOptions.js +11 -1
  31. package/es-modules/Accessibility/Options/LangOptions.js +1 -2
  32. package/es-modules/Accessibility/Options/Options.js +32 -17
  33. package/es-modules/Accessibility/ProxyElement.js +212 -0
  34. package/es-modules/Accessibility/ProxyProvider.js +305 -0
  35. package/es-modules/Accessibility/Utils/Announcer.js +15 -8
  36. package/es-modules/Accessibility/Utils/ChartUtilities.js +41 -16
  37. package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
  38. package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
  39. package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -30
  40. package/es-modules/Core/Axis/Axis.js +37 -30
  41. package/es-modules/Core/Axis/AxisDefaults.js +35 -24
  42. package/es-modules/Core/Axis/Color/ColorAxisComposition.js +54 -4
  43. package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
  44. package/es-modules/Core/Axis/OrdinalAxis.js +8 -12
  45. package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
  46. package/es-modules/Core/Axis/ScrollbarAxis.js +10 -3
  47. package/es-modules/Core/Axis/TreeGridAxis.js +2 -2
  48. package/es-modules/Core/Axis/TreeGridTick.js +1 -2
  49. package/es-modules/Core/Chart/Chart.js +2 -3
  50. package/es-modules/Core/Chart/ChartDefaults.js +3 -4
  51. package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
  52. package/es-modules/Core/Chart/MapChart.js +10 -22
  53. package/es-modules/Core/Chart/StockChart.js +3 -293
  54. package/es-modules/Core/Color/Palettes.js +22 -0
  55. package/es-modules/Core/DefaultOptions.js +19 -17
  56. package/es-modules/Core/Foundation.js +39 -31
  57. package/es-modules/Core/Globals.js +1 -1
  58. package/es-modules/Core/HttpUtilities.js +3 -3
  59. package/es-modules/Core/Legend/Legend.js +7 -3
  60. package/es-modules/Core/Navigator.js +7 -8
  61. package/es-modules/Core/Pointer.js +39 -36
  62. package/es-modules/Core/Renderer/HTML/AST.js +2 -0
  63. package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -18
  64. package/es-modules/Core/Renderer/SVG/SVGElement.js +3 -4
  65. package/es-modules/Core/Renderer/SVG/SVGRenderer.js +21 -18
  66. package/es-modules/Core/Renderer/SVG/TextBuilder.js +3 -3
  67. package/es-modules/Core/ScrollbarDefaults.js +10 -9
  68. package/es-modules/Core/Series/DataLabel.js +2 -3
  69. package/es-modules/Core/Series/Point.js +5 -3
  70. package/es-modules/Core/Series/Series.js +153 -162
  71. package/es-modules/Core/Series/SeriesDefaults.js +3 -4
  72. package/es-modules/Core/Series/SeriesRegistry.js +1 -2
  73. package/es-modules/Core/Tooltip.js +44 -17
  74. package/es-modules/Core/Utilities.js +15 -7
  75. package/es-modules/Data/DataConverter.js +489 -0
  76. package/es-modules/Data/DataPromise.js +252 -0
  77. package/es-modules/Data/DataSeriesConverter.js +203 -0
  78. package/es-modules/Data/DataTable.js +1204 -0
  79. package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
  80. package/es-modules/Data/Modifiers/DataModifier.js +303 -0
  81. package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
  82. package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
  83. package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
  84. package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
  85. package/es-modules/Data/Modifiers/SortModifier.js +249 -0
  86. package/es-modules/Data/Parsers/CSVParser.js +399 -0
  87. package/es-modules/Data/Parsers/DataParser.js +101 -0
  88. package/es-modules/Data/Parsers/GoogleSheetsParser.js +220 -0
  89. package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
  90. package/es-modules/Data/Stores/CSVStore.js +317 -0
  91. package/es-modules/Data/Stores/DataStore.js +276 -0
  92. package/es-modules/Data/Stores/GoogleSheetsStore.js +167 -0
  93. package/es-modules/Data/Stores/HTMLTableStore.js +351 -0
  94. package/es-modules/Extensions/Annotations/Annotations.js +61 -11
  95. package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
  96. package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
  97. package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +7 -1
  98. package/es-modules/Extensions/Annotations/NavigationBindings.js +68 -19
  99. package/es-modules/Extensions/Annotations/Popup.js +479 -141
  100. package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
  101. package/es-modules/Extensions/Annotations/Types/CrookedLine.js +1 -1
  102. package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
  103. package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
  104. package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
  105. package/es-modules/Extensions/Annotations/Types/Measure.js +14 -8
  106. package/es-modules/Extensions/Annotations/Types/Pitchfork.js +5 -5
  107. package/es-modules/Extensions/Annotations/Types/TimeCycles.js +207 -0
  108. package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -5
  109. package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
  110. package/es-modules/Extensions/Boost/BoostOverrides.js +3 -1
  111. package/es-modules/Extensions/Boost/WGLShader.js +4 -3
  112. package/es-modules/Extensions/BoostCanvas.js +1 -2
  113. package/es-modules/Extensions/CurrentDateIndication.js +2 -3
  114. package/es-modules/Extensions/DataGrouping.js +31 -18
  115. package/es-modules/Extensions/DownloadURL.js +2 -2
  116. package/es-modules/Extensions/DragPanes.js +1 -2
  117. package/es-modules/Extensions/Drilldown.js +2 -3
  118. package/es-modules/Extensions/Exporting/Exporting.js +8 -7
  119. package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
  120. package/es-modules/Extensions/GeoJSON.js +39 -63
  121. package/es-modules/Extensions/MarkerClusters.js +115 -97
  122. package/es-modules/Extensions/NoDataToDisplay.js +1 -2
  123. package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +9 -8
  124. package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
  125. package/es-modules/Extensions/Oldie/Oldie.js +2 -3
  126. package/es-modules/Extensions/Pane.js +5 -6
  127. package/es-modules/Extensions/RangeSelector.js +3 -4
  128. package/es-modules/Extensions/Sonification/ChartSonify.js +247 -637
  129. package/es-modules/Extensions/Sonification/Earcon.js +136 -102
  130. package/es-modules/Extensions/Sonification/Instrument.js +496 -426
  131. package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
  132. package/es-modules/Extensions/Sonification/Options.js +10 -0
  133. package/es-modules/Extensions/Sonification/PointSonify.js +203 -152
  134. package/es-modules/Extensions/Sonification/SeriesSonify.js +459 -0
  135. package/es-modules/Extensions/Sonification/SignalHandler.js +124 -0
  136. package/es-modules/Extensions/Sonification/Sonification.js +26 -52
  137. package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +62 -84
  138. package/es-modules/Extensions/Sonification/Timeline.js +255 -567
  139. package/es-modules/Extensions/Sonification/TimelineEvent.js +158 -0
  140. package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
  141. package/es-modules/Maps/MapNavigation.js +27 -64
  142. package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
  143. package/es-modules/Maps/MapPointer.js +7 -5
  144. package/es-modules/Maps/MapView.js +450 -0
  145. package/es-modules/Maps/MapViewOptionsDefault.js +95 -0
  146. package/es-modules/Maps/Projection.js +433 -0
  147. package/es-modules/Maps/ProjectionDefinition.js +9 -0
  148. package/es-modules/Maps/Projections/EqualEarth.js +42 -0
  149. package/es-modules/Maps/Projections/Miller.js +17 -0
  150. package/es-modules/Maps/Projections/Orthographic.js +26 -0
  151. package/es-modules/Maps/Projections/ProjectionRegistry.js +17 -0
  152. package/es-modules/Maps/Projections/WebMercator.js +25 -0
  153. package/es-modules/Series/AreaRange/AreaRangeSeries.js +4 -5
  154. package/es-modules/Series/Bellcurve/BellcurveSeries.js +2 -8
  155. package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
  156. package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
  157. package/es-modules/Series/Bubble/BubbleLegendItem.js +3 -3
  158. package/es-modules/Series/Bubble/BubblePoint.js +5 -0
  159. package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
  160. package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -18
  161. package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
  162. package/es-modules/Series/ColorMapComposition.js +109 -0
  163. package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
  164. package/es-modules/Series/Column/ColumnSeries.js +3 -4
  165. package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +6 -6
  166. package/es-modules/Series/DataModifyComposition.js +539 -0
  167. package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
  168. package/es-modules/Series/DerivedComposition.js +137 -0
  169. package/es-modules/Series/DrawPointComposition.js +111 -0
  170. package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -3
  171. package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
  172. package/es-modules/Series/Flags/FlagsSeries.js +18 -25
  173. package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
  174. package/es-modules/Series/Gantt/GanttSeries.js +0 -2
  175. package/es-modules/Series/Gauge/GaugePoint.js +1 -1
  176. package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
  177. package/es-modules/Series/HLC/HLCPoint.js +55 -0
  178. package/es-modules/Series/HLC/HLCSeries.js +383 -0
  179. package/es-modules/Series/Heatmap/HeatmapPoint.js +3 -4
  180. package/es-modules/Series/Heatmap/HeatmapSeries.js +19 -6
  181. package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +2 -3
  182. package/es-modules/Series/Histogram/HistogramSeries.js +3 -7
  183. package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +9 -10
  184. package/es-modules/Series/Line/LineSeries.js +1 -2
  185. package/es-modules/Series/Map/MapPoint.js +23 -16
  186. package/es-modules/Series/Map/MapSeries.js +268 -309
  187. package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
  188. package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
  189. package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
  190. package/es-modules/Series/MapPoint/MapPointSeries.js +87 -4
  191. package/es-modules/Series/Networkgraph/Networkgraph.js +5 -5
  192. package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +76 -29
  193. package/es-modules/Series/OHLC/OHLCPoint.js +2 -6
  194. package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
  195. package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
  196. package/es-modules/Series/Organization/OrganizationSeries.js +2 -3
  197. package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +46 -6
  198. package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
  199. package/es-modules/Series/Pie/PieDataLabel.js +1 -2
  200. package/es-modules/Series/Pie/PieSeries.js +6 -7
  201. package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
  202. package/es-modules/Series/Sankey/SankeySeries.js +89 -20
  203. package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
  204. package/es-modules/Series/Sunburst/SunburstSeries.js +4 -4
  205. package/es-modules/Series/Tilemap/TilemapPoint.js +2 -3
  206. package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
  207. package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +86 -76
  208. package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
  209. package/es-modules/Series/Treemap/TreemapSeries.js +8 -8
  210. package/es-modules/Series/Venn/VennPoint.js +16 -7
  211. package/es-modules/Series/Venn/VennSeries.js +5 -8
  212. package/es-modules/Series/Venn/VennUtils.js +550 -439
  213. package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -3
  214. package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
  215. package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
  216. package/es-modules/Series/Wordcloud/WordcloudSeries.js +24 -20
  217. package/es-modules/Series/Wordcloud/WordcloudUtils.js +673 -484
  218. package/es-modules/Series/XRange/XRangePoint.js +1 -0
  219. package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +3 -6
  220. package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
  221. package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
  222. package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -6
  223. package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
  224. package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
  225. package/es-modules/Stock/Indicators/BB/BBIndicator.js +27 -11
  226. package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
  227. package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
  228. package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +19 -11
  229. package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +17 -11
  230. package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
  231. package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +11 -9
  232. package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +8 -16
  233. package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +2 -2
  234. package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
  235. package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
  236. package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
  237. package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
  238. package/es-modules/{Mixins/MultipleLines.js → Stock/Indicators/MultipleLinesComposition.js} +136 -87
  239. package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
  240. package/es-modules/Stock/Indicators/PC/PCIndicator.js +14 -13
  241. package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
  242. package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
  243. package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +9 -32
  244. package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
  245. package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +15 -8
  246. package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
  247. package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
  248. package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
  249. package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +20 -3
  250. package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
  251. package/es-modules/Stock/StockToolsBindings.js +144 -42
  252. package/es-modules/Stock/StockToolsGui.js +405 -11
  253. package/es-modules/masters/highcharts-3d.src.js +1 -1
  254. package/es-modules/masters/highcharts-gantt.src.js +1 -1
  255. package/es-modules/masters/highcharts-more.src.js +1 -1
  256. package/es-modules/masters/highcharts.src.js +1 -1
  257. package/es-modules/masters/highmaps.src.js +1 -1
  258. package/es-modules/masters/highstock.src.js +1 -1
  259. package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
  260. package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
  261. package/es-modules/masters/indicators/ao.src.js +1 -1
  262. package/es-modules/masters/indicators/apo.src.js +1 -1
  263. package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
  264. package/es-modules/masters/indicators/aroon.src.js +1 -1
  265. package/es-modules/masters/indicators/atr.src.js +1 -1
  266. package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
  267. package/es-modules/masters/indicators/cci.src.js +1 -1
  268. package/es-modules/masters/indicators/chaikin.src.js +1 -1
  269. package/es-modules/masters/indicators/cmf.src.js +1 -1
  270. package/es-modules/masters/indicators/cmo.src.js +1 -1
  271. package/es-modules/masters/indicators/dema.src.js +1 -1
  272. package/es-modules/masters/indicators/disparity-index.src.js +1 -1
  273. package/es-modules/masters/indicators/dmi.src.js +1 -1
  274. package/es-modules/masters/indicators/dpo.src.js +1 -1
  275. package/es-modules/masters/indicators/ema.src.js +4 -10
  276. package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
  277. package/es-modules/masters/indicators/indicators-all.src.js +2 -2
  278. package/es-modules/masters/indicators/indicators.src.js +2 -1
  279. package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
  280. package/es-modules/masters/indicators/klinger.src.js +1 -1
  281. package/es-modules/masters/indicators/macd.src.js +1 -1
  282. package/es-modules/masters/indicators/mfi.src.js +1 -1
  283. package/es-modules/masters/indicators/momentum.src.js +1 -1
  284. package/es-modules/masters/indicators/natr.src.js +1 -1
  285. package/es-modules/masters/indicators/obv.src.js +1 -1
  286. package/es-modules/masters/indicators/pivot-points.src.js +1 -1
  287. package/es-modules/masters/indicators/ppo.src.js +1 -1
  288. package/es-modules/masters/indicators/price-channel.src.js +1 -1
  289. package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
  290. package/es-modules/masters/indicators/psar.src.js +1 -1
  291. package/es-modules/masters/indicators/regressions.src.js +1 -1
  292. package/es-modules/masters/indicators/roc.src.js +1 -1
  293. package/es-modules/masters/indicators/rsi.src.js +1 -1
  294. package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
  295. package/es-modules/masters/indicators/stochastic.src.js +1 -1
  296. package/es-modules/masters/indicators/supertrend.src.js +1 -1
  297. package/es-modules/masters/indicators/tema.src.js +1 -1
  298. package/es-modules/masters/indicators/trendline.src.js +1 -1
  299. package/es-modules/masters/indicators/trix.src.js +1 -1
  300. package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
  301. package/es-modules/masters/indicators/vwap.src.js +1 -1
  302. package/es-modules/masters/indicators/williams-r.src.js +1 -1
  303. package/es-modules/masters/indicators/wma.src.js +1 -1
  304. package/es-modules/masters/indicators/zigzag.src.js +1 -1
  305. package/es-modules/masters/modules/accessibility.src.js +16 -2
  306. package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
  307. package/es-modules/masters/modules/annotations.src.js +1 -1
  308. package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
  309. package/es-modules/masters/modules/boost-canvas.src.js +1 -1
  310. package/es-modules/masters/modules/boost.src.js +1 -1
  311. package/es-modules/masters/modules/broken-axis.src.js +1 -1
  312. package/es-modules/masters/modules/bullet.src.js +1 -1
  313. package/es-modules/masters/modules/coloraxis.src.js +1 -1
  314. package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
  315. package/es-modules/masters/modules/cylinder.src.js +1 -1
  316. package/es-modules/masters/modules/data.src.js +6 -3
  317. package/es-modules/masters/modules/datagrouping.src.js +1 -1
  318. package/es-modules/masters/modules/debugger.src.js +1 -1
  319. package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
  320. package/es-modules/masters/modules/dotplot.src.js +1 -1
  321. package/es-modules/masters/modules/drag-panes.src.js +1 -1
  322. package/es-modules/masters/modules/draggable-points.src.js +1 -1
  323. package/es-modules/masters/modules/drilldown.src.js +1 -1
  324. package/es-modules/masters/modules/dumbbell.src.js +1 -1
  325. package/es-modules/masters/modules/export-data.src.js +1 -1
  326. package/es-modules/masters/modules/exporting.src.js +1 -1
  327. package/es-modules/masters/modules/full-screen.src.js +1 -1
  328. package/es-modules/masters/modules/funnel.src.js +1 -1
  329. package/es-modules/masters/modules/funnel3d.src.js +1 -1
  330. package/es-modules/masters/modules/gantt.src.js +1 -1
  331. package/es-modules/masters/modules/grid-axis.src.js +1 -1
  332. package/es-modules/masters/modules/heatmap.src.js +1 -2
  333. package/es-modules/masters/modules/heikinashi.src.js +1 -1
  334. package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
  335. package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
  336. package/es-modules/masters/modules/item-series.src.js +1 -1
  337. package/es-modules/masters/modules/lollipop.src.js +1 -1
  338. package/es-modules/masters/modules/map.src.js +1 -3
  339. package/es-modules/masters/modules/marker-clusters.src.js +1 -1
  340. package/es-modules/masters/modules/networkgraph.src.js +1 -1
  341. package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
  342. package/es-modules/masters/modules/offline-exporting.src.js +1 -1
  343. package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
  344. package/es-modules/masters/modules/oldie.src.js +1 -1
  345. package/es-modules/masters/modules/organization.src.js +1 -1
  346. package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
  347. package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
  348. package/es-modules/masters/modules/pareto.src.js +1 -1
  349. package/es-modules/masters/modules/pathfinder.src.js +1 -1
  350. package/es-modules/masters/modules/pattern-fill.src.js +1 -1
  351. package/es-modules/masters/modules/price-indicator.src.js +1 -1
  352. package/es-modules/masters/modules/pyramid3d.src.js +1 -1
  353. package/es-modules/masters/modules/sankey.src.js +1 -1
  354. package/es-modules/masters/modules/series-label.src.js +1 -1
  355. package/es-modules/masters/modules/solid-gauge.src.js +1 -1
  356. package/es-modules/masters/modules/sonification.src.js +33 -2
  357. package/es-modules/masters/modules/static-scale.src.js +1 -1
  358. package/es-modules/masters/modules/stock-tools.src.js +1 -1
  359. package/es-modules/masters/modules/stock.src.js +4 -1
  360. package/es-modules/masters/modules/streamgraph.src.js +1 -1
  361. package/es-modules/masters/modules/sunburst.src.js +1 -1
  362. package/es-modules/masters/modules/tilemap.src.js +1 -1
  363. package/es-modules/masters/modules/timeline.src.js +1 -1
  364. package/es-modules/masters/modules/treegrid.src.js +1 -1
  365. package/es-modules/masters/modules/treemap.src.js +1 -1
  366. package/es-modules/masters/modules/variable-pie.src.js +1 -1
  367. package/es-modules/masters/modules/variwide.src.js +1 -1
  368. package/es-modules/masters/modules/vector.src.js +1 -1
  369. package/es-modules/masters/modules/venn.src.js +1 -1
  370. package/es-modules/masters/modules/windbarb.src.js +1 -1
  371. package/es-modules/masters/modules/wordcloud.src.js +1 -1
  372. package/es-modules/masters/modules/xrange.src.js +1 -1
  373. package/es-modules/masters/themes/avocado.src.js +1 -1
  374. package/es-modules/masters/themes/dark-blue.src.js +1 -1
  375. package/es-modules/masters/themes/dark-green.src.js +1 -1
  376. package/es-modules/masters/themes/dark-unica.src.js +1 -1
  377. package/es-modules/masters/themes/gray.src.js +1 -1
  378. package/es-modules/masters/themes/grid-light.src.js +1 -1
  379. package/es-modules/masters/themes/grid.src.js +1 -1
  380. package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
  381. package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
  382. package/es-modules/masters/themes/sand-signika.src.js +1 -1
  383. package/es-modules/masters/themes/skies.src.js +1 -1
  384. package/es-modules/masters/themes/sunset.src.js +1 -1
  385. package/highcharts-3d.js +1 -1
  386. package/highcharts-3d.src.js +1 -1
  387. package/highcharts-gantt.js +801 -804
  388. package/highcharts-gantt.js.map +1 -1
  389. package/highcharts-gantt.src.js +775 -739
  390. package/highcharts-more.js +194 -193
  391. package/highcharts-more.js.map +1 -1
  392. package/highcharts-more.src.js +207 -119
  393. package/highcharts.d.ts +9670 -4217
  394. package/highcharts.js +585 -588
  395. package/highcharts.js.map +1 -1
  396. package/highcharts.src.d.ts +9670 -4217
  397. package/highcharts.src.js +608 -587
  398. package/highmaps.js +726 -708
  399. package/highmaps.js.map +1 -1
  400. package/highmaps.src.js +2708 -1587
  401. package/highstock.js +788 -783
  402. package/highstock.js.map +1 -1
  403. package/highstock.src.js +1896 -1267
  404. package/indicators/acceleration-bands.js +10 -9
  405. package/indicators/acceleration-bands.js.map +1 -1
  406. package/indicators/acceleration-bands.src.js +156 -112
  407. package/indicators/accumulation-distribution.js +1 -1
  408. package/indicators/accumulation-distribution.src.js +1 -1
  409. package/indicators/ao.js +6 -6
  410. package/indicators/ao.js.map +1 -1
  411. package/indicators/ao.src.js +4 -4
  412. package/indicators/apo.js +5 -6
  413. package/indicators/apo.js.map +1 -1
  414. package/indicators/apo.src.js +16 -84
  415. package/indicators/aroon-oscillator.js +9 -9
  416. package/indicators/aroon-oscillator.js.map +1 -1
  417. package/indicators/aroon-oscillator.src.js +160 -177
  418. package/indicators/aroon.js +9 -9
  419. package/indicators/aroon.js.map +1 -1
  420. package/indicators/aroon.src.js +156 -112
  421. package/indicators/atr.js +1 -1
  422. package/indicators/atr.src.js +1 -1
  423. package/indicators/bollinger-bands.js +10 -9
  424. package/indicators/bollinger-bands.js.map +1 -1
  425. package/indicators/bollinger-bands.src.js +180 -117
  426. package/indicators/cci.js +1 -1
  427. package/indicators/cci.src.js +1 -1
  428. package/indicators/chaikin.js +8 -9
  429. package/indicators/chaikin.js.map +1 -1
  430. package/indicators/chaikin.src.js +8 -76
  431. package/indicators/cmf.js +1 -1
  432. package/indicators/cmf.src.js +1 -1
  433. package/indicators/cmo.js +1 -1
  434. package/indicators/cmo.src.js +1 -1
  435. package/indicators/dema.js +5 -6
  436. package/indicators/dema.js.map +1 -1
  437. package/indicators/dema.src.js +3 -75
  438. package/indicators/disparity-index.js +6 -7
  439. package/indicators/disparity-index.js.map +1 -1
  440. package/indicators/disparity-index.src.js +19 -74
  441. package/indicators/dmi.js +11 -11
  442. package/indicators/dmi.js.map +1 -1
  443. package/indicators/dmi.src.js +173 -116
  444. package/indicators/dpo.js +1 -1
  445. package/indicators/dpo.src.js +1 -1
  446. package/indicators/ema.js +1 -13
  447. package/indicators/ema.js.map +1 -1
  448. package/indicators/ema.src.js +7 -188
  449. package/indicators/ichimoku-kinko-hyo.js +1 -1
  450. package/indicators/ichimoku-kinko-hyo.src.js +1 -1
  451. package/indicators/indicators-all.js +197 -203
  452. package/indicators/indicators-all.js.map +1 -1
  453. package/indicators/indicators-all.src.js +649 -720
  454. package/indicators/indicators.js +12 -12
  455. package/indicators/indicators.js.map +1 -1
  456. package/indicators/indicators.src.js +188 -124
  457. package/indicators/keltner-channels.js +10 -10
  458. package/indicators/keltner-channels.js.map +1 -1
  459. package/indicators/keltner-channels.src.js +164 -118
  460. package/indicators/klinger.js +12 -13
  461. package/indicators/klinger.js.map +1 -1
  462. package/indicators/klinger.src.js +161 -184
  463. package/indicators/macd.js +2 -2
  464. package/indicators/macd.js.map +1 -1
  465. package/indicators/macd.src.js +2 -3
  466. package/indicators/mfi.js +1 -1
  467. package/indicators/mfi.src.js +1 -1
  468. package/indicators/momentum.js +1 -1
  469. package/indicators/momentum.src.js +1 -1
  470. package/indicators/natr.js +3 -3
  471. package/indicators/natr.js.map +1 -1
  472. package/indicators/natr.src.js +2 -4
  473. package/indicators/obv.js +1 -1
  474. package/indicators/obv.src.js +1 -1
  475. package/indicators/pivot-points.js +1 -1
  476. package/indicators/pivot-points.src.js +1 -1
  477. package/indicators/ppo.js +5 -6
  478. package/indicators/ppo.js.map +1 -1
  479. package/indicators/ppo.src.js +3 -75
  480. package/indicators/price-channel.js +9 -9
  481. package/indicators/price-channel.js.map +1 -1
  482. package/indicators/price-channel.src.js +207 -168
  483. package/indicators/price-envelopes.js +1 -1
  484. package/indicators/price-envelopes.src.js +1 -1
  485. package/indicators/psar.js +1 -1
  486. package/indicators/psar.src.js +1 -1
  487. package/indicators/regressions.js +1 -1
  488. package/indicators/regressions.src.js +9 -9
  489. package/indicators/roc.js +1 -1
  490. package/indicators/roc.src.js +1 -1
  491. package/indicators/rsi.js +1 -1
  492. package/indicators/rsi.src.js +1 -1
  493. package/indicators/slow-stochastic.js +5 -6
  494. package/indicators/slow-stochastic.js.map +1 -1
  495. package/indicators/slow-stochastic.src.js +2 -72
  496. package/indicators/stochastic.js +10 -10
  497. package/indicators/stochastic.js.map +1 -1
  498. package/indicators/stochastic.src.js +209 -164
  499. package/indicators/supertrend.js +10 -10
  500. package/indicators/supertrend.js.map +1 -1
  501. package/indicators/supertrend.src.js +6 -7
  502. package/indicators/tema.js +6 -7
  503. package/indicators/tema.js.map +1 -1
  504. package/indicators/tema.src.js +28 -75
  505. package/indicators/trendline.js +1 -1
  506. package/indicators/trendline.src.js +1 -1
  507. package/indicators/trix.js +4 -5
  508. package/indicators/trix.js.map +1 -1
  509. package/indicators/trix.src.js +8 -76
  510. package/indicators/volume-by-price.js +16 -16
  511. package/indicators/volume-by-price.js.map +1 -1
  512. package/indicators/volume-by-price.src.js +21 -3
  513. package/indicators/vwap.js +1 -1
  514. package/indicators/vwap.src.js +1 -1
  515. package/indicators/williams-r.js +5 -6
  516. package/indicators/williams-r.js.map +1 -1
  517. package/indicators/williams-r.src.js +41 -51
  518. package/indicators/wma.js +1 -1
  519. package/indicators/wma.src.js +1 -1
  520. package/indicators/zigzag.js +1 -1
  521. package/indicators/zigzag.src.js +1 -1
  522. package/modules/accessibility.d.ts +5 -0
  523. package/modules/accessibility.js +234 -216
  524. package/modules/accessibility.js.map +1 -1
  525. package/modules/accessibility.src.d.ts +5 -0
  526. package/modules/accessibility.src.js +9709 -8608
  527. package/modules/annotations-advanced.d.ts +30 -0
  528. package/modules/annotations-advanced.js +191 -165
  529. package/modules/annotations-advanced.js.map +1 -1
  530. package/modules/annotations-advanced.src.d.ts +30 -0
  531. package/modules/annotations-advanced.src.js +1578 -320
  532. package/modules/annotations.js +121 -107
  533. package/modules/annotations.js.map +1 -1
  534. package/modules/annotations.src.js +958 -229
  535. package/modules/arrow-symbols.js +1 -1
  536. package/modules/arrow-symbols.src.js +1 -1
  537. package/modules/boost-canvas.js +15 -15
  538. package/modules/boost-canvas.js.map +1 -1
  539. package/modules/boost-canvas.src.js +3 -3
  540. package/modules/boost.js +79 -79
  541. package/modules/boost.js.map +1 -1
  542. package/modules/boost.src.js +10 -9
  543. package/modules/broken-axis.js +1 -1
  544. package/modules/broken-axis.src.js +1 -1
  545. package/modules/bullet.js +1 -1
  546. package/modules/bullet.src.js +1 -1
  547. package/modules/coloraxis.js +24 -24
  548. package/modules/coloraxis.js.map +1 -1
  549. package/modules/coloraxis.src.js +69 -98
  550. package/modules/current-date-indicator.js +4 -4
  551. package/modules/current-date-indicator.js.map +1 -1
  552. package/modules/current-date-indicator.src.js +4 -4
  553. package/modules/cylinder.js +1 -1
  554. package/modules/cylinder.src.js +1 -1
  555. package/modules/data.js +19 -19
  556. package/modules/data.js.map +1 -1
  557. package/modules/data.src.js +9 -6
  558. package/modules/datagrouping.js +20 -20
  559. package/modules/datagrouping.js.map +1 -1
  560. package/modules/datagrouping.src.js +33 -19
  561. package/modules/debugger.js +1 -1
  562. package/modules/debugger.src.js +1 -1
  563. package/modules/dependency-wheel.js +11 -11
  564. package/modules/dependency-wheel.js.map +1 -1
  565. package/modules/dependency-wheel.src.js +4 -7
  566. package/modules/dotplot.js +1 -1
  567. package/modules/dotplot.src.js +1 -1
  568. package/modules/drag-panes.js +8 -8
  569. package/modules/drag-panes.js.map +1 -1
  570. package/modules/drag-panes.src.js +3 -3
  571. package/modules/draggable-points.js +1 -1
  572. package/modules/draggable-points.src.js +1 -1
  573. package/modules/drilldown.js +24 -24
  574. package/modules/drilldown.js.map +1 -1
  575. package/modules/drilldown.src.js +4 -4
  576. package/modules/dumbbell.js +17 -17
  577. package/modules/dumbbell.js.map +1 -1
  578. package/modules/dumbbell.src.js +4 -4
  579. package/modules/export-data.js +1 -1
  580. package/modules/export-data.js.map +1 -1
  581. package/modules/export-data.src.js +3 -3
  582. package/modules/exporting.js +39 -38
  583. package/modules/exporting.js.map +1 -1
  584. package/modules/exporting.src.js +98 -67
  585. package/modules/full-screen.js +1 -1
  586. package/modules/full-screen.src.js +1 -1
  587. package/modules/funnel.js +12 -12
  588. package/modules/funnel.js.map +1 -1
  589. package/modules/funnel.src.js +9 -6
  590. package/modules/funnel3d.js +1 -1
  591. package/modules/funnel3d.src.js +1 -1
  592. package/modules/gantt.js +217 -218
  593. package/modules/gantt.js.map +1 -1
  594. package/modules/gantt.src.js +167 -152
  595. package/modules/grid-axis.js +1 -1
  596. package/modules/grid-axis.src.js +1 -1
  597. package/modules/heatmap.js +39 -39
  598. package/modules/heatmap.js.map +1 -1
  599. package/modules/heatmap.src.js +177 -162
  600. package/modules/heikinashi.js +1 -1
  601. package/modules/heikinashi.src.js +4 -4
  602. package/modules/histogram-bellcurve.js +13 -13
  603. package/modules/histogram-bellcurve.js.map +1 -1
  604. package/modules/histogram-bellcurve.src.js +91 -86
  605. package/modules/hollowcandlestick.js +9 -9
  606. package/modules/hollowcandlestick.js.map +1 -1
  607. package/modules/hollowcandlestick.src.js +11 -11
  608. package/modules/item-series.js +1 -1
  609. package/modules/item-series.src.js +1 -1
  610. package/modules/lollipop.js +1 -1
  611. package/modules/lollipop.src.js +1 -1
  612. package/modules/map.d.ts +136 -14
  613. package/modules/map.js +142 -122
  614. package/modules/map.js.map +1 -1
  615. package/modules/map.src.d.ts +136 -14
  616. package/modules/map.src.js +2129 -1029
  617. package/modules/marker-clusters.js +36 -36
  618. package/modules/marker-clusters.js.map +1 -1
  619. package/modules/marker-clusters.src.js +173 -142
  620. package/modules/networkgraph.d.ts +12 -1
  621. package/modules/networkgraph.js +49 -49
  622. package/modules/networkgraph.js.map +1 -1
  623. package/modules/networkgraph.src.d.ts +12 -1
  624. package/modules/networkgraph.src.js +91 -43
  625. package/modules/no-data-to-display.js +5 -5
  626. package/modules/no-data-to-display.js.map +1 -1
  627. package/modules/no-data-to-display.src.js +3 -3
  628. package/modules/offline-exporting.js +17 -17
  629. package/modules/offline-exporting.js.map +1 -1
  630. package/modules/offline-exporting.src.js +13 -13
  631. package/modules/oldie-polyfills.js +1 -1
  632. package/modules/oldie-polyfills.src.js +1 -1
  633. package/modules/oldie.js +26 -26
  634. package/modules/oldie.js.map +1 -1
  635. package/modules/oldie.src.js +4 -4
  636. package/modules/organization.js +13 -13
  637. package/modules/organization.js.map +1 -1
  638. package/modules/organization.src.js +4 -4
  639. package/modules/overlapping-datalabels.js +1 -1
  640. package/modules/overlapping-datalabels.src.js +1 -1
  641. package/modules/parallel-coordinates.js +1 -1
  642. package/modules/parallel-coordinates.src.js +1 -1
  643. package/modules/pareto.js +7 -7
  644. package/modules/pareto.js.map +1 -1
  645. package/modules/pareto.src.js +89 -78
  646. package/modules/pathfinder.js +1 -1
  647. package/modules/pathfinder.src.js +1 -1
  648. package/modules/pattern-fill.js +1 -1
  649. package/modules/pattern-fill.src.js +1 -1
  650. package/modules/price-indicator.js +1 -1
  651. package/modules/price-indicator.src.js +1 -1
  652. package/modules/pyramid3d.js +1 -1
  653. package/modules/pyramid3d.src.js +1 -1
  654. package/modules/sankey.d.ts +12 -1
  655. package/modules/sankey.js +29 -29
  656. package/modules/sankey.js.map +1 -1
  657. package/modules/sankey.src.d.ts +12 -1
  658. package/modules/sankey.src.js +300 -176
  659. package/modules/series-label.js +1 -1
  660. package/modules/series-label.src.js +1 -1
  661. package/modules/solid-gauge.js +1 -1
  662. package/modules/solid-gauge.src.js +1 -1
  663. package/modules/sonification.js +59 -55
  664. package/modules/sonification.js.map +1 -1
  665. package/modules/sonification.src.js +3034 -2553
  666. package/modules/static-scale.js +1 -1
  667. package/modules/static-scale.src.js +1 -1
  668. package/modules/stock-tools.js +177 -164
  669. package/modules/stock-tools.js.map +1 -1
  670. package/modules/stock-tools.src.js +1001 -131
  671. package/modules/stock.d.ts +39 -6
  672. package/modules/stock.js +204 -196
  673. package/modules/stock.js.map +1 -1
  674. package/modules/stock.src.d.ts +39 -6
  675. package/modules/stock.src.js +1689 -1081
  676. package/modules/streamgraph.js +1 -1
  677. package/modules/streamgraph.src.js +1 -1
  678. package/modules/sunburst.js +61 -60
  679. package/modules/sunburst.js.map +1 -1
  680. package/modules/sunburst.src.js +329 -266
  681. package/modules/tilemap.js +17 -17
  682. package/modules/tilemap.js.map +1 -1
  683. package/modules/tilemap.src.js +3 -4
  684. package/modules/timeline.js +18 -18
  685. package/modules/timeline.js.map +1 -1
  686. package/modules/timeline.src.js +5 -5
  687. package/modules/treegrid.js +56 -57
  688. package/modules/treegrid.js.map +1 -1
  689. package/modules/treegrid.src.js +126 -120
  690. package/modules/treemap.js +41 -41
  691. package/modules/treemap.js.map +1 -1
  692. package/modules/treemap.src.js +319 -254
  693. package/modules/variable-pie.js +1 -1
  694. package/modules/variable-pie.src.js +1 -1
  695. package/modules/variwide.js +1 -1
  696. package/modules/variwide.src.js +1 -1
  697. package/modules/vector.js +1 -1
  698. package/modules/vector.src.js +1 -1
  699. package/modules/venn.js +31 -31
  700. package/modules/venn.js.map +1 -1
  701. package/modules/venn.src.js +731 -721
  702. package/modules/windbarb.js +15 -15
  703. package/modules/windbarb.js.map +1 -1
  704. package/modules/windbarb.src.js +90 -62
  705. package/modules/wordcloud.js +23 -24
  706. package/modules/wordcloud.js.map +1 -1
  707. package/modules/wordcloud.src.js +897 -949
  708. package/modules/xrange.js +2 -2
  709. package/modules/xrange.js.map +1 -1
  710. package/modules/xrange.src.js +2 -1
  711. package/package.json +1 -1
  712. package/themes/avocado.js +1 -1
  713. package/themes/avocado.src.js +1 -1
  714. package/themes/dark-blue.js +1 -1
  715. package/themes/dark-blue.src.js +1 -1
  716. package/themes/dark-green.js +1 -1
  717. package/themes/dark-green.src.js +1 -1
  718. package/themes/dark-unica.js +1 -1
  719. package/themes/dark-unica.src.js +1 -1
  720. package/themes/gray.js +1 -1
  721. package/themes/gray.src.js +1 -1
  722. package/themes/grid-light.js +1 -1
  723. package/themes/grid-light.src.js +1 -1
  724. package/themes/grid.js +1 -1
  725. package/themes/grid.src.js +1 -1
  726. package/themes/high-contrast-dark.js +1 -1
  727. package/themes/high-contrast-dark.src.js +1 -1
  728. package/themes/high-contrast-light.js +1 -1
  729. package/themes/high-contrast-light.src.js +1 -1
  730. package/themes/sand-signika.js +1 -1
  731. package/themes/sand-signika.src.js +1 -1
  732. package/themes/skies.js +1 -1
  733. package/themes/skies.src.js +1 -1
  734. package/themes/sunset.js +1 -1
  735. package/themes/sunset.src.js +1 -1
  736. package/es-modules/Core/Axis/MapAxis.js +0 -157
  737. package/es-modules/Core/Color/Palette.js +0 -82
  738. package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
  739. package/es-modules/Mixins/ColorMapSeries.js +0 -82
  740. package/es-modules/Mixins/ColorSeries.js +0 -77
  741. package/es-modules/Mixins/DerivedSeries.js +0 -118
  742. package/es-modules/Mixins/DrawPoint.js +0 -81
  743. package/es-modules/Mixins/IndicatorRequired.js +0 -56
  744. package/es-modules/Mixins/Navigation.js +0 -54
  745. package/es-modules/Mixins/NelderMead.js +0 -132
  746. package/es-modules/Mixins/Polygon.js +0 -259
  747. package/es-modules/Mixins/ReduceArray.js +0 -54
package/modules/stock.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- Highstock JS v9.2.2 (2021-08-24)
2
+ Highstock JS v9.3.0 (2021-10-21)
3
3
 
4
4
  Highcharts Stock as a plugin for Highcharts
5
5
 
@@ -7,199 +7,207 @@
7
7
 
8
8
  License: www.highcharts.com/license
9
9
  */
10
- 'use strict';(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/stock",["highcharts"],function(K){a(K);a.Highcharts=K;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function K(a,m,u,y){a.hasOwnProperty(m)||(a[m]=y.apply(null,u))}a=a?a._modules:{};K(a,"Core/Axis/OrdinalAxis.js",[a["Core/Axis/Axis.js"],a["Core/Globals.js"],a["Core/Series/Series.js"],a["Core/Utilities.js"]],
11
- function(a,m,u,y){var n=y.addEvent,G=y.correctFloat,E=y.css,q=y.defined,d=y.error,b=y.pick,J=y.timeUnits,k=[],t;(function(a){function t(g,w,l,f,h,p,c){void 0===h&&(h=[]);void 0===p&&(p=0);var v={},A=this.options.tickPixelInterval,F=this.chart.time,H=[],x,C,z=0,e=[],b=-Number.MAX_VALUE;if(!this.options.ordinal&&!this.options.breaks||!h||3>h.length||"undefined"===typeof w)return F.getTimeTicks.apply(F,arguments);var B=h.length;for(x=0;x<B;x++){var k=x&&h[x-1]>l;h[x]<w&&(z=x);if(x===B-1||h[x+1]-h[x]>
12
- 5*p||k){if(h[x]>b){for(C=F.getTimeTicks(g,h[z],h[x],f);C.length&&C[0]<=b;)C.shift();C.length&&(b=C[C.length-1]);H.push(e.length);e=e.concat(C)}z=x+1}if(k)break}if(C){C=C.info;if(c&&C.unitRange<=J.hour){x=e.length-1;for(z=1;z<x;z++)if(F.dateFormat("%d",e[z])!==F.dateFormat("%d",e[z-1])){v[e[z]]="day";var r=!0}r&&(v[e[0]]="day");C.higherRanks=v}C.segmentStarts=H;e.info=C}else d(12,!1,this.chart);if(c&&q(A)){C=e.length;F=[];z=[];x=void 0;for(r=C;r--;)H=this.translate(e[r]),x&&(z[r]=x-H),F[r]=x=H;z.sort();
13
- z=z[Math.floor(z.length/2)];z<.6*A&&(z=null);r=e[C-1]>l?C-1:C;for(x=void 0;r--;)H=F[r],C=Math.abs(x-H),x&&C<.8*A&&(null===z||C<.8*z)?(v[e[r]]&&!v[e[r+1]]?(C=r+1,x=H):C=r,e.splice(C,1)):x=H}return e}function e(g){var w=this.ordinal.positions;if(!w)return g;var l=w.length-1;if(0>g)g=w[0];else if(g>l)g=w[l];else{l=Math.floor(g);var f=g-l}return"undefined"!==typeof f&&"undefined"!==typeof w[l]?w[l]+(f?f*(w[l+1]-w[l]):0):g}function O(g){var w=this.ordinal,l=w.positions;if(!l)return g;var f=(g-(this.old?
14
- this.old.min:this.min))*(this.old?this.old.transA:this.transA)+this.minPixelPadding;0<f&&f<this.left+this.len||(w.extendedOrdinalPositions||(w.extendedOrdinalPositions=w.getExtendedPositions()),l=w.extendedOrdinalPositions);if(l&&l.length){g=w.getIndexOfPoint(f,l);w=G(g%1);if(0<=g&&g<l.length)return l[Math.floor(g)]+w*(l[Math.ceil(g)]-l[Math.floor(g)]);w=l.length;f=l[0];l=l[w-1];var h=(l-f)/(w-1);return 0>g?f+h*g:l+h*(g-w)}return g}function r(g,w){var l=a.Additions.findIndexOf(g,w,!0);return g[l]===
15
- w?l:l+(w-g[l])/(g[l+1]-g[l])}function S(){this.ordinal||(this.ordinal=new a.Additions(this))}function D(){this.isXAxis&&q(this.options.overscroll)&&this.max===this.dataMax&&(!this.chart.mouseIsDown||this.isInternal)&&(!this.eventArgs||this.eventArgs&&"navigator"!==this.eventArgs.trigger)&&(this.max+=this.options.overscroll,!this.isInternal&&q(this.userMin)&&(this.min+=this.options.overscroll))}function B(){this.horiz&&!this.isDirty&&(this.isDirty=this.isOrdinal&&this.chart.navigator&&!this.chart.navigator.adaptToUpdatedData)}
16
- function T(){this.ordinal&&(this.ordinal.beforeSetTickPositions(),this.tickInterval=this.ordinal.postProcessTickInterval(this.tickInterval))}function M(g){var w=this.xAxis[0],l=w.options.overscroll,f=g.originalEvent.chartX,h=this.options.chart.panning,p=!1;if(h&&"y"!==h.type&&w.options.ordinal&&w.series.length){var c=this.mouseDownX,v=w.getExtremes(),A=v.dataMax,F=v.min,H=v.max,x=this.hoverPoints,C=w.closestPointRange||w.ordinal&&w.ordinal.overscrollPointsRange;c=(c-f)/(w.translationSlope*(w.ordinal.slope||
17
- C));C={ordinal:{positions:w.ordinal.getExtendedPositions()}};var z=w.index2val,e=w.val2lin,b=void 0,B=b=void 0,r=void 0;C.ordinal.positions?1<Math.abs(c)&&(x&&x.forEach(function(c){c.setState()}),0>c?(B=C,r=w.ordinal.positions?w:C):(B=w.ordinal.positions?w:C,r=C),b=r.ordinal.positions,A>b[b.length-1]&&b.push(A),this.fixedRange=H-F,b=w.navigatorAxis.toFixedRange(null,null,z.apply(B,[e.apply(B,[F,!0])+c]),z.apply(r,[e.apply(r,[H,!0])+c])),b.min>=Math.min(v.dataMin,F)&&b.max<=Math.max(A,H)+l&&w.setExtremes(b.min,
18
- b.max,!0,!1,{trigger:"pan"}),this.mouseDownX=f,E(this.container,{cursor:"move"})):p=!0}else p=!0;p||h&&/y/.test(h.type)?l&&(w.max=w.dataMax+l):g.preventDefault()}function N(){var g=this.xAxis;g&&g.options.ordinal&&(delete g.ordinal.index,delete g.ordinal.extendedOrdinalPositions)}function P(g,w){var l=this.ordinal,f=l.positions,h=l.slope,p=l.extendedOrdinalPositions;if(!f)return g;var c=f.length;if(f[0]<=g&&f[c-1]>=g)g=r(f,g);else{p||(p=l.getExtendedPositions&&l.getExtendedPositions(),l.extendedOrdinalPositions=
19
- p);if(!p||!p.length)return g;c=p.length;h||(h=(p[c-1]-p[0])/c);f=r(p,f[0]);g>=p[0]&&g<=p[c-1]?g=r(p,g)-f:g<p[0]?(g=p[0]-g,g=-f-g/h):(g-=p[c-1],g=g/h+c-f)}return w?g:h*(g||0)+l.offset}a.compose=function(g,w,l){if(-1===k.indexOf(g)){k.push(g);var f=g.prototype;f.getTimeTicks=t;f.index2val=e;f.lin2val=O;f.val2lin=P;f.ordinal2lin=f.val2lin;n(g,"afterInit",S);n(g,"foundExtremes",D);n(g,"afterSetScale",B);n(g,"initialAxisTranslation",T)}-1===k.indexOf(l)&&(k.push(l),n(l,"pan",M));-1===k.indexOf(w)&&(k.push(w),
20
- n(w,"updatedData",N));return g};var L=function(){function g(g){this.index={};this.axis=g}g.prototype.beforeSetTickPositions=function(){var g=this.axis,l=g.ordinal,f=g.getExtremes(),h=f.min,p=f.max,c=g.isXAxis&&!!g.options.breaks;f=g.options.ordinal;var v=g.chart.options.chart.ignoreHiddenSeries,A,F,H,x=[],C=Number.MAX_VALUE,z=!1;if(f||c){g.series.forEach(function(p,f){A=[];if(!(v&&!1===p.visible||!1===p.takeOrdinalPosition&&!c)&&(x=x.concat(p.processedXData),e=x.length,x.sort(function(c,v){return c-
21
- v}),C=Math.min(C,b(p.closestPointRange,C)),e)){for(f=0;f<e-1;)x[f]!==x[f+1]&&A.push(x[f+1]),f++;A[0]!==x[0]&&A.unshift(x[0]);x=A}p.isSeriesBoosting&&(H=!0)});H&&(x.length=0);var e=x.length;if(2<e){var B=x[1]-x[0];for(F=e-1;F--&&!z;)x[F+1]-x[F]!==B&&(z=!0);!g.options.keepOrdinalPadding&&(x[0]-h>B||p-x[x.length-1]>B)&&(z=!0)}else g.options.overscroll&&(2===e?C=x[1]-x[0]:1===e?(C=g.options.overscroll,x=[x[0],x[0]+C]):C=l.overscrollPointsRange);z||g.forceOrdinal?(g.options.overscroll&&(l.overscrollPointsRange=
22
- C,x=x.concat(l.getOverscrollPositions())),l.positions=x,B=g.ordinal2lin(Math.max(h,x[0]),!0),F=Math.max(g.ordinal2lin(Math.min(p,x[x.length-1]),!0),1),l.slope=p=(p-h)/(F-B),l.offset=h-B*p):(l.overscrollPointsRange=b(g.closestPointRange,l.overscrollPointsRange),l.positions=g.ordinal.slope=l.offset=void 0)}g.isOrdinal=f&&z;l.groupIntervalFactor=null};g.findIndexOf=function(g,l,f){for(var h=0,p=g.length-1,c;h<p;)c=Math.ceil((h+p)/2),g[c]<=l?h=c:p=c-1;return g[h]===l?h:f?h:-1};g.prototype.getExtendedPositions=
23
- function(){var g=this,l=g.axis,f=l.constructor.prototype,h=l.chart,p=l.series[0].currentDataGrouping,c=p?p.count+p.unitName:"raw",v=l.options.overscroll,A=l.getExtremes(),F=void 0,H=g.index;H||(H=g.index={});if(!H[c]){var x={series:[],chart:h,forceOrdinal:!1,getExtremes:function(){return{min:A.dataMin,max:A.dataMax+v}},getGroupPixelWidth:f.getGroupPixelWidth,getTimeTicks:f.getTimeTicks,options:{ordinal:!0},ordinal:{getGroupIntervalFactor:this.getGroupIntervalFactor},ordinal2lin:f.ordinal2lin,getIndexOfPoint:f.getIndexOfPoint,
24
- val2lin:f.val2lin};x.ordinal.axis=x;l.series.forEach(function(c){F={xAxis:x,xData:c.xData.slice(),chart:h,destroyGroupedData:m.noop,getProcessedData:u.prototype.getProcessedData,applyGrouping:u.prototype.applyGrouping};F.xData=F.xData.concat(g.getOverscrollPositions());F.options={dataGrouping:p?{firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",enabled:!0,forced:!0,approximation:"open",units:[[p.unitName,[p.count]]]}:{enabled:!1}};x.series.push(F);c.processData.apply(F)});l.applyGrouping.call(x);
25
- F.closestPointRange!==F.basePointRange&&F.currentDataGrouping&&(x.forceOrdinal=!0);l.ordinal.beforeSetTickPositions.apply({axis:x});H[c]=x.ordinal.positions}return H[c]};g.prototype.getGroupIntervalFactor=function(g,l,f){f=f.processedXData;var h=f.length,p=[];var c=this.groupIntervalFactor;if(!c){for(c=0;c<h-1;c++)p[c]=f[c+1]-f[c];p.sort(function(c,p){return c-p});p=p[Math.floor(h/2)];g=Math.max(g,f[0]);l=Math.min(l,f[h-1]);this.groupIntervalFactor=c=h*p/(l-g)}return c};g.prototype.getIndexOfPoint=
26
- function(e,l){var f=this.axis,h=this.positions?this.positions[0]:0,p=f.series[0].points&&f.series[0].points[0]&&f.series[0].points[0].plotX||f.minPixelPadding;1<f.series.length&&f.series.forEach(function(c){q(c.points[0])&&q(c.points[0].plotX)&&c.points[0].plotX<p&&(p=c.points[0].plotX)});e=(e-p)/(f.translationSlope*(this.slope||f.closestPointRange||this.overscrollPointsRange));return g.findIndexOf(l,h)+e};g.prototype.getOverscrollPositions=function(){var g=this.axis,l=g.options.overscroll,f=this.overscrollPointsRange,
27
- h=[],p=g.dataMax;if(q(f))for(;p<=g.dataMax+l;)p+=f,h.push(p);return h};g.prototype.postProcessTickInterval=function(g){var l=this.axis,f=this.slope;return f?l.options.breaks?l.closestPointRange||g:g/(f/l.closestPointRange):g};return g}();a.Additions=L})(t||(t={}));return t});K(a,"Core/Axis/BrokenAxis.js",[a["Extensions/Stacking.js"],a["Core/Utilities.js"]],function(a,m){var u=m.addEvent,y=m.find,n=m.fireEvent,G=m.isArray,E=m.isNumber,q=m.pick,d;(function(b){function d(){"undefined"!==typeof this.brokenAxis&&
28
- this.brokenAxis.setBreaks(this.options.breaks,!1)}function k(){this.brokenAxis&&this.brokenAxis.hasBreaks&&(this.options.ordinal=!1)}function t(){var e=this.brokenAxis;if(e&&e.hasBreaks){for(var b=this.tickPositions,r=this.tickPositions.info,d=[],k=0;k<b.length;k++)e.isInAnyBreak(b[k])||d.push(b[k]);this.tickPositions=d;this.tickPositions.info=r}}function S(){this.brokenAxis||(this.brokenAxis=new D(this))}function Q(){var e=this.options.connectNulls,b=this.points,r=this.xAxis,d=this.yAxis;if(this.isDirty)for(var k=
29
- b.length;k--;){var a=b[k],g=!(null===a.y&&!1===e)&&(r&&r.brokenAxis&&r.brokenAxis.isInAnyBreak(a.x,!0)||d&&d.brokenAxis&&d.brokenAxis.isInAnyBreak(a.y,!0));a.visible=g?!1:!1!==a.options.visible}}function e(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,q(this.pointArrayMap,["y"]))}function O(e,b){var r=this,B=r.points,d,k,g,w;if(e&&e.brokenAxis&&e.brokenAxis.hasBreaks){var l=e.brokenAxis;b.forEach(function(f){d=l&&l.breakArray||[];k=e.isXAxis?e.min:q(r.options.threshold,e.min);B.forEach(function(h){w=
30
- q(h["stack"+f.toUpperCase()],h[f]);d.forEach(function(p){if(E(k)&&E(w)){g=!1;if(k<p.from&&w>p.to||k>p.from&&w<p.from)g="pointBreak";else if(k<p.from&&w>p.from&&w<p.to||k>p.from&&w>p.to&&w<p.from)g="pointInBreak";g&&n(e,g,{point:h,brk:p})}})})})}}function r(){var e=this.currentDataGrouping,b=e&&e.gapSize;e=this.points.slice();var r=this.yAxis,d=this.options.gapSize,k=e.length-1,t;if(d&&0<k)for("value"!==this.options.gapUnit&&(d*=this.basePointRange),b&&b>d&&b>=this.basePointRange&&(d=b),t=void 0;k--;)t&&
31
- !1!==t.visible||(t=e[k+1]),b=e[k],!1!==t.visible&&!1!==b.visible&&(t.x-b.x>d&&(t=(b.x+t.x)/2,e.splice(k+1,0,{isNull:!0,x:t}),r.stacking&&this.options.stacking&&(t=r.stacking.stacks[this.stackKey][t]=new a(r,r.options.stackLabels,!1,t,this.stack),t.total=0)),t=b);return this.getGraphPath(e)}var I=[];b.compose=function(b,a){-1===I.indexOf(b)&&(I.push(b),b.keepProps.push("brokenAxis"),u(b,"init",S),u(b,"afterInit",d),u(b,"afterSetTickPositions",t),u(b,"afterSetOptions",k));if(-1===I.indexOf(a)){I.push(a);
32
- var B=a.prototype;B.drawBreaks=O;B.gappedPath=r;u(a,"afterGeneratePoints",Q);u(a,"afterRender",e)}return b};var D=function(){function e(e){this.hasBreaks=!1;this.axis=e}e.isInBreak=function(e,b){var r=e.repeat||Infinity,d=e.from,k=e.to-e.from;b=b>=d?(b-d)%r:r-(d-b)%r;return e.inclusive?b<=k:b<k&&0!==b};e.lin2Val=function(b){var r=this.brokenAxis;r=r&&r.breakArray;if(!r||!E(b))return b;var d;for(d=0;d<r.length;d++){var k=r[d];if(k.from>=b)break;else k.to<b?b+=k.len:e.isInBreak(k,b)&&(b+=k.len)}return b};
33
- e.val2Lin=function(b){var r=this.brokenAxis;r=r&&r.breakArray;if(!r||!E(b))return b;var d=b,k;for(k=0;k<r.length;k++){var a=r[k];if(a.to<=b)d-=a.len;else if(a.from>=b)break;else if(e.isInBreak(a,b)){d-=b-a.from;break}}return d};e.prototype.findBreakAt=function(e,b){return y(b,function(b){return b.from<e&&e<b.to})};e.prototype.isInAnyBreak=function(b,r){var d=this.axis,k=d.options.breaks||[],a=k.length,g;if(a&&E(b)){for(;a--;)if(e.isInBreak(k[a],b)){var w=!0;g||(g=q(k[a].showPoints,!d.isXAxis))}var l=
34
- w&&r?w&&!g:w}return l};e.prototype.setBreaks=function(b,r){var k=this,d=k.axis,a=G(b)&&!!b.length;d.isDirty=k.hasBreaks!==a;k.hasBreaks=a;d.options.breaks=d.userOptions.breaks=b;d.forceRedraw=!0;d.series.forEach(function(g){g.isDirty=!0});a||d.val2lin!==e.val2Lin||(delete d.val2lin,delete d.lin2val);a&&(d.userOptions.ordinal=!1,d.lin2val=e.lin2Val,d.val2lin=e.val2Lin,d.setExtremes=function(g,e,l,f,h){if(k.hasBreaks){for(var p=this.options.breaks||[],c;c=k.findBreakAt(g,p);)g=c.to;for(;c=k.findBreakAt(e,
35
- p);)e=c.from;e<g&&(e=g)}d.constructor.prototype.setExtremes.call(this,g,e,l,f,h)},d.setAxisTranslation=function(){d.constructor.prototype.setAxisTranslation.call(this);k.unitLength=void 0;if(k.hasBreaks){var g=d.options.breaks||[],b=[],l=[],f=q(d.pointRangePadding,0),h=0,p,c=d.userMin||d.min,v=d.userMax||d.max,A;g.forEach(function(f){p=f.repeat||Infinity;E(c)&&E(v)&&(e.isInBreak(f,c)&&(c+=f.to%p-c%p),e.isInBreak(f,v)&&(v-=v%p-f.from%p))});g.forEach(function(f){H=f.from;p=f.repeat||Infinity;if(E(c)&&
36
- E(v)){for(;H-p>c;)H-=p;for(;H<c;)H+=p;for(A=H;A<v;A+=p)b.push({value:A,move:"in"}),b.push({value:A+f.to-f.from,move:"out",size:f.breakSize})}});b.sort(function(c,v){return c.value===v.value?("in"===c.move?0:1)-("in"===v.move?0:1):c.value-v.value});var F=0;var H=c;b.forEach(function(c){F+="in"===c.move?1:-1;1===F&&"in"===c.move&&(H=c.value);0===F&&E(H)&&(l.push({from:H,to:c.value,len:c.value-H-(c.size||0)}),h+=c.value-H-(c.size||0))});k.breakArray=l;E(c)&&E(v)&&E(d.min)&&(k.unitLength=v-c-h+f,n(d,
37
- "afterBreaks"),d.staticScale?d.transA=d.staticScale:k.unitLength&&(d.transA*=(v-d.min+f)/k.unitLength),f&&(d.minPixelPadding=d.transA*(d.minPointOffset||0)),d.min=c,d.max=v)}});q(r,!0)&&d.chart.redraw()};return e}();b.Additions=D})(d||(d={}));return d});K(a,"masters/modules/broken-axis.src.js",[a["Core/Globals.js"],a["Core/Axis/BrokenAxis.js"]],function(a,m){m.compose(a.Axis,a.Series)});K(a,"Extensions/DataGrouping.js",[a["Core/Axis/Axis.js"],a["Core/Axis/DateTimeAxis.js"],a["Core/FormatUtilities.js"],
38
- a["Core/Globals.js"],a["Core/Series/Point.js"],a["Core/Series/Series.js"],a["Core/Tooltip.js"],a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,m,u,y,n,R,E,q,d){var b=u.format,J=R.prototype;u=d.addEvent;var k=d.arrayMax,t=d.arrayMin,S=d.correctFloat,Q=d.defined,e=d.error,O=d.extend,r=d.isNumber,I=d.merge,D=d.pick;"";var B=y.approximations={sum:function(g){var e=g.length;if(!e&&g.hasNulls)var l=null;else if(e)for(l=0;e--;)l+=g[e];return l},average:function(g){var e=g.length;g=B.sum(g);
39
- r(g)&&e&&(g=S(g/e));return g},averages:function(){var g=[];[].forEach.call(arguments,function(e){g.push(B.average(e))});return"undefined"===typeof g[0]?void 0:g},open:function(g){return g.length?g[0]:g.hasNulls?null:void 0},high:function(g){return g.length?k(g):g.hasNulls?null:void 0},low:function(g){return g.length?t(g):g.hasNulls?null:void 0},close:function(g){return g.length?g[g.length-1]:g.hasNulls?null:void 0},ohlc:function(g,e,l,f){g=B.open(g);e=B.high(e);l=B.low(l);f=B.close(f);if(r(g)||r(e)||
40
- r(l)||r(f))return[g,e,l,f]},range:function(g,e){g=B.low(g);e=B.high(e);if(r(g)||r(e))return[g,e];if(null===g&&null===e)return null}};d=function(e,b,l,f){var h=this,p=h.data,c=h.options&&h.options.data,v=[],A=[],g=[],d=e.length,x=!!b,C=[],z=h.pointArrayMap,k=z&&z.length,a=["x"].concat(z||["y"]),w=this.options.dataGrouping&&this.options.dataGrouping.groupAll,t=0,J=0,D;f="function"===typeof f?f:B[f]?B[f]:B[h.getDGApproximation&&h.getDGApproximation()||"average"];k?z.forEach(function(){C.push([])}):C.push([]);
41
- var O=k||1;for(D=0;D<=d&&!(e[D]>=l[0]);D++);for(D;D<=d;D++){for(;"undefined"!==typeof l[t+1]&&e[D]>=l[t+1]||D===d;){var q=l[t];h.dataGroupInfo={start:w?J:h.cropStart+J,length:C[0].length};var S=f.apply(h,C);h.pointClass&&!Q(h.dataGroupInfo.options)&&(h.dataGroupInfo.options=I(h.pointClass.prototype.optionsToObject.call({series:h},h.options.data[h.cropStart+J])),a.forEach(function(c){delete h.dataGroupInfo.options[c]}));"undefined"!==typeof S&&(v.push(q),A.push(S),g.push(h.dataGroupInfo));J=D;for(q=
42
- 0;q<O;q++)C[q].length=0,C[q].hasNulls=!1;t+=1;if(D===d)break}if(D===d)break;if(z){q=h.options.dataGrouping&&h.options.dataGrouping.groupAll?D:h.cropStart+D;S=p&&p[q]||h.pointClass.prototype.applyOptions.apply({series:h},[c[q]]);var n=void 0;for(q=0;q<k;q++)n=S[z[q]],r(n)?C[q].push(n):null===n&&(C[q].hasNulls=!0)}else q=x?b[D]:null,r(q)?C[0].push(q):null===q&&(C[0].hasNulls=!0)}return{groupedXData:v,groupedYData:A,groupMap:g}};var G={approximations:B,groupData:d},M=J.generatePoints,N={groupPixelWidth:2,
43
- dateTimeLabelFormats:{millisecond:["%A, %b %e, %H:%M:%S.%L","%A, %b %e, %H:%M:%S.%L","-%H:%M:%S.%L"],second:["%A, %b %e, %H:%M:%S","%A, %b %e, %H:%M:%S","-%H:%M:%S"],minute:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],hour:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],day:["%A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],week:["Week from %A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],month:["%B %Y","%B","-%B %Y"],year:["%Y","%Y","-%Y"]}},P={line:{},spline:{},area:{},areaspline:{},arearange:{},column:{groupPixelWidth:10},
44
- columnrange:{groupPixelWidth:10},candlestick:{groupPixelWidth:10},ohlc:{groupPixelWidth:5},heikinashi:{groupPixelWidth:10}},L=y.defaultDataGroupingUnits=[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1]],["week",[1]],["month",[1,3,6]],["year",null]];J.getDGApproximation=function(){return this.is("arearange")?"range":this.is("ohlc")?"ohlc":this.is("column")?"sum":"average"};J.groupData=d;J.applyGrouping=function(){var g=
45
- this.chart,b=this.options.dataGrouping,l=!1!==this.allowDG&&b&&D(b.enabled,g.options.isStock),f=this.visible||!g.options.chart.ignoreHiddenSeries,h,p=this.currentDataGrouping,c=!1;l&&!this.requireSorting&&(this.requireSorting=c=!0);var v=!this.isCartesian||this.isDirty||this.xAxis.isDirty||this.yAxis.isDirty?void 0:!1;c&&(this.requireSorting=!1);if(!v&&l){this.destroyGroupedData();v=b.groupAll?this.xData:this.processedXData;var A=b.groupAll?this.yData:this.processedYData;c=g.plotSizeX;l=this.xAxis;
46
- var F=l.options.ordinal,d=this.groupPixelWidth;if(d&&v&&v.length){this.isDirty=h=!0;this.points=null;var x=l.getExtremes();var C=x.min;x=x.max;F=F&&l.ordinal&&l.ordinal.getGroupIntervalFactor(C,x,this)||1;c=l.getTimeTicks(m.Additions.prototype.normalizeTimeTickInterval(d*(x-C)/c*F,b.units||L),Math.min(C,v[0]),Math.max(x,v[v.length-1]),l.options.startOfWeek,v,this.closestPointRange);d=J.groupData.apply(this,[v,A,c,b.approximation]);v=d.groupedXData;A=d.groupedYData;F=0;b&&b.smoothed&&v.length&&(b.firstAnchor=
47
- "firstPoint",b.anchor="middle",b.lastAnchor="lastPoint",e(32,!1,g,{"dataGrouping.smoothed":"use dataGrouping.anchor"}));g=v;var z=this.options.dataGrouping;C=this.currentDataGrouping&&this.currentDataGrouping.gapSize;if(z&&this.xData&&C&&this.groupMap){var k=g.length-1;var a=z.anchor;var t=D(z.firstAnchor,a);z=D(z.lastAnchor,a);if(a&&"start"!==a){var B=C*{middle:.5,end:1}[a];for(a=g.length-1;a--&&0<a;)g[a]+=B}if(t&&"start"!==t&&this.xData[0]>=g[0]){a=this.groupMap[0].start;B=this.groupMap[0].length;
48
- var q=void 0;r(a)&&r(B)&&(q=a+(B-1));g[0]={middle:g[0]+.5*C,end:g[0]+C,firstPoint:this.xData[0],lastPoint:q&&this.xData[q]}[t]}z&&"start"!==z&&C&&g[k]>=x-C&&(x=this.groupMap[this.groupMap.length-1].start,g[k]={middle:g[k]+.5*C,end:g[k]+C,firstPoint:x&&this.xData[x],lastPoint:this.xData[this.xData.length-1]}[z])}for(x=1;x<c.length;x++)c.info.segmentStarts&&-1!==c.info.segmentStarts.indexOf(x)||(F=Math.max(c[x]-c[x-1],F));x=c.info;x.gapSize=F;this.closestPointRange=c.info.totalRange;this.groupMap=d.groupMap;
49
- if(f){f=v;if(Q(f[0])&&r(l.min)&&r(l.dataMin)&&f[0]<l.min){if(!Q(l.options.min)&&l.min<=l.dataMin||l.min===l.dataMin)l.min=Math.min(f[0],l.min);l.dataMin=Math.min(f[0],l.dataMin)}if(Q(f[f.length-1])&&r(l.max)&&r(l.dataMax)&&f[f.length-1]>l.max){if(!Q(l.options.max)&&r(l.dataMax)&&l.max>=l.dataMax||l.max===l.dataMax)l.max=Math.max(f[f.length-1],l.max);l.dataMax=Math.max(f[f.length-1],l.dataMax)}}b.groupAll&&(this.allGroupedData=A,b=this.cropData(v,A,l.min,l.max,1),v=b.xData,A=b.yData,this.cropStart=
50
- b.start);this.processedXData=v;this.processedYData=A}else this.groupMap=null;this.hasGroupedData=h;this.currentDataGrouping=x;this.preventGraphAnimation=(p&&p.totalRange)!==(x&&x.totalRange)}};J.destroyGroupedData=function(){this.groupedData&&(this.groupedData.forEach(function(e,b){e&&(this.groupedData[b]=e.destroy?e.destroy():null)},this),this.groupedData.length=0)};J.generatePoints=function(){M.apply(this);this.destroyGroupedData();this.groupedData=this.hasGroupedData?this.points:null};a.prototype.applyGrouping=
51
- function(){var e=this;e.series.forEach(function(g){g.groupPixelWidth=void 0;g.groupPixelWidth=e.getGroupPixelWidth&&e.getGroupPixelWidth();g.groupPixelWidth&&(g.hasProcessed=!0);g.applyGrouping()})};a.prototype.getGroupPixelWidth=function(){var e=this.series,b=e.length,l,f=0,h=!1,p;for(l=b;l--;)(p=e[l].options.dataGrouping)&&(f=Math.max(f,D(p.groupPixelWidth,N.groupPixelWidth)));for(l=b;l--;)if(p=e[l].options.dataGrouping)if(b=(e[l].processedXData||e[l].data).length,e[l].groupPixelWidth||b>this.chart.plotSizeX/
52
- f||b&&p.forced)h=!0;return h?f:0};a.prototype.setDataGrouping=function(e,b){var l;b=D(b,!0);e||(e={forced:!1,units:null});if(this instanceof a)for(l=this.series.length;l--;)this.series[l].update({dataGrouping:e},!1);else this.chart.options.series.forEach(function(f){f.dataGrouping=e},!1);this.ordinal&&(this.ordinal.slope=void 0);b&&this.chart.redraw()};u(a,"postProcessData",a.prototype.applyGrouping);u(n,"update",function(){if(this.dataGroup)return e(24,!1,this.series.chart),!1});u(E,"headerFormatter",
53
- function(e){var g=this.chart,l=g.time,f=e.labelConfig,h=f.series,p=h.tooltipOptions,c=h.options.dataGrouping,v=p.xDateFormat,A=h.xAxis,F=p[e.isFooter?"footerFormat":"headerFormat"];if(A&&"datetime"===A.options.type&&c&&r(f.key)){var d=h.currentDataGrouping;c=c.dateTimeLabelFormats||N.dateTimeLabelFormats;if(d)if(p=c[d.unitName],1===d.count)v=p[0];else{v=p[1];var x=p[2]}else!v&&c&&A.dateTime&&(v=A.dateTime.getXDateFormat(f.x,p.dateTimeLabelFormats));v=l.dateFormat(v,f.key);x&&(v+=l.dateFormat(x,f.key+
54
- d.totalRange-1));h.chart.styledMode&&(F=this.styledModeFormat(F));e.text=b(F,{point:O(f.point,{key:v}),series:h},g);e.preventDefault()}});u(R,"destroy",J.destroyGroupedData);u(R,"afterSetOptions",function(e){e=e.options;var b=this.type,l=this.chart.options.plotOptions,f=q.defaultOptions.plotOptions[b].dataGrouping,h=this.useCommonDataGrouping&&N;if(P[b]||h){f||(f=I(N,P[b]));var p=this.chart.rangeSelector;e.dataGrouping=I(h,f,l.series&&l.series.dataGrouping,l[b].dataGrouping,this.userOptions.dataGrouping,
55
- !e.isInternal&&p&&r(p.selected)&&p.buttonOptions[p.selected].dataGrouping)}});u(a,"afterSetScale",function(){this.series.forEach(function(e){e.hasProcessed=!1})});y.dataGrouping=G;"";return G});K(a,"Series/OHLC/OHLCPoint.js",[a["Core/Series/SeriesRegistry.js"]],function(a){var m=this&&this.__extends||function(){var a=function(m,n){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,n){a.__proto__=n}||function(a,n){for(var q in n)n.hasOwnProperty(q)&&(a[q]=n[q])};return a(m,n)};return function(m,
56
- n){function u(){this.constructor=m}a(m,n);m.prototype=null===n?Object.create(n):(u.prototype=n.prototype,new u)}}();return function(a){function u(){var n=null!==a&&a.apply(this,arguments)||this;n.close=void 0;n.high=void 0;n.low=void 0;n.open=void 0;n.options=void 0;n.plotClose=void 0;n.plotOpen=void 0;n.series=void 0;return n}m(u,a);u.prototype.getClassName=function(){return a.prototype.getClassName.call(this)+(this.open<this.close?" highcharts-point-up":" highcharts-point-down")};u.prototype.resolveUpColor=
57
- function(){this.open<this.close&&!this.options.color&&this.series.options.upColor&&(this.color=this.series.options.upColor)};u.prototype.resolveColor=function(){a.prototype.resolveColor.call(this);this.resolveUpColor()};u.prototype.getZone=function(){var n=a.prototype.getZone.call(this);this.resolveUpColor();return n};u.prototype.applyOptions=function(){a.prototype.applyOptions.apply(this,arguments);this.resolveColor&&this.resolveColor();return this};return u}(a.seriesTypes.column.prototype.pointClass)});
58
- K(a,"Series/OHLC/OHLCSeries.js",[a["Series/OHLC/OHLCPoint.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,m,u){var G=this&&this.__extends||function(){var a=function(d,b){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var a in d)d.hasOwnProperty(a)&&(b[a]=d[a])};return a(d,b)};return function(d,b){function q(){this.constructor=d}a(d,b);d.prototype=null===b?Object.create(b):(q.prototype=b.prototype,new q)}}(),n=m.seriesTypes.column,
59
- R=u.extend,E=u.merge;u=function(a){function d(){var b=null!==a&&a.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;b.yData=void 0;return b}G(d,a);d.prototype.drawPoints=function(){var b=this,d=b.chart,a=function(b,d,a){var e=b[0];b=b[1];"number"===typeof e[2]&&(e[2]=Math.max(a+d,e[2]));"number"===typeof b[2]&&(b[2]=Math.min(a-d,b[2]))};b.points.forEach(function(k){var q=k.graphic,t=!q;if("undefined"!==typeof k.plotY){q||(k.graphic=q=d.renderer.path().add(b.group));d.styledMode||
60
- q.attr(b.pointAttribs(k,k.selected&&"select"));var e=q.strokeWidth();var J=e%2/2;var r=Math.round(k.plotX)-J;var n=Math.round(k.shapeArgs.width/2);var D=[["M",r,Math.round(k.yBottom)],["L",r,Math.round(k.plotHigh)]];if(null!==k.open){var B=Math.round(k.plotOpen)+J;D.push(["M",r,B],["L",r-n,B]);a(D,e/2,B)}null!==k.close&&(B=Math.round(k.plotClose)+J,D.push(["M",r,B],["L",r+n,B]),a(D,e/2,B));q[t?"attr":"animate"]({d:D}).addClass(k.getClassName(),!0)}})};d.prototype.init=function(){a.prototype.init.apply(this,
61
- arguments);this.options.stacking=void 0};d.prototype.pointAttribs=function(b,d){d=a.prototype.pointAttribs.call(this,b,d);var k=this.options;delete d.fill;!b.options.color&&k.upColor&&b.open<b.close&&(d.stroke=k.upColor);return d};d.prototype.toYData=function(b){return[b.open,b.high,b.low,b.close]};d.prototype.translate=function(){var b=this,d=b.yAxis,k=!!b.modifyValue,q=["plotOpen","plotHigh","plotLow","plotClose","yBottom"];a.prototype.translate.apply(b);b.points.forEach(function(a){[a.open,a.high,
62
- a.low,a.close,a.low].forEach(function(t,e){null!==t&&(k&&(t=b.modifyValue(t)),a[q[e]]=d.toPixels(t,!0))});a.tooltipPos[1]=a.plotHigh+d.pos-b.chart.plotTop})};d.defaultOptions=E(n.defaultOptions,{lineWidth:1,tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> <b> {series.name}</b><br/>Open: {point.open}<br/>High: {point.high}<br/>Low: {point.low}<br/>Close: {point.close}<br/>'},threshold:null,states:{hover:{lineWidth:3}},stickyTracking:!0});return d}(n);R(u.prototype,{animate:null,
63
- directTouch:!1,pointArrayMap:["open","high","low","close"],pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},pointValKey:"close"});u.prototype.pointClass=a;m.registerSeriesType("ohlc",u);"";return u});K(a,"Series/Candlestick/CandlestickSeries.js",[a["Core/DefaultOptions.js"],a["Core/Color/Palette.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,m,u,y){var n=this&&this.__extends||function(){var b=function(d,a){b=Object.setPrototypeOf||{__proto__:[]}instanceof
64
- Array&&function(b,d){b.__proto__=d}||function(b,d){for(var a in d)d.hasOwnProperty(a)&&(b[a]=d[a])};return b(d,a)};return function(d,a){function k(){this.constructor=d}b(d,a);d.prototype=null===a?Object.create(a):(k.prototype=a.prototype,new k)}}(),G=a.defaultOptions;a=u.seriesTypes;var E=a.column,q=a.ohlc,d=y.merge;y=function(b){function a(){var d=null!==b&&b.apply(this,arguments)||this;d.data=void 0;d.options=void 0;d.points=void 0;return d}n(a,b);a.prototype.pointAttribs=function(b,d){var a=E.prototype.pointAttribs.call(this,
65
- b,d),k=this.options,e=b.open<b.close,q=k.lineColor||this.color,r=b.color||this.color;a["stroke-width"]=k.lineWidth;a.fill=b.options.color||(e?k.upColor||r:r);a.stroke=b.options.lineColor||(e?k.upLineColor||q:q);d&&(b=k.states[d],a.fill=b.color||a.fill,a.stroke=b.lineColor||a.stroke,a["stroke-width"]=b.lineWidth||a["stroke-width"]);return a};a.prototype.drawPoints=function(){var b=this,d=b.chart,a=b.yAxis.reversed;b.points.forEach(function(k){var e=k.graphic,q=!e;if("undefined"!==typeof k.plotY){e||
66
- (k.graphic=e=d.renderer.path().add(b.group));b.chart.styledMode||e.attr(b.pointAttribs(k,k.selected&&"select")).shadow(b.options.shadow);var r=e.strokeWidth()%2/2;var t=Math.round(k.plotX)-r;var D=k.plotOpen;var B=k.plotClose;var n=Math.min(D,B);D=Math.max(D,B);var m=Math.round(k.shapeArgs.width/2);B=a?D!==k.yBottom:Math.round(n)!==Math.round(k.plotHigh);var J=a?Math.round(n)!==Math.round(k.plotHigh):D!==k.yBottom;n=Math.round(n)+r;D=Math.round(D)+r;r=[];r.push(["M",t-m,D],["L",t-m,n],["L",t+m,n],
67
- ["L",t+m,D],["Z"],["M",t,n],["L",t,B?Math.round(a?k.yBottom:k.plotHigh):n],["M",t,D],["L",t,J?Math.round(a?k.plotHigh:k.yBottom):D]);e[q?"attr":"animate"]({d:r}).addClass(k.getClassName(),!0)}})};a.defaultOptions=d(q.defaultOptions,G.plotOptions,{states:{hover:{lineWidth:2}},tooltip:G.plotOptions.ohlc.tooltip,threshold:null,lineColor:m.neutralColor100,lineWidth:1,upColor:m.backgroundColor,stickyTracking:!0});return a}(q);u.registerSeriesType("candlestick",y);"";return y});K(a,"Series/Flags/FlagsPoint.js",
68
- [a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,m){var u=this&&this.__extends||function(){var a=function(n,m){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,d){a.__proto__=d}||function(a,d){for(var b in d)d.hasOwnProperty(b)&&(a[b]=d[b])};return a(n,m)};return function(n,m){function q(){this.constructor=n}a(n,m);n.prototype=null===m?Object.create(m):(q.prototype=m.prototype,new q)}}(),G=m.isNumber;return function(a){function n(){var n=null!==a&&a.apply(this,
69
- arguments)||this;n.options=void 0;n.series=void 0;return n}u(n,a);n.prototype.isValid=function(){return G(this.y)||"undefined"===typeof this.y};n.prototype.hasNewShapeType=function(){var a=this.options.shape||this.series.options.shape;return this.graphic&&a&&a!==this.graphic.symbolKey};return n}(a.seriesTypes.column.prototype.pointClass)});K(a,"Mixins/OnSeries.js",[a["Series/Column/ColumnSeries.js"],a["Core/Series/Series.js"],a["Core/Utilities.js"]],function(a,m,u){var G=a.prototype,n=m.prototype,
70
- R=u.defined,E=u.stableSort;return{getPlotBox:function(){return n.getPlotBox.call(this.options.onSeries&&this.chart.get(this.options.onSeries)||this)},translate:function(){G.translate.apply(this);var a=this,d=a.options,b=a.chart,n=a.points,k=n.length-1,t,m=d.onSeries;m=m&&b.get(m);d=d.onKey||"y";var u=m&&m.options.step,e=m&&m.points,O=e&&e.length,r=b.inverted,I=a.xAxis,D=a.yAxis,B=0,y;if(m&&m.visible&&O){B=(m.pointXOffset||0)+(m.barW||0)/2;b=m.currentDataGrouping;var M=e[O-1].x+(b?b.totalRange:0);
71
- E(n,function(b,e){return b.x-e.x});for(d="plot"+d[0].toUpperCase()+d.substr(1);O--&&n[k];){var N=e[O];b=n[k];b.y=N.y;if(N.x<=b.x&&"undefined"!==typeof N[d]){if(b.x<=M&&(b.plotY=N[d],N.x<b.x&&!u&&(y=e[O+1])&&"undefined"!==typeof y[d])){var P=(b.x-N.x)/(y.x-N.x);b.plotY+=P*(y[d]-N[d]);b.y+=P*(y.y-N.y)}k--;O++;if(0>k)break}}}n.forEach(function(b,e){b.plotX+=B;if("undefined"===typeof b.plotY||r)0<=b.plotX&&b.plotX<=I.len?r?(b.plotY=I.translate(b.x,0,1,0,1),b.plotX=R(b.y)?D.translate(b.y,0,0,0,1):0):b.plotY=
72
- (I.opposite?0:a.yAxis.len)+I.offset:b.shapeArgs={};if((t=n[e-1])&&t.plotX===b.plotX){"undefined"===typeof t.stackIndex&&(t.stackIndex=0);var d=t.stackIndex+1}b.stackIndex=d});this.onSeries=m}}});K(a,"Series/Flags/FlagsSymbols.js",[a["Core/Renderer/RendererRegistry.js"],a["Core/Renderer/SVG/SVGRenderer.js"]],function(a,m){function u(a){y[a+"pin"]=function(n,m,q,d,b){var u=b&&b.anchorX;b=b&&b.anchorY;"circle"===a&&d>q&&(n-=Math.round((d-q)/2),q=d);var k=y[a](n,m,q,d);if(u&&b){var t=u;"circle"===a?t=
73
- n+q/2:(n=k[0],q=k[1],"M"===n[0]&&"L"===q[0]&&(t=(n[1]+q[1])/2));k.push(["M",t,m>b?m:m+d],["L",u,b]);k=k.concat(y.circle(u-1,b-1,2,2))}return k}}var y=m.prototype.symbols;y.flag=function(a,m,u,q,d){var b=d&&d.anchorX||a;d=d&&d.anchorY||m;var n=y.circle(b-1,d-1,2,2);n.push(["M",b,d],["L",a,m+q],["L",a,m],["L",a+u,m],["L",a+u,m+q],["L",a,m+q],["Z"]);return n};u("circle");u("square");a=a.getRendererType();a!==m&&(a.prototype.symbols.circlepin=y.circlepin,a.prototype.symbols.flag=y.flag,a.prototype.symbols.squarepin=
74
- y.squarepin);return y});K(a,"Series/Flags/FlagsSeries.js",[a["Series/Flags/FlagsPoint.js"],a["Core/Globals.js"],a["Mixins/OnSeries.js"],a["Core/Color/Palette.js"],a["Core/Renderer/RendererUtilities.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Renderer/SVG/SVGElement.js"],a["Core/Utilities.js"]],function(a,m,u,y,n,R,E,q){var d=this&&this.__extends||function(){var b=function(a,e){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,a){b.__proto__=a}||function(b,a){for(var e in a)a.hasOwnProperty(e)&&
75
- (b[e]=a[e])};return b(a,e)};return function(a,e){function d(){this.constructor=a}b(a,e);a.prototype=null===e?Object.create(e):(d.prototype=e.prototype,new d)}}();m=m.noop;var b=n.distribute,J=R.series,k=R.seriesTypes.column,t=q.addEvent,G=q.defined;n=q.extend;var Q=q.merge,e=q.objectEach,O=q.wrap;q=function(a){function r(){var b=null!==a&&a.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}d(r,a);r.prototype.animate=function(b){b&&this.setClip()};r.prototype.drawPoints=
76
- function(){var a=this.points,d=this.chart,k=d.renderer,r=d.inverted,m=this.options,n=m.y,q,g=this.yAxis,t={},l=[];for(q=a.length;q--;){var f=a[q];var h=(r?f.plotY:f.plotX)>this.xAxis.len;var p=f.plotX;var c=f.stackIndex;var v=f.options.shape||m.shape;var A=f.plotY;"undefined"!==typeof A&&(A=f.plotY+n-("undefined"!==typeof c&&c*m.stackDistance));f.anchorX=c?void 0:f.plotX;var F=c?void 0:f.plotY;var H="flag"!==v;c=f.graphic;"undefined"!==typeof A&&0<=p&&!h?(c&&f.hasNewShapeType()&&(c=c.destroy()),c||
77
- (c=f.graphic=k.label("",null,null,v,null,null,m.useHTML).addClass("highcharts-point").add(this.markerGroup),f.graphic.div&&(f.graphic.div.point=f),c.isNew=!0),c.attr({align:H?"center":"left",width:m.width,height:m.height,"text-align":m.textAlign}),d.styledMode||c.attr(this.pointAttribs(f)).css(Q(m.style,f.style)).shadow(m.shadow),0<p&&(p-=c.strokeWidth()%2),v={y:A,anchorY:F},m.allowOverlapX&&(v.x=p,v.anchorX=f.anchorX),c.attr({text:f.options.title||m.title||"A"})[c.isNew?"attr":"animate"](v),m.allowOverlapX||
78
- (t[f.plotX]?t[f.plotX].size=Math.max(t[f.plotX].size,c.width):t[f.plotX]={align:H?.5:0,size:c.width,target:p,anchorX:p}),f.tooltipPos=[p,A+g.pos-d.plotTop]):c&&(f.graphic=c.destroy())}m.allowOverlapX||(e(t,function(c){c.plotX=c.anchorX;l.push(c)}),b(l,r?g.len:this.xAxis.len,100),a.forEach(function(c){var v=c.graphic&&t[c.plotX];v&&(c.graphic[c.graphic.isNew?"attr":"animate"]({x:v.pos+v.align*v.size,anchorX:c.anchorX}),G(v.pos)?c.graphic.isNew=!1:(c.graphic.attr({x:-9999,anchorX:-9999}),c.graphic.isNew=
79
- !0))}));m.useHTML&&O(this.markerGroup,"on",function(c){return E.prototype.on.apply(c.apply(this,[].slice.call(arguments,1)),[].slice.call(arguments,1))})};r.prototype.drawTracker=function(){var b=this.points;a.prototype.drawTracker.call(this);b.forEach(function(a){var e=a.graphic;e&&(a.unbindMouseOver&&a.unbindMouseOver(),a.unbindMouseOver=t(e.element,"mouseover",function(){0<a.stackIndex&&!a.raised&&(a._y=e.y,e.attr({y:a._y-8}),a.raised=!0);b.forEach(function(b){b!==a&&b.raised&&b.graphic&&(b.graphic.attr({y:b._y}),
80
- b.raised=!1)})}))})};r.prototype.pointAttribs=function(b,a){var e=this.options,d=b&&b.color||this.color,k=e.lineColor,r=b&&b.lineWidth;b=b&&b.fillColor||e.fillColor;a&&(b=e.states[a].fillColor,k=e.states[a].lineColor,r=e.states[a].lineWidth);return{fill:b||d,stroke:k||d,"stroke-width":r||e.lineWidth||0}};r.prototype.setClip=function(){J.prototype.setClip.apply(this,arguments);!1!==this.options.clip&&this.sharedClipKey&&this.markerGroup&&this.markerGroup.clip(this.chart.sharedClips[this.sharedClipKey])};
81
- r.defaultOptions=Q(k.defaultOptions,{pointRange:0,allowOverlapX:!1,shape:"flag",stackDistance:12,textAlign:"center",tooltip:{pointFormat:"{point.text}"},threshold:null,y:-30,fillColor:y.backgroundColor,lineWidth:1,states:{hover:{lineColor:y.neutralColor100,fillColor:y.highlightColor20}},style:{fontSize:"11px",fontWeight:"bold"}});return r}(k);n(q.prototype,{allowDG:!1,buildKDTree:m,forceCrop:!0,getPlotBox:u.getPlotBox,init:J.prototype.init,invertGroups:m,invertible:!1,noSharedTooltip:!0,pointClass:a,
82
- sorted:!1,takeOrdinalPosition:!1,trackerGroups:["markerGroup"],translate:u.translate});R.registerSeriesType("flags",q);"";"";return q});K(a,"Core/Axis/ScrollbarAxis.js",[a["Core/Utilities.js"]],function(a){var m=a.addEvent,u=a.defined,y=a.pick;return function(){function a(){}a.compose=function(n,E){if(-1===a.composed.indexOf(n))a.composed.push(n);else return n;var q=function(a){var b=y(a.options&&a.options.min,a.min),d=y(a.options&&a.options.max,a.max);return{axisMin:b,axisMax:d,scrollMin:u(a.dataMin)?
83
- Math.min(b,a.min,a.dataMin,y(a.threshold,Infinity)):b,scrollMax:u(a.dataMax)?Math.max(d,a.max,a.dataMax,y(a.threshold,-Infinity)):d}};m(n,"afterInit",function(){var a=this;a.options&&a.options.scrollbar&&a.options.scrollbar.enabled&&(a.options.scrollbar.vertical=!a.horiz,a.options.startOnTick=a.options.endOnTick=!1,a.scrollbar=new E(a.chart.renderer,a.options.scrollbar,a.chart),m(a.scrollbar,"changed",function(b){var d=q(a),k=d.axisMax,m=d.scrollMin,n=d.scrollMax-m;u(d.axisMin)&&u(k)&&(a.horiz&&!a.reversed||
84
- !a.horiz&&a.reversed?(d=m+n*this.to,m+=n*this.from):(d=m+n*(1-this.from),m+=n*(1-this.to)),this.shouldUpdateExtremes(b.DOMType)?a.setExtremes(m,d,!0,"mousemove"!==b.DOMType&&"touchmove"!==b.DOMType,b):this.setRange(this.from,this.to))}))});m(n,"afterRender",function(){var a=q(this),b=a.scrollMin,m=a.scrollMax;a=this.scrollbar;var k=this.axisTitleMargin+(this.titleOffset||0),n=this.chart.scrollbarsOffsets,y=this.options.margin||0;a&&(this.horiz?(this.opposite||(n[1]+=k),a.position(this.left,this.top+
85
- this.height+2+n[1]-(this.opposite?y:0),this.width,this.height),this.opposite||(n[1]+=y),k=1):(this.opposite&&(n[0]+=k),a.position(this.left+this.width+2+n[0]-(this.opposite?0:y),this.top,this.width,this.height),this.opposite&&(n[0]+=y),k=0),n[k]+=a.size+a.options.margin,isNaN(b)||isNaN(m)||!u(this.min)||!u(this.max)||this.min===this.max?a.setRange(0,1):(n=(this.min-b)/(m-b),b=(this.max-b)/(m-b),this.horiz&&!this.reversed||!this.horiz&&this.reversed?a.setRange(n,b):a.setRange(1-b,1-n)))});m(n,"afterGetOffset",
86
- function(){var a=this.horiz?2:1,b=this.scrollbar;b&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[a]+=b.size+b.options.margin)});return n};a.composed=[];return a}()});K(a,"Core/ScrollbarDefaults.js",[a["Core/Globals.js"],a["Core/Color/Palette.js"]],function(a,m){return{height:a.isTouchDevice?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,margin:10,minWidth:6,step:.2,zIndex:3,barBackgroundColor:m.neutralColor20,barBorderWidth:1,barBorderColor:m.neutralColor20,buttonArrowColor:m.neutralColor80,
87
- buttonBackgroundColor:m.neutralColor10,buttonBorderColor:m.neutralColor20,buttonBorderWidth:1,rifleColor:m.neutralColor80,trackBackgroundColor:m.neutralColor5,trackBorderColor:m.neutralColor5,trackBorderWidth:1}});K(a,"Core/Scrollbar.js",[a["Core/DefaultOptions.js"],a["Core/Globals.js"],a["Core/Axis/ScrollbarAxis.js"],a["Core/ScrollbarDefaults.js"],a["Core/Utilities.js"]],function(a,m,u,y,n){var G=a.defaultOptions,E=n.addEvent,q=n.correctFloat,d=n.defined,b=n.destroyObjectProperties,J=n.fireEvent,
88
- k=n.merge,t=n.pick,S=n.removeEvent;a=function(){function a(a,b,d){this._events=[];this.chart=void 0;this.from=this.chartY=this.chartX=0;this.scrollbar=this.renderer=this.options=this.group=void 0;this.scrollbarButtons=[];this.scrollbarGroup=void 0;this.scrollbarLeft=0;this.scrollbarRifles=void 0;this.scrollbarStrokeWidth=1;this.to=this.size=this.scrollbarTop=0;this.track=void 0;this.trackBorderWidth=1;this.userOptions=void 0;this.y=this.x=0;this.init(a,b,d)}a.compose=function(b){u.compose(b,a)};a.swapXY=
89
- function(a,b){b&&a.forEach(function(a){for(var b=a.length,e,d=0;d<b;d+=2)e=a[d+1],"number"===typeof e&&(a[d+1]=a[d+2],a[d+2]=e)});return a};a.prototype.addEvents=function(){var a=this.options.inverted?[1,0]:[0,1],b=this.scrollbarButtons,d=this.scrollbarGroup.element,k=this.track.element,n=this.mouseDownHandler.bind(this),q=this.mouseMoveHandler.bind(this),t=this.mouseUpHandler.bind(this);a=[[b[a[0]].element,"click",this.buttonToMinClick.bind(this)],[b[a[1]].element,"click",this.buttonToMaxClick.bind(this)],
90
- [k,"click",this.trackClick.bind(this)],[d,"mousedown",n],[d.ownerDocument,"mousemove",q],[d.ownerDocument,"mouseup",t]];m.hasTouch&&a.push([d,"touchstart",n],[d.ownerDocument,"touchmove",q],[d.ownerDocument,"touchend",t]);a.forEach(function(a){E.apply(null,a)});this._events=a};a.prototype.buttonToMaxClick=function(a){var b=(this.to-this.from)*t(this.options.step,.2);this.updatePosition(this.from+b,this.to+b);J(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.buttonToMinClick=
91
- function(a){var b=q(this.to-this.from)*t(this.options.step,.2);this.updatePosition(q(this.from-b),q(this.to-b));J(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.cursorToScrollbarPosition=function(a){var b=this.options;b=b.minWidth>this.calculatedWidth?b.minWidth:0;return{chartX:(a.chartX-this.x-this.xOffset)/(this.barWidth-b),chartY:(a.chartY-this.y-this.yOffset)/(this.barWidth-b)}};a.prototype.destroy=function(){var a=this,d=a.chart.scroller;a.removeEvents();
92
- ["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(b){a[b]&&a[b].destroy&&(a[b]=a[b].destroy())});d&&a===d.scrollbar&&(d.scrollbar=null,b(d.scrollbarButtons))};a.prototype.drawScrollbarButton=function(b){var e=this.renderer,d=this.scrollbarButtons,k=this.options,m=this.size,n=e.g().add(this.group);d.push(n);n=e.rect().addClass("highcharts-scrollbar-button").add(n);this.chart.styledMode||n.attr({stroke:k.buttonBorderColor,"stroke-width":k.buttonBorderWidth,fill:k.buttonBackgroundColor});
93
- n.attr(n.crisp({x:-.5,y:-.5,width:m+1,height:m+1,r:k.buttonBorderRadius},n.strokeWidth()));n=e.path(a.swapXY([["M",m/2+(b?-1:1),m/2-3],["L",m/2+(b?-1:1),m/2+3],["L",m/2+(b?2:-2),m/2]],k.vertical)).addClass("highcharts-scrollbar-arrow").add(d[b]);this.chart.styledMode||n.attr({fill:k.buttonArrowColor})};a.prototype.init=function(a,b,d){this.scrollbarButtons=[];this.renderer=a;this.userOptions=b;this.options=k(y,G.scrollbar,b);this.chart=d;this.size=t(this.options.size,this.options.height);b.enabled&&
94
- (this.render(),this.addEvents())};a.prototype.mouseDownHandler=function(a){a=this.chart.pointer.normalize(a);a=this.cursorToScrollbarPosition(a);this.chartX=a.chartX;this.chartY=a.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=!0};a.prototype.mouseMoveHandler=function(a){var b=this.chart.pointer.normalize(a),e=this.options.vertical?"chartY":"chartX",d=this.initPositions||[];!this.grabbedCenter||a.touches&&0===a.touches[0][e]||(b=this.cursorToScrollbarPosition(b)[e],e=this[e],e=b-
95
- e,this.hasDragged=!0,this.updatePosition(d[0]+e,d[1]+e),this.hasDragged&&J(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:a.type,DOMEvent:a}))};a.prototype.mouseUpHandler=function(a){this.hasDragged&&J(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:a.type,DOMEvent:a});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};a.prototype.position=function(a,b,d,k){var e=this.options.vertical,m=this.rendered?"animate":"attr",n=0;this.x=a;this.y=b+
96
- this.trackBorderWidth;this.width=d;this.xOffset=this.height=k;this.yOffset=n;e?(this.width=this.yOffset=d=n=this.size,this.xOffset=b=0,this.barWidth=k-2*d,this.x=a+=this.options.margin):(this.height=this.xOffset=k=b=this.size,this.barWidth=d-2*k,this.y+=this.options.margin);this.group[m]({translateX:a,translateY:this.y});this.track[m]({width:d,height:k});this.scrollbarButtons[1][m]({translateX:e?0:d-b,translateY:e?k-n:0})};a.prototype.removeEvents=function(){this._events.forEach(function(a){S.apply(null,
97
- a)});this._events.length=0};a.prototype.render=function(){var b=this.renderer,d=this.options,k=this.size,m=this.chart.styledMode,n=b.g("scrollbar").attr({zIndex:d.zIndex,translateY:-99999}).add();this.group=n;this.track=b.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:d.trackBorderRadius||0,height:k,width:k}).add(n);m||this.track.attr({fill:d.trackBackgroundColor,stroke:d.trackBorderColor,"stroke-width":d.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%
98
- 2/2});this.scrollbarGroup=b.g().add(n);this.scrollbar=b.rect().addClass("highcharts-scrollbar-thumb").attr({height:k,width:k,r:d.barBorderRadius||0}).add(this.scrollbarGroup);this.scrollbarRifles=b.path(a.swapXY([["M",-3,k/4],["L",-3,2*k/3],["M",0,k/4],["L",0,2*k/3],["M",3,k/4],["L",3,2*k/3]],d.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);m||(this.scrollbar.attr({fill:d.barBackgroundColor,stroke:d.barBorderColor,"stroke-width":d.barBorderWidth}),this.scrollbarRifles.attr({stroke:d.rifleColor,
99
- "stroke-width":1}));this.scrollbarStrokeWidth=this.scrollbar.strokeWidth();this.scrollbarGroup.translate(-this.scrollbarStrokeWidth%2/2,-this.scrollbarStrokeWidth%2/2);this.drawScrollbarButton(0);this.drawScrollbarButton(1)};a.prototype.setRange=function(a,b){var e=this.options,k=e.vertical,m=e.minWidth,n=this.barWidth,t=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(d(n)){var u=n*Math.min(b,1);a=Math.max(a,0);var y=Math.ceil(n*a);this.calculatedWidth=
100
- u=q(u-y);u<m&&(y=(n-m+u)*a,u=m);m=Math.floor(y+this.xOffset+this.yOffset);n=u/2-.5;this.from=a;this.to=b;k?(this.scrollbarGroup[t]({translateY:m}),this.scrollbar[t]({height:u}),this.scrollbarRifles[t]({translateY:n}),this.scrollbarTop=m,this.scrollbarLeft=0):(this.scrollbarGroup[t]({translateX:m}),this.scrollbar[t]({width:u}),this.scrollbarRifles[t]({translateX:n}),this.scrollbarLeft=m,this.scrollbarTop=0);12>=u?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===e.showFull&&(0>=a&&1<=
101
- b?this.group.hide():this.group.show());this.rendered=!0}};a.prototype.shouldUpdateExtremes=function(a){return t(this.options.liveRedraw,m.svg&&!m.isTouchDevice&&!this.chart.isBoosting)||"mouseup"===a||"touchend"===a||!d(a)};a.prototype.trackClick=function(a){var b=this.chart.pointer.normalize(a),d=this.to-this.from,e=this.y+this.scrollbarTop,k=this.x+this.scrollbarLeft;this.options.vertical&&b.chartY>e||!this.options.vertical&&b.chartX>k?this.updatePosition(this.from+d,this.to+d):this.updatePosition(this.from-
102
- d,this.to-d);J(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.update=function(a){this.destroy();this.init(this.chart.renderer,k(!0,this.options,a),this.chart)};a.prototype.updatePosition=function(a,b){1<b&&(a=q(1-q(b-a)),b=1);0>a&&(b=q(b-a),a=0);this.from=a;this.to=b};a.defaultOptions=y;return a}();G.scrollbar=k(!0,a.defaultOptions,G.scrollbar);return a});K(a,"Core/Axis/NavigatorAxis.js",[a["Core/Globals.js"],a["Core/Utilities.js"]],function(a,m){var u=a.isTouchDevice,
103
- y=m.addEvent,n=m.correctFloat,G=m.defined,E=m.isNumber,q=m.pick,d=function(){function a(a){this.axis=a}a.prototype.destroy=function(){this.axis=void 0};a.prototype.toFixedRange=function(a,b,d,m){var k=this.axis,e=k.chart;e=e&&e.fixedRange;var t=(k.pointRange||0)/2;a=q(d,k.translate(a,!0,!k.horiz));b=q(m,k.translate(b,!0,!k.horiz));k=e&&(b-a)/e;G(d)||(a=n(a+t));G(m)||(b=n(b-t));.7<k&&1.3>k&&(m?a=b-e:b=a+e);E(a)&&E(b)||(a=b=void 0);return{min:a,max:b}};return a}();return function(){function a(){}a.compose=
104
- function(a){a.keepProps.push("navigatorAxis");y(a,"init",function(){this.navigatorAxis||(this.navigatorAxis=new d(this))});y(a,"zoom",function(a){var b=this.chart.options,d=b.navigator,k=this.navigatorAxis,e=b.chart.pinchType,m=b.rangeSelector;b=b.chart.zoomType;this.isXAxis&&(d&&d.enabled||m&&m.enabled)&&("y"===b?a.zoomed=!1:(!u&&"xy"===b||u&&"xy"===e)&&this.options.range&&(d=k.previousZoom,G(a.newMin)?k.previousZoom=[this.min,this.max]:d&&(a.newMin=d[0],a.newMax=d[1],k.previousZoom=void 0)));"undefined"!==
105
- typeof a.zoomed&&a.preventDefault()})};a.AdditionsClass=d;return a}()});K(a,"Core/Navigator.js",[a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/Color/Color.js"],a["Core/Globals.js"],a["Core/Axis/NavigatorAxis.js"],a["Core/DefaultOptions.js"],a["Core/Color/Palette.js"],a["Core/Renderer/RendererRegistry.js"],a["Core/Scrollbar.js"],a["Core/Series/Series.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,m,u,y,n,K,E,q,d,b,J,k){u=u.parse;var t=y.hasTouch,G=y.isTouchDevice,
106
- Q=K.defaultOptions,e=k.addEvent,O=k.clamp,r=k.correctFloat,I=k.defined,D=k.destroyObjectProperties,B=k.erase,R=k.extend,M=k.find,N=k.isArray,P=k.isNumber,L=k.merge,g=k.pick,w=k.removeEvent,l=k.splat,f=function(a){for(var c=[],b=1;b<arguments.length;b++)c[b-1]=arguments[b];c=[].filter.call(c,P);if(c.length)return Math[a].apply(0,c)};K="undefined"===typeof J.seriesTypes.areaspline?"line":"areaspline";R(Q,{navigator:{height:40,margin:25,maskInside:!0,handles:{width:7,height:15,symbols:["navigator-handle",
107
- "navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:E.neutralColor5,borderColor:E.neutralColor40},maskFill:u(E.highlightColor60).setOpacity(.3).get(),outlineColor:E.neutralColor20,outlineWidth:1,series:{type:K,fillOpacity:.05,lineWidth:1,compare:null,dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",
108
- [1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},threshold:null},xAxis:{overscroll:0,className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:E.neutralColor10,gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:E.neutralColor40},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",
109
- gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},tickLength:0,tickWidth:0}}});q.getRendererType().prototype.symbols["navigator-handle"]=function(a,c,b,f,h){a=(h&&h.width||0)/2;c=Math.round(a/3)+.5;h=h&&h.height||0;return[["M",-a-1,.5],["L",a,.5],["L",a,h+.5],["L",-a-1,h+.5],["L",-a-1,.5],["M",-c,4],["L",-c,h-3],["M",c-1,4],["L",c-1,h-3]]};var h=function(){function b(c){this.zoomedMin=this.zoomedMax=this.yAxis=this.xAxis=this.top=
110
- this.size=this.shades=this.rendered=this.range=this.outlineHeight=this.outline=this.opposite=this.navigatorSize=this.navigatorSeries=this.navigatorOptions=this.navigatorGroup=this.navigatorEnabled=this.left=this.height=this.handles=this.chart=this.baseSeries=void 0;this.init(c)}b.prototype.drawHandle=function(c,a,b,f){var v=this.navigatorOptions.handles.height;this.handles[a][f](b?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(c,10)+.5-v)}:{translateX:Math.round(this.left+
111
- parseInt(c,10)),translateY:Math.round(this.top+this.height/2-v/2-1)})};b.prototype.drawOutline=function(c,a,b,f){var v=this.navigatorOptions.maskInside,h=this.outline.strokeWidth(),p=h/2,A=h%2/2;h=this.outlineHeight;var d=this.scrollbarHeight||0,l=this.size,e=this.left-d,g=this.top;b?(e-=p,b=g+a+A,a=g+c+A,A=[["M",e+h,g-d-A],["L",e+h,b],["L",e,b],["L",e,a],["L",e+h,a],["L",e+h,g+l+d]],v&&A.push(["M",e+h,b-p],["L",e+h,a+p])):(c+=e+d-A,a+=e+d-A,g+=p,A=[["M",e,g],["L",c,g],["L",c,g+h],["L",a,g+h],["L",
112
- a,g],["L",e+l+2*d,g]],v&&A.push(["M",c-p,g],["L",a+p,g]));this.outline[f]({d:A})};b.prototype.drawMasks=function(c,a,b,f){var v=this.left,h=this.top,p=this.height;if(b){var A=[v,v,v];var d=[h,h+c,h+a];var e=[p,p,p];var l=[c,a-c,this.size-a]}else A=[v,v+c,v+a],d=[h,h,h],e=[c,a-c,this.size-a],l=[p,p,p];this.shades.forEach(function(c,a){c[f]({x:A[a],y:d[a],width:e[a],height:l[a]})})};b.prototype.renderElements=function(){var c=this,a=c.navigatorOptions,b=a.maskInside,f=c.chart,h=f.renderer,p,d={cursor:f.inverted?
113
- "ns-resize":"ew-resize"};c.navigatorGroup=p=h.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();[!b,b,!b].forEach(function(b,v){c.shades[v]=h.rect().addClass("highcharts-navigator-mask"+(1===v?"-inside":"-outside")).add(p);f.styledMode||c.shades[v].attr({fill:b?a.maskFill:"rgba(0,0,0,0)"}).css(1===v&&d)});c.outline=h.path().addClass("highcharts-navigator-outline").add(p);f.styledMode||c.outline.attr({"stroke-width":a.outlineWidth,stroke:a.outlineColor});a.handles.enabled&&[0,1].forEach(function(b){a.handles.inverted=
114
- f.inverted;c.handles[b]=h.symbol(a.handles.symbols[b],-a.handles.width/2-1,0,a.handles.width,a.handles.height,a.handles);c.handles[b].attr({zIndex:7-b}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+["left","right"][b]).add(p);if(!f.styledMode){var v=a.handles;c.handles[b].attr({fill:v.backgroundColor,stroke:v.borderColor,"stroke-width":v.lineWidth}).css(d)}})};b.prototype.update=function(a){(this.series||[]).forEach(function(a){a.baseSeries&&delete a.baseSeries.navigatorSeries});
115
- this.destroy();L(!0,this.chart.options.navigator,this.options,a);this.init(this.chart)};b.prototype.render=function(a,b,f,h){var c=this.chart,v=this.scrollbarHeight,p,d=this.xAxis,A=d.pointRange||0;var e=d.navigatorAxis.fake?c.xAxis[0]:d;var l=this.navigatorEnabled,k,F=this.rendered;var m=c.inverted;var n=c.xAxis[0].minRange,q=c.xAxis[0].options.maxRange;if(!this.hasDragged||I(f)){a=r(a-A/2);b=r(b+A/2);if(!P(a)||!P(b))if(F)f=0,h=g(d.width,e.width);else return;this.left=g(d.left,c.plotLeft+v+(m?c.plotWidth:
116
- 0));this.size=k=p=g(d.len,(m?c.plotHeight:c.plotWidth)-2*v);c=m?v:p+2*v;f=g(f,d.toPixels(a,!0));h=g(h,d.toPixels(b,!0));P(f)&&Infinity!==Math.abs(f)||(f=0,h=c);a=d.toValue(f,!0);b=d.toValue(h,!0);var u=Math.abs(r(b-a));u<n?this.grabbedLeft?f=d.toPixels(b-n-A,!0):this.grabbedRight&&(h=d.toPixels(a+n+A,!0)):I(q)&&r(u-A)>q&&(this.grabbedLeft?f=d.toPixels(b-q-A,!0):this.grabbedRight&&(h=d.toPixels(a+q+A,!0)));this.zoomedMax=O(Math.max(f,h),0,k);this.zoomedMin=O(this.fixedWidth?this.zoomedMax-this.fixedWidth:
117
- Math.min(f,h),0,k);this.range=this.zoomedMax-this.zoomedMin;k=Math.round(this.zoomedMax);f=Math.round(this.zoomedMin);l&&(this.navigatorGroup.attr({visibility:"visible"}),F=F&&!this.hasDragged?"animate":"attr",this.drawMasks(f,k,m,F),this.drawOutline(f,k,m,F),this.navigatorOptions.handles.enabled&&(this.drawHandle(f,0,m,F),this.drawHandle(k,1,m,F)));this.scrollbar&&(m?(m=this.top-v,e=this.left-v+(l||!e.opposite?0:(e.titleOffset||0)+e.axisTitleMargin),v=p+2*v):(m=this.top+(l?this.height:-v),e=this.left-
118
- v),this.scrollbar.position(e,m,c,v),this.scrollbar.setRange(this.zoomedMin/(p||1),this.zoomedMax/(p||1)));this.rendered=!0}};b.prototype.addMouseEvents=function(){var a=this,b=a.chart,f=b.container,h=[],p,d;a.mouseMoveHandler=p=function(c){a.onMouseMove(c)};a.mouseUpHandler=d=function(c){a.onMouseUp(c)};h=a.getPartsEvents("mousedown");h.push(e(b.renderTo,"mousemove",p),e(f.ownerDocument,"mouseup",d));t&&(h.push(e(b.renderTo,"touchmove",p),e(f.ownerDocument,"touchend",d)),h.concat(a.getPartsEvents("touchstart")));
119
- a.eventsToUnbind=h;a.series&&a.series[0]&&h.push(e(a.series[0].xAxis,"foundExtremes",function(){b.navigator.modifyNavigatorAxisExtremes()}))};b.prototype.getPartsEvents=function(a){var c=this,b=[];["shades","handles"].forEach(function(f){c[f].forEach(function(v,h){b.push(e(v.element,a,function(a){c[f+"Mousedown"](a,h)}))})});return b};b.prototype.shadesMousedown=function(a,b){a=this.chart.pointer.normalize(a);var c=this.chart,f=this.xAxis,h=this.zoomedMin,v=this.left,p=this.size,d=this.range,e=a.chartX;
120
- c.inverted&&(e=a.chartY,v=this.top);if(1===b)this.grabbedCenter=e,this.fixedWidth=d,this.dragOffset=e-h;else{a=e-v-d/2;if(0===b)a=Math.max(0,a);else if(2===b&&a+d>=p)if(a=p-d,this.reversedExtremes){a-=d;var l=this.getUnionExtremes().dataMin}else var g=this.getUnionExtremes().dataMax;a!==h&&(this.fixedWidth=d,b=f.navigatorAxis.toFixedRange(a,a+d,l,g),I(b.min)&&c.xAxis[0].setExtremes(Math.min(b.min,b.max),Math.max(b.min,b.max),!0,null,{trigger:"navigator"}))}};b.prototype.handlesMousedown=function(a,
121
- b){this.chart.pointer.normalize(a);a=this.chart;var c=a.xAxis[0],f=this.reversedExtremes;0===b?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=f?c.min:c.max):(this.grabbedRight=!0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=f?c.max:c.min);a.fixedRange=null};b.prototype.onMouseMove=function(a){var c=this,b=c.chart,f=c.left,h=c.navigatorSize,p=c.range,d=c.dragOffset,e=b.inverted;a.touches&&0===a.touches[0].pageX||(a=b.pointer.normalize(a),b=a.chartX,e&&(f=c.top,b=
122
- a.chartY),c.grabbedLeft?(c.hasDragged=!0,c.render(0,0,b-f,c.otherHandlePos)):c.grabbedRight?(c.hasDragged=!0,c.render(0,0,c.otherHandlePos,b-f)):c.grabbedCenter&&(c.hasDragged=!0,b<d?b=d:b>h+d-p&&(b=h+d-p),c.render(0,0,b-d,b-d+p)),c.hasDragged&&c.scrollbar&&g(c.scrollbar.options.liveRedraw,y.svg&&!G&&!this.chart.isBoosting)&&(a.DOMType=a.type,setTimeout(function(){c.onMouseUp(a)},0)))};b.prototype.onMouseUp=function(a){var c=this.chart,b=this.xAxis,f=this.scrollbar,h=a.DOMEvent||a,p=c.inverted,d=
123
- this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!f||!f.hasDragged)||"scrollbar"===a.trigger){f=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var e=this.fixedExtreme;else if(this.zoomedMax===this.otherHandlePos)var l=this.fixedExtreme;this.zoomedMax===this.size&&(l=this.reversedExtremes?f.dataMin:f.dataMax);0===this.zoomedMin&&(e=this.reversedExtremes?f.dataMax:f.dataMin);b=b.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,e,l);I(b.min)&&c.xAxis[0].setExtremes(Math.min(b.min,
124
- b.max),Math.max(b.min,b.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:h})}"mousemove"!==a.DOMType&&"touchmove"!==a.DOMType&&(this.grabbedLeft=this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null);this.navigatorEnabled&&P(this.zoomedMin)&&P(this.zoomedMax)&&(c=Math.round(this.zoomedMin),a=Math.round(this.zoomedMax),this.shades&&this.drawMasks(c,a,p,d),this.outline&&this.drawOutline(c,
125
- a,p,d),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(c,0,p,d),this.drawHandle(a,1,p,d)))};b.prototype.removeEvents=function(){this.eventsToUnbind&&(this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};b.prototype.removeBaseSeriesEvents=function(){var a=this.baseSeries||[];this.navigatorEnabled&&a[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&a.forEach(function(a){w(a,"updatedData",
126
- this.updatedDataHandler)},this),a[0].xAxis&&w(a[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};b.prototype.init=function(c){var b=c.options,h=b.navigator,p=h.enabled,l=b.scrollbar,k=l.enabled;b=p?h.height:0;var m=k?l.height:0;this.handles=[];this.shades=[];this.chart=c;this.setBaseSeries();this.height=b;this.scrollbarHeight=m;this.scrollbarEnabled=k;this.navigatorEnabled=p;this.navigatorOptions=h;this.scrollbarOptions=l;this.outlineHeight=b+m;this.opposite=g(h.opposite,!(p||!c.inverted));
127
- var z=this;p=z.baseSeries;l=c.xAxis.length;k=c.yAxis.length;var q=p&&p[0]&&p[0].xAxis||c.xAxis[0]||{options:{}};c.isDirtyBox=!0;z.navigatorEnabled?(z.xAxis=new a(c,L({breaks:q.options.breaks,ordinal:q.options.ordinal},h.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:l,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},c.inverted?{offsets:[m,0,-m,0],width:b}:{offsets:[0,-m,0,m],height:b})),z.yAxis=new a(c,
128
- L(h.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:k,isInternal:!0,reversed:g(h.yAxis&&h.yAxis.reversed,c.yAxis[0]&&c.yAxis[0].reversed,!1),zoomEnabled:!1},c.inverted?{width:b}:{height:b})),p||h.series.data?z.updateNavigatorSeries(!1):0===c.series.length&&(z.unbindRedraw=e(c,"beforeRedraw",function(){0<c.series.length&&!z.series&&(z.setBaseSeries(),z.unbindRedraw())})),z.reversedExtremes=c.inverted&&!z.xAxis.reversed||!c.inverted&&z.xAxis.reversed,z.renderElements(),z.addMouseEvents()):
129
- (z.xAxis={chart:c,navigatorAxis:{fake:!0},translate:function(a,b){var h=c.xAxis[0],p=h.getExtremes(),d=h.len-2*m,v=f("min",h.options.min,p.dataMin);h=f("max",h.options.max,p.dataMax)-v;return b?a*h/d+v:d*(a-v)/h},toPixels:function(a){return this.translate(a)},toValue:function(a){return this.translate(a,!0)}},z.xAxis.navigatorAxis.axis=z.xAxis,z.xAxis.navigatorAxis.toFixedRange=n.AdditionsClass.prototype.toFixedRange.bind(z.xAxis.navigatorAxis));c.options.scrollbar.enabled&&(c.scrollbar=z.scrollbar=
130
- new d(c.renderer,L(c.options.scrollbar,{margin:z.navigatorEnabled?0:10,vertical:c.inverted}),c),e(z.scrollbar,"changed",function(a){var c=z.size,b=c*this.to;c*=this.from;z.hasDragged=z.scrollbar.hasDragged;z.render(0,0,c,b);this.shouldUpdateExtremes(a.DOMType)&&setTimeout(function(){z.onMouseUp(a)})}));z.addBaseSeriesEvents();z.addChartEvents()};b.prototype.getUnionExtremes=function(a){var c=this.chart.xAxis[0],b=this.xAxis,h=b.options,p=c.options,d;a&&null===c.dataMin||(d={dataMin:g(h&&h.min,f("min",
131
- p.min,c.dataMin,b.dataMin,b.min)),dataMax:g(h&&h.max,f("max",p.max,c.dataMax,b.dataMax,b.max))});return d};b.prototype.setBaseSeries=function(a,b){var c=this.chart,f=this.baseSeries=[];a=a||c.options&&c.options.navigator.baseSeries||(c.series.length?M(c.series,function(a){return!a.options.isInternal}).index:0);(c.series||[]).forEach(function(c,b){c.options.isInternal||!c.options.showInNavigator&&(b!==a&&c.options.id!==a||!1===c.options.showInNavigator)||f.push(c)});this.xAxis&&!this.xAxis.navigatorAxis.fake&&
132
- this.updateNavigatorSeries(!0,b)};b.prototype.updateNavigatorSeries=function(a,b){var c=this,f=c.chart,h=c.baseSeries,p,d,v=c.navigatorOptions.series,e,k={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:"navigator-x-axis",yAxis:"navigator-y-axis",showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},m=c.series=(c.series||[]).filter(function(a){var b=a.baseSeries;return 0>h.indexOf(b)?(b&&(w(b,"updatedData",c.updatedDataHandler),delete b.navigatorSeries),
133
- a.chart&&a.destroy(),!1):!0});h&&h.length&&h.forEach(function(a){var A=a.navigatorSeries,n=R({color:a.color,visible:a.visible},N(v)?Q.navigator.series:v);A&&!1===c.navigatorOptions.adaptToUpdatedData||(k.name="Navigator "+h.length,p=a.options||{},e=p.navigatorOptions||{},n.dataLabels=l(n.dataLabels),d=L(p,k,n,e),d.pointRange=g(n.pointRange,e.pointRange,Q.plotOptions[d.type||"line"].pointRange),n=e.data||n.data,c.hasNavigatorData=c.hasNavigatorData||!!n,d.data=n||p.data&&p.data.slice(0),A&&A.options?
134
- A.update(d,b):(a.navigatorSeries=f.initSeries(d),a.navigatorSeries.baseSeries=a,m.push(a.navigatorSeries)))});if(v.data&&(!h||!h.length)||N(v))c.hasNavigatorData=!1,v=l(v),v.forEach(function(a,b){k.name="Navigator "+(m.length+1);d=L(Q.navigator.series,{color:f.series[b]&&!f.series[b].options.isInternal&&f.series[b].color||f.options.colors[b]||f.options.colors[0]},k,a);d.data=a.data;d.data&&(c.hasNavigatorData=!0,m.push(f.initSeries(d)))});a&&this.addBaseSeriesEvents()};b.prototype.addBaseSeriesEvents=
135
- function(){var a=this,b=a.baseSeries||[];b[0]&&b[0].xAxis&&b[0].eventsToUnbind.push(e(b[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes));b.forEach(function(c){c.eventsToUnbind.push(e(c,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,!1)}));c.eventsToUnbind.push(e(c,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)}));!1!==this.navigatorOptions.adaptToUpdatedData&&c.xAxis&&c.eventsToUnbind.push(e(c,"updatedData",this.updatedDataHandler));
136
- c.eventsToUnbind.push(e(c,"remove",function(){this.navigatorSeries&&(B(a.series,this.navigatorSeries),I(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))},this)};b.prototype.getBaseSeriesMin=function(a){return this.baseSeries.reduce(function(a,c){return Math.min(a,c.xData?c.xData[0]:a)},a)};b.prototype.modifyNavigatorAxisExtremes=function(){var a=this.xAxis,b;"undefined"!==typeof a.getExtremes&&(!(b=this.getUnionExtremes(!0))||b.dataMin===a.min&&b.dataMax===
137
- a.max||(a.min=b.dataMin,a.max=b.dataMax))};b.prototype.modifyBaseAxisExtremes=function(){var a=this.chart.navigator,b=this.getExtremes(),f=b.dataMin,h=b.dataMax;b=b.max-b.min;var p=a.stickToMin,d=a.stickToMax,e=g(this.options.overscroll,0),l=a.series&&a.series[0],k=!!this.setExtremes;if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(p){var m=f;var n=m+b}d&&(n=h+e,p||(m=Math.max(f,n-b,a.getBaseSeriesMin(l&&l.xData?l.xData[0]:-Number.MAX_VALUE))));k&&(p||d)&&P(m)&&(this.min=this.userMin=
138
- m,this.max=this.userMax=n)}a.stickToMin=a.stickToMax=null};b.prototype.updatedDataHandler=function(){var a=this.chart.navigator,b=this.navigatorSeries;a.stickToMax=a.reversedExtremes?0===Math.round(a.zoomedMin):Math.round(a.zoomedMax)>=Math.round(a.size);a.stickToMin=a.shouldStickToMin(this,a);b&&!a.hasNavigatorData&&(b.options.pointStart=this.xData[0],b.setData(this.options.data,!1,null,!1))};b.prototype.shouldStickToMin=function(a,b){b=b.getBaseSeriesMin(a.xData[0]);var c=a.xAxis;a=c.max;var f=
139
- c.min;c=c.options.range;return P(a)&&P(f)?c&&0<a-b?a-b<c&&!this.chart.fixedRange:f<=b:!1};b.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(e(this.chart,"redraw",function(){var a=this.navigator,b=a&&(a.baseSeries&&a.baseSeries[0]&&a.baseSeries[0].xAxis||this.xAxis[0]);b&&a.render(b.min,b.max)}),e(this.chart,"getMargins",function(){var a=this.navigator,b=a.opposite?"plotTop":"marginBottom";this.inverted&&(b=a.opposite?"marginRight":"plotLeft");
140
- this[b]=(this[b]||0)+(a.navigatorEnabled||!this.inverted?a.outlineHeight:0)+a.navigatorOptions.margin}))};b.prototype.destroy=function(){this.removeEvents();this.xAxis&&(B(this.chart.xAxis,this.xAxis),B(this.chart.axes,this.xAxis));this.yAxis&&(B(this.chart.yAxis,this.yAxis),B(this.chart.axes,this.yAxis));(this.series||[]).forEach(function(a){a.destroy&&a.destroy()});"series xAxis yAxis shades outline scrollbarTrack scrollbarRifles scrollbarGroup scrollbar navigatorGroup rendered".split(" ").forEach(function(a){this[a]&&
141
- this[a].destroy&&this[a].destroy();this[a]=null},this);[this.handles].forEach(function(a){D(a)},this)};return b}();y.Navigator||(y.Navigator=h,n.compose(a),e(m,"beforeShowResetZoom",function(){var a=this.options,b=a.navigator,f=a.rangeSelector;if((b&&b.enabled||f&&f.enabled)&&(!G&&"x"===a.chart.zoomType||G&&"x"===a.chart.pinchType))return!1}),e(m,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new h(this)}),e(m,"afterSetChartSize",
142
- function(){var a=this.legend,b=this.navigator;if(b){var f=a&&a.options;var h=b.xAxis;var d=b.yAxis;var e=b.scrollbarHeight;this.inverted?(b.left=b.opposite?this.chartWidth-e-b.height:this.spacing[3]+e,b.top=this.plotTop+e):(b.left=g(h.left,this.plotLeft+e),b.top=b.navigatorOptions.top||this.chartHeight-b.height-e-this.spacing[2]-(this.rangeSelector&&this.extraBottomMargin?this.rangeSelector.getHeight():0)-(f&&"bottom"===f.verticalAlign&&"proximate"!==f.layout&&f.enabled&&!f.floating?a.legendHeight+
143
- g(f.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0));h&&d&&(this.inverted?h.options.left=d.options.left=b.left:h.options.top=d.options.top=b.top,h.setAxisSize(),d.setAxisSize())}}),e(m,"update",function(a){var b=a.options.navigator||{},f=a.options.scrollbar||{};this.navigator||this.scroller||!b.enabled&&!f.enabled||(L(!0,this.options.navigator,b),L(!0,this.options.scrollbar,f),delete a.options.navigator,delete a.options.scrollbar)}),e(m,"afterUpdate",function(a){this.navigator||this.scroller||
144
- !this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new h(this),g(a.redraw,!0)&&this.redraw(a.animation))}),e(m,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),e(b,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,!1)}),m.prototype.callbacks.push(function(a){var b=a.navigator;b&&a.xAxis[0]&&(a=a.xAxis[0].getExtremes(),b.render(a.min,a.max))}));y.Navigator=
145
- h;return y.Navigator});K(a,"Extensions/RangeSelector.js",[a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/Globals.js"],a["Core/DefaultOptions.js"],a["Core/Color/Palette.js"],a["Core/Renderer/SVG/SVGElement.js"],a["Core/Utilities.js"]],function(a,m,u,y,n,K,E){function q(a){if(-1!==a.indexOf("%L"))return"text";var b="aAdewbBmoyY".split("").some(function(b){return-1!==a.indexOf("%"+b)}),h="HkIlMS".split("").some(function(b){return-1!==a.indexOf("%"+b)});return b&&h?"datetime-local":b?"date":
146
- h?"time":"text"}var d=y.defaultOptions,b=E.addEvent,G=E.createElement,k=E.css,t=E.defined,R=E.destroyObjectProperties,Q=E.discardElement,e=E.extend,O=E.find,r=E.fireEvent,I=E.isNumber,D=E.merge,B=E.objectEach,T=E.pad,M=E.pick,N=E.pInt,P=E.splat;e(d,{rangeSelector:{allButtonsEnabled:!1,buttons:void 0,buttonSpacing:5,dropdown:"responsive",enabled:void 0,verticalAlign:"top",buttonTheme:{width:28,height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputBoxBorderColor:"none",inputBoxHeight:17,
147
- inputBoxWidth:void 0,inputDateFormat:"%b %e, %Y",inputDateParser:void 0,inputEditDateFormat:"%Y-%m-%d",inputEnabled:!0,inputPosition:{align:"right",x:0,y:0},inputSpacing:5,selected:void 0,buttonPosition:{align:"left",x:0,y:0},inputStyle:{color:n.highlightColor80,cursor:"pointer"},labelStyle:{color:n.neutralColor60}}});e(d.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"\u2192"});var L=function(){function l(a){this.buttons=void 0;this.buttonOptions=l.prototype.defaultButtons;this.initialButtonGroupWidth=
148
- 0;this.options=void 0;this.chart=a;this.init(a)}l.prototype.clickButton=function(f,h){var d=this.chart,c=this.buttonOptions[f],e=d.xAxis[0],l=d.scroller&&d.scroller.getUnionExtremes()||e||{},g=l.dataMin,k=l.dataMax,m=e&&Math.round(Math.min(e.max,M(k,e.max))),n=c.type;l=c._range;var z,q=c.dataGrouping;if(null!==g&&null!==k){d.fixedRange=l;this.setSelected(f);q&&(this.forcedDataGrouping=!0,a.prototype.setDataGrouping.call(e||{chart:this.chart},q,!1),this.frozenStates=c.preserveDataGrouping);if("month"===
149
- n||"year"===n)if(e){n={range:c,max:m,chart:d,dataMin:g,dataMax:k};var u=e.minFromRange.call(n);I(n.newMax)&&(m=n.newMax)}else l=c;else if(l)u=Math.max(m-l,g),m=Math.min(u+l,k);else if("ytd"===n)if(e)"undefined"===typeof k&&(g=Number.MAX_VALUE,k=Number.MIN_VALUE,d.series.forEach(function(a){a=a.xData;g=Math.min(a[0],g);k=Math.max(a[a.length-1],k)}),h=!1),m=this.getYTDExtremes(k,g,d.time.useUTC),u=z=m.min,m=m.max;else{this.deferredYTDClick=f;return}else"all"===n&&e&&(d.navigator&&d.navigator.baseSeries[0]&&
150
- (d.navigator.baseSeries[0].xAxis.options.range=void 0),u=g,m=k);t(u)&&(u+=c._offsetMin);t(m)&&(m+=c._offsetMax);this.dropdown&&(this.dropdown.selectedIndex=f+1);if(e)e.setExtremes(u,m,M(h,!0),void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:c});else{var w=P(d.options.xAxis)[0];var y=w.range;w.range=l;var B=w.min;w.min=z;b(d,"load",function(){w.range=y;w.min=B})}r(this,"afterBtnClick")}};l.prototype.setSelected=function(a){this.selected=this.options.selected=a};l.prototype.init=function(a){var h=
151
- this,f=a.options.rangeSelector,c=f.buttons||h.defaultButtons.slice(),d=f.selected,e=function(){var a=h.minInput,b=h.maxInput;a&&a.blur&&r(a,"blur");b&&b.blur&&r(b,"blur")};h.chart=a;h.options=f;h.buttons=[];h.buttonOptions=c;this.eventsToUnbind=[];this.eventsToUnbind.push(b(a.container,"mousedown",e));this.eventsToUnbind.push(b(a,"resize",e));c.forEach(h.computeButtonRange);"undefined"!==typeof d&&c[d]&&this.clickButton(d,!1);this.eventsToUnbind.push(b(a,"load",function(){a.xAxis&&a.xAxis[0]&&b(a.xAxis[0],
152
- "setExtremes",function(b){this.max-this.min!==a.fixedRange&&"rangeSelectorButton"!==b.trigger&&"updatedData"!==b.trigger&&h.forcedDataGrouping&&!h.frozenStates&&this.setDataGrouping(!1,!1)})}))};l.prototype.updateButtonStates=function(){var a=this,b=this.chart,d=this.dropdown,c=b.xAxis[0],e=Math.round(c.max-c.min),l=!c.hasVisibleSeries,g=b.scroller&&b.scroller.getUnionExtremes()||c,k=g.dataMin,m=g.dataMax;b=a.getYTDExtremes(m,k,b.time.useUTC);var n=b.min,z=b.max,q=a.selected,r=I(q),u=a.options.allButtonsEnabled,
153
- t=a.buttons;a.buttonOptions.forEach(function(b,f){var h=b._range,p=b.type,v=b.count||1,g=t[f],A=0,x=b._offsetMax-b._offsetMin;b=f===q;var F=h>m-k,C=h<c.minRange,w=!1,H=!1;h=h===e;("month"===p||"year"===p)&&e+36E5>=864E5*{month:28,year:365}[p]*v-x&&e-36E5<=864E5*{month:31,year:366}[p]*v+x?h=!0:"ytd"===p?(h=z-n+x===e,w=!b):"all"===p&&(h=c.max-c.min>=m-k,H=!b&&r&&h);p=!u&&(F||C||H||l);v=b&&h||h&&!r&&!w||b&&a.frozenStates;p?A=3:v&&(r=!0,A=2);g.state!==A&&(g.setState(A),d&&(d.options[f+1].disabled=p,2===
154
- A&&(d.selectedIndex=f+1)),0===A&&q===f&&a.setSelected())})};l.prototype.computeButtonRange=function(a){var b=a.type,f=a.count||1,c={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5};if(c[b])a._range=c[b]*f;else if("month"===b||"year"===b)a._range=864E5*{month:30,year:365}[b]*f;a._offsetMin=M(a.offsetMin,0);a._offsetMax=M(a.offsetMax,0);a._range+=a._offsetMax-a._offsetMin};l.prototype.getInputValue=function(a){a="min"===a?this.minInput:this.maxInput;var b=this.chart.options.rangeSelector,
155
- f=this.chart.time;return a?("text"===a.type&&b.inputDateParser||this.defaultInputDateParser)(a.value,f.useUTC,f):0};l.prototype.setInputValue=function(a,b){var h=this.options,c=this.chart.time,f="min"===a?this.minInput:this.maxInput;a="min"===a?this.minDateBox:this.maxDateBox;if(f){var d=f.getAttribute("data-hc-time");d=t(d)?Number(d):void 0;t(b)&&(t(d)&&f.setAttribute("data-hc-time-previous",d),f.setAttribute("data-hc-time",b),d=b);f.value=c.dateFormat(this.inputTypeFormats[f.type]||h.inputEditDateFormat,
156
- d);a&&a.attr({text:c.dateFormat(h.inputDateFormat,d)})}};l.prototype.setInputExtremes=function(a,b,d){if(a="min"===a?this.minInput:this.maxInput){var c=this.inputTypeFormats[a.type],h=this.chart.time;c&&(b=h.dateFormat(c,b),a.min!==b&&(a.min=b),d=h.dateFormat(c,d),a.max!==d&&(a.max=d))}};l.prototype.showInput=function(a){var b="min"===a?this.minDateBox:this.maxDateBox;if((a="min"===a?this.minInput:this.maxInput)&&b&&this.inputGroup){var d="text"===a.type,c=this.inputGroup,f=c.translateX;c=c.translateY;
157
- var e=this.options.inputBoxWidth;k(a,{width:d?b.width+(e?-2:20)+"px":"auto",height:d?b.height-2+"px":"auto",border:"2px solid silver"});d&&e?k(a,{left:f+b.x+"px",top:c+"px"}):k(a,{left:Math.min(Math.round(b.x+f-(a.offsetWidth-b.width)/2),this.chart.chartWidth-a.offsetWidth)+"px",top:c-(a.offsetHeight-b.height)/2+"px"})}};l.prototype.hideInput=function(a){(a="min"===a?this.minInput:this.maxInput)&&k(a,{top:"-9999em",border:0,width:"1px",height:"1px"})};l.prototype.defaultInputDateParser=function(a,
158
- b,d){var c=a.split("/").join("-").split(" ").join("T");-1===c.indexOf("T")&&(c+="T00:00");if(b)c+="Z";else{var h;if(h=u.isSafari)h=c,h=!(6<h.length&&(h.lastIndexOf("-")===h.length-6||h.lastIndexOf("+")===h.length-6));h&&(h=(new Date(c)).getTimezoneOffset()/60,c+=0>=h?"+"+T(-h)+":00":"-"+T(h)+":00")}c=Date.parse(c);I(c)||(a=a.split("-"),c=Date.UTC(N(a[0]),N(a[1])-1,N(a[2])));d&&b&&I(c)&&(c+=d.getTimezoneOffset(c));return c};l.prototype.drawInput=function(a){function b(){var b=g.getInputValue(a),c=
159
- f.xAxis[0],h=f.scroller&&f.scroller.xAxis?f.scroller.xAxis:c,d=h.dataMin;h=h.dataMax;var e=g.maxInput,p=g.minInput;b!==Number(t.getAttribute("data-hc-time-previous"))&&I(b)&&(t.setAttribute("data-hc-time-previous",b),C&&e&&I(d)?b>Number(e.getAttribute("data-hc-time"))?b=void 0:b<d&&(b=d):p&&I(h)&&(b<Number(p.getAttribute("data-hc-time"))?b=void 0:b>h&&(b=h)),"undefined"!==typeof b&&c.setExtremes(C?b:c.min,C?c.max:b,void 0,void 0,{trigger:"rangeSelectorInput"}))}var f=this.chart,c=this.div,l=this.inputGroup,
160
- g=this,m=f.renderer.style||{},r=f.renderer,x=f.options.rangeSelector,C="min"===a,z=d.lang[C?"rangeSelectorFrom":"rangeSelectorTo"]||"";z=r.label(z,0).addClass("highcharts-range-label").attr({padding:z?2:0,height:z?x.inputBoxHeight:0}).add(l);r=r.label("",0).addClass("highcharts-range-input").attr({padding:2,width:x.inputBoxWidth,height:x.inputBoxHeight,"text-align":"center"}).on("click",function(){g.showInput(a);g[a+"Input"].focus()});f.styledMode||r.attr({stroke:x.inputBoxBorderColor,"stroke-width":1});
161
- r.add(l);var t=G("input",{name:a,className:"highcharts-range-selector"},void 0,c);t.setAttribute("type",q(x.inputDateFormat||"%b %e, %Y"));f.styledMode||(z.css(D(m,x.labelStyle)),r.css(D({color:n.neutralColor80},m,x.inputStyle)),k(t,e({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:m.fontSize,fontFamily:m.fontFamily,top:"-9999em"},x.inputStyle)));t.onfocus=function(){g.showInput(a)};t.onblur=function(){t===u.doc.activeElement&&
162
- b();g.hideInput(a);g.setInputValue(a);t.blur()};var w=!1;t.onchange=function(){w||(b(),g.hideInput(a),t.blur())};t.onkeypress=function(a){13===a.keyCode&&b()};t.onkeydown=function(a){w=!0;38!==a.keyCode&&40!==a.keyCode||b()};t.onkeyup=function(){w=!1};return{dateBox:r,input:t,label:z}};l.prototype.getPosition=function(){var a=this.chart,b=a.options.rangeSelector;a="top"===b.verticalAlign?a.plotTop-a.axisOffset[0]:0;return{buttonTop:a+b.buttonPosition.y,inputTop:a+b.inputPosition.y-10}};l.prototype.getYTDExtremes=
163
- function(a,b,d){var c=this.chart.time,h=new c.Date(a),f=c.get("FullYear",h);d=d?c.Date.UTC(f,0,1):+new c.Date(f,0,1);b=Math.max(b,d);h=h.getTime();return{max:Math.min(a||h,h),min:b}};l.prototype.render=function(a,b){var h=this.chart,c=h.renderer,d=h.container,f=h.options,e=f.rangeSelector,l=M(f.chart.style&&f.chart.style.zIndex,0)+1;f=e.inputEnabled;if(!1!==e.enabled){this.rendered||(this.group=c.g("range-selector-group").attr({zIndex:7}).add(),this.div=G("div",void 0,{position:"relative",height:0,
164
- zIndex:l}),this.buttonOptions.length&&this.renderButtons(),d.parentNode&&d.parentNode.insertBefore(this.div,d),f&&(this.inputGroup=c.g("input-group").add(this.group),c=this.drawInput("min"),this.minDateBox=c.dateBox,this.minLabel=c.label,this.minInput=c.input,c=this.drawInput("max"),this.maxDateBox=c.dateBox,this.maxLabel=c.label,this.maxInput=c.input));if(f&&(this.setInputValue("min",a),this.setInputValue("max",b),a=h.scroller&&h.scroller.getUnionExtremes()||h.xAxis[0]||{},t(a.dataMin)&&t(a.dataMax)&&
165
- (h=h.xAxis[0].minRange||0,this.setInputExtremes("min",a.dataMin,Math.min(a.dataMax,this.getInputValue("max"))-h),this.setInputExtremes("max",Math.max(a.dataMin,this.getInputValue("min"))+h,a.dataMax)),this.inputGroup)){var g=0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(function(a){if(a){var b=a.getBBox().width;b&&(a.attr({x:g}),g+=b+e.inputSpacing)}})}this.alignElements();this.rendered=!0}};l.prototype.renderButtons=function(){var a=this,h=this.buttons,e=this.options,c=
166
- d.lang,l=this.chart.renderer,g=D(e.buttonTheme),k=g&&g.states,m=g.width||28;delete g.width;delete g.states;this.buttonGroup=l.g("range-selector-buttons").add(this.group);var n=this.dropdown=G("select",void 0,{position:"absolute",width:"1px",height:"1px",padding:0,border:0,top:"-9999em",cursor:"pointer",opacity:.0001},this.div);b(n,"touchstart",function(){n.style.fontSize="16px"});[[u.isMS?"mouseover":"mouseenter"],[u.isMS?"mouseout":"mouseleave"],["change","click"]].forEach(function(c){var d=c[0],
167
- f=c[1];b(n,d,function(){var b=h[a.currentButtonIndex()];b&&r(b.element,f||d)})});this.zoomText=l.label(c&&c.rangeSelectorZoom||"",0).attr({padding:e.buttonTheme.padding,height:e.buttonTheme.height,paddingLeft:0,paddingRight:0}).add(this.buttonGroup);this.chart.styledMode||(this.zoomText.css(e.labelStyle),g["stroke-width"]=M(g["stroke-width"],0));G("option",{textContent:this.zoomText.textStr,disabled:!0},void 0,n);this.buttonOptions.forEach(function(b,c){G("option",{textContent:b.title||b.text},void 0,
168
- n);h[c]=l.button(b.text,0,0,function(h){var d=b.events&&b.events.click,f;d&&(f=d.call(b,h));!1!==f&&a.clickButton(c);a.isActive=!0},g,k&&k.hover,k&&k.select,k&&k.disabled).attr({"text-align":"center",width:m}).add(a.buttonGroup);b.title&&h[c].attr("title",b.title)})};l.prototype.alignElements=function(){var a=this,b=this.buttonGroup,d=this.buttons,c=this.chart,e=this.group,l=this.inputGroup,g=this.options,k=this.zoomText,m=c.options,n=m.exporting&&!1!==m.exporting.enabled&&m.navigation&&m.navigation.buttonOptions;
169
- m=g.buttonPosition;var q=g.inputPosition,r=g.verticalAlign,t=function(b,d){return n&&a.titleCollision(c)&&"top"===r&&"right"===d.align&&d.y-b.getBBox().height-12<(n.y||0)+(n.height||0)+c.spacing[0]?-40:0},u=c.plotLeft;if(e&&m&&q){var w=m.x-c.spacing[3];if(b){this.positionButtons();if(!this.initialButtonGroupWidth){var y=0;k&&(y+=k.getBBox().width+5);d.forEach(function(a,b){y+=a.width;b!==d.length-1&&(y+=g.buttonSpacing)});this.initialButtonGroupWidth=y}u-=c.spacing[3];this.updateButtonStates();k=
170
- t(b,m);this.alignButtonGroup(k);e.placed=b.placed=c.hasLoaded}b=0;l&&(b=t(l,q),"left"===q.align?w=u:"right"===q.align&&(w=-Math.max(c.axisOffset[1],-b)),l.align({y:q.y,width:l.getBBox().width,align:q.align,x:q.x+w-2},!0,c.spacingBox),l.placed=c.hasLoaded);this.handleCollision(b);e.align({verticalAlign:r},!0,c.spacingBox);l=e.alignAttr.translateY;b=e.getBBox().height+20;t=0;"bottom"===r&&(t=(t=c.legend&&c.legend.options)&&"bottom"===t.verticalAlign&&t.enabled&&!t.floating?c.legend.legendHeight+M(t.margin,
171
- 10):0,b=b+t-20,t=l-b-(g.floating?0:g.y)-(c.titleOffset?c.titleOffset[2]:0)-10);if("top"===r)g.floating&&(t=0),c.titleOffset&&c.titleOffset[0]&&(t=c.titleOffset[0]),t+=c.margin[0]-c.spacing[0]||0;else if("middle"===r)if(q.y===m.y)t=l;else if(q.y||m.y)t=0>q.y||0>m.y?t-Math.min(q.y,m.y):l-b;e.translate(g.x,g.y+Math.floor(t));m=this.minInput;q=this.maxInput;l=this.dropdown;g.inputEnabled&&m&&q&&(m.style.marginTop=e.translateY+"px",q.style.marginTop=e.translateY+"px");l&&(l.style.marginTop=e.translateY+
172
- "px")}};l.prototype.alignButtonGroup=function(a,b){var d=this.chart,c=this.buttonGroup,h=this.options.buttonPosition,f=d.plotLeft-d.spacing[3],e=h.x-d.spacing[3];"right"===h.align?e+=a-f:"center"===h.align&&(e-=f/2);c&&c.align({y:h.y,width:M(b,this.initialButtonGroupWidth),align:h.align,x:e},!0,d.spacingBox)};l.prototype.positionButtons=function(){var a=this.buttons,b=this.chart,d=this.options,c=this.zoomText,e=b.hasLoaded?"animate":"attr",l=d.buttonPosition,g=b.plotLeft,k=g;c&&"hidden"!==c.visibility&&
173
- (c[e]({x:M(g+l.x,g)}),k+=l.x+c.getBBox().width+5);this.buttonOptions.forEach(function(b,c){if("hidden"!==a[c].visibility)a[c][e]({x:k}),k+=a[c].width+d.buttonSpacing;else a[c][e]({x:g})})};l.prototype.handleCollision=function(a){var b=this,d=this.chart,c=this.buttonGroup,f=this.inputGroup,e=this.options,l=e.buttonPosition,g=e.dropdown,k=e.inputPosition;e=function(){var a=0;b.buttons.forEach(function(b){b=b.getBBox();b.width>a&&(a=b.width)});return a};var m=function(b){if(f&&c){var d=f.alignAttr.translateX+
174
- f.alignOptions.x-a+f.getBBox().x+2,h=f.alignOptions.width,e=c.alignAttr.translateX+c.getBBox().x;return e+b>d&&d+h>e&&l.y<k.y+f.getBBox().height}return!1},n=function(){f&&c&&f.attr({translateX:f.alignAttr.translateX+(d.axisOffset[1]>=-a?0:-a),translateY:f.alignAttr.translateY+c.getBBox().height+10})};if(c){if("always"===g){this.collapseButtons(a);m(e())&&n();return}"never"===g&&this.expandButtons()}f&&c?k.align===l.align||m(this.initialButtonGroupWidth+20)?"responsive"===g?(this.collapseButtons(a),
175
- m(e())&&n()):n():"responsive"===g&&this.expandButtons():c&&"responsive"===g&&(this.initialButtonGroupWidth>d.plotWidth?this.collapseButtons(a):this.expandButtons())};l.prototype.collapseButtons=function(a){var b=this.buttons,d=this.buttonOptions,c=this.chart,f=this.dropdown,e=this.options,l=this.zoomText,g=c.userOptions.rangeSelector&&c.userOptions.rangeSelector.buttonTheme||{},k=function(a){return{text:a?a+" \u25be":"\u25be",width:"auto",paddingLeft:M(e.buttonTheme.paddingLeft,g.padding,8),paddingRight:M(e.buttonTheme.paddingRight,
176
- g.padding,8)}};l&&l.hide();var m=!1;d.forEach(function(a,c){c=b[c];2!==c.state?c.hide():(c.show(),c.attr(k(a.text)),m=!0)});m||(f&&(f.selectedIndex=0),b[0].show(),b[0].attr(k(this.zoomText&&this.zoomText.textStr)));d=e.buttonPosition.align;this.positionButtons();"right"!==d&&"center"!==d||this.alignButtonGroup(a,b[this.currentButtonIndex()].getBBox().width);this.showDropdown()};l.prototype.expandButtons=function(){var a=this.buttons,b=this.buttonOptions,d=this.options,c=this.zoomText;this.hideDropdown();
177
- c&&c.show();b.forEach(function(b,c){c=a[c];c.show();c.attr({text:b.text,width:d.buttonTheme.width||28,paddingLeft:M(d.buttonTheme.paddingLeft,"unset"),paddingRight:M(d.buttonTheme.paddingRight,"unset")});2>c.state&&c.setState(0)});this.positionButtons()};l.prototype.currentButtonIndex=function(){var a=this.dropdown;return a&&0<a.selectedIndex?a.selectedIndex-1:0};l.prototype.showDropdown=function(){var a=this.buttonGroup,b=this.buttons,d=this.chart,c=this.dropdown;if(a&&c){var e=a.translateX;a=a.translateY;
178
- b=b[this.currentButtonIndex()].getBBox();k(c,{left:d.plotLeft+e+"px",top:a+.5+"px",width:b.width+"px",height:b.height+"px"});this.hasVisibleDropdown=!0}};l.prototype.hideDropdown=function(){var a=this.dropdown;a&&(k(a,{top:"-9999em",width:"1px",height:"1px"}),this.hasVisibleDropdown=!1)};l.prototype.getHeight=function(){var a=this.options,b=this.group,d=a.y,c=a.buttonPosition.y,e=a.inputPosition.y;if(a.height)return a.height;this.alignElements();a=b?b.getBBox(!0).height+13+d:0;b=Math.min(e,c);if(0>
179
- e&&0>c||0<e&&0<c)a+=Math.abs(b);return a};l.prototype.titleCollision=function(a){return!(a.options.title.text||a.options.subtitle.text)};l.prototype.update=function(a){var b=this.chart;D(!0,b.options.rangeSelector,a);this.destroy();this.init(b);this.render()};l.prototype.destroy=function(){var a=this,b=a.minInput,d=a.maxInput;a.eventsToUnbind&&(a.eventsToUnbind.forEach(function(a){return a()}),a.eventsToUnbind=void 0);R(a.buttons);b&&(b.onfocus=b.onblur=b.onchange=null);d&&(d.onfocus=d.onblur=d.onchange=
180
- null);B(a,function(b,d){b&&"chart"!==d&&(b instanceof K?b.destroy():b instanceof window.HTMLElement&&Q(b));b!==l.prototype[d]&&(a[d]=null)},this)};return l}();L.prototype.defaultButtons=[{type:"month",count:1,text:"1m",title:"View 1 month"},{type:"month",count:3,text:"3m",title:"View 3 months"},{type:"month",count:6,text:"6m",title:"View 6 months"},{type:"ytd",text:"YTD",title:"View year to date"},{type:"year",count:1,text:"1y",title:"View 1 year"},{type:"all",text:"All",title:"View all"}];L.prototype.inputTypeFormats=
181
- {"datetime-local":"%Y-%m-%dT%H:%M:%S",date:"%Y-%m-%d",time:"%H:%M:%S"};a.prototype.minFromRange=function(){var a=this.range,b=a.type,d=this.max,e=this.chart.time,c=function(a,c){var d="year"===b?"FullYear":"Month",h=new e.Date(a),f=e.get(d,h);e.set(d,h,f+c);f===e.get(d,h)&&e.set("Date",h,0);return h.getTime()-a};if(I(a)){var g=d-a;var k=a}else g=d+c(d,-a.count),this.chart&&(this.chart.fixedRange=d-g);var m=M(this.dataMin,Number.MIN_VALUE);I(g)||(g=m);g<=m&&(g=m,"undefined"===typeof k&&(k=c(g,a.count)),
182
- this.newMax=Math.min(g+k,this.dataMax));I(d)||(g=void 0);return g};if(!u.RangeSelector){var g=[],w=function(a){function d(){e&&(h=a.xAxis[0].getExtremes(),c=a.legend,k=e&&e.options.verticalAlign,I(h.min)&&e.render(h.min,h.max),c.display&&"top"===k&&k===c.options.verticalAlign&&(l=D(a.spacingBox),l.y="vertical"===c.options.layout?a.plotTop:l.y+e.getHeight(),c.group.placed=!1,c.align(l)))}var h,e=a.rangeSelector,c,l,k;e&&(O(g,function(b){return b[0]===a})||g.push([a,[b(a.xAxis[0],"afterSetExtremes",
183
- function(a){e&&e.render(a.min,a.max)}),b(a,"redraw",d)]]),d())};b(m,"afterGetContainer",function(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new L(this))});b(m,"beforeRender",function(){var a=this.axes,b=this.rangeSelector;b&&(I(b.deferredYTDClick)&&(b.clickButton(b.deferredYTDClick),delete b.deferredYTDClick),a.forEach(function(a){a.updateNames();a.setScale()}),this.getAxisMargins(),b.render(),a=b.options.verticalAlign,b.options.floating||("bottom"===a?this.extraBottomMargin=
184
- !0:"middle"!==a&&(this.extraTopMargin=!0)))});b(m,"update",function(a){var b=a.options.rangeSelector;a=this.rangeSelector;var d=this.extraBottomMargin,e=this.extraTopMargin;b&&b.enabled&&!t(a)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=a=new L(this));this.extraTopMargin=this.extraBottomMargin=!1;a&&(w(this),b=b&&b.verticalAlign||a.options&&a.options.verticalAlign,a.options.floating||("bottom"===b?this.extraBottomMargin=!0:"middle"!==b&&(this.extraTopMargin=
185
- !0)),this.extraBottomMargin!==d||this.extraTopMargin!==e)&&(this.isDirtyBox=!0)});b(m,"render",function(){var a=this.rangeSelector;a&&!a.options.floating&&(a.render(),a=a.options.verticalAlign,"bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=!0))});b(m,"getMargins",function(){var a=this.rangeSelector;a&&(a=a.getHeight(),this.extraTopMargin&&(this.plotTop+=a),this.extraBottomMargin&&(this.marginBottom+=a))});m.prototype.callbacks.push(w);b(m,"destroy",function(){for(var a=
186
- 0;a<g.length;a++){var b=g[a];if(b[0]===this){b[1].forEach(function(a){return a()});g.splice(a,1);break}}});u.RangeSelector=L}return L});K(a,"Core/Chart/StockChart.js",[a["Core/Animation/AnimationUtilities.js"],a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/FormatUtilities.js"],a["Core/DefaultOptions.js"],a["Core/Color/Palette.js"],a["Core/Series/Point.js"],a["Core/Series/Series.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Utilities.js"]],function(a,m,u,y,n,K,E,q,d,b){function G(a,b){return"xAxis"===
187
- a?{minPadding:0,maxPadding:0,overscroll:0,ordinal:!0,title:{text:null},labels:{overflow:"justify"},showLastLabel:!0}:"yAxis"===a?{labels:{y:-2},opposite:l(b.opposite,!0),showLastLabel:!(!b.categories&&"category"!==b.type),title:{text:null}}:{}}function k(a,b){if("xAxis"===a){a=e();var c={type:"datetime",categories:void 0};l(b.navigator&&b.navigator.enabled,a.navigator.enabled,!0)&&(c.startOnTick=!1,c.endOnTick=!1);return c}return{}}var t=this&&this.__extends||function(){var a=function(b,c){a=Object.setPrototypeOf||
188
- {__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var c in b)b.hasOwnProperty(c)&&(a[c]=b[c])};return a(b,c)};return function(b,c){function d(){this.constructor=b}a(b,c);b.prototype=null===c?Object.create(c):(d.prototype=c.prototype,new d)}}(),R=a.animObject,Q=y.format,e=n.getOptions,O=E.prototype.tooltipFormatter;a=q.prototype;var r=a.init,I=a.processData;a=b.addEvent;var D=b.arrayMax,B=b.arrayMin,T=b.clamp,M=b.defined,N=b.extend,P=b.find,L=b.isNumber,g=b.isString,w=
189
- b.merge,l=b.pick,f=b.splat;b=function(a){function b(){return null!==a&&a.apply(this,arguments)||this}t(b,a);b.prototype.init=function(b,d){var c=e(),h=b.xAxis,g=b.yAxis,m=l(b.navigator&&b.navigator.enabled,c.navigator.enabled,!0);b.xAxis=b.yAxis=void 0;m=w({chart:{panning:{enabled:!0,type:"x"},pinchType:"x"},navigator:{enabled:m},scrollbar:{enabled:l(c.scrollbar&&c.scrollbar.enabled,!0)},rangeSelector:{enabled:l(c.rangeSelector.enabled,!0)},title:{text:null},tooltip:{split:l(c.tooltip.split,!0),crosshairs:!0},
190
- legend:{enabled:!1}},b,{isStock:!0});b.xAxis=h;b.yAxis=g;m.xAxis=f(b.xAxis||{}).map(function(a,d){return w(G("xAxis",a),c.xAxis,c.xAxis&&c.xAxis[d],a,k("xAxis",b))});m.yAxis=f(b.yAxis||{}).map(function(a,b){return w(G("yAxis",a),c.yAxis,c.yAxis&&c.yAxis[b],a)});a.prototype.init.call(this,m,d)};b.prototype.createAxis=function(b,d){d.axis=w(G(b,d.axis),d.axis,k(b,this.userOptions));return a.prototype.createAxis.call(this,b,d)};return b}(u);(function(a){a.stockChart=function(b,c,d){return new a(b,c,
191
- d)}})(b||(b={}));a(q,"setOptions",function(a){var b;this.chart.options.isStock&&(this.is("column")||this.is("columnrange")?b={borderWidth:0,shadow:!1}:this.is("scatter")||this.is("sma")||(b={marker:{enabled:!1,radius:2}}),b&&(a.plotOptions[this.type]=w(a.plotOptions[this.type],b)))});a(m,"autoLabelAlign",function(a){var b=this.chart,c=this.options;b=b._labelPanes=b._labelPanes||{};var d=this.options.labels;this.chart.options.isStock&&"yAxis"===this.coll&&(c=c.top+","+c.height,!b[c]&&d.enabled&&(15===
192
- d.x&&(d.x=0),"undefined"===typeof d.align&&(d.align="right"),b[c]=this,a.align="right",a.preventDefault()))});a(m,"destroy",function(){var a=this.chart,b=this.options&&this.options.top+","+this.options.height;b&&a._labelPanes&&a._labelPanes[b]===this&&delete a._labelPanes[b]});a(m,"getPlotLinePath",function(a){function b(a){var b="xAxis"===a?"yAxis":"xAxis";a=c.options[b];return L(a)?[e[b][a]]:g(a)?[e.get(a)]:d.map(function(a){return a[b]})}var c=this,d=this.isLinked&&!this.series?this.linkedParent.series:
193
- this.series,e=c.chart,h=e.renderer,f=c.left,k=c.top,m,n,q,r,t=[],u=[],w=a.translatedValue,y=a.value,B=a.force;if(e.options.isStock&&!1!==a.acrossPanes&&"xAxis"===c.coll||"yAxis"===c.coll){a.preventDefault();u=b(c.coll);var E=c.isXAxis?e.yAxis:e.xAxis;E.forEach(function(a){if(M(a.options.id)?-1===a.options.id.indexOf("navigator"):1){var b=a.isXAxis?"yAxis":"xAxis";b=M(a.options[b])?e[b][a.options[b]]:e[b][0];c===b&&u.push(a)}});var D=u.length?[]:[c.isXAxis?e.yAxis[0]:e.xAxis[0]];u.forEach(function(a){-1!==
194
- D.indexOf(a)||P(D,function(b){return b.pos===a.pos&&b.len===a.len})||D.push(a)});var G=l(w,c.translate(y,null,null,a.old));L(G)&&(c.horiz?D.forEach(function(a){var b;n=a.pos;r=n+a.len;m=q=Math.round(G+c.transB);"pass"!==B&&(m<f||m>f+c.width)&&(B?m=q=T(m,f,f+c.width):b=!0);b||t.push(["M",m,n],["L",q,r])}):D.forEach(function(a){var b;m=a.pos;q=m+a.len;n=r=Math.round(k+c.height-G);"pass"!==B&&(n<k||n>k+c.height)&&(B?n=r=T(n,k,k+c.height):b=!0);b||t.push(["M",m,n],["L",q,r])}));a.path=0<t.length?h.crispPolyLine(t,
195
- a.lineWidth||1):null}});d.prototype.crispPolyLine=function(a,b){for(var c=0;c<a.length;c+=2){var d=a[c],e=a[c+1];d[1]===e[1]&&(d[1]=e[1]=Math.round(d[1])-b%2/2);d[2]===e[2]&&(d[2]=e[2]=Math.round(d[2])+b%2/2)}return a};a(m,"afterHideCrosshair",function(){this.crossLabel&&(this.crossLabel=this.crossLabel.hide())});a(m,"afterDrawCrosshair",function(a){var b,c;if(this.crosshair&&this.crosshair.label&&this.crosshair.label.enabled&&this.cross&&L(this.min)&&L(this.max)){var d=this.chart,e=this.logarithmic,
196
- h=this.crosshair.label,f=this.horiz,g=this.opposite,k=this.left,m=this.top,n=this.crossLabel,q=h.format,r="",t="inside"===this.options.tickPosition,u=!1!==this.crosshair.snap,w=0,y=a.e||this.cross&&this.cross.e;a=a.point;var B=this.min,D=this.max;e&&(B=e.lin2log(B),D=e.lin2log(D));e=f?"center":g?"right"===this.labelAlign?"right":"left":"left"===this.labelAlign?"left":"center";n||(n=this.crossLabel=d.renderer.label("",0,void 0,h.shape||"callout").addClass("highcharts-crosshair-label highcharts-color-"+
197
- (a?a.series.colorIndex:this.series[0]&&this.series[0].colorIndex)).attr({align:h.align||e,padding:l(h.padding,8),r:l(h.borderRadius,3),zIndex:2}).add(this.labelGroup),d.styledMode||n.attr({fill:h.backgroundColor||a&&a.series&&a.series.color||K.neutralColor60,stroke:h.borderColor||"","stroke-width":h.borderWidth||0}).css(N({color:K.backgroundColor,fontWeight:"normal",fontSize:"11px",textAlign:"center"},h.style||{})));f?(e=u?(a.plotX||0)+k:y.chartX,m+=g?0:this.height):(e=g?this.width+k:0,m=u?(a.plotY||
198
- 0)+m:y.chartY);q||h.formatter||(this.dateTime&&(r="%b %d, %Y"),q="{value"+(r?":"+r:"")+"}");r=u?this.isXAxis?a.x:a.y:this.toValue(f?y.chartX:y.chartY);u=a?a.series.isPointInside(a):L(r)&&r>B&&r<D;y="";q?y=Q(q,{value:r},d):h.formatter&&L(r)&&(y=h.formatter.call(this,r));n.attr({text:y,x:e,y:m,visibility:u?"visible":"hidden"});h=n.getBBox();if(L(n.y))if(f){if(t&&!g||!t&&g)m=n.y-h.height}else m=n.y-h.height/2;f?(b=k-h.x,c=k+this.width-h.x):(b="left"===this.labelAlign?k:0,c="right"===this.labelAlign?
199
- k+this.width:d.chartWidth);n.translateX<b&&(w=b-n.translateX);n.translateX+h.width>=c&&(w=-(n.translateX+h.width-c));n.attr({x:e+w,y:m,anchorX:f?e:this.opposite?0:d.chartWidth,anchorY:f?this.opposite?d.chartHeight:0:m+h.height/2})}});q.prototype.init=function(){r.apply(this,arguments);this.initCompare(this.options.compare)};q.prototype.setCompare=function(a){this.initCompare(a);this.userOptions.compare=a};q.prototype.initCompare=function(a){this.modifyValue="value"===a||"percent"===a?function(b,c){var d=
200
- this.compareValue;return"undefined"!==typeof b&&"undefined"!==typeof d?(b="value"===a?b-d:b/d*100-(100===this.options.compareBase?0:100),c&&(c.change=b),b):0}:null;this.chart.hasRendered&&(this.isDirty=!0)};q.prototype.forceCropping=function(){var a=this.chart,b=this.options.dataGrouping;return!1!==this.allowDG&&b&&l(b.enabled,a.options.isStock)};q.prototype.processData=function(a){var b,c=-1,d=!0===this.options.compareStart?0:1;I.apply(this,arguments);if(this.xAxis&&this.processedYData){var e=this.processedXData;
201
- var h=this.processedYData;var f=h.length;this.pointArrayMap&&(c=this.pointArrayMap.indexOf(this.options.pointValKey||this.pointValKey||"y"));for(b=0;b<f-d;b++){var g=h[b]&&-1<c?h[b][c]:h[b];if(L(g)&&e[b+d]>=this.xAxis.min&&0!==g){this.compareValue=g;break}}}};a(q,"afterGetExtremes",function(a){a=a.dataExtremes;if(this.modifyValue&&a){var b=[this.modifyValue(a.dataMin),this.modifyValue(a.dataMax)];a.dataMin=B(b);a.dataMax=D(b)}});m.prototype.setCompare=function(a,b){this.isXAxis||(this.series.forEach(function(b){b.setCompare(a)}),
202
- l(b,!0)&&this.chart.redraw())};E.prototype.tooltipFormatter=function(a){var b=this.series.chart.numberFormatter;a=a.replace("{point.change}",(0<this.change?"+":"")+b(this.change,l(this.series.tooltipOptions.changeDecimals,2)));return O.apply(this,[a])};a(q,"render",function(){var a=this.chart;if(!(a.is3d&&a.is3d()||a.polar)&&this.xAxis&&!this.xAxis.isRadial&&!1!==this.options.clip){var b=this.yAxis.len;if(this.xAxis.axisLine){var c=a.plotTop+a.plotHeight-this.yAxis.pos-this.yAxis.len,d=Math.floor(this.xAxis.axisLine.strokeWidth()/
203
- 2);0<=c&&(b-=Math.max(d-c,0))}if(!a.hasLoaded||!this.clipBox&&this.isDirty&&!this.isDirtyData)this.clipBox=this.clipBox||w(a.clipBox),this.clipBox.width=this.xAxis.len,this.clipBox.height=b;a.hasRendered&&(c=R(this.options.animation),c=this.getSharedClipKey(c),d=a.sharedClips[c])&&(d.animate({width:this.xAxis.len,height:b}),(a=a.sharedClips[c+"m"])&&a.animate({width:this.xAxis.len}))}});a(u,"update",function(a){a=a.options;"scrollbar"in a&&this.navigator&&(w(!0,this.options.scrollbar,a.scrollbar),
204
- this.navigator.update({},!1),delete a.scrollbar)});"";return b});K(a,"masters/modules/stock.src.js",[a["Core/Globals.js"],a["Core/Axis/OrdinalAxis.js"],a["Core/Scrollbar.js"],a["Core/Chart/StockChart.js"]],function(a,m,u,y){a.Scrollbar=u;a.StockChart=a.stockChart=y.stockChart;u.compose(a.Axis);m.compose(a.Axis,a.Series,a.Chart)})});
10
+ 'use strict';(function(a){"object"===typeof module&&module.exports?(a["default"]=a,module.exports=a):"function"===typeof define&&define.amd?define("highcharts/modules/stock",["highcharts"],function(L){a(L);a.Highcharts=L;return a}):a("undefined"!==typeof Highcharts?Highcharts:void 0)})(function(a){function L(a,r,y,t){a.hasOwnProperty(r)||(a[r]=t.apply(null,y))}a=a?a._modules:{};L(a,"Core/Axis/OrdinalAxis.js",[a["Core/Axis/Axis.js"],a["Core/Globals.js"],a["Core/Series/Series.js"],a["Core/Utilities.js"]],
11
+ function(a,r,y,t){var l=t.addEvent,D=t.correctFloat,E=t.css,x=t.defined,b=t.error,m=t.pick,d=t.timeUnits,z=[],h;(function(h){function H(f,e,c,n,p,g,v){void 0===p&&(p=[]);void 0===g&&(g=0);var w={},Q=this.options.tickPixelInterval,O=this.chart.time,B=[],G,A,k=0,u=[],h=-Number.MAX_VALUE;if(!this.options.ordinal&&!this.options.breaks||!p||3>p.length||"undefined"===typeof e)return O.getTimeTicks.apply(O,arguments);var m=p.length;for(G=0;G<m;G++){var F=G&&p[G-1]>c;p[G]<e&&(k=G);if(G===m-1||p[G+1]-p[G]>
12
+ 5*g||F){if(p[G]>h){for(A=O.getTimeTicks(f,p[k],p[G],n);A.length&&A[0]<=h;)A.shift();A.length&&(h=A[A.length-1]);B.push(u.length);u=u.concat(A)}k=G+1}if(F)break}if(A){A=A.info;if(v&&A.unitRange<=d.hour){G=u.length-1;for(k=1;k<G;k++)if(O.dateFormat("%d",u[k])!==O.dateFormat("%d",u[k-1])){w[u[k]]="day";var q=!0}q&&(w[u[0]]="day");A.higherRanks=w}A.segmentStarts=B;u.info=A}else b(12,!1,this.chart);if(v&&x(Q)){A=u.length;O=[];k=[];G=void 0;for(q=A;q--;)B=this.translate(u[q]),G&&(k[q]=G-B),O[q]=G=B;k.sort();
13
+ k=k[Math.floor(k.length/2)];k<.6*Q&&(k=null);q=u[A-1]>c?A-1:A;for(G=void 0;q--;)B=O[q],A=Math.abs(G-B),G&&A<.8*Q&&(null===k||A<.8*k)?(w[u[q]]&&!w[u[q+1]]?(A=q+1,G=B):A=q,u.splice(A,1)):G=B}return u}function I(f){var e=this.ordinal.positions;if(!e)return f;var c=e.length-1;if(0>f)f=e[0];else if(f>c)f=e[c];else{c=Math.floor(f);var n=f-c}return"undefined"!==typeof n&&"undefined"!==typeof e[c]?e[c]+(n?n*(e[c+1]-e[c]):0):f}function C(f){var e=this.ordinal,c=e.positions;if(!c)return f;var n=(f-(this.old?
14
+ this.old.min:this.min))*(this.old?this.old.transA:this.transA)+this.minPixelPadding;0<n&&n<this.left+this.len||(e.extendedOrdinalPositions||(e.extendedOrdinalPositions=e.getExtendedPositions()),c=e.extendedOrdinalPositions);if(c&&c.length){f=e.getIndexOfPoint(n,c);e=D(f%1);if(0<=f&&f<c.length-1)return c[Math.floor(f)]+e*(c[Math.ceil(f)]-c[Math.floor(f)]);e=c.length;n=c[0];c=c[e-1];var p=(c-n)/(e-1);return 0>f?n+p*f:c+p*(f-e)}return f}function q(f,e){var c=h.Additions.findIndexOf(f,e,!0);return f[c]===
15
+ e?c:c+(e-f[c])/(f[c+1]-f[c])}function K(){this.ordinal||(this.ordinal=new h.Additions(this))}function a(){this.isXAxis&&x(this.options.overscroll)&&this.max===this.dataMax&&(!this.chart.mouseIsDown||this.isInternal)&&(!this.eventArgs||this.eventArgs&&"navigator"!==this.eventArgs.trigger)&&(this.max+=this.options.overscroll,!this.isInternal&&x(this.userMin)&&(this.min+=this.options.overscroll))}function F(){this.horiz&&!this.isDirty&&(this.isDirty=this.isOrdinal&&this.chart.navigator&&!this.chart.navigator.adaptToUpdatedData)}
16
+ function N(){this.ordinal&&(this.ordinal.beforeSetTickPositions(),this.tickInterval=this.ordinal.postProcessTickInterval(this.tickInterval))}function u(f){var e=this.xAxis[0],c=e.options.overscroll,n=f.originalEvent.chartX,p=this.options.chart.panning,g=!1;if(p&&"y"!==p.type&&e.options.ordinal&&e.series.length){var v=this.mouseDownX,w=e.getExtremes(),Q=w.dataMax,O=w.min,B=w.max,G=this.hoverPoints,A=e.closestPointRange||e.ordinal&&e.ordinal.overscrollPointsRange;v=(v-n)/(e.translationSlope*(e.ordinal.slope||
17
+ A));A={ordinal:{positions:e.ordinal.getExtendedPositions()}};var k=e.index2val,u=e.val2lin,d=void 0,h=d=void 0,q=void 0;A.ordinal.positions?1<Math.abs(v)&&(G&&G.forEach(function(g){g.setState()}),0>v?(h=A,q=e.ordinal.positions?e:A):(h=e.ordinal.positions?e:A,q=A),d=q.ordinal.positions,Q>d[d.length-1]&&d.push(Q),this.fixedRange=B-O,d=e.navigatorAxis.toFixedRange(null,null,k.apply(h,[u.apply(h,[O,!0])+v]),k.apply(q,[u.apply(q,[B,!0])+v])),d.min>=Math.min(w.dataMin,O)&&d.max<=Math.max(Q,B)+c&&e.setExtremes(d.min,
18
+ d.max,!0,!1,{trigger:"pan"}),this.mouseDownX=n,E(this.container,{cursor:"move"})):g=!0}else g=!0;g||p&&/y/.test(p.type)?c&&(e.max=e.dataMax+c):f.preventDefault()}function M(){var f=this.xAxis;f&&f.options.ordinal&&(delete f.ordinal.index,delete f.ordinal.extendedOrdinalPositions)}function k(f,e){var c=this.ordinal,n=c.positions,p=c.slope,g=c.extendedOrdinalPositions;if(!n)return f;var v=n.length;if(n[0]<=f&&n[v-1]>=f)f=q(n,f);else{g||(g=c.getExtendedPositions&&c.getExtendedPositions(),c.extendedOrdinalPositions=
19
+ g);if(!g||!g.length)return f;v=g.length;p||(p=(g[v-1]-g[0])/v);n=q(g,n[0]);f>=g[0]&&f<=g[v-1]?f=q(g,f)-n:f<g[0]?(f=g[0]-f,f=-n-f/p):(f-=g[v-1],f=f/p+v-n)}return e?f:p*(f||0)+c.offset}h.compose=function(f,e,c){if(-1===z.indexOf(f)){z.push(f);var n=f.prototype;n.getTimeTicks=H;n.index2val=I;n.lin2val=C;n.val2lin=k;n.ordinal2lin=n.val2lin;l(f,"afterInit",K);l(f,"foundExtremes",a);l(f,"afterSetScale",F);l(f,"initialAxisTranslation",N)}-1===z.indexOf(c)&&(z.push(c),l(c,"pan",u));-1===z.indexOf(e)&&(z.push(e),
20
+ l(e,"updatedData",M));return f};var J=function(){function f(e){this.index={};this.axis=e}f.prototype.beforeSetTickPositions=function(){var e=this.axis,c=e.ordinal,n=e.getExtremes(),p=n.min,g=n.max,v=e.isXAxis&&!!e.options.breaks;n=e.options.ordinal;var w=e.chart.options.chart.ignoreHiddenSeries,f,O,B=[],G=Number.MAX_VALUE,A=!1;if(n||v){e.series.forEach(function(g,c){f=[];if(!(w&&!1===g.visible||!1===g.takeOrdinalPosition&&!v)&&(B=B.concat(g.processedXData),k=B.length,B.sort(function(g,c){return g-
21
+ c}),G=Math.min(G,m(g.closestPointRange,G)),k)){for(c=0;c<k-1;)B[c]!==B[c+1]&&f.push(B[c+1]),c++;f[0]!==B[0]&&f.unshift(B[0]);B=f}});var k=B.length;if(2<k){var d=B[1]-B[0];for(O=k-1;O--&&!A;)B[O+1]-B[O]!==d&&(A=!0);!e.options.keepOrdinalPadding&&(B[0]-p>d||g-B[B.length-1]>d)&&(A=!0)}else e.options.overscroll&&(2===k?G=B[1]-B[0]:1===k?(G=e.options.overscroll,B=[B[0],B[0]+G]):G=c.overscrollPointsRange);A||e.forceOrdinal?(e.options.overscroll&&(c.overscrollPointsRange=G,B=B.concat(c.getOverscrollPositions())),
22
+ c.positions=B,d=e.ordinal2lin(Math.max(p,B[0]),!0),O=Math.max(e.ordinal2lin(Math.min(g,B[B.length-1]),!0),1),c.slope=g=(g-p)/(O-d),c.offset=p-d*g):(c.overscrollPointsRange=m(e.closestPointRange,c.overscrollPointsRange),c.positions=e.ordinal.slope=c.offset=void 0)}e.isOrdinal=n&&A;c.groupIntervalFactor=null};f.findIndexOf=function(e,c,n){for(var p=0,g=e.length-1,v;p<g;)v=Math.ceil((p+g)/2),e[v]<=c?p=v:g=v-1;return e[p]===c?p:n?p:-1};f.prototype.getExtendedPositions=function(){var e=this,c=e.axis,n=
23
+ c.constructor.prototype,p=c.chart,g=c.series[0].currentDataGrouping,v=g?g.count+g.unitName:"raw",w=c.options.overscroll,f=c.getExtremes(),k=void 0,B=e.index;B||(B=e.index={});if(!B[v]){var G={series:[],chart:p,forceOrdinal:!1,getExtremes:function(){return{min:f.dataMin,max:f.dataMax+w}},getGroupPixelWidth:n.getGroupPixelWidth,getTimeTicks:n.getTimeTicks,options:{ordinal:!0},ordinal:{getGroupIntervalFactor:this.getGroupIntervalFactor},ordinal2lin:n.ordinal2lin,getIndexOfPoint:n.getIndexOfPoint,val2lin:n.val2lin};
24
+ G.ordinal.axis=G;c.series.forEach(function(c){k={xAxis:G,xData:c.xData.slice(),chart:p,destroyGroupedData:r.noop,getProcessedData:y.prototype.getProcessedData,applyGrouping:y.prototype.applyGrouping};k.xData=k.xData.concat(e.getOverscrollPositions());k.options={dataGrouping:g?{firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",enabled:!0,forced:!0,approximation:"open",units:[[g.unitName,[g.count]]]}:{enabled:!1}};G.series.push(k);c.processData.apply(k)});c.applyGrouping.call(G,{hasExtemesChanged:!1});
25
+ k.closestPointRange!==k.basePointRange&&k.currentDataGrouping&&(G.forceOrdinal=!0);c.ordinal.beforeSetTickPositions.apply({axis:G});B[v]=G.ordinal.positions}return B[v]};f.prototype.getGroupIntervalFactor=function(e,c,n){n=n.processedXData;var p=n.length,g=[];var v=this.groupIntervalFactor;if(!v){for(v=0;v<p-1;v++)g[v]=n[v+1]-n[v];g.sort(function(g,c){return g-c});g=g[Math.floor(p/2)];e=Math.max(e,n[0]);c=Math.min(c,n[p-1]);this.groupIntervalFactor=v=p*g/(c-e)}return v};f.prototype.getIndexOfPoint=
26
+ function(e,c){var n=this.axis,p=this.positions?this.positions[0]:0,g=n.series[0].points&&n.series[0].points[0]&&n.series[0].points[0].plotX||n.minPixelPadding;1<n.series.length&&n.series.forEach(function(c){c.points&&x(c.points[0])&&x(c.points[0].plotX)&&c.points[0].plotX<g&&(g=c.points[0].plotX)});e=(e-g)/(n.translationSlope*(this.slope||n.closestPointRange||this.overscrollPointsRange));return f.findIndexOf(c,p)+e};f.prototype.getOverscrollPositions=function(){var e=this.axis,c=e.options.overscroll,
27
+ n=this.overscrollPointsRange,p=[],g=e.dataMax;if(x(n))for(;g<=e.dataMax+c;)g+=n,p.push(g);return p};f.prototype.postProcessTickInterval=function(e){var c=this.axis,n=this.slope;return n?c.options.breaks?c.closestPointRange||e:e/(n/c.closestPointRange):e};return f}();h.Additions=J})(h||(h={}));return h});L(a,"Series/DataModifyComposition.js",[a["Core/Axis/Axis.js"],a["Core/Series/Point.js"],a["Core/Series/Series.js"],a["Core/Utilities.js"]],function(a,r,y,t){var l=r.prototype.tooltipFormatter,D=t.addEvent,
28
+ E=t.arrayMax,x=t.arrayMin,b=t.correctFloat,m=t.defined,d=t.isArray,z=t.isNumber,h=t.isString,K=t.pick,H;(function(I){function C(e,c,n){this.isXAxis||(this.series.forEach(function(p){"compare"===e&&"boolean"!==typeof c?p.setCompare(c,!1):"cumulative"!==e||h(c)||p.setCumulative(c,!1)}),K(n,!0)&&this.chart.redraw())}function q(e){var c=this,n=c.series.chart.numberFormatter,p=function(g){e=e.replace("{point."+g+"}",(0<c[g]&&"change"===g?"+":"")+n(c[g],K(c.series.tooltipOptions.changeDecimals,2)))};m(c.change)&&
29
+ p("change");m(c.cumulativeSum)&&p("cumulativeSum");return l.apply(this,[e])}function a(){var e=this.options.compare;if("percent"===e||"value"===e||this.options.cumulative){var c=new f(this);"percent"===e||"value"===e?c.initCompare(e):c.initCumulative()}this.dataModify=c}function H(e){e=e.dataExtremes;var c=e.activeYData;if(this.dataModify&&e){var n=void 0;this.options.compare?n=[this.dataModify.modifyValue(e.dataMin),this.dataModify.modifyValue(e.dataMax)]:this.options.cumulative&&d(c)&&2<=c.length&&
30
+ (n=f.getCumulativeExtremes(c));n&&(e.dataMin=x(n),e.dataMax=E(n))}}function F(e,c){this.options.compare=this.userOptions.compare=e;this.update({},K(c,!0));!this.dataModify||"value"!==e&&"percent"!==e?this.points.forEach(function(c){delete c.change}):this.dataModify.initCompare(e)}function N(){if(this.xAxis&&this.processedYData&&this.dataModify){var e=this.processedXData,c=this.processedYData,n=c.length,p=!0===this.options.compareStart?0:1,g=-1,v;this.pointArrayMap&&(g=this.pointArrayMap.indexOf(this.options.pointValKey||
31
+ this.pointValKey||"y"));for(v=0;v<n-p;v++){var w=c[v]&&-1<g?c[v][g]:c[v];if(z(w)&&0!==w&&e[v+p]>=(this.xAxis.min||0)){this.dataModify.compareValue=w;break}}}}function u(e,c){this.setModifier("compare",e,c)}function M(e,c){e=K(e,!1);this.options.cumulative=this.userOptions.cumulative=e;this.update({},K(c,!0));this.dataModify?this.dataModify.initCumulative():this.points.forEach(function(c){delete c.cumulativeSum})}function k(e,c){this.setModifier("cumulative",e,c)}var J=[];I.compose=function(e,c,n){if(-1===
32
+ J.indexOf(e)){J.push(e);var p=e.prototype;p.setCompare=F;p.setCumulative=M;D(e,"afterInit",a);D(e,"afterGetExtremes",H);D(e,"afterProcessData",N)}-1===J.indexOf(c)&&(J.push(c),c=c.prototype,c.setCompare=u,c.setModifier=C,c.setCumulative=k);-1===J.indexOf(n)&&(J.push(n),n.prototype.tooltipFormatter=q);return e};var f=function(){function e(c){this.series=c}e.prototype.modifyValue=function(){return 0};e.getCumulativeExtremes=function(c){var e=Infinity,p=-Infinity;c.reduce(function(g,c){c=g+c;e=Math.min(e,
33
+ c,g);p=Math.max(p,c,g);return c});return[e,p]};e.prototype.initCompare=function(c){this.modifyValue=function(e,p){null===e&&(e=0);var g=this.compareValue;return"undefined"!==typeof e&&"undefined"!==typeof g?(e="value"===c?e-g:e/g*100-(100===this.series.options.compareBase?0:100),"undefined"!==typeof p&&(p=this.series.points[p])&&(p.change=e),e):0}};e.prototype.initCumulative=function(){this.modifyValue=function(c,e){null===c&&(c=0);if(void 0!==c&&void 0!==e){var p=0<e?this.series.points[e-1]:null;
34
+ p&&p.cumulativeSum&&(c=b(p.cumulativeSum+c));if(e=this.series.points[e])e.cumulativeSum=c;return c}return 0}};return e}();I.Additions=f})(H||(H={}));"";return H});L(a,"Core/Axis/BrokenAxis.js",[a["Extensions/Stacking.js"],a["Core/Utilities.js"]],function(a,r){var y=r.addEvent,t=r.find,l=r.fireEvent,D=r.isArray,E=r.isNumber,x=r.pick,b;(function(m){function d(){"undefined"!==typeof this.brokenAxis&&this.brokenAxis.setBreaks(this.options.breaks,!1)}function b(){this.brokenAxis&&this.brokenAxis.hasBreaks&&
35
+ (this.options.ordinal=!1)}function h(){var d=this.brokenAxis;if(d&&d.hasBreaks){for(var q=this.tickPositions,u=this.tickPositions.info,h=[],k=0;k<q.length;k++)d.isInAnyBreak(q[k])||h.push(q[k]);this.tickPositions=h;this.tickPositions.info=u}}function K(){this.brokenAxis||(this.brokenAxis=new S(this))}function H(){var d=this.options.connectNulls,q=this.points,u=this.xAxis,h=this.yAxis;if(this.isDirty)for(var k=q.length;k--;){var b=q[k],f=!(null===b.y&&!1===d)&&(u&&u.brokenAxis&&u.brokenAxis.isInAnyBreak(b.x,
36
+ !0)||h&&h.brokenAxis&&h.brokenAxis.isInAnyBreak(b.y,!0));b.visible=f?!1:!1!==b.options.visible}}function I(){this.drawBreaks(this.xAxis,["x"]);this.drawBreaks(this.yAxis,x(this.pointArrayMap,["y"]))}function C(d,q){var u=this,h=u.points,k,b,f,e;if(d&&d.brokenAxis&&d.brokenAxis.hasBreaks){var c=d.brokenAxis;q.forEach(function(n){k=c&&c.breakArray||[];b=d.isXAxis?d.min:x(u.options.threshold,d.min);h.forEach(function(c){e=x(c["stack"+n.toUpperCase()],c[n]);k.forEach(function(g){if(E(b)&&E(e)){f=!1;if(b<
37
+ g.from&&e>g.to||b>g.from&&e<g.from)f="pointBreak";else if(b<g.from&&e>g.from&&e<g.to||b>g.from&&e>g.to&&e<g.from)f="pointInBreak";f&&l(d,f,{point:c,brk:g})}})})})}}function q(){var d=this.currentDataGrouping,q=d&&d.gapSize;d=this.points.slice();var u=this.yAxis,h=this.options.gapSize,k=d.length-1,b;if(h&&0<k)for("value"!==this.options.gapUnit&&(h*=this.basePointRange),q&&q>h&&q>=this.basePointRange&&(h=q),b=void 0;k--;)b&&!1!==b.visible||(b=d[k+1]),q=d[k],!1!==b.visible&&!1!==q.visible&&(b.x-q.x>
38
+ h&&(b=(q.x+b.x)/2,d.splice(k+1,0,{isNull:!0,x:b}),u.stacking&&this.options.stacking&&(b=u.stacking.stacks[this.stackKey][b]=new a(u,u.options.stackLabels,!1,b,this.stack),b.total=0)),b=q);return this.getGraphPath(d)}var R=[];m.compose=function(m,a){-1===R.indexOf(m)&&(R.push(m),m.keepProps.push("brokenAxis"),y(m,"init",K),y(m,"afterInit",d),y(m,"afterSetTickPositions",h),y(m,"afterSetOptions",b));if(-1===R.indexOf(a)){R.push(a);var u=a.prototype;u.drawBreaks=C;u.gappedPath=q;y(a,"afterGeneratePoints",
39
+ H);y(a,"afterRender",I)}return m};var S=function(){function d(d){this.hasBreaks=!1;this.axis=d}d.isInBreak=function(d,b){var q=d.repeat||Infinity,k=d.from,h=d.to-d.from;b=b>=k?(b-k)%q:q-(k-b)%q;return d.inclusive?b<=h:b<h&&0!==b};d.lin2Val=function(b){var q=this.brokenAxis;q=q&&q.breakArray;if(!q||!E(b))return b;var h;for(h=0;h<q.length;h++){var k=q[h];if(k.from>=b)break;else k.to<b?b+=k.len:d.isInBreak(k,b)&&(b+=k.len)}return b};d.val2Lin=function(b){var q=this.brokenAxis;q=q&&q.breakArray;if(!q||
40
+ !E(b))return b;var h=b,k;for(k=0;k<q.length;k++){var m=q[k];if(m.to<=b)h-=m.len;else if(m.from>=b)break;else if(d.isInBreak(m,b)){h-=b-m.from;break}}return h};d.prototype.findBreakAt=function(d,b){return t(b,function(b){return b.from<d&&d<b.to})};d.prototype.isInAnyBreak=function(b,q){var h=this.axis,k=h.options.breaks||[],m=k.length,f;if(m&&E(b)){for(;m--;)if(d.isInBreak(k[m],b)){var e=!0;f||(f=x(k[m].showPoints,!h.isXAxis))}var c=e&&q?e&&!f:e}return c};d.prototype.setBreaks=function(b,q){var h=
41
+ this,k=h.axis,m=D(b)&&!!b.length;k.isDirty=h.hasBreaks!==m;h.hasBreaks=m;k.options.breaks=k.userOptions.breaks=b;k.forceRedraw=!0;k.series.forEach(function(f){f.isDirty=!0});m||k.val2lin!==d.val2Lin||(delete k.val2lin,delete k.lin2val);m&&(k.userOptions.ordinal=!1,k.lin2val=d.lin2Val,k.val2lin=d.val2Lin,k.setExtremes=function(f,e,c,n,p){if(h.hasBreaks){for(var g=this.options.breaks||[],v;v=h.findBreakAt(f,g);)f=v.to;for(;v=h.findBreakAt(e,g);)e=v.from;e<f&&(e=f)}k.constructor.prototype.setExtremes.call(this,
42
+ f,e,c,n,p)},k.setAxisTranslation=function(){k.constructor.prototype.setAxisTranslation.call(this);h.unitLength=void 0;if(h.hasBreaks){var f=k.options.breaks||[],e=[],c=[],n=x(k.pointRangePadding,0),p=0,g,v=k.userMin||k.min,w=k.userMax||k.max,b;f.forEach(function(c){g=c.repeat||Infinity;E(v)&&E(w)&&(d.isInBreak(c,v)&&(v+=c.to%g-v%g),d.isInBreak(c,w)&&(w-=w%g-c.from%g))});f.forEach(function(c){B=c.from;g=c.repeat||Infinity;if(E(v)&&E(w)){for(;B-g>v;)B-=g;for(;B<v;)B+=g;for(b=B;b<w;b+=g)e.push({value:b,
43
+ move:"in"}),e.push({value:b+c.to-c.from,move:"out",size:c.breakSize})}});e.sort(function(g,c){return g.value===c.value?("in"===g.move?0:1)-("in"===c.move?0:1):g.value-c.value});var q=0;var B=v;e.forEach(function(g){q+="in"===g.move?1:-1;1===q&&"in"===g.move&&(B=g.value);0===q&&E(B)&&(c.push({from:B,to:g.value,len:g.value-B-(g.size||0)}),p+=g.value-B-(g.size||0))});h.breakArray=c;E(v)&&E(w)&&E(k.min)&&(h.unitLength=w-v-p+n,l(k,"afterBreaks"),k.staticScale?k.transA=k.staticScale:h.unitLength&&(k.transA*=
44
+ (w-k.min+n)/h.unitLength),n&&(k.minPixelPadding=k.transA*(k.minPointOffset||0)),k.min=v,k.max=w)}});x(q,!0)&&k.chart.redraw()};return d}();m.Additions=S})(b||(b={}));return b});L(a,"masters/modules/broken-axis.src.js",[a["Core/Globals.js"],a["Core/Axis/BrokenAxis.js"]],function(a,r){r.compose(a.Axis,a.Series)});L(a,"Extensions/DataGrouping.js",[a["Core/Axis/Axis.js"],a["Core/Axis/DateTimeAxis.js"],a["Core/FormatUtilities.js"],a["Core/Globals.js"],a["Core/Series/Point.js"],a["Core/Series/Series.js"],
45
+ a["Core/Tooltip.js"],a["Core/DefaultOptions.js"],a["Core/Utilities.js"]],function(a,r,y,t,l,D,E,x,b){var m=y.format,d=D.prototype;y=b.addEvent;var z=b.arrayMax,h=b.arrayMin,K=b.correctFloat,H=b.defined,I=b.error,C=b.extend,q=b.isNumber,R=b.merge,S=b.pick;"";var F=t.approximations={sum:function(f){var e=f.length;if(!e&&f.hasNulls)var c=null;else if(e)for(c=0;e--;)c+=f[e];return c},average:function(f){var e=f.length;f=F.sum(f);q(f)&&e&&(f=K(f/e));return f},averages:function(){var f=[];[].forEach.call(arguments,
46
+ function(e){f.push(F.average(e))});return"undefined"===typeof f[0]?void 0:f},open:function(f){return f.length?f[0]:f.hasNulls?null:void 0},high:function(f){return f.length?z(f):f.hasNulls?null:void 0},low:function(f){return f.length?h(f):f.hasNulls?null:void 0},close:function(f){return f.length?f[f.length-1]:f.hasNulls?null:void 0},hlc:function(f,e,c){f=F.high(f);e=F.low(e);c=F.close(c);if(q(f)||q(e)||q(c))return[f,e,c]},ohlc:function(f,e,c,n){f=F.open(f);e=F.high(e);c=F.low(c);n=F.close(n);if(q(f)||
47
+ q(e)||q(c)||q(n))return[f,e,c,n]},range:function(f,e){f=F.low(f);e=F.high(e);if(q(f)||q(e))return[f,e];if(null===f&&null===e)return null}};b=function(f,e,c,n){var p=this,g=p.data,v=p.options&&p.options.data,w=[],d=[],b=[],B=f.length,G=!!e,A=[],h=p.pointArrayMap,k=h&&h.length,m=["x"].concat(h||["y"]),u=this.options.dataGrouping&&this.options.dataGrouping.groupAll,a=0,I=0,C;n="function"===typeof n?n:F[n]?F[n]:F[p.getDGApproximation&&p.getDGApproximation()||"average"];k?h.forEach(function(){A.push([])}):
48
+ A.push([]);var K=k||1;for(C=0;C<=B&&!(f[C]>=c[0]);C++);for(C;C<=B;C++){for(;"undefined"!==typeof c[a+1]&&f[C]>=c[a+1]||C===B;){var z=c[a];p.dataGroupInfo={start:u?I:p.cropStart+I,length:A[0].length};var l=n.apply(p,A);p.pointClass&&!H(p.dataGroupInfo.options)&&(p.dataGroupInfo.options=R(p.pointClass.prototype.optionsToObject.call({series:p},p.options.data[p.cropStart+I])),m.forEach(function(g){delete p.dataGroupInfo.options[g]}));"undefined"!==typeof l&&(w.push(z),d.push(l),b.push(p.dataGroupInfo));
49
+ I=C;for(z=0;z<K;z++)A[z].length=0,A[z].hasNulls=!1;a+=1;if(C===B)break}if(C===B)break;if(h){z=p.options.dataGrouping&&p.options.dataGrouping.groupAll?C:p.cropStart+C;l=g&&g[z]||p.pointClass.prototype.applyOptions.apply({series:p},[v[z]]);var x=void 0;for(z=0;z<k;z++)x=l[h[z]],q(x)?A[z].push(x):null===x&&(A[z].hasNulls=!0)}else z=G?e[C]:null,q(z)?A[0].push(z):null===z&&(A[0].hasNulls=!0)}return{groupedXData:w,groupedYData:d,groupMap:b}};var P={approximations:F,groupData:b},u=d.generatePoints,M={groupPixelWidth:2,
50
+ dateTimeLabelFormats:{millisecond:["%A, %b %e, %H:%M:%S.%L","%A, %b %e, %H:%M:%S.%L","-%H:%M:%S.%L"],second:["%A, %b %e, %H:%M:%S","%A, %b %e, %H:%M:%S","-%H:%M:%S"],minute:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],hour:["%A, %b %e, %H:%M","%A, %b %e, %H:%M","-%H:%M"],day:["%A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],week:["Week from %A, %b %e, %Y","%A, %b %e","-%A, %b %e, %Y"],month:["%B %Y","%B","-%B %Y"],year:["%Y","%Y","-%Y"]}},k={line:{},spline:{},area:{},areaspline:{},arearange:{},column:{groupPixelWidth:10},
51
+ columnrange:{groupPixelWidth:10},candlestick:{groupPixelWidth:10},ohlc:{groupPixelWidth:5},hlc:{groupPixelWidth:5},heikinashi:{groupPixelWidth:10}},J=t.defaultDataGroupingUnits=[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1]],["week",[1]],["month",[1,3,6]],["year",null]];d.getDGApproximation=function(){return this.is("arearange")?"range":this.is("ohlc")?"ohlc":this.is("hlc")?"hlc":this.is("column")?"sum":
52
+ "average"};d.groupData=b;d.applyGrouping=function(f){var e=this.chart,c=this.options.dataGrouping,n=!1!==this.allowDG&&c&&S(c.enabled,e.options.isStock),p=this.visible||!e.options.chart.ignoreHiddenSeries,g,v=this.currentDataGrouping,w=!1;n&&!this.requireSorting&&(this.requireSorting=w=!0);f=!1===!(this.isCartesian&&!this.isDirty&&!this.xAxis.isDirty&&!this.yAxis.isDirty&&!f)||!n;w&&(this.requireSorting=!1);if(!f){this.destroyGroupedData();n=c.groupAll?this.xData:this.processedXData;var b=c.groupAll?
53
+ this.yData:this.processedYData;f=e.plotSizeX;w=this.xAxis;var h=w.options.ordinal,B=this.groupPixelWidth;if(B&&n&&n.length){this.isDirty=g=!0;this.points=null;var k=w.getExtremes();var A=k.min;k=k.max;h=h&&w.ordinal&&w.ordinal.getGroupIntervalFactor(A,k,this)||1;f=w.getTimeTicks(r.Additions.prototype.normalizeTimeTickInterval(B*(k-A)/f*h,c.units||J),Math.min(A,n[0]),Math.max(k,n[n.length-1]),w.options.startOfWeek,n,this.closestPointRange);B=d.groupData.apply(this,[n,b,f,c.approximation]);n=B.groupedXData;
54
+ b=B.groupedYData;h=0;c&&c.smoothed&&n.length&&(c.firstAnchor="firstPoint",c.anchor="middle",c.lastAnchor="lastPoint",I(32,!1,e,{"dataGrouping.smoothed":"use dataGrouping.anchor"}));e=n;var m=this.options.dataGrouping;A=this.currentDataGrouping&&this.currentDataGrouping.gapSize;if(m&&this.xData&&A&&this.groupMap){var u=e.length-1;var a=m.anchor;var C=S(m.firstAnchor,a);m=S(m.lastAnchor,a);if(a&&"start"!==a){var z=A*{middle:.5,end:1}[a];for(a=e.length-1;a--&&0<a;)e[a]+=z}if(C&&"start"!==C&&this.xData[0]>=
55
+ e[0]){a=this.groupMap[0].start;z=this.groupMap[0].length;var K=void 0;q(a)&&q(z)&&(K=a+(z-1));e[0]={middle:e[0]+.5*A,end:e[0]+A,firstPoint:this.xData[0],lastPoint:K&&this.xData[K]}[C]}m&&"start"!==m&&A&&e[u]>=k-A&&(k=this.groupMap[this.groupMap.length-1].start,e[u]={middle:e[u]+.5*A,end:e[u]+A,firstPoint:k&&this.xData[k],lastPoint:this.xData[this.xData.length-1]}[m])}for(k=1;k<f.length;k++)f.info.segmentStarts&&-1!==f.info.segmentStarts.indexOf(k)||(h=Math.max(f[k]-f[k-1],h));k=f.info;k.gapSize=h;
56
+ this.closestPointRange=f.info.totalRange;this.groupMap=B.groupMap;if(p){p=n;if(H(p[0])&&q(w.min)&&q(w.dataMin)&&p[0]<w.min){if(!H(w.options.min)&&w.min<=w.dataMin||w.min===w.dataMin)w.min=Math.min(p[0],w.min);w.dataMin=Math.min(p[0],w.dataMin)}if(H(p[p.length-1])&&q(w.max)&&q(w.dataMax)&&p[p.length-1]>w.max){if(!H(w.options.max)&&q(w.dataMax)&&w.max>=w.dataMax||w.max===w.dataMax)w.max=Math.max(p[p.length-1],w.max);w.dataMax=Math.max(p[p.length-1],w.dataMax)}}c.groupAll&&(this.allGroupedData=b,c=this.cropData(n,
57
+ b,w.min,w.max,1),n=c.xData,b=c.yData,this.cropStart=c.start);this.processedXData=n;this.processedYData=b}else this.groupMap=null;this.hasGroupedData=g;this.currentDataGrouping=k;this.preventGraphAnimation=(v&&v.totalRange)!==(k&&k.totalRange)}};d.destroyGroupedData=function(){this.groupedData&&(this.groupedData.forEach(function(f,e){f&&(this.groupedData[e]=f.destroy?f.destroy():null)},this),this.groupedData.length=0)};d.generatePoints=function(){u.apply(this);this.destroyGroupedData();this.groupedData=
58
+ this.hasGroupedData?this.points:null};a.prototype.applyGrouping=function(f){var e=this;e.series.forEach(function(c){c.groupPixelWidth=void 0;c.groupPixelWidth=e.getGroupPixelWidth&&e.getGroupPixelWidth();c.groupPixelWidth&&(c.hasProcessed=!0);c.applyGrouping(!!f.hasExtemesChanged)})};a.prototype.getGroupPixelWidth=function(){var f=this.series,e=f.length,c,n=0,p=!1,g;for(c=e;c--;)(g=f[c].options.dataGrouping)&&(n=Math.max(n,S(g.groupPixelWidth,M.groupPixelWidth)));for(c=e;c--;)if(g=f[c].options.dataGrouping)if(e=
59
+ (f[c].processedXData||f[c].data).length,f[c].groupPixelWidth||e>this.chart.plotSizeX/n||e&&g.forced)p=!0;return p?n:0};a.prototype.setDataGrouping=function(f,e){var c;e=S(e,!0);f||(f={forced:!1,units:null});if(this instanceof a)for(c=this.series.length;c--;)this.series[c].update({dataGrouping:f},!1);else this.chart.options.series.forEach(function(c){c.dataGrouping=f},!1);this.ordinal&&(this.ordinal.slope=void 0);e&&this.chart.redraw()};y(a,"postProcessData",a.prototype.applyGrouping);y(l,"update",
60
+ function(){if(this.dataGroup)return I(24,!1,this.series.chart),!1});y(E,"headerFormatter",function(f){var e=this.chart,c=e.time,n=f.labelConfig,p=n.series,g=p.tooltipOptions,v=p.options.dataGrouping,w=g.xDateFormat,d=p.xAxis,b=g[f.isFooter?"footerFormat":"headerFormat"];if(d&&"datetime"===d.options.type&&v&&q(n.key)){var k=p.currentDataGrouping;v=v.dateTimeLabelFormats||M.dateTimeLabelFormats;if(k)if(g=v[k.unitName],1===k.count)w=g[0];else{w=g[1];var h=g[2]}else!w&&v&&d.dateTime&&(w=d.dateTime.getXDateFormat(n.x,
61
+ g.dateTimeLabelFormats));w=c.dateFormat(w,n.key);h&&(w+=c.dateFormat(h,n.key+k.totalRange-1));p.chart.styledMode&&(b=this.styledModeFormat(b));f.text=m(b,{point:C(n.point,{key:w}),series:p},e);f.preventDefault()}});y(D,"destroy",d.destroyGroupedData);y(D,"afterSetOptions",function(f){f=f.options;var e=this.type,c=this.chart.options.plotOptions,n=x.defaultOptions.plotOptions[e].dataGrouping,p=this.useCommonDataGrouping&&M;if(k[e]||p){n||(n=R(M,k[e]));var g=this.chart.rangeSelector;f.dataGrouping=R(p,
62
+ n,c.series&&c.series.dataGrouping,c[e].dataGrouping,this.userOptions.dataGrouping,!f.isInternal&&g&&q(g.selected)&&g.buttonOptions[g.selected].dataGrouping)}});y(a,"afterSetScale",function(){this.series.forEach(function(f){f.hasProcessed=!1})});t.dataGrouping=P;"";return P});L(a,"Series/HLC/HLCPoint.js",[a["Core/Series/SeriesRegistry.js"]],function(a){var r=this&&this.__extends||function(){var a=function(t,l){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,l){a.__proto__=l}||function(a,
63
+ l){for(var x in l)l.hasOwnProperty(x)&&(a[x]=l[x])};return a(t,l)};return function(t,l){function D(){this.constructor=t}a(t,l);t.prototype=null===l?Object.create(l):(D.prototype=l.prototype,new D)}}();return function(a){function t(){var l=null!==a&&a.apply(this,arguments)||this;l.close=void 0;l.high=void 0;l.low=void 0;l.options=void 0;l.plotClose=void 0;l.series=void 0;return l}r(t,a);return t}(a.seriesTypes.column.prototype.pointClass)});L(a,"Series/HLC/HLCSeries.js",[a["Series/HLC/HLCPoint.js"],
64
+ a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,r,y){var t=this&&this.__extends||function(){var a=function(b,m){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d,b){d.__proto__=b}||function(d,b){for(var h in b)b.hasOwnProperty(h)&&(d[h]=b[h])};return a(b,m)};return function(b,m){function d(){this.constructor=b}a(b,m);b.prototype=null===m?Object.create(m):(d.prototype=m.prototype,new d)}}(),l=r.seriesTypes.column,D=y.extend,E=y.merge;y=function(a){function b(){var b=
65
+ null!==a&&a.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;b.yData=void 0;return b}t(b,a);b.prototype.extendStem=function(b,d,a){var h=b[0];b=b[1];"number"===typeof h[2]&&(h[2]=Math.max(a+d,h[2]));"number"===typeof b[2]&&(b[2]=Math.min(a-d,b[2]))};b.prototype.getPointPath=function(b,d){d=d.strokeWidth();var a=b.series,h=d%2/2,m=Math.round(b.plotX)-h,H=Math.round(b.shapeArgs.width/2);var I=[["M",m,Math.round(b.yBottom)],["L",m,Math.round(b.plotHigh)]];null!==b.close&&(b=
66
+ Math.round(b.plotClose)+h,I.push(["M",m,b],["L",m+H,b]),a.extendStem(I,d/2,b));return I};b.prototype.drawSinglePoint=function(b){var d=b.series,a=d.chart,h=b.graphic,m=!h;"undefined"!==typeof b.plotY&&(h||(b.graphic=h=a.renderer.path().add(d.group)),a.styledMode||h.attr(d.pointAttribs(b,b.selected&&"select")),d=d.getPointPath(b,h),h[m?"attr":"animate"]({d:d}).addClass(b.getClassName(),!0))};b.prototype.drawPoints=function(){this.points.forEach(this.drawSinglePoint)};b.prototype.init=function(){a.prototype.init.apply(this,
67
+ arguments);this.options.stacking=void 0};b.prototype.pointAttribs=function(b,d){b=a.prototype.pointAttribs.call(this,b,d);delete b.fill;return b};b.prototype.toYData=function(b){return[b.high,b.low,b.close]};b.prototype.translate=function(){var b=this,d=b.yAxis,z=this.pointArrayMap&&this.pointArrayMap.slice()||[],h=z.map(function(b){return"plot"+(b.charAt(0).toUpperCase()+b.slice(1))});h.push("yBottom");z.push("low");a.prototype.translate.apply(b);b.points.forEach(function(a){z.forEach(function(m,
68
+ I){m=a[m];null!==m&&(b.dataModify&&(m=b.dataModify.modifyValue(m)),a[h[I]]=d.toPixels(m,!0))});a.tooltipPos[1]=a.plotHigh+d.pos-b.chart.plotTop})};b.defaultOptions=E(l.defaultOptions,{lineWidth:1,tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> <b> {series.name}</b><br/>High: {point.high}<br/>Low: {point.low}<br/>Close: {point.close}<br/>'},threshold:null,states:{hover:{lineWidth:3}},stickyTracking:!0});return b}(l);D(y.prototype,{animate:null,directTouch:!1,pointArrayMap:["high",
69
+ "low","close"],pointAttrToOptions:{stroke:"color","stroke-width":"lineWidth"},pointValKey:"close"});y.prototype.pointClass=a;r.registerSeriesType("hlc",y);"";return y});L(a,"Series/OHLC/OHLCPoint.js",[a["Core/Series/SeriesRegistry.js"]],function(a){var r=this&&this.__extends||function(){var a=function(t,l){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,l){a.__proto__=l}||function(a,l){for(var t in l)l.hasOwnProperty(t)&&(a[t]=l[t])};return a(t,l)};return function(t,l){function D(){this.constructor=
70
+ t}a(t,l);t.prototype=null===l?Object.create(l):(D.prototype=l.prototype,new D)}}();return function(a){function t(){var l=null!==a&&a.apply(this,arguments)||this;l.open=void 0;l.options=void 0;l.plotOpen=void 0;l.series=void 0;return l}r(t,a);t.prototype.getClassName=function(){return a.prototype.getClassName.call(this)+(this.open<this.close?" highcharts-point-up":" highcharts-point-down")};t.prototype.resolveUpColor=function(){this.open<this.close&&!this.options.color&&this.series.options.upColor&&
71
+ (this.color=this.series.options.upColor)};t.prototype.resolveColor=function(){a.prototype.resolveColor.call(this);this.resolveUpColor()};t.prototype.getZone=function(){var l=a.prototype.getZone.call(this);this.resolveUpColor();return l};t.prototype.applyOptions=function(){a.prototype.applyOptions.apply(this,arguments);this.resolveColor&&this.resolveColor();return this};return t}(a.seriesTypes.hlc.prototype.pointClass)});L(a,"Series/OHLC/OHLCSeries.js",[a["Series/OHLC/OHLCPoint.js"],a["Core/Series/SeriesRegistry.js"],
72
+ a["Core/Utilities.js"]],function(a,r,y){var t=this&&this.__extends||function(){var b=function(d,a){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,d){b.__proto__=d}||function(b,d){for(var a in d)d.hasOwnProperty(a)&&(b[a]=d[a])};return b(d,a)};return function(d,a){function h(){this.constructor=d}b(d,a);d.prototype=null===a?Object.create(a):(h.prototype=a.prototype,new h)}}(),l=r.series,D=r.seriesTypes.hlc,E=y.addEvent,x=y.extend,b=y.merge,m=function(d){function a(){var b=null!==
73
+ d&&d.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}t(a,d);a.prototype.getPointPath=function(b,a){var h=d.prototype.getPointPath.call(this,b,a);a=a.strokeWidth();var m=a%2/2,C=Math.round(b.plotX)-m,q=Math.round(b.shapeArgs.width/2);null!==b.open&&(b=Math.round(b.plotOpen)+m,h.push(["M",C,b],["L",C-q,b]),d.prototype.extendStem.call(this,h,a/2,b));return h};a.prototype.pointAttribs=function(b,a){a=d.prototype.pointAttribs.call(this,b,a);var h=this.options;delete a.fill;
74
+ !b.options.color&&h.upColor&&b.open<b.close&&(a.stroke=h.upColor);return a};a.prototype.toYData=function(b){return[b.open,b.high,b.low,b.close]};a.defaultOptions=b(D.defaultOptions,{tooltip:{pointFormat:'<span style="color:{point.color}">\u25cf</span> <b> {series.name}</b><br/>Open: {point.open}<br/>High: {point.high}<br/>Low: {point.low}<br/>Close: {point.close}<br/>'}});return a}(D);x(m.prototype,{pointArrayMap:["open","high","low","close"]});m.prototype.pointClass=a;r.registerSeriesType("ohlc",
75
+ m);E(l,"init",function(b){b=b.options;b.useOhlcData&&"highcharts-navigator-series"!==b.id&&x(this,{pointValKey:m.prototype.pointValKey,pointArrayMap:m.prototype.pointArrayMap,toYData:m.prototype.toYData})});E(l,"afterSetOptions",function(b){b=b.options;var a=b.dataGrouping;a&&b.useOhlcData&&"highcharts-navigator-series"!==b.id&&(a.approximation="ohlc")});"";return m});L(a,"Series/Candlestick/CandlestickSeries.js",[a["Core/DefaultOptions.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],
76
+ function(a,r,y){var t=this&&this.__extends||function(){var b=function(a,d){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,a){b.__proto__=a}||function(b,a){for(var d in a)a.hasOwnProperty(d)&&(b[d]=a[d])};return b(a,d)};return function(a,d){function m(){this.constructor=a}b(a,d);a.prototype=null===d?Object.create(d):(m.prototype=d.prototype,new m)}}(),l=a.defaultOptions;a=r.seriesTypes;var D=a.column,E=a.ohlc,x=y.merge;y=function(b){function a(){var a=null!==b&&b.apply(this,arguments)||
77
+ this;a.data=void 0;a.options=void 0;a.points=void 0;return a}t(a,b);a.prototype.pointAttribs=function(b,a){var d=D.prototype.pointAttribs.call(this,b,a),m=this.options,l=b.open<b.close,I=m.lineColor||this.color,C=b.color||this.color;d["stroke-width"]=m.lineWidth;d.fill=b.options.color||(l?m.upColor||C:C);d.stroke=b.options.lineColor||(l?m.upLineColor||I:I);a&&(b=m.states[a],d.fill=b.color||d.fill,d.stroke=b.lineColor||d.stroke,d["stroke-width"]=b.lineWidth||d["stroke-width"]);return d};a.prototype.drawPoints=
78
+ function(){var b=this,a=b.chart,h=b.yAxis.reversed;b.points.forEach(function(d){var m=d.graphic,I=!m;if("undefined"!==typeof d.plotY){m||(d.graphic=m=a.renderer.path().add(b.group));b.chart.styledMode||m.attr(b.pointAttribs(d,d.selected&&"select")).shadow(b.options.shadow);var C=m.strokeWidth()%2/2;var q=Math.round(d.plotX)-C;var l=d.plotOpen;var t=d.plotClose;var F=Math.min(l,t);l=Math.max(l,t);var z=Math.round(d.shapeArgs.width/2);t=h?l!==d.yBottom:Math.round(F)!==Math.round(d.plotHigh);var u=h?
79
+ Math.round(F)!==Math.round(d.plotHigh):l!==d.yBottom;F=Math.round(F)+C;l=Math.round(l)+C;C=[];C.push(["M",q-z,l],["L",q-z,F],["L",q+z,F],["L",q+z,l],["Z"],["M",q,F],["L",q,t?Math.round(h?d.yBottom:d.plotHigh):F],["M",q,l],["L",q,u?Math.round(h?d.plotHigh:d.yBottom):l]);m[I?"attr":"animate"]({d:C}).addClass(d.getClassName(),!0)}})};a.defaultOptions=x(E.defaultOptions,l.plotOptions,{states:{hover:{lineWidth:2}},tooltip:l.plotOptions.ohlc.tooltip,threshold:null,lineColor:"#000000",lineWidth:1,upColor:"#ffffff",
80
+ stickyTracking:!0});return a}(E);r.registerSeriesType("candlestick",y);"";return y});L(a,"Series/Flags/FlagsPoint.js",[a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,r){var y=this&&this.__extends||function(){var a=function(l,t){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var m in b)b.hasOwnProperty(m)&&(a[m]=b[m])};return a(l,t)};return function(l,t){function x(){this.constructor=l}a(l,t);l.prototype=null===t?Object.create(t):
81
+ (x.prototype=t.prototype,new x)}}(),t=r.isNumber;return function(a){function l(){var l=null!==a&&a.apply(this,arguments)||this;l.options=void 0;l.series=void 0;return l}y(l,a);l.prototype.isValid=function(){return t(this.y)||"undefined"===typeof this.y};l.prototype.hasNewShapeType=function(){var a=this.options.shape||this.series.options.shape;return this.graphic&&a&&a!==this.graphic.symbolKey};return l}(a.seriesTypes.column.prototype.pointClass)});L(a,"Series/OnSeriesComposition.js",[a["Series/Column/ColumnSeries.js"],
82
+ a["Core/Series/Series.js"],a["Core/Utilities.js"]],function(a,r,y){var t=a.prototype,l=r.prototype,D=y.defined,E=y.stableSort,x;(function(b){function a(){return l.getPlotBox.call(this.options.onSeries&&this.chart.get(this.options.onSeries)||this)}function d(){t.translate.apply(this);var b=this,a=b.options,d=b.chart,m=b.points,C=a.onSeries,q=(C=C&&d.get(C))&&C.options.step,l=C&&C.points,z=d.inverted,F=b.xAxis,x=b.yAxis;d=m.length-1;var u;a=a.onKey||"y";var M=l&&l.length,k=0,r;if(C&&C.visible&&M){k=
83
+ (C.pointXOffset||0)+(C.barW||0)/2;var f=C.currentDataGrouping;var e=l[M-1].x+(f?f.totalRange:0);E(m,function(c,g){return c.x-g.x});for(a="plot"+a[0].toUpperCase()+a.substr(1);M--&&m[d];){var c=l[M];f=m[d];f.y=c.y;if(c.x<=f.x&&"undefined"!==typeof c[a]){if(f.x<=e&&(f.plotY=c[a],c.x<f.x&&!q&&(r=l[M+1])&&"undefined"!==typeof r[a])){var n=(f.x-c.x)/(r.x-c.x);f.plotY+=n*(r[a]-c[a]);f.y+=n*(r.y-c.y)}d--;M++;if(0>d)break}}}m.forEach(function(c,g){c.plotX+=k;if("undefined"===typeof c.plotY||z)0<=c.plotX&&
84
+ c.plotX<=F.len?z?(c.plotY=F.translate(c.x,0,1,0,1),c.plotX=D(c.y)?x.translate(c.y,0,0,0,1):0):c.plotY=(F.opposite?0:b.yAxis.len)+F.offset:c.shapeArgs={};if((u=m[g-1])&&u.plotX===c.plotX){"undefined"===typeof u.stackIndex&&(u.stackIndex=0);var v=u.stackIndex+1}c.stackIndex=v});this.onSeries=C}var z=[];b.compose=function(b){if(-1===z.indexOf(b)){z.push(b);var h=b.prototype;h.getPlotBox=a;h.translate=d}return b};b.getPlotBox=a;b.translate=d})(x||(x={}));return x});L(a,"Series/Flags/FlagsSymbols.js",
85
+ [a["Core/Renderer/RendererRegistry.js"],a["Core/Renderer/SVG/SVGRenderer.js"]],function(a,r){function y(a){t[a+"pin"]=function(l,r,x,b,m){var d=m&&m.anchorX;m=m&&m.anchorY;"circle"===a&&b>x&&(l-=Math.round((b-x)/2),x=b);var z=t[a](l,r,x,b);if(d&&m){var h=d;"circle"===a?h=l+x/2:(l=z[0],x=z[1],"M"===l[0]&&"L"===x[0]&&(h=(l[1]+x[1])/2));z.push(["M",h,r>m?r:r+b],["L",d,m]);z=z.concat(t.circle(d-1,m-1,2,2))}return z}}var t=r.prototype.symbols;t.flag=function(a,r,y,x,b){var m=b&&b.anchorX||a;b=b&&b.anchorY||
86
+ r;var d=t.circle(m-1,b-1,2,2);d.push(["M",m,b],["L",a,r+x],["L",a,r],["L",a+y,r],["L",a+y,r+x],["L",a,r+x],["Z"]);return d};y("circle");y("square");a=a.getRendererType();a!==r&&(a.prototype.symbols.circlepin=t.circlepin,a.prototype.symbols.flag=t.flag,a.prototype.symbols.squarepin=t.squarepin);return t});L(a,"Series/Flags/FlagsSeries.js",[a["Series/Flags/FlagsPoint.js"],a["Core/Globals.js"],a["Series/OnSeriesComposition.js"],a["Core/Renderer/RendererUtilities.js"],a["Core/Series/SeriesRegistry.js"],
87
+ a["Core/Renderer/SVG/SVGElement.js"],a["Core/Utilities.js"]],function(a,r,y,t,l,D,E){var x=this&&this.__extends||function(){var b=function(a,d){b=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,a){b.__proto__=a}||function(b,a){for(var d in a)a.hasOwnProperty(d)&&(b[d]=a[d])};return b(a,d)};return function(a,d){function q(){this.constructor=a}b(a,d);a.prototype=null===d?Object.create(d):(q.prototype=d.prototype,new q)}}();r=r.noop;var b=t.distribute,m=l.series,d=l.seriesTypes.column,
88
+ z=E.addEvent,h=E.defined;t=E.extend;var K=E.merge,H=E.objectEach,I=E.wrap;E=function(a){function q(){var b=null!==a&&a.apply(this,arguments)||this;b.data=void 0;b.options=void 0;b.points=void 0;return b}x(q,a);q.prototype.animate=function(b){b&&this.setClip()};q.prototype.drawPoints=function(){var a=this.points,d=this.chart,q=d.renderer,m=d.inverted,u=this.options,l=u.y,k,C=this.yAxis,f={},e=[];for(k=a.length;k--;){var c=a[k];var n=(m?c.plotY:c.plotX)>this.xAxis.len;var p=c.plotX;var g=c.stackIndex;
89
+ var v=c.options.shape||u.shape;var w=c.plotY;"undefined"!==typeof w&&(w=c.plotY+l-("undefined"!==typeof g&&g*u.stackDistance));c.anchorX=g?void 0:c.plotX;var Q=g?void 0:c.plotY;var O="flag"!==v;g=c.graphic;"undefined"!==typeof w&&0<=p&&!n?(g&&c.hasNewShapeType()&&(g=g.destroy()),g||(g=c.graphic=q.label("",null,null,v,null,null,u.useHTML).addClass("highcharts-point").add(this.markerGroup),c.graphic.div&&(c.graphic.div.point=c),g.isNew=!0),g.attr({align:O?"center":"left",width:u.width,height:u.height,
90
+ "text-align":u.textAlign}),d.styledMode||g.attr(this.pointAttribs(c)).css(K(u.style,c.style)).shadow(u.shadow),0<p&&(p-=g.strokeWidth()%2),v={y:w,anchorY:Q},u.allowOverlapX&&(v.x=p,v.anchorX=c.anchorX),g.attr({text:c.options.title||u.title||"A"})[g.isNew?"attr":"animate"](v),u.allowOverlapX||(f[c.plotX]?f[c.plotX].size=Math.max(f[c.plotX].size,g.width):f[c.plotX]={align:O?.5:0,size:g.width,target:p,anchorX:p}),c.tooltipPos=[p,w+C.pos-d.plotTop]):g&&(c.graphic=g.destroy())}if(!u.allowOverlapX){var B=
91
+ 100;H(f,function(g){g.plotX=g.anchorX;e.push(g);B=Math.max(g.size,B)});b(e,m?C.len:this.xAxis.len,B);a.forEach(function(g){var c=g.graphic&&f[g.plotX];c&&(g.graphic[g.graphic.isNew?"attr":"animate"]({x:c.pos+c.align*c.size,anchorX:g.anchorX}),h(c.pos)?g.graphic.isNew=!1:(g.graphic.attr({x:-9999,anchorX:-9999}),g.graphic.isNew=!0))})}u.useHTML&&I(this.markerGroup,"on",function(g){return D.prototype.on.apply(g.apply(this,[].slice.call(arguments,1)),[].slice.call(arguments,1))})};q.prototype.drawTracker=
92
+ function(){var b=this.points;a.prototype.drawTracker.call(this);b.forEach(function(a){var d=a.graphic;d&&(a.unbindMouseOver&&a.unbindMouseOver(),a.unbindMouseOver=z(d.element,"mouseover",function(){0<a.stackIndex&&!a.raised&&(a._y=d.y,d.attr({y:a._y-8}),a.raised=!0);b.forEach(function(b){b!==a&&b.raised&&b.graphic&&(b.graphic.attr({y:b._y}),b.raised=!1)})}))})};q.prototype.pointAttribs=function(b,a){var d=this.options,q=b&&b.color||this.color,h=d.lineColor,m=b&&b.lineWidth;b=b&&b.fillColor||d.fillColor;
93
+ a&&(b=d.states[a].fillColor,h=d.states[a].lineColor,m=d.states[a].lineWidth);return{fill:b||q,stroke:h||q,"stroke-width":m||d.lineWidth||0}};q.prototype.setClip=function(){m.prototype.setClip.apply(this,arguments);!1!==this.options.clip&&this.sharedClipKey&&this.markerGroup&&this.markerGroup.clip(this.chart.sharedClips[this.sharedClipKey])};q.defaultOptions=K(d.defaultOptions,{pointRange:0,allowOverlapX:!1,shape:"flag",stackDistance:12,textAlign:"center",tooltip:{pointFormat:"{point.text}"},threshold:null,
94
+ y:-30,fillColor:"#ffffff",lineWidth:1,states:{hover:{lineColor:"#000000",fillColor:"#ccd6eb"}},style:{fontSize:"11px",fontWeight:"bold"}});return q}(d);y.compose(E);t(E.prototype,{allowDG:!1,forceCrop:!0,invertible:!1,noSharedTooltip:!0,pointClass:a,sorted:!1,takeOrdinalPosition:!1,trackerGroups:["markerGroup"],buildKDTree:r,init:m.prototype.init,invertGroups:r});l.registerSeriesType("flags",E);"";"";return E});L(a,"Core/Axis/ScrollbarAxis.js",[a["Core/Utilities.js"]],function(a){var r=a.addEvent,
95
+ y=a.defined,t=a.pick;return function(){function a(){}a.compose=function(l,E){if(-1===a.composed.indexOf(l))a.composed.push(l);else return l;var x=function(b){var a=t(b.options&&b.options.min,b.min),d=t(b.options&&b.options.max,b.max);return{axisMin:a,axisMax:d,scrollMin:y(b.dataMin)?Math.min(a,b.min,b.dataMin,t(b.threshold,Infinity)):a,scrollMax:y(b.dataMax)?Math.max(d,b.max,b.dataMax,t(b.threshold,-Infinity)):d}};r(l,"afterInit",function(){var b=this;b.options&&b.options.scrollbar&&b.options.scrollbar.enabled&&
96
+ (b.options.scrollbar.vertical=!b.horiz,b.options.startOnTick=b.options.endOnTick=!1,b.scrollbar=new E(b.chart.renderer,b.options.scrollbar,b.chart),r(b.scrollbar,"changed",function(a){var d=x(b),m=d.axisMax,h=d.scrollMin,l=d.scrollMax-h;y(d.axisMin)&&y(m)&&(b.horiz&&!b.reversed||!b.horiz&&b.reversed?(d=h+l*this.to,h+=l*this.from):(d=h+l*(1-this.from),h+=l*(1-this.to)),this.shouldUpdateExtremes(a.DOMType)?b.setExtremes(h,d,!0,"mousemove"!==a.DOMType&&"touchmove"!==a.DOMType,a):this.setRange(this.from,
97
+ this.to))}))});r(l,"afterRender",function(){var b=x(this),a=b.scrollMin,d=b.scrollMax;b=this.scrollbar;var l=this.axisTitleMargin+(this.titleOffset||0),h=this.chart.scrollbarsOffsets,t=this.options.margin||0;b&&(this.horiz?(this.opposite||(h[1]+=l),b.position(this.left,this.top+this.height+2+h[1]-(this.opposite?t:0),this.width,this.height),this.opposite||(h[1]+=t),l=1):(this.opposite&&(h[0]+=l),b.position(b.options.opposite?this.left+this.width+2+h[0]-(this.opposite?0:t):this.opposite?0:t,this.top,
98
+ this.width,this.height),this.opposite&&(h[0]+=t),l=0),h[l]+=b.size+b.options.margin,isNaN(a)||isNaN(d)||!y(this.min)||!y(this.max)||this.min===this.max?b.setRange(0,1):(h=(this.min-a)/(d-a),a=(this.max-a)/(d-a),this.horiz&&!this.reversed||!this.horiz&&this.reversed?b.setRange(h,a):b.setRange(1-a,1-h)))});r(l,"afterGetOffset",function(){var b=this.scrollbar&&!this.scrollbar.options.opposite;b=this.horiz?2:b?3:1;var a=this.scrollbar;a&&(this.chart.scrollbarsOffsets=[0,0],this.chart.axisOffset[b]+=a.size+
99
+ a.options.margin)});return l};a.composed=[];return a}()});L(a,"Core/ScrollbarDefaults.js",[a["Core/Globals.js"]],function(a){return{height:a.isTouchDevice?20:14,barBorderRadius:0,buttonBorderRadius:0,liveRedraw:void 0,margin:10,minWidth:6,opposite:!0,step:.2,zIndex:3,barBackgroundColor:"#cccccc",barBorderWidth:1,barBorderColor:"#cccccc",buttonArrowColor:"#333333",buttonBackgroundColor:"#e6e6e6",buttonBorderColor:"#cccccc",buttonBorderWidth:1,rifleColor:"#333333",trackBackgroundColor:"#f2f2f2",trackBorderColor:"#f2f2f2",
100
+ trackBorderWidth:1}});L(a,"Core/Scrollbar.js",[a["Core/DefaultOptions.js"],a["Core/Globals.js"],a["Core/Axis/ScrollbarAxis.js"],a["Core/ScrollbarDefaults.js"],a["Core/Utilities.js"]],function(a,r,y,t,l){var D=a.defaultOptions,E=l.addEvent,x=l.correctFloat,b=l.defined,m=l.destroyObjectProperties,d=l.fireEvent,z=l.merge,h=l.pick,K=l.removeEvent;a=function(){function a(a,b,d){this._events=[];this.chart=void 0;this.from=this.chartY=this.chartX=0;this.scrollbar=this.renderer=this.options=this.group=void 0;
101
+ this.scrollbarButtons=[];this.scrollbarGroup=void 0;this.scrollbarLeft=0;this.scrollbarRifles=void 0;this.scrollbarStrokeWidth=1;this.to=this.size=this.scrollbarTop=0;this.track=void 0;this.trackBorderWidth=1;this.userOptions=void 0;this.y=this.x=0;this.init(a,b,d)}a.compose=function(b){y.compose(b,a)};a.swapXY=function(a,b){b&&a.forEach(function(a){for(var b=a.length,d,q=0;q<b;q+=2)d=a[q+1],"number"===typeof d&&(a[q+1]=a[q+2],a[q+2]=d)});return a};a.prototype.addEvents=function(){var a=this.options.inverted?
102
+ [1,0]:[0,1],b=this.scrollbarButtons,d=this.scrollbarGroup.element,h=this.track.element,l=this.mouseDownHandler.bind(this),m=this.mouseMoveHandler.bind(this),t=this.mouseUpHandler.bind(this);a=[[b[a[0]].element,"click",this.buttonToMinClick.bind(this)],[b[a[1]].element,"click",this.buttonToMaxClick.bind(this)],[h,"click",this.trackClick.bind(this)],[d,"mousedown",l],[d.ownerDocument,"mousemove",m],[d.ownerDocument,"mouseup",t]];r.hasTouch&&a.push([d,"touchstart",l],[d.ownerDocument,"touchmove",m],
103
+ [d.ownerDocument,"touchend",t]);a.forEach(function(a){E.apply(null,a)});this._events=a};a.prototype.buttonToMaxClick=function(a){var b=(this.to-this.from)*h(this.options.step,.2);this.updatePosition(this.from+b,this.to+b);d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.buttonToMinClick=function(a){var b=x(this.to-this.from)*h(this.options.step,.2);this.updatePosition(x(this.from-b),x(this.to-b));d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",
104
+ DOMEvent:a})};a.prototype.cursorToScrollbarPosition=function(a){var b=this.options;b=b.minWidth>this.calculatedWidth?b.minWidth:0;return{chartX:(a.chartX-this.x-this.xOffset)/(this.barWidth-b),chartY:(a.chartY-this.y-this.yOffset)/(this.barWidth-b)}};a.prototype.destroy=function(){var a=this,b=a.chart.scroller;a.removeEvents();["track","scrollbarRifles","scrollbar","scrollbarGroup","group"].forEach(function(b){a[b]&&a[b].destroy&&(a[b]=a[b].destroy())});b&&a===b.scrollbar&&(b.scrollbar=null,m(b.scrollbarButtons))};
105
+ a.prototype.drawScrollbarButton=function(b){var d=this.renderer,q=this.scrollbarButtons,h=this.options,l=this.size,m=d.g().add(this.group);q.push(m);m=d.rect().addClass("highcharts-scrollbar-button").add(m);this.chart.styledMode||m.attr({stroke:h.buttonBorderColor,"stroke-width":h.buttonBorderWidth,fill:h.buttonBackgroundColor});m.attr(m.crisp({x:-.5,y:-.5,width:l+1,height:l+1,r:h.buttonBorderRadius},m.strokeWidth()));m=d.path(a.swapXY([["M",l/2+(b?-1:1),l/2-3],["L",l/2+(b?-1:1),l/2+3],["L",l/2+(b?
106
+ 2:-2),l/2]],h.vertical)).addClass("highcharts-scrollbar-arrow").add(q[b]);this.chart.styledMode||m.attr({fill:h.buttonArrowColor})};a.prototype.init=function(a,b,d){this.scrollbarButtons=[];this.renderer=a;this.userOptions=b;this.options=z(t,D.scrollbar,b);this.chart=d;this.size=h(this.options.size,this.options.height);b.enabled&&(this.render(),this.addEvents())};a.prototype.mouseDownHandler=function(a){a=this.chart.pointer.normalize(a);a=this.cursorToScrollbarPosition(a);this.chartX=a.chartX;this.chartY=
107
+ a.chartY;this.initPositions=[this.from,this.to];this.grabbedCenter=!0};a.prototype.mouseMoveHandler=function(a){var b=this.chart.pointer.normalize(a),q=this.options.vertical?"chartY":"chartX",h=this.initPositions||[];!this.grabbedCenter||a.touches&&0===a.touches[0][q]||(b=this.cursorToScrollbarPosition(b)[q],q=this[q],q=b-q,this.hasDragged=!0,this.updatePosition(h[0]+q,h[1]+q),this.hasDragged&&d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:a.type,DOMEvent:a}))};a.prototype.mouseUpHandler=
108
+ function(a){this.hasDragged&&d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMType:a.type,DOMEvent:a});this.grabbedCenter=this.hasDragged=this.chartX=this.chartY=null};a.prototype.position=function(a,b,d,h){var q=this.options.vertical,l=this.rendered?"animate":"attr",m=0;this.x=a;this.y=b+this.trackBorderWidth;this.width=d;this.xOffset=this.height=h;this.yOffset=m;q?(this.width=this.yOffset=d=m=this.size,this.xOffset=b=0,this.barWidth=h-2*d,this.x=a+=this.options.margin):(this.height=
109
+ this.xOffset=h=b=this.size,this.barWidth=d-2*h,this.y+=this.options.margin);this.group[l]({translateX:a,translateY:this.y});this.track[l]({width:d,height:h});this.scrollbarButtons[1][l]({translateX:q?0:d-b,translateY:q?h-m:0})};a.prototype.removeEvents=function(){this._events.forEach(function(a){K.apply(null,a)});this._events.length=0};a.prototype.render=function(){var b=this.renderer,d=this.options,h=this.size,l=this.chart.styledMode,m=b.g("scrollbar").attr({zIndex:d.zIndex,translateY:-99999}).add();
110
+ this.group=m;this.track=b.rect().addClass("highcharts-scrollbar-track").attr({x:0,r:d.trackBorderRadius||0,height:h,width:h}).add(m);l||this.track.attr({fill:d.trackBackgroundColor,stroke:d.trackBorderColor,"stroke-width":d.trackBorderWidth});this.trackBorderWidth=this.track.strokeWidth();this.track.attr({y:-this.trackBorderWidth%2/2});this.scrollbarGroup=b.g().add(m);this.scrollbar=b.rect().addClass("highcharts-scrollbar-thumb").attr({height:h,width:h,r:d.barBorderRadius||0}).add(this.scrollbarGroup);
111
+ this.scrollbarRifles=b.path(a.swapXY([["M",-3,h/4],["L",-3,2*h/3],["M",0,h/4],["L",0,2*h/3],["M",3,h/4],["L",3,2*h/3]],d.vertical)).addClass("highcharts-scrollbar-rifles").add(this.scrollbarGroup);l||(this.scrollbar.attr({fill:d.barBackgroundColor,stroke:d.barBorderColor,"stroke-width":d.barBorderWidth}),this.scrollbarRifles.attr({stroke:d.rifleColor,"stroke-width":1}));this.scrollbarStrokeWidth=this.scrollbar.strokeWidth();this.scrollbarGroup.translate(-this.scrollbarStrokeWidth%2/2,-this.scrollbarStrokeWidth%
112
+ 2/2);this.drawScrollbarButton(0);this.drawScrollbarButton(1)};a.prototype.setRange=function(a,d){var h=this.options,l=h.vertical,m=h.minWidth,t=this.barWidth,r=!this.rendered||this.hasDragged||this.chart.navigator&&this.chart.navigator.hasDragged?"attr":"animate";if(b(t)){var u=t*Math.min(d,1);a=Math.max(a,0);var z=Math.ceil(t*a);this.calculatedWidth=u=x(u-z);u<m&&(z=(t-m+u)*a,u=m);m=Math.floor(z+this.xOffset+this.yOffset);t=u/2-.5;this.from=a;this.to=d;l?(this.scrollbarGroup[r]({translateY:m}),this.scrollbar[r]({height:u}),
113
+ this.scrollbarRifles[r]({translateY:t}),this.scrollbarTop=m,this.scrollbarLeft=0):(this.scrollbarGroup[r]({translateX:m}),this.scrollbar[r]({width:u}),this.scrollbarRifles[r]({translateX:t}),this.scrollbarLeft=m,this.scrollbarTop=0);12>=u?this.scrollbarRifles.hide():this.scrollbarRifles.show(!0);!1===h.showFull&&(0>=a&&1<=d?this.group.hide():this.group.show());this.rendered=!0}};a.prototype.shouldUpdateExtremes=function(a){return h(this.options.liveRedraw,r.svg&&!r.isTouchDevice&&!this.chart.isBoosting)||
114
+ "mouseup"===a||"touchend"===a||!b(a)};a.prototype.trackClick=function(a){var b=this.chart.pointer.normalize(a),h=this.to-this.from,m=this.y+this.scrollbarTop,l=this.x+this.scrollbarLeft;this.options.vertical&&b.chartY>m||!this.options.vertical&&b.chartX>l?this.updatePosition(this.from+h,this.to+h):this.updatePosition(this.from-h,this.to-h);d(this,"changed",{from:this.from,to:this.to,trigger:"scrollbar",DOMEvent:a})};a.prototype.update=function(a){this.destroy();this.init(this.chart.renderer,z(!0,
115
+ this.options,a),this.chart)};a.prototype.updatePosition=function(a,b){1<b&&(a=x(1-x(b-a)),b=1);0>a&&(b=x(b-a),a=0);this.from=a;this.to=b};a.defaultOptions=t;return a}();D.scrollbar=z(!0,a.defaultOptions,D.scrollbar);return a});L(a,"Core/Axis/NavigatorAxis.js",[a["Core/Globals.js"],a["Core/Utilities.js"]],function(a,r){var y=a.isTouchDevice,t=r.addEvent,l=r.correctFloat,D=r.defined,E=r.isNumber,x=r.pick,b=function(){function a(a){this.axis=a}a.prototype.destroy=function(){this.axis=void 0};a.prototype.toFixedRange=
116
+ function(a,b,h,m){var d=this.axis,t=d.chart;t=t&&t.fixedRange;var r=(d.pointRange||0)/2;a=x(h,d.translate(a,!0,!d.horiz));b=x(m,d.translate(b,!0,!d.horiz));d=t&&(b-a)/t;D(h)||(a=l(a+r));D(m)||(b=l(b-r));.7<d&&1.3>d&&(m?a=b-t:b=a+t);E(a)&&E(b)||(a=b=void 0);return{min:a,max:b}};return a}();return function(){function a(){}a.compose=function(a){a.keepProps.push("navigatorAxis");t(a,"init",function(){this.navigatorAxis||(this.navigatorAxis=new b(this))});t(a,"zoom",function(a){var b=this.chart.options,
117
+ d=b.navigator,l=this.navigatorAxis,m=b.chart.pinchType,t=b.rangeSelector;b=b.chart.zoomType;this.isXAxis&&(d&&d.enabled||t&&t.enabled)&&("y"===b?a.zoomed=!1:(!y&&"xy"===b||y&&"xy"===m)&&this.options.range&&(d=l.previousZoom,D(a.newMin)?l.previousZoom=[this.min,this.max]:d&&(a.newMin=d[0],a.newMax=d[1],l.previousZoom=void 0)));"undefined"!==typeof a.zoomed&&a.preventDefault()})};a.AdditionsClass=b;return a}()});L(a,"Core/Navigator.js",[a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/Color/Color.js"],
118
+ a["Core/Globals.js"],a["Core/Axis/NavigatorAxis.js"],a["Core/DefaultOptions.js"],a["Core/Renderer/RendererRegistry.js"],a["Core/Scrollbar.js"],a["Core/Series/Series.js"],a["Core/Series/SeriesRegistry.js"],a["Core/Utilities.js"]],function(a,r,y,t,l,D,E,x,b,m,d){y=y.parse;var z=t.hasTouch,h=t.isTouchDevice,K=D.defaultOptions,H=d.addEvent,I=d.clamp,C=d.correctFloat,q=d.defined,L=d.destroyObjectProperties,P=d.erase,F=d.extend,N=d.find,u=d.isArray,M=d.isNumber,k=d.merge,J=d.pick,f=d.removeEvent,e=d.splat,
119
+ c=function(a){for(var g=[],c=1;c<arguments.length;c++)g[c-1]=arguments[c];g=[].filter.call(g,M);if(g.length)return Math[a].apply(0,g)};D="undefined"===typeof m.seriesTypes.areaspline?"line":"areaspline";F(K,{navigator:{height:40,margin:25,maskInside:!0,handles:{width:7,height:15,symbols:["navigator-handle","navigator-handle"],enabled:!0,lineWidth:1,backgroundColor:"#f2f2f2",borderColor:"#999999"},maskFill:y("#6685c2").setOpacity(.3).get(),outlineColor:"#cccccc",outlineWidth:1,series:{type:D,fillOpacity:.05,
120
+ lineWidth:1,compare:null,dataGrouping:{approximation:"average",enabled:!0,groupPixelWidth:2,firstAnchor:"firstPoint",anchor:"middle",lastAnchor:"lastPoint",units:[["millisecond",[1,2,5,10,20,25,50,100,200,500]],["second",[1,2,5,10,15,30]],["minute",[1,2,5,10,15,30]],["hour",[1,2,3,4,6,8,12]],["day",[1,2,3,4]],["week",[1,2,3]],["month",[1,3,6]],["year",null]]},dataLabels:{enabled:!1,zIndex:2},id:"highcharts-navigator-series",className:"highcharts-navigator-series",lineColor:null,marker:{enabled:!1},
121
+ threshold:null},xAxis:{overscroll:0,className:"highcharts-navigator-xaxis",tickLength:0,lineWidth:0,gridLineColor:"#e6e6e6",gridLineWidth:1,tickPixelInterval:200,labels:{align:"left",style:{color:"#999999"},x:3,y:-4},crosshair:!1},yAxis:{className:"highcharts-navigator-yaxis",gridLineWidth:0,startOnTick:!1,endOnTick:!1,minPadding:.1,maxPadding:.1,labels:{enabled:!1},crosshair:!1,title:{text:null},tickLength:0,tickWidth:0}}});E.getRendererType().prototype.symbols["navigator-handle"]=function(a,g,c,
122
+ b,e){a=(e&&e.width||0)/2;g=Math.round(a/3)+.5;e=e&&e.height||0;return[["M",-a-1,.5],["L",a,.5],["L",a,e+.5],["L",-a-1,e+.5],["L",-a-1,.5],["M",-g,4],["L",-g,e-3],["M",g-1,4],["L",g-1,e-3]]};var n=function(){function b(g){this.zoomedMin=this.zoomedMax=this.yAxis=this.xAxis=this.top=this.size=this.shades=this.rendered=this.range=this.outlineHeight=this.outline=this.opposite=this.navigatorSize=this.navigatorSeries=this.navigatorOptions=this.navigatorGroup=this.navigatorEnabled=this.left=this.height=
123
+ this.handles=this.chart=this.baseSeries=void 0;this.init(g)}b.prototype.drawHandle=function(g,a,c,b){var e=this.navigatorOptions.handles.height;this.handles[a][b](c?{translateX:Math.round(this.left+this.height/2),translateY:Math.round(this.top+parseInt(g,10)+.5-e)}:{translateX:Math.round(this.left+parseInt(g,10)),translateY:Math.round(this.top+this.height/2-e/2-1)})};b.prototype.drawOutline=function(g,a,c,b){var e=this.navigatorOptions.maskInside,v=this.outline.strokeWidth(),d=v/2,w=v%2/2;v=this.outlineHeight;
124
+ var p=this.scrollbarHeight||0,n=this.size,f=this.left-p,k=this.top;c?(f-=d,c=k+a+w,a=k+g+w,w=[["M",f+v,k-p-w],["L",f+v,c],["L",f,c],["L",f,a],["L",f+v,a],["L",f+v,k+n+p]],e&&w.push(["M",f+v,c-d],["L",f+v,a+d])):(g+=f+p-w,a+=f+p-w,k+=d,w=[["M",f,k],["L",g,k],["L",g,k+v],["L",a,k+v],["L",a,k],["L",f+n+2*p,k]],e&&w.push(["M",g-d,k],["L",a+d,k]));this.outline[b]({d:w})};b.prototype.drawMasks=function(a,c,b,e){var g=this.left,v=this.top,d=this.height;if(b){var w=[g,g,g];var p=[v,v+a,v+c];var n=[d,d,d];
125
+ var f=[a,c-a,this.size-c]}else w=[g,g+a,g+c],p=[v,v,v],n=[a,c-a,this.size-c],f=[d,d,d];this.shades.forEach(function(a,g){a[e]({x:w[g],y:p[g],width:n[g],height:f[g]})})};b.prototype.renderElements=function(){var a=this,c=a.navigatorOptions,b=c.maskInside,e=a.chart,d=e.renderer,p,n={cursor:e.inverted?"ns-resize":"ew-resize"};a.navigatorGroup=p=d.g("navigator").attr({zIndex:8,visibility:"hidden"}).add();[!b,b,!b].forEach(function(g,b){a.shades[b]=d.rect().addClass("highcharts-navigator-mask"+(1===b?
126
+ "-inside":"-outside")).add(p);e.styledMode||a.shades[b].attr({fill:g?c.maskFill:"rgba(0,0,0,0)"}).css(1===b&&n)});a.outline=d.path().addClass("highcharts-navigator-outline").add(p);e.styledMode||a.outline.attr({"stroke-width":c.outlineWidth,stroke:c.outlineColor});c.handles.enabled&&[0,1].forEach(function(g){c.handles.inverted=e.inverted;a.handles[g]=d.symbol(c.handles.symbols[g],-c.handles.width/2-1,0,c.handles.width,c.handles.height,c.handles);a.handles[g].attr({zIndex:7-g}).addClass("highcharts-navigator-handle highcharts-navigator-handle-"+
127
+ ["left","right"][g]).add(p);if(!e.styledMode){var b=c.handles;a.handles[g].attr({fill:b.backgroundColor,stroke:b.borderColor,"stroke-width":b.lineWidth}).css(n)}})};b.prototype.update=function(a){(this.series||[]).forEach(function(a){a.baseSeries&&delete a.baseSeries.navigatorSeries});this.destroy();k(!0,this.chart.options.navigator,this.options,a);this.init(this.chart)};b.prototype.render=function(a,c,b,e){var g=this.chart,v=this.scrollbarHeight,d,p=this.xAxis,n=p.pointRange||0;var w=p.navigatorAxis.fake?
128
+ g.xAxis[0]:p;var f=this.navigatorEnabled,k,h=this.rendered;var l=g.inverted;var m=g.xAxis[0].minRange,u=g.xAxis[0].options.maxRange;if(!this.hasDragged||q(b)){a=C(a-n/2);c=C(c+n/2);if(!M(a)||!M(c))if(h)b=0,e=J(p.width,w.width);else return;this.left=J(p.left,g.plotLeft+v+(l?g.plotWidth:0));this.size=k=d=J(p.len,(l?g.plotHeight:g.plotWidth)-2*v);g=l?v:d+2*v;b=J(b,p.toPixels(a,!0));e=J(e,p.toPixels(c,!0));M(b)&&Infinity!==Math.abs(b)||(b=0,e=g);a=p.toValue(b,!0);c=p.toValue(e,!0);var Q=Math.abs(C(c-
129
+ a));Q<m?this.grabbedLeft?b=p.toPixels(c-m-n,!0):this.grabbedRight&&(e=p.toPixels(a+m+n,!0)):q(u)&&C(Q-n)>u&&(this.grabbedLeft?b=p.toPixels(c-u-n,!0):this.grabbedRight&&(e=p.toPixels(a+u+n,!0)));this.zoomedMax=I(Math.max(b,e),0,k);this.zoomedMin=I(this.fixedWidth?this.zoomedMax-this.fixedWidth:Math.min(b,e),0,k);this.range=this.zoomedMax-this.zoomedMin;k=Math.round(this.zoomedMax);b=Math.round(this.zoomedMin);f&&(this.navigatorGroup.attr({visibility:"visible"}),h=h&&!this.hasDragged?"animate":"attr",
130
+ this.drawMasks(b,k,l,h),this.drawOutline(b,k,l,h),this.navigatorOptions.handles.enabled&&(this.drawHandle(b,0,l,h),this.drawHandle(k,1,l,h)));this.scrollbar&&(l?(l=this.top-v,w=this.left-v+(f||!w.opposite?0:(w.titleOffset||0)+w.axisTitleMargin),v=d+2*v):(l=this.top+(f?this.height:-v),w=this.left-v),this.scrollbar.position(w,l,g,v),this.scrollbar.setRange(this.zoomedMin/(d||1),this.zoomedMax/(d||1)));this.rendered=!0}};b.prototype.addMouseEvents=function(){var a=this,c=a.chart,b=c.container,e=[],d,
131
+ p;a.mouseMoveHandler=d=function(c){a.onMouseMove(c)};a.mouseUpHandler=p=function(c){a.onMouseUp(c)};e=a.getPartsEvents("mousedown");e.push(H(c.renderTo,"mousemove",d),H(b.ownerDocument,"mouseup",p));z&&(e.push(H(c.renderTo,"touchmove",d),H(b.ownerDocument,"touchend",p)),e.concat(a.getPartsEvents("touchstart")));a.eventsToUnbind=e;a.series&&a.series[0]&&e.push(H(a.series[0].xAxis,"foundExtremes",function(){c.navigator.modifyNavigatorAxisExtremes()}))};b.prototype.getPartsEvents=function(a){var c=this,
132
+ g=[];["shades","handles"].forEach(function(b){c[b].forEach(function(e,v){g.push(H(e.element,a,function(a){c[b+"Mousedown"](a,v)}))})});return g};b.prototype.shadesMousedown=function(a,c){a=this.chart.pointer.normalize(a);var b=this.chart,g=this.xAxis,e=this.zoomedMin,v=this.left,d=this.size,p=this.range,n=a.chartX;b.inverted&&(n=a.chartY,v=this.top);if(1===c)this.grabbedCenter=n,this.fixedWidth=p,this.dragOffset=n-e;else{a=n-v-p/2;if(0===c)a=Math.max(0,a);else if(2===c&&a+p>=d)if(a=d-p,this.reversedExtremes){a-=
133
+ p;var f=this.getUnionExtremes().dataMin}else var k=this.getUnionExtremes().dataMax;a!==e&&(this.fixedWidth=p,c=g.navigatorAxis.toFixedRange(a,a+p,f,k),q(c.min)&&b.xAxis[0].setExtremes(Math.min(c.min,c.max),Math.max(c.min,c.max),!0,null,{trigger:"navigator"}))}};b.prototype.handlesMousedown=function(a,c){this.chart.pointer.normalize(a);a=this.chart;var b=a.xAxis[0],g=this.reversedExtremes;0===c?(this.grabbedLeft=!0,this.otherHandlePos=this.zoomedMax,this.fixedExtreme=g?b.min:b.max):(this.grabbedRight=
134
+ !0,this.otherHandlePos=this.zoomedMin,this.fixedExtreme=g?b.max:b.min);a.fixedRange=null};b.prototype.onMouseMove=function(a){var c=this,b=c.chart,g=c.left,e=c.navigatorSize,d=c.range,p=c.dragOffset,n=b.inverted;a.touches&&0===a.touches[0].pageX||(a=b.pointer.normalize(a),b=a.chartX,n&&(g=c.top,b=a.chartY),c.grabbedLeft?(c.hasDragged=!0,c.render(0,0,b-g,c.otherHandlePos)):c.grabbedRight?(c.hasDragged=!0,c.render(0,0,c.otherHandlePos,b-g)):c.grabbedCenter&&(c.hasDragged=!0,b<p?b=p:b>e+p-d&&(b=e+p-
135
+ d),c.render(0,0,b-p,b-p+d)),c.hasDragged&&c.scrollbar&&J(c.scrollbar.options.liveRedraw,t.svg&&!h&&!this.chart.isBoosting)&&(a.DOMType=a.type,setTimeout(function(){c.onMouseUp(a)},0)))};b.prototype.onMouseUp=function(a){var c=this.chart,b=this.xAxis,g=this.scrollbar,e=a.DOMEvent||a,d=c.inverted,p=this.rendered&&!this.hasDragged?"animate":"attr";if(this.hasDragged&&(!g||!g.hasDragged)||"scrollbar"===a.trigger){g=this.getUnionExtremes();if(this.zoomedMin===this.otherHandlePos)var n=this.fixedExtreme;
136
+ else if(this.zoomedMax===this.otherHandlePos)var f=this.fixedExtreme;this.zoomedMax===this.size&&(f=this.reversedExtremes?g.dataMin:g.dataMax);0===this.zoomedMin&&(n=this.reversedExtremes?g.dataMax:g.dataMin);b=b.navigatorAxis.toFixedRange(this.zoomedMin,this.zoomedMax,n,f);q(b.min)&&c.xAxis[0].setExtremes(Math.min(b.min,b.max),Math.max(b.min,b.max),!0,this.hasDragged?!1:null,{trigger:"navigator",triggerOp:"navigator-drag",DOMEvent:e})}"mousemove"!==a.DOMType&&"touchmove"!==a.DOMType&&(this.grabbedLeft=
137
+ this.grabbedRight=this.grabbedCenter=this.fixedWidth=this.fixedExtreme=this.otherHandlePos=this.hasDragged=this.dragOffset=null);this.navigatorEnabled&&M(this.zoomedMin)&&M(this.zoomedMax)&&(c=Math.round(this.zoomedMin),a=Math.round(this.zoomedMax),this.shades&&this.drawMasks(c,a,d,p),this.outline&&this.drawOutline(c,a,d,p),this.navigatorOptions.handles.enabled&&Object.keys(this.handles).length===this.handles.length&&(this.drawHandle(c,0,d,p),this.drawHandle(a,1,d,p)))};b.prototype.removeEvents=function(){this.eventsToUnbind&&
138
+ (this.eventsToUnbind.forEach(function(a){a()}),this.eventsToUnbind=void 0);this.removeBaseSeriesEvents()};b.prototype.removeBaseSeriesEvents=function(){var a=this.baseSeries||[];this.navigatorEnabled&&a[0]&&(!1!==this.navigatorOptions.adaptToUpdatedData&&a.forEach(function(a){f(a,"updatedData",this.updatedDataHandler)},this),a[0].xAxis&&f(a[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes))};b.prototype.init=function(b){var g=b.options,e=g.navigator,d=e.enabled,p=g.scrollbar,n=p.enabled;g=d?e.height:
139
+ 0;var f=n?p.height:0;this.handles=[];this.shades=[];this.chart=b;this.setBaseSeries();this.height=g;this.scrollbarHeight=f;this.scrollbarEnabled=n;this.navigatorEnabled=d;this.navigatorOptions=e;this.scrollbarOptions=p;this.outlineHeight=g+f;this.opposite=J(e.opposite,!(d||!b.inverted));var h=this;d=h.baseSeries;p=b.xAxis.length;n=b.yAxis.length;var m=d&&d[0]&&d[0].xAxis||b.xAxis[0]||{options:{}};b.isDirtyBox=!0;h.navigatorEnabled?(h.xAxis=new a(b,k({breaks:m.options.breaks,ordinal:m.options.ordinal},
140
+ e.xAxis,{id:"navigator-x-axis",yAxis:"navigator-y-axis",isX:!0,type:"datetime",index:p,isInternal:!0,offset:0,keepOrdinalPadding:!0,startOnTick:!1,endOnTick:!1,minPadding:0,maxPadding:0,zoomEnabled:!1},b.inverted?{offsets:[f,0,-f,0],width:g}:{offsets:[0,-f,0,f],height:g})),h.yAxis=new a(b,k(e.yAxis,{id:"navigator-y-axis",alignTicks:!1,offset:0,index:n,isInternal:!0,reversed:J(e.yAxis&&e.yAxis.reversed,b.yAxis[0]&&b.yAxis[0].reversed,!1),zoomEnabled:!1},b.inverted?{width:g}:{height:g})),d||e.series.data?
141
+ h.updateNavigatorSeries(!1):0===b.series.length&&(h.unbindRedraw=H(b,"beforeRedraw",function(){0<b.series.length&&!h.series&&(h.setBaseSeries(),h.unbindRedraw())})),h.reversedExtremes=b.inverted&&!h.xAxis.reversed||!b.inverted&&h.xAxis.reversed,h.renderElements(),h.addMouseEvents()):(h.xAxis={chart:b,navigatorAxis:{fake:!0},translate:function(a,g){var e=b.xAxis[0],d=e.getExtremes(),p=e.len-2*f,n=c("min",e.options.min,d.dataMin);e=c("max",e.options.max,d.dataMax)-n;return g?a*e/p+n:p*(a-n)/e},toPixels:function(a){return this.translate(a)},
142
+ toValue:function(a){return this.translate(a,!0)}},h.xAxis.navigatorAxis.axis=h.xAxis,h.xAxis.navigatorAxis.toFixedRange=l.AdditionsClass.prototype.toFixedRange.bind(h.xAxis.navigatorAxis));b.options.scrollbar.enabled&&(b.scrollbar=h.scrollbar=new x(b.renderer,k(b.options.scrollbar,{margin:h.navigatorEnabled?0:10,vertical:b.inverted}),b),H(h.scrollbar,"changed",function(a){var c=h.size,b=c*this.to;c*=this.from;h.hasDragged=h.scrollbar.hasDragged;h.render(0,0,c,b);this.shouldUpdateExtremes(a.DOMType)&&
143
+ setTimeout(function(){h.onMouseUp(a)})}));h.addBaseSeriesEvents();h.addChartEvents()};b.prototype.getUnionExtremes=function(a){var b=this.chart.xAxis[0],g=this.xAxis,e=g.options,d=b.options,p;a&&null===b.dataMin||(p={dataMin:J(e&&e.min,c("min",d.min,b.dataMin,g.dataMin,g.min)),dataMax:J(e&&e.max,c("max",d.max,b.dataMax,g.dataMax,g.max))});return p};b.prototype.setBaseSeries=function(a,c){var b=this.chart,g=this.baseSeries=[];a=a||b.options&&b.options.navigator.baseSeries||(b.series.length?N(b.series,
144
+ function(a){return!a.options.isInternal}).index:0);(b.series||[]).forEach(function(c,b){c.options.isInternal||!c.options.showInNavigator&&(b!==a&&c.options.id!==a||!1===c.options.showInNavigator)||g.push(c)});this.xAxis&&!this.xAxis.navigatorAxis.fake&&this.updateNavigatorSeries(!0,c)};b.prototype.updateNavigatorSeries=function(a,c){var b=this,g=b.chart,d=b.baseSeries,p,n,v=b.navigatorOptions.series,h,l={enableMouseTracking:!1,index:null,linkedTo:null,group:"nav",padXAxis:!1,xAxis:"navigator-x-axis",
145
+ yAxis:"navigator-y-axis",showInLegend:!1,stacking:void 0,isInternal:!0,states:{inactive:{opacity:1}}},m=b.series=(b.series||[]).filter(function(a){var c=a.baseSeries;return 0>d.indexOf(c)?(c&&(f(c,"updatedData",b.updatedDataHandler),delete c.navigatorSeries),a.chart&&a.destroy(),!1):!0});d&&d.length&&d.forEach(function(a){var f=a.navigatorSeries,w=F({color:a.color,visible:a.visible},u(v)?K.navigator.series:v);f&&!1===b.navigatorOptions.adaptToUpdatedData||(l.name="Navigator "+d.length,p=a.options||
146
+ {},h=p.navigatorOptions||{},w.dataLabels=e(w.dataLabels),n=k(p,l,w,h),n.pointRange=J(w.pointRange,h.pointRange,K.plotOptions[n.type||"line"].pointRange),w=h.data||w.data,b.hasNavigatorData=b.hasNavigatorData||!!w,n.data=w||p.data&&p.data.slice(0),f&&f.options?f.update(n,c):(a.navigatorSeries=g.initSeries(n),a.navigatorSeries.baseSeries=a,m.push(a.navigatorSeries)))});if(v.data&&(!d||!d.length)||u(v))b.hasNavigatorData=!1,v=e(v),v.forEach(function(a,c){l.name="Navigator "+(m.length+1);n=k(K.navigator.series,
147
+ {color:g.series[c]&&!g.series[c].options.isInternal&&g.series[c].color||g.options.colors[c]||g.options.colors[0]},l,a);n.data=a.data;n.data&&(b.hasNavigatorData=!0,m.push(g.initSeries(n)))});a&&this.addBaseSeriesEvents()};b.prototype.addBaseSeriesEvents=function(){var a=this,c=a.baseSeries||[];c[0]&&c[0].xAxis&&c[0].eventsToUnbind.push(H(c[0].xAxis,"foundExtremes",this.modifyBaseAxisExtremes));c.forEach(function(c){c.eventsToUnbind.push(H(c,"show",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!0,
148
+ !1)}));c.eventsToUnbind.push(H(c,"hide",function(){this.navigatorSeries&&this.navigatorSeries.setVisible(!1,!1)}));!1!==this.navigatorOptions.adaptToUpdatedData&&c.xAxis&&c.eventsToUnbind.push(H(c,"updatedData",this.updatedDataHandler));c.eventsToUnbind.push(H(c,"remove",function(){this.navigatorSeries&&(P(a.series,this.navigatorSeries),q(this.navigatorSeries.options)&&this.navigatorSeries.remove(!1),delete this.navigatorSeries)}))},this)};b.prototype.getBaseSeriesMin=function(a){return this.baseSeries.reduce(function(a,
149
+ c){return Math.min(a,c.xData?c.xData[0]:a)},a)};b.prototype.modifyNavigatorAxisExtremes=function(){var a=this.xAxis,c;"undefined"!==typeof a.getExtremes&&(!(c=this.getUnionExtremes(!0))||c.dataMin===a.min&&c.dataMax===a.max||(a.min=c.dataMin,a.max=c.dataMax))};b.prototype.modifyBaseAxisExtremes=function(){var a=this.chart.navigator,c=this.getExtremes(),b=c.dataMin,e=c.dataMax;c=c.max-c.min;var d=a.stickToMin,p=a.stickToMax,n=J(this.options.overscroll,0),f=a.series&&a.series[0],k=!!this.setExtremes;
150
+ if(!this.eventArgs||"rangeSelectorButton"!==this.eventArgs.trigger){if(d){var h=b;var l=h+c}p&&(l=e+n,d||(h=Math.max(b,l-c,a.getBaseSeriesMin(f&&f.xData?f.xData[0]:-Number.MAX_VALUE))));k&&(d||p)&&M(h)&&(this.min=this.userMin=h,this.max=this.userMax=l)}a.stickToMin=a.stickToMax=null};b.prototype.updatedDataHandler=function(){var a=this.chart.navigator,c=this.navigatorSeries;a.stickToMax=a.reversedExtremes?0===Math.round(a.zoomedMin):Math.round(a.zoomedMax)>=Math.round(a.size);a.stickToMin=a.shouldStickToMin(this,
151
+ a);c&&!a.hasNavigatorData&&(c.options.pointStart=this.xData[0],c.setData(this.options.data,!1,null,!1))};b.prototype.shouldStickToMin=function(a,c){c=c.getBaseSeriesMin(a.xData[0]);var b=a.xAxis;a=b.max;var g=b.min;b=b.options.range;return M(a)&&M(g)?b&&0<a-c?a-c<b:g<=c:!1};b.prototype.addChartEvents=function(){this.eventsToUnbind||(this.eventsToUnbind=[]);this.eventsToUnbind.push(H(this.chart,"redraw",function(){var a=this.navigator,c=a&&(a.baseSeries&&a.baseSeries[0]&&a.baseSeries[0].xAxis||this.xAxis[0]);
152
+ c&&a.render(c.min,c.max)}),H(this.chart,"getMargins",function(){var a=this.navigator,c=a.opposite?"plotTop":"marginBottom";this.inverted&&(c=a.opposite?"marginRight":"plotLeft");this[c]=(this[c]||0)+(a.navigatorEnabled||!this.inverted?a.outlineHeight:0)+a.navigatorOptions.margin}))};b.prototype.destroy=function(){this.removeEvents();this.xAxis&&(P(this.chart.xAxis,this.xAxis),P(this.chart.axes,this.xAxis));this.yAxis&&(P(this.chart.yAxis,this.yAxis),P(this.chart.axes,this.yAxis));(this.series||[]).forEach(function(a){a.destroy&&
153
+ a.destroy()});"series xAxis yAxis shades outline scrollbarTrack scrollbarRifles scrollbarGroup scrollbar navigatorGroup rendered".split(" ").forEach(function(a){this[a]&&this[a].destroy&&this[a].destroy();this[a]=null},this);[this.handles].forEach(function(a){L(a)},this)};return b}();t.Navigator||(t.Navigator=n,l.compose(a),H(r,"beforeShowResetZoom",function(){var a=this.options,c=a.navigator,b=a.rangeSelector;if((c&&c.enabled||b&&b.enabled)&&(!h&&"x"===a.chart.zoomType||h&&"x"===a.chart.pinchType))return!1}),
154
+ H(r,"beforeRender",function(){var a=this.options;if(a.navigator.enabled||a.scrollbar.enabled)this.scroller=this.navigator=new n(this)}),H(r,"afterSetChartSize",function(){var a=this.legend,c=this.navigator;if(c){var b=a&&a.options;var e=c.xAxis;var d=c.yAxis;var n=c.scrollbarHeight;this.inverted?(c.left=c.opposite?this.chartWidth-n-c.height:this.spacing[3]+n,c.top=this.plotTop+n):(c.left=J(e.left,this.plotLeft+n),c.top=c.navigatorOptions.top||this.chartHeight-c.height-n-this.spacing[2]-(this.rangeSelector&&
155
+ this.extraBottomMargin?this.rangeSelector.getHeight():0)-(b&&"bottom"===b.verticalAlign&&"proximate"!==b.layout&&b.enabled&&!b.floating?a.legendHeight+J(b.margin,10):0)-(this.titleOffset?this.titleOffset[2]:0));e&&d&&(this.inverted?e.options.left=d.options.left=c.left:e.options.top=d.options.top=c.top,e.setAxisSize(),d.setAxisSize())}}),H(r,"update",function(a){var c=a.options.navigator||{},b=a.options.scrollbar||{};this.navigator||this.scroller||!c.enabled&&!b.enabled||(k(!0,this.options.navigator,
156
+ c),k(!0,this.options.scrollbar,b),delete a.options.navigator,delete a.options.scrollbar)}),H(r,"afterUpdate",function(a){this.navigator||this.scroller||!this.options.navigator.enabled&&!this.options.scrollbar.enabled||(this.scroller=this.navigator=new n(this),J(a.redraw,!0)&&this.redraw(a.animation))}),H(r,"afterAddSeries",function(){this.navigator&&this.navigator.setBaseSeries(null,!1)}),H(b,"afterUpdate",function(){this.chart.navigator&&!this.options.isInternal&&this.chart.navigator.setBaseSeries(null,
157
+ !1)}),r.prototype.callbacks.push(function(a){var c=a.navigator;c&&a.xAxis[0]&&(a=a.xAxis[0].getExtremes(),c.render(a.min,a.max))}));t.Navigator=n;return t.Navigator});L(a,"Extensions/RangeSelector.js",[a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/Globals.js"],a["Core/DefaultOptions.js"],a["Core/Renderer/SVG/SVGElement.js"],a["Core/Utilities.js"]],function(a,r,y,t,l,D){function E(a){if(-1!==a.indexOf("%L"))return"text";var c="aAdewbBmoyY".split("").some(function(c){return-1!==a.indexOf("%"+
158
+ c)}),b="HkIlMS".split("").some(function(c){return-1!==a.indexOf("%"+c)});return c&&b?"datetime-local":c?"date":b?"time":"text"}var x=t.defaultOptions,b=D.addEvent,m=D.createElement,d=D.css,z=D.defined,h=D.destroyObjectProperties,K=D.discardElement,H=D.extend,I=D.find,C=D.fireEvent,q=D.isNumber,P=D.merge,L=D.objectEach,F=D.pad,N=D.pick,u=D.pInt,M=D.splat;H(x,{rangeSelector:{allButtonsEnabled:!1,buttons:void 0,buttonSpacing:5,dropdown:"responsive",enabled:void 0,verticalAlign:"top",buttonTheme:{width:28,
159
+ height:18,padding:2,zIndex:7},floating:!1,x:0,y:0,height:void 0,inputBoxBorderColor:"none",inputBoxHeight:17,inputBoxWidth:void 0,inputDateFormat:"%b %e, %Y",inputDateParser:void 0,inputEditDateFormat:"%Y-%m-%d",inputEnabled:!0,inputPosition:{align:"right",x:0,y:0},inputSpacing:5,selected:void 0,buttonPosition:{align:"left",x:0,y:0},inputStyle:{color:"#335cad",cursor:"pointer"},labelStyle:{color:"#666666"}}});H(x.lang,{rangeSelectorZoom:"Zoom",rangeSelectorFrom:"",rangeSelectorTo:"\u2192"});var k=
160
+ function(){function e(a){this.buttons=void 0;this.buttonOptions=e.prototype.defaultButtons;this.initialButtonGroupWidth=0;this.options=void 0;this.chart=a;this.init(a)}e.prototype.clickButton=function(c,e){var d=this.chart,g=this.buttonOptions[c],n=d.xAxis[0],f=d.scroller&&d.scroller.getUnionExtremes()||n||{},k=f.dataMin,h=f.dataMax,l=n&&Math.round(Math.min(n.max,N(h,n.max))),m=g.type;f=g._range;var u,t=g.dataGrouping;if(null!==k&&null!==h){d.fixedRange=f;this.setSelected(c);t&&(this.forcedDataGrouping=
161
+ !0,a.prototype.setDataGrouping.call(n||{chart:this.chart},t,!1),this.frozenStates=g.preserveDataGrouping);if("month"===m||"year"===m)if(n){m={range:g,max:l,chart:d,dataMin:k,dataMax:h};var r=n.minFromRange.call(m);q(m.newMax)&&(l=m.newMax)}else f=g;else if(f)r=Math.max(l-f,k),l=Math.min(r+f,h);else if("ytd"===m)if(n)"undefined"===typeof h&&(k=Number.MAX_VALUE,h=Number.MIN_VALUE,d.series.forEach(function(a){a=a.xData;k=Math.min(a[0],k);h=Math.max(a[a.length-1],h)}),e=!1),l=this.getYTDExtremes(h,k,
162
+ d.time.useUTC),r=u=l.min,l=l.max;else{this.deferredYTDClick=c;return}else"all"===m&&n&&(d.navigator&&d.navigator.baseSeries[0]&&(d.navigator.baseSeries[0].xAxis.options.range=void 0),r=k,l=h);z(r)&&(r+=g._offsetMin);z(l)&&(l+=g._offsetMax);this.dropdown&&(this.dropdown.selectedIndex=c+1);if(n)n.setExtremes(r,l,N(e,!0),void 0,{trigger:"rangeSelectorButton",rangeSelectorButton:g});else{var x=M(d.options.xAxis)[0];var y=x.range;x.range=f;var J=x.min;x.min=u;b(d,"load",function(){x.range=y;x.min=J})}C(this,
163
+ "afterBtnClick")}};e.prototype.setSelected=function(a){this.selected=this.options.selected=a};e.prototype.init=function(a){var c=this,e=a.options.rangeSelector,g=e.buttons||c.defaultButtons.slice(),d=e.selected,f=function(){var a=c.minInput,b=c.maxInput;a&&a.blur&&C(a,"blur");b&&b.blur&&C(b,"blur")};c.chart=a;c.options=e;c.buttons=[];c.buttonOptions=g;this.eventsToUnbind=[];this.eventsToUnbind.push(b(a.container,"mousedown",f));this.eventsToUnbind.push(b(a,"resize",f));g.forEach(c.computeButtonRange);
164
+ "undefined"!==typeof d&&g[d]&&this.clickButton(d,!1);this.eventsToUnbind.push(b(a,"load",function(){a.xAxis&&a.xAxis[0]&&b(a.xAxis[0],"setExtremes",function(b){this.max-this.min!==a.fixedRange&&"rangeSelectorButton"!==b.trigger&&"updatedData"!==b.trigger&&c.forcedDataGrouping&&!c.frozenStates&&this.setDataGrouping(!1,!1)})}))};e.prototype.updateButtonStates=function(){var a=this,b=this.chart,e=this.dropdown,g=b.xAxis[0],d=Math.round(g.max-g.min),f=!g.hasVisibleSeries,k=b.scroller&&b.scroller.getUnionExtremes()||
165
+ g,h=k.dataMin,l=k.dataMax;b=a.getYTDExtremes(l,h,b.time.useUTC);var m=b.min,u=b.max,t=a.selected,r=q(t),x=a.options.allButtonsEnabled,y=a.buttons;a.buttonOptions.forEach(function(c,b){var n=c._range,p=c.type,k=c.count||1,v=y[b],w=0,q=c._offsetMax-c._offsetMin;c=b===t;var B=n>l-h,A=n<g.minRange,G=!1,z=!1;n=n===d;("month"===p||"year"===p)&&d+36E5>=864E5*{month:28,year:365}[p]*k-q&&d-36E5<=864E5*{month:31,year:366}[p]*k+q?n=!0:"ytd"===p?(n=u-m+q===d,G=!c):"all"===p&&(n=g.max-g.min>=l-h,z=!c&&r&&n);p=
166
+ !x&&(B||A||z||f);k=c&&n||n&&!r&&!G||c&&a.frozenStates;p?w=3:k&&(r=!0,w=2);v.state!==w&&(v.setState(w),e&&(e.options[b+1].disabled=p,2===w&&(e.selectedIndex=b+1)),0===w&&t===b&&a.setSelected())})};e.prototype.computeButtonRange=function(a){var c=a.type,b=a.count||1,e={millisecond:1,second:1E3,minute:6E4,hour:36E5,day:864E5,week:6048E5};if(e[c])a._range=e[c]*b;else if("month"===c||"year"===c)a._range=864E5*{month:30,year:365}[c]*b;a._offsetMin=N(a.offsetMin,0);a._offsetMax=N(a.offsetMax,0);a._range+=
167
+ a._offsetMax-a._offsetMin};e.prototype.getInputValue=function(a){a="min"===a?this.minInput:this.maxInput;var c=this.chart.options.rangeSelector,b=this.chart.time;return a?("text"===a.type&&c.inputDateParser||this.defaultInputDateParser)(a.value,b.useUTC,b):0};e.prototype.setInputValue=function(a,b){var c=this.options,e=this.chart.time,d="min"===a?this.minInput:this.maxInput;a="min"===a?this.minDateBox:this.maxDateBox;if(d){var n=d.getAttribute("data-hc-time");n=z(n)?Number(n):void 0;z(b)&&(z(n)&&
168
+ d.setAttribute("data-hc-time-previous",n),d.setAttribute("data-hc-time",b),n=b);d.value=e.dateFormat(this.inputTypeFormats[d.type]||c.inputEditDateFormat,n);a&&a.attr({text:e.dateFormat(c.inputDateFormat,n)})}};e.prototype.setInputExtremes=function(a,b,e){if(a="min"===a?this.minInput:this.maxInput){var c=this.inputTypeFormats[a.type],d=this.chart.time;c&&(b=d.dateFormat(c,b),a.min!==b&&(a.min=b),e=d.dateFormat(c,e),a.max!==e&&(a.max=e))}};e.prototype.showInput=function(a){var b="min"===a?this.minDateBox:
169
+ this.maxDateBox;if((a="min"===a?this.minInput:this.maxInput)&&b&&this.inputGroup){var c="text"===a.type,e=this.inputGroup,f=e.translateX;e=e.translateY;var k=this.options.inputBoxWidth;d(a,{width:c?b.width+(k?-2:20)+"px":"auto",height:c?b.height-2+"px":"auto",border:"2px solid silver"});c&&k?d(a,{left:f+b.x+"px",top:e+"px"}):d(a,{left:Math.min(Math.round(b.x+f-(a.offsetWidth-b.width)/2),this.chart.chartWidth-a.offsetWidth)+"px",top:e-(a.offsetHeight-b.height)/2+"px"})}};e.prototype.hideInput=function(a){(a=
170
+ "min"===a?this.minInput:this.maxInput)&&d(a,{top:"-9999em",border:0,width:"1px",height:"1px"})};e.prototype.defaultInputDateParser=function(a,b,e){var c=a.split("/").join("-").split(" ").join("T");-1===c.indexOf("T")&&(c+="T00:00");if(b)c+="Z";else{var d;if(d=y.isSafari)d=c,d=!(6<d.length&&(d.lastIndexOf("-")===d.length-6||d.lastIndexOf("+")===d.length-6));d&&(d=(new Date(c)).getTimezoneOffset()/60,c+=0>=d?"+"+F(-d)+":00":"-"+F(d)+":00")}c=Date.parse(c);q(c)||(a=a.split("-"),c=Date.UTC(u(a[0]),u(a[1])-
171
+ 1,u(a[2])));e&&b&&q(c)&&(c+=e.getTimezoneOffset(c));return c};e.prototype.drawInput=function(a){function b(){var b=k.getInputValue(a),e=c.xAxis[0],d=c.scroller&&c.scroller.xAxis?c.scroller.xAxis:e,g=d.dataMin;d=d.dataMax;var f=k.maxInput,n=k.minInput;b!==Number(r.getAttribute("data-hc-time-previous"))&&q(b)&&(r.setAttribute("data-hc-time-previous",b),t&&f&&q(g)?b>Number(f.getAttribute("data-hc-time"))?b=void 0:b<g&&(b=g):n&&q(d)&&(b<Number(n.getAttribute("data-hc-time"))?b=void 0:b>d&&(b=d)),"undefined"!==
172
+ typeof b&&e.setExtremes(t?b:e.min,t?e.max:b,void 0,void 0,{trigger:"rangeSelectorInput"}))}var c=this.chart,e=this.div,f=this.inputGroup,k=this,h=c.renderer.style||{},l=c.renderer,u=c.options.rangeSelector,t="min"===a,A=x.lang[t?"rangeSelectorFrom":"rangeSelectorTo"]||"";A=l.label(A,0).addClass("highcharts-range-label").attr({padding:A?2:0,height:A?u.inputBoxHeight:0}).add(f);l=l.label("",0).addClass("highcharts-range-input").attr({padding:2,width:u.inputBoxWidth,height:u.inputBoxHeight,"text-align":"center"}).on("click",
173
+ function(){k.showInput(a);k[a+"Input"].focus()});c.styledMode||l.attr({stroke:u.inputBoxBorderColor,"stroke-width":1});l.add(f);var r=m("input",{name:a,className:"highcharts-range-selector"},void 0,e);r.setAttribute("type",E(u.inputDateFormat||"%b %e, %Y"));c.styledMode||(A.css(P(h,u.labelStyle)),l.css(P({color:"#333333"},h,u.inputStyle)),d(r,H({position:"absolute",border:0,boxShadow:"0 0 15px rgba(0,0,0,0.3)",width:"1px",height:"1px",padding:0,textAlign:"center",fontSize:h.fontSize,fontFamily:h.fontFamily,
174
+ top:"-9999em"},u.inputStyle)));r.onfocus=function(){k.showInput(a)};r.onblur=function(){r===y.doc.activeElement&&b();k.hideInput(a);k.setInputValue(a);r.blur()};var z=!1;r.onchange=function(){z||(b(),k.hideInput(a),r.blur())};r.onkeypress=function(a){13===a.keyCode&&b()};r.onkeydown=function(a){z=!0;38!==a.keyCode&&40!==a.keyCode||b()};r.onkeyup=function(){z=!1};return{dateBox:l,input:r,label:A}};e.prototype.getPosition=function(){var a=this.chart,b=a.options.rangeSelector;a="top"===b.verticalAlign?
175
+ a.plotTop-a.axisOffset[0]:0;return{buttonTop:a+b.buttonPosition.y,inputTop:a+b.inputPosition.y-10}};e.prototype.getYTDExtremes=function(a,b,e){var c=this.chart.time,d=new c.Date(a),f=c.get("FullYear",d);e=e?c.Date.UTC(f,0,1):+new c.Date(f,0,1);b=Math.max(b,e);d=d.getTime();return{max:Math.min(a||d,d),min:b}};e.prototype.render=function(a,b){var c=this.chart,e=c.renderer,d=c.container,f=c.options,n=f.rangeSelector,k=N(f.chart.style&&f.chart.style.zIndex,0)+1;f=n.inputEnabled;if(!1!==n.enabled){this.rendered||
176
+ (this.group=e.g("range-selector-group").attr({zIndex:7}).add(),this.div=m("div",void 0,{position:"relative",height:0,zIndex:k}),this.buttonOptions.length&&this.renderButtons(),d.parentNode&&d.parentNode.insertBefore(this.div,d),f&&(this.inputGroup=e.g("input-group").add(this.group),e=this.drawInput("min"),this.minDateBox=e.dateBox,this.minLabel=e.label,this.minInput=e.input,e=this.drawInput("max"),this.maxDateBox=e.dateBox,this.maxLabel=e.label,this.maxInput=e.input));if(f&&(this.setInputValue("min",
177
+ a),this.setInputValue("max",b),a=c.scroller&&c.scroller.getUnionExtremes()||c.xAxis[0]||{},z(a.dataMin)&&z(a.dataMax)&&(c=c.xAxis[0].minRange||0,this.setInputExtremes("min",a.dataMin,Math.min(a.dataMax,this.getInputValue("max"))-c),this.setInputExtremes("max",Math.max(a.dataMin,this.getInputValue("min"))+c,a.dataMax)),this.inputGroup)){var h=0;[this.minLabel,this.minDateBox,this.maxLabel,this.maxDateBox].forEach(function(a){if(a){var b=a.getBBox().width;b&&(a.attr({x:h}),h+=b+n.inputSpacing)}})}this.alignElements();
178
+ this.rendered=!0}};e.prototype.renderButtons=function(){var a=this,e=this.buttons,d=this.options,g=x.lang,f=this.chart.renderer,k=P(d.buttonTheme),h=k&&k.states,l=k.width||28;delete k.width;delete k.states;this.buttonGroup=f.g("range-selector-buttons").add(this.group);var q=this.dropdown=m("select",void 0,{position:"absolute",width:"1px",height:"1px",padding:0,border:0,top:"-9999em",cursor:"pointer",opacity:.0001},this.div);b(q,"touchstart",function(){q.style.fontSize="16px"});[[y.isMS?"mouseover":
179
+ "mouseenter"],[y.isMS?"mouseout":"mouseleave"],["change","click"]].forEach(function(c){var d=c[0],g=c[1];b(q,d,function(){var b=e[a.currentButtonIndex()];b&&C(b.element,g||d)})});this.zoomText=f.label(g&&g.rangeSelectorZoom||"",0).attr({padding:d.buttonTheme.padding,height:d.buttonTheme.height,paddingLeft:0,paddingRight:0}).add(this.buttonGroup);this.chart.styledMode||(this.zoomText.css(d.labelStyle),k["stroke-width"]=N(k["stroke-width"],0));m("option",{textContent:this.zoomText.textStr,disabled:!0},
180
+ void 0,q);this.buttonOptions.forEach(function(b,c){m("option",{textContent:b.title||b.text},void 0,q);e[c]=f.button(b.text,0,0,function(e){var d=b.events&&b.events.click,g;d&&(g=d.call(b,e));!1!==g&&a.clickButton(c);a.isActive=!0},k,h&&h.hover,h&&h.select,h&&h.disabled).attr({"text-align":"center",width:l}).add(a.buttonGroup);b.title&&e[c].attr("title",b.title)})};e.prototype.alignElements=function(){var a=this,b=this.buttonGroup,e=this.buttons,d=this.chart,f=this.group,k=this.inputGroup,h=this.options,
181
+ l=this.zoomText,m=d.options,q=m.exporting&&!1!==m.exporting.enabled&&m.navigation&&m.navigation.buttonOptions;m=h.buttonPosition;var u=h.inputPosition,t=h.verticalAlign,r=function(b,c){return q&&a.titleCollision(d)&&"top"===t&&"right"===c.align&&c.y-b.getBBox().height-12<(q.y||0)+(q.height||0)+d.spacing[0]?-40:0},x=d.plotLeft;if(f&&m&&u){var z=m.x-d.spacing[3];if(b){this.positionButtons();if(!this.initialButtonGroupWidth){var y=0;l&&(y+=l.getBBox().width+5);e.forEach(function(a,b){y+=a.width;b!==
182
+ e.length-1&&(y+=h.buttonSpacing)});this.initialButtonGroupWidth=y}x-=d.spacing[3];this.updateButtonStates();l=r(b,m);this.alignButtonGroup(l);f.placed=b.placed=d.hasLoaded}b=0;k&&(b=r(k,u),"left"===u.align?z=x:"right"===u.align&&(z=-Math.max(d.axisOffset[1],-b)),k.align({y:u.y,width:k.getBBox().width,align:u.align,x:u.x+z-2},!0,d.spacingBox),k.placed=d.hasLoaded);this.handleCollision(b);f.align({verticalAlign:t},!0,d.spacingBox);k=f.alignAttr.translateY;b=f.getBBox().height+20;r=0;"bottom"===t&&(r=
183
+ (r=d.legend&&d.legend.options)&&"bottom"===r.verticalAlign&&r.enabled&&!r.floating?d.legend.legendHeight+N(r.margin,10):0,b=b+r-20,r=k-b-(h.floating?0:h.y)-(d.titleOffset?d.titleOffset[2]:0)-10);if("top"===t)h.floating&&(r=0),d.titleOffset&&d.titleOffset[0]&&(r=d.titleOffset[0]),r+=d.margin[0]-d.spacing[0]||0;else if("middle"===t)if(u.y===m.y)r=k;else if(u.y||m.y)r=0>u.y||0>m.y?r-Math.min(u.y,m.y):k-b;f.translate(h.x,h.y+Math.floor(r));m=this.minInput;u=this.maxInput;k=this.dropdown;h.inputEnabled&&
184
+ m&&u&&(m.style.marginTop=f.translateY+"px",u.style.marginTop=f.translateY+"px");k&&(k.style.marginTop=f.translateY+"px")}};e.prototype.alignButtonGroup=function(a,b){var c=this.chart,e=this.buttonGroup,d=this.options.buttonPosition,f=c.plotLeft-c.spacing[3],k=d.x-c.spacing[3];"right"===d.align?k+=a-f:"center"===d.align&&(k-=f/2);e&&e.align({y:d.y,width:N(b,this.initialButtonGroupWidth),align:d.align,x:k},!0,c.spacingBox)};e.prototype.positionButtons=function(){var a=this.buttons,b=this.chart,e=this.options,
185
+ d=this.zoomText,f=b.hasLoaded?"animate":"attr",k=e.buttonPosition,h=b.plotLeft,l=h;d&&"hidden"!==d.visibility&&(d[f]({x:N(h+k.x,h)}),l+=k.x+d.getBBox().width+5);this.buttonOptions.forEach(function(b,c){if("hidden"!==a[c].visibility)a[c][f]({x:l}),l+=a[c].width+e.buttonSpacing;else a[c][f]({x:h})})};e.prototype.handleCollision=function(a){var b=this,c=this.chart,e=this.buttonGroup,d=this.inputGroup,f=this.options,k=f.buttonPosition,h=f.dropdown,l=f.inputPosition;f=function(){var a=0;b.buttons.forEach(function(b){b=
186
+ b.getBBox();b.width>a&&(a=b.width)});return a};var m=function(b){if(d&&e){var c=d.alignAttr.translateX+d.alignOptions.x-a+d.getBBox().x+2,f=d.alignOptions.width,g=e.alignAttr.translateX+e.getBBox().x;return g+b>c&&c+f>g&&k.y<l.y+d.getBBox().height}return!1},u=function(){d&&e&&d.attr({translateX:d.alignAttr.translateX+(c.axisOffset[1]>=-a?0:-a),translateY:d.alignAttr.translateY+e.getBBox().height+10})};if(e){if("always"===h){this.collapseButtons(a);m(f())&&u();return}"never"===h&&this.expandButtons()}d&&
187
+ e?l.align===k.align||m(this.initialButtonGroupWidth+20)?"responsive"===h?(this.collapseButtons(a),m(f())&&u()):u():"responsive"===h&&this.expandButtons():e&&"responsive"===h&&(this.initialButtonGroupWidth>c.plotWidth?this.collapseButtons(a):this.expandButtons())};e.prototype.collapseButtons=function(a){var b=this.buttons,c=this.buttonOptions,e=this.chart,d=this.dropdown,f=this.options,k=this.zoomText,h=e.userOptions.rangeSelector&&e.userOptions.rangeSelector.buttonTheme||{},l=function(a){return{text:a?
188
+ a+" \u25be":"\u25be",width:"auto",paddingLeft:N(f.buttonTheme.paddingLeft,h.padding,8),paddingRight:N(f.buttonTheme.paddingRight,h.padding,8)}};k&&k.hide();var m=!1;c.forEach(function(a,c){c=b[c];2!==c.state?c.hide():(c.show(),c.attr(l(a.text)),m=!0)});m||(d&&(d.selectedIndex=0),b[0].show(),b[0].attr(l(this.zoomText&&this.zoomText.textStr)));c=f.buttonPosition.align;this.positionButtons();"right"!==c&&"center"!==c||this.alignButtonGroup(a,b[this.currentButtonIndex()].getBBox().width);this.showDropdown()};
189
+ e.prototype.expandButtons=function(){var a=this.buttons,b=this.buttonOptions,e=this.options,d=this.zoomText;this.hideDropdown();d&&d.show();b.forEach(function(b,c){c=a[c];c.show();c.attr({text:b.text,width:e.buttonTheme.width||28,paddingLeft:N(e.buttonTheme.paddingLeft,"unset"),paddingRight:N(e.buttonTheme.paddingRight,"unset")});2>c.state&&c.setState(0)});this.positionButtons()};e.prototype.currentButtonIndex=function(){var a=this.dropdown;return a&&0<a.selectedIndex?a.selectedIndex-1:0};e.prototype.showDropdown=
190
+ function(){var a=this.buttonGroup,b=this.buttons,e=this.chart,f=this.dropdown;if(a&&f){var k=a.translateX;a=a.translateY;b=b[this.currentButtonIndex()].getBBox();d(f,{left:e.plotLeft+k+"px",top:a+.5+"px",width:b.width+"px",height:b.height+"px"});this.hasVisibleDropdown=!0}};e.prototype.hideDropdown=function(){var a=this.dropdown;a&&(d(a,{top:"-9999em",width:"1px",height:"1px"}),this.hasVisibleDropdown=!1)};e.prototype.getHeight=function(){var a=this.options,b=this.group,e=a.y,d=a.buttonPosition.y,
191
+ f=a.inputPosition.y;if(a.height)return a.height;this.alignElements();a=b?b.getBBox(!0).height+13+e:0;b=Math.min(f,d);if(0>f&&0>d||0<f&&0<d)a+=Math.abs(b);return a};e.prototype.titleCollision=function(a){return!(a.options.title.text||a.options.subtitle.text)};e.prototype.update=function(a){var b=this.chart;P(!0,b.options.rangeSelector,a);this.destroy();this.init(b);this.render()};e.prototype.destroy=function(){var a=this,b=a.minInput,d=a.maxInput;a.eventsToUnbind&&(a.eventsToUnbind.forEach(function(a){return a()}),
192
+ a.eventsToUnbind=void 0);h(a.buttons);b&&(b.onfocus=b.onblur=b.onchange=null);d&&(d.onfocus=d.onblur=d.onchange=null);L(a,function(b,c){b&&"chart"!==c&&(b instanceof l?b.destroy():b instanceof window.HTMLElement&&K(b));b!==e.prototype[c]&&(a[c]=null)},this)};return e}();k.prototype.defaultButtons=[{type:"month",count:1,text:"1m",title:"View 1 month"},{type:"month",count:3,text:"3m",title:"View 3 months"},{type:"month",count:6,text:"6m",title:"View 6 months"},{type:"ytd",text:"YTD",title:"View year to date"},
193
+ {type:"year",count:1,text:"1y",title:"View 1 year"},{type:"all",text:"All",title:"View all"}];k.prototype.inputTypeFormats={"datetime-local":"%Y-%m-%dT%H:%M:%S",date:"%Y-%m-%d",time:"%H:%M:%S"};a.prototype.minFromRange=function(){var a=this.range,b=a.type,d=this.max,f=this.chart.time,g=function(a,c){var e="year"===b?"FullYear":"Month",d=new f.Date(a),g=f.get(e,d);f.set(e,d,g+c);g===f.get(e,d)&&f.set("Date",d,0);return d.getTime()-a};if(q(a)){var k=d-a;var h=a}else k=d+g(d,-a.count),this.chart&&(this.chart.fixedRange=
194
+ d-k);var l=N(this.dataMin,Number.MIN_VALUE);q(k)||(k=l);k<=l&&(k=l,"undefined"===typeof h&&(h=g(k,a.count)),this.newMax=Math.min(k+h,this.dataMax));q(d)||(k=void 0);return k};if(!y.RangeSelector){var J=[],f=function(a){function c(){e&&(d=a.xAxis[0].getExtremes(),f=a.legend,h=e&&e.options.verticalAlign,q(d.min)&&e.render(d.min,d.max),f.display&&"top"===h&&h===f.options.verticalAlign&&(k=P(a.spacingBox),k.y="vertical"===f.options.layout?a.plotTop:k.y+e.getHeight(),f.group.placed=!1,f.align(k)))}var d,
195
+ e=a.rangeSelector,f,k,h;e&&(I(J,function(b){return b[0]===a})||J.push([a,[b(a.xAxis[0],"afterSetExtremes",function(a){e&&e.render(a.min,a.max)}),b(a,"redraw",c)]]),c())};b(r,"afterGetContainer",function(){this.options.rangeSelector&&this.options.rangeSelector.enabled&&(this.rangeSelector=new k(this))});b(r,"beforeRender",function(){var a=this.axes,b=this.rangeSelector;b&&(q(b.deferredYTDClick)&&(b.clickButton(b.deferredYTDClick),delete b.deferredYTDClick),a.forEach(function(a){a.updateNames();a.setScale()}),
196
+ this.getAxisMargins(),b.render(),a=b.options.verticalAlign,b.options.floating||("bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=!0)))});b(r,"update",function(a){var b=a.options.rangeSelector;a=this.rangeSelector;var d=this.extraBottomMargin,e=this.extraTopMargin;b&&b.enabled&&!z(a)&&this.options.rangeSelector&&(this.options.rangeSelector.enabled=!0,this.rangeSelector=a=new k(this));this.extraTopMargin=this.extraBottomMargin=!1;a&&(f(this),b=b&&b.verticalAlign||a.options&&
197
+ a.options.verticalAlign,a.options.floating||("bottom"===b?this.extraBottomMargin=!0:"middle"!==b&&(this.extraTopMargin=!0)),this.extraBottomMargin!==d||this.extraTopMargin!==e)&&(this.isDirtyBox=!0)});b(r,"render",function(){var a=this.rangeSelector;a&&!a.options.floating&&(a.render(),a=a.options.verticalAlign,"bottom"===a?this.extraBottomMargin=!0:"middle"!==a&&(this.extraTopMargin=!0))});b(r,"getMargins",function(){var a=this.rangeSelector;a&&(a=a.getHeight(),this.extraTopMargin&&(this.plotTop+=
198
+ a),this.extraBottomMargin&&(this.marginBottom+=a))});r.prototype.callbacks.push(f);b(r,"destroy",function(){for(var a=0;a<J.length;a++){var b=J[a];if(b[0]===this){b[1].forEach(function(a){return a()});J.splice(a,1);break}}});y.RangeSelector=k}return k});L(a,"Core/Chart/StockChart.js",[a["Core/Animation/AnimationUtilities.js"],a["Core/Axis/Axis.js"],a["Core/Chart/Chart.js"],a["Core/FormatUtilities.js"],a["Core/DefaultOptions.js"],a["Core/Series/Series.js"],a["Core/Renderer/SVG/SVGRenderer.js"],a["Core/Utilities.js"]],
199
+ function(a,r,y,t,l,D,E,x){function b(a,b){return"xAxis"===a?{minPadding:0,maxPadding:0,overscroll:0,ordinal:!0,title:{text:null},labels:{overflow:"justify"},showLastLabel:!0}:"yAxis"===a?{labels:{y:-2},opposite:F(b.opposite,!0),showLastLabel:!(!b.categories&&"category"!==b.type),title:{text:null}}:{}}function m(a,b){if("xAxis"===a){a=h();var d={type:"datetime",categories:void 0};F(b.navigator&&b.navigator.enabled,a.navigator.enabled,!0)&&(d.startOnTick=!1,d.endOnTick=!1);return d}return{}}var d=this&&
200
+ this.__extends||function(){var a=function(b,d){a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(a,b){a.__proto__=b}||function(a,b){for(var d in b)b.hasOwnProperty(d)&&(a[d]=b[d])};return a(b,d)};return function(b,d){function k(){this.constructor=b}a(b,d);b.prototype=null===d?Object.create(d):(k.prototype=d.prototype,new k)}}(),z=t.format,h=l.getOptions;a=x.addEvent;var K=x.clamp,H=x.defined,I=x.extend,C=x.find,q=x.isNumber,L=x.isString,P=x.merge,F=x.pick,N=x.splat;x=function(a){function l(){return null!==
201
+ a&&a.apply(this,arguments)||this}d(l,a);l.prototype.init=function(d,l){var f=h(),e=d.xAxis,c=d.yAxis,k=F(d.navigator&&d.navigator.enabled,f.navigator.enabled,!0);d.xAxis=d.yAxis=void 0;k=P({chart:{panning:{enabled:!0,type:"x"},pinchType:"x"},navigator:{enabled:k},scrollbar:{enabled:F(f.scrollbar&&f.scrollbar.enabled,!0)},rangeSelector:{enabled:F(f.rangeSelector.enabled,!0)},title:{text:null},tooltip:{split:F(f.tooltip.split,!0),crosshairs:!0},legend:{enabled:!1}},d,{isStock:!0});d.xAxis=e;d.yAxis=
202
+ c;k.xAxis=N(d.xAxis||{}).map(function(a,c){return P(b("xAxis",a),f.xAxis,f.xAxis&&f.xAxis[c],a,m("xAxis",d))});k.yAxis=N(d.yAxis||{}).map(function(a,c){return P(b("yAxis",a),f.yAxis,f.yAxis&&f.yAxis[c],a)});a.prototype.init.call(this,k,l)};l.prototype.createAxis=function(d,h){h.axis=P(b(d,h.axis),h.axis,m(d,this.userOptions));return a.prototype.createAxis.call(this,d,h)};return l}(y);(function(a){a.stockChart=function(b,d,h){return new a(b,d,h)}})(x||(x={}));a(D,"setOptions",function(a){var b;this.chart.options.isStock&&
203
+ (this.is("column")||this.is("columnrange")?b={borderWidth:0,shadow:!1}:this.is("scatter")||this.is("sma")||(b={marker:{enabled:!1,radius:2}}),b&&(a.plotOptions[this.type]=P(a.plotOptions[this.type],b)))});a(r,"autoLabelAlign",function(a){var b=this.chart,d=this.options;b=b._labelPanes=b._labelPanes||{};var h=this.options.labels;this.chart.options.isStock&&"yAxis"===this.coll&&(d=d.top+","+d.height,!b[d]&&h.enabled&&(15===h.x&&(h.x=0),"undefined"===typeof h.align&&(h.align="right"),b[d]=this,a.align=
204
+ "right",a.preventDefault()))});a(r,"destroy",function(){var a=this.chart,b=this.options&&this.options.top+","+this.options.height;b&&a._labelPanes&&a._labelPanes[b]===this&&delete a._labelPanes[b]});a(r,"getPlotLinePath",function(a){function b(a){var b="xAxis"===a?"yAxis":"xAxis";a=d.options[b];return q(a)?[f[b][a]]:L(a)?[f.get(a)]:h.map(function(a){return a[b]})}var d=this,h=this.isLinked&&!this.series?this.linkedParent.series:this.series,f=d.chart,e=f.renderer,c=d.left,l=d.top,p,g,m,t,r=[],u=[],
205
+ x=a.translatedValue,z=a.value,y=a.force;if(f.options.isStock&&!1!==a.acrossPanes&&"xAxis"===d.coll||"yAxis"===d.coll){a.preventDefault();u=b(d.coll);var D=d.isXAxis?f.yAxis:f.xAxis;D.forEach(function(a){if(H(a.options.id)?-1===a.options.id.indexOf("navigator"):1){var b=a.isXAxis?"yAxis":"xAxis";b=H(a.options[b])?f[b][a.options[b]]:f[b][0];d===b&&u.push(a)}});var E=u.length?[]:[d.isXAxis?f.yAxis[0]:f.xAxis[0]];u.forEach(function(a){-1!==E.indexOf(a)||C(E,function(b){return b.pos===a.pos&&b.len===a.len})||
206
+ E.push(a)});var I=F(x,d.translate(z,null,null,a.old));q(I)&&(d.horiz?E.forEach(function(a){var b;g=a.pos;t=g+a.len;p=m=Math.round(I+d.transB);"pass"!==y&&(p<c||p>c+d.width)&&(y?p=m=K(p,c,c+d.width):b=!0);b||r.push(["M",p,g],["L",m,t])}):E.forEach(function(a){var b;p=a.pos;m=p+a.len;g=t=Math.round(l+d.height-I);"pass"!==y&&(g<l||g>l+d.height)&&(y?g=t=K(g,l,l+d.height):b=!0);b||r.push(["M",p,g],["L",m,t])}));a.path=0<r.length?e.crispPolyLine(r,a.lineWidth||1):null}});E.prototype.crispPolyLine=function(a,
207
+ b){for(var d=0;d<a.length;d+=2){var h=a[d],f=a[d+1];h[1]===f[1]&&(h[1]=f[1]=Math.round(h[1])-b%2/2);h[2]===f[2]&&(h[2]=f[2]=Math.round(h[2])+b%2/2)}return a};a(r,"afterHideCrosshair",function(){this.crossLabel&&(this.crossLabel=this.crossLabel.hide())});a(r,"afterDrawCrosshair",function(a){var b,d;if(this.crosshair&&this.crosshair.label&&this.crosshair.label.enabled&&this.cross&&q(this.min)&&q(this.max)){var h=this.chart,f=this.logarithmic,e=this.crosshair.label,c=this.horiz,l=this.opposite,p=this.left,
208
+ g=this.top,m=this.crossLabel,t=e.format,r="",u="inside"===this.options.tickPosition,x=!1!==this.crosshair.snap,y=0,A=a.e||this.cross&&this.cross.e;a=a.point;var C=this.min,D=this.max;f&&(C=f.lin2log(C),D=f.lin2log(D));f=c?"center":l?"right"===this.labelAlign?"right":"left":"left"===this.labelAlign?"left":"center";m||(m=this.crossLabel=h.renderer.label("",0,void 0,e.shape||"callout").addClass("highcharts-crosshair-label highcharts-color-"+(a?a.series.colorIndex:this.series[0]&&this.series[0].colorIndex)).attr({align:e.align||
209
+ f,padding:F(e.padding,8),r:F(e.borderRadius,3),zIndex:2}).add(this.labelGroup),h.styledMode||m.attr({fill:e.backgroundColor||a&&a.series&&a.series.color||"#666666",stroke:e.borderColor||"","stroke-width":e.borderWidth||0}).css(I({color:"#ffffff",fontWeight:"normal",fontSize:"11px",textAlign:"center"},e.style||{})));c?(f=x?(a.plotX||0)+p:A.chartX,g+=l?0:this.height):(f=l?this.width+p:0,g=x?(a.plotY||0)+g:A.chartY);t||e.formatter||(this.dateTime&&(r="%b %d, %Y"),t="{value"+(r?":"+r:"")+"}");r=x?this.isXAxis?
210
+ a.x:a.y:this.toValue(c?A.chartX:A.chartY);x=a?a.series.isPointInside(a):q(r)&&r>C&&r<D;A="";t?A=z(t,{value:r},h):e.formatter&&q(r)&&(A=e.formatter.call(this,r));m.attr({text:A,x:f,y:g,visibility:x?"visible":"hidden"});e=m.getBBox();if(q(m.y))if(c){if(u&&!l||!u&&l)g=m.y-e.height}else g=m.y-e.height/2;c?(b=p-e.x,d=p+this.width-e.x):(b="left"===this.labelAlign?p:0,d="right"===this.labelAlign?p+this.width:h.chartWidth);m.translateX<b&&(y=b-m.translateX);m.translateX+e.width>=d&&(y=-(m.translateX+e.width-
211
+ d));m.attr({x:f+y,y:g,anchorX:c?f:this.opposite?0:h.chartWidth,anchorY:c?this.opposite?h.chartHeight:0:g+e.height/2})}});D.prototype.forceCropping=function(){var a=this.chart,b=this.options.dataGrouping;return!1!==this.allowDG&&b&&F(b.enabled,a.options.isStock)};a(y,"update",function(a){a=a.options;"scrollbar"in a&&this.navigator&&(P(!0,this.options.scrollbar,a.scrollbar),this.navigator.update({},!1),delete a.scrollbar)});return x});L(a,"masters/modules/stock.src.js",[a["Core/Globals.js"],a["Core/Axis/OrdinalAxis.js"],
212
+ a["Series/DataModifyComposition.js"],a["Core/Scrollbar.js"],a["Core/Chart/StockChart.js"]],function(a,r,y,t,l){a.Scrollbar=t;a.StockChart=a.stockChart=l.stockChart;t.compose(a.Axis);r.compose(a.Axis,a.Series,a.Chart);y.compose(a.Series,a.Axis,a.Point)})});
205
213
  //# sourceMappingURL=stock.js.map