highcharts 12.2.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/annotations/popup.css +86 -45
- package/css/highcharts.css +40 -35
- package/css/stocktools/gui.css +28 -11
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +3 -3
- package/es-modules/Accessibility/Components/LegendComponent.js +10 -1
- package/es-modules/Accessibility/Components/MenuComponent.js +26 -23
- 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/HighContrastMode.js +0 -5
- 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 +5 -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 +19 -12
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +15 -2
- package/es-modules/Core/Axis/RadialAxis.js +18 -7
- package/es-modules/Core/Axis/ScrollbarAxis.js +19 -17
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +0 -1
- package/es-modules/Core/Axis/Tick.js +1 -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/Axis/WaterfallAxis.js +4 -4
- package/es-modules/Core/Chart/Chart.js +41 -34
- package/es-modules/Core/Chart/ChartDefaults.js +16 -2
- package/es-modules/Core/Chart/GanttChart.js +4 -2
- package/es-modules/Core/Chart/StockChart.js +42 -49
- package/es-modules/Core/Color/Color.js +4 -8
- package/es-modules/Core/Defaults.js +16 -7
- package/es-modules/Core/Geometry/CircleUtilities.js +3 -1
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/HttpUtilities.js +45 -38
- package/es-modules/Core/Legend/Legend.js +8 -7
- package/es-modules/Core/Pointer.js +17 -9
- package/es-modules/Core/Renderer/HTML/AST.js +15 -15
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +8 -3
- 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 +10 -7
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
- package/es-modules/Core/Series/DataLabel.js +4 -2
- package/es-modules/Core/Series/Point.js +9 -0
- package/es-modules/Core/Series/Series.js +17 -7
- package/es-modules/Core/Series/SeriesDefaults.js +1 -3
- package/es-modules/Core/Series/SeriesRegistry.js +8 -1
- package/es-modules/Core/Templating.js +6 -5
- package/es-modules/Core/Tooltip.js +3 -1
- package/es-modules/Data/Connectors/CSVConnector.js +32 -15
- package/es-modules/Data/Connectors/DataConnector.js +107 -12
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +29 -17
- package/es-modules/Data/Connectors/HTMLTableConnector.js +3 -3
- package/es-modules/Data/Connectors/JSONConnector.js +37 -17
- package/es-modules/Data/Converters/HTMLTableConverter.js +2 -2
- package/es-modules/Data/Converters/JSONConverter.js +0 -1
- package/es-modules/Data/DataPool.js +15 -4
- 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/Annotation.js +10 -7
- package/es-modules/Extensions/Annotations/AnnotationChart.js +7 -3
- package/es-modules/Extensions/Annotations/AnnotationDefaults.js +38 -12
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +10 -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/PopupAnnotations.js +10 -4
- package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +1 -1
- package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +0 -3
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +97 -94
- package/es-modules/Extensions/Annotations/Types/ElliottWave.js +43 -36
- package/es-modules/Extensions/Annotations/Types/Fibonacci.js +86 -82
- package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +74 -71
- package/es-modules/Extensions/Annotations/Types/InfinityLine.js +17 -3
- package/es-modules/Extensions/Annotations/Types/Measure.js +229 -226
- package/es-modules/Extensions/Annotations/Types/Pitchfork.js +39 -40
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +56 -52
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +80 -76
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +57 -53
- package/es-modules/Extensions/Boost/Boost.js +5 -1
- package/es-modules/Extensions/Boost/BoostSeries.js +53 -21
- 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 +43 -8
- package/es-modules/Extensions/ExportData/ExportData.js +875 -781
- package/es-modules/Extensions/ExportData/ExportDataDefaults.js +67 -13
- package/es-modules/Extensions/Exporting/Exporting.js +1177 -546
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +52 -36
- package/es-modules/Extensions/Exporting/Fullscreen.js +2 -2
- package/es-modules/Extensions/NonCartesianSeriesZoom/NonCartesianSeriesZoom.js +311 -0
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +254 -575
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +9 -38
- package/es-modules/Extensions/Pane/Pane.js +1 -1
- package/es-modules/Extensions/Pane/PaneComposition.js +19 -12
- package/es-modules/Extensions/Pane/PaneDefaults.js +9 -1
- 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/Extensions/Themes/Adaptive.js +1009 -0
- package/es-modules/Maps/MapNavigation.js +1 -1
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +16 -9
- package/es-modules/Series/Bubble/BubblePoint.js +2 -2
- package/es-modules/Series/Column/ColumnSeriesDefaults.js +1 -2
- package/es-modules/Series/DataModifyComposition.js +0 -2
- package/es-modules/Series/DragNodesComposition.js +4 -0
- package/es-modules/Series/DrawPointUtilities.js +1 -1
- package/es-modules/Series/Flags/FlagsSeriesDefaults.js +2 -0
- package/es-modules/Series/GraphLayoutComposition.js +2 -1
- package/es-modules/Series/Heatmap/HeatmapSeriesDefaults.js +1 -2
- package/es-modules/Series/Histogram/HistogramSeries.js +19 -17
- package/es-modules/Series/Item/ItemSeries.js +1 -1
- package/es-modules/Series/PackedBubble/PackedBubblePoint.js +5 -0
- package/es-modules/Series/Pie/PieDataLabel.js +2 -2
- package/es-modules/Series/Pie/PieSeries.js +2 -2
- package/es-modules/Series/Pie/PieSeriesDefaults.js +1 -2
- package/es-modules/Series/PolarComposition.js +37 -2
- package/es-modules/Series/SeriesOnPointComposition.js +0 -1
- package/es-modules/Series/SimulationSeriesUtilities.js +7 -0
- package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +7 -2
- package/es-modules/Series/SolidGauge/SolidGaugeSeriesDefaults.js +13 -0
- package/es-modules/Series/Treegraph/TreegraphLayout.js +10 -4
- package/es-modules/Series/Treegraph/TreegraphSeries.js +3 -1
- package/es-modules/Series/Treemap/TreemapSeries.js +4 -4
- package/es-modules/Series/Variwide/VariwideComposition.js +9 -11
- package/es-modules/Series/Variwide/VariwideSeries.js +8 -1
- package/es-modules/Series/Waterfall/WaterfallSeries.js +12 -17
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +87 -10
- package/es-modules/Series/XRange/XRangePoint.js +2 -1
- package/es-modules/Shared/BaseForm.js +6 -3
- package/es-modules/Shared/TimeBase.js +5 -1
- package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -1
- package/es-modules/Stock/Navigator/NavigatorComposition.js +2 -2
- package/es-modules/Stock/Scrollbar/Scrollbar.js +5 -7
- package/es-modules/Stock/StockTools/StockToolbar.js +1 -1
- package/es-modules/Stock/StockTools/StockToolsBindings.js +34 -113
- package/es-modules/masters/highcharts-3d.src.js +3 -1
- 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 +3 -1
- package/es-modules/masters/modules/dumbbell.src.js +1 -1
- package/es-modules/masters/modules/export-data.src.js +3 -3
- package/es-modules/masters/modules/exporting.src.js +5 -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.d.ts +2 -0
- package/es-modules/masters/modules/non-cartesian-zoom.src.js +18 -0
- package/es-modules/masters/modules/offline-exporting.src.js +2 -2
- 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.d.ts +2 -0
- package/es-modules/masters/themes/adaptive.src.js +15 -0
- 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 +11 -1
- package/esm/highcharts-3d.src.js +3 -4
- package/esm/highcharts-gantt.js +14 -1
- package/esm/highcharts-gantt.src.js +8 -2
- package/esm/highcharts-more.js +9 -1
- package/esm/highcharts-more.src.js +516 -57
- package/esm/highcharts.js +9 -2
- package/esm/highcharts.src.js +273 -168
- package/esm/highmaps.js +8 -1
- package/esm/highmaps.src.js +2 -2
- package/esm/highstock.js +8 -1
- package/esm/highstock.src.js +2 -2
- package/esm/i18n/fr-FR.js +13 -1
- package/esm/i18n/fr-FR.src.js +1 -1
- package/esm/i18n/nb-NO.js +13 -1
- package/esm/i18n/nb-NO.src.js +1 -1
- package/esm/i18n/zh-CN.js +13 -1
- package/esm/i18n/zh-CN.src.js +1 -1
- package/esm/indicators/acceleration-bands.js +12 -1
- package/esm/indicators/acceleration-bands.src.js +1 -1
- package/esm/indicators/accumulation-distribution.js +12 -1
- package/esm/indicators/accumulation-distribution.src.js +1 -1
- package/esm/indicators/ao.js +12 -1
- package/esm/indicators/ao.src.js +1 -1
- package/esm/indicators/apo.js +12 -1
- package/esm/indicators/apo.src.js +1 -1
- package/esm/indicators/aroon-oscillator.js +12 -1
- package/esm/indicators/aroon-oscillator.src.js +1 -1
- package/esm/indicators/aroon.js +12 -1
- package/esm/indicators/aroon.src.js +1 -1
- package/esm/indicators/atr.js +12 -1
- package/esm/indicators/atr.src.js +1 -1
- package/esm/indicators/bollinger-bands.js +12 -1
- package/esm/indicators/bollinger-bands.src.js +1 -1
- package/esm/indicators/cci.js +12 -1
- package/esm/indicators/cci.src.js +1 -1
- package/esm/indicators/chaikin.js +12 -1
- package/esm/indicators/chaikin.src.js +1 -1
- package/esm/indicators/cmf.js +11 -1
- package/esm/indicators/cmf.src.js +1 -1
- package/esm/indicators/cmo.js +12 -1
- package/esm/indicators/cmo.src.js +1 -1
- package/esm/indicators/dema.js +12 -1
- package/esm/indicators/dema.src.js +1 -1
- package/esm/indicators/disparity-index.js +12 -1
- package/esm/indicators/disparity-index.src.js +1 -1
- package/esm/indicators/dmi.js +12 -1
- package/esm/indicators/dmi.src.js +1 -1
- package/esm/indicators/dpo.js +12 -1
- package/esm/indicators/dpo.src.js +1 -1
- package/esm/indicators/ema.src.js +0 -3
- package/esm/indicators/ichimoku-kinko-hyo.js +12 -1
- package/esm/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/esm/indicators/indicators-all.js +12 -1
- package/esm/indicators/indicators-all.src.js +2 -2
- package/esm/indicators/indicators.js +12 -1
- package/esm/indicators/indicators.src.js +1 -1
- package/esm/indicators/keltner-channels.js +12 -1
- package/esm/indicators/keltner-channels.src.js +1 -1
- package/esm/indicators/klinger.js +12 -1
- package/esm/indicators/klinger.src.js +1 -1
- package/esm/indicators/macd.js +12 -1
- package/esm/indicators/macd.src.js +2 -2
- package/esm/indicators/mfi.js +12 -1
- package/esm/indicators/mfi.src.js +1 -1
- package/esm/indicators/momentum.js +12 -1
- package/esm/indicators/momentum.src.js +1 -1
- package/esm/indicators/natr.js +12 -1
- package/esm/indicators/natr.src.js +1 -1
- package/esm/indicators/obv.js +12 -1
- package/esm/indicators/obv.src.js +1 -1
- package/esm/indicators/pivot-points.js +12 -1
- package/esm/indicators/pivot-points.src.js +1 -1
- package/esm/indicators/ppo.js +12 -1
- package/esm/indicators/ppo.src.js +1 -1
- package/esm/indicators/price-channel.js +12 -1
- package/esm/indicators/price-channel.src.js +1 -1
- package/esm/indicators/price-envelopes.js +12 -1
- package/esm/indicators/price-envelopes.src.js +1 -1
- package/esm/indicators/psar.js +12 -1
- package/esm/indicators/psar.src.js +1 -1
- package/esm/indicators/regressions.js +12 -1
- package/esm/indicators/regressions.src.js +1 -1
- package/esm/indicators/roc.js +12 -1
- package/esm/indicators/roc.src.js +1 -1
- package/esm/indicators/rsi.js +12 -1
- package/esm/indicators/rsi.src.js +1 -1
- package/esm/indicators/slow-stochastic.js +12 -1
- package/esm/indicators/slow-stochastic.src.js +1 -1
- package/esm/indicators/stochastic.js +12 -1
- package/esm/indicators/stochastic.src.js +1 -1
- package/esm/indicators/supertrend.js +12 -1
- package/esm/indicators/supertrend.src.js +1 -1
- package/esm/indicators/tema.js +12 -1
- package/esm/indicators/tema.src.js +1 -1
- package/esm/indicators/trendline.js +12 -1
- package/esm/indicators/trendline.src.js +1 -1
- package/esm/indicators/trix.js +12 -1
- package/esm/indicators/trix.src.js +1 -1
- package/esm/indicators/volume-by-price.js +12 -1
- package/esm/indicators/volume-by-price.src.js +1 -1
- package/esm/indicators/vwap.js +12 -1
- package/esm/indicators/vwap.src.js +1 -1
- package/esm/indicators/williams-r.js +12 -1
- package/esm/indicators/williams-r.src.js +1 -1
- package/esm/indicators/wma.js +12 -1
- package/esm/indicators/wma.src.js +1 -1
- package/esm/indicators/zigzag.js +12 -1
- package/esm/indicators/zigzag.src.js +1 -1
- package/esm/modules/accessibility.js +12 -1
- package/esm/modules/accessibility.src.js +92 -63
- package/esm/modules/annotations-advanced.js +11 -1
- package/esm/modules/annotations-advanced.src.js +872 -778
- package/esm/modules/annotations.js +11 -1
- package/esm/modules/annotations.src.js +95 -43
- package/esm/modules/arc-diagram.js +11 -1
- package/esm/modules/arc-diagram.src.js +3 -3
- package/esm/modules/arrow-symbols.js +11 -1
- package/esm/modules/arrow-symbols.src.js +1 -1
- package/esm/modules/boost-canvas.js +12 -1
- package/esm/modules/boost-canvas.src.js +102 -53
- package/esm/modules/boost.js +13 -1
- package/esm/modules/boost.src.js +107 -49
- package/esm/modules/broken-axis.js +9 -1
- package/esm/modules/broken-axis.src.js +115 -91
- package/esm/modules/bullet.js +11 -1
- package/esm/modules/bullet.src.js +1 -1
- package/esm/modules/coloraxis.js +11 -1
- package/esm/modules/coloraxis.src.js +6 -7
- package/esm/modules/current-date-indicator.js +11 -1
- package/esm/modules/current-date-indicator.src.js +1 -1
- package/esm/modules/cylinder.js +12 -1
- package/esm/modules/cylinder.src.js +1 -1
- package/esm/modules/data-tools.js +11 -1
- package/esm/modules/data-tools.src.js +542 -125
- package/esm/modules/data.js +11 -1
- package/esm/modules/data.src.js +46 -39
- package/esm/modules/datagrouping.js +11 -1
- package/esm/modules/datagrouping.src.js +1 -1
- package/esm/modules/debugger.js +11 -1
- package/esm/modules/debugger.src.js +1 -1
- package/esm/modules/dependency-wheel.js +12 -1
- package/esm/modules/dependency-wheel.src.js +3 -3
- package/esm/modules/dotplot.js +11 -1
- package/esm/modules/dotplot.src.js +1 -1
- package/esm/modules/drag-panes.js +13 -1
- package/esm/modules/drag-panes.src.js +1 -1
- package/esm/modules/draggable-points.js +9 -1
- package/esm/modules/draggable-points.src.js +1 -1
- package/esm/modules/drilldown.js +13 -1
- package/esm/modules/drilldown.src.js +4 -2
- package/esm/modules/dumbbell.js +9 -1
- package/esm/modules/dumbbell.src.js +1 -1
- package/esm/modules/export-data.js +12 -1
- package/esm/modules/export-data.src.js +985 -799
- package/esm/modules/exporting.js +11 -1
- package/esm/modules/exporting.src.js +1453 -634
- package/esm/modules/flowmap.js +9 -1
- package/esm/modules/flowmap.src.js +1 -1
- package/esm/modules/full-screen.js +12 -1
- package/esm/modules/full-screen.src.js +3 -3
- package/esm/modules/funnel.js +11 -1
- package/esm/modules/funnel.src.js +7 -3
- package/esm/modules/funnel3d.js +13 -1
- package/esm/modules/funnel3d.src.js +1 -1
- package/esm/modules/gantt.js +11 -1
- package/esm/modules/gantt.src.js +254 -212
- package/esm/modules/geoheatmap.js +9 -1
- package/esm/modules/geoheatmap.src.js +1 -1
- package/esm/modules/grid-axis.js +11 -1
- package/esm/modules/grid-axis.src.js +1 -1
- package/esm/modules/heatmap.js +9 -1
- package/esm/modules/heatmap.src.js +2 -3
- package/esm/modules/heikinashi.js +12 -1
- package/esm/modules/heikinashi.src.js +1 -1
- package/esm/modules/histogram-bellcurve.js +10 -1
- package/esm/modules/histogram-bellcurve.src.js +36 -27
- package/esm/modules/hollowcandlestick.js +12 -1
- package/esm/modules/hollowcandlestick.src.js +1 -1
- package/esm/modules/item-series.js +11 -1
- package/esm/modules/item-series.src.js +3 -5
- package/esm/modules/lollipop.js +9 -1
- package/esm/modules/lollipop.src.js +1 -1
- package/esm/modules/map.js +11 -1
- package/esm/modules/map.src.js +5 -6
- package/esm/modules/marker-clusters.js +11 -1
- package/esm/modules/marker-clusters.src.js +1 -1
- package/esm/modules/mouse-wheel-zoom.js +11 -1
- package/esm/modules/mouse-wheel-zoom.src.js +1 -1
- package/esm/modules/navigator.js +11 -1
- package/esm/modules/navigator.src.js +29 -29
- package/esm/modules/networkgraph.js +11 -1
- package/esm/modules/networkgraph.src.js +16 -4
- package/esm/modules/no-data-to-display.js +12 -1
- package/esm/modules/no-data-to-display.src.js +1 -1
- package/esm/modules/non-cartesian-zoom.d.ts +2 -0
- package/esm/modules/non-cartesian-zoom.js +11 -0
- package/esm/modules/non-cartesian-zoom.src.d.ts +2 -0
- package/esm/modules/non-cartesian-zoom.src.js +374 -0
- package/esm/modules/offline-exporting.js +12 -1
- package/esm/modules/offline-exporting.src.js +339 -3363
- package/esm/modules/organization.js +11 -1
- package/esm/modules/organization.src.js +3 -3
- package/esm/modules/parallel-coordinates.js +11 -1
- package/esm/modules/parallel-coordinates.src.js +1 -1
- package/esm/modules/pareto.js +11 -1
- package/esm/modules/pareto.src.js +1 -1
- package/esm/modules/pathfinder.js +11 -1
- package/esm/modules/pathfinder.src.js +1 -1
- package/esm/modules/pattern-fill.js +12 -1
- package/esm/modules/pattern-fill.src.js +1 -1
- package/esm/modules/pictorial.js +11 -1
- package/esm/modules/pictorial.src.js +1 -1
- package/esm/modules/pointandfigure.js +12 -1
- package/esm/modules/pointandfigure.src.js +1 -1
- package/esm/modules/price-indicator.js +13 -1
- package/esm/modules/price-indicator.src.js +1 -1
- package/esm/modules/pyramid3d.js +14 -1
- package/esm/modules/pyramid3d.src.js +1 -1
- package/esm/modules/renko.js +12 -1
- package/esm/modules/renko.src.js +1 -1
- package/esm/modules/sankey.js +11 -1
- package/esm/modules/sankey.src.js +3 -3
- package/esm/modules/series-label.js +9 -1
- package/esm/modules/series-label.src.js +1 -1
- package/esm/modules/series-on-point.js +12 -1
- package/esm/modules/series-on-point.src.js +1 -9
- package/esm/modules/solid-gauge.js +12 -1
- package/esm/modules/solid-gauge.src.js +27 -5
- package/esm/modules/sonification.js +12 -1
- package/esm/modules/sonification.src.js +45 -10
- package/esm/modules/static-scale.js +11 -1
- package/esm/modules/static-scale.src.js +14 -12
- package/esm/modules/stock-tools.js +13 -1
- package/esm/modules/stock-tools.src.js +37 -116
- package/esm/modules/stock.js +11 -1
- package/esm/modules/stock.src.js +98 -98
- package/esm/modules/streamgraph.js +11 -1
- package/esm/modules/streamgraph.src.js +1 -1
- package/esm/modules/sunburst.js +10 -1
- package/esm/modules/sunburst.src.js +9 -9
- package/esm/modules/textpath.js +9 -1
- package/esm/modules/textpath.src.js +3 -3
- package/esm/modules/tiledwebmap.js +10 -2
- package/esm/modules/tiledwebmap.src.js +1 -1
- package/esm/modules/tilemap.js +12 -1
- package/esm/modules/tilemap.src.js +1 -1
- package/esm/modules/timeline.js +12 -1
- package/esm/modules/timeline.src.js +1 -1
- package/esm/modules/treegraph.js +11 -1
- package/esm/modules/treegraph.src.js +16 -8
- package/esm/modules/treegrid.js +11 -1
- package/esm/modules/treegrid.src.js +190 -159
- package/esm/modules/treemap.js +10 -1
- package/esm/modules/treemap.src.js +7 -7
- package/esm/modules/variable-pie.js +11 -1
- package/esm/modules/variable-pie.src.js +1 -1
- package/esm/modules/variwide.js +11 -1
- package/esm/modules/variwide.src.js +18 -13
- package/esm/modules/vector.js +11 -1
- package/esm/modules/vector.src.js +1 -1
- package/esm/modules/venn.js +10 -1
- package/esm/modules/venn.src.js +5 -3
- package/esm/modules/windbarb.js +11 -1
- package/esm/modules/windbarb.src.js +1 -1
- package/esm/modules/wordcloud.js +10 -1
- package/esm/modules/wordcloud.src.js +89 -12
- package/esm/modules/xrange.js +11 -1
- package/esm/modules/xrange.src.js +3 -2
- package/esm/standalone-navigator.js +11 -2
- package/esm/standalone-navigator.src.js +312 -206
- package/esm/themes/adaptive.d.ts +2 -0
- package/esm/themes/adaptive.js +130 -0
- package/esm/themes/adaptive.src.d.ts +2 -0
- package/esm/themes/adaptive.src.js +1069 -0
- package/esm/themes/avocado.js +9 -1
- package/esm/themes/avocado.src.js +1 -1
- package/esm/themes/brand-dark.js +9 -1
- package/esm/themes/brand-dark.src.js +1 -1
- package/esm/themes/brand-light.js +9 -1
- package/esm/themes/brand-light.src.js +1 -1
- package/esm/themes/dark-blue.js +9 -1
- package/esm/themes/dark-blue.src.js +1 -1
- package/esm/themes/dark-green.js +9 -1
- package/esm/themes/dark-green.src.js +1 -1
- package/esm/themes/dark-unica.js +9 -1
- package/esm/themes/dark-unica.src.js +1 -1
- package/esm/themes/gray.js +9 -1
- package/esm/themes/gray.src.js +1 -1
- package/esm/themes/grid-light.js +9 -1
- package/esm/themes/grid-light.src.js +1 -1
- package/esm/themes/grid.js +9 -1
- package/esm/themes/grid.src.js +1 -1
- package/esm/themes/high-contrast-dark.js +9 -1
- package/esm/themes/high-contrast-dark.src.js +1 -1
- package/esm/themes/high-contrast-light.js +9 -1
- package/esm/themes/high-contrast-light.src.js +1 -1
- package/esm/themes/sand-signika.js +9 -1
- package/esm/themes/sand-signika.src.js +1 -1
- package/esm/themes/skies.js +9 -1
- package/esm/themes/skies.src.js +1 -1
- package/esm/themes/sunset.js +9 -1
- package/esm/themes/sunset.src.js +1 -1
- package/highcharts-3d.d.ts +1 -9
- package/highcharts-3d.js +11 -1
- package/highcharts-3d.src.d.ts +1 -9
- package/highcharts-3d.src.js +3 -4
- package/highcharts-gantt.js +15 -2
- package/highcharts-gantt.src.js +546 -392
- package/highcharts-more.d.ts +10 -9
- package/highcharts-more.js +9 -1
- package/highcharts-more.src.d.ts +10 -9
- package/highcharts-more.src.js +516 -57
- package/highcharts.d.ts +4526 -1522
- package/highcharts.js +9 -2
- package/highcharts.src.d.ts +4526 -1522
- package/highcharts.src.js +273 -168
- package/highmaps.js +9 -2
- package/highmaps.src.js +294 -191
- package/highstock.js +9 -2
- package/highstock.src.js +490 -361
- package/i18n/fr-FR.js +13 -1
- package/i18n/fr-FR.src.js +8 -8
- package/i18n/nb-NO.js +13 -1
- package/i18n/nb-NO.src.js +8 -8
- package/i18n/zh-CN.js +13 -1
- package/i18n/zh-CN.src.js +8 -8
- package/indicators/acceleration-bands.d.ts +1 -9
- package/indicators/acceleration-bands.js +12 -1
- package/indicators/acceleration-bands.src.d.ts +1 -9
- package/indicators/acceleration-bands.src.js +1 -1
- package/indicators/accumulation-distribution.d.ts +1 -9
- package/indicators/accumulation-distribution.js +12 -1
- package/indicators/accumulation-distribution.src.d.ts +1 -9
- package/indicators/accumulation-distribution.src.js +1 -1
- package/indicators/ao.d.ts +1 -9
- package/indicators/ao.js +12 -1
- package/indicators/ao.src.d.ts +1 -9
- package/indicators/ao.src.js +1 -1
- package/indicators/apo.d.ts +1 -9
- package/indicators/apo.js +12 -1
- package/indicators/apo.src.d.ts +1 -9
- package/indicators/apo.src.js +1 -1
- package/indicators/aroon-oscillator.d.ts +1 -9
- package/indicators/aroon-oscillator.js +12 -1
- package/indicators/aroon-oscillator.src.d.ts +1 -9
- package/indicators/aroon-oscillator.src.js +1 -1
- package/indicators/aroon.d.ts +1 -9
- package/indicators/aroon.js +12 -1
- package/indicators/aroon.src.d.ts +1 -9
- package/indicators/aroon.src.js +1 -1
- package/indicators/atr.d.ts +1 -9
- package/indicators/atr.js +12 -1
- package/indicators/atr.src.d.ts +1 -9
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.d.ts +1 -9
- package/indicators/bollinger-bands.js +12 -1
- package/indicators/bollinger-bands.src.d.ts +1 -9
- package/indicators/bollinger-bands.src.js +1 -1
- package/indicators/cci.d.ts +1 -9
- package/indicators/cci.js +12 -1
- package/indicators/cci.src.d.ts +1 -9
- package/indicators/cci.src.js +1 -1
- package/indicators/chaikin.d.ts +1 -9
- package/indicators/chaikin.js +12 -1
- package/indicators/chaikin.src.d.ts +1 -9
- package/indicators/chaikin.src.js +1 -1
- package/indicators/cmf.d.ts +1 -9
- package/indicators/cmf.js +11 -1
- package/indicators/cmf.src.d.ts +1 -9
- package/indicators/cmf.src.js +1 -1
- package/indicators/cmo.d.ts +1 -9
- package/indicators/cmo.js +12 -1
- package/indicators/cmo.src.d.ts +1 -9
- package/indicators/cmo.src.js +1 -1
- package/indicators/dema.d.ts +1 -9
- package/indicators/dema.js +12 -1
- package/indicators/dema.src.d.ts +1 -9
- package/indicators/dema.src.js +1 -1
- package/indicators/disparity-index.d.ts +1 -9
- package/indicators/disparity-index.js +12 -1
- package/indicators/disparity-index.src.d.ts +1 -9
- package/indicators/disparity-index.src.js +1 -1
- package/indicators/dmi.d.ts +1 -9
- package/indicators/dmi.js +12 -1
- package/indicators/dmi.src.d.ts +1 -9
- package/indicators/dmi.src.js +1 -1
- package/indicators/dpo.d.ts +1 -9
- package/indicators/dpo.js +12 -1
- package/indicators/dpo.src.d.ts +1 -9
- package/indicators/dpo.src.js +1 -1
- package/indicators/ema.d.ts +1 -9
- package/indicators/ema.src.d.ts +1 -9
- package/indicators/ema.src.js +3 -6
- package/indicators/ichimoku-kinko-hyo.d.ts +1 -9
- package/indicators/ichimoku-kinko-hyo.js +12 -1
- package/indicators/ichimoku-kinko-hyo.src.d.ts +1 -9
- package/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/indicators/indicators-all.d.ts +1 -9
- package/indicators/indicators-all.js +12 -1
- package/indicators/indicators-all.src.d.ts +1 -9
- package/indicators/indicators-all.src.js +2 -2
- package/indicators/indicators.d.ts +1 -9
- package/indicators/indicators.js +12 -1
- package/indicators/indicators.src.d.ts +1 -9
- package/indicators/indicators.src.js +1 -1
- package/indicators/keltner-channels.d.ts +1 -9
- package/indicators/keltner-channels.js +12 -1
- package/indicators/keltner-channels.src.d.ts +1 -9
- package/indicators/keltner-channels.src.js +1 -1
- package/indicators/klinger.d.ts +1 -9
- package/indicators/klinger.js +12 -1
- package/indicators/klinger.src.d.ts +1 -9
- package/indicators/klinger.src.js +1 -1
- package/indicators/macd.d.ts +1 -9
- package/indicators/macd.js +12 -1
- package/indicators/macd.src.d.ts +1 -9
- package/indicators/macd.src.js +2 -2
- package/indicators/mfi.d.ts +1 -9
- package/indicators/mfi.js +12 -1
- package/indicators/mfi.src.d.ts +1 -9
- package/indicators/mfi.src.js +1 -1
- package/indicators/momentum.d.ts +1 -9
- package/indicators/momentum.js +12 -1
- package/indicators/momentum.src.d.ts +1 -9
- package/indicators/momentum.src.js +1 -1
- package/indicators/natr.d.ts +1 -9
- package/indicators/natr.js +12 -1
- package/indicators/natr.src.d.ts +1 -9
- package/indicators/natr.src.js +1 -1
- package/indicators/obv.d.ts +1 -9
- package/indicators/obv.js +12 -1
- package/indicators/obv.src.d.ts +1 -9
- package/indicators/obv.src.js +1 -1
- package/indicators/pivot-points.d.ts +1 -9
- package/indicators/pivot-points.js +12 -1
- package/indicators/pivot-points.src.d.ts +1 -9
- package/indicators/pivot-points.src.js +1 -1
- package/indicators/ppo.d.ts +1 -9
- package/indicators/ppo.js +12 -1
- package/indicators/ppo.src.d.ts +1 -9
- package/indicators/ppo.src.js +1 -1
- package/indicators/price-channel.d.ts +1 -9
- package/indicators/price-channel.js +12 -1
- package/indicators/price-channel.src.d.ts +1 -9
- package/indicators/price-channel.src.js +1 -1
- package/indicators/price-envelopes.d.ts +1 -9
- package/indicators/price-envelopes.js +12 -1
- package/indicators/price-envelopes.src.d.ts +1 -9
- package/indicators/price-envelopes.src.js +1 -1
- package/indicators/psar.d.ts +1 -9
- package/indicators/psar.js +12 -1
- package/indicators/psar.src.d.ts +1 -9
- package/indicators/psar.src.js +1 -1
- package/indicators/regressions.d.ts +1 -9
- package/indicators/regressions.js +12 -1
- package/indicators/regressions.src.d.ts +1 -9
- package/indicators/regressions.src.js +1 -1
- package/indicators/roc.d.ts +1 -9
- package/indicators/roc.js +12 -1
- package/indicators/roc.src.d.ts +1 -9
- package/indicators/roc.src.js +1 -1
- package/indicators/rsi.d.ts +1 -9
- package/indicators/rsi.js +12 -1
- package/indicators/rsi.src.d.ts +1 -9
- package/indicators/rsi.src.js +1 -1
- package/indicators/slow-stochastic.d.ts +1 -9
- package/indicators/slow-stochastic.js +12 -1
- package/indicators/slow-stochastic.src.d.ts +1 -9
- package/indicators/slow-stochastic.src.js +1 -1
- package/indicators/stochastic.d.ts +1 -9
- package/indicators/stochastic.js +12 -1
- package/indicators/stochastic.src.d.ts +1 -9
- package/indicators/stochastic.src.js +1 -1
- package/indicators/supertrend.d.ts +1 -9
- package/indicators/supertrend.js +12 -1
- package/indicators/supertrend.src.d.ts +1 -9
- package/indicators/supertrend.src.js +1 -1
- package/indicators/tema.d.ts +1 -9
- package/indicators/tema.js +12 -1
- package/indicators/tema.src.d.ts +1 -9
- package/indicators/tema.src.js +1 -1
- package/indicators/trendline.d.ts +1 -9
- package/indicators/trendline.js +12 -1
- package/indicators/trendline.src.d.ts +1 -9
- package/indicators/trendline.src.js +1 -1
- package/indicators/trix.d.ts +1 -9
- package/indicators/trix.js +12 -1
- package/indicators/trix.src.d.ts +1 -9
- package/indicators/trix.src.js +1 -1
- package/indicators/volume-by-price.d.ts +1 -9
- package/indicators/volume-by-price.js +12 -1
- package/indicators/volume-by-price.src.d.ts +1 -9
- package/indicators/volume-by-price.src.js +1 -1
- package/indicators/vwap.d.ts +1 -9
- package/indicators/vwap.js +12 -1
- package/indicators/vwap.src.d.ts +1 -9
- package/indicators/vwap.src.js +1 -1
- package/indicators/williams-r.d.ts +1 -9
- package/indicators/williams-r.js +12 -1
- package/indicators/williams-r.src.d.ts +1 -9
- package/indicators/williams-r.src.js +1 -1
- package/indicators/wma.d.ts +1 -9
- package/indicators/wma.js +12 -1
- package/indicators/wma.src.d.ts +1 -9
- package/indicators/wma.src.js +1 -1
- package/indicators/zigzag.d.ts +1 -9
- package/indicators/zigzag.js +12 -1
- package/indicators/zigzag.src.d.ts +1 -9
- package/indicators/zigzag.src.js +1 -1
- package/modules/accessibility.d.ts +1 -11
- package/modules/accessibility.js +12 -1
- package/modules/accessibility.src.d.ts +1 -11
- package/modules/accessibility.src.js +92 -63
- package/modules/annotations-advanced.d.ts +1 -9
- package/modules/annotations-advanced.js +21 -1
- package/modules/annotations-advanced.src.d.ts +1 -9
- package/modules/annotations-advanced.src.js +888 -794
- package/modules/annotations.d.ts +1 -9
- package/modules/annotations.js +11 -1
- package/modules/annotations.src.d.ts +1 -9
- package/modules/annotations.src.js +95 -43
- package/modules/arc-diagram.d.ts +1 -9
- package/modules/arc-diagram.js +11 -1
- package/modules/arc-diagram.src.d.ts +1 -9
- package/modules/arc-diagram.src.js +3 -3
- package/modules/arrow-symbols.d.ts +1 -9
- package/modules/arrow-symbols.js +11 -1
- package/modules/arrow-symbols.src.d.ts +1 -9
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.d.ts +1 -9
- package/modules/boost-canvas.js +12 -1
- package/modules/boost-canvas.src.d.ts +1 -9
- package/modules/boost-canvas.src.js +102 -53
- package/modules/boost.d.ts +1 -9
- package/modules/boost.js +13 -1
- package/modules/boost.src.d.ts +1 -9
- package/modules/boost.src.js +107 -49
- package/modules/broken-axis.d.ts +1 -9
- package/modules/broken-axis.js +9 -1
- package/modules/broken-axis.src.d.ts +1 -9
- package/modules/broken-axis.src.js +115 -91
- package/modules/bullet.d.ts +1 -9
- package/modules/bullet.js +11 -1
- package/modules/bullet.src.d.ts +1 -9
- package/modules/bullet.src.js +1 -1
- package/modules/coloraxis.d.ts +1 -9
- package/modules/coloraxis.js +11 -1
- package/modules/coloraxis.src.d.ts +1 -9
- package/modules/coloraxis.src.js +6 -7
- package/modules/current-date-indicator.d.ts +1 -9
- package/modules/current-date-indicator.js +11 -1
- package/modules/current-date-indicator.src.d.ts +1 -9
- package/modules/current-date-indicator.src.js +1 -1
- package/modules/cylinder.d.ts +1 -9
- package/modules/cylinder.js +12 -1
- package/modules/cylinder.src.d.ts +1 -9
- package/modules/cylinder.src.js +1 -1
- package/modules/data-tools.js +11 -1
- package/modules/data-tools.src.js +542 -125
- package/modules/data.d.ts +1 -9
- package/modules/data.js +11 -1
- package/modules/data.src.d.ts +1 -9
- package/modules/data.src.js +46 -39
- package/modules/datagrouping.d.ts +1 -9
- package/modules/datagrouping.js +11 -1
- package/modules/datagrouping.src.d.ts +1 -9
- package/modules/datagrouping.src.js +1 -1
- package/modules/debugger.d.ts +1 -9
- package/modules/debugger.js +11 -1
- package/modules/debugger.src.d.ts +1 -9
- package/modules/debugger.src.js +1 -1
- package/modules/dependency-wheel.d.ts +1 -9
- package/modules/dependency-wheel.js +12 -1
- package/modules/dependency-wheel.src.d.ts +1 -9
- package/modules/dependency-wheel.src.js +3 -3
- package/modules/dotplot.d.ts +1 -9
- package/modules/dotplot.js +11 -1
- package/modules/dotplot.src.d.ts +1 -9
- package/modules/dotplot.src.js +1 -1
- package/modules/drag-panes.d.ts +1 -9
- package/modules/drag-panes.js +13 -1
- package/modules/drag-panes.src.d.ts +1 -9
- package/modules/drag-panes.src.js +1 -1
- package/modules/draggable-points.d.ts +1 -9
- package/modules/draggable-points.js +9 -1
- package/modules/draggable-points.src.d.ts +1 -9
- package/modules/draggable-points.src.js +1 -1
- package/modules/drilldown.d.ts +1 -9
- package/modules/drilldown.js +13 -1
- package/modules/drilldown.src.d.ts +1 -9
- package/modules/drilldown.src.js +4 -2
- package/modules/dumbbell.d.ts +1 -9
- package/modules/dumbbell.js +9 -1
- package/modules/dumbbell.src.d.ts +1 -9
- package/modules/dumbbell.src.js +1 -1
- package/modules/export-data.d.ts +2 -79
- package/modules/export-data.js +12 -1
- package/modules/export-data.src.d.ts +2 -79
- package/modules/export-data.src.js +997 -804
- package/modules/exporting.d.ts +35 -21
- package/modules/exporting.js +11 -1
- package/modules/exporting.src.d.ts +35 -21
- package/modules/exporting.src.js +1452 -628
- package/modules/flowmap.d.ts +1 -9
- package/modules/flowmap.js +9 -1
- package/modules/flowmap.src.d.ts +1 -9
- package/modules/flowmap.src.js +1 -1
- package/modules/full-screen.d.ts +1 -9
- package/modules/full-screen.js +12 -1
- package/modules/full-screen.src.d.ts +1 -9
- package/modules/full-screen.src.js +3 -3
- package/modules/funnel.d.ts +1 -9
- package/modules/funnel.js +11 -1
- package/modules/funnel.src.d.ts +1 -9
- package/modules/funnel.src.js +7 -3
- package/modules/funnel3d.d.ts +1 -9
- package/modules/funnel3d.js +13 -1
- package/modules/funnel3d.src.d.ts +1 -9
- package/modules/funnel3d.src.js +1 -1
- package/modules/gantt.d.ts +1 -9
- package/modules/gantt.js +31 -1
- package/modules/gantt.src.d.ts +1 -9
- package/modules/gantt.src.js +273 -230
- package/modules/geoheatmap.d.ts +1 -9
- package/modules/geoheatmap.js +9 -1
- package/modules/geoheatmap.src.d.ts +1 -9
- package/modules/geoheatmap.src.js +1 -1
- package/modules/grid-axis.d.ts +1 -9
- package/modules/grid-axis.js +11 -1
- package/modules/grid-axis.src.d.ts +1 -9
- package/modules/grid-axis.src.js +1 -1
- package/modules/heatmap.d.ts +1 -9
- package/modules/heatmap.js +19 -1
- package/modules/heatmap.src.d.ts +1 -9
- package/modules/heatmap.src.js +21 -23
- package/modules/heikinashi.d.ts +1 -9
- package/modules/heikinashi.js +12 -1
- package/modules/heikinashi.src.d.ts +1 -9
- package/modules/heikinashi.src.js +1 -1
- package/modules/histogram-bellcurve.d.ts +2 -11
- package/modules/histogram-bellcurve.js +10 -1
- package/modules/histogram-bellcurve.src.d.ts +2 -11
- package/modules/histogram-bellcurve.src.js +36 -27
- package/modules/hollowcandlestick.d.ts +1 -9
- package/modules/hollowcandlestick.js +12 -1
- package/modules/hollowcandlestick.src.d.ts +1 -9
- package/modules/hollowcandlestick.src.js +1 -1
- package/modules/item-series.d.ts +1 -9
- package/modules/item-series.js +11 -1
- package/modules/item-series.src.d.ts +1 -9
- package/modules/item-series.src.js +3 -5
- package/modules/lollipop.d.ts +1 -9
- package/modules/lollipop.js +9 -1
- package/modules/lollipop.src.d.ts +1 -9
- package/modules/lollipop.src.js +1 -1
- package/modules/map.d.ts +1 -9
- package/modules/map.js +21 -1
- package/modules/map.src.d.ts +1 -9
- package/modules/map.src.js +25 -27
- package/modules/marker-clusters.d.ts +1 -9
- package/modules/marker-clusters.js +11 -1
- package/modules/marker-clusters.src.d.ts +1 -9
- package/modules/marker-clusters.src.js +1 -1
- package/modules/mouse-wheel-zoom.d.ts +1 -9
- package/modules/mouse-wheel-zoom.js +11 -1
- package/modules/mouse-wheel-zoom.src.d.ts +1 -9
- package/modules/mouse-wheel-zoom.src.js +1 -1
- package/modules/navigator.d.ts +1 -9
- package/modules/navigator.js +11 -1
- package/modules/navigator.src.d.ts +1 -9
- package/modules/navigator.src.js +29 -29
- package/modules/networkgraph.d.ts +1 -9
- package/modules/networkgraph.js +11 -1
- package/modules/networkgraph.src.d.ts +1 -9
- package/modules/networkgraph.src.js +16 -4
- package/modules/no-data-to-display.d.ts +1 -9
- package/modules/no-data-to-display.js +12 -1
- package/modules/no-data-to-display.src.d.ts +1 -9
- package/modules/no-data-to-display.src.js +1 -1
- package/modules/non-cartesian-zoom.d.ts +9 -0
- package/modules/non-cartesian-zoom.js +11 -0
- package/modules/non-cartesian-zoom.src.d.ts +9 -0
- package/modules/non-cartesian-zoom.src.js +427 -0
- package/modules/offline-exporting.d.ts +2 -90
- package/modules/offline-exporting.js +12 -1
- package/modules/offline-exporting.src.d.ts +2 -90
- package/modules/offline-exporting.src.js +355 -3380
- package/modules/organization.d.ts +1 -9
- package/modules/organization.js +11 -1
- package/modules/organization.src.d.ts +1 -9
- package/modules/organization.src.js +3 -3
- package/modules/parallel-coordinates.d.ts +1 -9
- package/modules/parallel-coordinates.js +11 -1
- package/modules/parallel-coordinates.src.d.ts +1 -9
- package/modules/parallel-coordinates.src.js +1 -1
- package/modules/pareto.d.ts +1 -9
- package/modules/pareto.js +11 -1
- package/modules/pareto.src.d.ts +1 -9
- package/modules/pareto.src.js +1 -1
- package/modules/pathfinder.d.ts +1 -9
- package/modules/pathfinder.js +11 -1
- package/modules/pathfinder.src.d.ts +1 -9
- package/modules/pathfinder.src.js +1 -1
- package/modules/pattern-fill.d.ts +1 -9
- package/modules/pattern-fill.js +12 -1
- package/modules/pattern-fill.src.d.ts +1 -9
- package/modules/pattern-fill.src.js +1 -1
- package/modules/pictorial.d.ts +1 -9
- package/modules/pictorial.js +11 -1
- package/modules/pictorial.src.d.ts +1 -9
- package/modules/pictorial.src.js +1 -1
- package/modules/pointandfigure.d.ts +1 -9
- package/modules/pointandfigure.js +12 -1
- package/modules/pointandfigure.src.d.ts +1 -9
- package/modules/pointandfigure.src.js +1 -1
- package/modules/price-indicator.d.ts +1 -9
- package/modules/price-indicator.js +13 -1
- package/modules/price-indicator.src.d.ts +1 -9
- package/modules/price-indicator.src.js +1 -1
- package/modules/pyramid3d.d.ts +1 -9
- package/modules/pyramid3d.js +14 -1
- package/modules/pyramid3d.src.d.ts +1 -9
- package/modules/pyramid3d.src.js +1 -1
- package/modules/renko.d.ts +1 -9
- package/modules/renko.js +12 -1
- package/modules/renko.src.d.ts +1 -9
- package/modules/renko.src.js +1 -1
- package/modules/sankey.d.ts +1 -9
- package/modules/sankey.js +11 -1
- package/modules/sankey.src.d.ts +1 -9
- package/modules/sankey.src.js +3 -3
- package/modules/series-label.d.ts +1 -9
- package/modules/series-label.js +9 -1
- package/modules/series-label.src.d.ts +1 -9
- package/modules/series-label.src.js +1 -1
- package/modules/series-on-point.d.ts +1 -9
- package/modules/series-on-point.js +12 -1
- package/modules/series-on-point.src.d.ts +1 -9
- package/modules/series-on-point.src.js +6 -16
- package/modules/solid-gauge.d.ts +1 -9
- package/modules/solid-gauge.js +12 -1
- package/modules/solid-gauge.src.d.ts +1 -9
- package/modules/solid-gauge.src.js +27 -5
- package/modules/sonification.d.ts +1 -9
- package/modules/sonification.js +12 -1
- package/modules/sonification.src.d.ts +1 -9
- package/modules/sonification.src.js +45 -10
- package/modules/static-scale.d.ts +1 -9
- package/modules/static-scale.js +11 -1
- package/modules/static-scale.src.d.ts +1 -9
- package/modules/static-scale.src.js +14 -12
- package/modules/stock-tools.d.ts +1 -9
- package/modules/stock-tools.js +13 -1
- package/modules/stock-tools.src.d.ts +1 -9
- package/modules/stock-tools.src.js +37 -116
- package/modules/stock.d.ts +1 -9
- package/modules/stock.js +21 -1
- package/modules/stock.src.d.ts +1 -9
- package/modules/stock.src.js +233 -209
- package/modules/streamgraph.d.ts +1 -9
- package/modules/streamgraph.js +11 -1
- package/modules/streamgraph.src.d.ts +1 -9
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.d.ts +1 -9
- package/modules/sunburst.js +10 -1
- package/modules/sunburst.src.d.ts +1 -9
- package/modules/sunburst.src.js +9 -9
- package/modules/textpath.d.ts +1 -9
- package/modules/textpath.js +9 -1
- package/modules/textpath.src.d.ts +1 -9
- package/modules/textpath.src.js +3 -3
- package/modules/tiledwebmap.d.ts +1 -9
- package/modules/tiledwebmap.js +10 -2
- package/modules/tiledwebmap.src.d.ts +1 -9
- package/modules/tiledwebmap.src.js +1 -1
- package/modules/tilemap.d.ts +1 -9
- package/modules/tilemap.js +12 -1
- package/modules/tilemap.src.d.ts +1 -9
- package/modules/tilemap.src.js +1 -1
- package/modules/timeline.d.ts +1 -9
- package/modules/timeline.js +12 -1
- package/modules/timeline.src.d.ts +1 -9
- package/modules/timeline.src.js +1 -1
- package/modules/treegraph.d.ts +1 -9
- package/modules/treegraph.js +11 -1
- package/modules/treegraph.src.d.ts +1 -9
- package/modules/treegraph.src.js +16 -8
- package/modules/treegrid.d.ts +1 -9
- package/modules/treegrid.js +11 -1
- package/modules/treegrid.src.d.ts +1 -9
- package/modules/treegrid.src.js +190 -159
- package/modules/treemap.d.ts +1 -9
- package/modules/treemap.js +10 -1
- package/modules/treemap.src.d.ts +1 -9
- package/modules/treemap.src.js +7 -7
- package/modules/variable-pie.d.ts +1 -9
- package/modules/variable-pie.js +11 -1
- package/modules/variable-pie.src.d.ts +1 -9
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.d.ts +1 -9
- package/modules/variwide.js +11 -1
- package/modules/variwide.src.d.ts +1 -9
- package/modules/variwide.src.js +18 -13
- package/modules/vector.d.ts +1 -9
- package/modules/vector.js +11 -1
- package/modules/vector.src.d.ts +1 -9
- package/modules/vector.src.js +1 -1
- package/modules/venn.d.ts +1 -9
- package/modules/venn.js +10 -1
- package/modules/venn.src.d.ts +1 -9
- package/modules/venn.src.js +5 -3
- package/modules/windbarb.d.ts +1 -9
- package/modules/windbarb.js +11 -1
- package/modules/windbarb.src.d.ts +1 -9
- package/modules/windbarb.src.js +1 -1
- package/modules/wordcloud.d.ts +1 -9
- package/modules/wordcloud.js +10 -1
- package/modules/wordcloud.src.d.ts +1 -9
- package/modules/wordcloud.src.js +89 -12
- package/modules/xrange.d.ts +1 -9
- package/modules/xrange.js +11 -1
- package/modules/xrange.src.d.ts +1 -9
- package/modules/xrange.src.js +3 -2
- package/options/abands.d.ts +8 -0
- package/options/abands.src.d.ts +8 -0
- package/options/ao.d.ts +8 -0
- package/options/ao.src.d.ts +8 -0
- package/options/arcdiagram.d.ts +8 -0
- package/options/arcdiagram.src.d.ts +8 -0
- package/options/area.d.ts +9 -0
- package/options/area.src.d.ts +9 -0
- package/options/arearange.d.ts +9 -0
- package/options/arearange.src.d.ts +9 -0
- package/options/areaspline.d.ts +9 -0
- package/options/areaspline.src.d.ts +9 -0
- package/options/areasplinerange.d.ts +9 -0
- package/options/areasplinerange.src.d.ts +9 -0
- package/options/aroon.d.ts +8 -0
- package/options/aroon.src.d.ts +8 -0
- package/options/atr.d.ts +8 -0
- package/options/atr.src.d.ts +8 -0
- package/options/bellcurve.d.ts +8 -0
- package/options/bellcurve.src.d.ts +8 -0
- package/options/boxplot.d.ts +8 -0
- package/options/boxplot.src.d.ts +8 -0
- package/options/bullet.d.ts +8 -0
- package/options/bullet.src.d.ts +8 -0
- package/options/chaikin.d.ts +8 -0
- package/options/chaikin.src.d.ts +8 -0
- package/options/cmo.d.ts +8 -0
- package/options/cmo.src.d.ts +8 -0
- package/options/columnpyramid.d.ts +9 -0
- package/options/columnpyramid.src.d.ts +9 -0
- package/options/columnrange.d.ts +9 -0
- package/options/columnrange.src.d.ts +9 -0
- package/options/dmi.d.ts +8 -0
- package/options/dmi.src.d.ts +8 -0
- package/options/errorbar.d.ts +8 -0
- package/options/errorbar.src.d.ts +8 -0
- package/options/flags.d.ts +8 -0
- package/options/flags.src.d.ts +8 -0
- package/options/funnel.d.ts +8 -0
- package/options/funnel.src.d.ts +8 -0
- package/options/gauge.d.ts +8 -0
- package/options/gauge.src.d.ts +8 -0
- package/options/item.d.ts +8 -0
- package/options/item.src.d.ts +8 -0
- package/options/keltnerchannels.d.ts +8 -0
- package/options/keltnerchannels.src.d.ts +8 -0
- package/options/line.d.ts +9 -0
- package/options/line.src.d.ts +9 -0
- package/options/linearregressionangle.d.ts +8 -0
- package/options/linearregressionangle.src.d.ts +8 -0
- package/options/linearregressionintercept.d.ts +8 -0
- package/options/linearregressionintercept.src.d.ts +8 -0
- package/options/map.d.ts +8 -0
- package/options/map.src.d.ts +8 -0
- package/options/mfi.d.ts +8 -0
- package/options/mfi.src.d.ts +8 -0
- package/options/natr.d.ts +8 -0
- package/options/natr.src.d.ts +8 -0
- package/options/ohlc.d.ts +8 -0
- package/options/ohlc.src.d.ts +8 -0
- package/options/packedbubble.d.ts +8 -0
- package/options/packedbubble.src.d.ts +8 -0
- package/options/pictorial.d.ts +8 -0
- package/options/pictorial.src.d.ts +8 -0
- package/options/pointandfigure.d.ts +8 -0
- package/options/pointandfigure.src.d.ts +8 -0
- package/options/polygon.d.ts +9 -0
- package/options/polygon.src.d.ts +9 -0
- package/options/ppo.d.ts +8 -0
- package/options/ppo.src.d.ts +8 -0
- package/options/psar.d.ts +8 -0
- package/options/psar.src.d.ts +8 -0
- package/options/pyramid.d.ts +8 -0
- package/options/pyramid.src.d.ts +8 -0
- package/options/renko.d.ts +8 -0
- package/options/renko.src.d.ts +8 -0
- package/options/roc.d.ts +8 -0
- package/options/roc.src.d.ts +8 -0
- package/options/sankey.d.ts +8 -0
- package/options/sankey.src.d.ts +8 -0
- package/options/scatter.d.ts +9 -0
- package/options/scatter.src.d.ts +9 -0
- package/options/series.d.ts +9 -0
- package/options/series.src.d.ts +9 -0
- package/options/sma.d.ts +8 -0
- package/options/sma.src.d.ts +8 -0
- package/options/solidgauge.d.ts +14 -0
- package/options/solidgauge.src.d.ts +14 -0
- package/options/spline.d.ts +9 -0
- package/options/spline.src.d.ts +9 -0
- package/options/stochastic.d.ts +8 -0
- package/options/stochastic.src.d.ts +8 -0
- package/options/tema.d.ts +8 -0
- package/options/tema.src.d.ts +8 -0
- package/options/tiledwebmap.d.ts +8 -0
- package/options/tiledwebmap.src.d.ts +8 -0
- package/options/timeline.d.ts +8 -0
- package/options/timeline.src.d.ts +8 -0
- package/options/treegraph.d.ts +8 -0
- package/options/treegraph.src.d.ts +8 -0
- package/options/trix.d.ts +8 -0
- package/options/trix.src.d.ts +8 -0
- package/options/variablepie.d.ts +8 -0
- package/options/variablepie.src.d.ts +8 -0
- package/options/variwide.d.ts +8 -0
- package/options/variwide.src.d.ts +8 -0
- package/options/vbp.d.ts +8 -0
- package/options/vbp.src.d.ts +8 -0
- package/options/vector.d.ts +9 -0
- package/options/vector.src.d.ts +9 -0
- package/options/venn.d.ts +8 -0
- package/options/venn.src.d.ts +8 -0
- package/options/vwap.d.ts +8 -0
- package/options/vwap.src.d.ts +8 -0
- package/options/windbarb.d.ts +9 -0
- package/options/windbarb.src.d.ts +9 -0
- package/options/wma.d.ts +8 -0
- package/options/wma.src.d.ts +8 -0
- package/options/wordcloud.d.ts +8 -0
- package/options/wordcloud.src.d.ts +8 -0
- package/options/zigzag.d.ts +8 -0
- package/options/zigzag.src.d.ts +8 -0
- package/package.json +1 -1
- package/standalone-navigator.js +11 -2
- package/standalone-navigator.src.js +312 -206
- package/themes/adaptive.d.ts +18 -0
- package/themes/adaptive.js +130 -0
- package/themes/adaptive.src.d.ts +18 -0
- package/themes/adaptive.src.js +1122 -0
- package/themes/avocado.d.ts +1 -9
- package/themes/avocado.js +9 -1
- package/themes/avocado.src.d.ts +1 -9
- package/themes/avocado.src.js +1 -1
- package/themes/brand-dark.d.ts +1 -9
- package/themes/brand-dark.js +9 -1
- package/themes/brand-dark.src.d.ts +1 -9
- package/themes/brand-dark.src.js +1 -1
- package/themes/brand-light.d.ts +1 -9
- package/themes/brand-light.js +9 -1
- package/themes/brand-light.src.d.ts +1 -9
- package/themes/brand-light.src.js +1 -1
- package/themes/dark-blue.d.ts +1 -9
- package/themes/dark-blue.js +9 -1
- package/themes/dark-blue.src.d.ts +1 -9
- package/themes/dark-blue.src.js +1 -1
- package/themes/dark-green.d.ts +1 -9
- package/themes/dark-green.js +9 -1
- package/themes/dark-green.src.d.ts +1 -9
- package/themes/dark-green.src.js +1 -1
- package/themes/dark-unica.d.ts +1 -9
- package/themes/dark-unica.js +9 -1
- package/themes/dark-unica.src.d.ts +1 -9
- package/themes/dark-unica.src.js +1 -1
- package/themes/gray.d.ts +1 -9
- package/themes/gray.js +9 -1
- package/themes/gray.src.d.ts +1 -9
- package/themes/gray.src.js +1 -1
- package/themes/grid-light.d.ts +1 -9
- package/themes/grid-light.js +9 -1
- package/themes/grid-light.src.d.ts +1 -9
- package/themes/grid-light.src.js +1 -1
- package/themes/grid.d.ts +1 -9
- package/themes/grid.js +9 -1
- package/themes/grid.src.d.ts +1 -9
- package/themes/grid.src.js +1 -1
- package/themes/high-contrast-dark.d.ts +1 -9
- package/themes/high-contrast-dark.js +9 -1
- package/themes/high-contrast-dark.src.d.ts +1 -9
- package/themes/high-contrast-dark.src.js +1 -1
- package/themes/high-contrast-light.d.ts +1 -9
- package/themes/high-contrast-light.js +9 -1
- package/themes/high-contrast-light.src.d.ts +1 -9
- package/themes/high-contrast-light.src.js +1 -1
- package/themes/sand-signika.d.ts +1 -9
- package/themes/sand-signika.js +9 -1
- package/themes/sand-signika.src.d.ts +1 -9
- package/themes/sand-signika.src.js +1 -1
- package/themes/skies.d.ts +1 -9
- package/themes/skies.js +9 -1
- package/themes/skies.src.d.ts +1 -9
- package/themes/skies.src.js +1 -1
- package/themes/sunset.d.ts +1 -9
- package/themes/sunset.js +9 -1
- package/themes/sunset.src.d.ts +1 -9
- package/themes/sunset.src.js +1 -1
package/highstock.src.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license
|
|
3
|
-
* @module highcharts/
|
|
2
|
+
* @license Highchart Stock v12.4.0 (2025-09-04)
|
|
3
|
+
* @module highcharts/highstock
|
|
4
4
|
*
|
|
5
|
-
* (c) 2009-2025
|
|
5
|
+
* (c) 2009-2025 Highsoft AS
|
|
6
6
|
*
|
|
7
7
|
* License: www.highcharts.com/license
|
|
8
8
|
*/
|
|
@@ -74,7 +74,7 @@ var Globals;
|
|
|
74
74
|
* Constants
|
|
75
75
|
*
|
|
76
76
|
* */
|
|
77
|
-
Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '12.
|
|
77
|
+
Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '12.4.0', Globals.win = (typeof window !== 'undefined' ?
|
|
78
78
|
window :
|
|
79
79
|
{}), // eslint-disable-line node/no-unsupported-features/es-builtins
|
|
80
80
|
Globals.doc = Globals.win.document, Globals.svg = !!Globals.doc?.createElementNS?.(Globals.SVG_NS, 'svg')?.createSVGRect, Globals.pageLang = Globals.doc?.documentElement?.closest('[lang]')?.lang, Globals.userAgent = Globals.win.navigator?.userAgent || '', Globals.isChrome = Globals.win.chrome, Globals.isFirefox = Globals.userAgent.indexOf('Firefox') !== -1, Globals.isMS = /(edge|msie|trident)/i.test(Globals.userAgent) && !Globals.win.opera, Globals.isSafari = !Globals.isChrome && Globals.userAgent.indexOf('Safari') !== -1, Globals.isTouchDevice = /(Mobile|Android|Windows Phone)/.test(Globals.userAgent), Globals.isWebKit = Globals.userAgent.indexOf('AppleWebKit') !== -1, Globals.deg2rad = Math.PI * 2 / 360, Globals.marginNames = [
|
|
@@ -2630,6 +2630,10 @@ const ChartDefaults = {
|
|
|
2630
2630
|
* panning action is finished, the axes will adjust to their actual
|
|
2631
2631
|
* settings.
|
|
2632
2632
|
*
|
|
2633
|
+
* **Note:** For non-cartesian series, the only supported panning type
|
|
2634
|
+
* is `xy`, as zooming in a single direction is not applicable due to
|
|
2635
|
+
* the radial nature of the coordinate system.
|
|
2636
|
+
*
|
|
2633
2637
|
* @sample {highcharts} highcharts/chart/panning-type
|
|
2634
2638
|
* Zooming and xy panning
|
|
2635
2639
|
*
|
|
@@ -2955,11 +2959,12 @@ const ChartDefaults = {
|
|
|
2955
2959
|
* others series in a stack. The shadow can be an object configuration
|
|
2956
2960
|
* containing `color`, `offsetX`, `offsetY`, `opacity` and `width`.
|
|
2957
2961
|
*
|
|
2958
|
-
* @sample highcharts/chart/seriesgroupshadow/
|
|
2962
|
+
* @sample highcharts/chart/seriesgroupshadow/
|
|
2963
|
+
* Shadow
|
|
2959
2964
|
*
|
|
2960
2965
|
* @type {boolean|Highcharts.ShadowOptionsObject}
|
|
2961
2966
|
* @default false
|
|
2962
|
-
* @apioption chart.
|
|
2967
|
+
* @apioption chart.seriesGroupShadow
|
|
2963
2968
|
*/
|
|
2964
2969
|
/**
|
|
2965
2970
|
* Whether to apply a drop shadow to the outer chart area. Requires
|
|
@@ -3169,6 +3174,11 @@ const ChartDefaults = {
|
|
|
3169
3174
|
/**
|
|
3170
3175
|
* Chart zooming options.
|
|
3171
3176
|
* @since 10.2.1
|
|
3177
|
+
*
|
|
3178
|
+
* @sample highcharts/plotoptions/sankey-node-color
|
|
3179
|
+
* Zooming in sankey series
|
|
3180
|
+
* @sample highcharts/series-treegraph/link-types
|
|
3181
|
+
* Zooming in treegraph series
|
|
3172
3182
|
*/
|
|
3173
3183
|
zooming: {
|
|
3174
3184
|
/**
|
|
@@ -3191,6 +3201,10 @@ const ChartDefaults = {
|
|
|
3191
3201
|
* Decides in what dimensions the user can zoom by dragging the mouse.
|
|
3192
3202
|
* Can be one of `x`, `y` or `xy`.
|
|
3193
3203
|
*
|
|
3204
|
+
* **Note:** For non-cartesian series, the only supported zooming type
|
|
3205
|
+
* is `xy`, as zooming in a single direction is not applicable due to
|
|
3206
|
+
* the radial nature of the coordinate system.
|
|
3207
|
+
*
|
|
3194
3208
|
* @declare Highcharts.OptionsChartZoomingTypeValue
|
|
3195
3209
|
* @type {string}
|
|
3196
3210
|
* @default {highcharts} undefined
|
|
@@ -3610,7 +3624,7 @@ class TimeBase {
|
|
|
3610
3624
|
update(options = {}) {
|
|
3611
3625
|
this.dTLCache = {};
|
|
3612
3626
|
this.options = options = TimeBase_merge(true, this.options, options);
|
|
3613
|
-
const { timezoneOffset, useUTC } = options;
|
|
3627
|
+
const { timezoneOffset, useUTC, locale } = options;
|
|
3614
3628
|
// Allow using a different Date class
|
|
3615
3629
|
this.Date = options.Date || TimeBase_win.Date || Date;
|
|
3616
3630
|
// Assign the time zone. Handle the legacy, deprecated `useUTC` option.
|
|
@@ -3630,6 +3644,10 @@ class TimeBase {
|
|
|
3630
3644
|
this.variableTimezone = timezone !== 'UTC' &&
|
|
3631
3645
|
timezone?.indexOf('Etc/GMT') !== 0;
|
|
3632
3646
|
this.timezone = timezone;
|
|
3647
|
+
// Update locale.
|
|
3648
|
+
if (this.lang && locale) {
|
|
3649
|
+
this.lang.locale = locale;
|
|
3650
|
+
}
|
|
3633
3651
|
// Assign default time formats from locale strings
|
|
3634
3652
|
['months', 'shortMonths', 'weekdays', 'shortWeekdays'].forEach((name) => {
|
|
3635
3653
|
const isMonth = /months/i.test(name), isShort = /short/.test(name), options = {
|
|
@@ -4570,6 +4588,9 @@ const defaultOptions = {
|
|
|
4570
4588
|
* setup uses `Highcharts.setOptions` to make the options apply to all
|
|
4571
4589
|
* charts in the same page.
|
|
4572
4590
|
*
|
|
4591
|
+
* Some language options, like `months` and `weekdays`, are only used
|
|
4592
|
+
* with non-locale-aware date formats.
|
|
4593
|
+
*
|
|
4573
4594
|
* ```js
|
|
4574
4595
|
* Highcharts.setOptions({
|
|
4575
4596
|
* lang: {
|
|
@@ -4619,7 +4640,7 @@ const defaultOptions = {
|
|
|
4619
4640
|
* An array containing the months names. Corresponds to the `%B` format
|
|
4620
4641
|
* in `Highcharts.dateFormat()`. Defaults to 'undefined',
|
|
4621
4642
|
* meaning the default month names are used according to the
|
|
4622
|
-
* `lang.locale`
|
|
4643
|
+
* `lang.locale` or browser settings.
|
|
4623
4644
|
*
|
|
4624
4645
|
* @type {Array<string>}
|
|
4625
4646
|
*/
|
|
@@ -4634,23 +4655,25 @@ const defaultOptions = {
|
|
|
4634
4655
|
* An array containing the months names in abbreviated form. Corresponds
|
|
4635
4656
|
* to the `%b` format in `Highcharts.dateFormat()`. Defaults to
|
|
4636
4657
|
* 'undefined', meaning the default short month names are used according
|
|
4637
|
-
* to the `lang.locale`
|
|
4658
|
+
* to the `lang.locale` or browser settings.
|
|
4638
4659
|
*
|
|
4639
4660
|
* @type {Array<string>}
|
|
4640
4661
|
*/
|
|
4641
4662
|
shortMonths: void 0,
|
|
4642
4663
|
/**
|
|
4643
|
-
* An array containing the weekday names.
|
|
4644
|
-
*
|
|
4645
|
-
*
|
|
4664
|
+
* An array containing the weekday names. Corresponds
|
|
4665
|
+
* to the `%A` format in `Highcharts.dateFormat()`. Defaults to
|
|
4666
|
+
* 'undefined', meaning the default weekday names are used according to
|
|
4667
|
+
* the `lang.locale` or browser settings.
|
|
4646
4668
|
*
|
|
4647
4669
|
* @type {Array<string>}
|
|
4648
4670
|
*/
|
|
4649
4671
|
weekdays: void 0,
|
|
4650
4672
|
/**
|
|
4651
|
-
* Short week days, starting Sunday.
|
|
4673
|
+
* Short week days, starting Sunday. Corresponds to the `%a` format in
|
|
4674
|
+
* `Highcharts.dateFormat()`. Defaults to 'undefined', meaning
|
|
4652
4675
|
* the default short weekday names are used according to the
|
|
4653
|
-
* `lang.locale`
|
|
4676
|
+
* `lang.locale` or browser settings.
|
|
4654
4677
|
*
|
|
4655
4678
|
* @sample highcharts/lang/shortweekdays/
|
|
4656
4679
|
* Finnish two-letter abbreviations
|
|
@@ -6213,6 +6236,10 @@ const defaultOptions = {
|
|
|
6213
6236
|
* @since 3.0
|
|
6214
6237
|
*/
|
|
6215
6238
|
style: {
|
|
6239
|
+
/**
|
|
6240
|
+
* @ignore
|
|
6241
|
+
*/
|
|
6242
|
+
color: "#333333" /* Palette.neutralColor80 */,
|
|
6216
6243
|
/**
|
|
6217
6244
|
* @ignore
|
|
6218
6245
|
*/
|
|
@@ -7481,7 +7508,7 @@ const isStringColor = (color) => Color_isString(color) && !!color && color !== '
|
|
|
7481
7508
|
* @name Highcharts.Color
|
|
7482
7509
|
*
|
|
7483
7510
|
* @param {Highcharts.ColorType} input
|
|
7484
|
-
* The input color
|
|
7511
|
+
* The input color.
|
|
7485
7512
|
*/
|
|
7486
7513
|
class Color {
|
|
7487
7514
|
/* *
|
|
@@ -7495,7 +7522,7 @@ class Color {
|
|
|
7495
7522
|
* @function Highcharts.Color.parse
|
|
7496
7523
|
*
|
|
7497
7524
|
* @param {Highcharts.ColorType} [input]
|
|
7498
|
-
* The input color
|
|
7525
|
+
* The input color.
|
|
7499
7526
|
*
|
|
7500
7527
|
* @return {Highcharts.Color}
|
|
7501
7528
|
* Color instance.
|
|
@@ -7755,11 +7782,7 @@ Color.None = new Color('');
|
|
|
7755
7782
|
*
|
|
7756
7783
|
* */
|
|
7757
7784
|
/**
|
|
7758
|
-
* A valid color to be parsed and handled by Highcharts.
|
|
7759
|
-
* supports hex colors like `#ffffff`, rgb colors like `rgb(255,255,255)` and
|
|
7760
|
-
* rgba colors like `rgba(255,255,255,1)`. Other colors may be supported by the
|
|
7761
|
-
* browsers and displayed correctly, but Highcharts is not able to process them
|
|
7762
|
-
* and apply concepts like opacity and brightening.
|
|
7785
|
+
* A valid color to be parsed and handled by Highcharts.
|
|
7763
7786
|
*
|
|
7764
7787
|
* @typedef {string} Highcharts.ColorString
|
|
7765
7788
|
*/
|
|
@@ -7863,7 +7886,7 @@ Color.None = new Color('');
|
|
|
7863
7886
|
* @function Highcharts.color
|
|
7864
7887
|
*
|
|
7865
7888
|
* @param {Highcharts.ColorType} input
|
|
7866
|
-
* The input color
|
|
7889
|
+
* The input color.
|
|
7867
7890
|
*
|
|
7868
7891
|
* @return {Highcharts.Color}
|
|
7869
7892
|
* Color instance
|
|
@@ -8707,7 +8730,7 @@ class AST {
|
|
|
8707
8730
|
trustedTypesPolicy.createHTML(markup) :
|
|
8708
8731
|
markup, 'text/html');
|
|
8709
8732
|
}
|
|
8710
|
-
catch
|
|
8733
|
+
catch {
|
|
8711
8734
|
// There are two cases where this fails:
|
|
8712
8735
|
// 1. IE9 and PhantomJS, where the DOMParser only supports parsing
|
|
8713
8736
|
// XML
|
|
@@ -8800,9 +8823,9 @@ AST.allowedAttributes = [
|
|
|
8800
8823
|
'cx',
|
|
8801
8824
|
'cy',
|
|
8802
8825
|
'd',
|
|
8826
|
+
'disabled',
|
|
8803
8827
|
'dx',
|
|
8804
8828
|
'dy',
|
|
8805
|
-
'disabled',
|
|
8806
8829
|
'fill',
|
|
8807
8830
|
'filterUnits',
|
|
8808
8831
|
'flood-color',
|
|
@@ -8826,22 +8849,22 @@ AST.allowedAttributes = [
|
|
|
8826
8849
|
'radius',
|
|
8827
8850
|
'refX',
|
|
8828
8851
|
'refY',
|
|
8852
|
+
'result',
|
|
8829
8853
|
'role',
|
|
8854
|
+
'rowspan',
|
|
8830
8855
|
'scope',
|
|
8831
8856
|
'slope',
|
|
8832
8857
|
'src',
|
|
8833
8858
|
'startOffset',
|
|
8834
8859
|
'stdDeviation',
|
|
8835
|
-
'stroke',
|
|
8836
8860
|
'stroke-linecap',
|
|
8837
8861
|
'stroke-width',
|
|
8862
|
+
'stroke',
|
|
8838
8863
|
'style',
|
|
8839
|
-
'tableValues',
|
|
8840
|
-
'result',
|
|
8841
|
-
'rowspan',
|
|
8842
8864
|
'summary',
|
|
8843
|
-
'target',
|
|
8844
8865
|
'tabindex',
|
|
8866
|
+
'tableValues',
|
|
8867
|
+
'target',
|
|
8845
8868
|
'text-align',
|
|
8846
8869
|
'text-anchor',
|
|
8847
8870
|
'textAnchor',
|
|
@@ -8898,6 +8921,7 @@ AST.allowedReferences = [
|
|
|
8898
8921
|
* @type {Array<string>}
|
|
8899
8922
|
*/
|
|
8900
8923
|
AST.allowedTags = [
|
|
8924
|
+
'#text',
|
|
8901
8925
|
'a',
|
|
8902
8926
|
'abbr',
|
|
8903
8927
|
'b',
|
|
@@ -8922,10 +8946,10 @@ AST.allowedTags = [
|
|
|
8922
8946
|
'feFuncG',
|
|
8923
8947
|
'feFuncR',
|
|
8924
8948
|
'feGaussianBlur',
|
|
8925
|
-
'feMorphology',
|
|
8926
|
-
'feOffset',
|
|
8927
8949
|
'feMerge',
|
|
8928
8950
|
'feMergeNode',
|
|
8951
|
+
'feMorphology',
|
|
8952
|
+
'feOffset',
|
|
8929
8953
|
'filter',
|
|
8930
8954
|
'h1',
|
|
8931
8955
|
'h2',
|
|
@@ -8954,18 +8978,17 @@ AST.allowedTags = [
|
|
|
8954
8978
|
'sup',
|
|
8955
8979
|
'svg',
|
|
8956
8980
|
'table',
|
|
8981
|
+
'tbody',
|
|
8982
|
+
'td',
|
|
8957
8983
|
'text',
|
|
8958
8984
|
'textPath',
|
|
8985
|
+
'th',
|
|
8959
8986
|
'thead',
|
|
8960
8987
|
'title',
|
|
8961
|
-
'tbody',
|
|
8962
|
-
'tspan',
|
|
8963
|
-
'td',
|
|
8964
|
-
'th',
|
|
8965
8988
|
'tr',
|
|
8989
|
+
'tspan',
|
|
8966
8990
|
'u',
|
|
8967
|
-
'ul'
|
|
8968
|
-
'#text'
|
|
8991
|
+
'ul'
|
|
8969
8992
|
];
|
|
8970
8993
|
AST.emptyHTML = emptyHTML;
|
|
8971
8994
|
/**
|
|
@@ -9161,7 +9184,7 @@ function format(str = '', ctx, owner) {
|
|
|
9161
9184
|
// The sub expression regex is the same as the top expression regex,
|
|
9162
9185
|
// but except parens and block helpers (#), and surrounded by parens
|
|
9163
9186
|
// instead of curly brackets.
|
|
9164
|
-
subRegex = /\(([a-zA-Z\u00C0-\u017F\d:\.,;\-\/<>\[\]%_@+"'= ]+)\)/g, matches = [], floatRegex = /f$/, decRegex = /\.(\d)/, lang = owner?.options?.lang || Templating_defaultOptions.lang, time = owner?.time || Templating_defaultTime, numberFormatter = owner?.numberFormatter || numberFormat;
|
|
9187
|
+
subRegex = /\(([a-zA-Z\u00C0-\u017F\d:\.,;\-\/<>\[\]%_@+"'= ]+)\)/g, matches = [], floatRegex = /f$/, decRegex = /\.(\d)/, lang = owner?.options?.lang || Templating_defaultOptions.lang, time = owner?.time || Templating_defaultTime, numberFormatter = owner?.numberFormatter || numberFormat.bind(owner);
|
|
9165
9188
|
/*
|
|
9166
9189
|
* Get a literal or variable value inside a template expression. May be
|
|
9167
9190
|
* extended with other types like string or null if needed, but keep it
|
|
@@ -9296,9 +9319,11 @@ function format(str = '', ctx, owner) {
|
|
|
9296
9319
|
[expression] : expression.split(':');
|
|
9297
9320
|
replacement = resolveProperty(valueAndFormat.shift() || '');
|
|
9298
9321
|
// Format the replacement
|
|
9299
|
-
|
|
9322
|
+
const isFloat = replacement % 1 !== 0;
|
|
9323
|
+
if (typeof replacement === 'number' &&
|
|
9324
|
+
(valueAndFormat.length || isFloat)) {
|
|
9300
9325
|
const segment = valueAndFormat.join(':');
|
|
9301
|
-
if (floatRegex.test(segment)) { // Float
|
|
9326
|
+
if (floatRegex.test(segment) || isFloat) { // Float
|
|
9302
9327
|
const decimals = parseInt((segment.match(decRegex) || ['', '-1'])[1], 10);
|
|
9303
9328
|
if (replacement !== null) {
|
|
9304
9329
|
replacement = numberFormatter(replacement, decimals, lang.decimalPoint, segment.indexOf(',') > -1 ? lang.thousandsSep : '');
|
|
@@ -9393,8 +9418,7 @@ function numberFormat(number, decimals, decimalPoint, thousandsSep) {
|
|
|
9393
9418
|
options.useGrouping = false;
|
|
9394
9419
|
}
|
|
9395
9420
|
const hasSeparators = thousandsSep || decimalPoint, locale = hasSeparators ?
|
|
9396
|
-
'en' :
|
|
9397
|
-
(this?.locale || lang.locale || Templating_pageLang), cacheKey = JSON.stringify(options) + locale, nf = numberFormatCache[cacheKey] ?? (numberFormatCache[cacheKey] = new Intl.NumberFormat(locale, options));
|
|
9421
|
+
'en' : (this?.locale || lang.locale || Templating_pageLang), cacheKey = JSON.stringify(options) + locale, nf = numberFormatCache[cacheKey] ?? (numberFormatCache[cacheKey] = new Intl.NumberFormat(locale, options));
|
|
9398
9422
|
ret = nf.format(number);
|
|
9399
9423
|
// If thousandsSep or decimalPoint are set, fall back to using English
|
|
9400
9424
|
// format with string replacement for the separators.
|
|
@@ -10718,8 +10742,8 @@ class SVGElement {
|
|
|
10718
10742
|
toggleTextShadowShim('');
|
|
10719
10743
|
}
|
|
10720
10744
|
}
|
|
10721
|
-
catch
|
|
10722
|
-
|
|
10745
|
+
catch {
|
|
10746
|
+
// Ignore error
|
|
10723
10747
|
}
|
|
10724
10748
|
// If the bBox is not set, the try-catch block above failed. The
|
|
10725
10749
|
// other condition is for Opera that returns a width of
|
|
@@ -11624,7 +11648,8 @@ class SVGLabel extends SVG_SVGElement {
|
|
|
11624
11648
|
* Constructor
|
|
11625
11649
|
*
|
|
11626
11650
|
* */
|
|
11627
|
-
constructor(renderer, str, x, y, shape,
|
|
11651
|
+
constructor(renderer, str, x, y, shape, // @todo (SymbolKey|string),
|
|
11652
|
+
anchorX, anchorY, useHTML, baseline, className) {
|
|
11628
11653
|
super(renderer, 'g');
|
|
11629
11654
|
this.paddingLeftSetter = this.paddingSetter;
|
|
11630
11655
|
this.paddingRightSetter = this.paddingSetter;
|
|
@@ -11957,10 +11982,18 @@ class SVGLabel extends SVG_SVGElement {
|
|
|
11957
11982
|
// Force animation even when setting to the same value (#7898)
|
|
11958
11983
|
this['forceAnimate:x'] = true;
|
|
11959
11984
|
}
|
|
11985
|
+
if (this.anchorX) {
|
|
11986
|
+
// #22907, force anchorX to animate after x set
|
|
11987
|
+
this['forceAnimate:anchorX'] = true;
|
|
11988
|
+
}
|
|
11960
11989
|
this.xSetting = Math.round(value);
|
|
11961
11990
|
this.attr('translateX', this.xSetting);
|
|
11962
11991
|
}
|
|
11963
11992
|
ySetter(value) {
|
|
11993
|
+
if (this.anchorY) {
|
|
11994
|
+
// #22907, force anchorY to animate after y set
|
|
11995
|
+
this['forceAnimate:anchorY'] = true;
|
|
11996
|
+
}
|
|
11964
11997
|
this.ySetting = this.y = Math.round(value);
|
|
11965
11998
|
this.attr('translateY', this.ySetting);
|
|
11966
11999
|
}
|
|
@@ -12627,8 +12660,8 @@ class TextBuilder {
|
|
|
12627
12660
|
lengths[end] = startAt +
|
|
12628
12661
|
parentNode.getSubStringLength(0, words ? end + 1 : end);
|
|
12629
12662
|
}
|
|
12630
|
-
catch
|
|
12631
|
-
|
|
12663
|
+
catch {
|
|
12664
|
+
// Ignore error
|
|
12632
12665
|
}
|
|
12633
12666
|
}
|
|
12634
12667
|
}
|
|
@@ -12880,7 +12913,7 @@ class SVGRenderer {
|
|
|
12880
12913
|
this.url = this.getReferenceURL();
|
|
12881
12914
|
// Add description
|
|
12882
12915
|
const desc = this.createElement('desc').add();
|
|
12883
|
-
desc.element.appendChild(SVGRenderer_doc.createTextNode('Created with Highcharts 12.
|
|
12916
|
+
desc.element.appendChild(SVGRenderer_doc.createTextNode('Created with Highcharts 12.4.0'));
|
|
12884
12917
|
this.defs = this.createElement('defs').add();
|
|
12885
12918
|
this.allowHTML = allowHTML;
|
|
12886
12919
|
this.forExport = forExport;
|
|
@@ -13216,6 +13249,9 @@ class SVGRenderer {
|
|
|
13216
13249
|
* The contrast color, either `#000000` or `#FFFFFF`.
|
|
13217
13250
|
*/
|
|
13218
13251
|
getContrast(color) {
|
|
13252
|
+
if (color === 'transparent') {
|
|
13253
|
+
return '#000000';
|
|
13254
|
+
}
|
|
13219
13255
|
// #6216, #17273
|
|
13220
13256
|
const rgba256 = Color_Color.parse(color).rgba,
|
|
13221
13257
|
// For each rgb channel, compute the luminosity based on all
|
|
@@ -14016,15 +14052,15 @@ class SVGRenderer {
|
|
|
14016
14052
|
*
|
|
14017
14053
|
* @function Highcharts.SVGRenderer#fontMetrics
|
|
14018
14054
|
*
|
|
14019
|
-
* @param {Highcharts.SVGElement|Highcharts.SVGDOMElement|number}
|
|
14020
|
-
*
|
|
14021
|
-
*
|
|
14055
|
+
* @param {Highcharts.SVGElement|Highcharts.SVGDOMElement|number} ref
|
|
14056
|
+
* The element to inspect for a current font size. If a number is given,
|
|
14057
|
+
* it's used as a fall back for direct font size in pixels.
|
|
14022
14058
|
*
|
|
14023
14059
|
* @return {Highcharts.FontMetricsObject}
|
|
14024
|
-
*
|
|
14060
|
+
* The font metrics.
|
|
14025
14061
|
*/
|
|
14026
|
-
fontMetrics(
|
|
14027
|
-
const f = SVGRenderer_pInt(SVG_SVGElement.prototype.getStyle.call(
|
|
14062
|
+
fontMetrics(ref) {
|
|
14063
|
+
const f = SVGRenderer_isNumber(ref) ? ref : SVGRenderer_pInt((SVG_SVGElement.prototype.getStyle.call(ref, 'font-size') || 0));
|
|
14028
14064
|
// Empirical values found by comparing font size and bounding box
|
|
14029
14065
|
// height. Applies to the default font family.
|
|
14030
14066
|
// https://jsfiddle.net/highcharts/7xvn7/
|
|
@@ -14637,10 +14673,10 @@ const { attr: HTMLElement_attr, css: HTMLElement_css, createElement: HTMLElement
|
|
|
14637
14673
|
* @private
|
|
14638
14674
|
*/
|
|
14639
14675
|
function commonSetter(value, key, elem) {
|
|
14640
|
-
const style = this.div?.style
|
|
14676
|
+
const style = this.div?.style;
|
|
14641
14677
|
SVG_SVGElement.prototype[`${key}Setter`].call(this, value, key, elem);
|
|
14642
14678
|
if (style) {
|
|
14643
|
-
style[key] = value;
|
|
14679
|
+
elem.style[key] = style[key] = value;
|
|
14644
14680
|
}
|
|
14645
14681
|
}
|
|
14646
14682
|
/**
|
|
@@ -14685,6 +14721,10 @@ const decorateSVGGroup = (g, container) => {
|
|
|
14685
14721
|
div.style[key === 'translateX' ? 'left' : 'top'] = `${value}px`;
|
|
14686
14722
|
g.doTransform = true;
|
|
14687
14723
|
};
|
|
14724
|
+
g.scaleXSetter = g.scaleYSetter = (value, key) => {
|
|
14725
|
+
g[key] = value;
|
|
14726
|
+
g.doTransform = true;
|
|
14727
|
+
};
|
|
14688
14728
|
g.opacitySetter = g.visibilitySetter = commonSetter;
|
|
14689
14729
|
// Extend the parent group's css function by updating the parallel div
|
|
14690
14730
|
// counterpart with the same style.
|
|
@@ -14879,7 +14919,8 @@ class HTMLElement extends SVG_SVGElement {
|
|
|
14879
14919
|
// Calling offsetWidth affects rendering time as it forces layout
|
|
14880
14920
|
// (#7656).
|
|
14881
14921
|
if (textWidth !== oldTextWidth) { // #983, #1254
|
|
14882
|
-
const textPxLength = getTextPxLength(), textWidthNum = textWidth || 0, willOverWrap =
|
|
14922
|
+
const textPxLength = getTextPxLength(), textWidthNum = textWidth || 0, willOverWrap = !renderer.styledMode &&
|
|
14923
|
+
element.style.textOverflow === '' &&
|
|
14883
14924
|
element.style.webkitLineClamp;
|
|
14884
14925
|
if ((textWidthNum > oldTextWidth ||
|
|
14885
14926
|
textPxLength > textWidthNum ||
|
|
@@ -15772,14 +15813,6 @@ var AxisDefaults;
|
|
|
15772
15813
|
* @context Highcharts.Axis
|
|
15773
15814
|
* @apioption xAxis.events.pointInBreak
|
|
15774
15815
|
*/
|
|
15775
|
-
/**
|
|
15776
|
-
* An event fired when a point is outside a break after zoom.
|
|
15777
|
-
*
|
|
15778
|
-
* @type {Highcharts.AxisPointBreakEventCallbackFunction}
|
|
15779
|
-
* @product highcharts highstock gantt
|
|
15780
|
-
* @context Highcharts.Axis
|
|
15781
|
-
* @apioption xAxis.events.pointBreakOut
|
|
15782
|
-
*/
|
|
15783
15816
|
/**
|
|
15784
15817
|
* Fires when the minimum and maximum is set for the axis, either by
|
|
15785
15818
|
* calling the `.setExtremes()` method or by selecting an area in the
|
|
@@ -16850,6 +16883,10 @@ var AxisDefaults;
|
|
|
16850
16883
|
* overrides the default behaviour of [tickPixelInterval](
|
|
16851
16884
|
* #xAxis.tickPixelInterval) and [tickInterval](#xAxis.tickInterval).
|
|
16852
16885
|
*
|
|
16886
|
+
* Note: When working with date-time axes, be aware of time zone
|
|
16887
|
+
* handling. See the [documentation on time options](https://www.highcharts.com/docs/chart-concepts/axes#datetime)
|
|
16888
|
+
* for best practices.
|
|
16889
|
+
*
|
|
16853
16890
|
* @see [tickPositioner](#xAxis.tickPositioner)
|
|
16854
16891
|
*
|
|
16855
16892
|
* @sample {highcharts} highcharts/xaxis/tickpositions-tickpositioner/
|
|
@@ -17937,6 +17974,7 @@ var AxisDefaults;
|
|
|
17937
17974
|
* @default {highcharts} Values
|
|
17938
17975
|
* @default {highstock} undefined
|
|
17939
17976
|
* @product highcharts highstock gantt
|
|
17977
|
+
* @apioption yAxis.title.text
|
|
17940
17978
|
*/
|
|
17941
17979
|
},
|
|
17942
17980
|
/**
|
|
@@ -18307,7 +18345,7 @@ class Tick {
|
|
|
18307
18345
|
// position, use that. If not, use the general format.
|
|
18308
18346
|
if (axis.dateTime) {
|
|
18309
18347
|
if (tickPositionInfo) {
|
|
18310
|
-
dateTimeLabelFormats = chart.time.resolveDTLFormat(options.dateTimeLabelFormats[(!options.grid &&
|
|
18348
|
+
dateTimeLabelFormats = chart.time.resolveDTLFormat(options.dateTimeLabelFormats[(!options.grid?.enabled &&
|
|
18311
18349
|
tickPositionInfo.higherRanks[pos]) ||
|
|
18312
18350
|
tickPositionInfo.unitName]);
|
|
18313
18351
|
dateTimeLabelFormat = dateTimeLabelFormats.main;
|
|
@@ -19426,7 +19464,7 @@ class Axis {
|
|
|
19426
19464
|
}
|
|
19427
19465
|
const minPixelPadding = axis.minPixelPadding, doPostTranslate = (axis.isOrdinal ||
|
|
19428
19466
|
axis.brokenAxis?.hasBreaks ||
|
|
19429
|
-
(axis.logarithmic && handleLog)) && axis.lin2val;
|
|
19467
|
+
(axis.logarithmic && handleLog)) && !!axis.lin2val;
|
|
19430
19468
|
let sign = 1, cvsOffset = 0, localA = old && axis.old ? axis.old.transA : axis.transA, returnValue = 0;
|
|
19431
19469
|
if (!localA) {
|
|
19432
19470
|
localA = axis.transA;
|
|
@@ -20988,7 +21026,8 @@ class Axis {
|
|
|
20988
21026
|
if (cssWidth !== void 0) {
|
|
20989
21027
|
return parseInt(String(cssWidth), 10);
|
|
20990
21028
|
}
|
|
20991
|
-
|
|
21029
|
+
// Skip marginLeft for opposite axis to avoid label cutoff, #22821
|
|
21030
|
+
if (!this.opposite && marginLeft) {
|
|
20992
21031
|
return marginLeft - chart.spacing[3];
|
|
20993
21032
|
}
|
|
20994
21033
|
}
|
|
@@ -21703,7 +21742,7 @@ class Axis {
|
|
|
21703
21742
|
axis.plotLinesAndBandsGroups[plotGroup].destroy();
|
|
21704
21743
|
}
|
|
21705
21744
|
// Delete all properties and fall back to the prototype.
|
|
21706
|
-
Axis_objectEach(axis, function (
|
|
21745
|
+
Axis_objectEach(axis, function (_val, key) {
|
|
21707
21746
|
if (axis.getKeepProps().indexOf(key) === -1) {
|
|
21708
21747
|
delete axis[key];
|
|
21709
21748
|
}
|
|
@@ -22986,7 +23025,7 @@ class PlotLineOrBand {
|
|
|
22986
23025
|
// Common for lines and bands. Add events only if they were not added
|
|
22987
23026
|
// before.
|
|
22988
23027
|
if (!this.eventsAdded && events) {
|
|
22989
|
-
PlotLineOrBand_objectEach(events, (
|
|
23028
|
+
PlotLineOrBand_objectEach(events, (_event, eventType) => {
|
|
22990
23029
|
svgElem?.on(eventType, (e) => {
|
|
22991
23030
|
events[eventType].apply(this, [e]);
|
|
22992
23031
|
});
|
|
@@ -23060,6 +23099,11 @@ class PlotLineOrBand {
|
|
|
23060
23099
|
});
|
|
23061
23100
|
if (!axis.chart.styledMode) {
|
|
23062
23101
|
label.css(PlotLineOrBand_merge({
|
|
23102
|
+
// To allow theming, and in lack of a general place to set
|
|
23103
|
+
// default options for plot lines and bands, default to the
|
|
23104
|
+
// title color. If we expose the palette, we should use that
|
|
23105
|
+
// instead.
|
|
23106
|
+
color: axis.chart.options.title?.style?.color,
|
|
23063
23107
|
fontSize: '0.8em',
|
|
23064
23108
|
textOverflow: (isBand && !inside) ? '' : 'ellipsis'
|
|
23065
23109
|
}, optionsLabel.style));
|
|
@@ -23592,7 +23636,7 @@ class PlotLineOrBand {
|
|
|
23592
23636
|
* @apioption xAxis.plotLines.zIndex
|
|
23593
23637
|
*/
|
|
23594
23638
|
/**
|
|
23595
|
-
* Text labels for the plot
|
|
23639
|
+
* Text labels for the plot lines
|
|
23596
23640
|
*
|
|
23597
23641
|
* @apioption xAxis.plotLines.label
|
|
23598
23642
|
*/
|
|
@@ -23610,6 +23654,14 @@ class PlotLineOrBand {
|
|
|
23610
23654
|
* @since 2.1
|
|
23611
23655
|
* @apioption xAxis.plotLines.label.align
|
|
23612
23656
|
*/
|
|
23657
|
+
/**
|
|
23658
|
+
* Whether or not the label can be hidden if it overlaps with another label.
|
|
23659
|
+
*
|
|
23660
|
+
* @type {boolean}
|
|
23661
|
+
* @default undefined
|
|
23662
|
+
* @since 11.4.8
|
|
23663
|
+
* @apioption xAxis.plotBands.label.allowOverlap
|
|
23664
|
+
*/
|
|
23613
23665
|
/**
|
|
23614
23666
|
* Whether to hide labels that are outside the plot area.
|
|
23615
23667
|
*
|
|
@@ -23987,7 +24039,9 @@ class Tooltip {
|
|
|
23987
24039
|
// Use the average position for multiple points
|
|
23988
24040
|
ret = [chartX - plotLeft, chartY - plotTop];
|
|
23989
24041
|
}
|
|
23990
|
-
|
|
24042
|
+
const params = { point: points[0], ret };
|
|
24043
|
+
Tooltip_fireEvent(this, 'getAnchor', params);
|
|
24044
|
+
return params.ret.map(Math.round);
|
|
23991
24045
|
}
|
|
23992
24046
|
/**
|
|
23993
24047
|
* Get the CSS class names for the tooltip's label. Styles the label
|
|
@@ -25264,6 +25318,15 @@ class Point {
|
|
|
25264
25318
|
* @name Highcharts.Point#shapeArgs
|
|
25265
25319
|
* @type {Readonly<Highcharts.SVGAttributes>|undefined}
|
|
25266
25320
|
*/
|
|
25321
|
+
/**
|
|
25322
|
+
* Defines the tooltip's position for a data point in a chart. It is an
|
|
25323
|
+
* array of numbers representing the coordinates for the tooltip's
|
|
25324
|
+
* placement, allowing for precise control over its location.
|
|
25325
|
+
*
|
|
25326
|
+
* @readonly
|
|
25327
|
+
* @name Highcharts.Point#tooltipPos
|
|
25328
|
+
* @type {Readonly<Array<number>>|undefined}
|
|
25329
|
+
*/
|
|
25267
25330
|
/**
|
|
25268
25331
|
* The total of values in either a stack for stacked series, or a pie in a
|
|
25269
25332
|
* pie series.
|
|
@@ -26549,17 +26612,20 @@ class Pointer {
|
|
|
26549
26612
|
activeSeries.push.apply(activeSeries, this.chart.series.filter((otherSeries) => otherSeries.markerGroup === series.markerGroup));
|
|
26550
26613
|
}
|
|
26551
26614
|
});
|
|
26552
|
-
|
|
26553
|
-
|
|
26615
|
+
for (const series of this.chart.series) {
|
|
26616
|
+
const seriesOptions = series.options;
|
|
26617
|
+
if (seriesOptions.states?.inactive?.enabled === false) {
|
|
26618
|
+
continue;
|
|
26619
|
+
}
|
|
26554
26620
|
if (activeSeries.indexOf(series) === -1) {
|
|
26555
26621
|
// Inactive series
|
|
26556
26622
|
series.setState('inactive', true);
|
|
26557
26623
|
}
|
|
26558
|
-
else if (
|
|
26624
|
+
else if (seriesOptions.inactiveOtherPoints) {
|
|
26559
26625
|
// Active series, but other points should be inactivated
|
|
26560
26626
|
series.setAllPointsToState('inactive');
|
|
26561
26627
|
}
|
|
26562
|
-
}
|
|
26628
|
+
}
|
|
26563
26629
|
}
|
|
26564
26630
|
/**
|
|
26565
26631
|
* Destroys the Pointer object and disconnects DOM events.
|
|
@@ -26659,8 +26725,7 @@ class Pointer {
|
|
|
26659
26725
|
});
|
|
26660
26726
|
const { shapeType, attrs } = this.getSelectionMarkerAttrs(chartX, chartY);
|
|
26661
26727
|
// Make a selection
|
|
26662
|
-
if (
|
|
26663
|
-
this.hasZoom &&
|
|
26728
|
+
if (this.hasZoom &&
|
|
26664
26729
|
clickedInside &&
|
|
26665
26730
|
!panKeyPressed) {
|
|
26666
26731
|
if (!selectionMarker) {
|
|
@@ -26773,6 +26838,7 @@ class Pointer {
|
|
|
26773
26838
|
chart.mouseIsDown = false;
|
|
26774
26839
|
this.hasDragged = 0;
|
|
26775
26840
|
this.pinchDown = [];
|
|
26841
|
+
this.hasPinchMoved = false;
|
|
26776
26842
|
}
|
|
26777
26843
|
}
|
|
26778
26844
|
/**
|
|
@@ -27246,7 +27312,7 @@ class Pointer {
|
|
|
27246
27312
|
this.drag(pEvt);
|
|
27247
27313
|
}
|
|
27248
27314
|
// Show the tooltip and run mouse over events (#977)
|
|
27249
|
-
if (!chart.openMenu &&
|
|
27315
|
+
if (!chart.exporting?.openMenu &&
|
|
27250
27316
|
(this.inClass(pEvt.target, 'highcharts-tracker') ||
|
|
27251
27317
|
chart.isInsidePlot(pEvt.chartX - chart.plotLeft, pEvt.chartY - chart.plotTop, {
|
|
27252
27318
|
visiblePlotOnly: true
|
|
@@ -27322,6 +27388,11 @@ class Pointer {
|
|
|
27322
27388
|
* @function Highcharts.Pointer#onDocumentMouseUp
|
|
27323
27389
|
*/
|
|
27324
27390
|
onDocumentMouseUp(e) {
|
|
27391
|
+
// #17852, IOS devices sometimes reverts back to previous point when
|
|
27392
|
+
// dragging between points
|
|
27393
|
+
if (e?.touches && this.hasPinchMoved) {
|
|
27394
|
+
e?.preventDefault?.();
|
|
27395
|
+
}
|
|
27325
27396
|
Pointer_charts[Pointer_pick(Pointer.hoverChartIndex, -1)]
|
|
27326
27397
|
?.pointer
|
|
27327
27398
|
?.drop(e);
|
|
@@ -27865,7 +27936,7 @@ class Pointer {
|
|
|
27865
27936
|
isInside = chart.isInsidePlot(e.chartX - chart.plotLeft, e.chartY - chart.plotTop, {
|
|
27866
27937
|
visiblePlotOnly: true
|
|
27867
27938
|
});
|
|
27868
|
-
if (isInside && !chart.openMenu) {
|
|
27939
|
+
if (isInside && !chart.exporting?.openMenu) {
|
|
27869
27940
|
// Run mouse events and display tooltip etc
|
|
27870
27941
|
if (start) {
|
|
27871
27942
|
this.runPointActions(e);
|
|
@@ -27877,7 +27948,7 @@ class Pointer {
|
|
|
27877
27948
|
// checking how much it moved, and cancelling on small
|
|
27878
27949
|
// distances. #3450. Tested and still relevant as of 2024.
|
|
27879
27950
|
if (e.type === 'touchmove') {
|
|
27880
|
-
hasMoved = pinchDown[0] ? // #5266
|
|
27951
|
+
this.hasPinchMoved = hasMoved = pinchDown[0] ? // #5266
|
|
27881
27952
|
(Math.pow(pinchDown[0].chartX - e.chartX, 2) +
|
|
27882
27953
|
Math.pow(pinchDown[0].chartY - e.chartY, 2)) >= 16 :
|
|
27883
27954
|
false;
|
|
@@ -30805,9 +30876,7 @@ const seriesDefaults = {
|
|
|
30805
30876
|
size: 10,
|
|
30806
30877
|
/**
|
|
30807
30878
|
* Opacity for the halo unless a specific fill is overridden
|
|
30808
|
-
* using the `attributes` setting.
|
|
30809
|
-
* only able to apply opacity to colors of hex or rgb(a)
|
|
30810
|
-
* formats.
|
|
30879
|
+
* using the `attributes` setting.
|
|
30811
30880
|
*
|
|
30812
30881
|
* @since 4.0
|
|
30813
30882
|
* @product highcharts highstock
|
|
@@ -31120,6 +31189,12 @@ const seriesDefaults = {
|
|
|
31120
31189
|
*
|
|
31121
31190
|
* */
|
|
31122
31191
|
|
|
31192
|
+
/* *
|
|
31193
|
+
*
|
|
31194
|
+
* Imports
|
|
31195
|
+
*
|
|
31196
|
+
* */
|
|
31197
|
+
|
|
31123
31198
|
|
|
31124
31199
|
|
|
31125
31200
|
const { defaultOptions: SeriesRegistry_defaultOptions } = Defaults;
|
|
@@ -31203,7 +31278,8 @@ var SeriesRegistry;
|
|
|
31203
31278
|
defaultPlotOptions[type] = SeriesRegistry_merge(defaultPlotOptions[parent], options);
|
|
31204
31279
|
// Create the class
|
|
31205
31280
|
delete SeriesRegistry.seriesTypes[type];
|
|
31206
|
-
|
|
31281
|
+
const parentClass = SeriesRegistry.seriesTypes[parent] || Series_Series, childClass = SeriesRegistry_extendClass(parentClass, seriesProto);
|
|
31282
|
+
registerSeriesType(type, childClass);
|
|
31207
31283
|
SeriesRegistry.seriesTypes[type].prototype.type = type;
|
|
31208
31284
|
// Create the point class if needed
|
|
31209
31285
|
if (pointProto) {
|
|
@@ -32035,7 +32111,9 @@ class Series {
|
|
|
32035
32111
|
// all the rest are defined the same way. Although the 'for' loops
|
|
32036
32112
|
// are similar, they are repeated inside each if-else conditional
|
|
32037
32113
|
// for max performance.
|
|
32038
|
-
let runTurbo = turboThreshold &&
|
|
32114
|
+
let runTurbo = (turboThreshold &&
|
|
32115
|
+
!options.relativeXValue &&
|
|
32116
|
+
dataLength > turboThreshold);
|
|
32039
32117
|
if (runTurbo) {
|
|
32040
32118
|
const firstPoint = series.getFirstValidPoint(data), lastPoint = series.getFirstValidPoint(data, dataLength - 1, -1), isShortArray = (a) => Boolean(Series_isArray(a) && (keys || Series_isNumber(a[0])));
|
|
32041
32119
|
// Assume all points are numbers
|
|
@@ -33380,18 +33458,26 @@ class Series {
|
|
|
33380
33458
|
horAxis = vertAxis;
|
|
33381
33459
|
vertAxis = this.xAxis;
|
|
33382
33460
|
}
|
|
33383
|
-
|
|
33461
|
+
const params = {
|
|
33462
|
+
scale: 1,
|
|
33384
33463
|
translateX: horAxis ? horAxis.left : chart.plotLeft,
|
|
33385
33464
|
translateY: vertAxis ? vertAxis.top : chart.plotTop,
|
|
33465
|
+
name
|
|
33466
|
+
};
|
|
33467
|
+
Series_fireEvent(this, 'getPlotBox', params);
|
|
33468
|
+
const { scale, translateX, translateY } = params;
|
|
33469
|
+
return {
|
|
33470
|
+
translateX,
|
|
33471
|
+
translateY,
|
|
33386
33472
|
rotation: inverted ? 90 : 0,
|
|
33387
33473
|
rotationOriginX: inverted ?
|
|
33388
|
-
(horAxis.len - vertAxis.len) / 2 :
|
|
33474
|
+
scale * (horAxis.len - vertAxis.len) / 2 :
|
|
33389
33475
|
0,
|
|
33390
33476
|
rotationOriginY: inverted ?
|
|
33391
|
-
(horAxis.len + vertAxis.len) / 2 :
|
|
33477
|
+
scale * (horAxis.len + vertAxis.len) / 2 :
|
|
33392
33478
|
0,
|
|
33393
|
-
scaleX: inverted ? -
|
|
33394
|
-
scaleY:
|
|
33479
|
+
scaleX: inverted ? -scale : scale, // #1623
|
|
33480
|
+
scaleY: scale
|
|
33395
33481
|
};
|
|
33396
33482
|
}
|
|
33397
33483
|
/**
|
|
@@ -34011,7 +34097,7 @@ class Series {
|
|
|
34011
34097
|
oldOptions.type ||
|
|
34012
34098
|
chart.options.chart.type);
|
|
34013
34099
|
const keepPoints = !(
|
|
34014
|
-
// Indicators
|
|
34100
|
+
// Indicators etc recalculate the data. It should be
|
|
34015
34101
|
// possible to omit this.
|
|
34016
34102
|
this.hasDerivedData ||
|
|
34017
34103
|
// New type requires new point classes
|
|
@@ -35221,16 +35307,14 @@ class Legend {
|
|
|
35221
35307
|
* The item to remove
|
|
35222
35308
|
*/
|
|
35223
35309
|
destroyItem(item) {
|
|
35224
|
-
const
|
|
35310
|
+
const legendItem = item.legendItem || {};
|
|
35225
35311
|
// Destroy SVG elements
|
|
35226
35312
|
for (const key of ['group', 'label', 'line', 'symbol']) {
|
|
35227
35313
|
if (legendItem[key]) {
|
|
35228
35314
|
legendItem[key] = legendItem[key].destroy();
|
|
35229
35315
|
}
|
|
35230
35316
|
}
|
|
35231
|
-
|
|
35232
|
-
Legend_discardElement(checkbox);
|
|
35233
|
-
}
|
|
35317
|
+
item.checkbox = Legend_discardElement(item.checkbox);
|
|
35234
35318
|
item.legendItem = void 0;
|
|
35235
35319
|
}
|
|
35236
35320
|
/**
|
|
@@ -35559,13 +35643,13 @@ class Legend {
|
|
|
35559
35643
|
/(rtv|rm|rbv)/,
|
|
35560
35644
|
/(rbh|cb|lbh)/,
|
|
35561
35645
|
/(lbv|lm|ltv)/
|
|
35562
|
-
]).forEach(
|
|
35646
|
+
]).forEach((alignments, side) => {
|
|
35563
35647
|
if (alignments.test(alignment) && !Legend_defined(margin[side])) {
|
|
35564
35648
|
// Now we have detected on which side of the chart we should
|
|
35565
35649
|
// reserve space for the legend
|
|
35566
35650
|
chart[marginNames[side]] = Math.max(chart[marginNames[side]], (chart.legend[(side + 1) % 2 ? 'legendHeight' : 'legendWidth'] +
|
|
35567
|
-
[1, -1, -1, 1][side] * options[(side % 2) ? 'x' : 'y'] +
|
|
35568
|
-
|
|
35651
|
+
[1, -1, -1, 1][side] * (options[(side % 2) ? 'x' : 'y']) +
|
|
35652
|
+
(options.margin ?? 12) +
|
|
35569
35653
|
spacing[side] +
|
|
35570
35654
|
(chart.titleOffset[side] || 0)));
|
|
35571
35655
|
}
|
|
@@ -36179,6 +36263,9 @@ class Legend {
|
|
|
36179
36263
|
*/ /**
|
|
36180
36264
|
* @name Highcharts.LegendItemObject#symbol
|
|
36181
36265
|
* @type {Highcharts.SVGElement|undefined}
|
|
36266
|
+
*/ /**
|
|
36267
|
+
* @name Highcharts.LegendItemObject#label
|
|
36268
|
+
* @type {Highcharts.SVGElement|undefined}
|
|
36182
36269
|
*/
|
|
36183
36270
|
/**
|
|
36184
36271
|
* Gets fired when the legend item is clicked. The default
|
|
@@ -37525,8 +37612,8 @@ class Chart {
|
|
|
37525
37612
|
getAxisMargins() {
|
|
37526
37613
|
const chart = this,
|
|
37527
37614
|
// [top, right, bottom, left]
|
|
37528
|
-
axisOffset = chart.axisOffset = [0, 0, 0, 0], colorAxis = chart.colorAxis, margin = chart.margin, getOffset =
|
|
37529
|
-
axes.forEach(
|
|
37615
|
+
axisOffset = chart.axisOffset = [0, 0, 0, 0], colorAxis = chart.colorAxis, margin = chart.margin, getOffset = (axes) => {
|
|
37616
|
+
axes.forEach((axis) => {
|
|
37530
37617
|
if (axis.visible) {
|
|
37531
37618
|
axis.getOffset();
|
|
37532
37619
|
}
|
|
@@ -37540,9 +37627,9 @@ class Chart {
|
|
|
37540
37627
|
getOffset(colorAxis);
|
|
37541
37628
|
}
|
|
37542
37629
|
// Add the axis offsets
|
|
37543
|
-
Chart_marginNames.forEach(
|
|
37630
|
+
Chart_marginNames.forEach((marginName, side) => {
|
|
37544
37631
|
if (!Chart_defined(margin[side])) {
|
|
37545
|
-
chart[
|
|
37632
|
+
chart[marginName] += axisOffset[side];
|
|
37546
37633
|
}
|
|
37547
37634
|
});
|
|
37548
37635
|
chart.setChartSize();
|
|
@@ -37583,7 +37670,7 @@ class Chart {
|
|
|
37583
37670
|
delete chart.pointer?.chartPosition;
|
|
37584
37671
|
// Width and height checks for display:none. Target is doc in Opera
|
|
37585
37672
|
// and win in Firefox, Chrome and IE9.
|
|
37586
|
-
if (!chart.isPrinting &&
|
|
37673
|
+
if (!chart.exporting?.isPrinting &&
|
|
37587
37674
|
!chart.isResizing &&
|
|
37588
37675
|
oldBox &&
|
|
37589
37676
|
// When fired by resize observer inside hidden container
|
|
@@ -37797,21 +37884,22 @@ class Chart {
|
|
|
37797
37884
|
Chart_fireEvent(this, 'resetMargins');
|
|
37798
37885
|
const chart = this, chartOptions = chart.options.chart, plotBorderWidth = chartOptions.plotBorderWidth || 0, halfWidth = Math.round(plotBorderWidth) / 2;
|
|
37799
37886
|
// Create margin and spacing array
|
|
37800
|
-
['margin', 'spacing'].forEach(
|
|
37887
|
+
['margin', 'spacing'].forEach((target) => {
|
|
37801
37888
|
const value = chartOptions[target], values = Chart_isObject(value) ? value : [value, value, value, value];
|
|
37802
37889
|
[
|
|
37803
37890
|
'Top',
|
|
37804
37891
|
'Right',
|
|
37805
37892
|
'Bottom',
|
|
37806
37893
|
'Left'
|
|
37807
|
-
].forEach(
|
|
37808
|
-
chart[target][side] =
|
|
37894
|
+
].forEach((sideName, side) => {
|
|
37895
|
+
chart[target][side] = (chartOptions[`${target}${sideName}`] ??
|
|
37896
|
+
values[side]);
|
|
37809
37897
|
});
|
|
37810
37898
|
});
|
|
37811
37899
|
// Set margin names like chart.plotTop, chart.plotLeft,
|
|
37812
37900
|
// chart.marginRight, chart.marginBottom.
|
|
37813
|
-
Chart_marginNames.forEach(
|
|
37814
|
-
chart[
|
|
37901
|
+
Chart_marginNames.forEach((marginName, side) => {
|
|
37902
|
+
chart[marginName] = chart.margin[side] ?? chart.spacing[side];
|
|
37815
37903
|
});
|
|
37816
37904
|
chart.axisOffset = [0, 0, 0, 0]; // Top, right, bottom, left
|
|
37817
37905
|
chart.clipOffset = [
|
|
@@ -38122,12 +38210,13 @@ class Chart {
|
|
|
38122
38210
|
renderAxes(colorAxis);
|
|
38123
38211
|
}
|
|
38124
38212
|
// The series
|
|
38125
|
-
|
|
38126
|
-
|
|
38127
|
-
|
|
38128
|
-
|
|
38129
|
-
|
|
38130
|
-
|
|
38213
|
+
chart.seriesGroup || (chart.seriesGroup = renderer.g('series-group')
|
|
38214
|
+
.attr({ zIndex: 3 })
|
|
38215
|
+
.shadow(chart.options.chart.seriesGroupShadow)
|
|
38216
|
+
.add());
|
|
38217
|
+
chart.dataLabelsGroup || (chart.dataLabelsGroup = renderer.g('datalabels-group')
|
|
38218
|
+
.attr({ zIndex: 6 })
|
|
38219
|
+
.add());
|
|
38131
38220
|
chart.renderSeries();
|
|
38132
38221
|
// Credits
|
|
38133
38222
|
chart.addCredits();
|
|
@@ -38959,9 +39048,10 @@ class Chart {
|
|
|
38959
39048
|
*/
|
|
38960
39049
|
transform(params) {
|
|
38961
39050
|
const { axes = this.axes, event, from = {}, reset, selection, to = {}, trigger } = params, { inverted, time } = this;
|
|
38962
|
-
let hasZoomed = false, displayButton, isAnyAxisPanning;
|
|
38963
39051
|
// Remove active points for shared tooltip
|
|
38964
39052
|
this.hoverPoints?.forEach((point) => point.setState());
|
|
39053
|
+
Chart_fireEvent(this, 'transform', params);
|
|
39054
|
+
let hasZoomed = params.hasZoomed || false, displayButton, isAnyAxisPanning;
|
|
38965
39055
|
for (const axis of axes) {
|
|
38966
39056
|
const { horiz, len, minPointOffset = 0, options, reversed } = axis, wh = horiz ? 'width' : 'height', xy = horiz ? 'x' : 'y', toLength = Chart_pick(to[wh], axis.len), fromLength = Chart_pick(from[wh], axis.len),
|
|
38967
39057
|
// If fingers pinched very close on this axis, treat as pan
|
|
@@ -38977,19 +39067,19 @@ class Chart {
|
|
|
38977
39067
|
if (!reset && (fromCenter < 0 || fromCenter > axis.len)) {
|
|
38978
39068
|
continue;
|
|
38979
39069
|
}
|
|
38980
|
-
|
|
38981
|
-
|
|
38982
|
-
|
|
38983
|
-
|
|
38984
|
-
(
|
|
38985
|
-
|
|
38986
|
-
|
|
38987
|
-
|
|
38988
|
-
|
|
38989
|
-
|
|
38990
|
-
|
|
38991
|
-
|
|
38992
|
-
|
|
39070
|
+
// Adjust offset to ensure selection zoom triggers correctly
|
|
39071
|
+
// (#22945)
|
|
39072
|
+
const offset = (axis.chart.polar || axis.isOrdinal) ?
|
|
39073
|
+
0 :
|
|
39074
|
+
(minPointOffset * pointRangeDirection || 0), eventMin = axis.toValue(minPx, true), eventMax = axis.toValue(minPx + len / scale, true);
|
|
39075
|
+
let newMin = eventMin + offset, newMax = eventMax - offset, allExtremes = axis.allExtremes;
|
|
39076
|
+
if (selection) {
|
|
39077
|
+
selection[axis.coll].push({
|
|
39078
|
+
axis,
|
|
39079
|
+
min: Math.min(eventMin, eventMax),
|
|
39080
|
+
max: Math.max(eventMin, eventMax)
|
|
39081
|
+
});
|
|
39082
|
+
}
|
|
38993
39083
|
if (newMin > newMax) {
|
|
38994
39084
|
[newMin, newMax] = [newMax, newMin];
|
|
38995
39085
|
}
|
|
@@ -39029,10 +39119,7 @@ class Chart {
|
|
|
39029
39119
|
// It is not necessary to calculate extremes on ordinal axis,
|
|
39030
39120
|
// because they are already calculated, so we don't want to override
|
|
39031
39121
|
// them.
|
|
39032
|
-
if (!axis.isOrdinal ||
|
|
39033
|
-
axis.options.overscroll || // #21316
|
|
39034
|
-
scale !== 1 ||
|
|
39035
|
-
reset) {
|
|
39122
|
+
if (!axis.isOrdinal || scale !== 1 || reset) {
|
|
39036
39123
|
// If the new range spills over, either to the min or max,
|
|
39037
39124
|
// adjust it.
|
|
39038
39125
|
if (newMin < floor) {
|
|
@@ -39077,6 +39164,13 @@ class Chart {
|
|
|
39077
39164
|
}
|
|
39078
39165
|
hasZoomed = true;
|
|
39079
39166
|
}
|
|
39167
|
+
// Show the resetZoom button for non-cartesian series,
|
|
39168
|
+
// except when triggered by mouse wheel zoom
|
|
39169
|
+
if (!this.hasCartesianSeries &&
|
|
39170
|
+
!reset &&
|
|
39171
|
+
trigger !== 'mousewheel') {
|
|
39172
|
+
displayButton = true;
|
|
39173
|
+
}
|
|
39080
39174
|
if (event) {
|
|
39081
39175
|
this[horiz ? 'mouseDownX' : 'mouseDownY'] =
|
|
39082
39176
|
event[horiz ? 'chartX' : 'chartY'];
|
|
@@ -39368,29 +39462,33 @@ class ScrollablePlotArea {
|
|
|
39368
39462
|
static afterSetSize(chart, e) {
|
|
39369
39463
|
const { minWidth, minHeight } = chart.options.chart.scrollablePlotArea || {}, { clipBox, plotBox, inverted, renderer } = chart;
|
|
39370
39464
|
let scrollablePixelsX, scrollablePixelsY, recalculateHoriz;
|
|
39371
|
-
|
|
39372
|
-
|
|
39373
|
-
|
|
39374
|
-
|
|
39375
|
-
|
|
39376
|
-
|
|
39377
|
-
|
|
39378
|
-
|
|
39379
|
-
|
|
39380
|
-
|
|
39381
|
-
|
|
39382
|
-
|
|
39383
|
-
|
|
39384
|
-
|
|
39385
|
-
|
|
39386
|
-
|
|
39387
|
-
|
|
39388
|
-
|
|
39389
|
-
|
|
39390
|
-
|
|
39391
|
-
|
|
39392
|
-
|
|
39393
|
-
|
|
39465
|
+
// Skip for exporting
|
|
39466
|
+
if (renderer.forExport) {
|
|
39467
|
+
return;
|
|
39468
|
+
}
|
|
39469
|
+
// The amount of pixels to scroll, the difference between chart width
|
|
39470
|
+
// and scrollable width
|
|
39471
|
+
if (minWidth) {
|
|
39472
|
+
chart.scrollablePixelsX = scrollablePixelsX = Math.max(0, minWidth - chart.chartWidth);
|
|
39473
|
+
if (scrollablePixelsX) {
|
|
39474
|
+
chart.scrollablePlotBox = ScrollablePlotArea_merge(chart.plotBox);
|
|
39475
|
+
plotBox.width = chart.plotWidth += scrollablePixelsX;
|
|
39476
|
+
clipBox[inverted ? 'height' : 'width'] += scrollablePixelsX;
|
|
39477
|
+
recalculateHoriz = true;
|
|
39478
|
+
}
|
|
39479
|
+
// Currently we can only do either X or Y
|
|
39480
|
+
}
|
|
39481
|
+
else if (minHeight) {
|
|
39482
|
+
chart.scrollablePixelsY = scrollablePixelsY = Math.max(0, minHeight - chart.chartHeight);
|
|
39483
|
+
if (ScrollablePlotArea_defined(scrollablePixelsY)) {
|
|
39484
|
+
chart.scrollablePlotBox = ScrollablePlotArea_merge(chart.plotBox);
|
|
39485
|
+
plotBox.height = chart.plotHeight += scrollablePixelsY;
|
|
39486
|
+
clipBox[inverted ? 'width' : 'height'] += scrollablePixelsY;
|
|
39487
|
+
recalculateHoriz = false;
|
|
39488
|
+
}
|
|
39489
|
+
}
|
|
39490
|
+
if (ScrollablePlotArea_defined(recalculateHoriz)) {
|
|
39491
|
+
if (!e.skipAxes) {
|
|
39394
39492
|
for (const axis of chart.axes) {
|
|
39395
39493
|
// Apply the corrected plot size to the axes of the other
|
|
39396
39494
|
// orientation than the scrolling direction
|
|
@@ -39403,6 +39501,10 @@ class ScrollablePlotArea {
|
|
|
39403
39501
|
}
|
|
39404
39502
|
}
|
|
39405
39503
|
}
|
|
39504
|
+
else {
|
|
39505
|
+
// Clear (potential) old box when a new one was not set
|
|
39506
|
+
delete chart.scrollablePlotBox;
|
|
39507
|
+
}
|
|
39406
39508
|
}
|
|
39407
39509
|
constructor(chart) {
|
|
39408
39510
|
const chartOptions = chart.options.chart, Renderer = Renderer_RendererRegistry.getRendererType(), scrollableOptions = chartOptions.scrollablePlotArea || {}, moveFixedElements = this.moveFixedElements.bind(this), styles = {
|
|
@@ -39986,7 +40088,6 @@ class StackItem {
|
|
|
39986
40088
|
|
|
39987
40089
|
const { getDeferredAnimation: StackingAxis_getDeferredAnimation } = AnimationUtilities;
|
|
39988
40090
|
|
|
39989
|
-
|
|
39990
40091
|
const { series: { prototype: seriesProto } } = Series_SeriesRegistry;
|
|
39991
40092
|
|
|
39992
40093
|
|
|
@@ -42189,8 +42290,7 @@ const ColumnSeriesDefaults = {
|
|
|
42189
42290
|
* @apioption plotOptions.column.states.hover.color
|
|
42190
42291
|
*/
|
|
42191
42292
|
/**
|
|
42192
|
-
* How much to brighten the point on interaction.
|
|
42193
|
-
* main color to be defined in hex or rgb(a) format.
|
|
42293
|
+
* How much to brighten the point on interaction.
|
|
42194
42294
|
*
|
|
42195
42295
|
* In styled mode, the hover brightening is by default replaced
|
|
42196
42296
|
* with a fill-opacity set in the `.highcharts-point:hover`
|
|
@@ -43309,7 +43409,7 @@ var DataLabel;
|
|
|
43309
43409
|
*/
|
|
43310
43410
|
function initDataLabelsGroup() {
|
|
43311
43411
|
return this.plotGroup('dataLabelsGroup', 'data-labels', this.hasRendered ? 'inherit' : 'hidden', // #5133, #10220
|
|
43312
|
-
this.options.dataLabels.zIndex || 6);
|
|
43412
|
+
this.options.dataLabels.zIndex || 6, this.chart.dataLabelsGroup);
|
|
43313
43413
|
}
|
|
43314
43414
|
/**
|
|
43315
43415
|
* Init the data labels with the correct animation
|
|
@@ -43447,7 +43547,9 @@ var DataLabel;
|
|
|
43447
43547
|
// Individual labels are disabled if the are explicitly
|
|
43448
43548
|
// disabled in the point options, or if they fall outside
|
|
43449
43549
|
// the plot area.
|
|
43450
|
-
if (labelEnabled &&
|
|
43550
|
+
if (labelEnabled &&
|
|
43551
|
+
DataLabel_defined(labelText) &&
|
|
43552
|
+
labelText !== '') {
|
|
43451
43553
|
if (!dataLabel) {
|
|
43452
43554
|
// Create new label element
|
|
43453
43555
|
dataLabel = renderer.label(labelText, 0, 0, labelOptions.shape, void 0, void 0, labelOptions.useHTML, void 0, 'data-label');
|
|
@@ -45178,8 +45280,7 @@ const PieSeriesDefaults = {
|
|
|
45178
45280
|
*/
|
|
45179
45281
|
hover: {
|
|
45180
45282
|
/**
|
|
45181
|
-
* How much to brighten the point on interaction.
|
|
45182
|
-
* main color to be defined in hex or rgb(a) format.
|
|
45283
|
+
* How much to brighten the point on interaction.
|
|
45183
45284
|
*
|
|
45184
45285
|
* In styled mode, the hover brightness is by default replaced
|
|
45185
45286
|
* by a fill-opacity given in the `.highcharts-point-hover`
|
|
@@ -45450,11 +45551,11 @@ class PieSeries extends Series_Series {
|
|
|
45450
45551
|
}
|
|
45451
45552
|
/**
|
|
45452
45553
|
* Define hasData function for non-cartesian series. Returns true if the
|
|
45453
|
-
* series has
|
|
45554
|
+
* series has at least one visible point (#23235)
|
|
45454
45555
|
* @private
|
|
45455
45556
|
*/
|
|
45456
45557
|
hasData() {
|
|
45457
|
-
return
|
|
45558
|
+
return this.points.some((point) => point.visible);
|
|
45458
45559
|
}
|
|
45459
45560
|
/**
|
|
45460
45561
|
* Draw the data points
|
|
@@ -45675,7 +45776,7 @@ const { distribute: PieDataLabel_distribute } = Renderer_RendererUtilities;
|
|
|
45675
45776
|
|
|
45676
45777
|
const { series: PieDataLabel_Series } = Series_SeriesRegistry;
|
|
45677
45778
|
|
|
45678
|
-
const { arrayMax: PieDataLabel_arrayMax, clamp: PieDataLabel_clamp, defined: PieDataLabel_defined, pick: PieDataLabel_pick, pushUnique: PieDataLabel_pushUnique, relativeLength: PieDataLabel_relativeLength } = Core_Utilities;
|
|
45779
|
+
const { arrayMax: PieDataLabel_arrayMax, clamp: PieDataLabel_clamp, defined: PieDataLabel_defined, isNumber: PieDataLabel_isNumber, pick: PieDataLabel_pick, pushUnique: PieDataLabel_pushUnique, relativeLength: PieDataLabel_relativeLength } = Core_Utilities;
|
|
45679
45780
|
/* *
|
|
45680
45781
|
*
|
|
45681
45782
|
* Composition
|
|
@@ -46027,7 +46128,7 @@ var PieDataLabel_ColumnDataLabel;
|
|
|
46027
46128
|
// #8864: every connector can have individual options
|
|
46028
46129
|
const { connectorColor, connectorWidth = 1 } = (dataLabel.options || {}), labelPosition = dataLabel.dataLabelPosition;
|
|
46029
46130
|
// Draw the connector
|
|
46030
|
-
if (connectorWidth) {
|
|
46131
|
+
if (PieDataLabel_isNumber(connectorWidth)) {
|
|
46031
46132
|
let isNew;
|
|
46032
46133
|
connector = dataLabel.connector;
|
|
46033
46134
|
if (labelPosition && labelPosition.distance > 0) {
|
|
@@ -46652,7 +46753,7 @@ function applyBorderRadius(path, i, r) {
|
|
|
46652
46753
|
* @private
|
|
46653
46754
|
*/
|
|
46654
46755
|
function BorderRadius_arc(x, y, w, h, options = {}) {
|
|
46655
|
-
const path = oldArc(x, y, w, h, options), { innerR = 0, r = w, start = 0, end = 0 } = options;
|
|
46756
|
+
const path = oldArc(x, y, w, h, options), { brStart = true, brEnd = true, innerR = 0, r = w, start = 0, end = 0 } = options;
|
|
46656
46757
|
if (options.open || !options.borderRadius) {
|
|
46657
46758
|
return path;
|
|
46658
46759
|
}
|
|
@@ -46669,6 +46770,10 @@ function BorderRadius_arc(x, y, w, h, options = {}) {
|
|
|
46669
46770
|
// splicing in arc segments.
|
|
46670
46771
|
let i = path.length - 1;
|
|
46671
46772
|
while (i--) {
|
|
46773
|
+
if ((!brStart && (i === 0 || i === 3)) ||
|
|
46774
|
+
(!brEnd && (i === 1 || i === 2))) {
|
|
46775
|
+
continue;
|
|
46776
|
+
}
|
|
46672
46777
|
applyBorderRadius(path, i, i > 1 ? innerBorderRadius : borderRadius);
|
|
46673
46778
|
}
|
|
46674
46779
|
return path;
|
|
@@ -46743,7 +46848,7 @@ function BorderRadius_compose(SeriesClass, SVGElementClass, SVGRendererClass) {
|
|
|
46743
46848
|
order: 9
|
|
46744
46849
|
});
|
|
46745
46850
|
BorderRadius_addEvent(PieSeriesClass, 'afterTranslate', pieSeriesOnAfterTranslate);
|
|
46746
|
-
SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY');
|
|
46851
|
+
SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY', 'brEnd', 'brStart');
|
|
46747
46852
|
oldArc = symbols.arc;
|
|
46748
46853
|
oldRoundedRect = symbols.roundedRect;
|
|
46749
46854
|
symbols.arc = BorderRadius_arc;
|
|
@@ -47169,7 +47274,14 @@ var Responsive;
|
|
|
47169
47274
|
(''); // Keeps doclets above in JS file
|
|
47170
47275
|
|
|
47171
47276
|
;// ./code/es-modules/masters/highcharts.src.js
|
|
47172
|
-
|
|
47277
|
+
/**
|
|
47278
|
+
* @license Highcharts JS v12.4.0 (2025-09-04)
|
|
47279
|
+
* @module highcharts/highcharts
|
|
47280
|
+
*
|
|
47281
|
+
* (c) 2009-2025 Highsoft AS
|
|
47282
|
+
*
|
|
47283
|
+
* License: www.highcharts.com/license
|
|
47284
|
+
*/
|
|
47173
47285
|
|
|
47174
47286
|
|
|
47175
47287
|
|
|
@@ -47292,10 +47404,8 @@ Core_Utilities.extend(G, Core_Utilities);
|
|
|
47292
47404
|
* */
|
|
47293
47405
|
|
|
47294
47406
|
|
|
47295
|
-
|
|
47296
47407
|
const { tooltipFormatter: pointTooltipFormatter } = Series_Point.prototype;
|
|
47297
47408
|
|
|
47298
|
-
|
|
47299
47409
|
const { addEvent: DataModifyComposition_addEvent, arrayMax: DataModifyComposition_arrayMax, arrayMin: DataModifyComposition_arrayMin, correctFloat: DataModifyComposition_correctFloat, defined: DataModifyComposition_defined, isArray: DataModifyComposition_isArray, isNumber: DataModifyComposition_isNumber, isString: DataModifyComposition_isString, pick: DataModifyComposition_pick } = Core_Utilities;
|
|
47300
47410
|
/* *
|
|
47301
47411
|
*
|
|
@@ -48793,7 +48903,7 @@ const StockUtilities = {
|
|
|
48793
48903
|
* */
|
|
48794
48904
|
|
|
48795
48905
|
|
|
48796
|
-
const {
|
|
48906
|
+
const { defaultOptions: NavigatorComposition_defaultOptions } = Defaults;
|
|
48797
48907
|
|
|
48798
48908
|
const { composed: NavigatorComposition_composed } = Core_Globals;
|
|
48799
48909
|
|
|
@@ -48823,8 +48933,8 @@ function NavigatorComposition_compose(ChartClass, AxisClass, SeriesClass) {
|
|
|
48823
48933
|
if (NavigatorComposition_pushUnique(NavigatorComposition_composed, 'Navigator')) {
|
|
48824
48934
|
ChartClass.prototype.setFixedRange = NavigatorComposition_setFixedRange;
|
|
48825
48935
|
NavigatorComposition_extend(getRendererType().prototype.symbols, Navigator_NavigatorSymbols);
|
|
48936
|
+
NavigatorComposition_extend(NavigatorComposition_defaultOptions, { navigator: Navigator_NavigatorDefaults });
|
|
48826
48937
|
NavigatorComposition_addEvent(SeriesClass, 'afterUpdate', onSeriesAfterUpdate);
|
|
48827
|
-
NavigatorComposition_setOptions({ navigator: Navigator_NavigatorDefaults });
|
|
48828
48938
|
}
|
|
48829
48939
|
}
|
|
48830
48940
|
/**
|
|
@@ -48860,7 +48970,7 @@ const NavigatorComposition = {
|
|
|
48860
48970
|
|
|
48861
48971
|
const { composed: ScrollbarAxis_composed } = Core_Globals;
|
|
48862
48972
|
|
|
48863
|
-
const { addEvent: ScrollbarAxis_addEvent, defined: ScrollbarAxis_defined, pick: ScrollbarAxis_pick, pushUnique: ScrollbarAxis_pushUnique } = Core_Utilities;
|
|
48973
|
+
const { addEvent: ScrollbarAxis_addEvent, correctFloat: ScrollbarAxis_correctFloat, defined: ScrollbarAxis_defined, pick: ScrollbarAxis_pick, pushUnique: ScrollbarAxis_pushUnique } = Core_Utilities;
|
|
48864
48974
|
/* *
|
|
48865
48975
|
*
|
|
48866
48976
|
* Composition
|
|
@@ -48907,9 +49017,10 @@ var ScrollbarAxis;
|
|
|
48907
49017
|
axisMin,
|
|
48908
49018
|
axisMax,
|
|
48909
49019
|
scrollMin: ScrollbarAxis_defined(axis.dataMin) ?
|
|
48910
|
-
Math.min(axisMin, axis.min, axis.dataMin,
|
|
48911
|
-
scrollMax: ScrollbarAxis_defined(axis.dataMax) ?
|
|
48912
|
-
Math.max(axisMax, axis.max, axis.dataMax,
|
|
49020
|
+
Math.min(axisMin, axis.min ?? Infinity, axis.dataMin, axis.threshold ?? Infinity) : axisMin,
|
|
49021
|
+
scrollMax: axis.treeGrid?.adjustedMax ?? (ScrollbarAxis_defined(axis.dataMax) ?
|
|
49022
|
+
Math.max(axisMax, axis.max ?? -Infinity, axis.dataMax, axis.threshold ?? -Infinity) :
|
|
49023
|
+
axisMax)
|
|
48913
49024
|
};
|
|
48914
49025
|
}
|
|
48915
49026
|
/**
|
|
@@ -48937,7 +49048,7 @@ var ScrollbarAxis;
|
|
|
48937
49048
|
axis.options.startOnTick = axis.options.endOnTick = false;
|
|
48938
49049
|
axis.scrollbar = new Scrollbar(axis.chart.renderer, axis.options.scrollbar, axis.chart);
|
|
48939
49050
|
ScrollbarAxis_addEvent(axis.scrollbar, 'changed', function (e) {
|
|
48940
|
-
const { axisMin, axisMax, scrollMin: unitedMin, scrollMax: unitedMax } = getExtremes(axis),
|
|
49051
|
+
const { axisMin, axisMax, scrollMin: unitedMin, scrollMax: unitedMax } = getExtremes(axis), minPX = axis.toPixels(unitedMin), maxPX = axis.toPixels(unitedMax), rangePX = maxPX - minPX;
|
|
48941
49052
|
let to, from;
|
|
48942
49053
|
// #12834, scroll when show/hide series, wrong extremes
|
|
48943
49054
|
if (!ScrollbarAxis_defined(axisMin) || !ScrollbarAxis_defined(axisMax)) {
|
|
@@ -48945,20 +49056,20 @@ var ScrollbarAxis;
|
|
|
48945
49056
|
}
|
|
48946
49057
|
if ((axis.horiz && !axis.reversed) ||
|
|
48947
49058
|
(!axis.horiz && axis.reversed)) {
|
|
48948
|
-
to =
|
|
48949
|
-
from = unitedMin +
|
|
49059
|
+
to = Math.min(unitedMax, axis.toValue(minPX + rangePX * this.to));
|
|
49060
|
+
from = Math.max(unitedMin, axis.toValue(minPX + rangePX * this.from));
|
|
48950
49061
|
}
|
|
48951
49062
|
else {
|
|
48952
49063
|
// Y-values in browser are reversed, but this also
|
|
48953
49064
|
// applies for reversed horizontal axis:
|
|
48954
|
-
to =
|
|
48955
|
-
from = unitedMin +
|
|
49065
|
+
to = Math.min(unitedMax, axis.toValue(minPX + rangePX * (1 - this.from)));
|
|
49066
|
+
from = Math.max(unitedMin, axis.toValue(minPX + rangePX * (1 - this.to)));
|
|
48956
49067
|
}
|
|
48957
49068
|
if (this.shouldUpdateExtremes(e.DOMType)) {
|
|
48958
49069
|
// #17977, set animation to undefined instead of true
|
|
48959
49070
|
const animate = e.DOMType === 'mousemove' ||
|
|
48960
49071
|
e.DOMType === 'touchmove' ? false : void 0;
|
|
48961
|
-
axis.setExtremes(from, to, true, animate, e);
|
|
49072
|
+
axis.setExtremes(ScrollbarAxis_correctFloat(from), ScrollbarAxis_correctFloat(to), true, animate, e);
|
|
48962
49073
|
}
|
|
48963
49074
|
else {
|
|
48964
49075
|
// When live redraw is disabled, don't change extremes
|
|
@@ -48973,7 +49084,7 @@ var ScrollbarAxis;
|
|
|
48973
49084
|
* @private
|
|
48974
49085
|
*/
|
|
48975
49086
|
function onAxisAfterRender() {
|
|
48976
|
-
const axis = this, { scrollMin, scrollMax } = getExtremes(axis), scrollbar = axis.scrollbar, offset = (axis.axisTitleMargin + (axis.titleOffset || 0)
|
|
49087
|
+
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;
|
|
48977
49088
|
let offsetsIndex, from, to;
|
|
48978
49089
|
if (scrollbar && scrollbarsOffsets) {
|
|
48979
49090
|
if (axis.horiz) {
|
|
@@ -49021,8 +49132,9 @@ var ScrollbarAxis;
|
|
|
49021
49132
|
isNaN(scrollMax) ||
|
|
49022
49133
|
!ScrollbarAxis_defined(axis.min) ||
|
|
49023
49134
|
!ScrollbarAxis_defined(axis.max) ||
|
|
49024
|
-
axis.dataMin
|
|
49025
|
-
|
|
49135
|
+
(ScrollbarAxis_defined(axis.dataMin) && // #23335
|
|
49136
|
+
axis.dataMin === axis.dataMax // #10733
|
|
49137
|
+
)) {
|
|
49026
49138
|
// Default action: when data extremes are the same or there is
|
|
49027
49139
|
// not extremes on the axis, but scrollbar exists, make it
|
|
49028
49140
|
// full size
|
|
@@ -49039,10 +49151,10 @@ var ScrollbarAxis;
|
|
|
49039
49151
|
scrollbar.setRange(from, to);
|
|
49040
49152
|
}
|
|
49041
49153
|
else {
|
|
49042
|
-
from = ((axis.min - scrollMin) /
|
|
49043
|
-
(scrollMax - scrollMin));
|
|
49044
|
-
to = ((axis.max - scrollMin) /
|
|
49045
|
-
(scrollMax - scrollMin));
|
|
49154
|
+
from = (axis.toPixels(axis.min) - axis.toPixels(scrollMin)) /
|
|
49155
|
+
(axis.toPixels(scrollMax) - axis.toPixels(scrollMin));
|
|
49156
|
+
to = (axis.toPixels(axis.max) - axis.toPixels(scrollMin)) /
|
|
49157
|
+
(axis.toPixels(scrollMax) - axis.toPixels(scrollMin));
|
|
49046
49158
|
if ((axis.horiz && !axis.reversed) ||
|
|
49047
49159
|
(!axis.horiz && axis.reversed)) {
|
|
49048
49160
|
scrollbar.setRange(from, to);
|
|
@@ -49299,10 +49411,11 @@ const ScrollbarDefaults = {
|
|
|
49299
49411
|
|
|
49300
49412
|
const { defaultOptions: Scrollbar_defaultOptions } = Defaults;
|
|
49301
49413
|
|
|
49414
|
+
const { composed: Scrollbar_composed } = Core_Globals;
|
|
49302
49415
|
|
|
49303
49416
|
|
|
49304
49417
|
|
|
49305
|
-
const { addEvent: Scrollbar_addEvent, correctFloat: Scrollbar_correctFloat, crisp: Scrollbar_crisp, defined: Scrollbar_defined, destroyObjectProperties: Scrollbar_destroyObjectProperties, fireEvent: Scrollbar_fireEvent, merge: Scrollbar_merge, pick: Scrollbar_pick, removeEvent: Scrollbar_removeEvent } = Core_Utilities;
|
|
49418
|
+
const { addEvent: Scrollbar_addEvent, correctFloat: Scrollbar_correctFloat, crisp: Scrollbar_crisp, defined: Scrollbar_defined, destroyObjectProperties: Scrollbar_destroyObjectProperties, extend: Scrollbar_extend, fireEvent: Scrollbar_fireEvent, merge: Scrollbar_merge, pick: Scrollbar_pick, pushUnique: Scrollbar_pushUnique, removeEvent: Scrollbar_removeEvent } = Core_Utilities;
|
|
49306
49419
|
/* *
|
|
49307
49420
|
*
|
|
49308
49421
|
* Constants
|
|
@@ -49328,6 +49441,9 @@ class Scrollbar {
|
|
|
49328
49441
|
* */
|
|
49329
49442
|
static compose(AxisClass) {
|
|
49330
49443
|
Axis_ScrollbarAxis.compose(AxisClass, Scrollbar);
|
|
49444
|
+
if (Scrollbar_pushUnique(Scrollbar_composed, 'Scrollbar')) {
|
|
49445
|
+
Scrollbar_extend(Scrollbar_defaultOptions, { scrollbar: Scrollbar_ScrollbarDefaults });
|
|
49446
|
+
}
|
|
49331
49447
|
}
|
|
49332
49448
|
/**
|
|
49333
49449
|
* When we have vertical scrollbar, rifles and arrow in buttons should be
|
|
@@ -49934,12 +50050,6 @@ class Scrollbar {
|
|
|
49934
50050
|
*
|
|
49935
50051
|
* */
|
|
49936
50052
|
Scrollbar.defaultOptions = Scrollbar_ScrollbarDefaults;
|
|
49937
|
-
/* *
|
|
49938
|
-
*
|
|
49939
|
-
* Registry
|
|
49940
|
-
*
|
|
49941
|
-
* */
|
|
49942
|
-
Scrollbar_defaultOptions.scrollbar = Scrollbar_merge(true, Scrollbar.defaultOptions, Scrollbar_defaultOptions.scrollbar);
|
|
49943
50053
|
/* *
|
|
49944
50054
|
*
|
|
49945
50055
|
* Default Export
|
|
@@ -51450,7 +51560,6 @@ class Navigator {
|
|
|
51450
51560
|
|
|
51451
51561
|
|
|
51452
51562
|
|
|
51453
|
-
|
|
51454
51563
|
const { addEvent: OrdinalAxis_addEvent, correctFloat: OrdinalAxis_correctFloat, css: OrdinalAxis_css, defined: OrdinalAxis_defined, error: OrdinalAxis_error, isNumber: OrdinalAxis_isNumber, pick: OrdinalAxis_pick, timeUnits: OrdinalAxis_timeUnits, isString: OrdinalAxis_isString } = Core_Utilities;
|
|
51455
51564
|
/* *
|
|
51456
51565
|
*
|
|
@@ -51808,8 +51917,7 @@ var OrdinalAxis;
|
|
|
51808
51917
|
function onChartPan(e) {
|
|
51809
51918
|
const chart = this, xAxis = chart.xAxis[0], overscroll = xAxis.ordinal.convertOverscroll(xAxis.options.overscroll), chartX = e.originalEvent.chartX, panning = chart.options.chart.panning;
|
|
51810
51919
|
let runBase = false;
|
|
51811
|
-
if (panning &&
|
|
51812
|
-
panning.type !== 'y' &&
|
|
51920
|
+
if (panning?.type !== 'y' &&
|
|
51813
51921
|
xAxis.options.ordinal &&
|
|
51814
51922
|
xAxis.series.length &&
|
|
51815
51923
|
// On touch devices, let default function handle the pinching
|
|
@@ -51828,8 +51936,9 @@ var OrdinalAxis;
|
|
|
51828
51936
|
}, index2val = xAxis.index2val, val2lin = xAxis.val2lin;
|
|
51829
51937
|
let trimmedRange, ordinalPositions;
|
|
51830
51938
|
// Make sure panning to the edges does not decrease the zoomed range
|
|
51831
|
-
if ((min <= dataMin && movedUnits
|
|
51832
|
-
(max + overscroll
|
|
51939
|
+
if ((min <= dataMin && movedUnits <= 0) ||
|
|
51940
|
+
(max >= dataMax + overscroll && movedUnits >= 0)) {
|
|
51941
|
+
e.preventDefault();
|
|
51833
51942
|
return;
|
|
51834
51943
|
}
|
|
51835
51944
|
// We have an ordinal axis, but the data is equally spaced
|
|
@@ -51848,8 +51957,11 @@ var OrdinalAxis;
|
|
|
51848
51957
|
// If we don't compensate for this, we will be allowed to pan
|
|
51849
51958
|
// grouped data series passed the right of the plot area.
|
|
51850
51959
|
ordinalPositions = extendedAxis.ordinal.positions;
|
|
51851
|
-
if (
|
|
51852
|
-
ordinalPositions
|
|
51960
|
+
if (overscroll) { // #21606
|
|
51961
|
+
ordinalPositions = extendedAxis.ordinal.positions =
|
|
51962
|
+
ordinalPositions.concat(xAxis.ordinal.getOverscrollPositions());
|
|
51963
|
+
}
|
|
51964
|
+
if (dataMax > ordinalPositions[ordinalPositions.length - 1]) {
|
|
51853
51965
|
ordinalPositions.push(dataMax);
|
|
51854
51966
|
}
|
|
51855
51967
|
// Get the new min and max values by getting the ordinal index
|
|
@@ -51880,7 +51992,7 @@ var OrdinalAxis;
|
|
|
51880
51992
|
}
|
|
51881
51993
|
// Revert to the linear chart.pan version
|
|
51882
51994
|
if (runBase || (panning && /y/.test(panning.type))) {
|
|
51883
|
-
if (overscroll) {
|
|
51995
|
+
if (overscroll && OrdinalAxis_isNumber(xAxis.dataMax)) {
|
|
51884
51996
|
xAxis.max = xAxis.dataMax + overscroll;
|
|
51885
51997
|
}
|
|
51886
51998
|
}
|
|
@@ -52012,7 +52124,9 @@ var OrdinalAxis;
|
|
|
52012
52124
|
* @private
|
|
52013
52125
|
*/
|
|
52014
52126
|
beforeSetTickPositions() {
|
|
52015
|
-
const axis = this.axis, ordinal = axis.ordinal, extremes = axis.getExtremes(), min = extremes.min, max = extremes.max, hasBreaks = axis.brokenAxis?.hasBreaks, isOrdinal = axis.options.ordinal
|
|
52127
|
+
const axis = this.axis, ordinal = axis.ordinal, extremes = axis.getExtremes(), min = extremes.min, max = extremes.max, hasBreaks = axis.brokenAxis?.hasBreaks, isOrdinal = axis.options.ordinal, overscroll = axis.options.overscroll &&
|
|
52128
|
+
axis.ordinal.convertOverscroll(axis.options.overscroll) ||
|
|
52129
|
+
0;
|
|
52016
52130
|
let len, uniqueOrdinalPositions, dist, minIndex, maxIndex, slope, i, ordinalPositions = [], overscrollPointsRange = Number.MAX_VALUE, useOrdinal = false, adjustOrdinalExtremesPoints = false, isBoosted = false;
|
|
52017
52131
|
// Apply the ordinal logic
|
|
52018
52132
|
if (isOrdinal || hasBreaks) { // #4167 YAxis is never ordinal ?
|
|
@@ -52096,8 +52210,8 @@ var OrdinalAxis;
|
|
|
52096
52210
|
// spaced.
|
|
52097
52211
|
if (!axis.options.keepOrdinalPadding &&
|
|
52098
52212
|
(ordinalPositions[0] - min > dist ||
|
|
52099
|
-
|
|
52100
|
-
|
|
52213
|
+
max - overscroll - ordinalPositions[len - 1] >
|
|
52214
|
+
dist)) {
|
|
52101
52215
|
useOrdinal = true;
|
|
52102
52216
|
}
|
|
52103
52217
|
}
|
|
@@ -52110,7 +52224,7 @@ var OrdinalAxis;
|
|
|
52110
52224
|
else if (len === 1) {
|
|
52111
52225
|
// We have just one point, closest distance is unknown.
|
|
52112
52226
|
// Assume then it is last point and overscrolled range:
|
|
52113
|
-
overscrollPointsRange =
|
|
52227
|
+
overscrollPointsRange = overscroll;
|
|
52114
52228
|
ordinalPositions = [
|
|
52115
52229
|
ordinalPositions[0],
|
|
52116
52230
|
ordinalPositions[0] + overscrollPointsRange
|
|
@@ -52240,6 +52354,9 @@ var OrdinalAxis;
|
|
|
52240
52354
|
// Add the fake series to hold the full data, then apply
|
|
52241
52355
|
// processData to it
|
|
52242
52356
|
axis.series.forEach((series) => {
|
|
52357
|
+
if (series.takeOrdinalPosition === false) {
|
|
52358
|
+
return; // #22657
|
|
52359
|
+
}
|
|
52243
52360
|
fakeSeries = {
|
|
52244
52361
|
xAxis: fakeAxis,
|
|
52245
52362
|
chart: chart,
|
|
@@ -55334,7 +55451,7 @@ StockChart_addEvent(Chart_Chart, 'update', function (e) {
|
|
|
55334
55451
|
function onAxisGetPlotLinePath(e) {
|
|
55335
55452
|
const axis = this, series = (axis.isLinked && !axis.series && axis.linkedParent ?
|
|
55336
55453
|
axis.linkedParent.series :
|
|
55337
|
-
axis.series), chart = axis
|
|
55454
|
+
axis.series), { chart, horiz } = axis, renderer = chart.renderer, result = [], { acrossPanes = true, force, translatedValue, value } = e, allPerpendicularAxes = (axis.isXAxis ? chart.yAxis : chart.xAxis) || [],
|
|
55338
55455
|
/**
|
|
55339
55456
|
* Return the other axis based on either the axis option or on
|
|
55340
55457
|
* related series.
|
|
@@ -55342,6 +55459,9 @@ StockChart_addEvent(Chart_Chart, 'update', function (e) {
|
|
|
55342
55459
|
*/
|
|
55343
55460
|
getAxis = (coll) => {
|
|
55344
55461
|
const otherColl = coll === 'xAxis' ? 'yAxis' : 'xAxis', opt = axis.options[otherColl];
|
|
55462
|
+
if (acrossPanes && !axis.options.isInternal) {
|
|
55463
|
+
return allPerpendicularAxes.filter((a) => !a.options.isInternal);
|
|
55464
|
+
}
|
|
55345
55465
|
// Other axis indexed by number
|
|
55346
55466
|
if (StockChart_isNumber(opt)) {
|
|
55347
55467
|
return [chart[otherColl][opt]];
|
|
@@ -55353,23 +55473,25 @@ StockChart_addEvent(Chart_Chart, 'update', function (e) {
|
|
|
55353
55473
|
// Auto detect based on existing series
|
|
55354
55474
|
return series.map((s) => s[otherColl]);
|
|
55355
55475
|
};
|
|
55356
|
-
|
|
55357
|
-
|
|
55358
|
-
|
|
55359
|
-
|
|
55360
|
-
|
|
55476
|
+
/**
|
|
55477
|
+
* Push a segment to the result SVGPath array
|
|
55478
|
+
*/
|
|
55479
|
+
function pushSegment(pos, crossingPos1, crossingPos2) {
|
|
55480
|
+
result.push(['M', horiz ? pos : crossingPos1, horiz ? crossingPos1 : pos], ['L', horiz ? pos : crossingPos2, horiz ? crossingPos2 : pos]);
|
|
55481
|
+
}
|
|
55482
|
+
let axes = [], // #3416 need a default array
|
|
55483
|
+
uniqueAxes, transVal;
|
|
55484
|
+
if (chart.options.isStock &&
|
|
55361
55485
|
// Ignore in case of colorAxis or zAxis. #3360, #3524, #6720
|
|
55362
|
-
axis.coll === 'xAxis' || axis.coll === 'yAxis') {
|
|
55486
|
+
(axis.coll === 'xAxis' || axis.coll === 'yAxis')) {
|
|
55363
55487
|
e.preventDefault();
|
|
55364
55488
|
// Get the related axes based on series
|
|
55365
55489
|
axes = getAxis(axis.coll);
|
|
55366
55490
|
// Get the related axes based options.*Axis setting #2810
|
|
55367
|
-
|
|
55368
|
-
for (const A of axes2) {
|
|
55491
|
+
for (const A of allPerpendicularAxes) {
|
|
55369
55492
|
if (!A.options.isInternal) {
|
|
55370
|
-
const a = (A.isXAxis ? 'yAxis' : 'xAxis'), relatedAxis = (StockChart_defined(A.options[a])
|
|
55371
|
-
chart[a][A.options[a]]
|
|
55372
|
-
chart[a][0]);
|
|
55493
|
+
const a = (A.isXAxis ? 'yAxis' : 'xAxis'), relatedAxis = (StockChart_defined(A.options[a]) &&
|
|
55494
|
+
chart[a][A.options[a]]);
|
|
55373
55495
|
if (axis === relatedAxis) {
|
|
55374
55496
|
axes.push(A);
|
|
55375
55497
|
}
|
|
@@ -55391,45 +55513,33 @@ StockChart_addEvent(Chart_Chart, 'update', function (e) {
|
|
|
55391
55513
|
}
|
|
55392
55514
|
transVal = StockChart_pick(translatedValue, axis.translate(value || 0, void 0, void 0, e.old));
|
|
55393
55515
|
if (StockChart_isNumber(transVal)) {
|
|
55394
|
-
|
|
55395
|
-
|
|
55396
|
-
|
|
55397
|
-
|
|
55398
|
-
|
|
55399
|
-
|
|
55400
|
-
|
|
55401
|
-
|
|
55402
|
-
|
|
55403
|
-
|
|
55404
|
-
|
|
55405
|
-
}
|
|
55406
|
-
else {
|
|
55407
|
-
skip = true;
|
|
55408
|
-
}
|
|
55409
|
-
}
|
|
55410
|
-
if (!skip) {
|
|
55411
|
-
result.push(['M', x1, y1], ['L', x2, y2]);
|
|
55412
|
-
}
|
|
55516
|
+
let skip, pos = horiz ?
|
|
55517
|
+
transVal + axis.pos :
|
|
55518
|
+
axis.pos + axis.len - transVal;
|
|
55519
|
+
// Outside plot area
|
|
55520
|
+
if (force !== 'pass' &&
|
|
55521
|
+
(pos < axis.pos || pos > axis.pos + axis.len)) {
|
|
55522
|
+
if (force) {
|
|
55523
|
+
pos = StockChart_clamp(pos, axis.pos, axis.pos + axis.len);
|
|
55524
|
+
}
|
|
55525
|
+
else {
|
|
55526
|
+
skip = true;
|
|
55413
55527
|
}
|
|
55414
55528
|
}
|
|
55415
|
-
|
|
55416
|
-
|
|
55417
|
-
|
|
55418
|
-
|
|
55419
|
-
|
|
55420
|
-
|
|
55421
|
-
//
|
|
55422
|
-
|
|
55423
|
-
|
|
55424
|
-
|
|
55425
|
-
|
|
55426
|
-
|
|
55427
|
-
|
|
55428
|
-
|
|
55429
|
-
}
|
|
55430
|
-
}
|
|
55431
|
-
if (!skip) {
|
|
55432
|
-
result.push(['M', x1, y1], ['L', x2, y2]);
|
|
55529
|
+
if (!skip) {
|
|
55530
|
+
const crossingPosName = horiz ? 'top' : 'left', crossingLenName = horiz ? 'height' : 'width';
|
|
55531
|
+
if (!acrossPanes &&
|
|
55532
|
+
// If the perpendicular position is set explicitly on
|
|
55533
|
+
// the axis, use it. For example, if `top` and `height`
|
|
55534
|
+
// options are set on a horizontal x-axis, the grid
|
|
55535
|
+
// lines should conform to that position.
|
|
55536
|
+
(axis.options[crossingPosName] ||
|
|
55537
|
+
axis.options[crossingLenName])) {
|
|
55538
|
+
pushSegment(pos, axis[crossingPosName], axis[crossingPosName] + axis[crossingLenName]);
|
|
55539
|
+
}
|
|
55540
|
+
else {
|
|
55541
|
+
for (const perpendicularAxis of uniqueAxes) {
|
|
55542
|
+
pushSegment(pos, perpendicularAxis.pos, perpendicularAxis.pos + perpendicularAxis.len);
|
|
55433
55543
|
}
|
|
55434
55544
|
}
|
|
55435
55545
|
}
|
|
@@ -56937,6 +57047,8 @@ const FlagsSeriesDefaults = {
|
|
|
56937
57047
|
* @product highstock
|
|
56938
57048
|
*/
|
|
56939
57049
|
style: {
|
|
57050
|
+
/** @ignore-option */
|
|
57051
|
+
color: "#000000" /* Palette.neutralColor100 */,
|
|
56940
57052
|
/** @ignore-option */
|
|
56941
57053
|
fontSize: '0.7em',
|
|
56942
57054
|
/** @ignore-option */
|
|
@@ -57716,7 +57828,8 @@ var BrokenAxis;
|
|
|
57716
57828
|
*/
|
|
57717
57829
|
function onAxisAfterSetOptions() {
|
|
57718
57830
|
const axis = this;
|
|
57719
|
-
|
|
57831
|
+
// Too early for axis.brokenAxis?.hasBreaks.
|
|
57832
|
+
if (Object.keys(axis.options.breaks?.[0] || {}).length) {
|
|
57720
57833
|
axis.options.ordinal = false;
|
|
57721
57834
|
}
|
|
57722
57835
|
}
|
|
@@ -57788,24 +57901,9 @@ var BrokenAxis;
|
|
|
57788
57901
|
threshold = axis.isXAxis ?
|
|
57789
57902
|
axis.min :
|
|
57790
57903
|
BrokenAxis_pick(series.options.threshold, axis.min);
|
|
57791
|
-
// Array of breaks that have been "zoomed-out" which means that
|
|
57792
|
-
// they were shown previously, but now after zoom, they are not
|
|
57793
|
-
// (#19885).
|
|
57794
|
-
const breaksOutOfRange = axis?.options?.breaks?.filter(function (brk) {
|
|
57795
|
-
let isOut = true;
|
|
57796
|
-
// Iterate to see if "brk" is in axis range
|
|
57797
|
-
for (let i = 0; i < breaks.length; i++) {
|
|
57798
|
-
const otherBreak = breaks[i];
|
|
57799
|
-
if (otherBreak.from === brk.from &&
|
|
57800
|
-
otherBreak.to === brk.to) {
|
|
57801
|
-
isOut = false;
|
|
57802
|
-
break;
|
|
57803
|
-
}
|
|
57804
|
-
}
|
|
57805
|
-
return isOut;
|
|
57806
|
-
});
|
|
57807
57904
|
points.forEach(function (point) {
|
|
57808
|
-
y =
|
|
57905
|
+
y = point['stack' + key.toUpperCase()] ??
|
|
57906
|
+
point[key];
|
|
57809
57907
|
breaks.forEach(function (brk) {
|
|
57810
57908
|
if (BrokenAxis_isNumber(threshold) && BrokenAxis_isNumber(y)) {
|
|
57811
57909
|
let eventName = '';
|
|
@@ -57825,9 +57923,6 @@ var BrokenAxis;
|
|
|
57825
57923
|
}
|
|
57826
57924
|
}
|
|
57827
57925
|
});
|
|
57828
|
-
breaksOutOfRange?.forEach(function (brk) {
|
|
57829
|
-
BrokenAxis_fireEvent(axis, 'pointOutsideOfBreak', { point, brk });
|
|
57830
|
-
});
|
|
57831
57926
|
});
|
|
57832
57927
|
});
|
|
57833
57928
|
}
|
|
@@ -57982,23 +58077,39 @@ var BrokenAxis;
|
|
|
57982
58077
|
* @private
|
|
57983
58078
|
*/
|
|
57984
58079
|
static lin2Val(val) {
|
|
57985
|
-
const axis = this;
|
|
57986
|
-
|
|
57987
|
-
const breakArray = brokenAxis?.breakArray;
|
|
57988
|
-
if (!breakArray || !BrokenAxis_isNumber(val)) {
|
|
58080
|
+
const axis = this, threshold = axis.min || 0, brokenAxis = axis.brokenAxis, breakArray = brokenAxis?.breakArray;
|
|
58081
|
+
if (!breakArray?.length || !BrokenAxis_isNumber(val)) {
|
|
57989
58082
|
return val;
|
|
57990
58083
|
}
|
|
57991
|
-
let nval = val
|
|
57992
|
-
|
|
57993
|
-
|
|
57994
|
-
|
|
57995
|
-
|
|
57996
|
-
|
|
57997
|
-
|
|
57998
|
-
|
|
58084
|
+
let nval = val;
|
|
58085
|
+
// Axis min is the anchor point. Above it, break gaps impact the
|
|
58086
|
+
// result differently than below.
|
|
58087
|
+
if (val > threshold) {
|
|
58088
|
+
for (const brk of breakArray) {
|
|
58089
|
+
if (brk.from > nval) {
|
|
58090
|
+
// Skip all breaks after the nval.
|
|
58091
|
+
break;
|
|
58092
|
+
}
|
|
58093
|
+
else if (brk.to <= nval && brk.to > threshold) {
|
|
58094
|
+
nval += brk.len;
|
|
58095
|
+
}
|
|
58096
|
+
else if (Additions.isInBreak(brk, nval)) {
|
|
58097
|
+
nval += brk.len;
|
|
58098
|
+
}
|
|
57999
58099
|
}
|
|
58000
|
-
|
|
58001
|
-
|
|
58100
|
+
}
|
|
58101
|
+
else if (val < threshold) {
|
|
58102
|
+
for (const brk of breakArray) {
|
|
58103
|
+
if (brk.from > threshold) {
|
|
58104
|
+
// Skip all breaks above the threshold.
|
|
58105
|
+
break;
|
|
58106
|
+
}
|
|
58107
|
+
else if (brk.from >= nval && brk.from < threshold) {
|
|
58108
|
+
nval -= brk.len;
|
|
58109
|
+
}
|
|
58110
|
+
else if (Additions.isInBreak(brk, nval)) {
|
|
58111
|
+
nval -= brk.len;
|
|
58112
|
+
}
|
|
58002
58113
|
}
|
|
58003
58114
|
}
|
|
58004
58115
|
return nval;
|
|
@@ -58007,24 +58118,41 @@ var BrokenAxis;
|
|
|
58007
58118
|
* @private
|
|
58008
58119
|
*/
|
|
58009
58120
|
static val2Lin(val) {
|
|
58010
|
-
const axis = this;
|
|
58011
|
-
|
|
58012
|
-
const breakArray = brokenAxis?.breakArray;
|
|
58013
|
-
if (!breakArray || !BrokenAxis_isNumber(val)) {
|
|
58121
|
+
const axis = this, threshold = axis.min || 0, brokenAxis = axis.brokenAxis, breakArray = brokenAxis?.breakArray;
|
|
58122
|
+
if (!breakArray?.length || !BrokenAxis_isNumber(val)) {
|
|
58014
58123
|
return val;
|
|
58015
58124
|
}
|
|
58016
|
-
let nval = val
|
|
58017
|
-
|
|
58018
|
-
|
|
58019
|
-
|
|
58020
|
-
|
|
58021
|
-
|
|
58022
|
-
|
|
58023
|
-
|
|
58125
|
+
let nval = val;
|
|
58126
|
+
// Axis min is the anchor point. Above it, break gaps impact the
|
|
58127
|
+
// result differently than below.
|
|
58128
|
+
if (val > threshold) {
|
|
58129
|
+
for (const brk of breakArray) {
|
|
58130
|
+
if (brk.to <= val && brk.to > threshold) {
|
|
58131
|
+
nval -= brk.len;
|
|
58132
|
+
}
|
|
58133
|
+
else if (brk.from > val) {
|
|
58134
|
+
// Skip all breaks after the val.
|
|
58135
|
+
break;
|
|
58136
|
+
}
|
|
58137
|
+
else if (Additions.isInBreak(brk, val)) {
|
|
58138
|
+
nval -= (val - brk.from);
|
|
58139
|
+
break;
|
|
58140
|
+
}
|
|
58024
58141
|
}
|
|
58025
|
-
|
|
58026
|
-
|
|
58027
|
-
|
|
58142
|
+
}
|
|
58143
|
+
else if (val < threshold) {
|
|
58144
|
+
for (const brk of breakArray) {
|
|
58145
|
+
if (brk.from >= val && brk.from < threshold) {
|
|
58146
|
+
nval += brk.len;
|
|
58147
|
+
}
|
|
58148
|
+
else if (brk.from > threshold) {
|
|
58149
|
+
// Skip all breaks before the threshold.
|
|
58150
|
+
break;
|
|
58151
|
+
}
|
|
58152
|
+
else if (Additions.isInBreak(brk, val)) {
|
|
58153
|
+
nval += (brk.to - val);
|
|
58154
|
+
break;
|
|
58155
|
+
}
|
|
58028
58156
|
}
|
|
58029
58157
|
}
|
|
58030
58158
|
return nval;
|
|
@@ -58035,7 +58163,6 @@ var BrokenAxis;
|
|
|
58035
58163
|
*
|
|
58036
58164
|
* */
|
|
58037
58165
|
constructor(axis) {
|
|
58038
|
-
this.hasBreaks = false;
|
|
58039
58166
|
this.axis = axis;
|
|
58040
58167
|
}
|
|
58041
58168
|
/* *
|
|
@@ -58101,9 +58228,8 @@ var BrokenAxis;
|
|
|
58101
58228
|
*/
|
|
58102
58229
|
setBreaks(breaks, redraw) {
|
|
58103
58230
|
const brokenAxis = this, axis = brokenAxis.axis, time = axis.chart.time, hasBreaks = BrokenAxis_isArray(breaks) &&
|
|
58104
|
-
!!breaks.length
|
|
58105
|
-
|
|
58106
|
-
axis.isDirty = brokenAxis.hasBreaks !== hasBreaks;
|
|
58231
|
+
!!Object.keys(breaks?.[0] || {}).length;
|
|
58232
|
+
axis.isDirty = (brokenAxis.hasBreaks ?? false) !== hasBreaks;
|
|
58107
58233
|
brokenAxis.hasBreaks = hasBreaks;
|
|
58108
58234
|
// Compile string dates
|
|
58109
58235
|
breaks?.forEach((brk) => {
|
|
@@ -58130,8 +58256,9 @@ var BrokenAxis;
|
|
|
58130
58256
|
axis.setExtremes = function (newMin, newMax, redraw, animation, eventArguments) {
|
|
58131
58257
|
// If trying to set extremes inside a break, extend min to
|
|
58132
58258
|
// after, and max to before the break ( #3857 )
|
|
58133
|
-
|
|
58134
|
-
|
|
58259
|
+
// but not for gantt (#13898);
|
|
58260
|
+
if (brokenAxis.hasBreaks && !axis.treeGrid?.tree) {
|
|
58261
|
+
const breaks = (this.brokenAxis.breakArray || []);
|
|
58135
58262
|
let axisBreak;
|
|
58136
58263
|
while ((axisBreak = brokenAxis.findBreakAt(newMin, breaks))) {
|
|
58137
58264
|
newMin = axisBreak.to;
|
|
@@ -58150,49 +58277,54 @@ var BrokenAxis;
|
|
|
58150
58277
|
axis.constructor.prototype.setAxisTranslation.call(this);
|
|
58151
58278
|
brokenAxis.unitLength = void 0;
|
|
58152
58279
|
if (brokenAxis.hasBreaks) {
|
|
58153
|
-
const breaks = axis.options.breaks || [],
|
|
58154
|
-
|
|
58155
|
-
|
|
58156
|
-
|
|
58157
|
-
|
|
58158
|
-
|
|
58159
|
-
|
|
58160
|
-
|
|
58161
|
-
|
|
58162
|
-
|
|
58163
|
-
|
|
58164
|
-
|
|
58165
|
-
|
|
58166
|
-
|
|
58167
|
-
|
|
58280
|
+
const breaks = axis.options.breaks || [], breakArrayTemp = [], breakArray = [], pointRangePadding = axis.pointRangePadding ?? 0;
|
|
58281
|
+
let length = 0, inBrk, repeat, min = axis.userMin ?? axis.min, max = axis.userMax ?? axis.max, dataMin = axis.dataMin ?? min, dataMax = axis.dataMax ?? max, start, i;
|
|
58282
|
+
if (BrokenAxis_isNumber(axis.threshold)) {
|
|
58283
|
+
dataMin = Math.min(dataMin ?? axis.threshold, axis.threshold);
|
|
58284
|
+
dataMax = Math.max(dataMax ?? axis.threshold, axis.threshold);
|
|
58285
|
+
}
|
|
58286
|
+
// Min & max check (#4247) but not for gantt (#13898)
|
|
58287
|
+
if (!axis.treeGrid?.tree) {
|
|
58288
|
+
breaks.forEach(function (brk) {
|
|
58289
|
+
repeat = brk.repeat || Infinity;
|
|
58290
|
+
if (BrokenAxis_isNumber(min) && BrokenAxis_isNumber(max)) {
|
|
58291
|
+
if (Additions.isInBreak(brk, min)) {
|
|
58292
|
+
min += ((brk.to % repeat) -
|
|
58293
|
+
(min % repeat));
|
|
58294
|
+
}
|
|
58295
|
+
if (Additions.isInBreak(brk, max)) {
|
|
58296
|
+
max -= ((max % repeat) -
|
|
58297
|
+
(brk.from % repeat));
|
|
58298
|
+
}
|
|
58168
58299
|
}
|
|
58169
|
-
}
|
|
58170
|
-
}
|
|
58300
|
+
});
|
|
58301
|
+
}
|
|
58171
58302
|
// Construct an array holding all breaks in the axis
|
|
58172
|
-
|
|
58173
|
-
|
|
58174
|
-
|
|
58175
|
-
|
|
58176
|
-
|
|
58303
|
+
// for the current data range.
|
|
58304
|
+
if (BrokenAxis_isNumber(dataMin) && BrokenAxis_isNumber(dataMax)) {
|
|
58305
|
+
breaks.forEach(function (brk) {
|
|
58306
|
+
start = brk.from;
|
|
58307
|
+
repeat = brk.repeat || Infinity;
|
|
58308
|
+
while (start - repeat > dataMin) {
|
|
58177
58309
|
start -= repeat;
|
|
58178
58310
|
}
|
|
58179
|
-
while (start <
|
|
58311
|
+
while (start < dataMin) {
|
|
58180
58312
|
start += repeat;
|
|
58181
58313
|
}
|
|
58182
|
-
for (i = start; i <
|
|
58183
|
-
|
|
58314
|
+
for (i = start; i < dataMax; i += repeat) {
|
|
58315
|
+
breakArrayTemp.push({
|
|
58184
58316
|
value: i,
|
|
58185
58317
|
move: 'in'
|
|
58186
58318
|
});
|
|
58187
|
-
|
|
58319
|
+
breakArrayTemp.push({
|
|
58188
58320
|
value: i + brk.to - brk.from,
|
|
58189
58321
|
move: 'out',
|
|
58190
58322
|
size: brk.breakSize
|
|
58191
58323
|
});
|
|
58192
58324
|
}
|
|
58193
|
-
}
|
|
58194
|
-
}
|
|
58195
|
-
|
|
58325
|
+
});
|
|
58326
|
+
}
|
|
58327
|
+
breakArrayTemp.sort(function (a, b) {
|
|
58196
58328
|
return ((a.value === b.value) ?
|
|
58197
58329
|
((a.move === 'in' ? 0 : 1) -
|
|
58198
58330
|
(b.move === 'in' ? 0 : 1)) :
|
|
@@ -58200,8 +58332,8 @@ var BrokenAxis;
|
|
|
58200
58332
|
});
|
|
58201
58333
|
// Simplify the breaks
|
|
58202
58334
|
inBrk = 0;
|
|
58203
|
-
start =
|
|
58204
|
-
|
|
58335
|
+
start = dataMin;
|
|
58336
|
+
breakArrayTemp.forEach((brk) => {
|
|
58205
58337
|
inBrk += (brk.move === 'in' ? 1 : -1);
|
|
58206
58338
|
if (inBrk === 1 && brk.move === 'in') {
|
|
58207
58339
|
start = brk.value;
|
|
@@ -58212,9 +58344,13 @@ var BrokenAxis;
|
|
|
58212
58344
|
to: brk.value,
|
|
58213
58345
|
len: brk.value - start - (brk.size || 0)
|
|
58214
58346
|
});
|
|
58215
|
-
|
|
58216
|
-
start
|
|
58217
|
-
|
|
58347
|
+
if (BrokenAxis_isNumber(min) && BrokenAxis_isNumber(max) &&
|
|
58348
|
+
start < max && brk.value > min) {
|
|
58349
|
+
// Sum break gaps in the visible range
|
|
58350
|
+
length += (brk.value -
|
|
58351
|
+
start -
|
|
58352
|
+
(brk.size || 0));
|
|
58353
|
+
}
|
|
58218
58354
|
}
|
|
58219
58355
|
});
|
|
58220
58356
|
brokenAxis.breakArray = breakArray;
|
|
@@ -58260,7 +58396,7 @@ var BrokenAxis;
|
|
|
58260
58396
|
|
|
58261
58397
|
;// ./code/es-modules/masters/modules/broken-axis.src.js
|
|
58262
58398
|
/**
|
|
58263
|
-
* @license Highcharts JS v12.
|
|
58399
|
+
* @license Highcharts JS v12.4.0 (2025-09-04)
|
|
58264
58400
|
* @module highcharts/modules/broken-axis
|
|
58265
58401
|
* @requires highcharts
|
|
58266
58402
|
*
|
|
@@ -59752,7 +59888,7 @@ const DataGroupingComposition = {
|
|
|
59752
59888
|
|
|
59753
59889
|
;// ./code/es-modules/masters/modules/datagrouping.src.js
|
|
59754
59890
|
/**
|
|
59755
|
-
* @license Highstock JS v12.
|
|
59891
|
+
* @license Highstock JS v12.4.0 (2025-09-04)
|
|
59756
59892
|
* @module highcharts/modules/datagrouping
|
|
59757
59893
|
* @requires highcharts
|
|
59758
59894
|
*
|
|
@@ -60074,7 +60210,7 @@ const MouseWheelZoomComposition = {
|
|
|
60074
60210
|
|
|
60075
60211
|
;// ./code/es-modules/masters/modules/mouse-wheel-zoom.src.js
|
|
60076
60212
|
/**
|
|
60077
|
-
* @license Highcharts JS v12.
|
|
60213
|
+
* @license Highcharts JS v12.4.0 (2025-09-04)
|
|
60078
60214
|
* @module highcharts/modules/mouse-wheel-zoom
|
|
60079
60215
|
* @requires highcharts
|
|
60080
60216
|
*
|
|
@@ -60094,7 +60230,7 @@ mouse_wheel_zoom_src_G.MouseWheelZoom.compose(mouse_wheel_zoom_src_G.Chart);
|
|
|
60094
60230
|
|
|
60095
60231
|
;// ./code/es-modules/masters/modules/stock.src.js
|
|
60096
60232
|
/**
|
|
60097
|
-
* @license Highstock JS v12.
|
|
60233
|
+
* @license Highstock JS v12.4.0 (2025-09-04)
|
|
60098
60234
|
* @module highcharts/modules/stock
|
|
60099
60235
|
* @requires highcharts
|
|
60100
60236
|
*
|
|
@@ -60141,14 +60277,7 @@ stock_src_G.StockChart.compose(stock_src_G.Chart, stock_src_G.Axis, stock_src_G.
|
|
|
60141
60277
|
/* harmony default export */ const stock_src = ((/* unused pure expression or super */ null && (Highcharts)));
|
|
60142
60278
|
|
|
60143
60279
|
;// ./code/es-modules/masters/highstock.src.js
|
|
60144
|
-
|
|
60145
|
-
* @license Highstock JS v12.2.0 (2025-04-07)
|
|
60146
|
-
* @module highcharts/highstock
|
|
60147
|
-
*
|
|
60148
|
-
* (c) 2009-2025 Torstein Honsi
|
|
60149
|
-
*
|
|
60150
|
-
* License: www.highcharts.com/license
|
|
60151
|
-
*/
|
|
60280
|
+
|
|
60152
60281
|
|
|
60153
60282
|
|
|
60154
60283
|
|