highcharts 13.0.0 → 13.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bower.json +1 -1
- package/css/highcharts.css +2 -1
- package/es-modules/Accessibility/A11yI18n.js +4 -4
- package/es-modules/Accessibility/Accessibility.js +38 -1
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +6 -4
- package/es-modules/Accessibility/Components/LegendComponent.js +3 -4
- package/es-modules/Accessibility/Components/NavigatorComponent.js +3 -4
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +13 -10
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +8 -4
- package/es-modules/Accessibility/Components/ZoomComponent.js +2 -2
- package/es-modules/Accessibility/FocusBorder.js +2 -2
- package/es-modules/Accessibility/Options/A11yDefaults.js +12 -3
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +1 -2
- package/es-modules/Accessibility/ProxyElement.js +1 -0
- package/es-modules/Core/Animation/AnimationUtilities.js +34 -43
- package/es-modules/Core/Animation/Fx.js +16 -19
- package/es-modules/Core/Axis/Axis.js +49 -59
- package/es-modules/Core/Axis/Axis3DComposition.js +8 -6
- package/es-modules/Core/Axis/AxisDefaults.js +12 -2
- package/es-modules/Core/Axis/BrokenAxis.js +6 -5
- package/es-modules/Core/Axis/Color/ColorAxis.js +24 -12
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -3
- package/es-modules/Core/Axis/GridAxis.js +12 -5
- package/es-modules/Core/Axis/LogarithmicAxis.js +5 -3
- package/es-modules/Core/Axis/NavigatorAxisComposition.js +2 -2
- package/es-modules/Core/Axis/OrdinalAxis.js +21 -11
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -2
- package/es-modules/Core/Axis/RadialAxis.js +23 -22
- package/es-modules/Core/Axis/ScrollbarAxis.js +3 -3
- package/es-modules/Core/Axis/Stacking/StackItem.js +5 -5
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +5 -6
- package/es-modules/Core/Axis/Tick.js +10 -11
- package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +1 -1
- package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -3
- package/es-modules/Core/Chart/Chart.js +58 -53
- package/es-modules/Core/Chart/Chart3D.js +3 -3
- package/es-modules/Core/Chart/ChartDefaults.js +24 -1
- package/es-modules/Core/Chart/MapChart.js +7 -10
- package/es-modules/Core/Chart/StockChart.js +15 -11
- package/es-modules/Core/Color/Color.js +3 -1
- package/es-modules/Core/Defaults.js +44 -2
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/Legend/Legend.js +20 -17
- package/es-modules/Core/Legend/LegendSymbol.js +2 -2
- package/es-modules/Core/MSPointer.js +2 -2
- package/es-modules/Core/Math3D.js +6 -7
- package/es-modules/Core/Pointer.js +20 -10
- package/es-modules/Core/Renderer/HTML/AST.js +5 -1
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -16
- package/es-modules/Core/Renderer/RendererUtilities.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGElement.js +12 -11
- package/es-modules/Core/Renderer/SVG/SVGElement3D.js +2 -2
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +5 -5
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +6 -6
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +13 -12
- package/es-modules/Core/Renderer/SVG/Symbols.js +6 -5
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
- package/es-modules/Core/Responsive.js +7 -5
- package/es-modules/Core/Series/DataLabel.js +9 -8
- package/es-modules/Core/Series/OverlappingDataLabels.js +5 -2
- package/es-modules/Core/Series/Point.js +31 -24
- package/es-modules/Core/Series/Series.js +125 -82
- package/es-modules/Core/Series/Series3D.js +2 -2
- package/es-modules/Core/Series/SeriesDefaults.js +33 -0
- package/es-modules/Core/Templating.js +18 -15
- package/es-modules/Core/Tooltip.js +12 -9
- package/es-modules/Core/Utilities.js +4 -3
- package/es-modules/Data/Connectors/DataConnector.js +2 -2
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
- package/es-modules/Data/DataTable.js +17 -0
- package/es-modules/Data/DataTableCore.js +1 -1
- package/es-modules/Extensions/Annotations/Annotation.js +5 -6
- package/es-modules/Extensions/Annotations/AnnotationChart.js +2 -2
- package/es-modules/Extensions/Annotations/AnnotationDefaults.js +4 -4
- package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +2 -2
- package/es-modules/Extensions/Annotations/EventEmitter.js +4 -4
- package/es-modules/Extensions/Annotations/MockPoint.js +7 -9
- package/es-modules/Extensions/Annotations/NavigationBindings.js +6 -3
- package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +31 -4
- package/es-modules/Extensions/Annotations/Popup/Popup.js +3 -2
- package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +6 -8
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +4 -4
- package/es-modules/Extensions/Annotations/Types/Measure.js +28 -10
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +4 -2
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -1
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +3 -3
- package/es-modules/Extensions/Boost/Boost.js +13 -0
- package/es-modules/Extensions/Boost/BoostChart.js +11 -4
- package/es-modules/Extensions/Boost/BoostSeries.js +17 -11
- package/es-modules/Extensions/Boost/WGLRenderer.js +9 -6
- package/es-modules/Extensions/Boost/WGLShader.js +3 -3
- package/es-modules/Extensions/BoostCanvas.js +2 -2
- package/es-modules/Extensions/BorderRadius.js +12 -10
- package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +6 -5
- package/es-modules/Extensions/DataGrouping/DataGrouping.js +2 -2
- package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +4 -3
- package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +2 -2
- package/es-modules/Extensions/DraggablePoints/DragDropProps.js +2 -3
- package/es-modules/Extensions/DraggablePoints/DraggableChart.js +1 -2
- package/es-modules/Extensions/Drilldown/Drilldown.js +1 -2
- package/es-modules/Extensions/Drilldown/DrilldownSeries.js +1 -2
- package/es-modules/Extensions/ExportData/ExportData.js +21 -16
- package/es-modules/Extensions/Exporting/Exporting.js +28 -28
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +32 -0
- package/es-modules/Extensions/MarkerClusters/MarkerClusterScatter.js +1 -2
- package/es-modules/Extensions/MarkerClusters/MarkerClusters.js +1 -2
- package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +2 -2
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +31 -4
- package/es-modules/Extensions/Pane/PaneComposition.js +2 -2
- package/es-modules/Extensions/Pane/PaneDefaults.js +1 -1
- package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -2
- package/es-modules/Extensions/ParallelCoordinates/ParallelCoordinates.js +3 -0
- package/es-modules/Extensions/PatternFill.js +7 -5
- package/es-modules/Extensions/PriceIndication.js +5 -4
- package/es-modules/Extensions/ScrollablePlotArea.js +8 -2
- package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +8 -9
- package/es-modules/Extensions/Sonification/MIDI.js +2 -3
- package/es-modules/Extensions/Sonification/Sonification.js +2 -2
- package/es-modules/Extensions/Sonification/SonificationSpeaker.js +3 -2
- package/es-modules/Extensions/Sonification/SynthPatch.js +4 -4
- package/es-modules/Extensions/Sonification/TimelineFromChart.js +11 -11
- package/es-modules/Gantt/Legacy.js +2 -2
- package/es-modules/Gantt/Pathfinder.js +3 -3
- package/es-modules/Gantt/PathfinderAlgorithms.js +4 -3
- package/es-modules/Gantt/Tree.js +1 -1
- package/es-modules/Maps/GeoJSONComposition.js +14 -1
- package/es-modules/Maps/MapNavigation.js +4 -4
- package/es-modules/Maps/MapPointer.js +2 -2
- package/es-modules/Maps/MapView.js +3 -3
- package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +8 -6
- package/es-modules/Series/Area/AreaSeries.js +4 -5
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +87 -147
- package/es-modules/Series/AreaRange/AreaRangeSeriesDefaults.js +42 -4
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +10 -6
- package/es-modules/Series/BoxPlot/BoxPlotSeries.js +40 -32
- package/es-modules/Series/BoxPlot/BoxPlotSeriesDefaults.js +33 -1
- package/es-modules/Series/Bubble/BubbleLegendItem.js +10 -6
- package/es-modules/Series/Bubble/BubbleSeries.js +25 -9
- package/es-modules/Series/Bullet/BulletSeries.js +17 -10
- package/es-modules/Series/Candlestick/CandlestickSeries.js +3 -3
- package/es-modules/Series/CenteredUtilities.js +12 -9
- package/es-modules/Series/ColorMapComposition.js +7 -4
- package/es-modules/Series/Column/ColumnPoint.js +2 -0
- package/es-modules/Series/Column/ColumnSeries.js +14 -14
- package/es-modules/Series/Column/ColumnSeriesDefaults.js +4 -2
- package/es-modules/Series/Column3D/Column3DComposition.js +22 -19
- package/es-modules/Series/ColumnPyramid/ColumnPyramidPoint.js +18 -0
- package/es-modules/Series/ColumnPyramid/ColumnPyramidPointOptions.js +12 -0
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +7 -6
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeriesOptions.js +12 -0
- package/es-modules/Series/ColumnRange/ColumnRangePoint.js +2 -0
- package/es-modules/Series/ColumnRange/ColumnRangePointOptions.js +12 -0
- package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +13 -144
- package/es-modules/Series/ColumnRange/ColumnRangeSeriesDefaults.js +148 -0
- package/es-modules/Series/ColumnRange/ColumnRangeSeriesOptions.js +12 -0
- package/es-modules/Series/Contour/ContourPoint.js +2 -0
- package/es-modules/Series/Contour/ContourSeries.js +1 -0
- package/es-modules/Series/Contour/ContourSeriesDefaults.js +7 -0
- package/es-modules/Series/Contour/ContourShader.js +9 -1
- package/es-modules/Series/CrossSymbol.js +3 -2
- package/es-modules/Series/Cylinder/CylinderComposition.js +12 -12
- package/es-modules/Series/Cylinder/CylinderPoint.js +2 -0
- package/es-modules/Series/Cylinder/CylinderPointOptions.js +15 -0
- package/es-modules/Series/Cylinder/CylinderSeries.js +2 -1
- package/es-modules/Series/Cylinder/CylinderSeriesOptions.js +15 -0
- package/es-modules/Series/Cylinder/SVGElement3DCylinder.js +2 -0
- package/es-modules/Series/DataModifyComposition.js +9 -7
- package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +3 -1
- package/es-modules/Series/DependencyWheel/DependencyWheelPointOptions.js +14 -0
- package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +8 -8
- package/es-modules/Series/DependencyWheel/DependencyWheelSeriesOptions.js +14 -0
- package/es-modules/Series/DerivedComposition.js +9 -8
- package/es-modules/Series/DotPlot/DotPlotPoint.js +18 -0
- package/es-modules/Series/DotPlot/DotPlotPointOptions.js +12 -0
- package/es-modules/Series/DotPlot/DotPlotSeries.js +6 -4
- package/es-modules/Series/DotPlot/DotPlotSeriesOptions.js +12 -0
- package/es-modules/Series/DragNodesComposition.js +11 -8
- package/es-modules/Series/DrawPointUtilities.js +3 -1
- package/es-modules/Series/Dumbbell/DumbbellPoint.js +19 -6
- package/es-modules/Series/Dumbbell/DumbbellPointOptions.js +12 -0
- package/es-modules/Series/Dumbbell/DumbbellSeries.js +33 -15
- package/es-modules/Series/Dumbbell/DumbbellSeriesOptions.js +12 -0
- package/es-modules/Series/ErrorBar/ErrorBarPoint.js +18 -0
- package/es-modules/Series/ErrorBar/ErrorBarPointOptions.js +12 -0
- package/es-modules/Series/ErrorBar/ErrorBarSeries.js +6 -9
- package/es-modules/Series/ErrorBar/ErrorBarSeriesDefaults.js +15 -1
- package/es-modules/Series/ErrorBar/ErrorBarSeriesOptions.js +12 -0
- package/es-modules/Series/Flags/FlagsSeries.js +5 -14
- package/es-modules/Series/Flags/FlagsSeriesDefaults.js +2 -1
- package/es-modules/Series/FlowMap/FlowMapPoint.js +5 -3
- package/es-modules/Series/FlowMap/FlowMapSeries.js +17 -9
- package/es-modules/Series/Funnel/FunnelSeries.js +25 -26
- package/es-modules/Series/Funnel/FunnelSeriesDefaults.js +12 -0
- package/es-modules/Series/Funnel3D/Funnel3DSeries.js +7 -5
- package/es-modules/Series/Gantt/GanttSeries.js +2 -1
- package/es-modules/Series/Gauge/GaugeSeries.js +2 -2
- package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +9 -9
- package/es-modules/Series/GraphLayoutComposition.js +3 -3
- package/es-modules/Series/Heatmap/HeatmapPoint.js +6 -6
- package/es-modules/Series/Heatmap/HeatmapPointOptions.js +12 -0
- package/es-modules/Series/Heatmap/HeatmapSeries.js +13 -13
- package/es-modules/Series/Heatmap/HeatmapSeriesOptions.js +12 -0
- package/es-modules/Series/Histogram/HistogramPoint.js +17 -0
- package/es-modules/Series/Histogram/HistogramPointOptions.js +12 -0
- package/es-modules/Series/Histogram/HistogramSeries.js +15 -3
- package/es-modules/Series/Histogram/HistogramSeriesOptions.js +12 -0
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +9 -9
- package/es-modules/Series/InterpolationUtilities.js +5 -5
- package/es-modules/Series/Item/ItemPointOptions.js +14 -0
- package/es-modules/Series/Item/ItemSeries.js +18 -6
- package/es-modules/Series/Item/ItemSeriesOptions.js +14 -0
- package/es-modules/Series/Map/MapPoint.js +5 -3
- package/es-modules/Series/Map/MapSeries.js +6 -10
- package/es-modules/Series/Map/MapSeriesDefaults.js +11 -1
- package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +3 -3
- package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +14 -9
- package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +12 -0
- package/es-modules/Series/Networkgraph/ReingoldFruchtermanLayout.js +18 -9
- package/es-modules/Series/NodesComposition.js +9 -10
- package/es-modules/Series/OHLC/OHLCPoint.js +2 -2
- package/es-modules/Series/OHLC/OHLCSeries.js +1 -0
- package/es-modules/Series/Organization/OrganizationPoint.js +3 -2
- package/es-modules/Series/Organization/OrganizationSeries.js +29 -7
- package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +11 -4
- package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -3
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +5 -5
- package/es-modules/Series/Pictorial/PictorialSeries.js +4 -2
- package/es-modules/Series/Pie/PieDataLabel.js +2 -2
- package/es-modules/Series/Pie/PiePoint.js +3 -4
- package/es-modules/Series/Pie/PieSeries.js +3 -2
- package/es-modules/Series/Pie3D/Pie3DSeries.js +8 -4
- package/es-modules/Series/PolarComposition.js +13 -14
- package/es-modules/Series/Polygon/PolygonSeries.js +2 -2
- package/es-modules/Series/Polygon/PolygonSeriesDefaults.js +20 -0
- package/es-modules/Series/RangeDataLabel.js +128 -0
- package/es-modules/Series/Sankey/SankeySeries.js +13 -7
- package/es-modules/Series/Sankey/SankeySeriesDefaults.js +2 -2
- package/es-modules/Series/Scatter/ScatterSeries.js +6 -5
- package/es-modules/Series/Scatter/ScatterSeriesDefaults.js +2 -0
- package/es-modules/Series/SimulationSeriesUtilities.js +1 -2
- package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +4 -4
- package/es-modules/Series/Spline/SplineSeries.js +5 -5
- package/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +8 -0
- package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +20 -12
- package/es-modules/Series/Tilemap/TilemapSeriesDefaults.js +2 -1
- package/es-modules/Series/Tilemap/TilemapShapes.js +2 -2
- package/es-modules/Series/Timeline/TimelinePoint.js +2 -2
- package/es-modules/Series/Timeline/TimelineSeries.js +13 -6
- package/es-modules/Series/TreeUtilities.js +16 -7
- package/es-modules/Series/Treegraph/TreegraphLink.js +2 -2
- package/es-modules/Series/Treegraph/TreegraphSeries.js +22 -13
- package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
- package/es-modules/Series/Treemap/TreemapSeries.js +14 -11
- package/es-modules/Series/Treemap/TreemapSeriesDefaults.js +22 -1
- package/es-modules/Series/VariablePie/VariablePieSeries.js +6 -4
- package/es-modules/Series/VariablePie/VariablePieSeriesDefaults.js +3 -2
- package/es-modules/Series/Variwide/VariwideSeries.js +2 -2
- package/es-modules/Series/Vector/VectorSeries.js +7 -9
- package/es-modules/Series/Venn/VennSeries.js +3 -4
- package/es-modules/Series/Waterfall/WaterfallSeries.js +3 -3
- package/es-modules/Series/Windbarb/WindbarbSeries.js +8 -10
- package/es-modules/Series/XRange/XRangeSeries.js +8 -8
- package/es-modules/Shared/TimeBase.js +13 -8
- package/es-modules/Shared/Utilities.js +9 -7
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -3
- package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +4 -3
- package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +1 -1
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +2 -2
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +1 -2
- package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +4 -4
- package/es-modules/Stock/Navigator/Navigator.js +26 -26
- package/es-modules/Stock/Navigator/NavigatorDefaults.js +9 -2
- package/es-modules/Stock/Navigator/NavigatorSymbols.js +2 -1
- package/es-modules/Stock/Navigator/StandaloneNavigator.js +55 -14
- package/es-modules/Stock/RangeSelector/RangeSelector.js +15 -11
- package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +3 -3
- package/es-modules/Stock/Scrollbar/Scrollbar.js +8 -7
- package/es-modules/Stock/StockTools/StockToolbar.js +6 -6
- package/es-modules/Stock/StockTools/StockTools.js +2 -2
- package/es-modules/Stock/StockTools/StockToolsBindings.js +7 -7
- package/es-modules/Stock/StockTools/StockToolsGui.js +6 -4
- package/es-modules/masters/highcharts-3d.src.js +1 -1
- package/es-modules/masters/highcharts-autoload.src.js +1 -1
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +1 -1
- package/es-modules/masters/highcharts.src.js +13 -8
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- 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/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/contour.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-sorting.src.js +1 -1
- package/es-modules/masters/modules/data-tools.src.js +1 -1
- package/es-modules/masters/modules/data.src.js +1 -1
- package/es-modules/masters/modules/datagrouping.src.js +1 -1
- package/es-modules/masters/modules/debugger.src.js +1 -1
- package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
- package/es-modules/masters/modules/dotplot.src.js +1 -1
- package/es-modules/masters/modules/drag-panes.src.js +1 -1
- package/es-modules/masters/modules/draggable-points.src.js +1 -1
- package/es-modules/masters/modules/drilldown.src.js +1 -1
- package/es-modules/masters/modules/dumbbell.src.js +1 -1
- package/es-modules/masters/modules/export-data.src.js +1 -1
- package/es-modules/masters/modules/exporting.src.js +1 -1
- package/es-modules/masters/modules/flowmap.src.js +2 -1
- package/es-modules/masters/modules/full-screen.src.js +1 -1
- package/es-modules/masters/modules/funnel.src.js +1 -1
- package/es-modules/masters/modules/funnel3d.src.js +1 -1
- package/es-modules/masters/modules/gantt.src.js +1 -1
- package/es-modules/masters/modules/geoheatmap.src.js +1 -1
- package/es-modules/masters/modules/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +1 -1
- package/es-modules/masters/modules/heikinashi.src.js +1 -1
- package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
- package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
- package/es-modules/masters/modules/item-series.src.js +1 -1
- package/es-modules/masters/modules/lollipop.src.js +1 -1
- package/es-modules/masters/modules/map.src.js +1 -1
- package/es-modules/masters/modules/marker-clusters.src.js +1 -1
- package/es-modules/masters/modules/mouse-wheel-zoom.src.js +1 -1
- package/es-modules/masters/modules/navigator.src.js +1 -1
- package/es-modules/masters/modules/networkgraph.src.js +1 -1
- package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
- package/es-modules/masters/modules/non-cartesian-zoom.src.js +1 -1
- package/es-modules/masters/modules/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/organization.src.js +1 -1
- package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
- package/es-modules/masters/modules/pareto.src.js +1 -1
- package/es-modules/masters/modules/pathfinder.src.js +1 -1
- package/es-modules/masters/modules/pattern-fill.src.js +1 -1
- package/es-modules/masters/modules/pictorial.src.js +1 -1
- package/es-modules/masters/modules/pointandfigure.src.js +1 -1
- package/es-modules/masters/modules/price-indicator.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.src.js +1 -1
- package/es-modules/masters/modules/renko.src.js +1 -1
- package/es-modules/masters/modules/sankey.src.js +1 -1
- package/es-modules/masters/modules/series-label.src.js +1 -1
- package/es-modules/masters/modules/series-on-point.src.js +1 -1
- package/es-modules/masters/modules/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/sonification.src.js +1 -1
- package/es-modules/masters/modules/static-scale.src.js +1 -1
- package/es-modules/masters/modules/stock-tools.src.js +1 -1
- package/es-modules/masters/modules/stock.src.js +1 -1
- package/es-modules/masters/modules/streamgraph.src.js +1 -1
- package/es-modules/masters/modules/sunburst.src.js +3 -2
- 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 +1 -1
- package/es-modules/masters/themes/adaptive.src.js +1 -1
- package/es-modules/masters/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/high-contrast.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.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 +2 -2
- package/esm/highcharts-3d.src.js +78 -55
- package/esm/highcharts-autoload.js +2 -2
- package/esm/highcharts-autoload.src.js +22 -8
- package/esm/highcharts-gantt.js +2 -2
- package/esm/highcharts-gantt.src.js +1 -24
- package/esm/highcharts-more.js +2 -2
- package/esm/highcharts-more.src.js +1198 -981
- package/esm/highcharts.js +5 -5
- package/esm/highcharts.src.js +702 -515
- package/esm/highmaps.js +2 -2
- package/esm/highmaps.src.js +1 -24
- package/esm/highstock.js +2 -2
- package/esm/highstock.src.js +1 -24
- package/esm/i18n/fr-FR.js +2 -2
- package/esm/i18n/fr-FR.src.js +22 -8
- package/esm/i18n/nb-NO.js +2 -2
- package/esm/i18n/nb-NO.src.js +22 -8
- package/esm/i18n/zh-CN.js +2 -2
- package/esm/i18n/zh-CN.src.js +22 -8
- package/esm/indicators/acceleration-bands.js +2 -2
- package/esm/indicators/acceleration-bands.src.js +22 -8
- package/esm/indicators/accumulation-distribution.js +2 -2
- package/esm/indicators/accumulation-distribution.src.js +22 -8
- package/esm/indicators/ao.js +2 -2
- package/esm/indicators/ao.src.js +22 -8
- package/esm/indicators/apo.js +2 -2
- package/esm/indicators/apo.src.js +22 -8
- package/esm/indicators/aroon-oscillator.js +2 -2
- package/esm/indicators/aroon-oscillator.src.js +22 -8
- package/esm/indicators/aroon.js +2 -2
- package/esm/indicators/aroon.src.js +24 -10
- package/esm/indicators/atr.js +2 -2
- package/esm/indicators/atr.src.js +22 -8
- package/esm/indicators/bollinger-bands.js +2 -2
- package/esm/indicators/bollinger-bands.src.js +22 -8
- package/esm/indicators/cci.js +2 -2
- package/esm/indicators/cci.src.js +22 -8
- package/esm/indicators/chaikin.js +2 -2
- package/esm/indicators/chaikin.src.js +22 -8
- package/esm/indicators/cmf.js +2 -2
- package/esm/indicators/cmf.src.js +22 -8
- package/esm/indicators/cmo.js +2 -2
- package/esm/indicators/cmo.src.js +22 -8
- package/esm/indicators/dema.js +2 -2
- package/esm/indicators/dema.src.js +22 -8
- package/esm/indicators/disparity-index.js +2 -2
- package/esm/indicators/disparity-index.src.js +22 -8
- package/esm/indicators/dmi.js +2 -2
- package/esm/indicators/dmi.src.js +22 -8
- package/esm/indicators/dpo.js +2 -2
- package/esm/indicators/dpo.src.js +25 -10
- package/esm/indicators/ichimoku-kinko-hyo.js +2 -2
- package/esm/indicators/ichimoku-kinko-hyo.src.js +22 -8
- package/esm/indicators/indicators-all.js +2 -2
- package/esm/indicators/indicators-all.src.js +31 -17
- package/esm/indicators/indicators.js +2 -2
- package/esm/indicators/indicators.src.js +24 -10
- package/esm/indicators/keltner-channels.js +2 -2
- package/esm/indicators/keltner-channels.src.js +22 -8
- package/esm/indicators/klinger.js +2 -2
- package/esm/indicators/klinger.src.js +22 -8
- package/esm/indicators/macd.js +2 -2
- package/esm/indicators/macd.src.js +22 -8
- package/esm/indicators/mfi.js +2 -2
- package/esm/indicators/mfi.src.js +22 -8
- package/esm/indicators/momentum.js +2 -2
- package/esm/indicators/momentum.src.js +22 -8
- package/esm/indicators/natr.js +2 -2
- package/esm/indicators/natr.src.js +22 -8
- package/esm/indicators/obv.js +2 -2
- package/esm/indicators/obv.src.js +22 -8
- package/esm/indicators/pivot-points.js +2 -2
- package/esm/indicators/pivot-points.src.js +22 -8
- package/esm/indicators/ppo.js +2 -2
- package/esm/indicators/ppo.src.js +22 -8
- package/esm/indicators/price-channel.js +2 -2
- package/esm/indicators/price-channel.src.js +22 -8
- package/esm/indicators/price-envelopes.js +2 -2
- package/esm/indicators/price-envelopes.src.js +22 -8
- package/esm/indicators/psar.js +2 -2
- package/esm/indicators/psar.src.js +22 -8
- package/esm/indicators/regressions.js +2 -2
- package/esm/indicators/regressions.src.js +22 -8
- package/esm/indicators/roc.js +2 -2
- package/esm/indicators/roc.src.js +22 -8
- package/esm/indicators/rsi.js +2 -2
- package/esm/indicators/rsi.src.js +23 -9
- package/esm/indicators/slow-stochastic.js +2 -2
- package/esm/indicators/slow-stochastic.src.js +22 -8
- package/esm/indicators/stochastic.js +2 -2
- package/esm/indicators/stochastic.src.js +22 -8
- package/esm/indicators/supertrend.js +2 -2
- package/esm/indicators/supertrend.src.js +22 -8
- package/esm/indicators/tema.js +2 -2
- package/esm/indicators/tema.src.js +22 -8
- package/esm/indicators/trendline.js +2 -2
- package/esm/indicators/trendline.src.js +22 -8
- package/esm/indicators/trix.js +2 -2
- package/esm/indicators/trix.src.js +22 -8
- package/esm/indicators/volume-by-price.js +2 -2
- package/esm/indicators/volume-by-price.src.js +23 -10
- package/esm/indicators/vwap.js +2 -2
- package/esm/indicators/vwap.src.js +22 -8
- package/esm/indicators/williams-r.js +2 -2
- package/esm/indicators/williams-r.src.js +22 -8
- package/esm/indicators/wma.js +2 -2
- package/esm/indicators/wma.src.js +22 -8
- package/esm/indicators/zigzag.js +2 -2
- package/esm/indicators/zigzag.src.js +22 -8
- package/esm/modules/accessibility.js +2 -2
- package/esm/modules/accessibility.src.js +564 -92
- package/esm/modules/annotations-advanced.js +11 -11
- package/esm/modules/annotations-advanced.src.js +224 -162
- package/esm/modules/annotations.js +11 -11
- package/esm/modules/annotations.src.js +184 -144
- package/esm/modules/arc-diagram.js +2 -2
- package/esm/modules/arc-diagram.src.js +37 -22
- package/esm/modules/arrow-symbols.js +3 -3
- package/esm/modules/arrow-symbols.src.js +22 -8
- package/esm/modules/boost-canvas.js +2 -2
- package/esm/modules/boost-canvas.src.js +60 -30
- package/esm/modules/boost.js +2 -2
- package/esm/modules/boost.src.js +72 -29
- package/esm/modules/broken-axis.js +2 -2
- package/esm/modules/broken-axis.src.js +27 -12
- package/esm/modules/bullet.js +2 -2
- package/esm/modules/bullet.src.js +38 -17
- package/esm/modules/coloraxis.js +2 -2
- package/esm/modules/coloraxis.src.js +47 -21
- package/esm/modules/contour.js +3 -3
- package/esm/modules/contour.src.js +46 -13
- package/esm/modules/current-date-indicator.js +2 -2
- package/esm/modules/current-date-indicator.src.js +22 -8
- package/esm/modules/cylinder.js +2 -2
- package/esm/modules/cylinder.src.js +46 -28
- package/esm/modules/data-sorting.js +2 -2
- package/esm/modules/data-sorting.src.js +22 -8
- package/esm/modules/data-tools.js +2 -2
- package/esm/modules/data-tools.src.js +44 -13
- package/esm/modules/data.js +4 -4
- package/esm/modules/data.src.js +23 -9
- package/esm/modules/datagrouping.js +2 -2
- package/esm/modules/datagrouping.src.js +28 -13
- package/esm/modules/debugger.js +2 -2
- package/esm/modules/debugger.src.js +22 -8
- package/esm/modules/dependency-wheel.js +2 -2
- package/esm/modules/dependency-wheel.src.js +428 -17
- package/esm/modules/dotplot.js +2 -2
- package/esm/modules/dotplot.src.js +27 -11
- package/esm/modules/drag-panes.js +2 -2
- package/esm/modules/drag-panes.src.js +22 -8
- package/esm/modules/draggable-points.js +2 -2
- package/esm/modules/draggable-points.src.js +24 -12
- package/esm/modules/drilldown.js +2 -2
- package/esm/modules/drilldown.src.js +38 -25
- package/esm/modules/dumbbell.js +2 -2
- package/esm/modules/dumbbell.src.js +72 -27
- package/esm/modules/export-data.js +2 -2
- package/esm/modules/export-data.src.js +42 -23
- package/esm/modules/exporting.js +2 -2
- package/esm/modules/exporting.src.js +83 -37
- package/esm/modules/flowmap.js +3 -2
- package/esm/modules/flowmap.src.js +43 -18
- package/esm/modules/full-screen.js +2 -2
- package/esm/modules/full-screen.src.js +22 -8
- package/esm/modules/funnel.js +2 -2
- package/esm/modules/funnel.src.js +73 -42
- package/esm/modules/funnel3d.js +2 -2
- package/esm/modules/funnel3d.src.js +35 -20
- package/esm/modules/gantt.js +2 -2
- package/esm/modules/gantt.src.js +542 -100
- package/esm/modules/geoheatmap.js +2 -2
- package/esm/modules/geoheatmap.src.js +35 -21
- package/esm/modules/grid-axis.js +2 -2
- package/esm/modules/grid-axis.src.js +33 -12
- package/esm/modules/heatmap.js +2 -2
- package/esm/modules/heatmap.src.js +50 -33
- package/esm/modules/heikinashi.js +2 -2
- package/esm/modules/heikinashi.src.js +22 -8
- package/esm/modules/histogram-bellcurve.js +2 -2
- package/esm/modules/histogram-bellcurve.src.js +56 -25
- package/esm/modules/hollowcandlestick.js +2 -2
- package/esm/modules/hollowcandlestick.src.js +31 -17
- package/esm/modules/item-series.js +2 -2
- package/esm/modules/item-series.src.js +72 -13
- package/esm/modules/lollipop.js +2 -2
- package/esm/modules/lollipop.src.js +22 -8
- package/esm/modules/map.js +2 -2
- package/esm/modules/map.src.js +148 -91
- package/esm/modules/marker-clusters.js +2 -2
- package/esm/modules/marker-clusters.src.js +25 -13
- package/esm/modules/mouse-wheel-zoom.js +2 -2
- package/esm/modules/mouse-wheel-zoom.src.js +54 -13
- package/esm/modules/navigator.js +2 -2
- package/esm/modules/navigator.src.js +534 -74
- package/esm/modules/networkgraph.js +2 -2
- package/esm/modules/networkgraph.src.js +87 -46
- package/esm/modules/no-data-to-display.js +2 -2
- package/esm/modules/no-data-to-display.src.js +22 -8
- package/esm/modules/non-cartesian-zoom.js +2 -2
- package/esm/modules/non-cartesian-zoom.src.js +22 -8
- package/esm/modules/offline-exporting.js +2 -2
- package/esm/modules/offline-exporting.src.js +53 -12
- package/esm/modules/organization.js +4 -2
- package/esm/modules/organization.src.js +63 -19
- package/esm/modules/parallel-coordinates.js +2 -2
- package/esm/modules/parallel-coordinates.src.js +26 -9
- package/esm/modules/pareto.js +2 -2
- package/esm/modules/pareto.src.js +31 -16
- package/esm/modules/pathfinder.js +2 -2
- package/esm/modules/pathfinder.src.js +28 -13
- package/esm/modules/pattern-fill.js +2 -2
- package/esm/modules/pattern-fill.src.js +28 -12
- package/esm/modules/pictorial.js +2 -2
- package/esm/modules/pictorial.src.js +36 -19
- package/esm/modules/pointandfigure.js +2 -2
- package/esm/modules/pointandfigure.src.js +26 -11
- package/esm/modules/price-indicator.js +2 -2
- package/esm/modules/price-indicator.src.js +26 -11
- package/esm/modules/pyramid3d.js +2 -2
- package/esm/modules/pyramid3d.src.js +22 -8
- package/esm/modules/renko.js +2 -2
- package/esm/modules/renko.src.js +22 -8
- package/esm/modules/sankey.js +2 -2
- package/esm/modules/sankey.src.js +59 -31
- package/esm/modules/series-label.js +2 -2
- package/esm/modules/series-label.src.js +31 -18
- package/esm/modules/series-on-point.js +2 -2
- package/esm/modules/series-on-point.src.js +23 -9
- package/esm/modules/solid-gauge.js +2 -2
- package/esm/modules/solid-gauge.src.js +40 -20
- package/esm/modules/sonification.js +2 -2
- package/esm/modules/sonification.src.js +45 -30
- package/esm/modules/static-scale.js +2 -2
- package/esm/modules/static-scale.src.js +22 -8
- package/esm/modules/stock-tools.js +3 -3
- package/esm/modules/stock-tools.src.js +73 -27
- package/esm/modules/stock.js +2 -2
- package/esm/modules/stock.src.js +554 -122
- package/esm/modules/streamgraph.js +2 -2
- package/esm/modules/streamgraph.src.js +22 -8
- package/esm/modules/sunburst.js +2 -2
- package/esm/modules/sunburst.src.js +110 -45
- package/esm/modules/textpath.js +2 -2
- package/esm/modules/textpath.src.js +22 -8
- package/esm/modules/tiledwebmap.js +3 -3
- package/esm/modules/tiledwebmap.src.js +44 -19
- package/esm/modules/tilemap.js +2 -2
- package/esm/modules/tilemap.src.js +27 -12
- package/esm/modules/timeline.js +2 -2
- package/esm/modules/timeline.src.js +35 -14
- package/esm/modules/treegraph.js +2 -2
- package/esm/modules/treegraph.src.js +59 -27
- package/esm/modules/treegrid.js +2 -2
- package/esm/modules/treegrid.src.js +58 -27
- package/esm/modules/treemap.js +2 -2
- package/esm/modules/treemap.src.js +89 -36
- package/esm/modules/variable-pie.js +2 -2
- package/esm/modules/variable-pie.src.js +30 -13
- package/esm/modules/variwide.js +2 -2
- package/esm/modules/variwide.src.js +23 -9
- package/esm/modules/vector.js +2 -2
- package/esm/modules/vector.src.js +28 -16
- package/esm/modules/venn.js +2 -2
- package/esm/modules/venn.src.js +28 -13
- package/esm/modules/windbarb.js +2 -2
- package/esm/modules/windbarb.src.js +29 -17
- package/esm/modules/wordcloud.js +2 -2
- package/esm/modules/wordcloud.src.js +25 -9
- package/esm/modules/xrange.js +2 -2
- package/esm/modules/xrange.src.js +29 -15
- package/esm/standalone-navigator.js +5 -5
- package/esm/standalone-navigator.src.js +808 -570
- package/esm/themes/adaptive.js +3 -3
- package/esm/themes/adaptive.src.js +22 -8
- package/esm/themes/avocado.js +2 -2
- package/esm/themes/avocado.src.js +22 -8
- package/esm/themes/dark-unica.js +2 -2
- package/esm/themes/dark-unica.src.js +22 -8
- package/esm/themes/grid-light.js +2 -2
- package/esm/themes/grid-light.src.js +22 -8
- package/esm/themes/high-contrast.js +2 -2
- package/esm/themes/high-contrast.src.js +22 -8
- package/esm/themes/sand-signika.js +2 -2
- package/esm/themes/sand-signika.src.js +22 -8
- package/esm/themes/sunset.js +2 -2
- package/esm/themes/sunset.src.js +22 -8
- package/highcharts-3d.js +2 -2
- package/highcharts-3d.src.js +116 -92
- package/highcharts-autoload.d.ts +15 -5
- package/highcharts-autoload.js +4 -4
- package/highcharts-autoload.src.d.ts +15 -5
- package/highcharts-autoload.src.js +724 -499
- package/highcharts-gantt.js +4 -4
- package/highcharts-gantt.src.js +851 -590
- package/highcharts-more.d.ts +7 -3
- package/highcharts-more.js +2 -2
- package/highcharts-more.src.d.ts +7 -3
- package/highcharts-more.src.js +1313 -1095
- package/highcharts.d.ts +34795 -25647
- package/highcharts.js +4 -4
- package/highcharts.src.d.ts +34795 -25647
- package/highcharts.src.js +723 -498
- package/highmaps.js +4 -4
- package/highmaps.src.js +863 -583
- package/highstock.js +4 -4
- package/highstock.src.js +899 -619
- package/i18n/fr-FR.js +2 -2
- package/i18n/fr-FR.src.js +32 -16
- package/i18n/nb-NO.js +2 -2
- package/i18n/nb-NO.src.js +32 -16
- package/i18n/zh-CN.js +2 -2
- package/i18n/zh-CN.src.js +32 -16
- package/indicators/acceleration-bands.js +2 -2
- package/indicators/acceleration-bands.src.js +31 -16
- package/indicators/accumulation-distribution.js +2 -2
- package/indicators/accumulation-distribution.src.js +31 -16
- package/indicators/ao.js +2 -2
- package/indicators/ao.src.js +31 -16
- package/indicators/apo.js +2 -2
- package/indicators/apo.src.js +31 -16
- package/indicators/aroon-oscillator.js +2 -2
- package/indicators/aroon-oscillator.src.js +31 -16
- package/indicators/aroon.js +2 -2
- package/indicators/aroon.src.js +33 -18
- package/indicators/atr.js +2 -2
- package/indicators/atr.src.js +31 -16
- package/indicators/bollinger-bands.js +2 -2
- package/indicators/bollinger-bands.src.js +31 -16
- package/indicators/cci.js +2 -2
- package/indicators/cci.src.js +31 -16
- package/indicators/chaikin.js +2 -2
- package/indicators/chaikin.src.js +31 -16
- package/indicators/cmf.js +2 -2
- package/indicators/cmf.src.js +31 -16
- package/indicators/cmo.js +2 -2
- package/indicators/cmo.src.js +31 -16
- package/indicators/dema.js +2 -2
- package/indicators/dema.src.js +31 -16
- package/indicators/disparity-index.js +2 -2
- package/indicators/disparity-index.src.js +31 -16
- package/indicators/dmi.js +2 -2
- package/indicators/dmi.src.js +31 -16
- package/indicators/dpo.js +2 -2
- package/indicators/dpo.src.js +34 -18
- package/indicators/ichimoku-kinko-hyo.js +2 -2
- package/indicators/ichimoku-kinko-hyo.src.js +41 -26
- package/indicators/indicators-all.js +2 -2
- package/indicators/indicators-all.src.js +52 -37
- package/indicators/indicators.js +2 -2
- package/indicators/indicators.src.js +39 -24
- package/indicators/keltner-channels.js +2 -2
- package/indicators/keltner-channels.src.js +31 -16
- package/indicators/klinger.js +2 -2
- package/indicators/klinger.src.js +31 -16
- package/indicators/macd.js +2 -2
- package/indicators/macd.src.js +31 -16
- package/indicators/mfi.js +2 -2
- package/indicators/mfi.src.js +31 -16
- package/indicators/momentum.js +2 -2
- package/indicators/momentum.src.js +31 -16
- package/indicators/natr.js +2 -2
- package/indicators/natr.src.js +31 -16
- package/indicators/obv.js +2 -2
- package/indicators/obv.src.js +31 -16
- package/indicators/pivot-points.js +2 -2
- package/indicators/pivot-points.src.js +31 -16
- package/indicators/ppo.js +2 -2
- package/indicators/ppo.src.js +31 -16
- package/indicators/price-channel.js +2 -2
- package/indicators/price-channel.src.js +31 -16
- package/indicators/price-envelopes.js +2 -2
- package/indicators/price-envelopes.src.js +31 -16
- package/indicators/psar.js +2 -2
- package/indicators/psar.src.js +31 -16
- package/indicators/regressions.js +2 -2
- package/indicators/regressions.src.js +31 -16
- package/indicators/roc.js +2 -2
- package/indicators/roc.src.js +31 -16
- package/indicators/rsi.js +2 -2
- package/indicators/rsi.src.js +32 -17
- package/indicators/slow-stochastic.js +2 -2
- package/indicators/slow-stochastic.src.js +31 -16
- package/indicators/stochastic.js +2 -2
- package/indicators/stochastic.src.js +31 -16
- package/indicators/supertrend.js +2 -2
- package/indicators/supertrend.src.js +31 -16
- package/indicators/tema.js +2 -2
- package/indicators/tema.src.js +31 -16
- package/indicators/trendline.js +2 -2
- package/indicators/trendline.src.js +31 -16
- package/indicators/trix.js +2 -2
- package/indicators/trix.src.js +31 -16
- package/indicators/volume-by-price.js +2 -2
- package/indicators/volume-by-price.src.js +32 -18
- package/indicators/vwap.js +2 -2
- package/indicators/vwap.src.js +31 -16
- package/indicators/williams-r.js +2 -2
- package/indicators/williams-r.src.js +31 -16
- package/indicators/wma.js +2 -2
- package/indicators/wma.src.js +31 -16
- package/indicators/zigzag.js +2 -2
- package/indicators/zigzag.src.js +31 -16
- package/modules/accessibility.d.ts +47 -0
- package/modules/accessibility.js +2 -2
- package/modules/accessibility.src.d.ts +47 -0
- package/modules/accessibility.src.js +603 -130
- package/modules/annotations-advanced.js +11 -11
- package/modules/annotations-advanced.src.js +246 -183
- package/modules/annotations.js +11 -11
- package/modules/annotations.src.js +206 -165
- package/modules/arc-diagram.js +2 -2
- package/modules/arc-diagram.src.js +58 -42
- package/modules/arrow-symbols.js +2 -2
- package/modules/arrow-symbols.src.js +28 -13
- package/modules/boost-canvas.js +2 -2
- package/modules/boost-canvas.src.js +69 -38
- package/modules/boost.js +2 -2
- package/modules/boost.src.js +81 -37
- package/modules/broken-axis.js +2 -2
- package/modules/broken-axis.src.js +36 -20
- package/modules/bullet.js +2 -2
- package/modules/bullet.src.js +50 -28
- package/modules/coloraxis.js +2 -2
- package/modules/coloraxis.src.js +65 -38
- package/modules/contour.js +5 -5
- package/modules/contour.src.js +91 -44
- package/modules/current-date-indicator.js +2 -2
- package/modules/current-date-indicator.src.js +28 -13
- package/modules/cylinder.js +2 -2
- package/modules/cylinder.src.js +67 -48
- package/modules/data-sorting.js +2 -2
- package/modules/data-sorting.src.js +28 -13
- package/modules/data-tools.js +2 -2
- package/modules/data-tools.src.js +50 -18
- package/modules/data.js +2 -2
- package/modules/data.src.js +50 -35
- package/modules/datagrouping.js +2 -2
- package/modules/datagrouping.src.js +42 -26
- package/modules/debugger.js +2 -2
- package/modules/debugger.src.js +28 -13
- package/modules/dependency-wheel.d.ts +7 -1
- package/modules/dependency-wheel.js +2 -2
- package/modules/dependency-wheel.src.d.ts +7 -1
- package/modules/dependency-wheel.src.js +440 -28
- package/modules/dotplot.js +2 -2
- package/modules/dotplot.src.js +36 -19
- package/modules/drag-panes.js +2 -2
- package/modules/drag-panes.src.js +28 -13
- package/modules/draggable-points.js +2 -2
- package/modules/draggable-points.src.js +30 -17
- package/modules/drilldown.js +2 -2
- package/modules/drilldown.src.js +49 -35
- package/modules/dumbbell.js +2 -2
- package/modules/dumbbell.src.js +86 -40
- package/modules/export-data.d.ts +66 -1
- package/modules/export-data.js +2 -2
- package/modules/export-data.src.d.ts +66 -1
- package/modules/export-data.src.js +56 -36
- package/modules/exporting.d.ts +0 -103
- package/modules/exporting.js +2 -2
- package/modules/exporting.src.d.ts +0 -103
- package/modules/exporting.src.js +97 -50
- package/modules/flowmap.js +3 -2
- package/modules/flowmap.src.js +52 -26
- package/modules/full-screen.js +2 -2
- package/modules/full-screen.src.js +31 -16
- package/modules/funnel.d.ts +3 -3
- package/modules/funnel.js +2 -2
- package/modules/funnel.src.d.ts +3 -3
- package/modules/funnel.src.js +82 -50
- package/modules/funnel3d.js +2 -2
- package/modules/funnel3d.src.js +56 -40
- package/modules/gantt.d.ts +47 -0
- package/modules/gantt.js +8 -8
- package/modules/gantt.src.d.ts +47 -0
- package/modules/gantt.src.js +602 -156
- package/modules/geoheatmap.d.ts +13 -12
- package/modules/geoheatmap.js +2 -2
- package/modules/geoheatmap.src.d.ts +13 -12
- package/modules/geoheatmap.src.js +44 -29
- package/modules/grid-axis.js +2 -2
- package/modules/grid-axis.src.js +42 -20
- package/modules/heatmap.d.ts +0 -12
- package/modules/heatmap.js +4 -4
- package/modules/heatmap.src.d.ts +0 -12
- package/modules/heatmap.src.js +102 -71
- package/modules/heikinashi.js +2 -2
- package/modules/heikinashi.src.js +31 -16
- package/modules/histogram-bellcurve.js +2 -2
- package/modules/histogram-bellcurve.src.js +70 -38
- package/modules/hollowcandlestick.js +2 -2
- package/modules/hollowcandlestick.src.js +45 -30
- package/modules/item-series.js +2 -2
- package/modules/item-series.src.js +81 -21
- package/modules/lollipop.js +2 -2
- package/modules/lollipop.src.js +36 -21
- package/modules/map.d.ts +0 -20
- package/modules/map.js +4 -4
- package/modules/map.src.d.ts +0 -20
- package/modules/map.src.js +212 -140
- package/modules/marker-clusters.js +2 -2
- package/modules/marker-clusters.src.js +31 -18
- package/modules/mouse-wheel-zoom.js +2 -2
- package/modules/mouse-wheel-zoom.src.js +60 -18
- package/modules/navigator.d.ts +47 -0
- package/modules/navigator.js +2 -2
- package/modules/navigator.src.d.ts +47 -0
- package/modules/navigator.src.js +556 -95
- package/modules/networkgraph.js +2 -2
- package/modules/networkgraph.src.js +99 -57
- package/modules/no-data-to-display.js +2 -2
- package/modules/no-data-to-display.src.js +31 -16
- package/modules/non-cartesian-zoom.js +2 -2
- package/modules/non-cartesian-zoom.src.js +28 -13
- package/modules/offline-exporting.js +2 -2
- package/modules/offline-exporting.src.js +67 -25
- package/modules/organization.js +4 -2
- package/modules/organization.src.js +75 -30
- package/modules/parallel-coordinates.js +2 -2
- package/modules/parallel-coordinates.src.js +37 -19
- package/modules/pareto.js +2 -2
- package/modules/pareto.src.js +45 -29
- package/modules/pathfinder.js +2 -2
- package/modules/pathfinder.src.js +37 -21
- package/modules/pattern-fill.js +2 -2
- package/modules/pattern-fill.src.js +34 -17
- package/modules/pictorial.js +2 -2
- package/modules/pictorial.src.js +62 -43
- package/modules/pointandfigure.js +2 -2
- package/modules/pointandfigure.src.js +35 -19
- package/modules/price-indicator.js +2 -2
- package/modules/price-indicator.src.js +32 -16
- package/modules/pyramid3d.js +2 -2
- package/modules/pyramid3d.src.js +31 -16
- package/modules/renko.js +2 -2
- package/modules/renko.src.js +34 -19
- package/modules/sankey.js +2 -2
- package/modules/sankey.src.js +80 -51
- package/modules/series-label.js +2 -2
- package/modules/series-label.src.js +42 -28
- package/modules/series-on-point.js +2 -2
- package/modules/series-on-point.src.js +40 -25
- package/modules/solid-gauge.d.ts +3 -3
- package/modules/solid-gauge.js +2 -2
- package/modules/solid-gauge.src.d.ts +3 -3
- package/modules/solid-gauge.src.js +54 -33
- package/modules/sonification.js +2 -2
- package/modules/sonification.src.js +56 -40
- package/modules/static-scale.js +2 -2
- package/modules/static-scale.src.js +28 -13
- package/modules/stock-tools.js +3 -3
- package/modules/stock-tools.src.js +90 -43
- package/modules/stock.d.ts +47 -0
- package/modules/stock.js +6 -6
- package/modules/stock.src.d.ts +47 -0
- package/modules/stock.src.js +650 -185
- package/modules/streamgraph.js +2 -2
- package/modules/streamgraph.src.js +31 -16
- package/modules/sunburst.js +2 -2
- package/modules/sunburst.src.js +137 -71
- package/modules/textpath.js +2 -2
- package/modules/textpath.src.js +28 -13
- package/modules/tiledwebmap.js +3 -3
- package/modules/tiledwebmap.src.js +65 -32
- package/modules/tilemap.js +2 -2
- package/modules/tilemap.src.js +41 -25
- package/modules/timeline.js +2 -2
- package/modules/timeline.src.js +47 -25
- package/modules/treegraph.js +2 -2
- package/modules/treegraph.src.js +83 -50
- package/modules/treegrid.js +2 -2
- package/modules/treegrid.src.js +76 -44
- package/modules/treemap.js +2 -2
- package/modules/treemap.src.js +116 -62
- package/modules/variable-pie.js +2 -2
- package/modules/variable-pie.src.js +39 -21
- package/modules/variwide.js +2 -2
- package/modules/variwide.src.js +32 -17
- package/modules/vector.js +2 -2
- package/modules/vector.src.js +37 -24
- package/modules/venn.js +2 -2
- package/modules/venn.src.js +42 -26
- package/modules/windbarb.js +2 -2
- package/modules/windbarb.src.js +51 -38
- package/modules/wordcloud.js +2 -2
- package/modules/wordcloud.src.js +34 -17
- package/modules/xrange.js +2 -2
- package/modules/xrange.src.js +43 -28
- package/options/abands.d.ts +722 -83
- package/options/abands.src.d.ts +722 -83
- package/options/ad.d.ts +381 -26
- package/options/ad.src.d.ts +381 -26
- package/options/ao.d.ts +744 -70
- package/options/ao.src.d.ts +744 -70
- package/options/apo.d.ts +381 -26
- package/options/apo.src.d.ts +381 -26
- package/options/arcdiagram.d.ts +80 -534
- package/options/arcdiagram.src.d.ts +80 -534
- package/options/area.d.ts +432 -129
- package/options/area.src.d.ts +432 -129
- package/options/arearange.d.ts +46 -4
- package/options/arearange.src.d.ts +46 -4
- package/options/areaspline.d.ts +141 -866
- package/options/areaspline.src.d.ts +141 -866
- package/options/areasplinerange.d.ts +221 -871
- package/options/areasplinerange.src.d.ts +221 -871
- package/options/aroon.d.ts +432 -124
- package/options/aroon.src.d.ts +432 -124
- package/options/aroonoscillator.d.ts +127 -689
- package/options/aroonoscillator.src.d.ts +127 -689
- package/options/atr.d.ts +381 -71
- package/options/atr.src.d.ts +381 -71
- package/options/bar.d.ts +103 -12
- package/options/bar.src.d.ts +103 -12
- package/options/bb.d.ts +87 -762
- package/options/bb.src.d.ts +87 -762
- package/options/bellcurve.d.ts +87 -364
- package/options/bellcurve.src.d.ts +87 -364
- package/options/boxplot.d.ts +82 -13
- package/options/boxplot.src.d.ts +82 -13
- package/options/bubble.d.ts +83 -874
- package/options/bubble.src.d.ts +83 -874
- package/options/bullet.d.ts +354 -717
- package/options/bullet.src.d.ts +354 -717
- package/options/candlestick.d.ts +99 -1214
- package/options/candlestick.src.d.ts +99 -1214
- package/options/cci.d.ts +381 -26
- package/options/cci.src.d.ts +381 -26
- package/options/chaikin.d.ts +728 -83
- package/options/chaikin.src.d.ts +728 -83
- package/options/cmf.d.ts +381 -26
- package/options/cmf.src.d.ts +381 -26
- package/options/cmo.d.ts +730 -79
- package/options/cmo.src.d.ts +730 -79
- package/options/column.d.ts +1265 -99
- package/options/column.src.d.ts +1265 -99
- package/options/columnpyramid.d.ts +102 -1158
- package/options/columnpyramid.src.d.ts +102 -1158
- package/options/columnrange.d.ts +952 -95
- package/options/columnrange.src.d.ts +952 -95
- package/options/contour.d.ts +31 -443
- package/options/contour.src.d.ts +31 -443
- package/options/cylinder.d.ts +100 -12
- package/options/cylinder.src.d.ts +100 -12
- package/options/dema.d.ts +80 -736
- package/options/dema.src.d.ts +80 -736
- package/options/dependencywheel.d.ts +599 -218
- package/options/dependencywheel.src.d.ts +599 -218
- package/options/disparityindex.d.ts +84 -365
- package/options/disparityindex.src.d.ts +84 -365
- package/options/dmi.d.ts +86 -775
- package/options/dmi.src.d.ts +86 -775
- package/options/dpo.d.ts +83 -365
- package/options/dpo.src.d.ts +83 -365
- package/options/dumbbell.d.ts +27 -4
- package/options/dumbbell.src.d.ts +27 -4
- package/options/ema.d.ts +81 -703
- package/options/ema.src.d.ts +81 -703
- package/options/errorbar.d.ts +91 -1161
- package/options/errorbar.src.d.ts +91 -1161
- package/options/flags.d.ts +98 -1192
- package/options/flags.src.d.ts +98 -1192
- package/options/flowmap.d.ts +48 -373
- package/options/flowmap.src.d.ts +48 -373
- package/options/funnel.d.ts +40 -3
- package/options/funnel.src.d.ts +40 -3
- package/options/gantt.d.ts +37 -40
- package/options/gantt.src.d.ts +37 -40
- package/options/gauge.d.ts +398 -472
- package/options/gauge.src.d.ts +398 -472
- package/options/geoheatmap.d.ts +462 -63
- package/options/geoheatmap.src.d.ts +462 -63
- package/options/heatmap.d.ts +31 -380
- package/options/heatmap.src.d.ts +31 -380
- package/options/heikinashi.d.ts +20 -2
- package/options/heikinashi.src.d.ts +20 -2
- package/options/hlc.d.ts +20 -2
- package/options/hlc.src.d.ts +20 -2
- package/options/ikh.d.ts +750 -103
- package/options/ikh.src.d.ts +750 -103
- package/options/item.d.ts +34 -74
- package/options/item.src.d.ts +34 -74
- package/options/keltnerchannels.d.ts +87 -708
- package/options/keltnerchannels.src.d.ts +87 -708
- package/options/klinger.d.ts +34 -365
- package/options/klinger.src.d.ts +34 -365
- package/options/line.d.ts +151 -851
- package/options/line.src.d.ts +151 -851
- package/options/linearregression.d.ts +960 -85
- package/options/linearregression.src.d.ts +960 -85
- package/options/linearregressionangle.d.ts +96 -699
- package/options/linearregressionangle.src.d.ts +96 -699
- package/options/linearregressionintercept.d.ts +381 -26
- package/options/linearregressionintercept.src.d.ts +381 -26
- package/options/linearregressionslope.d.ts +381 -26
- package/options/linearregressionslope.src.d.ts +381 -26
- package/options/lollipop.d.ts +214 -851
- package/options/lollipop.src.d.ts +214 -851
- package/options/macd.d.ts +386 -83
- package/options/macd.src.d.ts +386 -83
- package/options/map.d.ts +470 -36
- package/options/map.src.d.ts +470 -36
- package/options/mapbubble.d.ts +43 -532
- package/options/mapbubble.src.d.ts +43 -532
- package/options/mapline.d.ts +135 -58
- package/options/mapline.src.d.ts +135 -58
- package/options/mappoint.d.ts +205 -283
- package/options/mappoint.src.d.ts +205 -283
- package/options/mfi.d.ts +772 -82
- package/options/mfi.src.d.ts +772 -82
- package/options/momentum.d.ts +381 -71
- package/options/momentum.src.d.ts +381 -71
- package/options/natr.d.ts +776 -75
- package/options/natr.src.d.ts +776 -75
- package/options/networkgraph.d.ts +184 -207
- package/options/networkgraph.src.d.ts +184 -207
- package/options/obv.d.ts +426 -26
- package/options/obv.src.d.ts +426 -26
- package/options/ohlc.d.ts +77 -14
- package/options/ohlc.src.d.ts +77 -14
- package/options/packedbubble.d.ts +76 -696
- package/options/packedbubble.src.d.ts +76 -696
- package/options/pareto.d.ts +28 -364
- package/options/pareto.src.d.ts +28 -364
- package/options/pc.d.ts +724 -85
- package/options/pc.src.d.ts +724 -85
- package/options/pictorial.d.ts +1093 -58
- package/options/pictorial.src.d.ts +1093 -58
- package/options/pie.d.ts +595 -129
- package/options/pie.src.d.ts +595 -129
- package/options/pivotpoints.d.ts +34 -365
- package/options/pivotpoints.src.d.ts +34 -365
- package/options/pointandfigure.d.ts +10 -50
- package/options/pointandfigure.src.d.ts +10 -50
- package/options/polygon.d.ts +803 -74
- package/options/polygon.src.d.ts +803 -74
- package/options/ppo.d.ts +34 -365
- package/options/ppo.src.d.ts +34 -365
- package/options/priceenvelopes.d.ts +93 -719
- package/options/priceenvelopes.src.d.ts +93 -719
- package/options/psar.d.ts +34 -365
- package/options/psar.src.d.ts +34 -365
- package/options/pyramid.d.ts +35 -3
- package/options/pyramid.src.d.ts +35 -3
- package/options/renko.d.ts +25 -2
- package/options/renko.src.d.ts +25 -2
- package/options/roc.d.ts +78 -712
- package/options/roc.src.d.ts +78 -712
- package/options/rsi.d.ts +34 -365
- package/options/rsi.src.d.ts +34 -365
- package/options/sankey.d.ts +27 -5
- package/options/sankey.src.d.ts +27 -5
- package/options/scatter.d.ts +896 -290
- package/options/scatter.src.d.ts +896 -290
- package/options/series.d.ts +938 -83
- package/options/series.src.d.ts +938 -83
- package/options/slowstochastic.d.ts +381 -26
- package/options/slowstochastic.src.d.ts +381 -26
- package/options/sma.d.ts +729 -79
- package/options/sma.src.d.ts +729 -79
- package/options/solidgauge.d.ts +882 -105
- package/options/solidgauge.src.d.ts +882 -105
- package/options/spline.d.ts +389 -90
- package/options/spline.src.d.ts +389 -90
- package/options/stochastic.d.ts +83 -716
- package/options/stochastic.src.d.ts +83 -716
- package/options/streamgraph.d.ts +97 -364
- package/options/streamgraph.src.d.ts +97 -364
- package/options/sunburst.d.ts +87 -19
- package/options/sunburst.src.d.ts +87 -19
- package/options/supertrend.d.ts +77 -749
- package/options/supertrend.src.d.ts +77 -749
- package/options/tema.d.ts +83 -365
- package/options/tema.src.d.ts +83 -365
- package/options/tiledwebmap.d.ts +13 -72
- package/options/tiledwebmap.src.d.ts +13 -72
- package/options/tilemap.d.ts +372 -533
- package/options/tilemap.src.d.ts +372 -533
- package/options/timeline.d.ts +49 -154
- package/options/timeline.src.d.ts +49 -154
- package/options/treegraph.d.ts +174 -696
- package/options/treegraph.src.d.ts +174 -696
- package/options/treemap.d.ts +468 -1079
- package/options/treemap.src.d.ts +468 -1079
- package/options/trendline.d.ts +381 -26
- package/options/trendline.src.d.ts +381 -26
- package/options/trix.d.ts +712 -82
- package/options/trix.src.d.ts +712 -82
- package/options/variablepie.d.ts +130 -587
- package/options/variablepie.src.d.ts +130 -587
- package/options/variwide.d.ts +1123 -94
- package/options/variwide.src.d.ts +1123 -94
- package/options/vbp.d.ts +57 -383
- package/options/vbp.src.d.ts +57 -383
- package/options/vector.d.ts +22 -58
- package/options/vector.src.d.ts +22 -58
- package/options/venn.d.ts +32 -78
- package/options/venn.src.d.ts +32 -78
- package/options/vwap.d.ts +122 -703
- package/options/vwap.src.d.ts +122 -703
- package/options/waterfall.d.ts +139 -1150
- package/options/waterfall.src.d.ts +139 -1150
- package/options/williamsr.d.ts +381 -76
- package/options/williamsr.src.d.ts +381 -76
- package/options/windbarb.d.ts +39 -2
- package/options/windbarb.src.d.ts +39 -2
- package/options/wma.d.ts +78 -704
- package/options/wma.src.d.ts +78 -704
- package/options/wordcloud.d.ts +98 -595
- package/options/wordcloud.src.d.ts +98 -595
- package/options/xrange.d.ts +166 -1056
- package/options/xrange.src.d.ts +166 -1056
- package/options/zigzag.d.ts +34 -410
- package/options/zigzag.src.d.ts +34 -410
- package/package.json +1 -1
- package/standalone-navigator.js +4 -4
- package/standalone-navigator.src.js +829 -553
- package/themes/adaptive.js +2 -2
- package/themes/adaptive.src.js +33 -18
- package/themes/avocado.js +2 -2
- package/themes/avocado.src.js +28 -13
- package/themes/dark-unica.js +2 -2
- package/themes/dark-unica.src.js +28 -13
- package/themes/grid-light.js +2 -2
- package/themes/grid-light.src.js +28 -13
- package/themes/high-contrast.js +2 -2
- package/themes/high-contrast.src.js +28 -13
- package/themes/sand-signika.js +2 -2
- package/themes/sand-signika.src.js +28 -13
- package/themes/sunset.js +2 -2
- package/themes/sunset.src.js +28 -13
- package/css/.stylelintrc.json +0 -8
package/esm/modules/exporting.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Highcharts JS v13.0.
|
|
2
|
+
* Highcharts JS v13.0.2 (2026-08-27)
|
|
3
3
|
* @module highcharts/modules/exporting
|
|
4
4
|
* @requires highcharts
|
|
5
5
|
*
|
|
@@ -10,4 +10,4 @@
|
|
|
10
10
|
*
|
|
11
11
|
* A commercial license may be required depending on use,
|
|
12
12
|
* see www.highcharts.com/license
|
|
13
|
-
*/import*as e from"../highcharts.js";var t,n,i={};i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let r=e.default;var o=i.n(r);let a=e.default.AST;var l=i.n(a);let s=e.default.Chart;var c=i.n(s),h=t||(t={});h.compose=function(e){return e.navigation||(e.navigation=new d(e)),e};class d{constructor(e){this.updates=[],this.chart=e}addUpdate(e){this.chart.navigation.updates.push(e)}update(e,t){this.updates.forEach(n=>{n.call(this.chart,e,t)})}}h.Additions=d;let p=t,{isSafari:u,win:g,win:{document:f}}=o(),m=g.URL||g.webkitURL||g;function y(e,t){let n=g.navigator,i=f.createElement("a");if("string"!=typeof e&&!(e instanceof String)&&n.msSaveOrOpenBlob)return void n.msSaveOrOpenBlob(e,t);if(e=""+e,n.userAgent.length>1e3)throw Error("Input too long");let r=/Edge\/\d+/.test(n.userAgent);if((u&&"string"==typeof e&&0===e.indexOf("data:application/pdf")||r||e.length>2e6)&&!(e=function(e){let t=e.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([A-Z+\d\/]+)/i);if(t&&t.length>3&&g.atob&&g.ArrayBuffer&&g.Uint8Array&&g.Blob&&m.createObjectURL){let e=g.atob(t[3]),n=new g.ArrayBuffer(e.length),i=new g.Uint8Array(n);for(let t=0;t<i.length;++t)i[t]=e.charCodeAt(t);return m.createObjectURL(new g.Blob([i],{type:t[1]}))}}(e)||""))throw Error("Failed to convert to blob");if(void 0!==i.download)i.href=e,i.download=t,f.body.appendChild(i),i.click(),f.body.removeChild(i);else try{if(!g.open(e,"chart"))throw Error("Failed to open window")}catch{g.location.href=e}}let{isTouchDevice:x}=o(),v={exporting:{allowHTML:!0,allowTableSorting:!0,local:!0,type:"image/png",url:`https://export-svg.highcharts.com?v=${o().version}`,pdfFont:{normal:void 0,bold:void 0,bolditalic:void 0,italic:void 0},printMaxWidth:780,scale:2,buttons:{contextButton:{className:"highcharts-contextbutton",menuClassName:"highcharts-contextmenu",symbol:"menu",titleKey:"contextButtonTitle",menuItems:["viewFullscreen","printChart","separator","downloadPNG","downloadJPEG","downloadSVG"]}},menuItemDefinitions:{viewFullscreen:{textKey:"viewFullscreen",onclick:function(){this.fullscreen?.toggle()}},printChart:{textKey:"printChart",onclick:function(){this.exporting?.print()}},separator:{separator:!0},downloadPNG:{textKey:"downloadPNG",onclick:async function(){await this.exporting?.exportChart()}},downloadJPEG:{textKey:"downloadJPEG",onclick:async function(){await this.exporting?.exportChart({type:"image/jpeg"})}},downloadPDF:{textKey:"downloadPDF",onclick:async function(){await this.exporting?.exportChart({type:"application/pdf"})}},downloadSVG:{textKey:"downloadSVG",onclick:async function(){await this.exporting?.exportChart({type:"image/svg+xml"})}}}},lang:{viewFullscreen:"View in full screen",exitFullscreen:"Exit from full screen",printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"},navigation:{buttonOptions:{symbolSize:14,symbolX:14.5,symbolY:13.5,align:"right",buttonSpacing:5,height:28,y:-5,verticalAlign:"top",width:28,symbolFill:"var(--highcharts-neutral-color-60)",symbolStroke:"var(--highcharts-neutral-color-60)",symbolStrokeWidth:3,theme:{fill:"var(--highcharts-background-color)",padding:5,stroke:"none","stroke-linecap":"round"}},menuStyle:{border:"none",borderRadius:"3px",background:"var(--highcharts-background-color)",padding:"0.5em"},menuItemStyle:{background:"none",borderRadius:"3px",color:"var(--highcharts-neutral-color-80)",padding:"0.5em",fontSize:x?"0.9em":"0.8em",transition:"background 250ms, color 250ms"},menuItemHoverStyle:{background:"var(--highcharts-neutral-color-5)"}}};!function(e){let t=[];function n(e,t,n,i){return[["M",e,t+2.5],["L",e+n,t+2.5],["M",e,t+i/2+.5],["L",e+n,t+i/2+.5],["M",e,t+i-1.5],["L",e+n,t+i-1.5]]}function i(e,t,n,i){let r=i/3-2,o=[];return o.concat(this.circle(n-r,t,r,r),this.circle(n-r,t+r+4,r,r),this.circle(n-r,t+2*(r+4),r,r))}e.compose=function(e){if(-1===t.indexOf(e)){t.push(e);let r=e.prototype.symbols;r.menu=n,r.menuball=i.bind(r)}}}(n||(n={}));let w=n,{composed:b}=o();function S(){this.fullscreen=new E(this)}class E{static compose(e){(0,r.pushUnique)(b,"Fullscreen")&&(0,r.addEvent)(e,"beforeRender",S)}constructor(e){this.chart=e,this.isOpen=!1;let t=e.renderTo;!this.browserProps&&("function"==typeof t.requestFullscreen?this.browserProps={fullscreenChange:"fullscreenchange",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen"}:t.mozRequestFullScreen?this.browserProps={fullscreenChange:"mozfullscreenchange",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen"}:t.webkitRequestFullScreen?this.browserProps={fullscreenChange:"webkitfullscreenchange",requestFullscreen:"webkitRequestFullScreen",exitFullscreen:"webkitExitFullscreen"}:t.msRequestFullscreen&&(this.browserProps={fullscreenChange:"MSFullscreenChange",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen"}))}close(){let e=this,t=e.chart,n=t.options.chart;(0,r.fireEvent)(t,"fullscreenClose",void 0,function(){e.isOpen&&e.browserProps&&t.container.ownerDocument instanceof Document&&t.container.ownerDocument[e.browserProps.exitFullscreen](),e.unbindFullscreenEvent&&(e.unbindFullscreenEvent=e.unbindFullscreenEvent()),t.setSize(e.origWidth,e.origHeight,!1),e.origWidth=void 0,e.origHeight=void 0,n.width=e.origWidthOption,n.height=e.origHeightOption,e.origWidthOption=void 0,e.origHeightOption=void 0,e.isOpen=!1,e.setButtonText()})}open(){let e=this,t=e.chart,n=t.options.chart;(0,r.fireEvent)(t,"fullscreenOpen",void 0,function(){if(n&&(e.origWidthOption=n.width,e.origHeightOption=n.height),e.origWidth=t.chartWidth,e.origHeight=t.chartHeight,e.browserProps){let n=(0,r.addEvent)(t.container.ownerDocument,e.browserProps.fullscreenChange,function(){e.isOpen?(e.isOpen=!1,e.close()):(t.setSize(null,null,!1),e.isOpen=!0,e.setButtonText())}),i=(0,r.addEvent)(t,"destroy",n);e.unbindFullscreenEvent=()=>{n(),i()};let o=t.renderTo[e.browserProps.requestFullscreen]();o&&o.catch(function(){alert("Full screen is not supported inside a frame.")})}})}setButtonText(){let e=this.chart,t=e.exporting?.divElements,n=e.options.exporting,i=n&&n.buttons&&n.buttons.contextButton.menuItems,r=e.options.lang;if(n?.menuItemDefinitions&&r?.exitFullscreen&&r.viewFullscreen&&i&&t){let e=t[i.indexOf("viewFullscreen")];e&&l().setElementHTML(e,this.isOpen?r.exitFullscreen:n.menuItemDefinitions.viewFullscreen?.text||r.viewFullscreen)}}toggle(){this.isOpen?this.close():this.open()}}let{win:C}=o(),O={ajax:function(e){let t={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"},n=new XMLHttpRequest;function i(t,n){e.error&&e.error(t,n)}if(!e.url)return!1;n.open((e.type||"get").toUpperCase(),e.url,!0),e.headers?.["Content-Type"]||n.setRequestHeader("Content-Type",t[e.dataType||"json"]||t.text),(0,r.objectEach)(e.headers,function(e,t){n.setRequestHeader(t,e)}),e.responseType&&(n.responseType=e.responseType),n.onreadystatechange=function(){let t;if(4===n.readyState){if(200===n.status){if("blob"!==e.responseType&&(t=n.responseText,"json"===e.dataType))try{t=JSON.parse(t)}catch(e){if(e instanceof Error)return i(n,e)}return e.success?.(t,n)}i(n,n.responseText)}},e.data&&"string"!=typeof e.data&&(e.data=JSON.stringify(e.data)),n.send(e.data)},getJSON:function(e,t){O.ajax({url:e,success:t,dataType:"json",headers:{"Content-Type":"text/plain"}})}};O.post=async function(e,t,n){let i=new C.FormData;(0,r.objectEach)(t,function(e,t){i.append(t,e)}),i.append("b64","true");let o=await C.fetch(e,{method:"POST",body:i,...n});if(o.ok){let e=await o.text(),n=document.createElement("a");n.href=`data:${t.type};base64,${e}`,n.download=t.filename,n.click(),(0,r.discardElement)(n)}};let{defaultOptions:T,setOptions:F}=o(),{composed:k,doc:R,isFirefox:N,isMS:A,isSafari:M,SVG_NS:P,win:D}=o();l().allowedAttributes.push("data-z-index","fill-opacity","filter","preserveAspectRatio","rx","ry","stroke-dasharray","stroke-linejoin","stroke-opacity","text-anchor","transform","transform-origin","version","viewBox","visibility","xmlns","xmlns:xlink"),l().allowedTags.push("desc","clippath","fedropshadow","femorphology","g","image");let L=D.URL||D.webkitURL||D;class I{constructor(e,t){this.options={},this.chart=e,this.options=t,this.btnCount=0,this.buttonOffset=0,this.divElements=[],this.svgElements=[]}static hyphenate(e){return e.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()})}static async imageToDataURL(e,t,n){let i=await I.loadImage(e),r=R.createElement("canvas"),o=r?.getContext("2d");if(o)return r.height=i.height*t,r.width=i.width*t,o.drawImage(i,0,0,r.width,r.height),r.toDataURL(n);throw Error("No canvas found!")}static async fetchCSS(e){try{let t=await fetch(e),n=await t.text(),i=new CSSStyleSheet;return i.replaceSync(n),i}catch{(0,r.error)(`Warning: Failed to fetch CSS from ${e}`,!1)}}static extractFontFamilies(e){return e?e.split(",").map(e=>e.trim().replace(/^['"]|['"]$/g,"")).filter(Boolean):[]}static selectorAffectsSVG(e,t){try{if(t.matches(e))return!0;return!!t.querySelector(e)}catch{return!1}}static collectSVGInlineFonts(e,t){for(let n of Array.from(e.querySelectorAll("text, tspan"))){let e=n.getAttribute("style")||"",i=n.getAttribute("font-family")||"";if(e.indexOf("font-family")>-1){let n=e.match(/font-family\s*:\s*([^;]+)/i);for(let e of I.extractFontFamilies(n?.[1]))t.add(e)}for(let e of I.extractFontFamilies(i))t.add(e)}}static async handleStyleSheet(e,t,n,i,r=new Set){let o=e.href;if(o){if(r.has(o))return;r.add(o);try{if(new URL(o,R.baseURI).origin!==D.location.origin)return}catch{}}try{for(let a of Array.from(e.cssRules)){if(a instanceof CSSImportRule)try{let e=await I.fetchCSS(a.href);e&&await I.handleStyleSheet(e,t,n,i,r)}catch{}if(a instanceof CSSStyleRule&&I.selectorAffectsSVG(a.selectorText,i))for(let e of I.extractFontFamilies(a.style.fontFamily))n.add(e);if(a instanceof CSSFontFaceRule){let e=a.cssText;if(o){let t=/url\(\s*(['"]?)(?![a-z]+:|\/\/)([^'")]+?)\1\s*\)/gi;e=e.replace(t,(e,t,n)=>{let i=new URL(n,o).href;return`url(${t}${i}${t})`})}t.push(e)}}}catch(e){if("SecurityError"===e.name&&o)try{let e=await I.fetchCSS(o);e&&await I.handleStyleSheet(e,t,n,i,r)}catch{}}}static async fetchStyleSheets(e){let t=[],n=new Set;for(let i of(I.collectSVGInlineFonts(e,n),Array.from(R.styleSheets)))await I.handleStyleSheet(i,t,n,e);return n.size?t.filter(e=>{let t=e.match(/font-family\s*:\s*([^;]+);?/i);return I.extractFontFamilies(t?.[1]).some(e=>n.has(e))}):t}static async inlineFonts(e){let t=await I.fetchStyleSheets(e),n=/url\(([^)]+)\)/g,i=[],r=t.join("\n"),o;for(;o=n.exec(r);){let e=o[1].replace(/['"]/g,"");i.includes(e)||i.push(e)}let a=e=>{let t="",n=new Uint8Array(e);for(let e=0;e<n.byteLength;e++)t+=String.fromCharCode(n[e]);return btoa(t)},l={};for(let e of i)try{let t=await fetch(e),n=t.headers.get("Content-Type")||"",i=a(await t.arrayBuffer());l[e]=`data:${n};base64,${i}`}catch{}r=r.replace(n,(e,t)=>{let n=t.replace(/['"]/g,"");return`url(${l[n]||n})`});let s=document.createElementNS("http://www.w3.org/2000/svg","style");return s.textContent=r,e.append(s),e}static loadImage(e){return new Promise((t,n)=>{let i=new D.Image;i.crossOrigin="Anonymous",i.onload=()=>{setTimeout(()=>{t(i)},I.loadEventDeferDelay)},i.onerror=e=>{n(e)},i.src=e})}static prepareImageOptions(e){let t=e?.type||"image/png",n=e?.libURL||T.exporting?.libURL;return{type:t,filename:(e?.filename||"chart")+"."+("image/svg+xml"===t?"svg":t.split("/")[1]),scale:e?.scale||1,libURL:n?.slice(-1)!=="/"?n+"/":n}}static sanitizeDOM(e){e.querySelectorAll("foreignObject").forEach(e=>{["width","height"].forEach(t=>{let n=e.getAttribute(t);n&&e.setAttribute(t,Math.ceil(1.15*parseInt(n,10)))})})}static sanitizeSVG(e,t){return e=e.replace(/(<(?:img|br).*?(?=\>))>/g,"$1 />").replace(/(<svg(?![^>]*xmlns=)[^>]*)>/g,'$1 xmlns="http://www.w3.org/2000/svg">').replace(/zIndex="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery\d+="[^"]+"/g,"").replace(/url\(("|")(.*?)("|")\;?\)/g,"url($2)").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (NS\d+\:)?href=/g," xlink:href=").replace(/(<image[^>]*) xlink:href=/g,"$1 href=").replace(/\n+/g," ").replace(/ /g,"\xa0").replace(/­/g,"\xad")}static svgToDataURL(e){let t=D.navigator.userAgent,n=t.indexOf("WebKit")>-1&&0>t.indexOf("Chrome");try{if(!n&&-1===e.indexOf("<foreignObject"))return L.createObjectURL(new D.Blob([e],{type:"image/svg+xml;charset-utf-16"}))}catch{}return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(e)}addButton(e){let t,n=this,i=n.chart,o=i.renderer,a=(0,r.merge)(i.options.navigation?.buttonOptions,e),l=a.onclick,s=a.menuItems,c=a.symbolSize||12;if(!1===a.enabled||!a.theme)return;let h=i.styledMode?{}:a.theme,d=()=>{};l?d=function(e){e&&e.stopPropagation(),l.call(i,e,i)}:s&&(d=function(e){e&&e.stopPropagation(),n.contextMenu(p.menuClassName,s,p.translateX||0,p.translateY||0,p.width||0,p.height||0,p),p.setState(2)}),a.text&&a.symbol?h.paddingLeft=(0,r.pick)(h.paddingLeft,30):a.text||(0,r.extend)(h,{width:a.width,height:a.height,padding:0});let p=o.button(a.text||"",0,0,d,h,void 0,void 0,void 0,void 0,a.useHTML).addClass(e.className||"").attr({title:(0,r.pick)(i.options.lang[a._titleKey||a.titleKey],"")});p.menuClassName=e.menuClassName||"highcharts-menu-"+n.btnCount++,a.symbol&&(t=o.symbol(a.symbol,Math.round((a.symbolX||0)-c/2),Math.round((a.symbolY||0)-c/2),c,c,{width:c,height:c}).addClass("highcharts-button-symbol").attr({zIndex:1}).add(p),i.styledMode||t.attr({stroke:a.symbolStroke,fill:a.symbolFill,"stroke-width":a.symbolStrokeWidth||1})),p.add(n.group).align((0,r.extend)(a,{width:p.width,x:(0,r.pick)(a.x,n.buttonOffset)}),!0,"spacingBox"),n.buttonOffset+=((p.width||0)+(a.buttonSpacing||0))*("right"===a.align?-1:1),n.svgElements.push(p,t)}afterPrint(){let e=this.chart;if(!this.printReverseInfo)return;let{childNodes:t,origDisplay:n,resetParams:i}=this.printReverseInfo;this.moveContainers(e.renderTo),[].forEach.call(t,function(e,t){1===e.nodeType&&(e.style.display=n[t]||"")}),this.isPrinting=!1,i&&e.setSize.apply(e,i),delete this.printReverseInfo,I.printingChart=void 0,(0,r.fireEvent)(e,"afterPrint")}beforePrint(){let e=this.chart,t=R.body,n=this.options.printMaxWidth,i={childNodes:t.childNodes,origDisplay:[],resetParams:void 0};this.isPrinting=!0,e.pointer?.reset(void 0,0),(0,r.fireEvent)(e,"beforePrint"),n&&e.chartWidth>n&&(i.resetParams=[e.options.chart.width,void 0,!1],e.setSize(n,void 0,!1)),[].forEach.call(i.childNodes,function(e,t){1===e.nodeType&&(i.origDisplay[t]=e.style.display,e.style.display="none")}),this.moveContainers(t),this.printReverseInfo=i}contextMenu(e,t,n,i,o,a,s){let c=this,h=c.chart,d=h.options.navigation,{chartWidth:p,chartHeight:u}=h,g="cache-"+e,f=Math.max(o,a),m,y=h[g];y||(c.contextMenuEl=h[g]=y=(0,r.createElement)("div",{className:e},{position:"absolute",zIndex:1e3,padding:f+"px",pointerEvents:"auto",...h.renderer.style},h.scrollablePlotArea?.fixedDiv||h.container),m=(0,r.createElement)("ul",{className:"highcharts-menu"},h.styledMode?{}:{listStyle:"none",margin:0,padding:0},y),h.styledMode||(0,r.css)(m,(0,r.extend)({MozBoxShadow:"3px 3px 10px #0008",WebkitBoxShadow:"3px 3px 10px #0008",boxShadow:"3px 3px 10px #0008"},d?.menuStyle||{})),y.hideMenu=function(){(0,r.css)(y,{display:"none"}),s&&s.setState(0),h.exporting&&(h.exporting.openMenu=!1),(0,r.css)(h.renderTo,{overflow:"hidden"}),(0,r.css)(h.container,{overflow:"hidden"}),(0,r.internalClearTimeout)(y.hideTimer),(0,r.fireEvent)(h,"exportMenuHidden")},c.events?.push((0,r.addEvent)(y,"mouseleave",function(){y.hideTimer=D.setTimeout(y.hideMenu,500)}),(0,r.addEvent)(y,"mouseenter",function(){(0,r.internalClearTimeout)(y.hideTimer)}),(0,r.addEvent)(R,"mouseup",function(t){h.pointer?.inClass(t.target,e)||y.hideMenu()}),(0,r.addEvent)(y,"click",function(){h.exporting?.openMenu&&y.hideMenu()})),t.forEach(function(e){if("string"==typeof e&&c.options.menuItemDefinitions?.[e]&&(e=c.options.menuItemDefinitions[e]),(0,r.isObject)(e,!0)){let t;e.separator?(t=(0,r.createElement)("li",{className:"highcharts-menu-item highcharts-separator",role:"separator"},void 0,m),h.styledMode||(0,r.css)(t,{border:"none",backgroundColor:"var(--highcharts-neutral-color-40)",height:"0.5px",margin:"10px 0",padding:0,listStyle:"none","pointer-events":"none"})):("viewData"===e.textKey&&c.isDataTableVisible&&(e.textKey="hideData"),t=(0,r.createElement)("li",{className:"highcharts-menu-item",onclick:function(t){t&&t.stopPropagation(),y.hideMenu(),"string"!=typeof e&&e.onclick&&e.onclick.apply(h,arguments)}},void 0,m),l().setElementHTML(t,e.text||h.options.lang[e.textKey]),h.styledMode||(t.onmouseover=function(){(0,r.css)(this,d?.menuItemHoverStyle||{})},t.onmouseout=function(){(0,r.css)(this,d?.menuItemStyle||{})},(0,r.css)(t,(0,r.extend)({cursor:"pointer"},d?.menuItemStyle||{})))),c.divElements.push(t)}}),c.divElements.push(m,y),c.menuHeight=y.offsetHeight,c.menuWidth=y.offsetWidth);let x={display:"block"};n+(c.menuWidth||0)>p?x.right=p-n-o-f+"px":x.left=n-f+"px",i+a+(c.menuHeight||0)>u&&s.alignOptions?.verticalAlign!=="top"?x.bottom=u-i-f+"px":x.top=i+a-f+"px",(0,r.css)(y,x),(0,r.css)(h.renderTo,{overflow:""}),(0,r.css)(h.container,{overflow:""}),h.exporting&&(h.exporting.openMenu=!0),(0,r.fireEvent)(h,"exportMenuShown")}destroy(e){let t,n=e?e.target:this.chart,{divElements:i,events:o,svgElements:a}=this;a.forEach((e,i)=>{e&&(e.onclick=e.ontouchstart=null,n[t="cache-"+e.menuClassName]&&delete n[t],a[i]=e.destroy())}),a.length=0,this.group&&(this.group.destroy(),delete this.group),i.forEach(function(e,t){e&&((0,r.internalClearTimeout)(e.hideTimer),(0,r.removeEvent)(e,"mouseleave"),i[t]=e.onmouseout=e.onmouseover=e.ontouchstart=e.onclick=null,(0,r.discardElement)(e))}),i.length=0,o&&(o.forEach(function(e){e()}),o.length=0)}async downloadSVG(e,t){let n,i={svg:e,exportingOptions:t,exporting:this};if((0,r.fireEvent)(I.prototype,"downloadSVG",i),i.defaultPrevented)return;let{type:o,filename:a,scale:l,libURL:s}=I.prepareImageOptions(t);if("application/pdf"===o)throw Error("Offline exporting logic for PDF type is not found.");if("image/svg+xml"===o){if(void 0!==D.MSBlobBuilder){let t=new D.MSBlobBuilder;t.append(e),n=t.getBlob("image/svg+xml")}else n=I.svgToDataURL(e);y(n,a)}else{n=I.svgToDataURL(e);try{I.objectURLRevoke=!0;let e=await I.imageToDataURL(n,l,o);y(e,a)}catch(d){if("No canvas found!"===d.message)throw d;if(e.length>1e8)throw Error("Input too long");let t=R.createElement("canvas"),n=t.getContext("2d"),i=e.match(/^<svg[^>]*\s{,1000}width\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/),h=e.match(/^<svg[^>]*\s{0,1000}height\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/);if(n&&i&&h){let d=i[1]*l,p=h[1]*l;if(t.width=d,t.height=p,!D.canvg){var c;if(!s)throw Error("Image export requires canvg. Set exporting.libURL or preload canvg.");I.objectURLRevoke=!0,await (c=s+"canvg.js",new Promise((e,t)=>{let n=f.getElementsByTagName("head")[0],i=f.createElement("script");i.type="text/javascript",i.src=c,i.onload=()=>{e()},i.onerror=()=>{let e=`Error loading script ${c}`;(0,r.error)(e),t(Error(e))},n.appendChild(i)}))}D.canvg.Canvg.fromString(n,e).start(),y(D.navigator.msSaveOrOpenBlob?t.msToBlob():t.toDataURL(o),a)}}finally{if(I.objectURLRevoke)try{L.revokeObjectURL(n)}catch{}}}}async exportChart(e,t){if((e=(0,r.merge)(this.options,e)).local)await this.localExport(e,t||{});else{let n=await this.getSVGForExport(e,t);e.url&&await O.post(e.url,{filename:e.filename?e.filename.replace(/\//g,"-"):this.getFilename(),type:e.type,width:e.width,scale:e.scale,svg:n},e.fetchOptions)}}async fallbackToServer(e,t){!1===e.fallbackToExportServer?e.error?e.error(e,t):(0,r.error)(t?.message||28,!0,this.chart):"application/pdf"===e.type?(e.local=!1,await this.exportChart(e)):(0,r.error)(t.message,!1)}getChartHTML(e){let t=this.chart;return e&&this.inlineStyles(),this.resolveCSSVariables(),I.sanitizeDOM(t.renderer.box),t.container.querySelectorAll("canvas").forEach(function(e){let n=e.toDataURL("image/png"),i=e.parentNode,o=t.renderer.image(n,0,0,e.width,e.height);(0,r.css)(o.element,{width:e.style.width,height:e.style.height}),i.parentNode.insertBefore(o.element,i),i.remove()}),t.container.innerHTML}getFilename(){let e=this.chart.userOptions.title?.text,t=this.options.filename;return t?t.replace(/\//g,"-"):("string"==typeof e&&(t=e.toLowerCase().replace(/<\/?[^>]+(>|$)/g,"").replace(/[\s_]+/g,"-").replace(/[^a-z\d\-]/g,"").replace(/^[\-]+/g,"").replace(/[\-]+/g,"-").substr(0,24).replace(/[\-]+$/g,"")),(!t||t.length<5)&&(t="chart"),t)}getSVG(e,t){let n=this.chart,i,o,a=(0,r.merge)(n.options,e);a.plotOptions=(0,r.merge)(n.userOptions.plotOptions,e?.plotOptions),a.time=(0,r.merge)(n.userOptions.time,e?.time);let l=(0,r.createElement)("div",void 0,{position:"absolute",top:"-9999em",width:n.chartWidth+"px",height:n.chartHeight+"px"},R.body),s=n.renderTo.style.width,c=n.renderTo.style.height,h=a.exporting?.sourceWidth||a.chart.width||/px$/.test(s)&&parseInt(s,10)||(a.isGantt?800:600),d=a.exporting?.sourceHeight||a.chart.height||/px$/.test(c)&&parseInt(c,10)||400;(0,r.extend)(a.chart,{animation:!1,renderTo:l,forExport:!0,renderer:"SVGRenderer",width:h,height:d}),a.exporting&&(a.exporting.enabled=!1),delete a.data,a.series=[],n.series.forEach(function(e){(o=(0,r.merge)(e.userOptions,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:e.visible})).isInternal||a?.series?.push(o)});let p={};n.axes.forEach(function(e){e.userOptions.internalKey||(e.userOptions.internalKey=(0,r.uniqueKey)()),a&&!e.options.isInternal&&(p[e.coll]||(p[e.coll]=!0,a[e.coll]=[]),a[e.coll].push((0,r.merge)(e.userOptions,{visible:e.visible,type:e.type,uniqueNames:e.uniqueNames})))}),a.colorAxis=n.userOptions.colorAxis;let u=t=>{e&&["xAxis","yAxis","series"].forEach(function(n){e[n]&&t.update({[n]:e[n]})}),n.axes.forEach(function(n){let i=(0,r.find)(t.axes,e=>e.options.internalKey===n.userOptions.internalKey);if(i){let t=n.getExtremes(),o=(0,r.splat)(e?.[n.coll]||{})[0],a="min"in o?o.min:t.userMin,l="max"in o?o.max:t.userMax;(void 0!==a&&a!==i.min||void 0!==l&&l!==i.max)&&i.setExtremes(a??void 0,l??void 0,!0,!1)}});let o=t.exporting;return o?.options.applyStyleSheets&&this.applyShadowDOMStyles(t),i=o?.getChartHTML(n.styledMode||a?.exporting?.applyStyleSheets)||"",(0,r.fireEvent)(n,"getSVG",{chartCopy:t}),i=I.sanitizeSVG(i,a),a=void 0,t.destroy(),(0,r.discardElement)(l),i};return t?new Promise(e=>new n.constructor(a||{},function(t){n.callback?.call(this,t);let i=(0,r.addEvent)(this,"render",function(){i(),e(u(this))})})):u(new n.constructor(a,n.callback))}applyShadowDOMStyles(e){let t=this.chart,n=[],i=t.container,o;for(;i&&(!(o=i.getRootNode())||"object"!=typeof o.host);)i=i.parentNode,o=null;o?.querySelectorAll("style").forEach(t=>{let i=t.cloneNode(!0);e.container.appendChild(i),n.push(i)}),(0,r.addEvent)(t,"getSVG",()=>{n.forEach(e=>{e.remove()})})}async getSVGForExport(e,t){let n=this.options;return await this.getSVG((0,r.merge)({chart:{borderRadius:0}},n.chartOptions,t,{exporting:{sourceWidth:e?.sourceWidth||n.sourceWidth,sourceHeight:e?.sourceHeight||n.sourceHeight}}),!0)}inlineStyles(){let e,t=I.inlineDenylist,n=I.inlineAllowlist,i={},o=(0,r.createElement)("iframe",void 0,{width:"1px",height:"1px",visibility:"hidden"},R.body),a=o.contentWindow?.document;a&&a.body.appendChild(a.createElementNS(P,"svg")),!function o(l){let s,c,h,d,p,u,g={};if(a&&1===l.nodeType&&-1===I.unstyledElements.indexOf(l.nodeName)){if(s=D.getComputedStyle(l,null),c="svg"===l.nodeName?{}:D.getComputedStyle(l.parentNode,null),!i[l.nodeName]){e=a.getElementsByTagName("svg")[0],h=a.createElementNS(l.namespaceURI,l.nodeName),e.appendChild(h);let t=D.getComputedStyle(h,null),n={};for(let e in t)e.length<1e3&&"string"==typeof t[e]&&!/^\d+$/.test(e)&&(n[e]=t[e]);i[l.nodeName]=n,"text"===l.nodeName&&delete i.text.fill,e.removeChild(h)}for(let e in s)(N||A||M||Object.hasOwnProperty.call(s,e))&&function(e,r){if(d=p=!1,n.length){for(u=n.length;u--&&!p;)p=n[u].test(r);d=!p}for("transform"===r&&"none"===e&&(d=!0),u=t.length;u--&&!d;){if(r.length>1e3)throw Error("Input too long");d=t[u].test(r)||"function"==typeof e}!d&&(c[r]!==e||"svg"===l.nodeName)&&i[l.nodeName][r]!==e&&(I.inlineToAttributes&&-1===I.inlineToAttributes.indexOf(r)?g[r]=e:e&&l.setAttribute(I.hyphenate(r),e))}(s[e],e);if((0,r.css)(l,g),"svg"===l.nodeName&&l.setAttribute("stroke-width","1px"),"text"===l.nodeName)return;[].forEach.call(l.children||l.childNodes,o)}}(this.chart.container.querySelector("svg")),e.parentNode.removeChild(e),o.parentNode.removeChild(o)}async localExport(e,t){let n=this.chart,i,o,a=null,l;if(A&&n.styledMode&&!I.inlineAllowlist.length&&I.inlineAllowlist.push(/^blockSize/,/^border/,/^caretColor/,/^color/,/^columnRule/,/^columnRuleColor/,/^cssFloat/,/^cursor/,/^fill$/,/^fillOpacity/,/^font/,/^inlineSize/,/^length/,/^lineHeight/,/^opacity/,/^outline/,/^parentRule/,/^rx$/,/^ry$/,/^stroke/,/^textAlign/,/^textAnchor/,/^textDecoration/,/^transform/,/^vectorEffect/,/^visibility/,/^x$/,/^y$/),A&&("application/pdf"===e.type||n.container.getElementsByTagName("image").length&&"image/svg+xml"!==e.type)||"application/pdf"===e.type&&[].some.call(n.container.getElementsByTagName("image"),function(e){let t=e.getAttribute("href");return""!==t&&"string"==typeof t&&0!==t.indexOf("data:")}))return void await this.fallbackToServer(e,Error("Image type not supported for this chart/browser."));let s=(0,r.addEvent)(n,"getSVG",e=>{o=e.chartCopy.options,l=(i=e.chartCopy.container.cloneNode(!0))&&i.getElementsByTagName("image")||[]});try{let n;for(let n of(await this.getSVGForExport(e,t),l?Array.from(l):[]))if(a=n.getAttributeNS("http://www.w3.org/1999/xlink","href")){I.objectURLRevoke=!1;let t=await I.imageToDataURL(a,e?.scale||1,e?.type||"image/png");n.setAttributeNS("http://www.w3.org/1999/xlink","href",t)}else n.parentNode.removeChild(n);let s=i?.querySelector("svg");s&&!e.chartOptions?.chart?.style?.fontFamily&&await I.inlineFonts(s);let c=(n=i?.innerHTML,I.sanitizeSVG(n||"",o));if(c.indexOf("<foreignObject")>-1&&"image/svg+xml"!==e.type&&(A||"application/pdf"===e.type))throw Error("Image type not supported for charts with embedded HTML");return await this.downloadSVG(c,(0,r.extend)({filename:this.getFilename()},e)),c}catch(t){await this.fallbackToServer(e,t)}finally{s()}}moveContainers(e){let t=this.chart,{scrollablePlotArea:n}=t;(n?[n.fixedDiv,n.scrollingContainer]:[t.container]).forEach(function(t){e.appendChild(t)})}print(){let e=this.chart;this.isPrinting||(I.printingChart=e,M||this.beforePrint(),setTimeout(()=>{D.focus(),D.print(),M||setTimeout(()=>{e.exporting?.afterPrint()},1e3)},1))}render(){let e=this,{chart:t,options:n}=e,i=e?.isDirty||!e?.svgElements.length;e.buttonOffset=0,e.isDirty&&e.destroy(),i&&!1!==n.enabled&&(e.events=[],e.group||(e.group=t.renderer.g("exporting-group").attr({zIndex:3}).add()),(0,r.objectEach)(n?.buttons,function(t){e.addButton(t)}),e.isDirty=!1)}resolveCSSVariables(){Array.from(this.chart.container.querySelectorAll("*")).forEach(e=>{["color","fill","stop-color","stroke"].forEach(t=>{let n=e.getAttribute(t);n?.includes("var(")&&e.setAttribute(t,getComputedStyle(e).getPropertyValue(t));let i=e.style?.[t];i?.includes("var(")&&(e.style[t]=getComputedStyle(e).getPropertyValue(t))})})}update(e,t){this.isDirty=!0,(0,r.merge)(!0,this.options,e),(0,r.pick)(t,!0)&&this.chart.redraw()}}I.inlineAllowlist=[],I.inlineDenylist=[/-/,/^(clipPath|cssText|d|height|width)$/,/^font$/,/[lL]ogical(Width|Height)$/,/^parentRule$/,/^(cssRules|ownerRules)$/,/perspective/,/TapHighlightColor/,/^transition/,/^length$/,/^\d+$/],I.inlineToAttributes=["fill","stroke","strokeLinecap","strokeLinejoin","strokeWidth","textAnchor","x","y"],I.loadEventDeferDelay=150*!!A,I.unstyledElements=["clipPath","defs","desc"],function(e){function t(e){let t=e.exporting;t&&(t.render(),(0,r.addEvent)(e,"redraw",function(){this.exporting?.render()}),(0,r.addEvent)(e,"destroy",function(){this.exporting?.destroy()}))}function n(){let t=this;t.options.exporting&&(t.exporting=new e(t,t.options.exporting),p.compose(t).navigation.addUpdate((e,n)=>{t.exporting&&(t.exporting.isDirty=!0,(0,r.merge)(!0,t.options.navigation,e),(0,r.pick)(n,!0)&&t.redraw())}))}function i({alignTo:e,key:t,textPxLength:n}){let i=this.options.exporting,{align:o,buttonSpacing:a=0,verticalAlign:l,width:s=0}=(0,r.merge)(this.options.navigation?.buttonOptions,i?.buttons?.contextButton),c=e.width-n,h=s+a;(i?.enabled??!0)&&"title"===t&&"right"===o&&"top"===l&&c<2*h&&(c<h?e.width-=h:this.title?.alignValue!=="left"&&(e.x-=h-c/2))}e.compose=function(o,a){w.compose(a),E.compose(o),(0,r.pushUnique)(k,"Exporting")&&((0,r.extend)(c().prototype,{exportChart:async function(e,t){await this.exporting?.exportChart(e,t)},getChartHTML:function(e){return this.exporting?.getChartHTML(e)},getFilename:function(){return this.exporting?.getFilename()},getSVG:function(e){return this.exporting?.getSVG(e,!1)},print:function(){return this.exporting?.print()}}),o.prototype.callbacks.push(t),(0,r.addEvent)(o,"afterInit",n),(0,r.addEvent)(o,"layOutTitle",i),M&&D.matchMedia("print").addListener(function(t){e.printingChart&&(t.matches?e.printingChart.exporting?.beforePrint():e.printingChart.exporting?.afterPrint())}),F(v))}}(I||(I={}));let U=o();U.Exporting=I,U.HttpUtilities=U.HttpUtilities||O,U.ajax=U.HttpUtilities.ajax,U.getJSON=U.HttpUtilities.getJSON,U.post=U.HttpUtilities.post,I.compose(U.Chart,U.Renderer);let H=o();export{H as default};
|
|
13
|
+
*/import*as e from"../highcharts.js";let t={};t.n=e=>{let n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},t.d=(e,n)=>{if(Array.isArray(n))for(var i=0;i<n.length;){var r=n[i++],o=n[i++];t.o(e,r)?0===o&&i++:0===o?Object.defineProperty(e,r,{enumerable:!0,value:n[i++]}):Object.defineProperty(e,r,{enumerable:!0,get:o})}else for(var r in n)t.o(n,r)&&!t.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},t.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);let n=e.default;var i,r,o=t.n(n);let a=e.default.AST;var l=t.n(a);let s=e.default.Chart;var c=t.n(s),h=i||(i={});h.compose=function(e){return e.navigation||(e.navigation=new d(e)),e};class d{constructor(e){this.updates=[],this.chart=e}addUpdate(e){this.chart.navigation.updates.push(e)}update(e,t){this.updates.forEach(n=>{n.call(this.chart,e,t)})}}h.Additions=d;let p=i,{isSafari:u,win:g,win:{document:f}}=o(),m=g.URL||g.webkitURL||g;function y(e,t){let n=g.navigator,i=f.createElement("a");if("string"!=typeof e&&!(e instanceof String)&&n.msSaveOrOpenBlob)return void n.msSaveOrOpenBlob(e,t);if(e=""+e,n.userAgent.length>1e3)throw Error("Input too long");let r=/Edge\/\d+/.test(n.userAgent);if((u&&"string"==typeof e&&0===e.indexOf("data:application/pdf")||r||e.length>2e6)&&!(e=function(e){let t=e.replace(/filename=.*;/,"").match(/data:([^;]*)(;base64)?,([A-Z+\d\/]+)/i);if(t&&t.length>3&&g.atob&&g.ArrayBuffer&&g.Uint8Array&&g.Blob&&m.createObjectURL){let e=g.atob(t[3]),n=new g.ArrayBuffer(e.length),i=new g.Uint8Array(n);for(let t=0;t<i.length;++t)i[t]=e.charCodeAt(t);return m.createObjectURL(new g.Blob([i],{type:t[1]}))}}(e)||""))throw Error("Failed to convert to blob");if(void 0!==i.download)i.href=e,i.download=t,f.body.appendChild(i),i.click(),f.body.removeChild(i);else try{if(!g.open(e,"chart"))throw Error("Failed to open window")}catch{g.location.href=e}}let{isTouchDevice:x}=o(),v={exporting:{allowHTML:!0,allowTableSorting:!0,local:!0,type:"image/png",url:`https://export-svg.highcharts.com?v=${o().version}`,pdfFont:{normal:void 0,bold:void 0,bolditalic:void 0,italic:void 0},printMaxWidth:780,scale:2,buttons:{contextButton:{className:"highcharts-contextbutton",menuClassName:"highcharts-contextmenu",symbol:"menu",titleKey:"contextButtonTitle",menuItems:["viewFullscreen","printChart","separator","downloadPNG","downloadJPEG","downloadSVG"]}},menuItemDefinitions:{viewFullscreen:{textKey:"viewFullscreen",onclick:function(){this.fullscreen?.toggle()}},printChart:{textKey:"printChart",onclick:function(){this.exporting?.print()}},separator:{separator:!0},downloadPNG:{textKey:"downloadPNG",onclick:async function(){await this.exporting?.exportChart()}},downloadJPEG:{textKey:"downloadJPEG",onclick:async function(){await this.exporting?.exportChart({type:"image/jpeg"})}},downloadPDF:{textKey:"downloadPDF",onclick:async function(){await this.exporting?.exportChart({type:"application/pdf"})}},downloadSVG:{textKey:"downloadSVG",onclick:async function(){await this.exporting?.exportChart({type:"image/svg+xml"})}}}},lang:{viewFullscreen:"View in full screen",exitFullscreen:"Exit from full screen",printChart:"Print chart",downloadPNG:"Download PNG image",downloadJPEG:"Download JPEG image",downloadPDF:"Download PDF document",downloadSVG:"Download SVG vector image",contextButtonTitle:"Chart context menu"},navigation:{buttonOptions:{symbolSize:14,symbolX:14.5,symbolY:13.5,align:"right",buttonSpacing:5,height:28,y:-5,verticalAlign:"top",width:28,symbolFill:"var(--highcharts-neutral-color-60)",symbolStroke:"var(--highcharts-neutral-color-60)",symbolStrokeWidth:3,theme:{fill:"var(--highcharts-background-color)",padding:5,stroke:"none","stroke-linecap":"round"}},menuStyle:{border:"none",borderRadius:"3px",background:"var(--highcharts-background-color)",padding:"0.5em"},menuItemStyle:{background:"none",borderRadius:"3px",color:"var(--highcharts-neutral-color-80)",padding:"0.5em",fontSize:x?"0.9em":"0.8em",transition:"background 250ms, color 250ms"},menuItemHoverStyle:{background:"var(--highcharts-neutral-color-5)"}}};!function(e){let t=[];function n(e,t,n,i){return[["M",e,t+2.5],["L",e+n,t+2.5],["M",e,t+i/2+.5],["L",e+n,t+i/2+.5],["M",e,t+i-1.5],["L",e+n,t+i-1.5]]}function i(e,t,n,i){let r=i/3-2,o=[];return o.concat(this.circle(n-r,t,r,r),this.circle(n-r,t+r+4,r,r),this.circle(n-r,t+2*(r+4),r,r))}e.compose=function(e){if(-1===t.indexOf(e)){t.push(e);let r=e.prototype.symbols;r.menu=n,r.menuball=i.bind(r)}}}(r||(r={}));let w=r,{composed:b}=o();function S(){this.fullscreen=new E(this)}class E{static compose(e){(0,n.pushUnique)(b,"Fullscreen")&&(0,n.addEvent)(e,"beforeRender",S)}constructor(e){this.chart=e,this.isOpen=!1;let t=e.renderTo;!this.browserProps&&("function"==typeof t.requestFullscreen?this.browserProps={fullscreenChange:"fullscreenchange",requestFullscreen:"requestFullscreen",exitFullscreen:"exitFullscreen"}:t.mozRequestFullScreen?this.browserProps={fullscreenChange:"mozfullscreenchange",requestFullscreen:"mozRequestFullScreen",exitFullscreen:"mozCancelFullScreen"}:t.webkitRequestFullScreen?this.browserProps={fullscreenChange:"webkitfullscreenchange",requestFullscreen:"webkitRequestFullScreen",exitFullscreen:"webkitExitFullscreen"}:t.msRequestFullscreen&&(this.browserProps={fullscreenChange:"MSFullscreenChange",requestFullscreen:"msRequestFullscreen",exitFullscreen:"msExitFullscreen"}))}close(){let e=this,t=e.chart,i=t.options.chart;(0,n.fireEvent)(t,"fullscreenClose",void 0,function(){e.isOpen&&e.browserProps&&t.container.ownerDocument instanceof Document&&t.container.ownerDocument[e.browserProps.exitFullscreen](),e.unbindFullscreenEvent&&(e.unbindFullscreenEvent=e.unbindFullscreenEvent()),t.setSize(e.origWidth,e.origHeight,!1),e.origWidth=void 0,e.origHeight=void 0,i.width=e.origWidthOption,i.height=e.origHeightOption,e.origWidthOption=void 0,e.origHeightOption=void 0,e.isOpen=!1,e.setButtonText()})}open(){let e=this,t=e.chart,i=t.options.chart;(0,n.fireEvent)(t,"fullscreenOpen",void 0,function(){if(i&&(e.origWidthOption=i.width,e.origHeightOption=i.height),e.origWidth=t.chartWidth,e.origHeight=t.chartHeight,e.browserProps){let i=(0,n.addEvent)(t.container.ownerDocument,e.browserProps.fullscreenChange,function(){e.isOpen?(e.isOpen=!1,e.close()):(t.setSize(null,null,!1),e.isOpen=!0,e.setButtonText())}),r=(0,n.addEvent)(t,"destroy",i);e.unbindFullscreenEvent=()=>{i(),r()};let o=t.renderTo[e.browserProps.requestFullscreen]();o&&o.catch(function(){alert("Full screen is not supported inside a frame.")})}})}setButtonText(){let e=this.chart,t=e.exporting?.divElements,n=e.options.exporting,i=n&&n.buttons&&n.buttons.contextButton.menuItems,r=e.options.lang;if(n?.menuItemDefinitions&&r?.exitFullscreen&&r.viewFullscreen&&i&&t){let e=t[i.indexOf("viewFullscreen")];e&&l().setElementHTML(e,this.isOpen?r.exitFullscreen:n.menuItemDefinitions.viewFullscreen?.text||r.viewFullscreen)}}toggle(){this.isOpen?this.close():this.open()}}let{win:C}=o(),O={ajax:function(e){let t={json:"application/json",xml:"application/xml",text:"text/plain",octet:"application/octet-stream"},i=new XMLHttpRequest;function r(t,n){e.error&&e.error(t,n)}if(!e.url)return!1;i.open((e.type||"get").toUpperCase(),e.url,!0),e.headers?.["Content-Type"]||i.setRequestHeader("Content-Type",t[e.dataType||"json"]||t.text),(0,n.objectEach)(e.headers,function(e,t){i.setRequestHeader(t,e)}),e.responseType&&(i.responseType=e.responseType),i.onreadystatechange=function(){let t;if(4===i.readyState){if(200===i.status){if("blob"!==e.responseType&&(t=i.responseText,"json"===e.dataType))try{t=JSON.parse(t)}catch(e){if(e instanceof Error)return r(i,e)}return e.success?.(t,i)}r(i,i.responseText)}},e.data&&"string"!=typeof e.data&&(e.data=JSON.stringify(e.data)),i.send(e.data)},getJSON:function(e,t){O.ajax({url:e,success:t,dataType:"json",headers:{"Content-Type":"text/plain"}})}};O.post=async function(e,t,i){let r=new C.FormData;(0,n.objectEach)(t,function(e,t){r.append(t,e)}),r.append("b64","true");let o=await C.fetch(e,{method:"POST",body:r,...i});if(o.ok){let e=await o.text(),i=document.createElement("a");i.href=`data:${t.type};base64,${e}`,i.download=t.filename,i.click(),(0,n.discardElement)(i)}};let{defaultOptions:T,setOptions:F}=o(),{composed:k,doc:R,isFirefox:N,isMS:A,isSafari:P,SVG_NS:M,win:D}=o();l().allowedAttributes.push("data-z-index","fill-opacity","filter","preserveAspectRatio","rx","ry","stroke-dasharray","stroke-linejoin","stroke-opacity","text-anchor","transform","transform-origin","version","viewBox","visibility","xmlns","xmlns:xlink"),l().allowedTags.push("desc","clippath","fedropshadow","femorphology","g","image");let L=D.URL||D.webkitURL||D;class I{constructor(e,t){this.options={},this.chart=e,this.options=t,this.btnCount=0,this.buttonOffset=0,this.divElements=[],this.svgElements=[]}static hyphenate(e){return e.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()})}static async imageToDataURL(e,t,n){let i=await I.loadImage(e),r=R.createElement("canvas"),o=r?.getContext("2d");if(o)return r.height=i.height*t,r.width=i.width*t,o.drawImage(i,0,0,r.width,r.height),r.toDataURL(n);throw Error("No canvas found!")}static async fetchCSS(e){try{let t=await fetch(e),n=await t.text(),i=new CSSStyleSheet;return i.replaceSync(n),i}catch{(0,n.error)(`Warning: Failed to fetch CSS from ${e}`,!1)}}static extractFontFamilies(e){return e?e.split(",").map(e=>e.trim().replace(/^['"]|['"]$/g,"")).filter(Boolean):[]}static selectorAffectsSVG(e,t){try{if(t.matches(e))return!0;return!!t.querySelector(e)}catch{return!1}}static collectSVGInlineFonts(e,t){for(let n of[e,...Array.from(e.querySelectorAll("text, tspan"))]){let e=n.getAttribute("style")||"",i=n.getAttribute("font-family")||"";if(e.indexOf("font-family")>-1){let n=e.match(/font-family\s*:\s*([^;]+)/i);for(let e of I.extractFontFamilies(n?.[1]))t.add(e)}for(let e of I.extractFontFamilies(i))t.add(e)}}static async handleStyleSheet(e,t,n,i,r=new Set){let o=e.href;if(o){if(r.has(o))return;r.add(o)}try{for(let a of Array.from(e.cssRules)){if(a instanceof CSSImportRule)try{let e=await I.fetchCSS(a.href);e&&await I.handleStyleSheet(e,t,n,i,r)}catch{}if(a instanceof CSSStyleRule&&I.selectorAffectsSVG(a.selectorText,i))for(let e of I.extractFontFamilies(a.style.fontFamily))n.add(e);if(a instanceof CSSFontFaceRule){let e=a.cssText;if(o){let t=/url\(\s*(['"]?)(?![a-z]+:|\/\/)([^'")]+?)\1\s*\)/gi;e=e.replace(t,(e,t,n)=>{let i=new URL(n,o).href;return`url(${t}${i}${t})`})}t.push(e)}}}catch(e){if("SecurityError"===e.name&&o)try{let e=await I.fetchCSS(o);e&&await I.handleStyleSheet(e,t,n,i,r)}catch{}}}static async fetchStyleSheets(e){let t=[],n=new Set;for(let i of(I.collectSVGInlineFonts(e,n),Array.from(R.styleSheets)))await I.handleStyleSheet(i,t,n,e);return n.size?t.filter(e=>{let t=e.match(/font-family\s*:\s*([^;]+);?/i);return I.extractFontFamilies(t?.[1]).some(e=>n.has(e))}):t}static async inlineFonts(e){let t=await I.fetchStyleSheets(e),n=/url\(([^)]+)\)/g,i=[],r=t.join("\n"),o;for(;o=n.exec(r);){let e=o[1].replace(/['"]/g,"");i.includes(e)||i.push(e)}let a=e=>{let t="",n=new Uint8Array(e);for(let e=0;e<n.byteLength;e++)t+=String.fromCharCode(n[e]);return btoa(t)},l={};for(let e of i)try{let t=await fetch(e),n=t.headers.get("Content-Type")||"",i=a(await t.arrayBuffer());l[e]=`data:${n};base64,${i}`}catch{}r=r.replace(n,(e,t)=>{let n=t.replace(/['"]/g,"");return`url(${l[n]||n})`});let s=document.createElementNS("http://www.w3.org/2000/svg","style");return s.textContent=r,e.append(s),e}static loadImage(e){return new Promise((t,n)=>{let i=new D.Image;i.crossOrigin="Anonymous",i.onload=()=>{setTimeout(()=>{t(i)},I.loadEventDeferDelay)},i.onerror=e=>{n(e)},i.src=e})}static prepareImageOptions(e){let t=e?.type||"image/png",n=e?.libURL||T.exporting?.libURL;return{type:t,filename:(e?.filename||"chart")+"."+("image/svg+xml"===t?"svg":t.split("/")[1]),scale:e?.scale||1,libURL:n?.slice(-1)!=="/"?n+"/":n}}static sanitizeDOM(e){e.querySelectorAll("foreignObject").forEach(e=>{["width","height"].forEach(t=>{let n=e.getAttribute(t);n&&e.setAttribute(t,Math.ceil(1.15*parseInt(n,10)))})})}static sanitizeSVG(e,t){let n=e.lastIndexOf("</svg>");return n>-1&&(e=e.substr(0,n+6)),e=e.replace(/(<(?:img|br).*?(?=\>))>/g,"$1 />").replace(/(<svg(?![^>]*xmlns=)[^>]*)>/g,'$1 xmlns="http://www.w3.org/2000/svg">').replace(/zIndex="[^"]+"/g,"").replace(/symbolName="[^"]+"/g,"").replace(/jQuery\d+="[^"]+"/g,"").replace(/url\(("|")(.*?)("|")\;?\)/g,"url($2)").replace(/url\([^#]+#/g,"url(#").replace(/<svg /,'<svg xmlns:xlink="http://www.w3.org/1999/xlink" ').replace(/ (NS\d+\:)?href=/g," xlink:href=").replace(/(<image[^>]*) xlink:href=/g,"$1 href=").replace(/\n+/g," ").replace(/ /g,"\xa0").replace(/­/g,"\xad")}static svgToDataURL(e){let t=D.navigator.userAgent,n=t.indexOf("WebKit")>-1&&0>t.indexOf("Chrome");try{if(!n&&-1===e.indexOf("<foreignObject"))return L.createObjectURL(new D.Blob([e],{type:"image/svg+xml;charset-utf-16"}))}catch{}return"data:image/svg+xml;charset=UTF-8,"+encodeURIComponent(e)}addButton(e){let t,i=this,r=i.chart,o=r.renderer,a=(0,n.merge)(r.options.navigation?.buttonOptions,e),l=a.onclick,s=a.menuItems,c=a.symbolSize||12;if(!1===a.enabled||!a.theme)return;let h=r.styledMode?{}:a.theme,d=()=>{};l?d=function(e){e&&e.stopPropagation(),l.call(r,e,r)}:s&&(d=function(e){e&&e.stopPropagation(),i.contextMenu(p.menuClassName,s,p.translateX||0,p.translateY||0,p.width||0,p.height||0,p),p.setState(2)}),a.text&&a.symbol?h.paddingLeft=h.paddingLeft??30:a.text||(0,n.extend)(h,{width:a.width,height:a.height,padding:0});let p=o.button(a.text||"",0,0,d,h,void 0,void 0,void 0,void 0,a.useHTML).addClass(e.className||"").attr({title:r.options.lang[a._titleKey||a.titleKey]??""});p.menuClassName=e.menuClassName||"highcharts-menu-"+i.btnCount++,a.symbol&&(t=o.symbol(a.symbol,Math.round((a.symbolX||0)-c/2),Math.round((a.symbolY||0)-c/2),c,c,{width:c,height:c}).addClass("highcharts-button-symbol").attr({zIndex:1}).add(p),r.styledMode||t.attr({stroke:a.symbolStroke,fill:a.symbolFill,"stroke-width":a.symbolStrokeWidth||1})),p.add(i.group).align((0,n.extend)(a,{width:p.width,x:a.x??i.buttonOffset}),!0,"spacingBox"),i.buttonOffset+=((p.width||0)+(a.buttonSpacing||0))*("right"===a.align?-1:1),i.svgElements.push(p,t)}afterPrint(){let e=this.chart;if(!this.printReverseInfo)return;let{childNodes:t,origDisplay:i,resetParams:r}=this.printReverseInfo;this.moveContainers(e.renderTo),[].forEach.call(t,function(e,t){1===e.nodeType&&(e.style.display=i[t]||"")}),this.isPrinting=!1,r&&e.setSize.apply(e,r),delete this.printReverseInfo,I.printingChart=void 0,(0,n.fireEvent)(e,"afterPrint")}beforePrint(){let e=this.chart,t=R.body,i=this.options.printMaxWidth,r={childNodes:t.childNodes,origDisplay:[],resetParams:void 0};this.isPrinting=!0,e.pointer?.reset(void 0,0),(0,n.fireEvent)(e,"beforePrint"),i&&e.chartWidth>i&&(r.resetParams=[e.options.chart.width,void 0,!1],e.setSize(i,void 0,!1)),[].forEach.call(r.childNodes,function(e,t){1===e.nodeType&&(r.origDisplay[t]=e.style.display,e.style.display="none")}),this.moveContainers(t),this.printReverseInfo=r}contextMenu(e,t,i,r,o,a,s){let c=this,h=c.chart,d=h.options.navigation,{chartWidth:p,chartHeight:u}=h,g="cache-"+e,f=Math.max(o,a),m,y=h[g];y||(c.contextMenuEl=h[g]=y=(0,n.createElement)("div",{className:e},{position:"absolute",zIndex:1e3,padding:f+"px",pointerEvents:"auto",...h.renderer.style},h.scrollablePlotArea?.fixedDiv||h.container),m=(0,n.createElement)("ul",{className:"highcharts-menu"},h.styledMode?{}:{listStyle:"none",margin:0,padding:0},y),h.styledMode||(0,n.css)(m,(0,n.extend)({MozBoxShadow:"3px 3px 10px #0008",WebkitBoxShadow:"3px 3px 10px #0008",boxShadow:"3px 3px 10px #0008"},d?.menuStyle||{})),y.hideMenu=function(){(0,n.css)(y,{display:"none"}),s&&s.setState(0),h.exporting&&(h.exporting.openMenu=!1),(0,n.css)(h.renderTo,{overflow:"hidden"}),(0,n.css)(h.container,{overflow:"hidden"}),(0,n.internalClearTimeout)(y.hideTimer),(0,n.fireEvent)(h,"exportMenuHidden")},c.events?.push((0,n.addEvent)(y,"mouseleave",function(){y.hideTimer=D.setTimeout(y.hideMenu,500)}),(0,n.addEvent)(y,"mouseenter",function(){(0,n.internalClearTimeout)(y.hideTimer)}),(0,n.addEvent)(R,"mouseup",function(t){h.pointer?.inClass(t.target,e)||y.hideMenu()}),(0,n.addEvent)(y,"click",function(){h.exporting?.openMenu&&y.hideMenu()})),t.forEach(function(e){if("string"==typeof e&&c.options.menuItemDefinitions?.[e]&&(e=c.options.menuItemDefinitions[e]),(0,n.isObject)(e,!0)){let t;e.separator?(t=(0,n.createElement)("li",{className:"highcharts-menu-item highcharts-separator",role:"separator"},void 0,m),h.styledMode||(0,n.css)(t,{border:"none",backgroundColor:"var(--highcharts-neutral-color-40)",height:"0.5px",margin:"10px 0",padding:0,listStyle:"none","pointer-events":"none"})):("viewData"===e.textKey&&c.isDataTableVisible&&(e.textKey="hideData"),t=(0,n.createElement)("li",{className:"highcharts-menu-item",onclick:function(t){t&&t.stopPropagation(),y.hideMenu(),"string"!=typeof e&&e.onclick&&e.onclick.apply(h,arguments)}},void 0,m),l().setElementHTML(t,e.text||h.options.lang[e.textKey]),h.styledMode||(t.onmouseover=function(){(0,n.css)(this,d?.menuItemHoverStyle||{})},t.onmouseout=function(){(0,n.css)(this,d?.menuItemStyle||{})},(0,n.css)(t,(0,n.extend)({cursor:"pointer"},d?.menuItemStyle||{})))),c.divElements.push(t)}}),c.divElements.push(m,y),c.menuHeight=y.offsetHeight,c.menuWidth=y.offsetWidth);let x={display:"block"};i+(c.menuWidth||0)>p?x.right=p-i-o-f+"px":x.left=i-f+"px",r+a+(c.menuHeight||0)>u&&s.alignOptions?.verticalAlign!=="top"?x.bottom=u-r-f+"px":x.top=r+a-f+"px",(0,n.css)(y,x),(0,n.css)(h.renderTo,{overflow:""}),(0,n.css)(h.container,{overflow:""}),h.exporting&&(h.exporting.openMenu=!0),(0,n.fireEvent)(h,"exportMenuShown")}destroy(e){let t,i=e?e.target:this.chart,{divElements:r,events:o,svgElements:a}=this;a.forEach((e,n)=>{e&&(e.onclick=e.ontouchstart=null,i[t="cache-"+e.menuClassName]&&delete i[t],a[n]=e.destroy())}),a.length=0,this.group&&(this.group.destroy(),delete this.group),r.forEach(function(e,t){e&&((0,n.internalClearTimeout)(e.hideTimer),(0,n.removeEvent)(e,"mouseleave"),r[t]=e.onmouseout=e.onmouseover=e.ontouchstart=e.onclick=null,(0,n.discardElement)(e))}),r.length=0,o&&(o.forEach(function(e){e()}),o.length=0)}async downloadSVG(e,t){let i,r={svg:e,exportingOptions:t,exporting:this};if((0,n.fireEvent)(I.prototype,"downloadSVG",r),r.defaultPrevented)return;let{type:o,filename:a,scale:l,libURL:s}=I.prepareImageOptions(t);if("application/pdf"===o)throw Error("Offline exporting logic for PDF type is not found.");if("image/svg+xml"===o){if(void 0!==D.MSBlobBuilder){let t=new D.MSBlobBuilder;t.append(e),i=t.getBlob("image/svg+xml")}else i=I.svgToDataURL(e);y(i,a)}else{i=I.svgToDataURL(e);try{I.objectURLRevoke=!0;let e=await I.imageToDataURL(i,l,o);y(e,a)}catch(d){if("No canvas found!"===d.message)throw d;if(e.length>1e8)throw Error("Input too long");let t=R.createElement("canvas"),i=t.getContext("2d"),r=e.match(/^<svg[^>]*\s{,1000}width\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/),h=e.match(/^<svg[^>]*\s{0,1000}height\s{,1000}=\s{,1000}\"?(\d+)\"?[^>]*>/);if(i&&r&&h){let d=r[1]*l,p=h[1]*l;if(t.width=d,t.height=p,!D.canvg){var c;if(!s)throw Error("Image export requires canvg. Set exporting.libURL or preload canvg.");I.objectURLRevoke=!0,await (c=s+"canvg.js",new Promise((e,t)=>{let i=f.getElementsByTagName("head")[0],r=f.createElement("script");r.type="text/javascript",r.src=c,r.onload=()=>{e()},r.onerror=()=>{let e=`Error loading script ${c}`;(0,n.error)(e),t(Error(e))},i.appendChild(r)}))}D.canvg.Canvg.fromString(i,e).start(),y(D.navigator.msSaveOrOpenBlob?t.msToBlob():t.toDataURL(o),a)}}finally{if(I.objectURLRevoke)try{L.revokeObjectURL(i)}catch{}}}}async exportChart(e,t){if((e=(0,n.merge)(this.options,e)).local)await this.localExport(e,t||{});else{let n=await this.getSVGForExport(e,t);e.url&&await O.post(e.url,{filename:e.filename?e.filename.replace(/\//g,"-"):this.getFilename(),type:e.type,width:e.width,scale:e.scale,svg:n},e.fetchOptions)}}async fallbackToServer(e,t){!1===e.fallbackToExportServer?e.error?e.error(e,t):(0,n.error)(t?.message||28,!0,this.chart):"application/pdf"===e.type?(e.local=!1,await this.exportChart(e)):(0,n.error)(t.message,!1)}getChartHTML(e){let t=this.chart;return e&&this.inlineStyles(),this.resolveCSSVariables(),I.sanitizeDOM(t.renderer.box),t.container.querySelectorAll("canvas").forEach(function(e){let i=e.toDataURL("image/png"),r=e.parentNode,o=t.renderer.image(i,0,0,e.width,e.height);(0,n.css)(o.element,{width:e.style.width,height:e.style.height}),r.parentNode.insertBefore(o.element,r),r.remove()}),t.container.innerHTML}getFilename(){let e=this.chart.userOptions.title?.text,t=this.options.filename;return t?t.replace(/\//g,"-"):("string"==typeof e&&(t=e.toLowerCase().replace(/<\/?[^>]+(>|$)/g,"").replace(/[\s_]+/g,"-").replace(/[^a-z\d\-]/g,"").replace(/^[\-]+/g,"").replace(/[\-]+/g,"-").substr(0,24).replace(/[\-]+$/g,"")),(!t||t.length<5)&&(t="chart"),t)}getSVG(e,t){let i=this.chart,r,o,a=(0,n.merge)(i.options,e);a.plotOptions=(0,n.merge)(i.userOptions.plotOptions,e?.plotOptions),a.time=(0,n.merge)(i.userOptions.time,e?.time);let l=(0,n.createElement)("div",void 0,{position:"absolute",top:"-9999em",width:i.chartWidth+"px",height:i.chartHeight+"px"},R.body),s=i.renderTo.style.width,c=i.renderTo.style.height,h=a.exporting?.sourceWidth||a.chart.width||/px$/.test(s)&&parseInt(s,10)||(a.isGantt?800:600),d=a.exporting?.sourceHeight||a.chart.height||/px$/.test(c)&&parseInt(c,10)||400;(0,n.extend)(a.chart,{animation:!1,renderTo:l,forExport:!0,renderer:"SVGRenderer",width:h,height:d}),a.exporting&&(a.exporting.enabled=!1),delete a.data,a.series=[],i.series.forEach(function(e){(o=(0,n.merge)(e.userOptions,{animation:!1,enableMouseTracking:!1,showCheckbox:!1,visible:e.visible})).isInternal||a?.series?.push(o)});let p={};i.axes.forEach(function(e){e.userOptions.internalKey||(e.userOptions.internalKey=(0,n.uniqueKey)()),a&&!e.options.isInternal&&(p[e.coll]||(p[e.coll]=!0,a[e.coll]=[]),a[e.coll].push((0,n.merge)(e.userOptions,{visible:e.visible,type:e.type,uniqueNames:e.uniqueNames})))}),a.colorAxis=i.userOptions.colorAxis;let u=t=>{e&&["xAxis","yAxis","series"].forEach(function(n){e[n]&&t.update({[n]:e[n]})}),i.axes.forEach(function(i){let r=(0,n.find)(t.axes,e=>e.options.internalKey===i.userOptions.internalKey);if(r){let t=i.getExtremes(),o=(0,n.splat)(e?.[i.coll]||{})[0],a="min"in o?o.min:t.userMin,l="max"in o?o.max:t.userMax;(void 0!==a&&a!==r.min||void 0!==l&&l!==r.max)&&r.setExtremes(a??void 0,l??void 0,!0,!1)}});let o=t.exporting;return o?.options.applyStyleSheets&&this.applyShadowDOMStyles(t),(0,n.fireEvent)(i,"getSVG",{chartCopy:t}),r=o?.getChartHTML(i.styledMode||a?.exporting?.applyStyleSheets)||"",r=I.sanitizeSVG(r,a),(0,n.fireEvent)(i,"afterGetSVG",{chartCopy:t,svg:r}),a=void 0,t.destroy(),(0,n.discardElement)(l),r};return t?new Promise(e=>new i.constructor(a||{},function(t){i.callback?.call(this,t);let r=(0,n.addEvent)(this,"render",function(){r(),e(u(this))})})):u(new i.constructor(a,i.callback))}applyShadowDOMStyles(e){let t=this.chart,i=[],r=t.container,o;for(;r&&(!(o=r.getRootNode())||"object"!=typeof o.host);)r=r.parentNode,o=null;o?.querySelectorAll("style").forEach(t=>{let n=t.cloneNode(!0);e.renderer.defs.element.appendChild(n),i.push(n)}),(0,n.addEvent)(t,"afterGetSVG",()=>{i.forEach(e=>{e.remove()})})}async getSVGForExport(e,t){let i=this.options;return await this.getSVG((0,n.merge)({chart:{borderRadius:0}},i.chartOptions,t,{exporting:{sourceWidth:e?.sourceWidth||i.sourceWidth,sourceHeight:e?.sourceHeight||i.sourceHeight}}),!0)}inlineStyles(){let e,t=I.inlineDenylist,i=I.inlineAllowlist,r={},o=(0,n.createElement)("iframe",void 0,{width:"1px",height:"1px",visibility:"hidden"},R.body),a=o.contentWindow?.document;a&&a.body.appendChild(a.createElementNS(M,"svg")),!function o(l){let s,c,h,d,p,u,g={};if(a&&1===l.nodeType&&-1===I.unstyledElements.indexOf(l.nodeName)){if(s=D.getComputedStyle(l,null),c="svg"===l.nodeName?{}:D.getComputedStyle(l.parentNode,null),!r[l.nodeName]){e=a.getElementsByTagName("svg")[0],h=a.createElementNS(l.namespaceURI,l.nodeName),e.appendChild(h);let t=D.getComputedStyle(h,null),n={};for(let e in t)e.length<1e3&&"string"==typeof t[e]&&!/^\d+$/.test(e)&&(n[e]=t[e]);r[l.nodeName]=n,"text"===l.nodeName&&delete r.text.fill,e.removeChild(h)}for(let e in s)(N||A||P||Object.hasOwnProperty.call(s,e))&&function(e,n){if(d=p=!1,i.length){for(u=i.length;u--&&!p;)p=i[u].test(n);d=!p}for("transform"===n&&"none"===e&&(d=!0),u=t.length;u--&&!d;){if(n.length>1e3)throw Error("Input too long");d=t[u].test(n)||"function"==typeof e}!d&&(c[n]!==e||"svg"===l.nodeName)&&r[l.nodeName][n]!==e&&(I.inlineToAttributes&&-1===I.inlineToAttributes.indexOf(n)?g[n]=e:e&&l.setAttribute(I.hyphenate(n),e))}(s[e],e);if((0,n.css)(l,g),"svg"===l.nodeName&&l.setAttribute("stroke-width","1px"),"text"===l.nodeName)return;[].forEach.call(l.children||l.childNodes,o)}}(this.chart.container.querySelector("svg")),e.parentNode.removeChild(e),o.parentNode.removeChild(o)}async localExport(e,t){let i=this.chart,r,o,a=null,l;if(A&&i.styledMode&&!I.inlineAllowlist.length&&I.inlineAllowlist.push(/^blockSize/,/^border/,/^caretColor/,/^color/,/^columnRule/,/^columnRuleColor/,/^cssFloat/,/^cursor/,/^fill$/,/^fillOpacity/,/^font/,/^inlineSize/,/^length/,/^lineHeight/,/^opacity/,/^outline/,/^parentRule/,/^rx$/,/^ry$/,/^stroke/,/^textAlign/,/^textAnchor/,/^textDecoration/,/^transform/,/^vectorEffect/,/^visibility/,/^x$/,/^y$/),A&&("application/pdf"===e.type||i.container.getElementsByTagName("image").length&&"image/svg+xml"!==e.type)||"application/pdf"===e.type&&[].some.call(i.container.getElementsByTagName("image"),function(e){let t=e.getAttribute("href");return""!==t&&"string"==typeof t&&0!==t.indexOf("data:")}))return void await this.fallbackToServer(e,Error("Image type not supported for this chart/browser."));let s=(0,n.addEvent)(i,"afterGetSVG",e=>{o=e.chartCopy.options,l=(r=e.chartCopy.container.cloneNode(!0))&&r.getElementsByTagName("image")||[]});try{let i;for(let n of(await this.getSVGForExport(e,t),l?Array.from(l):[]))if(a=n.getAttributeNS("http://www.w3.org/1999/xlink","href")){I.objectURLRevoke=!1;let t=await I.imageToDataURL(a,e?.scale||1,e?.type||"image/png");n.setAttributeNS("http://www.w3.org/1999/xlink","href",t)}else n.parentNode.removeChild(n);let s=r?.querySelector("svg");s&&!e.chartOptions?.chart?.style?.fontFamily&&await I.inlineFonts(s);let c=(i=r?.innerHTML,I.sanitizeSVG(i||"",o));if(c.indexOf("<foreignObject")>-1&&"image/svg+xml"!==e.type&&(A||"application/pdf"===e.type))throw Error("Image type not supported for charts with embedded HTML");return await this.downloadSVG(c,(0,n.extend)({filename:this.getFilename()},e)),c}catch(t){await this.fallbackToServer(e,t)}finally{s()}}moveContainers(e){let t=this.chart,{scrollablePlotArea:n}=t;(n?[n.fixedDiv,n.scrollingContainer]:[t.container]).forEach(function(t){e.appendChild(t)})}print(){let e=this.chart;this.isPrinting||(I.printingChart=e,P||this.beforePrint(),setTimeout(()=>{D.focus(),D.print(),P||setTimeout(()=>{e.exporting?.afterPrint()},1e3)},1))}render(){let e=this,{chart:t,options:i}=e,r=e?.isDirty||!e?.svgElements.length;e.buttonOffset=0,e.isDirty&&e.destroy(),r&&!1!==i.enabled&&(e.events=[],e.group||(e.group=t.renderer.g("exporting-group").attr({zIndex:3}).add()),(0,n.objectEach)(i?.buttons,function(t){e.addButton(t)}),e.isDirty=!1)}resolveCSSVariables(){Array.from(this.chart.container.querySelectorAll("*")).forEach(e=>{["color","fill","stop-color","stroke"].forEach(t=>{let n=e.getAttribute(t);n?.includes("var(")&&e.setAttribute(t,getComputedStyle(e).getPropertyValue(t));let i=e.style?.[t];i?.includes("var(")&&(e.style[t]=getComputedStyle(e).getPropertyValue(t))})})}update(e,t){this.isDirty=!0,(0,n.merge)(!0,this.options,e),(t??!0)&&this.chart.redraw()}}I.inlineAllowlist=[],I.inlineDenylist=[/-/,/^(clipPath|cssText|d|height|width)$/,/^font$/,/[lL]ogical(Width|Height)$/,/^parentRule$/,/^(cssRules|ownerRules)$/,/perspective/,/TapHighlightColor/,/^transition/,/^length$/,/^\d+$/],I.inlineToAttributes=["fill","stroke","strokeLinecap","strokeLinejoin","strokeWidth","textAnchor","x","y"],I.loadEventDeferDelay=150*!!A,I.unstyledElements=["clipPath","defs","desc"],function(e){function t(e){let t=e.exporting;t&&(t.render(),(0,n.addEvent)(e,"redraw",function(){this.exporting?.render()}),(0,n.addEvent)(e,"destroy",function(){this.exporting?.destroy()}))}function i(){let t=this;t.options.exporting&&(t.exporting=new e(t,t.options.exporting),p.compose(t).navigation.addUpdate((e,i)=>{t.exporting&&(t.exporting.isDirty=!0,(0,n.merge)(!0,t.options.navigation,e),(i??!0)&&t.redraw())}))}function r({alignTo:e,key:t,textPxLength:i}){let r=this.options.exporting,{align:o,buttonSpacing:a=0,verticalAlign:l,width:s=0}=(0,n.merge)(this.options.navigation?.buttonOptions,r?.buttons?.contextButton),c=e.width-i,h=s+a;(r?.enabled??!0)&&"title"===t&&"right"===o&&"top"===l&&c<2*h&&(c<h?e.width-=h:this.title?.alignValue!=="left"&&(e.x-=h-c/2))}e.compose=function(o,a){w.compose(a),E.compose(o),(0,n.pushUnique)(k,"Exporting")&&((0,n.extend)(c().prototype,{exportChart:async function(e,t){await this.exporting?.exportChart(e,t)},getChartHTML:function(e){return this.exporting?.getChartHTML(e)},getFilename:function(){return this.exporting?.getFilename()},getSVG:function(e){return this.exporting?.getSVG(e,!1)},print:function(){return this.exporting?.print()}}),o.prototype.callbacks.push(t),(0,n.addEvent)(o,"afterInit",i),(0,n.addEvent)(o,"layOutTitle",r),P&&D.matchMedia("print").addListener(function(t){e.printingChart&&(t.matches?e.printingChart.exporting?.beforePrint():e.printingChart.exporting?.afterPrint())}),F(v))}}(I||(I={}));let U=o();U.Exporting=I,U.HttpUtilities=U.HttpUtilities||O,U.ajax=U.HttpUtilities.ajax,U.getJSON=U.HttpUtilities.getJSON,U.post=U.HttpUtilities.post,I.compose(U.Chart,U.Renderer);let G=o();export{G as default};
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// SPDX-License-Identifier: LicenseRef-Highcharts
|
|
2
2
|
/**
|
|
3
|
-
* @license Highcharts JS v13.0.
|
|
3
|
+
* @license Highcharts JS v13.0.2 (2026-08-27)
|
|
4
4
|
* @module highcharts/modules/exporting
|
|
5
5
|
* @requires highcharts
|
|
6
6
|
*
|
|
@@ -14,14 +14,14 @@
|
|
|
14
14
|
*/
|
|
15
15
|
import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__ from "../highcharts.src.js";
|
|
16
16
|
/******/ // The require scope
|
|
17
|
-
/******/
|
|
17
|
+
/******/ const __webpack_require__ = {};
|
|
18
18
|
/******/
|
|
19
19
|
/************************************************************************/
|
|
20
20
|
/******/ /* webpack/runtime/compat get default export */
|
|
21
21
|
/******/ (() => {
|
|
22
22
|
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
23
23
|
/******/ __webpack_require__.n = (module) => {
|
|
24
|
-
/******/
|
|
24
|
+
/******/ const getter = module && module.__esModule ?
|
|
25
25
|
/******/ () => (module['default']) :
|
|
26
26
|
/******/ () => (module);
|
|
27
27
|
/******/ __webpack_require__.d(getter, { a: getter });
|
|
@@ -31,11 +31,26 @@ import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__ from "../hig
|
|
|
31
31
|
/******/
|
|
32
32
|
/******/ /* webpack/runtime/define property getters */
|
|
33
33
|
/******/ (() => {
|
|
34
|
-
/******/ // define getter functions for harmony exports
|
|
34
|
+
/******/ // define getter/value functions for harmony exports
|
|
35
35
|
/******/ __webpack_require__.d = (exports, definition) => {
|
|
36
|
-
/******/
|
|
37
|
-
/******/
|
|
38
|
-
/******/
|
|
36
|
+
/******/ if(Array.isArray(definition)) {
|
|
37
|
+
/******/ var i = 0;
|
|
38
|
+
/******/ while(i < definition.length) {
|
|
39
|
+
/******/ var key = definition[i++];
|
|
40
|
+
/******/ var binding = definition[i++];
|
|
41
|
+
/******/ if(!__webpack_require__.o(exports, key)) {
|
|
42
|
+
/******/ if(binding === 0) {
|
|
43
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, value: definition[i++] });
|
|
44
|
+
/******/ } else {
|
|
45
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: binding });
|
|
46
|
+
/******/ }
|
|
47
|
+
/******/ } else if(binding === 0) { i++; }
|
|
48
|
+
/******/ }
|
|
49
|
+
/******/ } else {
|
|
50
|
+
/******/ for(var key in definition) {
|
|
51
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
52
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
53
|
+
/******/ }
|
|
39
54
|
/******/ }
|
|
40
55
|
/******/ }
|
|
41
56
|
/******/ };
|
|
@@ -47,7 +62,6 @@ import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__ from "../hig
|
|
|
47
62
|
/******/ })();
|
|
48
63
|
/******/
|
|
49
64
|
/************************************************************************/
|
|
50
|
-
var __webpack_exports__ = {};
|
|
51
65
|
|
|
52
66
|
;// external ["../highcharts.src.js","default"]
|
|
53
67
|
const external_highcharts_src_js_default_namespaceObject = __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__["default"];
|
|
@@ -344,12 +358,12 @@ function getBlobFromContent(content, type) {
|
|
|
344
358
|
*
|
|
345
359
|
* */
|
|
346
360
|
/** @internal */
|
|
347
|
-
const DownloadURL = {
|
|
361
|
+
const DownloadURL = (/* unused pure expression or super */ null && ({
|
|
348
362
|
dataURLtoBlob,
|
|
349
363
|
downloadURL,
|
|
350
364
|
getBlobFromContent,
|
|
351
365
|
getScript
|
|
352
|
-
};
|
|
366
|
+
}));
|
|
353
367
|
/** @internal */
|
|
354
368
|
/* harmony default export */ const Shared_DownloadURL = ((/* unused pure expression or super */ null && (DownloadURL)));
|
|
355
369
|
|
|
@@ -1164,6 +1178,38 @@ const navigation = {
|
|
|
1164
1178
|
* Padding for the button.
|
|
1165
1179
|
*/
|
|
1166
1180
|
padding: 5,
|
|
1181
|
+
/**
|
|
1182
|
+
* Tri-state button styles.
|
|
1183
|
+
*
|
|
1184
|
+
* @sample highcharts/navigation/buttonoptions-theme/
|
|
1185
|
+
* Theming the buttons
|
|
1186
|
+
*
|
|
1187
|
+
* @apioption navigation.buttonOptions.theme.states
|
|
1188
|
+
*/
|
|
1189
|
+
/**
|
|
1190
|
+
* SVG attributes for the disabled state of the button.
|
|
1191
|
+
*
|
|
1192
|
+
* @type {Highcharts.SVGAttributes}
|
|
1193
|
+
* @apioption navigation.buttonOptions.theme.states.disabled
|
|
1194
|
+
*/
|
|
1195
|
+
/**
|
|
1196
|
+
* SVG attributes for the hovered state of the button.
|
|
1197
|
+
*
|
|
1198
|
+
* @type {Highcharts.SVGAttributes}
|
|
1199
|
+
* @apioption navigation.buttonOptions.theme.states.hover
|
|
1200
|
+
*/
|
|
1201
|
+
/**
|
|
1202
|
+
* SVG attributes for the selected state of the button.
|
|
1203
|
+
*
|
|
1204
|
+
* @type {Highcharts.SVGAttributes}
|
|
1205
|
+
* @apioption navigation.buttonOptions.theme.states.select
|
|
1206
|
+
*/
|
|
1207
|
+
/**
|
|
1208
|
+
* CSS styling for the button's text or symbol.
|
|
1209
|
+
*
|
|
1210
|
+
* @type {Highcharts.CSSObject}
|
|
1211
|
+
* @apioption navigation.buttonOptions.theme.style
|
|
1212
|
+
*/
|
|
1167
1213
|
/**
|
|
1168
1214
|
* Default stroke for the buttons.
|
|
1169
1215
|
*
|
|
@@ -2090,8 +2136,8 @@ class Exporting {
|
|
|
2090
2136
|
}
|
|
2091
2137
|
/** @internal */
|
|
2092
2138
|
/**
|
|
2093
|
-
* Collects all unique font family names used inline
|
|
2094
|
-
*
|
|
2139
|
+
* Collects all unique font family names used inline within the root
|
|
2140
|
+
* SVG element and its <text> and <tspan> elements by inspecting
|
|
2095
2141
|
* their style attributes and font-family attributes.
|
|
2096
2142
|
*
|
|
2097
2143
|
* @param {SVGSVGElement} svg
|
|
@@ -2100,8 +2146,11 @@ class Exporting {
|
|
|
2100
2146
|
* The set to store and accumulate unique font family names.
|
|
2101
2147
|
*/
|
|
2102
2148
|
static collectSVGInlineFonts(svg, usedFontFamilies) {
|
|
2103
|
-
|
|
2104
|
-
|
|
2149
|
+
// Include the root SVG element itself, since the chart-wide
|
|
2150
|
+
// `chart.style.fontFamily` is applied there rather than on the
|
|
2151
|
+
// individual text nodes (#24722).
|
|
2152
|
+
const nodes = [svg, ...Array.from(svg.querySelectorAll('text, tspan'))];
|
|
2153
|
+
for (const textNode of nodes) {
|
|
2105
2154
|
const styleAttr = textNode.getAttribute('style') || '';
|
|
2106
2155
|
const inlineFontFamily = textNode.getAttribute('font-family') || '';
|
|
2107
2156
|
if (styleAttr.indexOf('font-family') > -1) {
|
|
@@ -2124,18 +2173,6 @@ class Exporting {
|
|
|
2124
2173
|
return;
|
|
2125
2174
|
}
|
|
2126
2175
|
visited.add(href);
|
|
2127
|
-
try {
|
|
2128
|
-
const sheetOrigin = new URL(href, Exporting_doc.baseURI).origin;
|
|
2129
|
-
if (sheetOrigin !== Exporting_win.location.origin) {
|
|
2130
|
-
// We skip all cross-origin stylesheets on purpose.
|
|
2131
|
-
// This prevents DOM SecurityErrors and unhandled network
|
|
2132
|
-
// rejections when the browser blocks cssRules access.
|
|
2133
|
-
return;
|
|
2134
|
-
}
|
|
2135
|
-
}
|
|
2136
|
-
catch {
|
|
2137
|
-
// URL parsing failed, proceed to try/catch
|
|
2138
|
-
}
|
|
2139
2176
|
}
|
|
2140
2177
|
try {
|
|
2141
2178
|
for (const rule of Array.from(sheet.cssRules)) {
|
|
@@ -2342,6 +2379,12 @@ class Exporting {
|
|
|
2342
2379
|
static sanitizeSVG(svg,
|
|
2343
2380
|
/* eslint-disable-next-line @typescript-eslint/no-unused-vars */
|
|
2344
2381
|
options) {
|
|
2382
|
+
// Remove any HTML added to the container after the SVG, like the
|
|
2383
|
+
// Stock Tools GUI wrapper (#894, #9087, #24754)
|
|
2384
|
+
const split = svg.lastIndexOf('</svg>');
|
|
2385
|
+
if (split > -1) {
|
|
2386
|
+
svg = svg.substr(0, split + 6);
|
|
2387
|
+
}
|
|
2345
2388
|
svg = svg
|
|
2346
2389
|
// Some tags needs to be closed in xhtml (#13726)
|
|
2347
2390
|
.replace(/(<(?:img|br).*?(?=\>))>/g, '$1 />')
|
|
@@ -2439,7 +2482,7 @@ class Exporting {
|
|
|
2439
2482
|
};
|
|
2440
2483
|
}
|
|
2441
2484
|
if (btnOptions.text && btnOptions.symbol) {
|
|
2442
|
-
theme.paddingLeft = (
|
|
2485
|
+
theme.paddingLeft = (theme.paddingLeft ?? 30);
|
|
2443
2486
|
}
|
|
2444
2487
|
else if (!btnOptions.text) {
|
|
2445
2488
|
(0,external_highcharts_src_js_default_namespaceObject.extend)(theme, {
|
|
@@ -2452,8 +2495,8 @@ class Exporting {
|
|
|
2452
2495
|
.button(btnOptions.text || '', 0, 0, callback, theme, void 0, void 0, void 0, void 0, btnOptions.useHTML)
|
|
2453
2496
|
.addClass(options.className || '')
|
|
2454
2497
|
.attr({
|
|
2455
|
-
title: (
|
|
2456
|
-
btnOptions.titleKey)]
|
|
2498
|
+
title: (chart.options.lang[(btnOptions._titleKey ||
|
|
2499
|
+
btnOptions.titleKey)] ?? '')
|
|
2457
2500
|
});
|
|
2458
2501
|
button.menuClassName = (options.menuClassName ||
|
|
2459
2502
|
'highcharts-menu-' + exporting.btnCount++);
|
|
@@ -2482,7 +2525,7 @@ class Exporting {
|
|
|
2482
2525
|
.add(exporting.group)
|
|
2483
2526
|
.align((0,external_highcharts_src_js_default_namespaceObject.extend)(btnOptions, {
|
|
2484
2527
|
width: button.width,
|
|
2485
|
-
x: (
|
|
2528
|
+
x: (btnOptions.x ?? exporting.buttonOffset) // #1654
|
|
2486
2529
|
}), true, 'spacingBox');
|
|
2487
2530
|
exporting.buttonOffset += (((button.width || 0) + (btnOptions.buttonSpacing || 0)) *
|
|
2488
2531
|
(btnOptions.align === 'right' ? -1 : 1));
|
|
@@ -3102,6 +3145,7 @@ class Exporting {
|
|
|
3102
3145
|
* The SVG representation of the rendered chart.
|
|
3103
3146
|
*
|
|
3104
3147
|
* @emits Highcharts.Chart#event:getSVG
|
|
3148
|
+
* @emits Highcharts.Chart#event:afterGetSVG
|
|
3105
3149
|
*
|
|
3106
3150
|
* @requires modules/exporting
|
|
3107
3151
|
*/
|
|
@@ -3220,11 +3264,12 @@ class Exporting {
|
|
|
3220
3264
|
if (exporting?.options.applyStyleSheets) {
|
|
3221
3265
|
this.applyShadowDOMStyles(chartCopy);
|
|
3222
3266
|
}
|
|
3267
|
+
(0,external_highcharts_src_js_default_namespaceObject.fireEvent)(chart, 'getSVG', { chartCopy });
|
|
3223
3268
|
// Get the SVG from the container's innerHTML
|
|
3224
3269
|
svg = exporting?.getChartHTML(chart.styledMode ||
|
|
3225
3270
|
options?.exporting?.applyStyleSheets) || '';
|
|
3226
|
-
(0,external_highcharts_src_js_default_namespaceObject.fireEvent)(chart, 'getSVG', { chartCopy: chartCopy });
|
|
3227
3271
|
svg = Exporting.sanitizeSVG(svg, options);
|
|
3272
|
+
(0,external_highcharts_src_js_default_namespaceObject.fireEvent)(chart, 'afterGetSVG', { chartCopy, svg });
|
|
3228
3273
|
// Free up memory
|
|
3229
3274
|
options = void 0;
|
|
3230
3275
|
chartCopy.destroy();
|
|
@@ -3277,11 +3322,11 @@ class Exporting {
|
|
|
3277
3322
|
// getComputedStyle sees them
|
|
3278
3323
|
rootNode?.querySelectorAll('style').forEach((style) => {
|
|
3279
3324
|
const clonedStyle = style.cloneNode(true);
|
|
3280
|
-
chartCopy.
|
|
3325
|
+
chartCopy.renderer.defs.element.appendChild(clonedStyle);
|
|
3281
3326
|
// Store for the later removal
|
|
3282
3327
|
shadowStyles.push(clonedStyle);
|
|
3283
3328
|
});
|
|
3284
|
-
(0,external_highcharts_src_js_default_namespaceObject.addEvent)(chart, '
|
|
3329
|
+
(0,external_highcharts_src_js_default_namespaceObject.addEvent)(chart, 'afterGetSVG', () => {
|
|
3285
3330
|
// Remove temporary Shadow DOM styles
|
|
3286
3331
|
shadowStyles.forEach((style) => {
|
|
3287
3332
|
style.remove();
|
|
@@ -3548,8 +3593,9 @@ class Exporting {
|
|
|
3548
3593
|
await this.fallbackToServer(exportingOptions, new Error('Image type not supported for this chart/browser.'));
|
|
3549
3594
|
return;
|
|
3550
3595
|
}
|
|
3551
|
-
// Hook into
|
|
3552
|
-
|
|
3596
|
+
// Hook into afterGetSVG to get a copy of the chart copy's container
|
|
3597
|
+
// (#8273)
|
|
3598
|
+
const unbindGetSVG = (0,external_highcharts_src_js_default_namespaceObject.addEvent)(chart, 'afterGetSVG', (e) => {
|
|
3553
3599
|
chartCopyOptions = e.chartCopy.options;
|
|
3554
3600
|
chartCopyContainer =
|
|
3555
3601
|
e.chartCopy.container.cloneNode(true);
|
|
@@ -3733,7 +3779,7 @@ class Exporting {
|
|
|
3733
3779
|
update(exportingOptions, redraw) {
|
|
3734
3780
|
this.isDirty = true;
|
|
3735
3781
|
(0,external_highcharts_src_js_default_namespaceObject.merge)(true, this.options, exportingOptions);
|
|
3736
|
-
if (
|
|
3782
|
+
if (redraw ?? true) {
|
|
3737
3783
|
this.chart.redraw();
|
|
3738
3784
|
}
|
|
3739
3785
|
}
|
|
@@ -3955,7 +4001,7 @@ Exporting.unstyledElements = [
|
|
|
3955
4001
|
if (chart.exporting) {
|
|
3956
4002
|
chart.exporting.isDirty = true;
|
|
3957
4003
|
(0,external_highcharts_src_js_default_namespaceObject.merge)(true, chart.options.navigation, options);
|
|
3958
|
-
if (
|
|
4004
|
+
if (redraw ?? true) {
|
|
3959
4005
|
chart.redraw();
|
|
3960
4006
|
}
|
|
3961
4007
|
}
|
package/esm/modules/flowmap.js
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Highcharts JS v13.0.
|
|
2
|
+
* Highcharts JS v13.0.2 (2026-08-27)
|
|
3
3
|
* @module highcharts/modules/flowmap
|
|
4
4
|
* @requires highcharts
|
|
5
|
+
* @requires highcharts/modules/map
|
|
5
6
|
*
|
|
6
7
|
* (c) 2009-2026
|
|
7
8
|
*
|
|
8
9
|
* A commercial license may be required depending on use,
|
|
9
10
|
* see www.highcharts.com/license
|
|
10
|
-
*/import*as t from"../highcharts.js";
|
|
11
|
+
*/import*as t from"../highcharts.js";let e={};e.n=t=>{let o=t&&t.__esModule?()=>t.default:()=>t;return e.d(o,{a:o}),o},e.d=(t,o)=>{if(Array.isArray(o))for(var i=0;i<o.length;){var s=o[i++],r=o[i++];e.o(t,s)?0===r&&i++:0===r?Object.defineProperty(t,s,{enumerable:!0,value:o[i++]}):Object.defineProperty(t,s,{enumerable:!0,get:r})}else for(var s in o)e.o(o,s)&&!e.o(t,s)&&Object.defineProperty(t,s,{enumerable:!0,get:o[s]})},e.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);let o=t.default;var i=e.n(o);let s=t.default.SeriesRegistry;var r=e.n(s);let{seriesTypes:{mapline:{prototype:{pointClass:n}}}}=r(),a=class extends n{isValid(){let t=!!(this.options.to&&this.options.from);return[this.options.to,this.options.from].forEach(function(e){t=!!(t&&e&&((0,o.isString)(e)||(0,o.isNumber)(e[0]??e.lat)&&(0,o.isNumber)(e[1]??e.lon)))}),t}},{series:{prototype:{pointClass:l}},seriesTypes:{column:p,map:h,mapline:d}}=r();class f extends d{static getLength(t,e){return Math.sqrt(t*t+e*e)}static normalize(t,e){let o=this.getLength(t,e);return[t/o,e/o]}static markerEndPath(t,e,i,s){let r=(0,o.relativeLength)(s.width||0,this.getLength(e[0]-t[0],e[1]-t[1])),n=s.markerType||"arrow",[a,l]=this.normalize(e[0]-t[0],e[1]-t[1]),p=[];if("arrow"===n){let[o,s]=t;o-=a*r,s-=l*r,p.push(["L",o,s]),p.push(["L",i[0],i[1]]),[o,s]=e,o+=a*r,s+=l*r,p.push(["L",o,s])}if("mushroom"===n){let[o,s]=t,[n,h]=e,[d,f]=i,g=(n-o)/2+o,m=(h-s)/2+s;o-=a*r,s-=l*r,p.push(["L",o,s]),n+=a*r,h+=l*r,p.push(["Q",(d-g)*2+g,(f-m)*2+m,n,h])}return p}animate(t){let e=this.points;t||e.forEach(t=>{if(t.shapeArgs&&(0,o.isArray)(t.shapeArgs.d)&&t.shapeArgs.d.length){let e=t.shapeArgs.d,o=e[0][1],i=e[0][2];if(o&&i){let s=[];for(let t=0;t<e.length;t++){s.push([...e[t]]);for(let r=1;r<e[t].length;r++)s[t][r]=r%2?o:i}t.graphic&&(t.graphic.attr({d:s}),t.graphic.animate({d:e}))}}})}getLinkWidth(t){let e=this.options.width,i=t.options.weight||this.options.weight;if(t.options.weight=i,e&&!i)return e;let s=this.smallestWeight,r=this.greatestWeight;if(!(0,o.defined)(i)||!s||!r)return 0;let n=this.options.minWidth;return(i-s)*(this.options.maxWidth-n)/(r-s||1)+n}autoCurve(t,e,o,i,s,r){let n={x:o-t,y:i-e},a={x:(o-t)/2+t,y:(i-e)/2+e},l={x:a.x-s,y:a.y-r},p=n.x*l.x+n.y*l.y,h=Math.atan2(n.x*l.y-n.y*l.x,p),d=180*h/Math.PI;return d<0&&(d=360+d),-(.7*Math.sin(h=d*Math.PI/180))}pointAttribs(t,e){let o=h.prototype.pointAttribs.call(this,t,e);return o.fill=t.options.fillColor??t.options.color??("none"===this.options.fillColor?void 0:this.options.fillColor)??this.color,o["fill-opacity"]=t.options.fillOpacity??this.options.fillOpacity,o["stroke-width"]=t.options.lineWidth??this.options.lineWidth??1,t.options.opacity&&(o.opacity=t.options.opacity),o}translate(){this.chart.hasRendered&&(this.isDirtyData||!this.hasRendered)&&(this.processData(),this.generatePoints());let t=[],e=0,i=0;this.points.forEach(s=>{let r,n,a=this.chart,p=a.mapView,h=s.options,d=()=>{s.series.isDirty=!0},f=t=>{let e=a.get(t);if(e instanceof l&&e.plotX&&e.plotY)return(0,o.addEvent)(e,"update",d),{x:e.plotX,y:e.plotY}},g=t=>(0,o.isArray)(t)?{lon:t[0],lat:t[1]}:t;"string"==typeof h.from?r=f(h.from):"object"==typeof h.from&&p&&(r=p.lonLatToPixels(g(h.from))),"string"==typeof h.to?n=f(h.to):"object"==typeof h.to&&p&&(n=p.lonLatToPixels(g(h.to))),s.fromPos=r,s.toPos=n,r&&n&&(e+=(r.x+n.x)/2,i+=(r.y+n.y)/2),(s.options.weight??this.options.weight)&&t.push(s.options.weight??this.options.weight)}),this.smallestWeight=(0,o.arrayMin)(t),this.greatestWeight=(0,o.arrayMax)(t),this.centerOfPoints={x:e/this.points.length,y:i/this.points.length},this.points.forEach(t=>{if(!this.getLinkWidth(t)){t.shapeArgs={d:[]};return}t.fromPos&&(t.plotX=t.fromPos.x,t.plotY=t.fromPos.y),t.shapeType="path",t.shapeArgs=this.getPointShapeArgs(t),t.color=t.options.color??t.series.color})}getPointShapeArgs(t){let{fromPos:e,toPos:i}=t;if(!e||!i)return{};let s=this.getLinkWidth(t)/2,r=t.options,n=(0,o.merge)(this.options.markerEnd,r.markerEnd),a=r.growTowards??this.options.growTowards,l=e.x||0,p=e.y||0,h=i.x||0,d=i.y||0,g=r.curveFactor??this.options.curveFactor,m=n&&n.enabled&&n.height||0;if((0,o.defined)(g)||(g=this.autoCurve(l,p,h,d,this.centerOfPoints.x,this.centerOfPoints.y)),m){m=(0,o.relativeLength)(m,4*s);let t=h-l,e=d-p,i=l+(t*=.5),r=p+(e*=.5),n=t,a=i+(t=e)*g,y=r+(e=-n)*g,[c,u]=f.normalize(a-h,y-d);c*=m,u*=m,h+=c,d+=u}let y=h-l,c=d-p,u=l+(y*=.5),w=p+(c*=.5),x=y;y=c,c=-x;let[P,b]=f.normalize(y,c),L=1+.25*Math.sqrt(g*g);P*=s*L,b*=s*L;let v=u+y*g,A=w+c*g,[W,O]=f.normalize(v-l,A-p);x=W,W=O,O=-x,W*=s,O*=s;let[M,k]=f.normalize(v-h,A-d);x=M,M=-k,k=x,M*=s,k*=s,a&&(W/=s,O/=s,P/=4,b/=4);let C={d:[["M",l-W,p-O],["Q",v-P,A-b,h-M,d-k],["L",h+M,d+k],["Q",v+P,A+b,l+W,p+O],["Z"]]};if(n&&n.enabled&&C.d){let t=f.markerEndPath([h-M,d-k],[h+M,d+k],[i.x,i.y],n);C.d.splice(2,0,...t)}let E=t.options.from,T=t.options.to,j=E.lat,z=E.lon,D=T.lat,S=T.lon;return j&&z&&(t.options.from=`${+j}, ${+z}`),D&&S&&(t.options.to=`${+D}, ${+S}`),C}}f.defaultOptions=(0,o.merge)(d.defaultOptions,{animation:!0,dataLabels:{enabled:!1},fillOpacity:.5,markerEnd:{enabled:!0,height:"40%",width:"40%",markerType:"arrow"},width:1,maxWidth:25,minWidth:5,lineWidth:void 0,tooltip:{headerFormat:'<span style="font-size: 0.8em">{series.name}</span><br/>',pointFormat:"{point.options.from} → {point.options.to}: <b>{point.options.weight}</b>"}}),(0,o.extend)(f.prototype,{pointClass:a,pointArrayMap:["from","to","weight"],drawPoints:p.prototype.drawPoints,getDataColumnKeys:p.prototype.getDataColumnKeys,useMapGeometry:!0}),r().registerSeriesType("flowmap",f);let g=i();export{g as default};
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
// SPDX-License-Identifier: LicenseRef-Highcharts
|
|
2
2
|
/**
|
|
3
|
-
* @license Highcharts JS v13.0.
|
|
3
|
+
* @license Highcharts JS v13.0.2 (2026-08-27)
|
|
4
4
|
* @module highcharts/modules/flowmap
|
|
5
5
|
* @requires highcharts
|
|
6
|
+
* @requires highcharts/modules/map
|
|
6
7
|
*
|
|
7
8
|
* (c) 2009-2026
|
|
8
9
|
*
|
|
@@ -11,14 +12,14 @@
|
|
|
11
12
|
*/
|
|
12
13
|
import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__ from "../highcharts.src.js";
|
|
13
14
|
/******/ // The require scope
|
|
14
|
-
/******/
|
|
15
|
+
/******/ const __webpack_require__ = {};
|
|
15
16
|
/******/
|
|
16
17
|
/************************************************************************/
|
|
17
18
|
/******/ /* webpack/runtime/compat get default export */
|
|
18
19
|
/******/ (() => {
|
|
19
20
|
/******/ // getDefaultExport function for compatibility with non-harmony modules
|
|
20
21
|
/******/ __webpack_require__.n = (module) => {
|
|
21
|
-
/******/
|
|
22
|
+
/******/ const getter = module && module.__esModule ?
|
|
22
23
|
/******/ () => (module['default']) :
|
|
23
24
|
/******/ () => (module);
|
|
24
25
|
/******/ __webpack_require__.d(getter, { a: getter });
|
|
@@ -28,11 +29,26 @@ import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__ from "../hig
|
|
|
28
29
|
/******/
|
|
29
30
|
/******/ /* webpack/runtime/define property getters */
|
|
30
31
|
/******/ (() => {
|
|
31
|
-
/******/ // define getter functions for harmony exports
|
|
32
|
+
/******/ // define getter/value functions for harmony exports
|
|
32
33
|
/******/ __webpack_require__.d = (exports, definition) => {
|
|
33
|
-
/******/
|
|
34
|
-
/******/
|
|
35
|
-
/******/
|
|
34
|
+
/******/ if(Array.isArray(definition)) {
|
|
35
|
+
/******/ var i = 0;
|
|
36
|
+
/******/ while(i < definition.length) {
|
|
37
|
+
/******/ var key = definition[i++];
|
|
38
|
+
/******/ var binding = definition[i++];
|
|
39
|
+
/******/ if(!__webpack_require__.o(exports, key)) {
|
|
40
|
+
/******/ if(binding === 0) {
|
|
41
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, value: definition[i++] });
|
|
42
|
+
/******/ } else {
|
|
43
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: binding });
|
|
44
|
+
/******/ }
|
|
45
|
+
/******/ } else if(binding === 0) { i++; }
|
|
46
|
+
/******/ }
|
|
47
|
+
/******/ } else {
|
|
48
|
+
/******/ for(var key in definition) {
|
|
49
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
50
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
51
|
+
/******/ }
|
|
36
52
|
/******/ }
|
|
37
53
|
/******/ }
|
|
38
54
|
/******/ };
|
|
@@ -44,7 +60,6 @@ import * as __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__ from "../hig
|
|
|
44
60
|
/******/ })();
|
|
45
61
|
/******/
|
|
46
62
|
/************************************************************************/
|
|
47
|
-
var __webpack_exports__ = {};
|
|
48
63
|
|
|
49
64
|
;// external ["../highcharts.src.js","default"]
|
|
50
65
|
const external_highcharts_src_js_default_namespaceObject = __WEBPACK_EXTERNAL_MODULE__highcharts_src_js_8202131d__["default"];
|
|
@@ -87,8 +102,10 @@ class FlowMapPoint extends MapLinePoint {
|
|
|
87
102
|
[this.options.to, this.options.from]
|
|
88
103
|
.forEach(function (toOrFrom) {
|
|
89
104
|
valid = !!(valid && (toOrFrom && ((0,external_highcharts_src_js_default_namespaceObject.isString)(toOrFrom) || ( // Point id or has lat/lon coords
|
|
90
|
-
(0,external_highcharts_src_js_default_namespaceObject.isNumber)(
|
|
91
|
-
|
|
105
|
+
(0,external_highcharts_src_js_default_namespaceObject.isNumber)(toOrFrom[0] ??
|
|
106
|
+
toOrFrom.lat) &&
|
|
107
|
+
(0,external_highcharts_src_js_default_namespaceObject.isNumber)(toOrFrom[1] ??
|
|
108
|
+
toOrFrom.lon)))));
|
|
92
109
|
});
|
|
93
110
|
return valid;
|
|
94
111
|
}
|
|
@@ -285,9 +302,17 @@ class FlowMapSeries extends MapLineSeries {
|
|
|
285
302
|
*/
|
|
286
303
|
pointAttribs(point, state) {
|
|
287
304
|
const attrs = MapSeries.prototype.pointAttribs.call(this, point, state);
|
|
288
|
-
attrs.fill =
|
|
289
|
-
|
|
290
|
-
|
|
305
|
+
attrs.fill =
|
|
306
|
+
point.options.fillColor ??
|
|
307
|
+
point.options.color ??
|
|
308
|
+
(this.options.fillColor === 'none' ?
|
|
309
|
+
void 0 :
|
|
310
|
+
this.options.fillColor) ??
|
|
311
|
+
this.color;
|
|
312
|
+
attrs['fill-opacity'] =
|
|
313
|
+
point.options.fillOpacity ?? this.options.fillOpacity;
|
|
314
|
+
attrs['stroke-width'] =
|
|
315
|
+
point.options.lineWidth ?? this.options.lineWidth ?? 1;
|
|
291
316
|
if (point.options.opacity) {
|
|
292
317
|
attrs.opacity = point.options.opacity;
|
|
293
318
|
}
|
|
@@ -354,8 +379,8 @@ class FlowMapSeries extends MapLineSeries {
|
|
|
354
379
|
averageX += (fromPos.x + toPos.x) / 2;
|
|
355
380
|
averageY += (fromPos.y + toPos.y) / 2;
|
|
356
381
|
}
|
|
357
|
-
if (
|
|
358
|
-
weights.push(
|
|
382
|
+
if (point.options.weight ?? this.options.weight) {
|
|
383
|
+
weights.push(point.options.weight ?? this.options.weight);
|
|
359
384
|
}
|
|
360
385
|
});
|
|
361
386
|
this.smallestWeight = (0,external_highcharts_src_js_default_namespaceObject.arrayMin)(weights);
|
|
@@ -381,7 +406,7 @@ class FlowMapSeries extends MapLineSeries {
|
|
|
381
406
|
point.shapeArgs = this.getPointShapeArgs(point);
|
|
382
407
|
// When updating point from null to normal value, set a real color
|
|
383
408
|
// (don't keep nullColor).
|
|
384
|
-
point.color = (
|
|
409
|
+
point.color = (point.options.color ?? point.series.color);
|
|
385
410
|
});
|
|
386
411
|
}
|
|
387
412
|
getPointShapeArgs(point) {
|
|
@@ -389,8 +414,8 @@ class FlowMapSeries extends MapLineSeries {
|
|
|
389
414
|
if (!fromPos || !toPos) {
|
|
390
415
|
return {};
|
|
391
416
|
}
|
|
392
|
-
const finalWidth = this.getLinkWidth(point) / 2, pointOptions = point.options, markerEndOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(this.options.markerEnd, pointOptions.markerEnd), growTowards =
|
|
393
|
-
let toX = toPos.x || 0, toY = toPos.y || 0, curveFactor =
|
|
417
|
+
const finalWidth = this.getLinkWidth(point) / 2, pointOptions = point.options, markerEndOptions = (0,external_highcharts_src_js_default_namespaceObject.merge)(this.options.markerEnd, pointOptions.markerEnd), growTowards = pointOptions.growTowards ?? this.options.growTowards, fromX = fromPos.x || 0, fromY = fromPos.y || 0;
|
|
418
|
+
let toX = toPos.x || 0, toY = toPos.y || 0, curveFactor = pointOptions.curveFactor ?? this.options.curveFactor, offset = markerEndOptions && markerEndOptions.enabled &&
|
|
394
419
|
markerEndOptions.height || 0;
|
|
395
420
|
if (!(0,external_highcharts_src_js_default_namespaceObject.defined)(curveFactor)) { // Automate the curveFactor value.
|
|
396
421
|
curveFactor = this.autoCurve(fromX, fromY, toX, toY, this.centerOfPoints.x, this.centerOfPoints.y);
|