highcharts 12.3.0 → 12.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bower.json +1 -1
- package/css/highcharts.css +0 -5
- package/es-modules/Accessibility/Components/MenuComponent.js +3 -1
- package/es-modules/Accessibility/Components/NavigatorComponent.js +5 -1
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +3 -1
- package/es-modules/Accessibility/FocusBorder.js +4 -0
- package/es-modules/Accessibility/Options/A11yDefaults.js +12 -0
- package/es-modules/Core/Axis/Axis.js +4 -3
- package/es-modules/Core/Axis/Axis3DComposition.js +0 -3
- package/es-modules/Core/Axis/AxisDefaults.js +0 -8
- package/es-modules/Core/Axis/BrokenAxis.js +114 -90
- package/es-modules/Core/Axis/Color/ColorAxis.js +3 -3
- package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +2 -3
- package/es-modules/Core/Axis/OrdinalAxis.js +0 -1
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +2 -2
- package/es-modules/Core/Axis/RadialAxis.js +15 -3
- package/es-modules/Core/Axis/ScrollbarAxis.js +19 -17
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +0 -1
- package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +36 -51
- package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +39 -17
- package/es-modules/Core/Chart/Chart.js +10 -9
- package/es-modules/Core/Chart/ChartDefaults.js +4 -3
- package/es-modules/Core/Chart/StockChart.js +42 -49
- package/es-modules/Core/Defaults.js +12 -7
- package/es-modules/Core/Geometry/CircleUtilities.js +3 -1
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/Legend/Legend.js +8 -7
- package/es-modules/Core/Pointer.js +14 -5
- package/es-modules/Core/Renderer/HTML/AST.js +1 -1
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +2 -1
- package/es-modules/Core/Renderer/SVG/SVGElement.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +10 -1
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +7 -7
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
- package/es-modules/Core/Series/Point.js +9 -0
- package/es-modules/Core/Series/Series.js +1 -1
- package/es-modules/Core/Series/SeriesRegistry.js +8 -1
- package/es-modules/Data/Connectors/JSONConnector.js +0 -1
- package/es-modules/Data/Converters/HTMLTableConverter.js +1 -1
- package/es-modules/Data/Converters/JSONConverter.js +0 -1
- package/es-modules/Data/DataTable.js +1 -2
- package/es-modules/Data/Formula/FormulaParser.js +33 -1
- package/es-modules/Data/Formula/FormulaProcessor.js +97 -45
- package/es-modules/Data/Modifiers/DataModifier.js +1 -1
- package/es-modules/Data/Modifiers/FilterModifier.js +168 -0
- package/es-modules/Data/Modifiers/FilterModifierOptions.js +14 -0
- package/es-modules/Data/Modifiers/SortModifier.js +12 -3
- package/es-modules/Extensions/Annotations/MockPoint.js +6 -3
- package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +1 -1
- package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +1 -1
- package/es-modules/Extensions/Boost/Boost.js +5 -1
- package/es-modules/Extensions/Boost/BoostSeries.js +31 -18
- package/es-modules/Extensions/Boost/WGLRenderer.js +30 -21
- package/es-modules/Extensions/Boost/WGLShader.js +18 -5
- package/es-modules/Extensions/BoostCanvas.js +0 -5
- package/es-modules/Extensions/BorderRadius.js +6 -2
- package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +1 -1
- package/es-modules/Extensions/DownloadURL.js +3 -1
- package/es-modules/Extensions/ExportData/ExportData.js +3 -5
- package/es-modules/Extensions/Exporting/Exporting.js +86 -0
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +1 -1
- package/es-modules/Extensions/NonCartesianSeriesZoom/NonCartesianSeriesZoom.js +25 -25
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +1 -1
- package/es-modules/Extensions/Pane/PaneComposition.js +19 -12
- package/es-modules/Extensions/ScrollablePlotArea.js +29 -21
- package/es-modules/Extensions/Sonification/Sonification.js +1 -1
- package/es-modules/Extensions/StaticScale.js +13 -11
- package/es-modules/Extensions/TextPath.js +2 -2
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +16 -9
- package/es-modules/Series/DataModifyComposition.js +0 -2
- package/es-modules/Series/DrawPointUtilities.js +1 -1
- package/es-modules/Series/Histogram/HistogramSeries.js +19 -17
- package/es-modules/Series/Pie/PieDataLabel.js +2 -2
- package/es-modules/Series/Pie/PieSeries.js +2 -2
- package/es-modules/Series/PolarComposition.js +36 -1
- package/es-modules/Series/SeriesOnPointComposition.js +0 -1
- package/es-modules/Series/SimulationSeriesUtilities.js +7 -0
- package/es-modules/Series/SolidGauge/SolidGaugeSeriesDefaults.js +13 -0
- package/es-modules/Series/Treegraph/TreegraphLayout.js +10 -4
- package/es-modules/Series/Treemap/TreemapSeries.js +4 -4
- package/es-modules/Series/Variwide/VariwideComposition.js +9 -11
- package/es-modules/Series/Waterfall/WaterfallSeries.js +6 -9
- package/es-modules/Series/XRange/XRangePoint.js +2 -1
- package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -1
- package/es-modules/Stock/StockTools/StockToolbar.js +1 -1
- package/es-modules/masters/highcharts-3d.src.js +2 -2
- package/es-modules/masters/highcharts-gantt.src.js +8 -2
- package/es-modules/masters/highcharts-more.src.js +2 -2
- package/es-modules/masters/highcharts.src.js +2 -2
- package/es-modules/masters/highmaps.src.js +2 -2
- package/es-modules/masters/highstock.src.js +2 -2
- package/es-modules/masters/i18n/fr-FR.src.d.ts +1 -1
- package/es-modules/masters/i18n/fr-FR.src.js +1 -1
- package/es-modules/masters/i18n/nb-NO.src.d.ts +1 -1
- package/es-modules/masters/i18n/nb-NO.src.js +1 -1
- package/es-modules/masters/i18n/zh-CN.src.d.ts +1 -1
- package/es-modules/masters/i18n/zh-CN.src.js +1 -1
- package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
- package/es-modules/masters/indicators/ao.src.js +1 -1
- package/es-modules/masters/indicators/apo.src.js +1 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
- package/es-modules/masters/indicators/aroon.src.js +1 -1
- package/es-modules/masters/indicators/atr.src.js +1 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
- package/es-modules/masters/indicators/cci.src.js +1 -1
- package/es-modules/masters/indicators/chaikin.src.js +1 -1
- package/es-modules/masters/indicators/cmf.src.js +1 -1
- package/es-modules/masters/indicators/cmo.src.js +1 -1
- package/es-modules/masters/indicators/dema.src.js +1 -1
- package/es-modules/masters/indicators/disparity-index.src.js +1 -1
- package/es-modules/masters/indicators/dmi.src.js +1 -1
- package/es-modules/masters/indicators/dpo.src.js +1 -1
- package/es-modules/masters/indicators/ema.src.js +0 -3
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/es-modules/masters/indicators/indicators-all.src.js +1 -1
- package/es-modules/masters/indicators/indicators.src.js +1 -1
- package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
- package/es-modules/masters/indicators/klinger.src.js +1 -1
- package/es-modules/masters/indicators/macd.src.js +1 -1
- package/es-modules/masters/indicators/mfi.src.js +1 -1
- package/es-modules/masters/indicators/momentum.src.js +1 -1
- package/es-modules/masters/indicators/natr.src.js +1 -1
- package/es-modules/masters/indicators/obv.src.js +1 -1
- package/es-modules/masters/indicators/pivot-points.src.js +1 -1
- package/es-modules/masters/indicators/ppo.src.js +1 -1
- package/es-modules/masters/indicators/price-channel.src.js +1 -1
- package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
- package/es-modules/masters/indicators/psar.src.js +1 -1
- package/es-modules/masters/indicators/regressions.src.js +1 -1
- package/es-modules/masters/indicators/roc.src.js +1 -1
- package/es-modules/masters/indicators/rsi.src.js +1 -1
- package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
- package/es-modules/masters/indicators/stochastic.src.js +1 -1
- package/es-modules/masters/indicators/supertrend.src.js +1 -1
- package/es-modules/masters/indicators/tema.src.js +1 -1
- package/es-modules/masters/indicators/trendline.src.js +1 -1
- package/es-modules/masters/indicators/trix.src.js +1 -1
- package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
- package/es-modules/masters/indicators/vwap.src.js +1 -1
- package/es-modules/masters/indicators/williams-r.src.js +1 -1
- package/es-modules/masters/indicators/wma.src.js +1 -1
- package/es-modules/masters/indicators/zigzag.src.js +1 -1
- package/es-modules/masters/modules/accessibility.src.js +1 -1
- package/es-modules/masters/modules/annotations-advanced.src.js +1 -1
- package/es-modules/masters/modules/annotations.src.js +1 -1
- package/es-modules/masters/modules/arc-diagram.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-tools.src.d.ts +1 -0
- package/es-modules/masters/modules/data-tools.src.js +2 -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/flowmap.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/geoheatmap.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/mouse-wheel-zoom.src.js +1 -1
- package/es-modules/masters/modules/navigator.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/non-cartesian-zoom.src.js +1 -1
- package/es-modules/masters/modules/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/organization.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/pictorial.src.js +1 -1
- package/es-modules/masters/modules/pointandfigure.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/renko.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/series-on-point.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/textpath.src.js +1 -1
- package/es-modules/masters/modules/tiledwebmap.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/treegraph.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/standalone-navigator.src.js +7 -6
- package/es-modules/masters/themes/adaptive.src.js +1 -1
- package/es-modules/masters/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/brand-dark.src.js +1 -1
- package/es-modules/masters/themes/brand-light.src.js +1 -1
- 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/es-modules/tsconfig.tsbuildinfo +1 -1
- package/esm/highcharts-3d.js +3 -3
- package/esm/highcharts-3d.src.js +2 -5
- package/esm/highcharts-gantt.js +8 -2
- package/esm/highcharts-gantt.src.js +8 -2
- package/esm/highcharts-more.js +3 -3
- package/esm/highcharts-more.src.js +475 -31
- package/esm/highcharts.js +4 -4
- package/esm/highcharts.src.js +140 -93
- package/esm/highmaps.js +2 -2
- package/esm/highmaps.src.js +2 -2
- package/esm/highstock.js +2 -2
- package/esm/highstock.src.js +2 -2
- package/esm/i18n/fr-FR.js +1 -1
- package/esm/i18n/fr-FR.src.js +1 -1
- package/esm/i18n/nb-NO.js +1 -1
- package/esm/i18n/nb-NO.src.js +1 -1
- package/esm/i18n/zh-CN.js +1 -1
- package/esm/i18n/zh-CN.src.js +1 -1
- package/esm/indicators/acceleration-bands.js +1 -1
- package/esm/indicators/acceleration-bands.src.js +1 -1
- package/esm/indicators/accumulation-distribution.js +1 -1
- package/esm/indicators/accumulation-distribution.src.js +1 -1
- package/esm/indicators/ao.js +1 -1
- package/esm/indicators/ao.src.js +1 -1
- package/esm/indicators/apo.js +1 -1
- package/esm/indicators/apo.src.js +1 -1
- package/esm/indicators/aroon-oscillator.js +1 -1
- package/esm/indicators/aroon-oscillator.src.js +1 -1
- package/esm/indicators/aroon.js +1 -1
- package/esm/indicators/aroon.src.js +1 -1
- package/esm/indicators/atr.js +1 -1
- package/esm/indicators/atr.src.js +1 -1
- package/esm/indicators/bollinger-bands.js +1 -1
- package/esm/indicators/bollinger-bands.src.js +1 -1
- package/esm/indicators/cci.js +1 -1
- package/esm/indicators/cci.src.js +1 -1
- package/esm/indicators/chaikin.js +1 -1
- package/esm/indicators/chaikin.src.js +1 -1
- package/esm/indicators/cmf.js +1 -1
- package/esm/indicators/cmf.src.js +1 -1
- package/esm/indicators/cmo.js +1 -1
- package/esm/indicators/cmo.src.js +1 -1
- package/esm/indicators/dema.js +1 -1
- package/esm/indicators/dema.src.js +1 -1
- package/esm/indicators/disparity-index.js +1 -1
- package/esm/indicators/disparity-index.src.js +1 -1
- package/esm/indicators/dmi.js +1 -1
- package/esm/indicators/dmi.src.js +1 -1
- package/esm/indicators/dpo.js +1 -1
- package/esm/indicators/dpo.src.js +1 -1
- package/esm/indicators/ema.src.js +0 -3
- package/esm/indicators/ichimoku-kinko-hyo.js +1 -1
- package/esm/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/esm/indicators/indicators-all.js +2 -2
- package/esm/indicators/indicators-all.src.js +2 -2
- package/esm/indicators/indicators.js +1 -1
- package/esm/indicators/indicators.src.js +1 -1
- package/esm/indicators/keltner-channels.js +1 -1
- package/esm/indicators/keltner-channels.src.js +1 -1
- package/esm/indicators/klinger.js +1 -1
- package/esm/indicators/klinger.src.js +1 -1
- package/esm/indicators/macd.js +2 -2
- package/esm/indicators/macd.src.js +2 -2
- package/esm/indicators/mfi.js +1 -1
- package/esm/indicators/mfi.src.js +1 -1
- package/esm/indicators/momentum.js +1 -1
- package/esm/indicators/momentum.src.js +1 -1
- package/esm/indicators/natr.js +1 -1
- package/esm/indicators/natr.src.js +1 -1
- package/esm/indicators/obv.js +1 -1
- package/esm/indicators/obv.src.js +1 -1
- package/esm/indicators/pivot-points.js +1 -1
- package/esm/indicators/pivot-points.src.js +1 -1
- package/esm/indicators/ppo.js +1 -1
- package/esm/indicators/ppo.src.js +1 -1
- package/esm/indicators/price-channel.js +1 -1
- package/esm/indicators/price-channel.src.js +1 -1
- package/esm/indicators/price-envelopes.js +1 -1
- package/esm/indicators/price-envelopes.src.js +1 -1
- package/esm/indicators/psar.js +1 -1
- package/esm/indicators/psar.src.js +1 -1
- package/esm/indicators/regressions.js +1 -1
- package/esm/indicators/regressions.src.js +1 -1
- package/esm/indicators/roc.js +1 -1
- package/esm/indicators/roc.src.js +1 -1
- package/esm/indicators/rsi.js +1 -1
- package/esm/indicators/rsi.src.js +1 -1
- package/esm/indicators/slow-stochastic.js +1 -1
- package/esm/indicators/slow-stochastic.src.js +1 -1
- package/esm/indicators/stochastic.js +1 -1
- package/esm/indicators/stochastic.src.js +1 -1
- package/esm/indicators/supertrend.js +1 -1
- package/esm/indicators/supertrend.src.js +1 -1
- package/esm/indicators/tema.js +1 -1
- package/esm/indicators/tema.src.js +1 -1
- package/esm/indicators/trendline.js +1 -1
- package/esm/indicators/trendline.src.js +1 -1
- package/esm/indicators/trix.js +1 -1
- package/esm/indicators/trix.src.js +1 -1
- package/esm/indicators/volume-by-price.js +1 -1
- package/esm/indicators/volume-by-price.src.js +1 -1
- package/esm/indicators/vwap.js +1 -1
- package/esm/indicators/vwap.src.js +1 -1
- package/esm/indicators/williams-r.js +1 -1
- package/esm/indicators/williams-r.src.js +1 -1
- package/esm/indicators/wma.js +1 -1
- package/esm/indicators/wma.src.js +1 -1
- package/esm/indicators/zigzag.js +1 -1
- package/esm/indicators/zigzag.src.js +1 -1
- package/esm/modules/accessibility.js +2 -2
- package/esm/modules/accessibility.src.js +47 -21
- package/esm/modules/annotations-advanced.js +2 -2
- package/esm/modules/annotations-advanced.src.js +8 -5
- package/esm/modules/annotations.js +2 -2
- package/esm/modules/annotations.src.js +9 -6
- package/esm/modules/arc-diagram.js +2 -2
- package/esm/modules/arc-diagram.src.js +3 -3
- package/esm/modules/arrow-symbols.js +1 -1
- package/esm/modules/arrow-symbols.src.js +1 -1
- package/esm/modules/boost-canvas.js +2 -2
- package/esm/modules/boost-canvas.src.js +80 -50
- package/esm/modules/boost.js +2 -2
- package/esm/modules/boost.src.js +85 -46
- package/esm/modules/broken-axis.js +2 -2
- package/esm/modules/broken-axis.src.js +115 -91
- package/esm/modules/bullet.js +1 -1
- package/esm/modules/bullet.src.js +1 -1
- package/esm/modules/coloraxis.js +2 -2
- package/esm/modules/coloraxis.src.js +6 -7
- package/esm/modules/current-date-indicator.js +1 -1
- package/esm/modules/current-date-indicator.src.js +1 -1
- package/esm/modules/cylinder.js +1 -1
- package/esm/modules/cylinder.src.js +1 -1
- package/esm/modules/data-tools.js +2 -2
- package/esm/modules/data-tools.src.js +318 -57
- package/esm/modules/data.js +1 -1
- package/esm/modules/data.src.js +1 -1
- package/esm/modules/datagrouping.js +1 -1
- package/esm/modules/datagrouping.src.js +1 -1
- package/esm/modules/debugger.js +1 -1
- package/esm/modules/debugger.src.js +1 -1
- package/esm/modules/dependency-wheel.js +2 -2
- package/esm/modules/dependency-wheel.src.js +3 -3
- package/esm/modules/dotplot.js +1 -1
- package/esm/modules/dotplot.src.js +1 -1
- package/esm/modules/drag-panes.js +1 -1
- package/esm/modules/drag-panes.src.js +1 -1
- package/esm/modules/draggable-points.js +1 -1
- package/esm/modules/draggable-points.src.js +1 -1
- package/esm/modules/drilldown.js +1 -1
- package/esm/modules/drilldown.src.js +2 -2
- package/esm/modules/dumbbell.js +1 -1
- package/esm/modules/dumbbell.src.js +1 -1
- package/esm/modules/export-data.js +2 -2
- package/esm/modules/export-data.src.js +7 -7
- package/esm/modules/exporting.js +2 -2
- package/esm/modules/exporting.src.js +91 -3
- package/esm/modules/flowmap.js +1 -1
- package/esm/modules/flowmap.src.js +1 -1
- package/esm/modules/full-screen.js +1 -1
- package/esm/modules/full-screen.src.js +1 -1
- package/esm/modules/funnel.js +1 -1
- package/esm/modules/funnel.src.js +7 -3
- package/esm/modules/funnel3d.js +1 -1
- package/esm/modules/funnel3d.src.js +1 -1
- package/esm/modules/gantt.js +2 -2
- package/esm/modules/gantt.src.js +222 -188
- package/esm/modules/geoheatmap.js +1 -1
- package/esm/modules/geoheatmap.src.js +1 -1
- package/esm/modules/grid-axis.js +1 -1
- package/esm/modules/grid-axis.src.js +1 -1
- package/esm/modules/heatmap.js +1 -1
- package/esm/modules/heatmap.src.js +1 -1
- package/esm/modules/heikinashi.js +1 -1
- package/esm/modules/heikinashi.src.js +1 -1
- package/esm/modules/histogram-bellcurve.js +2 -2
- package/esm/modules/histogram-bellcurve.src.js +36 -27
- package/esm/modules/hollowcandlestick.js +1 -1
- package/esm/modules/hollowcandlestick.src.js +1 -1
- package/esm/modules/item-series.js +1 -1
- package/esm/modules/item-series.src.js +1 -1
- package/esm/modules/lollipop.js +1 -1
- package/esm/modules/lollipop.src.js +1 -1
- package/esm/modules/map.js +1 -1
- package/esm/modules/map.src.js +1 -1
- package/esm/modules/marker-clusters.js +1 -1
- package/esm/modules/marker-clusters.src.js +1 -1
- package/esm/modules/mouse-wheel-zoom.js +1 -1
- package/esm/modules/mouse-wheel-zoom.src.js +1 -1
- package/esm/modules/navigator.js +2 -2
- package/esm/modules/navigator.src.js +20 -18
- package/esm/modules/networkgraph.js +2 -2
- package/esm/modules/networkgraph.src.js +10 -3
- package/esm/modules/no-data-to-display.js +1 -1
- package/esm/modules/no-data-to-display.src.js +1 -1
- package/esm/modules/non-cartesian-zoom.js +2 -2
- package/esm/modules/non-cartesian-zoom.src.js +26 -26
- package/esm/modules/offline-exporting.js +2 -2
- package/esm/modules/offline-exporting.src.js +5 -3
- package/esm/modules/organization.js +2 -2
- package/esm/modules/organization.src.js +3 -3
- package/esm/modules/parallel-coordinates.js +1 -1
- package/esm/modules/parallel-coordinates.src.js +1 -1
- package/esm/modules/pareto.js +1 -1
- package/esm/modules/pareto.src.js +1 -1
- package/esm/modules/pathfinder.js +1 -1
- package/esm/modules/pathfinder.src.js +1 -1
- package/esm/modules/pattern-fill.js +1 -1
- package/esm/modules/pattern-fill.src.js +1 -1
- package/esm/modules/pictorial.js +1 -1
- package/esm/modules/pictorial.src.js +1 -1
- package/esm/modules/pointandfigure.js +1 -1
- package/esm/modules/pointandfigure.src.js +1 -1
- package/esm/modules/price-indicator.js +1 -1
- package/esm/modules/price-indicator.src.js +1 -1
- package/esm/modules/pyramid3d.js +1 -1
- package/esm/modules/pyramid3d.src.js +1 -1
- package/esm/modules/renko.js +1 -1
- package/esm/modules/renko.src.js +1 -1
- package/esm/modules/sankey.js +2 -2
- package/esm/modules/sankey.src.js +3 -3
- package/esm/modules/series-label.js +1 -1
- package/esm/modules/series-label.src.js +1 -1
- package/esm/modules/series-on-point.js +2 -2
- package/esm/modules/series-on-point.src.js +1 -9
- package/esm/modules/solid-gauge.js +1 -1
- package/esm/modules/solid-gauge.src.js +20 -3
- package/esm/modules/sonification.js +2 -2
- package/esm/modules/sonification.src.js +5 -3
- package/esm/modules/static-scale.js +2 -2
- package/esm/modules/static-scale.src.js +14 -12
- package/esm/modules/stock-tools.js +2 -2
- package/esm/modules/stock-tools.src.js +3 -3
- package/esm/modules/stock.js +2 -2
- package/esm/modules/stock.src.js +68 -76
- package/esm/modules/streamgraph.js +1 -1
- package/esm/modules/streamgraph.src.js +1 -1
- package/esm/modules/sunburst.js +2 -2
- package/esm/modules/sunburst.src.js +9 -9
- package/esm/modules/textpath.js +2 -2
- package/esm/modules/textpath.src.js +3 -3
- package/esm/modules/tiledwebmap.js +1 -1
- package/esm/modules/tiledwebmap.src.js +1 -1
- package/esm/modules/tilemap.js +1 -1
- package/esm/modules/tilemap.src.js +1 -1
- package/esm/modules/timeline.js +1 -1
- package/esm/modules/timeline.src.js +1 -1
- package/esm/modules/treegraph.js +2 -2
- package/esm/modules/treegraph.src.js +13 -7
- package/esm/modules/treegrid.js +2 -2
- package/esm/modules/treegrid.src.js +190 -159
- package/esm/modules/treemap.js +2 -2
- package/esm/modules/treemap.src.js +7 -7
- package/esm/modules/variable-pie.js +1 -1
- package/esm/modules/variable-pie.src.js +1 -1
- package/esm/modules/variwide.js +2 -2
- package/esm/modules/variwide.src.js +10 -12
- package/esm/modules/vector.js +1 -1
- package/esm/modules/vector.src.js +1 -1
- package/esm/modules/venn.js +2 -2
- package/esm/modules/venn.src.js +5 -3
- package/esm/modules/windbarb.js +1 -1
- package/esm/modules/windbarb.src.js +1 -1
- package/esm/modules/wordcloud.js +1 -1
- package/esm/modules/wordcloud.src.js +2 -2
- package/esm/modules/xrange.js +2 -2
- package/esm/modules/xrange.src.js +3 -2
- package/esm/standalone-navigator.js +7 -5
- package/esm/standalone-navigator.src.js +172 -122
- package/esm/themes/adaptive.js +1 -1
- package/esm/themes/adaptive.src.js +1 -1
- package/esm/themes/avocado.js +1 -1
- package/esm/themes/avocado.src.js +1 -1
- package/esm/themes/brand-dark.js +1 -1
- package/esm/themes/brand-dark.src.js +1 -1
- package/esm/themes/brand-light.js +1 -1
- package/esm/themes/brand-light.src.js +1 -1
- package/esm/themes/dark-blue.js +1 -1
- package/esm/themes/dark-blue.src.js +1 -1
- package/esm/themes/dark-green.js +1 -1
- package/esm/themes/dark-green.src.js +1 -1
- package/esm/themes/dark-unica.js +1 -1
- package/esm/themes/dark-unica.src.js +1 -1
- package/esm/themes/gray.js +1 -1
- package/esm/themes/gray.src.js +1 -1
- package/esm/themes/grid-light.js +1 -1
- package/esm/themes/grid-light.src.js +1 -1
- package/esm/themes/grid.js +1 -1
- package/esm/themes/grid.src.js +1 -1
- package/esm/themes/high-contrast-dark.js +1 -1
- package/esm/themes/high-contrast-dark.src.js +1 -1
- package/esm/themes/high-contrast-light.js +1 -1
- package/esm/themes/high-contrast-light.src.js +1 -1
- package/esm/themes/sand-signika.js +1 -1
- package/esm/themes/sand-signika.src.js +1 -1
- package/esm/themes/skies.js +1 -1
- package/esm/themes/skies.src.js +1 -1
- package/esm/themes/sunset.js +1 -1
- package/esm/themes/sunset.src.js +1 -1
- package/highcharts-3d.js +3 -3
- package/highcharts-3d.src.js +2 -5
- package/highcharts-gantt.js +10 -11
- package/highcharts-gantt.src.js +383 -295
- package/highcharts-more.d.ts +9 -0
- package/highcharts-more.js +3 -3
- package/highcharts-more.src.d.ts +9 -0
- package/highcharts-more.src.js +475 -31
- package/highcharts.d.ts +28 -46
- package/highcharts.js +4 -4
- package/highcharts.src.d.ts +28 -46
- package/highcharts.src.js +140 -93
- package/highmaps.js +4 -11
- package/highmaps.src.js +157 -111
- package/highstock.js +4 -11
- package/highstock.src.js +329 -266
- package/i18n/fr-FR.js +1 -1
- package/i18n/fr-FR.src.js +1 -1
- package/i18n/nb-NO.js +1 -1
- package/i18n/nb-NO.src.js +1 -1
- package/i18n/zh-CN.js +1 -1
- package/i18n/zh-CN.src.js +1 -1
- package/indicators/acceleration-bands.js +1 -1
- package/indicators/acceleration-bands.src.js +1 -1
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.src.js +1 -1
- package/indicators/ao.js +1 -1
- package/indicators/ao.src.js +1 -1
- package/indicators/apo.js +1 -1
- package/indicators/apo.src.js +1 -1
- package/indicators/aroon-oscillator.js +1 -1
- package/indicators/aroon-oscillator.src.js +1 -1
- package/indicators/aroon.js +1 -1
- package/indicators/aroon.src.js +1 -1
- package/indicators/atr.js +1 -1
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.js +1 -1
- package/indicators/bollinger-bands.src.js +1 -1
- package/indicators/cci.js +1 -1
- package/indicators/cci.src.js +1 -1
- package/indicators/chaikin.js +1 -1
- package/indicators/chaikin.src.js +1 -1
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.src.js +1 -1
- package/indicators/cmo.js +1 -1
- package/indicators/cmo.src.js +1 -1
- package/indicators/dema.js +1 -1
- package/indicators/dema.src.js +1 -1
- package/indicators/disparity-index.js +1 -1
- package/indicators/disparity-index.src.js +1 -1
- package/indicators/dmi.js +1 -1
- package/indicators/dmi.src.js +1 -1
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.src.js +1 -1
- package/indicators/ema.src.js +0 -3
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/indicators/indicators-all.js +2 -2
- package/indicators/indicators-all.src.js +2 -2
- package/indicators/indicators.js +1 -1
- package/indicators/indicators.src.js +1 -1
- package/indicators/keltner-channels.js +1 -1
- package/indicators/keltner-channels.src.js +1 -1
- package/indicators/klinger.js +1 -1
- package/indicators/klinger.src.js +1 -1
- package/indicators/macd.js +2 -2
- 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.src.js +1 -1
- package/indicators/ppo.js +1 -1
- package/indicators/ppo.src.js +1 -1
- package/indicators/price-channel.js +1 -1
- package/indicators/price-channel.src.js +1 -1
- package/indicators/price-envelopes.js +1 -1
- package/indicators/price-envelopes.src.js +1 -1
- package/indicators/psar.js +1 -1
- package/indicators/psar.src.js +1 -1
- package/indicators/regressions.js +1 -1
- package/indicators/regressions.src.js +1 -1
- package/indicators/roc.js +1 -1
- package/indicators/roc.src.js +1 -1
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.src.js +1 -1
- package/indicators/slow-stochastic.js +1 -1
- package/indicators/slow-stochastic.src.js +1 -1
- package/indicators/stochastic.js +1 -1
- package/indicators/stochastic.src.js +1 -1
- 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 +1 -1
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.src.js +1 -1
- package/indicators/williams-r.js +1 -1
- package/indicators/williams-r.src.js +1 -1
- package/indicators/wma.js +1 -1
- package/indicators/wma.src.js +1 -1
- package/indicators/zigzag.js +1 -1
- package/indicators/zigzag.src.js +1 -1
- package/modules/accessibility.d.ts +0 -2
- package/modules/accessibility.js +2 -2
- package/modules/accessibility.src.d.ts +0 -2
- package/modules/accessibility.src.js +47 -21
- package/modules/annotations-advanced.js +6 -6
- package/modules/annotations-advanced.src.js +22 -19
- package/modules/annotations.js +2 -2
- package/modules/annotations.src.js +9 -6
- package/modules/arc-diagram.js +2 -2
- package/modules/arc-diagram.src.js +3 -3
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.js +2 -2
- package/modules/boost-canvas.src.js +80 -50
- package/modules/boost.js +2 -2
- package/modules/boost.src.js +85 -46
- package/modules/broken-axis.js +2 -2
- package/modules/broken-axis.src.js +115 -91
- package/modules/bullet.js +1 -1
- package/modules/bullet.src.js +1 -1
- package/modules/coloraxis.js +2 -2
- package/modules/coloraxis.src.js +6 -7
- 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.src.js +1 -1
- package/modules/data-tools.js +2 -2
- package/modules/data-tools.src.js +318 -57
- package/modules/data.js +1 -1
- package/modules/data.src.js +1 -1
- package/modules/datagrouping.js +1 -1
- package/modules/datagrouping.src.js +1 -1
- package/modules/debugger.js +1 -1
- package/modules/debugger.src.js +1 -1
- package/modules/dependency-wheel.js +2 -2
- package/modules/dependency-wheel.src.js +3 -3
- 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.src.js +1 -1
- package/modules/drilldown.js +1 -1
- package/modules/drilldown.src.js +2 -2
- package/modules/dumbbell.js +1 -1
- package/modules/dumbbell.src.js +1 -1
- package/modules/export-data.js +2 -2
- package/modules/export-data.src.js +7 -7
- package/modules/exporting.js +2 -2
- package/modules/exporting.src.js +91 -3
- package/modules/flowmap.js +1 -1
- package/modules/flowmap.src.js +1 -1
- package/modules/full-screen.js +1 -1
- package/modules/full-screen.src.js +1 -1
- package/modules/funnel.js +1 -1
- package/modules/funnel.src.js +7 -3
- package/modules/funnel3d.js +1 -1
- package/modules/funnel3d.src.js +1 -1
- package/modules/gantt.js +14 -14
- package/modules/gantt.src.js +241 -206
- package/modules/geoheatmap.js +1 -1
- package/modules/geoheatmap.src.js +1 -1
- package/modules/grid-axis.js +1 -1
- package/modules/grid-axis.src.js +1 -1
- package/modules/heatmap.js +10 -10
- package/modules/heatmap.src.js +20 -21
- package/modules/heikinashi.js +1 -1
- package/modules/heikinashi.src.js +1 -1
- package/modules/histogram-bellcurve.d.ts +1 -2
- package/modules/histogram-bellcurve.js +2 -2
- package/modules/histogram-bellcurve.src.d.ts +1 -2
- package/modules/histogram-bellcurve.src.js +36 -27
- package/modules/hollowcandlestick.js +1 -1
- package/modules/hollowcandlestick.src.js +1 -1
- package/modules/item-series.js +1 -1
- package/modules/item-series.src.js +1 -1
- package/modules/lollipop.js +1 -1
- package/modules/lollipop.src.js +1 -1
- package/modules/map.js +10 -10
- package/modules/map.src.js +21 -22
- package/modules/marker-clusters.js +1 -1
- package/modules/marker-clusters.src.js +1 -1
- package/modules/mouse-wheel-zoom.js +1 -1
- package/modules/mouse-wheel-zoom.src.js +1 -1
- package/modules/navigator.js +2 -2
- package/modules/navigator.src.js +20 -18
- package/modules/networkgraph.js +2 -2
- package/modules/networkgraph.src.js +10 -3
- package/modules/no-data-to-display.js +1 -1
- package/modules/no-data-to-display.src.js +1 -1
- package/modules/non-cartesian-zoom.js +2 -2
- package/modules/non-cartesian-zoom.src.js +26 -26
- package/modules/offline-exporting.js +2 -2
- package/modules/offline-exporting.src.js +5 -3
- package/modules/organization.js +2 -2
- package/modules/organization.src.js +3 -3
- package/modules/parallel-coordinates.js +1 -1
- package/modules/parallel-coordinates.src.js +1 -1
- package/modules/pareto.js +1 -1
- package/modules/pareto.src.js +1 -1
- package/modules/pathfinder.js +1 -1
- package/modules/pathfinder.src.js +1 -1
- package/modules/pattern-fill.js +1 -1
- package/modules/pattern-fill.src.js +1 -1
- package/modules/pictorial.js +1 -1
- package/modules/pictorial.src.js +1 -1
- package/modules/pointandfigure.js +1 -1
- package/modules/pointandfigure.src.js +1 -1
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.src.js +1 -1
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +1 -1
- package/modules/renko.js +1 -1
- package/modules/renko.src.js +1 -1
- package/modules/sankey.js +2 -2
- package/modules/sankey.src.js +3 -3
- package/modules/series-label.js +1 -1
- package/modules/series-label.src.js +1 -1
- package/modules/series-on-point.js +2 -2
- package/modules/series-on-point.src.js +6 -16
- package/modules/solid-gauge.js +1 -1
- package/modules/solid-gauge.src.js +20 -3
- package/modules/sonification.js +2 -2
- package/modules/sonification.src.js +5 -3
- package/modules/static-scale.js +2 -2
- package/modules/static-scale.src.js +14 -12
- package/modules/stock-tools.js +2 -2
- package/modules/stock-tools.src.js +3 -3
- package/modules/stock.js +8 -16
- package/modules/stock.src.js +203 -187
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +2 -2
- package/modules/sunburst.src.js +9 -9
- package/modules/textpath.js +2 -2
- package/modules/textpath.src.js +3 -3
- package/modules/tiledwebmap.js +1 -1
- package/modules/tiledwebmap.src.js +1 -1
- package/modules/tilemap.js +1 -1
- package/modules/tilemap.src.js +1 -1
- package/modules/timeline.js +1 -1
- package/modules/timeline.src.js +1 -1
- package/modules/treegraph.js +2 -2
- package/modules/treegraph.src.js +13 -7
- package/modules/treegrid.js +2 -2
- package/modules/treegrid.src.js +190 -159
- package/modules/treemap.js +2 -2
- package/modules/treemap.src.js +7 -7
- package/modules/variable-pie.js +1 -1
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.js +2 -2
- package/modules/variwide.src.js +10 -12
- package/modules/vector.js +1 -1
- package/modules/vector.src.js +1 -1
- package/modules/venn.js +2 -2
- package/modules/venn.src.js +5 -3
- package/modules/windbarb.js +1 -1
- package/modules/windbarb.src.js +1 -1
- package/modules/wordcloud.js +1 -1
- package/modules/wordcloud.src.js +2 -2
- package/modules/xrange.js +2 -2
- package/modules/xrange.src.js +3 -2
- package/options/solidgauge.d.ts +6 -0
- package/options/solidgauge.src.d.ts +6 -0
- package/package.json +1 -1
- package/standalone-navigator.js +7 -5
- package/standalone-navigator.src.js +172 -122
- package/themes/adaptive.js +1 -1
- package/themes/adaptive.src.js +1 -1
- package/themes/avocado.js +1 -1
- package/themes/avocado.src.js +1 -1
- package/themes/brand-dark.js +1 -1
- package/themes/brand-dark.src.js +1 -1
- package/themes/brand-light.js +1 -1
- package/themes/brand-light.src.js +1 -1
- 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.src.js +1 -1
- package/themes/gray.js +1 -1
- package/themes/gray.src.js +1 -1
- package/themes/grid-light.js +1 -1
- package/themes/grid-light.src.js +1 -1
- package/themes/grid.js +1 -1
- package/themes/grid.src.js +1 -1
- 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
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
import H from '../Globals.js';
|
|
12
12
|
const { composed } = H;
|
|
13
13
|
import U from '../Utilities.js';
|
|
14
|
-
const { addEvent, defined, pick, pushUnique } = U;
|
|
14
|
+
const { addEvent, correctFloat, defined, pick, pushUnique } = U;
|
|
15
15
|
/* *
|
|
16
16
|
*
|
|
17
17
|
* Composition
|
|
@@ -58,9 +58,10 @@ var ScrollbarAxis;
|
|
|
58
58
|
axisMin,
|
|
59
59
|
axisMax,
|
|
60
60
|
scrollMin: defined(axis.dataMin) ?
|
|
61
|
-
Math.min(axisMin, axis.min, axis.dataMin,
|
|
62
|
-
scrollMax: defined(axis.dataMax) ?
|
|
63
|
-
Math.max(axisMax, axis.max, axis.dataMax,
|
|
61
|
+
Math.min(axisMin, axis.min ?? Infinity, axis.dataMin, axis.threshold ?? Infinity) : axisMin,
|
|
62
|
+
scrollMax: axis.treeGrid?.adjustedMax ?? (defined(axis.dataMax) ?
|
|
63
|
+
Math.max(axisMax, axis.max ?? -Infinity, axis.dataMax, axis.threshold ?? -Infinity) :
|
|
64
|
+
axisMax)
|
|
64
65
|
};
|
|
65
66
|
}
|
|
66
67
|
/**
|
|
@@ -88,7 +89,7 @@ var ScrollbarAxis;
|
|
|
88
89
|
axis.options.startOnTick = axis.options.endOnTick = false;
|
|
89
90
|
axis.scrollbar = new Scrollbar(axis.chart.renderer, axis.options.scrollbar, axis.chart);
|
|
90
91
|
addEvent(axis.scrollbar, 'changed', function (e) {
|
|
91
|
-
const { axisMin, axisMax, scrollMin: unitedMin, scrollMax: unitedMax } = getExtremes(axis),
|
|
92
|
+
const { axisMin, axisMax, scrollMin: unitedMin, scrollMax: unitedMax } = getExtremes(axis), minPX = axis.toPixels(unitedMin), maxPX = axis.toPixels(unitedMax), rangePX = maxPX - minPX;
|
|
92
93
|
let to, from;
|
|
93
94
|
// #12834, scroll when show/hide series, wrong extremes
|
|
94
95
|
if (!defined(axisMin) || !defined(axisMax)) {
|
|
@@ -96,20 +97,20 @@ var ScrollbarAxis;
|
|
|
96
97
|
}
|
|
97
98
|
if ((axis.horiz && !axis.reversed) ||
|
|
98
99
|
(!axis.horiz && axis.reversed)) {
|
|
99
|
-
to =
|
|
100
|
-
from = unitedMin +
|
|
100
|
+
to = Math.min(unitedMax, axis.toValue(minPX + rangePX * this.to));
|
|
101
|
+
from = Math.max(unitedMin, axis.toValue(minPX + rangePX * this.from));
|
|
101
102
|
}
|
|
102
103
|
else {
|
|
103
104
|
// Y-values in browser are reversed, but this also
|
|
104
105
|
// applies for reversed horizontal axis:
|
|
105
|
-
to =
|
|
106
|
-
from = unitedMin +
|
|
106
|
+
to = Math.min(unitedMax, axis.toValue(minPX + rangePX * (1 - this.from)));
|
|
107
|
+
from = Math.max(unitedMin, axis.toValue(minPX + rangePX * (1 - this.to)));
|
|
107
108
|
}
|
|
108
109
|
if (this.shouldUpdateExtremes(e.DOMType)) {
|
|
109
110
|
// #17977, set animation to undefined instead of true
|
|
110
111
|
const animate = e.DOMType === 'mousemove' ||
|
|
111
112
|
e.DOMType === 'touchmove' ? false : void 0;
|
|
112
|
-
axis.setExtremes(from, to, true, animate, e);
|
|
113
|
+
axis.setExtremes(correctFloat(from), correctFloat(to), true, animate, e);
|
|
113
114
|
}
|
|
114
115
|
else {
|
|
115
116
|
// When live redraw is disabled, don't change extremes
|
|
@@ -124,7 +125,7 @@ var ScrollbarAxis;
|
|
|
124
125
|
* @private
|
|
125
126
|
*/
|
|
126
127
|
function onAxisAfterRender() {
|
|
127
|
-
const axis = this, { scrollMin, scrollMax } = getExtremes(axis), scrollbar = axis.scrollbar, offset = (axis.axisTitleMargin + (axis.titleOffset || 0)
|
|
128
|
+
const axis = this, { scrollMin, scrollMax } = getExtremes(axis), scrollbar = axis.scrollbar, offset = (axis.axisTitleMargin || 0) + (axis.titleOffset || 0), scrollbarsOffsets = axis.chart.scrollbarsOffsets, axisMargin = axis.options.margin || 0;
|
|
128
129
|
let offsetsIndex, from, to;
|
|
129
130
|
if (scrollbar && scrollbarsOffsets) {
|
|
130
131
|
if (axis.horiz) {
|
|
@@ -172,8 +173,9 @@ var ScrollbarAxis;
|
|
|
172
173
|
isNaN(scrollMax) ||
|
|
173
174
|
!defined(axis.min) ||
|
|
174
175
|
!defined(axis.max) ||
|
|
175
|
-
axis.dataMin
|
|
176
|
-
|
|
176
|
+
(defined(axis.dataMin) && // #23335
|
|
177
|
+
axis.dataMin === axis.dataMax // #10733
|
|
178
|
+
)) {
|
|
177
179
|
// Default action: when data extremes are the same or there is
|
|
178
180
|
// not extremes on the axis, but scrollbar exists, make it
|
|
179
181
|
// full size
|
|
@@ -190,10 +192,10 @@ var ScrollbarAxis;
|
|
|
190
192
|
scrollbar.setRange(from, to);
|
|
191
193
|
}
|
|
192
194
|
else {
|
|
193
|
-
from = ((axis.min - scrollMin) /
|
|
194
|
-
(scrollMax - scrollMin));
|
|
195
|
-
to = ((axis.max - scrollMin) /
|
|
196
|
-
(scrollMax - scrollMin));
|
|
195
|
+
from = (axis.toPixels(axis.min) - axis.toPixels(scrollMin)) /
|
|
196
|
+
(axis.toPixels(scrollMax) - axis.toPixels(scrollMin));
|
|
197
|
+
to = (axis.toPixels(axis.max) - axis.toPixels(scrollMin)) /
|
|
198
|
+
(axis.toPixels(scrollMax) - axis.toPixels(scrollMin));
|
|
197
199
|
if ((axis.horiz && !axis.reversed) ||
|
|
198
200
|
(!axis.horiz && axis.reversed)) {
|
|
199
201
|
scrollbar.setRange(from, to);
|
|
@@ -10,7 +10,6 @@
|
|
|
10
10
|
'use strict';
|
|
11
11
|
import A from '../../Animation/AnimationUtilities.js';
|
|
12
12
|
const { getDeferredAnimation } = A;
|
|
13
|
-
import Axis from '../Axis.js';
|
|
14
13
|
import SeriesRegistry from '../../Series/SeriesRegistry.js';
|
|
15
14
|
const { series: { prototype: seriesProto } } = SeriesRegistry;
|
|
16
15
|
import StackItem from './StackItem.js';
|
|
@@ -16,7 +16,7 @@ import TreeGridTick from './TreeGridTick.js';
|
|
|
16
16
|
import TU from '../../../Series/TreeUtilities.js';
|
|
17
17
|
const { getLevelOptions } = TU;
|
|
18
18
|
import U from '../../Utilities.js';
|
|
19
|
-
const { addEvent, isArray, splat, find, fireEvent, isObject, isString, merge,
|
|
19
|
+
const { addEvent, isArray, splat, find, fireEvent, isObject, isString, merge, removeEvent, wrap } = U;
|
|
20
20
|
/* *
|
|
21
21
|
*
|
|
22
22
|
* Variables
|
|
@@ -29,22 +29,17 @@ let TickConstructor;
|
|
|
29
29
|
*
|
|
30
30
|
* */
|
|
31
31
|
/**
|
|
32
|
+
* Creates a break object from a node.
|
|
33
|
+
*
|
|
34
|
+
* @param {Object} node
|
|
35
|
+
* The node to create a break object from.
|
|
36
|
+
*
|
|
32
37
|
* @private
|
|
33
38
|
*/
|
|
34
|
-
function getBreakFromNode(node
|
|
35
|
-
const to = node.collapseEnd || 0;
|
|
36
|
-
let from = node.collapseStart || 0;
|
|
37
|
-
// In broken-axis, the axis.max is minimized until it is not within a
|
|
38
|
-
// break. Therefore, if break.to is larger than axis.max, the axis.to
|
|
39
|
-
// should not add the 0.5 axis.tickMarkOffset, to avoid adding a break
|
|
40
|
-
// larger than axis.max.
|
|
41
|
-
// TODO consider simplifying broken-axis and this might solve itself
|
|
42
|
-
if (to >= max) {
|
|
43
|
-
from -= 0.5;
|
|
44
|
-
}
|
|
39
|
+
function getBreakFromNode(node) {
|
|
45
40
|
return {
|
|
46
|
-
from:
|
|
47
|
-
to:
|
|
41
|
+
from: node.collapseStart || 0,
|
|
42
|
+
to: node.collapseEnd || 0,
|
|
48
43
|
showPoints: false
|
|
49
44
|
};
|
|
50
45
|
}
|
|
@@ -140,8 +135,7 @@ function getTreeGridFromData(data, uniqueNames, numberOfSeries) {
|
|
|
140
135
|
}
|
|
141
136
|
// If one of the points are collapsed, then start the grid node
|
|
142
137
|
// in collapsed state.
|
|
143
|
-
if (gridNode &&
|
|
144
|
-
data.collapsed === true) {
|
|
138
|
+
if (gridNode && data.collapsed === true) {
|
|
145
139
|
gridNode.collapsed = true;
|
|
146
140
|
}
|
|
147
141
|
// Assign pos to data node
|
|
@@ -200,7 +194,7 @@ function getTreeGridFromData(data, uniqueNames, numberOfSeries) {
|
|
|
200
194
|
function onBeforeRender(e) {
|
|
201
195
|
const chart = e.target, axes = chart.axes;
|
|
202
196
|
axes.filter((axis) => axis.type === 'treegrid').forEach(function (axis) {
|
|
203
|
-
const options = axis.options
|
|
197
|
+
const options = axis.options, labelOptions = options.labels, uniqueNames = axis.uniqueNames, max = chart.time.parse(options.max),
|
|
204
198
|
// Check whether any of series is rendering for the first
|
|
205
199
|
// time, visibility has changed, or its data is dirty, and
|
|
206
200
|
// only then update. #10570, #10580. Also check if
|
|
@@ -219,8 +213,8 @@ function onBeforeRender(e) {
|
|
|
219
213
|
const seriesData = (s.options.data || []), firstPoint = seriesData[0],
|
|
220
214
|
// Check if the first point is a simple array of values.
|
|
221
215
|
// If so we assume that this is the case for all points.
|
|
222
|
-
foundPrimitivePoint =
|
|
223
|
-
!firstPoint.find((value) => (typeof value === 'object'))
|
|
216
|
+
foundPrimitivePoint = Array.isArray(firstPoint) &&
|
|
217
|
+
!firstPoint.find((value) => (typeof value === 'object'));
|
|
224
218
|
seriesHasPrimitivePoints.push(foundPrimitivePoint);
|
|
225
219
|
if (s.visible) {
|
|
226
220
|
// Push all data to array
|
|
@@ -236,7 +230,7 @@ function onBeforeRender(e) {
|
|
|
236
230
|
if (isObject(pointOptions, true)) {
|
|
237
231
|
// Set series index on data. Removed again
|
|
238
232
|
// after use.
|
|
239
|
-
pointOptions.seriesIndex =
|
|
233
|
+
pointOptions.seriesIndex = numberOfSeries;
|
|
240
234
|
arr.push(pointOptions);
|
|
241
235
|
}
|
|
242
236
|
});
|
|
@@ -270,9 +264,7 @@ function onBeforeRender(e) {
|
|
|
270
264
|
axis.series.forEach(function (series, index) {
|
|
271
265
|
const axisData = (series.options.data || []).map(function (d) {
|
|
272
266
|
if (seriesHasPrimitivePoints[index] ||
|
|
273
|
-
(isArray(d) &&
|
|
274
|
-
series.options.keys &&
|
|
275
|
-
series.options.keys.length)) {
|
|
267
|
+
(isArray(d) && series.options.keys?.length)) {
|
|
276
268
|
// Get the axisData from the data array used to
|
|
277
269
|
// build the treeGrid where has been modified
|
|
278
270
|
data.forEach(function (point) {
|
|
@@ -373,22 +365,20 @@ function wrapInit(proceed, chart, userOptions, coll) {
|
|
|
373
365
|
// Collapse all nodes in axis.treegrid.collapsednodes
|
|
374
366
|
// where collapsed equals true.
|
|
375
367
|
addEvent(axis, 'foundExtremes', function () {
|
|
376
|
-
|
|
377
|
-
axis.treeGrid.
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
node.collapseEnd !== n.collapseEnd));
|
|
388
|
-
}
|
|
368
|
+
axis.treeGrid.collapsedNodes?.forEach(function (node) {
|
|
369
|
+
const breaks = axis.treeGrid.collapse(node);
|
|
370
|
+
if (axis.brokenAxis) {
|
|
371
|
+
axis.brokenAxis.setBreaks(breaks, false);
|
|
372
|
+
// Remove the node from the axis collapsedNodes
|
|
373
|
+
if (axis.treeGrid.collapsedNodes) {
|
|
374
|
+
axis.treeGrid.collapsedNodes = axis.treeGrid
|
|
375
|
+
.collapsedNodes
|
|
376
|
+
.filter((n) => ((node.collapseStart !==
|
|
377
|
+
n.collapseStart) ||
|
|
378
|
+
node.collapseEnd !== n.collapseEnd));
|
|
389
379
|
}
|
|
390
|
-
}
|
|
391
|
-
}
|
|
380
|
+
}
|
|
381
|
+
});
|
|
392
382
|
});
|
|
393
383
|
// If staticScale is not defined on the yAxis
|
|
394
384
|
// and chart height is set, set axis.isDirty
|
|
@@ -513,8 +503,8 @@ function wrapSetTickInterval(proceed) {
|
|
|
513
503
|
[];
|
|
514
504
|
if (linkedParent) {
|
|
515
505
|
const linkedParentExtremes = linkedParent.getExtremes();
|
|
516
|
-
axis.min =
|
|
517
|
-
axis.max =
|
|
506
|
+
axis.min = linkedParentExtremes.min ?? linkedParentExtremes.dataMin;
|
|
507
|
+
axis.max = linkedParentExtremes.max ?? linkedParentExtremes.dataMax;
|
|
518
508
|
axis.tickPositions = linkedParent.tickPositions;
|
|
519
509
|
}
|
|
520
510
|
axis.linkedParent = linkedParent;
|
|
@@ -593,6 +583,7 @@ class TreeGridAxisAdditions {
|
|
|
593
583
|
* @private
|
|
594
584
|
*/
|
|
595
585
|
constructor(axis) {
|
|
586
|
+
this.pendingSizeAdjustment = 0;
|
|
596
587
|
this.axis = axis;
|
|
597
588
|
}
|
|
598
589
|
/* *
|
|
@@ -642,7 +633,7 @@ class TreeGridAxisAdditions {
|
|
|
642
633
|
* Returns an array of the new breaks for the axis.
|
|
643
634
|
*/
|
|
644
635
|
collapse(node) {
|
|
645
|
-
const axis = this.axis, breaks =
|
|
636
|
+
const axis = this.axis, breaks = axis.options.breaks || [], obj = getBreakFromNode(node);
|
|
646
637
|
breaks.push(obj);
|
|
647
638
|
// Change the collapsed flag #13838
|
|
648
639
|
node.collapsed = true;
|
|
@@ -667,17 +658,17 @@ class TreeGridAxisAdditions {
|
|
|
667
658
|
* Returns an array of the new breaks for the axis.
|
|
668
659
|
*/
|
|
669
660
|
expand(node) {
|
|
670
|
-
const axis = this.axis,
|
|
661
|
+
const axis = this.axis, obj = getBreakFromNode(node);
|
|
671
662
|
// Change the collapsed flag #13838
|
|
672
663
|
node.collapsed = false;
|
|
673
664
|
axis.treeGrid.setCollapsedStatus(node);
|
|
674
665
|
// Remove the break from the axis breaks array.
|
|
675
|
-
return breaks
|
|
666
|
+
return axis.options.breaks?.reduce(function (arr, b) {
|
|
676
667
|
if (b.to !== obj.to || b.from !== obj.from) {
|
|
677
668
|
arr.push(b);
|
|
678
669
|
}
|
|
679
670
|
return arr;
|
|
680
|
-
}, []);
|
|
671
|
+
}, []) || [];
|
|
681
672
|
}
|
|
682
673
|
/**
|
|
683
674
|
* Creates a list of positions for the ticks on the axis. Filters out
|
|
@@ -705,20 +696,14 @@ class TreeGridAxisAdditions {
|
|
|
705
696
|
*
|
|
706
697
|
* @private
|
|
707
698
|
*
|
|
708
|
-
* @param {Highcharts.Axis} axis
|
|
709
|
-
* The axis to check against.
|
|
710
|
-
*
|
|
711
699
|
* @param {Object} node
|
|
712
700
|
* The node to check if is collapsed.
|
|
713
701
|
*
|
|
714
|
-
* @param {number} pos
|
|
715
|
-
* The tick position to collapse.
|
|
716
|
-
*
|
|
717
702
|
* @return {boolean}
|
|
718
703
|
* Returns true if collapsed, false if expanded.
|
|
719
704
|
*/
|
|
720
705
|
isCollapsed(node) {
|
|
721
|
-
const axis = this.axis, breaks = (axis.options.breaks || []), obj = getBreakFromNode(node
|
|
706
|
+
const axis = this.axis, breaks = (axis.options.breaks || []), obj = getBreakFromNode(node);
|
|
722
707
|
return breaks.some(function (b) {
|
|
723
708
|
return b.from === obj.from && b.to === obj.to;
|
|
724
709
|
});
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* */
|
|
11
11
|
'use strict';
|
|
12
12
|
import U from '../../Utilities.js';
|
|
13
|
-
const { addEvent, removeEvent, isObject, isNumber, pick, wrap } = U;
|
|
13
|
+
const { addEvent, correctFloat, removeEvent, isObject, isNumber, pick, wrap } = U;
|
|
14
14
|
/* *
|
|
15
15
|
*
|
|
16
16
|
* Functions
|
|
@@ -167,6 +167,7 @@ function wrapRenderLabel(proceed) {
|
|
|
167
167
|
removeEvent(labelElement);
|
|
168
168
|
label?.css({ cursor: 'default' });
|
|
169
169
|
icon.destroy();
|
|
170
|
+
tickGrid.labelIcon = void 0;
|
|
170
171
|
}
|
|
171
172
|
}
|
|
172
173
|
/* *
|
|
@@ -234,11 +235,9 @@ class TreeGridTickAdditions {
|
|
|
234
235
|
* {@link Highcharts.Chart#redraw}
|
|
235
236
|
*/
|
|
236
237
|
collapse(redraw) {
|
|
237
|
-
const
|
|
238
|
-
if (brokenAxis &&
|
|
239
|
-
|
|
240
|
-
const pos = tick.pos, node = axis.treeGrid.mapOfPosToGridNode[pos], breaks = axis.treeGrid.collapse(node);
|
|
241
|
-
brokenAxis.setBreaks(breaks, pick(redraw, true));
|
|
238
|
+
const { pos, axis } = this.tick, { treeGrid, brokenAxis } = axis, posMappedNodes = treeGrid.mapOfPosToGridNode;
|
|
239
|
+
if (brokenAxis && posMappedNodes) {
|
|
240
|
+
brokenAxis.setBreaks(treeGrid.collapse(posMappedNodes[pos]), redraw ?? true);
|
|
242
241
|
}
|
|
243
242
|
}
|
|
244
243
|
/**
|
|
@@ -248,9 +247,7 @@ class TreeGridTickAdditions {
|
|
|
248
247
|
* @function Highcharts.Tick#destroy
|
|
249
248
|
*/
|
|
250
249
|
destroy() {
|
|
251
|
-
|
|
252
|
-
this.labelIcon.destroy();
|
|
253
|
-
}
|
|
250
|
+
this.labelIcon?.destroy();
|
|
254
251
|
}
|
|
255
252
|
/**
|
|
256
253
|
* Expand the grid cell. Used when axis is of type treegrid.
|
|
@@ -267,8 +264,7 @@ class TreeGridTickAdditions {
|
|
|
267
264
|
expand(redraw) {
|
|
268
265
|
const { pos, axis } = this.tick, { treeGrid, brokenAxis } = axis, posMappedNodes = treeGrid.mapOfPosToGridNode;
|
|
269
266
|
if (brokenAxis && posMappedNodes) {
|
|
270
|
-
|
|
271
|
-
brokenAxis.setBreaks(breaks, pick(redraw, true));
|
|
267
|
+
brokenAxis.setBreaks(treeGrid.expand(posMappedNodes[pos]), redraw ?? true);
|
|
272
268
|
}
|
|
273
269
|
}
|
|
274
270
|
/**
|
|
@@ -284,12 +280,38 @@ class TreeGridTickAdditions {
|
|
|
284
280
|
* Whether to redraw the chart or wait for an explicit call to
|
|
285
281
|
* {@link Highcharts.Chart#redraw}
|
|
286
282
|
*/
|
|
287
|
-
toggleCollapse(redraw) {
|
|
288
|
-
const
|
|
289
|
-
if (brokenAxis &&
|
|
290
|
-
axis.
|
|
291
|
-
|
|
292
|
-
|
|
283
|
+
toggleCollapse(redraw = true) {
|
|
284
|
+
const { axis, pos } = this.tick, { brokenAxis, treeGrid } = axis;
|
|
285
|
+
if (brokenAxis && treeGrid.mapOfPosToGridNode) {
|
|
286
|
+
const scrollMode = !!(axis.scrollbar && axis.staticScale), maxPx = axis.pos + axis.len +
|
|
287
|
+
(treeGrid.pendingSizeAdjustment || 0);
|
|
288
|
+
treeGrid.pendingSizeAdjustment = 0;
|
|
289
|
+
brokenAxis.setBreaks(treeGrid.toggleCollapse(treeGrid.mapOfPosToGridNode[pos]), scrollMode && redraw);
|
|
290
|
+
if (scrollMode) {
|
|
291
|
+
const adjustedMax = axis.toValue(axis.toPixels(axis.dataMax));
|
|
292
|
+
let newMaxVal = axis.toValue(maxPx) - axis.tickmarkOffset, newMinVal = axis.userMin ?? axis.min;
|
|
293
|
+
// If dataMax is in a break.
|
|
294
|
+
treeGrid.adjustedMax = adjustedMax !== axis.dataMax ?
|
|
295
|
+
adjustedMax - axis.tickmarkOffset :
|
|
296
|
+
void 0;
|
|
297
|
+
if (newMaxVal > axis.dataMax) {
|
|
298
|
+
let missingPx = maxPx -
|
|
299
|
+
axis.toPixels(axis.dataMax + axis.tickmarkOffset);
|
|
300
|
+
newMaxVal = treeGrid.adjustedMax ?? axis.dataMax;
|
|
301
|
+
// Check if enough space available on the min end.
|
|
302
|
+
newMinVal = axis.toValue(axis.toPixels(newMinVal - axis.tickmarkOffset) - missingPx) + axis.tickmarkOffset;
|
|
303
|
+
if (newMinVal < axis.dataMin) {
|
|
304
|
+
missingPx = axis.toPixels(axis.dataMin) -
|
|
305
|
+
axis.toPixels(newMinVal);
|
|
306
|
+
newMinVal = axis.dataMin;
|
|
307
|
+
treeGrid.pendingSizeAdjustment = missingPx;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
axis.setExtremes(correctFloat(newMinVal), correctFloat(newMaxVal), false, false, { trigger: 'toggleCollapse' });
|
|
311
|
+
}
|
|
312
|
+
if (redraw) {
|
|
313
|
+
axis.chart.redraw();
|
|
314
|
+
}
|
|
293
315
|
}
|
|
294
316
|
}
|
|
295
317
|
}
|
|
@@ -1207,8 +1207,8 @@ class Chart {
|
|
|
1207
1207
|
getAxisMargins() {
|
|
1208
1208
|
const chart = this,
|
|
1209
1209
|
// [top, right, bottom, left]
|
|
1210
|
-
axisOffset = chart.axisOffset = [0, 0, 0, 0], colorAxis = chart.colorAxis, margin = chart.margin, getOffset =
|
|
1211
|
-
axes.forEach(
|
|
1210
|
+
axisOffset = chart.axisOffset = [0, 0, 0, 0], colorAxis = chart.colorAxis, margin = chart.margin, getOffset = (axes) => {
|
|
1211
|
+
axes.forEach((axis) => {
|
|
1212
1212
|
if (axis.visible) {
|
|
1213
1213
|
axis.getOffset();
|
|
1214
1214
|
}
|
|
@@ -1222,9 +1222,9 @@ class Chart {
|
|
|
1222
1222
|
getOffset(colorAxis);
|
|
1223
1223
|
}
|
|
1224
1224
|
// Add the axis offsets
|
|
1225
|
-
marginNames.forEach(
|
|
1225
|
+
marginNames.forEach((marginName, side) => {
|
|
1226
1226
|
if (!defined(margin[side])) {
|
|
1227
|
-
chart[
|
|
1227
|
+
chart[marginName] += axisOffset[side];
|
|
1228
1228
|
}
|
|
1229
1229
|
});
|
|
1230
1230
|
chart.setChartSize();
|
|
@@ -1479,21 +1479,22 @@ class Chart {
|
|
|
1479
1479
|
fireEvent(this, 'resetMargins');
|
|
1480
1480
|
const chart = this, chartOptions = chart.options.chart, plotBorderWidth = chartOptions.plotBorderWidth || 0, halfWidth = Math.round(plotBorderWidth) / 2;
|
|
1481
1481
|
// Create margin and spacing array
|
|
1482
|
-
['margin', 'spacing'].forEach(
|
|
1482
|
+
['margin', 'spacing'].forEach((target) => {
|
|
1483
1483
|
const value = chartOptions[target], values = isObject(value) ? value : [value, value, value, value];
|
|
1484
1484
|
[
|
|
1485
1485
|
'Top',
|
|
1486
1486
|
'Right',
|
|
1487
1487
|
'Bottom',
|
|
1488
1488
|
'Left'
|
|
1489
|
-
].forEach(
|
|
1490
|
-
chart[target][side] =
|
|
1489
|
+
].forEach((sideName, side) => {
|
|
1490
|
+
chart[target][side] = (chartOptions[`${target}${sideName}`] ??
|
|
1491
|
+
values[side]);
|
|
1491
1492
|
});
|
|
1492
1493
|
});
|
|
1493
1494
|
// Set margin names like chart.plotTop, chart.plotLeft,
|
|
1494
1495
|
// chart.marginRight, chart.marginBottom.
|
|
1495
|
-
marginNames.forEach(
|
|
1496
|
-
chart[
|
|
1496
|
+
marginNames.forEach((marginName, side) => {
|
|
1497
|
+
chart[marginName] = chart.margin[side] ?? chart.spacing[side];
|
|
1497
1498
|
});
|
|
1498
1499
|
chart.axisOffset = [0, 0, 0, 0]; // Top, right, bottom, left
|
|
1499
1500
|
chart.clipOffset = [
|
|
@@ -789,11 +789,12 @@ const ChartDefaults = {
|
|
|
789
789
|
* others series in a stack. The shadow can be an object configuration
|
|
790
790
|
* containing `color`, `offsetX`, `offsetY`, `opacity` and `width`.
|
|
791
791
|
*
|
|
792
|
-
* @sample highcharts/chart/seriesgroupshadow/
|
|
792
|
+
* @sample highcharts/chart/seriesgroupshadow/
|
|
793
|
+
* Shadow
|
|
793
794
|
*
|
|
794
795
|
* @type {boolean|Highcharts.ShadowOptionsObject}
|
|
795
796
|
* @default false
|
|
796
|
-
* @apioption chart.
|
|
797
|
+
* @apioption chart.seriesGroupShadow
|
|
797
798
|
*/
|
|
798
799
|
/**
|
|
799
800
|
* Whether to apply a drop shadow to the outer chart area. Requires
|
|
@@ -1004,7 +1005,7 @@ const ChartDefaults = {
|
|
|
1004
1005
|
* Chart zooming options.
|
|
1005
1006
|
* @since 10.2.1
|
|
1006
1007
|
*
|
|
1007
|
-
* @sample highcharts/plotoptions/sankey-
|
|
1008
|
+
* @sample highcharts/plotoptions/sankey-node-color
|
|
1008
1009
|
* Zooming in sankey series
|
|
1009
1010
|
* @sample highcharts/series-treegraph/link-types
|
|
1010
1011
|
* Zooming in treegraph series
|
|
@@ -434,7 +434,7 @@ addEvent(Chart, 'update', function (e) {
|
|
|
434
434
|
function onAxisGetPlotLinePath(e) {
|
|
435
435
|
const axis = this, series = (axis.isLinked && !axis.series && axis.linkedParent ?
|
|
436
436
|
axis.linkedParent.series :
|
|
437
|
-
axis.series), chart = axis
|
|
437
|
+
axis.series), { chart, horiz } = axis, renderer = chart.renderer, result = [], { acrossPanes = true, force, translatedValue, value } = e, allPerpendicularAxes = (axis.isXAxis ? chart.yAxis : chart.xAxis) || [],
|
|
438
438
|
/**
|
|
439
439
|
* Return the other axis based on either the axis option or on
|
|
440
440
|
* related series.
|
|
@@ -442,6 +442,9 @@ addEvent(Chart, 'update', function (e) {
|
|
|
442
442
|
*/
|
|
443
443
|
getAxis = (coll) => {
|
|
444
444
|
const otherColl = coll === 'xAxis' ? 'yAxis' : 'xAxis', opt = axis.options[otherColl];
|
|
445
|
+
if (acrossPanes && !axis.options.isInternal) {
|
|
446
|
+
return allPerpendicularAxes.filter((a) => !a.options.isInternal);
|
|
447
|
+
}
|
|
445
448
|
// Other axis indexed by number
|
|
446
449
|
if (isNumber(opt)) {
|
|
447
450
|
return [chart[otherColl][opt]];
|
|
@@ -453,23 +456,25 @@ addEvent(Chart, 'update', function (e) {
|
|
|
453
456
|
// Auto detect based on existing series
|
|
454
457
|
return series.map((s) => s[otherColl]);
|
|
455
458
|
};
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
|
|
459
|
-
|
|
460
|
-
|
|
459
|
+
/**
|
|
460
|
+
* Push a segment to the result SVGPath array
|
|
461
|
+
*/
|
|
462
|
+
function pushSegment(pos, crossingPos1, crossingPos2) {
|
|
463
|
+
result.push(['M', horiz ? pos : crossingPos1, horiz ? crossingPos1 : pos], ['L', horiz ? pos : crossingPos2, horiz ? crossingPos2 : pos]);
|
|
464
|
+
}
|
|
465
|
+
let axes = [], // #3416 need a default array
|
|
466
|
+
uniqueAxes, transVal;
|
|
467
|
+
if (chart.options.isStock &&
|
|
461
468
|
// Ignore in case of colorAxis or zAxis. #3360, #3524, #6720
|
|
462
|
-
axis.coll === 'xAxis' || axis.coll === 'yAxis') {
|
|
469
|
+
(axis.coll === 'xAxis' || axis.coll === 'yAxis')) {
|
|
463
470
|
e.preventDefault();
|
|
464
471
|
// Get the related axes based on series
|
|
465
472
|
axes = getAxis(axis.coll);
|
|
466
473
|
// Get the related axes based options.*Axis setting #2810
|
|
467
|
-
|
|
468
|
-
for (const A of axes2) {
|
|
474
|
+
for (const A of allPerpendicularAxes) {
|
|
469
475
|
if (!A.options.isInternal) {
|
|
470
|
-
const a = (A.isXAxis ? 'yAxis' : 'xAxis'), relatedAxis = (defined(A.options[a])
|
|
471
|
-
chart[a][A.options[a]]
|
|
472
|
-
chart[a][0]);
|
|
476
|
+
const a = (A.isXAxis ? 'yAxis' : 'xAxis'), relatedAxis = (defined(A.options[a]) &&
|
|
477
|
+
chart[a][A.options[a]]);
|
|
473
478
|
if (axis === relatedAxis) {
|
|
474
479
|
axes.push(A);
|
|
475
480
|
}
|
|
@@ -491,45 +496,33 @@ addEvent(Chart, 'update', function (e) {
|
|
|
491
496
|
}
|
|
492
497
|
transVal = pick(translatedValue, axis.translate(value || 0, void 0, void 0, e.old));
|
|
493
498
|
if (isNumber(transVal)) {
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
505
|
-
}
|
|
506
|
-
else {
|
|
507
|
-
skip = true;
|
|
508
|
-
}
|
|
509
|
-
}
|
|
510
|
-
if (!skip) {
|
|
511
|
-
result.push(['M', x1, y1], ['L', x2, y2]);
|
|
512
|
-
}
|
|
499
|
+
let skip, pos = horiz ?
|
|
500
|
+
transVal + axis.pos :
|
|
501
|
+
axis.pos + axis.len - transVal;
|
|
502
|
+
// Outside plot area
|
|
503
|
+
if (force !== 'pass' &&
|
|
504
|
+
(pos < axis.pos || pos > axis.pos + axis.len)) {
|
|
505
|
+
if (force) {
|
|
506
|
+
pos = clamp(pos, axis.pos, axis.pos + axis.len);
|
|
507
|
+
}
|
|
508
|
+
else {
|
|
509
|
+
skip = true;
|
|
513
510
|
}
|
|
514
511
|
}
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
521
|
-
//
|
|
522
|
-
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
526
|
-
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
}
|
|
530
|
-
}
|
|
531
|
-
if (!skip) {
|
|
532
|
-
result.push(['M', x1, y1], ['L', x2, y2]);
|
|
512
|
+
if (!skip) {
|
|
513
|
+
const crossingPosName = horiz ? 'top' : 'left', crossingLenName = horiz ? 'height' : 'width';
|
|
514
|
+
if (!acrossPanes &&
|
|
515
|
+
// If the perpendicular position is set explicitly on
|
|
516
|
+
// the axis, use it. For example, if `top` and `height`
|
|
517
|
+
// options are set on a horizontal x-axis, the grid
|
|
518
|
+
// lines should conform to that position.
|
|
519
|
+
(axis.options[crossingPosName] ||
|
|
520
|
+
axis.options[crossingLenName])) {
|
|
521
|
+
pushSegment(pos, axis[crossingPosName], axis[crossingPosName] + axis[crossingLenName]);
|
|
522
|
+
}
|
|
523
|
+
else {
|
|
524
|
+
for (const perpendicularAxis of uniqueAxes) {
|
|
525
|
+
pushSegment(pos, perpendicularAxis.pos, perpendicularAxis.pos + perpendicularAxis.len);
|
|
533
526
|
}
|
|
534
527
|
}
|
|
535
528
|
}
|
|
@@ -81,6 +81,9 @@ const defaultOptions = {
|
|
|
81
81
|
* setup uses `Highcharts.setOptions` to make the options apply to all
|
|
82
82
|
* charts in the same page.
|
|
83
83
|
*
|
|
84
|
+
* Some language options, like `months` and `weekdays`, are only used
|
|
85
|
+
* with non-locale-aware date formats.
|
|
86
|
+
*
|
|
84
87
|
* ```js
|
|
85
88
|
* Highcharts.setOptions({
|
|
86
89
|
* lang: {
|
|
@@ -130,7 +133,7 @@ const defaultOptions = {
|
|
|
130
133
|
* An array containing the months names. Corresponds to the `%B` format
|
|
131
134
|
* in `Highcharts.dateFormat()`. Defaults to 'undefined',
|
|
132
135
|
* meaning the default month names are used according to the
|
|
133
|
-
* `lang.locale`
|
|
136
|
+
* `lang.locale` or browser settings.
|
|
134
137
|
*
|
|
135
138
|
* @type {Array<string>}
|
|
136
139
|
*/
|
|
@@ -145,23 +148,25 @@ const defaultOptions = {
|
|
|
145
148
|
* An array containing the months names in abbreviated form. Corresponds
|
|
146
149
|
* to the `%b` format in `Highcharts.dateFormat()`. Defaults to
|
|
147
150
|
* 'undefined', meaning the default short month names are used according
|
|
148
|
-
* to the `lang.locale`
|
|
151
|
+
* to the `lang.locale` or browser settings.
|
|
149
152
|
*
|
|
150
153
|
* @type {Array<string>}
|
|
151
154
|
*/
|
|
152
155
|
shortMonths: void 0,
|
|
153
156
|
/**
|
|
154
|
-
* An array containing the weekday names.
|
|
155
|
-
*
|
|
156
|
-
*
|
|
157
|
+
* An array containing the weekday names. Corresponds
|
|
158
|
+
* to the `%A` format in `Highcharts.dateFormat()`. Defaults to
|
|
159
|
+
* 'undefined', meaning the default weekday names are used according to
|
|
160
|
+
* the `lang.locale` or browser settings.
|
|
157
161
|
*
|
|
158
162
|
* @type {Array<string>}
|
|
159
163
|
*/
|
|
160
164
|
weekdays: void 0,
|
|
161
165
|
/**
|
|
162
|
-
* Short week days, starting Sunday.
|
|
166
|
+
* Short week days, starting Sunday. Corresponds to the `%a` format in
|
|
167
|
+
* `Highcharts.dateFormat()`. Defaults to 'undefined', meaning
|
|
163
168
|
* the default short weekday names are used according to the
|
|
164
|
-
* `lang.locale`
|
|
169
|
+
* `lang.locale` or browser settings.
|
|
165
170
|
*
|
|
166
171
|
* @sample highcharts/lang/shortweekdays/
|
|
167
172
|
* Finnish two-letter abbreviations
|