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
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Highcharts JS v12.
|
|
2
|
+
* @license Highcharts JS v12.4.0 (2025-09-04)
|
|
3
3
|
* @module highcharts/highcharts-more
|
|
4
4
|
* @requires highcharts
|
|
5
5
|
*
|
|
6
|
-
* (c) 2009-2025
|
|
6
|
+
* (c) 2009-2025 Highsoft AS
|
|
7
7
|
*
|
|
8
8
|
* License: www.highcharts.com/license
|
|
9
9
|
*/
|
|
@@ -242,29 +242,36 @@ function compose(ChartClass, PointerClass) {
|
|
|
242
242
|
*/
|
|
243
243
|
function isInsidePane(x, y, center, startAngle, endAngle) {
|
|
244
244
|
let insideSlice = true;
|
|
245
|
-
const cx = center[0], cy = center[1];
|
|
245
|
+
const cx = center[0], cy = center[1], twoPi = 2 * Math.PI;
|
|
246
246
|
const distance = Math.sqrt(Math.pow(x - cx, 2) + Math.pow(y - cy, 2));
|
|
247
247
|
if (defined(startAngle) && defined(endAngle)) {
|
|
248
248
|
// Round angle to N-decimals to avoid numeric errors
|
|
249
|
-
|
|
249
|
+
let angle = Math.atan2(correctFloat(y - cy, 8), correctFloat(x - cx, 8));
|
|
250
|
+
// Normalize angle to [0, 2π)
|
|
251
|
+
angle = (angle + twoPi) % (twoPi);
|
|
252
|
+
startAngle = (startAngle + twoPi) % (twoPi);
|
|
253
|
+
endAngle = (endAngle + twoPi) % (twoPi);
|
|
250
254
|
// Ignore full circle panes:
|
|
251
|
-
if (endAngle
|
|
252
|
-
// If normalized start angle is
|
|
253
|
-
// it means
|
|
254
|
-
//
|
|
255
|
+
if (Math.abs(endAngle - startAngle) > 1e-6) {
|
|
256
|
+
// If the normalized start angle is greater than the end angle,
|
|
257
|
+
// it means the arc wraps around 0°. In this case, we check
|
|
258
|
+
// if the angle falls into either [startAngle, 2π) or [0, endAngle].
|
|
255
259
|
if (startAngle > endAngle) {
|
|
256
|
-
insideSlice = (angle >= startAngle
|
|
257
|
-
angle <=
|
|
258
|
-
angle >= -Math.PI);
|
|
260
|
+
insideSlice = (angle >= startAngle ||
|
|
261
|
+
angle <= endAngle);
|
|
259
262
|
}
|
|
260
263
|
else {
|
|
261
|
-
// In this case, we
|
|
262
|
-
//
|
|
264
|
+
// In this case, we simply check if angle is within the
|
|
265
|
+
// [startAngle, endAngle] range
|
|
263
266
|
insideSlice = angle >= startAngle &&
|
|
264
|
-
angle <=
|
|
267
|
+
angle <= endAngle;
|
|
265
268
|
}
|
|
266
269
|
}
|
|
267
270
|
}
|
|
271
|
+
else {
|
|
272
|
+
// If no start/end angles are defined, treat it as a full circle
|
|
273
|
+
insideSlice = true;
|
|
274
|
+
}
|
|
268
275
|
// Round up radius because x and y values are rounded
|
|
269
276
|
return distance <= Math.ceil(center[2] / 2) && insideSlice;
|
|
270
277
|
}
|
|
@@ -7988,6 +7995,13 @@ function initDataLabels() {
|
|
|
7988
7995
|
// Initialize the opacity of the group to 0 (start of animation)
|
|
7989
7996
|
dataLabelsGroup.attr({ opacity: 0 });
|
|
7990
7997
|
if (series.visible) { // #2597, #3023, #3024
|
|
7998
|
+
// #19663, initial data labels animation
|
|
7999
|
+
if (series.options.animation && dlOptions?.animation) {
|
|
8000
|
+
dataLabelsGroup.animate({ opacity: 1 }, dlOptions?.animation);
|
|
8001
|
+
}
|
|
8002
|
+
else {
|
|
8003
|
+
dataLabelsGroup.attr({ opacity: 1 });
|
|
8004
|
+
}
|
|
7991
8005
|
dataLabelsGroup.show();
|
|
7992
8006
|
}
|
|
7993
8007
|
return dataLabelsGroup;
|
|
@@ -8173,7 +8187,7 @@ function setPolygon(event) {
|
|
|
8173
8187
|
}
|
|
8174
8188
|
}
|
|
8175
8189
|
}
|
|
8176
|
-
catch
|
|
8190
|
+
catch {
|
|
8177
8191
|
// Safari fails on getStartPositionOfChar even if the
|
|
8178
8192
|
// character is within the `textContent.length`
|
|
8179
8193
|
break;
|
|
@@ -8185,7 +8199,7 @@ function setPolygon(event) {
|
|
|
8185
8199
|
polygon.unshift(upper);
|
|
8186
8200
|
polygon.unshift(lower);
|
|
8187
8201
|
}
|
|
8188
|
-
catch
|
|
8202
|
+
catch {
|
|
8189
8203
|
// Safari fails on getStartPositionOfChar even if the character
|
|
8190
8204
|
// is within the `textContent.length`
|
|
8191
8205
|
break;
|
|
@@ -9266,6 +9280,392 @@ external_highcharts_src_js_default_SeriesRegistry_default().registerSeriesType('
|
|
|
9266
9280
|
* */
|
|
9267
9281
|
/* harmony default export */ const Polygon_PolygonSeries = ((/* unused pure expression or super */ null && (PolygonSeries)));
|
|
9268
9282
|
|
|
9283
|
+
;// ./code/es-modules/Extensions/BorderRadius.js
|
|
9284
|
+
/* *
|
|
9285
|
+
*
|
|
9286
|
+
* Highcharts Border Radius module
|
|
9287
|
+
*
|
|
9288
|
+
* Author: Torstein Honsi
|
|
9289
|
+
*
|
|
9290
|
+
* License: www.highcharts.com/license
|
|
9291
|
+
*
|
|
9292
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
9293
|
+
*
|
|
9294
|
+
* */
|
|
9295
|
+
|
|
9296
|
+
|
|
9297
|
+
const { defaultOptions: BorderRadius_defaultOptions } = (external_highcharts_src_js_default_default());
|
|
9298
|
+
|
|
9299
|
+
const { noop: BorderRadius_noop } = (external_highcharts_src_js_default_default());
|
|
9300
|
+
|
|
9301
|
+
const { addEvent: BorderRadius_addEvent, extend: BorderRadius_extend, isObject, merge: BorderRadius_merge, relativeLength: BorderRadius_relativeLength } = (external_highcharts_src_js_default_default());
|
|
9302
|
+
/* *
|
|
9303
|
+
*
|
|
9304
|
+
* Constants
|
|
9305
|
+
*
|
|
9306
|
+
* */
|
|
9307
|
+
const defaultBorderRadiusOptions = {
|
|
9308
|
+
radius: 0,
|
|
9309
|
+
scope: 'stack',
|
|
9310
|
+
where: void 0
|
|
9311
|
+
};
|
|
9312
|
+
/* *
|
|
9313
|
+
*
|
|
9314
|
+
* Variables
|
|
9315
|
+
*
|
|
9316
|
+
* */
|
|
9317
|
+
let oldArc = BorderRadius_noop;
|
|
9318
|
+
let oldRoundedRect = BorderRadius_noop;
|
|
9319
|
+
/* *
|
|
9320
|
+
*
|
|
9321
|
+
* Functions
|
|
9322
|
+
*
|
|
9323
|
+
* */
|
|
9324
|
+
/**
|
|
9325
|
+
* @private
|
|
9326
|
+
*/
|
|
9327
|
+
function applyBorderRadius(path, i, r) {
|
|
9328
|
+
const a = path[i];
|
|
9329
|
+
let b = path[i + 1];
|
|
9330
|
+
if (b[0] === 'Z') {
|
|
9331
|
+
b = path[0];
|
|
9332
|
+
}
|
|
9333
|
+
let line, arc, fromLineToArc;
|
|
9334
|
+
// From straight line to arc
|
|
9335
|
+
if ((a[0] === 'M' || a[0] === 'L') && b[0] === 'A') {
|
|
9336
|
+
line = a;
|
|
9337
|
+
arc = b;
|
|
9338
|
+
fromLineToArc = true;
|
|
9339
|
+
// From arc to straight line
|
|
9340
|
+
}
|
|
9341
|
+
else if (a[0] === 'A' && (b[0] === 'M' || b[0] === 'L')) {
|
|
9342
|
+
line = b;
|
|
9343
|
+
arc = a;
|
|
9344
|
+
}
|
|
9345
|
+
if (line && arc && arc.params) {
|
|
9346
|
+
const bigR = arc[1],
|
|
9347
|
+
// In our use cases, outer pie slice arcs are clockwise and inner
|
|
9348
|
+
// arcs (donut/sunburst etc) are anti-clockwise
|
|
9349
|
+
clockwise = arc[5], params = arc.params, { start, end, cx, cy } = params;
|
|
9350
|
+
// Some geometric constants
|
|
9351
|
+
const relativeR = clockwise ? (bigR - r) : (bigR + r),
|
|
9352
|
+
// The angle, on the big arc, that the border radius arc takes up
|
|
9353
|
+
angleOfBorderRadius = relativeR ? Math.asin(r / relativeR) : 0, angleOffset = clockwise ?
|
|
9354
|
+
angleOfBorderRadius :
|
|
9355
|
+
-angleOfBorderRadius,
|
|
9356
|
+
// The distance along the radius of the big arc to the starting
|
|
9357
|
+
// point of the small border radius arc
|
|
9358
|
+
distanceBigCenterToStartArc = (Math.cos(angleOfBorderRadius) *
|
|
9359
|
+
relativeR);
|
|
9360
|
+
// From line to arc
|
|
9361
|
+
if (fromLineToArc) {
|
|
9362
|
+
// Update the cache
|
|
9363
|
+
params.start = start + angleOffset;
|
|
9364
|
+
// First move to the start position at the radial line. We want to
|
|
9365
|
+
// start one borderRadius closer to the center.
|
|
9366
|
+
line[1] = cx + distanceBigCenterToStartArc * Math.cos(start);
|
|
9367
|
+
line[2] = cy + distanceBigCenterToStartArc * Math.sin(start);
|
|
9368
|
+
// Now draw an arc towards the point where the small circle touches
|
|
9369
|
+
// the great circle.
|
|
9370
|
+
path.splice(i + 1, 0, [
|
|
9371
|
+
'A',
|
|
9372
|
+
r,
|
|
9373
|
+
r,
|
|
9374
|
+
0, // Slanting,
|
|
9375
|
+
0, // Long arc
|
|
9376
|
+
1, // Clockwise
|
|
9377
|
+
cx + bigR * Math.cos(params.start),
|
|
9378
|
+
cy + bigR * Math.sin(params.start)
|
|
9379
|
+
]);
|
|
9380
|
+
// From arc to line
|
|
9381
|
+
}
|
|
9382
|
+
else {
|
|
9383
|
+
// Update the cache
|
|
9384
|
+
params.end = end - angleOffset;
|
|
9385
|
+
// End the big arc a bit earlier
|
|
9386
|
+
arc[6] = cx + bigR * Math.cos(params.end);
|
|
9387
|
+
arc[7] = cy + bigR * Math.sin(params.end);
|
|
9388
|
+
// Draw a small arc towards a point on the end angle, but one
|
|
9389
|
+
// borderRadius closer to the center relative to the perimeter.
|
|
9390
|
+
path.splice(i + 1, 0, [
|
|
9391
|
+
'A',
|
|
9392
|
+
r,
|
|
9393
|
+
r,
|
|
9394
|
+
0,
|
|
9395
|
+
0,
|
|
9396
|
+
1,
|
|
9397
|
+
cx + distanceBigCenterToStartArc * Math.cos(end),
|
|
9398
|
+
cy + distanceBigCenterToStartArc * Math.sin(end)
|
|
9399
|
+
]);
|
|
9400
|
+
}
|
|
9401
|
+
// Long or short arc must be reconsidered because we have modified the
|
|
9402
|
+
// start and end points
|
|
9403
|
+
arc[4] = Math.abs(params.end - params.start) < Math.PI ? 0 : 1;
|
|
9404
|
+
}
|
|
9405
|
+
}
|
|
9406
|
+
/**
|
|
9407
|
+
* Extend arc with borderRadius.
|
|
9408
|
+
* @private
|
|
9409
|
+
*/
|
|
9410
|
+
function arc(x, y, w, h, options = {}) {
|
|
9411
|
+
const path = oldArc(x, y, w, h, options), { brStart = true, brEnd = true, innerR = 0, r = w, start = 0, end = 0 } = options;
|
|
9412
|
+
if (options.open || !options.borderRadius) {
|
|
9413
|
+
return path;
|
|
9414
|
+
}
|
|
9415
|
+
const alpha = end - start, sinHalfAlpha = Math.sin(alpha / 2), borderRadius = Math.max(Math.min(BorderRadius_relativeLength(options.borderRadius || 0, r - innerR),
|
|
9416
|
+
// Cap to half the sector radius
|
|
9417
|
+
(r - innerR) / 2,
|
|
9418
|
+
// For smaller pie slices, cap to the largest small circle that
|
|
9419
|
+
// can be fitted within the sector
|
|
9420
|
+
(r * sinHalfAlpha) / (1 + sinHalfAlpha)), 0),
|
|
9421
|
+
// For the inner radius, we need an extra cap because the inner arc
|
|
9422
|
+
// is shorter than the outer arc
|
|
9423
|
+
innerBorderRadius = Math.min(borderRadius, 2 * (alpha / Math.PI) * innerR);
|
|
9424
|
+
// Apply turn-by-turn border radius. Start at the end since we're
|
|
9425
|
+
// splicing in arc segments.
|
|
9426
|
+
let i = path.length - 1;
|
|
9427
|
+
while (i--) {
|
|
9428
|
+
if ((!brStart && (i === 0 || i === 3)) ||
|
|
9429
|
+
(!brEnd && (i === 1 || i === 2))) {
|
|
9430
|
+
continue;
|
|
9431
|
+
}
|
|
9432
|
+
applyBorderRadius(path, i, i > 1 ? innerBorderRadius : borderRadius);
|
|
9433
|
+
}
|
|
9434
|
+
return path;
|
|
9435
|
+
}
|
|
9436
|
+
/** @private */
|
|
9437
|
+
function seriesOnAfterColumnTranslate() {
|
|
9438
|
+
if (this.options.borderRadius &&
|
|
9439
|
+
!(this.chart.is3d && this.chart.is3d())) {
|
|
9440
|
+
const { options, yAxis } = this, percent = options.stacking === 'percent', seriesDefault = BorderRadius_defaultOptions.plotOptions?.[this.type]
|
|
9441
|
+
?.borderRadius, borderRadius = optionsToObject(options.borderRadius, isObject(seriesDefault) ? seriesDefault : {}), reversed = yAxis.options.reversed;
|
|
9442
|
+
for (const point of this.points) {
|
|
9443
|
+
const { shapeArgs } = point;
|
|
9444
|
+
if (point.shapeType === 'roundedRect' && shapeArgs) {
|
|
9445
|
+
const { width = 0, height = 0, y = 0 } = shapeArgs;
|
|
9446
|
+
let brBoxY = y, brBoxHeight = height;
|
|
9447
|
+
// It would be nice to refactor StackItem.getStackBox/
|
|
9448
|
+
// setOffset so that we could get a reliable box out of
|
|
9449
|
+
// it. Currently it is close if we remove the label
|
|
9450
|
+
// offset, but we still need to run crispCol and also
|
|
9451
|
+
// flip it if inverted, so atm it is simpler to do it
|
|
9452
|
+
// like the below.
|
|
9453
|
+
if (borderRadius.scope === 'stack' &&
|
|
9454
|
+
point.stackTotal) {
|
|
9455
|
+
const stackEnd = yAxis.translate(percent ? 100 : point.stackTotal, false, true, false, true), stackThreshold = yAxis.translate(options.threshold || 0, false, true, false, true), box = this.crispCol(0, Math.min(stackEnd, stackThreshold), 0, Math.abs(stackEnd - stackThreshold));
|
|
9456
|
+
brBoxY = box.y;
|
|
9457
|
+
brBoxHeight = box.height;
|
|
9458
|
+
}
|
|
9459
|
+
const flip = (point.negative ? -1 : 1) *
|
|
9460
|
+
(reversed ? -1 : 1) === -1;
|
|
9461
|
+
// Handle the where option
|
|
9462
|
+
let where = borderRadius.where;
|
|
9463
|
+
// Waterfall, hanging columns should have rounding on
|
|
9464
|
+
// all sides
|
|
9465
|
+
if (!where &&
|
|
9466
|
+
this.is('waterfall') &&
|
|
9467
|
+
Math.abs((point.yBottom || 0) -
|
|
9468
|
+
(this.translatedThreshold || 0)) > this.borderWidth) {
|
|
9469
|
+
where = 'all';
|
|
9470
|
+
}
|
|
9471
|
+
if (!where) {
|
|
9472
|
+
where = 'end';
|
|
9473
|
+
}
|
|
9474
|
+
// Get the radius
|
|
9475
|
+
const r = Math.min(BorderRadius_relativeLength(borderRadius.radius, width), width / 2,
|
|
9476
|
+
// Cap to the height, but not if where is `end`
|
|
9477
|
+
where === 'all' ? height / 2 : Infinity) || 0;
|
|
9478
|
+
// If the `where` option is 'end', cut off the
|
|
9479
|
+
// rectangles by making the border-radius box one r
|
|
9480
|
+
// greater, so that the imaginary radius falls outside
|
|
9481
|
+
// the rectangle.
|
|
9482
|
+
if (where === 'end') {
|
|
9483
|
+
if (flip) {
|
|
9484
|
+
brBoxY -= r;
|
|
9485
|
+
brBoxHeight += r;
|
|
9486
|
+
}
|
|
9487
|
+
else {
|
|
9488
|
+
brBoxHeight += r;
|
|
9489
|
+
}
|
|
9490
|
+
}
|
|
9491
|
+
BorderRadius_extend(shapeArgs, { brBoxHeight, brBoxY, r });
|
|
9492
|
+
}
|
|
9493
|
+
}
|
|
9494
|
+
}
|
|
9495
|
+
}
|
|
9496
|
+
/** @private */
|
|
9497
|
+
function BorderRadius_compose(SeriesClass, SVGElementClass, SVGRendererClass) {
|
|
9498
|
+
const PieSeriesClass = SeriesClass.types.pie;
|
|
9499
|
+
if (!SVGElementClass.symbolCustomAttribs.includes('borderRadius')) {
|
|
9500
|
+
const symbols = SVGRendererClass.prototype.symbols;
|
|
9501
|
+
BorderRadius_addEvent(SeriesClass, 'afterColumnTranslate', seriesOnAfterColumnTranslate, {
|
|
9502
|
+
// After columnrange and polar column modifications
|
|
9503
|
+
order: 9
|
|
9504
|
+
});
|
|
9505
|
+
BorderRadius_addEvent(PieSeriesClass, 'afterTranslate', pieSeriesOnAfterTranslate);
|
|
9506
|
+
SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY', 'brEnd', 'brStart');
|
|
9507
|
+
oldArc = symbols.arc;
|
|
9508
|
+
oldRoundedRect = symbols.roundedRect;
|
|
9509
|
+
symbols.arc = arc;
|
|
9510
|
+
symbols.roundedRect = roundedRect;
|
|
9511
|
+
}
|
|
9512
|
+
}
|
|
9513
|
+
/** @private */
|
|
9514
|
+
function optionsToObject(options, seriesBROptions) {
|
|
9515
|
+
if (!isObject(options)) {
|
|
9516
|
+
options = { radius: options || 0 };
|
|
9517
|
+
}
|
|
9518
|
+
return BorderRadius_merge(defaultBorderRadiusOptions, seriesBROptions, options);
|
|
9519
|
+
}
|
|
9520
|
+
/** @private */
|
|
9521
|
+
function pieSeriesOnAfterTranslate() {
|
|
9522
|
+
const borderRadius = optionsToObject(this.options.borderRadius);
|
|
9523
|
+
for (const point of this.points) {
|
|
9524
|
+
const shapeArgs = point.shapeArgs;
|
|
9525
|
+
if (shapeArgs) {
|
|
9526
|
+
shapeArgs.borderRadius = BorderRadius_relativeLength(borderRadius.radius, (shapeArgs.r || 0) - ((shapeArgs.innerR) || 0));
|
|
9527
|
+
}
|
|
9528
|
+
}
|
|
9529
|
+
}
|
|
9530
|
+
/**
|
|
9531
|
+
* Extend roundedRect with individual cutting through rOffset.
|
|
9532
|
+
* @private
|
|
9533
|
+
*/
|
|
9534
|
+
function roundedRect(x, y, width, height, options = {}) {
|
|
9535
|
+
const path = oldRoundedRect(x, y, width, height, options), { r = 0, brBoxHeight = height, brBoxY = y } = options, brOffsetTop = y - brBoxY, brOffsetBtm = (brBoxY + brBoxHeight) - (y + height),
|
|
9536
|
+
// When the distance to the border-radius box is greater than the r
|
|
9537
|
+
// itself, it means no border radius. The -0.1 accounts for float
|
|
9538
|
+
// rounding errors.
|
|
9539
|
+
rTop = (brOffsetTop - r) > -0.1 ? 0 : r, rBtm = (brOffsetBtm - r) > -0.1 ? 0 : r, cutTop = Math.max(rTop && brOffsetTop, 0), cutBtm = Math.max(rBtm && brOffsetBtm, 0);
|
|
9540
|
+
/*
|
|
9541
|
+
|
|
9542
|
+
The naming of control points:
|
|
9543
|
+
|
|
9544
|
+
/ a -------- b \
|
|
9545
|
+
/ \
|
|
9546
|
+
h c
|
|
9547
|
+
| |
|
|
9548
|
+
| |
|
|
9549
|
+
| |
|
|
9550
|
+
g d
|
|
9551
|
+
\ /
|
|
9552
|
+
\ f -------- e /
|
|
9553
|
+
|
|
9554
|
+
*/
|
|
9555
|
+
const a = [x + rTop, y], b = [x + width - rTop, y], c = [x + width, y + rTop], d = [
|
|
9556
|
+
x + width, y + height - rBtm
|
|
9557
|
+
], e = [
|
|
9558
|
+
x + width - rBtm,
|
|
9559
|
+
y + height
|
|
9560
|
+
], f = [x + rBtm, y + height], g = [x, y + height - rBtm], h = [x, y + rTop];
|
|
9561
|
+
const applyPythagoras = (r, altitude) => Math.sqrt(Math.pow(r, 2) - Math.pow(altitude, 2));
|
|
9562
|
+
// Inside stacks, cut off part of the top
|
|
9563
|
+
if (cutTop) {
|
|
9564
|
+
const base = applyPythagoras(rTop, rTop - cutTop);
|
|
9565
|
+
a[0] -= base;
|
|
9566
|
+
b[0] += base;
|
|
9567
|
+
c[1] = h[1] = y + rTop - cutTop;
|
|
9568
|
+
}
|
|
9569
|
+
// Column is lower than the radius. Cut off bottom inside the top
|
|
9570
|
+
// radius.
|
|
9571
|
+
if (height < rTop - cutTop) {
|
|
9572
|
+
const base = applyPythagoras(rTop, rTop - cutTop - height);
|
|
9573
|
+
c[0] = d[0] = x + width - rTop + base;
|
|
9574
|
+
e[0] = Math.min(c[0], e[0]);
|
|
9575
|
+
f[0] = Math.max(d[0], f[0]);
|
|
9576
|
+
g[0] = h[0] = x + rTop - base;
|
|
9577
|
+
c[1] = h[1] = y + height;
|
|
9578
|
+
}
|
|
9579
|
+
// Inside stacks, cut off part of the bottom
|
|
9580
|
+
if (cutBtm) {
|
|
9581
|
+
const base = applyPythagoras(rBtm, rBtm - cutBtm);
|
|
9582
|
+
e[0] += base;
|
|
9583
|
+
f[0] -= base;
|
|
9584
|
+
d[1] = g[1] = y + height - rBtm + cutBtm;
|
|
9585
|
+
}
|
|
9586
|
+
// Cut off top inside the bottom radius
|
|
9587
|
+
if (height < rBtm - cutBtm) {
|
|
9588
|
+
const base = applyPythagoras(rBtm, rBtm - cutBtm - height);
|
|
9589
|
+
c[0] = d[0] = x + width - rBtm + base;
|
|
9590
|
+
b[0] = Math.min(c[0], b[0]);
|
|
9591
|
+
a[0] = Math.max(d[0], a[0]);
|
|
9592
|
+
g[0] = h[0] = x + rBtm - base;
|
|
9593
|
+
d[1] = g[1] = y;
|
|
9594
|
+
}
|
|
9595
|
+
// Preserve the box for data labels
|
|
9596
|
+
path.length = 0;
|
|
9597
|
+
path.push(['M', ...a],
|
|
9598
|
+
// Top side
|
|
9599
|
+
['L', ...b],
|
|
9600
|
+
// Top right corner
|
|
9601
|
+
['A', rTop, rTop, 0, 0, 1, ...c],
|
|
9602
|
+
// Right side
|
|
9603
|
+
['L', ...d],
|
|
9604
|
+
// Bottom right corner
|
|
9605
|
+
['A', rBtm, rBtm, 0, 0, 1, ...e],
|
|
9606
|
+
// Bottom side
|
|
9607
|
+
['L', ...f],
|
|
9608
|
+
// Bottom left corner
|
|
9609
|
+
['A', rBtm, rBtm, 0, 0, 1, ...g],
|
|
9610
|
+
// Left side
|
|
9611
|
+
['L', ...h],
|
|
9612
|
+
// Top left corner
|
|
9613
|
+
['A', rTop, rTop, 0, 0, 1, ...a], ['Z']);
|
|
9614
|
+
return path;
|
|
9615
|
+
}
|
|
9616
|
+
/* *
|
|
9617
|
+
*
|
|
9618
|
+
* Default Export
|
|
9619
|
+
*
|
|
9620
|
+
* */
|
|
9621
|
+
const BorderRadius = {
|
|
9622
|
+
compose: BorderRadius_compose,
|
|
9623
|
+
optionsToObject
|
|
9624
|
+
};
|
|
9625
|
+
/* harmony default export */ const Extensions_BorderRadius = (BorderRadius);
|
|
9626
|
+
/* *
|
|
9627
|
+
*
|
|
9628
|
+
* API Declarations
|
|
9629
|
+
*
|
|
9630
|
+
* */
|
|
9631
|
+
/**
|
|
9632
|
+
* Detailed options for border radius.
|
|
9633
|
+
*
|
|
9634
|
+
* @sample {highcharts} highcharts/plotoptions/column-borderradius/
|
|
9635
|
+
* Rounded columns
|
|
9636
|
+
* @sample highcharts/plotoptions/series-border-radius
|
|
9637
|
+
* Column and pie with rounded border
|
|
9638
|
+
*
|
|
9639
|
+
* @interface Highcharts.BorderRadiusOptionsObject
|
|
9640
|
+
*/ /**
|
|
9641
|
+
* The border radius. A number signifies pixels. A percentage string, like for
|
|
9642
|
+
* example `50%`, signifies a relative size. For columns this is relative to the
|
|
9643
|
+
* column width, for pies it is relative to the radius and the inner radius.
|
|
9644
|
+
*
|
|
9645
|
+
* @name Highcharts.BorderRadiusOptionsObject#radius
|
|
9646
|
+
* @type {string|number}
|
|
9647
|
+
*/ /**
|
|
9648
|
+
* The scope of the rounding for column charts. In a stacked column chart, the
|
|
9649
|
+
* value `point` means each single point will get rounded corners. The value
|
|
9650
|
+
* `stack` means the rounding will apply to the full stack, so that only points
|
|
9651
|
+
* close to the top or bottom will receive rounding.
|
|
9652
|
+
*
|
|
9653
|
+
* @name Highcharts.BorderRadiusOptionsObject#scope
|
|
9654
|
+
* @validvalue ["point", "stack"]
|
|
9655
|
+
* @type {string}
|
|
9656
|
+
*/ /**
|
|
9657
|
+
* For column charts, where in the point or stack to apply rounding. The `end`
|
|
9658
|
+
* value means only those corners at the point value will be rounded, leaving
|
|
9659
|
+
* the corners at the base or threshold unrounded. This is the most intuitive
|
|
9660
|
+
* behaviour. The `all` value means also the base will be rounded.
|
|
9661
|
+
*
|
|
9662
|
+
* @name Highcharts.BorderRadiusOptionsObject#where
|
|
9663
|
+
* @validvalue ["all", "end"]
|
|
9664
|
+
* @type {string}
|
|
9665
|
+
* @default end
|
|
9666
|
+
*/
|
|
9667
|
+
(''); // Keeps doclets above in JS file
|
|
9668
|
+
|
|
9269
9669
|
;// ./code/es-modules/Core/Axis/RadialAxisDefaults.js
|
|
9270
9670
|
/* *
|
|
9271
9671
|
*
|
|
@@ -9410,7 +9810,7 @@ const { defaultOptions: RadialAxis_defaultOptions } = (external_highcharts_src_j
|
|
|
9410
9810
|
|
|
9411
9811
|
const { composed: RadialAxis_composed, noop: RadialAxis_noop } = (external_highcharts_src_js_default_default());
|
|
9412
9812
|
|
|
9413
|
-
const { addEvent: RadialAxis_addEvent, correctFloat: RadialAxis_correctFloat, defined: RadialAxis_defined, extend: RadialAxis_extend, fireEvent: RadialAxis_fireEvent, isObject, merge: RadialAxis_merge, pick: RadialAxis_pick, pushUnique: RadialAxis_pushUnique, relativeLength: RadialAxis_relativeLength, splat: RadialAxis_splat, wrap: RadialAxis_wrap } = (external_highcharts_src_js_default_default());
|
|
9813
|
+
const { addEvent: RadialAxis_addEvent, correctFloat: RadialAxis_correctFloat, defined: RadialAxis_defined, extend: RadialAxis_extend, fireEvent: RadialAxis_fireEvent, isObject: RadialAxis_isObject, merge: RadialAxis_merge, pick: RadialAxis_pick, pushUnique: RadialAxis_pushUnique, relativeLength: RadialAxis_relativeLength, splat: RadialAxis_splat, wrap: RadialAxis_wrap } = (external_highcharts_src_js_default_default());
|
|
9414
9814
|
/* *
|
|
9415
9815
|
*
|
|
9416
9816
|
* Composition
|
|
@@ -9627,8 +10027,18 @@ var RadialAxis;
|
|
|
9627
10027
|
return r;
|
|
9628
10028
|
}
|
|
9629
10029
|
return radius;
|
|
9630
|
-
}, center = this.center, startAngleRad = this.startAngleRad, fullRadius = center[2] / 2, offset = Math.min(this.offset, 0), left = this.left || 0, top = this.top || 0, percentRegex = /%$/, isCircular = this.isCircular
|
|
9631
|
-
|
|
10030
|
+
}, center = this.center, startAngleRad = this.startAngleRad, borderRadius = options.borderRadius, fullRadius = center[2] / 2, offset = Math.min(this.offset, 0), left = this.left || 0, top = this.top || 0, percentRegex = /%$/, isCircular = this.isCircular, // X axis in a polar chart
|
|
10031
|
+
trueBands = this.options.plotBands || [], index = trueBands.indexOf(options);
|
|
10032
|
+
let start, end, angle, xOnPerimeter, open, path, outerRadius = RadialAxis_pick(radiusToPixels(options.outerRadius), fullRadius), innerRadius = radiusToPixels(options.innerRadius), thickness = RadialAxis_pick(radiusToPixels(options.thickness), 10), brStart = true, brEnd = true;
|
|
10033
|
+
// Apply conditional border radius, only for ends of band stacks
|
|
10034
|
+
if (borderRadius && index > -1) {
|
|
10035
|
+
if (trueBands[index - 1] && trueBands[index - 1].to === from) {
|
|
10036
|
+
brStart = false;
|
|
10037
|
+
}
|
|
10038
|
+
if (trueBands[index + 1] && trueBands[index + 1].from === to) {
|
|
10039
|
+
brEnd = false;
|
|
10040
|
+
}
|
|
10041
|
+
}
|
|
9632
10042
|
// Polygonal plot bands
|
|
9633
10043
|
if (this.options.gridLineInterpolation === 'polygon') {
|
|
9634
10044
|
path = this.getPlotLinePath({ value: from }).concat(this.getPlotLinePath({ value: to, reverse: true }));
|
|
@@ -9663,7 +10073,9 @@ var RadialAxis;
|
|
|
9663
10073
|
end: Math.max(start, end),
|
|
9664
10074
|
innerR: RadialAxis_pick(innerRadius, outerRadius - thickness),
|
|
9665
10075
|
open,
|
|
9666
|
-
borderRadius
|
|
10076
|
+
borderRadius,
|
|
10077
|
+
brStart,
|
|
10078
|
+
brEnd
|
|
9667
10079
|
});
|
|
9668
10080
|
// Provide positioning boxes for the label (#6406)
|
|
9669
10081
|
if (isCircular) {
|
|
@@ -10222,7 +10634,7 @@ var RadialAxis;
|
|
|
10222
10634
|
RadialAxis_defaultOptions.yAxis, RadialAxis.radialDefaultOptions.radial);
|
|
10223
10635
|
}
|
|
10224
10636
|
if (inverted && coll === 'yAxis') {
|
|
10225
|
-
defaultPolarOptions.stackLabels =
|
|
10637
|
+
defaultPolarOptions.stackLabels = RadialAxis_isObject(RadialAxis_defaultOptions.yAxis, true) ? RadialAxis_defaultOptions.yAxis.stackLabels : {};
|
|
10226
10638
|
defaultPolarOptions.reversedStacks = true;
|
|
10227
10639
|
}
|
|
10228
10640
|
const options = this.options = RadialAxis_merge(defaultPolarOptions, userOptions);
|
|
@@ -10278,12 +10690,16 @@ var RadialAxis;
|
|
|
10278
10690
|
|
|
10279
10691
|
const { animObject: PolarComposition_animObject } = (external_highcharts_src_js_default_default());
|
|
10280
10692
|
|
|
10693
|
+
const { optionsToObject: PolarComposition_optionsToObject } = Extensions_BorderRadius;
|
|
10694
|
+
|
|
10695
|
+
const { defaultOptions: PolarComposition_defaultOptions } = (external_highcharts_src_js_default_default());
|
|
10696
|
+
|
|
10281
10697
|
const { composed: PolarComposition_composed } = (external_highcharts_src_js_default_default());
|
|
10282
10698
|
|
|
10283
10699
|
|
|
10284
10700
|
|
|
10285
10701
|
|
|
10286
|
-
const { addEvent: PolarComposition_addEvent, defined: PolarComposition_defined, find, isNumber: PolarComposition_isNumber, merge: PolarComposition_merge, pick: PolarComposition_pick, pushUnique: PolarComposition_pushUnique, relativeLength: PolarComposition_relativeLength, splat: PolarComposition_splat, uniqueKey: PolarComposition_uniqueKey, wrap: PolarComposition_wrap } = (external_highcharts_src_js_default_default());
|
|
10702
|
+
const { addEvent: PolarComposition_addEvent, defined: PolarComposition_defined, find, isNumber: PolarComposition_isNumber, isObject: PolarComposition_isObject, merge: PolarComposition_merge, pick: PolarComposition_pick, pushUnique: PolarComposition_pushUnique, relativeLength: PolarComposition_relativeLength, splat: PolarComposition_splat, uniqueKey: PolarComposition_uniqueKey, wrap: PolarComposition_wrap } = (external_highcharts_src_js_default_default());
|
|
10287
10703
|
/* *
|
|
10288
10704
|
*
|
|
10289
10705
|
* Functions
|
|
@@ -10594,6 +11010,33 @@ function onSeriesAfterInit() {
|
|
|
10594
11010
|
}
|
|
10595
11011
|
}
|
|
10596
11012
|
}
|
|
11013
|
+
/**
|
|
11014
|
+
* Apply conditional rounding to polar bars
|
|
11015
|
+
*/
|
|
11016
|
+
function onSeriesAfterColumnTranslate() {
|
|
11017
|
+
const { chart, options, yAxis } = this;
|
|
11018
|
+
if (options.borderRadius &&
|
|
11019
|
+
chart.polar &&
|
|
11020
|
+
chart.inverted) {
|
|
11021
|
+
const seriesDefault = PolarComposition_defaultOptions.plotOptions?.[this.type]
|
|
11022
|
+
?.borderRadius, { scope, where = 'end' } = PolarComposition_optionsToObject(options.borderRadius, PolarComposition_isObject(seriesDefault) ? seriesDefault : {});
|
|
11023
|
+
for (const point of this.points) {
|
|
11024
|
+
const { shapeArgs } = point;
|
|
11025
|
+
if (point.shapeType === 'arc' && shapeArgs) {
|
|
11026
|
+
let brStart = where === 'all', brEnd = true;
|
|
11027
|
+
if (options.stacking && scope === 'stack') {
|
|
11028
|
+
brStart = point.stackY === point.y && where === 'all',
|
|
11029
|
+
brEnd = point.stackY === point.stackTotal;
|
|
11030
|
+
}
|
|
11031
|
+
if (yAxis.reversed) {
|
|
11032
|
+
[brStart, brEnd] = [brEnd, brStart];
|
|
11033
|
+
}
|
|
11034
|
+
shapeArgs.brStart = brStart;
|
|
11035
|
+
shapeArgs.brEnd = brEnd;
|
|
11036
|
+
}
|
|
11037
|
+
}
|
|
11038
|
+
}
|
|
11039
|
+
}
|
|
10597
11040
|
/**
|
|
10598
11041
|
* Extend translate. The plotX and plotY values are computed as if the polar
|
|
10599
11042
|
* chart were a cartesian plane, where plotX denotes the angle in radians
|
|
@@ -11186,6 +11629,10 @@ class PolarAdditions {
|
|
|
11186
11629
|
PolarComposition_addEvent(PointerClass, 'getSelectionMarkerAttrs', onPointerGetSelectionMarkerAttrs);
|
|
11187
11630
|
PolarComposition_addEvent(PointerClass, 'getSelectionBox', onPointerGetSelectionBox);
|
|
11188
11631
|
PolarComposition_addEvent(SeriesClass, 'afterInit', onSeriesAfterInit);
|
|
11632
|
+
PolarComposition_addEvent(SeriesClass, 'afterColumnTranslate', onSeriesAfterColumnTranslate, {
|
|
11633
|
+
// After columnrange and polar column modifications
|
|
11634
|
+
order: 9
|
|
11635
|
+
});
|
|
11189
11636
|
PolarComposition_addEvent(SeriesClass, 'afterTranslate', onSeriesAfterTranslate, { order: 2 } // Run after translation of ||-coords
|
|
11190
11637
|
);
|
|
11191
11638
|
PolarComposition_addEvent(SeriesClass, 'afterColumnTranslate', onAfterColumnTranslate, { order: 4 });
|
|
@@ -11831,12 +12278,12 @@ class WaterfallSeries extends WaterfallSeries_ColumnSeries {
|
|
|
11831
12278
|
// Return an empty path initially, because we need to know the stroke-width
|
|
11832
12279
|
// in order to set the final path.
|
|
11833
12280
|
getGraphPath() {
|
|
11834
|
-
return [['M', 0, 0]];
|
|
12281
|
+
return this.graph?.pathArray || [['M', 0, 0]];
|
|
11835
12282
|
}
|
|
11836
12283
|
// Draw columns' connector lines
|
|
11837
12284
|
getCrispPath() {
|
|
11838
12285
|
const // Skip points where Y is not a number (#18636)
|
|
11839
|
-
data = this.
|
|
12286
|
+
data = this.points.filter((d) => WaterfallSeries_isNumber(d.y)), yAxis = this.yAxis, length = data.length, graphLineWidth = this.graph?.strokeWidth() || 0, reversedXAxis = this.xAxis.reversed, reversedYAxis = this.yAxis.reversed, stacking = this.options.stacking, path = [];
|
|
11840
12287
|
for (let i = 1; i < length; i++) {
|
|
11841
12288
|
if (!( // Skip lines that would pass over the null point (#18636)
|
|
11842
12289
|
this.options.connectNulls ||
|
|
@@ -11855,8 +12302,7 @@ class WaterfallSeries extends WaterfallSeries_ColumnSeries {
|
|
|
11855
12302
|
// value
|
|
11856
12303
|
let yPos;
|
|
11857
12304
|
if (stacking) {
|
|
11858
|
-
|
|
11859
|
-
yPos = WaterfallSeries_crisp(yAxis.translate(connectorThreshold, false, true, false, true) +
|
|
12305
|
+
yPos = WaterfallSeries_crisp(yAxis.translate(prevStackX.connectorThreshold || 0, false, true, false, true) +
|
|
11860
12306
|
(reversedYAxis ? isPos : 0), graphLineWidth);
|
|
11861
12307
|
}
|
|
11862
12308
|
else {
|
|
@@ -11896,11 +12342,9 @@ class WaterfallSeries extends WaterfallSeries_ColumnSeries {
|
|
|
11896
12342
|
// crisp rendering.
|
|
11897
12343
|
drawGraph() {
|
|
11898
12344
|
WaterfallSeries_LineSeries.prototype.drawGraph.call(this);
|
|
11899
|
-
|
|
11900
|
-
this.
|
|
11901
|
-
|
|
11902
|
-
});
|
|
11903
|
-
}
|
|
12345
|
+
this.graph?.animate({
|
|
12346
|
+
d: this.getCrispPath()
|
|
12347
|
+
});
|
|
11904
12348
|
}
|
|
11905
12349
|
// Waterfall has stacking along the x-values too.
|
|
11906
12350
|
setStackedPoints(axis) {
|