highcharts 9.2.2 → 9.3.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 +13 -6
- package/bower.json +1 -1
- package/css/annotations/popup.css +48 -8
- package/css/annotations/popup.scss +70 -22
- package/css/highcharts.css +45 -0
- package/css/highcharts.scss +40 -0
- package/css/themes/dark-unica.css +45 -0
- package/css/themes/grid-light.css +45 -0
- package/css/themes/sand-signika.css +45 -0
- package/es-modules/Accessibility/A11yI18n.js +273 -224
- package/es-modules/Accessibility/Accessibility.js +233 -128
- package/es-modules/Accessibility/AccessibilityComponent.js +79 -314
- package/es-modules/Accessibility/Components/AnnotationsA11y.js +10 -0
- package/es-modules/Accessibility/Components/ContainerComponent.js +52 -27
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +46 -23
- package/es-modules/Accessibility/Components/LegendComponent.js +97 -65
- package/es-modules/Accessibility/Components/MenuComponent.js +59 -40
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +5 -8
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +152 -115
- package/es-modules/Accessibility/Components/SeriesComponent/NewDataAnnouncer.js +133 -68
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +64 -27
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +38 -21
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +380 -325
- package/es-modules/Accessibility/Components/ZoomComponent.js +28 -20
- package/es-modules/Accessibility/FocusBorder.js +192 -147
- package/es-modules/Accessibility/HighContrastMode.js +78 -66
- package/es-modules/Accessibility/HighContrastTheme.js +10 -0
- package/es-modules/Accessibility/KeyboardNavigation.js +144 -70
- package/es-modules/Accessibility/KeyboardNavigationHandler.js +71 -44
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +11 -1
- package/es-modules/Accessibility/Options/LangOptions.js +1 -2
- package/es-modules/Accessibility/Options/Options.js +32 -17
- package/es-modules/Accessibility/ProxyElement.js +212 -0
- package/es-modules/Accessibility/ProxyProvider.js +305 -0
- package/es-modules/Accessibility/Utils/Announcer.js +15 -8
- package/es-modules/Accessibility/Utils/ChartUtilities.js +41 -16
- package/es-modules/Accessibility/Utils/DOMElementProvider.js +27 -15
- package/es-modules/Accessibility/Utils/EventProvider.js +27 -17
- package/es-modules/Accessibility/Utils/HTMLUtilities.js +125 -30
- package/es-modules/Core/Axis/Axis.js +37 -30
- package/es-modules/Core/Axis/AxisDefaults.js +35 -24
- package/es-modules/Core/Axis/Color/ColorAxisComposition.js +54 -4
- package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +5 -5
- package/es-modules/Core/Axis/OrdinalAxis.js +8 -12
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +4 -5
- package/es-modules/Core/Axis/ScrollbarAxis.js +10 -3
- package/es-modules/Core/Axis/TreeGridAxis.js +2 -2
- package/es-modules/Core/Axis/TreeGridTick.js +1 -2
- package/es-modules/Core/Chart/Chart.js +2 -3
- package/es-modules/Core/Chart/ChartDefaults.js +3 -4
- package/es-modules/Core/Chart/ChartNavigationComposition.js +92 -0
- package/es-modules/Core/Chart/MapChart.js +10 -22
- package/es-modules/Core/Chart/StockChart.js +3 -293
- package/es-modules/Core/Color/Palettes.js +22 -0
- package/es-modules/Core/DefaultOptions.js +19 -17
- package/es-modules/Core/Foundation.js +39 -31
- package/es-modules/Core/Globals.js +1 -1
- package/es-modules/Core/HttpUtilities.js +3 -3
- package/es-modules/Core/Legend/Legend.js +7 -3
- package/es-modules/Core/Navigator.js +7 -8
- package/es-modules/Core/Pointer.js +39 -36
- package/es-modules/Core/Renderer/HTML/AST.js +2 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +23 -18
- package/es-modules/Core/Renderer/SVG/SVGElement.js +3 -4
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +21 -18
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +3 -3
- package/es-modules/Core/ScrollbarDefaults.js +10 -9
- package/es-modules/Core/Series/DataLabel.js +2 -3
- package/es-modules/Core/Series/Point.js +5 -3
- package/es-modules/Core/Series/Series.js +153 -162
- package/es-modules/Core/Series/SeriesDefaults.js +3 -4
- package/es-modules/Core/Series/SeriesRegistry.js +1 -2
- package/es-modules/Core/Tooltip.js +44 -17
- package/es-modules/Core/Utilities.js +15 -7
- package/es-modules/Data/DataConverter.js +489 -0
- package/es-modules/Data/DataPromise.js +252 -0
- package/es-modules/Data/DataSeriesConverter.js +203 -0
- package/es-modules/Data/DataTable.js +1204 -0
- package/es-modules/Data/Modifiers/ChainModifier.js +299 -0
- package/es-modules/Data/Modifiers/DataModifier.js +303 -0
- package/es-modules/Data/Modifiers/GroupModifier.js +144 -0
- package/es-modules/Data/Modifiers/InvertModifier.js +254 -0
- package/es-modules/Data/Modifiers/RangeModifier.js +143 -0
- package/es-modules/Data/Modifiers/SeriesPointsModifier.js +110 -0
- package/es-modules/Data/Modifiers/SortModifier.js +249 -0
- package/es-modules/Data/Parsers/CSVParser.js +399 -0
- package/es-modules/Data/Parsers/DataParser.js +101 -0
- package/es-modules/Data/Parsers/GoogleSheetsParser.js +220 -0
- package/es-modules/Data/Parsers/HTMLTableParser.js +213 -0
- package/es-modules/Data/Stores/CSVStore.js +317 -0
- package/es-modules/Data/Stores/DataStore.js +276 -0
- package/es-modules/Data/Stores/GoogleSheetsStore.js +167 -0
- package/es-modules/Data/Stores/HTMLTableStore.js +351 -0
- package/es-modules/Extensions/Annotations/Annotations.js +61 -11
- package/es-modules/Extensions/Annotations/ControlPoint.js +1 -1
- package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +199 -0
- package/es-modules/Extensions/Annotations/Mixins/ControllableMixin.js +7 -1
- package/es-modules/Extensions/Annotations/NavigationBindings.js +68 -19
- package/es-modules/Extensions/Annotations/Popup.js +479 -141
- package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +51 -2
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +1 -1
- package/es-modules/Extensions/Annotations/Types/Fibonacci.js +2 -3
- package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +219 -0
- package/es-modules/Extensions/Annotations/Types/InfinityLine.js +1 -1
- package/es-modules/Extensions/Annotations/Types/Measure.js +14 -8
- package/es-modules/Extensions/Annotations/Types/Pitchfork.js +5 -5
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +207 -0
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +3 -5
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +1 -1
- package/es-modules/Extensions/Boost/BoostOverrides.js +3 -1
- package/es-modules/Extensions/Boost/WGLShader.js +4 -3
- package/es-modules/Extensions/BoostCanvas.js +1 -2
- package/es-modules/Extensions/CurrentDateIndication.js +2 -3
- package/es-modules/Extensions/DataGrouping.js +31 -18
- package/es-modules/Extensions/DownloadURL.js +2 -2
- package/es-modules/Extensions/DragPanes.js +1 -2
- package/es-modules/Extensions/Drilldown.js +2 -3
- package/es-modules/Extensions/Exporting/Exporting.js +8 -7
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +8 -15
- package/es-modules/Extensions/GeoJSON.js +39 -63
- package/es-modules/Extensions/MarkerClusters.js +115 -97
- package/es-modules/Extensions/NoDataToDisplay.js +1 -2
- package/es-modules/Extensions/OfflineExporting/OfflineExporting.js +9 -8
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
- package/es-modules/Extensions/Oldie/Oldie.js +2 -3
- package/es-modules/Extensions/Pane.js +5 -6
- package/es-modules/Extensions/RangeSelector.js +3 -4
- package/es-modules/Extensions/Sonification/ChartSonify.js +247 -637
- package/es-modules/Extensions/Sonification/Earcon.js +136 -102
- package/es-modules/Extensions/Sonification/Instrument.js +496 -426
- package/es-modules/Extensions/Sonification/MusicalFrequencies.js +10 -0
- package/es-modules/Extensions/Sonification/Options.js +10 -0
- package/es-modules/Extensions/Sonification/PointSonify.js +203 -152
- package/es-modules/Extensions/Sonification/SeriesSonify.js +459 -0
- package/es-modules/Extensions/Sonification/SignalHandler.js +124 -0
- package/es-modules/Extensions/Sonification/Sonification.js +26 -52
- package/es-modules/Extensions/Sonification/{Utilities.js → SonificationUtilities.js} +62 -84
- package/es-modules/Extensions/Sonification/Timeline.js +255 -567
- package/es-modules/Extensions/Sonification/TimelineEvent.js +158 -0
- package/es-modules/Extensions/Sonification/TimelinePath.js +311 -0
- package/es-modules/Maps/MapNavigation.js +27 -64
- package/es-modules/Maps/MapNavigationOptionsDefault.js +3 -0
- package/es-modules/Maps/MapPointer.js +7 -5
- package/es-modules/Maps/MapView.js +450 -0
- package/es-modules/Maps/MapViewOptionsDefault.js +95 -0
- package/es-modules/Maps/Projection.js +433 -0
- package/es-modules/Maps/ProjectionDefinition.js +9 -0
- package/es-modules/Maps/Projections/EqualEarth.js +42 -0
- package/es-modules/Maps/Projections/Miller.js +17 -0
- package/es-modules/Maps/Projections/Orthographic.js +26 -0
- package/es-modules/Maps/Projections/ProjectionRegistry.js +17 -0
- package/es-modules/Maps/Projections/WebMercator.js +25 -0
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +4 -5
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +2 -8
- package/es-modules/Series/BoxPlot/BoxPlotSeries.js +1 -2
- package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -2
- package/es-modules/Series/Bubble/BubbleLegendItem.js +3 -3
- package/es-modules/Series/Bubble/BubblePoint.js +5 -0
- package/es-modules/Series/Bubble/BubbleSeries.js +90 -50
- package/es-modules/Series/Candlestick/CandlestickSeries.js +10 -18
- package/es-modules/{Mixins/CenteredSeries.js → Series/CenteredUtilities.js} +45 -23
- package/es-modules/Series/ColorMapComposition.js +109 -0
- package/es-modules/Series/Column/ColumnDataLabel.js +5 -5
- package/es-modules/Series/Column/ColumnSeries.js +3 -4
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +6 -6
- package/es-modules/Series/DataModifyComposition.js +539 -0
- package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +2 -6
- package/es-modules/Series/DerivedComposition.js +137 -0
- package/es-modules/Series/DrawPointComposition.js +111 -0
- package/es-modules/Series/Dumbbell/DumbbellSeries.js +2 -3
- package/es-modules/Series/ErrorBar/ErrorBarSeries.js +1 -2
- package/es-modules/Series/Flags/FlagsSeries.js +18 -25
- package/es-modules/Series/Funnel/FunnelSeries.js +6 -5
- package/es-modules/Series/Gantt/GanttSeries.js +0 -2
- package/es-modules/Series/Gauge/GaugePoint.js +1 -1
- package/es-modules/Series/Gauge/GaugeSeries.js +7 -7
- package/es-modules/Series/HLC/HLCPoint.js +55 -0
- package/es-modules/Series/HLC/HLCSeries.js +383 -0
- package/es-modules/Series/Heatmap/HeatmapPoint.js +3 -4
- package/es-modules/Series/Heatmap/HeatmapSeries.js +19 -6
- package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +2 -3
- package/es-modules/Series/Histogram/HistogramSeries.js +3 -7
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +9 -10
- package/es-modules/Series/Line/LineSeries.js +1 -2
- package/es-modules/Series/Map/MapPoint.js +23 -16
- package/es-modules/Series/Map/MapSeries.js +268 -309
- package/es-modules/Series/MapBubble/MapBubblePoint.js +0 -3
- package/es-modules/Series/MapBubble/MapBubbleSeries.js +10 -1
- package/es-modules/Series/MapPoint/MapPointPoint.js +5 -1
- package/es-modules/Series/MapPoint/MapPointSeries.js +87 -4
- package/es-modules/Series/Networkgraph/Networkgraph.js +5 -5
- package/es-modules/{Mixins/Nodes.js → Series/NodesComposition.js} +76 -29
- package/es-modules/Series/OHLC/OHLCPoint.js +2 -6
- package/es-modules/Series/OHLC/OHLCSeries.js +55 -183
- package/es-modules/{Mixins/OnSeries.js → Series/OnSeriesComposition.js} +53 -21
- package/es-modules/Series/Organization/OrganizationSeries.js +2 -3
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +46 -6
- package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -7
- package/es-modules/Series/Pie/PieDataLabel.js +1 -2
- package/es-modules/Series/Pie/PieSeries.js +6 -7
- package/es-modules/Series/Sankey/SankeyPoint.js +0 -4
- package/es-modules/Series/Sankey/SankeySeries.js +89 -20
- package/es-modules/Series/Sunburst/SunburstPoint.js +2 -3
- package/es-modules/Series/Sunburst/SunburstSeries.js +4 -4
- package/es-modules/Series/Tilemap/TilemapPoint.js +2 -3
- package/es-modules/Series/Timeline/TimelineSeries.js +3 -4
- package/es-modules/{Mixins/TreeSeries.js → Series/TreeUtilities.js} +86 -76
- package/es-modules/Series/Treemap/TreemapPoint.js +2 -2
- package/es-modules/Series/Treemap/TreemapSeries.js +8 -8
- package/es-modules/Series/Venn/VennPoint.js +16 -7
- package/es-modules/Series/Venn/VennSeries.js +5 -8
- package/es-modules/Series/Venn/VennUtils.js +550 -439
- package/es-modules/Series/Waterfall/WaterfallSeries.js +2 -3
- package/es-modules/Series/Windbarb/WindbarbSeries.js +23 -24
- package/es-modules/Series/Wordcloud/WordcloudPoint.js +8 -6
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +24 -20
- package/es-modules/Series/Wordcloud/WordcloudUtils.js +673 -484
- package/es-modules/Series/XRange/XRangePoint.js +1 -0
- package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +3 -6
- package/es-modules/Stock/Indicators/AO/AOIndicator.js +2 -3
- package/es-modules/Stock/Indicators/APO/APOIndicator.js +14 -20
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +3 -6
- package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +11 -13
- package/es-modules/Stock/Indicators/ArrayUtilities.js +47 -0
- package/es-modules/Stock/Indicators/BB/BBIndicator.js +27 -11
- package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +6 -12
- package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +1 -11
- package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +19 -11
- package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +17 -11
- package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +1 -3
- package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +11 -9
- package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +8 -16
- package/es-modules/Stock/Indicators/LinearRegression/LinearRegression.js +2 -2
- package/es-modules/Stock/Indicators/LinearRegressionAngle/LinearRegressionAngle.js +2 -2
- package/es-modules/Stock/Indicators/LinearRegressionIntercept/LinearRegressionIntercept.js +2 -2
- package/es-modules/Stock/Indicators/LinearRegressionSlopes/LinearRegressionSlopes.js +2 -2
- package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +1 -2
- package/es-modules/{Mixins/MultipleLines.js → Stock/Indicators/MultipleLinesComposition.js} +136 -87
- package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +1 -3
- package/es-modules/Stock/Indicators/PC/PCIndicator.js +14 -13
- package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +1 -11
- package/es-modules/Stock/Indicators/SMA/SMAComposition.js +0 -26
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +9 -32
- package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +0 -8
- package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +15 -8
- package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +4 -6
- package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +26 -11
- package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +6 -12
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +20 -3
- package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +2 -3
- package/es-modules/Stock/StockToolsBindings.js +144 -42
- package/es-modules/Stock/StockToolsGui.js +405 -11
- package/es-modules/masters/highcharts-3d.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 +1 -1
- 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 +1 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
- package/es-modules/masters/indicators/ao.src.js +1 -1
- package/es-modules/masters/indicators/apo.src.js +1 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
- package/es-modules/masters/indicators/aroon.src.js +1 -1
- package/es-modules/masters/indicators/atr.src.js +1 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
- package/es-modules/masters/indicators/cci.src.js +1 -1
- package/es-modules/masters/indicators/chaikin.src.js +1 -1
- package/es-modules/masters/indicators/cmf.src.js +1 -1
- package/es-modules/masters/indicators/cmo.src.js +1 -1
- package/es-modules/masters/indicators/dema.src.js +1 -1
- package/es-modules/masters/indicators/disparity-index.src.js +1 -1
- package/es-modules/masters/indicators/dmi.src.js +1 -1
- package/es-modules/masters/indicators/dpo.src.js +1 -1
- package/es-modules/masters/indicators/ema.src.js +4 -10
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/es-modules/masters/indicators/indicators-all.src.js +2 -2
- package/es-modules/masters/indicators/indicators.src.js +2 -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 +16 -2
- package/es-modules/masters/modules/annotations-advanced.src.js +3 -1
- package/es-modules/masters/modules/annotations.src.js +1 -1
- package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
- package/es-modules/masters/modules/boost-canvas.src.js +1 -1
- package/es-modules/masters/modules/boost.src.js +1 -1
- package/es-modules/masters/modules/broken-axis.src.js +1 -1
- package/es-modules/masters/modules/bullet.src.js +1 -1
- package/es-modules/masters/modules/coloraxis.src.js +1 -1
- package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
- package/es-modules/masters/modules/cylinder.src.js +1 -1
- package/es-modules/masters/modules/data.src.js +6 -3
- 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/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/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +1 -2
- 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 -3
- package/es-modules/masters/modules/marker-clusters.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/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
- package/es-modules/masters/modules/oldie.src.js +1 -1
- package/es-modules/masters/modules/organization.src.js +1 -1
- package/es-modules/masters/modules/overlapping-datalabels.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/price-indicator.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.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/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/sonification.src.js +33 -2
- 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 +4 -1
- package/es-modules/masters/modules/streamgraph.src.js +1 -1
- package/es-modules/masters/modules/sunburst.src.js +1 -1
- package/es-modules/masters/modules/tilemap.src.js +1 -1
- package/es-modules/masters/modules/timeline.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/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/dark-blue.src.js +1 -1
- package/es-modules/masters/themes/dark-green.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/gray.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/grid.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.src.js +1 -1
- package/es-modules/masters/themes/skies.src.js +1 -1
- package/es-modules/masters/themes/sunset.src.js +1 -1
- package/highcharts-3d.js +1 -1
- package/highcharts-3d.src.js +1 -1
- package/highcharts-gantt.js +801 -804
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.js +775 -739
- package/highcharts-more.js +194 -193
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.js +207 -119
- package/highcharts.d.ts +9670 -4217
- package/highcharts.js +585 -588
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +9670 -4217
- package/highcharts.src.js +608 -587
- package/highmaps.js +726 -708
- package/highmaps.js.map +1 -1
- package/highmaps.src.js +2708 -1587
- package/highstock.js +788 -783
- package/highstock.js.map +1 -1
- package/highstock.src.js +1896 -1267
- package/indicators/acceleration-bands.js +10 -9
- package/indicators/acceleration-bands.js.map +1 -1
- package/indicators/acceleration-bands.src.js +156 -112
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.src.js +1 -1
- package/indicators/ao.js +6 -6
- package/indicators/ao.js.map +1 -1
- package/indicators/ao.src.js +4 -4
- package/indicators/apo.js +5 -6
- package/indicators/apo.js.map +1 -1
- package/indicators/apo.src.js +16 -84
- package/indicators/aroon-oscillator.js +9 -9
- package/indicators/aroon-oscillator.js.map +1 -1
- package/indicators/aroon-oscillator.src.js +160 -177
- package/indicators/aroon.js +9 -9
- package/indicators/aroon.js.map +1 -1
- package/indicators/aroon.src.js +156 -112
- package/indicators/atr.js +1 -1
- package/indicators/atr.src.js +1 -1
- package/indicators/bollinger-bands.js +10 -9
- package/indicators/bollinger-bands.js.map +1 -1
- package/indicators/bollinger-bands.src.js +180 -117
- package/indicators/cci.js +1 -1
- package/indicators/cci.src.js +1 -1
- package/indicators/chaikin.js +8 -9
- package/indicators/chaikin.js.map +1 -1
- package/indicators/chaikin.src.js +8 -76
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.src.js +1 -1
- package/indicators/cmo.js +1 -1
- package/indicators/cmo.src.js +1 -1
- package/indicators/dema.js +5 -6
- package/indicators/dema.js.map +1 -1
- package/indicators/dema.src.js +3 -75
- package/indicators/disparity-index.js +6 -7
- package/indicators/disparity-index.js.map +1 -1
- package/indicators/disparity-index.src.js +19 -74
- package/indicators/dmi.js +11 -11
- package/indicators/dmi.js.map +1 -1
- package/indicators/dmi.src.js +173 -116
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.src.js +1 -1
- package/indicators/ema.js +1 -13
- package/indicators/ema.js.map +1 -1
- package/indicators/ema.src.js +7 -188
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/indicators/indicators-all.js +197 -203
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.js +649 -720
- package/indicators/indicators.js +12 -12
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +188 -124
- package/indicators/keltner-channels.js +10 -10
- package/indicators/keltner-channels.js.map +1 -1
- package/indicators/keltner-channels.src.js +164 -118
- package/indicators/klinger.js +12 -13
- package/indicators/klinger.js.map +1 -1
- package/indicators/klinger.src.js +161 -184
- package/indicators/macd.js +2 -2
- package/indicators/macd.js.map +1 -1
- package/indicators/macd.src.js +2 -3
- package/indicators/mfi.js +1 -1
- package/indicators/mfi.src.js +1 -1
- package/indicators/momentum.js +1 -1
- package/indicators/momentum.src.js +1 -1
- package/indicators/natr.js +3 -3
- package/indicators/natr.js.map +1 -1
- package/indicators/natr.src.js +2 -4
- package/indicators/obv.js +1 -1
- package/indicators/obv.src.js +1 -1
- package/indicators/pivot-points.js +1 -1
- package/indicators/pivot-points.src.js +1 -1
- package/indicators/ppo.js +5 -6
- package/indicators/ppo.js.map +1 -1
- package/indicators/ppo.src.js +3 -75
- package/indicators/price-channel.js +9 -9
- package/indicators/price-channel.js.map +1 -1
- package/indicators/price-channel.src.js +207 -168
- package/indicators/price-envelopes.js +1 -1
- package/indicators/price-envelopes.src.js +1 -1
- package/indicators/psar.js +1 -1
- package/indicators/psar.src.js +1 -1
- package/indicators/regressions.js +1 -1
- package/indicators/regressions.src.js +9 -9
- package/indicators/roc.js +1 -1
- package/indicators/roc.src.js +1 -1
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.src.js +1 -1
- package/indicators/slow-stochastic.js +5 -6
- package/indicators/slow-stochastic.js.map +1 -1
- package/indicators/slow-stochastic.src.js +2 -72
- package/indicators/stochastic.js +10 -10
- package/indicators/stochastic.js.map +1 -1
- package/indicators/stochastic.src.js +209 -164
- package/indicators/supertrend.js +10 -10
- package/indicators/supertrend.js.map +1 -1
- package/indicators/supertrend.src.js +6 -7
- package/indicators/tema.js +6 -7
- package/indicators/tema.js.map +1 -1
- package/indicators/tema.src.js +28 -75
- package/indicators/trendline.js +1 -1
- package/indicators/trendline.src.js +1 -1
- package/indicators/trix.js +4 -5
- package/indicators/trix.js.map +1 -1
- package/indicators/trix.src.js +8 -76
- package/indicators/volume-by-price.js +16 -16
- package/indicators/volume-by-price.js.map +1 -1
- package/indicators/volume-by-price.src.js +21 -3
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.src.js +1 -1
- package/indicators/williams-r.js +5 -6
- package/indicators/williams-r.js.map +1 -1
- package/indicators/williams-r.src.js +41 -51
- package/indicators/wma.js +1 -1
- package/indicators/wma.src.js +1 -1
- package/indicators/zigzag.js +1 -1
- package/indicators/zigzag.src.js +1 -1
- package/modules/accessibility.d.ts +5 -0
- package/modules/accessibility.js +234 -216
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.d.ts +5 -0
- package/modules/accessibility.src.js +9709 -8608
- package/modules/annotations-advanced.d.ts +30 -0
- package/modules/annotations-advanced.js +191 -165
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.d.ts +30 -0
- package/modules/annotations-advanced.src.js +1578 -320
- package/modules/annotations.js +121 -107
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.js +958 -229
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.js +15 -15
- package/modules/boost-canvas.js.map +1 -1
- package/modules/boost-canvas.src.js +3 -3
- package/modules/boost.js +79 -79
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.js +10 -9
- package/modules/broken-axis.js +1 -1
- package/modules/broken-axis.src.js +1 -1
- package/modules/bullet.js +1 -1
- package/modules/bullet.src.js +1 -1
- package/modules/coloraxis.js +24 -24
- package/modules/coloraxis.js.map +1 -1
- package/modules/coloraxis.src.js +69 -98
- package/modules/current-date-indicator.js +4 -4
- package/modules/current-date-indicator.js.map +1 -1
- package/modules/current-date-indicator.src.js +4 -4
- package/modules/cylinder.js +1 -1
- package/modules/cylinder.src.js +1 -1
- package/modules/data.js +19 -19
- package/modules/data.js.map +1 -1
- package/modules/data.src.js +9 -6
- package/modules/datagrouping.js +20 -20
- package/modules/datagrouping.js.map +1 -1
- package/modules/datagrouping.src.js +33 -19
- package/modules/debugger.js +1 -1
- package/modules/debugger.src.js +1 -1
- package/modules/dependency-wheel.js +11 -11
- package/modules/dependency-wheel.js.map +1 -1
- package/modules/dependency-wheel.src.js +4 -7
- package/modules/dotplot.js +1 -1
- package/modules/dotplot.src.js +1 -1
- package/modules/drag-panes.js +8 -8
- package/modules/drag-panes.js.map +1 -1
- package/modules/drag-panes.src.js +3 -3
- package/modules/draggable-points.js +1 -1
- package/modules/draggable-points.src.js +1 -1
- package/modules/drilldown.js +24 -24
- package/modules/drilldown.js.map +1 -1
- package/modules/drilldown.src.js +4 -4
- package/modules/dumbbell.js +17 -17
- package/modules/dumbbell.js.map +1 -1
- package/modules/dumbbell.src.js +4 -4
- package/modules/export-data.js +1 -1
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.js +3 -3
- package/modules/exporting.js +39 -38
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.js +98 -67
- package/modules/full-screen.js +1 -1
- package/modules/full-screen.src.js +1 -1
- package/modules/funnel.js +12 -12
- package/modules/funnel.js.map +1 -1
- package/modules/funnel.src.js +9 -6
- package/modules/funnel3d.js +1 -1
- package/modules/funnel3d.src.js +1 -1
- package/modules/gantt.js +217 -218
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +167 -152
- package/modules/grid-axis.js +1 -1
- package/modules/grid-axis.src.js +1 -1
- package/modules/heatmap.js +39 -39
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +177 -162
- package/modules/heikinashi.js +1 -1
- package/modules/heikinashi.src.js +4 -4
- package/modules/histogram-bellcurve.js +13 -13
- package/modules/histogram-bellcurve.js.map +1 -1
- package/modules/histogram-bellcurve.src.js +91 -86
- package/modules/hollowcandlestick.js +9 -9
- package/modules/hollowcandlestick.js.map +1 -1
- package/modules/hollowcandlestick.src.js +11 -11
- package/modules/item-series.js +1 -1
- package/modules/item-series.src.js +1 -1
- package/modules/lollipop.js +1 -1
- package/modules/lollipop.src.js +1 -1
- package/modules/map.d.ts +136 -14
- package/modules/map.js +142 -122
- package/modules/map.js.map +1 -1
- package/modules/map.src.d.ts +136 -14
- package/modules/map.src.js +2129 -1029
- package/modules/marker-clusters.js +36 -36
- package/modules/marker-clusters.js.map +1 -1
- package/modules/marker-clusters.src.js +173 -142
- package/modules/networkgraph.d.ts +12 -1
- package/modules/networkgraph.js +49 -49
- package/modules/networkgraph.js.map +1 -1
- package/modules/networkgraph.src.d.ts +12 -1
- package/modules/networkgraph.src.js +91 -43
- package/modules/no-data-to-display.js +5 -5
- package/modules/no-data-to-display.js.map +1 -1
- package/modules/no-data-to-display.src.js +3 -3
- package/modules/offline-exporting.js +17 -17
- package/modules/offline-exporting.js.map +1 -1
- package/modules/offline-exporting.src.js +13 -13
- package/modules/oldie-polyfills.js +1 -1
- package/modules/oldie-polyfills.src.js +1 -1
- package/modules/oldie.js +26 -26
- package/modules/oldie.js.map +1 -1
- package/modules/oldie.src.js +4 -4
- package/modules/organization.js +13 -13
- package/modules/organization.js.map +1 -1
- package/modules/organization.src.js +4 -4
- package/modules/overlapping-datalabels.js +1 -1
- package/modules/overlapping-datalabels.src.js +1 -1
- package/modules/parallel-coordinates.js +1 -1
- package/modules/parallel-coordinates.src.js +1 -1
- package/modules/pareto.js +7 -7
- package/modules/pareto.js.map +1 -1
- package/modules/pareto.src.js +89 -78
- package/modules/pathfinder.js +1 -1
- package/modules/pathfinder.src.js +1 -1
- package/modules/pattern-fill.js +1 -1
- package/modules/pattern-fill.src.js +1 -1
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.src.js +1 -1
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +1 -1
- package/modules/sankey.d.ts +12 -1
- package/modules/sankey.js +29 -29
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.d.ts +12 -1
- package/modules/sankey.src.js +300 -176
- package/modules/series-label.js +1 -1
- package/modules/series-label.src.js +1 -1
- package/modules/solid-gauge.js +1 -1
- package/modules/solid-gauge.src.js +1 -1
- package/modules/sonification.js +59 -55
- package/modules/sonification.js.map +1 -1
- package/modules/sonification.src.js +3034 -2553
- package/modules/static-scale.js +1 -1
- package/modules/static-scale.src.js +1 -1
- package/modules/stock-tools.js +177 -164
- package/modules/stock-tools.js.map +1 -1
- package/modules/stock-tools.src.js +1001 -131
- package/modules/stock.d.ts +39 -6
- package/modules/stock.js +204 -196
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.d.ts +39 -6
- package/modules/stock.src.js +1689 -1081
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +61 -60
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +329 -266
- package/modules/tilemap.js +17 -17
- package/modules/tilemap.js.map +1 -1
- package/modules/tilemap.src.js +3 -4
- package/modules/timeline.js +18 -18
- package/modules/timeline.js.map +1 -1
- package/modules/timeline.src.js +5 -5
- package/modules/treegrid.js +56 -57
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +126 -120
- package/modules/treemap.js +41 -41
- package/modules/treemap.js.map +1 -1
- package/modules/treemap.src.js +319 -254
- package/modules/variable-pie.js +1 -1
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.js +1 -1
- package/modules/variwide.src.js +1 -1
- package/modules/vector.js +1 -1
- package/modules/vector.src.js +1 -1
- package/modules/venn.js +31 -31
- package/modules/venn.js.map +1 -1
- package/modules/venn.src.js +731 -721
- package/modules/windbarb.js +15 -15
- package/modules/windbarb.js.map +1 -1
- package/modules/windbarb.src.js +90 -62
- package/modules/wordcloud.js +23 -24
- package/modules/wordcloud.js.map +1 -1
- package/modules/wordcloud.src.js +897 -949
- package/modules/xrange.js +2 -2
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +2 -1
- package/package.json +1 -1
- package/themes/avocado.js +1 -1
- package/themes/avocado.src.js +1 -1
- package/themes/dark-blue.js +1 -1
- package/themes/dark-blue.src.js +1 -1
- package/themes/dark-green.js +1 -1
- package/themes/dark-green.src.js +1 -1
- package/themes/dark-unica.js +1 -1
- package/themes/dark-unica.src.js +1 -1
- package/themes/gray.js +1 -1
- package/themes/gray.src.js +1 -1
- package/themes/grid-light.js +1 -1
- package/themes/grid-light.src.js +1 -1
- package/themes/grid.js +1 -1
- package/themes/grid.src.js +1 -1
- package/themes/high-contrast-dark.js +1 -1
- package/themes/high-contrast-dark.src.js +1 -1
- package/themes/high-contrast-light.js +1 -1
- package/themes/high-contrast-light.src.js +1 -1
- package/themes/sand-signika.js +1 -1
- package/themes/sand-signika.src.js +1 -1
- package/themes/skies.js +1 -1
- package/themes/skies.src.js +1 -1
- package/themes/sunset.js +1 -1
- package/themes/sunset.src.js +1 -1
- package/es-modules/Core/Axis/MapAxis.js +0 -157
- package/es-modules/Core/Color/Palette.js +0 -82
- package/es-modules/Extensions/Sonification/InstrumentDefinitions.js +0 -32
- package/es-modules/Mixins/ColorMapSeries.js +0 -82
- package/es-modules/Mixins/ColorSeries.js +0 -77
- package/es-modules/Mixins/DerivedSeries.js +0 -118
- package/es-modules/Mixins/DrawPoint.js +0 -81
- package/es-modules/Mixins/IndicatorRequired.js +0 -56
- package/es-modules/Mixins/Navigation.js +0 -54
- package/es-modules/Mixins/NelderMead.js +0 -132
- package/es-modules/Mixins/Polygon.js +0 -259
- package/es-modules/Mixins/ReduceArray.js +0 -54
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/* *
|
|
2
|
+
*
|
|
3
|
+
* (c) 2009-2021 Øystein Moseng
|
|
4
|
+
*
|
|
5
|
+
* TimelineEvent class definition.
|
|
6
|
+
*
|
|
7
|
+
* License: www.highcharts.com/license
|
|
8
|
+
*
|
|
9
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
10
|
+
*
|
|
11
|
+
* */
|
|
12
|
+
'use strict';
|
|
13
|
+
import U from '../../Core/Utilities.js';
|
|
14
|
+
var merge = U.merge, uniqueKey = U.uniqueKey;
|
|
15
|
+
/* eslint-disable no-invalid-this, valid-jsdoc */
|
|
16
|
+
/* *
|
|
17
|
+
*
|
|
18
|
+
* Class
|
|
19
|
+
*
|
|
20
|
+
* */
|
|
21
|
+
/**
|
|
22
|
+
* The TimelineEvent class. Represents a sound event on a timeline.
|
|
23
|
+
*
|
|
24
|
+
* @requires module:modules/sonification
|
|
25
|
+
*
|
|
26
|
+
* @private
|
|
27
|
+
* @class
|
|
28
|
+
* @name Highcharts.TimelineEvent
|
|
29
|
+
*
|
|
30
|
+
* @param {Highcharts.TimelineEventOptionsObject} options
|
|
31
|
+
* Options for the TimelineEvent.
|
|
32
|
+
*/
|
|
33
|
+
var TimelineEvent = /** @class */ (function () {
|
|
34
|
+
/* *
|
|
35
|
+
*
|
|
36
|
+
* Constructor
|
|
37
|
+
*
|
|
38
|
+
* */
|
|
39
|
+
function TimelineEvent(options) {
|
|
40
|
+
/* *
|
|
41
|
+
*
|
|
42
|
+
* Properties
|
|
43
|
+
*
|
|
44
|
+
* */
|
|
45
|
+
this.id = void 0;
|
|
46
|
+
this.options = void 0;
|
|
47
|
+
this.time = void 0;
|
|
48
|
+
this.init(options);
|
|
49
|
+
}
|
|
50
|
+
/* *
|
|
51
|
+
*
|
|
52
|
+
* Functions
|
|
53
|
+
*
|
|
54
|
+
* */
|
|
55
|
+
TimelineEvent.prototype.init = function (options) {
|
|
56
|
+
this.options = options;
|
|
57
|
+
this.time = options.time || 0;
|
|
58
|
+
this.id = this.options.id = options.id || uniqueKey();
|
|
59
|
+
};
|
|
60
|
+
/**
|
|
61
|
+
* Play the event. Does not take the TimelineEvent.time option into account,
|
|
62
|
+
* and plays the event immediately.
|
|
63
|
+
*
|
|
64
|
+
* @function Highcharts.TimelineEvent#play
|
|
65
|
+
*
|
|
66
|
+
* @param {Highcharts.TimelineEventOptionsObject} [options]
|
|
67
|
+
* Options to pass in to the eventObject when playing it.
|
|
68
|
+
*
|
|
69
|
+
* @return {void}
|
|
70
|
+
*/
|
|
71
|
+
TimelineEvent.prototype.play = function (options) {
|
|
72
|
+
var eventObject = this.options.eventObject, masterOnEnd = this.options.onEnd, playOnEnd = options && options.onEnd, playOptionsOnEnd = this.options.playOptions &&
|
|
73
|
+
this.options.playOptions.onEnd, playOptions = merge(this.options.playOptions, options);
|
|
74
|
+
if (eventObject && eventObject.sonify) {
|
|
75
|
+
// If we have multiple onEnds defined, use all
|
|
76
|
+
playOptions.onEnd = masterOnEnd || playOnEnd || playOptionsOnEnd ?
|
|
77
|
+
function () {
|
|
78
|
+
var args = arguments;
|
|
79
|
+
[masterOnEnd, playOnEnd, playOptionsOnEnd].forEach(function (onEnd) {
|
|
80
|
+
if (onEnd) {
|
|
81
|
+
onEnd.apply(this, args);
|
|
82
|
+
}
|
|
83
|
+
});
|
|
84
|
+
} : void 0;
|
|
85
|
+
eventObject.sonify(playOptions);
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
if (playOnEnd) {
|
|
89
|
+
playOnEnd();
|
|
90
|
+
}
|
|
91
|
+
if (masterOnEnd) {
|
|
92
|
+
masterOnEnd();
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
};
|
|
96
|
+
/**
|
|
97
|
+
* Cancel the sonification of this event. Does nothing if the event is not
|
|
98
|
+
* currently sonifying.
|
|
99
|
+
*
|
|
100
|
+
* @function Highcharts.TimelineEvent#cancel
|
|
101
|
+
*
|
|
102
|
+
* @param {boolean} [fadeOut=false]
|
|
103
|
+
* Whether or not to fade out as we stop. If false, the event is
|
|
104
|
+
* cancelled synchronously.
|
|
105
|
+
*/
|
|
106
|
+
TimelineEvent.prototype.cancel = function (fadeOut) {
|
|
107
|
+
var eventObject = this.options.eventObject;
|
|
108
|
+
if (eventObject) {
|
|
109
|
+
eventObject.cancelSonify(fadeOut);
|
|
110
|
+
}
|
|
111
|
+
};
|
|
112
|
+
return TimelineEvent;
|
|
113
|
+
}());
|
|
114
|
+
/* *
|
|
115
|
+
*
|
|
116
|
+
* Default export
|
|
117
|
+
*
|
|
118
|
+
* */
|
|
119
|
+
export default TimelineEvent;
|
|
120
|
+
/* *
|
|
121
|
+
*
|
|
122
|
+
* API Declarations
|
|
123
|
+
*
|
|
124
|
+
* */
|
|
125
|
+
/**
|
|
126
|
+
* A set of options for the TimelineEvent class.
|
|
127
|
+
*
|
|
128
|
+
* @requires module:modules/sonification
|
|
129
|
+
*
|
|
130
|
+
* @private
|
|
131
|
+
* @interface Highcharts.TimelineEventOptionsObject
|
|
132
|
+
*/ /**
|
|
133
|
+
* The object we want to sonify when playing the TimelineEvent. Can be any
|
|
134
|
+
* object that implements the `sonify` and `cancelSonify` functions. If this is
|
|
135
|
+
* not supplied, the TimelineEvent is considered a silent event, and the onEnd
|
|
136
|
+
* event is immediately called.
|
|
137
|
+
* @name Highcharts.TimelineEventOptionsObject#eventObject
|
|
138
|
+
* @type {*}
|
|
139
|
+
*/ /**
|
|
140
|
+
* Options to pass on to the eventObject when playing it.
|
|
141
|
+
* @name Highcharts.TimelineEventOptionsObject#playOptions
|
|
142
|
+
* @type {object|undefined}
|
|
143
|
+
*/ /**
|
|
144
|
+
* The time at which we want this event to play (in milliseconds offset). This
|
|
145
|
+
* is not used for the TimelineEvent.play function, but rather intended as a
|
|
146
|
+
* property to decide when to call TimelineEvent.play. Defaults to 0.
|
|
147
|
+
* @name Highcharts.TimelineEventOptionsObject#time
|
|
148
|
+
* @type {number|undefined}
|
|
149
|
+
*/ /**
|
|
150
|
+
* Unique ID for the event. Generated automatically if not supplied.
|
|
151
|
+
* @name Highcharts.TimelineEventOptionsObject#id
|
|
152
|
+
* @type {string|undefined}
|
|
153
|
+
*/ /**
|
|
154
|
+
* Callback called when the play has finished.
|
|
155
|
+
* @name Highcharts.TimelineEventOptionsObject#onEnd
|
|
156
|
+
* @type {Function|undefined}
|
|
157
|
+
*/
|
|
158
|
+
(''); // detach doclets above
|
|
@@ -0,0 +1,311 @@
|
|
|
1
|
+
/* *
|
|
2
|
+
*
|
|
3
|
+
* (c) 2009-2021 Øystein Moseng
|
|
4
|
+
*
|
|
5
|
+
* TimelineEvent class definition.
|
|
6
|
+
*
|
|
7
|
+
* License: www.highcharts.com/license
|
|
8
|
+
*
|
|
9
|
+
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
10
|
+
*
|
|
11
|
+
* */
|
|
12
|
+
'use strict';
|
|
13
|
+
import TimelineEvent from './TimelineEvent.js';
|
|
14
|
+
import SU from './SonificationUtilities.js';
|
|
15
|
+
import U from '../../Core/Utilities.js';
|
|
16
|
+
var merge = U.merge, uniqueKey = U.uniqueKey;
|
|
17
|
+
/* *
|
|
18
|
+
*
|
|
19
|
+
* Class
|
|
20
|
+
*
|
|
21
|
+
* */
|
|
22
|
+
/* eslint-disable no-invalid-this, valid-jsdoc */
|
|
23
|
+
/**
|
|
24
|
+
* The TimelinePath class. Represents a track on a timeline with a list of
|
|
25
|
+
* sound events to play at certain times relative to each other.
|
|
26
|
+
*
|
|
27
|
+
* @requires module:modules/sonification
|
|
28
|
+
*
|
|
29
|
+
* @private
|
|
30
|
+
* @class
|
|
31
|
+
* @name Highcharts.TimelinePath
|
|
32
|
+
*
|
|
33
|
+
* @param {Highcharts.TimelinePathOptionsObject} options
|
|
34
|
+
* Options for the TimelinePath.
|
|
35
|
+
*/
|
|
36
|
+
var TimelinePath = /** @class */ (function () {
|
|
37
|
+
/* *
|
|
38
|
+
*
|
|
39
|
+
* Constructors
|
|
40
|
+
*
|
|
41
|
+
* */
|
|
42
|
+
function TimelinePath(options) {
|
|
43
|
+
/* *
|
|
44
|
+
*
|
|
45
|
+
* Properties
|
|
46
|
+
*
|
|
47
|
+
* */
|
|
48
|
+
this.cursor = void 0;
|
|
49
|
+
this.events = void 0;
|
|
50
|
+
this.eventIdMap = void 0;
|
|
51
|
+
this.eventsPlaying = void 0;
|
|
52
|
+
this.id = void 0;
|
|
53
|
+
this.options = void 0;
|
|
54
|
+
this.signalHandler = void 0;
|
|
55
|
+
this.init(options);
|
|
56
|
+
}
|
|
57
|
+
/* *
|
|
58
|
+
*
|
|
59
|
+
* Functions
|
|
60
|
+
*
|
|
61
|
+
* */
|
|
62
|
+
TimelinePath.prototype.init = function (options) {
|
|
63
|
+
this.options = options;
|
|
64
|
+
this.id = this.options.id = options.id || uniqueKey();
|
|
65
|
+
this.cursor = 0;
|
|
66
|
+
this.eventsPlaying = {};
|
|
67
|
+
// Handle silent wait, otherwise use events from options
|
|
68
|
+
this.events = options.silentWait ?
|
|
69
|
+
[
|
|
70
|
+
new TimelineEvent({ time: 0 }),
|
|
71
|
+
new TimelineEvent({ time: options.silentWait })
|
|
72
|
+
] :
|
|
73
|
+
this.options.events;
|
|
74
|
+
// Reference optionally provided by the user that indicates the intended
|
|
75
|
+
// duration of the path. Unused by TimelinePath itself.
|
|
76
|
+
this.targetDuration = options.targetDuration || options.silentWait;
|
|
77
|
+
// We need to sort our events by time
|
|
78
|
+
this.sortEvents();
|
|
79
|
+
// Get map from event ID to index
|
|
80
|
+
this.updateEventIdMap();
|
|
81
|
+
// Signal events to fire
|
|
82
|
+
this.signalHandler = new SU.SignalHandler(['playOnEnd', 'masterOnEnd', 'onStart', 'onEventStart', 'onEventEnd']);
|
|
83
|
+
this.signalHandler.registerSignalCallbacks(merge(options, { masterOnEnd: options.onEnd }));
|
|
84
|
+
};
|
|
85
|
+
/**
|
|
86
|
+
* Sort the internal event list by time.
|
|
87
|
+
* @private
|
|
88
|
+
*/
|
|
89
|
+
TimelinePath.prototype.sortEvents = function () {
|
|
90
|
+
this.events = this.events.sort(function (a, b) {
|
|
91
|
+
return a.time - b.time;
|
|
92
|
+
});
|
|
93
|
+
};
|
|
94
|
+
/**
|
|
95
|
+
* Update the internal eventId to index map.
|
|
96
|
+
* @private
|
|
97
|
+
*/
|
|
98
|
+
TimelinePath.prototype.updateEventIdMap = function () {
|
|
99
|
+
this.eventIdMap = this.events.reduce(function (acc, cur, i) {
|
|
100
|
+
acc[cur.id] = i;
|
|
101
|
+
return acc;
|
|
102
|
+
}, {});
|
|
103
|
+
};
|
|
104
|
+
/**
|
|
105
|
+
* Add events to the path. Should not be done while the path is playing.
|
|
106
|
+
* The new events are inserted according to their time property.
|
|
107
|
+
* @private
|
|
108
|
+
* @param {Array<Highcharts.TimelineEvent>} newEvents - The new timeline events
|
|
109
|
+
* to add.
|
|
110
|
+
*/
|
|
111
|
+
TimelinePath.prototype.addTimelineEvents = function (newEvents) {
|
|
112
|
+
this.events = this.events.concat(newEvents);
|
|
113
|
+
this.sortEvents(); // Sort events by time
|
|
114
|
+
this.updateEventIdMap(); // Update the event ID to index map
|
|
115
|
+
};
|
|
116
|
+
/**
|
|
117
|
+
* Get the current TimelineEvent under the cursor.
|
|
118
|
+
* @private
|
|
119
|
+
* @return {Highcharts.TimelineEvent} The current timeline event.
|
|
120
|
+
*/
|
|
121
|
+
TimelinePath.prototype.getCursor = function () {
|
|
122
|
+
return this.events[this.cursor];
|
|
123
|
+
};
|
|
124
|
+
/**
|
|
125
|
+
* Set the current TimelineEvent under the cursor.
|
|
126
|
+
* @private
|
|
127
|
+
* @param {string} eventId
|
|
128
|
+
* The ID of the timeline event to set as current.
|
|
129
|
+
* @return {boolean}
|
|
130
|
+
* True if there is an event with this ID in the path. False otherwise.
|
|
131
|
+
*/
|
|
132
|
+
TimelinePath.prototype.setCursor = function (eventId) {
|
|
133
|
+
var ix = this.eventIdMap[eventId];
|
|
134
|
+
if (typeof ix !== 'undefined') {
|
|
135
|
+
this.cursor = ix;
|
|
136
|
+
return true;
|
|
137
|
+
}
|
|
138
|
+
return false;
|
|
139
|
+
};
|
|
140
|
+
/**
|
|
141
|
+
* Play the timeline from the current cursor.
|
|
142
|
+
* @private
|
|
143
|
+
* @param {Function} onEnd
|
|
144
|
+
* Callback to call when play finished. Does not override other onEnd
|
|
145
|
+
* callbacks.
|
|
146
|
+
* @return {void}
|
|
147
|
+
*/
|
|
148
|
+
TimelinePath.prototype.play = function (onEnd) {
|
|
149
|
+
this.pause();
|
|
150
|
+
this.signalHandler.emitSignal('onStart');
|
|
151
|
+
this.signalHandler.clearSignalCallbacks(['playOnEnd']);
|
|
152
|
+
this.signalHandler.registerSignalCallbacks({ playOnEnd: onEnd });
|
|
153
|
+
this.playEvents(1);
|
|
154
|
+
};
|
|
155
|
+
/**
|
|
156
|
+
* Play the timeline backwards from the current cursor.
|
|
157
|
+
* @private
|
|
158
|
+
* @param {Function} onEnd
|
|
159
|
+
* Callback to call when play finished. Does not override other onEnd
|
|
160
|
+
* callbacks.
|
|
161
|
+
* @return {void}
|
|
162
|
+
*/
|
|
163
|
+
TimelinePath.prototype.rewind = function (onEnd) {
|
|
164
|
+
this.pause();
|
|
165
|
+
this.signalHandler.emitSignal('onStart');
|
|
166
|
+
this.signalHandler.clearSignalCallbacks(['playOnEnd']);
|
|
167
|
+
this.signalHandler.registerSignalCallbacks({ playOnEnd: onEnd });
|
|
168
|
+
this.playEvents(-1);
|
|
169
|
+
};
|
|
170
|
+
/**
|
|
171
|
+
* Reset the cursor to the beginning.
|
|
172
|
+
* @private
|
|
173
|
+
*/
|
|
174
|
+
TimelinePath.prototype.resetCursor = function () {
|
|
175
|
+
this.cursor = 0;
|
|
176
|
+
};
|
|
177
|
+
/**
|
|
178
|
+
* Reset the cursor to the end.
|
|
179
|
+
* @private
|
|
180
|
+
*/
|
|
181
|
+
TimelinePath.prototype.resetCursorEnd = function () {
|
|
182
|
+
this.cursor = this.events.length - 1;
|
|
183
|
+
};
|
|
184
|
+
/**
|
|
185
|
+
* Cancel current playing. Leaves the cursor intact.
|
|
186
|
+
* @private
|
|
187
|
+
* @param {boolean} [fadeOut=false] - Whether or not to fade out as we stop. If
|
|
188
|
+
* false, the path is cancelled synchronously.
|
|
189
|
+
*/
|
|
190
|
+
TimelinePath.prototype.pause = function (fadeOut) {
|
|
191
|
+
var timelinePath = this;
|
|
192
|
+
// Cancel next scheduled play
|
|
193
|
+
clearTimeout(timelinePath.nextScheduledPlay);
|
|
194
|
+
// Cancel currently playing events
|
|
195
|
+
Object.keys(timelinePath.eventsPlaying).forEach(function (id) {
|
|
196
|
+
if (timelinePath.eventsPlaying[id]) {
|
|
197
|
+
timelinePath.eventsPlaying[id].cancel(fadeOut);
|
|
198
|
+
}
|
|
199
|
+
});
|
|
200
|
+
timelinePath.eventsPlaying = {};
|
|
201
|
+
};
|
|
202
|
+
/**
|
|
203
|
+
* Play the events, starting from current cursor, and going in specified
|
|
204
|
+
* direction.
|
|
205
|
+
* @private
|
|
206
|
+
* @param {number} direction
|
|
207
|
+
* The direction to play, 1 for forwards and -1 for backwards.
|
|
208
|
+
* @return {void}
|
|
209
|
+
*/
|
|
210
|
+
TimelinePath.prototype.playEvents = function (direction) {
|
|
211
|
+
var timelinePath = this, curEvent = timelinePath.events[this.cursor], nextEvent = timelinePath.events[this.cursor + direction], onEnd = function (signalData) {
|
|
212
|
+
timelinePath.signalHandler.emitSignal('masterOnEnd', signalData);
|
|
213
|
+
timelinePath.signalHandler.emitSignal('playOnEnd', signalData);
|
|
214
|
+
};
|
|
215
|
+
var timeDiff;
|
|
216
|
+
// Store reference to path on event
|
|
217
|
+
curEvent.timelinePath = timelinePath;
|
|
218
|
+
// Emit event, cancel if returns false
|
|
219
|
+
if (timelinePath.signalHandler.emitSignal('onEventStart', curEvent) === false) {
|
|
220
|
+
onEnd({
|
|
221
|
+
event: curEvent,
|
|
222
|
+
cancelled: true
|
|
223
|
+
});
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
// Play the current event
|
|
227
|
+
timelinePath.eventsPlaying[curEvent.id] = curEvent;
|
|
228
|
+
curEvent.play({
|
|
229
|
+
onEnd: function (cancelled) {
|
|
230
|
+
var signalData = {
|
|
231
|
+
event: curEvent,
|
|
232
|
+
cancelled: !!cancelled
|
|
233
|
+
};
|
|
234
|
+
// Keep track of currently playing events for cancelling
|
|
235
|
+
delete timelinePath.eventsPlaying[curEvent.id];
|
|
236
|
+
// Handle onEventEnd
|
|
237
|
+
timelinePath.signalHandler.emitSignal('onEventEnd', signalData);
|
|
238
|
+
// Reached end of path?
|
|
239
|
+
if (!nextEvent) {
|
|
240
|
+
onEnd(signalData);
|
|
241
|
+
}
|
|
242
|
+
}
|
|
243
|
+
});
|
|
244
|
+
// Schedule next
|
|
245
|
+
if (nextEvent) {
|
|
246
|
+
timeDiff = Math.abs(nextEvent.time - curEvent.time);
|
|
247
|
+
if (timeDiff < 1) {
|
|
248
|
+
// Play immediately
|
|
249
|
+
timelinePath.cursor += direction;
|
|
250
|
+
timelinePath.playEvents(direction);
|
|
251
|
+
}
|
|
252
|
+
else {
|
|
253
|
+
// Schedule after the difference in ms
|
|
254
|
+
this.nextScheduledPlay = setTimeout(function () {
|
|
255
|
+
timelinePath.cursor += direction;
|
|
256
|
+
timelinePath.playEvents(direction);
|
|
257
|
+
}, timeDiff);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
};
|
|
261
|
+
return TimelinePath;
|
|
262
|
+
}());
|
|
263
|
+
/* *
|
|
264
|
+
*
|
|
265
|
+
* Default export
|
|
266
|
+
*
|
|
267
|
+
* */
|
|
268
|
+
export default TimelinePath;
|
|
269
|
+
/* *
|
|
270
|
+
*
|
|
271
|
+
* API Declarations
|
|
272
|
+
*
|
|
273
|
+
* */
|
|
274
|
+
/**
|
|
275
|
+
* A set of options for the TimelinePath class.
|
|
276
|
+
*
|
|
277
|
+
* @requires module:modules/
|
|
278
|
+
*
|
|
279
|
+
* @private
|
|
280
|
+
* @interface Highcharts.TimelinePathOptionsObject
|
|
281
|
+
*/ /**
|
|
282
|
+
* List of TimelineEvents to play on this track.
|
|
283
|
+
* @name Highcharts.TimelinePathOptionsObject#events
|
|
284
|
+
* @type {Array<Highcharts.TimelineEvent>}
|
|
285
|
+
*/ /**
|
|
286
|
+
* If this option is supplied, this path ignores all events and just waits for
|
|
287
|
+
* the specified number of milliseconds before calling onEnd.
|
|
288
|
+
* @name Highcharts.TimelinePathOptionsObject#silentWait
|
|
289
|
+
* @type {number|undefined}
|
|
290
|
+
*/ /**
|
|
291
|
+
* Unique ID for this timeline path. Automatically generated if not supplied.
|
|
292
|
+
* @name Highcharts.TimelinePathOptionsObject#id
|
|
293
|
+
* @type {string|undefined}
|
|
294
|
+
*/ /**
|
|
295
|
+
* Callback called before the path starts playing.
|
|
296
|
+
* @name Highcharts.TimelinePathOptionsObject#onStart
|
|
297
|
+
* @type {Function|undefined}
|
|
298
|
+
*/ /**
|
|
299
|
+
* Callback function to call before an event plays.
|
|
300
|
+
* @name Highcharts.TimelinePathOptionsObject#onEventStart
|
|
301
|
+
* @type {Function|undefined}
|
|
302
|
+
*/ /**
|
|
303
|
+
* Callback function to call after an event has stopped playing.
|
|
304
|
+
* @name Highcharts.TimelinePathOptionsObject#onEventEnd
|
|
305
|
+
* @type {Function|undefined}
|
|
306
|
+
*/ /**
|
|
307
|
+
* Callback called when the whole path is finished.
|
|
308
|
+
* @name Highcharts.TimelinePathOptionsObject#onEnd
|
|
309
|
+
* @type {Function|undefined}
|
|
310
|
+
*/
|
|
311
|
+
(''); // detach doclets above
|
|
@@ -223,9 +223,11 @@ extend(Chart.prototype, /** @lends Chart.prototype */ {
|
|
|
223
223
|
return inner;
|
|
224
224
|
},
|
|
225
225
|
/**
|
|
226
|
-
*
|
|
227
|
-
* See {@link Chart#fromLatLonToPoint} for how to get
|
|
228
|
-
* `centerY` parameters for a geographic location.
|
|
226
|
+
* Highcharts Maps only. Zoom in or out of the map. See also
|
|
227
|
+
* {@link Point#zoomTo}. See {@link Chart#fromLatLonToPoint} for how to get
|
|
228
|
+
* the `centerX` and `centerY` parameters for a geographic location.
|
|
229
|
+
*
|
|
230
|
+
* Deprecated as of v9.3 in favor of [MapView.zoomBy](https://api.highcharts.com/class-reference/Highcharts.MapView#zoomBy).
|
|
229
231
|
*
|
|
230
232
|
* @function Highcharts.Chart#mapZoom
|
|
231
233
|
*
|
|
@@ -234,76 +236,37 @@ extend(Chart.prototype, /** @lends Chart.prototype */ {
|
|
|
234
236
|
* in to half the current view. 2 zooms to twice the current view. If
|
|
235
237
|
* omitted, the zoom is reset.
|
|
236
238
|
*
|
|
237
|
-
* @param {number} [
|
|
238
|
-
* The
|
|
239
|
+
* @param {number} [xProjected]
|
|
240
|
+
* The projected x position to keep stationary when zooming, if
|
|
241
|
+
* available space.
|
|
239
242
|
*
|
|
240
|
-
* @param {number} [
|
|
241
|
-
* The
|
|
243
|
+
* @param {number} [yProjected]
|
|
244
|
+
* The projected y position to keep stationary when zooming, if
|
|
245
|
+
* available space.
|
|
242
246
|
*
|
|
243
|
-
* @param {number} [
|
|
244
|
-
*
|
|
247
|
+
* @param {number} [chartX]
|
|
248
|
+
* Keep this chart position stationary if possible. This is used for
|
|
245
249
|
* example in mousewheel events, where the area under the mouse
|
|
246
250
|
* should be fixed as we zoom in.
|
|
247
251
|
*
|
|
248
|
-
* @param {number} [
|
|
249
|
-
*
|
|
252
|
+
* @param {number} [chartY]
|
|
253
|
+
* Keep this chart position stationary if possible.
|
|
250
254
|
*
|
|
255
|
+
* @deprecated
|
|
251
256
|
* @return {void}
|
|
252
257
|
*/
|
|
253
|
-
mapZoom: function (howMuch,
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
}), zoomOut = (newExt.x <= xAxis.dataMin &&
|
|
265
|
-
newExt.width >=
|
|
266
|
-
xAxis.dataMax - xAxis.dataMin &&
|
|
267
|
-
newExt.y <= yAxis.dataMin &&
|
|
268
|
-
newExt.height >= yAxis.dataMax - yAxis.dataMin);
|
|
269
|
-
// When mousewheel zooming, fix the point under the mouse
|
|
270
|
-
if (mouseX && xAxis.mapAxis) {
|
|
271
|
-
xAxis.mapAxis.fixTo = [mouseX - xAxis.pos, centerXArg];
|
|
272
|
-
}
|
|
273
|
-
if (mouseY && yAxis.mapAxis) {
|
|
274
|
-
yAxis.mapAxis.fixTo = [mouseY - yAxis.pos, centerYArg];
|
|
275
|
-
}
|
|
276
|
-
// Zoom
|
|
277
|
-
if (typeof howMuch !== 'undefined' && !zoomOut) {
|
|
278
|
-
xAxis.setExtremes(newExt.x, newExt.x + newExt.width, false);
|
|
279
|
-
yAxis.setExtremes(newExt.y, newExt.y + newExt.height, false);
|
|
280
|
-
// Reset zoom
|
|
281
|
-
}
|
|
282
|
-
else {
|
|
283
|
-
xAxis.setExtremes(void 0, void 0, false);
|
|
284
|
-
yAxis.setExtremes(void 0, void 0, false);
|
|
285
|
-
}
|
|
286
|
-
// Prevent zooming until this one is finished animating
|
|
287
|
-
/*
|
|
288
|
-
chart.holdMapZoom = true;
|
|
289
|
-
setTimeout(function () {
|
|
290
|
-
chart.holdMapZoom = false;
|
|
291
|
-
}, 200);
|
|
292
|
-
*/
|
|
293
|
-
/*
|
|
294
|
-
delay = animation ? animation.duration || 500 : 0;
|
|
295
|
-
if (delay) {
|
|
296
|
-
chart.isMapZooming = true;
|
|
297
|
-
setTimeout(function () {
|
|
298
|
-
chart.isMapZooming = false;
|
|
299
|
-
if (chart.mapZoomQueue) {
|
|
300
|
-
chart.mapZoom.apply(chart, chart.mapZoomQueue);
|
|
301
|
-
}
|
|
302
|
-
chart.mapZoomQueue = null;
|
|
303
|
-
}, delay);
|
|
258
|
+
mapZoom: function (howMuch, xProjected, yProjected, chartX, chartY) {
|
|
259
|
+
if (this.mapView) {
|
|
260
|
+
if (typeof howMuch === 'number') {
|
|
261
|
+
// Compliance, mapView.zoomBy uses different values
|
|
262
|
+
howMuch = Math.log(howMuch) / Math.log(0.5);
|
|
263
|
+
}
|
|
264
|
+
this.mapView.zoomBy(howMuch, typeof xProjected === 'number' && typeof yProjected === 'number' ?
|
|
265
|
+
this.mapView.projection.inverse([xProjected, yProjected]) :
|
|
266
|
+
void 0, typeof chartX === 'number' && typeof chartY === 'number' ?
|
|
267
|
+
[chartX, chartY] :
|
|
268
|
+
void 0);
|
|
304
269
|
}
|
|
305
|
-
*/
|
|
306
|
-
chart.redraw(animation);
|
|
307
270
|
}
|
|
308
271
|
});
|
|
309
272
|
// Extend the Chart.render method to add zooming and panning
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
'use strict';
|
|
11
11
|
import Pointer from '../Core/Pointer.js';
|
|
12
12
|
import U from '../Core/Utilities.js';
|
|
13
|
-
var extend = U.extend, pick = U.pick, wrap = U.wrap;
|
|
13
|
+
var defined = U.defined, extend = U.extend, pick = U.pick, wrap = U.wrap;
|
|
14
14
|
/* eslint-disable no-invalid-this */
|
|
15
15
|
var totalWheelDelta = 0;
|
|
16
16
|
var totalWheelDeltaTimer;
|
|
@@ -27,7 +27,7 @@ extend(Pointer.prototype, {
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
else if (chart.isInsidePlot(e.chartX - chart.plotLeft, e.chartY - chart.plotTop)) {
|
|
30
|
-
chart.mapZoom(0.5,
|
|
30
|
+
chart.mapZoom(0.5, void 0, void 0, e.chartX, e.chartY);
|
|
31
31
|
}
|
|
32
32
|
},
|
|
33
33
|
// The event handler for the mouse scroll event
|
|
@@ -35,7 +35,9 @@ extend(Pointer.prototype, {
|
|
|
35
35
|
var chart = this.chart;
|
|
36
36
|
e = this.normalize(e);
|
|
37
37
|
// Firefox uses e.deltaY or e.detail, WebKit and IE uses wheelDelta
|
|
38
|
-
|
|
38
|
+
// try wheelDelta first #15656
|
|
39
|
+
var delta = (defined(e.wheelDelta) && -e.wheelDelta / 120) ||
|
|
40
|
+
e.deltaY || e.detail;
|
|
39
41
|
// Wheel zooming on trackpads have different behaviours in Firefox vs
|
|
40
42
|
// WebKit. In Firefox the delta increments in steps by 1, so it is not
|
|
41
43
|
// distinguishable from true mouse wheel. Therefore we use this timer
|
|
@@ -51,8 +53,8 @@ extend(Pointer.prototype, {
|
|
|
51
53
|
totalWheelDelta = 0;
|
|
52
54
|
}, 50);
|
|
53
55
|
}
|
|
54
|
-
if (totalWheelDelta < 10 && chart.isInsidePlot(e.chartX - chart.plotLeft, e.chartY - chart.plotTop)) {
|
|
55
|
-
chart.
|
|
56
|
+
if (totalWheelDelta < 10 && chart.isInsidePlot(e.chartX - chart.plotLeft, e.chartY - chart.plotTop) && chart.mapView) {
|
|
57
|
+
chart.mapView.zoomBy((chart.options.mapNavigation.mouseWheelSensitivity - 1) * -delta, void 0, [e.chartX, e.chartY],
|
|
56
58
|
// Delta less than 1 indicates stepless/trackpad zooming, avoid
|
|
57
59
|
// animation delaying the zoom
|
|
58
60
|
Math.abs(delta) < 1 ? false : void 0);
|