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/highcharts.src.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Highcharts JS v9.3.
|
|
2
|
+
* @license Highcharts JS v9.3.2 (2021-11-29)
|
|
3
3
|
*
|
|
4
4
|
* (c) 2009-2021 Torstein Honsi
|
|
5
5
|
*
|
|
@@ -71,7 +71,7 @@
|
|
|
71
71
|
* Constants
|
|
72
72
|
*
|
|
73
73
|
* */
|
|
74
|
-
Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '9.3.
|
|
74
|
+
Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '9.3.2', Globals.win = w, Globals.doc = Globals.win.document, Globals.svg = (Globals.doc &&
|
|
75
75
|
Globals.doc.createElementNS &&
|
|
76
76
|
!!Globals.doc.createElementNS(Globals.SVG_NS, 'svg').createSVGRect), Globals.userAgent = (Globals.win.navigator && Globals.win.navigator.userAgent) || '', Globals.isChrome = Globals.userAgent.indexOf('Chrome') !== -1, Globals.isFirefox = Globals.userAgent.indexOf('Firefox') !== -1, Globals.isMS = /(edge|msie|trident)/i.test(Globals.userAgent) && !Globals.win.opera, Globals.isSafari = !Globals.isChrome && Globals.userAgent.indexOf('Safari') !== -1, Globals.isTouchDevice = /(Mobile|Android|Windows Phone)/.test(Globals.userAgent), Globals.isWebKit = Globals.userAgent.indexOf('AppleWebKit') !== -1, Globals.deg2rad = Math.PI * 2 / 360, Globals.hasBidiBug = (Globals.isFirefox &&
|
|
77
77
|
parseInt(Globals.userAgent.split('Firefox/')[1], 10) < 4 // issue #38
|
|
@@ -761,7 +761,7 @@
|
|
|
761
761
|
return obj;
|
|
762
762
|
}
|
|
763
763
|
/**
|
|
764
|
-
* Left-pad a string to a given length by adding a character
|
|
764
|
+
* Left-pad a string to a given length by adding a character repetitively.
|
|
765
765
|
*
|
|
766
766
|
* @function Highcharts.pad
|
|
767
767
|
*
|
|
@@ -1030,7 +1030,7 @@
|
|
|
1030
1030
|
});
|
|
1031
1031
|
}
|
|
1032
1032
|
/**
|
|
1033
|
-
* Discard a HTML element
|
|
1033
|
+
* Discard a HTML element
|
|
1034
1034
|
*
|
|
1035
1035
|
* @function Highcharts.discardElement
|
|
1036
1036
|
*
|
|
@@ -1038,17 +1038,10 @@
|
|
|
1038
1038
|
* The HTML node to discard.
|
|
1039
1039
|
*/
|
|
1040
1040
|
function discardElement(element) {
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
garbageBin = createElement('div');
|
|
1041
|
+
if (element && element.parentElement) {
|
|
1042
|
+
element.parentElement.removeChild(element);
|
|
1044
1043
|
}
|
|
1045
|
-
// move the node and empty bin
|
|
1046
|
-
if (element) {
|
|
1047
|
-
garbageBin.appendChild(element);
|
|
1048
|
-
}
|
|
1049
|
-
garbageBin.innerHTML = '';
|
|
1050
1044
|
}
|
|
1051
|
-
var garbageBin;
|
|
1052
1045
|
/**
|
|
1053
1046
|
* Fix JS round off float errors.
|
|
1054
1047
|
*
|
|
@@ -1247,7 +1240,7 @@
|
|
|
1247
1240
|
var i;
|
|
1248
1241
|
var length = arr.length;
|
|
1249
1242
|
for (i = 0; i < length; i++) {
|
|
1250
|
-
if (callback(arr[i], i)) { // eslint-disable-line callback-return
|
|
1243
|
+
if (callback(arr[i], i)) { // eslint-disable-line node/callback-return
|
|
1251
1244
|
return arr[i];
|
|
1252
1245
|
}
|
|
1253
1246
|
}
|
|
@@ -1519,9 +1512,6 @@
|
|
|
1519
1512
|
/* eslint-enable valid-jsdoc */
|
|
1520
1513
|
/**
|
|
1521
1514
|
* @private
|
|
1522
|
-
* @param {string} type - event type
|
|
1523
|
-
* @param {Highcharts.EventCallbackFunction<T>} fn - callback
|
|
1524
|
-
* @return {void}
|
|
1525
1515
|
*/
|
|
1526
1516
|
function removeOneEvent(type, fn) {
|
|
1527
1517
|
var removeEventListener = (el.removeEventListener || H.removeEventListenerPolyfill);
|
|
@@ -1531,8 +1521,6 @@
|
|
|
1531
1521
|
}
|
|
1532
1522
|
/**
|
|
1533
1523
|
* @private
|
|
1534
|
-
* @param {any} eventCollection - collection
|
|
1535
|
-
* @return {void}
|
|
1536
1524
|
*/
|
|
1537
1525
|
function removeAllEvents(eventCollection) {
|
|
1538
1526
|
var types,
|
|
@@ -3882,7 +3870,8 @@
|
|
|
3882
3870
|
// time
|
|
3883
3871
|
if (unit === 'Milliseconds' ||
|
|
3884
3872
|
unit === 'Seconds' ||
|
|
3885
|
-
(unit === 'Minutes' &&
|
|
3873
|
+
(unit === 'Minutes' &&
|
|
3874
|
+
this.getTimezoneOffset(date) % 3600000 === 0) // #13961
|
|
3886
3875
|
) {
|
|
3887
3876
|
return date['setUTC' + unit](value);
|
|
3888
3877
|
}
|
|
@@ -3899,8 +3888,8 @@
|
|
|
3899
3888
|
}
|
|
3900
3889
|
// UTC time with no timezone handling
|
|
3901
3890
|
if (this.useUTC ||
|
|
3902
|
-
|
|
3903
|
-
|
|
3891
|
+
// leap calculation in UTC only
|
|
3892
|
+
(hasNewSafariBug && unit === 'FullYear')) {
|
|
3904
3893
|
return date['setUTC' + unit](value);
|
|
3905
3894
|
}
|
|
3906
3895
|
// Else, local time
|
|
@@ -3916,7 +3905,6 @@
|
|
|
3916
3905
|
*
|
|
3917
3906
|
* @param {Highcharts.TimeOptions} options
|
|
3918
3907
|
*
|
|
3919
|
-
* @return {void}
|
|
3920
3908
|
*/
|
|
3921
3909
|
Time.prototype.update = function (options) {
|
|
3922
3910
|
var useUTC = pick(options && options.useUTC,
|
|
@@ -4005,6 +3993,7 @@
|
|
|
4005
3993
|
Time.prototype.timezoneOffsetFunction = function () {
|
|
4006
3994
|
var time = this,
|
|
4007
3995
|
options = this.options,
|
|
3996
|
+
getTimezoneOffset = options.getTimezoneOffset,
|
|
4008
3997
|
moment = options.moment || win.moment;
|
|
4009
3998
|
if (!this.useUTC) {
|
|
4010
3999
|
return function (timestamp) {
|
|
@@ -4024,9 +4013,9 @@
|
|
|
4024
4013
|
}
|
|
4025
4014
|
}
|
|
4026
4015
|
// If not timezone is set, look for the getTimezoneOffset callback
|
|
4027
|
-
if (this.useUTC &&
|
|
4016
|
+
if (this.useUTC && getTimezoneOffset) {
|
|
4028
4017
|
return function (timestamp) {
|
|
4029
|
-
return
|
|
4018
|
+
return getTimezoneOffset(timestamp.valueOf()) * 60000;
|
|
4030
4019
|
};
|
|
4031
4020
|
}
|
|
4032
4021
|
// Last, use the `timezoneOffset` option if set
|
|
@@ -4160,8 +4149,10 @@
|
|
|
4160
4149
|
* Resolve legacy formats of dateTimeLabelFormats (strings and arrays) into
|
|
4161
4150
|
* an object.
|
|
4162
4151
|
* @private
|
|
4163
|
-
* @param {string|Array<T>|Highcharts.Dictionary<T>} f
|
|
4164
|
-
*
|
|
4152
|
+
* @param {string|Array<T>|Highcharts.Dictionary<T>} f
|
|
4153
|
+
* General format description
|
|
4154
|
+
* @return {Highcharts.Dictionary<T>}
|
|
4155
|
+
* The object definition
|
|
4165
4156
|
*/
|
|
4166
4157
|
Time.prototype.resolveDTLFormat = function (f) {
|
|
4167
4158
|
if (!isObject(f, true)) { // check for string or array
|
|
@@ -4193,6 +4184,7 @@
|
|
|
4193
4184
|
* @param {number} [startOfWeek=1]
|
|
4194
4185
|
*
|
|
4195
4186
|
* @return {Highcharts.AxisTickPositionsArray}
|
|
4187
|
+
* Time positions
|
|
4196
4188
|
*/
|
|
4197
4189
|
Time.prototype.getTimeTicks = function (normalizedInterval, min, max, startOfWeek) {
|
|
4198
4190
|
var time = this,
|
|
@@ -4462,8 +4454,8 @@
|
|
|
4462
4454
|
* In case of loading the library from a `script` tag,
|
|
4463
4455
|
* this option is not needed, it will be loaded from there by default.
|
|
4464
4456
|
*
|
|
4465
|
-
* @type
|
|
4466
|
-
* @since
|
|
4457
|
+
* @type {Function}
|
|
4458
|
+
* @since 8.2.0
|
|
4467
4459
|
* @apioption time.moment
|
|
4468
4460
|
*/
|
|
4469
4461
|
''; // keeps doclets above in JS file
|
|
@@ -6982,6 +6974,7 @@
|
|
|
6982
6974
|
* @function Highcharts.getOptions
|
|
6983
6975
|
*
|
|
6984
6976
|
* @return {Highcharts.Options}
|
|
6977
|
+
* Default options.
|
|
6985
6978
|
*/
|
|
6986
6979
|
function getOptions() {
|
|
6987
6980
|
return defaultOptions;
|
|
@@ -6996,10 +6989,10 @@
|
|
|
6996
6989
|
* @function Highcharts.setOptions
|
|
6997
6990
|
*
|
|
6998
6991
|
* @param {Highcharts.Options} options
|
|
6999
|
-
*
|
|
6992
|
+
* The new custom chart options.
|
|
7000
6993
|
*
|
|
7001
6994
|
* @return {Highcharts.Options}
|
|
7002
|
-
*
|
|
6995
|
+
* Updated options.
|
|
7003
6996
|
*/
|
|
7004
6997
|
function setOptions(options) {
|
|
7005
6998
|
// Copy in the default options
|
|
@@ -7274,7 +7267,6 @@
|
|
|
7274
7267
|
*
|
|
7275
7268
|
* @function Highcharts.Fx#dSetter
|
|
7276
7269
|
*
|
|
7277
|
-
* @return {void}
|
|
7278
7270
|
*/
|
|
7279
7271
|
Fx.prototype.dSetter = function () {
|
|
7280
7272
|
var paths = this.paths,
|
|
@@ -7323,7 +7315,6 @@
|
|
|
7323
7315
|
*
|
|
7324
7316
|
* @function Highcharts.Fx#update
|
|
7325
7317
|
*
|
|
7326
|
-
* @return {void}
|
|
7327
7318
|
*/
|
|
7328
7319
|
Fx.prototype.update = function () {
|
|
7329
7320
|
var elem = this.elem,
|
|
@@ -7362,7 +7353,6 @@
|
|
|
7362
7353
|
* @param {string} unit
|
|
7363
7354
|
* The property unit, for example `px`.
|
|
7364
7355
|
*
|
|
7365
|
-
* @return {void}
|
|
7366
7356
|
*/
|
|
7367
7357
|
Fx.prototype.run = function (from, to, unit) {
|
|
7368
7358
|
var self = this,
|
|
@@ -7384,7 +7374,8 @@
|
|
|
7384
7374
|
};
|
|
7385
7375
|
if (from === to && !this.elem['forceAnimate:' + this.prop]) {
|
|
7386
7376
|
delete options.curAnim[this.prop];
|
|
7387
|
-
if (options.complete &&
|
|
7377
|
+
if (options.complete &&
|
|
7378
|
+
Object.keys(options.curAnim).length === 0) {
|
|
7388
7379
|
options.complete.call(this.elem);
|
|
7389
7380
|
}
|
|
7390
7381
|
}
|
|
@@ -7443,7 +7434,8 @@
|
|
|
7443
7434
|
}
|
|
7444
7435
|
else {
|
|
7445
7436
|
this.pos = options.easing((t - this.startTime) / duration);
|
|
7446
|
-
this.now = this.start + ((this.end -
|
|
7437
|
+
this.now = this.start + ((this.end -
|
|
7438
|
+
this.start) * this.pos);
|
|
7447
7439
|
this.update();
|
|
7448
7440
|
ret = true;
|
|
7449
7441
|
}
|
|
@@ -7485,9 +7477,6 @@
|
|
|
7485
7477
|
/**
|
|
7486
7478
|
* If shifting points, prepend a dummy point to the end path.
|
|
7487
7479
|
* @private
|
|
7488
|
-
* @param {Highcharts.SVGPathArray} arr - array
|
|
7489
|
-
* @param {Highcharts.SVGPathArray} other - array
|
|
7490
|
-
* @return {void}
|
|
7491
7480
|
*/
|
|
7492
7481
|
function prepend(arr, other) {
|
|
7493
7482
|
while (arr.length < fullLength) {
|
|
@@ -7523,9 +7512,6 @@
|
|
|
7523
7512
|
/**
|
|
7524
7513
|
* Copy and append last point until the length matches the end length.
|
|
7525
7514
|
* @private
|
|
7526
|
-
* @param {Highcharts.SVGPathArray} arr - array
|
|
7527
|
-
* @param {Highcharts.SVGPathArray} other - array
|
|
7528
|
-
* @return {void}
|
|
7529
7515
|
*/
|
|
7530
7516
|
function append(arr, other) {
|
|
7531
7517
|
while (arr.length < fullLength) {
|
|
@@ -7597,7 +7583,6 @@
|
|
|
7597
7583
|
*
|
|
7598
7584
|
* @function Highcharts.Fx#fillSetter
|
|
7599
7585
|
*
|
|
7600
|
-
* @return {void}
|
|
7601
7586
|
*/
|
|
7602
7587
|
Fx.prototype.fillSetter = function () {
|
|
7603
7588
|
Fx.prototype.strokeSetter.apply(this, arguments);
|
|
@@ -7607,10 +7592,9 @@
|
|
|
7607
7592
|
*
|
|
7608
7593
|
* @function Highcharts.Fx#strokeSetter
|
|
7609
7594
|
*
|
|
7610
|
-
* @return {void}
|
|
7611
7595
|
*/
|
|
7612
7596
|
Fx.prototype.strokeSetter = function () {
|
|
7613
|
-
this.elem.attr(this.prop, color(this.start).tweenTo(color(this.end), this.pos),
|
|
7597
|
+
this.elem.attr(this.prop, color(this.start).tweenTo(color(this.end), this.pos), void 0, true);
|
|
7614
7598
|
};
|
|
7615
7599
|
/* *
|
|
7616
7600
|
*
|
|
@@ -7853,23 +7837,34 @@
|
|
|
7853
7837
|
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
7854
7838
|
*
|
|
7855
7839
|
* */
|
|
7856
|
-
var SVG_NS = H.SVG_NS
|
|
7840
|
+
var SVG_NS = H.SVG_NS,
|
|
7841
|
+
win = H.win;
|
|
7857
7842
|
var attr = U.attr,
|
|
7858
7843
|
createElement = U.createElement,
|
|
7859
|
-
discardElement = U.discardElement,
|
|
7860
7844
|
error = U.error,
|
|
7845
|
+
isFunction = U.isFunction,
|
|
7861
7846
|
isString = U.isString,
|
|
7862
7847
|
objectEach = U.objectEach,
|
|
7863
7848
|
splat = U.splat;
|
|
7849
|
+
var trustedTypes = win.trustedTypes;
|
|
7864
7850
|
/* *
|
|
7865
7851
|
*
|
|
7866
7852
|
* Constants
|
|
7867
7853
|
*
|
|
7868
7854
|
* */
|
|
7855
|
+
// Create the trusted type policy. This should not be exposed.
|
|
7856
|
+
var trustedTypesPolicy = (trustedTypes &&
|
|
7857
|
+
isFunction(trustedTypes.createPolicy) &&
|
|
7858
|
+
trustedTypes.createPolicy('highcharts', {
|
|
7859
|
+
createHTML: function (s) { return s; }
|
|
7860
|
+
}));
|
|
7861
|
+
var emptyHTML = trustedTypesPolicy ?
|
|
7862
|
+
trustedTypesPolicy.createHTML('') :
|
|
7863
|
+
'';
|
|
7869
7864
|
// In IE8, DOMParser is undefined. IE9 and PhantomJS are only able to parse XML.
|
|
7870
7865
|
var hasValidDOMParser = (function () {
|
|
7871
7866
|
try {
|
|
7872
|
-
return Boolean(new DOMParser().parseFromString(
|
|
7867
|
+
return Boolean(new DOMParser().parseFromString(emptyHTML, 'text/html'));
|
|
7873
7868
|
}
|
|
7874
7869
|
catch (e) {
|
|
7875
7870
|
return false;
|
|
@@ -7952,7 +7947,7 @@
|
|
|
7952
7947
|
* Markup string
|
|
7953
7948
|
*/
|
|
7954
7949
|
AST.setElementHTML = function (el, html) {
|
|
7955
|
-
el.innerHTML =
|
|
7950
|
+
el.innerHTML = AST.emptyHTML; // Clear previous
|
|
7956
7951
|
if (html) {
|
|
7957
7952
|
var ast = new AST(html);
|
|
7958
7953
|
ast.addToDOM(el);
|
|
@@ -7977,9 +7972,12 @@
|
|
|
7977
7972
|
AST.prototype.addToDOM = function (parent) {
|
|
7978
7973
|
/**
|
|
7979
7974
|
* @private
|
|
7980
|
-
* @param {Highcharts.ASTNode} subtree
|
|
7981
|
-
*
|
|
7982
|
-
* @
|
|
7975
|
+
* @param {Highcharts.ASTNode} subtree
|
|
7976
|
+
* HTML/SVG definition
|
|
7977
|
+
* @param {Element} [subParent]
|
|
7978
|
+
* parent node
|
|
7979
|
+
* @return {Highcharts.SVGDOMElement|Highcharts.HTMLDOMElement}
|
|
7980
|
+
* The inserted node.
|
|
7983
7981
|
*/
|
|
7984
7982
|
function recurse(subtree, subParent) {
|
|
7985
7983
|
var ret;
|
|
@@ -8020,7 +8018,8 @@
|
|
|
8020
8018
|
node = element;
|
|
8021
8019
|
}
|
|
8022
8020
|
else {
|
|
8023
|
-
error(
|
|
8021
|
+
error('Highcharts warning: Invalid tagName ' +
|
|
8022
|
+
tagName + ' in config');
|
|
8024
8023
|
}
|
|
8025
8024
|
}
|
|
8026
8025
|
// Add to the tree
|
|
@@ -8050,12 +8049,13 @@
|
|
|
8050
8049
|
var nodes = [];
|
|
8051
8050
|
markup = markup.trim();
|
|
8052
8051
|
var doc;
|
|
8053
|
-
var body;
|
|
8054
8052
|
if (hasValidDOMParser) {
|
|
8055
|
-
doc = new DOMParser().parseFromString(
|
|
8053
|
+
doc = new DOMParser().parseFromString(trustedTypesPolicy ?
|
|
8054
|
+
trustedTypesPolicy.createHTML(markup) :
|
|
8055
|
+
markup, 'text/html');
|
|
8056
8056
|
}
|
|
8057
8057
|
else {
|
|
8058
|
-
body = createElement('div');
|
|
8058
|
+
var body = createElement('div');
|
|
8059
8059
|
body.innerHTML = markup;
|
|
8060
8060
|
doc = { body: body };
|
|
8061
8061
|
}
|
|
@@ -8091,9 +8091,6 @@
|
|
|
8091
8091
|
addTo.push(astNode);
|
|
8092
8092
|
};
|
|
8093
8093
|
[].forEach.call(doc.body.childNodes, function (childNode) { return appendChildNodes(childNode, nodes); });
|
|
8094
|
-
if (body) {
|
|
8095
|
-
discardElement(body);
|
|
8096
|
-
}
|
|
8097
8094
|
return nodes;
|
|
8098
8095
|
};
|
|
8099
8096
|
/* *
|
|
@@ -8280,6 +8277,7 @@
|
|
|
8280
8277
|
'ul',
|
|
8281
8278
|
'#text'
|
|
8282
8279
|
];
|
|
8280
|
+
AST.emptyHTML = emptyHTML;
|
|
8283
8281
|
return AST;
|
|
8284
8282
|
}());
|
|
8285
8283
|
/* *
|
|
@@ -8615,7 +8613,8 @@
|
|
|
8615
8613
|
* @private
|
|
8616
8614
|
*/
|
|
8617
8615
|
function distribute(boxes, len, maxDistance) {
|
|
8618
|
-
|
|
8616
|
+
// Original array will be altered with added .pos
|
|
8617
|
+
var origBoxes = boxes,
|
|
8619
8618
|
reducedLen = origBoxes.reducedLen || len,
|
|
8620
8619
|
sortByRank = function (a,
|
|
8621
8620
|
b) {
|
|
@@ -8870,7 +8869,6 @@
|
|
|
8870
8869
|
*
|
|
8871
8870
|
* @param {Highcharts.SVGDOMElement} element
|
|
8872
8871
|
*
|
|
8873
|
-
* @return {void}
|
|
8874
8872
|
*/
|
|
8875
8873
|
SVGElement.prototype._defaultSetter = function (value, key, element) {
|
|
8876
8874
|
element.setAttribute(key, value);
|
|
@@ -9023,7 +9021,8 @@
|
|
|
9023
9021
|
alignByTranslate = this.alignByTranslate;
|
|
9024
9022
|
alignTo = this.alignTo;
|
|
9025
9023
|
}
|
|
9026
|
-
box = pick(box, renderer[alignTo], alignTo === 'scrollablePlotBox' ?
|
|
9024
|
+
box = pick(box, renderer[alignTo], alignTo === 'scrollablePlotBox' ?
|
|
9025
|
+
renderer.plotBox : void 0, renderer);
|
|
9027
9026
|
// Assign variables
|
|
9028
9027
|
var align = alignOptions.align,
|
|
9029
9028
|
vAlign = alignOptions.verticalAlign;
|
|
@@ -9319,7 +9318,8 @@
|
|
|
9319
9318
|
// Let the shadow follow the main element
|
|
9320
9319
|
if (!this.styledMode &&
|
|
9321
9320
|
this.shadows &&
|
|
9322
|
-
/^(width|height|visibility|x|y|d|transform|cx|cy|r)
|
|
9321
|
+
/^(width|height|visibility|x|y|d|transform|cx|cy|r)$/
|
|
9322
|
+
.test(key)) {
|
|
9323
9323
|
this.updateShadows(key, val, setter);
|
|
9324
9324
|
}
|
|
9325
9325
|
}
|
|
@@ -9708,7 +9708,6 @@
|
|
|
9708
9708
|
* @private
|
|
9709
9709
|
* @function Highcharts.SVGElement#destroyShadows
|
|
9710
9710
|
*
|
|
9711
|
-
* @return {void}
|
|
9712
9711
|
*/
|
|
9713
9712
|
SVGElement.prototype.destroyShadows = function () {
|
|
9714
9713
|
(this.shadows || []).forEach(function (shadow) {
|
|
@@ -9948,8 +9947,7 @@
|
|
|
9948
9947
|
bBox.height = height = ({
|
|
9949
9948
|
'11px,17': 14,
|
|
9950
9949
|
'13px,20': 16
|
|
9951
|
-
}[
|
|
9952
|
-
styles.fontSize + ',' + Math.round(height)] ||
|
|
9950
|
+
}[(fontSize || '') + "," + Math.round(height)] ||
|
|
9953
9951
|
height);
|
|
9954
9952
|
}
|
|
9955
9953
|
// Adjust for rotated text
|
|
@@ -10628,12 +10626,13 @@
|
|
|
10628
10626
|
* @function Highcharts.SVGElement#translate
|
|
10629
10627
|
*
|
|
10630
10628
|
* @param {number} x
|
|
10631
|
-
*
|
|
10629
|
+
* The x value.
|
|
10632
10630
|
*
|
|
10633
10631
|
* @param {number} y
|
|
10634
|
-
*
|
|
10632
|
+
* The y value.
|
|
10635
10633
|
*
|
|
10636
10634
|
* @return {Highcharts.SVGElement}
|
|
10635
|
+
* Translated element.
|
|
10637
10636
|
*/
|
|
10638
10637
|
SVGElement.prototype.translate = function (x, y) {
|
|
10639
10638
|
return this.attr({
|
|
@@ -10727,7 +10726,6 @@
|
|
|
10727
10726
|
*
|
|
10728
10727
|
* @param {Highcharts.SVGDOMElement} element
|
|
10729
10728
|
*
|
|
10730
|
-
* @return {void}
|
|
10731
10729
|
*/
|
|
10732
10730
|
SVGElement.prototype.visibilitySetter = function (value, key, element) {
|
|
10733
10731
|
// IE9-11 doesn't handle visibilty:inherit well, so we remove the
|
|
@@ -10743,10 +10741,6 @@
|
|
|
10743
10741
|
/**
|
|
10744
10742
|
* @private
|
|
10745
10743
|
* @function Highcharts.SVGElement#xGetter
|
|
10746
|
-
*
|
|
10747
|
-
* @param {string} key
|
|
10748
|
-
*
|
|
10749
|
-
* @return {number|string|null}
|
|
10750
10744
|
*/
|
|
10751
10745
|
SVGElement.prototype.xGetter = function (key) {
|
|
10752
10746
|
if (this.element.nodeName === 'circle') {
|
|
@@ -10762,9 +10756,6 @@
|
|
|
10762
10756
|
/**
|
|
10763
10757
|
* @private
|
|
10764
10758
|
* @function Highcharts.SVGElement#zIndexSetter
|
|
10765
|
-
* @param {number} [value]
|
|
10766
|
-
* @param {string} [key]
|
|
10767
|
-
* @return {boolean}
|
|
10768
10759
|
*/
|
|
10769
10760
|
SVGElement.prototype.zIndexSetter = function (value, key) {
|
|
10770
10761
|
var renderer = this.renderer,
|
|
@@ -11249,7 +11240,8 @@
|
|
|
11249
11240
|
}
|
|
11250
11241
|
});
|
|
11251
11242
|
this.text.css(textStyles_1);
|
|
11252
|
-
var isWidth = 'width' in textStyles_1, isFontStyle = ('fontSize' in textStyles_1 ||
|
|
11243
|
+
var isWidth = 'width' in textStyles_1, isFontStyle = ('fontSize' in textStyles_1 ||
|
|
11244
|
+
'fontWeight' in textStyles_1);
|
|
11253
11245
|
// Update existing text, box (#9400, #12163)
|
|
11254
11246
|
if (isFontStyle) {
|
|
11255
11247
|
this.updateTextPadding();
|
|
@@ -11419,13 +11411,15 @@
|
|
|
11419
11411
|
this.renderer.symbol(this.symbolKey) :
|
|
11420
11412
|
this.renderer.rect();
|
|
11421
11413
|
box.addClass(// Don't use label className for buttons
|
|
11422
|
-
(this.className === 'button' ?
|
|
11423
|
-
|
|
11414
|
+
(this.className === 'button' ?
|
|
11415
|
+
'' : 'highcharts-label-box') +
|
|
11416
|
+
(this.className ?
|
|
11417
|
+
' highcharts-' + this.className + '-box' : ''));
|
|
11424
11418
|
box.add(this);
|
|
11425
11419
|
}
|
|
11426
11420
|
crispAdjust = this.getCrispAdjust();
|
|
11427
11421
|
attribs.x = crispAdjust;
|
|
11428
|
-
attribs.y = (this.baseline ? -this.baselineOffset : 0) + crispAdjust;
|
|
11422
|
+
attribs.y = ((this.baseline ? -this.baselineOffset : 0) + crispAdjust);
|
|
11429
11423
|
// Apply the box attributes
|
|
11430
11424
|
attribs.width = Math.round(this.width);
|
|
11431
11425
|
attribs.height = Math.round(this.height);
|
|
@@ -11448,8 +11442,7 @@
|
|
|
11448
11442
|
if (defined(this.widthSetting) &&
|
|
11449
11443
|
this.bBox &&
|
|
11450
11444
|
(this.textAlign === 'center' || this.textAlign === 'right')) {
|
|
11451
|
-
textX += { center: 0.5, right: 1 }[this.textAlign] *
|
|
11452
|
-
(this.widthSetting - this.bBox.width);
|
|
11445
|
+
textX += { center: 0.5, right: 1 }[this.textAlign] * (this.widthSetting - this.bBox.width);
|
|
11453
11446
|
}
|
|
11454
11447
|
// update if anything changed
|
|
11455
11448
|
if (textX !== text.x || textY !== text.y) {
|
|
@@ -11477,7 +11470,9 @@
|
|
|
11477
11470
|
padding);
|
|
11478
11471
|
var paddingRight = pick(this.paddingRight,
|
|
11479
11472
|
padding);
|
|
11480
|
-
return (this.widthSetting || this.bBox.width || 0) +
|
|
11473
|
+
return ((this.widthSetting || this.bBox.width || 0) +
|
|
11474
|
+
paddingLeft +
|
|
11475
|
+
paddingRight);
|
|
11481
11476
|
};
|
|
11482
11477
|
SVGLabel.prototype.xSetter = function (value) {
|
|
11483
11478
|
this.x = value; // for animation getter
|
|
@@ -11498,7 +11493,12 @@
|
|
|
11498
11493
|
* Static Properties
|
|
11499
11494
|
*
|
|
11500
11495
|
* */
|
|
11501
|
-
SVGLabel.emptyBBox = {
|
|
11496
|
+
SVGLabel.emptyBBox = {
|
|
11497
|
+
width: 0,
|
|
11498
|
+
height: 0,
|
|
11499
|
+
x: 0,
|
|
11500
|
+
y: 0
|
|
11501
|
+
};
|
|
11502
11502
|
/**
|
|
11503
11503
|
* For labels, these CSS properties are applied to the `text` node directly.
|
|
11504
11504
|
*
|
|
@@ -11861,7 +11861,6 @@
|
|
|
11861
11861
|
*
|
|
11862
11862
|
* @private
|
|
11863
11863
|
*
|
|
11864
|
-
* @return {void}
|
|
11865
11864
|
*/
|
|
11866
11865
|
TextBuilder.prototype.modifyDOM = function () {
|
|
11867
11866
|
var _this = this;
|
|
@@ -12005,7 +12004,7 @@
|
|
|
12005
12004
|
TextBuilder.prototype.getLineHeight = function (node) {
|
|
12006
12005
|
var fontSizeStyle;
|
|
12007
12006
|
// If the node is a text node, use its parent
|
|
12008
|
-
var element = node.nodeType === win.Node.TEXT_NODE ?
|
|
12007
|
+
var element = (node.nodeType === win.Node.TEXT_NODE) ?
|
|
12009
12008
|
node.parentElement :
|
|
12010
12009
|
node;
|
|
12011
12010
|
if (!this.renderer.styledMode) {
|
|
@@ -12027,22 +12026,23 @@
|
|
|
12027
12026
|
*
|
|
12028
12027
|
* @param {ASTNode[]} nodes The AST nodes
|
|
12029
12028
|
*
|
|
12030
|
-
* @return {void}
|
|
12031
12029
|
*/
|
|
12032
12030
|
TextBuilder.prototype.modifyTree = function (nodes) {
|
|
12033
12031
|
var _this = this;
|
|
12034
12032
|
var modifyChild = function (node,
|
|
12035
12033
|
i) {
|
|
12036
|
-
var
|
|
12037
|
-
|
|
12038
|
-
|
|
12034
|
+
var _a = node.attributes,
|
|
12035
|
+
attributes = _a === void 0 ? {} : _a,
|
|
12036
|
+
children = node.children,
|
|
12037
|
+
tagName = node.tagName,
|
|
12038
|
+
styledMode = _this.renderer.styledMode;
|
|
12039
12039
|
// Apply styling to text tags
|
|
12040
12040
|
if (tagName === 'b' || tagName === 'strong') {
|
|
12041
12041
|
if (styledMode) {
|
|
12042
12042
|
attributes['class'] = 'highcharts-strong'; // eslint-disable-line dot-notation
|
|
12043
12043
|
}
|
|
12044
12044
|
else {
|
|
12045
|
-
attributes.style = 'font-weight:bold;' + (attributes.style || '');
|
|
12045
|
+
attributes.style = ('font-weight:bold;' + (attributes.style || ''));
|
|
12046
12046
|
}
|
|
12047
12047
|
}
|
|
12048
12048
|
else if (tagName === 'i' || tagName === 'em') {
|
|
@@ -12050,13 +12050,14 @@
|
|
|
12050
12050
|
attributes['class'] = 'highcharts-emphasized'; // eslint-disable-line dot-notation
|
|
12051
12051
|
}
|
|
12052
12052
|
else {
|
|
12053
|
-
attributes.style = 'font-style:italic;' + (attributes.style || '');
|
|
12053
|
+
attributes.style = ('font-style:italic;' + (attributes.style || ''));
|
|
12054
12054
|
}
|
|
12055
12055
|
}
|
|
12056
12056
|
// Modify attributes
|
|
12057
12057
|
if (isString(attributes.style)) {
|
|
12058
12058
|
attributes.style = attributes.style.replace(/(;| |^)color([ :])/, '$1fill$2');
|
|
12059
12059
|
}
|
|
12060
|
+
// Handle breaks
|
|
12060
12061
|
if (tagName === 'br') {
|
|
12061
12062
|
attributes['class'] = 'highcharts-br'; // eslint-disable-line dot-notation
|
|
12062
12063
|
node.textContent = '\u200B'; // zero-width space
|
|
@@ -12066,14 +12067,23 @@
|
|
|
12066
12067
|
nextNode.textContent =
|
|
12067
12068
|
nextNode.textContent.replace(/^ +/gm, '');
|
|
12068
12069
|
}
|
|
12070
|
+
// If an anchor has direct text node children, the text is unable to
|
|
12071
|
+
// wrap because there is no `getSubStringLength` function on the
|
|
12072
|
+
// element. Therefore we need to wrap the child text node or nodes
|
|
12073
|
+
// in a tspan. #16173.
|
|
12074
|
+
}
|
|
12075
|
+
else if (tagName === 'a' &&
|
|
12076
|
+
children &&
|
|
12077
|
+
children.some(function (child) { return child.tagName === '#text'; })) {
|
|
12078
|
+
node.children = [{ children: children, tagName: 'tspan' }];
|
|
12069
12079
|
}
|
|
12070
12080
|
if (tagName !== '#text' && tagName !== 'a') {
|
|
12071
12081
|
node.tagName = 'tspan';
|
|
12072
12082
|
}
|
|
12073
12083
|
node.attributes = attributes;
|
|
12074
12084
|
// Recurse
|
|
12075
|
-
if (
|
|
12076
|
-
|
|
12085
|
+
if (children) {
|
|
12086
|
+
children
|
|
12077
12087
|
.filter(function (c) { return c.tagName !== '#text'; })
|
|
12078
12088
|
.forEach(modifyChild);
|
|
12079
12089
|
}
|
|
@@ -12410,7 +12420,7 @@
|
|
|
12410
12420
|
this.url = this.getReferenceURL();
|
|
12411
12421
|
// Add description
|
|
12412
12422
|
var desc = this.createElement('desc').add();
|
|
12413
|
-
desc.element.appendChild(doc.createTextNode('Created with Highcharts 9.3.
|
|
12423
|
+
desc.element.appendChild(doc.createTextNode('Created with Highcharts 9.3.2'));
|
|
12414
12424
|
renderer.defs = this.createElement('defs').add();
|
|
12415
12425
|
renderer.allowHTML = allowHTML;
|
|
12416
12426
|
renderer.forExport = forExport;
|
|
@@ -12602,6 +12612,7 @@
|
|
|
12602
12612
|
* @function Highcharts.SVGRenderer#destroy
|
|
12603
12613
|
*
|
|
12604
12614
|
* @return {null}
|
|
12615
|
+
* Pass through value.
|
|
12605
12616
|
*/
|
|
12606
12617
|
SVGRenderer.prototype.destroy = function () {
|
|
12607
12618
|
var renderer = this,
|
|
@@ -13278,6 +13289,7 @@
|
|
|
13278
13289
|
* Additional options, depending on the actual symbol drawn.
|
|
13279
13290
|
*
|
|
13280
13291
|
* @return {Highcharts.SVGElement}
|
|
13292
|
+
* SVG symbol.
|
|
13281
13293
|
*/
|
|
13282
13294
|
SVGRenderer.prototype.symbol = function (symbol, x, y, width, height, options) {
|
|
13283
13295
|
var ren = this,
|
|
@@ -13507,8 +13519,8 @@
|
|
|
13507
13519
|
parentVal = element.getAttribute(key);
|
|
13508
13520
|
for (var i = 0, tspan = void 0; i < tspans.length; i++) {
|
|
13509
13521
|
tspan = tspans[i];
|
|
13510
|
-
// If the x values are equal, the tspan represents a
|
|
13511
|
-
//
|
|
13522
|
+
// If the x values are equal, the tspan represents a line
|
|
13523
|
+
// break
|
|
13512
13524
|
if (tspan.getAttribute(key) === parentVal) {
|
|
13513
13525
|
tspan.setAttribute(key, value);
|
|
13514
13526
|
}
|
|
@@ -13572,14 +13584,6 @@
|
|
|
13572
13584
|
*
|
|
13573
13585
|
* @private
|
|
13574
13586
|
* @function Highcharts.SVGRenderer#rotCorr
|
|
13575
|
-
*
|
|
13576
|
-
* @param {number} baseline
|
|
13577
|
-
*
|
|
13578
|
-
* @param {number} rotation
|
|
13579
|
-
*
|
|
13580
|
-
* @param {boolean} [alterY]
|
|
13581
|
-
*
|
|
13582
|
-
* @param {Highcharts.PositionObject}
|
|
13583
13587
|
*/
|
|
13584
13588
|
SVGRenderer.prototype.rotCorr = function (baseline, rotation, alterY) {
|
|
13585
13589
|
var y = baseline;
|
|
@@ -13883,7 +13887,6 @@
|
|
|
13883
13887
|
*
|
|
13884
13888
|
* @private
|
|
13885
13889
|
* @function Highcharts.SVGRenderer#alignElements
|
|
13886
|
-
* @return {void}
|
|
13887
13890
|
*/
|
|
13888
13891
|
SVGRenderer.prototype.alignElements = function () {
|
|
13889
13892
|
this.alignedObjects.forEach(function (el) { return el.align(); });
|
|
@@ -14213,10 +14216,12 @@
|
|
|
14213
14216
|
HTMLElement.composedClasses.push(SVGElementClass);
|
|
14214
14217
|
var htmlElementProto = HTMLElement.prototype,
|
|
14215
14218
|
svgElementProto = SVGElementClass.prototype;
|
|
14216
|
-
svgElementProto.getSpanCorrection = htmlElementProto
|
|
14219
|
+
svgElementProto.getSpanCorrection = htmlElementProto
|
|
14220
|
+
.getSpanCorrection;
|
|
14217
14221
|
svgElementProto.htmlCss = htmlElementProto.htmlCss;
|
|
14218
14222
|
svgElementProto.htmlGetBBox = htmlElementProto.htmlGetBBox;
|
|
14219
|
-
svgElementProto.htmlUpdateTransform = htmlElementProto
|
|
14223
|
+
svgElementProto.htmlUpdateTransform = htmlElementProto
|
|
14224
|
+
.htmlUpdateTransform;
|
|
14220
14225
|
svgElementProto.setSpanRotation = htmlElementProto.setSpanRotation;
|
|
14221
14226
|
}
|
|
14222
14227
|
return SVGElementClass;
|
|
@@ -14510,15 +14515,16 @@
|
|
|
14510
14515
|
* @function Highcharts.SVGRenderer#html
|
|
14511
14516
|
*
|
|
14512
14517
|
* @param {string} str
|
|
14513
|
-
*
|
|
14518
|
+
* The text of (subset) HTML to draw.
|
|
14514
14519
|
*
|
|
14515
14520
|
* @param {number} x
|
|
14516
|
-
*
|
|
14521
|
+
* The x position of the text's lower left corner.
|
|
14517
14522
|
*
|
|
14518
14523
|
* @param {number} y
|
|
14519
|
-
*
|
|
14524
|
+
* The y position of the text's lower left corner.
|
|
14520
14525
|
*
|
|
14521
14526
|
* @return {Highcharts.HTMLDOMElement}
|
|
14527
|
+
* HTML element.
|
|
14522
14528
|
*/
|
|
14523
14529
|
HTMLRenderer.prototype.html = function (str, x, y) {
|
|
14524
14530
|
var wrapper = this.createElement('span'), element = wrapper.element, renderer = wrapper.renderer, isSVG = renderer.isSVG, addSetters = function (gWrapper, style) {
|
|
@@ -14628,8 +14634,7 @@
|
|
|
14628
14634
|
* @private
|
|
14629
14635
|
* @param {*} value
|
|
14630
14636
|
* @param {string} key
|
|
14631
|
-
|
|
14632
|
-
*/
|
|
14637
|
+
*/
|
|
14633
14638
|
function translateSetter(value, key) {
|
|
14634
14639
|
parentGroup[key] = value;
|
|
14635
14640
|
if (key === 'translateX') {
|
|
@@ -14652,7 +14657,9 @@
|
|
|
14652
14657
|
display: parentGroup.display,
|
|
14653
14658
|
opacity: parentGroup.opacity,
|
|
14654
14659
|
cursor: parentGroupStyles.cursor,
|
|
14655
|
-
pointerEvents:
|
|
14660
|
+
pointerEvents: (
|
|
14661
|
+
// #5595
|
|
14662
|
+
parentGroupStyles.pointerEvents),
|
|
14656
14663
|
visibility: parentGroup.visibility
|
|
14657
14664
|
// the top group is appended to container
|
|
14658
14665
|
}, htmlGroup || container);
|
|
@@ -17764,7 +17771,7 @@
|
|
|
17764
17771
|
* @param {boolean} [noLabel=false]
|
|
17765
17772
|
* Whether to disable the label or not. Defaults to false.
|
|
17766
17773
|
*
|
|
17767
|
-
* @param {
|
|
17774
|
+
* @param {Object} [parameters]
|
|
17768
17775
|
* Optional parameters for the tick.
|
|
17769
17776
|
*/
|
|
17770
17777
|
var Tick = /** @class */ (function () {
|
|
@@ -18018,7 +18025,7 @@
|
|
|
18018
18025
|
* @return {Highcharts.PositionObject}
|
|
18019
18026
|
* The tick position.
|
|
18020
18027
|
*
|
|
18021
|
-
* @
|
|
18028
|
+
* @emits Highcharts.Tick#event:afterGetPosition
|
|
18022
18029
|
*/
|
|
18023
18030
|
Tick.prototype.getPosition = function (horiz, tickPos, tickmarkOffset, old) {
|
|
18024
18031
|
var axis = this.axis,
|
|
@@ -18058,9 +18065,7 @@
|
|
|
18058
18065
|
};
|
|
18059
18066
|
/**
|
|
18060
18067
|
* Get the x, y position of the tick label
|
|
18061
|
-
*
|
|
18062
18068
|
* @private
|
|
18063
|
-
* @return {Highcharts.PositionObject}
|
|
18064
18069
|
*/
|
|
18065
18070
|
Tick.prototype.getLabelPosition = function (x, y, label, horiz, labelOptions, tickmarkOffset, index, step) {
|
|
18066
18071
|
var axis = this.axis,
|
|
@@ -18710,8 +18715,8 @@
|
|
|
18710
18715
|
* @param {AxisOptions} userOptions
|
|
18711
18716
|
* Axis options.
|
|
18712
18717
|
*
|
|
18713
|
-
* @
|
|
18714
|
-
* @
|
|
18718
|
+
* @emits Highcharts.Axis#event:afterInit
|
|
18719
|
+
* @emits Highcharts.Axis#event:init
|
|
18715
18720
|
*/
|
|
18716
18721
|
Axis.prototype.init = function (chart, userOptions) {
|
|
18717
18722
|
var isXAxis = userOptions.isX,
|
|
@@ -18747,7 +18752,8 @@
|
|
|
18747
18752
|
*/
|
|
18748
18753
|
axis.coll = axis.coll || (isXAxis ? 'xAxis' : 'yAxis');
|
|
18749
18754
|
fireEvent(this, 'init', { userOptions: userOptions });
|
|
18750
|
-
|
|
18755
|
+
// Needed in setOptions
|
|
18756
|
+
axis.opposite = pick(userOptions.opposite, axis.opposite);
|
|
18751
18757
|
/**
|
|
18752
18758
|
* The side on which the axis is rendered. 0 is top, 1 is right, 2
|
|
18753
18759
|
* is bottom and 3 is left.
|
|
@@ -18912,7 +18918,7 @@
|
|
|
18912
18918
|
* @param {Highcharts.AxisOptions} userOptions
|
|
18913
18919
|
* Axis options.
|
|
18914
18920
|
*
|
|
18915
|
-
* @
|
|
18921
|
+
* @emits Highcharts.Axis#event:afterSetOptions
|
|
18916
18922
|
*/
|
|
18917
18923
|
Axis.prototype.setOptions = function (userOptions) {
|
|
18918
18924
|
this.options = merge(AxisDefaults.defaultXAxisOptions, (this.coll === 'yAxis') && AxisDefaults.defaultYAxisOptions, [
|
|
@@ -19005,8 +19011,8 @@
|
|
|
19005
19011
|
* @private
|
|
19006
19012
|
* @function Highcharts.Axis#getSeriesExtremes
|
|
19007
19013
|
*
|
|
19008
|
-
* @
|
|
19009
|
-
* @
|
|
19014
|
+
* @emits Highcharts.Axis#event:afterGetSeriesExtremes
|
|
19015
|
+
* @emits Highcharts.Axis#event:getSeriesExtremes
|
|
19010
19016
|
*/
|
|
19011
19017
|
Axis.prototype.getSeriesExtremes = function () {
|
|
19012
19018
|
var axis = this,
|
|
@@ -19104,26 +19110,6 @@
|
|
|
19104
19110
|
*
|
|
19105
19111
|
* @private
|
|
19106
19112
|
* @function Highcharts.Axis#translate
|
|
19107
|
-
*
|
|
19108
|
-
* @param {number} val
|
|
19109
|
-
* TO-DO: parameter description
|
|
19110
|
-
*
|
|
19111
|
-
* @param {boolean|null} [backwards]
|
|
19112
|
-
* TO-DO: parameter description
|
|
19113
|
-
*
|
|
19114
|
-
* @param {boolean|null} [cvsCoord]
|
|
19115
|
-
* TO-DO: parameter description
|
|
19116
|
-
*
|
|
19117
|
-
* @param {boolean|null} [old]
|
|
19118
|
-
* TO-DO: parameter description
|
|
19119
|
-
*
|
|
19120
|
-
* @param {boolean} [handleLog]
|
|
19121
|
-
* TO-DO: parameter description
|
|
19122
|
-
*
|
|
19123
|
-
* @param {number} [pointPlacement]
|
|
19124
|
-
* TO-DO: parameter description
|
|
19125
|
-
*
|
|
19126
|
-
* @return {number|undefined}
|
|
19127
19113
|
*/
|
|
19128
19114
|
Axis.prototype.translate = function (val, backwards, cvsCoord, old, handleLog, pointPlacement) {
|
|
19129
19115
|
var axis = (this.linkedParent || this), // #1417
|
|
@@ -19357,6 +19343,7 @@
|
|
|
19357
19343
|
* @function Highcharts.Axis#getMinorTickInterval
|
|
19358
19344
|
*
|
|
19359
19345
|
* @return {number|"auto"|null}
|
|
19346
|
+
* Legacy option
|
|
19360
19347
|
*/
|
|
19361
19348
|
Axis.prototype.getMinorTickInterval = function () {
|
|
19362
19349
|
var options = this.options;
|
|
@@ -19466,7 +19453,8 @@
|
|
|
19466
19453
|
if (xData.length > 1) {
|
|
19467
19454
|
for (i = loopLength; i > 0; i--) {
|
|
19468
19455
|
distance = xData[i] - xData[i - 1];
|
|
19469
|
-
if (!closestDataRange ||
|
|
19456
|
+
if (!closestDataRange ||
|
|
19457
|
+
distance < closestDataRange) {
|
|
19470
19458
|
closestDataRange = distance;
|
|
19471
19459
|
}
|
|
19472
19460
|
}
|
|
@@ -19521,8 +19509,6 @@
|
|
|
19521
19509
|
*
|
|
19522
19510
|
* @private
|
|
19523
19511
|
* @function Highcharts.Axis#getClosest
|
|
19524
|
-
*
|
|
19525
|
-
* @return {number}
|
|
19526
19512
|
*/
|
|
19527
19513
|
Axis.prototype.getClosest = function () {
|
|
19528
19514
|
var ret;
|
|
@@ -19641,7 +19627,7 @@
|
|
|
19641
19627
|
* @private
|
|
19642
19628
|
* @function Highcharts.Axis#setAxisTranslation
|
|
19643
19629
|
*
|
|
19644
|
-
* @
|
|
19630
|
+
* @emits Highcharts.Axis#event:afterSetAxisTranslation
|
|
19645
19631
|
*/
|
|
19646
19632
|
Axis.prototype.setAxisTranslation = function () {
|
|
19647
19633
|
var axis = this,
|
|
@@ -19677,7 +19663,9 @@
|
|
|
19677
19663
|
if (!axis.single || hasCategories) {
|
|
19678
19664
|
// TODO: series should internally set x- and y-
|
|
19679
19665
|
// pointPlacement to simplify this logic.
|
|
19680
|
-
var isPointPlacementAxis = series.is('xrange') ?
|
|
19666
|
+
var isPointPlacementAxis = series.is('xrange') ?
|
|
19667
|
+
!isXAxis :
|
|
19668
|
+
isXAxis;
|
|
19681
19669
|
// minPointOffset is the value padding to the left of
|
|
19682
19670
|
// the axis in order to make room for points with a
|
|
19683
19671
|
// pointRange, typically columns. When the
|
|
@@ -19696,7 +19684,7 @@
|
|
|
19696
19684
|
});
|
|
19697
19685
|
}
|
|
19698
19686
|
// Record minPointOffset and pointRangePadding
|
|
19699
|
-
ordinalCorrection = axis.ordinal && axis.ordinal.slope && closestPointRange ?
|
|
19687
|
+
ordinalCorrection = (axis.ordinal && axis.ordinal.slope && closestPointRange) ?
|
|
19700
19688
|
axis.ordinal.slope / closestPointRange :
|
|
19701
19689
|
1; // #988, #1853
|
|
19702
19690
|
axis.minPointOffset = minPointOffset =
|
|
@@ -19725,8 +19713,6 @@
|
|
|
19725
19713
|
/**
|
|
19726
19714
|
* @private
|
|
19727
19715
|
* @function Highcharts.Axis#minFromRange
|
|
19728
|
-
*
|
|
19729
|
-
* @return {number|undefined}
|
|
19730
19716
|
*/
|
|
19731
19717
|
Axis.prototype.minFromRange = function () {
|
|
19732
19718
|
var axis = this;
|
|
@@ -19742,7 +19728,7 @@
|
|
|
19742
19728
|
* @param {boolean} secondPass
|
|
19743
19729
|
* TO-DO: parameter description
|
|
19744
19730
|
*
|
|
19745
|
-
* @
|
|
19731
|
+
* @emits Highcharts.Axis#event:foundExtremes
|
|
19746
19732
|
*/
|
|
19747
19733
|
Axis.prototype.setTickInterval = function (secondPass) {
|
|
19748
19734
|
var axis = this,
|
|
@@ -19939,12 +19925,13 @@
|
|
|
19939
19925
|
// First process all series assigned to that axis.
|
|
19940
19926
|
axis.series.forEach(function (series) {
|
|
19941
19927
|
// Allows filtering out points outside the plot area.
|
|
19942
|
-
series.forceCrop = series.forceCropping &&
|
|
19928
|
+
series.forceCrop = (series.forceCropping &&
|
|
19929
|
+
series.forceCropping());
|
|
19943
19930
|
series.processData(hasExtemesChanged_1);
|
|
19944
19931
|
});
|
|
19945
|
-
// Then apply grouping if needed.
|
|
19946
|
-
//
|
|
19947
|
-
//
|
|
19932
|
+
// Then apply grouping if needed. The hasExtemesChanged helps to
|
|
19933
|
+
// decide if the data grouping should be skipped in the further
|
|
19934
|
+
// calculations #16319.
|
|
19948
19935
|
fireEvent(this, 'postProcessData', { hasExtemesChanged: hasExtemesChanged_1 });
|
|
19949
19936
|
}
|
|
19950
19937
|
// set the translation factor used in translate function
|
|
@@ -19989,7 +19976,7 @@
|
|
|
19989
19976
|
* @private
|
|
19990
19977
|
* @function Highcharts.Axis#setTickPositions
|
|
19991
19978
|
*
|
|
19992
|
-
* @
|
|
19979
|
+
* @emits Highcharts.Axis#event:afterSetTickPositions
|
|
19993
19980
|
*/
|
|
19994
19981
|
Axis.prototype.setTickPositions = function () {
|
|
19995
19982
|
var axis = this,
|
|
@@ -19998,8 +19985,8 @@
|
|
|
19998
19985
|
minorTickIntervalOption = this.getMinorTickInterval(),
|
|
19999
19986
|
hasVerticalPanning = this.hasVerticalPanning(),
|
|
20000
19987
|
isColorAxis = this.coll === 'colorAxis',
|
|
20001
|
-
startOnTick = (isColorAxis || !hasVerticalPanning) && options.startOnTick,
|
|
20002
|
-
endOnTick = (isColorAxis || !hasVerticalPanning) && options.endOnTick;
|
|
19988
|
+
startOnTick = ((isColorAxis || !hasVerticalPanning) && options.startOnTick),
|
|
19989
|
+
endOnTick = ((isColorAxis || !hasVerticalPanning) && options.endOnTick);
|
|
20003
19990
|
var tickPositions,
|
|
20004
19991
|
tickPositioner = options.tickPositioner;
|
|
20005
19992
|
// Set the tickmarkOffset
|
|
@@ -20246,7 +20233,9 @@
|
|
|
20246
20233
|
axis.softThreshold ? 0 : null);
|
|
20247
20234
|
var len,
|
|
20248
20235
|
i;
|
|
20249
|
-
if (axis.hasData() &&
|
|
20236
|
+
if (axis.hasData() &&
|
|
20237
|
+
isNumber(axis.min) &&
|
|
20238
|
+
isNumber(axis.max)) { // #14769
|
|
20250
20239
|
if (currentTickAmount < tickAmount) {
|
|
20251
20240
|
while (tickPositions.length < tickAmount) {
|
|
20252
20241
|
// Extend evenly for both sides unless we're on the
|
|
@@ -20298,7 +20287,7 @@
|
|
|
20298
20287
|
* @private
|
|
20299
20288
|
* @function Highcharts.Axis#setScale
|
|
20300
20289
|
*
|
|
20301
|
-
* @
|
|
20290
|
+
* @emits Highcharts.Axis#event:afterSetScale
|
|
20302
20291
|
*/
|
|
20303
20292
|
Axis.prototype.setScale = function () {
|
|
20304
20293
|
var axis = this;
|
|
@@ -20386,7 +20375,7 @@
|
|
|
20386
20375
|
* @param {*} [eventArguments]
|
|
20387
20376
|
* Arguments to be accessed in event handler.
|
|
20388
20377
|
*
|
|
20389
|
-
* @
|
|
20378
|
+
* @emits Highcharts.Axis#event:setExtremes
|
|
20390
20379
|
*/
|
|
20391
20380
|
Axis.prototype.setExtremes = function (newMin, newMax, redraw, animation, eventArguments) {
|
|
20392
20381
|
var axis = this,
|
|
@@ -20416,14 +20405,6 @@
|
|
|
20416
20405
|
*
|
|
20417
20406
|
* @private
|
|
20418
20407
|
* @function Highcharts.Axis#zoom
|
|
20419
|
-
*
|
|
20420
|
-
* @param {number} newMin
|
|
20421
|
-
* TO-DO: parameter description
|
|
20422
|
-
*
|
|
20423
|
-
* @param {number} newMax
|
|
20424
|
-
* TO-DO: parameter description
|
|
20425
|
-
*
|
|
20426
|
-
* @return {boolean}
|
|
20427
20408
|
*/
|
|
20428
20409
|
Axis.prototype.zoom = function (newMin, newMax) {
|
|
20429
20410
|
var axis = this,
|
|
@@ -20634,8 +20615,6 @@
|
|
|
20634
20615
|
*
|
|
20635
20616
|
* @private
|
|
20636
20617
|
* @function Highcharts.Axis#labelMetrics
|
|
20637
|
-
*
|
|
20638
|
-
* @return {Highcharts.FontMetricsObject}
|
|
20639
20618
|
*/
|
|
20640
20619
|
Axis.prototype.labelMetrics = function () {
|
|
20641
20620
|
var index = this.tickPositions && this.tickPositions[0] || 0;
|
|
@@ -20648,8 +20627,6 @@
|
|
|
20648
20627
|
*
|
|
20649
20628
|
* @private
|
|
20650
20629
|
* @function Highcharts.Axis#unsquish
|
|
20651
|
-
*
|
|
20652
|
-
* @return {number}
|
|
20653
20630
|
*/
|
|
20654
20631
|
Axis.prototype.unsquish = function () {
|
|
20655
20632
|
var labelOptions = this.options.labels,
|
|
@@ -21011,7 +20988,7 @@
|
|
|
21011
20988
|
* @private
|
|
21012
20989
|
* @function Highcharts.Axis#getOffset
|
|
21013
20990
|
*
|
|
21014
|
-
* @
|
|
20991
|
+
* @emits Highcharts.Axis#event:afterGetOffset
|
|
21015
20992
|
*/
|
|
21016
20993
|
Axis.prototype.getOffset = function () {
|
|
21017
20994
|
var _this = this;
|
|
@@ -21338,7 +21315,7 @@
|
|
|
21338
21315
|
* @private
|
|
21339
21316
|
* @function Highcharts.Axis#render
|
|
21340
21317
|
*
|
|
21341
|
-
* @
|
|
21318
|
+
* @emits Highcharts.Axis#event:afterRender
|
|
21342
21319
|
*/
|
|
21343
21320
|
Axis.prototype.render = function () {
|
|
21344
21321
|
var axis = this,
|
|
@@ -21429,7 +21406,8 @@
|
|
|
21429
21406
|
(options.plotLines || [])
|
|
21430
21407
|
.concat(options.plotBands || [])
|
|
21431
21408
|
.forEach(function (plotLineOptions) {
|
|
21432
|
-
axis
|
|
21409
|
+
axis
|
|
21410
|
+
.addPlotBandOrLine(plotLineOptions);
|
|
21433
21411
|
});
|
|
21434
21412
|
}
|
|
21435
21413
|
} // end if hasData
|
|
@@ -21529,8 +21507,6 @@
|
|
|
21529
21507
|
*
|
|
21530
21508
|
* @private
|
|
21531
21509
|
* @function Highcharts.Axis#getKeepProps
|
|
21532
|
-
*
|
|
21533
|
-
* @return {Array<string>}
|
|
21534
21510
|
*/
|
|
21535
21511
|
Axis.prototype.getKeepProps = function () {
|
|
21536
21512
|
return (this.keepProps || Axis.keepProps);
|
|
@@ -21596,8 +21572,8 @@
|
|
|
21596
21572
|
* @param {Highcharts.Point} [point]
|
|
21597
21573
|
* The Point object if the crosshair snaps to points.
|
|
21598
21574
|
*
|
|
21599
|
-
* @
|
|
21600
|
-
* @
|
|
21575
|
+
* @emits Highcharts.Axis#event:afterDrawCrosshair
|
|
21576
|
+
* @emits Highcharts.Axis#event:drawCrosshair
|
|
21601
21577
|
*/
|
|
21602
21578
|
Axis.prototype.drawCrosshair = function (e, point) {
|
|
21603
21579
|
var options = this.crosshair,
|
|
@@ -21724,8 +21700,6 @@
|
|
|
21724
21700
|
*
|
|
21725
21701
|
* @private
|
|
21726
21702
|
* @function Highcharts.Axis#hasVerticalPanning
|
|
21727
|
-
*
|
|
21728
|
-
* @return {boolean}
|
|
21729
21703
|
*/
|
|
21730
21704
|
Axis.prototype.hasVerticalPanning = function () {
|
|
21731
21705
|
var panningOptions = this.chart.options.chart.panning;
|
|
@@ -21741,8 +21715,6 @@
|
|
|
21741
21715
|
*
|
|
21742
21716
|
* @param {unknown} value
|
|
21743
21717
|
* The axis value
|
|
21744
|
-
*
|
|
21745
|
-
* @return {boolean}
|
|
21746
21718
|
*/
|
|
21747
21719
|
Axis.prototype.validatePositiveValue = function (value) {
|
|
21748
21720
|
return isNumber(value) && value > 0;
|
|
@@ -21852,7 +21824,14 @@
|
|
|
21852
21824
|
Axis.defaultOptions = AxisDefaults.defaultXAxisOptions;
|
|
21853
21825
|
// Properties to survive after destroy, needed for Axis.update (#4317,
|
|
21854
21826
|
// #5773, #5881).
|
|
21855
|
-
Axis.keepProps = [
|
|
21827
|
+
Axis.keepProps = [
|
|
21828
|
+
'extKey',
|
|
21829
|
+
'hcEvents',
|
|
21830
|
+
'names',
|
|
21831
|
+
'series',
|
|
21832
|
+
'userMax',
|
|
21833
|
+
'userMin'
|
|
21834
|
+
];
|
|
21856
21835
|
return Axis;
|
|
21857
21836
|
}());
|
|
21858
21837
|
/* *
|
|
@@ -22153,19 +22132,12 @@
|
|
|
22153
22132
|
*
|
|
22154
22133
|
* @private
|
|
22155
22134
|
* @function Highcharts.Axis#getTimeTicks
|
|
22156
|
-
*
|
|
22157
22135
|
* @param {Highcharts.TimeNormalizeObject} normalizedInterval
|
|
22158
22136
|
* The interval in axis values (ms) and thecount.
|
|
22159
|
-
*
|
|
22160
22137
|
* @param {number} min
|
|
22161
22138
|
* The minimum in axis values.
|
|
22162
|
-
*
|
|
22163
22139
|
* @param {number} max
|
|
22164
22140
|
* The maximum in axis values.
|
|
22165
|
-
*
|
|
22166
|
-
* @param {number} startOfWeek
|
|
22167
|
-
*
|
|
22168
|
-
* @return {Highcharts.AxisTickPositionsArray}
|
|
22169
22141
|
*/
|
|
22170
22142
|
function getTimeTicks() {
|
|
22171
22143
|
return this.chart.time.getTimeTicks.apply(this.chart.time, arguments);
|
|
@@ -22215,8 +22187,10 @@
|
|
|
22215
22187
|
*/
|
|
22216
22188
|
Additions.prototype.normalizeTimeTickInterval = function (tickInterval, unitsOption) {
|
|
22217
22189
|
var units = (unitsOption || [[
|
|
22190
|
+
// unit name
|
|
22218
22191
|
'millisecond',
|
|
22219
|
-
|
|
22192
|
+
// allowed multiples
|
|
22193
|
+
[1, 2, 5, 10, 20, 25, 50, 100, 200, 500]
|
|
22220
22194
|
],
|
|
22221
22195
|
[
|
|
22222
22196
|
'second',
|
|
@@ -22289,12 +22263,6 @@
|
|
|
22289
22263
|
* point range on the axis.
|
|
22290
22264
|
*
|
|
22291
22265
|
* @private
|
|
22292
|
-
*
|
|
22293
|
-
* @param {number} x
|
|
22294
|
-
*
|
|
22295
|
-
* @param {Highcharts.Dictionary<string>} dateTimeLabelFormats
|
|
22296
|
-
*
|
|
22297
|
-
* @return {string}
|
|
22298
22266
|
*/
|
|
22299
22267
|
Additions.prototype.getXDateFormat = function (x, dateTimeLabelFormats) {
|
|
22300
22268
|
var axis = this.axis;
|
|
@@ -22721,13 +22689,8 @@
|
|
|
22721
22689
|
*
|
|
22722
22690
|
* @private
|
|
22723
22691
|
* @function Highcharts.Axis#addPlotBandOrLine
|
|
22724
|
-
*
|
|
22725
22692
|
* @param {Highcharts.AxisPlotBandsOptions|Highcharts.AxisPlotLinesOptions} options
|
|
22726
22693
|
* The plotBand or plotLine configuration object.
|
|
22727
|
-
*
|
|
22728
|
-
* @param {"plotBands"|"plotLines"} [coll]
|
|
22729
|
-
*
|
|
22730
|
-
* @return {Highcharts.PlotLineOrBand|undefined}
|
|
22731
22694
|
*/
|
|
22732
22695
|
Additions.prototype.addPlotBandOrLine = function (options, coll) {
|
|
22733
22696
|
var _this = this;
|
|
@@ -23870,8 +23833,6 @@
|
|
|
23870
23833
|
*
|
|
23871
23834
|
* @private
|
|
23872
23835
|
* @function Highcharts.Tooltip#bodyFormatter
|
|
23873
|
-
* @param {Array<(Highcharts.Point|Highcharts.Series)>} items
|
|
23874
|
-
* @return {Array<string>}
|
|
23875
23836
|
*/
|
|
23876
23837
|
Tooltip.prototype.bodyFormatter = function (items) {
|
|
23877
23838
|
return items.map(function (item) {
|
|
@@ -23888,7 +23849,7 @@
|
|
|
23888
23849
|
* @function Highcharts.Tooltip#cleanSplit
|
|
23889
23850
|
*
|
|
23890
23851
|
* @param {boolean} [force]
|
|
23891
|
-
*
|
|
23852
|
+
* Force destroy all tooltips.
|
|
23892
23853
|
*/
|
|
23893
23854
|
Tooltip.prototype.cleanSplit = function (force) {
|
|
23894
23855
|
this.chart.series.forEach(function (series) {
|
|
@@ -23908,10 +23869,6 @@
|
|
|
23908
23869
|
* the context here is an object holding point, series, x, y etc.
|
|
23909
23870
|
*
|
|
23910
23871
|
* @function Highcharts.Tooltip#defaultFormatter
|
|
23911
|
-
*
|
|
23912
|
-
* @param {Highcharts.Tooltip} tooltip
|
|
23913
|
-
*
|
|
23914
|
-
* @return {Array<string>}
|
|
23915
23872
|
*/
|
|
23916
23873
|
Tooltip.prototype.defaultFormatter = function (tooltip) {
|
|
23917
23874
|
var items = this.points || splat(this);
|
|
@@ -23951,12 +23908,6 @@
|
|
|
23951
23908
|
*
|
|
23952
23909
|
* @private
|
|
23953
23910
|
* @function Highcharts.Tooltip#getAnchor
|
|
23954
|
-
*
|
|
23955
|
-
* @param {Highcharts.Point|Array<Highcharts.Point>} points
|
|
23956
|
-
*
|
|
23957
|
-
* @param {Highcharts.PointerEventObject} [mouseEvent]
|
|
23958
|
-
*
|
|
23959
|
-
* @return {Array<number>}
|
|
23960
23911
|
*/
|
|
23961
23912
|
Tooltip.prototype.getAnchor = function (points, mouseEvent) {
|
|
23962
23913
|
var chart = this.chart,
|
|
@@ -24001,8 +23952,8 @@
|
|
|
24001
23952
|
plotY += yAxis.pos - plotTop;
|
|
24002
23953
|
}
|
|
24003
23954
|
else { // #14771
|
|
24004
|
-
plotX += plotTop + chart.plotHeight - xAxis.len - xAxis.pos;
|
|
24005
|
-
plotY += plotLeft + chart.plotWidth - yAxis.len - yAxis.pos;
|
|
23955
|
+
plotX += (plotTop + chart.plotHeight - xAxis.len - xAxis.pos);
|
|
23956
|
+
plotY += (plotLeft + chart.plotWidth - yAxis.len - yAxis.pos);
|
|
24006
23957
|
}
|
|
24007
23958
|
}
|
|
24008
23959
|
});
|
|
@@ -24031,6 +23982,7 @@
|
|
|
24031
23982
|
* @function Highcharts.Tooltip#getLabel
|
|
24032
23983
|
*
|
|
24033
23984
|
* @return {Highcharts.SVGElement}
|
|
23985
|
+
* Tooltip label
|
|
24034
23986
|
*/
|
|
24035
23987
|
Tooltip.prototype.getLabel = function () {
|
|
24036
23988
|
var tooltip = this,
|
|
@@ -24041,7 +23993,8 @@
|
|
|
24041
23993
|
' ' + options.className :
|
|
24042
23994
|
'')),
|
|
24043
23995
|
pointerEvents = (options.style.pointerEvents ||
|
|
24044
|
-
(!this.followPointer &&
|
|
23996
|
+
(!this.followPointer &&
|
|
23997
|
+
options.stickOnContact ? 'auto' : 'none')),
|
|
24045
23998
|
onMouseEnter = function () {
|
|
24046
23999
|
tooltip.inContact = true;
|
|
24047
24000
|
}, onMouseLeave = function (e) {
|
|
@@ -24157,14 +24110,6 @@
|
|
|
24157
24110
|
*
|
|
24158
24111
|
* @private
|
|
24159
24112
|
* @function Highcharts.Tooltip#getPosition
|
|
24160
|
-
*
|
|
24161
|
-
* @param {number} boxWidth
|
|
24162
|
-
*
|
|
24163
|
-
* @param {number} boxHeight
|
|
24164
|
-
*
|
|
24165
|
-
* @param {Highcharts.Point} point
|
|
24166
|
-
*
|
|
24167
|
-
* @return {Highcharts.PositionObject}
|
|
24168
24113
|
*/
|
|
24169
24114
|
Tooltip.prototype.getPosition = function (boxWidth, boxHeight, point) {
|
|
24170
24115
|
var chart = this.chart,
|
|
@@ -24536,7 +24481,7 @@
|
|
|
24536
24481
|
pointOrPoints.series &&
|
|
24537
24482
|
pointOrPoints.series.noSharedTooltip);
|
|
24538
24483
|
// get the reference point coordinates (pie charts use tooltipPos)
|
|
24539
|
-
tooltip.followPointer = !tooltip.split && point.series.tooltipOptions.followPointer;
|
|
24484
|
+
tooltip.followPointer = (!tooltip.split && point.series.tooltipOptions.followPointer);
|
|
24540
24485
|
var anchor = tooltip.getAnchor(pointOrPoints,
|
|
24541
24486
|
mouseEvent),
|
|
24542
24487
|
x = anchor[0],
|
|
@@ -24670,9 +24615,10 @@
|
|
|
24670
24615
|
options = tooltip.options,
|
|
24671
24616
|
positioner = tooltip.options.positioner;
|
|
24672
24617
|
// The area which the tooltip should be limited to. Limit to scrollable
|
|
24673
|
-
// plot area if enabled, otherwise limit to the chart container.
|
|
24674
|
-
//
|
|
24675
|
-
var bounds = tooltip.outside &&
|
|
24618
|
+
// plot area if enabled, otherwise limit to the chart container. If
|
|
24619
|
+
// outside is true it should be the whole viewport
|
|
24620
|
+
var bounds = (tooltip.outside &&
|
|
24621
|
+
typeof scrollablePixelsX !== 'number') ?
|
|
24676
24622
|
doc.documentElement.getBoundingClientRect() : {
|
|
24677
24623
|
left: scrollLeft,
|
|
24678
24624
|
right: scrollLeft + chartWidth,
|
|
@@ -24693,7 +24639,7 @@
|
|
|
24693
24639
|
*
|
|
24694
24640
|
* @private
|
|
24695
24641
|
* @param {Highcharts.Point} point The point related to the tooltip
|
|
24696
|
-
* @return {
|
|
24642
|
+
* @return {Object} Returns an object with anchorX and anchorY
|
|
24697
24643
|
*/
|
|
24698
24644
|
function getAnchor(point) {
|
|
24699
24645
|
var isHeader = point.isHeader,
|
|
@@ -24885,13 +24831,14 @@
|
|
|
24885
24831
|
}
|
|
24886
24832
|
return boxes;
|
|
24887
24833
|
}, []);
|
|
24888
|
-
// Realign the tooltips towards the right if there is not enough
|
|
24889
|
-
//
|
|
24834
|
+
// Realign the tooltips towards the right if there is not enough space
|
|
24835
|
+
// to the left and there is space to to the right
|
|
24890
24836
|
if (!positioner && boxes.some(function (box) {
|
|
24891
24837
|
// Always realign if the beginning of a label is outside bounds
|
|
24892
24838
|
var outside = tooltip.outside;
|
|
24893
24839
|
var boxStart = (outside ? chartLeft : 0) + box.anchorX;
|
|
24894
|
-
if (boxStart < bounds.left &&
|
|
24840
|
+
if (boxStart < bounds.left &&
|
|
24841
|
+
boxStart + box.boxWidth < bounds.right) {
|
|
24895
24842
|
return true;
|
|
24896
24843
|
}
|
|
24897
24844
|
// Otherwise, check if there is more space available to the right
|
|
@@ -24929,7 +24876,9 @@
|
|
|
24929
24876
|
if (tooltip.outside && chartLeft + x < boxExtremes.left) {
|
|
24930
24877
|
boxExtremes.left = chartLeft + x;
|
|
24931
24878
|
}
|
|
24932
|
-
if (!isHeader &&
|
|
24879
|
+
if (!isHeader &&
|
|
24880
|
+
tooltip.outside &&
|
|
24881
|
+
boxExtremes.left + boxWidth > boxExtremes.right) {
|
|
24933
24882
|
boxExtremes.right = chartLeft + x;
|
|
24934
24883
|
}
|
|
24935
24884
|
}
|
|
@@ -25063,9 +25012,6 @@
|
|
|
25063
25012
|
*
|
|
25064
25013
|
* @private
|
|
25065
25014
|
* @function Highcharts.Tooltip#tooltipFooterHeaderFormatter
|
|
25066
|
-
* @param {Highcharts.PointLabelObject} labelConfig
|
|
25067
|
-
* @param {boolean} [isFooter]
|
|
25068
|
-
* @return {string}
|
|
25069
25015
|
*/
|
|
25070
25016
|
Tooltip.prototype.tooltipFooterHeaderFormatter = function (labelConfig, isFooter) {
|
|
25071
25017
|
var series = labelConfig.series,
|
|
@@ -25474,7 +25420,9 @@
|
|
|
25474
25420
|
options = Point.prototype.optionsToObject.call(this, options);
|
|
25475
25421
|
// copy options directly to point
|
|
25476
25422
|
extend(point, options);
|
|
25477
|
-
point.options = point.options ?
|
|
25423
|
+
point.options = point.options ?
|
|
25424
|
+
extend(point.options, options) :
|
|
25425
|
+
options;
|
|
25478
25426
|
// Since options are copied into the Point instance, some accidental
|
|
25479
25427
|
// options must be shielded (#5681)
|
|
25480
25428
|
if (options.group) {
|
|
@@ -25616,7 +25564,7 @@
|
|
|
25616
25564
|
* @param {Highcharts.EventCallbackFunction<Highcharts.Point>|Function} [defaultFunction]
|
|
25617
25565
|
* Default event handler.
|
|
25618
25566
|
*
|
|
25619
|
-
* @
|
|
25567
|
+
* @emits Highcharts.Point#event:*
|
|
25620
25568
|
*/
|
|
25621
25569
|
Point.prototype.firePointEvent = function (eventType, eventArgs, defaultFunction) {
|
|
25622
25570
|
var point = this,
|
|
@@ -25667,8 +25615,6 @@
|
|
|
25667
25615
|
*
|
|
25668
25616
|
* @private
|
|
25669
25617
|
* @function Highcharts.Point#getGraphicalProps
|
|
25670
|
-
* @param {Highcharts.Dictionary<number>} [kinds]
|
|
25671
|
-
* @return {Highcharts.PointGraphicalProps}
|
|
25672
25618
|
*/
|
|
25673
25619
|
Point.prototype.getGraphicalProps = function (kinds) {
|
|
25674
25620
|
var point = this,
|
|
@@ -25767,8 +25713,7 @@
|
|
|
25767
25713
|
/**
|
|
25768
25714
|
* Utility to check if point has new shape type. Used in column series and
|
|
25769
25715
|
* all others that are based on column series.
|
|
25770
|
-
*
|
|
25771
|
-
* @return boolean|undefined
|
|
25716
|
+
* @private
|
|
25772
25717
|
*/
|
|
25773
25718
|
Point.prototype.hasNewShapeType = function () {
|
|
25774
25719
|
var point = this;
|
|
@@ -25794,7 +25739,7 @@
|
|
|
25794
25739
|
* @return {Highcharts.Point}
|
|
25795
25740
|
* The Point instance.
|
|
25796
25741
|
*
|
|
25797
|
-
* @
|
|
25742
|
+
* @emits Highcharts.Point#event:afterInit
|
|
25798
25743
|
*/
|
|
25799
25744
|
Point.prototype.init = function (series, options, x) {
|
|
25800
25745
|
this.series = series;
|
|
@@ -25880,7 +25825,6 @@
|
|
|
25880
25825
|
/**
|
|
25881
25826
|
* @private
|
|
25882
25827
|
* @function Highcharts.Point#resolveColor
|
|
25883
|
-
* @return {void}
|
|
25884
25828
|
*/
|
|
25885
25829
|
Point.prototype.resolveColor = function () {
|
|
25886
25830
|
var series = this.series,
|
|
@@ -26015,7 +25959,7 @@
|
|
|
26015
25959
|
* Whether to apply animation, and optionally animation
|
|
26016
25960
|
* configuration.
|
|
26017
25961
|
*
|
|
26018
|
-
* @
|
|
25962
|
+
* @emits Highcharts.Point#event:update
|
|
26019
25963
|
*/
|
|
26020
25964
|
Point.prototype.update = function (options, redraw, animation, runEvent) {
|
|
26021
25965
|
var point = this,
|
|
@@ -26033,7 +25977,9 @@
|
|
|
26033
25977
|
// Update visuals, #4146
|
|
26034
25978
|
// Handle dummy graphic elements for a11y, #12718
|
|
26035
25979
|
var hasDummyGraphic = graphic && point.hasDummyGraphic;
|
|
26036
|
-
var shouldDestroyGraphic = point.y === null ?
|
|
25980
|
+
var shouldDestroyGraphic = point.y === null ?
|
|
25981
|
+
!hasDummyGraphic :
|
|
25982
|
+
hasDummyGraphic;
|
|
26037
25983
|
if (graphic && shouldDestroyGraphic) {
|
|
26038
25984
|
point.graphic = graphic.destroy();
|
|
26039
25985
|
delete point.hasDummyGraphic;
|
|
@@ -26136,8 +26082,8 @@
|
|
|
26136
26082
|
* is `true`, selected points are accumulated on Control, Shift or Cmd
|
|
26137
26083
|
* clicking the point.
|
|
26138
26084
|
*
|
|
26139
|
-
* @
|
|
26140
|
-
* @
|
|
26085
|
+
* @emits Highcharts.Point#event:select
|
|
26086
|
+
* @emits Highcharts.Point#event:unselect
|
|
26141
26087
|
*/
|
|
26142
26088
|
Point.prototype.select = function (selected, accumulate) {
|
|
26143
26089
|
var point = this,
|
|
@@ -26206,7 +26152,7 @@
|
|
|
26206
26152
|
* events.
|
|
26207
26153
|
*
|
|
26208
26154
|
* @function Highcharts.Point#onMouseOut
|
|
26209
|
-
* @
|
|
26155
|
+
* @emits Highcharts.Point#event:mouseOut
|
|
26210
26156
|
*/
|
|
26211
26157
|
Point.prototype.onMouseOut = function () {
|
|
26212
26158
|
var point = this,
|
|
@@ -26253,7 +26199,7 @@
|
|
|
26253
26199
|
* @param {boolean} [move]
|
|
26254
26200
|
* State for animation.
|
|
26255
26201
|
*
|
|
26256
|
-
* @
|
|
26202
|
+
* @emits Highcharts.Point#event:afterSetState
|
|
26257
26203
|
*/
|
|
26258
26204
|
Point.prototype.setState = function (state, move) {
|
|
26259
26205
|
var point = this,
|
|
@@ -26314,8 +26260,9 @@
|
|
|
26314
26260
|
pointAttribs = series.pointAttribs(point, state);
|
|
26315
26261
|
pointAttribsAnimation = pick(chart.options.chart.animation, stateOptions.animation);
|
|
26316
26262
|
// Some inactive points (e.g. slices in pie) should apply
|
|
26317
|
-
//
|
|
26318
|
-
if (series.options.inactiveOtherPoints &&
|
|
26263
|
+
// opacity also for their labels
|
|
26264
|
+
if (series.options.inactiveOtherPoints &&
|
|
26265
|
+
isNumber(pointAttribs.opacity)) {
|
|
26319
26266
|
(point.dataLabels || []).forEach(function (label) {
|
|
26320
26267
|
if (label) {
|
|
26321
26268
|
label.animate({
|
|
@@ -26776,7 +26723,7 @@
|
|
|
26776
26723
|
Pointer.unbindDocumentMouseUp = Pointer.unbindDocumentMouseUp();
|
|
26777
26724
|
}
|
|
26778
26725
|
if (Pointer.unbindDocumentTouchEnd) {
|
|
26779
|
-
Pointer.unbindDocumentTouchEnd = Pointer.unbindDocumentTouchEnd();
|
|
26726
|
+
Pointer.unbindDocumentTouchEnd = (Pointer.unbindDocumentTouchEnd());
|
|
26780
26727
|
}
|
|
26781
26728
|
}
|
|
26782
26729
|
// memory and CPU leak
|
|
@@ -27129,6 +27076,7 @@
|
|
|
27129
27076
|
* Pointer event, extended with `chartX` and `chartY` properties.
|
|
27130
27077
|
*
|
|
27131
27078
|
* @return {Highcharts.PointerAxisCoordinatesObject}
|
|
27079
|
+
* Axis coordinates.
|
|
27132
27080
|
*/
|
|
27133
27081
|
Pointer.prototype.getCoordinates = function (e) {
|
|
27134
27082
|
var coordinates = {
|
|
@@ -27167,7 +27115,7 @@
|
|
|
27167
27115
|
* @param {Highcharts.PointerEventObject} [e]
|
|
27168
27116
|
* The triggering event, containing chart coordinates of the pointer.
|
|
27169
27117
|
*
|
|
27170
|
-
* @return {
|
|
27118
|
+
* @return {Object}
|
|
27171
27119
|
* Object containing resulting hover data: hoverPoint, hoverSeries, and
|
|
27172
27120
|
* hoverPoints.
|
|
27173
27121
|
*/
|
|
@@ -27464,9 +27412,8 @@
|
|
|
27464
27412
|
// Also reset the chart position, used in #149 fix
|
|
27465
27413
|
chart.pointer.chartPosition = void 0;
|
|
27466
27414
|
}
|
|
27467
|
-
|
|
27468
|
-
tooltip &&
|
|
27469
|
-
!tooltip.isHidden) {
|
|
27415
|
+
// #11635, Firefox wheel scroll does not fire out events consistently
|
|
27416
|
+
if (tooltip && !tooltip.isHidden) {
|
|
27470
27417
|
this.reset();
|
|
27471
27418
|
}
|
|
27472
27419
|
};
|
|
@@ -27613,7 +27560,10 @@
|
|
|
27613
27560
|
}
|
|
27614
27561
|
// On touch devices, only proceed to trigger click if a handler is
|
|
27615
27562
|
// defined
|
|
27616
|
-
if (hasZoom &&
|
|
27563
|
+
if (hasZoom &&
|
|
27564
|
+
self.initiated &&
|
|
27565
|
+
!fireClickEvent &&
|
|
27566
|
+
e.cancelable !== false) {
|
|
27617
27567
|
e.preventDefault();
|
|
27618
27568
|
}
|
|
27619
27569
|
// Normalize each touch
|
|
@@ -27754,7 +27704,8 @@
|
|
|
27754
27704
|
clip[xy] = clipXY - plotLeftTop;
|
|
27755
27705
|
clip[wh] = selectionWH;
|
|
27756
27706
|
}
|
|
27757
|
-
var scaleKey = inverted ?
|
|
27707
|
+
var scaleKey = inverted ?
|
|
27708
|
+
(horiz ? 'scaleY' : 'scaleX') : 'scale' + XY;
|
|
27758
27709
|
var transformScale = inverted ? 1 / scale : scale;
|
|
27759
27710
|
selectionMarker[wh] = selectionWH;
|
|
27760
27711
|
selectionMarker[xy] = selectionXY;
|
|
@@ -27857,8 +27808,8 @@
|
|
|
27857
27808
|
* @private
|
|
27858
27809
|
* @function Highcharts.Pointer#runPointActions
|
|
27859
27810
|
*
|
|
27860
|
-
* @
|
|
27861
|
-
* @
|
|
27811
|
+
* @emits Highcharts.Point#event:mouseOut
|
|
27812
|
+
* @emits Highcharts.Point#event:mouseOver
|
|
27862
27813
|
*/
|
|
27863
27814
|
Pointer.prototype.runPointActions = function (e, p) {
|
|
27864
27815
|
var pointer = this,
|
|
@@ -28611,7 +28562,8 @@
|
|
|
28611
28562
|
this.symbolWidth = pick(options.symbolWidth, 16);
|
|
28612
28563
|
this.pages = [];
|
|
28613
28564
|
this.proximate = options.layout === 'proximate' && !this.chart.inverted;
|
|
28614
|
-
|
|
28565
|
+
// #12705: baseline has to be reset on every update
|
|
28566
|
+
this.baseline = void 0;
|
|
28615
28567
|
};
|
|
28616
28568
|
/**
|
|
28617
28569
|
* Update the legend with new options. Equivalent to running `chart.update`
|
|
@@ -28630,7 +28582,7 @@
|
|
|
28630
28582
|
* operations on the chart, it is a good idea to set redraw to false and
|
|
28631
28583
|
* call {@link Chart#redraw} after. Whether to redraw the chart.
|
|
28632
28584
|
*
|
|
28633
|
-
* @
|
|
28585
|
+
* @emits Highcharts.Legends#event:afterUpdate
|
|
28634
28586
|
*/
|
|
28635
28587
|
Legend.prototype.update = function (options, redraw) {
|
|
28636
28588
|
var chart = this.chart;
|
|
@@ -28780,8 +28732,7 @@
|
|
|
28780
28732
|
/**
|
|
28781
28733
|
* @private
|
|
28782
28734
|
* @param {string} key
|
|
28783
|
-
|
|
28784
|
-
*/
|
|
28735
|
+
*/
|
|
28785
28736
|
function destroyItems(key) {
|
|
28786
28737
|
if (this[key]) {
|
|
28787
28738
|
this[key] = this[key].destroy();
|
|
@@ -28998,13 +28949,16 @@
|
|
|
28998
28949
|
legend.setText(item);
|
|
28999
28950
|
// calculate the positions for the next line
|
|
29000
28951
|
var bBox = li.getBBox();
|
|
28952
|
+
var fontMetricsH = (legend.fontMetrics && legend.fontMetrics.h) || 0;
|
|
29001
28953
|
item.itemWidth = item.checkboxOffset =
|
|
29002
28954
|
options.itemWidth ||
|
|
29003
28955
|
item.legendItemWidth ||
|
|
29004
28956
|
bBox.width + itemExtraWidth;
|
|
29005
28957
|
legend.maxItemWidth = Math.max(legend.maxItemWidth, item.itemWidth);
|
|
29006
28958
|
legend.totalItemWidth += item.itemWidth;
|
|
29007
|
-
legend.itemHeight = item.itemHeight = Math.round(item.legendItemHeight ||
|
|
28959
|
+
legend.itemHeight = item.itemHeight = Math.round(item.legendItemHeight ||
|
|
28960
|
+
// use bBox for multiline (#16398)
|
|
28961
|
+
(bBox.height > fontMetricsH * 1.5 ? bBox.height : fontMetricsH));
|
|
29008
28962
|
};
|
|
29009
28963
|
/**
|
|
29010
28964
|
* Get the position of the item in the layout. We now know the
|
|
@@ -29068,7 +29022,7 @@
|
|
|
29068
29022
|
* @function Highcharts.Legend#getAllItems
|
|
29069
29023
|
* @return {Array<(Highcharts.BubbleLegendItem|Highcharts.Point|Highcharts.Series)>}
|
|
29070
29024
|
* The current items in the legend.
|
|
29071
|
-
* @
|
|
29025
|
+
* @emits Highcharts.Legend#event:afterGetAllItems
|
|
29072
29026
|
*/
|
|
29073
29027
|
Legend.prototype.getAllItems = function () {
|
|
29074
29028
|
var allItems = [];
|
|
@@ -29338,7 +29292,6 @@
|
|
|
29338
29292
|
* @private
|
|
29339
29293
|
* @function Highcharts.align
|
|
29340
29294
|
* @param {Highcharts.BBoxObject} alignTo
|
|
29341
|
-
* @return {void}
|
|
29342
29295
|
*/
|
|
29343
29296
|
Legend.prototype.align = function (alignTo) {
|
|
29344
29297
|
if (alignTo === void 0) { alignTo = this.chart.spacingBox; }
|
|
@@ -29370,8 +29323,6 @@
|
|
|
29370
29323
|
*
|
|
29371
29324
|
* @private
|
|
29372
29325
|
* @function Highcharts.Legend#handleOverflow
|
|
29373
|
-
* @param {number} legendHeight
|
|
29374
|
-
* @return {number}
|
|
29375
29326
|
*/
|
|
29376
29327
|
Legend.prototype.handleOverflow = function (legendHeight) {
|
|
29377
29328
|
var legend = this,
|
|
@@ -29532,7 +29483,6 @@
|
|
|
29532
29483
|
* @param {boolean|Partial<Highcharts.AnimationOptionsObject>} [animation]
|
|
29533
29484
|
* Whether and how to apply animation.
|
|
29534
29485
|
*
|
|
29535
|
-
* @return {void}
|
|
29536
29486
|
*/
|
|
29537
29487
|
Legend.prototype.scroll = function (scrollBy, animation) {
|
|
29538
29488
|
var _this = this;
|
|
@@ -29621,8 +29571,8 @@
|
|
|
29621
29571
|
* @param {Highcharts.BubbleLegendItem|Point|Highcharts.Series} item
|
|
29622
29572
|
* @param {Highcharts.SVGElement} legendItem
|
|
29623
29573
|
* @param {boolean} [useHTML=false]
|
|
29624
|
-
* @
|
|
29625
|
-
* @
|
|
29574
|
+
* @emits Highcharts.Point#event:legendItemClick
|
|
29575
|
+
* @emits Highcharts.Series#event:legendItemClick
|
|
29626
29576
|
*/
|
|
29627
29577
|
Legend.prototype.setItemEvents = function (item, legendItem, useHTML) {
|
|
29628
29578
|
var legend = this,
|
|
@@ -29712,7 +29662,7 @@
|
|
|
29712
29662
|
* @private
|
|
29713
29663
|
* @function Highcharts.Legend#createCheckboxForItem
|
|
29714
29664
|
* @param {Highcharts.BubbleLegendItem|Point|Highcharts.Series} item
|
|
29715
|
-
* @
|
|
29665
|
+
* @emits Highcharts.Series#event:checkboxClick
|
|
29716
29666
|
*/
|
|
29717
29667
|
Legend.prototype.createCheckboxForItem = function (item) {
|
|
29718
29668
|
var legend = this;
|
|
@@ -30141,8 +30091,8 @@
|
|
|
30141
30091
|
* @param {...Array<*>} arguments
|
|
30142
30092
|
* All arguments for the constructor.
|
|
30143
30093
|
*
|
|
30144
|
-
* @
|
|
30145
|
-
* @
|
|
30094
|
+
* @emits Highcharts.Chart#event:init
|
|
30095
|
+
* @emits Highcharts.Chart#event:afterInit
|
|
30146
30096
|
*/
|
|
30147
30097
|
Chart.prototype.getArgs = function (a, b, c) {
|
|
30148
30098
|
// Remove the optional first argument, renderTo, and
|
|
@@ -30168,10 +30118,9 @@
|
|
|
30168
30118
|
* Function to run when the chart has loaded and and all external
|
|
30169
30119
|
* images are loaded.
|
|
30170
30120
|
*
|
|
30171
|
-
* @return {void}
|
|
30172
30121
|
*
|
|
30173
|
-
* @
|
|
30174
|
-
* @
|
|
30122
|
+
* @emits Highcharts.Chart#event:init
|
|
30123
|
+
* @emits Highcharts.Chart#event:afterInit
|
|
30175
30124
|
*/
|
|
30176
30125
|
Chart.prototype.init = function (userOptions, callback) {
|
|
30177
30126
|
// Handle regular options
|
|
@@ -30349,7 +30298,6 @@
|
|
|
30349
30298
|
*
|
|
30350
30299
|
* @private
|
|
30351
30300
|
* @function Highcharts.Series#getSeriesOrderByLinks
|
|
30352
|
-
* @return {Array<Highcharts.Series>}
|
|
30353
30301
|
*/
|
|
30354
30302
|
Chart.prototype.getSeriesOrderByLinks = function () {
|
|
30355
30303
|
return this.series.concat().sort(function (a, b) {
|
|
@@ -30430,7 +30378,8 @@
|
|
|
30430
30378
|
pos: plotLeft,
|
|
30431
30379
|
len: Infinity
|
|
30432
30380
|
};
|
|
30433
|
-
var chartX = options.paneCoordinates ?
|
|
30381
|
+
var chartX = options.paneCoordinates ?
|
|
30382
|
+
xAxis.pos + x : plotLeft + x;
|
|
30434
30383
|
if (!(chartX >= Math.max(scrollLeft + plotLeft, xAxis.pos) &&
|
|
30435
30384
|
chartX <= Math.min(scrollLeft + plotLeft + box.width, xAxis.pos + xAxis.len))) {
|
|
30436
30385
|
e.isInsidePlot = false;
|
|
@@ -30441,7 +30390,8 @@
|
|
|
30441
30390
|
pos: plotTop,
|
|
30442
30391
|
len: Infinity
|
|
30443
30392
|
};
|
|
30444
|
-
var chartY = options.paneCoordinates ?
|
|
30393
|
+
var chartY = options.paneCoordinates ?
|
|
30394
|
+
yAxis.pos + y : plotTop + y;
|
|
30445
30395
|
if (!(chartY >= Math.max(scrollTop + plotTop, yAxis.pos) &&
|
|
30446
30396
|
chartY <= Math.min(scrollTop + plotTop + box.height, yAxis.pos + yAxis.len))) {
|
|
30447
30397
|
e.isInsidePlot = false;
|
|
@@ -30464,12 +30414,12 @@
|
|
|
30464
30414
|
* @param {boolean|Partial<Highcharts.AnimationOptionsObject>} [animation]
|
|
30465
30415
|
* If or how to apply animation to the redraw.
|
|
30466
30416
|
*
|
|
30467
|
-
* @
|
|
30468
|
-
* @
|
|
30469
|
-
* @
|
|
30470
|
-
* @
|
|
30471
|
-
* @
|
|
30472
|
-
* @
|
|
30417
|
+
* @emits Highcharts.Chart#event:afterSetExtremes
|
|
30418
|
+
* @emits Highcharts.Chart#event:beforeRedraw
|
|
30419
|
+
* @emits Highcharts.Chart#event:predraw
|
|
30420
|
+
* @emits Highcharts.Chart#event:redraw
|
|
30421
|
+
* @emits Highcharts.Chart#event:render
|
|
30422
|
+
* @emits Highcharts.Chart#event:updatedData
|
|
30473
30423
|
*/
|
|
30474
30424
|
Chart.prototype.redraw = function (animation) {
|
|
30475
30425
|
fireEvent(this, 'beforeRedraw');
|
|
@@ -30631,8 +30581,6 @@
|
|
|
30631
30581
|
var series = this.series;
|
|
30632
30582
|
/**
|
|
30633
30583
|
* @private
|
|
30634
|
-
* @param {Highcharts.Axis|Highcharts.Series} item
|
|
30635
|
-
* @return {boolean}
|
|
30636
30584
|
*/
|
|
30637
30585
|
function itemById(item) {
|
|
30638
30586
|
return (item.id === id ||
|
|
@@ -30656,8 +30604,8 @@
|
|
|
30656
30604
|
*
|
|
30657
30605
|
* @private
|
|
30658
30606
|
* @function Highcharts.Chart#getAxes
|
|
30659
|
-
* @
|
|
30660
|
-
* @
|
|
30607
|
+
* @emits Highcharts.Chart#event:afterGetAxes
|
|
30608
|
+
* @emits Highcharts.Chart#event:getAxes
|
|
30661
30609
|
*/
|
|
30662
30610
|
Chart.prototype.getAxes = function () {
|
|
30663
30611
|
var chart = this,
|
|
@@ -30839,7 +30787,7 @@
|
|
|
30839
30787
|
* @function Highcharts.Chart#layOutTitles
|
|
30840
30788
|
*
|
|
30841
30789
|
* @param {boolean} [redraw=true]
|
|
30842
|
-
* @
|
|
30790
|
+
* @emits Highcharts.Chart#event:afterLayOutTitles
|
|
30843
30791
|
*/
|
|
30844
30792
|
Chart.prototype.layOutTitles = function (redraw) {
|
|
30845
30793
|
var titleOffset = [0, 0, 0],
|
|
@@ -30847,7 +30795,7 @@
|
|
|
30847
30795
|
spacingBox = this.spacingBox;
|
|
30848
30796
|
// Lay out the title and the subtitle respectively
|
|
30849
30797
|
['title', 'subtitle', 'caption'].forEach(function (key) {
|
|
30850
|
-
var title = this[key], titleOptions = this.options[key], verticalAlign = titleOptions.verticalAlign || 'top', offset = key === 'title' ?
|
|
30798
|
+
var title = this[key], titleOptions = (this.options[key]), verticalAlign = titleOptions.verticalAlign || 'top', offset = key === 'title' ?
|
|
30851
30799
|
verticalAlign === 'top' ? -3 : 0 :
|
|
30852
30800
|
// Floating subtitle (#6574)
|
|
30853
30801
|
verticalAlign === 'top' ? titleOffset[0] + 2 : 0;
|
|
@@ -30855,7 +30803,8 @@
|
|
|
30855
30803
|
height;
|
|
30856
30804
|
if (title) {
|
|
30857
30805
|
if (!this.styledMode) {
|
|
30858
|
-
titleSize = titleOptions.style &&
|
|
30806
|
+
titleSize = (titleOptions.style &&
|
|
30807
|
+
titleOptions.style.fontSize);
|
|
30859
30808
|
}
|
|
30860
30809
|
titleSize = renderer.fontMetrics(titleSize, title).b;
|
|
30861
30810
|
title
|
|
@@ -31030,7 +30979,7 @@
|
|
|
31030
30979
|
*
|
|
31031
30980
|
* @private
|
|
31032
30981
|
* @function Highcharts.Chart#afterGetContainer
|
|
31033
|
-
* @
|
|
30982
|
+
* @emits Highcharts.Chart#event:afterGetContainer
|
|
31034
30983
|
*/
|
|
31035
30984
|
Chart.prototype.getContainer = function () {
|
|
31036
30985
|
var chart = this,
|
|
@@ -31067,7 +31016,7 @@
|
|
|
31067
31016
|
// Make a reference to the chart from the div
|
|
31068
31017
|
attr(renderTo, indexAttrName, chart.index);
|
|
31069
31018
|
// remove previous chart
|
|
31070
|
-
renderTo.innerHTML =
|
|
31019
|
+
renderTo.innerHTML = AST.emptyHTML;
|
|
31071
31020
|
// If the container doesn't have an offsetWidth, it has or is a child of
|
|
31072
31021
|
// a node that has display:none. We need to temporarily move it out to a
|
|
31073
31022
|
// visible state to determine the size, else the legend and tooltips
|
|
@@ -31152,7 +31101,7 @@
|
|
|
31152
31101
|
*
|
|
31153
31102
|
* @private
|
|
31154
31103
|
* @function Highcharts.Chart#getMargins
|
|
31155
|
-
* @
|
|
31104
|
+
* @emits Highcharts.Chart#event:getMargins
|
|
31156
31105
|
*/
|
|
31157
31106
|
Chart.prototype.getMargins = function (skipAxes) {
|
|
31158
31107
|
var _a = this,
|
|
@@ -31318,10 +31267,9 @@
|
|
|
31318
31267
|
* @param {boolean|Partial<Highcharts.AnimationOptionsObject>} [animation=true]
|
|
31319
31268
|
* Whether and how to apply animation.
|
|
31320
31269
|
*
|
|
31321
|
-
* @return {void}
|
|
31322
31270
|
*
|
|
31323
|
-
* @
|
|
31324
|
-
* @
|
|
31271
|
+
* @emits Highcharts.Chart#event:endResize
|
|
31272
|
+
* @emits Highcharts.Chart#event:resize
|
|
31325
31273
|
*/
|
|
31326
31274
|
Chart.prototype.setSize = function (width, height, animation) {
|
|
31327
31275
|
var chart = this,
|
|
@@ -31378,7 +31326,7 @@
|
|
|
31378
31326
|
*
|
|
31379
31327
|
* @private
|
|
31380
31328
|
* @function Highcharts.Chart#setChartSize
|
|
31381
|
-
* @
|
|
31329
|
+
* @emits Highcharts.Chart#event:afterSetChartSize
|
|
31382
31330
|
*/
|
|
31383
31331
|
Chart.prototype.setChartSize = function (skipAxes) {
|
|
31384
31332
|
var chart = this,
|
|
@@ -31501,7 +31449,7 @@
|
|
|
31501
31449
|
*
|
|
31502
31450
|
* @private
|
|
31503
31451
|
* @function Highcharts.Chart#drawChartBox
|
|
31504
|
-
* @
|
|
31452
|
+
* @emits Highcharts.Chart#event:afterDrawChartBox
|
|
31505
31453
|
*/
|
|
31506
31454
|
Chart.prototype.drawChartBox = function () {
|
|
31507
31455
|
var chart = this,
|
|
@@ -31635,7 +31583,6 @@
|
|
|
31635
31583
|
*
|
|
31636
31584
|
* @private
|
|
31637
31585
|
* @function Highcharts.Chart#propFromSeries
|
|
31638
|
-
* @return {void}
|
|
31639
31586
|
*/
|
|
31640
31587
|
Chart.prototype.propFromSeries = function () {
|
|
31641
31588
|
var chart = this,
|
|
@@ -31679,7 +31626,7 @@
|
|
|
31679
31626
|
*
|
|
31680
31627
|
* @private
|
|
31681
31628
|
* @function Highcharts.Chart#linkSeries
|
|
31682
|
-
* @
|
|
31629
|
+
* @emits Highcharts.Chart#event:afterLinkSeries
|
|
31683
31630
|
*/
|
|
31684
31631
|
Chart.prototype.linkSeries = function () {
|
|
31685
31632
|
var chart = this,
|
|
@@ -31907,7 +31854,7 @@
|
|
|
31907
31854
|
*
|
|
31908
31855
|
* @function Highcharts.Chart#destroy
|
|
31909
31856
|
*
|
|
31910
|
-
* @
|
|
31857
|
+
* @emits Highcharts.Chart#event:destroy
|
|
31911
31858
|
*/
|
|
31912
31859
|
Chart.prototype.destroy = function () {
|
|
31913
31860
|
var chart = this,
|
|
@@ -31959,7 +31906,7 @@
|
|
|
31959
31906
|
// Remove container and all SVG, check container as it can break in IE
|
|
31960
31907
|
// when destroyed before finished loading
|
|
31961
31908
|
if (container) {
|
|
31962
|
-
container.innerHTML =
|
|
31909
|
+
container.innerHTML = AST.emptyHTML;
|
|
31963
31910
|
removeEvent(container);
|
|
31964
31911
|
if (parentNode) {
|
|
31965
31912
|
discardElement(container);
|
|
@@ -31975,7 +31922,7 @@
|
|
|
31975
31922
|
*
|
|
31976
31923
|
* @private
|
|
31977
31924
|
* @function Highcharts.Chart#firstRender
|
|
31978
|
-
* @
|
|
31925
|
+
* @emits Highcharts.Chart#event:beforeRender
|
|
31979
31926
|
*/
|
|
31980
31927
|
Chart.prototype.firstRender = function () {
|
|
31981
31928
|
var chart = this,
|
|
@@ -32039,8 +31986,8 @@
|
|
|
32039
31986
|
*
|
|
32040
31987
|
* @private
|
|
32041
31988
|
* @function Highcharts.Chart#onload
|
|
32042
|
-
* @
|
|
32043
|
-
* @
|
|
31989
|
+
* @emits Highcharts.Chart#event:load
|
|
31990
|
+
* @emits Highcharts.Chart#event:render
|
|
32044
31991
|
*/
|
|
32045
31992
|
Chart.prototype.onload = function () {
|
|
32046
31993
|
// Run callbacks, first the ones registered by modules, then user's one
|
|
@@ -32086,8 +32033,8 @@
|
|
|
32086
32033
|
* @return {Highcharts.Series}
|
|
32087
32034
|
* The newly created series object.
|
|
32088
32035
|
*
|
|
32089
|
-
* @
|
|
32090
|
-
* @
|
|
32036
|
+
* @emits Highcharts.Chart#event:addSeries
|
|
32037
|
+
* @emits Highcharts.Chart#event:afterAddSeries
|
|
32091
32038
|
*/
|
|
32092
32039
|
Chart.prototype.addSeries = function (options, redraw, animation) {
|
|
32093
32040
|
var chart = this;
|
|
@@ -32346,8 +32293,8 @@
|
|
|
32346
32293
|
* Whether to apply animation, and optionally animation
|
|
32347
32294
|
* configuration.
|
|
32348
32295
|
*
|
|
32349
|
-
* @
|
|
32350
|
-
* @
|
|
32296
|
+
* @emits Highcharts.Chart#event:update
|
|
32297
|
+
* @emits Highcharts.Chart#event:afterUpdate
|
|
32351
32298
|
*/
|
|
32352
32299
|
Chart.prototype.update = function (options, redraw, oneToOne, animation) {
|
|
32353
32300
|
var chart = this,
|
|
@@ -32615,8 +32562,8 @@
|
|
|
32615
32562
|
*
|
|
32616
32563
|
* @function Highcharts.Chart#showResetZoom
|
|
32617
32564
|
*
|
|
32618
|
-
* @
|
|
32619
|
-
* @
|
|
32565
|
+
* @emits Highcharts.Chart#event:afterShowResetZoom
|
|
32566
|
+
* @emits Highcharts.Chart#event:beforeShowResetZoom
|
|
32620
32567
|
*/
|
|
32621
32568
|
Chart.prototype.showResetZoom = function () {
|
|
32622
32569
|
var chart = this,
|
|
@@ -32653,7 +32600,7 @@
|
|
|
32653
32600
|
*
|
|
32654
32601
|
* @function Highcharts.Chart#zoomOut
|
|
32655
32602
|
*
|
|
32656
|
-
* @
|
|
32603
|
+
* @emits Highcharts.Chart#event:selection
|
|
32657
32604
|
*/
|
|
32658
32605
|
Chart.prototype.zoomOut = function () {
|
|
32659
32606
|
fireEvent(this, 'selection', { resetSelection: true }, this.zoom);
|
|
@@ -32668,7 +32615,8 @@
|
|
|
32668
32615
|
Chart.prototype.zoom = function (event) {
|
|
32669
32616
|
var chart = this,
|
|
32670
32617
|
pointer = chart.pointer,
|
|
32671
|
-
mouseDownPos =
|
|
32618
|
+
mouseDownPos = chart.inverted ?
|
|
32619
|
+
pointer.mouseDownX : pointer.mouseDownY;
|
|
32672
32620
|
var displayButton = false,
|
|
32673
32621
|
hasZoomed;
|
|
32674
32622
|
// If zoom is called with no arguments, reset the axes
|
|
@@ -34769,9 +34717,9 @@
|
|
|
34769
34717
|
*/
|
|
34770
34718
|
// eslint-disable-next-line valid-jsdoc
|
|
34771
34719
|
/**
|
|
34772
|
-
* Callback JavaScript function to format the data label. Note that
|
|
34773
|
-
*
|
|
34774
|
-
*
|
|
34720
|
+
* Callback JavaScript function to format the data label. Note that if a
|
|
34721
|
+
* `format` is defined, the format takes precedence and the formatter is
|
|
34722
|
+
* ignored.
|
|
34775
34723
|
*
|
|
34776
34724
|
* @sample {highmaps} maps/plotoptions/series-datalabels-format/
|
|
34777
34725
|
* Formatted value
|
|
@@ -34780,7 +34728,8 @@
|
|
|
34780
34728
|
*/
|
|
34781
34729
|
formatter: function () {
|
|
34782
34730
|
var numberFormatter = this.series.chart.numberFormatter;
|
|
34783
|
-
return typeof this.y !== 'number' ?
|
|
34731
|
+
return typeof this.y !== 'number' ?
|
|
34732
|
+
'' : numberFormatter(this.y, -1);
|
|
34784
34733
|
},
|
|
34785
34734
|
/**
|
|
34786
34735
|
* For points with an extent, like columns or map areas, whether to
|
|
@@ -35861,7 +35810,6 @@
|
|
|
35861
35810
|
*
|
|
35862
35811
|
* @private
|
|
35863
35812
|
* @function Highcharts.Series#hasData
|
|
35864
|
-
* @return {boolean}
|
|
35865
35813
|
*/
|
|
35866
35814
|
Series.prototype.hasData = function () {
|
|
35867
35815
|
return ((this.visible &&
|
|
@@ -35879,7 +35827,6 @@
|
|
|
35879
35827
|
*
|
|
35880
35828
|
* @private
|
|
35881
35829
|
* @function Highcharts.Series#autoIncrement
|
|
35882
|
-
* @return {number}
|
|
35883
35830
|
*/
|
|
35884
35831
|
Series.prototype.autoIncrement = function (x) {
|
|
35885
35832
|
var options = this.options,
|
|
@@ -35940,13 +35887,9 @@
|
|
|
35940
35887
|
* not redraw the series. For API usage, use {@link Series#update}.
|
|
35941
35888
|
* @private
|
|
35942
35889
|
* @function Highcharts.Series#setOptions
|
|
35943
|
-
*
|
|
35944
35890
|
* @param {Highcharts.SeriesOptionsType} itemOptions
|
|
35945
35891
|
* The series options.
|
|
35946
|
-
*
|
|
35947
|
-
* @return {Highcharts.SeriesOptionsType}
|
|
35948
|
-
*
|
|
35949
|
-
* @fires Highcharts.Series#event:afterSetOptions
|
|
35892
|
+
* @emits Highcharts.Series#event:afterSetOptions
|
|
35950
35893
|
*/
|
|
35951
35894
|
Series.prototype.setOptions = function (itemOptions) {
|
|
35952
35895
|
var chart = this.chart,
|
|
@@ -36104,7 +36047,6 @@
|
|
|
36104
36047
|
*
|
|
36105
36048
|
* @private
|
|
36106
36049
|
* @function Highcharts.Series#getPointsCollection
|
|
36107
|
-
* @return {Array<Highcharts.Point>}
|
|
36108
36050
|
*/
|
|
36109
36051
|
Series.prototype.getPointsCollection = function () {
|
|
36110
36052
|
return (this.hasGroupedData ? this.points : this.data) || [];
|
|
@@ -36115,7 +36057,6 @@
|
|
|
36115
36057
|
*
|
|
36116
36058
|
* @private
|
|
36117
36059
|
* @function Highcharts.Series#getSymbol
|
|
36118
|
-
* @return {void}
|
|
36119
36060
|
*/
|
|
36120
36061
|
Series.prototype.getSymbol = function () {
|
|
36121
36062
|
var seriesMarkerOption = this.options.marker;
|
|
@@ -36127,14 +36068,13 @@
|
|
|
36127
36068
|
*
|
|
36128
36069
|
* @private
|
|
36129
36070
|
* @function Highcharts.Series#findPointIndex
|
|
36130
|
-
* @param
|
|
36131
|
-
*
|
|
36132
|
-
* @param
|
|
36133
|
-
*
|
|
36134
|
-
*
|
|
36135
|
-
* @
|
|
36136
|
-
*
|
|
36137
|
-
* match is found.
|
|
36071
|
+
* @param {Highcharts.PointOptionsObject} optionsObject
|
|
36072
|
+
* The options of the point.
|
|
36073
|
+
* @param {number} fromIndex
|
|
36074
|
+
* The index to start searching from, used for optimizing series with
|
|
36075
|
+
* required sorting.
|
|
36076
|
+
* @return {number|undefined}
|
|
36077
|
+
* Returns the index of a matching point, or undefined if no match is found.
|
|
36138
36078
|
*/
|
|
36139
36079
|
Series.prototype.findPointIndex = function (optionsObject, fromIndex) {
|
|
36140
36080
|
var id = optionsObject.id,
|
|
@@ -36517,11 +36457,8 @@
|
|
|
36517
36457
|
*
|
|
36518
36458
|
* @private
|
|
36519
36459
|
* @function Highcharts.Series#sortData
|
|
36520
|
-
*
|
|
36521
36460
|
* @param {Array<Highcharts.PointOptionsType>} data
|
|
36522
36461
|
* Force data grouping.
|
|
36523
|
-
*
|
|
36524
|
-
* @return {Array<Highcharts.PointOptionsObject>}
|
|
36525
36462
|
*/
|
|
36526
36463
|
Series.prototype.sortData = function (data) {
|
|
36527
36464
|
var series = this,
|
|
@@ -36583,8 +36520,7 @@
|
|
|
36583
36520
|
* @private
|
|
36584
36521
|
* @function Highcharts.Series#getProcessedData
|
|
36585
36522
|
* @param {boolean} [forceExtremesFromAll]
|
|
36586
|
-
*
|
|
36587
|
-
* @return {Highcharts.SeriesProcessedDataObject}
|
|
36523
|
+
* Force getting extremes of a total series data range.
|
|
36588
36524
|
*/
|
|
36589
36525
|
Series.prototype.getProcessedData = function (forceExtremesFromAll) {
|
|
36590
36526
|
var series = this,
|
|
@@ -36680,8 +36616,7 @@
|
|
|
36680
36616
|
* @private
|
|
36681
36617
|
* @function Highcharts.Series#processData
|
|
36682
36618
|
* @param {boolean} [force]
|
|
36683
|
-
*
|
|
36684
|
-
* @return {boolean|undefined}
|
|
36619
|
+
* Force data grouping.
|
|
36685
36620
|
*/
|
|
36686
36621
|
Series.prototype.processData = function (force) {
|
|
36687
36622
|
var series = this,
|
|
@@ -36702,7 +36637,7 @@
|
|
|
36702
36637
|
series.cropStart = processedData.cropStart;
|
|
36703
36638
|
series.processedXData = processedData.xData;
|
|
36704
36639
|
series.processedYData = processedData.yData;
|
|
36705
|
-
series.closestPointRange = series.basePointRange = processedData.closestPointRange;
|
|
36640
|
+
series.closestPointRange = (series.basePointRange = processedData.closestPointRange);
|
|
36706
36641
|
fireEvent(series, 'afterProcessData');
|
|
36707
36642
|
};
|
|
36708
36643
|
/**
|
|
@@ -36712,12 +36647,6 @@
|
|
|
36712
36647
|
*
|
|
36713
36648
|
* @private
|
|
36714
36649
|
* @function Highcharts.Series#cropData
|
|
36715
|
-
* @param {Array<number>} xData
|
|
36716
|
-
* @param {Array<number>} yData
|
|
36717
|
-
* @param {number} min
|
|
36718
|
-
* @param {number} max
|
|
36719
|
-
* @param {number} [cropShoulder]
|
|
36720
|
-
* @return {Highcharts.SeriesCropDataObject}
|
|
36721
36650
|
*/
|
|
36722
36651
|
Series.prototype.cropData = function (xData, yData, min, max, cropShoulder) {
|
|
36723
36652
|
var dataLength = xData.length;
|
|
@@ -36835,7 +36764,8 @@
|
|
|
36835
36764
|
* @readonly
|
|
36836
36765
|
*/
|
|
36837
36766
|
// For faster access in Point.update
|
|
36838
|
-
point.index = hasGroupedData ?
|
|
36767
|
+
point.index = hasGroupedData ?
|
|
36768
|
+
(groupCropStartIndex + i) : cursor;
|
|
36839
36769
|
points[i] = point;
|
|
36840
36770
|
}
|
|
36841
36771
|
}
|
|
@@ -36895,12 +36825,9 @@
|
|
|
36895
36825
|
*
|
|
36896
36826
|
* @private
|
|
36897
36827
|
* @function Highcharts.Series#getXExtremes
|
|
36898
|
-
*
|
|
36899
36828
|
* @param {Array<number>} xData
|
|
36900
36829
|
* The data to inspect. Defaults to the current data within the visible
|
|
36901
36830
|
* range.
|
|
36902
|
-
*
|
|
36903
|
-
* @return {Highcharts.RangeObject}
|
|
36904
36831
|
*/
|
|
36905
36832
|
Series.prototype.getXExtremes = function (xData) {
|
|
36906
36833
|
return {
|
|
@@ -36914,14 +36841,11 @@
|
|
|
36914
36841
|
*
|
|
36915
36842
|
* @private
|
|
36916
36843
|
* @function Highcharts.Series#getExtremes
|
|
36917
|
-
*
|
|
36918
36844
|
* @param {Array<number>} [yData]
|
|
36919
36845
|
* The data to inspect. Defaults to the current data within the visible
|
|
36920
36846
|
* range.
|
|
36921
36847
|
* @param {boolean} [forceExtremesFromAll]
|
|
36922
36848
|
* Force getting extremes of a total series data range.
|
|
36923
|
-
*
|
|
36924
|
-
* @return {Highcharts.DataExtremesObject}
|
|
36925
36849
|
*/
|
|
36926
36850
|
Series.prototype.getExtremes = function (yData, forceExtremesFromAll) {
|
|
36927
36851
|
var xAxis = this.xAxis,
|
|
@@ -37021,11 +36945,8 @@
|
|
|
37021
36945
|
*
|
|
37022
36946
|
* @private
|
|
37023
36947
|
* @function Highcharts.Series.getFirstValidPoint
|
|
37024
|
-
*
|
|
37025
36948
|
* @param {Array<Highcharts.PointOptionsType>} data
|
|
37026
36949
|
* Array of options for points
|
|
37027
|
-
*
|
|
37028
|
-
* @return {Highcharts.PointOptionsType}
|
|
37029
36950
|
*/
|
|
37030
36951
|
Series.prototype.getFirstValidPoint = function (data) {
|
|
37031
36952
|
var dataLength = data.length;
|
|
@@ -37045,7 +36966,7 @@
|
|
|
37045
36966
|
*
|
|
37046
36967
|
* @function Highcharts.Series#translate
|
|
37047
36968
|
*
|
|
37048
|
-
* @
|
|
36969
|
+
* @emits Highcharts.Series#events:translate
|
|
37049
36970
|
*/
|
|
37050
36971
|
Series.prototype.translate = function () {
|
|
37051
36972
|
if (!this.processedXData) { // hidden series
|
|
@@ -37093,8 +37014,10 @@
|
|
|
37093
37014
|
(stackThreshold ? 0 : threshold) ?
|
|
37094
37015
|
'-' :
|
|
37095
37016
|
'') + series.stackKey];
|
|
37096
|
-
if (yAxis.positiveValuesOnly &&
|
|
37097
|
-
|
|
37017
|
+
if (yAxis.positiveValuesOnly &&
|
|
37018
|
+
!yAxis.validatePositiveValue(yValue) ||
|
|
37019
|
+
xAxis.positiveValuesOnly &&
|
|
37020
|
+
!xAxis.validatePositiveValue(xValue)) {
|
|
37098
37021
|
point.isNull = true;
|
|
37099
37022
|
}
|
|
37100
37023
|
// Get the plotX translation
|
|
@@ -37229,8 +37152,6 @@
|
|
|
37229
37152
|
*
|
|
37230
37153
|
* @private
|
|
37231
37154
|
* @function Highcharts.Series#getClip
|
|
37232
|
-
*
|
|
37233
|
-
* @return {Highcharts.Dictionary<number>}
|
|
37234
37155
|
*/
|
|
37235
37156
|
Series.prototype.getClipBox = function () {
|
|
37236
37157
|
var _a = this,
|
|
@@ -37380,7 +37301,7 @@
|
|
|
37380
37301
|
* @private
|
|
37381
37302
|
* @function Highcharts.Series#afterAnimate
|
|
37382
37303
|
*
|
|
37383
|
-
* @
|
|
37304
|
+
* @emits Highcharts.Series#event:afterAnimate
|
|
37384
37305
|
*/
|
|
37385
37306
|
Series.prototype.afterAnimate = function () {
|
|
37386
37307
|
var _this = this;
|
|
@@ -37601,7 +37522,7 @@
|
|
|
37601
37522
|
// Handle hover and select states
|
|
37602
37523
|
state = state || 'normal';
|
|
37603
37524
|
if (state) {
|
|
37604
|
-
seriesStateOptions = seriesMarkerOptions.states[state] || {};
|
|
37525
|
+
seriesStateOptions = (seriesMarkerOptions.states[state] || {});
|
|
37605
37526
|
pointStateOptions = (pointMarkerOptions.states &&
|
|
37606
37527
|
pointMarkerOptions.states[state]) || {};
|
|
37607
37528
|
strokeWidth = pick(pointStateOptions.lineWidth, seriesStateOptions.lineWidth, strokeWidth + pick(pointStateOptions.lineWidthPlus, seriesStateOptions.lineWidthPlus, 0));
|
|
@@ -37626,7 +37547,7 @@
|
|
|
37626
37547
|
* @private
|
|
37627
37548
|
* @function Highcharts.Series#destroy
|
|
37628
37549
|
*
|
|
37629
|
-
* @
|
|
37550
|
+
* @emits Highcharts.Series#event:destroy
|
|
37630
37551
|
*/
|
|
37631
37552
|
Series.prototype.destroy = function (keepEventsForUpdate) {
|
|
37632
37553
|
var series = this,
|
|
@@ -37921,8 +37842,6 @@
|
|
|
37921
37842
|
* Get the translation and scale for the plot area of this series.
|
|
37922
37843
|
*
|
|
37923
37844
|
* @function Highcharts.Series#getPlotBox
|
|
37924
|
-
*
|
|
37925
|
-
* @return {Highcharts.SeriesPlotBoxObject}
|
|
37926
37845
|
*/
|
|
37927
37846
|
Series.prototype.getPlotBox = function () {
|
|
37928
37847
|
var chart = this.chart;
|
|
@@ -37967,7 +37886,7 @@
|
|
|
37967
37886
|
*
|
|
37968
37887
|
* @function Highcharts.Series#render
|
|
37969
37888
|
*
|
|
37970
|
-
* @
|
|
37889
|
+
* @emits Highcharts.Series#event:afterRender
|
|
37971
37890
|
*/
|
|
37972
37891
|
Series.prototype.render = function () {
|
|
37973
37892
|
var series = this,
|
|
@@ -38413,7 +38332,7 @@
|
|
|
38413
38332
|
* @param {boolean} [withEvent=true]
|
|
38414
38333
|
* Used internally, whether to fire the series `addPoint` event.
|
|
38415
38334
|
*
|
|
38416
|
-
* @
|
|
38335
|
+
* @emits Highcharts.Series#event:addPoint
|
|
38417
38336
|
*/
|
|
38418
38337
|
Series.prototype.addPoint = function (options, redraw, shift, animation, withEvent) {
|
|
38419
38338
|
var series = this,
|
|
@@ -38505,7 +38424,7 @@
|
|
|
38505
38424
|
* @param {boolean|Partial<Highcharts.AnimationOptionsObject>} [animation]
|
|
38506
38425
|
* Whether and optionally how the series should be animated.
|
|
38507
38426
|
*
|
|
38508
|
-
* @
|
|
38427
|
+
* @emits Highcharts.Point#event:remove
|
|
38509
38428
|
*/
|
|
38510
38429
|
Series.prototype.removePoint = function (i, redraw, animation) {
|
|
38511
38430
|
var series = this,
|
|
@@ -38559,7 +38478,7 @@
|
|
|
38559
38478
|
* @param {boolean} [withEvent=true]
|
|
38560
38479
|
* Used internally, whether to fire the series `remove` event.
|
|
38561
38480
|
*
|
|
38562
|
-
* @
|
|
38481
|
+
* @emits Highcharts.Series#event:remove
|
|
38563
38482
|
*/
|
|
38564
38483
|
Series.prototype.remove = function (redraw, animation, withEvent, keepEvents) {
|
|
38565
38484
|
var series = this,
|
|
@@ -38609,8 +38528,8 @@
|
|
|
38609
38528
|
* more operations on the chart, it is a good idea to set redraw to
|
|
38610
38529
|
* false and call {@link Chart#redraw} after.
|
|
38611
38530
|
*
|
|
38612
|
-
* @
|
|
38613
|
-
* @
|
|
38531
|
+
* @emits Highcharts.Series#event:update
|
|
38532
|
+
* @emits Highcharts.Series#event:afterUpdate
|
|
38614
38533
|
*/
|
|
38615
38534
|
Series.prototype.update = function (options, redraw) {
|
|
38616
38535
|
options = cleanRecursively(options, this.userOptions);
|
|
@@ -38692,7 +38611,9 @@
|
|
|
38692
38611
|
series.index : oldOptions.index,
|
|
38693
38612
|
pointStart: pick(
|
|
38694
38613
|
// when updating from blank (#7933)
|
|
38695
|
-
plotOptions &&
|
|
38614
|
+
(plotOptions &&
|
|
38615
|
+
plotOptions.series &&
|
|
38616
|
+
plotOptions.series.pointStart), oldOptions.pointStart,
|
|
38696
38617
|
// when updating after addPoint
|
|
38697
38618
|
series.xData[0])
|
|
38698
38619
|
}, (!keepPoints && { data: series.options.data }), options);
|
|
@@ -38722,8 +38643,7 @@
|
|
|
38722
38643
|
// Legacy (IE < 11)
|
|
38723
38644
|
}
|
|
38724
38645
|
else {
|
|
38725
|
-
var ownEvents = Object.hasOwnProperty.call(series, 'hcEvents') &&
|
|
38726
|
-
series.hcEvents;
|
|
38646
|
+
var ownEvents = Object.hasOwnProperty.call(series, 'hcEvents') && series.hcEvents;
|
|
38727
38647
|
for (n in initialSeriesProto) { // eslint-disable-line guard-for-in
|
|
38728
38648
|
series[n] = void 0;
|
|
38729
38649
|
}
|
|
@@ -38821,13 +38741,17 @@
|
|
|
38821
38741
|
return option !== oldOption;
|
|
38822
38742
|
}
|
|
38823
38743
|
return option !==
|
|
38824
|
-
pick(plotOptions &&
|
|
38744
|
+
pick(plotOptions &&
|
|
38745
|
+
plotOptions[this.type] &&
|
|
38746
|
+
plotOptions[this.type][optionName], plotOptions &&
|
|
38747
|
+
plotOptions.series &&
|
|
38748
|
+
plotOptions.series[optionName], option);
|
|
38825
38749
|
};
|
|
38826
38750
|
/**
|
|
38827
38751
|
* Runs on mouse over the series graphical items.
|
|
38828
38752
|
*
|
|
38829
38753
|
* @function Highcharts.Series#onMouseOver
|
|
38830
|
-
* @
|
|
38754
|
+
* @emits Highcharts.Series#event:mouseOver
|
|
38831
38755
|
*/
|
|
38832
38756
|
Series.prototype.onMouseOver = function () {
|
|
38833
38757
|
var series = this,
|
|
@@ -38859,7 +38783,7 @@
|
|
|
38859
38783
|
*
|
|
38860
38784
|
* @function Highcharts.Series#onMouseOut
|
|
38861
38785
|
*
|
|
38862
|
-
* @
|
|
38786
|
+
* @emits Highcharts.Series#event:mouseOut
|
|
38863
38787
|
*/
|
|
38864
38788
|
Series.prototype.onMouseOut = function () {
|
|
38865
38789
|
// trigger the event only if listeners exist
|
|
@@ -39014,8 +38938,8 @@
|
|
|
39014
38938
|
* operations on the chart, it is a good idea to set redraw to false and
|
|
39015
38939
|
* call {@link Chart#redraw|chart.redraw()} after.
|
|
39016
38940
|
*
|
|
39017
|
-
* @
|
|
39018
|
-
* @
|
|
38941
|
+
* @emits Highcharts.Series#event:hide
|
|
38942
|
+
* @emits Highcharts.Series#event:show
|
|
39019
38943
|
*/
|
|
39020
38944
|
Series.prototype.setVisible = function (vis, redraw) {
|
|
39021
38945
|
var series = this,
|
|
@@ -39079,7 +39003,7 @@
|
|
|
39079
39003
|
* Toggle visibility from a button
|
|
39080
39004
|
*
|
|
39081
39005
|
* @function Highcharts.Series#show
|
|
39082
|
-
* @
|
|
39006
|
+
* @emits Highcharts.Series#event:show
|
|
39083
39007
|
*/
|
|
39084
39008
|
Series.prototype.show = function () {
|
|
39085
39009
|
this.setVisible(true);
|
|
@@ -39093,7 +39017,7 @@
|
|
|
39093
39017
|
* Toggle visibility from a button
|
|
39094
39018
|
*
|
|
39095
39019
|
* @function Highcharts.Series#hide
|
|
39096
|
-
* @
|
|
39020
|
+
* @emits Highcharts.Series#event:hide
|
|
39097
39021
|
*/
|
|
39098
39022
|
Series.prototype.hide = function () {
|
|
39099
39023
|
this.setVisible(false);
|
|
@@ -39114,8 +39038,8 @@
|
|
|
39114
39038
|
* True to select the series, false to unselect. If undefined, the selection
|
|
39115
39039
|
* state is toggled.
|
|
39116
39040
|
*
|
|
39117
|
-
* @
|
|
39118
|
-
* @
|
|
39041
|
+
* @emits Highcharts.Series#event:select
|
|
39042
|
+
* @emits Highcharts.Series#event:unselect
|
|
39119
39043
|
*/
|
|
39120
39044
|
Series.prototype.select = function (selected) {
|
|
39121
39045
|
var series = this;
|
|
@@ -39133,10 +39057,6 @@
|
|
|
39133
39057
|
* Checks if a tooltip should be shown for a given point.
|
|
39134
39058
|
*
|
|
39135
39059
|
* @private
|
|
39136
|
-
* @param {number} plotX
|
|
39137
|
-
* @param {number} plotY
|
|
39138
|
-
* @param {Highcharts.ChartIsInsideOptionsObject} [options]
|
|
39139
|
-
* @return {boolean}
|
|
39140
39060
|
*/
|
|
39141
39061
|
Series.prototype.shouldShowTooltip = function (plotX, plotY, options) {
|
|
39142
39062
|
if (options === void 0) { options = {}; }
|
|
@@ -39573,7 +39493,7 @@
|
|
|
39573
39493
|
if (scrollableMinWidth) {
|
|
39574
39494
|
this.scrollablePixelsX = scrollablePixelsX = Math.max(0, scrollableMinWidth - this.chartWidth);
|
|
39575
39495
|
if (scrollablePixelsX) {
|
|
39576
|
-
this.scrollablePlotBox = this.renderer.scrollablePlotBox = merge(this.plotBox);
|
|
39496
|
+
this.scrollablePlotBox = (this.renderer.scrollablePlotBox = merge(this.plotBox));
|
|
39577
39497
|
this.plotBox.width = this.plotWidth += scrollablePixelsX;
|
|
39578
39498
|
if (this.inverted) {
|
|
39579
39499
|
this.clipBox.height += scrollablePixelsX;
|
|
@@ -39591,7 +39511,7 @@
|
|
|
39591
39511
|
else if (scrollableMinHeight) {
|
|
39592
39512
|
this.scrollablePixelsY = scrollablePixelsY = Math.max(0, scrollableMinHeight - this.chartHeight);
|
|
39593
39513
|
if (scrollablePixelsY) {
|
|
39594
|
-
this.scrollablePlotBox = this.renderer.scrollablePlotBox = merge(this.plotBox);
|
|
39514
|
+
this.scrollablePlotBox = (this.renderer.scrollablePlotBox = merge(this.plotBox));
|
|
39595
39515
|
this.plotBox.height = this.plotHeight += scrollablePixelsY;
|
|
39596
39516
|
if (this.inverted) {
|
|
39597
39517
|
this.clipBox.width += scrollablePixelsY;
|
|
@@ -40135,7 +40055,8 @@
|
|
|
40135
40055
|
chart = axis.chart,
|
|
40136
40056
|
renderer = chart.renderer,
|
|
40137
40057
|
stacks = stacking.stacks,
|
|
40138
|
-
stackLabelsAnim = axis.options.stackLabels &&
|
|
40058
|
+
stackLabelsAnim = axis.options.stackLabels &&
|
|
40059
|
+
axis.options.stackLabels.animation,
|
|
40139
40060
|
animationConfig = getDeferredAnimation(chart,
|
|
40140
40061
|
stackLabelsAnim || false),
|
|
40141
40062
|
stackTotalGroup = stacking.stackTotalGroup = (stacking.stackTotalGroup ||
|
|
@@ -40282,6 +40203,7 @@
|
|
|
40282
40203
|
r: options.borderRadius || 0,
|
|
40283
40204
|
text: str,
|
|
40284
40205
|
rotation: options.rotation,
|
|
40206
|
+
// set default padding to 5 as it is in datalabels #12308
|
|
40285
40207
|
padding: pick(options.padding, 5),
|
|
40286
40208
|
visibility: 'hidden' // hidden until setOffset is called
|
|
40287
40209
|
};
|
|
@@ -40357,7 +40279,8 @@
|
|
|
40357
40279
|
}
|
|
40358
40280
|
else {
|
|
40359
40281
|
boxOffsetX = chart.inverted ?
|
|
40360
|
-
(isNegative ? bBox.width + padding : -padding) :
|
|
40282
|
+
(isNegative ? bBox.width + padding : -padding) :
|
|
40283
|
+
bBox.width / 2;
|
|
40361
40284
|
}
|
|
40362
40285
|
}
|
|
40363
40286
|
boxOffsetY = chart.inverted ?
|
|
@@ -40402,22 +40325,6 @@
|
|
|
40402
40325
|
/**
|
|
40403
40326
|
* @private
|
|
40404
40327
|
* @function Highcharts.StackItem#getStackBox
|
|
40405
|
-
*
|
|
40406
|
-
* @param {Highcharts.Chart} chart
|
|
40407
|
-
*
|
|
40408
|
-
* @param {Highcharts.StackItem} stackItem
|
|
40409
|
-
*
|
|
40410
|
-
* @param {number} x
|
|
40411
|
-
*
|
|
40412
|
-
* @param {number} y
|
|
40413
|
-
*
|
|
40414
|
-
* @param {number} xWidth
|
|
40415
|
-
*
|
|
40416
|
-
* @param {number} h
|
|
40417
|
-
*
|
|
40418
|
-
* @param {Highcharts.Axis} axis
|
|
40419
|
-
*
|
|
40420
|
-
* @return {Highcharts.BBoxObject}
|
|
40421
40328
|
*/
|
|
40422
40329
|
StackItem.prototype.getStackBox = function (chart, stackItem, x, y, xWidth, h, axis) {
|
|
40423
40330
|
var reversed = stackItem.axis.reversed,
|
|
@@ -40427,7 +40334,8 @@
|
|
|
40427
40334
|
neg = (stackItem.isNegative && !reversed) ||
|
|
40428
40335
|
(!stackItem.isNegative && reversed); // #4056
|
|
40429
40336
|
return {
|
|
40430
|
-
x: inverted ?
|
|
40337
|
+
x: inverted ?
|
|
40338
|
+
(neg ? y - axis.right : y - h + axis.pos - chart.plotLeft) :
|
|
40431
40339
|
x + chart.xAxis[0].transB - chart.plotLeft,
|
|
40432
40340
|
y: inverted ?
|
|
40433
40341
|
axis.height - x - xWidth :
|
|
@@ -40671,11 +40579,6 @@
|
|
|
40671
40579
|
*
|
|
40672
40580
|
* @private
|
|
40673
40581
|
* @function Highcharts.Series#getStackIndicator
|
|
40674
|
-
* @param {Highcharts.StackItemIndicatorObject|undefined} stackIndicator
|
|
40675
|
-
* @param {number} x
|
|
40676
|
-
* @param {number} index
|
|
40677
|
-
* @param {string} [key]
|
|
40678
|
-
* @return {Highcharts.StackItemIndicatorObject}
|
|
40679
40582
|
*/
|
|
40680
40583
|
Series.prototype.getStackIndicator = function (stackIndicator, x, index, key) {
|
|
40681
40584
|
// Update stack indicator, when:
|
|
@@ -41489,7 +41392,9 @@
|
|
|
41489
41392
|
}
|
|
41490
41393
|
isNull = points[i].isNull;
|
|
41491
41394
|
plotX = pick(points[i].rectPlotX, points[i].plotX);
|
|
41492
|
-
yBottom = stacking ?
|
|
41395
|
+
yBottom = stacking ?
|
|
41396
|
+
pick(points[i].yBottom, translatedThreshold) :
|
|
41397
|
+
translatedThreshold;
|
|
41493
41398
|
if (!isNull || connectNulls) {
|
|
41494
41399
|
if (!connectNulls) {
|
|
41495
41400
|
addDummyPoints(i, i - 1, 'left');
|
|
@@ -41593,24 +41498,22 @@
|
|
|
41593
41498
|
var si = yAxisSeries[i].index;
|
|
41594
41499
|
stackPoint = otherStack.points[si];
|
|
41595
41500
|
if (!stackPoint) {
|
|
41596
|
-
// If the next point in this series
|
|
41597
|
-
//
|
|
41598
|
-
//
|
|
41599
|
-
// point.rightNull = true.
|
|
41501
|
+
// If the next point in this series is
|
|
41502
|
+
// missing, mark the point with
|
|
41503
|
+
// point.leftNull or point.rightNull = true.
|
|
41600
41504
|
if (si === series.index) {
|
|
41601
41505
|
pointMap[x][nullName] = true;
|
|
41602
|
-
// If there are missing points in
|
|
41603
|
-
//
|
|
41604
|
-
//
|
|
41605
|
-
// to
|
|
41606
|
-
// and add a hiatus to the left or
|
|
41506
|
+
// If there are missing points in the next
|
|
41507
|
+
// stack in any of the series below this
|
|
41508
|
+
// one, we need to substract the missing
|
|
41509
|
+
// values and add a hiatus to the left or
|
|
41607
41510
|
// right.
|
|
41608
41511
|
}
|
|
41609
41512
|
else if (visibleSeries_1[i]) {
|
|
41610
|
-
stackedValues =
|
|
41611
|
-
stack[x].points[si];
|
|
41513
|
+
stackedValues = stack[x].points[si];
|
|
41612
41514
|
if (stackedValues) {
|
|
41613
|
-
cliff -= stackedValues[1] -
|
|
41515
|
+
cliff -= (stackedValues[1] -
|
|
41516
|
+
stackedValues[0]);
|
|
41614
41517
|
}
|
|
41615
41518
|
}
|
|
41616
41519
|
}
|
|
@@ -41959,14 +41862,6 @@
|
|
|
41959
41862
|
*
|
|
41960
41863
|
* @private
|
|
41961
41864
|
* @function Highcharts.seriesTypes.spline#getPointSpline
|
|
41962
|
-
*
|
|
41963
|
-
* @param {Array<Highcharts.Point>}
|
|
41964
|
-
*
|
|
41965
|
-
* @param {Highcharts.Point} point
|
|
41966
|
-
*
|
|
41967
|
-
* @param {number} i
|
|
41968
|
-
*
|
|
41969
|
-
* @return {Highcharts.SVGPathArray}
|
|
41970
41865
|
*/
|
|
41971
41866
|
SplineSeries.prototype.getPointSpline = function (points, point, i) {
|
|
41972
41867
|
var
|
|
@@ -42501,7 +42396,9 @@
|
|
|
42501
42396
|
options = series.options,
|
|
42502
42397
|
inverted = this.chart.inverted,
|
|
42503
42398
|
attr = {},
|
|
42504
|
-
translateProp = inverted ?
|
|
42399
|
+
translateProp = inverted ?
|
|
42400
|
+
'translateX' :
|
|
42401
|
+
'translateY';
|
|
42505
42402
|
var translateStart,
|
|
42506
42403
|
translatedThreshold;
|
|
42507
42404
|
if (init) {
|
|
@@ -42562,7 +42459,6 @@
|
|
|
42562
42459
|
*
|
|
42563
42460
|
* @private
|
|
42564
42461
|
* @function Highcharts.seriesTypes.column#getColumnMetrics
|
|
42565
|
-
* @return {Highcharts.ColumnMetricsObject}
|
|
42566
42462
|
*/
|
|
42567
42463
|
ColumnSeries.prototype.getColumnMetrics = function () {
|
|
42568
42464
|
var series = this,
|
|
@@ -42593,7 +42489,8 @@
|
|
|
42593
42489
|
!series.chart.options.chart.ignoreHiddenSeries) &&
|
|
42594
42490
|
yAxis.len === otherYAxis.len &&
|
|
42595
42491
|
yAxis.pos === otherYAxis.pos) { // #642, #2086
|
|
42596
|
-
if (otherOptions.stacking &&
|
|
42492
|
+
if (otherOptions.stacking &&
|
|
42493
|
+
otherOptions.stacking !== 'group') {
|
|
42597
42494
|
stackKey = otherSeries.stackKey;
|
|
42598
42495
|
if (typeof stackGroups[stackKey] ===
|
|
42599
42496
|
'undefined') {
|
|
@@ -42705,21 +42602,21 @@
|
|
|
42705
42602
|
if (!point.isNull && metrics.columnCount > 1) {
|
|
42706
42603
|
var indexInCategory_1 = 0;
|
|
42707
42604
|
var totalInCategory_1 = 0;
|
|
42708
|
-
// Loop over all the stacks on the Y axis. When stacking is
|
|
42709
|
-
//
|
|
42710
|
-
//
|
|
42711
|
-
//
|
|
42712
|
-
//
|
|
42605
|
+
// Loop over all the stacks on the Y axis. When stacking is enabled,
|
|
42606
|
+
// these are real point stacks. When stacking is not enabled, but
|
|
42607
|
+
// `centerInCategory` is true, there is one stack handling the
|
|
42608
|
+
// grouping of points in each category. This is done in the
|
|
42609
|
+
// `setGroupedPoints` function.
|
|
42713
42610
|
objectEach(this.yAxis.stacking && this.yAxis.stacking.stacks, function (stack) {
|
|
42714
42611
|
if (typeof point.x === 'number') {
|
|
42715
42612
|
var stackItem = stack[point.x.toString()];
|
|
42716
42613
|
if (stackItem) {
|
|
42717
42614
|
var pointValues = stackItem.points[_this.index],
|
|
42718
42615
|
total = stackItem.total;
|
|
42719
|
-
// If true `stacking` is enabled, count the
|
|
42720
|
-
//
|
|
42721
|
-
//
|
|
42722
|
-
//
|
|
42616
|
+
// If true `stacking` is enabled, count the total
|
|
42617
|
+
// number of non-null stacks in the category, and
|
|
42618
|
+
// note which index this point is within those
|
|
42619
|
+
// stacks.
|
|
42723
42620
|
if (stacking) {
|
|
42724
42621
|
if (pointValues) {
|
|
42725
42622
|
indexInCategory_1 = totalInCategory_1;
|
|
@@ -42727,8 +42624,8 @@
|
|
|
42727
42624
|
if (stackItem.hasValidPoints) {
|
|
42728
42625
|
totalInCategory_1++;
|
|
42729
42626
|
}
|
|
42730
|
-
// If `stacking` is not enabled, look for the
|
|
42731
|
-
//
|
|
42627
|
+
// If `stacking` is not enabled, look for the index
|
|
42628
|
+
// and total of the `group` stack.
|
|
42732
42629
|
}
|
|
42733
42630
|
else if (isArray(pointValues)) {
|
|
42734
42631
|
indexInCategory_1 = pointValues[1];
|
|
@@ -43931,8 +43828,10 @@
|
|
|
43931
43828
|
// Merge in series options for the point.
|
|
43932
43829
|
// @note dataLabelAttribs (like pointAttribs) would eradicate
|
|
43933
43830
|
// the need for dlOptions, and simplify the section below.
|
|
43934
|
-
pointOptions = splat(mergeArrays(seriesDlOptions,
|
|
43935
|
-
|
|
43831
|
+
pointOptions = splat(mergeArrays(seriesDlOptions,
|
|
43832
|
+
// dlOptions is used in treemaps
|
|
43833
|
+
(point.dlOptions ||
|
|
43834
|
+
(point.options && point.options.dataLabels))));
|
|
43936
43835
|
// Handle each individual data label for this point
|
|
43937
43836
|
pointOptions.forEach(function (labelOptions, i) {
|
|
43938
43837
|
// Options for one datalabel
|
|
@@ -43950,8 +43849,8 @@
|
|
|
43950
43849
|
style,
|
|
43951
43850
|
rotation,
|
|
43952
43851
|
attr,
|
|
43953
|
-
dataLabel = point.dataLabels ?
|
|
43954
|
-
point.dataLabel;
|
|
43852
|
+
dataLabel = point.dataLabels ?
|
|
43853
|
+
point.dataLabels[i] : point.dataLabel;
|
|
43955
43854
|
var labelDistance = pick(labelOptions.distance,
|
|
43956
43855
|
point.labelDistance),
|
|
43957
43856
|
isNew = !dataLabel;
|
|
@@ -44006,8 +43905,10 @@
|
|
|
44006
43905
|
}
|
|
44007
43906
|
// If the point is outside the plot area, destroy it. #678,
|
|
44008
43907
|
// #820
|
|
44009
|
-
if (dataLabel && (!labelEnabled ||
|
|
44010
|
-
|
|
43908
|
+
if (dataLabel && (!labelEnabled ||
|
|
43909
|
+
!defined(labelText) ||
|
|
43910
|
+
!!dataLabel.div !== !!labelOptions.useHTML)) {
|
|
43911
|
+
point.dataLabel = dataLabel =
|
|
44011
43912
|
point.dataLabel && point.dataLabel.destroy();
|
|
44012
43913
|
if (point.dataLabels) {
|
|
44013
43914
|
// Remove point.dataLabels if this was the last one
|
|
@@ -44034,11 +43935,11 @@
|
|
|
44034
43935
|
}
|
|
44035
43936
|
}
|
|
44036
43937
|
}
|
|
44037
|
-
// Individual labels are disabled if the are explicitly
|
|
44038
|
-
// disabled in the point options, or if they fall outside
|
|
44039
|
-
// the plot area.
|
|
44040
43938
|
}
|
|
44041
|
-
|
|
43939
|
+
// Individual labels are disabled if the are explicitly
|
|
43940
|
+
// disabled in the point options, or if they fall outside
|
|
43941
|
+
// the plot area.
|
|
43942
|
+
if (labelEnabled && defined(labelText)) {
|
|
44042
43943
|
if (!dataLabel) {
|
|
44043
43944
|
// Create new label element
|
|
44044
43945
|
point.dataLabels = point.dataLabels || [];
|
|
@@ -44052,7 +43953,8 @@
|
|
|
44052
43953
|
if (!i) {
|
|
44053
43954
|
point.dataLabel = dataLabel;
|
|
44054
43955
|
}
|
|
44055
|
-
dataLabel.addClass(' highcharts-data-label-color-' +
|
|
43956
|
+
dataLabel.addClass(' highcharts-data-label-color-' +
|
|
43957
|
+
point.colorIndex +
|
|
44056
43958
|
' ' + (labelOptions.className || '') +
|
|
44057
43959
|
( // #3398
|
|
44058
43960
|
labelOptions.useHTML ?
|
|
@@ -44080,7 +43982,7 @@
|
|
|
44080
43982
|
if (point.dataLabelPath &&
|
|
44081
43983
|
!labelOptions.textPath.enabled) {
|
|
44082
43984
|
// clean the DOM
|
|
44083
|
-
point.dataLabelPath = point.dataLabelPath.destroy();
|
|
43985
|
+
point.dataLabelPath = (point.dataLabelPath.destroy());
|
|
44084
43986
|
}
|
|
44085
43987
|
}
|
|
44086
43988
|
// Now the data label is created and placed at 0,0, so
|
|
@@ -45200,10 +45102,10 @@
|
|
|
45200
45102
|
* @param {boolean} sliced
|
|
45201
45103
|
* When undefined, the slice state is toggled.
|
|
45202
45104
|
*
|
|
45203
|
-
* @param {boolean} redraw
|
|
45105
|
+
* @param {boolean} [redraw]
|
|
45204
45106
|
* Whether to redraw the chart. True by default.
|
|
45205
45107
|
*
|
|
45206
|
-
* @param {boolean|Partial<Highcharts.AnimationOptionsObject>}
|
|
45108
|
+
* @param {boolean|Partial<Highcharts.AnimationOptionsObject>} [animation]
|
|
45207
45109
|
* Animation options.
|
|
45208
45110
|
*/
|
|
45209
45111
|
PiePoint.prototype.slice = function (sliced, redraw, animation) {
|
|
@@ -46279,7 +46181,7 @@
|
|
|
46279
46181
|
*/
|
|
46280
46182
|
borderWidth: 1,
|
|
46281
46183
|
/**
|
|
46282
|
-
* @ignore-
|
|
46184
|
+
* @ignore-option
|
|
46283
46185
|
* @private
|
|
46284
46186
|
*/
|
|
46285
46187
|
lineWidth: void 0,
|
|
@@ -47057,7 +46959,8 @@
|
|
|
47057
46959
|
if (alignValue) {
|
|
47058
46960
|
xOffset = +alignValue * boxWidth;
|
|
47059
46961
|
}
|
|
47060
|
-
else if (isNumber(label.x) &&
|
|
46962
|
+
else if (isNumber(label.x) &&
|
|
46963
|
+
Math.round(label.x) !== label.translateX) {
|
|
47061
46964
|
xOffset = label.x - label.translateX;
|
|
47062
46965
|
}
|
|
47063
46966
|
return {
|
|
@@ -47119,10 +47022,11 @@
|
|
|
47119
47022
|
* @private
|
|
47120
47023
|
* @function hideOrShow
|
|
47121
47024
|
* @param {Highcharts.SVGElement} label
|
|
47122
|
-
*
|
|
47025
|
+
* The label.
|
|
47123
47026
|
* @param {Highcharts.Chart} chart
|
|
47124
|
-
*
|
|
47027
|
+
* The chart that contains the label.
|
|
47125
47028
|
* @return {boolean}
|
|
47029
|
+
* Whether label is affected
|
|
47126
47030
|
*/
|
|
47127
47031
|
function hideOrShow(label, chart) {
|
|
47128
47032
|
var complete,
|
|
@@ -47131,13 +47035,15 @@
|
|
|
47131
47035
|
if (label) {
|
|
47132
47036
|
newOpacity = label.newOpacity;
|
|
47133
47037
|
if (label.oldOpacity !== newOpacity) {
|
|
47134
|
-
// Make sure the label is completely hidden to avoid catching
|
|
47135
|
-
//
|
|
47038
|
+
// Make sure the label is completely hidden to avoid catching clicks
|
|
47039
|
+
// (#4362)
|
|
47136
47040
|
if (label.alignAttr && label.placed) { // data labels
|
|
47137
47041
|
label[newOpacity ? 'removeClass' : 'addClass']('highcharts-data-label-hidden');
|
|
47138
47042
|
complete = function () {
|
|
47139
47043
|
if (!chart.styledMode) {
|
|
47140
|
-
label.css({
|
|
47044
|
+
label.css({
|
|
47045
|
+
pointerEvents: newOpacity ? 'auto' : 'none'
|
|
47046
|
+
});
|
|
47141
47047
|
}
|
|
47142
47048
|
};
|
|
47143
47049
|
isLabelAffected = true;
|
|
@@ -47299,8 +47205,7 @@
|
|
|
47299
47205
|
fn = condition.callback || function () {
|
|
47300
47206
|
return (this.chartWidth <= pick(condition.maxWidth,
|
|
47301
47207
|
Number.MAX_VALUE) &&
|
|
47302
|
-
this.chartHeight <=
|
|
47303
|
-
pick(condition.maxHeight,
|
|
47208
|
+
this.chartHeight <= pick(condition.maxHeight,
|
|
47304
47209
|
Number.MAX_VALUE) &&
|
|
47305
47210
|
this.chartWidth >= pick(condition.minWidth, 0) &&
|
|
47306
47211
|
this.chartHeight >= pick(condition.minHeight, 0));
|
|
@@ -47343,7 +47248,7 @@
|
|
|
47343
47248
|
mergedOptions.isResponsiveOptions = true;
|
|
47344
47249
|
// Stringified key for the rules that currently apply.
|
|
47345
47250
|
ruleIds = (ruleIds.toString() || void 0);
|
|
47346
|
-
var currentRuleIds = currentResponsive && currentResponsive.ruleIds;
|
|
47251
|
+
var currentRuleIds = (currentResponsive && currentResponsive.ruleIds);
|
|
47347
47252
|
// Changes in what rules apply
|
|
47348
47253
|
if (ruleIds !== currentRuleIds) {
|
|
47349
47254
|
// Undo previous rules. Before we apply a new set of rules, we
|