highcharts 9.1.1 → 9.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bower.json +1 -1
- package/css/annotations/popup.css +29 -28
- package/css/annotations/popup.scss +29 -27
- package/css/highcharts.css +15 -0
- package/css/highcharts.scss +12 -0
- package/css/stocktools/gui.css +1 -0
- package/css/stocktools/gui.scss +1 -0
- package/css/themes/dark-unica.css +15 -0
- package/css/themes/grid-light.css +15 -0
- package/css/themes/sand-signika.css +15 -0
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +8 -2
- package/es-modules/Accessibility/Components/LegendComponent.js +19 -8
- package/es-modules/Accessibility/Components/MenuComponent.js +19 -13
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +4 -8
- package/es-modules/Accessibility/FocusBorder.js +1 -3
- package/es-modules/Accessibility/Options/LangOptions.js +3 -3
- package/es-modules/Accessibility/Utils/Announcer.js +22 -5
- package/es-modules/Accessibility/Utils/ChartUtilities.js +6 -1
- package/es-modules/Core/Animation/AnimationUtilities.js +12 -4
- package/es-modules/Core/Animation/Fx.js +15 -12
- package/es-modules/Core/Axis/Axis.js +25 -13
- package/es-modules/Core/Axis/AxisDefaults.js +0 -1
- package/es-modules/Core/Axis/BrokenAxis.js +32 -15
- package/es-modules/Core/Axis/Color/ColorAxis.js +665 -0
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +237 -0
- package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +434 -0
- package/es-modules/Core/Axis/DateTimeAxis.js +163 -133
- package/es-modules/Core/Axis/GridAxis.js +8 -3
- package/es-modules/Core/Axis/LogarithmicAxis.js +159 -117
- package/es-modules/Core/Axis/OrdinalAxis.js +666 -460
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +874 -0
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +292 -0
- package/es-modules/Core/Axis/RadialAxis.js +858 -745
- package/es-modules/Core/Axis/ScrollbarAxis.js +7 -0
- package/es-modules/Core/Axis/StackingAxis.js +159 -140
- package/es-modules/Core/Axis/Tick.js +17 -27
- package/es-modules/Core/Chart/Chart.js +24 -38
- package/es-modules/Core/Chart/ChartDefaults.js +1 -1
- package/es-modules/Core/Chart/StockChart.js +12 -0
- package/es-modules/Core/Color/Color.js +96 -104
- package/es-modules/Core/DefaultOptions.js +269 -248
- package/es-modules/Core/Foundation.js +9 -8
- package/es-modules/Core/Geometry/CircleUtilities.js +385 -0
- package/es-modules/Core/Geometry/GeometryUtilities.js +83 -0
- package/es-modules/Core/Globals.js +23 -1
- package/es-modules/{Extensions/Ajax.js → Core/HttpUtilities.js} +86 -42
- package/es-modules/Core/{Legend.js → Legend/Legend.js} +142 -116
- package/es-modules/{Mixins → Core/Legend}/LegendSymbol.js +54 -38
- package/es-modules/Core/Navigator.js +3 -0
- package/es-modules/Core/Pointer.js +9 -0
- package/es-modules/Core/Renderer/HTML/AST.js +100 -82
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +17 -7
- package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +26 -9
- package/es-modules/Core/Renderer/RendererRegistry.js +9 -4
- package/es-modules/Core/Renderer/RendererUtilities.js +159 -0
- package/es-modules/Core/Renderer/SVG/SVGElement.js +13 -7
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +9 -29
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +2 -2
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +18 -16
- package/es-modules/Core/Responsive.js +166 -148
- package/es-modules/Core/Series/DataLabel.js +564 -0
- package/es-modules/Core/Series/Point.js +233 -209
- package/es-modules/Core/Series/Series.js +174 -2339
- package/es-modules/Core/Series/SeriesDefaults.js +2293 -0
- package/es-modules/Core/Series/SeriesRegistry.js +3 -9
- package/es-modules/Core/Time.js +78 -2
- package/es-modules/Core/Tooltip.js +178 -236
- package/es-modules/Core/Utilities.js +409 -394
- package/es-modules/Extensions/Annotations/Annotations.js +102 -49
- package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +9 -1
- package/es-modules/Extensions/Annotations/NavigationBindings.js +30 -25
- package/es-modules/Extensions/Annotations/Popup.js +16 -7
- package/es-modules/Extensions/Boost/BoostOverrides.js +5 -1
- package/es-modules/Extensions/Boost/WGLRenderer.js +5 -4
- package/es-modules/Extensions/Boost/WGLVBuffer.js +3 -0
- package/es-modules/Extensions/BoostCanvas.js +1 -1
- package/es-modules/Extensions/CurrentDateIndication.js +1 -1
- package/es-modules/Extensions/Data.js +82 -76
- package/es-modules/Extensions/DataGrouping.js +225 -184
- package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
- package/es-modules/Extensions/DraggablePoints.js +13 -5
- package/es-modules/Extensions/Drilldown.js +41 -14
- package/es-modules/Extensions/ExportData.js +7 -4
- package/es-modules/Extensions/Exporting/Exporting.js +1273 -0
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +803 -0
- package/es-modules/Extensions/Exporting/ExportingSymbols.js +73 -0
- package/es-modules/Extensions/FullScreen.js +7 -5
- package/es-modules/Extensions/NoDataToDisplay.js +1 -1
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +617 -0
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +58 -0
- package/es-modules/Extensions/Oldie/Oldie.js +1 -1
- package/es-modules/Extensions/Pane.js +0 -1
- package/es-modules/Extensions/PatternFill.js +23 -10
- package/es-modules/Extensions/Polar.js +2 -1
- package/es-modules/Extensions/RangeSelector.js +1 -1
- package/es-modules/Extensions/Themes/Avocado.js +49 -20
- package/es-modules/Extensions/Themes/DarkBlue.js +226 -203
- package/es-modules/Extensions/Themes/DarkGreen.js +231 -203
- package/es-modules/Extensions/Themes/DarkUnica.js +201 -172
- package/es-modules/Extensions/Themes/Gray.js +228 -205
- package/es-modules/Extensions/Themes/Grid.js +109 -81
- package/es-modules/Extensions/Themes/GridLight.js +83 -55
- package/es-modules/Extensions/Themes/HighContrastDark.js +192 -164
- package/es-modules/Extensions/Themes/HighContrastLight.js +49 -21
- package/es-modules/Extensions/Themes/SandSignika.js +115 -86
- package/es-modules/Extensions/Themes/Skies.js +102 -74
- package/es-modules/Extensions/Themes/Sunset.js +47 -19
- package/es-modules/Mixins/ColorSeries.js +0 -1
- package/es-modules/Mixins/MultipleLines.js +6 -0
- package/es-modules/Mixins/TreeSeries.js +1 -1
- package/es-modules/Series/Area/AreaSeries.js +2 -2
- package/es-modules/Series/AreaSpline/AreaSplineSeries.js +2 -2
- package/es-modules/Series/Bubble/BubbleLegendComposition.js +279 -0
- package/es-modules/Series/Bubble/BubbleLegendDefaults.js +267 -0
- package/es-modules/Series/Bubble/BubbleLegendItem.js +472 -0
- package/es-modules/Series/Bubble/BubbleSeries.js +6 -2
- package/es-modules/Series/Column/ColumnDataLabel.js +109 -0
- package/es-modules/Series/Column/ColumnSeries.js +39 -26
- package/es-modules/Series/Column3D/Column3DComposition.js +5 -2
- package/es-modules/Series/Flags/FlagsSeries.js +8 -1
- package/es-modules/Series/Gantt/GanttSeries.js +3 -3
- package/es-modules/Series/Heatmap/HeatmapSeries.js +9 -5
- package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +60 -0
- package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +277 -0
- package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +83 -0
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +370 -0
- package/es-modules/Series/Line/LineSeries.js +12 -8
- package/es-modules/Series/Map/MapSeries.js +5 -3
- package/es-modules/Series/MapBubble/MapBubbleSeries.js +6 -5
- package/es-modules/Series/OHLC/OHLCPoint.js +11 -0
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +3 -1
- package/es-modules/Series/Pie/PieDataLabel.js +448 -0
- package/es-modules/Series/Pie/PiePoint.js +35 -34
- package/es-modules/Series/Pie/PieSeries.js +19 -16
- package/es-modules/Series/Polygon/PolygonSeries.js +3 -3
- package/es-modules/Series/Sankey/SankeySeries.js +9 -7
- package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +2 -2
- package/es-modules/Series/Sunburst/SunburstSeries.js +1 -14
- package/es-modules/Series/Timeline/TimelinePoint.js +6 -0
- package/es-modules/Series/Timeline/TimelineSeries.js +14 -17
- package/es-modules/Series/Treemap/TreemapSeries.js +3 -3
- package/es-modules/Series/Venn/VennSeries.js +4 -4
- package/es-modules/Series/Venn/VennUtils.js +10 -16
- package/es-modules/Series/Waterfall/WaterfallSeries.js +40 -35
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +1 -0
- package/es-modules/Series/XRange/XRangeSeries.js +4 -2
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +92 -75
- package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +20 -8
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +17 -4
- package/es-modules/Stock/StockToolsBindings.js +77 -38
- package/es-modules/Stock/StockToolsGui.js +28 -3
- package/es-modules/masters/highcharts-3d.src.js +1 -1
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +11 -7
- package/es-modules/masters/highcharts.src.js +25 -9
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
- package/es-modules/masters/indicators/ao.src.js +1 -1
- package/es-modules/masters/indicators/apo.src.js +1 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
- package/es-modules/masters/indicators/aroon.src.js +1 -1
- package/es-modules/masters/indicators/atr.src.js +1 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
- package/es-modules/masters/indicators/cci.src.js +1 -1
- package/es-modules/masters/indicators/chaikin.src.js +1 -1
- package/es-modules/masters/indicators/cmf.src.js +1 -1
- package/es-modules/masters/indicators/cmo.src.js +1 -1
- package/es-modules/masters/indicators/dema.src.js +1 -1
- package/es-modules/masters/indicators/disparity-index.src.js +1 -1
- package/es-modules/masters/indicators/dmi.src.js +1 -1
- package/es-modules/masters/indicators/dpo.src.js +1 -1
- package/es-modules/masters/indicators/ema.src.js +1 -1
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/es-modules/masters/indicators/indicators-all.src.js +1 -1
- package/es-modules/masters/indicators/indicators.src.js +1 -1
- package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
- package/es-modules/masters/indicators/klinger.src.js +1 -1
- package/es-modules/masters/indicators/macd.src.js +1 -1
- package/es-modules/masters/indicators/mfi.src.js +1 -1
- package/es-modules/masters/indicators/momentum.src.js +1 -1
- package/es-modules/masters/indicators/natr.src.js +1 -1
- package/es-modules/masters/indicators/obv.src.js +1 -1
- package/es-modules/masters/indicators/pivot-points.src.js +1 -1
- package/es-modules/masters/indicators/ppo.src.js +1 -1
- package/es-modules/masters/indicators/price-channel.src.js +1 -1
- package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
- package/es-modules/masters/indicators/psar.src.js +1 -1
- package/es-modules/masters/indicators/regressions.src.js +1 -1
- package/es-modules/masters/indicators/roc.src.js +1 -1
- package/es-modules/masters/indicators/rsi.src.js +1 -1
- package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
- package/es-modules/masters/indicators/stochastic.src.js +1 -1
- package/es-modules/masters/indicators/supertrend.src.js +1 -1
- package/es-modules/masters/indicators/tema.src.js +1 -1
- package/es-modules/masters/indicators/trendline.src.js +1 -1
- package/es-modules/masters/indicators/trix.src.js +1 -1
- package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
- package/es-modules/masters/indicators/vwap.src.js +1 -1
- package/es-modules/masters/indicators/williams-r.src.js +1 -1
- package/es-modules/masters/indicators/wma.src.js +1 -1
- package/es-modules/masters/indicators/zigzag.src.js +1 -1
- package/es-modules/masters/modules/accessibility.src.js +1 -1
- package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
- package/es-modules/masters/modules/annotations.src.js +1 -1
- package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
- package/es-modules/masters/modules/boost-canvas.src.js +1 -1
- package/es-modules/masters/modules/boost.src.js +1 -1
- package/es-modules/masters/modules/broken-axis.src.js +1 -1
- package/es-modules/masters/modules/bullet.src.js +1 -1
- package/es-modules/masters/modules/coloraxis.src.js +6 -2
- package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
- package/es-modules/masters/modules/cylinder.src.js +1 -1
- package/es-modules/masters/modules/data.src.js +8 -1
- package/es-modules/masters/modules/datagrouping.src.js +1 -1
- package/es-modules/masters/modules/debugger.src.js +1 -1
- package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
- package/es-modules/masters/modules/dotplot.src.js +1 -1
- package/es-modules/masters/modules/drag-panes.src.js +1 -1
- package/es-modules/masters/modules/draggable-points.src.js +1 -1
- package/es-modules/masters/modules/drilldown.src.js +1 -1
- package/es-modules/masters/modules/dumbbell.src.js +1 -1
- package/es-modules/masters/modules/export-data.src.js +1 -1
- package/es-modules/masters/modules/exporting.src.js +10 -2
- package/es-modules/masters/modules/full-screen.src.js +1 -1
- package/es-modules/masters/modules/funnel.src.js +1 -1
- package/es-modules/masters/modules/funnel3d.src.js +1 -1
- package/es-modules/masters/modules/gantt.src.js +9 -4
- package/es-modules/masters/modules/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +6 -2
- package/es-modules/masters/modules/heikinashi.src.js +14 -0
- package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
- package/es-modules/masters/modules/hollowcandlestick.src.js +14 -0
- package/es-modules/masters/modules/item-series.src.js +1 -1
- package/es-modules/masters/modules/lollipop.src.js +1 -1
- package/es-modules/masters/modules/map.src.js +10 -6
- package/es-modules/masters/modules/marker-clusters.src.js +1 -1
- package/es-modules/masters/modules/networkgraph.src.js +1 -1
- package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
- package/es-modules/masters/modules/offline-exporting.src.js +8 -2
- package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
- package/es-modules/masters/modules/oldie.src.js +1 -1
- package/es-modules/masters/modules/organization.src.js +1 -1
- package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
- package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
- package/es-modules/masters/modules/pareto.src.js +1 -1
- package/es-modules/masters/modules/pathfinder.src.js +1 -1
- package/es-modules/masters/modules/pattern-fill.src.js +1 -1
- package/es-modules/masters/modules/price-indicator.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.src.js +1 -1
- package/es-modules/masters/modules/sankey.src.js +1 -1
- package/es-modules/masters/modules/series-label.src.js +1 -1
- package/es-modules/masters/modules/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/sonification.src.js +1 -1
- package/es-modules/masters/modules/static-scale.src.js +1 -1
- package/es-modules/masters/modules/stock-tools.src.js +1 -1
- package/es-modules/masters/modules/stock.src.js +3 -2
- package/es-modules/masters/modules/streamgraph.src.js +1 -1
- package/es-modules/masters/modules/sunburst.src.js +1 -1
- package/es-modules/masters/modules/tilemap.src.js +1 -1
- package/es-modules/masters/modules/timeline.src.js +1 -1
- package/es-modules/masters/modules/treegrid.src.js +1 -1
- package/es-modules/masters/modules/treemap.src.js +1 -1
- package/es-modules/masters/modules/variable-pie.src.js +1 -1
- package/es-modules/masters/modules/variwide.src.js +1 -1
- package/es-modules/masters/modules/vector.src.js +1 -1
- package/es-modules/masters/modules/venn.src.js +1 -1
- package/es-modules/masters/modules/windbarb.src.js +1 -1
- package/es-modules/masters/modules/wordcloud.src.js +1 -1
- package/es-modules/masters/modules/xrange.src.js +1 -1
- package/es-modules/masters/themes/avocado.src.js +5 -2
- package/es-modules/masters/themes/dark-blue.src.js +5 -2
- package/es-modules/masters/themes/dark-green.src.js +5 -2
- package/es-modules/masters/themes/dark-unica.src.js +5 -2
- package/es-modules/masters/themes/gray.src.js +5 -2
- package/es-modules/masters/themes/grid-light.src.js +5 -2
- package/es-modules/masters/themes/grid.src.js +5 -2
- package/es-modules/masters/themes/high-contrast-dark.src.js +5 -2
- package/es-modules/masters/themes/high-contrast-light.src.js +5 -2
- package/es-modules/masters/themes/sand-signika.src.js +5 -2
- package/es-modules/masters/themes/skies.src.js +5 -2
- package/es-modules/masters/themes/sunset.src.js +5 -2
- package/gfx/stock-icons/annotations-hidden.svg +1 -1
- package/gfx/stock-icons/annotations-visible.svg +2 -2
- package/gfx/stock-icons/arrow-bottom.svg +1 -1
- package/gfx/stock-icons/arrow-left.svg +1 -1
- package/gfx/stock-icons/arrow-line.svg +1 -1
- package/gfx/stock-icons/arrow-ray.svg +1 -1
- package/gfx/stock-icons/arrow-right.svg +1 -1
- package/gfx/stock-icons/arrow-segment.svg +1 -2
- package/gfx/stock-icons/circle.svg +1 -1
- package/gfx/stock-icons/close.svg +2 -2
- package/gfx/stock-icons/crooked-3.svg +1 -1
- package/gfx/stock-icons/crooked-5.svg +1 -1
- package/gfx/stock-icons/current-price-hide.svg +3 -3
- package/gfx/stock-icons/current-price-show.svg +2 -2
- package/gfx/stock-icons/destroy.svg +1 -1
- package/gfx/stock-icons/drawing.svg +18 -0
- package/gfx/stock-icons/edit.svg +1 -1
- package/gfx/stock-icons/elliott-3.svg +1 -1
- package/gfx/stock-icons/elliott-5.svg +1 -1
- package/gfx/stock-icons/ellipse.svg +11 -0
- package/gfx/stock-icons/fibonacci-timezone.svg +16 -0
- package/gfx/stock-icons/fibonacci.svg +1 -1
- package/gfx/stock-icons/flag-basic.svg +1 -1
- package/gfx/stock-icons/flag-diamond.svg +2 -2
- package/gfx/stock-icons/flag-elipse.svg +1 -1
- package/gfx/stock-icons/flag-trapeze.svg +2 -2
- package/gfx/stock-icons/fullscreen.svg +4 -4
- package/gfx/stock-icons/horizontal-line.svg +1 -1
- package/gfx/stock-icons/indicators.svg +3 -3
- package/gfx/stock-icons/label.svg +4 -4
- package/gfx/stock-icons/line.svg +1 -1
- package/gfx/stock-icons/linear.svg +11 -0
- package/gfx/stock-icons/logarithmic.svg +1 -0
- package/gfx/stock-icons/measure-x.svg +2 -2
- package/gfx/stock-icons/measure-xy.svg +1 -1
- package/gfx/stock-icons/measure-y.svg +1 -1
- package/gfx/stock-icons/panning.svg +17 -0
- package/gfx/stock-icons/parallel-channel.svg +1 -1
- package/gfx/stock-icons/pitchfork.svg +1 -1
- package/gfx/stock-icons/ray.svg +1 -1
- package/gfx/stock-icons/rectangle.svg +1 -1
- package/gfx/stock-icons/remove-annotations.svg +2 -2
- package/gfx/stock-icons/save-chart.svg +3 -3
- package/gfx/stock-icons/segment.svg +1 -1
- package/gfx/stock-icons/separator.svg +1 -1
- package/gfx/stock-icons/series-candlestick.svg +1 -1
- package/gfx/stock-icons/series-heikin-ashi.svg +1 -0
- package/gfx/stock-icons/series-hlc.svg +1 -0
- package/gfx/stock-icons/series-hollow-candlestick.svg +1 -0
- package/gfx/stock-icons/series-line.svg +1 -1
- package/gfx/stock-icons/series-ohlc.svg +4 -4
- package/gfx/stock-icons/time-cycles.svg +35 -0
- package/gfx/stock-icons/vertical-arrow.svg +1 -1
- package/gfx/stock-icons/vertical-counter.svg +1 -1
- package/gfx/stock-icons/vertical-double-arrow.svg +1 -1
- package/gfx/stock-icons/vertical-label.svg +3 -3
- package/gfx/stock-icons/vertical-line.svg +1 -1
- package/gfx/stock-icons/zoom-x.svg +2 -2
- package/gfx/stock-icons/zoom-xy.svg +2 -2
- package/gfx/stock-icons/zoom-y.svg +2 -2
- package/highcharts-3d.js +24 -24
- package/highcharts-3d.js.map +1 -1
- package/highcharts-3d.src.js +6 -3
- package/highcharts-gantt.js +800 -792
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.js +16535 -15918
- package/highcharts-more.d.ts +73 -1
- package/highcharts-more.js +193 -192
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.d.ts +73 -1
- package/highcharts-more.src.js +8044 -7839
- package/highcharts.d.ts +3850 -177
- package/highcharts.js +589 -581
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +3850 -177
- package/highcharts.src.js +16635 -16060
- package/highmaps.js +708 -698
- package/highmaps.js.map +1 -1
- package/highmaps.src.js +17419 -16521
- package/highstock.js +782 -769
- package/highstock.js.map +1 -1
- package/highstock.src.js +28867 -27975
- package/indicators/acceleration-bands.js +9 -9
- package/indicators/acceleration-bands.js.map +1 -1
- package/indicators/acceleration-bands.src.js +7 -1
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.src.js +1 -1
- package/indicators/ao.js +1 -1
- package/indicators/ao.src.js +1 -1
- package/indicators/apo.js +1 -1
- package/indicators/apo.src.js +1 -1
- package/indicators/aroon-oscillator.js +9 -9
- package/indicators/aroon-oscillator.js.map +1 -1
- package/indicators/aroon-oscillator.src.js +7 -1
- package/indicators/aroon.js +9 -9
- package/indicators/aroon.js.map +1 -1
- package/indicators/aroon.src.js +7 -1
- package/indicators/atr.js +1 -1
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.js +9 -9
- package/indicators/bollinger-bands.js.map +1 -1
- package/indicators/bollinger-bands.src.js +7 -1
- package/indicators/cci.js +1 -1
- package/indicators/cci.src.js +1 -1
- package/indicators/chaikin.js +1 -1
- package/indicators/chaikin.src.js +1 -1
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.src.js +1 -1
- package/indicators/cmo.js +1 -1
- package/indicators/cmo.src.js +1 -1
- package/indicators/dema.js +1 -1
- package/indicators/dema.src.js +1 -1
- package/indicators/disparity-index.js +1 -1
- package/indicators/disparity-index.src.js +1 -1
- package/indicators/dmi.js +11 -11
- package/indicators/dmi.js.map +1 -1
- package/indicators/dmi.src.js +7 -1
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.src.js +1 -1
- package/indicators/ema.js +1 -1
- package/indicators/ema.src.js +1 -1
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/indicators/indicators-all.js +203 -200
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.js +206 -104
- package/indicators/indicators.js +12 -11
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +108 -90
- package/indicators/keltner-channels.js +9 -9
- package/indicators/keltner-channels.js.map +1 -1
- package/indicators/keltner-channels.src.js +7 -1
- package/indicators/klinger.js +13 -13
- package/indicators/klinger.js.map +1 -1
- package/indicators/klinger.src.js +7 -1
- package/indicators/macd.js +1 -1
- package/indicators/macd.src.js +1 -1
- package/indicators/mfi.js +1 -1
- package/indicators/mfi.src.js +1 -1
- package/indicators/momentum.js +1 -1
- package/indicators/momentum.src.js +1 -1
- package/indicators/natr.js +1 -1
- package/indicators/natr.src.js +1 -1
- package/indicators/obv.js +1 -1
- package/indicators/obv.src.js +1 -1
- package/indicators/pivot-points.js +1 -1
- package/indicators/pivot-points.src.js +1 -1
- package/indicators/ppo.js +1 -1
- package/indicators/ppo.src.js +1 -1
- package/indicators/price-channel.js +9 -9
- package/indicators/price-channel.js.map +1 -1
- package/indicators/price-channel.src.js +7 -1
- package/indicators/price-envelopes.js +1 -1
- package/indicators/price-envelopes.src.js +1 -1
- package/indicators/psar.js +1 -1
- package/indicators/psar.src.js +1 -1
- package/indicators/regressions.js +1 -1
- package/indicators/regressions.src.js +1 -1
- package/indicators/roc.js +1 -1
- package/indicators/roc.src.js +1 -1
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.src.js +1 -1
- package/indicators/slow-stochastic.js +1 -1
- package/indicators/slow-stochastic.src.js +1 -1
- package/indicators/stochastic.js +10 -10
- package/indicators/stochastic.js.map +1 -1
- package/indicators/stochastic.src.js +7 -1
- package/indicators/supertrend.js +10 -10
- package/indicators/supertrend.js.map +1 -1
- package/indicators/supertrend.src.js +23 -10
- package/indicators/tema.js +1 -1
- package/indicators/tema.src.js +1 -1
- package/indicators/trendline.js +1 -1
- package/indicators/trendline.src.js +1 -1
- package/indicators/trix.js +1 -1
- package/indicators/trix.src.js +1 -1
- package/indicators/volume-by-price.js +17 -15
- package/indicators/volume-by-price.js.map +1 -1
- package/indicators/volume-by-price.src.js +71 -6
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.src.js +1 -1
- package/indicators/williams-r.js +1 -1
- package/indicators/williams-r.src.js +1 -1
- package/indicators/wma.js +1 -1
- package/indicators/wma.src.js +1 -1
- package/indicators/zigzag.js +1 -1
- package/indicators/zigzag.src.js +1 -1
- package/modules/accessibility.js +203 -202
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.js +89 -49
- package/modules/annotations-advanced.js +164 -163
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.js +162 -87
- package/modules/annotations.js +111 -111
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.js +162 -87
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.js +2 -2
- package/modules/boost-canvas.js.map +1 -1
- package/modules/boost-canvas.src.js +2 -2
- package/modules/boost.js +52 -52
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.js +15 -7
- package/modules/broken-axis.js +13 -13
- package/modules/broken-axis.js.map +1 -1
- package/modules/broken-axis.src.js +34 -15
- package/modules/bullet.js +1 -1
- package/modules/bullet.src.js +1 -1
- package/modules/coloraxis.js +24 -22
- package/modules/coloraxis.js.map +1 -1
- package/modules/coloraxis.src.js +954 -774
- package/modules/current-date-indicator.js +2 -2
- package/modules/current-date-indicator.js.map +1 -1
- package/modules/current-date-indicator.src.js +2 -2
- package/modules/cylinder.js +1 -1
- package/modules/cylinder.src.js +1 -1
- package/modules/data.js +33 -32
- package/modules/data.js.map +1 -1
- package/modules/data.src.js +182 -134
- package/modules/datagrouping.d.ts +5 -0
- package/modules/datagrouping.js +20 -20
- package/modules/datagrouping.js.map +1 -1
- package/modules/datagrouping.src.d.ts +5 -0
- package/modules/datagrouping.src.js +270 -228
- package/modules/debugger.js +3 -3
- package/modules/debugger.js.map +1 -1
- package/modules/debugger.src.js +3 -3
- package/modules/dependency-wheel.js +1 -1
- package/modules/dependency-wheel.src.js +1 -1
- package/modules/dotplot.js +1 -1
- package/modules/dotplot.src.js +1 -1
- package/modules/drag-panes.js +1 -1
- package/modules/drag-panes.src.js +1 -1
- package/modules/draggable-points.js +34 -34
- package/modules/draggable-points.js.map +1 -1
- package/modules/draggable-points.src.js +14 -5
- package/modules/drilldown.d.ts +27 -0
- package/modules/drilldown.js +18 -18
- package/modules/drilldown.js.map +1 -1
- package/modules/drilldown.src.d.ts +27 -0
- package/modules/drilldown.src.js +42 -16
- package/modules/dumbbell.js +1 -1
- package/modules/dumbbell.src.js +1 -1
- package/modules/export-data.js +20 -20
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.js +8 -5
- package/modules/exporting.d.ts +29 -0
- package/modules/exporting.js +38 -35
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.d.ts +29 -0
- package/modules/exporting.src.js +1937 -1614
- package/modules/full-screen.js +2 -2
- package/modules/full-screen.js.map +1 -1
- package/modules/full-screen.src.js +8 -6
- package/modules/funnel.js +1 -1
- package/modules/funnel.src.js +1 -1
- package/modules/funnel3d.js +1 -1
- package/modules/funnel3d.src.js +1 -1
- package/modules/gantt.js +218 -217
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +74 -32
- package/modules/grid-axis.js +23 -22
- package/modules/grid-axis.js.map +1 -1
- package/modules/grid-axis.src.js +9 -4
- package/modules/heatmap.js +39 -37
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +963 -779
- package/modules/heikinashi.js +17 -0
- package/modules/heikinashi.js.map +1 -0
- package/modules/heikinashi.src.js +394 -0
- package/modules/histogram-bellcurve.js +1 -1
- package/modules/histogram-bellcurve.src.js +1 -1
- package/modules/hollowcandlestick.js +18 -0
- package/modules/hollowcandlestick.js.map +1 -0
- package/modules/hollowcandlestick.src.js +504 -0
- package/modules/item-series.js +1 -1
- package/modules/item-series.src.js +1 -1
- package/modules/lollipop.js +1 -1
- package/modules/lollipop.src.js +1 -1
- package/modules/map.d.ts +9 -0
- package/modules/map.js +122 -119
- package/modules/map.js.map +1 -1
- package/modules/map.src.d.ts +9 -0
- package/modules/map.src.js +1655 -1332
- package/modules/marker-clusters.js +1 -1
- package/modules/marker-clusters.src.js +1 -1
- package/modules/networkgraph.js +1 -1
- package/modules/networkgraph.src.js +1 -1
- package/modules/no-data-to-display.js +3 -3
- package/modules/no-data-to-display.js.map +1 -1
- package/modules/no-data-to-display.src.js +2 -2
- package/modules/offline-exporting.js +18 -16
- package/modules/offline-exporting.js.map +1 -1
- package/modules/offline-exporting.src.js +623 -562
- package/modules/oldie-polyfills.js +1 -1
- package/modules/oldie-polyfills.src.js +1 -1
- package/modules/oldie.js +2 -2
- package/modules/oldie.src.js +2 -2
- package/modules/organization.js +1 -1
- package/modules/organization.src.js +1 -1
- package/modules/overlapping-datalabels.js +1 -1
- package/modules/overlapping-datalabels.src.js +1 -1
- package/modules/parallel-coordinates.js +1 -1
- package/modules/parallel-coordinates.src.js +1 -1
- package/modules/pareto.js +1 -1
- package/modules/pareto.src.js +1 -1
- package/modules/pathfinder.js +1 -1
- package/modules/pathfinder.src.js +1 -1
- package/modules/pattern-fill.js +14 -14
- package/modules/pattern-fill.js.map +1 -1
- package/modules/pattern-fill.src.js +24 -12
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.src.js +1 -1
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +1 -1
- package/modules/sankey.js +28 -28
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.js +11 -11
- package/modules/series-label.js +1 -1
- package/modules/series-label.src.js +1 -1
- package/modules/solid-gauge.js +2 -2
- package/modules/solid-gauge.js.map +1 -1
- package/modules/solid-gauge.src.js +3 -3
- package/modules/sonification.js +1 -1
- package/modules/sonification.src.js +1 -1
- package/modules/static-scale.js +1 -1
- package/modules/static-scale.src.js +1 -1
- package/modules/stock-tools.js +159 -157
- package/modules/stock-tools.js.map +1 -1
- package/modules/stock-tools.src.js +253 -123
- package/modules/stock.d.ts +5 -0
- package/modules/stock.js +196 -191
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.d.ts +5 -0
- package/modules/stock.src.js +7749 -7432
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +5 -5
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +6 -19
- package/modules/tilemap.js +1 -1
- package/modules/tilemap.src.js +1 -1
- package/modules/timeline.js +18 -17
- package/modules/timeline.js.map +1 -1
- package/modules/timeline.src.js +21 -24
- package/modules/treegrid.js +57 -57
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +43 -19
- package/modules/treemap.js +5 -5
- package/modules/treemap.js.map +1 -1
- package/modules/treemap.src.js +5 -5
- package/modules/variable-pie.js +1 -1
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.js +1 -1
- package/modules/variwide.src.js +1 -1
- package/modules/vector.js +1 -1
- package/modules/vector.src.js +1 -1
- package/modules/venn.js +31 -30
- package/modules/venn.js.map +1 -1
- package/modules/venn.src.js +508 -424
- package/modules/windbarb.js +1 -1
- package/modules/windbarb.src.js +1 -1
- package/modules/wordcloud.js +4 -4
- package/modules/wordcloud.js.map +1 -1
- package/modules/wordcloud.src.js +2 -1
- package/modules/xrange.js +17 -17
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +7 -4
- package/package.json +1 -1
- package/themes/avocado.d.ts +6 -1
- package/themes/avocado.js +3 -3
- package/themes/avocado.js.map +1 -1
- package/themes/avocado.src.d.ts +6 -1
- package/themes/avocado.src.js +53 -22
- package/themes/dark-blue.d.ts +6 -1
- package/themes/dark-blue.js +3 -3
- package/themes/dark-blue.js.map +1 -1
- package/themes/dark-blue.src.d.ts +6 -1
- package/themes/dark-blue.src.js +231 -205
- package/themes/dark-green.d.ts +6 -1
- package/themes/dark-green.js +4 -4
- package/themes/dark-green.js.map +1 -1
- package/themes/dark-green.src.d.ts +6 -1
- package/themes/dark-green.src.js +236 -205
- package/themes/dark-unica.d.ts +6 -1
- package/themes/dark-unica.js +7 -7
- package/themes/dark-unica.js.map +1 -1
- package/themes/dark-unica.src.d.ts +6 -1
- package/themes/dark-unica.src.js +206 -174
- package/themes/gray.d.ts +6 -1
- package/themes/gray.js +3 -3
- package/themes/gray.js.map +1 -1
- package/themes/gray.src.d.ts +6 -1
- package/themes/gray.src.js +233 -207
- package/themes/grid-light.d.ts +6 -1
- package/themes/grid-light.js +4 -4
- package/themes/grid-light.js.map +1 -1
- package/themes/grid-light.src.d.ts +6 -1
- package/themes/grid-light.src.js +88 -57
- package/themes/grid.d.ts +6 -1
- package/themes/grid.js +3 -3
- package/themes/grid.js.map +1 -1
- package/themes/grid.src.d.ts +6 -1
- package/themes/grid.src.js +114 -83
- package/themes/high-contrast-dark.js +5 -4
- package/themes/high-contrast-dark.js.map +1 -1
- package/themes/high-contrast-dark.src.js +197 -166
- package/themes/high-contrast-light.js +3 -3
- package/themes/high-contrast-light.js.map +1 -1
- package/themes/high-contrast-light.src.js +54 -23
- package/themes/sand-signika.d.ts +6 -1
- package/themes/sand-signika.js +5 -5
- package/themes/sand-signika.js.map +1 -1
- package/themes/sand-signika.src.d.ts +6 -1
- package/themes/sand-signika.src.js +119 -88
- package/themes/skies.d.ts +6 -1
- package/themes/skies.js +5 -5
- package/themes/skies.js.map +1 -1
- package/themes/skies.src.d.ts +6 -1
- package/themes/skies.src.js +107 -76
- package/themes/sunset.d.ts +6 -1
- package/themes/sunset.js +3 -3
- package/themes/sunset.js.map +1 -1
- package/themes/sunset.src.d.ts +6 -1
- package/themes/sunset.src.js +52 -21
- package/es-modules/Core/Axis/ColorAxis.js +0 -1164
- package/es-modules/Core/Axis/HiddenAxis.js +0 -46
- package/es-modules/Core/Axis/PlotLineOrBand.js +0 -1051
- package/es-modules/Core/Series/DataLabels.js +0 -1173
- package/es-modules/Extensions/Exporting.js +0 -2024
- package/es-modules/Extensions/OfflineExporting.js +0 -621
- package/es-modules/Mixins/Geometry.js +0 -56
- package/es-modules/Mixins/GeometryCircles.js +0 -320
- package/es-modules/Series/Bubble/BubbleLegend.js +0 -893
package/modules/stock.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*
|
|
2
|
-
Highstock JS v9.
|
|
2
|
+
Highstock JS v9.2.2 (2021-08-24)
|
|
3
3
|
|
|
4
4
|
Highcharts Stock as a plugin for Highcharts
|
|
5
5
|
|
|
@@ -7,194 +7,199 @@
|
|
|
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(
|
|
11
|
-
n=
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
this
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
function(){
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
0
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
"
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
function(
|
|
52
|
-
f
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
e.
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
this
|
|
70
|
-
function(){
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
(
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
a
|
|
90
|
-
|
|
91
|
-
var
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
a
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
function(){
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
this.
|
|
111
|
-
|
|
112
|
-
a.
|
|
113
|
-
|
|
114
|
-
[
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
(
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
b
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
a.
|
|
142
|
-
|
|
143
|
-
g(
|
|
144
|
-
|
|
145
|
-
h
|
|
146
|
-
|
|
147
|
-
"
|
|
148
|
-
|
|
149
|
-
{
|
|
150
|
-
|
|
151
|
-
this.
|
|
152
|
-
|
|
153
|
-
a.
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
width:"
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
this.
|
|
161
|
-
|
|
162
|
-
b(
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
a
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
function(a){var b
|
|
192
|
-
"
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
this.
|
|
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)})});
|
|
200
205
|
//# sourceMappingURL=stock.js.map
|