highcharts 9.3.1 → 9.3.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 +1 -1
- package/css/highcharts.css +2 -2
- package/css/highcharts.scss +1 -1
- package/css/stocktools/gui.css +1 -1
- package/css/themes/dark-unica.css +2 -2
- package/css/themes/grid-light.css +2 -2
- package/css/themes/sand-signika.css +2 -2
- package/es-modules/Accessibility/A11yI18n.js +1 -5
- package/es-modules/Accessibility/Accessibility.js +11 -5
- package/es-modules/Accessibility/AccessibilityComponent.js +1 -1
- package/es-modules/Accessibility/Components/AnnotationsA11y.js +9 -5
- package/es-modules/Accessibility/Components/ContainerComponent.js +1 -1
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +8 -19
- package/es-modules/Accessibility/Components/LegendComponent.js +176 -86
- package/es-modules/Accessibility/Components/MenuComponent.js +1 -10
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +10 -13
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +15 -6
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +8 -4
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +3 -1
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +16 -41
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +20 -31
- package/es-modules/Accessibility/Components/ZoomComponent.js +135 -57
- package/es-modules/Accessibility/FocusBorder.js +0 -5
- package/es-modules/Accessibility/HighContrastMode.js +2 -1
- package/es-modules/Accessibility/KeyboardNavigation.js +5 -4
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +12 -5
- package/es-modules/Accessibility/Options/LangOptions.js +3 -3
- package/es-modules/Accessibility/ProxyElement.js +12 -6
- package/es-modules/Accessibility/ProxyProvider.js +0 -3
- package/es-modules/Accessibility/Utils/Announcer.js +2 -2
- package/es-modules/Accessibility/Utils/ChartUtilities.js +17 -32
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +0 -12
- package/es-modules/Core/Animation/Fx.js +5 -14
- package/es-modules/Core/Axis/Axis.js +42 -68
- package/es-modules/Core/Axis/Axis3D.js +10 -4
- package/es-modules/Core/Axis/BrokenAxis.js +17 -11
- package/es-modules/Core/Axis/Color/ColorAxis.js +7 -4
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -3
- package/es-modules/Core/Axis/DateTimeAxis.js +3 -14
- package/es-modules/Core/Axis/GridAxis.js +26 -16
- package/es-modules/Core/Axis/NavigatorAxis.js +0 -5
- package/es-modules/Core/Axis/OrdinalAxis.js +83 -79
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +0 -5
- package/es-modules/Core/Axis/RadialAxis.js +7 -28
- package/es-modules/Core/Axis/ScrollbarAxis.js +18 -10
- package/es-modules/Core/Axis/StackingAxis.js +2 -1
- package/es-modules/Core/Axis/Tick.js +2 -4
- package/es-modules/Core/Axis/TreeGridAxis.js +26 -17
- package/es-modules/Core/Axis/TreeGridTick.js +4 -1
- package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
- package/es-modules/Core/Axis/ZAxis.js +1 -1
- package/es-modules/Core/Chart/Chart.js +42 -44
- package/es-modules/Core/Chart/Chart3D.js +23 -10
- package/es-modules/Core/Chart/GanttChart.js +4 -4
- package/es-modules/Core/Chart/MapChart.js +3 -3
- package/es-modules/Core/Chart/StockChart.js +10 -23
- package/es-modules/Core/DefaultOptions.js +3 -2
- package/es-modules/Core/Geometry/CircleUtilities.js +2 -1
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/HttpUtilities.js +5 -4
- package/es-modules/Core/Legend/Legend.js +12 -13
- package/es-modules/Core/Navigator.js +34 -22
- package/es-modules/Core/Pointer.js +13 -9
- package/es-modules/Core/Renderer/HTML/AST.js +27 -14
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +4 -2
- package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +8 -6
- package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGElement.js +8 -16
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +17 -8
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +5 -12
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +12 -5
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +16 -10
- package/es-modules/Core/Responsive.js +2 -3
- package/es-modules/Core/Scrollbar.js +14 -12
- package/es-modules/Core/Series/DataLabel.js +17 -12
- package/es-modules/Core/Series/Point.js +17 -16
- package/es-modules/Core/Series/Series.js +44 -73
- package/es-modules/Core/Series/SeriesDefaults.js +5 -4
- package/es-modules/Core/Time.js +14 -11
- package/es-modules/Core/Tooltip.js +19 -36
- package/es-modules/Core/Utilities.js +5 -17
- package/es-modules/Data/DataConverter.js +0 -6
- package/es-modules/Data/DataSeriesConverter.js +9 -5
- package/es-modules/Data/DataTable.js +2 -1
- package/es-modules/Data/Modifiers/DataModifier.js +1 -1
- package/es-modules/Data/Parsers/CSVParser.js +3 -2
- package/es-modules/Data/Parsers/GoogleSheetsParser.js +5 -2
- package/es-modules/Data/Stores/CSVStore.js +2 -2
- package/es-modules/Data/Stores/DataStore.js +1 -1
- package/es-modules/Data/Stores/GoogleSheetsStore.js +3 -1
- package/es-modules/Data/Stores/HTMLTableStore.js +3 -1
- package/es-modules/Extensions/Annotations/Annotations.js +11 -10
- package/es-modules/Extensions/Annotations/ControlPoint.js +0 -2
- package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +1 -1
- package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +1 -1
- package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +1 -1
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +3 -6
- package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +3 -2
- package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +1 -1
- package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +6 -3
- package/es-modules/Extensions/Annotations/Mixins/EventEmitterMixin.js +0 -1
- package/es-modules/Extensions/Annotations/Mixins/MarkerMixin.js +5 -4
- package/es-modules/Extensions/Annotations/NavigationBindings.js +34 -29
- package/es-modules/Extensions/Annotations/Popup.js +40 -32
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +4 -2
- package/es-modules/Extensions/Annotations/Types/ElliottWave.js +1 -1
- package/es-modules/Extensions/Annotations/Types/Measure.js +15 -11
- package/es-modules/Extensions/Annotations/Types/Pitchfork.js +2 -1
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +8 -4
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +10 -5
- package/es-modules/Extensions/Boost/BoostOverrides.js +3 -9
- package/es-modules/Extensions/Boost/BoostUtils.js +0 -6
- package/es-modules/Extensions/Boost/WGLRenderer.js +16 -12
- package/es-modules/Extensions/Boost/WGLShader.js +9 -8
- package/es-modules/Extensions/Boost/WGLVBuffer.js +4 -7
- package/es-modules/Extensions/Data.js +4 -48
- package/es-modules/Extensions/DataGrouping.js +22 -15
- package/es-modules/Extensions/DraggablePoints.js +7 -8
- package/es-modules/Extensions/Drilldown.js +9 -4
- package/es-modules/Extensions/ExportData.js +6 -5
- package/es-modules/Extensions/Exporting/Exporting.js +23 -37
- package/es-modules/Extensions/FullScreen.js +4 -3
- package/es-modules/Extensions/GeoJSON.js +3 -3
- package/es-modules/Extensions/MarkerClusters.js +3 -1
- package/es-modules/Extensions/Math3D.js +4 -4
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +23 -24
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
- package/es-modules/Extensions/Oldie/Oldie.js +13 -77
- package/es-modules/Extensions/Oldie/VMLAxis3D.js +5 -1
- package/es-modules/Extensions/OverlappingDataLabels.js +10 -6
- package/es-modules/Extensions/Pane.js +6 -6
- package/es-modules/Extensions/ParallelCoordinates.js +5 -3
- package/es-modules/Extensions/PatternFill.js +17 -11
- package/es-modules/Extensions/Polar.js +6 -3
- package/es-modules/Extensions/PriceIndication.js +2 -1
- package/es-modules/Extensions/RangeSelector.js +19 -55
- package/es-modules/Extensions/ScrollablePlotArea.js +2 -2
- package/es-modules/Extensions/SeriesLabel.js +1 -1
- package/es-modules/Extensions/Sonification/ChartSonify.js +32 -26
- package/es-modules/Extensions/Sonification/Instrument.js +12 -15
- package/es-modules/Extensions/Sonification/PointSonify.js +12 -8
- package/es-modules/Extensions/Sonification/SeriesSonify.js +33 -18
- package/es-modules/Extensions/Sonification/SignalHandler.js +4 -6
- package/es-modules/Extensions/Sonification/Sonification.js +1 -1
- package/es-modules/Extensions/Sonification/SonificationUtilities.js +11 -7
- package/es-modules/Extensions/Sonification/Timeline.js +2 -7
- package/es-modules/Extensions/Sonification/TimelineEvent.js +0 -1
- package/es-modules/Extensions/Sonification/TimelinePath.js +8 -8
- package/es-modules/Extensions/Stacking.js +5 -23
- package/es-modules/Extensions/Themes/BrandDark.js +293 -0
- package/es-modules/Extensions/Themes/BrandLight.js +259 -0
- package/es-modules/Extensions/Themes/DarkUnica.js +4 -2
- package/es-modules/Extensions/Themes/Grid.js +4 -2
- package/es-modules/Extensions/Themes/GridLight.js +4 -2
- package/es-modules/Gantt/Connection.js +2 -2
- package/es-modules/Gantt/Pathfinder.js +6 -5
- package/es-modules/Gantt/PathfinderAlgorithms.js +12 -12
- package/es-modules/Maps/MapNavigation.js +6 -7
- package/es-modules/Maps/MapPointer.js +2 -1
- package/es-modules/Maps/MapSymbols.js +23 -3
- package/es-modules/Maps/MapViewOptionsDefault.js +1 -1
- package/es-modules/Series/Area/AreaSeries.js +13 -13
- package/es-modules/Series/Area3DSeries.js +4 -2
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +24 -12
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +2 -1
- package/es-modules/Series/Bubble/BubbleLegendItem.js +2 -12
- package/es-modules/Series/Candlestick/CandlestickSeries.js +0 -1
- package/es-modules/Series/ColorMapMixin.js +84 -0
- package/es-modules/Series/Column/ColumnSeries.js +16 -14
- package/es-modules/Series/Column3D/Column3DComposition.js +1 -2
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +5 -2
- package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +2 -1
- package/es-modules/Series/Cylinder/CylinderComposition.js +36 -4
- package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +1 -1
- package/es-modules/Series/Dumbbell/DumbbellPoint.js +0 -1
- package/es-modules/Series/Dumbbell/DumbbellSeries.js +0 -3
- package/es-modules/Series/Flags/FlagsSymbols.js +2 -2
- package/es-modules/Series/Funnel3D/Funnel3DComposition.js +14 -8
- package/es-modules/Series/Funnel3D/Funnel3DSeries.js +2 -1
- package/es-modules/Series/Gantt/GanttPoint.js +1 -1
- package/es-modules/Series/Gantt/GanttSeries.js +3 -1
- package/es-modules/Series/HLC/HLCSeries.js +1 -6
- package/es-modules/Series/Heatmap/HeatmapPoint.js +10 -10
- package/es-modules/Series/Heatmap/HeatmapSeries.js +9 -10
- package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +8 -6
- package/es-modules/Series/Histogram/HistogramSeries.js +4 -4
- package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +1 -4
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +19 -20
- package/es-modules/Series/Item/ItemSeries.js +4 -5
- package/es-modules/Series/Map/MapPoint.js +6 -0
- package/es-modules/Series/Map/MapSeries.js +24 -25
- package/es-modules/Series/MapLine/MapLineSeries.js +0 -4
- package/es-modules/Series/Networkgraph/DraggableNodes.js +0 -4
- package/es-modules/Series/Networkgraph/Integrations.js +8 -22
- package/es-modules/Series/Networkgraph/Networkgraph.js +1 -5
- package/es-modules/Series/Networkgraph/QuadTree.js +1 -3
- package/es-modules/Series/NodesComposition.js +2 -1
- package/es-modules/Series/OHLC/OHLCPoint.js +0 -1
- package/es-modules/Series/OHLC/OHLCSeries.js +1 -1
- package/es-modules/Series/Organization/OrganizationSeries.js +4 -2
- package/es-modules/Series/PackedBubble/PackedBubbleComposition.js +1 -0
- package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +2 -4
- package/es-modules/Series/Pie/PiePoint.js +2 -2
- package/es-modules/Series/Pie/PieSeries.js +1 -1
- package/es-modules/Series/Pie3D/Pie3DComposition.js +2 -1
- package/es-modules/Series/Pie3D/Pie3DPoint.js +2 -1
- package/es-modules/Series/Pie3D/Pie3DSeries.js +1 -1
- package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +2 -1
- package/es-modules/Series/Sankey/SankeySeries.js +3 -2
- package/es-modules/Series/SolidGauge/SolidGaugeComposition.js +3 -1
- package/es-modules/Series/Spline/SplineSeries.js +0 -8
- package/es-modules/Series/Sunburst/SunburstSeries.js +2 -2
- package/es-modules/Series/Sunburst/SunburstUtilities.js +3 -2
- package/es-modules/Series/Tilemap/TilemapPoint.js +0 -2
- package/es-modules/Series/Tilemap/TilemapShapes.js +0 -7
- package/es-modules/Series/TreeUtilities.js +2 -2
- package/es-modules/Series/Treemap/TreemapSeries.js +18 -21
- package/es-modules/Series/Variwide/VariwideSeries.js +5 -1
- package/es-modules/Series/Venn/VennSeries.js +6 -9
- package/es-modules/Series/Venn/VennUtils.js +8 -7
- package/es-modules/Series/Waterfall/WaterfallSeries.js +6 -3
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +2 -2
- package/es-modules/Series/Wordcloud/WordcloudUtils.js +6 -10
- package/es-modules/Series/XRange/XRangePoint.js +6 -12
- package/es-modules/Series/XRange/XRangeSeries.js +4 -20
- package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +12 -0
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +1 -0
- package/es-modules/Stock/Indicators/BB/BBIndicator.js +12 -0
- package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +35 -15
- package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +9 -5
- package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +2 -1
- package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +6 -6
- package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +12 -0
- package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +8 -3
- package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +30 -12
- package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -1
- package/es-modules/Stock/Indicators/MultipleLinesComposition.js +70 -6
- package/es-modules/Stock/Indicators/PC/PCIndicator.js +11 -0
- package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +2 -1
- package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +2 -1
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +2 -3
- package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +3 -1
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +3 -3
- package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +19 -7
- package/es-modules/Stock/StockToolsBindings.js +13 -6
- package/es-modules/Stock/StockToolsGui.js +34 -23
- 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 +1 -1
- package/es-modules/masters/highcharts.src.js +1 -1
- 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/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 +2 -2
- 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 +1 -1
- 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 +1 -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 +1 -1
- 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 +1 -1
- package/es-modules/masters/modules/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +1 -1
- package/es-modules/masters/modules/heikinashi.src.js +1 -1
- package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
- package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/es-modules/masters/themes/brand-dark.src.js +14 -0
- package/es-modules/masters/themes/brand-light.src.js +14 -0
- package/es-modules/masters/themes/dark-blue.src.js +1 -1
- package/es-modules/masters/themes/dark-green.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/gray.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/grid.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.src.js +1 -1
- package/es-modules/masters/themes/skies.src.js +1 -1
- package/es-modules/masters/themes/sunset.src.js +1 -1
- package/highcharts-3d.js +1 -1
- package/highcharts-3d.js.map +1 -1
- package/highcharts-3d.src.js +65 -35
- package/highcharts-gantt.js +799 -799
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.js +589 -698
- package/highcharts-more.js +1 -1
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.js +73 -103
- package/highcharts.d.ts +5586 -1709
- package/highcharts.js +577 -577
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +5586 -1709
- package/highcharts.src.js +391 -486
- package/highmaps.js +723 -723
- package/highmaps.js.map +1 -1
- package/highmaps.src.js +552 -656
- package/highstock.js +782 -782
- package/highstock.js.map +1 -1
- package/highstock.src.js +612 -731
- package/indicators/acceleration-bands.d.ts +17 -1
- package/indicators/acceleration-bands.js +11 -10
- package/indicators/acceleration-bands.js.map +1 -1
- package/indicators/acceleration-bands.src.d.ts +17 -1
- package/indicators/acceleration-bands.src.js +88 -6
- 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.d.ts +17 -1
- package/indicators/aroon-oscillator.js +10 -9
- package/indicators/aroon-oscillator.js.map +1 -1
- package/indicators/aroon-oscillator.src.d.ts +17 -1
- package/indicators/aroon-oscillator.src.js +76 -6
- package/indicators/aroon.d.ts +17 -1
- package/indicators/aroon.js +11 -9
- package/indicators/aroon.js.map +1 -1
- package/indicators/aroon.src.d.ts +17 -1
- package/indicators/aroon.src.js +77 -6
- package/indicators/atr.js +1 -1
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.d.ts +17 -1
- package/indicators/bollinger-bands.js +12 -10
- package/indicators/bollinger-bands.js.map +1 -1
- package/indicators/bollinger-bands.src.d.ts +17 -1
- package/indicators/bollinger-bands.src.js +88 -6
- 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.js.map +1 -1
- package/indicators/cmf.src.js +36 -16
- 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.js.map +1 -1
- package/indicators/disparity-index.src.js +3 -2
- package/indicators/dmi.js +12 -11
- package/indicators/dmi.js.map +1 -1
- package/indicators/dmi.src.js +85 -11
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.src.js +1 -1
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.js.map +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +7 -7
- package/indicators/indicators-all.d.ts +17 -1
- package/indicators/indicators-all.js +198 -197
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.d.ts +17 -1
- package/indicators/indicators-all.src.js +246 -65
- package/indicators/indicators.js +1 -1
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +3 -4
- package/indicators/keltner-channels.d.ts +17 -1
- package/indicators/keltner-channels.js +11 -10
- package/indicators/keltner-channels.js.map +1 -1
- package/indicators/keltner-channels.src.d.ts +17 -1
- package/indicators/keltner-channels.src.js +88 -6
- package/indicators/klinger.js +14 -12
- package/indicators/klinger.js.map +1 -1
- package/indicators/klinger.src.js +84 -9
- package/indicators/macd.js +1 -1
- package/indicators/macd.js.map +1 -1
- package/indicators/macd.src.js +2 -2
- 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.js.map +1 -1
- package/indicators/pivot-points.src.js +3 -2
- package/indicators/ppo.js +1 -1
- package/indicators/ppo.src.js +1 -1
- package/indicators/price-channel.d.ts +17 -1
- package/indicators/price-channel.js +11 -9
- package/indicators/price-channel.js.map +1 -1
- package/indicators/price-channel.src.d.ts +17 -1
- package/indicators/price-channel.src.js +87 -6
- 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.js.map +1 -1
- package/indicators/regressions.src.js +31 -13
- package/indicators/roc.js +1 -1
- package/indicators/roc.src.js +1 -1
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.js.map +1 -1
- package/indicators/rsi.src.js +3 -2
- package/indicators/slow-stochastic.js +1 -1
- package/indicators/slow-stochastic.src.js +1 -1
- package/indicators/stochastic.d.ts +17 -1
- package/indicators/stochastic.js +12 -10
- package/indicators/stochastic.js.map +1 -1
- package/indicators/stochastic.src.d.ts +17 -1
- package/indicators/stochastic.src.js +79 -7
- package/indicators/supertrend.js +1 -1
- package/indicators/supertrend.src.js +1 -1
- 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 +1 -1
- package/indicators/volume-by-price.src.js +4 -4
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.js.map +1 -1
- package/indicators/vwap.src.js +20 -8
- 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.d.ts +0 -35
- package/modules/accessibility.js +225 -222
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.d.ts +0 -35
- package/modules/accessibility.src.js +503 -418
- package/modules/annotations-advanced.js +128 -128
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.js +152 -124
- package/modules/annotations.js +122 -122
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.js +112 -100
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.js +1 -1
- package/modules/boost-canvas.src.js +1 -1
- package/modules/boost.js +1 -1
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.js +33 -43
- package/modules/broken-axis.js +1 -1
- package/modules/broken-axis.js.map +1 -1
- package/modules/broken-axis.src.js +18 -12
- package/modules/bullet.js +1 -1
- package/modules/bullet.src.js +1 -1
- package/modules/coloraxis.js +1 -1
- package/modules/coloraxis.js.map +1 -1
- package/modules/coloraxis.src.js +11 -8
- package/modules/current-date-indicator.js +1 -1
- package/modules/current-date-indicator.src.js +1 -1
- package/modules/cylinder.js +1 -1
- package/modules/cylinder.js.map +1 -1
- package/modules/cylinder.src.js +37 -5
- package/modules/data.d.ts +6 -6
- package/modules/data.js +31 -31
- package/modules/data.js.map +1 -1
- package/modules/data.src.d.ts +6 -6
- package/modules/data.src.js +10 -53
- package/modules/datagrouping.js +2 -2
- package/modules/datagrouping.js.map +1 -1
- package/modules/datagrouping.src.js +23 -16
- package/modules/debugger.js +1 -1
- package/modules/debugger.src.js +1 -1
- package/modules/dependency-wheel.js +3 -3
- package/modules/dependency-wheel.js.map +1 -1
- package/modules/dependency-wheel.src.js +2 -2
- 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 +1 -1
- package/modules/draggable-points.js.map +1 -1
- package/modules/draggable-points.src.js +8 -9
- package/modules/drilldown.js +1 -1
- package/modules/drilldown.js.map +1 -1
- package/modules/drilldown.src.js +10 -5
- package/modules/dumbbell.js +1 -1
- package/modules/dumbbell.js.map +1 -1
- package/modules/dumbbell.src.js +1 -5
- package/modules/export-data.js +19 -19
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.js +7 -6
- package/modules/exporting.js +1 -1
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.js +33 -45
- package/modules/full-screen.js +1 -1
- package/modules/full-screen.js.map +1 -1
- package/modules/full-screen.src.js +5 -4
- package/modules/funnel.js +1 -1
- package/modules/funnel.src.js +1 -1
- package/modules/funnel3d.js +1 -1
- package/modules/funnel3d.js.map +1 -1
- package/modules/funnel3d.src.js +17 -10
- package/modules/gantt.js +1 -1
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +199 -213
- package/modules/grid-axis.js +1 -1
- package/modules/grid-axis.js.map +1 -1
- package/modules/grid-axis.src.js +27 -19
- package/modules/heatmap.js +39 -39
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +88 -112
- package/modules/heikinashi.js +1 -1
- package/modules/heikinashi.js.map +1 -1
- package/modules/heikinashi.src.js +9 -7
- package/modules/histogram-bellcurve.js +1 -1
- package/modules/histogram-bellcurve.js.map +1 -1
- package/modules/histogram-bellcurve.src.js +7 -6
- package/modules/hollowcandlestick.js +1 -1
- package/modules/hollowcandlestick.js.map +1 -1
- package/modules/hollowcandlestick.src.js +21 -25
- package/modules/item-series.js +6 -6
- package/modules/item-series.js.map +1 -1
- package/modules/item-series.src.js +6 -6
- package/modules/lollipop.js +1 -1
- package/modules/lollipop.src.js +1 -1
- package/modules/map.d.ts +2 -0
- package/modules/map.js +144 -144
- package/modules/map.js.map +1 -1
- package/modules/map.src.d.ts +2 -0
- package/modules/map.src.js +162 -171
- package/modules/marker-clusters.js +1 -1
- package/modules/marker-clusters.js.map +1 -1
- package/modules/marker-clusters.src.js +4 -2
- package/modules/networkgraph.js +1 -1
- package/modules/networkgraph.js.map +1 -1
- package/modules/networkgraph.src.js +13 -36
- package/modules/no-data-to-display.js +1 -1
- package/modules/no-data-to-display.src.js +1 -1
- package/modules/offline-exporting.js +18 -18
- package/modules/offline-exporting.js.map +1 -1
- package/modules/offline-exporting.src.js +27 -32
- package/modules/oldie-polyfills.js +1 -1
- package/modules/oldie-polyfills.src.js +1 -1
- package/modules/oldie.js +2 -2
- package/modules/oldie.js.map +1 -1
- package/modules/oldie.src.js +19 -79
- package/modules/organization.js +1 -1
- package/modules/organization.js.map +1 -1
- package/modules/organization.src.js +5 -3
- 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.js.map +1 -1
- package/modules/parallel-coordinates.src.js +6 -4
- package/modules/pareto.js +1 -1
- package/modules/pareto.src.js +1 -1
- package/modules/pathfinder.js +1 -1
- package/modules/pathfinder.js.map +1 -1
- package/modules/pathfinder.src.js +21 -20
- package/modules/pattern-fill.js +1 -1
- package/modules/pattern-fill.js.map +1 -1
- package/modules/pattern-fill.src.js +18 -12
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.js.map +1 -1
- package/modules/price-indicator.src.js +3 -2
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.js.map +1 -1
- package/modules/pyramid3d.src.js +3 -2
- package/modules/sankey.js +1 -1
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.js +8 -6
- package/modules/series-label.js +1 -1
- package/modules/series-label.js.map +1 -1
- package/modules/series-label.src.js +2 -2
- package/modules/solid-gauge.js +1 -1
- package/modules/solid-gauge.js.map +1 -1
- package/modules/solid-gauge.src.js +17 -2
- package/modules/sonification.js +53 -53
- package/modules/sonification.js.map +1 -1
- package/modules/sonification.src.js +121 -103
- package/modules/static-scale.js +1 -1
- package/modules/static-scale.src.js +1 -1
- package/modules/stock-tools.js +66 -66
- package/modules/stock-tools.js.map +1 -1
- package/modules/stock-tools.src.js +119 -96
- package/modules/stock.js +3 -3
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.js +222 -246
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +60 -61
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +83 -113
- package/modules/tilemap.js +1 -1
- package/modules/tilemap.js.map +1 -1
- package/modules/tilemap.src.js +1 -10
- package/modules/timeline.js +1 -1
- package/modules/timeline.src.js +1 -1
- package/modules/treegrid.js +1 -1
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +76 -50
- package/modules/treemap.js +41 -41
- package/modules/treemap.js.map +1 -1
- package/modules/treemap.src.js +78 -109
- package/modules/variable-pie.js +1 -1
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.js +1 -1
- package/modules/variwide.js.map +1 -1
- package/modules/variwide.src.js +7 -3
- package/modules/vector.js +1 -1
- package/modules/vector.src.js +1 -1
- package/modules/venn.js +1 -1
- package/modules/venn.js.map +1 -1
- package/modules/venn.src.js +17 -18
- package/modules/windbarb.js +1 -1
- package/modules/windbarb.src.js +1 -1
- package/modules/wordcloud.js +1 -1
- package/modules/wordcloud.js.map +1 -1
- package/modules/wordcloud.src.js +9 -13
- package/modules/xrange.js +1 -1
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +11 -33
- package/package.json +1 -1
- package/themes/avocado.js +1 -1
- package/themes/avocado.src.js +1 -1
- package/themes/brand-dark.js +15 -0
- package/themes/brand-dark.js.map +1 -0
- package/themes/brand-dark.src.js +328 -0
- package/themes/brand-light.js +15 -0
- package/themes/brand-light.js.map +1 -0
- package/themes/brand-light.src.js +294 -0
- package/themes/dark-blue.js +1 -1
- package/themes/dark-blue.src.js +1 -1
- package/themes/dark-green.js +1 -1
- package/themes/dark-green.src.js +1 -1
- package/themes/dark-unica.js +1 -1
- package/themes/dark-unica.js.map +1 -1
- package/themes/dark-unica.src.js +5 -3
- package/themes/gray.js +1 -1
- package/themes/gray.src.js +1 -1
- package/themes/grid-light.js +1 -1
- package/themes/grid-light.js.map +1 -1
- package/themes/grid-light.src.js +5 -3
- package/themes/grid.js +1 -1
- package/themes/grid.js.map +1 -1
- package/themes/grid.src.js +5 -3
- package/themes/high-contrast-dark.js +1 -1
- package/themes/high-contrast-dark.src.js +1 -1
- package/themes/high-contrast-light.js +1 -1
- package/themes/high-contrast-light.src.js +1 -1
- package/themes/sand-signika.js +1 -1
- package/themes/sand-signika.src.js +1 -1
- package/themes/skies.js +1 -1
- package/themes/skies.src.js +1 -1
- package/themes/sunset.js +1 -1
- package/themes/sunset.src.js +1 -1
- package/es-modules/Series/ColorMapComposition.js +0 -109
package/modules/stock.src.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Highstock JS v9.3.
|
|
2
|
+
* @license Highstock JS v9.3.2 (2021-11-29)
|
|
3
3
|
*
|
|
4
4
|
* Highcharts Stock as a plugin for Highcharts
|
|
5
5
|
*
|
|
@@ -250,12 +250,12 @@
|
|
|
250
250
|
while (i--) {
|
|
251
251
|
translated = translatedArr[i];
|
|
252
252
|
distance = Math.abs(lastTranslated - translated);
|
|
253
|
-
// #4175 - when axis is reversed, the distance, is negative
|
|
254
|
-
//
|
|
255
|
-
//
|
|
253
|
+
// #4175 - when axis is reversed, the distance, is negative but
|
|
254
|
+
// tickPixelIntervalOption positive, so we need to compare the
|
|
255
|
+
// same values
|
|
256
256
|
// Remove ticks that are closer than 0.6 times the pixel
|
|
257
|
-
// interval from the one to the right, but not if it is
|
|
258
|
-
//
|
|
257
|
+
// interval from the one to the right, but not if it is close to
|
|
258
|
+
// the median distance (#748).
|
|
259
259
|
if (lastTranslated &&
|
|
260
260
|
distance < tickPixelIntervalOption * 0.8 &&
|
|
261
261
|
(medianDistance === null || distance < medianDistance * 0.8)) {
|
|
@@ -287,11 +287,8 @@
|
|
|
287
287
|
*
|
|
288
288
|
* @private
|
|
289
289
|
* @function Highcharts.Axis#index2val
|
|
290
|
-
*
|
|
291
290
|
* @param {number} index
|
|
292
|
-
*
|
|
293
|
-
*
|
|
294
|
-
* @return {number}
|
|
291
|
+
* The index value of searched point
|
|
295
292
|
*/
|
|
296
293
|
function index2val(index) {
|
|
297
294
|
var axis = this,
|
|
@@ -328,11 +325,8 @@
|
|
|
328
325
|
*
|
|
329
326
|
* @private
|
|
330
327
|
* @function Highcharts.Axis#lin2val
|
|
331
|
-
*
|
|
332
328
|
* @param {number} val
|
|
333
|
-
*
|
|
334
|
-
*
|
|
335
|
-
* @return {number}
|
|
329
|
+
* The linear abstracted value.
|
|
336
330
|
*/
|
|
337
331
|
function lin2val(val) {
|
|
338
332
|
var axis = this,
|
|
@@ -345,37 +339,37 @@
|
|
|
345
339
|
return val;
|
|
346
340
|
}
|
|
347
341
|
// Convert back from modivied value to pixels. // #15970
|
|
348
|
-
var pixelVal = (val - localMin) * localA +
|
|
342
|
+
var pixelVal = (val - localMin) * localA +
|
|
343
|
+
axis.minPixelPadding,
|
|
349
344
|
isInside = pixelVal > 0 && pixelVal < axis.left + axis.len;
|
|
350
|
-
// If the value is not inside the plot area,
|
|
351
|
-
// use the extended positions.
|
|
345
|
+
// If the value is not inside the plot area, use the extended positions.
|
|
352
346
|
// (array contains also points that are outside of the plotArea).
|
|
353
347
|
if (!isInside) {
|
|
354
348
|
// When iterating for the first time,
|
|
355
349
|
// get the extended ordinal positional and assign them.
|
|
356
350
|
if (!ordinal.extendedOrdinalPositions) {
|
|
357
|
-
ordinal.extendedOrdinalPositions = ordinal.getExtendedPositions();
|
|
351
|
+
ordinal.extendedOrdinalPositions = (ordinal.getExtendedPositions());
|
|
358
352
|
}
|
|
359
353
|
positions = ordinal.extendedOrdinalPositions;
|
|
360
354
|
}
|
|
361
|
-
// In some cases (especially in early stages of the chart creation)
|
|
362
|
-
//
|
|
355
|
+
// In some cases (especially in early stages of the chart creation) the
|
|
356
|
+
// getExtendedPositions might return undefined.
|
|
363
357
|
if (positions && positions.length) {
|
|
364
358
|
var index = ordinal.getIndexOfPoint(pixelVal,
|
|
365
359
|
positions),
|
|
366
360
|
mantissa = correctFloat(index % 1);
|
|
367
|
-
// Check if the index is inside position array.
|
|
368
|
-
//
|
|
361
|
+
// Check if the index is inside position array. If true,
|
|
362
|
+
// read/approximate value for that exact index.
|
|
369
363
|
if (index >= 0 && index < positions.length - 1) {
|
|
370
364
|
var leftNeighbour = positions[Math.floor(index)],
|
|
371
365
|
rightNeighbour = positions[Math.ceil(index)],
|
|
372
366
|
distance = rightNeighbour - leftNeighbour;
|
|
373
367
|
return positions[Math.floor(index)] + mantissa * distance;
|
|
374
368
|
}
|
|
375
|
-
// For cases when the index is not in the extended ordinal
|
|
376
|
-
//
|
|
377
|
-
//
|
|
378
|
-
//
|
|
369
|
+
// For cases when the index is not in the extended ordinal position
|
|
370
|
+
// array, like when the value we are looking for exceed the
|
|
371
|
+
// available data, approximate that value based on the calculated
|
|
372
|
+
// slope.
|
|
379
373
|
var positionsLength = positions.length,
|
|
380
374
|
firstPositionsValue = positions[0],
|
|
381
375
|
lastPositionsValue = positions[positionsLength - 1],
|
|
@@ -388,8 +382,8 @@
|
|
|
388
382
|
return val;
|
|
389
383
|
}
|
|
390
384
|
/**
|
|
391
|
-
* Internal function to calculate the precise index
|
|
392
|
-
*
|
|
385
|
+
* Internal function to calculate the precise index in ordinalPositions
|
|
386
|
+
* array.
|
|
393
387
|
* @private
|
|
394
388
|
*/
|
|
395
389
|
function getIndexInArray(ordinalPositions, val) {
|
|
@@ -487,7 +481,11 @@
|
|
|
487
481
|
// how many ordinal units did we move?
|
|
488
482
|
movedUnits = (mouseDownX - chartX) / pointPixelWidth,
|
|
489
483
|
// get index of all the chart's points
|
|
490
|
-
extendedAxis = {
|
|
484
|
+
extendedAxis = {
|
|
485
|
+
ordinal: {
|
|
486
|
+
positions: xAxis.ordinal.getExtendedPositions()
|
|
487
|
+
}
|
|
488
|
+
},
|
|
491
489
|
index2val_1 = xAxis.index2val,
|
|
492
490
|
val2lin_1 = xAxis.val2lin;
|
|
493
491
|
var trimmedRange = void 0,
|
|
@@ -507,37 +505,41 @@
|
|
|
507
505
|
}
|
|
508
506
|
if (movedUnits < 0) {
|
|
509
507
|
searchAxisLeft = extendedAxis;
|
|
510
|
-
searchAxisRight = xAxis.ordinal.positions ?
|
|
508
|
+
searchAxisRight = xAxis.ordinal.positions ?
|
|
509
|
+
xAxis : extendedAxis;
|
|
511
510
|
}
|
|
512
511
|
else {
|
|
513
|
-
searchAxisLeft = xAxis.ordinal.positions ?
|
|
512
|
+
searchAxisLeft = xAxis.ordinal.positions ?
|
|
513
|
+
xAxis : extendedAxis;
|
|
514
514
|
searchAxisRight = extendedAxis;
|
|
515
515
|
}
|
|
516
|
-
// In grouped data series, the last ordinal position
|
|
517
|
-
//
|
|
518
|
-
//
|
|
519
|
-
//
|
|
520
|
-
// the plot area.
|
|
516
|
+
// In grouped data series, the last ordinal position represents
|
|
517
|
+
// the grouped data, which is to the left of the real data max.
|
|
518
|
+
// If we don't compensate for this, we will be allowed to pan
|
|
519
|
+
// grouped data series passed the right of the plot area.
|
|
521
520
|
ordinalPositions = searchAxisRight.ordinal.positions;
|
|
522
521
|
if (dataMax >
|
|
523
522
|
ordinalPositions[ordinalPositions.length - 1]) {
|
|
524
523
|
ordinalPositions.push(dataMax);
|
|
525
524
|
}
|
|
526
|
-
// Get the new min and max values by getting the ordinal
|
|
527
|
-
//
|
|
528
|
-
//
|
|
529
|
-
//
|
|
530
|
-
//
|
|
531
|
-
// smaller and faster.
|
|
525
|
+
// Get the new min and max values by getting the ordinal index
|
|
526
|
+
// for the current extreme, then add the moved units and
|
|
527
|
+
// translate back to values. This happens on the extended
|
|
528
|
+
// ordinal positions if the new position is out of range, else
|
|
529
|
+
// it happens on the current x axis which is smaller and faster.
|
|
532
530
|
chart.fixedRange = max - min;
|
|
533
|
-
trimmedRange = xAxis.navigatorAxis
|
|
534
|
-
|
|
531
|
+
trimmedRange = xAxis.navigatorAxis
|
|
532
|
+
.toFixedRange(void 0, void 0, index2val_1.apply(searchAxisLeft, [
|
|
533
|
+
val2lin_1.apply(searchAxisLeft, [min, true]) +
|
|
534
|
+
movedUnits
|
|
535
535
|
]), index2val_1.apply(searchAxisRight, [
|
|
536
|
-
val2lin_1.apply(searchAxisRight, [max, true]) +
|
|
536
|
+
val2lin_1.apply(searchAxisRight, [max, true]) +
|
|
537
|
+
movedUnits
|
|
537
538
|
]));
|
|
538
539
|
// Apply it if it is within the available data range
|
|
539
540
|
if (trimmedRange.min >= Math.min(extremes.dataMin, min) &&
|
|
540
|
-
trimmedRange.max <= Math.max(dataMax, max) +
|
|
541
|
+
trimmedRange.max <= Math.max(dataMax, max) +
|
|
542
|
+
overscroll) {
|
|
541
543
|
xAxis.setExtremes(trimmedRange.min, trimmedRange.max, true, false, { trigger: 'pan' });
|
|
542
544
|
}
|
|
543
545
|
chart.mouseDownX = chartX; // set new reference for next run
|
|
@@ -577,14 +579,10 @@
|
|
|
577
579
|
*
|
|
578
580
|
* @private
|
|
579
581
|
* @function Highcharts.Axis#val2lin
|
|
580
|
-
*
|
|
581
582
|
* @param {number} val
|
|
582
583
|
* The axis value.
|
|
583
|
-
*
|
|
584
584
|
* @param {boolean} [toIndex]
|
|
585
585
|
* Whether to return the index in the ordinalPositions or the new value.
|
|
586
|
-
*
|
|
587
|
-
* @return {number}
|
|
588
586
|
*/
|
|
589
587
|
function val2lin(val, toIndex) {
|
|
590
588
|
var axis = this,
|
|
@@ -631,7 +629,8 @@
|
|
|
631
629
|
val <=
|
|
632
630
|
extendedOrdinalPositions[length_2 - 1]) {
|
|
633
631
|
// Return Value
|
|
634
|
-
ordinalIndex = getIndexInArray(extendedOrdinalPositions, val) -
|
|
632
|
+
ordinalIndex = getIndexInArray(extendedOrdinalPositions, val) -
|
|
633
|
+
originalPositionsReference;
|
|
635
634
|
}
|
|
636
635
|
else {
|
|
637
636
|
// Since ordinal.slope is the average distance between 2
|
|
@@ -713,7 +712,9 @@
|
|
|
713
712
|
axis.series.forEach(function (series, i) {
|
|
714
713
|
uniqueOrdinalPositions = [];
|
|
715
714
|
if ((!ignoreHiddenSeries || series.visible !== false) &&
|
|
716
|
-
(series
|
|
715
|
+
(series
|
|
716
|
+
.takeOrdinalPosition !== false ||
|
|
717
|
+
hasBreaks)) {
|
|
717
718
|
// concatenate the processed X data into the existing
|
|
718
719
|
// positions, or the empty array
|
|
719
720
|
ordinalPositions = ordinalPositions.concat(series.processedXData);
|
|
@@ -729,13 +730,15 @@
|
|
|
729
730
|
if (len) {
|
|
730
731
|
i = 0;
|
|
731
732
|
while (i < len - 1) {
|
|
732
|
-
if (ordinalPositions[i] !==
|
|
733
|
+
if (ordinalPositions[i] !==
|
|
734
|
+
ordinalPositions[i + 1]) {
|
|
733
735
|
uniqueOrdinalPositions.push(ordinalPositions[i + 1]);
|
|
734
736
|
}
|
|
735
737
|
i++;
|
|
736
738
|
}
|
|
737
739
|
// Check first item:
|
|
738
|
-
if (uniqueOrdinalPositions[0] !==
|
|
740
|
+
if (uniqueOrdinalPositions[0] !==
|
|
741
|
+
ordinalPositions[0]) {
|
|
739
742
|
uniqueOrdinalPositions.unshift(ordinalPositions[0]);
|
|
740
743
|
}
|
|
741
744
|
ordinalPositions = uniqueOrdinalPositions;
|
|
@@ -751,7 +754,8 @@
|
|
|
751
754
|
dist = ordinalPositions[1] - ordinalPositions[0];
|
|
752
755
|
i = len - 1;
|
|
753
756
|
while (i-- && !useOrdinal) {
|
|
754
|
-
if (ordinalPositions[i + 1] - ordinalPositions[i] !==
|
|
757
|
+
if (ordinalPositions[i + 1] - ordinalPositions[i] !==
|
|
758
|
+
dist) {
|
|
755
759
|
useOrdinal = true;
|
|
756
760
|
}
|
|
757
761
|
}
|
|
@@ -760,8 +764,8 @@
|
|
|
760
764
|
// spaced.
|
|
761
765
|
if (!axis.options.keepOrdinalPadding &&
|
|
762
766
|
(ordinalPositions[0] - min > dist ||
|
|
763
|
-
max -
|
|
764
|
-
dist)) {
|
|
767
|
+
(max -
|
|
768
|
+
ordinalPositions[ordinalPositions.length - 1]) > dist)) {
|
|
765
769
|
useOrdinal = true;
|
|
766
770
|
}
|
|
767
771
|
}
|
|
@@ -939,9 +943,10 @@
|
|
|
939
943
|
fakeAxis.series.push(fakeSeries);
|
|
940
944
|
series.processData.apply(fakeSeries);
|
|
941
945
|
});
|
|
942
|
-
// Force to use the ordinal when points are evenly spaced
|
|
943
|
-
//
|
|
944
|
-
if (fakeSeries.closestPointRange !==
|
|
946
|
+
// Force to use the ordinal when points are evenly spaced (e.g.
|
|
947
|
+
// weeks), #3825.
|
|
948
|
+
if ((fakeSeries.closestPointRange !==
|
|
949
|
+
fakeSeries.basePointRange) &&
|
|
945
950
|
fakeSeries.currentDataGrouping) {
|
|
946
951
|
fakeAxis.forceOrdinal = true;
|
|
947
952
|
}
|
|
@@ -989,8 +994,8 @@
|
|
|
989
994
|
if (!groupIntervalFactor) {
|
|
990
995
|
// Register all the distances in an array
|
|
991
996
|
for (i = 0; i < len - 1; i++) {
|
|
992
|
-
distances[i] =
|
|
993
|
-
processedXData[i
|
|
997
|
+
distances[i] = (processedXData[i + 1] -
|
|
998
|
+
processedXData[i]);
|
|
994
999
|
}
|
|
995
1000
|
// Sort them and find the median
|
|
996
1001
|
distances.sort(function (a, b) {
|
|
@@ -1012,15 +1017,12 @@
|
|
|
1012
1017
|
*
|
|
1013
1018
|
* @private
|
|
1014
1019
|
* @param {number} val
|
|
1015
|
-
*
|
|
1020
|
+
* The pixel value of a point.
|
|
1016
1021
|
*
|
|
1017
1022
|
* @param {Array<number>} [ordinallArray]
|
|
1018
|
-
*
|
|
1019
|
-
*
|
|
1020
|
-
*
|
|
1021
|
-
* or extendedOrdinalPositions if not.
|
|
1022
|
-
*
|
|
1023
|
-
* @return {number}
|
|
1023
|
+
* An array of all points available on the axis for the given data set.
|
|
1024
|
+
* Either ordinalPositions if the value is inside the plotArea or
|
|
1025
|
+
* extendedOrdinalPositions if not.
|
|
1024
1026
|
*/
|
|
1025
1027
|
Additions.prototype.getIndexOfPoint = function (val, ordinalArray) {
|
|
1026
1028
|
var ordinal = this,
|
|
@@ -1041,10 +1043,11 @@
|
|
|
1041
1043
|
}
|
|
1042
1044
|
});
|
|
1043
1045
|
}
|
|
1044
|
-
// Distance in pixels between two points
|
|
1045
|
-
//
|
|
1046
|
-
var ordinalPointPixelInterval = axis.translationSlope *
|
|
1047
|
-
|
|
1046
|
+
// Distance in pixels between two points on the ordinal axis in the
|
|
1047
|
+
// current zoom.
|
|
1048
|
+
var ordinalPointPixelInterval = axis.translationSlope * (ordinal.slope ||
|
|
1049
|
+
axis.closestPointRange ||
|
|
1050
|
+
ordinal.overscrollPointsRange),
|
|
1048
1051
|
// toValue for the first point.
|
|
1049
1052
|
shiftIndex = (val - firstPointX) / ordinalPointPixelInterval;
|
|
1050
1053
|
return Additions.findIndexOf(ordinalArray, firstPointVal) + shiftIndex;
|
|
@@ -1080,19 +1083,20 @@
|
|
|
1080
1083
|
* @private
|
|
1081
1084
|
*/
|
|
1082
1085
|
Additions.prototype.postProcessTickInterval = function (tickInterval) {
|
|
1083
|
-
// Problem: https://jsfiddle.net/highcharts/FQm4E/1
|
|
1084
|
-
//
|
|
1085
|
-
//
|
|
1086
|
-
//
|
|
1087
|
-
//
|
|
1088
|
-
//
|
|
1086
|
+
// Problem: https://jsfiddle.net/highcharts/FQm4E/1/. This is a case
|
|
1087
|
+
// where this algorithm doesn't work optimally. In this case, the
|
|
1088
|
+
// tick labels are spread out per week, but all the gaps reside
|
|
1089
|
+
// within weeks. So we have a situation where the labels are courser
|
|
1090
|
+
// than the ordinal gaps, and thus the tick interval should not be
|
|
1091
|
+
// altered.
|
|
1089
1092
|
var ordinal = this,
|
|
1090
1093
|
axis = ordinal.axis,
|
|
1091
1094
|
ordinalSlope = ordinal.slope;
|
|
1092
1095
|
var ret;
|
|
1093
1096
|
if (ordinalSlope) {
|
|
1094
1097
|
if (!axis.options.breaks) {
|
|
1095
|
-
ret = tickInterval /
|
|
1098
|
+
ret = (tickInterval /
|
|
1099
|
+
(ordinalSlope / axis.closestPointRange));
|
|
1096
1100
|
}
|
|
1097
1101
|
else {
|
|
1098
1102
|
ret = axis.closestPointRange || tickInterval; // #7275
|
|
@@ -1849,8 +1853,11 @@
|
|
|
1849
1853
|
(threshold > brk.from && y < brk.from)) {
|
|
1850
1854
|
eventName = 'pointBreak';
|
|
1851
1855
|
}
|
|
1852
|
-
else if ((threshold < brk.from &&
|
|
1853
|
-
|
|
1856
|
+
else if ((threshold < brk.from &&
|
|
1857
|
+
y > brk.from &&
|
|
1858
|
+
y < brk.to) || (threshold > brk.from &&
|
|
1859
|
+
y > brk.to &&
|
|
1860
|
+
y < brk.from)) {
|
|
1854
1861
|
eventName = 'pointInBreak';
|
|
1855
1862
|
}
|
|
1856
1863
|
if (eventName) {
|
|
@@ -1969,12 +1976,9 @@
|
|
|
1969
1976
|
isNull: true,
|
|
1970
1977
|
x: xRange
|
|
1971
1978
|
});
|
|
1972
|
-
// For stacked chart generate empty stack items,
|
|
1973
|
-
// #6546
|
|
1979
|
+
// For stacked chart generate empty stack items, #6546
|
|
1974
1980
|
if (yAxis.stacking && this.options.stacking) {
|
|
1975
|
-
stack = yAxis.stacking.stacks[this.stackKey][xRange] =
|
|
1976
|
-
new StackItem(yAxis, yAxis.options
|
|
1977
|
-
.stackLabels, false, xRange, this.stack);
|
|
1981
|
+
stack = yAxis.stacking.stacks[this.stackKey][xRange] = new StackItem(yAxis, yAxis.options.stackLabels, false, xRange, this.stack);
|
|
1978
1982
|
stack.total = 0;
|
|
1979
1983
|
}
|
|
1980
1984
|
}
|
|
@@ -2211,10 +2215,12 @@
|
|
|
2211
2215
|
repeat_1 = brk.repeat || Infinity;
|
|
2212
2216
|
if (isNumber(min_1) && isNumber(max_1)) {
|
|
2213
2217
|
if (Additions.isInBreak(brk, min_1)) {
|
|
2214
|
-
min_1 += (brk.to % repeat_1) -
|
|
2218
|
+
min_1 += ((brk.to % repeat_1) -
|
|
2219
|
+
(min_1 % repeat_1));
|
|
2215
2220
|
}
|
|
2216
2221
|
if (Additions.isInBreak(brk, max_1)) {
|
|
2217
|
-
max_1 -= (max_1 % repeat_1) -
|
|
2222
|
+
max_1 -= ((max_1 % repeat_1) -
|
|
2223
|
+
(brk.from % repeat_1));
|
|
2218
2224
|
}
|
|
2219
2225
|
}
|
|
2220
2226
|
});
|
|
@@ -2262,13 +2268,17 @@
|
|
|
2262
2268
|
to: brk.value,
|
|
2263
2269
|
len: brk.value - start_1 - (brk.size || 0)
|
|
2264
2270
|
});
|
|
2265
|
-
length_1 += brk.value -
|
|
2271
|
+
length_1 += (brk.value -
|
|
2272
|
+
start_1 -
|
|
2273
|
+
(brk.size || 0));
|
|
2266
2274
|
}
|
|
2267
2275
|
});
|
|
2268
2276
|
brokenAxis.breakArray = breakArray_1;
|
|
2269
2277
|
// Used with staticScale, and below the actual axis
|
|
2270
2278
|
// length, when breaks are substracted.
|
|
2271
|
-
if (isNumber(min_1) &&
|
|
2279
|
+
if (isNumber(min_1) &&
|
|
2280
|
+
isNumber(max_1) &&
|
|
2281
|
+
isNumber(axis.min)) {
|
|
2272
2282
|
brokenAxis.unitLength = max_1 - min_1 - length_1 +
|
|
2273
2283
|
pointRangePadding;
|
|
2274
2284
|
fireEvent(axis, 'afterBreaks');
|
|
@@ -2551,13 +2561,17 @@
|
|
|
2551
2561
|
groupedXData = groupedData.groupedXData,
|
|
2552
2562
|
groupedYData = groupedData.groupedYData,
|
|
2553
2563
|
gapSize = 0;
|
|
2554
|
-
// The smoothed option is deprecated, instead,
|
|
2555
|
-
//
|
|
2556
|
-
if (dataGroupingOptions &&
|
|
2564
|
+
// The smoothed option is deprecated, instead, there is a fallback
|
|
2565
|
+
// to the new anchoring mechanism. #12455.
|
|
2566
|
+
if (dataGroupingOptions &&
|
|
2567
|
+
dataGroupingOptions.smoothed &&
|
|
2568
|
+
groupedXData.length) {
|
|
2557
2569
|
dataGroupingOptions.firstAnchor = 'firstPoint';
|
|
2558
2570
|
dataGroupingOptions.anchor = 'middle';
|
|
2559
2571
|
dataGroupingOptions.lastAnchor = 'lastPoint';
|
|
2560
|
-
error(32, false, chart, {
|
|
2572
|
+
error(32, false, chart, {
|
|
2573
|
+
'dataGrouping.smoothed': 'use dataGrouping.anchor'
|
|
2574
|
+
});
|
|
2561
2575
|
}
|
|
2562
2576
|
anchorPoints(series, groupedXData, xMax);
|
|
2563
2577
|
// Record what data grouping values were used
|
|
@@ -2634,7 +2648,8 @@
|
|
|
2634
2648
|
pointArrayMap = series.pointArrayMap,
|
|
2635
2649
|
pointArrayMapLength = pointArrayMap && pointArrayMap.length,
|
|
2636
2650
|
extendedPointArrayMap = ['x'].concat(pointArrayMap || ['y']),
|
|
2637
|
-
groupAll = this.options.dataGrouping &&
|
|
2651
|
+
groupAll = (this.options.dataGrouping &&
|
|
2652
|
+
this.options.dataGrouping.groupAll),
|
|
2638
2653
|
pos = 0,
|
|
2639
2654
|
start = 0,
|
|
2640
2655
|
valuesLen,
|
|
@@ -2764,7 +2779,7 @@
|
|
|
2764
2779
|
xMax) {
|
|
2765
2780
|
var options = series.options,
|
|
2766
2781
|
dataGroupingOptions = options.dataGrouping,
|
|
2767
|
-
totalRange = series.currentDataGrouping && series.currentDataGrouping.gapSize;
|
|
2782
|
+
totalRange = (series.currentDataGrouping && series.currentDataGrouping.gapSize);
|
|
2768
2783
|
var i;
|
|
2769
2784
|
// DataGrouping x-coordinates.
|
|
2770
2785
|
if (dataGroupingOptions && series.xData && totalRange && series.groupMap) {
|
|
@@ -2776,9 +2791,9 @@
|
|
|
2776
2791
|
anchor);
|
|
2777
2792
|
// Anchor points that are not extremes.
|
|
2778
2793
|
if (anchor && anchor !== 'start') {
|
|
2779
|
-
var shiftInterval = totalRange *
|
|
2794
|
+
var shiftInterval = (totalRange *
|
|
2780
2795
|
{ middle: 0.5,
|
|
2781
|
-
end: 1 }[anchor];
|
|
2796
|
+
end: 1 }[anchor]);
|
|
2782
2797
|
i = groupedXData.length - 1;
|
|
2783
2798
|
while (i-- && i > 0) {
|
|
2784
2799
|
groupedXData[i] += shiftInterval;
|
|
@@ -3044,7 +3059,8 @@
|
|
|
3044
3059
|
series.forEach(function (series) {
|
|
3045
3060
|
// Reset the groupPixelWidth, then calculate if needed.
|
|
3046
3061
|
series.groupPixelWidth = void 0; // #2110
|
|
3047
|
-
series.groupPixelWidth = axis.getGroupPixelWidth &&
|
|
3062
|
+
series.groupPixelWidth = (axis.getGroupPixelWidth &&
|
|
3063
|
+
axis.getGroupPixelWidth());
|
|
3048
3064
|
if (series.groupPixelWidth) {
|
|
3049
3065
|
series.hasProcessed = true; // #2692
|
|
3050
3066
|
}
|
|
@@ -3083,7 +3099,8 @@
|
|
|
3083
3099
|
// Execute grouping if the amount of points is greater than the
|
|
3084
3100
|
// limit defined in groupPixelWidth
|
|
3085
3101
|
if (series[i].groupPixelWidth ||
|
|
3086
|
-
dataLength >
|
|
3102
|
+
(dataLength >
|
|
3103
|
+
(this.chart.plotSizeX / groupPixelWidth)) ||
|
|
3087
3104
|
(dataLength && dgOptions.forced)) {
|
|
3088
3105
|
doGrouping = true;
|
|
3089
3106
|
}
|
|
@@ -3224,10 +3241,10 @@
|
|
|
3224
3241
|
type = this.type,
|
|
3225
3242
|
plotOptions = this.chart.options.plotOptions,
|
|
3226
3243
|
defaultOptions = D.defaultOptions.plotOptions[type].dataGrouping,
|
|
3227
|
-
// External series, for example technical indicators should also
|
|
3228
|
-
//
|
|
3229
|
-
baseOptions = this.useCommonDataGrouping && commonOptions;
|
|
3230
|
-
if (specificOptions[type] || baseOptions) { // #1284
|
|
3244
|
+
// External series, for example technical indicators should also inherit
|
|
3245
|
+
// commonOptions which are not available outside this module
|
|
3246
|
+
baseOptions = (this.useCommonDataGrouping && commonOptions);
|
|
3247
|
+
if (plotOptions && (specificOptions[type] || baseOptions)) { // #1284
|
|
3231
3248
|
if (!defaultOptions) {
|
|
3232
3249
|
defaultOptions = merge(commonOptions, specificOptions[type]);
|
|
3233
3250
|
}
|
|
@@ -3360,7 +3377,7 @@
|
|
|
3360
3377
|
* to two weeks, the second and third item of the week array are used,
|
|
3361
3378
|
* and applied to the start and end date of the time span.
|
|
3362
3379
|
*
|
|
3363
|
-
* @type {
|
|
3380
|
+
* @type {Object}
|
|
3364
3381
|
* @apioption plotOptions.series.dataGrouping.dateTimeLabelFormats
|
|
3365
3382
|
*/
|
|
3366
3383
|
/**
|
|
@@ -3698,10 +3715,7 @@
|
|
|
3698
3715
|
/**
|
|
3699
3716
|
* Function to create SVGPath of the point based on the
|
|
3700
3717
|
* plot positions of this point.
|
|
3701
|
-
*
|
|
3702
|
-
* @param {SVGPath} point
|
|
3703
|
-
* @param {SVGElement} graphic
|
|
3704
|
-
* @returns {SVGPath}
|
|
3718
|
+
* @private
|
|
3705
3719
|
*/
|
|
3706
3720
|
HLCSeries.prototype.getPointPath = function (point, graphic) {
|
|
3707
3721
|
// crisp vector coordinates
|
|
@@ -3761,7 +3775,6 @@
|
|
|
3761
3775
|
/**
|
|
3762
3776
|
* @private
|
|
3763
3777
|
* @function Highcharts.seriesTypes.hlc#init
|
|
3764
|
-
* @return {void}
|
|
3765
3778
|
*/
|
|
3766
3779
|
HLCSeries.prototype.init = function () {
|
|
3767
3780
|
_super.prototype.init.apply(this, arguments);
|
|
@@ -3787,7 +3800,6 @@
|
|
|
3787
3800
|
*
|
|
3788
3801
|
* @private
|
|
3789
3802
|
* @function Highcharts.seriesTypes.hlc#translate
|
|
3790
|
-
* @return {void}
|
|
3791
3803
|
*/
|
|
3792
3804
|
HLCSeries.prototype.translate = function () {
|
|
3793
3805
|
var series = this,
|
|
@@ -4063,7 +4075,6 @@
|
|
|
4063
4075
|
* Extend the parent method by adding up or down to the class name.
|
|
4064
4076
|
* @private
|
|
4065
4077
|
* @function Highcharts.seriesTypes.ohlc#getClassName
|
|
4066
|
-
* @return {string}
|
|
4067
4078
|
*/
|
|
4068
4079
|
OHLCPoint.prototype.getClassName = function () {
|
|
4069
4080
|
return _super.prototype.getClassName.call(this) +
|
|
@@ -4238,7 +4249,7 @@
|
|
|
4238
4249
|
* @sample stock/demo/ohlc/
|
|
4239
4250
|
* OHLC chart
|
|
4240
4251
|
*
|
|
4241
|
-
* @extends plotOptions.
|
|
4252
|
+
* @extends plotOptions.hlc
|
|
4242
4253
|
* @product highstock
|
|
4243
4254
|
* @optionparent plotOptions.ohlc
|
|
4244
4255
|
*/
|
|
@@ -4503,7 +4514,6 @@
|
|
|
4503
4514
|
*
|
|
4504
4515
|
* @private
|
|
4505
4516
|
* @function Highcharts.seriesTypes.candlestick#drawPoints
|
|
4506
|
-
* @return {void}
|
|
4507
4517
|
*/
|
|
4508
4518
|
CandlestickSeries.prototype.drawPoints = function () {
|
|
4509
4519
|
var series = this,
|
|
@@ -5048,8 +5058,8 @@
|
|
|
5048
5058
|
/**
|
|
5049
5059
|
* Create the circlepin and squarepin icons with anchor.
|
|
5050
5060
|
* @private
|
|
5051
|
-
* @param {string} shape
|
|
5052
|
-
*
|
|
5061
|
+
* @param {string} shape
|
|
5062
|
+
* circle or square
|
|
5053
5063
|
*/
|
|
5054
5064
|
function createPinSymbol(shape) {
|
|
5055
5065
|
symbols[(shape + 'pin')] = function (x, y, w, h, options) {
|
|
@@ -5852,7 +5862,8 @@
|
|
|
5852
5862
|
from = unitedMin + range * (1 - this.to);
|
|
5853
5863
|
}
|
|
5854
5864
|
if (this.shouldUpdateExtremes(e.DOMType)) {
|
|
5855
|
-
axis.setExtremes(from, to, true, e.DOMType !== 'mousemove' &&
|
|
5865
|
+
axis.setExtremes(from, to, true, (e.DOMType !== 'mousemove' &&
|
|
5866
|
+
e.DOMType !== 'touchmove'), e);
|
|
5856
5867
|
}
|
|
5857
5868
|
else {
|
|
5858
5869
|
// When live redraw is disabled, don't change extremes
|
|
@@ -5869,7 +5880,7 @@
|
|
|
5869
5880
|
scrollMin = _a.scrollMin,
|
|
5870
5881
|
scrollMax = _a.scrollMax,
|
|
5871
5882
|
scrollbar = axis.scrollbar,
|
|
5872
|
-
offset = axis.axisTitleMargin + (axis.titleOffset || 0),
|
|
5883
|
+
offset = (axis.axisTitleMargin + (axis.titleOffset || 0)),
|
|
5873
5884
|
scrollbarsOffsets = axis.chart.scrollbarsOffsets,
|
|
5874
5885
|
axisMargin = axis.options.margin || 0,
|
|
5875
5886
|
offsetsIndex,
|
|
@@ -5881,8 +5892,11 @@
|
|
|
5881
5892
|
if (!axis.opposite) {
|
|
5882
5893
|
scrollbarsOffsets[1] += offset;
|
|
5883
5894
|
}
|
|
5884
|
-
scrollbar.position(axis.left, axis.top +
|
|
5885
|
-
|
|
5895
|
+
scrollbar.position(axis.left, (axis.top +
|
|
5896
|
+
axis.height +
|
|
5897
|
+
2 +
|
|
5898
|
+
scrollbarsOffsets[1] -
|
|
5899
|
+
(axis.opposite ? axisMargin : 0)), axis.width, axis.height);
|
|
5886
5900
|
// Next scrollbar should reserve space for margin (if set)
|
|
5887
5901
|
if (!axis.opposite) {
|
|
5888
5902
|
scrollbarsOffsets[1] += axisMargin;
|
|
@@ -5899,7 +5913,10 @@
|
|
|
5899
5913
|
xPosition = axis.opposite ? 0 : axisMargin;
|
|
5900
5914
|
}
|
|
5901
5915
|
else {
|
|
5902
|
-
xPosition = axis.left +
|
|
5916
|
+
xPosition = axis.left +
|
|
5917
|
+
axis.width +
|
|
5918
|
+
2 +
|
|
5919
|
+
scrollbarsOffsets[0] -
|
|
5903
5920
|
(axis.opposite ? 0 : axisMargin);
|
|
5904
5921
|
}
|
|
5905
5922
|
scrollbar.position(xPosition, axis.top, axis.width, axis.height);
|
|
@@ -5923,10 +5940,10 @@
|
|
|
5923
5940
|
scrollbar.setRange(0, 1);
|
|
5924
5941
|
}
|
|
5925
5942
|
else {
|
|
5926
|
-
from =
|
|
5927
|
-
(
|
|
5928
|
-
to =
|
|
5929
|
-
(
|
|
5943
|
+
from = ((axis.min - scrollMin) /
|
|
5944
|
+
(scrollMax - scrollMin));
|
|
5945
|
+
to = ((axis.max - scrollMin) /
|
|
5946
|
+
(scrollMax - scrollMin));
|
|
5930
5947
|
if ((axis.horiz && !axis.reversed) ||
|
|
5931
5948
|
(!axis.horiz && axis.reversed)) {
|
|
5932
5949
|
scrollbar.setRange(from, to);
|
|
@@ -5945,7 +5962,8 @@
|
|
|
5945
5962
|
index = axis.horiz ? 2 : opposite ? 3 : 1,
|
|
5946
5963
|
scrollbar = axis.scrollbar;
|
|
5947
5964
|
if (scrollbar) {
|
|
5948
|
-
|
|
5965
|
+
// reset scrollbars offsets
|
|
5966
|
+
axis.chart.scrollbarsOffsets = [0, 0];
|
|
5949
5967
|
axis.chart.axisOffset[index] +=
|
|
5950
5968
|
scrollbar.size + scrollbar.options.margin;
|
|
5951
5969
|
}
|
|
@@ -6312,10 +6330,16 @@
|
|
|
6312
6330
|
mouseUpHandler = this.mouseUpHandler.bind(this);
|
|
6313
6331
|
// Mouse events
|
|
6314
6332
|
var _events = [
|
|
6315
|
-
[
|
|
6316
|
-
|
|
6317
|
-
|
|
6318
|
-
|
|
6333
|
+
[
|
|
6334
|
+
buttons[buttonsOrder[0]].element,
|
|
6335
|
+
'click',
|
|
6336
|
+
this.buttonToMinClick.bind(this)
|
|
6337
|
+
],
|
|
6338
|
+
[
|
|
6339
|
+
buttons[buttonsOrder[1]].element,
|
|
6340
|
+
'click',
|
|
6341
|
+
this.buttonToMaxClick.bind(this)
|
|
6342
|
+
],
|
|
6319
6343
|
[track, 'click',
|
|
6320
6344
|
this.trackClick.bind(this)],
|
|
6321
6345
|
[bar, 'mousedown',
|
|
@@ -6337,7 +6361,8 @@
|
|
|
6337
6361
|
};
|
|
6338
6362
|
Scrollbar.prototype.buttonToMaxClick = function (e) {
|
|
6339
6363
|
var scroller = this;
|
|
6340
|
-
var range = (scroller.to - scroller.from) *
|
|
6364
|
+
var range = ((scroller.to - scroller.from) *
|
|
6365
|
+
pick(scroller.options.step, 0.2));
|
|
6341
6366
|
scroller.updatePosition(scroller.from + range, scroller.to + range);
|
|
6342
6367
|
fireEvent(scroller, 'changed', {
|
|
6343
6368
|
from: scroller.from,
|
|
@@ -6390,7 +6415,6 @@
|
|
|
6390
6415
|
*
|
|
6391
6416
|
* @private
|
|
6392
6417
|
* @function Highcharts.Scrollbar#destroy
|
|
6393
|
-
* @return {void}
|
|
6394
6418
|
*/
|
|
6395
6419
|
Scrollbar.prototype.destroy = function () {
|
|
6396
6420
|
var scroller = this,
|
|
@@ -6423,7 +6447,6 @@
|
|
|
6423
6447
|
* @function Highcharts.Scrollbar#drawScrollbarButton
|
|
6424
6448
|
* @param {number} index
|
|
6425
6449
|
* 0 is left, 1 is right
|
|
6426
|
-
* @return {void}
|
|
6427
6450
|
*/
|
|
6428
6451
|
Scrollbar.prototype.drawScrollbarButton = function (index) {
|
|
6429
6452
|
var scroller = this,
|
|
@@ -6516,7 +6539,8 @@
|
|
|
6516
6539
|
var scroller = this,
|
|
6517
6540
|
normalizedEvent = scroller.chart.pointer.normalize(e),
|
|
6518
6541
|
options = scroller.options,
|
|
6519
|
-
direction = options.vertical ?
|
|
6542
|
+
direction = options.vertical ?
|
|
6543
|
+
'chartY' : 'chartX',
|
|
6520
6544
|
initPositions = scroller.initPositions || [];
|
|
6521
6545
|
var scrollPosition,
|
|
6522
6546
|
chartPosition,
|
|
@@ -6577,7 +6601,6 @@
|
|
|
6577
6601
|
* width of the scrollbar
|
|
6578
6602
|
* @param {number} height
|
|
6579
6603
|
* height of the scorllbar
|
|
6580
|
-
* @return {void}
|
|
6581
6604
|
*/
|
|
6582
6605
|
Scrollbar.prototype.position = function (x, y, width, height) {
|
|
6583
6606
|
var scroller = this,
|
|
@@ -6626,7 +6649,6 @@
|
|
|
6626
6649
|
*
|
|
6627
6650
|
* @private
|
|
6628
6651
|
* @function Highcharts.Scrollbar#removeEvents
|
|
6629
|
-
* @return {void}
|
|
6630
6652
|
*/
|
|
6631
6653
|
Scrollbar.prototype.removeEvents = function () {
|
|
6632
6654
|
this._events.forEach(function (args) {
|
|
@@ -6718,7 +6740,6 @@
|
|
|
6718
6740
|
* scale (0-1) where bar should start
|
|
6719
6741
|
* @param {number} to
|
|
6720
6742
|
* scale (0-1) where bar should end
|
|
6721
|
-
* @return {void}
|
|
6722
6743
|
*/
|
|
6723
6744
|
Scrollbar.prototype.setRange = function (from, to) {
|
|
6724
6745
|
var scroller = this,
|
|
@@ -6797,8 +6818,6 @@
|
|
|
6797
6818
|
*
|
|
6798
6819
|
* @private
|
|
6799
6820
|
* @function Highcharts.Scrollbar#shouldUpdateExtremes
|
|
6800
|
-
* @param {string} [eventType]
|
|
6801
|
-
* @return {boolean}
|
|
6802
6821
|
*/
|
|
6803
6822
|
Scrollbar.prototype.shouldUpdateExtremes = function (eventType) {
|
|
6804
6823
|
return (pick(this.options.liveRedraw, H.svg && !H.isTouchDevice && !this.chart.isBoosting) ||
|
|
@@ -6848,7 +6867,6 @@
|
|
|
6848
6867
|
* @function Highcharts.Scrollbar#updatePosition
|
|
6849
6868
|
* @param {number} from
|
|
6850
6869
|
* @param {number} to
|
|
6851
|
-
* @return {void}
|
|
6852
6870
|
*/
|
|
6853
6871
|
Scrollbar.prototype.updatePosition = function (from, to) {
|
|
6854
6872
|
if (to > 1) {
|
|
@@ -6931,11 +6949,6 @@
|
|
|
6931
6949
|
*
|
|
6932
6950
|
* @private
|
|
6933
6951
|
* @function Highcharts.Axis#toFixedRange
|
|
6934
|
-
* @param {number} [pxMin]
|
|
6935
|
-
* @param {number} [pxMax]
|
|
6936
|
-
* @param {number} [fixedMin]
|
|
6937
|
-
* @param {number} [fixedMax]
|
|
6938
|
-
* @return {*}
|
|
6939
6952
|
*/
|
|
6940
6953
|
NavigatorAxisAdditions.prototype.toFixedRange = function (pxMin, pxMax, fixedMin, fixedMax) {
|
|
6941
6954
|
var navigator = this;
|
|
@@ -7686,17 +7699,32 @@
|
|
|
7686
7699
|
verticalMin = navigatorTop + zoomedMax + outlineCorrection;
|
|
7687
7700
|
zoomedMax = navigatorTop + zoomedMin + outlineCorrection;
|
|
7688
7701
|
path = [
|
|
7689
|
-
[
|
|
7702
|
+
[
|
|
7703
|
+
'M',
|
|
7704
|
+
left + outlineHeight,
|
|
7705
|
+
navigatorTop - scrollbarHeight - outlineCorrection
|
|
7706
|
+
],
|
|
7707
|
+
// top right of zoomed range
|
|
7690
7708
|
['L', left + outlineHeight, verticalMin],
|
|
7691
7709
|
['L', left, verticalMin],
|
|
7692
7710
|
['L', left, zoomedMax],
|
|
7693
7711
|
['L', left + outlineHeight, zoomedMax],
|
|
7694
|
-
[
|
|
7712
|
+
[
|
|
7713
|
+
'L',
|
|
7714
|
+
left + outlineHeight,
|
|
7715
|
+
navigatorTop + navigatorSize + scrollbarHeight
|
|
7716
|
+
]
|
|
7695
7717
|
];
|
|
7696
7718
|
if (maskInside) {
|
|
7697
|
-
path.push(
|
|
7698
|
-
|
|
7699
|
-
|
|
7719
|
+
path.push(
|
|
7720
|
+
// upper left of zoomed range
|
|
7721
|
+
['M', left + outlineHeight, verticalMin - halfOutline],
|
|
7722
|
+
// upper right of z.r.
|
|
7723
|
+
[
|
|
7724
|
+
'L',
|
|
7725
|
+
left + outlineHeight,
|
|
7726
|
+
zoomedMax + halfOutline
|
|
7727
|
+
]);
|
|
7700
7728
|
}
|
|
7701
7729
|
}
|
|
7702
7730
|
else {
|
|
@@ -7704,17 +7732,25 @@
|
|
|
7704
7732
|
zoomedMax += left + scrollbarHeight - outlineCorrection;
|
|
7705
7733
|
navigatorTop += halfOutline;
|
|
7706
7734
|
path = [
|
|
7735
|
+
// left
|
|
7707
7736
|
['M', left, navigatorTop],
|
|
7737
|
+
// upper left of zoomed range
|
|
7708
7738
|
['L', zoomedMin, navigatorTop],
|
|
7739
|
+
// lower left of z.r.
|
|
7709
7740
|
['L', zoomedMin, navigatorTop + outlineHeight],
|
|
7741
|
+
// lower right of z.r.
|
|
7710
7742
|
['L', zoomedMax, navigatorTop + outlineHeight],
|
|
7743
|
+
// upper right of z.r.
|
|
7711
7744
|
['L', zoomedMax, navigatorTop],
|
|
7712
|
-
|
|
7745
|
+
// right
|
|
7746
|
+
['L', left + navigatorSize + scrollbarHeight * 2, navigatorTop]
|
|
7713
7747
|
];
|
|
7714
7748
|
if (maskInside) {
|
|
7715
|
-
path.push(
|
|
7716
|
-
|
|
7717
|
-
|
|
7749
|
+
path.push(
|
|
7750
|
+
// upper left of zoomed range
|
|
7751
|
+
['M', zoomedMin - halfOutline, navigatorTop],
|
|
7752
|
+
// upper right of z.r.
|
|
7753
|
+
['L', zoomedMax + halfOutline, navigatorTop]);
|
|
7718
7754
|
}
|
|
7719
7755
|
}
|
|
7720
7756
|
navigator.outline[verb]({
|
|
@@ -7900,7 +7936,6 @@
|
|
|
7900
7936
|
* Pixel value minimum
|
|
7901
7937
|
* @param {number} [pxMax]
|
|
7902
7938
|
* Pixel value maximum
|
|
7903
|
-
* @return {void}
|
|
7904
7939
|
*/
|
|
7905
7940
|
Navigator.prototype.render = function (min, max, pxMin, pxMax) {
|
|
7906
7941
|
var navigator = this,
|
|
@@ -8177,7 +8212,6 @@
|
|
|
8177
8212
|
* Mouse event
|
|
8178
8213
|
* @param {number} index
|
|
8179
8214
|
* Index of a handle in Navigator.handles array
|
|
8180
|
-
* @return {void}
|
|
8181
8215
|
*/
|
|
8182
8216
|
Navigator.prototype.handlesMousedown = function (e, index) {
|
|
8183
8217
|
e = this.chart.pointer.normalize(e);
|
|
@@ -8273,7 +8307,6 @@
|
|
|
8273
8307
|
* @function Highcharts.Navigator#onMouseUp
|
|
8274
8308
|
* @param {Highcharts.PointerEventObject} e
|
|
8275
8309
|
* Mouse event
|
|
8276
|
-
* @return {void}
|
|
8277
8310
|
*/
|
|
8278
8311
|
Navigator.prototype.onMouseUp = function (e) {
|
|
8279
8312
|
var navigator = this,
|
|
@@ -8360,7 +8393,6 @@
|
|
|
8360
8393
|
*
|
|
8361
8394
|
* @private
|
|
8362
8395
|
* @function Highcharts.Navigator#removeEvents
|
|
8363
|
-
* @return {void}
|
|
8364
8396
|
*/
|
|
8365
8397
|
Navigator.prototype.removeEvents = function () {
|
|
8366
8398
|
if (this.eventsToUnbind) {
|
|
@@ -8376,7 +8408,6 @@
|
|
|
8376
8408
|
*
|
|
8377
8409
|
* @private
|
|
8378
8410
|
* @function Highcharts.Navigator#removeBaseSeriesEvents
|
|
8379
|
-
* @return {void}
|
|
8380
8411
|
*/
|
|
8381
8412
|
Navigator.prototype.removeBaseSeriesEvents = function () {
|
|
8382
8413
|
var baseSeries = this.baseSeries || [];
|
|
@@ -8462,7 +8493,8 @@
|
|
|
8462
8493
|
offset: 0,
|
|
8463
8494
|
index: yAxisIndex,
|
|
8464
8495
|
isInternal: true,
|
|
8465
|
-
reversed: pick((navigatorOptions.yAxis &&
|
|
8496
|
+
reversed: pick((navigatorOptions.yAxis &&
|
|
8497
|
+
navigatorOptions.yAxis.reversed), (chart.yAxis[0] && chart.yAxis[0].reversed), false),
|
|
8466
8498
|
zoomEnabled: false
|
|
8467
8499
|
}, chart.inverted ? {
|
|
8468
8500
|
width: height
|
|
@@ -8544,9 +8576,6 @@
|
|
|
8544
8576
|
*
|
|
8545
8577
|
* @private
|
|
8546
8578
|
* @function Highcharts.Navigator#getUnionExtremes
|
|
8547
|
-
* @param {boolean} [returnFalseOnNoBaseSeries]
|
|
8548
|
-
* as the param says.
|
|
8549
|
-
* @return {Highcharts.Dictionary<(number|undefined)>|undefined}
|
|
8550
8579
|
*/
|
|
8551
8580
|
Navigator.prototype.getUnionExtremes = function (returnFalseOnNoBaseSeries) {
|
|
8552
8581
|
var baseAxis = this.chart.xAxis[0],
|
|
@@ -8574,7 +8603,6 @@
|
|
|
8574
8603
|
* Additional series options for a navigator
|
|
8575
8604
|
* @param {boolean} [redraw]
|
|
8576
8605
|
* Whether to redraw after update.
|
|
8577
|
-
* @return {void}
|
|
8578
8606
|
*/
|
|
8579
8607
|
Navigator.prototype.setBaseSeries = function (baseSeriesOptions, redraw) {
|
|
8580
8608
|
var chart = this.chart,
|
|
@@ -8613,7 +8641,6 @@
|
|
|
8613
8641
|
* @function Highcharts.Navigator.updateNavigatorSeries
|
|
8614
8642
|
* @param {boolean} addEvents
|
|
8615
8643
|
* @param {boolean} [redraw]
|
|
8616
|
-
* @return {void}
|
|
8617
8644
|
*/
|
|
8618
8645
|
Navigator.prototype.updateNavigatorSeries = function (addEvents, redraw) {
|
|
8619
8646
|
var navigator = this,
|
|
@@ -8754,7 +8781,6 @@
|
|
|
8754
8781
|
*
|
|
8755
8782
|
* @private
|
|
8756
8783
|
* @function Highcharts.Navigator#addBaseSeriesEvent
|
|
8757
|
-
* @return {void}
|
|
8758
8784
|
*/
|
|
8759
8785
|
Navigator.prototype.addBaseSeriesEvents = function () {
|
|
8760
8786
|
var navigator = this,
|
|
@@ -8948,7 +8974,6 @@
|
|
|
8948
8974
|
*
|
|
8949
8975
|
* @private
|
|
8950
8976
|
* @function Highcharts.Navigator#addChartEvents
|
|
8951
|
-
* @return {void}
|
|
8952
8977
|
*/
|
|
8953
8978
|
Navigator.prototype.addChartEvents = function () {
|
|
8954
8979
|
if (!this.eventsToUnbind) {
|
|
@@ -9747,7 +9772,6 @@
|
|
|
9747
9772
|
* @param {number} i
|
|
9748
9773
|
* The index of the button
|
|
9749
9774
|
* @param {boolean} [redraw]
|
|
9750
|
-
* @return {void}
|
|
9751
9775
|
*/
|
|
9752
9776
|
RangeSelector.prototype.clickButton = function (i, redraw) {
|
|
9753
9777
|
var rangeSelector = this,
|
|
@@ -9845,7 +9869,8 @@
|
|
|
9845
9869
|
// If the navigator exist and the axis range is declared reset that
|
|
9846
9870
|
// range and from now on only use the range set by a user, #14742.
|
|
9847
9871
|
if (chart.navigator && chart.navigator.baseSeries[0]) {
|
|
9848
|
-
chart.navigator.baseSeries[0].xAxis.options
|
|
9872
|
+
chart.navigator.baseSeries[0].xAxis.options
|
|
9873
|
+
.range = void 0;
|
|
9849
9874
|
}
|
|
9850
9875
|
newMin = dataMin;
|
|
9851
9876
|
newMax = dataMax;
|
|
@@ -9890,7 +9915,6 @@
|
|
|
9890
9915
|
* @private
|
|
9891
9916
|
* @function Highcharts.RangeSelector#setSelected
|
|
9892
9917
|
* @param {number} [selected]
|
|
9893
|
-
* @return {void}
|
|
9894
9918
|
*/
|
|
9895
9919
|
RangeSelector.prototype.setSelected = function (selected) {
|
|
9896
9920
|
this.selected = this.options.selected = selected;
|
|
@@ -9901,12 +9925,11 @@
|
|
|
9901
9925
|
* @private
|
|
9902
9926
|
* @function Highcharts.RangeSelector#init
|
|
9903
9927
|
* @param {Highcharts.Chart} chart
|
|
9904
|
-
* @return {void}
|
|
9905
9928
|
*/
|
|
9906
9929
|
RangeSelector.prototype.init = function (chart) {
|
|
9907
9930
|
var rangeSelector = this,
|
|
9908
9931
|
options = chart.options.rangeSelector,
|
|
9909
|
-
buttonOptions = options.buttons || rangeSelector.defaultButtons.slice(),
|
|
9932
|
+
buttonOptions = (options.buttons || rangeSelector.defaultButtons.slice()),
|
|
9910
9933
|
selectedOption = options.selected,
|
|
9911
9934
|
blurInputs = function () {
|
|
9912
9935
|
var minInput = rangeSelector.minInput,
|
|
@@ -9956,7 +9979,6 @@
|
|
|
9956
9979
|
*
|
|
9957
9980
|
* @private
|
|
9958
9981
|
* @function Highcharts.RangeSelector#updateButtonStates
|
|
9959
|
-
* @return {void}
|
|
9960
9982
|
*/
|
|
9961
9983
|
RangeSelector.prototype.updateButtonStates = function () {
|
|
9962
9984
|
var rangeSelector = this,
|
|
@@ -10062,7 +10084,6 @@
|
|
|
10062
10084
|
* @private
|
|
10063
10085
|
* @function Highcharts.RangeSelector#computeButtonRange
|
|
10064
10086
|
* @param {Highcharts.RangeSelectorButtonsOptions} rangeOptions
|
|
10065
|
-
* @return {void}
|
|
10066
10087
|
*/
|
|
10067
10088
|
RangeSelector.prototype.computeButtonRange = function (rangeOptions) {
|
|
10068
10089
|
var type = rangeOptions.type,
|
|
@@ -10097,12 +10118,11 @@
|
|
|
10097
10118
|
*
|
|
10098
10119
|
* @private
|
|
10099
10120
|
* @function Highcharts.RangeSelector#getInputValue
|
|
10100
|
-
* @param {string} name
|
|
10101
|
-
* @return {number}
|
|
10102
10121
|
*/
|
|
10103
10122
|
RangeSelector.prototype.getInputValue = function (name) {
|
|
10104
10123
|
var input = name === 'min' ? this.minInput : this.maxInput;
|
|
10105
|
-
var options = this.chart.options
|
|
10124
|
+
var options = this.chart.options
|
|
10125
|
+
.rangeSelector;
|
|
10106
10126
|
var time = this.chart.time;
|
|
10107
10127
|
if (input) {
|
|
10108
10128
|
return ((input.type === 'text' && options.inputDateParser) ||
|
|
@@ -10115,9 +10135,6 @@
|
|
|
10115
10135
|
*
|
|
10116
10136
|
* @private
|
|
10117
10137
|
* @function Highcharts.RangeSelector#setInputValue
|
|
10118
|
-
* @param {string} name
|
|
10119
|
-
* @param {number} [inputTime]
|
|
10120
|
-
* @return {void}
|
|
10121
10138
|
*/
|
|
10122
10139
|
RangeSelector.prototype.setInputValue = function (name, inputTime) {
|
|
10123
10140
|
var options = this.options, time = this.chart.time, input = name === 'min' ? this.minInput : this.maxInput, dateBox = name === 'min' ? this.minDateBox : this.maxDateBox;
|
|
@@ -10132,7 +10149,8 @@
|
|
|
10132
10149
|
input.setAttribute('data-hc-time', inputTime);
|
|
10133
10150
|
updatedTime = inputTime;
|
|
10134
10151
|
}
|
|
10135
|
-
input.value = time.dateFormat(this.inputTypeFormats[input.type] ||
|
|
10152
|
+
input.value = time.dateFormat((this.inputTypeFormats[input.type] ||
|
|
10153
|
+
options.inputEditDateFormat), updatedTime);
|
|
10136
10154
|
if (dateBox) {
|
|
10137
10155
|
dateBox.attr({
|
|
10138
10156
|
text: time.dateFormat(options.inputDateFormat, updatedTime)
|
|
@@ -10145,10 +10163,6 @@
|
|
|
10145
10163
|
*
|
|
10146
10164
|
* @private
|
|
10147
10165
|
* @function Highcharts.RangeSelector#setInputExtremes
|
|
10148
|
-
* @param {string} name
|
|
10149
|
-
* @param {number} min
|
|
10150
|
-
* @param {number} max
|
|
10151
|
-
* @return {void}
|
|
10152
10166
|
*/
|
|
10153
10167
|
RangeSelector.prototype.setInputExtremes = function (name, min, max) {
|
|
10154
10168
|
var input = name === 'min' ? this.minInput : this.maxInput;
|
|
@@ -10173,7 +10187,6 @@
|
|
|
10173
10187
|
* @private
|
|
10174
10188
|
* @function Highcharts.RangeSelector#showInput
|
|
10175
10189
|
* @param {string} name
|
|
10176
|
-
* @return {void}
|
|
10177
10190
|
*/
|
|
10178
10191
|
RangeSelector.prototype.showInput = function (name) {
|
|
10179
10192
|
var dateBox = name === 'min' ? this.minDateBox : this.maxDateBox;
|
|
@@ -10185,7 +10198,9 @@
|
|
|
10185
10198
|
translateY = _a.translateY;
|
|
10186
10199
|
var inputBoxWidth = this.options.inputBoxWidth;
|
|
10187
10200
|
css(input, {
|
|
10188
|
-
width: isTextInput ?
|
|
10201
|
+
width: isTextInput ?
|
|
10202
|
+
((dateBox.width + (inputBoxWidth ? -2 : 20)) + 'px') :
|
|
10203
|
+
'auto',
|
|
10189
10204
|
height: isTextInput ? ((dateBox.height - 2) + 'px') : 'auto',
|
|
10190
10205
|
border: '2px solid silver'
|
|
10191
10206
|
});
|
|
@@ -10211,7 +10226,6 @@
|
|
|
10211
10226
|
* @private
|
|
10212
10227
|
* @function Highcharts.RangeSelector#hideInput
|
|
10213
10228
|
* @param {string} name
|
|
10214
|
-
* @return {void}
|
|
10215
10229
|
*/
|
|
10216
10230
|
RangeSelector.prototype.hideInput = function (name) {
|
|
10217
10231
|
var input = name === 'min' ? this.minInput : this.maxInput;
|
|
@@ -10263,8 +10277,6 @@
|
|
|
10263
10277
|
*
|
|
10264
10278
|
* @private
|
|
10265
10279
|
* @function Highcharts.RangeSelector#drawInput
|
|
10266
|
-
* @param {string} name
|
|
10267
|
-
* @return {RangeSelectorInputElements}
|
|
10268
10280
|
*/
|
|
10269
10281
|
RangeSelector.prototype.drawInput = function (name) {
|
|
10270
10282
|
var _a = this,
|
|
@@ -10433,8 +10445,6 @@
|
|
|
10433
10445
|
*
|
|
10434
10446
|
* @private
|
|
10435
10447
|
* @function Highcharts.RangeSelector#getPosition
|
|
10436
|
-
*
|
|
10437
|
-
* @return {Highcharts.Dictionary<number>}
|
|
10438
10448
|
*/
|
|
10439
10449
|
RangeSelector.prototype.getPosition = function () {
|
|
10440
10450
|
var chart = this.chart,
|
|
@@ -10454,13 +10464,8 @@
|
|
|
10454
10464
|
*
|
|
10455
10465
|
* @private
|
|
10456
10466
|
* @function Highcharts.RangeSelector#getYTDExtremes
|
|
10457
|
-
*
|
|
10458
|
-
* @param {number} dataMax
|
|
10459
|
-
*
|
|
10460
|
-
* @param {number} dataMin
|
|
10461
|
-
*
|
|
10462
10467
|
* @return {*}
|
|
10463
|
-
*
|
|
10468
|
+
* Returns min and max for the YTD
|
|
10464
10469
|
*/
|
|
10465
10470
|
RangeSelector.prototype.getYTDExtremes = function (dataMax, dataMin, useUTC) {
|
|
10466
10471
|
var time = this.chart.time,
|
|
@@ -10489,7 +10494,6 @@
|
|
|
10489
10494
|
* X axis minimum
|
|
10490
10495
|
* @param {number} [max]
|
|
10491
10496
|
* X axis maximum
|
|
10492
|
-
* @return {void}
|
|
10493
10497
|
*/
|
|
10494
10498
|
RangeSelector.prototype.render = function (min, max) {
|
|
10495
10499
|
var chart = this.chart,
|
|
@@ -10543,7 +10547,8 @@
|
|
|
10543
10547
|
this.setInputValue('min', min);
|
|
10544
10548
|
this.setInputValue('max', max);
|
|
10545
10549
|
var unionExtremes = (chart.scroller && chart.scroller.getUnionExtremes()) || chart.xAxis[0] || {};
|
|
10546
|
-
if (defined(unionExtremes.dataMin) &&
|
|
10550
|
+
if (defined(unionExtremes.dataMin) &&
|
|
10551
|
+
defined(unionExtremes.dataMax)) {
|
|
10547
10552
|
var minRange = chart.xAxis[0].minRange || 0;
|
|
10548
10553
|
this.setInputExtremes('min', unionExtremes.dataMin, Math.min(unionExtremes.dataMax, this.getInputValue('max')) - minRange);
|
|
10549
10554
|
this.setInputExtremes('max', Math.max(unionExtremes.dataMin, this.getInputValue('min')) + minRange, unionExtremes.dataMax);
|
|
@@ -10576,7 +10581,6 @@
|
|
|
10576
10581
|
*
|
|
10577
10582
|
* @private
|
|
10578
10583
|
* @function Highcharts.RangeSelector#renderButtons
|
|
10579
|
-
* @return {void}
|
|
10580
10584
|
*/
|
|
10581
10585
|
RangeSelector.prototype.renderButtons = function () {
|
|
10582
10586
|
var _this = this;
|
|
@@ -10677,7 +10681,6 @@
|
|
|
10677
10681
|
*
|
|
10678
10682
|
* @private
|
|
10679
10683
|
* @function Highcharts.RangeSelector#alignElements
|
|
10680
|
-
* @return {void}
|
|
10681
10684
|
*/
|
|
10682
10685
|
RangeSelector.prototype.alignElements = function () {
|
|
10683
10686
|
var _this = this;
|
|
@@ -10833,7 +10836,6 @@
|
|
|
10833
10836
|
* @function Highcharts.RangeSelector#alignButtonGroup
|
|
10834
10837
|
* @param {number} xOffsetForExportButton
|
|
10835
10838
|
* @param {number} [width]
|
|
10836
|
-
* @return {void}
|
|
10837
10839
|
*/
|
|
10838
10840
|
RangeSelector.prototype.alignButtonGroup = function (xOffsetForExportButton, width) {
|
|
10839
10841
|
var _a = this,
|
|
@@ -10863,7 +10865,6 @@
|
|
|
10863
10865
|
/**
|
|
10864
10866
|
* @private
|
|
10865
10867
|
* @function Highcharts.RangeSelector#positionButtons
|
|
10866
|
-
* @return {void}
|
|
10867
10868
|
*/
|
|
10868
10869
|
RangeSelector.prototype.positionButtons = function () {
|
|
10869
10870
|
var _a = this,
|
|
@@ -10904,7 +10905,6 @@
|
|
|
10904
10905
|
* @param {number} xOffsetForExportButton
|
|
10905
10906
|
* The X offset of the group required to make room for the
|
|
10906
10907
|
* exporting button
|
|
10907
|
-
* @return {void}
|
|
10908
10908
|
*/
|
|
10909
10909
|
RangeSelector.prototype.handleCollision = function (xOffsetForExportButton) {
|
|
10910
10910
|
var _this = this;
|
|
@@ -11005,7 +11005,6 @@
|
|
|
11005
11005
|
* @private
|
|
11006
11006
|
* @function Highcharts.RangeSelector#collapseButtons
|
|
11007
11007
|
* @param {number} xOffsetForExportButton
|
|
11008
|
-
* @return {void}
|
|
11009
11008
|
*/
|
|
11010
11009
|
RangeSelector.prototype.collapseButtons = function (xOffsetForExportButton) {
|
|
11011
11010
|
var _a = this,
|
|
@@ -11059,7 +11058,6 @@
|
|
|
11059
11058
|
*
|
|
11060
11059
|
* @private
|
|
11061
11060
|
* @function Highcharts.RangeSelector#expandButtons
|
|
11062
|
-
* @return {void}
|
|
11063
11061
|
*/
|
|
11064
11062
|
RangeSelector.prototype.expandButtons = function () {
|
|
11065
11063
|
var _a = this,
|
|
@@ -11091,7 +11089,6 @@
|
|
|
11091
11089
|
*
|
|
11092
11090
|
* @private
|
|
11093
11091
|
* @function Highcharts.RangeSelector#currentButtonIndex
|
|
11094
|
-
* @return {number}
|
|
11095
11092
|
*/
|
|
11096
11093
|
RangeSelector.prototype.currentButtonIndex = function () {
|
|
11097
11094
|
var dropdown = this.dropdown;
|
|
@@ -11105,7 +11102,6 @@
|
|
|
11105
11102
|
*
|
|
11106
11103
|
* @private
|
|
11107
11104
|
* @function Highcharts.RangeSelector#showDropdown
|
|
11108
|
-
* @return {void}
|
|
11109
11105
|
*/
|
|
11110
11106
|
RangeSelector.prototype.showDropdown = function () {
|
|
11111
11107
|
var _a = this,
|
|
@@ -11129,7 +11125,6 @@
|
|
|
11129
11125
|
/**
|
|
11130
11126
|
* @private
|
|
11131
11127
|
* @function Highcharts.RangeSelector#hideDropdown
|
|
11132
|
-
* @return {void}
|
|
11133
11128
|
*/
|
|
11134
11129
|
RangeSelector.prototype.hideDropdown = function () {
|
|
11135
11130
|
var dropdown = this.dropdown;
|
|
@@ -11148,7 +11143,7 @@
|
|
|
11148
11143
|
* @private
|
|
11149
11144
|
* @function Highcharts.RangeSelector#getHeight
|
|
11150
11145
|
* @return {number}
|
|
11151
|
-
*
|
|
11146
|
+
* Returns rangeSelector height
|
|
11152
11147
|
*/
|
|
11153
11148
|
RangeSelector.prototype.getHeight = function () {
|
|
11154
11149
|
var rangeSelector = this,
|
|
@@ -11184,11 +11179,8 @@
|
|
|
11184
11179
|
*
|
|
11185
11180
|
* @private
|
|
11186
11181
|
* @function Highcharts.RangeSelector#titleCollision
|
|
11187
|
-
*
|
|
11188
|
-
* @param {Highcharts.Chart} chart
|
|
11189
|
-
*
|
|
11190
11182
|
* @return {boolean}
|
|
11191
|
-
*
|
|
11183
|
+
* Returns collision status
|
|
11192
11184
|
*/
|
|
11193
11185
|
RangeSelector.prototype.titleCollision = function (chart) {
|
|
11194
11186
|
return !(chart.options.title.text ||
|
|
@@ -11200,7 +11192,6 @@
|
|
|
11200
11192
|
* @private
|
|
11201
11193
|
* @function Highcharts.RangeSelector#update
|
|
11202
11194
|
* @param {Highcharts.RangeSelectorOptions} options
|
|
11203
|
-
* @return {void}
|
|
11204
11195
|
*/
|
|
11205
11196
|
RangeSelector.prototype.update = function (options) {
|
|
11206
11197
|
var chart = this.chart;
|
|
@@ -11296,17 +11287,14 @@
|
|
|
11296
11287
|
*
|
|
11297
11288
|
* @private
|
|
11298
11289
|
* @function preferredInputType
|
|
11299
|
-
* @param {string} format
|
|
11300
|
-
* @return {string}
|
|
11301
11290
|
*/
|
|
11302
11291
|
function preferredInputType(format) {
|
|
11303
11292
|
var ms = format.indexOf('%L') !== -1;
|
|
11304
11293
|
if (ms) {
|
|
11305
11294
|
return 'text';
|
|
11306
11295
|
}
|
|
11307
|
-
var date = ['a', 'A', 'd', 'e', 'w', 'b', 'B', 'm', 'o', 'y', 'Y']
|
|
11308
|
-
return format.indexOf('%' + char) !== -1;
|
|
11309
|
-
});
|
|
11296
|
+
var date = ['a', 'A', 'd', 'e', 'w', 'b', 'B', 'm', 'o', 'y', 'Y']
|
|
11297
|
+
.some(function (char) { return format.indexOf('%' + char) !== -1; });
|
|
11310
11298
|
var time = ['H', 'k', 'I', 'l', 'M', 'S'].some(function (char) {
|
|
11311
11299
|
return format.indexOf('%' + char) !== -1;
|
|
11312
11300
|
});
|
|
@@ -11343,7 +11331,8 @@
|
|
|
11343
11331
|
// Get the true range from a start date
|
|
11344
11332
|
getTrueRange = function (base,
|
|
11345
11333
|
count) {
|
|
11346
|
-
var timeName = type === 'year' ?
|
|
11334
|
+
var timeName = type === 'year' ?
|
|
11335
|
+
'FullYear' : 'Month';
|
|
11347
11336
|
var date = new time.Date(base);
|
|
11348
11337
|
var basePeriod = time.get(timeName,
|
|
11349
11338
|
date);
|
|
@@ -11627,10 +11616,9 @@
|
|
|
11627
11616
|
* Function to run when the chart has loaded and and all external
|
|
11628
11617
|
* images are loaded.
|
|
11629
11618
|
*
|
|
11630
|
-
* @return {void}
|
|
11631
11619
|
*
|
|
11632
|
-
* @
|
|
11633
|
-
* @
|
|
11620
|
+
* @emits Highcharts.StockChart#event:init
|
|
11621
|
+
* @emits Highcharts.StockChart#event:afterInit
|
|
11634
11622
|
*/
|
|
11635
11623
|
StockChart.prototype.init = function (userOptions, callback) {
|
|
11636
11624
|
var defaultOptions = getOptions(),
|
|
@@ -11656,7 +11644,8 @@
|
|
|
11656
11644
|
},
|
|
11657
11645
|
scrollbar: {
|
|
11658
11646
|
// #4988 - check if setOptions was called
|
|
11659
|
-
enabled: pick(defaultOptions.scrollbar &&
|
|
11647
|
+
enabled: pick((defaultOptions.scrollbar &&
|
|
11648
|
+
defaultOptions.scrollbar.enabled),
|
|
11660
11649
|
true)
|
|
11661
11650
|
},
|
|
11662
11651
|
rangeSelector: {
|
|
@@ -11685,15 +11674,15 @@
|
|
|
11685
11674
|
// apply X axis options to both single and multi y axes
|
|
11686
11675
|
options.xAxis = splat(userOptions.xAxis || {}).map(function (xAxisOptions, i) {
|
|
11687
11676
|
return merge(getDefaultAxisOptions('xAxis', xAxisOptions), defaultOptions.xAxis, // #3802
|
|
11688
|
-
|
|
11689
|
-
xAxisOptions, // user options
|
|
11677
|
+
// #7690
|
|
11678
|
+
defaultOptions.xAxis && defaultOptions.xAxis[i], xAxisOptions, // user options
|
|
11690
11679
|
getForcedAxisOptions('xAxis', userOptions));
|
|
11691
11680
|
});
|
|
11692
11681
|
// apply Y axis options to both single and multi y axes
|
|
11693
11682
|
options.yAxis = splat(userOptions.yAxis || {}).map(function (yAxisOptions, i) {
|
|
11694
11683
|
return merge(getDefaultAxisOptions('yAxis', yAxisOptions), defaultOptions.yAxis, // #3802
|
|
11695
|
-
|
|
11696
|
-
yAxisOptions // user options
|
|
11684
|
+
// #7690
|
|
11685
|
+
defaultOptions.yAxis && defaultOptions.yAxis[i], yAxisOptions // user options
|
|
11697
11686
|
);
|
|
11698
11687
|
});
|
|
11699
11688
|
_super.prototype.init.call(this, options, callback);
|
|
@@ -11704,14 +11693,10 @@
|
|
|
11704
11693
|
*
|
|
11705
11694
|
* @private
|
|
11706
11695
|
* @function Highcharts.StockChart#createAxis
|
|
11707
|
-
*
|
|
11708
11696
|
* @param {string} type
|
|
11709
|
-
*
|
|
11710
|
-
*
|
|
11697
|
+
* An axis type.
|
|
11711
11698
|
* @param {Chart.CreateAxisOptionsObject} options
|
|
11712
|
-
*
|
|
11713
|
-
*
|
|
11714
|
-
* @return {Highcharts.Axis | Highcharts.ColorAxis}
|
|
11699
|
+
* The axis creation options.
|
|
11715
11700
|
*/
|
|
11716
11701
|
StockChart.prototype.createAxis = function (type, options) {
|
|
11717
11702
|
options.axis = merge(getDefaultAxisOptions(type, options.axis), options.axis, getForcedAxisOptions(type, this.userOptions));
|
|
@@ -11767,9 +11752,6 @@
|
|
|
11767
11752
|
*
|
|
11768
11753
|
* @private
|
|
11769
11754
|
* @function getDefaultAxisOptions
|
|
11770
|
-
* @param {string} type
|
|
11771
|
-
* @param {Highcharts.AxisOptions} options
|
|
11772
|
-
* @return {Highcharts.AxisOptions}
|
|
11773
11755
|
*/
|
|
11774
11756
|
function getDefaultAxisOptions(type, options) {
|
|
11775
11757
|
if (type === 'xAxis') {
|
|
@@ -11816,9 +11798,6 @@
|
|
|
11816
11798
|
*
|
|
11817
11799
|
* @private
|
|
11818
11800
|
* @function getForcedAxisOptions
|
|
11819
|
-
* @param {string} type
|
|
11820
|
-
* @param {Highcharts.Options} chartOptions
|
|
11821
|
-
* @return {Highcharts.AxisOptions}
|
|
11822
11801
|
*/
|
|
11823
11802
|
function getForcedAxisOptions(type, chartOptions) {
|
|
11824
11803
|
if (type === 'xAxis') {
|
|
@@ -12037,9 +12016,6 @@
|
|
|
12037
12016
|
*
|
|
12038
12017
|
* @private
|
|
12039
12018
|
* @function Highcharts.SVGRenderer#crispPolyLine
|
|
12040
|
-
* @param {Highcharts.SVGPathArray} points
|
|
12041
|
-
* @param {number} width
|
|
12042
|
-
* @return {Highcharts.SVGPathArray}
|
|
12043
12019
|
*/
|
|
12044
12020
|
SVGRenderer.prototype.crispPolyLine = function (points, width) {
|
|
12045
12021
|
// points format: [['M', 0, 0], ['L', 100, 0]]
|