highcharts 11.4.3 → 11.4.5
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/es-modules/Accessibility/Accessibility.js +1 -1
- package/es-modules/Accessibility/AccessibilityComponent.js +1 -1
- package/es-modules/Accessibility/Components/NavigatorComponent.js +2 -2
- package/es-modules/Accessibility/KeyboardNavigation.js +1 -1
- package/es-modules/Accessibility/KeyboardNavigationHandler.js +5 -5
- package/es-modules/Accessibility/Options/A11yDefaults.js +1 -1
- package/es-modules/Accessibility/Options/LangDefaults.js +3 -3
- package/es-modules/Accessibility/Utils/EventProvider.js +1 -1
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +1 -1
- package/es-modules/Core/Animation/Fx.js +4 -2
- package/es-modules/Core/Axis/Axis.js +6 -4
- package/es-modules/Core/Axis/AxisDefaults.js +1 -0
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +2 -1
- package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +7 -3
- package/es-modules/Core/Axis/GridAxis.js +1 -1
- package/es-modules/Core/Axis/OrdinalAxis.js +5 -2
- package/es-modules/Core/Axis/RadialAxisDefaults.js +3 -3
- package/es-modules/Core/Axis/Stacking/StackItem.js +1 -1
- package/es-modules/Core/Chart/Chart.js +16 -7
- package/es-modules/Core/Chart/MapChart.js +3 -3
- package/es-modules/Core/Chart/StockChart.js +1 -1
- package/es-modules/Core/Color/Color.js +2 -2
- package/es-modules/Core/Defaults.js +27 -1
- package/es-modules/Core/Geometry/GeometryUtilities.js +22 -0
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/Legend/Legend.js +82 -14
- package/es-modules/Core/MSPointer.js +42 -1
- package/es-modules/Core/Pointer.js +10 -6
- package/es-modules/Core/Renderer/HTML/AST.js +6 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGElement.js +31 -98
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +20 -0
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +29 -14
- package/es-modules/Core/Renderer/SVG/Symbols.js +18 -18
- package/es-modules/Core/Responsive.js +6 -1
- package/es-modules/Core/Series/DataLabel.js +1 -10
- package/es-modules/Core/Series/DataSeriesComposition.js +0 -2
- package/es-modules/Core/Series/Point.js +7 -10
- package/es-modules/Core/Series/Series.js +40 -24
- package/es-modules/Core/Series/SeriesDefaults.js +18 -12
- package/es-modules/Core/Templating.js +2 -2
- package/es-modules/Core/Tooltip.js +6 -3
- package/es-modules/Data/Connectors/JSONConnector.js +1 -0
- package/es-modules/Data/Converters/CSVConverter.js +1 -1
- package/es-modules/Data/Converters/DataConverter.js +7 -7
- package/es-modules/Data/Converters/GoogleSheetsConverter.js +8 -3
- package/es-modules/Data/DataTable.js +106 -5
- package/es-modules/Data/Formula/FormulaParser.js +2 -2
- package/es-modules/Extensions/Annotations/Controllables/ControllableDefaults.js +1 -1
- package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +1 -1
- package/es-modules/Extensions/Annotations/NavigationBindings.js +1 -2
- package/es-modules/Extensions/Boost/Boost.js +1 -1
- package/es-modules/Extensions/Boost/BoostChart.js +8 -2
- package/es-modules/Extensions/Boost/BoostSeries.js +41 -10
- package/es-modules/Extensions/Boost/WGLShader.js +1 -1
- package/es-modules/Extensions/BorderRadius.js +3 -3
- package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +0 -38
- package/es-modules/Extensions/Data.js +11 -11
- package/es-modules/Extensions/DataGrouping/DataGrouping.js +1 -2
- package/es-modules/Extensions/DataGrouping/DataGroupingDefaults.js +1 -1
- package/es-modules/Extensions/DownloadURL.js +1 -1
- package/es-modules/Extensions/Drilldown/Drilldown.js +0 -2
- package/es-modules/Extensions/Exporting/Exporting.js +14 -14
- package/es-modules/Extensions/OverlappingDataLabels.js +36 -5
- package/es-modules/Extensions/Pane/PaneDefaults.js +3 -2
- package/es-modules/Extensions/ParallelCoordinates/ParallelCoordinates.js +1 -1
- package/es-modules/Extensions/Sonification/MIDI.js +7 -7
- package/es-modules/Extensions/Sonification/SonificationInstrument.js +0 -1
- package/es-modules/Extensions/Sonification/TimelineFromChart.js +1 -3
- package/es-modules/Extensions/TextPath.js +227 -0
- package/es-modules/Maps/MapUtilities.js +1 -20
- package/es-modules/Maps/MapView.js +3 -1
- package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +3 -0
- package/es-modules/Series/Area/AreaSeries.js +5 -0
- package/es-modules/Series/Area/AreaSeriesDefaults.js +1 -1
- package/es-modules/Series/Bar/BarSeries.js +1 -1
- package/es-modules/Series/Bellcurve/BellcurveSeriesDefaults.js +2 -2
- package/es-modules/Series/BoxPlot/BoxPlotSeries.js +2 -1
- package/es-modules/Series/Bubble/BubbleLegendComposition.js +4 -7
- package/es-modules/Series/Bubble/BubbleLegendDefaults.js +3 -3
- package/es-modules/Series/Bubble/BubbleSeries.js +4 -4
- package/es-modules/Series/Column/ColumnSeriesDefaults.js +1 -1
- package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +5 -2
- package/es-modules/Series/Dumbbell/DumbbellSeriesDefaults.js +2 -2
- package/es-modules/Series/ErrorBar/ErrorBarSeries.js +2 -2
- package/es-modules/Series/Flags/FlagsSeries.js +2 -2
- package/es-modules/Series/Flags/FlagsSeriesDefaults.js +1 -1
- package/es-modules/Series/Gantt/GanttSeriesDefaults.js +1 -1
- package/es-modules/Series/Gauge/GaugeSeries.js +1 -1
- package/es-modules/Series/HLC/HLCSeries.js +1 -1
- package/es-modules/Series/Heatmap/HeatmapSeriesDefaults.js +2 -2
- package/es-modules/Series/Item/ItemSeries.js +1 -1
- package/es-modules/Series/Map/MapSeries.js +1 -1
- package/es-modules/Series/Map/MapSeriesDefaults.js +2 -2
- package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +4 -1
- package/es-modules/Series/Organization/OrganizationSeries.js +3 -0
- package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +8 -5
- package/es-modules/Series/Pie/PieDataLabel.js +7 -6
- package/es-modules/Series/Pie/PiePoint.js +6 -6
- package/es-modules/Series/Pie/PieSeriesDefaults.js +11 -10
- package/es-modules/Series/Pie3D/Pie3DSeries.js +1 -1
- package/es-modules/Series/Sankey/SankeySeries.js +7 -4
- package/es-modules/Series/Sankey/SankeySeriesDefaults.js +1 -1
- package/es-modules/Series/Sunburst/SunburstSeries.js +8 -5
- package/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +2 -2
- package/es-modules/Series/Tilemap/TilemapSeriesDefaults.js +2 -2
- package/es-modules/Series/Treegraph/TreegraphSeries.js +23 -2
- package/es-modules/Series/Treegraph/TreegraphSeriesDefaults.js +2 -2
- package/es-modules/Series/Treemap/TreemapPoint.js +2 -1
- package/es-modules/Series/Treemap/TreemapSeries.js +15 -7
- package/es-modules/Series/Treemap/TreemapSeriesDefaults.js +15 -1
- package/es-modules/Series/VariablePie/VariablePieSeriesDefaults.js +2 -2
- package/es-modules/Series/Variwide/VariwideComposition.js +1 -1
- package/es-modules/Series/Vector/VectorSeries.js +1 -1
- package/es-modules/Series/Windbarb/WindbarbSeries.js +2 -2
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +2 -2
- package/es-modules/Series/Wordcloud/WordcloudSeriesDefaults.js +1 -1
- package/es-modules/Stock/Indicators/AD/ADIndicator.js +1 -1
- package/es-modules/Stock/Indicators/APO/APOIndicator.js +1 -1
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +1 -1
- package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +1 -1
- package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +1 -1
- package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +3 -3
- package/es-modules/Stock/Indicators/LinearRegression/LinearRegressionIndicator.js +1 -1
- package/es-modules/Stock/Indicators/MFI/MFIIndicator.js +1 -1
- package/es-modules/Stock/Indicators/PC/PCIndicator.js +1 -1
- package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -1
- package/es-modules/Stock/Indicators/PSAR/PSARIndicator.js +1 -1
- package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +3 -3
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +1 -1
- package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +2 -2
- package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +3 -3
- package/es-modules/Stock/Indicators/TrendLine/TrendLineIndicator.js +1 -1
- package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +1 -1
- package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +1 -1
- package/es-modules/Stock/Navigator/Navigator.js +141 -55
- package/es-modules/Stock/Navigator/NavigatorDefaults.js +1 -1
- package/es-modules/Stock/RangeSelector/RangeSelector.js +1 -1
- package/es-modules/Stock/RangeSelector/RangeSelectorDefaults.js +1 -1
- package/es-modules/Stock/Scrollbar/ScrollbarDefaults.js +1 -1
- package/es-modules/Stock/StockTools/StockToolbar.js +115 -37
- package/es-modules/Stock/StockTools/StockToolsDefaults.js +7 -1
- package/es-modules/Stock/StockTools/StockToolsGui.js +24 -23
- package/es-modules/Stock/StockTools/StockToolsUtilities.js +26 -0
- package/es-modules/masters/highcharts-more.src.js +2 -2
- package/es-modules/masters/modules/arc-diagram.src.js +1 -2
- package/es-modules/masters/modules/cylinder.src.js +1 -1
- package/es-modules/masters/modules/funnel3d.src.js +1 -1
- package/es-modules/masters/modules/map.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.src.js +1 -1
- package/es-modules/masters/modules/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/textpath.src.d.ts +1 -0
- package/es-modules/masters/modules/textpath.src.js +16 -0
- package/es-modules/tsconfig.tsbuildinfo +1 -1
- package/highcharts-3d.js +2 -2
- package/highcharts-3d.src.js +4 -4
- package/highcharts-gantt.js +3 -3
- package/highcharts-gantt.src.js +3376 -3042
- package/highcharts-more.d.ts +42 -2
- package/highcharts-more.js +2 -2
- package/highcharts-more.src.d.ts +42 -2
- package/highcharts-more.src.js +262 -35
- package/highcharts.d.ts +840 -407
- package/highcharts.js +3 -3
- package/highcharts.src.d.ts +840 -407
- package/highcharts.src.js +6064 -5818
- package/highmaps.js +3 -3
- package/highmaps.src.js +3276 -3046
- package/highstock.js +3 -3
- package/highstock.src.js +3395 -3062
- package/indicators/acceleration-bands.js +2 -2
- package/indicators/acceleration-bands.src.js +3 -3
- package/indicators/accumulation-distribution.js +2 -2
- package/indicators/accumulation-distribution.src.js +4 -4
- package/indicators/ao.js +2 -2
- package/indicators/ao.src.js +3 -3
- package/indicators/apo.js +2 -2
- package/indicators/apo.src.js +4 -4
- package/indicators/aroon-oscillator.js +2 -2
- package/indicators/aroon-oscillator.src.js +3 -3
- package/indicators/aroon.js +2 -2
- package/indicators/aroon.src.js +4 -4
- package/indicators/atr.js +2 -2
- package/indicators/atr.src.js +3 -3
- package/indicators/bollinger-bands.js +2 -2
- package/indicators/bollinger-bands.src.js +3 -3
- package/indicators/cci.js +2 -2
- package/indicators/cci.src.js +3 -3
- package/indicators/chaikin.js +2 -2
- package/indicators/chaikin.src.js +5 -5
- package/indicators/cmf.js +2 -2
- package/indicators/cmf.src.js +4 -4
- package/indicators/cmo.js +2 -2
- package/indicators/cmo.src.js +3 -3
- package/indicators/dema.js +2 -2
- package/indicators/dema.src.js +3 -3
- package/indicators/disparity-index.js +2 -2
- package/indicators/disparity-index.src.js +3 -3
- package/indicators/dmi.js +2 -2
- package/indicators/dmi.src.js +3 -3
- package/indicators/dpo.js +2 -2
- package/indicators/dpo.src.js +3 -3
- package/indicators/ema.js +1 -1
- package/indicators/ema.src.js +2 -2
- package/indicators/ichimoku-kinko-hyo.js +2 -2
- package/indicators/ichimoku-kinko-hyo.src.js +6 -6
- package/indicators/indicators-all.js +2 -2
- package/indicators/indicators-all.src.js +28 -28
- package/indicators/indicators.js +2 -2
- package/indicators/indicators.src.js +4 -4
- package/indicators/keltner-channels.js +2 -2
- package/indicators/keltner-channels.src.js +3 -3
- package/indicators/klinger.js +2 -2
- package/indicators/klinger.src.js +3 -3
- package/indicators/macd.js +2 -2
- package/indicators/macd.src.js +3 -3
- package/indicators/mfi.js +2 -2
- package/indicators/mfi.src.js +4 -4
- package/indicators/momentum.js +2 -2
- package/indicators/momentum.src.js +3 -3
- package/indicators/natr.js +2 -2
- package/indicators/natr.src.js +3 -3
- package/indicators/obv.js +2 -2
- package/indicators/obv.src.js +3 -3
- package/indicators/pivot-points.js +2 -2
- package/indicators/pivot-points.src.js +6 -6
- package/indicators/ppo.js +2 -2
- package/indicators/ppo.src.js +4 -4
- package/indicators/price-channel.js +2 -2
- package/indicators/price-channel.src.js +4 -4
- package/indicators/price-envelopes.js +2 -2
- package/indicators/price-envelopes.src.js +3 -3
- package/indicators/psar.js +2 -2
- package/indicators/psar.src.js +4 -4
- package/indicators/regressions.js +2 -2
- package/indicators/regressions.src.js +4 -4
- package/indicators/roc.js +2 -2
- package/indicators/roc.src.js +3 -3
- package/indicators/rsi.js +2 -2
- package/indicators/rsi.src.js +3 -3
- package/indicators/slow-stochastic.js +2 -2
- package/indicators/slow-stochastic.src.js +5 -5
- package/indicators/stochastic.js +2 -2
- package/indicators/stochastic.src.js +3 -3
- package/indicators/supertrend.js +2 -2
- package/indicators/supertrend.src.js +6 -6
- package/indicators/tema.js +2 -2
- package/indicators/tema.src.js +3 -3
- package/indicators/trendline.js +2 -2
- package/indicators/trendline.src.js +4 -4
- package/indicators/trix.js +2 -2
- package/indicators/trix.src.js +3 -3
- package/indicators/volume-by-price.js +2 -2
- package/indicators/volume-by-price.src.js +3 -3
- package/indicators/vwap.js +2 -2
- package/indicators/vwap.src.js +4 -4
- package/indicators/williams-r.js +2 -2
- package/indicators/williams-r.src.js +4 -4
- package/indicators/wma.js +2 -2
- package/indicators/wma.src.js +3 -3
- package/indicators/zigzag.js +2 -2
- package/indicators/zigzag.src.js +3 -3
- package/modules/accessibility.js +2 -2
- package/modules/accessibility.src.js +162 -77
- package/modules/annotations-advanced.js +2 -2
- package/modules/annotations-advanced.src.js +8 -9
- package/modules/annotations.js +2 -2
- package/modules/annotations.src.js +8 -9
- package/modules/arc-diagram.d.ts +120 -1
- package/modules/arc-diagram.js +2 -2
- package/modules/arc-diagram.src.d.ts +120 -1
- package/modules/arc-diagram.src.js +9363 -5
- package/modules/arrow-symbols.js +2 -2
- package/modules/arrow-symbols.src.js +3 -3
- package/modules/boost-canvas.js +2 -2
- package/modules/boost-canvas.src.js +53 -16
- package/modules/boost.js +2 -2
- package/modules/boost.src.js +54 -17
- package/modules/broken-axis.js +2 -2
- package/modules/broken-axis.src.js +3 -3
- package/modules/bullet.js +2 -2
- package/modules/bullet.src.js +3 -3
- package/modules/coloraxis.js +2 -2
- package/modules/coloraxis.src.js +12 -7
- package/modules/current-date-indicator.js +2 -2
- package/modules/current-date-indicator.src.js +3 -3
- package/modules/cylinder.js +2 -2
- package/modules/cylinder.src.js +4 -4
- package/modules/data-tools.js +2 -2
- package/modules/data-tools.src.js +128 -21
- package/modules/data.js +2 -2
- package/modules/data.src.js +14 -14
- package/modules/datagrouping.js +2 -2
- package/modules/datagrouping.src.js +5 -6
- package/modules/debugger.js +2 -2
- package/modules/debugger.src.js +3 -3
- package/modules/dependency-wheel.js +2 -2
- package/modules/dependency-wheel.src.js +7 -6
- package/modules/dotplot.js +2 -2
- package/modules/dotplot.src.js +3 -3
- package/modules/drag-panes.js +2 -2
- package/modules/drag-panes.src.js +3 -3
- package/modules/draggable-points.js +2 -2
- package/modules/draggable-points.src.js +3 -3
- package/modules/drilldown.js +2 -2
- package/modules/drilldown.src.js +3 -43
- package/modules/dumbbell.js +2 -2
- package/modules/dumbbell.src.js +5 -5
- package/modules/export-data.js +2 -2
- package/modules/export-data.src.js +4 -4
- package/modules/exporting.js +2 -2
- package/modules/exporting.src.js +17 -17
- package/modules/flowmap.js +2 -2
- package/modules/flowmap.src.js +3 -3
- package/modules/full-screen.js +2 -2
- package/modules/full-screen.src.js +3 -3
- package/modules/funnel.js +2 -2
- package/modules/funnel.src.js +3 -3
- package/modules/funnel3d.js +2 -2
- package/modules/funnel3d.src.js +4 -4
- package/modules/gantt.js +2 -2
- package/modules/gantt.src.js +155 -67
- package/modules/geoheatmap.js +2 -2
- package/modules/geoheatmap.src.js +3 -3
- package/modules/grid-axis.js +2 -2
- package/modules/grid-axis.src.js +4 -4
- package/modules/heatmap.js +2 -2
- package/modules/heatmap.src.js +14 -9
- package/modules/heikinashi.js +2 -2
- package/modules/heikinashi.src.js +3 -3
- package/modules/histogram-bellcurve.js +2 -2
- package/modules/histogram-bellcurve.src.js +5 -5
- package/modules/hollowcandlestick.js +2 -2
- package/modules/hollowcandlestick.src.js +3 -3
- package/modules/item-series.js +2 -2
- package/modules/item-series.src.js +4 -4
- package/modules/lollipop.js +2 -2
- package/modules/lollipop.src.js +3 -3
- package/modules/map.d.ts +1 -1
- package/modules/map.js +2 -2
- package/modules/map.src.d.ts +1 -1
- package/modules/map.src.js +36 -52
- package/modules/marker-clusters.js +2 -2
- package/modules/marker-clusters.src.js +3 -3
- package/modules/mouse-wheel-zoom.js +2 -2
- package/modules/mouse-wheel-zoom.src.js +3 -3
- package/modules/navigator.js +2 -2
- package/modules/navigator.src.js +146 -61
- package/modules/networkgraph.d.ts +40 -0
- package/modules/networkgraph.js +2 -2
- package/modules/networkgraph.src.d.ts +40 -0
- package/modules/networkgraph.src.js +233 -5
- package/modules/no-data-to-display.js +2 -2
- package/modules/no-data-to-display.src.js +3 -3
- package/modules/offline-exporting.js +2 -2
- package/modules/offline-exporting.src.js +5 -5
- package/modules/organization.js +2 -2
- package/modules/organization.src.js +5 -4
- package/modules/overlapping-datalabels.js +2 -2
- package/modules/overlapping-datalabels.src.js +3 -3
- package/modules/parallel-coordinates.js +2 -2
- package/modules/parallel-coordinates.src.js +4 -4
- package/modules/pareto.js +2 -2
- package/modules/pareto.src.js +3 -3
- package/modules/pathfinder.js +2 -2
- package/modules/pathfinder.src.js +3 -3
- package/modules/pattern-fill.js +2 -2
- package/modules/pattern-fill.src.js +3 -3
- package/modules/pictorial.js +2 -2
- package/modules/pictorial.src.js +3 -3
- package/modules/price-indicator.js +2 -2
- package/modules/price-indicator.src.js +3 -3
- package/modules/pyramid3d.js +2 -2
- package/modules/pyramid3d.src.js +4 -4
- package/modules/sankey.d.ts +42 -1
- package/modules/sankey.js +2 -2
- package/modules/sankey.src.d.ts +42 -1
- package/modules/sankey.src.js +237 -9
- package/modules/series-label.js +2 -2
- package/modules/series-label.src.js +3 -3
- package/modules/series-on-point.js +2 -2
- package/modules/series-on-point.src.js +3 -3
- package/modules/solid-gauge.js +2 -2
- package/modules/solid-gauge.src.js +4 -4
- package/modules/sonification.js +2 -2
- package/modules/sonification.src.js +12 -15
- package/modules/static-scale.js +2 -2
- package/modules/static-scale.src.js +3 -3
- package/modules/stock-tools.d.ts +15 -1
- package/modules/stock-tools.js +2 -2
- package/modules/stock-tools.src.d.ts +15 -1
- package/modules/stock-tools.src.js +177 -69
- package/modules/stock.js +2 -2
- package/modules/stock.src.js +160 -73
- package/modules/streamgraph.js +2 -2
- package/modules/streamgraph.src.js +3 -3
- package/modules/sunburst.d.ts +40 -0
- package/modules/sunburst.js +2 -2
- package/modules/sunburst.src.d.ts +40 -0
- package/modules/sunburst.src.js +271 -58
- package/modules/textpath.d.ts +58 -0
- package/modules/textpath.js +7 -0
- package/modules/textpath.src.d.ts +58 -0
- package/modules/textpath.src.js +271 -0
- package/modules/tiledwebmap.js +3 -3
- package/modules/tiledwebmap.src.js +3 -3
- package/modules/tilemap.js +2 -2
- package/modules/tilemap.src.js +5 -5
- package/modules/timeline.js +2 -2
- package/modules/timeline.src.js +3 -3
- package/modules/treegraph.d.ts +40 -0
- package/modules/treegraph.js +2 -2
- package/modules/treegraph.src.d.ts +40 -0
- package/modules/treegraph.src.js +254 -8
- package/modules/treegrid.js +2 -2
- package/modules/treegrid.src.js +4 -4
- package/modules/treemap.js +2 -2
- package/modules/treemap.src.js +35 -50
- package/modules/variable-pie.js +2 -2
- package/modules/variable-pie.src.js +5 -5
- package/modules/variwide.js +2 -2
- package/modules/variwide.src.js +4 -4
- package/modules/vector.js +2 -2
- package/modules/vector.src.js +4 -4
- package/modules/venn.js +2 -2
- package/modules/venn.src.js +3 -88
- package/modules/windbarb.js +2 -2
- package/modules/windbarb.src.js +5 -5
- package/modules/wordcloud.js +2 -2
- package/modules/wordcloud.src.js +6 -6
- package/modules/xrange.js +2 -2
- package/modules/xrange.src.js +3 -3
- package/options/ad.d.ts +17 -9
- package/options/ad.src.d.ts +17 -9
- package/options/apo.d.ts +17 -9
- package/options/apo.src.d.ts +17 -9
- package/options/arearange.d.ts +17 -9
- package/options/arearange.src.d.ts +17 -9
- package/options/areaspline.d.ts +17 -9
- package/options/areaspline.src.d.ts +17 -9
- package/options/bar.d.ts +17 -9
- package/options/bar.src.d.ts +17 -9
- package/options/bb.d.ts +17 -9
- package/options/bb.src.d.ts +17 -9
- package/options/bubble.d.ts +17 -9
- package/options/bubble.src.d.ts +17 -9
- package/options/candlestick.d.ts +17 -9
- package/options/candlestick.src.d.ts +17 -9
- package/options/cci.d.ts +17 -9
- package/options/cci.src.d.ts +17 -9
- package/options/cmf.d.ts +17 -9
- package/options/cmf.src.d.ts +17 -9
- package/options/column.d.ts +17 -9
- package/options/column.src.d.ts +17 -9
- package/options/columnpyramid.d.ts +17 -9
- package/options/columnpyramid.src.d.ts +17 -9
- package/options/columnrange.d.ts +17 -9
- package/options/columnrange.src.d.ts +17 -9
- package/options/cylinder.d.ts +17 -9
- package/options/cylinder.src.d.ts +17 -9
- package/options/dema.d.ts +17 -9
- package/options/dema.src.d.ts +17 -9
- package/options/dependencywheel.d.ts +17 -9
- package/options/dependencywheel.src.d.ts +17 -9
- package/options/disparityindex.d.ts +17 -9
- package/options/disparityindex.src.d.ts +17 -9
- package/options/dpo.d.ts +17 -9
- package/options/dpo.src.d.ts +17 -9
- package/options/dumbbell.d.ts +17 -9
- package/options/dumbbell.src.d.ts +17 -9
- package/options/ema.d.ts +17 -9
- package/options/ema.src.d.ts +17 -9
- package/options/funnel.d.ts +17 -9
- package/options/funnel.src.d.ts +17 -9
- package/options/gantt.d.ts +16 -8
- package/options/gantt.src.d.ts +16 -8
- package/options/klinger.d.ts +17 -9
- package/options/klinger.src.d.ts +17 -9
- package/options/linearregression.d.ts +17 -9
- package/options/linearregression.src.d.ts +17 -9
- package/options/lollipop.d.ts +17 -9
- package/options/lollipop.src.d.ts +17 -9
- package/options/macd.d.ts +17 -9
- package/options/macd.src.d.ts +17 -9
- package/options/momentum.d.ts +17 -9
- package/options/momentum.src.d.ts +17 -9
- package/options/ohlc.d.ts +17 -9
- package/options/ohlc.src.d.ts +17 -9
- package/options/organization.d.ts +17 -9
- package/options/organization.src.d.ts +17 -9
- package/options/pareto.d.ts +16 -8
- package/options/pareto.src.d.ts +16 -8
- package/options/pc.d.ts +17 -9
- package/options/pc.src.d.ts +17 -9
- package/options/polygon.d.ts +17 -9
- package/options/polygon.src.d.ts +17 -9
- package/options/ppo.d.ts +17 -9
- package/options/ppo.src.d.ts +17 -9
- package/options/psar.d.ts +17 -9
- package/options/psar.src.d.ts +17 -9
- package/options/pyramid.d.ts +17 -9
- package/options/pyramid.src.d.ts +17 -9
- package/options/roc.d.ts +17 -9
- package/options/roc.src.d.ts +17 -9
- package/options/sankey.d.ts +17 -9
- package/options/sankey.src.d.ts +17 -9
- package/options/scatter.d.ts +17 -9
- package/options/scatter.src.d.ts +17 -9
- package/options/series.d.ts +17 -9
- package/options/series.src.d.ts +17 -9
- package/options/sma.d.ts +17 -9
- package/options/sma.src.d.ts +17 -9
- package/options/spline.d.ts +17 -9
- package/options/spline.src.d.ts +17 -9
- package/options/stochastic.d.ts +17 -9
- package/options/stochastic.src.d.ts +17 -9
- package/options/supertrend.d.ts +17 -9
- package/options/supertrend.src.d.ts +17 -9
- package/options/tilemap.d.ts +17 -9
- package/options/tilemap.src.d.ts +17 -9
- package/options/treegraph.d.ts +24 -9
- package/options/treegraph.src.d.ts +24 -9
- package/options/treemap.d.ts +23 -8
- package/options/treemap.src.d.ts +23 -8
- package/options/trendline.d.ts +17 -9
- package/options/trendline.src.d.ts +17 -9
- package/options/variwide.d.ts +17 -9
- package/options/variwide.src.d.ts +17 -9
- package/options/vbp.d.ts +17 -9
- package/options/vbp.src.d.ts +17 -9
- package/options/vector.d.ts +17 -9
- package/options/vector.src.d.ts +17 -9
- package/options/waterfall.d.ts +17 -9
- package/options/waterfall.src.d.ts +17 -9
- package/options/williamsr.d.ts +17 -9
- package/options/williamsr.src.d.ts +17 -9
- package/options/xrange.d.ts +17 -9
- package/options/xrange.src.d.ts +17 -9
- package/package.json +1 -1
- package/standalone-navigator.js +2 -2
- package/standalone-navigator.src.js +3380 -3049
- package/themes/avocado.js +2 -2
- package/themes/avocado.src.js +3 -3
- package/themes/brand-dark.js +2 -2
- package/themes/brand-dark.src.js +3 -3
- package/themes/brand-light.js +2 -2
- package/themes/brand-light.src.js +3 -3
- package/themes/dark-blue.js +2 -2
- package/themes/dark-blue.src.js +3 -3
- package/themes/dark-green.js +2 -2
- package/themes/dark-green.src.js +3 -3
- package/themes/dark-unica.js +2 -2
- package/themes/dark-unica.src.js +3 -3
- package/themes/gray.js +2 -2
- package/themes/gray.src.js +3 -3
- package/themes/grid-light.js +2 -2
- package/themes/grid-light.src.js +3 -3
- package/themes/grid.js +2 -2
- package/themes/grid.src.js +3 -3
- package/themes/high-contrast-dark.js +2 -2
- package/themes/high-contrast-dark.src.js +3 -3
- package/themes/high-contrast-light.js +2 -2
- package/themes/high-contrast-light.src.js +3 -3
- package/themes/sand-signika.js +2 -2
- package/themes/sand-signika.src.js +3 -3
- package/themes/skies.js +2 -2
- package/themes/skies.src.js +3 -3
- package/themes/sunset.js +2 -2
- package/themes/sunset.src.js +3 -3
|
@@ -9,6 +9,7 @@
|
|
|
9
9
|
* Authors:
|
|
10
10
|
* - Sophie Bremer
|
|
11
11
|
* - Gøran Slettemark
|
|
12
|
+
* - Jomar Hønsi
|
|
12
13
|
*
|
|
13
14
|
* */
|
|
14
15
|
'use strict';
|
|
@@ -114,7 +115,7 @@ class DataTable {
|
|
|
114
115
|
this.autoId = !options.id;
|
|
115
116
|
this.columns = {};
|
|
116
117
|
/**
|
|
117
|
-
* ID of the table for
|
|
118
|
+
* ID of the table for identification purposes.
|
|
118
119
|
*
|
|
119
120
|
* @name Highcharts.DataTable#id
|
|
120
121
|
* @type {string}
|
|
@@ -123,6 +124,7 @@ class DataTable {
|
|
|
123
124
|
this.modified = this;
|
|
124
125
|
this.rowCount = 0;
|
|
125
126
|
this.versionTag = uniqueKey();
|
|
127
|
+
this.rowKeysId = options.rowKeysId;
|
|
126
128
|
const columns = options.columns || {}, columnNames = Object.keys(columns), thisColumns = this.columns;
|
|
127
129
|
let rowCount = 0;
|
|
128
130
|
for (let i = 0, iEnd = columnNames.length, column, columnName; i < iEnd; ++i) {
|
|
@@ -140,6 +142,7 @@ class DataTable {
|
|
|
140
142
|
alias = aliasKeys[i];
|
|
141
143
|
thisAliases[alias] = aliases[alias];
|
|
142
144
|
}
|
|
145
|
+
this.setRowKeysColumn(rowCount);
|
|
143
146
|
}
|
|
144
147
|
/* *
|
|
145
148
|
*
|
|
@@ -175,6 +178,9 @@ class DataTable {
|
|
|
175
178
|
if (!table.autoId) {
|
|
176
179
|
tableOptions.id = table.id;
|
|
177
180
|
}
|
|
181
|
+
if (table.rowKeysId) {
|
|
182
|
+
tableOptions.rowKeysId = table.rowKeysId;
|
|
183
|
+
}
|
|
178
184
|
const tableClone = new DataTable(tableOptions);
|
|
179
185
|
if (!skipColumns) {
|
|
180
186
|
tableClone.versionTag = table.versionTag;
|
|
@@ -245,7 +251,13 @@ class DataTable {
|
|
|
245
251
|
}
|
|
246
252
|
delete columns[columnName];
|
|
247
253
|
}
|
|
248
|
-
|
|
254
|
+
let nColumns = Object.keys(columns).length;
|
|
255
|
+
if (table.rowKeysId && nColumns === 1) {
|
|
256
|
+
// All columns deleted, remove row keys column
|
|
257
|
+
delete columns[table.rowKeysId];
|
|
258
|
+
nColumns = 0;
|
|
259
|
+
}
|
|
260
|
+
if (!nColumns) {
|
|
249
261
|
table.rowCount = 0;
|
|
250
262
|
}
|
|
251
263
|
if (modifier) {
|
|
@@ -415,7 +427,7 @@ class DataTable {
|
|
|
415
427
|
case 'number':
|
|
416
428
|
return (isNaN(cellValue) && !useNaN ? null : cellValue);
|
|
417
429
|
}
|
|
418
|
-
cellValue = parseFloat(`${cellValue}`);
|
|
430
|
+
cellValue = parseFloat(`${cellValue ?? ''}`);
|
|
419
431
|
return (isNaN(cellValue) && !useNaN ? null : cellValue);
|
|
420
432
|
}
|
|
421
433
|
/**
|
|
@@ -437,6 +449,7 @@ class DataTable {
|
|
|
437
449
|
columnNameOrAlias = (table.aliases[columnNameOrAlias] ||
|
|
438
450
|
columnNameOrAlias);
|
|
439
451
|
const column = table.columns[columnNameOrAlias];
|
|
452
|
+
// eslint-disable-next-line @typescript-eslint/restrict-template-expressions
|
|
440
453
|
return `${(column && column[rowIndex])}`;
|
|
441
454
|
}
|
|
442
455
|
/**
|
|
@@ -516,6 +529,7 @@ class DataTable {
|
|
|
516
529
|
*/
|
|
517
530
|
getColumnNames() {
|
|
518
531
|
const table = this, columnNames = Object.keys(table.columns);
|
|
532
|
+
this.removeRowKeysColumn(columnNames);
|
|
519
533
|
return columnNames;
|
|
520
534
|
}
|
|
521
535
|
/**
|
|
@@ -536,6 +550,7 @@ class DataTable {
|
|
|
536
550
|
getColumns(columnNamesOrAliases, asReference) {
|
|
537
551
|
const table = this, tableAliasMap = table.aliases, tableColumns = table.columns, columns = {};
|
|
538
552
|
columnNamesOrAliases = (columnNamesOrAliases || Object.keys(tableColumns));
|
|
553
|
+
this.removeRowKeysColumn(columnNamesOrAliases);
|
|
539
554
|
for (let i = 0, iEnd = columnNamesOrAliases.length, column, columnName; i < iEnd; ++i) {
|
|
540
555
|
columnName = columnNamesOrAliases[i];
|
|
541
556
|
column = tableColumns[(tableAliasMap[columnName] || columnName)];
|
|
@@ -652,6 +667,7 @@ class DataTable {
|
|
|
652
667
|
getRowObjects(rowIndex = 0, rowCount = (this.rowCount - rowIndex), columnNamesOrAliases) {
|
|
653
668
|
const table = this, aliases = table.aliases, columns = table.columns, rows = new Array(rowCount);
|
|
654
669
|
columnNamesOrAliases = (columnNamesOrAliases || Object.keys(columns));
|
|
670
|
+
this.removeRowKeysColumn(columnNamesOrAliases);
|
|
655
671
|
for (let i = rowIndex, i2 = 0, iEnd = Math.min(table.rowCount, (rowIndex + rowCount)), column, row; i < iEnd; ++i, ++i2) {
|
|
656
672
|
row = rows[i2] = {};
|
|
657
673
|
for (const columnName of columnNamesOrAliases) {
|
|
@@ -788,6 +804,10 @@ class DataTable {
|
|
|
788
804
|
}
|
|
789
805
|
columns[newColumnName] = columns[columnName];
|
|
790
806
|
delete columns[columnName];
|
|
807
|
+
if (table.rowKeysId) {
|
|
808
|
+
// Ensure that row keys column is last
|
|
809
|
+
this.moveRowKeysColumnToLast(columns, table.rowKeysId);
|
|
810
|
+
}
|
|
791
811
|
}
|
|
792
812
|
return true;
|
|
793
813
|
}
|
|
@@ -923,6 +943,10 @@ class DataTable {
|
|
|
923
943
|
if (tableModifier) {
|
|
924
944
|
tableModifier.modifyColumns(table, columns, (rowIndex || 0));
|
|
925
945
|
}
|
|
946
|
+
if (table.rowKeysId) {
|
|
947
|
+
// Ensure that the row keys column is always last
|
|
948
|
+
this.moveRowKeysColumnToLast(tableColumns, table.rowKeysId);
|
|
949
|
+
}
|
|
926
950
|
table.emit({
|
|
927
951
|
type: 'afterSetColumns',
|
|
928
952
|
columns,
|
|
@@ -931,6 +955,63 @@ class DataTable {
|
|
|
931
955
|
rowIndex
|
|
932
956
|
});
|
|
933
957
|
}
|
|
958
|
+
/**
|
|
959
|
+
* Sets the row key column. This column is invisible and the cells
|
|
960
|
+
* serve as identifiers to the rows they are contained in. Accessing
|
|
961
|
+
* rows by keys instead of indexes is necessary in cases where rows
|
|
962
|
+
* are rearranged by a DataModifier (e.g. SortModifier or RangeModifier).
|
|
963
|
+
*
|
|
964
|
+
* @function Highcharts.DataTable#setRowKeysColumn
|
|
965
|
+
*
|
|
966
|
+
* @param {number} nRows
|
|
967
|
+
* Number of rows to add to the column.
|
|
968
|
+
*
|
|
969
|
+
*/
|
|
970
|
+
setRowKeysColumn(nRows) {
|
|
971
|
+
const id = this.rowKeysId;
|
|
972
|
+
if (!id) {
|
|
973
|
+
return;
|
|
974
|
+
}
|
|
975
|
+
this.columns[id] = [];
|
|
976
|
+
const keysArray = this.columns[id];
|
|
977
|
+
for (let i = 0; i < nRows; i++) {
|
|
978
|
+
keysArray.push(id + '_' + i);
|
|
979
|
+
}
|
|
980
|
+
}
|
|
981
|
+
/**
|
|
982
|
+
* Get the row key column.
|
|
983
|
+
*
|
|
984
|
+
* @function Highcharts.DataTable#getRowKeysColumn
|
|
985
|
+
* *
|
|
986
|
+
* @return {DataTable.Column|undefined}
|
|
987
|
+
* Returns row keys if rowKeysId is defined, else undefined.
|
|
988
|
+
*/
|
|
989
|
+
getRowKeysColumn() {
|
|
990
|
+
const id = this.rowKeysId;
|
|
991
|
+
if (id) {
|
|
992
|
+
return this.columns[id];
|
|
993
|
+
}
|
|
994
|
+
}
|
|
995
|
+
/**
|
|
996
|
+
* Get the row index in the original (unmodified) data table.
|
|
997
|
+
*
|
|
998
|
+
* @function Highcharts.DataTable#getRowIndexOriginal
|
|
999
|
+
*
|
|
1000
|
+
* @param {number} idx
|
|
1001
|
+
* Row index in the modified data table.
|
|
1002
|
+
*
|
|
1003
|
+
* @return {string}
|
|
1004
|
+
* Row index in the original data table.
|
|
1005
|
+
*/
|
|
1006
|
+
getRowIndexOriginal(idx) {
|
|
1007
|
+
const id = this.rowKeysId;
|
|
1008
|
+
if (id) {
|
|
1009
|
+
const rowKeyCol = this.columns[id];
|
|
1010
|
+
const idxOrig = '' + rowKeyCol[idx];
|
|
1011
|
+
return idxOrig.split('_')[1];
|
|
1012
|
+
}
|
|
1013
|
+
return String(idx);
|
|
1014
|
+
}
|
|
934
1015
|
/**
|
|
935
1016
|
* Sets or unsets the modifier for the table.
|
|
936
1017
|
* @private
|
|
@@ -942,7 +1023,7 @@ class DataTable {
|
|
|
942
1023
|
* Custom information for pending events.
|
|
943
1024
|
*
|
|
944
1025
|
* @return {Promise<Highcharts.DataTable>}
|
|
945
|
-
* Resolves to this table if
|
|
1026
|
+
* Resolves to this table if successful, or rejects on failure.
|
|
946
1027
|
*
|
|
947
1028
|
* @emits #setModifier
|
|
948
1029
|
* @emits #afterSetModifier
|
|
@@ -1018,7 +1099,7 @@ class DataTable {
|
|
|
1018
1099
|
* Row values to set.
|
|
1019
1100
|
*
|
|
1020
1101
|
* @param {number} [rowIndex]
|
|
1021
|
-
* Index of the first row to set. Leave `
|
|
1102
|
+
* Index of the first row to set. Leave `undefined` to add as new rows.
|
|
1022
1103
|
*
|
|
1023
1104
|
* @param {Highcharts.DataTableEventDetail} [eventDetail]
|
|
1024
1105
|
* Custom information for pending events.
|
|
@@ -1066,6 +1147,9 @@ class DataTable {
|
|
|
1066
1147
|
columns[columnNames[i]].length = indexRowCount;
|
|
1067
1148
|
}
|
|
1068
1149
|
}
|
|
1150
|
+
if (this.rowKeysId && !columnNames.includes(this.rowKeysId)) {
|
|
1151
|
+
this.setRowKeysColumn(rowCount);
|
|
1152
|
+
}
|
|
1069
1153
|
if (modifier) {
|
|
1070
1154
|
modifier.modifyRows(table, rows, rowIndex);
|
|
1071
1155
|
}
|
|
@@ -1077,6 +1161,23 @@ class DataTable {
|
|
|
1077
1161
|
rows
|
|
1078
1162
|
});
|
|
1079
1163
|
}
|
|
1164
|
+
// The row keys column must always be the last column
|
|
1165
|
+
moveRowKeysColumnToLast(columns, id) {
|
|
1166
|
+
const rowKeyColumn = columns[id];
|
|
1167
|
+
delete columns[id];
|
|
1168
|
+
columns[id] = rowKeyColumn;
|
|
1169
|
+
}
|
|
1170
|
+
// The row keys column must be removed in some methods
|
|
1171
|
+
// (API backwards compatibility)
|
|
1172
|
+
removeRowKeysColumn(columnNamesOrAliases) {
|
|
1173
|
+
if (this.rowKeysId) {
|
|
1174
|
+
const pos = columnNamesOrAliases.indexOf(this.rowKeysId);
|
|
1175
|
+
if (pos !== -1) {
|
|
1176
|
+
// Always the last column
|
|
1177
|
+
columnNamesOrAliases.pop();
|
|
1178
|
+
}
|
|
1179
|
+
}
|
|
1180
|
+
}
|
|
1080
1181
|
}
|
|
1081
1182
|
/* *
|
|
1082
1183
|
*
|
|
@@ -24,12 +24,12 @@ const booleanRegExp = /^(?:FALSE|TRUE)/;
|
|
|
24
24
|
* `.`-separated decimal.
|
|
25
25
|
* @private
|
|
26
26
|
*/
|
|
27
|
-
const decimal1RegExp = /^[
|
|
27
|
+
const decimal1RegExp = /^[+\-]?\d+(?:\.\d+)?(?:e[+\-]\d+)?/;
|
|
28
28
|
/**
|
|
29
29
|
* `,`-separated decimal.
|
|
30
30
|
* @private
|
|
31
31
|
*/
|
|
32
|
-
const decimal2RegExp = /^[
|
|
32
|
+
const decimal2RegExp = /^[+\-]?\d+(?:,\d+)?(?:e[+\-]\d+)?/;
|
|
33
33
|
/**
|
|
34
34
|
* - Group 1: Function name
|
|
35
35
|
* @private
|
|
@@ -185,7 +185,7 @@ class ControllablePath extends Controllable {
|
|
|
185
185
|
.add(parent);
|
|
186
186
|
if (!this.annotation.chart.styledMode) {
|
|
187
187
|
this.tracker.attr({
|
|
188
|
-
'stroke-linejoin': 'round',
|
|
188
|
+
'stroke-linejoin': 'round', // #1225
|
|
189
189
|
stroke: TRACKER_FILL,
|
|
190
190
|
fill: TRACKER_FILL,
|
|
191
191
|
'stroke-width': this.graphic.strokeWidth() +
|
|
@@ -375,8 +375,7 @@ class NavigationBindings {
|
|
|
375
375
|
}
|
|
376
376
|
}
|
|
377
377
|
else {
|
|
378
|
-
chart.stockTools &&
|
|
379
|
-
chart.stockTools.toggleButtonActiveClass(button);
|
|
378
|
+
chart.stockTools && button.classList.remove('highcharts-active');
|
|
380
379
|
svgContainer.removeClass('highcharts-draw-mode');
|
|
381
380
|
navigation.nextEvent = false;
|
|
382
381
|
navigation.mouseMoveEvent = false;
|
|
@@ -92,7 +92,7 @@ function compose(ChartClass, AxisClass, SeriesClass, seriesTypes, ColorClass) {
|
|
|
92
92
|
/**
|
|
93
93
|
* Returns true if the current browser supports WebGL.
|
|
94
94
|
*
|
|
95
|
-
* @requires
|
|
95
|
+
* @requires modules/boost
|
|
96
96
|
*
|
|
97
97
|
* @function Highcharts.hasWebGLSupport
|
|
98
98
|
*
|
|
@@ -202,14 +202,20 @@ function onChartCallback(chart) {
|
|
|
202
202
|
addEvent(chart, 'redraw', canvasToSVG);
|
|
203
203
|
let prevX = -1;
|
|
204
204
|
let prevY = -1;
|
|
205
|
-
addEvent(chart.pointer, 'afterGetHoverData', () => {
|
|
206
|
-
const series =
|
|
205
|
+
addEvent(chart.pointer, 'afterGetHoverData', (e) => {
|
|
206
|
+
const series = e.hoverPoint?.series;
|
|
207
207
|
chart.boost = chart.boost || {};
|
|
208
208
|
if (chart.boost.markerGroup && series) {
|
|
209
209
|
const xAxis = chart.inverted ? series.yAxis : series.xAxis;
|
|
210
210
|
const yAxis = chart.inverted ? series.xAxis : series.yAxis;
|
|
211
211
|
if ((xAxis && xAxis.pos !== prevX) ||
|
|
212
212
|
(yAxis && yAxis.pos !== prevY)) {
|
|
213
|
+
// #21176: If the axis is changed, hide teh halo without
|
|
214
|
+
// animation to prevent flickering of halos sharing the
|
|
215
|
+
// same marker group
|
|
216
|
+
chart.series.forEach((s) => {
|
|
217
|
+
s.halo?.hide();
|
|
218
|
+
});
|
|
213
219
|
// #10464: Keep the marker group position in sync with the
|
|
214
220
|
// position of the hovered series axes since there is only
|
|
215
221
|
// one shared marker group when boosting.
|
|
@@ -242,7 +242,7 @@ function createAndAttachRenderer(chart, series) {
|
|
|
242
242
|
})
|
|
243
243
|
.addClass(hasClickHandler ? 'highcharts-tracker' : '');
|
|
244
244
|
if (target instanceof ChartClass) {
|
|
245
|
-
target.boost
|
|
245
|
+
target.boost?.markerGroup?.translate(chart.plotLeft, chart.plotTop);
|
|
246
246
|
}
|
|
247
247
|
};
|
|
248
248
|
boost.clipRect = chart.renderer.clipRect();
|
|
@@ -421,7 +421,15 @@ function enterBoost(series) {
|
|
|
421
421
|
* @function Highcharts.Series#exitBoost
|
|
422
422
|
*/
|
|
423
423
|
function exitBoost(series) {
|
|
424
|
-
const boost = series.boost;
|
|
424
|
+
const boost = series.boost, chart = series.chart, chartBoost = chart.boost;
|
|
425
|
+
if (chartBoost?.markerGroup) {
|
|
426
|
+
chartBoost.markerGroup.destroy();
|
|
427
|
+
chartBoost.markerGroup = void 0;
|
|
428
|
+
for (const s of chart.series) {
|
|
429
|
+
s.markerGroup = void 0;
|
|
430
|
+
s.markerGroup = s.plotGroup('markerGroup', 'markers', 'visible', 1, chart.seriesGroup).addClass('highcharts-tracker');
|
|
431
|
+
}
|
|
432
|
+
}
|
|
425
433
|
// Reset instance properties and/or delete instance properties and go back
|
|
426
434
|
// to prototype
|
|
427
435
|
if (boost) {
|
|
@@ -641,13 +649,13 @@ function scatterProcessData(force) {
|
|
|
641
649
|
* @function Highcharts.Series#renderCanvas
|
|
642
650
|
*/
|
|
643
651
|
function seriesRenderCanvas() {
|
|
644
|
-
const options = this.options || {}, chart = this.chart, xAxis = this.xAxis, yAxis = this.yAxis, xData = options.xData || this.processedXData, yData = options.yData || this.processedYData, rawData = this.processedData || options.data, xExtremes = xAxis.getExtremes(),
|
|
652
|
+
const options = this.options || {}, chart = this.chart, chartBoost = chart.boost, seriesBoost = this.boost, xAxis = this.xAxis, yAxis = this.yAxis, xData = options.xData || this.processedXData, yData = options.yData || this.processedYData, rawData = this.processedData || options.data, xExtremes = xAxis.getExtremes(),
|
|
645
653
|
// Taking into account the offset of the min point #19497
|
|
646
654
|
xMin = xExtremes.min - (xAxis.minPointOffset || 0), xMax = xExtremes.max + (xAxis.minPointOffset || 0), yExtremes = yAxis.getExtremes(), yMin = yExtremes.min - (yAxis.minPointOffset || 0), yMax = yExtremes.max + (yAxis.minPointOffset || 0), pointTaken = {}, sampling = !!this.sampling, enableMouseTracking = options.enableMouseTracking, threshold = options.threshold, isRange = this.pointArrayMap &&
|
|
647
655
|
this.pointArrayMap.join(',') === 'low,high', isStacked = !!options.stacking, cropStart = this.cropStart || 0, requireSorting = this.requireSorting, useRaw = !xData, compareX = options.findNearestPointBy === 'x', xDataFull = (this.xData ||
|
|
648
656
|
this.options.xData ||
|
|
649
657
|
this.processedXData ||
|
|
650
|
-
false);
|
|
658
|
+
false), lineWidth = pick(options.lineWidth, 1);
|
|
651
659
|
let renderer = false, lastClientX, yBottom = yAxis.getThreshold(threshold), minVal, maxVal, minI, maxI;
|
|
652
660
|
// When touch-zooming or mouse-panning, re-rendering the canvas would not
|
|
653
661
|
// perform fast enough. Instead, let the axes redraw, but not the series.
|
|
@@ -671,8 +679,7 @@ function seriesRenderCanvas() {
|
|
|
671
679
|
if (!isChartSeriesBoosting(chart)) {
|
|
672
680
|
// If all series were boosting, but are not anymore
|
|
673
681
|
// restore private markerGroup
|
|
674
|
-
if (
|
|
675
|
-
this.markerGroup === chart.boost.markerGroup) {
|
|
682
|
+
if (this.markerGroup === chartBoost?.markerGroup) {
|
|
676
683
|
this.markerGroup = void 0;
|
|
677
684
|
}
|
|
678
685
|
this.markerGroup = this.plotGroup('markerGroup', 'markers', 'visible', 1, chart.seriesGroup).addClass('highcharts-tracker');
|
|
@@ -681,15 +688,17 @@ function seriesRenderCanvas() {
|
|
|
681
688
|
// If series has a private markerGroup, remove that
|
|
682
689
|
// and use common markerGroup
|
|
683
690
|
if (this.markerGroup &&
|
|
684
|
-
this.markerGroup !==
|
|
691
|
+
this.markerGroup !== chartBoost?.markerGroup) {
|
|
685
692
|
this.markerGroup.destroy();
|
|
686
693
|
}
|
|
687
694
|
// Use a single group for the markers
|
|
688
|
-
this.markerGroup =
|
|
695
|
+
this.markerGroup = chartBoost?.markerGroup;
|
|
689
696
|
// When switching from chart boosting mode, destroy redundant
|
|
690
697
|
// series boosting targets
|
|
691
|
-
if (
|
|
692
|
-
this.renderTarget =
|
|
698
|
+
if (seriesBoost && seriesBoost.target) {
|
|
699
|
+
this.renderTarget =
|
|
700
|
+
seriesBoost.target =
|
|
701
|
+
seriesBoost.target.destroy();
|
|
693
702
|
}
|
|
694
703
|
}
|
|
695
704
|
const points = this.points = [], addKDPoint = (clientX, plotY, i, percentage) => {
|
|
@@ -733,6 +742,28 @@ function seriesRenderCanvas() {
|
|
|
733
742
|
// Do not start building while drawing
|
|
734
743
|
this.buildKDTree = noop;
|
|
735
744
|
fireEvent(this, 'renderCanvas');
|
|
745
|
+
if (this.is('line') &&
|
|
746
|
+
lineWidth > 1 &&
|
|
747
|
+
seriesBoost?.target &&
|
|
748
|
+
chartBoost &&
|
|
749
|
+
!chartBoost.lineWidthFilter) {
|
|
750
|
+
chartBoost.lineWidthFilter = chart.renderer.definition({
|
|
751
|
+
tagName: 'filter',
|
|
752
|
+
children: [
|
|
753
|
+
{
|
|
754
|
+
tagName: 'feMorphology',
|
|
755
|
+
attributes: {
|
|
756
|
+
operator: 'dilate',
|
|
757
|
+
radius: 0.25 * lineWidth
|
|
758
|
+
}
|
|
759
|
+
}
|
|
760
|
+
],
|
|
761
|
+
attributes: { id: 'linewidth' }
|
|
762
|
+
});
|
|
763
|
+
seriesBoost.target.attr({
|
|
764
|
+
filter: 'url(#linewidth)'
|
|
765
|
+
});
|
|
766
|
+
}
|
|
736
767
|
if (renderer) {
|
|
737
768
|
allocateIfNotSeriesBoosting(renderer, this);
|
|
738
769
|
renderer.pushSeries(this);
|
|
@@ -143,7 +143,7 @@ const vertexShader = [
|
|
|
143
143
|
'cvsOffset -= sign * len;',
|
|
144
144
|
'}',
|
|
145
145
|
'return sign * (val - localMin) * localA + cvsOffset + ',
|
|
146
|
-
'(sign * minPixelPadding);',
|
|
146
|
+
'(sign * minPixelPadding);', // ' + localA * pointPlacement * pointRange;',
|
|
147
147
|
'}',
|
|
148
148
|
'float xToPixels(float value) {',
|
|
149
149
|
'if (skipTranslation){',
|
|
@@ -146,8 +146,6 @@ class Breadcrumbs {
|
|
|
146
146
|
/**
|
|
147
147
|
* Update Breadcrumbs properties, like level and list.
|
|
148
148
|
*
|
|
149
|
-
* @requires modules/breadcrumbs
|
|
150
|
-
*
|
|
151
149
|
* @function Highcharts.Breadcrumbs#updateProperties
|
|
152
150
|
* @param {Highcharts.Breadcrumbs} this
|
|
153
151
|
* Breadcrumbs class.
|
|
@@ -161,8 +159,6 @@ class Breadcrumbs {
|
|
|
161
159
|
* Set breadcrumbs list.
|
|
162
160
|
* @function Highcharts.Breadcrumbs#setList
|
|
163
161
|
*
|
|
164
|
-
* @requires modules/breadcrumbs
|
|
165
|
-
*
|
|
166
162
|
* @param {Highcharts.Breadcrumbs} this
|
|
167
163
|
* Breadcrumbs class.
|
|
168
164
|
* @param {Highcharts.BreadcrumbsOptions} list
|
|
@@ -174,8 +170,6 @@ class Breadcrumbs {
|
|
|
174
170
|
/**
|
|
175
171
|
* Calculate level on which chart currently is.
|
|
176
172
|
*
|
|
177
|
-
* @requires modules/breadcrumbs
|
|
178
|
-
*
|
|
179
173
|
* @function Highcharts.Breadcrumbs#setLevel
|
|
180
174
|
* @param {Highcharts.Breadcrumbs} this
|
|
181
175
|
* Breadcrumbs class.
|
|
@@ -186,8 +180,6 @@ class Breadcrumbs {
|
|
|
186
180
|
/**
|
|
187
181
|
* Get Breadcrumbs level
|
|
188
182
|
*
|
|
189
|
-
* @requires modules/breadcrumbs
|
|
190
|
-
*
|
|
191
183
|
* @function Highcharts.Breadcrumbs#getLevel
|
|
192
184
|
* @param {Highcharts.Breadcrumbs} this
|
|
193
185
|
* Breadcrumbs class.
|
|
@@ -198,8 +190,6 @@ class Breadcrumbs {
|
|
|
198
190
|
/**
|
|
199
191
|
* Default button text formatter.
|
|
200
192
|
*
|
|
201
|
-
* @requires modules/breadcrumbs
|
|
202
|
-
*
|
|
203
193
|
* @function Highcharts.Breadcrumbs#getButtonText
|
|
204
194
|
* @param {Highcharts.Breadcrumbs} this
|
|
205
195
|
* Breadcrumbs class.
|
|
@@ -227,8 +217,6 @@ class Breadcrumbs {
|
|
|
227
217
|
/**
|
|
228
218
|
* Redraw.
|
|
229
219
|
*
|
|
230
|
-
* @requires modules/breadcrumbs
|
|
231
|
-
*
|
|
232
220
|
* @function Highcharts.Breadcrumbs#redraw
|
|
233
221
|
* @param {Highcharts.Breadcrumbs} this
|
|
234
222
|
* Breadcrumbs class.
|
|
@@ -245,8 +233,6 @@ class Breadcrumbs {
|
|
|
245
233
|
/**
|
|
246
234
|
* Create a group, then draw breadcrumbs together with the separators.
|
|
247
235
|
*
|
|
248
|
-
* @requires modules/breadcrumbs
|
|
249
|
-
*
|
|
250
236
|
* @function Highcharts.Breadcrumbs#render
|
|
251
237
|
* @param {Highcharts.Breadcrumbs} this
|
|
252
238
|
* Breadcrumbs class.
|
|
@@ -275,8 +261,6 @@ class Breadcrumbs {
|
|
|
275
261
|
/**
|
|
276
262
|
* Draw breadcrumbs together with the separators.
|
|
277
263
|
*
|
|
278
|
-
* @requires modules/breadcrumbs
|
|
279
|
-
*
|
|
280
264
|
* @function Highcharts.Breadcrumbs#renderFullPathButtons
|
|
281
265
|
* @param {Highcharts.Breadcrumbs} this
|
|
282
266
|
* Breadcrumbs class.
|
|
@@ -292,8 +276,6 @@ class Breadcrumbs {
|
|
|
292
276
|
* Render Single button - when showFullPath is not used. The button is
|
|
293
277
|
* similar to the old drillUpButton
|
|
294
278
|
*
|
|
295
|
-
* @requires modules/breadcrumbs
|
|
296
|
-
*
|
|
297
279
|
* @function Highcharts.Breadcrumbs#renderSingleButton
|
|
298
280
|
* @param {Highcharts.Breadcrumbs} this Breadcrumbs class.
|
|
299
281
|
*/
|
|
@@ -323,8 +305,6 @@ class Breadcrumbs {
|
|
|
323
305
|
/**
|
|
324
306
|
* Update group position based on align and it's width.
|
|
325
307
|
*
|
|
326
|
-
* @requires modules/breadcrumbs
|
|
327
|
-
*
|
|
328
308
|
* @function Highcharts.Breadcrumbs#renderSingleButton
|
|
329
309
|
* @param {Highcharts.Breadcrumbs} this
|
|
330
310
|
* Breadcrumbs class.
|
|
@@ -355,8 +335,6 @@ class Breadcrumbs {
|
|
|
355
335
|
/**
|
|
356
336
|
* Render a button.
|
|
357
337
|
*
|
|
358
|
-
* @requires modules/breadcrumbs
|
|
359
|
-
*
|
|
360
338
|
* @function Highcharts.Breadcrumbs#renderButton
|
|
361
339
|
* @param {Highcharts.Breadcrumbs} this
|
|
362
340
|
* Breadcrumbs class.
|
|
@@ -403,8 +381,6 @@ class Breadcrumbs {
|
|
|
403
381
|
/**
|
|
404
382
|
* Render a separator.
|
|
405
383
|
*
|
|
406
|
-
* @requires modules/breadcrumbs
|
|
407
|
-
*
|
|
408
384
|
* @function Highcharts.Breadcrumbs#renderSeparator
|
|
409
385
|
* @param {Highcharts.Breadcrumbs} this
|
|
410
386
|
* Breadcrumbs class.
|
|
@@ -430,8 +406,6 @@ class Breadcrumbs {
|
|
|
430
406
|
* Update.
|
|
431
407
|
* @function Highcharts.Breadcrumbs#update
|
|
432
408
|
*
|
|
433
|
-
* @requires modules/breadcrumbs
|
|
434
|
-
*
|
|
435
409
|
* @param {Highcharts.Breadcrumbs} this
|
|
436
410
|
* Breadcrumbs class.
|
|
437
411
|
* @param {Highcharts.BreadcrumbsOptions} options
|
|
@@ -448,8 +422,6 @@ class Breadcrumbs {
|
|
|
448
422
|
* Update button text when the showFullPath set to false.
|
|
449
423
|
* @function Highcharts.Breadcrumbs#updateSingleButton
|
|
450
424
|
*
|
|
451
|
-
* @requires modules/breadcrumbs
|
|
452
|
-
*
|
|
453
425
|
* @param {Highcharts.Breadcrumbs} this
|
|
454
426
|
* Breadcrumbs class.
|
|
455
427
|
*/
|
|
@@ -464,8 +436,6 @@ class Breadcrumbs {
|
|
|
464
436
|
/**
|
|
465
437
|
* Destroy the chosen breadcrumbs group
|
|
466
438
|
*
|
|
467
|
-
* @requires modules/breadcrumbs
|
|
468
|
-
*
|
|
469
439
|
* @function Highcharts.Breadcrumbs#destroy
|
|
470
440
|
* @param {Highcharts.Breadcrumbs} this
|
|
471
441
|
* Breadcrumbs class.
|
|
@@ -484,8 +454,6 @@ class Breadcrumbs {
|
|
|
484
454
|
/**
|
|
485
455
|
* Destroy the elements' buttons and separators.
|
|
486
456
|
*
|
|
487
|
-
* @requires modules/breadcrumbs
|
|
488
|
-
*
|
|
489
457
|
* @function Highcharts.Breadcrumbs#destroyListElements
|
|
490
458
|
* @param {Highcharts.Breadcrumbs} this
|
|
491
459
|
* Breadcrumbs class.
|
|
@@ -510,8 +478,6 @@ class Breadcrumbs {
|
|
|
510
478
|
/**
|
|
511
479
|
* Destroy the single button if exists.
|
|
512
480
|
*
|
|
513
|
-
* @requires modules/breadcrumbs
|
|
514
|
-
*
|
|
515
481
|
* @function Highcharts.Breadcrumbs#destroySingleButton
|
|
516
482
|
* @param {Highcharts.Breadcrumbs} this
|
|
517
483
|
* Breadcrumbs class.
|
|
@@ -525,8 +491,6 @@ class Breadcrumbs {
|
|
|
525
491
|
/**
|
|
526
492
|
* Reset state for all buttons in elementList.
|
|
527
493
|
*
|
|
528
|
-
* @requires modules/breadcrumbs
|
|
529
|
-
*
|
|
530
494
|
* @function Highcharts.Breadcrumbs#resetElementListState
|
|
531
495
|
* @param {Highcharts.Breadcrumbs} this
|
|
532
496
|
* Breadcrumbs class.
|
|
@@ -539,8 +503,6 @@ class Breadcrumbs {
|
|
|
539
503
|
/**
|
|
540
504
|
* Update rendered elements inside the elementList.
|
|
541
505
|
*
|
|
542
|
-
* @requires modules/breadcrumbs
|
|
543
|
-
*
|
|
544
506
|
* @function Highcharts.Breadcrumbs#updateListElements
|
|
545
507
|
*
|
|
546
508
|
* @param {Highcharts.Breadcrumbs} this
|