highcharts 11.3.0 → 11.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/bower.json +1 -1
- package/css/annotations/popup.css +27 -19
- package/css/stocktools/gui.css +19 -7
- package/es-modules/Accessibility/A11yI18n.js +4 -6
- package/es-modules/Accessibility/Accessibility.js +8 -6
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +11 -6
- package/es-modules/Accessibility/Components/LegendComponent.js +4 -4
- package/es-modules/Accessibility/Components/MenuComponent.js +3 -6
- package/es-modules/Accessibility/Components/NavigatorComponent.js +6 -3
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +4 -7
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +18 -3
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +5 -3
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +4 -4
- package/es-modules/Accessibility/FocusBorder.js +5 -5
- package/es-modules/Accessibility/HighContrastMode.js +22 -13
- package/es-modules/Accessibility/HighContrastTheme.js +2 -6
- package/es-modules/Accessibility/KeyboardNavigation.js +17 -8
- package/es-modules/Accessibility/Options/A11yDefaults.js +11 -1
- package/es-modules/Accessibility/ProxyElement.js +4 -4
- package/es-modules/Accessibility/ProxyProvider.js +8 -2
- package/es-modules/Accessibility/Utils/DOMElementProvider.js +8 -0
- package/es-modules/Accessibility/Utils/EventProvider.js +9 -0
- package/es-modules/Core/Animation/Fx.js +3 -3
- package/es-modules/Core/Axis/Axis.js +43 -97
- package/es-modules/Core/Axis/Axis3DComposition.js +5 -5
- package/es-modules/Core/Axis/Axis3DDefaults.js +1 -1
- package/es-modules/Core/Axis/AxisDefaults.js +18 -7
- package/es-modules/Core/Axis/BrokenAxis.js +4 -6
- package/es-modules/Core/Axis/Color/ColorAxis.js +2 -1
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +3 -5
- package/es-modules/Core/Axis/DateTimeAxis.js +3 -5
- package/es-modules/Core/Axis/GridAxis.js +7 -7
- package/es-modules/Core/Axis/LogarithmicAxis.js +2 -4
- package/es-modules/Core/Axis/NavigatorAxisComposition.js +26 -22
- package/es-modules/Core/Axis/OrdinalAxis.js +97 -53
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -3
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBandAxis.js +4 -5
- package/es-modules/Core/Axis/RadialAxis.js +5 -5
- package/es-modules/Core/Axis/ScrollbarAxis.js +2 -2
- package/es-modules/Core/Axis/Stacking/StackItem.js +8 -4
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +3 -5
- package/es-modules/Core/Axis/Tick.js +16 -7
- package/es-modules/Core/Axis/Tick3DComposition.js +2 -2
- package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +4 -8
- package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +3 -6
- package/es-modules/Core/Axis/WaterfallAxis.js +3 -3
- package/es-modules/Core/Axis/ZAxis.js +6 -11
- package/es-modules/Core/Chart/Chart.js +201 -176
- package/es-modules/Core/Chart/Chart3D.js +1 -1
- package/es-modules/Core/Chart/ChartDefaults.js +7 -0
- package/es-modules/Core/Chart/GanttChart.js +2 -2
- package/es-modules/Core/Chart/MapChart.js +12 -2
- package/es-modules/Core/Chart/StockChart.js +12 -11
- package/es-modules/Core/Color/Color.js +3 -3
- package/es-modules/Core/Color/Palettes.js +2 -2
- package/es-modules/Core/Defaults.js +18 -15
- package/es-modules/Core/Geometry/CircleUtilities.js +3 -3
- package/es-modules/Core/Globals.js +2 -2
- package/es-modules/Core/HttpUtilities.js +4 -4
- package/es-modules/Core/Legend/Legend.js +6 -6
- package/es-modules/Core/MSPointer.js +7 -7
- package/es-modules/Core/Pointer.js +230 -245
- package/es-modules/Core/Renderer/HTML/AST.js +1 -1
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +213 -26
- package/es-modules/Core/Renderer/RendererUtilities.js +1 -1
- package/es-modules/Core/Renderer/SVG/SVGElement.js +85 -52
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +14 -11
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +17 -14
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +8 -7
- package/es-modules/Core/Renderer/SVG/Symbols.js +1 -1
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +2 -2
- package/es-modules/Core/Responsive.js +5 -6
- package/es-modules/Core/Series/DataLabel.js +70 -90
- package/es-modules/Core/Series/DataSeriesComposition.js +1 -1
- package/es-modules/Core/Series/DataSeriesConverter.js +2 -2
- package/es-modules/Core/Series/Point.js +48 -40
- package/es-modules/Core/Series/Series.js +61 -51
- package/es-modules/Core/Series/Series3D.js +2 -2
- package/es-modules/Core/Series/SeriesRegistry.js +10 -2
- package/es-modules/Core/Templating.js +1 -1
- package/es-modules/Core/Time.js +12 -7
- package/es-modules/Core/Tooltip.js +19 -17
- package/es-modules/Core/Utilities.js +54 -26
- package/es-modules/Data/Connectors/CSVConnector.js +2 -2
- package/es-modules/Data/Connectors/DataConnector.js +4 -2
- package/es-modules/Data/Connectors/GoogleSheetsConnector.js +2 -2
- package/es-modules/Data/Connectors/HTMLTableConnector.js +2 -2
- package/es-modules/Data/Connectors/JSONConnector.js +3 -5
- package/es-modules/Data/Converters/CSVConverter.js +1 -3
- package/es-modules/Data/Converters/DataConverter.js +8 -2
- package/es-modules/Data/Converters/HTMLTableConverter.js +1 -3
- package/es-modules/Data/Converters/JSONConverter.js +1 -0
- package/es-modules/Data/DataTable.js +1 -2
- package/es-modules/Data/Formula/FormulaProcessor.js +4 -2
- package/es-modules/Data/Modifiers/DataModifier.js +15 -3
- package/es-modules/Extensions/Annotations/Annotation.js +6 -7
- package/es-modules/Extensions/Annotations/AnnotationChart.js +4 -5
- package/es-modules/Extensions/Annotations/AnnotationDefaults.js +4 -4
- package/es-modules/Extensions/Annotations/ControlPoint.js +2 -2
- package/es-modules/Extensions/Annotations/ControlTarget.js +1 -1
- package/es-modules/Extensions/Annotations/Controllables/Controllable.js +7 -3
- package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +3 -3
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +8 -9
- package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +3 -4
- package/es-modules/Extensions/Annotations/EventEmitter.js +6 -6
- package/es-modules/Extensions/Annotations/NavigationBindings.js +29 -18
- package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +6 -6
- package/es-modules/Extensions/Annotations/Popup/Popup.js +1 -1
- package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +10 -6
- package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +2 -2
- package/es-modules/Extensions/Annotations/Popup/PopupIndicators.js +31 -31
- package/es-modules/Extensions/Annotations/Popup/PopupTabs.js +1 -1
- package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +14 -11
- package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +1 -1
- package/es-modules/Extensions/Annotations/Types/Measure.js +1 -1
- package/es-modules/Extensions/ArrowSymbols.js +7 -13
- package/es-modules/Extensions/Boost/Boost.js +39 -7
- package/es-modules/Extensions/Boost/BoostChart.js +4 -4
- package/es-modules/Extensions/Boost/BoostSeries.js +58 -13
- package/es-modules/Extensions/Boost/WGLRenderer.js +3 -3
- package/es-modules/Extensions/Boost/WGLVertexBuffer.js +1 -1
- package/es-modules/Extensions/BoostCanvas.js +5 -4
- package/es-modules/Extensions/BorderRadius.js +5 -4
- package/es-modules/Extensions/Breadcrumbs/Breadcrumbs.js +9 -9
- package/es-modules/Extensions/CurrentDateIndication.js +1 -1
- package/es-modules/Extensions/Data.js +11 -11
- package/es-modules/Extensions/DataGrouping/DataGrouping.js +1 -1
- package/es-modules/Extensions/DataGrouping/DataGroupingAxisComposition.js +8 -9
- package/es-modules/Extensions/DataGrouping/DataGroupingDefaults.js +1 -1
- package/es-modules/Extensions/DataGrouping/DataGroupingSeriesComposition.js +6 -7
- package/es-modules/Extensions/Debugger/Debugger.js +1 -1
- package/es-modules/Extensions/Debugger/ErrorMessages.js +2 -2
- package/es-modules/Extensions/DragPanes/AxisResizer.js +13 -16
- package/es-modules/Extensions/DragPanes/DragPanes.js +2 -4
- package/es-modules/Extensions/DraggablePoints/DragDropDefaults.js +2 -1
- package/es-modules/Extensions/DraggablePoints/DragDropUtilities.js +1 -1
- package/es-modules/Extensions/DraggablePoints/DraggableChart.js +4 -4
- package/es-modules/Extensions/DraggablePoints/DraggablePoints.js +8 -9
- package/es-modules/Extensions/Drilldown/Drilldown.js +11 -9
- package/es-modules/Extensions/Drilldown/DrilldownSeries.js +5 -6
- package/es-modules/Extensions/ExportData/ExportData.js +27 -18
- package/es-modules/Extensions/Exporting/Exporting.js +25 -20
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +1 -1
- package/es-modules/Extensions/Exporting/Fullscreen.js +5 -10
- package/es-modules/Extensions/MarkerClusters/MarkerClusterScatter.js +26 -21
- package/es-modules/Extensions/MarkerClusters/MarkerClusterSymbols.js +2 -12
- package/es-modules/Extensions/MarkerClusters/MarkerClusters.js +3 -3
- package/es-modules/Extensions/MouseWheelZoom/MouseWheelZoom.js +51 -161
- package/es-modules/Extensions/NoDataToDisplay/NoDataToDisplay.js +3 -5
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +5 -6
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
- package/es-modules/Extensions/OverlappingDataLabels.js +21 -49
- package/es-modules/Extensions/Pane/PaneComposition.js +3 -5
- package/es-modules/Extensions/ParallelCoordinates/ParallelAxis.js +2 -4
- package/es-modules/Extensions/ParallelCoordinates/ParallelCoordinates.js +5 -6
- package/es-modules/Extensions/ParallelCoordinates/ParallelSeries.js +1 -1
- package/es-modules/Extensions/PatternFill.js +19 -22
- package/es-modules/Extensions/PriceIndication.js +1 -1
- package/es-modules/Extensions/ScrollablePlotArea.js +218 -292
- package/es-modules/Extensions/SeriesLabel/SeriesLabel.js +26 -18
- package/es-modules/Extensions/Sonification/Options.js +1 -0
- package/es-modules/Extensions/Sonification/SonificationSpeaker.js +2 -2
- package/es-modules/Extensions/Sonification/SynthPatch.js +3 -3
- package/es-modules/Extensions/StaticScale.js +3 -5
- package/es-modules/Gantt/Legacy.js +1 -1
- package/es-modules/Gantt/Pathfinder.js +2 -2
- package/es-modules/Gantt/PathfinderComposition.js +3 -5
- package/es-modules/Gantt/Tree.js +3 -3
- package/es-modules/Maps/GeoJSONComposition.js +20 -13
- package/es-modules/Maps/MapNavigation.js +2 -2
- package/es-modules/Maps/MapPointer.js +3 -19
- package/es-modules/Maps/MapSymbols.js +3 -9
- package/es-modules/Maps/MapView.js +134 -74
- package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +5 -4
- package/es-modules/Series/Area/AreaSeries.js +2 -4
- package/es-modules/Series/Area3D/Area3DSeries.js +1 -1
- package/es-modules/Series/AreaRange/AreaRangePoint.js +2 -2
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +2 -3
- package/es-modules/Series/AreaSpline/AreaSplineSeries.js +1 -1
- package/es-modules/Series/Bar/BarSeries.js +1 -1
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +1 -1
- package/es-modules/Series/BoxPlot/BoxPlotSeriesDefaults.js +4 -0
- package/es-modules/Series/Bubble/BubbleLegendComposition.js +1 -1
- package/es-modules/Series/Bubble/BubbleLegendDefaults.js +2 -2
- package/es-modules/Series/Bubble/BubbleLegendItem.js +3 -3
- package/es-modules/Series/Bubble/BubbleSeries.js +1 -1
- package/es-modules/Series/Bullet/BulletSeriesDefaults.js +2 -2
- package/es-modules/Series/Candlestick/CandlestickSeries.js +2 -2
- package/es-modules/Series/Candlestick/CandlestickSeriesDefaults.js +1 -5
- package/es-modules/Series/ColorMapComposition.js +1 -1
- package/es-modules/Series/Column/ColumnDataLabel.js +2 -2
- package/es-modules/Series/Column/ColumnSeries.js +20 -22
- package/es-modules/Series/Column/ColumnSeriesDefaults.js +1 -1
- package/es-modules/Series/Column3D/Column3DComposition.js +1 -1
- package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +2 -1
- package/es-modules/Series/Cylinder/CylinderComposition.js +9 -9
- package/es-modules/Series/DataModifyComposition.js +5 -5
- package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +3 -2
- package/es-modules/Series/DependencyWheel/DependencyWheelSeriesDefaults.js +1 -1
- package/es-modules/Series/DragNodesComposition.js +7 -7
- package/es-modules/Series/DrawPointUtilities.js +0 -2
- package/es-modules/Series/Dumbbell/DumbbellSeriesDefaults.js +1 -1
- package/es-modules/Series/Funnel/FunnelSeries.js +1 -1
- package/es-modules/Series/Funnel3D/Funnel3DComposition.js +6 -6
- package/es-modules/Series/Funnel3D/Funnel3DSeriesDefaults.js +2 -2
- package/es-modules/Series/Funnel3D/SVGElement3DFunnel.js +1 -1
- package/es-modules/Series/Gantt/GanttSeries.js +0 -1
- package/es-modules/Series/GeoHeatmap/GeoHeatmapSeries.js +5 -5
- package/es-modules/Series/GraphLayoutComposition.js +1 -1
- package/es-modules/Series/Heatmap/HeatmapSeries.js +2 -2
- package/es-modules/Series/Heatmap/HeatmapSeriesDefaults.js +1 -1
- package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -1
- package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +3 -3
- package/es-modules/Series/HeikinAshi/HeikinAshiSeriesDefaults.js +1 -1
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +2 -2
- package/es-modules/Series/Item/ItemSeries.js +1 -1
- package/es-modules/Series/Line/LineSeries.js +1 -1
- package/es-modules/Series/Lollipop/LollipopSeries.js +3 -1
- package/es-modules/Series/Map/MapPoint.js +5 -1
- package/es-modules/Series/Map/MapSeries.js +32 -7
- package/es-modules/Series/Map/MapSeriesDefaults.js +5 -3
- package/es-modules/Series/Networkgraph/EulerIntegration.js +5 -5
- package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +4 -4
- package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +5 -5
- package/es-modules/Series/Networkgraph/QuadTree.js +1 -1
- package/es-modules/Series/Networkgraph/QuadTreeNode.js +1 -1
- package/es-modules/Series/Networkgraph/VerletIntegration.js +9 -9
- package/es-modules/Series/NodesComposition.js +1 -1
- package/es-modules/Series/OHLC/OHLCSeries.js +1 -1
- package/es-modules/Series/OHLC/OHLCSeriesDefaults.js +1 -1
- package/es-modules/Series/OnSeriesComposition.js +1 -1
- package/es-modules/Series/Organization/OrganizationPoint.js +1 -1
- package/es-modules/Series/Organization/OrganizationSeries.js +22 -10
- package/es-modules/Series/Organization/OrganizationSeriesDefaults.js +15 -2
- package/es-modules/Series/PackedBubble/PackedBubbleLayout.js +3 -5
- package/es-modules/Series/PackedBubble/PackedBubblePoint.js +1 -1
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +6 -10
- package/es-modules/Series/Pictorial/PictorialSeries.js +2 -2
- package/es-modules/Series/Pie/PieDataLabel.js +2 -2
- package/es-modules/Series/Pie/PiePoint.js +1 -1
- package/es-modules/Series/Pie/PieSeries.js +10 -1
- package/es-modules/Series/Pie/PieSeriesDefaults.js +1 -1
- package/es-modules/Series/Pie3D/Pie3DSeries.js +2 -2
- package/es-modules/Series/PolarComposition.js +22 -20
- package/es-modules/Series/Sankey/SankeyColumnComposition.js +1 -1
- package/es-modules/Series/Sankey/SankeySeries.js +8 -8
- package/es-modules/Series/Sankey/SankeySeriesDefaults.js +57 -13
- package/es-modules/Series/SeriesOnPointComposition.js +3 -3
- package/es-modules/Series/Spline/SplineSeries.js +1 -1
- package/es-modules/Series/Sunburst/SunburstPoint.js +1 -1
- package/es-modules/Series/Sunburst/SunburstSeries.js +2 -7
- package/es-modules/Series/Sunburst/SunburstSeriesDefaults.js +3 -3
- package/es-modules/Series/Sunburst/SunburstUtilities.js +1 -1
- package/es-modules/Series/TiledWebMap/TiledWebMapSeries.js +23 -25
- package/es-modules/Series/Tilemap/TilemapSeries.js +2 -2
- package/es-modules/Series/Timeline/TimelineSeries.js +2 -2
- package/es-modules/Series/TreeUtilities.js +23 -1
- package/es-modules/Series/Treegraph/TreegraphLayout.js +7 -11
- package/es-modules/Series/Treegraph/TreegraphPoint.js +1 -0
- package/es-modules/Series/Treegraph/TreegraphSeries.js +8 -8
- package/es-modules/Series/Treegraph/TreegraphSeriesDefaults.js +39 -2
- package/es-modules/Series/Treemap/TreemapSeries.js +4 -2
- package/es-modules/Series/Treemap/TreemapUtilities.js +0 -7
- package/es-modules/Series/Variwide/VariwideComposition.js +6 -2
- package/es-modules/Series/Variwide/VariwideSeries.js +1 -1
- package/es-modules/Series/Venn/VennSeries.js +4 -4
- package/es-modules/Series/Venn/VennUtils.js +5 -6
- package/es-modules/Series/Waterfall/WaterfallSeriesDefaults.js +1 -1
- package/es-modules/Series/Windbarb/WindbarbSeries.js +1 -1
- package/es-modules/Series/Wordcloud/WordcloudUtils.js +6 -4
- package/es-modules/Series/XRange/XRangePoint.js +2 -2
- package/es-modules/Series/XRange/XRangeSeries.js +1 -1
- package/es-modules/Shared/BaseForm.js +1 -1
- package/es-modules/Stock/Indicators/AD/ADIndicator.js +3 -1
- package/es-modules/Stock/Indicators/APO/APOIndicator.js +1 -1
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +1 -1
- package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +1 -1
- package/es-modules/Stock/Indicators/CMO/CMOIndicator.js +2 -2
- package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +1 -1
- package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +1 -1
- package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +1 -1
- package/es-modules/Stock/Indicators/LinearRegression/LinearRegressionIndicator.js +7 -7
- package/es-modules/Stock/Indicators/MultipleLinesComposition.js +9 -9
- package/es-modules/Stock/Indicators/OBV/OBVIndicator.js +1 -1
- package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -1
- package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +2 -2
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +1 -1
- package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +16 -17
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +4 -5
- package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +1 -1
- package/es-modules/Stock/Indicators/Zigzag/ZigzagIndicator.js +5 -5
- package/es-modules/Stock/Navigator/ChartNavigatorComposition.js +188 -0
- package/es-modules/Stock/Navigator/Navigator.js +42 -27
- package/es-modules/Stock/Navigator/NavigatorComposition.js +10 -149
- package/es-modules/Stock/Navigator/NavigatorDefaults.js +16 -2
- package/es-modules/Stock/Navigator/StandaloneNavigator.js +334 -0
- package/es-modules/Stock/Navigator/StandaloneNavigatorDefaults.js +64 -0
- package/es-modules/Stock/RangeSelector/RangeSelector.js +28 -16
- package/es-modules/Stock/RangeSelector/RangeSelectorComposition.js +2 -2
- package/es-modules/Stock/Scrollbar/Scrollbar.js +10 -10
- package/es-modules/Stock/Scrollbar/ScrollbarDefaults.js +1 -3
- package/es-modules/Stock/StockTools/StockToolbar.js +6 -5
- package/es-modules/Stock/StockTools/StockTools.js +10 -13
- package/es-modules/Stock/StockTools/StockToolsBindings.js +35 -35
- package/es-modules/Stock/StockTools/StockToolsDefaults.js +2 -1
- package/es-modules/Stock/StockTools/StockToolsGui.js +7 -8
- package/es-modules/Stock/StockTools/StockToolsUtilities.js +8 -9
- package/es-modules/Stock/Utilities/StockUtilities.js +41 -0
- package/es-modules/masters/highcharts-3d.src.js +2 -1
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +2 -1
- package/es-modules/masters/highcharts.src.js +41 -40
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- package/es-modules/masters/indicators/acceleration-bands.src.js +3 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +3 -1
- package/es-modules/masters/indicators/ao.src.js +3 -1
- package/es-modules/masters/indicators/apo.src.js +3 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +3 -1
- package/es-modules/masters/indicators/aroon.src.js +3 -1
- package/es-modules/masters/indicators/atr.src.js +3 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +3 -1
- package/es-modules/masters/indicators/cci.src.js +3 -1
- package/es-modules/masters/indicators/chaikin.src.js +3 -1
- package/es-modules/masters/indicators/cmf.src.js +3 -1
- package/es-modules/masters/indicators/cmo.src.js +3 -1
- package/es-modules/masters/indicators/dema.src.js +3 -1
- package/es-modules/masters/indicators/disparity-index.src.js +3 -1
- package/es-modules/masters/indicators/dmi.src.js +3 -1
- package/es-modules/masters/indicators/dpo.src.js +3 -1
- package/es-modules/masters/indicators/ema.src.js +2 -0
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +3 -1
- package/es-modules/masters/indicators/indicators-all.src.js +3 -1
- package/es-modules/masters/indicators/indicators.src.js +7 -1
- package/es-modules/masters/indicators/keltner-channels.src.js +3 -1
- package/es-modules/masters/indicators/klinger.src.js +3 -1
- package/es-modules/masters/indicators/macd.src.js +3 -1
- package/es-modules/masters/indicators/mfi.src.js +3 -1
- package/es-modules/masters/indicators/momentum.src.js +3 -1
- package/es-modules/masters/indicators/natr.src.js +3 -1
- package/es-modules/masters/indicators/obv.src.js +3 -1
- package/es-modules/masters/indicators/pivot-points.src.js +3 -1
- package/es-modules/masters/indicators/ppo.src.js +3 -1
- package/es-modules/masters/indicators/price-channel.src.js +3 -1
- package/es-modules/masters/indicators/price-envelopes.src.js +3 -1
- package/es-modules/masters/indicators/psar.src.js +3 -1
- package/es-modules/masters/indicators/regressions.src.js +3 -1
- package/es-modules/masters/indicators/roc.src.js +3 -1
- package/es-modules/masters/indicators/rsi.src.js +3 -1
- package/es-modules/masters/indicators/slow-stochastic.src.js +3 -1
- package/es-modules/masters/indicators/stochastic.src.js +3 -1
- package/es-modules/masters/indicators/supertrend.src.js +3 -1
- package/es-modules/masters/indicators/tema.src.js +3 -1
- package/es-modules/masters/indicators/trendline.src.js +3 -1
- package/es-modules/masters/indicators/trix.src.js +3 -1
- package/es-modules/masters/indicators/volume-by-price.src.js +3 -1
- package/es-modules/masters/indicators/vwap.src.js +3 -1
- package/es-modules/masters/indicators/williams-r.src.js +3 -1
- package/es-modules/masters/indicators/wma.src.js +3 -1
- package/es-modules/masters/indicators/zigzag.src.js +3 -1
- package/es-modules/masters/modules/accessibility.src.js +4 -1
- package/es-modules/masters/modules/annotations-advanced.src.js +3 -5
- package/es-modules/masters/modules/annotations.src.js +6 -3
- package/es-modules/masters/modules/arc-diagram.src.js +3 -1
- package/es-modules/masters/modules/arrow-symbols.src.js +2 -1
- package/es-modules/masters/modules/boost-canvas.src.js +2 -1
- package/es-modules/masters/modules/boost.src.js +3 -2
- package/es-modules/masters/modules/broken-axis.src.js +4 -3
- package/es-modules/masters/modules/bullet.src.js +3 -1
- package/es-modules/masters/modules/coloraxis.src.js +4 -3
- package/es-modules/masters/modules/current-date-indicator.src.js +2 -1
- package/es-modules/masters/modules/cylinder.src.js +3 -1
- package/es-modules/masters/modules/data-tools.src.js +9 -8
- package/es-modules/masters/modules/data.src.js +9 -8
- package/es-modules/masters/modules/datagrouping.src.js +7 -5
- package/es-modules/masters/modules/debugger.src.js +3 -2
- package/es-modules/masters/modules/dependency-wheel.src.js +3 -1
- package/es-modules/masters/modules/dotplot.src.js +3 -1
- package/es-modules/masters/modules/drag-panes.src.js +2 -1
- package/es-modules/masters/modules/draggable-points.src.js +2 -1
- package/es-modules/masters/modules/drilldown.src.js +3 -2
- package/es-modules/masters/modules/dumbbell.src.js +3 -1
- package/es-modules/masters/modules/export-data.src.js +5 -4
- package/es-modules/masters/modules/exporting.src.js +6 -5
- package/es-modules/masters/modules/flowmap.src.js +3 -1
- package/es-modules/masters/modules/full-screen.src.js +4 -3
- package/es-modules/masters/modules/funnel.src.js +2 -1
- package/es-modules/masters/modules/funnel3d.src.js +4 -3
- package/es-modules/masters/modules/gantt.src.js +15 -17
- package/es-modules/masters/modules/geoheatmap.src.js +3 -1
- package/es-modules/masters/modules/grid-axis.src.js +2 -1
- package/es-modules/masters/modules/heatmap.src.js +3 -5
- package/es-modules/masters/modules/heikinashi.src.js +2 -1
- package/es-modules/masters/modules/histogram-bellcurve.src.js +3 -1
- package/es-modules/masters/modules/hollowcandlestick.src.js +3 -1
- package/es-modules/masters/modules/item-series.src.js +3 -1
- package/es-modules/masters/modules/lollipop.src.js +3 -1
- package/es-modules/masters/modules/map.src.js +15 -10
- package/es-modules/masters/modules/marker-clusters.src.js +2 -1
- package/es-modules/masters/modules/mouse-wheel-zoom.src.js +4 -2
- package/es-modules/masters/modules/navigator.src.d.ts +1 -0
- package/es-modules/masters/modules/navigator.src.js +19 -0
- package/es-modules/masters/modules/networkgraph.src.js +2 -1
- package/es-modules/masters/modules/no-data-to-display.src.js +2 -1
- package/es-modules/masters/modules/offline-exporting.src.js +4 -3
- package/es-modules/masters/modules/organization.src.js +3 -1
- package/es-modules/masters/modules/overlapping-datalabels.src.js +4 -2
- package/es-modules/masters/modules/parallel-coordinates.src.js +2 -1
- package/es-modules/masters/modules/pareto.src.js +3 -1
- package/es-modules/masters/modules/pathfinder.src.js +4 -3
- package/es-modules/masters/modules/pattern-fill.src.js +2 -1
- package/es-modules/masters/modules/pictorial.src.js +3 -1
- package/es-modules/masters/modules/price-indicator.src.js +2 -1
- package/es-modules/masters/modules/pyramid3d.src.js +3 -1
- package/es-modules/masters/modules/sankey.src.js +3 -1
- package/es-modules/masters/modules/series-label.src.js +2 -1
- package/es-modules/masters/modules/series-on-point.src.js +2 -1
- package/es-modules/masters/modules/solid-gauge.src.js +3 -1
- package/es-modules/masters/modules/sonification.src.js +2 -1
- package/es-modules/masters/modules/static-scale.src.js +2 -1
- package/es-modules/masters/modules/stock-tools.src.js +5 -3
- package/es-modules/masters/modules/stock.src.js +20 -15
- package/es-modules/masters/modules/streamgraph.src.js +3 -1
- package/es-modules/masters/modules/sunburst.src.js +4 -3
- package/es-modules/masters/modules/tiledwebmap.src.js +5 -4
- package/es-modules/masters/modules/tilemap.src.js +2 -1
- package/es-modules/masters/modules/timeline.src.js +3 -1
- package/es-modules/masters/modules/treegraph.src.js +3 -1
- package/es-modules/masters/modules/treegrid.src.js +2 -2
- package/es-modules/masters/modules/treemap.src.js +5 -4
- package/es-modules/masters/modules/variable-pie.src.js +3 -1
- package/es-modules/masters/modules/variwide.src.js +2 -1
- package/es-modules/masters/modules/vector.src.js +3 -1
- package/es-modules/masters/modules/venn.src.js +3 -1
- package/es-modules/masters/modules/windbarb.src.js +3 -1
- package/es-modules/masters/modules/wordcloud.src.js +3 -1
- package/es-modules/masters/modules/xrange.src.js +2 -1
- package/es-modules/masters/standalone-navigator.src.js +13 -0
- package/es-modules/masters/themes/avocado.src.js +2 -1
- package/es-modules/masters/themes/brand-dark.src.js +2 -1
- package/es-modules/masters/themes/brand-light.src.js +2 -1
- package/es-modules/masters/themes/dark-blue.src.js +2 -1
- package/es-modules/masters/themes/dark-green.src.js +2 -1
- package/es-modules/masters/themes/dark-unica.src.js +2 -1
- package/es-modules/masters/themes/gray.src.js +2 -1
- package/es-modules/masters/themes/grid-light.src.js +2 -1
- package/es-modules/masters/themes/grid.src.js +2 -1
- package/es-modules/masters/themes/high-contrast-dark.src.js +2 -1
- package/es-modules/masters/themes/high-contrast-light.src.js +2 -1
- package/es-modules/masters/themes/sand-signika.src.js +2 -1
- package/es-modules/masters/themes/skies.src.js +2 -1
- package/es-modules/masters/themes/sunset.src.js +2 -1
- package/es-modules/tsconfig.tsbuildinfo +1 -0
- package/globals.d.ts +9 -0
- package/globals.src.d.ts +9 -0
- package/highcharts-3d.js +3 -3
- package/highcharts-3d.src.js +32 -33
- package/highcharts-gantt.js +4 -4
- package/highcharts-gantt.src.js +5703 -5639
- package/highcharts-more.d.ts +4 -0
- package/highcharts-more.js +3 -3
- package/highcharts-more.src.d.ts +4 -0
- package/highcharts-more.src.js +88 -87
- package/highcharts.d.ts +834 -5365
- package/highcharts.js +4 -4
- package/highcharts.src.d.ts +834 -5365
- package/highcharts.src.js +1583 -1682
- package/highmaps.js +4 -4
- package/highmaps.src.js +1837 -1835
- package/highstock.js +4 -4
- package/highstock.src.js +12488 -12510
- package/indicators/acceleration-bands.js +3 -3
- package/indicators/acceleration-bands.src.js +12 -11
- package/indicators/accumulation-distribution.js +3 -3
- package/indicators/accumulation-distribution.src.js +6 -3
- package/indicators/ao.js +3 -3
- package/indicators/ao.src.js +3 -2
- package/indicators/apo.js +3 -3
- package/indicators/apo.src.js +4 -3
- package/indicators/aroon-oscillator.js +3 -3
- package/indicators/aroon-oscillator.src.js +12 -11
- package/indicators/aroon.js +3 -3
- package/indicators/aroon.src.js +13 -12
- package/indicators/atr.js +3 -3
- package/indicators/atr.src.js +3 -2
- package/indicators/bollinger-bands.js +3 -3
- package/indicators/bollinger-bands.src.js +12 -11
- package/indicators/cci.js +3 -3
- package/indicators/cci.src.js +3 -2
- package/indicators/chaikin.js +3 -3
- package/indicators/chaikin.src.js +7 -4
- package/indicators/cmf.js +3 -3
- package/indicators/cmf.src.js +4 -3
- package/indicators/cmo.js +3 -3
- package/indicators/cmo.src.js +5 -4
- package/indicators/dema.js +3 -3
- package/indicators/dema.src.js +3 -2
- package/indicators/disparity-index.js +3 -3
- package/indicators/disparity-index.src.js +3 -2
- package/indicators/dmi.js +3 -3
- package/indicators/dmi.src.js +12 -11
- package/indicators/dpo.js +3 -3
- package/indicators/dpo.src.js +4 -3
- package/indicators/ema.js +1 -1
- package/indicators/ema.src.js +2 -1
- package/indicators/ichimoku-kinko-hyo.js +3 -3
- package/indicators/ichimoku-kinko-hyo.src.js +3 -2
- package/indicators/indicators-all.js +3 -3
- package/indicators/indicators-all.src.js +63 -60
- package/indicators/indicators.js +3 -3
- package/indicators/indicators.src.js +286 -3
- package/indicators/keltner-channels.js +3 -3
- package/indicators/keltner-channels.src.js +12 -11
- package/indicators/klinger.js +3 -3
- package/indicators/klinger.src.js +13 -12
- package/indicators/macd.js +3 -3
- package/indicators/macd.src.js +3 -2
- package/indicators/mfi.js +3 -3
- package/indicators/mfi.src.js +3 -2
- package/indicators/momentum.js +3 -3
- package/indicators/momentum.src.js +3 -2
- package/indicators/natr.js +3 -3
- package/indicators/natr.src.js +3 -2
- package/indicators/obv.js +3 -3
- package/indicators/obv.src.js +4 -3
- package/indicators/pivot-points.js +3 -3
- package/indicators/pivot-points.src.js +5 -4
- package/indicators/ppo.js +3 -3
- package/indicators/ppo.src.js +4 -3
- package/indicators/price-channel.js +3 -3
- package/indicators/price-channel.src.js +12 -11
- package/indicators/price-envelopes.js +3 -3
- package/indicators/price-envelopes.src.js +12 -11
- package/indicators/psar.js +3 -3
- package/indicators/psar.src.js +3 -2
- package/indicators/regressions.js +3 -3
- package/indicators/regressions.src.js +10 -9
- package/indicators/roc.js +3 -3
- package/indicators/roc.src.js +3 -2
- package/indicators/rsi.js +3 -3
- package/indicators/rsi.src.js +3 -2
- package/indicators/slow-stochastic.js +3 -3
- package/indicators/slow-stochastic.src.js +3 -2
- package/indicators/stochastic.js +3 -3
- package/indicators/stochastic.src.js +12 -11
- package/indicators/supertrend.js +3 -3
- package/indicators/supertrend.src.js +20 -19
- package/indicators/tema.js +3 -3
- package/indicators/tema.src.js +3 -2
- package/indicators/trendline.js +3 -3
- package/indicators/trendline.src.js +3 -2
- package/indicators/trix.js +3 -3
- package/indicators/trix.src.js +3 -2
- package/indicators/volume-by-price.js +3 -3
- package/indicators/volume-by-price.src.js +8 -7
- package/indicators/vwap.js +3 -3
- package/indicators/vwap.src.js +3 -2
- package/indicators/williams-r.js +3 -3
- package/indicators/williams-r.src.js +4 -3
- package/indicators/wma.js +3 -3
- package/indicators/wma.src.js +3 -2
- package/indicators/zigzag.js +3 -3
- package/indicators/zigzag.src.js +8 -7
- package/lib/svg2pdf.js +7 -7
- package/lib/svg2pdf.src.js +185 -150
- package/modules/accessibility.js +3 -3
- package/modules/accessibility.src.js +664 -2793
- package/modules/annotations-advanced.d.ts +3 -0
- package/modules/annotations-advanced.js +3 -3
- package/modules/annotations-advanced.src.d.ts +3 -0
- package/modules/annotations-advanced.src.js +2949 -2920
- package/modules/annotations.d.ts +0 -3
- package/modules/annotations.js +3 -3
- package/modules/annotations.src.d.ts +0 -3
- package/modules/annotations.src.js +2926 -2905
- package/modules/arc-diagram.js +3 -3
- package/modules/arc-diagram.src.js +8 -6
- package/modules/arrow-symbols.js +3 -3
- package/modules/arrow-symbols.src.js +10 -13
- package/modules/boost-canvas.js +3 -3
- package/modules/boost-canvas.src.js +73 -26
- package/modules/boost.js +3 -3
- package/modules/boost.src.js +108 -30
- package/modules/broken-axis.js +3 -3
- package/modules/broken-axis.src.js +9 -9
- package/modules/bullet.js +3 -3
- package/modules/bullet.src.js +5 -4
- package/modules/coloraxis.js +3 -3
- package/modules/coloraxis.src.js +10 -9
- package/modules/current-date-indicator.js +3 -3
- package/modules/current-date-indicator.src.js +3 -2
- package/modules/cylinder.js +3 -3
- package/modules/cylinder.src.js +12 -11
- package/modules/data-tools.js +3 -3
- package/modules/data-tools.src.js +53 -36
- package/modules/data.d.ts +2 -2
- package/modules/data.js +3 -3
- package/modules/data.src.d.ts +2 -2
- package/modules/data.src.js +24 -23
- package/modules/datagrouping.js +3 -3
- package/modules/datagrouping.src.js +25 -23
- package/modules/debugger.js +3 -3
- package/modules/debugger.src.js +6 -5
- package/modules/dependency-wheel.js +3 -3
- package/modules/dependency-wheel.src.js +7 -5
- package/modules/dotplot.js +3 -3
- package/modules/dotplot.src.js +3 -2
- package/modules/drag-panes.js +3 -3
- package/modules/drag-panes.src.js +19 -21
- package/modules/draggable-points.js +3 -3
- package/modules/draggable-points.src.js +18 -16
- package/modules/drilldown.js +3 -3
- package/modules/drilldown.src.js +29 -26
- package/modules/dumbbell.js +3 -3
- package/modules/dumbbell.src.js +5 -4
- package/modules/export-data.js +3 -3
- package/modules/export-data.src.js +33 -22
- package/modules/exporting.d.ts +1 -1
- package/modules/exporting.js +3 -3
- package/modules/exporting.src.d.ts +1 -1
- package/modules/exporting.src.js +40 -39
- package/modules/flowmap.js +3 -3
- package/modules/flowmap.src.js +3 -2
- package/modules/full-screen.js +3 -3
- package/modules/full-screen.src.js +9 -13
- package/modules/funnel.js +3 -3
- package/modules/funnel.src.js +3 -2
- package/modules/funnel3d.js +3 -3
- package/modules/funnel3d.src.js +12 -12
- package/modules/gantt.d.ts +3 -4
- package/modules/gantt.js +3 -3
- package/modules/gantt.src.d.ts +3 -4
- package/modules/gantt.src.js +4165 -4002
- package/modules/geoheatmap.js +3 -3
- package/modules/geoheatmap.src.js +8 -7
- package/modules/grid-axis.js +3 -3
- package/modules/grid-axis.src.js +9 -8
- package/modules/heatmap.d.ts +2 -2
- package/modules/heatmap.js +3 -3
- package/modules/heatmap.src.d.ts +2 -2
- package/modules/heatmap.src.js +21 -15
- package/modules/heikinashi.js +3 -3
- package/modules/heikinashi.src.js +9 -6
- package/modules/histogram-bellcurve.js +3 -3
- package/modules/histogram-bellcurve.src.js +4 -3
- package/modules/hollowcandlestick.js +3 -3
- package/modules/hollowcandlestick.src.js +5 -4
- package/modules/item-series.js +3 -3
- package/modules/item-series.src.js +4 -3
- package/modules/lollipop.js +3 -3
- package/modules/lollipop.src.js +6 -3
- package/modules/map.d.ts +22 -1
- package/modules/map.js +3 -3
- package/modules/map.src.d.ts +22 -1
- package/modules/map.src.js +256 -155
- package/modules/marker-clusters.js +3 -3
- package/modules/marker-clusters.src.js +35 -37
- package/modules/mouse-wheel-zoom.js +3 -3
- package/modules/mouse-wheel-zoom.src.js +55 -163
- package/modules/navigator.d.ts +148 -0
- package/modules/navigator.js +9 -0
- package/modules/navigator.src.d.ts +148 -0
- package/modules/navigator.src.js +3921 -0
- package/modules/networkgraph.d.ts +2 -2
- package/modules/networkgraph.js +3 -3
- package/modules/networkgraph.src.d.ts +2 -2
- package/modules/networkgraph.src.js +36 -35
- package/modules/no-data-to-display.js +3 -3
- package/modules/no-data-to-display.src.js +6 -6
- package/modules/offline-exporting.js +3 -3
- package/modules/offline-exporting.src.js +10 -10
- package/modules/organization.js +3 -3
- package/modules/organization.src.js +41 -15
- package/modules/overlapping-datalabels.js +3 -3
- package/modules/overlapping-datalabels.src.js +4 -2
- package/modules/parallel-coordinates.js +3 -3
- package/modules/parallel-coordinates.src.js +12 -12
- package/modules/pareto.js +3 -3
- package/modules/pareto.src.js +3 -2
- package/modules/pathfinder.js +3 -3
- package/modules/pathfinder.src.js +18 -22
- package/modules/pattern-fill.js +3 -3
- package/modules/pattern-fill.src.js +22 -23
- package/modules/pictorial.js +3 -3
- package/modules/pictorial.src.js +25 -26
- package/modules/price-indicator.js +3 -3
- package/modules/price-indicator.src.js +3 -2
- package/modules/pyramid3d.js +3 -3
- package/modules/pyramid3d.src.js +3 -2
- package/modules/sankey.js +3 -3
- package/modules/sankey.src.js +93 -26
- package/modules/series-label.js +3 -3
- package/modules/series-label.src.js +28 -19
- package/modules/series-on-point.js +3 -3
- package/modules/series-on-point.src.js +5 -4
- package/modules/solid-gauge.js +3 -3
- package/modules/solid-gauge.src.js +3 -2
- package/modules/sonification.d.ts +2 -2
- package/modules/sonification.js +3 -3
- package/modules/sonification.src.d.ts +2 -2
- package/modules/sonification.src.js +8 -6
- package/modules/static-scale.js +3 -3
- package/modules/static-scale.src.js +6 -6
- package/modules/stock-tools.js +3 -3
- package/modules/stock-tools.src.js +109 -96
- package/modules/stock.d.ts +1 -1
- package/modules/stock.js +3 -3
- package/modules/stock.src.d.ts +1 -1
- package/modules/stock.src.js +10762 -10685
- package/modules/streamgraph.js +3 -3
- package/modules/streamgraph.src.js +3 -2
- package/modules/sunburst.js +3 -3
- package/modules/sunburst.src.js +50 -37
- package/modules/tiledwebmap.js +4 -4
- package/modules/tiledwebmap.src.js +28 -29
- package/modules/tilemap.js +3 -3
- package/modules/tilemap.src.js +4 -3
- package/modules/timeline.js +3 -3
- package/modules/timeline.src.js +5 -4
- package/modules/treegraph.js +3 -3
- package/modules/treegraph.src.js +58 -23
- package/modules/treegrid.js +3 -3
- package/modules/treegrid.src.js +49 -33
- package/modules/treemap.js +3 -3
- package/modules/treemap.src.js +44 -26
- package/modules/variable-pie.js +3 -3
- package/modules/variable-pie.src.js +3 -2
- package/modules/variwide.js +3 -3
- package/modules/variwide.src.js +9 -4
- package/modules/vector.js +3 -3
- package/modules/vector.src.js +3 -2
- package/modules/venn.js +3 -3
- package/modules/venn.src.js +16 -17
- package/modules/windbarb.js +3 -3
- package/modules/windbarb.src.js +5 -4
- package/modules/wordcloud.js +3 -3
- package/modules/wordcloud.src.js +10 -8
- package/modules/xrange.js +3 -3
- package/modules/xrange.src.js +5 -4
- package/package.json +1 -1
- package/standalone-navigator.js +2 -0
- package/standalone-navigator.src.js +49402 -0
- package/themes/avocado.js +3 -3
- package/themes/avocado.src.js +2 -1
- package/themes/brand-dark.js +3 -3
- package/themes/brand-dark.src.js +2 -1
- package/themes/brand-light.js +3 -3
- package/themes/brand-light.src.js +2 -1
- package/themes/dark-blue.js +3 -3
- package/themes/dark-blue.src.js +2 -1
- package/themes/dark-green.js +3 -3
- package/themes/dark-green.src.js +2 -1
- package/themes/dark-unica.js +3 -3
- package/themes/dark-unica.src.js +2 -1
- package/themes/gray.js +3 -3
- package/themes/gray.src.js +2 -1
- package/themes/grid-light.js +3 -3
- package/themes/grid-light.src.js +2 -1
- package/themes/grid.js +3 -3
- package/themes/grid.src.js +2 -1
- package/themes/high-contrast-dark.js +3 -3
- package/themes/high-contrast-dark.src.js +2 -1
- package/themes/high-contrast-light.js +3 -3
- package/themes/high-contrast-light.src.js +2 -1
- package/themes/sand-signika.js +3 -3
- package/themes/sand-signika.src.js +2 -1
- package/themes/skies.js +3 -3
- package/themes/skies.src.js +2 -1
- package/themes/sunset.js +3 -3
- package/themes/sunset.src.js +2 -1
- package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +0 -259
- package/lib/canvg.js +0 -8
|
@@ -45,7 +45,7 @@ class SonificationSpeaker {
|
|
|
45
45
|
* @function Highcharts.SonificationSpeaker#say
|
|
46
46
|
* @param {string} message The message to speak.
|
|
47
47
|
* @param {SonificationSpeakerOptionsObject} [options]
|
|
48
|
-
* Optionally override
|
|
48
|
+
* Optionally override speaker configuration.
|
|
49
49
|
*/
|
|
50
50
|
say(message, options) {
|
|
51
51
|
if (this.synthesis) {
|
|
@@ -69,7 +69,7 @@ class SonificationSpeaker {
|
|
|
69
69
|
* @param {string} message
|
|
70
70
|
* The message to speak.
|
|
71
71
|
* @param {SonificationSpeakerOptionsObject} [options]
|
|
72
|
-
* Optionally override
|
|
72
|
+
* Optionally override speaker configuration.
|
|
73
73
|
*/
|
|
74
74
|
sayAtTime(time, message, options) {
|
|
75
75
|
this.scheduled.push(setTimeout(this.say.bind(this, message, options), time));
|
|
@@ -14,11 +14,11 @@
|
|
|
14
14
|
import U from '../../Core/Utilities.js';
|
|
15
15
|
const { clamp, defined, pick } = U;
|
|
16
16
|
/**
|
|
17
|
-
* Get the
|
|
17
|
+
* Get the multiplier value from a pitch tracked multiplier. The parameter
|
|
18
18
|
* specifies the multiplier at ca 3200Hz. It is 1 at ca 50Hz. In between
|
|
19
19
|
* it is mapped logarithmically.
|
|
20
20
|
* @private
|
|
21
|
-
* @param {number} multiplier The
|
|
21
|
+
* @param {number} multiplier The multiplier to track.
|
|
22
22
|
* @param {number} freq The current frequency.
|
|
23
23
|
*/
|
|
24
24
|
function getPitchTrackedMultiplierVal(multiplier, freq) {
|
|
@@ -217,7 +217,7 @@ class Oscillator {
|
|
|
217
217
|
getVMTarget() {
|
|
218
218
|
return this.vmNode && this.vmNode.gain;
|
|
219
219
|
}
|
|
220
|
-
// Schedule one of the
|
|
220
|
+
// Schedule one of the oscillator envelopes at a specified time in
|
|
221
221
|
// seconds (in AudioContext timespace).
|
|
222
222
|
runEnvelopeAtTime(type, time) {
|
|
223
223
|
if (!this.gainNode) {
|
|
@@ -8,10 +8,8 @@
|
|
|
8
8
|
*
|
|
9
9
|
* */
|
|
10
10
|
'use strict';
|
|
11
|
-
import H from '../Core/Globals.js';
|
|
12
|
-
const { composed } = H;
|
|
13
11
|
import U from '../Core/Utilities.js';
|
|
14
|
-
const { addEvent, defined, isNumber, pick
|
|
12
|
+
const { addEvent, defined, isNumber, pick } = U;
|
|
15
13
|
/* *
|
|
16
14
|
*
|
|
17
15
|
* Composition
|
|
@@ -19,8 +17,8 @@ const { addEvent, defined, isNumber, pick, pushUnique } = U;
|
|
|
19
17
|
* */
|
|
20
18
|
/** @private */
|
|
21
19
|
function compose(AxisClass, ChartClass) {
|
|
22
|
-
|
|
23
|
-
|
|
20
|
+
const chartProto = ChartClass.prototype;
|
|
21
|
+
if (!chartProto.adjustHeight) {
|
|
24
22
|
addEvent(AxisClass, 'afterSetOptions', onAxisAfterSetOptions);
|
|
25
23
|
chartProto.adjustHeight = chartAdjustHeight;
|
|
26
24
|
addEvent(ChartClass, 'render', chartProto.adjustHeight);
|
|
@@ -51,7 +51,7 @@ function calculateObstacleMargin(obstacles) {
|
|
|
51
51
|
}
|
|
52
52
|
}
|
|
53
53
|
}
|
|
54
|
-
// Ensure we always have at least one value, even in very
|
|
54
|
+
// Ensure we always have at least one value, even in very spacious charts
|
|
55
55
|
distances.push(80);
|
|
56
56
|
return max(Math.floor(distances.sort((a, b) => (a - b))[
|
|
57
57
|
// Discard first 10% of the relevant distances, and then grab
|
|
@@ -106,7 +106,7 @@ function calculateObstacleMargin(obstacles) {
|
|
|
106
106
|
}
|
|
107
107
|
}
|
|
108
108
|
}
|
|
109
|
-
// Ensure we always have at least one value, even in very
|
|
109
|
+
// Ensure we always have at least one value, even in very spacious charts
|
|
110
110
|
distances.push(80);
|
|
111
111
|
return max(Math.floor(distances.sort(function (a, b) {
|
|
112
112
|
return (a - b);
|
|
@@ -295,7 +295,7 @@ class Pathfinder {
|
|
|
295
295
|
* @function Highcharts.Pathfinder#getChartObstacles
|
|
296
296
|
*
|
|
297
297
|
* @param {Object} options
|
|
298
|
-
* Options for the calculation.
|
|
298
|
+
* Options for the calculation. Currently only
|
|
299
299
|
* options.algorithmMargin.
|
|
300
300
|
*
|
|
301
301
|
* @return {Array<object>}
|
|
@@ -12,10 +12,8 @@
|
|
|
12
12
|
import ConnectorsDefaults from './ConnectorsDefaults.js';
|
|
13
13
|
import D from '../Core/Defaults.js';
|
|
14
14
|
const { setOptions } = D;
|
|
15
|
-
import H from '../Core/Globals.js';
|
|
16
|
-
const { composed } = H;
|
|
17
15
|
import U from '../Core/Utilities.js';
|
|
18
|
-
const { defined, error, merge
|
|
16
|
+
const { defined, error, merge } = U;
|
|
19
17
|
/* *
|
|
20
18
|
*
|
|
21
19
|
* Functions
|
|
@@ -87,8 +85,8 @@ var ConnectionComposition;
|
|
|
87
85
|
* */
|
|
88
86
|
/** @private */
|
|
89
87
|
function compose(ChartClass, PathfinderClass, PointClass) {
|
|
90
|
-
|
|
91
|
-
|
|
88
|
+
const pointProto = PointClass.prototype;
|
|
89
|
+
if (!pointProto.getPathfinderAnchorPoint) {
|
|
92
90
|
// Initialize Pathfinder for charts
|
|
93
91
|
ChartClass.prototype.callbacks.push(function (chart) {
|
|
94
92
|
const options = chart.options;
|
package/es-modules/Gantt/Tree.js
CHANGED
|
@@ -23,7 +23,7 @@ const { extend, isNumber, pick } = U;
|
|
|
23
23
|
*
|
|
24
24
|
* */
|
|
25
25
|
/**
|
|
26
|
-
* Creates an object map from parent id to
|
|
26
|
+
* Creates an object map from parent id to children's index.
|
|
27
27
|
*
|
|
28
28
|
* @private
|
|
29
29
|
* @function Highcharts.Tree#getListOfParents
|
|
@@ -52,7 +52,7 @@ function getListOfParents(data) {
|
|
|
52
52
|
Object.keys(listOfParents).forEach((node) => {
|
|
53
53
|
if ((node !== root) && (ids.indexOf(node) === -1)) {
|
|
54
54
|
const adoptedByRoot = listOfParents[node].map(function (orphan) {
|
|
55
|
-
const {
|
|
55
|
+
const { ...parentExcluded } = orphan; // #15196
|
|
56
56
|
return parentExcluded;
|
|
57
57
|
});
|
|
58
58
|
listOfParents[root].push(...adoptedByRoot);
|
|
@@ -75,7 +75,7 @@ function getNode(id, parent, level, data, mapOfIdToChildren, options) {
|
|
|
75
75
|
if (typeof before === 'function') {
|
|
76
76
|
before(node, options);
|
|
77
77
|
}
|
|
78
|
-
// Call getNode recursively on the children.
|
|
78
|
+
// Call getNode recursively on the children. Calculate the height of the
|
|
79
79
|
// node, and the number of descendants.
|
|
80
80
|
const children = ((mapOfIdToChildren[id] || [])).map((child) => {
|
|
81
81
|
const node = getNode(child.id, id, (level + 1), child, mapOfIdToChildren, options), childStart = child.start || NaN, childEnd = (child.milestone === true ?
|
|
@@ -9,11 +9,11 @@
|
|
|
9
9
|
* */
|
|
10
10
|
'use strict';
|
|
11
11
|
import H from '../Core/Globals.js';
|
|
12
|
-
const {
|
|
12
|
+
const { win } = H;
|
|
13
13
|
import T from '../Core/Templating.js';
|
|
14
14
|
const { format } = T;
|
|
15
15
|
import U from '../Core/Utilities.js';
|
|
16
|
-
const { error, extend, merge,
|
|
16
|
+
const { error, extend, merge, wrap } = U;
|
|
17
17
|
/* *
|
|
18
18
|
*
|
|
19
19
|
* Composition
|
|
@@ -160,13 +160,13 @@ var GeoJSONComposition;
|
|
|
160
160
|
}
|
|
161
161
|
/** @private */
|
|
162
162
|
function compose(ChartClass) {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
wrap(
|
|
163
|
+
const chartProto = ChartClass.prototype;
|
|
164
|
+
if (!chartProto.transformFromLatLon) {
|
|
165
|
+
chartProto.fromLatLonToPoint = chartFromLatLonToPoint;
|
|
166
|
+
chartProto.fromPointToLatLon = chartFromPointToLatLon;
|
|
167
|
+
chartProto.transformFromLatLon = chartTransformFromLatLon;
|
|
168
|
+
chartProto.transformToLatLon = chartTransformToLatLon;
|
|
169
|
+
wrap(chartProto, 'addCredits', wrapChartAddCredit);
|
|
170
170
|
}
|
|
171
171
|
}
|
|
172
172
|
GeoJSONComposition.compose = compose;
|
|
@@ -262,8 +262,9 @@ var GeoJSONComposition;
|
|
|
262
262
|
objectName = Object.keys(topology.objects)[0];
|
|
263
263
|
}
|
|
264
264
|
const obj = topology.objects[objectName];
|
|
265
|
-
// Already decoded => return cache
|
|
266
|
-
if (obj['hc-decoded-geojson']
|
|
265
|
+
// Already decoded with the same title => return cache
|
|
266
|
+
if (obj['hc-decoded-geojson'] &&
|
|
267
|
+
obj['hc-decoded-geojson'].title === topology.title) {
|
|
267
268
|
return obj['hc-decoded-geojson'];
|
|
268
269
|
}
|
|
269
270
|
// Do the initial transform
|
|
@@ -285,7 +286,7 @@ var GeoJSONComposition;
|
|
|
285
286
|
}
|
|
286
287
|
}
|
|
287
288
|
}
|
|
288
|
-
// Recurse down any depth of multi-
|
|
289
|
+
// Recurse down any depth of multi-dimensional arrays of arcs and insert
|
|
289
290
|
// the coordinates
|
|
290
291
|
const arcsToCoordinates = (arcs) => {
|
|
291
292
|
if (typeof arcs[0] === 'number') {
|
|
@@ -424,7 +425,7 @@ export default GeoJSONComposition;
|
|
|
424
425
|
* @name Highcharts.GeoJSONTranslation#crs
|
|
425
426
|
* @type {string}
|
|
426
427
|
*/ /**
|
|
427
|
-
* Define the portion of the map that this
|
|
428
|
+
* Define the portion of the map that this definition applies to. Defined as a
|
|
428
429
|
* GeoJSON polygon feature object, with `type` and `coordinates` properties.
|
|
429
430
|
* @name Highcharts.GeoJSONTranslation#hitZone
|
|
430
431
|
* @type {Highcharts.Dictionary<*>|undefined}
|
|
@@ -498,6 +499,12 @@ export default GeoJSONComposition;
|
|
|
498
499
|
*
|
|
499
500
|
* @typedef {Array<number>} Highcharts.LonLatArray
|
|
500
501
|
*/
|
|
502
|
+
/**
|
|
503
|
+
* An array of GeoJSON or TopoJSON objects or strings used as map data for
|
|
504
|
+
* series.
|
|
505
|
+
*
|
|
506
|
+
* @typedef {Array<*>|GeoJSON|TopoJSON|string} Highcharts.MapDataType
|
|
507
|
+
*/
|
|
501
508
|
/**
|
|
502
509
|
* A TopoJSON object, see description on the
|
|
503
510
|
* [project's GitHub page](https://github.com/topojson/topojson).
|
|
@@ -61,7 +61,7 @@ class MapNavigation {
|
|
|
61
61
|
static compose(MapChartClass, PointerClass, SVGRendererClass) {
|
|
62
62
|
MapPointer.compose(PointerClass);
|
|
63
63
|
MapSymbols.compose(SVGRendererClass);
|
|
64
|
-
if (pushUnique(composed,
|
|
64
|
+
if (pushUnique(composed, 'Map.Navigation')) {
|
|
65
65
|
// Extend the Chart.render method to add zooming and panning
|
|
66
66
|
addEvent(MapChartClass, 'beforeRender', function () {
|
|
67
67
|
// Render the plus and minus buttons. Doing this before the
|
|
@@ -116,7 +116,7 @@ class MapNavigation {
|
|
|
116
116
|
if (!mapNav.navButtonsGroup) {
|
|
117
117
|
mapNav.navButtonsGroup = chart.renderer.g()
|
|
118
118
|
.attr({
|
|
119
|
-
zIndex:
|
|
119
|
+
zIndex: 7 // #4955, #8392, #20476
|
|
120
120
|
})
|
|
121
121
|
.add();
|
|
122
122
|
}
|
|
@@ -8,10 +8,8 @@
|
|
|
8
8
|
*
|
|
9
9
|
* */
|
|
10
10
|
'use strict';
|
|
11
|
-
import H from '../Core/Globals.js';
|
|
12
|
-
const { composed } = H;
|
|
13
11
|
import U from '../Core/Utilities.js';
|
|
14
|
-
const { defined, extend, pick,
|
|
12
|
+
const { defined, extend, pick, wrap } = U;
|
|
15
13
|
/* *
|
|
16
14
|
*
|
|
17
15
|
* Composition
|
|
@@ -36,14 +34,13 @@ var MapPointer;
|
|
|
36
34
|
* @private
|
|
37
35
|
*/
|
|
38
36
|
function compose(PointerClass) {
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
const pointerProto = PointerClass.prototype;
|
|
38
|
+
if (!pointerProto.onContainerDblClick) {
|
|
41
39
|
extend(pointerProto, {
|
|
42
40
|
onContainerDblClick,
|
|
43
41
|
onContainerMouseWheel
|
|
44
42
|
});
|
|
45
43
|
wrap(pointerProto, 'normalize', wrapNormalize);
|
|
46
|
-
wrap(pointerProto, 'pinchTranslate', wrapPinchTranslate);
|
|
47
44
|
wrap(pointerProto, 'zoomOption', wrapZoomOption);
|
|
48
45
|
}
|
|
49
46
|
}
|
|
@@ -117,19 +114,6 @@ var MapPointer;
|
|
|
117
114
|
}
|
|
118
115
|
return e;
|
|
119
116
|
}
|
|
120
|
-
/**
|
|
121
|
-
* Extend the pinchTranslate method to preserve fixed ratio when zooming.
|
|
122
|
-
* @private
|
|
123
|
-
*/
|
|
124
|
-
function wrapPinchTranslate(proceed, pinchDown, touches, transform, selectionMarker, clip, lastValidTouch) {
|
|
125
|
-
let xBigger;
|
|
126
|
-
proceed.call(this, pinchDown, touches, transform, selectionMarker, clip, lastValidTouch);
|
|
127
|
-
// Keep ratio
|
|
128
|
-
if (this.chart.options.chart.type === 'map' && this.hasZoom) {
|
|
129
|
-
xBigger = transform.scaleX > transform.scaleY;
|
|
130
|
-
this.pinchTranslateDirection(!xBigger, pinchDown, touches, transform, selectionMarker, clip, lastValidTouch, xBigger ? transform.scaleX : transform.scaleY);
|
|
131
|
-
}
|
|
132
|
-
}
|
|
133
117
|
/**
|
|
134
118
|
* The pinchType is inferred from mapNavigation options.
|
|
135
119
|
* @private
|
|
@@ -8,10 +8,6 @@
|
|
|
8
8
|
*
|
|
9
9
|
* */
|
|
10
10
|
'use strict';
|
|
11
|
-
import H from '../Core/Globals.js';
|
|
12
|
-
const { composed } = H;
|
|
13
|
-
import U from '../Core/Utilities.js';
|
|
14
|
-
const { pushUnique } = U;
|
|
15
11
|
/* *
|
|
16
12
|
*
|
|
17
13
|
* Variables
|
|
@@ -32,11 +28,9 @@ function bottomButton(x, y, w, h, options) {
|
|
|
32
28
|
return symbols.roundedRect(x, y, w, h, options);
|
|
33
29
|
}
|
|
34
30
|
function compose(SVGRendererClass) {
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
symbols.topbutton = topButton;
|
|
39
|
-
}
|
|
31
|
+
symbols = SVGRendererClass.prototype.symbols;
|
|
32
|
+
symbols.bottombutton = bottomButton;
|
|
33
|
+
symbols.topbutton = topButton;
|
|
40
34
|
}
|
|
41
35
|
function topButton(x, y, w, h, options) {
|
|
42
36
|
if (options) {
|
|
@@ -50,6 +50,19 @@ function zoomFromBounds(b, playingField) {
|
|
|
50
50
|
const { width, height } = playingField, scaleToField = Math.max((b.x2 - b.x1) / (width / tileSize), (b.y2 - b.y1) / (height / tileSize));
|
|
51
51
|
return Math.log(worldSize / scaleToField) / Math.log(2);
|
|
52
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Calculate and set the recommended map view drilldown or drillup if mapData
|
|
55
|
+
* is set for the series.
|
|
56
|
+
* @private
|
|
57
|
+
*/
|
|
58
|
+
function recommendedMapViewAfterDrill(e) {
|
|
59
|
+
if (e.seriesOptions.mapData) {
|
|
60
|
+
this.mapView?.recommendMapView(this, [
|
|
61
|
+
this.options.chart.map,
|
|
62
|
+
e.seriesOptions.mapData
|
|
63
|
+
], this.options.drilldown?.mapZooming);
|
|
64
|
+
}
|
|
65
|
+
}
|
|
53
66
|
/*
|
|
54
67
|
const mergeCollections = <
|
|
55
68
|
T extends Array<AnyRecord|undefined>
|
|
@@ -99,7 +112,7 @@ class MapView {
|
|
|
99
112
|
*
|
|
100
113
|
* */
|
|
101
114
|
static compose(MapChartClass) {
|
|
102
|
-
if (pushUnique(composed,
|
|
115
|
+
if (pushUnique(composed, 'MapView')) {
|
|
103
116
|
maps = MapChartClass.maps;
|
|
104
117
|
// Initialize MapView after initialization, but before firstRender
|
|
105
118
|
addEvent(MapChartClass, 'afterInit', function () {
|
|
@@ -112,6 +125,8 @@ class MapView {
|
|
|
112
125
|
*/
|
|
113
126
|
this.mapView = new MapView(this, this.options.mapView);
|
|
114
127
|
}, { order: 0 });
|
|
128
|
+
addEvent(MapChartClass, 'addSeriesAsDrilldown', recommendedMapViewAfterDrill);
|
|
129
|
+
addEvent(MapChartClass, 'afterDrillUp', recommendedMapViewAfterDrill);
|
|
115
130
|
}
|
|
116
131
|
}
|
|
117
132
|
/**
|
|
@@ -164,66 +179,17 @@ class MapView {
|
|
|
164
179
|
this.eventsToUnbind = [];
|
|
165
180
|
this.insets = [];
|
|
166
181
|
this.padding = [0, 0, 0, 0];
|
|
167
|
-
|
|
168
|
-
let recommendedProjection;
|
|
182
|
+
this.recommendedMapView = {};
|
|
169
183
|
if (!(this instanceof MapViewInset)) {
|
|
170
|
-
|
|
171
|
-
const geoMaps = [
|
|
184
|
+
this.recommendMapView(chart, [
|
|
172
185
|
chart.options.chart.map,
|
|
173
186
|
...(chart.options.series || []).map((s) => s.mapData)
|
|
174
|
-
]
|
|
175
|
-
.map((mapData) => this.getGeoMap(mapData));
|
|
176
|
-
const allGeoBounds = [];
|
|
177
|
-
geoMaps.forEach((geoMap) => {
|
|
178
|
-
if (geoMap) {
|
|
179
|
-
// Use the first geo map as main
|
|
180
|
-
if (!recommendedMapView) {
|
|
181
|
-
recommendedMapView =
|
|
182
|
-
geoMap['hc-recommended-mapview'];
|
|
183
|
-
}
|
|
184
|
-
// Combine the bounding boxes of all loaded maps
|
|
185
|
-
if (geoMap.bbox) {
|
|
186
|
-
const [x1, y1, x2, y2] = geoMap.bbox;
|
|
187
|
-
allGeoBounds.push({ x1, y1, x2, y2 });
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
});
|
|
191
|
-
// Get the composite bounds
|
|
192
|
-
const geoBounds = (allGeoBounds.length &&
|
|
193
|
-
MapView.compositeBounds(allGeoBounds));
|
|
194
|
-
// Provide a best-guess recommended projection if not set in
|
|
195
|
-
// the map or in user options
|
|
196
|
-
fireEvent(chart, 'beforeMapViewInit', {
|
|
197
|
-
geoBounds
|
|
198
|
-
}, function () {
|
|
199
|
-
if (geoBounds) {
|
|
200
|
-
const { x1, y1, x2, y2 } = geoBounds;
|
|
201
|
-
recommendedProjection =
|
|
202
|
-
(x2 - x1 > 180 && y2 - y1 > 90) ?
|
|
203
|
-
// Wide angle, go for the world view
|
|
204
|
-
{
|
|
205
|
-
name: 'EqualEarth'
|
|
206
|
-
} :
|
|
207
|
-
// Narrower angle, use a projection better
|
|
208
|
-
// suited for local view
|
|
209
|
-
{
|
|
210
|
-
name: 'LambertConformalConic',
|
|
211
|
-
parallels: [y1, y2],
|
|
212
|
-
rotation: [-(x1 + x2) / 2]
|
|
213
|
-
};
|
|
214
|
-
}
|
|
215
|
-
});
|
|
216
|
-
// Register the main geo map (from options.chart.map) if set
|
|
217
|
-
this.geoMap = geoMaps[0];
|
|
187
|
+
]);
|
|
218
188
|
}
|
|
219
189
|
this.userOptions = options || {};
|
|
220
|
-
|
|
221
|
-
chart.options.mapView.recommendedMapView) {
|
|
222
|
-
recommendedMapView = chart.options.mapView.recommendedMapView;
|
|
223
|
-
}
|
|
224
|
-
const o = merge(MapViewDefaults, { projection: recommendedProjection }, recommendedMapView, options);
|
|
190
|
+
const o = merge(MapViewDefaults, this.recommendedMapView, options);
|
|
225
191
|
// Merge the inset collections by id, or index if id missing
|
|
226
|
-
const recInsets = recommendedMapView
|
|
192
|
+
const recInsets = this.recommendedMapView?.insets, optInsets = options && options.insets;
|
|
227
193
|
if (recInsets && optInsets) {
|
|
228
194
|
o.insets = MapView.mergeInsets(recInsets, optInsets);
|
|
229
195
|
}
|
|
@@ -520,6 +486,90 @@ class MapView {
|
|
|
520
486
|
const coordinates = this.projection.inverse([point.x, point.y]);
|
|
521
487
|
return { lon: coordinates[0], lat: coordinates[1] };
|
|
522
488
|
}
|
|
489
|
+
/**
|
|
490
|
+
* Calculate and set the recommended map view based on provided map data
|
|
491
|
+
* from series.
|
|
492
|
+
*
|
|
493
|
+
* @requires modules/map
|
|
494
|
+
*
|
|
495
|
+
* @function Highcharts.MapView#recommendMapView
|
|
496
|
+
*
|
|
497
|
+
* @since @next
|
|
498
|
+
*
|
|
499
|
+
* @param {Highcharts.Chart} chart
|
|
500
|
+
* Chart object
|
|
501
|
+
*
|
|
502
|
+
* @param {Array<MapDataType | undefined>} mapDataArray
|
|
503
|
+
* Array of map data from all series.
|
|
504
|
+
*
|
|
505
|
+
* @param {boolean} [update=false]
|
|
506
|
+
* Whether to update the chart with recommended map view.
|
|
507
|
+
*
|
|
508
|
+
* @return {Highcharts.MapViewOptions|undefined} Best suitable map view.
|
|
509
|
+
*/
|
|
510
|
+
recommendMapView(chart, mapDataArray, update = false) {
|
|
511
|
+
// Reset recommended map view
|
|
512
|
+
this.recommendedMapView = {};
|
|
513
|
+
// Handle the global map and series-level mapData
|
|
514
|
+
const geoMaps = mapDataArray.map((mapData) => this.getGeoMap(mapData));
|
|
515
|
+
const allGeoBounds = [];
|
|
516
|
+
geoMaps.forEach((geoMap) => {
|
|
517
|
+
if (geoMap) {
|
|
518
|
+
// Use the first geo map as main
|
|
519
|
+
if (!Object.keys(this.recommendedMapView).length) {
|
|
520
|
+
this.recommendedMapView =
|
|
521
|
+
geoMap['hc-recommended-mapview'] || {};
|
|
522
|
+
}
|
|
523
|
+
// Combine the bounding boxes of all loaded maps
|
|
524
|
+
if (geoMap.bbox) {
|
|
525
|
+
const [x1, y1, x2, y2] = geoMap.bbox;
|
|
526
|
+
allGeoBounds.push({ x1, y1, x2, y2 });
|
|
527
|
+
}
|
|
528
|
+
}
|
|
529
|
+
});
|
|
530
|
+
// Get the composite bounds
|
|
531
|
+
const geoBounds = (allGeoBounds.length &&
|
|
532
|
+
MapView.compositeBounds(allGeoBounds));
|
|
533
|
+
// Provide a best-guess recommended projection if not set in
|
|
534
|
+
// the map or in user options
|
|
535
|
+
fireEvent(this, 'onRecommendMapView', {
|
|
536
|
+
geoBounds,
|
|
537
|
+
chart
|
|
538
|
+
}, function () {
|
|
539
|
+
if (geoBounds &&
|
|
540
|
+
this.recommendedMapView) {
|
|
541
|
+
if (!this.recommendedMapView.projection) {
|
|
542
|
+
const { x1, y1, x2, y2 } = geoBounds;
|
|
543
|
+
this.recommendedMapView.projection =
|
|
544
|
+
(x2 - x1 > 180 && y2 - y1 > 90) ?
|
|
545
|
+
// Wide angle, go for the world view
|
|
546
|
+
{
|
|
547
|
+
name: 'EqualEarth',
|
|
548
|
+
parallels: [0, 0],
|
|
549
|
+
rotation: [0]
|
|
550
|
+
} :
|
|
551
|
+
// Narrower angle, use a projection better
|
|
552
|
+
// suited for local view
|
|
553
|
+
{
|
|
554
|
+
name: 'LambertConformalConic',
|
|
555
|
+
parallels: [y1, y2],
|
|
556
|
+
rotation: [-(x1 + x2) / 2]
|
|
557
|
+
};
|
|
558
|
+
}
|
|
559
|
+
if (!this.recommendedMapView.insets) {
|
|
560
|
+
this.recommendedMapView.insets = void 0; // Reset insets
|
|
561
|
+
}
|
|
562
|
+
}
|
|
563
|
+
});
|
|
564
|
+
// Register the main geo map (from options.chart.map) if set
|
|
565
|
+
this.geoMap = geoMaps[0];
|
|
566
|
+
if (update &&
|
|
567
|
+
chart.hasRendered &&
|
|
568
|
+
!chart.userOptions.mapView?.projection &&
|
|
569
|
+
this.recommendedMapView) {
|
|
570
|
+
this.update(this.recommendedMapView);
|
|
571
|
+
}
|
|
572
|
+
}
|
|
523
573
|
redraw(animation) {
|
|
524
574
|
this.chart.series.forEach((s) => {
|
|
525
575
|
if (s.useMapGeometry) {
|
|
@@ -665,21 +715,34 @@ class MapView {
|
|
|
665
715
|
}
|
|
666
716
|
setUpEvents() {
|
|
667
717
|
const { chart } = this;
|
|
668
|
-
// Set up panning for maps. In orthographic projections
|
|
669
|
-
// rotate, otherwise adjust the map center.
|
|
670
|
-
let mouseDownCenterProjected;
|
|
671
|
-
let mouseDownKey;
|
|
672
|
-
let mouseDownRotation;
|
|
718
|
+
// Set up panning and touch zoom for maps. In orthographic projections
|
|
719
|
+
// the globe will rotate, otherwise adjust the map center and zoom.
|
|
720
|
+
let mouseDownCenterProjected, mouseDownKey, mouseDownRotation;
|
|
673
721
|
const onPan = (e) => {
|
|
674
|
-
const pinchDown = chart.pointer
|
|
675
|
-
let { mouseDownX, mouseDownY } = chart;
|
|
676
|
-
if (pinchDown
|
|
722
|
+
const { lastTouches, pinchDown } = chart.pointer, projection = this.projection, touches = e.touches;
|
|
723
|
+
let { mouseDownX, mouseDownY } = chart, howMuch = 0;
|
|
724
|
+
if (pinchDown?.length === 1) {
|
|
677
725
|
mouseDownX = pinchDown[0].chartX;
|
|
678
726
|
mouseDownY = pinchDown[0].chartY;
|
|
679
727
|
}
|
|
680
|
-
if (
|
|
681
|
-
|
|
682
|
-
|
|
728
|
+
else if (pinchDown?.length === 2) {
|
|
729
|
+
mouseDownX = (pinchDown[0].chartX + pinchDown[1].chartX) / 2;
|
|
730
|
+
mouseDownY = (pinchDown[0].chartY + pinchDown[1].chartY) / 2;
|
|
731
|
+
}
|
|
732
|
+
// How much has the distance between the fingers changed?
|
|
733
|
+
if (touches?.length === 2 && lastTouches) {
|
|
734
|
+
const startDistance = Math.sqrt(Math.pow(lastTouches[0].chartX - lastTouches[1].chartX, 2) +
|
|
735
|
+
Math.pow(lastTouches[0].chartY - lastTouches[1].chartY, 2)), endDistance = Math.sqrt(Math.pow(touches[0].chartX - touches[1].chartX, 2) +
|
|
736
|
+
Math.pow(touches[0].chartY - touches[1].chartY, 2));
|
|
737
|
+
howMuch = Math.log(startDistance / endDistance) / Math.log(0.5);
|
|
738
|
+
}
|
|
739
|
+
if (isNumber(mouseDownX) && isNumber(mouseDownY)) {
|
|
740
|
+
const key = `${mouseDownX},${mouseDownY}`;
|
|
741
|
+
let { chartX, chartY } = e.originalEvent;
|
|
742
|
+
if (touches?.length === 2) {
|
|
743
|
+
chartX = (touches[0].chartX + touches[1].chartX) / 2;
|
|
744
|
+
chartY = (touches[0].chartY + touches[1].chartY) / 2;
|
|
745
|
+
}
|
|
683
746
|
// Reset starting position
|
|
684
747
|
if (key !== mouseDownKey) {
|
|
685
748
|
mouseDownKey = key;
|
|
@@ -693,6 +756,7 @@ class MapView {
|
|
|
693
756
|
zoomFromBounds(worldBounds, this.playingField)) || -Infinity;
|
|
694
757
|
// Panning rotates the globe
|
|
695
758
|
if (projection.options.name === 'Orthographic' &&
|
|
759
|
+
(touches?.length || 0) < 2 &&
|
|
696
760
|
// ... but don't rotate if we're loading only a part of the
|
|
697
761
|
// world
|
|
698
762
|
(this.minZoom || Infinity) < worldZoom * 1.3) {
|
|
@@ -726,7 +790,7 @@ class MapView {
|
|
|
726
790
|
]);
|
|
727
791
|
// #19190 Skip NaN coords
|
|
728
792
|
if (!isNaN(newCenter[0] + newCenter[1])) {
|
|
729
|
-
this.
|
|
793
|
+
this.zoomBy(howMuch, newCenter, void 0, false);
|
|
730
794
|
}
|
|
731
795
|
}
|
|
732
796
|
e.preventDefault();
|
|
@@ -856,13 +920,10 @@ class MapView {
|
|
|
856
920
|
* The animation to apply to a the redraw
|
|
857
921
|
*/
|
|
858
922
|
zoomBy(howMuch, coords, chartCoords, animation) {
|
|
859
|
-
const chart = this.chart;
|
|
860
|
-
const projectedCenter = this.projection.forward(this.center);
|
|
861
|
-
// let { x, y } = coords || {};
|
|
862
|
-
let [x, y] = coords ? this.projection.forward(coords) : [];
|
|
923
|
+
const chart = this.chart, projectedCenter = this.projection.forward(this.center);
|
|
863
924
|
if (typeof howMuch === 'number') {
|
|
864
925
|
const zoom = this.zoom + howMuch;
|
|
865
|
-
let center;
|
|
926
|
+
let center, x, y;
|
|
866
927
|
// Keep chartX and chartY stationary - convert to lat and lng
|
|
867
928
|
if (chartCoords) {
|
|
868
929
|
const [chartX, chartY] = chartCoords;
|
|
@@ -875,14 +936,13 @@ class MapView {
|
|
|
875
936
|
// Keep lon and lat stationary by adjusting the center
|
|
876
937
|
if (typeof x === 'number' && typeof y === 'number') {
|
|
877
938
|
const scale = 1 - Math.pow(2, this.zoom) / Math.pow(2, zoom);
|
|
878
|
-
// const projectedCenter = this.projection.forward(this.center);
|
|
879
939
|
const offsetX = projectedCenter[0] - x;
|
|
880
940
|
const offsetY = projectedCenter[1] - y;
|
|
881
941
|
projectedCenter[0] -= offsetX * scale;
|
|
882
942
|
projectedCenter[1] += offsetY * scale;
|
|
883
943
|
center = this.projection.inverse(projectedCenter);
|
|
884
944
|
}
|
|
885
|
-
this.setView(center, zoom, void 0, animation);
|
|
945
|
+
this.setView(coords || center, zoom, void 0, animation);
|
|
886
946
|
// Undefined howMuch => reset zoom
|
|
887
947
|
}
|
|
888
948
|
else {
|
|
@@ -148,14 +148,13 @@ class ArcDiagramSeries extends SankeySeries {
|
|
|
148
148
|
((fromNode.shapeArgs.height || 0) - linkWeight) / 2 :
|
|
149
149
|
getX(fromNode, 'linksFrom'), toX = centeredLinks ? toNode.nodeX +
|
|
150
150
|
((toNode.shapeArgs.height || 0) - linkWeight) / 2 :
|
|
151
|
-
getX(toNode, 'linksTo'), bottom = nodeTop
|
|
151
|
+
getX(toNode, 'linksTo'), bottom = nodeTop;
|
|
152
152
|
if (fromX > toX) {
|
|
153
153
|
[fromX, toX] = [toX, fromX];
|
|
154
154
|
}
|
|
155
155
|
if (seriesOptions.reversed) {
|
|
156
156
|
[fromX, toX] = [toX, fromX];
|
|
157
157
|
bottom = (chart.plotSizeY || 0) - bottom;
|
|
158
|
-
linkWidth = -linkWidth;
|
|
159
158
|
}
|
|
160
159
|
point.shapeType = 'path';
|
|
161
160
|
point.linkBase = [
|
|
@@ -295,9 +294,11 @@ class ArcDiagramSeries extends SankeySeries {
|
|
|
295
294
|
this.options.dataLabels.textPath = textPath;
|
|
296
295
|
}
|
|
297
296
|
}
|
|
298
|
-
pointAttribs(point,
|
|
297
|
+
pointAttribs(point,
|
|
298
|
+
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
|
299
|
+
state) {
|
|
299
300
|
if (point && point.isNode) {
|
|
300
|
-
const {
|
|
301
|
+
const { ...attrs } = Series.prototype.pointAttribs
|
|
301
302
|
.apply(this, arguments);
|
|
302
303
|
return attrs;
|
|
303
304
|
}
|