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/highcharts-gantt.src.js
CHANGED
|
@@ -1,10 +1,16 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Highcharts JS v12.
|
|
3
|
-
* @module highcharts/highcharts
|
|
2
|
+
* @license Highcharts Gantt JS v12.4.0 (2025-09-04)
|
|
3
|
+
* @module highcharts/highcharts-gantt
|
|
4
4
|
*
|
|
5
|
-
* (c)
|
|
5
|
+
* (c) 2017-2025 Highsoft AS
|
|
6
6
|
*
|
|
7
7
|
* License: www.highcharts.com/license
|
|
8
|
+
*
|
|
9
|
+
* Authors:
|
|
10
|
+
* - Lars Cabrera
|
|
11
|
+
* - Torstein Honsi
|
|
12
|
+
* - Jon Arild Nygard
|
|
13
|
+
* - Oystein Moseng
|
|
8
14
|
*/
|
|
9
15
|
(function webpackUniversalModuleDefinition(root, factory) {
|
|
10
16
|
if(typeof exports === 'object' && typeof module === 'object')
|
|
@@ -74,7 +80,7 @@ var Globals;
|
|
|
74
80
|
* Constants
|
|
75
81
|
*
|
|
76
82
|
* */
|
|
77
|
-
Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '12.
|
|
83
|
+
Globals.SVG_NS = 'http://www.w3.org/2000/svg', Globals.product = 'Highcharts', Globals.version = '12.4.0', Globals.win = (typeof window !== 'undefined' ?
|
|
78
84
|
window :
|
|
79
85
|
{}), // eslint-disable-line node/no-unsupported-features/es-builtins
|
|
80
86
|
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 +2636,10 @@ const ChartDefaults = {
|
|
|
2630
2636
|
* panning action is finished, the axes will adjust to their actual
|
|
2631
2637
|
* settings.
|
|
2632
2638
|
*
|
|
2639
|
+
* **Note:** For non-cartesian series, the only supported panning type
|
|
2640
|
+
* is `xy`, as zooming in a single direction is not applicable due to
|
|
2641
|
+
* the radial nature of the coordinate system.
|
|
2642
|
+
*
|
|
2633
2643
|
* @sample {highcharts} highcharts/chart/panning-type
|
|
2634
2644
|
* Zooming and xy panning
|
|
2635
2645
|
*
|
|
@@ -2955,11 +2965,12 @@ const ChartDefaults = {
|
|
|
2955
2965
|
* others series in a stack. The shadow can be an object configuration
|
|
2956
2966
|
* containing `color`, `offsetX`, `offsetY`, `opacity` and `width`.
|
|
2957
2967
|
*
|
|
2958
|
-
* @sample highcharts/chart/seriesgroupshadow/
|
|
2968
|
+
* @sample highcharts/chart/seriesgroupshadow/
|
|
2969
|
+
* Shadow
|
|
2959
2970
|
*
|
|
2960
2971
|
* @type {boolean|Highcharts.ShadowOptionsObject}
|
|
2961
2972
|
* @default false
|
|
2962
|
-
* @apioption chart.
|
|
2973
|
+
* @apioption chart.seriesGroupShadow
|
|
2963
2974
|
*/
|
|
2964
2975
|
/**
|
|
2965
2976
|
* Whether to apply a drop shadow to the outer chart area. Requires
|
|
@@ -3169,6 +3180,11 @@ const ChartDefaults = {
|
|
|
3169
3180
|
/**
|
|
3170
3181
|
* Chart zooming options.
|
|
3171
3182
|
* @since 10.2.1
|
|
3183
|
+
*
|
|
3184
|
+
* @sample highcharts/plotoptions/sankey-node-color
|
|
3185
|
+
* Zooming in sankey series
|
|
3186
|
+
* @sample highcharts/series-treegraph/link-types
|
|
3187
|
+
* Zooming in treegraph series
|
|
3172
3188
|
*/
|
|
3173
3189
|
zooming: {
|
|
3174
3190
|
/**
|
|
@@ -3191,6 +3207,10 @@ const ChartDefaults = {
|
|
|
3191
3207
|
* Decides in what dimensions the user can zoom by dragging the mouse.
|
|
3192
3208
|
* Can be one of `x`, `y` or `xy`.
|
|
3193
3209
|
*
|
|
3210
|
+
* **Note:** For non-cartesian series, the only supported zooming type
|
|
3211
|
+
* is `xy`, as zooming in a single direction is not applicable due to
|
|
3212
|
+
* the radial nature of the coordinate system.
|
|
3213
|
+
*
|
|
3194
3214
|
* @declare Highcharts.OptionsChartZoomingTypeValue
|
|
3195
3215
|
* @type {string}
|
|
3196
3216
|
* @default {highcharts} undefined
|
|
@@ -3610,7 +3630,7 @@ class TimeBase {
|
|
|
3610
3630
|
update(options = {}) {
|
|
3611
3631
|
this.dTLCache = {};
|
|
3612
3632
|
this.options = options = TimeBase_merge(true, this.options, options);
|
|
3613
|
-
const { timezoneOffset, useUTC } = options;
|
|
3633
|
+
const { timezoneOffset, useUTC, locale } = options;
|
|
3614
3634
|
// Allow using a different Date class
|
|
3615
3635
|
this.Date = options.Date || TimeBase_win.Date || Date;
|
|
3616
3636
|
// Assign the time zone. Handle the legacy, deprecated `useUTC` option.
|
|
@@ -3630,6 +3650,10 @@ class TimeBase {
|
|
|
3630
3650
|
this.variableTimezone = timezone !== 'UTC' &&
|
|
3631
3651
|
timezone?.indexOf('Etc/GMT') !== 0;
|
|
3632
3652
|
this.timezone = timezone;
|
|
3653
|
+
// Update locale.
|
|
3654
|
+
if (this.lang && locale) {
|
|
3655
|
+
this.lang.locale = locale;
|
|
3656
|
+
}
|
|
3633
3657
|
// Assign default time formats from locale strings
|
|
3634
3658
|
['months', 'shortMonths', 'weekdays', 'shortWeekdays'].forEach((name) => {
|
|
3635
3659
|
const isMonth = /months/i.test(name), isShort = /short/.test(name), options = {
|
|
@@ -4570,6 +4594,9 @@ const defaultOptions = {
|
|
|
4570
4594
|
* setup uses `Highcharts.setOptions` to make the options apply to all
|
|
4571
4595
|
* charts in the same page.
|
|
4572
4596
|
*
|
|
4597
|
+
* Some language options, like `months` and `weekdays`, are only used
|
|
4598
|
+
* with non-locale-aware date formats.
|
|
4599
|
+
*
|
|
4573
4600
|
* ```js
|
|
4574
4601
|
* Highcharts.setOptions({
|
|
4575
4602
|
* lang: {
|
|
@@ -4619,7 +4646,7 @@ const defaultOptions = {
|
|
|
4619
4646
|
* An array containing the months names. Corresponds to the `%B` format
|
|
4620
4647
|
* in `Highcharts.dateFormat()`. Defaults to 'undefined',
|
|
4621
4648
|
* meaning the default month names are used according to the
|
|
4622
|
-
* `lang.locale`
|
|
4649
|
+
* `lang.locale` or browser settings.
|
|
4623
4650
|
*
|
|
4624
4651
|
* @type {Array<string>}
|
|
4625
4652
|
*/
|
|
@@ -4634,23 +4661,25 @@ const defaultOptions = {
|
|
|
4634
4661
|
* An array containing the months names in abbreviated form. Corresponds
|
|
4635
4662
|
* to the `%b` format in `Highcharts.dateFormat()`. Defaults to
|
|
4636
4663
|
* 'undefined', meaning the default short month names are used according
|
|
4637
|
-
* to the `lang.locale`
|
|
4664
|
+
* to the `lang.locale` or browser settings.
|
|
4638
4665
|
*
|
|
4639
4666
|
* @type {Array<string>}
|
|
4640
4667
|
*/
|
|
4641
4668
|
shortMonths: void 0,
|
|
4642
4669
|
/**
|
|
4643
|
-
* An array containing the weekday names.
|
|
4644
|
-
*
|
|
4645
|
-
*
|
|
4670
|
+
* An array containing the weekday names. Corresponds
|
|
4671
|
+
* to the `%A` format in `Highcharts.dateFormat()`. Defaults to
|
|
4672
|
+
* 'undefined', meaning the default weekday names are used according to
|
|
4673
|
+
* the `lang.locale` or browser settings.
|
|
4646
4674
|
*
|
|
4647
4675
|
* @type {Array<string>}
|
|
4648
4676
|
*/
|
|
4649
4677
|
weekdays: void 0,
|
|
4650
4678
|
/**
|
|
4651
|
-
* Short week days, starting Sunday.
|
|
4679
|
+
* Short week days, starting Sunday. Corresponds to the `%a` format in
|
|
4680
|
+
* `Highcharts.dateFormat()`. Defaults to 'undefined', meaning
|
|
4652
4681
|
* the default short weekday names are used according to the
|
|
4653
|
-
* `lang.locale`
|
|
4682
|
+
* `lang.locale` or browser settings.
|
|
4654
4683
|
*
|
|
4655
4684
|
* @sample highcharts/lang/shortweekdays/
|
|
4656
4685
|
* Finnish two-letter abbreviations
|
|
@@ -6213,6 +6242,10 @@ const defaultOptions = {
|
|
|
6213
6242
|
* @since 3.0
|
|
6214
6243
|
*/
|
|
6215
6244
|
style: {
|
|
6245
|
+
/**
|
|
6246
|
+
* @ignore
|
|
6247
|
+
*/
|
|
6248
|
+
color: "#333333" /* Palette.neutralColor80 */,
|
|
6216
6249
|
/**
|
|
6217
6250
|
* @ignore
|
|
6218
6251
|
*/
|
|
@@ -7481,7 +7514,7 @@ const isStringColor = (color) => Color_isString(color) && !!color && color !== '
|
|
|
7481
7514
|
* @name Highcharts.Color
|
|
7482
7515
|
*
|
|
7483
7516
|
* @param {Highcharts.ColorType} input
|
|
7484
|
-
* The input color
|
|
7517
|
+
* The input color.
|
|
7485
7518
|
*/
|
|
7486
7519
|
class Color {
|
|
7487
7520
|
/* *
|
|
@@ -7495,7 +7528,7 @@ class Color {
|
|
|
7495
7528
|
* @function Highcharts.Color.parse
|
|
7496
7529
|
*
|
|
7497
7530
|
* @param {Highcharts.ColorType} [input]
|
|
7498
|
-
* The input color
|
|
7531
|
+
* The input color.
|
|
7499
7532
|
*
|
|
7500
7533
|
* @return {Highcharts.Color}
|
|
7501
7534
|
* Color instance.
|
|
@@ -7755,11 +7788,7 @@ Color.None = new Color('');
|
|
|
7755
7788
|
*
|
|
7756
7789
|
* */
|
|
7757
7790
|
/**
|
|
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.
|
|
7791
|
+
* A valid color to be parsed and handled by Highcharts.
|
|
7763
7792
|
*
|
|
7764
7793
|
* @typedef {string} Highcharts.ColorString
|
|
7765
7794
|
*/
|
|
@@ -7863,7 +7892,7 @@ Color.None = new Color('');
|
|
|
7863
7892
|
* @function Highcharts.color
|
|
7864
7893
|
*
|
|
7865
7894
|
* @param {Highcharts.ColorType} input
|
|
7866
|
-
* The input color
|
|
7895
|
+
* The input color.
|
|
7867
7896
|
*
|
|
7868
7897
|
* @return {Highcharts.Color}
|
|
7869
7898
|
* Color instance
|
|
@@ -8707,7 +8736,7 @@ class AST {
|
|
|
8707
8736
|
trustedTypesPolicy.createHTML(markup) :
|
|
8708
8737
|
markup, 'text/html');
|
|
8709
8738
|
}
|
|
8710
|
-
catch
|
|
8739
|
+
catch {
|
|
8711
8740
|
// There are two cases where this fails:
|
|
8712
8741
|
// 1. IE9 and PhantomJS, where the DOMParser only supports parsing
|
|
8713
8742
|
// XML
|
|
@@ -8800,9 +8829,9 @@ AST.allowedAttributes = [
|
|
|
8800
8829
|
'cx',
|
|
8801
8830
|
'cy',
|
|
8802
8831
|
'd',
|
|
8832
|
+
'disabled',
|
|
8803
8833
|
'dx',
|
|
8804
8834
|
'dy',
|
|
8805
|
-
'disabled',
|
|
8806
8835
|
'fill',
|
|
8807
8836
|
'filterUnits',
|
|
8808
8837
|
'flood-color',
|
|
@@ -8826,22 +8855,22 @@ AST.allowedAttributes = [
|
|
|
8826
8855
|
'radius',
|
|
8827
8856
|
'refX',
|
|
8828
8857
|
'refY',
|
|
8858
|
+
'result',
|
|
8829
8859
|
'role',
|
|
8860
|
+
'rowspan',
|
|
8830
8861
|
'scope',
|
|
8831
8862
|
'slope',
|
|
8832
8863
|
'src',
|
|
8833
8864
|
'startOffset',
|
|
8834
8865
|
'stdDeviation',
|
|
8835
|
-
'stroke',
|
|
8836
8866
|
'stroke-linecap',
|
|
8837
8867
|
'stroke-width',
|
|
8868
|
+
'stroke',
|
|
8838
8869
|
'style',
|
|
8839
|
-
'tableValues',
|
|
8840
|
-
'result',
|
|
8841
|
-
'rowspan',
|
|
8842
8870
|
'summary',
|
|
8843
|
-
'target',
|
|
8844
8871
|
'tabindex',
|
|
8872
|
+
'tableValues',
|
|
8873
|
+
'target',
|
|
8845
8874
|
'text-align',
|
|
8846
8875
|
'text-anchor',
|
|
8847
8876
|
'textAnchor',
|
|
@@ -8898,6 +8927,7 @@ AST.allowedReferences = [
|
|
|
8898
8927
|
* @type {Array<string>}
|
|
8899
8928
|
*/
|
|
8900
8929
|
AST.allowedTags = [
|
|
8930
|
+
'#text',
|
|
8901
8931
|
'a',
|
|
8902
8932
|
'abbr',
|
|
8903
8933
|
'b',
|
|
@@ -8922,10 +8952,10 @@ AST.allowedTags = [
|
|
|
8922
8952
|
'feFuncG',
|
|
8923
8953
|
'feFuncR',
|
|
8924
8954
|
'feGaussianBlur',
|
|
8925
|
-
'feMorphology',
|
|
8926
|
-
'feOffset',
|
|
8927
8955
|
'feMerge',
|
|
8928
8956
|
'feMergeNode',
|
|
8957
|
+
'feMorphology',
|
|
8958
|
+
'feOffset',
|
|
8929
8959
|
'filter',
|
|
8930
8960
|
'h1',
|
|
8931
8961
|
'h2',
|
|
@@ -8954,18 +8984,17 @@ AST.allowedTags = [
|
|
|
8954
8984
|
'sup',
|
|
8955
8985
|
'svg',
|
|
8956
8986
|
'table',
|
|
8987
|
+
'tbody',
|
|
8988
|
+
'td',
|
|
8957
8989
|
'text',
|
|
8958
8990
|
'textPath',
|
|
8991
|
+
'th',
|
|
8959
8992
|
'thead',
|
|
8960
8993
|
'title',
|
|
8961
|
-
'tbody',
|
|
8962
|
-
'tspan',
|
|
8963
|
-
'td',
|
|
8964
|
-
'th',
|
|
8965
8994
|
'tr',
|
|
8995
|
+
'tspan',
|
|
8966
8996
|
'u',
|
|
8967
|
-
'ul'
|
|
8968
|
-
'#text'
|
|
8997
|
+
'ul'
|
|
8969
8998
|
];
|
|
8970
8999
|
AST.emptyHTML = emptyHTML;
|
|
8971
9000
|
/**
|
|
@@ -9161,7 +9190,7 @@ function format(str = '', ctx, owner) {
|
|
|
9161
9190
|
// The sub expression regex is the same as the top expression regex,
|
|
9162
9191
|
// but except parens and block helpers (#), and surrounded by parens
|
|
9163
9192
|
// 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;
|
|
9193
|
+
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
9194
|
/*
|
|
9166
9195
|
* Get a literal or variable value inside a template expression. May be
|
|
9167
9196
|
* extended with other types like string or null if needed, but keep it
|
|
@@ -9296,9 +9325,11 @@ function format(str = '', ctx, owner) {
|
|
|
9296
9325
|
[expression] : expression.split(':');
|
|
9297
9326
|
replacement = resolveProperty(valueAndFormat.shift() || '');
|
|
9298
9327
|
// Format the replacement
|
|
9299
|
-
|
|
9328
|
+
const isFloat = replacement % 1 !== 0;
|
|
9329
|
+
if (typeof replacement === 'number' &&
|
|
9330
|
+
(valueAndFormat.length || isFloat)) {
|
|
9300
9331
|
const segment = valueAndFormat.join(':');
|
|
9301
|
-
if (floatRegex.test(segment)) { // Float
|
|
9332
|
+
if (floatRegex.test(segment) || isFloat) { // Float
|
|
9302
9333
|
const decimals = parseInt((segment.match(decRegex) || ['', '-1'])[1], 10);
|
|
9303
9334
|
if (replacement !== null) {
|
|
9304
9335
|
replacement = numberFormatter(replacement, decimals, lang.decimalPoint, segment.indexOf(',') > -1 ? lang.thousandsSep : '');
|
|
@@ -9393,8 +9424,7 @@ function numberFormat(number, decimals, decimalPoint, thousandsSep) {
|
|
|
9393
9424
|
options.useGrouping = false;
|
|
9394
9425
|
}
|
|
9395
9426
|
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));
|
|
9427
|
+
'en' : (this?.locale || lang.locale || Templating_pageLang), cacheKey = JSON.stringify(options) + locale, nf = numberFormatCache[cacheKey] ?? (numberFormatCache[cacheKey] = new Intl.NumberFormat(locale, options));
|
|
9398
9428
|
ret = nf.format(number);
|
|
9399
9429
|
// If thousandsSep or decimalPoint are set, fall back to using English
|
|
9400
9430
|
// format with string replacement for the separators.
|
|
@@ -10718,8 +10748,8 @@ class SVGElement {
|
|
|
10718
10748
|
toggleTextShadowShim('');
|
|
10719
10749
|
}
|
|
10720
10750
|
}
|
|
10721
|
-
catch
|
|
10722
|
-
|
|
10751
|
+
catch {
|
|
10752
|
+
// Ignore error
|
|
10723
10753
|
}
|
|
10724
10754
|
// If the bBox is not set, the try-catch block above failed. The
|
|
10725
10755
|
// other condition is for Opera that returns a width of
|
|
@@ -11624,7 +11654,8 @@ class SVGLabel extends SVG_SVGElement {
|
|
|
11624
11654
|
* Constructor
|
|
11625
11655
|
*
|
|
11626
11656
|
* */
|
|
11627
|
-
constructor(renderer, str, x, y, shape,
|
|
11657
|
+
constructor(renderer, str, x, y, shape, // @todo (SymbolKey|string),
|
|
11658
|
+
anchorX, anchorY, useHTML, baseline, className) {
|
|
11628
11659
|
super(renderer, 'g');
|
|
11629
11660
|
this.paddingLeftSetter = this.paddingSetter;
|
|
11630
11661
|
this.paddingRightSetter = this.paddingSetter;
|
|
@@ -11957,10 +11988,18 @@ class SVGLabel extends SVG_SVGElement {
|
|
|
11957
11988
|
// Force animation even when setting to the same value (#7898)
|
|
11958
11989
|
this['forceAnimate:x'] = true;
|
|
11959
11990
|
}
|
|
11991
|
+
if (this.anchorX) {
|
|
11992
|
+
// #22907, force anchorX to animate after x set
|
|
11993
|
+
this['forceAnimate:anchorX'] = true;
|
|
11994
|
+
}
|
|
11960
11995
|
this.xSetting = Math.round(value);
|
|
11961
11996
|
this.attr('translateX', this.xSetting);
|
|
11962
11997
|
}
|
|
11963
11998
|
ySetter(value) {
|
|
11999
|
+
if (this.anchorY) {
|
|
12000
|
+
// #22907, force anchorY to animate after y set
|
|
12001
|
+
this['forceAnimate:anchorY'] = true;
|
|
12002
|
+
}
|
|
11964
12003
|
this.ySetting = this.y = Math.round(value);
|
|
11965
12004
|
this.attr('translateY', this.ySetting);
|
|
11966
12005
|
}
|
|
@@ -12627,8 +12666,8 @@ class TextBuilder {
|
|
|
12627
12666
|
lengths[end] = startAt +
|
|
12628
12667
|
parentNode.getSubStringLength(0, words ? end + 1 : end);
|
|
12629
12668
|
}
|
|
12630
|
-
catch
|
|
12631
|
-
|
|
12669
|
+
catch {
|
|
12670
|
+
// Ignore error
|
|
12632
12671
|
}
|
|
12633
12672
|
}
|
|
12634
12673
|
}
|
|
@@ -12880,7 +12919,7 @@ class SVGRenderer {
|
|
|
12880
12919
|
this.url = this.getReferenceURL();
|
|
12881
12920
|
// Add description
|
|
12882
12921
|
const desc = this.createElement('desc').add();
|
|
12883
|
-
desc.element.appendChild(SVGRenderer_doc.createTextNode('Created with Highcharts 12.
|
|
12922
|
+
desc.element.appendChild(SVGRenderer_doc.createTextNode('Created with Highcharts 12.4.0'));
|
|
12884
12923
|
this.defs = this.createElement('defs').add();
|
|
12885
12924
|
this.allowHTML = allowHTML;
|
|
12886
12925
|
this.forExport = forExport;
|
|
@@ -13216,6 +13255,9 @@ class SVGRenderer {
|
|
|
13216
13255
|
* The contrast color, either `#000000` or `#FFFFFF`.
|
|
13217
13256
|
*/
|
|
13218
13257
|
getContrast(color) {
|
|
13258
|
+
if (color === 'transparent') {
|
|
13259
|
+
return '#000000';
|
|
13260
|
+
}
|
|
13219
13261
|
// #6216, #17273
|
|
13220
13262
|
const rgba256 = Color_Color.parse(color).rgba,
|
|
13221
13263
|
// For each rgb channel, compute the luminosity based on all
|
|
@@ -14016,15 +14058,15 @@ class SVGRenderer {
|
|
|
14016
14058
|
*
|
|
14017
14059
|
* @function Highcharts.SVGRenderer#fontMetrics
|
|
14018
14060
|
*
|
|
14019
|
-
* @param {Highcharts.SVGElement|Highcharts.SVGDOMElement|number}
|
|
14020
|
-
*
|
|
14021
|
-
*
|
|
14061
|
+
* @param {Highcharts.SVGElement|Highcharts.SVGDOMElement|number} ref
|
|
14062
|
+
* The element to inspect for a current font size. If a number is given,
|
|
14063
|
+
* it's used as a fall back for direct font size in pixels.
|
|
14022
14064
|
*
|
|
14023
14065
|
* @return {Highcharts.FontMetricsObject}
|
|
14024
|
-
*
|
|
14066
|
+
* The font metrics.
|
|
14025
14067
|
*/
|
|
14026
|
-
fontMetrics(
|
|
14027
|
-
const f = SVGRenderer_pInt(SVG_SVGElement.prototype.getStyle.call(
|
|
14068
|
+
fontMetrics(ref) {
|
|
14069
|
+
const f = SVGRenderer_isNumber(ref) ? ref : SVGRenderer_pInt((SVG_SVGElement.prototype.getStyle.call(ref, 'font-size') || 0));
|
|
14028
14070
|
// Empirical values found by comparing font size and bounding box
|
|
14029
14071
|
// height. Applies to the default font family.
|
|
14030
14072
|
// https://jsfiddle.net/highcharts/7xvn7/
|
|
@@ -14637,10 +14679,10 @@ const { attr: HTMLElement_attr, css: HTMLElement_css, createElement: HTMLElement
|
|
|
14637
14679
|
* @private
|
|
14638
14680
|
*/
|
|
14639
14681
|
function commonSetter(value, key, elem) {
|
|
14640
|
-
const style = this.div?.style
|
|
14682
|
+
const style = this.div?.style;
|
|
14641
14683
|
SVG_SVGElement.prototype[`${key}Setter`].call(this, value, key, elem);
|
|
14642
14684
|
if (style) {
|
|
14643
|
-
style[key] = value;
|
|
14685
|
+
elem.style[key] = style[key] = value;
|
|
14644
14686
|
}
|
|
14645
14687
|
}
|
|
14646
14688
|
/**
|
|
@@ -14685,6 +14727,10 @@ const decorateSVGGroup = (g, container) => {
|
|
|
14685
14727
|
div.style[key === 'translateX' ? 'left' : 'top'] = `${value}px`;
|
|
14686
14728
|
g.doTransform = true;
|
|
14687
14729
|
};
|
|
14730
|
+
g.scaleXSetter = g.scaleYSetter = (value, key) => {
|
|
14731
|
+
g[key] = value;
|
|
14732
|
+
g.doTransform = true;
|
|
14733
|
+
};
|
|
14688
14734
|
g.opacitySetter = g.visibilitySetter = commonSetter;
|
|
14689
14735
|
// Extend the parent group's css function by updating the parallel div
|
|
14690
14736
|
// counterpart with the same style.
|
|
@@ -14879,7 +14925,8 @@ class HTMLElement extends SVG_SVGElement {
|
|
|
14879
14925
|
// Calling offsetWidth affects rendering time as it forces layout
|
|
14880
14926
|
// (#7656).
|
|
14881
14927
|
if (textWidth !== oldTextWidth) { // #983, #1254
|
|
14882
|
-
const textPxLength = getTextPxLength(), textWidthNum = textWidth || 0, willOverWrap =
|
|
14928
|
+
const textPxLength = getTextPxLength(), textWidthNum = textWidth || 0, willOverWrap = !renderer.styledMode &&
|
|
14929
|
+
element.style.textOverflow === '' &&
|
|
14883
14930
|
element.style.webkitLineClamp;
|
|
14884
14931
|
if ((textWidthNum > oldTextWidth ||
|
|
14885
14932
|
textPxLength > textWidthNum ||
|
|
@@ -15772,14 +15819,6 @@ var AxisDefaults;
|
|
|
15772
15819
|
* @context Highcharts.Axis
|
|
15773
15820
|
* @apioption xAxis.events.pointInBreak
|
|
15774
15821
|
*/
|
|
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
15822
|
/**
|
|
15784
15823
|
* Fires when the minimum and maximum is set for the axis, either by
|
|
15785
15824
|
* calling the `.setExtremes()` method or by selecting an area in the
|
|
@@ -16850,6 +16889,10 @@ var AxisDefaults;
|
|
|
16850
16889
|
* overrides the default behaviour of [tickPixelInterval](
|
|
16851
16890
|
* #xAxis.tickPixelInterval) and [tickInterval](#xAxis.tickInterval).
|
|
16852
16891
|
*
|
|
16892
|
+
* Note: When working with date-time axes, be aware of time zone
|
|
16893
|
+
* handling. See the [documentation on time options](https://www.highcharts.com/docs/chart-concepts/axes#datetime)
|
|
16894
|
+
* for best practices.
|
|
16895
|
+
*
|
|
16853
16896
|
* @see [tickPositioner](#xAxis.tickPositioner)
|
|
16854
16897
|
*
|
|
16855
16898
|
* @sample {highcharts} highcharts/xaxis/tickpositions-tickpositioner/
|
|
@@ -17937,6 +17980,7 @@ var AxisDefaults;
|
|
|
17937
17980
|
* @default {highcharts} Values
|
|
17938
17981
|
* @default {highstock} undefined
|
|
17939
17982
|
* @product highcharts highstock gantt
|
|
17983
|
+
* @apioption yAxis.title.text
|
|
17940
17984
|
*/
|
|
17941
17985
|
},
|
|
17942
17986
|
/**
|
|
@@ -18307,7 +18351,7 @@ class Tick {
|
|
|
18307
18351
|
// position, use that. If not, use the general format.
|
|
18308
18352
|
if (axis.dateTime) {
|
|
18309
18353
|
if (tickPositionInfo) {
|
|
18310
|
-
dateTimeLabelFormats = chart.time.resolveDTLFormat(options.dateTimeLabelFormats[(!options.grid &&
|
|
18354
|
+
dateTimeLabelFormats = chart.time.resolveDTLFormat(options.dateTimeLabelFormats[(!options.grid?.enabled &&
|
|
18311
18355
|
tickPositionInfo.higherRanks[pos]) ||
|
|
18312
18356
|
tickPositionInfo.unitName]);
|
|
18313
18357
|
dateTimeLabelFormat = dateTimeLabelFormats.main;
|
|
@@ -19426,7 +19470,7 @@ class Axis {
|
|
|
19426
19470
|
}
|
|
19427
19471
|
const minPixelPadding = axis.minPixelPadding, doPostTranslate = (axis.isOrdinal ||
|
|
19428
19472
|
axis.brokenAxis?.hasBreaks ||
|
|
19429
|
-
(axis.logarithmic && handleLog)) && axis.lin2val;
|
|
19473
|
+
(axis.logarithmic && handleLog)) && !!axis.lin2val;
|
|
19430
19474
|
let sign = 1, cvsOffset = 0, localA = old && axis.old ? axis.old.transA : axis.transA, returnValue = 0;
|
|
19431
19475
|
if (!localA) {
|
|
19432
19476
|
localA = axis.transA;
|
|
@@ -20988,7 +21032,8 @@ class Axis {
|
|
|
20988
21032
|
if (cssWidth !== void 0) {
|
|
20989
21033
|
return parseInt(String(cssWidth), 10);
|
|
20990
21034
|
}
|
|
20991
|
-
|
|
21035
|
+
// Skip marginLeft for opposite axis to avoid label cutoff, #22821
|
|
21036
|
+
if (!this.opposite && marginLeft) {
|
|
20992
21037
|
return marginLeft - chart.spacing[3];
|
|
20993
21038
|
}
|
|
20994
21039
|
}
|
|
@@ -21703,7 +21748,7 @@ class Axis {
|
|
|
21703
21748
|
axis.plotLinesAndBandsGroups[plotGroup].destroy();
|
|
21704
21749
|
}
|
|
21705
21750
|
// Delete all properties and fall back to the prototype.
|
|
21706
|
-
Axis_objectEach(axis, function (
|
|
21751
|
+
Axis_objectEach(axis, function (_val, key) {
|
|
21707
21752
|
if (axis.getKeepProps().indexOf(key) === -1) {
|
|
21708
21753
|
delete axis[key];
|
|
21709
21754
|
}
|
|
@@ -22986,7 +23031,7 @@ class PlotLineOrBand {
|
|
|
22986
23031
|
// Common for lines and bands. Add events only if they were not added
|
|
22987
23032
|
// before.
|
|
22988
23033
|
if (!this.eventsAdded && events) {
|
|
22989
|
-
PlotLineOrBand_objectEach(events, (
|
|
23034
|
+
PlotLineOrBand_objectEach(events, (_event, eventType) => {
|
|
22990
23035
|
svgElem?.on(eventType, (e) => {
|
|
22991
23036
|
events[eventType].apply(this, [e]);
|
|
22992
23037
|
});
|
|
@@ -23060,6 +23105,11 @@ class PlotLineOrBand {
|
|
|
23060
23105
|
});
|
|
23061
23106
|
if (!axis.chart.styledMode) {
|
|
23062
23107
|
label.css(PlotLineOrBand_merge({
|
|
23108
|
+
// To allow theming, and in lack of a general place to set
|
|
23109
|
+
// default options for plot lines and bands, default to the
|
|
23110
|
+
// title color. If we expose the palette, we should use that
|
|
23111
|
+
// instead.
|
|
23112
|
+
color: axis.chart.options.title?.style?.color,
|
|
23063
23113
|
fontSize: '0.8em',
|
|
23064
23114
|
textOverflow: (isBand && !inside) ? '' : 'ellipsis'
|
|
23065
23115
|
}, optionsLabel.style));
|
|
@@ -23592,7 +23642,7 @@ class PlotLineOrBand {
|
|
|
23592
23642
|
* @apioption xAxis.plotLines.zIndex
|
|
23593
23643
|
*/
|
|
23594
23644
|
/**
|
|
23595
|
-
* Text labels for the plot
|
|
23645
|
+
* Text labels for the plot lines
|
|
23596
23646
|
*
|
|
23597
23647
|
* @apioption xAxis.plotLines.label
|
|
23598
23648
|
*/
|
|
@@ -23610,6 +23660,14 @@ class PlotLineOrBand {
|
|
|
23610
23660
|
* @since 2.1
|
|
23611
23661
|
* @apioption xAxis.plotLines.label.align
|
|
23612
23662
|
*/
|
|
23663
|
+
/**
|
|
23664
|
+
* Whether or not the label can be hidden if it overlaps with another label.
|
|
23665
|
+
*
|
|
23666
|
+
* @type {boolean}
|
|
23667
|
+
* @default undefined
|
|
23668
|
+
* @since 11.4.8
|
|
23669
|
+
* @apioption xAxis.plotBands.label.allowOverlap
|
|
23670
|
+
*/
|
|
23613
23671
|
/**
|
|
23614
23672
|
* Whether to hide labels that are outside the plot area.
|
|
23615
23673
|
*
|
|
@@ -23987,7 +24045,9 @@ class Tooltip {
|
|
|
23987
24045
|
// Use the average position for multiple points
|
|
23988
24046
|
ret = [chartX - plotLeft, chartY - plotTop];
|
|
23989
24047
|
}
|
|
23990
|
-
|
|
24048
|
+
const params = { point: points[0], ret };
|
|
24049
|
+
Tooltip_fireEvent(this, 'getAnchor', params);
|
|
24050
|
+
return params.ret.map(Math.round);
|
|
23991
24051
|
}
|
|
23992
24052
|
/**
|
|
23993
24053
|
* Get the CSS class names for the tooltip's label. Styles the label
|
|
@@ -25264,6 +25324,15 @@ class Point {
|
|
|
25264
25324
|
* @name Highcharts.Point#shapeArgs
|
|
25265
25325
|
* @type {Readonly<Highcharts.SVGAttributes>|undefined}
|
|
25266
25326
|
*/
|
|
25327
|
+
/**
|
|
25328
|
+
* Defines the tooltip's position for a data point in a chart. It is an
|
|
25329
|
+
* array of numbers representing the coordinates for the tooltip's
|
|
25330
|
+
* placement, allowing for precise control over its location.
|
|
25331
|
+
*
|
|
25332
|
+
* @readonly
|
|
25333
|
+
* @name Highcharts.Point#tooltipPos
|
|
25334
|
+
* @type {Readonly<Array<number>>|undefined}
|
|
25335
|
+
*/
|
|
25267
25336
|
/**
|
|
25268
25337
|
* The total of values in either a stack for stacked series, or a pie in a
|
|
25269
25338
|
* pie series.
|
|
@@ -26549,17 +26618,20 @@ class Pointer {
|
|
|
26549
26618
|
activeSeries.push.apply(activeSeries, this.chart.series.filter((otherSeries) => otherSeries.markerGroup === series.markerGroup));
|
|
26550
26619
|
}
|
|
26551
26620
|
});
|
|
26552
|
-
|
|
26553
|
-
|
|
26621
|
+
for (const series of this.chart.series) {
|
|
26622
|
+
const seriesOptions = series.options;
|
|
26623
|
+
if (seriesOptions.states?.inactive?.enabled === false) {
|
|
26624
|
+
continue;
|
|
26625
|
+
}
|
|
26554
26626
|
if (activeSeries.indexOf(series) === -1) {
|
|
26555
26627
|
// Inactive series
|
|
26556
26628
|
series.setState('inactive', true);
|
|
26557
26629
|
}
|
|
26558
|
-
else if (
|
|
26630
|
+
else if (seriesOptions.inactiveOtherPoints) {
|
|
26559
26631
|
// Active series, but other points should be inactivated
|
|
26560
26632
|
series.setAllPointsToState('inactive');
|
|
26561
26633
|
}
|
|
26562
|
-
}
|
|
26634
|
+
}
|
|
26563
26635
|
}
|
|
26564
26636
|
/**
|
|
26565
26637
|
* Destroys the Pointer object and disconnects DOM events.
|
|
@@ -26659,8 +26731,7 @@ class Pointer {
|
|
|
26659
26731
|
});
|
|
26660
26732
|
const { shapeType, attrs } = this.getSelectionMarkerAttrs(chartX, chartY);
|
|
26661
26733
|
// Make a selection
|
|
26662
|
-
if (
|
|
26663
|
-
this.hasZoom &&
|
|
26734
|
+
if (this.hasZoom &&
|
|
26664
26735
|
clickedInside &&
|
|
26665
26736
|
!panKeyPressed) {
|
|
26666
26737
|
if (!selectionMarker) {
|
|
@@ -26773,6 +26844,7 @@ class Pointer {
|
|
|
26773
26844
|
chart.mouseIsDown = false;
|
|
26774
26845
|
this.hasDragged = 0;
|
|
26775
26846
|
this.pinchDown = [];
|
|
26847
|
+
this.hasPinchMoved = false;
|
|
26776
26848
|
}
|
|
26777
26849
|
}
|
|
26778
26850
|
/**
|
|
@@ -27246,7 +27318,7 @@ class Pointer {
|
|
|
27246
27318
|
this.drag(pEvt);
|
|
27247
27319
|
}
|
|
27248
27320
|
// Show the tooltip and run mouse over events (#977)
|
|
27249
|
-
if (!chart.openMenu &&
|
|
27321
|
+
if (!chart.exporting?.openMenu &&
|
|
27250
27322
|
(this.inClass(pEvt.target, 'highcharts-tracker') ||
|
|
27251
27323
|
chart.isInsidePlot(pEvt.chartX - chart.plotLeft, pEvt.chartY - chart.plotTop, {
|
|
27252
27324
|
visiblePlotOnly: true
|
|
@@ -27322,6 +27394,11 @@ class Pointer {
|
|
|
27322
27394
|
* @function Highcharts.Pointer#onDocumentMouseUp
|
|
27323
27395
|
*/
|
|
27324
27396
|
onDocumentMouseUp(e) {
|
|
27397
|
+
// #17852, IOS devices sometimes reverts back to previous point when
|
|
27398
|
+
// dragging between points
|
|
27399
|
+
if (e?.touches && this.hasPinchMoved) {
|
|
27400
|
+
e?.preventDefault?.();
|
|
27401
|
+
}
|
|
27325
27402
|
Pointer_charts[Pointer_pick(Pointer.hoverChartIndex, -1)]
|
|
27326
27403
|
?.pointer
|
|
27327
27404
|
?.drop(e);
|
|
@@ -27865,7 +27942,7 @@ class Pointer {
|
|
|
27865
27942
|
isInside = chart.isInsidePlot(e.chartX - chart.plotLeft, e.chartY - chart.plotTop, {
|
|
27866
27943
|
visiblePlotOnly: true
|
|
27867
27944
|
});
|
|
27868
|
-
if (isInside && !chart.openMenu) {
|
|
27945
|
+
if (isInside && !chart.exporting?.openMenu) {
|
|
27869
27946
|
// Run mouse events and display tooltip etc
|
|
27870
27947
|
if (start) {
|
|
27871
27948
|
this.runPointActions(e);
|
|
@@ -27877,7 +27954,7 @@ class Pointer {
|
|
|
27877
27954
|
// checking how much it moved, and cancelling on small
|
|
27878
27955
|
// distances. #3450. Tested and still relevant as of 2024.
|
|
27879
27956
|
if (e.type === 'touchmove') {
|
|
27880
|
-
hasMoved = pinchDown[0] ? // #5266
|
|
27957
|
+
this.hasPinchMoved = hasMoved = pinchDown[0] ? // #5266
|
|
27881
27958
|
(Math.pow(pinchDown[0].chartX - e.chartX, 2) +
|
|
27882
27959
|
Math.pow(pinchDown[0].chartY - e.chartY, 2)) >= 16 :
|
|
27883
27960
|
false;
|
|
@@ -30805,9 +30882,7 @@ const seriesDefaults = {
|
|
|
30805
30882
|
size: 10,
|
|
30806
30883
|
/**
|
|
30807
30884
|
* 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.
|
|
30885
|
+
* using the `attributes` setting.
|
|
30811
30886
|
*
|
|
30812
30887
|
* @since 4.0
|
|
30813
30888
|
* @product highcharts highstock
|
|
@@ -31120,6 +31195,12 @@ const seriesDefaults = {
|
|
|
31120
31195
|
*
|
|
31121
31196
|
* */
|
|
31122
31197
|
|
|
31198
|
+
/* *
|
|
31199
|
+
*
|
|
31200
|
+
* Imports
|
|
31201
|
+
*
|
|
31202
|
+
* */
|
|
31203
|
+
|
|
31123
31204
|
|
|
31124
31205
|
|
|
31125
31206
|
const { defaultOptions: SeriesRegistry_defaultOptions } = Defaults;
|
|
@@ -31203,7 +31284,8 @@ var SeriesRegistry;
|
|
|
31203
31284
|
defaultPlotOptions[type] = SeriesRegistry_merge(defaultPlotOptions[parent], options);
|
|
31204
31285
|
// Create the class
|
|
31205
31286
|
delete SeriesRegistry.seriesTypes[type];
|
|
31206
|
-
|
|
31287
|
+
const parentClass = SeriesRegistry.seriesTypes[parent] || Series_Series, childClass = SeriesRegistry_extendClass(parentClass, seriesProto);
|
|
31288
|
+
registerSeriesType(type, childClass);
|
|
31207
31289
|
SeriesRegistry.seriesTypes[type].prototype.type = type;
|
|
31208
31290
|
// Create the point class if needed
|
|
31209
31291
|
if (pointProto) {
|
|
@@ -32035,7 +32117,9 @@ class Series {
|
|
|
32035
32117
|
// all the rest are defined the same way. Although the 'for' loops
|
|
32036
32118
|
// are similar, they are repeated inside each if-else conditional
|
|
32037
32119
|
// for max performance.
|
|
32038
|
-
let runTurbo = turboThreshold &&
|
|
32120
|
+
let runTurbo = (turboThreshold &&
|
|
32121
|
+
!options.relativeXValue &&
|
|
32122
|
+
dataLength > turboThreshold);
|
|
32039
32123
|
if (runTurbo) {
|
|
32040
32124
|
const firstPoint = series.getFirstValidPoint(data), lastPoint = series.getFirstValidPoint(data, dataLength - 1, -1), isShortArray = (a) => Boolean(Series_isArray(a) && (keys || Series_isNumber(a[0])));
|
|
32041
32125
|
// Assume all points are numbers
|
|
@@ -33380,18 +33464,26 @@ class Series {
|
|
|
33380
33464
|
horAxis = vertAxis;
|
|
33381
33465
|
vertAxis = this.xAxis;
|
|
33382
33466
|
}
|
|
33383
|
-
|
|
33467
|
+
const params = {
|
|
33468
|
+
scale: 1,
|
|
33384
33469
|
translateX: horAxis ? horAxis.left : chart.plotLeft,
|
|
33385
33470
|
translateY: vertAxis ? vertAxis.top : chart.plotTop,
|
|
33471
|
+
name
|
|
33472
|
+
};
|
|
33473
|
+
Series_fireEvent(this, 'getPlotBox', params);
|
|
33474
|
+
const { scale, translateX, translateY } = params;
|
|
33475
|
+
return {
|
|
33476
|
+
translateX,
|
|
33477
|
+
translateY,
|
|
33386
33478
|
rotation: inverted ? 90 : 0,
|
|
33387
33479
|
rotationOriginX: inverted ?
|
|
33388
|
-
(horAxis.len - vertAxis.len) / 2 :
|
|
33480
|
+
scale * (horAxis.len - vertAxis.len) / 2 :
|
|
33389
33481
|
0,
|
|
33390
33482
|
rotationOriginY: inverted ?
|
|
33391
|
-
(horAxis.len + vertAxis.len) / 2 :
|
|
33483
|
+
scale * (horAxis.len + vertAxis.len) / 2 :
|
|
33392
33484
|
0,
|
|
33393
|
-
scaleX: inverted ? -
|
|
33394
|
-
scaleY:
|
|
33485
|
+
scaleX: inverted ? -scale : scale, // #1623
|
|
33486
|
+
scaleY: scale
|
|
33395
33487
|
};
|
|
33396
33488
|
}
|
|
33397
33489
|
/**
|
|
@@ -34011,7 +34103,7 @@ class Series {
|
|
|
34011
34103
|
oldOptions.type ||
|
|
34012
34104
|
chart.options.chart.type);
|
|
34013
34105
|
const keepPoints = !(
|
|
34014
|
-
// Indicators
|
|
34106
|
+
// Indicators etc recalculate the data. It should be
|
|
34015
34107
|
// possible to omit this.
|
|
34016
34108
|
this.hasDerivedData ||
|
|
34017
34109
|
// New type requires new point classes
|
|
@@ -35221,16 +35313,14 @@ class Legend {
|
|
|
35221
35313
|
* The item to remove
|
|
35222
35314
|
*/
|
|
35223
35315
|
destroyItem(item) {
|
|
35224
|
-
const
|
|
35316
|
+
const legendItem = item.legendItem || {};
|
|
35225
35317
|
// Destroy SVG elements
|
|
35226
35318
|
for (const key of ['group', 'label', 'line', 'symbol']) {
|
|
35227
35319
|
if (legendItem[key]) {
|
|
35228
35320
|
legendItem[key] = legendItem[key].destroy();
|
|
35229
35321
|
}
|
|
35230
35322
|
}
|
|
35231
|
-
|
|
35232
|
-
Legend_discardElement(checkbox);
|
|
35233
|
-
}
|
|
35323
|
+
item.checkbox = Legend_discardElement(item.checkbox);
|
|
35234
35324
|
item.legendItem = void 0;
|
|
35235
35325
|
}
|
|
35236
35326
|
/**
|
|
@@ -35559,13 +35649,13 @@ class Legend {
|
|
|
35559
35649
|
/(rtv|rm|rbv)/,
|
|
35560
35650
|
/(rbh|cb|lbh)/,
|
|
35561
35651
|
/(lbv|lm|ltv)/
|
|
35562
|
-
]).forEach(
|
|
35652
|
+
]).forEach((alignments, side) => {
|
|
35563
35653
|
if (alignments.test(alignment) && !Legend_defined(margin[side])) {
|
|
35564
35654
|
// Now we have detected on which side of the chart we should
|
|
35565
35655
|
// reserve space for the legend
|
|
35566
35656
|
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
|
-
|
|
35657
|
+
[1, -1, -1, 1][side] * (options[(side % 2) ? 'x' : 'y']) +
|
|
35658
|
+
(options.margin ?? 12) +
|
|
35569
35659
|
spacing[side] +
|
|
35570
35660
|
(chart.titleOffset[side] || 0)));
|
|
35571
35661
|
}
|
|
@@ -36179,6 +36269,9 @@ class Legend {
|
|
|
36179
36269
|
*/ /**
|
|
36180
36270
|
* @name Highcharts.LegendItemObject#symbol
|
|
36181
36271
|
* @type {Highcharts.SVGElement|undefined}
|
|
36272
|
+
*/ /**
|
|
36273
|
+
* @name Highcharts.LegendItemObject#label
|
|
36274
|
+
* @type {Highcharts.SVGElement|undefined}
|
|
36182
36275
|
*/
|
|
36183
36276
|
/**
|
|
36184
36277
|
* Gets fired when the legend item is clicked. The default
|
|
@@ -37525,8 +37618,8 @@ class Chart {
|
|
|
37525
37618
|
getAxisMargins() {
|
|
37526
37619
|
const chart = this,
|
|
37527
37620
|
// [top, right, bottom, left]
|
|
37528
|
-
axisOffset = chart.axisOffset = [0, 0, 0, 0], colorAxis = chart.colorAxis, margin = chart.margin, getOffset =
|
|
37529
|
-
axes.forEach(
|
|
37621
|
+
axisOffset = chart.axisOffset = [0, 0, 0, 0], colorAxis = chart.colorAxis, margin = chart.margin, getOffset = (axes) => {
|
|
37622
|
+
axes.forEach((axis) => {
|
|
37530
37623
|
if (axis.visible) {
|
|
37531
37624
|
axis.getOffset();
|
|
37532
37625
|
}
|
|
@@ -37540,9 +37633,9 @@ class Chart {
|
|
|
37540
37633
|
getOffset(colorAxis);
|
|
37541
37634
|
}
|
|
37542
37635
|
// Add the axis offsets
|
|
37543
|
-
Chart_marginNames.forEach(
|
|
37636
|
+
Chart_marginNames.forEach((marginName, side) => {
|
|
37544
37637
|
if (!Chart_defined(margin[side])) {
|
|
37545
|
-
chart[
|
|
37638
|
+
chart[marginName] += axisOffset[side];
|
|
37546
37639
|
}
|
|
37547
37640
|
});
|
|
37548
37641
|
chart.setChartSize();
|
|
@@ -37583,7 +37676,7 @@ class Chart {
|
|
|
37583
37676
|
delete chart.pointer?.chartPosition;
|
|
37584
37677
|
// Width and height checks for display:none. Target is doc in Opera
|
|
37585
37678
|
// and win in Firefox, Chrome and IE9.
|
|
37586
|
-
if (!chart.isPrinting &&
|
|
37679
|
+
if (!chart.exporting?.isPrinting &&
|
|
37587
37680
|
!chart.isResizing &&
|
|
37588
37681
|
oldBox &&
|
|
37589
37682
|
// When fired by resize observer inside hidden container
|
|
@@ -37797,21 +37890,22 @@ class Chart {
|
|
|
37797
37890
|
Chart_fireEvent(this, 'resetMargins');
|
|
37798
37891
|
const chart = this, chartOptions = chart.options.chart, plotBorderWidth = chartOptions.plotBorderWidth || 0, halfWidth = Math.round(plotBorderWidth) / 2;
|
|
37799
37892
|
// Create margin and spacing array
|
|
37800
|
-
['margin', 'spacing'].forEach(
|
|
37893
|
+
['margin', 'spacing'].forEach((target) => {
|
|
37801
37894
|
const value = chartOptions[target], values = Chart_isObject(value) ? value : [value, value, value, value];
|
|
37802
37895
|
[
|
|
37803
37896
|
'Top',
|
|
37804
37897
|
'Right',
|
|
37805
37898
|
'Bottom',
|
|
37806
37899
|
'Left'
|
|
37807
|
-
].forEach(
|
|
37808
|
-
chart[target][side] =
|
|
37900
|
+
].forEach((sideName, side) => {
|
|
37901
|
+
chart[target][side] = (chartOptions[`${target}${sideName}`] ??
|
|
37902
|
+
values[side]);
|
|
37809
37903
|
});
|
|
37810
37904
|
});
|
|
37811
37905
|
// Set margin names like chart.plotTop, chart.plotLeft,
|
|
37812
37906
|
// chart.marginRight, chart.marginBottom.
|
|
37813
|
-
Chart_marginNames.forEach(
|
|
37814
|
-
chart[
|
|
37907
|
+
Chart_marginNames.forEach((marginName, side) => {
|
|
37908
|
+
chart[marginName] = chart.margin[side] ?? chart.spacing[side];
|
|
37815
37909
|
});
|
|
37816
37910
|
chart.axisOffset = [0, 0, 0, 0]; // Top, right, bottom, left
|
|
37817
37911
|
chart.clipOffset = [
|
|
@@ -38122,12 +38216,13 @@ class Chart {
|
|
|
38122
38216
|
renderAxes(colorAxis);
|
|
38123
38217
|
}
|
|
38124
38218
|
// The series
|
|
38125
|
-
|
|
38126
|
-
|
|
38127
|
-
|
|
38128
|
-
|
|
38129
|
-
|
|
38130
|
-
|
|
38219
|
+
chart.seriesGroup || (chart.seriesGroup = renderer.g('series-group')
|
|
38220
|
+
.attr({ zIndex: 3 })
|
|
38221
|
+
.shadow(chart.options.chart.seriesGroupShadow)
|
|
38222
|
+
.add());
|
|
38223
|
+
chart.dataLabelsGroup || (chart.dataLabelsGroup = renderer.g('datalabels-group')
|
|
38224
|
+
.attr({ zIndex: 6 })
|
|
38225
|
+
.add());
|
|
38131
38226
|
chart.renderSeries();
|
|
38132
38227
|
// Credits
|
|
38133
38228
|
chart.addCredits();
|
|
@@ -38959,9 +39054,10 @@ class Chart {
|
|
|
38959
39054
|
*/
|
|
38960
39055
|
transform(params) {
|
|
38961
39056
|
const { axes = this.axes, event, from = {}, reset, selection, to = {}, trigger } = params, { inverted, time } = this;
|
|
38962
|
-
let hasZoomed = false, displayButton, isAnyAxisPanning;
|
|
38963
39057
|
// Remove active points for shared tooltip
|
|
38964
39058
|
this.hoverPoints?.forEach((point) => point.setState());
|
|
39059
|
+
Chart_fireEvent(this, 'transform', params);
|
|
39060
|
+
let hasZoomed = params.hasZoomed || false, displayButton, isAnyAxisPanning;
|
|
38965
39061
|
for (const axis of axes) {
|
|
38966
39062
|
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
39063
|
// If fingers pinched very close on this axis, treat as pan
|
|
@@ -38977,19 +39073,19 @@ class Chart {
|
|
|
38977
39073
|
if (!reset && (fromCenter < 0 || fromCenter > axis.len)) {
|
|
38978
39074
|
continue;
|
|
38979
39075
|
}
|
|
38980
|
-
|
|
38981
|
-
|
|
38982
|
-
|
|
38983
|
-
|
|
38984
|
-
(
|
|
38985
|
-
|
|
38986
|
-
|
|
38987
|
-
|
|
38988
|
-
|
|
38989
|
-
|
|
38990
|
-
|
|
38991
|
-
|
|
38992
|
-
|
|
39076
|
+
// Adjust offset to ensure selection zoom triggers correctly
|
|
39077
|
+
// (#22945)
|
|
39078
|
+
const offset = (axis.chart.polar || axis.isOrdinal) ?
|
|
39079
|
+
0 :
|
|
39080
|
+
(minPointOffset * pointRangeDirection || 0), eventMin = axis.toValue(minPx, true), eventMax = axis.toValue(minPx + len / scale, true);
|
|
39081
|
+
let newMin = eventMin + offset, newMax = eventMax - offset, allExtremes = axis.allExtremes;
|
|
39082
|
+
if (selection) {
|
|
39083
|
+
selection[axis.coll].push({
|
|
39084
|
+
axis,
|
|
39085
|
+
min: Math.min(eventMin, eventMax),
|
|
39086
|
+
max: Math.max(eventMin, eventMax)
|
|
39087
|
+
});
|
|
39088
|
+
}
|
|
38993
39089
|
if (newMin > newMax) {
|
|
38994
39090
|
[newMin, newMax] = [newMax, newMin];
|
|
38995
39091
|
}
|
|
@@ -39029,10 +39125,7 @@ class Chart {
|
|
|
39029
39125
|
// It is not necessary to calculate extremes on ordinal axis,
|
|
39030
39126
|
// because they are already calculated, so we don't want to override
|
|
39031
39127
|
// them.
|
|
39032
|
-
if (!axis.isOrdinal ||
|
|
39033
|
-
axis.options.overscroll || // #21316
|
|
39034
|
-
scale !== 1 ||
|
|
39035
|
-
reset) {
|
|
39128
|
+
if (!axis.isOrdinal || scale !== 1 || reset) {
|
|
39036
39129
|
// If the new range spills over, either to the min or max,
|
|
39037
39130
|
// adjust it.
|
|
39038
39131
|
if (newMin < floor) {
|
|
@@ -39077,6 +39170,13 @@ class Chart {
|
|
|
39077
39170
|
}
|
|
39078
39171
|
hasZoomed = true;
|
|
39079
39172
|
}
|
|
39173
|
+
// Show the resetZoom button for non-cartesian series,
|
|
39174
|
+
// except when triggered by mouse wheel zoom
|
|
39175
|
+
if (!this.hasCartesianSeries &&
|
|
39176
|
+
!reset &&
|
|
39177
|
+
trigger !== 'mousewheel') {
|
|
39178
|
+
displayButton = true;
|
|
39179
|
+
}
|
|
39080
39180
|
if (event) {
|
|
39081
39181
|
this[horiz ? 'mouseDownX' : 'mouseDownY'] =
|
|
39082
39182
|
event[horiz ? 'chartX' : 'chartY'];
|
|
@@ -39368,29 +39468,33 @@ class ScrollablePlotArea {
|
|
|
39368
39468
|
static afterSetSize(chart, e) {
|
|
39369
39469
|
const { minWidth, minHeight } = chart.options.chart.scrollablePlotArea || {}, { clipBox, plotBox, inverted, renderer } = chart;
|
|
39370
39470
|
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
|
-
|
|
39471
|
+
// Skip for exporting
|
|
39472
|
+
if (renderer.forExport) {
|
|
39473
|
+
return;
|
|
39474
|
+
}
|
|
39475
|
+
// The amount of pixels to scroll, the difference between chart width
|
|
39476
|
+
// and scrollable width
|
|
39477
|
+
if (minWidth) {
|
|
39478
|
+
chart.scrollablePixelsX = scrollablePixelsX = Math.max(0, minWidth - chart.chartWidth);
|
|
39479
|
+
if (scrollablePixelsX) {
|
|
39480
|
+
chart.scrollablePlotBox = ScrollablePlotArea_merge(chart.plotBox);
|
|
39481
|
+
plotBox.width = chart.plotWidth += scrollablePixelsX;
|
|
39482
|
+
clipBox[inverted ? 'height' : 'width'] += scrollablePixelsX;
|
|
39483
|
+
recalculateHoriz = true;
|
|
39484
|
+
}
|
|
39485
|
+
// Currently we can only do either X or Y
|
|
39486
|
+
}
|
|
39487
|
+
else if (minHeight) {
|
|
39488
|
+
chart.scrollablePixelsY = scrollablePixelsY = Math.max(0, minHeight - chart.chartHeight);
|
|
39489
|
+
if (ScrollablePlotArea_defined(scrollablePixelsY)) {
|
|
39490
|
+
chart.scrollablePlotBox = ScrollablePlotArea_merge(chart.plotBox);
|
|
39491
|
+
plotBox.height = chart.plotHeight += scrollablePixelsY;
|
|
39492
|
+
clipBox[inverted ? 'width' : 'height'] += scrollablePixelsY;
|
|
39493
|
+
recalculateHoriz = false;
|
|
39494
|
+
}
|
|
39495
|
+
}
|
|
39496
|
+
if (ScrollablePlotArea_defined(recalculateHoriz)) {
|
|
39497
|
+
if (!e.skipAxes) {
|
|
39394
39498
|
for (const axis of chart.axes) {
|
|
39395
39499
|
// Apply the corrected plot size to the axes of the other
|
|
39396
39500
|
// orientation than the scrolling direction
|
|
@@ -39403,6 +39507,10 @@ class ScrollablePlotArea {
|
|
|
39403
39507
|
}
|
|
39404
39508
|
}
|
|
39405
39509
|
}
|
|
39510
|
+
else {
|
|
39511
|
+
// Clear (potential) old box when a new one was not set
|
|
39512
|
+
delete chart.scrollablePlotBox;
|
|
39513
|
+
}
|
|
39406
39514
|
}
|
|
39407
39515
|
constructor(chart) {
|
|
39408
39516
|
const chartOptions = chart.options.chart, Renderer = Renderer_RendererRegistry.getRendererType(), scrollableOptions = chartOptions.scrollablePlotArea || {}, moveFixedElements = this.moveFixedElements.bind(this), styles = {
|
|
@@ -39986,7 +40094,6 @@ class StackItem {
|
|
|
39986
40094
|
|
|
39987
40095
|
const { getDeferredAnimation: StackingAxis_getDeferredAnimation } = AnimationUtilities;
|
|
39988
40096
|
|
|
39989
|
-
|
|
39990
40097
|
const { series: { prototype: seriesProto } } = Series_SeriesRegistry;
|
|
39991
40098
|
|
|
39992
40099
|
|
|
@@ -42189,8 +42296,7 @@ const ColumnSeriesDefaults = {
|
|
|
42189
42296
|
* @apioption plotOptions.column.states.hover.color
|
|
42190
42297
|
*/
|
|
42191
42298
|
/**
|
|
42192
|
-
* How much to brighten the point on interaction.
|
|
42193
|
-
* main color to be defined in hex or rgb(a) format.
|
|
42299
|
+
* How much to brighten the point on interaction.
|
|
42194
42300
|
*
|
|
42195
42301
|
* In styled mode, the hover brightening is by default replaced
|
|
42196
42302
|
* with a fill-opacity set in the `.highcharts-point:hover`
|
|
@@ -43309,7 +43415,7 @@ var DataLabel;
|
|
|
43309
43415
|
*/
|
|
43310
43416
|
function initDataLabelsGroup() {
|
|
43311
43417
|
return this.plotGroup('dataLabelsGroup', 'data-labels', this.hasRendered ? 'inherit' : 'hidden', // #5133, #10220
|
|
43312
|
-
this.options.dataLabels.zIndex || 6);
|
|
43418
|
+
this.options.dataLabels.zIndex || 6, this.chart.dataLabelsGroup);
|
|
43313
43419
|
}
|
|
43314
43420
|
/**
|
|
43315
43421
|
* Init the data labels with the correct animation
|
|
@@ -43447,7 +43553,9 @@ var DataLabel;
|
|
|
43447
43553
|
// Individual labels are disabled if the are explicitly
|
|
43448
43554
|
// disabled in the point options, or if they fall outside
|
|
43449
43555
|
// the plot area.
|
|
43450
|
-
if (labelEnabled &&
|
|
43556
|
+
if (labelEnabled &&
|
|
43557
|
+
DataLabel_defined(labelText) &&
|
|
43558
|
+
labelText !== '') {
|
|
43451
43559
|
if (!dataLabel) {
|
|
43452
43560
|
// Create new label element
|
|
43453
43561
|
dataLabel = renderer.label(labelText, 0, 0, labelOptions.shape, void 0, void 0, labelOptions.useHTML, void 0, 'data-label');
|
|
@@ -45178,8 +45286,7 @@ const PieSeriesDefaults = {
|
|
|
45178
45286
|
*/
|
|
45179
45287
|
hover: {
|
|
45180
45288
|
/**
|
|
45181
|
-
* How much to brighten the point on interaction.
|
|
45182
|
-
* main color to be defined in hex or rgb(a) format.
|
|
45289
|
+
* How much to brighten the point on interaction.
|
|
45183
45290
|
*
|
|
45184
45291
|
* In styled mode, the hover brightness is by default replaced
|
|
45185
45292
|
* by a fill-opacity given in the `.highcharts-point-hover`
|
|
@@ -45450,11 +45557,11 @@ class PieSeries extends Series_Series {
|
|
|
45450
45557
|
}
|
|
45451
45558
|
/**
|
|
45452
45559
|
* Define hasData function for non-cartesian series. Returns true if the
|
|
45453
|
-
* series has
|
|
45560
|
+
* series has at least one visible point (#23235)
|
|
45454
45561
|
* @private
|
|
45455
45562
|
*/
|
|
45456
45563
|
hasData() {
|
|
45457
|
-
return
|
|
45564
|
+
return this.points.some((point) => point.visible);
|
|
45458
45565
|
}
|
|
45459
45566
|
/**
|
|
45460
45567
|
* Draw the data points
|
|
@@ -45675,7 +45782,7 @@ const { distribute: PieDataLabel_distribute } = Renderer_RendererUtilities;
|
|
|
45675
45782
|
|
|
45676
45783
|
const { series: PieDataLabel_Series } = Series_SeriesRegistry;
|
|
45677
45784
|
|
|
45678
|
-
const { arrayMax: PieDataLabel_arrayMax, clamp: PieDataLabel_clamp, defined: PieDataLabel_defined, pick: PieDataLabel_pick, pushUnique: PieDataLabel_pushUnique, relativeLength: PieDataLabel_relativeLength } = Core_Utilities;
|
|
45785
|
+
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
45786
|
/* *
|
|
45680
45787
|
*
|
|
45681
45788
|
* Composition
|
|
@@ -46027,7 +46134,7 @@ var PieDataLabel_ColumnDataLabel;
|
|
|
46027
46134
|
// #8864: every connector can have individual options
|
|
46028
46135
|
const { connectorColor, connectorWidth = 1 } = (dataLabel.options || {}), labelPosition = dataLabel.dataLabelPosition;
|
|
46029
46136
|
// Draw the connector
|
|
46030
|
-
if (connectorWidth) {
|
|
46137
|
+
if (PieDataLabel_isNumber(connectorWidth)) {
|
|
46031
46138
|
let isNew;
|
|
46032
46139
|
connector = dataLabel.connector;
|
|
46033
46140
|
if (labelPosition && labelPosition.distance > 0) {
|
|
@@ -46652,7 +46759,7 @@ function applyBorderRadius(path, i, r) {
|
|
|
46652
46759
|
* @private
|
|
46653
46760
|
*/
|
|
46654
46761
|
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;
|
|
46762
|
+
const path = oldArc(x, y, w, h, options), { brStart = true, brEnd = true, innerR = 0, r = w, start = 0, end = 0 } = options;
|
|
46656
46763
|
if (options.open || !options.borderRadius) {
|
|
46657
46764
|
return path;
|
|
46658
46765
|
}
|
|
@@ -46669,6 +46776,10 @@ function BorderRadius_arc(x, y, w, h, options = {}) {
|
|
|
46669
46776
|
// splicing in arc segments.
|
|
46670
46777
|
let i = path.length - 1;
|
|
46671
46778
|
while (i--) {
|
|
46779
|
+
if ((!brStart && (i === 0 || i === 3)) ||
|
|
46780
|
+
(!brEnd && (i === 1 || i === 2))) {
|
|
46781
|
+
continue;
|
|
46782
|
+
}
|
|
46672
46783
|
applyBorderRadius(path, i, i > 1 ? innerBorderRadius : borderRadius);
|
|
46673
46784
|
}
|
|
46674
46785
|
return path;
|
|
@@ -46743,7 +46854,7 @@ function BorderRadius_compose(SeriesClass, SVGElementClass, SVGRendererClass) {
|
|
|
46743
46854
|
order: 9
|
|
46744
46855
|
});
|
|
46745
46856
|
BorderRadius_addEvent(PieSeriesClass, 'afterTranslate', pieSeriesOnAfterTranslate);
|
|
46746
|
-
SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY');
|
|
46857
|
+
SVGElementClass.symbolCustomAttribs.push('borderRadius', 'brBoxHeight', 'brBoxY', 'brEnd', 'brStart');
|
|
46747
46858
|
oldArc = symbols.arc;
|
|
46748
46859
|
oldRoundedRect = symbols.roundedRect;
|
|
46749
46860
|
symbols.arc = BorderRadius_arc;
|
|
@@ -47169,7 +47280,14 @@ var Responsive;
|
|
|
47169
47280
|
(''); // Keeps doclets above in JS file
|
|
47170
47281
|
|
|
47171
47282
|
;// ./code/es-modules/masters/highcharts.src.js
|
|
47172
|
-
|
|
47283
|
+
/**
|
|
47284
|
+
* @license Highcharts JS v12.4.0 (2025-09-04)
|
|
47285
|
+
* @module highcharts/highcharts
|
|
47286
|
+
*
|
|
47287
|
+
* (c) 2009-2025 Highsoft AS
|
|
47288
|
+
*
|
|
47289
|
+
* License: www.highcharts.com/license
|
|
47290
|
+
*/
|
|
47173
47291
|
|
|
47174
47292
|
|
|
47175
47293
|
|
|
@@ -48044,7 +48162,8 @@ class GanttChart extends Chart_Chart {
|
|
|
48044
48162
|
// Defaults
|
|
48045
48163
|
{
|
|
48046
48164
|
grid: {
|
|
48047
|
-
borderColor:
|
|
48165
|
+
borderColor: GanttChart_defaultOptions.xAxis?.grid?.borderColor ||
|
|
48166
|
+
"#cccccc" /* Palette.neutralColor20 */,
|
|
48048
48167
|
enabled: true
|
|
48049
48168
|
},
|
|
48050
48169
|
opposite: GanttChart_defaultOptions.xAxis?.opposite ??
|
|
@@ -48064,7 +48183,8 @@ class GanttChart extends Chart_Chart {
|
|
|
48064
48183
|
// Defaults
|
|
48065
48184
|
{
|
|
48066
48185
|
grid: {
|
|
48067
|
-
borderColor:
|
|
48186
|
+
borderColor: GanttChart_defaultOptions.yAxis?.grid?.borderColor ||
|
|
48187
|
+
"#cccccc" /* Palette.neutralColor20 */,
|
|
48068
48188
|
enabled: true
|
|
48069
48189
|
},
|
|
48070
48190
|
staticScale: 50,
|
|
@@ -49099,7 +49219,7 @@ const StockUtilities = {
|
|
|
49099
49219
|
* */
|
|
49100
49220
|
|
|
49101
49221
|
|
|
49102
|
-
const {
|
|
49222
|
+
const { defaultOptions: NavigatorComposition_defaultOptions } = Defaults;
|
|
49103
49223
|
|
|
49104
49224
|
const { composed: NavigatorComposition_composed } = Core_Globals;
|
|
49105
49225
|
|
|
@@ -49129,8 +49249,8 @@ function NavigatorComposition_compose(ChartClass, AxisClass, SeriesClass) {
|
|
|
49129
49249
|
if (NavigatorComposition_pushUnique(NavigatorComposition_composed, 'Navigator')) {
|
|
49130
49250
|
ChartClass.prototype.setFixedRange = NavigatorComposition_setFixedRange;
|
|
49131
49251
|
NavigatorComposition_extend(getRendererType().prototype.symbols, Navigator_NavigatorSymbols);
|
|
49252
|
+
NavigatorComposition_extend(NavigatorComposition_defaultOptions, { navigator: Navigator_NavigatorDefaults });
|
|
49132
49253
|
NavigatorComposition_addEvent(SeriesClass, 'afterUpdate', onSeriesAfterUpdate);
|
|
49133
|
-
NavigatorComposition_setOptions({ navigator: Navigator_NavigatorDefaults });
|
|
49134
49254
|
}
|
|
49135
49255
|
}
|
|
49136
49256
|
/**
|
|
@@ -49166,7 +49286,7 @@ const NavigatorComposition = {
|
|
|
49166
49286
|
|
|
49167
49287
|
const { composed: ScrollbarAxis_composed } = Core_Globals;
|
|
49168
49288
|
|
|
49169
|
-
const { addEvent: ScrollbarAxis_addEvent, defined: ScrollbarAxis_defined, pick: ScrollbarAxis_pick, pushUnique: ScrollbarAxis_pushUnique } = Core_Utilities;
|
|
49289
|
+
const { addEvent: ScrollbarAxis_addEvent, correctFloat: ScrollbarAxis_correctFloat, defined: ScrollbarAxis_defined, pick: ScrollbarAxis_pick, pushUnique: ScrollbarAxis_pushUnique } = Core_Utilities;
|
|
49170
49290
|
/* *
|
|
49171
49291
|
*
|
|
49172
49292
|
* Composition
|
|
@@ -49213,9 +49333,10 @@ var ScrollbarAxis;
|
|
|
49213
49333
|
axisMin,
|
|
49214
49334
|
axisMax,
|
|
49215
49335
|
scrollMin: ScrollbarAxis_defined(axis.dataMin) ?
|
|
49216
|
-
Math.min(axisMin, axis.min, axis.dataMin,
|
|
49217
|
-
scrollMax: ScrollbarAxis_defined(axis.dataMax) ?
|
|
49218
|
-
Math.max(axisMax, axis.max, axis.dataMax,
|
|
49336
|
+
Math.min(axisMin, axis.min ?? Infinity, axis.dataMin, axis.threshold ?? Infinity) : axisMin,
|
|
49337
|
+
scrollMax: axis.treeGrid?.adjustedMax ?? (ScrollbarAxis_defined(axis.dataMax) ?
|
|
49338
|
+
Math.max(axisMax, axis.max ?? -Infinity, axis.dataMax, axis.threshold ?? -Infinity) :
|
|
49339
|
+
axisMax)
|
|
49219
49340
|
};
|
|
49220
49341
|
}
|
|
49221
49342
|
/**
|
|
@@ -49243,7 +49364,7 @@ var ScrollbarAxis;
|
|
|
49243
49364
|
axis.options.startOnTick = axis.options.endOnTick = false;
|
|
49244
49365
|
axis.scrollbar = new Scrollbar(axis.chart.renderer, axis.options.scrollbar, axis.chart);
|
|
49245
49366
|
ScrollbarAxis_addEvent(axis.scrollbar, 'changed', function (e) {
|
|
49246
|
-
const { axisMin, axisMax, scrollMin: unitedMin, scrollMax: unitedMax } = getExtremes(axis),
|
|
49367
|
+
const { axisMin, axisMax, scrollMin: unitedMin, scrollMax: unitedMax } = getExtremes(axis), minPX = axis.toPixels(unitedMin), maxPX = axis.toPixels(unitedMax), rangePX = maxPX - minPX;
|
|
49247
49368
|
let to, from;
|
|
49248
49369
|
// #12834, scroll when show/hide series, wrong extremes
|
|
49249
49370
|
if (!ScrollbarAxis_defined(axisMin) || !ScrollbarAxis_defined(axisMax)) {
|
|
@@ -49251,20 +49372,20 @@ var ScrollbarAxis;
|
|
|
49251
49372
|
}
|
|
49252
49373
|
if ((axis.horiz && !axis.reversed) ||
|
|
49253
49374
|
(!axis.horiz && axis.reversed)) {
|
|
49254
|
-
to =
|
|
49255
|
-
from = unitedMin +
|
|
49375
|
+
to = Math.min(unitedMax, axis.toValue(minPX + rangePX * this.to));
|
|
49376
|
+
from = Math.max(unitedMin, axis.toValue(minPX + rangePX * this.from));
|
|
49256
49377
|
}
|
|
49257
49378
|
else {
|
|
49258
49379
|
// Y-values in browser are reversed, but this also
|
|
49259
49380
|
// applies for reversed horizontal axis:
|
|
49260
|
-
to =
|
|
49261
|
-
from = unitedMin +
|
|
49381
|
+
to = Math.min(unitedMax, axis.toValue(minPX + rangePX * (1 - this.from)));
|
|
49382
|
+
from = Math.max(unitedMin, axis.toValue(minPX + rangePX * (1 - this.to)));
|
|
49262
49383
|
}
|
|
49263
49384
|
if (this.shouldUpdateExtremes(e.DOMType)) {
|
|
49264
49385
|
// #17977, set animation to undefined instead of true
|
|
49265
49386
|
const animate = e.DOMType === 'mousemove' ||
|
|
49266
49387
|
e.DOMType === 'touchmove' ? false : void 0;
|
|
49267
|
-
axis.setExtremes(from, to, true, animate, e);
|
|
49388
|
+
axis.setExtremes(ScrollbarAxis_correctFloat(from), ScrollbarAxis_correctFloat(to), true, animate, e);
|
|
49268
49389
|
}
|
|
49269
49390
|
else {
|
|
49270
49391
|
// When live redraw is disabled, don't change extremes
|
|
@@ -49279,7 +49400,7 @@ var ScrollbarAxis;
|
|
|
49279
49400
|
* @private
|
|
49280
49401
|
*/
|
|
49281
49402
|
function onAxisAfterRender() {
|
|
49282
|
-
const axis = this, { scrollMin, scrollMax } = getExtremes(axis), scrollbar = axis.scrollbar, offset = (axis.axisTitleMargin + (axis.titleOffset || 0)
|
|
49403
|
+
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;
|
|
49283
49404
|
let offsetsIndex, from, to;
|
|
49284
49405
|
if (scrollbar && scrollbarsOffsets) {
|
|
49285
49406
|
if (axis.horiz) {
|
|
@@ -49327,8 +49448,9 @@ var ScrollbarAxis;
|
|
|
49327
49448
|
isNaN(scrollMax) ||
|
|
49328
49449
|
!ScrollbarAxis_defined(axis.min) ||
|
|
49329
49450
|
!ScrollbarAxis_defined(axis.max) ||
|
|
49330
|
-
axis.dataMin
|
|
49331
|
-
|
|
49451
|
+
(ScrollbarAxis_defined(axis.dataMin) && // #23335
|
|
49452
|
+
axis.dataMin === axis.dataMax // #10733
|
|
49453
|
+
)) {
|
|
49332
49454
|
// Default action: when data extremes are the same or there is
|
|
49333
49455
|
// not extremes on the axis, but scrollbar exists, make it
|
|
49334
49456
|
// full size
|
|
@@ -49345,10 +49467,10 @@ var ScrollbarAxis;
|
|
|
49345
49467
|
scrollbar.setRange(from, to);
|
|
49346
49468
|
}
|
|
49347
49469
|
else {
|
|
49348
|
-
from = ((axis.min - scrollMin) /
|
|
49349
|
-
(scrollMax - scrollMin));
|
|
49350
|
-
to = ((axis.max - scrollMin) /
|
|
49351
|
-
(scrollMax - scrollMin));
|
|
49470
|
+
from = (axis.toPixels(axis.min) - axis.toPixels(scrollMin)) /
|
|
49471
|
+
(axis.toPixels(scrollMax) - axis.toPixels(scrollMin));
|
|
49472
|
+
to = (axis.toPixels(axis.max) - axis.toPixels(scrollMin)) /
|
|
49473
|
+
(axis.toPixels(scrollMax) - axis.toPixels(scrollMin));
|
|
49352
49474
|
if ((axis.horiz && !axis.reversed) ||
|
|
49353
49475
|
(!axis.horiz && axis.reversed)) {
|
|
49354
49476
|
scrollbar.setRange(from, to);
|
|
@@ -49605,10 +49727,11 @@ const ScrollbarDefaults = {
|
|
|
49605
49727
|
|
|
49606
49728
|
const { defaultOptions: Scrollbar_defaultOptions } = Defaults;
|
|
49607
49729
|
|
|
49730
|
+
const { composed: Scrollbar_composed } = Core_Globals;
|
|
49608
49731
|
|
|
49609
49732
|
|
|
49610
49733
|
|
|
49611
|
-
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;
|
|
49734
|
+
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;
|
|
49612
49735
|
/* *
|
|
49613
49736
|
*
|
|
49614
49737
|
* Constants
|
|
@@ -49634,6 +49757,9 @@ class Scrollbar {
|
|
|
49634
49757
|
* */
|
|
49635
49758
|
static compose(AxisClass) {
|
|
49636
49759
|
Axis_ScrollbarAxis.compose(AxisClass, Scrollbar);
|
|
49760
|
+
if (Scrollbar_pushUnique(Scrollbar_composed, 'Scrollbar')) {
|
|
49761
|
+
Scrollbar_extend(Scrollbar_defaultOptions, { scrollbar: Scrollbar_ScrollbarDefaults });
|
|
49762
|
+
}
|
|
49637
49763
|
}
|
|
49638
49764
|
/**
|
|
49639
49765
|
* When we have vertical scrollbar, rifles and arrow in buttons should be
|
|
@@ -50240,12 +50366,6 @@ class Scrollbar {
|
|
|
50240
50366
|
*
|
|
50241
50367
|
* */
|
|
50242
50368
|
Scrollbar.defaultOptions = Scrollbar_ScrollbarDefaults;
|
|
50243
|
-
/* *
|
|
50244
|
-
*
|
|
50245
|
-
* Registry
|
|
50246
|
-
*
|
|
50247
|
-
* */
|
|
50248
|
-
Scrollbar_defaultOptions.scrollbar = Scrollbar_merge(true, Scrollbar.defaultOptions, Scrollbar_defaultOptions.scrollbar);
|
|
50249
50369
|
/* *
|
|
50250
50370
|
*
|
|
50251
50371
|
* Default Export
|
|
@@ -52582,7 +52702,6 @@ const RangeSelectorComposition = {
|
|
|
52582
52702
|
|
|
52583
52703
|
|
|
52584
52704
|
|
|
52585
|
-
|
|
52586
52705
|
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;
|
|
52587
52706
|
/* *
|
|
52588
52707
|
*
|
|
@@ -52940,8 +53059,7 @@ var OrdinalAxis;
|
|
|
52940
53059
|
function onChartPan(e) {
|
|
52941
53060
|
const chart = this, xAxis = chart.xAxis[0], overscroll = xAxis.ordinal.convertOverscroll(xAxis.options.overscroll), chartX = e.originalEvent.chartX, panning = chart.options.chart.panning;
|
|
52942
53061
|
let runBase = false;
|
|
52943
|
-
if (panning &&
|
|
52944
|
-
panning.type !== 'y' &&
|
|
53062
|
+
if (panning?.type !== 'y' &&
|
|
52945
53063
|
xAxis.options.ordinal &&
|
|
52946
53064
|
xAxis.series.length &&
|
|
52947
53065
|
// On touch devices, let default function handle the pinching
|
|
@@ -52960,8 +53078,9 @@ var OrdinalAxis;
|
|
|
52960
53078
|
}, index2val = xAxis.index2val, val2lin = xAxis.val2lin;
|
|
52961
53079
|
let trimmedRange, ordinalPositions;
|
|
52962
53080
|
// Make sure panning to the edges does not decrease the zoomed range
|
|
52963
|
-
if ((min <= dataMin && movedUnits
|
|
52964
|
-
(max + overscroll
|
|
53081
|
+
if ((min <= dataMin && movedUnits <= 0) ||
|
|
53082
|
+
(max >= dataMax + overscroll && movedUnits >= 0)) {
|
|
53083
|
+
e.preventDefault();
|
|
52965
53084
|
return;
|
|
52966
53085
|
}
|
|
52967
53086
|
// We have an ordinal axis, but the data is equally spaced
|
|
@@ -52980,8 +53099,11 @@ var OrdinalAxis;
|
|
|
52980
53099
|
// If we don't compensate for this, we will be allowed to pan
|
|
52981
53100
|
// grouped data series passed the right of the plot area.
|
|
52982
53101
|
ordinalPositions = extendedAxis.ordinal.positions;
|
|
52983
|
-
if (
|
|
52984
|
-
ordinalPositions
|
|
53102
|
+
if (overscroll) { // #21606
|
|
53103
|
+
ordinalPositions = extendedAxis.ordinal.positions =
|
|
53104
|
+
ordinalPositions.concat(xAxis.ordinal.getOverscrollPositions());
|
|
53105
|
+
}
|
|
53106
|
+
if (dataMax > ordinalPositions[ordinalPositions.length - 1]) {
|
|
52985
53107
|
ordinalPositions.push(dataMax);
|
|
52986
53108
|
}
|
|
52987
53109
|
// Get the new min and max values by getting the ordinal index
|
|
@@ -53012,7 +53134,7 @@ var OrdinalAxis;
|
|
|
53012
53134
|
}
|
|
53013
53135
|
// Revert to the linear chart.pan version
|
|
53014
53136
|
if (runBase || (panning && /y/.test(panning.type))) {
|
|
53015
|
-
if (overscroll) {
|
|
53137
|
+
if (overscroll && OrdinalAxis_isNumber(xAxis.dataMax)) {
|
|
53016
53138
|
xAxis.max = xAxis.dataMax + overscroll;
|
|
53017
53139
|
}
|
|
53018
53140
|
}
|
|
@@ -53144,7 +53266,9 @@ var OrdinalAxis;
|
|
|
53144
53266
|
* @private
|
|
53145
53267
|
*/
|
|
53146
53268
|
beforeSetTickPositions() {
|
|
53147
|
-
const axis = this.axis, ordinal = axis.ordinal, extremes = axis.getExtremes(), min = extremes.min, max = extremes.max, hasBreaks = axis.brokenAxis?.hasBreaks, isOrdinal = axis.options.ordinal
|
|
53269
|
+
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 &&
|
|
53270
|
+
axis.ordinal.convertOverscroll(axis.options.overscroll) ||
|
|
53271
|
+
0;
|
|
53148
53272
|
let len, uniqueOrdinalPositions, dist, minIndex, maxIndex, slope, i, ordinalPositions = [], overscrollPointsRange = Number.MAX_VALUE, useOrdinal = false, adjustOrdinalExtremesPoints = false, isBoosted = false;
|
|
53149
53273
|
// Apply the ordinal logic
|
|
53150
53274
|
if (isOrdinal || hasBreaks) { // #4167 YAxis is never ordinal ?
|
|
@@ -53228,8 +53352,8 @@ var OrdinalAxis;
|
|
|
53228
53352
|
// spaced.
|
|
53229
53353
|
if (!axis.options.keepOrdinalPadding &&
|
|
53230
53354
|
(ordinalPositions[0] - min > dist ||
|
|
53231
|
-
|
|
53232
|
-
|
|
53355
|
+
max - overscroll - ordinalPositions[len - 1] >
|
|
53356
|
+
dist)) {
|
|
53233
53357
|
useOrdinal = true;
|
|
53234
53358
|
}
|
|
53235
53359
|
}
|
|
@@ -53242,7 +53366,7 @@ var OrdinalAxis;
|
|
|
53242
53366
|
else if (len === 1) {
|
|
53243
53367
|
// We have just one point, closest distance is unknown.
|
|
53244
53368
|
// Assume then it is last point and overscrolled range:
|
|
53245
|
-
overscrollPointsRange =
|
|
53369
|
+
overscrollPointsRange = overscroll;
|
|
53246
53370
|
ordinalPositions = [
|
|
53247
53371
|
ordinalPositions[0],
|
|
53248
53372
|
ordinalPositions[0] + overscrollPointsRange
|
|
@@ -53372,6 +53496,9 @@ var OrdinalAxis;
|
|
|
53372
53496
|
// Add the fake series to hold the full data, then apply
|
|
53373
53497
|
// processData to it
|
|
53374
53498
|
axis.series.forEach((series) => {
|
|
53499
|
+
if (series.takeOrdinalPosition === false) {
|
|
53500
|
+
return; // #22657
|
|
53501
|
+
}
|
|
53375
53502
|
fakeSeries = {
|
|
53376
53503
|
xAxis: fakeAxis,
|
|
53377
53504
|
chart: chart,
|
|
@@ -57004,7 +57131,7 @@ Pathfinder.prototype.algorithms = PathfinderAlgorithms;
|
|
|
57004
57131
|
|
|
57005
57132
|
;// ./code/es-modules/masters/modules/pathfinder.src.js
|
|
57006
57133
|
/**
|
|
57007
|
-
* @license Highcharts Gantt JS v12.
|
|
57134
|
+
* @license Highcharts Gantt JS v12.4.0 (2025-09-04)
|
|
57008
57135
|
* @module highcharts/modules/pathfinder
|
|
57009
57136
|
* @requires highcharts
|
|
57010
57137
|
*
|
|
@@ -57036,7 +57163,7 @@ pathfinder_src_G.Pathfinder.compose(pathfinder_src_G.Chart, pathfinder_src_G.Poi
|
|
|
57036
57163
|
* */
|
|
57037
57164
|
|
|
57038
57165
|
|
|
57039
|
-
const { addEvent: StaticScale_addEvent, defined: StaticScale_defined, isNumber: StaticScale_isNumber
|
|
57166
|
+
const { addEvent: StaticScale_addEvent, defined: StaticScale_defined, isNumber: StaticScale_isNumber } = Core_Utilities;
|
|
57040
57167
|
/* *
|
|
57041
57168
|
*
|
|
57042
57169
|
* Composition
|
|
@@ -57053,12 +57180,11 @@ function StaticScale_compose(AxisClass, ChartClass) {
|
|
|
57053
57180
|
}
|
|
57054
57181
|
/** @private */
|
|
57055
57182
|
function StaticScale_onAxisAfterSetOptions() {
|
|
57056
|
-
const chartOptions = this.chart.
|
|
57183
|
+
const chartOptions = this.chart.userOptions.chart;
|
|
57057
57184
|
if (!this.horiz &&
|
|
57058
57185
|
StaticScale_isNumber(this.options.staticScale) &&
|
|
57059
|
-
(!chartOptions
|
|
57060
|
-
|
|
57061
|
-
chartOptions.scrollablePlotArea.minHeight))) {
|
|
57186
|
+
(!chartOptions?.height ||
|
|
57187
|
+
chartOptions.scrollablePlotArea?.minHeight)) {
|
|
57062
57188
|
this.staticScale = this.options.staticScale;
|
|
57063
57189
|
}
|
|
57064
57190
|
}
|
|
@@ -57067,17 +57193,20 @@ function chartAdjustHeight() {
|
|
|
57067
57193
|
const chart = this;
|
|
57068
57194
|
if (chart.redrawTrigger !== 'adjustHeight') {
|
|
57069
57195
|
for (const axis of (chart.axes || [])) {
|
|
57070
|
-
const chart = axis.chart,
|
|
57071
|
-
|
|
57072
|
-
|
|
57073
|
-
|
|
57196
|
+
const chart = axis.chart, staticScale = axis.options.staticScale;
|
|
57197
|
+
if (axis.staticScale &&
|
|
57198
|
+
staticScale &&
|
|
57199
|
+
StaticScale_defined(axis.min) &&
|
|
57200
|
+
StaticScale_defined(axis.max)) {
|
|
57201
|
+
let height = (axis.brokenAxis?.unitLength ??
|
|
57202
|
+
(axis.max + axis.tickInterval - axis.min)) * (staticScale);
|
|
57074
57203
|
// Minimum height is 1 x staticScale.
|
|
57075
57204
|
height = Math.max(height, staticScale);
|
|
57076
57205
|
const diff = height - chart.plotHeight;
|
|
57077
57206
|
if (!chart.scrollablePixelsY && Math.abs(diff) >= 1) {
|
|
57078
57207
|
chart.plotHeight = height;
|
|
57079
57208
|
chart.redrawTrigger = 'adjustHeight';
|
|
57080
|
-
chart.setSize(void 0, chart.chartHeight + diff,
|
|
57209
|
+
chart.setSize(void 0, chart.chartHeight + diff, chart.initiatedScale ? void 0 : false);
|
|
57081
57210
|
}
|
|
57082
57211
|
// Make sure clip rects have the right height before initial
|
|
57083
57212
|
// animation.
|
|
@@ -57096,7 +57225,7 @@ function chartAdjustHeight() {
|
|
|
57096
57225
|
}
|
|
57097
57226
|
this.initiatedScale = true;
|
|
57098
57227
|
}
|
|
57099
|
-
this.redrawTrigger =
|
|
57228
|
+
this.redrawTrigger = void 0;
|
|
57100
57229
|
}
|
|
57101
57230
|
/* *
|
|
57102
57231
|
*
|
|
@@ -57132,7 +57261,7 @@ const StaticScale = {
|
|
|
57132
57261
|
|
|
57133
57262
|
;// ./code/es-modules/masters/modules/static-scale.src.js
|
|
57134
57263
|
/**
|
|
57135
|
-
* @license Highcharts Gantt JS v12.
|
|
57264
|
+
* @license Highcharts Gantt JS v12.4.0 (2025-09-04)
|
|
57136
57265
|
* @module highcharts/modules/static-scale
|
|
57137
57266
|
* @requires highcharts
|
|
57138
57267
|
*
|
|
@@ -57432,7 +57561,8 @@ class XRangePoint extends ColumnPoint {
|
|
|
57432
57561
|
if (!series.chart.styledMode) {
|
|
57433
57562
|
this.color = colorByPoint.color;
|
|
57434
57563
|
}
|
|
57435
|
-
if (
|
|
57564
|
+
if (typeof this.options.colorIndex === 'undefined' ||
|
|
57565
|
+
this.options.colorIndex === null) {
|
|
57436
57566
|
this.colorIndex = colorByPoint.colorIndex;
|
|
57437
57567
|
}
|
|
57438
57568
|
}
|
|
@@ -57943,7 +58073,7 @@ Series_SeriesRegistry.registerSeriesType('xrange', XRangeSeries);
|
|
|
57943
58073
|
|
|
57944
58074
|
;// ./code/es-modules/masters/modules/xrange.src.js
|
|
57945
58075
|
/**
|
|
57946
|
-
* @license Highcharts JS v12.
|
|
58076
|
+
* @license Highcharts JS v12.4.0 (2025-09-04)
|
|
57947
58077
|
* @module highcharts/modules/xrange
|
|
57948
58078
|
* @requires highcharts
|
|
57949
58079
|
*
|
|
@@ -58329,7 +58459,8 @@ var BrokenAxis;
|
|
|
58329
58459
|
*/
|
|
58330
58460
|
function onAxisAfterSetOptions() {
|
|
58331
58461
|
const axis = this;
|
|
58332
|
-
|
|
58462
|
+
// Too early for axis.brokenAxis?.hasBreaks.
|
|
58463
|
+
if (Object.keys(axis.options.breaks?.[0] || {}).length) {
|
|
58333
58464
|
axis.options.ordinal = false;
|
|
58334
58465
|
}
|
|
58335
58466
|
}
|
|
@@ -58401,24 +58532,9 @@ var BrokenAxis;
|
|
|
58401
58532
|
threshold = axis.isXAxis ?
|
|
58402
58533
|
axis.min :
|
|
58403
58534
|
BrokenAxis_pick(series.options.threshold, axis.min);
|
|
58404
|
-
// Array of breaks that have been "zoomed-out" which means that
|
|
58405
|
-
// they were shown previously, but now after zoom, they are not
|
|
58406
|
-
// (#19885).
|
|
58407
|
-
const breaksOutOfRange = axis?.options?.breaks?.filter(function (brk) {
|
|
58408
|
-
let isOut = true;
|
|
58409
|
-
// Iterate to see if "brk" is in axis range
|
|
58410
|
-
for (let i = 0; i < breaks.length; i++) {
|
|
58411
|
-
const otherBreak = breaks[i];
|
|
58412
|
-
if (otherBreak.from === brk.from &&
|
|
58413
|
-
otherBreak.to === brk.to) {
|
|
58414
|
-
isOut = false;
|
|
58415
|
-
break;
|
|
58416
|
-
}
|
|
58417
|
-
}
|
|
58418
|
-
return isOut;
|
|
58419
|
-
});
|
|
58420
58535
|
points.forEach(function (point) {
|
|
58421
|
-
y =
|
|
58536
|
+
y = point['stack' + key.toUpperCase()] ??
|
|
58537
|
+
point[key];
|
|
58422
58538
|
breaks.forEach(function (brk) {
|
|
58423
58539
|
if (BrokenAxis_isNumber(threshold) && BrokenAxis_isNumber(y)) {
|
|
58424
58540
|
let eventName = '';
|
|
@@ -58438,9 +58554,6 @@ var BrokenAxis;
|
|
|
58438
58554
|
}
|
|
58439
58555
|
}
|
|
58440
58556
|
});
|
|
58441
|
-
breaksOutOfRange?.forEach(function (brk) {
|
|
58442
|
-
BrokenAxis_fireEvent(axis, 'pointOutsideOfBreak', { point, brk });
|
|
58443
|
-
});
|
|
58444
58557
|
});
|
|
58445
58558
|
});
|
|
58446
58559
|
}
|
|
@@ -58595,23 +58708,39 @@ var BrokenAxis;
|
|
|
58595
58708
|
* @private
|
|
58596
58709
|
*/
|
|
58597
58710
|
static lin2Val(val) {
|
|
58598
|
-
const axis = this;
|
|
58599
|
-
|
|
58600
|
-
const breakArray = brokenAxis?.breakArray;
|
|
58601
|
-
if (!breakArray || !BrokenAxis_isNumber(val)) {
|
|
58711
|
+
const axis = this, threshold = axis.min || 0, brokenAxis = axis.brokenAxis, breakArray = brokenAxis?.breakArray;
|
|
58712
|
+
if (!breakArray?.length || !BrokenAxis_isNumber(val)) {
|
|
58602
58713
|
return val;
|
|
58603
58714
|
}
|
|
58604
|
-
let nval = val
|
|
58605
|
-
|
|
58606
|
-
|
|
58607
|
-
|
|
58608
|
-
|
|
58609
|
-
|
|
58610
|
-
|
|
58611
|
-
|
|
58715
|
+
let nval = val;
|
|
58716
|
+
// Axis min is the anchor point. Above it, break gaps impact the
|
|
58717
|
+
// result differently than below.
|
|
58718
|
+
if (val > threshold) {
|
|
58719
|
+
for (const brk of breakArray) {
|
|
58720
|
+
if (brk.from > nval) {
|
|
58721
|
+
// Skip all breaks after the nval.
|
|
58722
|
+
break;
|
|
58723
|
+
}
|
|
58724
|
+
else if (brk.to <= nval && brk.to > threshold) {
|
|
58725
|
+
nval += brk.len;
|
|
58726
|
+
}
|
|
58727
|
+
else if (Additions.isInBreak(brk, nval)) {
|
|
58728
|
+
nval += brk.len;
|
|
58729
|
+
}
|
|
58612
58730
|
}
|
|
58613
|
-
|
|
58614
|
-
|
|
58731
|
+
}
|
|
58732
|
+
else if (val < threshold) {
|
|
58733
|
+
for (const brk of breakArray) {
|
|
58734
|
+
if (brk.from > threshold) {
|
|
58735
|
+
// Skip all breaks above the threshold.
|
|
58736
|
+
break;
|
|
58737
|
+
}
|
|
58738
|
+
else if (brk.from >= nval && brk.from < threshold) {
|
|
58739
|
+
nval -= brk.len;
|
|
58740
|
+
}
|
|
58741
|
+
else if (Additions.isInBreak(brk, nval)) {
|
|
58742
|
+
nval -= brk.len;
|
|
58743
|
+
}
|
|
58615
58744
|
}
|
|
58616
58745
|
}
|
|
58617
58746
|
return nval;
|
|
@@ -58620,24 +58749,41 @@ var BrokenAxis;
|
|
|
58620
58749
|
* @private
|
|
58621
58750
|
*/
|
|
58622
58751
|
static val2Lin(val) {
|
|
58623
|
-
const axis = this;
|
|
58624
|
-
|
|
58625
|
-
const breakArray = brokenAxis?.breakArray;
|
|
58626
|
-
if (!breakArray || !BrokenAxis_isNumber(val)) {
|
|
58752
|
+
const axis = this, threshold = axis.min || 0, brokenAxis = axis.brokenAxis, breakArray = brokenAxis?.breakArray;
|
|
58753
|
+
if (!breakArray?.length || !BrokenAxis_isNumber(val)) {
|
|
58627
58754
|
return val;
|
|
58628
58755
|
}
|
|
58629
|
-
let nval = val
|
|
58630
|
-
|
|
58631
|
-
|
|
58632
|
-
|
|
58633
|
-
|
|
58634
|
-
|
|
58635
|
-
|
|
58636
|
-
|
|
58756
|
+
let nval = val;
|
|
58757
|
+
// Axis min is the anchor point. Above it, break gaps impact the
|
|
58758
|
+
// result differently than below.
|
|
58759
|
+
if (val > threshold) {
|
|
58760
|
+
for (const brk of breakArray) {
|
|
58761
|
+
if (brk.to <= val && brk.to > threshold) {
|
|
58762
|
+
nval -= brk.len;
|
|
58763
|
+
}
|
|
58764
|
+
else if (brk.from > val) {
|
|
58765
|
+
// Skip all breaks after the val.
|
|
58766
|
+
break;
|
|
58767
|
+
}
|
|
58768
|
+
else if (Additions.isInBreak(brk, val)) {
|
|
58769
|
+
nval -= (val - brk.from);
|
|
58770
|
+
break;
|
|
58771
|
+
}
|
|
58637
58772
|
}
|
|
58638
|
-
|
|
58639
|
-
|
|
58640
|
-
|
|
58773
|
+
}
|
|
58774
|
+
else if (val < threshold) {
|
|
58775
|
+
for (const brk of breakArray) {
|
|
58776
|
+
if (brk.from >= val && brk.from < threshold) {
|
|
58777
|
+
nval += brk.len;
|
|
58778
|
+
}
|
|
58779
|
+
else if (brk.from > threshold) {
|
|
58780
|
+
// Skip all breaks before the threshold.
|
|
58781
|
+
break;
|
|
58782
|
+
}
|
|
58783
|
+
else if (Additions.isInBreak(brk, val)) {
|
|
58784
|
+
nval += (brk.to - val);
|
|
58785
|
+
break;
|
|
58786
|
+
}
|
|
58641
58787
|
}
|
|
58642
58788
|
}
|
|
58643
58789
|
return nval;
|
|
@@ -58648,7 +58794,6 @@ var BrokenAxis;
|
|
|
58648
58794
|
*
|
|
58649
58795
|
* */
|
|
58650
58796
|
constructor(axis) {
|
|
58651
|
-
this.hasBreaks = false;
|
|
58652
58797
|
this.axis = axis;
|
|
58653
58798
|
}
|
|
58654
58799
|
/* *
|
|
@@ -58714,9 +58859,8 @@ var BrokenAxis;
|
|
|
58714
58859
|
*/
|
|
58715
58860
|
setBreaks(breaks, redraw) {
|
|
58716
58861
|
const brokenAxis = this, axis = brokenAxis.axis, time = axis.chart.time, hasBreaks = BrokenAxis_isArray(breaks) &&
|
|
58717
|
-
!!breaks.length
|
|
58718
|
-
|
|
58719
|
-
axis.isDirty = brokenAxis.hasBreaks !== hasBreaks;
|
|
58862
|
+
!!Object.keys(breaks?.[0] || {}).length;
|
|
58863
|
+
axis.isDirty = (brokenAxis.hasBreaks ?? false) !== hasBreaks;
|
|
58720
58864
|
brokenAxis.hasBreaks = hasBreaks;
|
|
58721
58865
|
// Compile string dates
|
|
58722
58866
|
breaks?.forEach((brk) => {
|
|
@@ -58743,8 +58887,9 @@ var BrokenAxis;
|
|
|
58743
58887
|
axis.setExtremes = function (newMin, newMax, redraw, animation, eventArguments) {
|
|
58744
58888
|
// If trying to set extremes inside a break, extend min to
|
|
58745
58889
|
// after, and max to before the break ( #3857 )
|
|
58746
|
-
|
|
58747
|
-
|
|
58890
|
+
// but not for gantt (#13898);
|
|
58891
|
+
if (brokenAxis.hasBreaks && !axis.treeGrid?.tree) {
|
|
58892
|
+
const breaks = (this.brokenAxis.breakArray || []);
|
|
58748
58893
|
let axisBreak;
|
|
58749
58894
|
while ((axisBreak = brokenAxis.findBreakAt(newMin, breaks))) {
|
|
58750
58895
|
newMin = axisBreak.to;
|
|
@@ -58763,49 +58908,54 @@ var BrokenAxis;
|
|
|
58763
58908
|
axis.constructor.prototype.setAxisTranslation.call(this);
|
|
58764
58909
|
brokenAxis.unitLength = void 0;
|
|
58765
58910
|
if (brokenAxis.hasBreaks) {
|
|
58766
|
-
const breaks = axis.options.breaks || [],
|
|
58767
|
-
|
|
58768
|
-
|
|
58769
|
-
|
|
58770
|
-
|
|
58771
|
-
|
|
58772
|
-
|
|
58773
|
-
|
|
58774
|
-
|
|
58775
|
-
|
|
58776
|
-
|
|
58777
|
-
|
|
58778
|
-
|
|
58779
|
-
|
|
58780
|
-
|
|
58911
|
+
const breaks = axis.options.breaks || [], breakArrayTemp = [], breakArray = [], pointRangePadding = axis.pointRangePadding ?? 0;
|
|
58912
|
+
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;
|
|
58913
|
+
if (BrokenAxis_isNumber(axis.threshold)) {
|
|
58914
|
+
dataMin = Math.min(dataMin ?? axis.threshold, axis.threshold);
|
|
58915
|
+
dataMax = Math.max(dataMax ?? axis.threshold, axis.threshold);
|
|
58916
|
+
}
|
|
58917
|
+
// Min & max check (#4247) but not for gantt (#13898)
|
|
58918
|
+
if (!axis.treeGrid?.tree) {
|
|
58919
|
+
breaks.forEach(function (brk) {
|
|
58920
|
+
repeat = brk.repeat || Infinity;
|
|
58921
|
+
if (BrokenAxis_isNumber(min) && BrokenAxis_isNumber(max)) {
|
|
58922
|
+
if (Additions.isInBreak(brk, min)) {
|
|
58923
|
+
min += ((brk.to % repeat) -
|
|
58924
|
+
(min % repeat));
|
|
58925
|
+
}
|
|
58926
|
+
if (Additions.isInBreak(brk, max)) {
|
|
58927
|
+
max -= ((max % repeat) -
|
|
58928
|
+
(brk.from % repeat));
|
|
58929
|
+
}
|
|
58781
58930
|
}
|
|
58782
|
-
}
|
|
58783
|
-
}
|
|
58931
|
+
});
|
|
58932
|
+
}
|
|
58784
58933
|
// Construct an array holding all breaks in the axis
|
|
58785
|
-
|
|
58786
|
-
|
|
58787
|
-
|
|
58788
|
-
|
|
58789
|
-
|
|
58934
|
+
// for the current data range.
|
|
58935
|
+
if (BrokenAxis_isNumber(dataMin) && BrokenAxis_isNumber(dataMax)) {
|
|
58936
|
+
breaks.forEach(function (brk) {
|
|
58937
|
+
start = brk.from;
|
|
58938
|
+
repeat = brk.repeat || Infinity;
|
|
58939
|
+
while (start - repeat > dataMin) {
|
|
58790
58940
|
start -= repeat;
|
|
58791
58941
|
}
|
|
58792
|
-
while (start <
|
|
58942
|
+
while (start < dataMin) {
|
|
58793
58943
|
start += repeat;
|
|
58794
58944
|
}
|
|
58795
|
-
for (i = start; i <
|
|
58796
|
-
|
|
58945
|
+
for (i = start; i < dataMax; i += repeat) {
|
|
58946
|
+
breakArrayTemp.push({
|
|
58797
58947
|
value: i,
|
|
58798
58948
|
move: 'in'
|
|
58799
58949
|
});
|
|
58800
|
-
|
|
58950
|
+
breakArrayTemp.push({
|
|
58801
58951
|
value: i + brk.to - brk.from,
|
|
58802
58952
|
move: 'out',
|
|
58803
58953
|
size: brk.breakSize
|
|
58804
58954
|
});
|
|
58805
58955
|
}
|
|
58806
|
-
}
|
|
58807
|
-
}
|
|
58808
|
-
|
|
58956
|
+
});
|
|
58957
|
+
}
|
|
58958
|
+
breakArrayTemp.sort(function (a, b) {
|
|
58809
58959
|
return ((a.value === b.value) ?
|
|
58810
58960
|
((a.move === 'in' ? 0 : 1) -
|
|
58811
58961
|
(b.move === 'in' ? 0 : 1)) :
|
|
@@ -58813,8 +58963,8 @@ var BrokenAxis;
|
|
|
58813
58963
|
});
|
|
58814
58964
|
// Simplify the breaks
|
|
58815
58965
|
inBrk = 0;
|
|
58816
|
-
start =
|
|
58817
|
-
|
|
58966
|
+
start = dataMin;
|
|
58967
|
+
breakArrayTemp.forEach((brk) => {
|
|
58818
58968
|
inBrk += (brk.move === 'in' ? 1 : -1);
|
|
58819
58969
|
if (inBrk === 1 && brk.move === 'in') {
|
|
58820
58970
|
start = brk.value;
|
|
@@ -58825,9 +58975,13 @@ var BrokenAxis;
|
|
|
58825
58975
|
to: brk.value,
|
|
58826
58976
|
len: brk.value - start - (brk.size || 0)
|
|
58827
58977
|
});
|
|
58828
|
-
|
|
58829
|
-
start
|
|
58830
|
-
|
|
58978
|
+
if (BrokenAxis_isNumber(min) && BrokenAxis_isNumber(max) &&
|
|
58979
|
+
start < max && brk.value > min) {
|
|
58980
|
+
// Sum break gaps in the visible range
|
|
58981
|
+
length += (brk.value -
|
|
58982
|
+
start -
|
|
58983
|
+
(brk.size || 0));
|
|
58984
|
+
}
|
|
58831
58985
|
}
|
|
58832
58986
|
});
|
|
58833
58987
|
brokenAxis.breakArray = breakArray;
|
|
@@ -60075,7 +60229,7 @@ const Tree = {
|
|
|
60075
60229
|
* */
|
|
60076
60230
|
|
|
60077
60231
|
|
|
60078
|
-
const { addEvent: TreeGridTick_addEvent, removeEvent: TreeGridTick_removeEvent, isObject: TreeGridTick_isObject, isNumber: TreeGridTick_isNumber, pick: TreeGridTick_pick, wrap: TreeGridTick_wrap } = Core_Utilities;
|
|
60232
|
+
const { addEvent: TreeGridTick_addEvent, correctFloat: TreeGridTick_correctFloat, removeEvent: TreeGridTick_removeEvent, isObject: TreeGridTick_isObject, isNumber: TreeGridTick_isNumber, pick: TreeGridTick_pick, wrap: TreeGridTick_wrap } = Core_Utilities;
|
|
60079
60233
|
/* *
|
|
60080
60234
|
*
|
|
60081
60235
|
* Functions
|
|
@@ -60232,6 +60386,7 @@ function wrapRenderLabel(proceed) {
|
|
|
60232
60386
|
TreeGridTick_removeEvent(labelElement);
|
|
60233
60387
|
label?.css({ cursor: 'default' });
|
|
60234
60388
|
icon.destroy();
|
|
60389
|
+
tickGrid.labelIcon = void 0;
|
|
60235
60390
|
}
|
|
60236
60391
|
}
|
|
60237
60392
|
/* *
|
|
@@ -60299,11 +60454,9 @@ class TreeGridTickAdditions {
|
|
|
60299
60454
|
* {@link Highcharts.Chart#redraw}
|
|
60300
60455
|
*/
|
|
60301
60456
|
collapse(redraw) {
|
|
60302
|
-
const
|
|
60303
|
-
if (brokenAxis &&
|
|
60304
|
-
|
|
60305
|
-
const pos = tick.pos, node = axis.treeGrid.mapOfPosToGridNode[pos], breaks = axis.treeGrid.collapse(node);
|
|
60306
|
-
brokenAxis.setBreaks(breaks, TreeGridTick_pick(redraw, true));
|
|
60457
|
+
const { pos, axis } = this.tick, { treeGrid, brokenAxis } = axis, posMappedNodes = treeGrid.mapOfPosToGridNode;
|
|
60458
|
+
if (brokenAxis && posMappedNodes) {
|
|
60459
|
+
brokenAxis.setBreaks(treeGrid.collapse(posMappedNodes[pos]), redraw ?? true);
|
|
60307
60460
|
}
|
|
60308
60461
|
}
|
|
60309
60462
|
/**
|
|
@@ -60313,9 +60466,7 @@ class TreeGridTickAdditions {
|
|
|
60313
60466
|
* @function Highcharts.Tick#destroy
|
|
60314
60467
|
*/
|
|
60315
60468
|
destroy() {
|
|
60316
|
-
|
|
60317
|
-
this.labelIcon.destroy();
|
|
60318
|
-
}
|
|
60469
|
+
this.labelIcon?.destroy();
|
|
60319
60470
|
}
|
|
60320
60471
|
/**
|
|
60321
60472
|
* Expand the grid cell. Used when axis is of type treegrid.
|
|
@@ -60332,8 +60483,7 @@ class TreeGridTickAdditions {
|
|
|
60332
60483
|
expand(redraw) {
|
|
60333
60484
|
const { pos, axis } = this.tick, { treeGrid, brokenAxis } = axis, posMappedNodes = treeGrid.mapOfPosToGridNode;
|
|
60334
60485
|
if (brokenAxis && posMappedNodes) {
|
|
60335
|
-
|
|
60336
|
-
brokenAxis.setBreaks(breaks, TreeGridTick_pick(redraw, true));
|
|
60486
|
+
brokenAxis.setBreaks(treeGrid.expand(posMappedNodes[pos]), redraw ?? true);
|
|
60337
60487
|
}
|
|
60338
60488
|
}
|
|
60339
60489
|
/**
|
|
@@ -60349,12 +60499,38 @@ class TreeGridTickAdditions {
|
|
|
60349
60499
|
* Whether to redraw the chart or wait for an explicit call to
|
|
60350
60500
|
* {@link Highcharts.Chart#redraw}
|
|
60351
60501
|
*/
|
|
60352
|
-
toggleCollapse(redraw) {
|
|
60353
|
-
const
|
|
60354
|
-
if (brokenAxis &&
|
|
60355
|
-
axis.
|
|
60356
|
-
|
|
60357
|
-
|
|
60502
|
+
toggleCollapse(redraw = true) {
|
|
60503
|
+
const { axis, pos } = this.tick, { brokenAxis, treeGrid } = axis;
|
|
60504
|
+
if (brokenAxis && treeGrid.mapOfPosToGridNode) {
|
|
60505
|
+
const scrollMode = !!(axis.scrollbar && axis.staticScale), maxPx = axis.pos + axis.len +
|
|
60506
|
+
(treeGrid.pendingSizeAdjustment || 0);
|
|
60507
|
+
treeGrid.pendingSizeAdjustment = 0;
|
|
60508
|
+
brokenAxis.setBreaks(treeGrid.toggleCollapse(treeGrid.mapOfPosToGridNode[pos]), scrollMode && redraw);
|
|
60509
|
+
if (scrollMode) {
|
|
60510
|
+
const adjustedMax = axis.toValue(axis.toPixels(axis.dataMax));
|
|
60511
|
+
let newMaxVal = axis.toValue(maxPx) - axis.tickmarkOffset, newMinVal = axis.userMin ?? axis.min;
|
|
60512
|
+
// If dataMax is in a break.
|
|
60513
|
+
treeGrid.adjustedMax = adjustedMax !== axis.dataMax ?
|
|
60514
|
+
adjustedMax - axis.tickmarkOffset :
|
|
60515
|
+
void 0;
|
|
60516
|
+
if (newMaxVal > axis.dataMax) {
|
|
60517
|
+
let missingPx = maxPx -
|
|
60518
|
+
axis.toPixels(axis.dataMax + axis.tickmarkOffset);
|
|
60519
|
+
newMaxVal = treeGrid.adjustedMax ?? axis.dataMax;
|
|
60520
|
+
// Check if enough space available on the min end.
|
|
60521
|
+
newMinVal = axis.toValue(axis.toPixels(newMinVal - axis.tickmarkOffset) - missingPx) + axis.tickmarkOffset;
|
|
60522
|
+
if (newMinVal < axis.dataMin) {
|
|
60523
|
+
missingPx = axis.toPixels(axis.dataMin) -
|
|
60524
|
+
axis.toPixels(newMinVal);
|
|
60525
|
+
newMinVal = axis.dataMin;
|
|
60526
|
+
treeGrid.pendingSizeAdjustment = missingPx;
|
|
60527
|
+
}
|
|
60528
|
+
}
|
|
60529
|
+
axis.setExtremes(TreeGridTick_correctFloat(newMinVal), TreeGridTick_correctFloat(newMaxVal), false, false, { trigger: 'toggleCollapse' });
|
|
60530
|
+
}
|
|
60531
|
+
if (redraw) {
|
|
60532
|
+
axis.chart.redraw();
|
|
60533
|
+
}
|
|
60358
60534
|
}
|
|
60359
60535
|
}
|
|
60360
60536
|
}
|
|
@@ -60600,7 +60776,7 @@ const TreeUtilities = {
|
|
|
60600
60776
|
|
|
60601
60777
|
const { getLevelOptions: TreeGridAxis_getLevelOptions } = Series_TreeUtilities;
|
|
60602
60778
|
|
|
60603
|
-
const { addEvent: TreeGridAxis_addEvent, isArray: TreeGridAxis_isArray, splat: TreeGridAxis_splat, find: TreeGridAxis_find, fireEvent: TreeGridAxis_fireEvent, isObject: TreeGridAxis_isObject, isString: TreeGridAxis_isString, merge: TreeGridAxis_merge,
|
|
60779
|
+
const { addEvent: TreeGridAxis_addEvent, isArray: TreeGridAxis_isArray, splat: TreeGridAxis_splat, find: TreeGridAxis_find, fireEvent: TreeGridAxis_fireEvent, isObject: TreeGridAxis_isObject, isString: TreeGridAxis_isString, merge: TreeGridAxis_merge, removeEvent: TreeGridAxis_removeEvent, wrap: TreeGridAxis_wrap } = Core_Utilities;
|
|
60604
60780
|
/* *
|
|
60605
60781
|
*
|
|
60606
60782
|
* Variables
|
|
@@ -60613,22 +60789,17 @@ let TickConstructor;
|
|
|
60613
60789
|
*
|
|
60614
60790
|
* */
|
|
60615
60791
|
/**
|
|
60792
|
+
* Creates a break object from a node.
|
|
60793
|
+
*
|
|
60794
|
+
* @param {Object} node
|
|
60795
|
+
* The node to create a break object from.
|
|
60796
|
+
*
|
|
60616
60797
|
* @private
|
|
60617
60798
|
*/
|
|
60618
|
-
function getBreakFromNode(node
|
|
60619
|
-
const to = node.collapseEnd || 0;
|
|
60620
|
-
let from = node.collapseStart || 0;
|
|
60621
|
-
// In broken-axis, the axis.max is minimized until it is not within a
|
|
60622
|
-
// break. Therefore, if break.to is larger than axis.max, the axis.to
|
|
60623
|
-
// should not add the 0.5 axis.tickMarkOffset, to avoid adding a break
|
|
60624
|
-
// larger than axis.max.
|
|
60625
|
-
// TODO consider simplifying broken-axis and this might solve itself
|
|
60626
|
-
if (to >= max) {
|
|
60627
|
-
from -= 0.5;
|
|
60628
|
-
}
|
|
60799
|
+
function getBreakFromNode(node) {
|
|
60629
60800
|
return {
|
|
60630
|
-
from:
|
|
60631
|
-
to:
|
|
60801
|
+
from: node.collapseStart || 0,
|
|
60802
|
+
to: node.collapseEnd || 0,
|
|
60632
60803
|
showPoints: false
|
|
60633
60804
|
};
|
|
60634
60805
|
}
|
|
@@ -60724,8 +60895,7 @@ function getTreeGridFromData(data, uniqueNames, numberOfSeries) {
|
|
|
60724
60895
|
}
|
|
60725
60896
|
// If one of the points are collapsed, then start the grid node
|
|
60726
60897
|
// in collapsed state.
|
|
60727
|
-
if (gridNode &&
|
|
60728
|
-
data.collapsed === true) {
|
|
60898
|
+
if (gridNode && data.collapsed === true) {
|
|
60729
60899
|
gridNode.collapsed = true;
|
|
60730
60900
|
}
|
|
60731
60901
|
// Assign pos to data node
|
|
@@ -60784,7 +60954,7 @@ function getTreeGridFromData(data, uniqueNames, numberOfSeries) {
|
|
|
60784
60954
|
function onBeforeRender(e) {
|
|
60785
60955
|
const chart = e.target, axes = chart.axes;
|
|
60786
60956
|
axes.filter((axis) => axis.type === 'treegrid').forEach(function (axis) {
|
|
60787
|
-
const options = axis.options
|
|
60957
|
+
const options = axis.options, labelOptions = options.labels, uniqueNames = axis.uniqueNames, max = chart.time.parse(options.max),
|
|
60788
60958
|
// Check whether any of series is rendering for the first
|
|
60789
60959
|
// time, visibility has changed, or its data is dirty, and
|
|
60790
60960
|
// only then update. #10570, #10580. Also check if
|
|
@@ -60803,8 +60973,8 @@ function onBeforeRender(e) {
|
|
|
60803
60973
|
const seriesData = (s.options.data || []), firstPoint = seriesData[0],
|
|
60804
60974
|
// Check if the first point is a simple array of values.
|
|
60805
60975
|
// If so we assume that this is the case for all points.
|
|
60806
|
-
foundPrimitivePoint =
|
|
60807
|
-
!firstPoint.find((value) => (typeof value === 'object'))
|
|
60976
|
+
foundPrimitivePoint = Array.isArray(firstPoint) &&
|
|
60977
|
+
!firstPoint.find((value) => (typeof value === 'object'));
|
|
60808
60978
|
seriesHasPrimitivePoints.push(foundPrimitivePoint);
|
|
60809
60979
|
if (s.visible) {
|
|
60810
60980
|
// Push all data to array
|
|
@@ -60820,7 +60990,7 @@ function onBeforeRender(e) {
|
|
|
60820
60990
|
if (TreeGridAxis_isObject(pointOptions, true)) {
|
|
60821
60991
|
// Set series index on data. Removed again
|
|
60822
60992
|
// after use.
|
|
60823
|
-
pointOptions.seriesIndex =
|
|
60993
|
+
pointOptions.seriesIndex = numberOfSeries;
|
|
60824
60994
|
arr.push(pointOptions);
|
|
60825
60995
|
}
|
|
60826
60996
|
});
|
|
@@ -60854,9 +61024,7 @@ function onBeforeRender(e) {
|
|
|
60854
61024
|
axis.series.forEach(function (series, index) {
|
|
60855
61025
|
const axisData = (series.options.data || []).map(function (d) {
|
|
60856
61026
|
if (seriesHasPrimitivePoints[index] ||
|
|
60857
|
-
(TreeGridAxis_isArray(d) &&
|
|
60858
|
-
series.options.keys &&
|
|
60859
|
-
series.options.keys.length)) {
|
|
61027
|
+
(TreeGridAxis_isArray(d) && series.options.keys?.length)) {
|
|
60860
61028
|
// Get the axisData from the data array used to
|
|
60861
61029
|
// build the treeGrid where has been modified
|
|
60862
61030
|
data.forEach(function (point) {
|
|
@@ -60957,22 +61125,20 @@ function wrapInit(proceed, chart, userOptions, coll) {
|
|
|
60957
61125
|
// Collapse all nodes in axis.treegrid.collapsednodes
|
|
60958
61126
|
// where collapsed equals true.
|
|
60959
61127
|
TreeGridAxis_addEvent(axis, 'foundExtremes', function () {
|
|
60960
|
-
|
|
60961
|
-
axis.treeGrid.
|
|
60962
|
-
|
|
60963
|
-
|
|
60964
|
-
|
|
60965
|
-
|
|
60966
|
-
|
|
60967
|
-
|
|
60968
|
-
|
|
60969
|
-
|
|
60970
|
-
|
|
60971
|
-
node.collapseEnd !== n.collapseEnd));
|
|
60972
|
-
}
|
|
61128
|
+
axis.treeGrid.collapsedNodes?.forEach(function (node) {
|
|
61129
|
+
const breaks = axis.treeGrid.collapse(node);
|
|
61130
|
+
if (axis.brokenAxis) {
|
|
61131
|
+
axis.brokenAxis.setBreaks(breaks, false);
|
|
61132
|
+
// Remove the node from the axis collapsedNodes
|
|
61133
|
+
if (axis.treeGrid.collapsedNodes) {
|
|
61134
|
+
axis.treeGrid.collapsedNodes = axis.treeGrid
|
|
61135
|
+
.collapsedNodes
|
|
61136
|
+
.filter((n) => ((node.collapseStart !==
|
|
61137
|
+
n.collapseStart) ||
|
|
61138
|
+
node.collapseEnd !== n.collapseEnd));
|
|
60973
61139
|
}
|
|
60974
|
-
}
|
|
60975
|
-
}
|
|
61140
|
+
}
|
|
61141
|
+
});
|
|
60976
61142
|
});
|
|
60977
61143
|
// If staticScale is not defined on the yAxis
|
|
60978
61144
|
// and chart height is set, set axis.isDirty
|
|
@@ -61097,8 +61263,8 @@ function wrapSetTickInterval(proceed) {
|
|
|
61097
61263
|
[];
|
|
61098
61264
|
if (linkedParent) {
|
|
61099
61265
|
const linkedParentExtremes = linkedParent.getExtremes();
|
|
61100
|
-
axis.min =
|
|
61101
|
-
axis.max =
|
|
61266
|
+
axis.min = linkedParentExtremes.min ?? linkedParentExtremes.dataMin;
|
|
61267
|
+
axis.max = linkedParentExtremes.max ?? linkedParentExtremes.dataMax;
|
|
61102
61268
|
axis.tickPositions = linkedParent.tickPositions;
|
|
61103
61269
|
}
|
|
61104
61270
|
axis.linkedParent = linkedParent;
|
|
@@ -61177,6 +61343,7 @@ class TreeGridAxisAdditions {
|
|
|
61177
61343
|
* @private
|
|
61178
61344
|
*/
|
|
61179
61345
|
constructor(axis) {
|
|
61346
|
+
this.pendingSizeAdjustment = 0;
|
|
61180
61347
|
this.axis = axis;
|
|
61181
61348
|
}
|
|
61182
61349
|
/* *
|
|
@@ -61226,7 +61393,7 @@ class TreeGridAxisAdditions {
|
|
|
61226
61393
|
* Returns an array of the new breaks for the axis.
|
|
61227
61394
|
*/
|
|
61228
61395
|
collapse(node) {
|
|
61229
|
-
const axis = this.axis, breaks =
|
|
61396
|
+
const axis = this.axis, breaks = axis.options.breaks || [], obj = getBreakFromNode(node);
|
|
61230
61397
|
breaks.push(obj);
|
|
61231
61398
|
// Change the collapsed flag #13838
|
|
61232
61399
|
node.collapsed = true;
|
|
@@ -61251,17 +61418,17 @@ class TreeGridAxisAdditions {
|
|
|
61251
61418
|
* Returns an array of the new breaks for the axis.
|
|
61252
61419
|
*/
|
|
61253
61420
|
expand(node) {
|
|
61254
|
-
const axis = this.axis,
|
|
61421
|
+
const axis = this.axis, obj = getBreakFromNode(node);
|
|
61255
61422
|
// Change the collapsed flag #13838
|
|
61256
61423
|
node.collapsed = false;
|
|
61257
61424
|
axis.treeGrid.setCollapsedStatus(node);
|
|
61258
61425
|
// Remove the break from the axis breaks array.
|
|
61259
|
-
return breaks
|
|
61426
|
+
return axis.options.breaks?.reduce(function (arr, b) {
|
|
61260
61427
|
if (b.to !== obj.to || b.from !== obj.from) {
|
|
61261
61428
|
arr.push(b);
|
|
61262
61429
|
}
|
|
61263
61430
|
return arr;
|
|
61264
|
-
}, []);
|
|
61431
|
+
}, []) || [];
|
|
61265
61432
|
}
|
|
61266
61433
|
/**
|
|
61267
61434
|
* Creates a list of positions for the ticks on the axis. Filters out
|
|
@@ -61289,20 +61456,14 @@ class TreeGridAxisAdditions {
|
|
|
61289
61456
|
*
|
|
61290
61457
|
* @private
|
|
61291
61458
|
*
|
|
61292
|
-
* @param {Highcharts.Axis} axis
|
|
61293
|
-
* The axis to check against.
|
|
61294
|
-
*
|
|
61295
61459
|
* @param {Object} node
|
|
61296
61460
|
* The node to check if is collapsed.
|
|
61297
61461
|
*
|
|
61298
|
-
* @param {number} pos
|
|
61299
|
-
* The tick position to collapse.
|
|
61300
|
-
*
|
|
61301
61462
|
* @return {boolean}
|
|
61302
61463
|
* Returns true if collapsed, false if expanded.
|
|
61303
61464
|
*/
|
|
61304
61465
|
isCollapsed(node) {
|
|
61305
|
-
const axis = this.axis, breaks = (axis.options.breaks || []), obj = getBreakFromNode(node
|
|
61466
|
+
const axis = this.axis, breaks = (axis.options.breaks || []), obj = getBreakFromNode(node);
|
|
61306
61467
|
return breaks.some(function (b) {
|
|
61307
61468
|
return b.from === obj.from && b.to === obj.to;
|
|
61308
61469
|
});
|
|
@@ -61486,7 +61647,7 @@ Series_SeriesRegistry.registerSeriesType('gantt', GanttSeries);
|
|
|
61486
61647
|
|
|
61487
61648
|
;// ./code/es-modules/masters/modules/gantt.src.js
|
|
61488
61649
|
/**
|
|
61489
|
-
* @license Highcharts Gantt JS v12.
|
|
61650
|
+
* @license Highcharts Gantt JS v12.4.0 (2025-09-04)
|
|
61490
61651
|
* @module highcharts/modules/gantt
|
|
61491
61652
|
* @requires highcharts
|
|
61492
61653
|
*
|
|
@@ -61529,14 +61690,7 @@ gantt_src_G.Scrollbar.compose(gantt_src_G.Axis);
|
|
|
61529
61690
|
/* harmony default export */ const gantt_src = ((/* unused pure expression or super */ null && (Highcharts)));
|
|
61530
61691
|
|
|
61531
61692
|
;// ./code/es-modules/masters/highcharts-gantt.src.js
|
|
61532
|
-
|
|
61533
|
-
* @license Highcharts Gantt JS v12.2.0 (2025-04-07)
|
|
61534
|
-
* @module highcharts/highcharts-gantt
|
|
61535
|
-
*
|
|
61536
|
-
* (c) 2017-2025 Lars Cabrera, Torstein Honsi, Jon Arild Nygard & Oystein Moseng
|
|
61537
|
-
*
|
|
61538
|
-
* License: www.highcharts.com/license
|
|
61539
|
-
*/
|
|
61693
|
+
|
|
61540
61694
|
|
|
61541
61695
|
|
|
61542
61696
|
|