highcharts 8.1.0 → 8.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bower.json +1 -1
- package/css/highcharts.css +12 -0
- package/css/highcharts.scss +12 -0
- package/css/themes/dark-unica.css +12 -0
- package/css/themes/grid-light.css +12 -0
- package/css/themes/sand-signika.css +12 -0
- package/es-modules/{modules/accessibility/a11y-i18n.js → Accessibility/A11yI18n.js} +2 -2
- package/es-modules/{modules/accessibility/accessibility.js → Accessibility/Accessibility.js} +24 -21
- package/es-modules/{modules/accessibility → Accessibility}/AccessibilityComponent.js +73 -17
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/AnnotationsA11y.js +2 -4
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/ContainerComponent.js +8 -9
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/InfoRegionsComponent.js +9 -12
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/LegendComponent.js +60 -22
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/MenuComponent.js +4 -11
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/RangeSelectorComponent.js +8 -7
- package/es-modules/Accessibility/Components/SeriesComponent/ForcedMarkers.js +171 -0
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/NewDataAnnouncer.js +8 -7
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/SeriesComponent.js +5 -5
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/SeriesDescriber.js +6 -6
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/SeriesComponent/SeriesKeyboardNavigation.js +22 -20
- package/es-modules/{modules/accessibility/components → Accessibility/Components}/ZoomComponent.js +9 -8
- package/es-modules/{modules/accessibility/focusBorder.js → Accessibility/FocusBorder.js} +13 -10
- package/es-modules/{modules/accessibility/high-contrast-mode.js → Accessibility/HighContrastMode.js} +3 -2
- package/es-modules/{modules/accessibility/high-contrast-theme.js → Accessibility/HighContrastTheme.js} +0 -0
- package/es-modules/{modules/accessibility → Accessibility}/KeyboardNavigation.js +35 -22
- package/es-modules/{modules/accessibility → Accessibility}/KeyboardNavigationHandler.js +1 -1
- package/es-modules/{modules/accessibility/options/deprecatedOptions.js → Accessibility/Options/DeprecatedOptions.js} +10 -20
- package/es-modules/{modules/accessibility/options/langOptions.js → Accessibility/Options/LangOptions.js} +1 -1
- package/es-modules/{modules/accessibility/options/options.js → Accessibility/Options/Options.js} +1 -2
- package/es-modules/{modules/accessibility/utils → Accessibility/Utils}/Announcer.js +2 -2
- package/es-modules/{modules/accessibility/utils/chartUtilities.js → Accessibility/Utils/ChartUtilities.js} +8 -9
- package/es-modules/{modules/accessibility/utils → Accessibility/Utils}/DOMElementProvider.js +5 -5
- package/es-modules/{modules/accessibility/utils → Accessibility/Utils}/EventProvider.js +2 -2
- package/es-modules/{modules/accessibility/utils/htmlUtilities.js → Accessibility/Utils/HTMLUtilities.js} +3 -4
- package/es-modules/Core/Animation/AnimationUtilities.js +193 -0
- package/es-modules/Core/Animation/Fx.js +378 -0
- package/es-modules/{parts → Core/Axis}/Axis.js +153 -89
- package/es-modules/{parts-3d → Core/Axis}/Axis3D.js +12 -7
- package/es-modules/{modules/broken-axis.src.js → Core/Axis/BrokenAxis.js} +6 -8
- package/es-modules/{parts-map → Core/Axis}/ColorAxis.js +28 -31
- package/es-modules/{parts → Core/Axis}/DateTimeAxis.js +1 -1
- package/es-modules/{parts-gantt → Core/Axis}/GridAxis.js +136 -39
- package/es-modules/{parts-more → Core/Axis}/HiddenAxis.js +0 -0
- package/es-modules/{parts → Core/Axis}/LogarithmicAxis.js +1 -1
- package/es-modules/{parts-map → Core/Axis}/MapAxis.js +2 -2
- package/es-modules/{parts → Core/Axis}/NavigatorAxis.js +2 -2
- package/es-modules/{parts → Core/Axis}/OrdinalAxis.js +241 -224
- package/es-modules/{parts → Core/Axis}/PlotLineOrBand.js +24 -15
- package/es-modules/{parts-more → Core/Axis}/RadialAxis.js +34 -27
- package/es-modules/{parts → Core/Axis}/ScrollbarAxis.js +2 -2
- package/es-modules/{parts → Core/Axis}/StackingAxis.js +11 -2
- package/es-modules/{parts → Core/Axis}/Tick.js +14 -14
- package/es-modules/{parts-3d → Core/Axis}/Tick3D.js +1 -1
- package/es-modules/{parts-gantt → Core/Axis}/TreeGridAxis.js +81 -15
- package/es-modules/{parts-gantt → Core/Axis}/TreeGridTick.js +1 -1
- package/es-modules/{parts-3d → Core/Axis}/ZAxis.js +2 -2
- package/es-modules/{parts → Core/Chart}/Chart.js +225 -227
- package/es-modules/Core/Chart/Chart3D.js +1674 -0
- package/es-modules/{parts-gantt → Core/Chart}/GanttChart.js +13 -12
- package/es-modules/{parts → Core/Chart}/StockChart.js +26 -25
- package/es-modules/Core/Color/Color.js +419 -0
- package/es-modules/Core/Color/ColorType.js +9 -0
- package/es-modules/{parts → Core}/Color.js +1 -1
- package/es-modules/{parts → Core}/Dynamics.js +91 -61
- package/es-modules/{parts → Core}/Globals.js +9 -1
- package/es-modules/{parts → Core}/Interaction.js +27 -20
- package/es-modules/{parts → Core}/Legend.js +26 -11
- package/es-modules/{parts → Core}/MSPointer.js +2 -2
- package/es-modules/{parts → Core}/Navigator.js +24 -14
- package/es-modules/{parts → Core}/Options.js +157 -69
- package/es-modules/{parts → Core}/Pointer.js +50 -27
- package/es-modules/Core/Renderer/DOMElementType.js +9 -0
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +220 -0
- package/es-modules/{parts/Html.js → Core/Renderer/HTML/HTMLRenderer.js} +16 -207
- package/es-modules/{parts → Core/Renderer/SVG}/SVGElement.js +186 -32
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +410 -0
- package/es-modules/{parts/SvgRenderer.js → Core/Renderer/SVG/SVGRenderer.js} +426 -886
- package/es-modules/{parts-3d/SVGRenderer.js → Core/Renderer/SVG/SVGRenderer3D.js} +31 -23
- package/es-modules/{parts → Core}/Responsive.js +24 -14
- package/es-modules/{parts → Core}/Scrollbar.js +5 -4
- package/es-modules/Core/Series/BaseSeries.js +157 -0
- package/es-modules/{parts/Series.js → Core/Series/CartesianSeries.js} +119 -55
- package/es-modules/{parts → Core/Series}/DataLabels.js +40 -36
- package/es-modules/{parts → Core/Series}/Point.js +8 -10
- package/es-modules/Core/Series/Series.js +158 -0
- package/es-modules/{parts-3d/Series.js → Core/Series/Series3D.js} +5 -3
- package/es-modules/{parts → Core}/Time.js +11 -133
- package/es-modules/{parts → Core}/Tooltip.js +30 -27
- package/es-modules/{parts → Core}/Utilities.js +103 -562
- package/es-modules/{mixins/ajax.js → Extensions/Ajax.js} +9 -4
- package/es-modules/{annotations/annotations.src.js → Extensions/Annotations/Annotations.js} +901 -709
- package/es-modules/{annotations → Extensions/Annotations}/ControlPoint.js +2 -2
- package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +117 -0
- package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +111 -0
- package/es-modules/{annotations/controllable → Extensions/Annotations/Controllables}/ControllableLabel.js +186 -146
- package/es-modules/{annotations/controllable → Extensions/Annotations/Controllables}/ControllablePath.js +81 -42
- package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +121 -0
- package/es-modules/{annotations/controllable/controllableMixin.js → Extensions/Annotations/Mixins/ControllableMixin.js} +8 -9
- package/es-modules/{annotations/eventEmitterMixin.js → Extensions/Annotations/Mixins/EventEmitterMixin.js} +7 -7
- package/es-modules/{annotations/controllable/markerMixin.js → Extensions/Annotations/Mixins/MarkerMixin.js} +10 -8
- package/es-modules/{annotations → Extensions/Annotations}/MockPoint.js +6 -6
- package/es-modules/{annotations/navigationBindings.js → Extensions/Annotations/NavigationBindings.js} +27 -16
- package/es-modules/{annotations/popup.js → Extensions/Annotations/Popup.js} +9 -9
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/BasicAnnotation.js +68 -20
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/CrookedLine.js +46 -19
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/ElliottWave.js +33 -12
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/Fibonacci.js +54 -22
- package/es-modules/Extensions/Annotations/Types/InfinityLine.js +147 -0
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/Measure.js +82 -52
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/Pitchfork.js +69 -32
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/Tunnel.js +58 -30
- package/es-modules/{annotations/types → Extensions/Annotations/Types}/VerticalLine.js +64 -33
- package/es-modules/{parts-gantt → Extensions}/ArrowSymbols.js +9 -11
- package/es-modules/{modules/boost/boost.js → Extensions/Boost/Boost.js} +8 -8
- package/es-modules/{modules/boost/boost-attach.js → Extensions/Boost/BoostAttach.js} +10 -8
- package/es-modules/{modules/boost/boost-init.js → Extensions/Boost/BoostInit.js} +7 -6
- package/es-modules/{modules/boost/boost-options.js → Extensions/Boost/BoostOptions.js} +1 -1
- package/es-modules/{modules/boost/boost-overrides.js → Extensions/Boost/BoostOverrides.js} +14 -11
- package/es-modules/{modules/boost/boost-utils.js → Extensions/Boost/BoostUtils.js} +6 -6
- package/es-modules/{modules/boost/boostable-map.js → Extensions/Boost/BoostableMap.js} +1 -1
- package/es-modules/{modules/boost/boostables.js → Extensions/Boost/Boostables.js} +0 -0
- package/es-modules/{modules/boost/named-colors.js → Extensions/Boost/NamedColors.js} +1 -1
- package/es-modules/{modules/boost/wgl-renderer.js → Extensions/Boost/WGLRenderer.js} +9 -9
- package/es-modules/{modules/boost/wgl-shader.js → Extensions/Boost/WGLShader.js} +3 -4
- package/es-modules/{modules/boost/wgl-vbuffer.js → Extensions/Boost/WGLVBuffer.js} +0 -0
- package/es-modules/{modules/boost-canvas.src.js → Extensions/BoostCanvas.js} +13 -9
- package/es-modules/{parts-gantt/CurrentDateIndicator.js → Extensions/CurrentDateIndication.js} +5 -7
- package/es-modules/{modules/data.src.js → Extensions/Data.js} +14 -16
- package/es-modules/{parts → Extensions}/DataGrouping.js +12 -9
- package/es-modules/{modules/debugger.src.js → Extensions/Debugger.js} +6 -6
- package/es-modules/{mixins/download-url.js → Extensions/DownloadURL.js} +15 -7
- package/es-modules/{modules/drag-panes.src.js → Extensions/DragPanes.js} +6 -6
- package/es-modules/{modules/draggable-points.src.js → Extensions/DraggablePoints.js} +21 -32
- package/es-modules/{modules/drilldown.src.js → Extensions/Drilldown.js} +64 -43
- package/es-modules/{modules/export-data.src.js → Extensions/ExportData.js} +126 -26
- package/es-modules/{modules/exporting.src.js → Extensions/Exporting.js} +26 -12
- package/es-modules/{modules/full-screen.src.js → Extensions/FullScreen.js} +5 -3
- package/es-modules/{parts-map → Extensions}/GeoJSON.js +112 -7
- package/es-modules/{modules/marker-clusters.src.js → Extensions/MarkerClusters.js} +29 -39
- package/es-modules/{parts-3d/Math.js → Extensions/Math3D.js} +17 -9
- package/es-modules/{modules/no-data-to-display.src.js → Extensions/NoDataToDisplay.js} +14 -15
- package/es-modules/{modules/offline-exporting.src.js → Extensions/OfflineExporting.js} +39 -35
- package/es-modules/{modules/oldie.src.js → Extensions/Oldie/Oldie.js} +19 -12
- package/es-modules/{parts-3d → Extensions/Oldie}/VMLAxis3D.js +1 -1
- package/es-modules/Extensions/Oldie/VMLRenderer3D.js +46 -0
- package/es-modules/{modules/oldie-polyfills.src.js → Extensions/OldiePolyfills.js} +5 -0
- package/es-modules/{modules/overlapping-datalabels.src.js → Extensions/OverlappingDataLabels.js} +14 -13
- package/es-modules/{parts-more → Extensions}/Pane.js +13 -12
- package/es-modules/{modules/parallel-coordinates.src.js → Extensions/ParallelCoordinates.js} +140 -138
- package/es-modules/{modules/pattern-fill.src.js → Extensions/PatternFill.js} +23 -15
- package/es-modules/{parts-more → Extensions}/Polar.js +15 -12
- package/es-modules/{modules/price-indicator.src.js → Extensions/PriceIndication.js} +5 -3
- package/es-modules/{parts → Extensions}/RangeSelector.js +112 -79
- package/es-modules/{parts → Extensions}/ScrollablePlotArea.js +19 -9
- package/es-modules/{modules/series-label.src.js → Extensions/SeriesLabel.js} +14 -10
- package/es-modules/{modules/sonification/chartSonify.js → Extensions/Sonification/ChartSonify.js} +212 -41
- package/es-modules/{modules/sonification → Extensions/Sonification}/Earcon.js +3 -7
- package/es-modules/{modules/sonification → Extensions/Sonification}/Instrument.js +35 -11
- package/es-modules/{modules/sonification/instrumentDefinitions.js → Extensions/Sonification/InstrumentDefinitions.js} +1 -1
- package/es-modules/{modules/sonification/musicalFrequencies.js → Extensions/Sonification/MusicalFrequencies.js} +0 -0
- package/es-modules/Extensions/Sonification/Options.js +34 -0
- package/es-modules/{modules/sonification/pointSonify.js → Extensions/Sonification/PointSonify.js} +43 -28
- package/es-modules/{modules/sonification/sonification.js → Extensions/Sonification/Sonification.js} +16 -12
- package/es-modules/{modules/sonification → Extensions/Sonification}/Timeline.js +25 -6
- package/es-modules/{modules/sonification/utilities.js → Extensions/Sonification/Utilities.js} +8 -5
- package/es-modules/{parts → Extensions}/Stacking.js +57 -18
- package/es-modules/{modules/static-scale.src.js → Extensions/StaticScale.js} +4 -4
- package/es-modules/{themes/avocado.js → Extensions/Themes/Avocado.js} +5 -4
- package/es-modules/{themes/dark-blue.js → Extensions/Themes/DarkBlue.js} +4 -2
- package/es-modules/{themes/dark-green.js → Extensions/Themes/DarkGreen.js} +4 -2
- package/es-modules/{themes/dark-unica.js → Extensions/Themes/DarkUnica.js} +6 -6
- package/es-modules/{themes/gray.js → Extensions/Themes/Gray.js} +5 -4
- package/es-modules/{themes/grid.js → Extensions/Themes/Grid.js} +4 -2
- package/es-modules/{themes/grid-light.js → Extensions/Themes/GridLight.js} +4 -2
- package/es-modules/{themes/high-contrast-dark.js → Extensions/Themes/HighContrastDark.js} +5 -4
- package/es-modules/{themes/high-contrast-light.js → Extensions/Themes/HighContrastLight.js} +4 -2
- package/es-modules/{themes/sand-signika.js → Extensions/Themes/SandSignika.js} +4 -2
- package/es-modules/{themes/skies.js → Extensions/Themes/Skies.js} +5 -3
- package/es-modules/{themes/sunset.js → Extensions/Themes/Sunset.js} +5 -4
- package/es-modules/{parts-gantt/Pathfinder.js → Gantt/Connection.js} +41 -284
- package/es-modules/Gantt/Pathfinder.js +816 -0
- package/es-modules/Gantt/PathfinderAlgorithms.js +659 -0
- package/es-modules/{parts-gantt → Gantt}/Tree.js +1 -1
- package/es-modules/{parts-map → Maps}/Map.js +24 -15
- package/es-modules/{parts-map → Maps}/MapNavigation.js +4 -5
- package/es-modules/{parts-map → Maps}/MapPointer.js +2 -4
- package/es-modules/{mixins/centered-series.js → Mixins/CenteredSeries.js} +7 -5
- package/es-modules/{parts-map/ColorMapSeriesMixin.js → Mixins/ColorMapSeries.js} +10 -6
- package/es-modules/{parts-map/ColorSeriesMixin.js → Mixins/ColorSeries.js} +12 -4
- package/es-modules/{mixins/derived-series.js → Mixins/DerivedSeries.js} +3 -3
- package/es-modules/{mixins/draw-point.js → Mixins/DrawPoint.js} +6 -1
- package/es-modules/{mixins/geometry.js → Mixins/Geometry.js} +0 -0
- package/es-modules/{mixins/geometry-circles.js → Mixins/GeometryCircles.js} +2 -2
- package/es-modules/{mixins/indicator-required.js → Mixins/IndicatorRequired.js} +1 -1
- package/es-modules/{mixins/legend-symbol.js → Mixins/LegendSymbol.js} +6 -10
- package/es-modules/{mixins/multipe-lines.js → Mixins/MultipleLines.js} +2 -2
- package/es-modules/{mixins/navigation.js → Mixins/Navigation.js} +0 -0
- package/es-modules/{mixins/nelder-mead.js → Mixins/NelderMead.js} +2 -2
- package/es-modules/{mixins/nodes.js → Mixins/Nodes.js} +7 -5
- package/es-modules/{mixins/on-series.js → Mixins/OnSeries.js} +3 -2
- package/es-modules/{mixins/polygon.js → Mixins/Polygon.js} +2 -2
- package/es-modules/{mixins/reduce-array.js → Mixins/ReduceArray.js} +1 -1
- package/es-modules/{mixins/tree-series.js → Mixins/TreeSeries.js} +2 -2
- package/es-modules/{parts-more → Series}/AreaRangeSeries.js +75 -38
- package/es-modules/{parts → Series}/AreaSeries.js +43 -25
- package/es-modules/{parts-more → Series}/AreaSplineRangeSeries.js +47 -10
- package/es-modules/{parts → Series}/AreaSplineSeries.js +49 -10
- package/es-modules/{parts → Series}/BarSeries.js +2 -5
- package/es-modules/{modules/bellcurve.src.js → Series/BellcurveSeries.js} +47 -7
- package/es-modules/{parts-more → Series}/BoxPlotSeries.js +18 -13
- package/es-modules/{parts-more → Series/Bubble}/BubbleLegend.js +11 -9
- package/es-modules/{parts-more → Series/Bubble}/BubbleSeries.js +25 -27
- package/es-modules/{modules/bullet.src.js → Series/BulletSeries.js} +9 -8
- package/es-modules/{parts → Series}/CandlestickSeries.js +11 -8
- package/es-modules/{parts-3d/Column.js → Series/Column3DSeries.js} +108 -28
- package/es-modules/{parts-more → Series}/ColumnPyramidSeries.js +9 -9
- package/es-modules/{parts-more → Series}/ColumnRangeSeries.js +21 -18
- package/es-modules/{parts → Series}/ColumnSeries.js +119 -41
- package/es-modules/{modules/cylinder.src.js → Series/CylinderSeries.js} +14 -14
- package/es-modules/{modules/dependency-wheel.src.js → Series/DependencyWheelSeries.js} +14 -12
- package/es-modules/{modules/dotplot.src.js → Series/DotplotSeries.js} +7 -15
- package/es-modules/{modules/dumbbell.src.js → Series/DumbbellSeries.js} +16 -10
- package/es-modules/{parts-more → Series}/ErrorBarSeries.js +8 -8
- package/es-modules/{parts → Series}/FlagsSeries.js +18 -12
- package/es-modules/{modules/funnel3d.src.js → Series/Funnel3DSeries.js} +14 -16
- package/es-modules/{modules/funnel.src.js → Series/FunnelSeries.js} +16 -14
- package/es-modules/{parts-gantt → Series}/GanttSeries.js +21 -20
- package/es-modules/{parts-more → Series}/GaugeSeries.js +14 -12
- package/es-modules/{parts-map → Series}/HeatmapSeries.js +23 -16
- package/es-modules/{modules/histogram.src.js → Series/HistogramSeries.js} +13 -9
- package/es-modules/{modules/item-series.src.js → Series/ItemSeries.js} +22 -14
- package/es-modules/Series/LineSeries.js +13 -0
- package/es-modules/{modules/lollipop.src.js → Series/LollipopSeries.js} +34 -10
- package/es-modules/{parts-map → Series}/MapBubbleSeries.js +8 -9
- package/es-modules/{parts-map → Series}/MapLineSeries.js +5 -7
- package/es-modules/{parts-map → Series}/MapPointSeries.js +9 -8
- package/es-modules/{parts-map → Series}/MapSeries.js +22 -18
- package/es-modules/{modules/networkgraph/draggable-nodes.js → Series/Networkgraph/DraggableNodes.js} +15 -30
- package/es-modules/{modules/networkgraph/integrations.js → Series/Networkgraph/Integrations.js} +1 -1
- package/es-modules/{modules/networkgraph/layouts.js → Series/Networkgraph/Layouts.js} +43 -13
- package/es-modules/{modules/networkgraph/networkgraph.src.js → Series/Networkgraph/Networkgraph.js} +29 -23
- package/es-modules/{modules/networkgraph → Series/Networkgraph}/QuadTree.js +2 -2
- package/es-modules/{parts → Series}/OHLCSeries.js +5 -7
- package/es-modules/{modules/organization.src.js → Series/OrganizationSeries.js} +10 -7
- package/es-modules/{parts-more → Series}/PackedBubbleSeries.js +104 -28
- package/es-modules/{modules/pareto.src.js → Series/ParetoSeries.js} +10 -9
- package/es-modules/{parts-3d/Pie.js → Series/Pie3DSeries.js} +5 -4
- package/es-modules/{parts → Series}/PieSeries.js +66 -31
- package/es-modules/{parts-more → Series}/PolygonSeries.js +13 -13
- package/es-modules/{modules/pyramid3d.src.js → Series/Pyramid3DSeries.js} +5 -7
- package/es-modules/{modules/sankey.src.js → Series/SankeySeries.js} +23 -21
- package/es-modules/{parts-3d/Scatter.js → Series/Scatter3DSeries.js} +10 -9
- package/es-modules/{parts → Series}/ScatterSeries.js +15 -10
- package/es-modules/{modules/solid-gauge.src.js → Series/SolidGaugeSeries.js} +112 -78
- package/es-modules/{parts → Series}/SplineSeries.js +9 -7
- package/es-modules/{modules/streamgraph.src.js → Series/StreamgraphSeries.js} +42 -6
- package/es-modules/{modules/sunburst.src.js → Series/SunburstSeries.js} +20 -13
- package/es-modules/{modules/tilemap.src.js → Series/TilemapSeries.js} +12 -9
- package/es-modules/{modules/timeline.src.js → Series/TimelineSeries.js} +16 -11
- package/es-modules/{modules/treemap.src.js → Series/TreemapSeries.js} +47 -40
- package/es-modules/{modules/variable-pie.src.js → Series/VariablePieSeries.js} +11 -8
- package/es-modules/{modules/variwide.src.js → Series/VariwideSeries.js} +12 -10
- package/es-modules/{modules/vector.src.js → Series/VectorSeries.js} +11 -7
- package/es-modules/{modules/venn.src.js → Series/VennSeries.js} +29 -20
- package/es-modules/{parts-more → Series}/WaterfallSeries.js +145 -66
- package/es-modules/{modules/windbarb.src.js → Series/WindbarbSeries.js} +13 -9
- package/es-modules/{modules/wordcloud.src.js → Series/WordcloudSeries.js} +17 -13
- package/es-modules/{modules/xrange.src.js → Series/XRangeSeries.js} +16 -12
- package/es-modules/{indicators/acceleration-bands.src.js → Stock/Indicators/ABIndicator.js} +8 -8
- package/es-modules/{indicators/accumulation-distribution.src.js → Stock/Indicators/ADIndicator.js} +5 -4
- package/es-modules/{indicators/ao.src.js → Stock/Indicators/AOIndicator.js} +6 -5
- package/es-modules/{indicators/apo.src.js → Stock/Indicators/APOIndicator.js} +8 -8
- package/es-modules/{indicators/atr.src.js → Stock/Indicators/ATRIndicator.js} +6 -6
- package/es-modules/{indicators/aroon.src.js → Stock/Indicators/AroonIndicator.js} +7 -6
- package/es-modules/{indicators/aroon-oscillator.src.js → Stock/Indicators/AroonOscillatorIndicator.js} +8 -8
- package/es-modules/{indicators/bollinger-bands.src.js → Stock/Indicators/BBIndicator.js} +8 -8
- package/es-modules/{indicators/cci.src.js → Stock/Indicators/CCIIndicator.js} +5 -4
- package/es-modules/{indicators/cmf.src.js → Stock/Indicators/CMFIndicator.js} +3 -4
- package/es-modules/{indicators/chaikin.src.js → Stock/Indicators/ChaikinIndicator.js} +10 -9
- package/es-modules/{indicators/dema.src.js → Stock/Indicators/DEMAIndicator.js} +8 -8
- package/es-modules/{indicators/dpo.src.js → Stock/Indicators/DPOIndicator.js} +5 -4
- package/es-modules/{indicators/ema.src.js → Stock/Indicators/EMAIndicator.js} +4 -4
- package/es-modules/{indicators/ichimoku-kinko-hyo.src.js → Stock/Indicators/IKHIndicator.js} +23 -20
- package/es-modules/{indicators/keltner-channels.src.js → Stock/Indicators/KeltnerChannelsIndicator.js} +11 -8
- package/es-modules/{indicators/macd.src.js → Stock/Indicators/MACDIndicator.js} +9 -6
- package/es-modules/{indicators/mfi.src.js → Stock/Indicators/MFIIndicator.js} +5 -4
- package/es-modules/{indicators/momentum.src.js → Stock/Indicators/MomentumIndicator.js} +5 -4
- package/es-modules/{indicators/natr.src.js → Stock/Indicators/NATRIndicator.js} +4 -6
- package/es-modules/{indicators/price-channel.src.js → Stock/Indicators/PCIndicator.js} +9 -8
- package/es-modules/{indicators/ppo.src.js → Stock/Indicators/PPOIndicator.js} +8 -8
- package/es-modules/{indicators/psar.src.js → Stock/Indicators/PSARIndicator.js} +3 -4
- package/es-modules/{indicators/pivot-points.src.js → Stock/Indicators/PivotPointsIndicator.js} +6 -6
- package/es-modules/{indicators/price-envelopes.src.js → Stock/Indicators/PriceEnvelopesIndicator.js} +6 -6
- package/es-modules/{indicators/roc.src.js → Stock/Indicators/ROCIndicator.js} +5 -4
- package/es-modules/{indicators/rsi.src.js → Stock/Indicators/RSIIndicator.js} +5 -4
- package/es-modules/{indicators/regressions.src.js → Stock/Indicators/RegressionIndicators.js} +8 -7
- package/es-modules/{indicators/indicators.src.js → Stock/Indicators/SMAIndicator.js} +12 -8
- package/es-modules/{indicators/slow-stochastic.src.js → Stock/Indicators/SlowStochasticIndicator.js} +6 -8
- package/es-modules/{indicators/stochastic.src.js → Stock/Indicators/StochasticIndicator.js} +9 -9
- package/es-modules/{indicators/supertrend.src.js → Stock/Indicators/SupertrendIndicator.js} +8 -7
- package/es-modules/{indicators/tema.src.js → Stock/Indicators/TEMAIndicator.js} +8 -8
- package/es-modules/{indicators/trix.src.js → Stock/Indicators/TRIXIndicator.js} +8 -8
- package/es-modules/{indicators/trendline.src.js → Stock/Indicators/TrendLineIndicator.js} +5 -4
- package/es-modules/{indicators/volume-by-price.src.js → Stock/Indicators/VBPIndicator.js} +10 -7
- package/es-modules/{indicators/vwap.src.js → Stock/Indicators/VWAPIndicator.js} +5 -4
- package/es-modules/{indicators/wma.src.js → Stock/Indicators/WMAIndicator.js} +5 -4
- package/es-modules/{indicators/williams-r.src.js → Stock/Indicators/WilliamsRIndicator.js} +7 -6
- package/es-modules/{indicators/zigzag.src.js → Stock/Indicators/ZigzagIndicator.js} +5 -7
- package/es-modules/{modules/stock-tools-bindings.js → Stock/StockToolsBindings.js} +22 -7
- package/es-modules/{modules/stock-tools-gui.js → Stock/StockToolsGui.js} +17 -17
- package/es-modules/error-messages.js +7 -2
- package/es-modules/highcharts.src.js +19853 -0
- package/es-modules/masters/highcharts-3d.src.js +11 -12
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +15 -15
- package/es-modules/masters/highcharts.src.js +28 -27
- 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 +2 -2
- package/es-modules/masters/indicators/accumulation-distribution.src.js +2 -2
- package/es-modules/masters/indicators/ao.src.js +2 -2
- package/es-modules/masters/indicators/apo.src.js +2 -2
- package/es-modules/masters/indicators/aroon-oscillator.src.js +2 -2
- package/es-modules/masters/indicators/aroon.src.js +2 -2
- package/es-modules/masters/indicators/atr.src.js +2 -2
- package/es-modules/masters/indicators/bollinger-bands.src.js +2 -2
- package/es-modules/masters/indicators/cci.src.js +2 -2
- package/es-modules/masters/indicators/chaikin.src.js +2 -2
- package/es-modules/masters/indicators/cmf.src.js +2 -2
- package/es-modules/masters/indicators/dema.src.js +2 -2
- package/es-modules/masters/indicators/dpo.src.js +2 -2
- package/es-modules/masters/indicators/ema.src.js +2 -2
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +2 -2
- package/es-modules/masters/indicators/indicators-all.src.js +41 -41
- package/es-modules/masters/indicators/indicators.src.js +2 -2
- package/es-modules/masters/indicators/keltner-channels.src.js +2 -2
- package/es-modules/masters/indicators/macd.src.js +2 -2
- package/es-modules/masters/indicators/mfi.src.js +2 -2
- package/es-modules/masters/indicators/momentum.src.js +2 -2
- package/es-modules/masters/indicators/natr.src.js +2 -2
- package/es-modules/masters/indicators/pivot-points.src.js +2 -2
- package/es-modules/masters/indicators/ppo.src.js +2 -2
- package/es-modules/masters/indicators/price-channel.src.js +2 -2
- package/es-modules/masters/indicators/price-envelopes.src.js +2 -2
- package/es-modules/masters/indicators/psar.src.js +2 -2
- package/es-modules/masters/indicators/regressions.src.js +2 -2
- package/es-modules/masters/indicators/roc.src.js +2 -2
- package/es-modules/masters/indicators/rsi.src.js +2 -2
- package/es-modules/masters/indicators/slow-stochastic.src.js +2 -2
- package/es-modules/masters/indicators/stochastic.src.js +2 -2
- package/es-modules/masters/indicators/supertrend.src.js +2 -2
- package/es-modules/masters/indicators/tema.src.js +2 -2
- package/es-modules/masters/indicators/trendline.src.js +2 -2
- package/es-modules/masters/indicators/trix.src.js +2 -2
- package/es-modules/masters/indicators/volume-by-price.src.js +2 -2
- package/es-modules/masters/indicators/vwap.src.js +2 -2
- package/es-modules/masters/indicators/williams-r.src.js +2 -2
- package/es-modules/masters/indicators/wma.src.js +2 -2
- package/es-modules/masters/indicators/zigzag.src.js +2 -2
- package/es-modules/masters/modules/accessibility.src.js +2 -2
- package/es-modules/masters/modules/annotations-advanced.src.js +13 -13
- package/es-modules/masters/modules/annotations.src.js +4 -4
- package/es-modules/masters/modules/arrow-symbols.src.js +2 -2
- package/es-modules/masters/modules/boost-canvas.src.js +2 -2
- package/es-modules/masters/modules/boost.src.js +2 -2
- package/es-modules/masters/modules/broken-axis.src.js +2 -2
- package/es-modules/masters/modules/bullet.src.js +2 -2
- package/es-modules/masters/modules/coloraxis.src.js +2 -2
- package/es-modules/masters/modules/current-date-indicator.src.js +2 -2
- package/es-modules/masters/modules/cylinder.src.js +2 -2
- package/es-modules/masters/modules/data.src.js +2 -2
- package/es-modules/masters/modules/datagrouping.src.js +2 -2
- package/es-modules/masters/modules/debugger.src.js +2 -2
- package/es-modules/masters/modules/dependency-wheel.src.js +2 -2
- package/es-modules/masters/modules/dotplot.src.js +2 -2
- package/es-modules/masters/modules/drag-panes.src.js +2 -2
- package/es-modules/masters/modules/draggable-points.src.js +2 -2
- package/es-modules/masters/modules/drilldown.src.js +2 -2
- package/es-modules/masters/modules/dumbbell.src.js +2 -2
- package/es-modules/masters/modules/export-data.src.js +2 -2
- package/es-modules/masters/modules/exporting.src.js +3 -3
- package/es-modules/masters/modules/full-screen.src.js +2 -2
- package/es-modules/masters/modules/funnel.src.js +2 -2
- package/es-modules/masters/modules/funnel3d.src.js +2 -2
- package/es-modules/masters/modules/gantt.src.js +6 -6
- package/es-modules/masters/modules/grid-axis.src.js +2 -2
- package/es-modules/masters/modules/heatmap.src.js +4 -4
- package/es-modules/masters/modules/histogram-bellcurve.src.js +3 -3
- package/es-modules/masters/modules/item-series.src.js +2 -2
- package/es-modules/masters/modules/lollipop.src.js +2 -2
- package/es-modules/masters/modules/map.src.js +13 -13
- package/es-modules/masters/modules/marker-clusters.src.js +2 -2
- package/es-modules/masters/modules/networkgraph.src.js +2 -2
- package/es-modules/masters/modules/no-data-to-display.src.js +2 -2
- package/es-modules/masters/modules/offline-exporting.src.js +2 -2
- package/es-modules/masters/modules/oldie-polyfills.src.js +2 -2
- package/es-modules/masters/modules/oldie.src.js +2 -2
- package/es-modules/masters/modules/organization.src.js +2 -2
- package/es-modules/masters/modules/overlapping-datalabels.src.js +2 -2
- package/es-modules/masters/modules/parallel-coordinates.src.js +2 -2
- package/es-modules/masters/modules/pareto.src.js +2 -2
- package/es-modules/masters/modules/pathfinder.src.js +2 -2
- package/es-modules/masters/modules/pattern-fill.src.js +2 -2
- package/es-modules/masters/modules/price-indicator.src.js +2 -2
- package/es-modules/masters/modules/pyramid3d.src.js +2 -2
- package/es-modules/masters/modules/sankey.src.js +2 -2
- package/es-modules/masters/modules/series-label.src.js +2 -2
- package/es-modules/masters/modules/solid-gauge.src.js +2 -2
- package/es-modules/masters/modules/sonification.src.js +2 -2
- package/es-modules/masters/modules/static-scale.src.js +2 -2
- package/es-modules/masters/modules/stock-tools.src.js +3 -3
- package/es-modules/masters/modules/stock.src.js +10 -10
- package/es-modules/masters/modules/streamgraph.src.js +2 -2
- package/es-modules/masters/modules/sunburst.src.js +2 -2
- package/es-modules/masters/modules/tilemap.src.js +2 -2
- package/es-modules/masters/modules/timeline.src.js +2 -2
- package/es-modules/masters/modules/treegrid.src.js +2 -2
- package/es-modules/masters/modules/treemap.src.js +2 -2
- package/es-modules/masters/modules/variable-pie.src.js +2 -2
- package/es-modules/masters/modules/variwide.src.js +2 -2
- package/es-modules/masters/modules/vector.src.js +2 -2
- package/es-modules/masters/modules/venn.src.js +2 -2
- package/es-modules/masters/modules/windbarb.src.js +2 -2
- package/es-modules/masters/modules/wordcloud.src.js +2 -2
- package/es-modules/masters/modules/xrange.src.js +2 -2
- package/es-modules/masters/themes/avocado.src.js +2 -2
- package/es-modules/masters/themes/dark-blue.src.js +2 -2
- package/es-modules/masters/themes/dark-green.src.js +2 -2
- package/es-modules/masters/themes/dark-unica.src.js +2 -2
- package/es-modules/masters/themes/gray.src.js +2 -2
- package/es-modules/masters/themes/grid-light.src.js +2 -2
- package/es-modules/masters/themes/grid.src.js +2 -2
- package/es-modules/masters/themes/high-contrast-dark.src.js +2 -2
- package/es-modules/masters/themes/high-contrast-light.src.js +2 -2
- package/es-modules/masters/themes/sand-signika.src.js +2 -2
- package/es-modules/masters/themes/skies.src.js +2 -2
- package/es-modules/masters/themes/sunset.src.js +2 -2
- package/highcharts-3d.js +86 -88
- package/highcharts-3d.js.map +1 -1
- package/highcharts-3d.src.js +1713 -1615
- package/highcharts-gantt.js +730 -697
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.js +11747 -10110
- package/highcharts-more.js +164 -161
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.js +766 -523
- package/highcharts.d.ts +7728 -1337
- package/highcharts.js +538 -515
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +7728 -1337
- package/highcharts.src.js +8517 -7691
- package/highmaps.js +636 -612
- package/highmaps.js.map +1 -1
- package/highmaps.src.js +9151 -8209
- package/highstock.js +697 -671
- package/highstock.js.map +1 -1
- package/highstock.src.js +8919 -8049
- package/indicators/acceleration-bands.js +8 -8
- package/indicators/acceleration-bands.js.map +1 -1
- package/indicators/acceleration-bands.src.js +8 -8
- package/indicators/accumulation-distribution.js +4 -4
- package/indicators/accumulation-distribution.js.map +1 -1
- package/indicators/accumulation-distribution.src.js +5 -5
- package/indicators/ao.js +5 -5
- package/indicators/ao.js.map +1 -1
- package/indicators/ao.src.js +6 -6
- package/indicators/apo.js +5 -5
- package/indicators/apo.js.map +1 -1
- package/indicators/apo.src.js +8 -9
- package/indicators/aroon-oscillator.js +8 -8
- package/indicators/aroon-oscillator.js.map +1 -1
- package/indicators/aroon-oscillator.src.js +8 -9
- package/indicators/aroon.js +7 -7
- package/indicators/aroon.js.map +1 -1
- package/indicators/aroon.src.js +7 -7
- package/indicators/atr.js +4 -4
- package/indicators/atr.js.map +1 -1
- package/indicators/atr.src.js +6 -14
- package/indicators/bollinger-bands.js +8 -8
- package/indicators/bollinger-bands.js.map +1 -1
- package/indicators/bollinger-bands.src.js +8 -8
- package/indicators/cci.js +4 -4
- package/indicators/cci.js.map +1 -1
- package/indicators/cci.src.js +5 -5
- package/indicators/chaikin.js +6 -6
- package/indicators/chaikin.js.map +1 -1
- package/indicators/chaikin.src.js +75 -75
- package/indicators/cmf.js +4 -4
- package/indicators/cmf.js.map +1 -1
- package/indicators/cmf.src.js +4 -4
- package/indicators/dema.js +5 -5
- package/indicators/dema.js.map +1 -1
- package/indicators/dema.src.js +8 -9
- package/indicators/dpo.js +4 -4
- package/indicators/dpo.js.map +1 -1
- package/indicators/dpo.src.js +5 -5
- package/indicators/ema.js +4 -4
- package/indicators/ema.js.map +1 -1
- package/indicators/ema.src.js +4 -5
- package/indicators/ichimoku-kinko-hyo.js +13 -13
- package/indicators/ichimoku-kinko-hyo.js.map +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +21 -20
- package/indicators/indicators-all.js +119 -118
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.js +231 -240
- package/indicators/indicators.js +9 -9
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +9 -9
- package/indicators/keltner-channels.js +8 -8
- package/indicators/keltner-channels.js.map +1 -1
- package/indicators/keltner-channels.src.js +13 -10
- package/indicators/macd.js +10 -10
- package/indicators/macd.js.map +1 -1
- package/indicators/macd.src.js +8 -7
- package/indicators/mfi.js +4 -4
- package/indicators/mfi.js.map +1 -1
- package/indicators/mfi.src.js +5 -5
- package/indicators/momentum.js +4 -4
- package/indicators/momentum.js.map +1 -1
- package/indicators/momentum.src.js +5 -5
- package/indicators/natr.js +3 -3
- package/indicators/natr.js.map +1 -1
- package/indicators/natr.src.js +5 -5
- package/indicators/pivot-points.js +8 -8
- package/indicators/pivot-points.js.map +1 -1
- package/indicators/pivot-points.src.js +6 -6
- package/indicators/ppo.js +5 -5
- package/indicators/ppo.js.map +1 -1
- package/indicators/ppo.src.js +8 -9
- package/indicators/price-channel.js +8 -8
- package/indicators/price-channel.js.map +1 -1
- package/indicators/price-channel.src.js +66 -66
- package/indicators/price-envelopes.js +6 -6
- package/indicators/price-envelopes.js.map +1 -1
- package/indicators/price-envelopes.src.js +6 -6
- package/indicators/psar.js +3 -3
- package/indicators/psar.js.map +1 -1
- package/indicators/psar.src.js +4 -4
- package/indicators/regressions.js +6 -6
- package/indicators/regressions.js.map +1 -1
- package/indicators/regressions.src.js +8 -8
- package/indicators/roc.js +3 -3
- package/indicators/roc.js.map +1 -1
- package/indicators/roc.src.js +5 -5
- package/indicators/rsi.js +4 -4
- package/indicators/rsi.js.map +1 -1
- package/indicators/rsi.src.js +5 -5
- package/indicators/slow-stochastic.js +5 -5
- package/indicators/slow-stochastic.js.map +1 -1
- package/indicators/slow-stochastic.src.js +7 -7
- package/indicators/stochastic.js +9 -9
- package/indicators/stochastic.js.map +1 -1
- package/indicators/stochastic.src.js +67 -67
- package/indicators/supertrend.js +9 -9
- package/indicators/supertrend.js.map +1 -1
- package/indicators/supertrend.src.js +9 -7
- package/indicators/tema.js +6 -6
- package/indicators/tema.js.map +1 -1
- package/indicators/tema.src.js +8 -9
- package/indicators/trendline.js +3 -3
- package/indicators/trendline.js.map +1 -1
- package/indicators/trendline.src.js +5 -5
- package/indicators/trix.js +4 -4
- package/indicators/trix.js.map +1 -1
- package/indicators/trix.src.js +8 -8
- package/indicators/volume-by-price.js +13 -13
- package/indicators/volume-by-price.js.map +1 -1
- package/indicators/volume-by-price.src.js +7 -8
- package/indicators/vwap.js +4 -4
- package/indicators/vwap.js.map +1 -1
- package/indicators/vwap.src.js +5 -5
- package/indicators/williams-r.js +4 -4
- package/indicators/williams-r.js.map +1 -1
- package/indicators/williams-r.src.js +7 -7
- package/indicators/wma.js +4 -4
- package/indicators/wma.js.map +1 -1
- package/indicators/wma.src.js +5 -5
- package/indicators/zigzag.js +4 -4
- package/indicators/zigzag.js.map +1 -1
- package/indicators/zigzag.src.js +6 -7
- package/modules/accessibility.d.ts +0 -35
- package/modules/accessibility.js +171 -168
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.d.ts +0 -35
- package/modules/accessibility.src.js +369 -252
- package/modules/annotations-advanced.js +158 -136
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.js +1929 -1263
- package/modules/annotations.js +105 -94
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.js +1485 -1101
- package/modules/arrow-symbols.js +4 -4
- package/modules/arrow-symbols.js.map +1 -1
- package/modules/arrow-symbols.src.js +10 -12
- package/modules/boost-canvas.js +15 -15
- package/modules/boost-canvas.js.map +1 -1
- package/modules/boost-canvas.src.js +17 -17
- package/modules/boost.d.ts +4 -0
- package/modules/boost.js +77 -64
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.d.ts +4 -0
- package/modules/boost.src.js +581 -33
- package/modules/broken-axis.js +10 -10
- package/modules/broken-axis.js.map +1 -1
- package/modules/broken-axis.src.js +4 -5
- package/modules/bullet.js +6 -6
- package/modules/bullet.js.map +1 -1
- package/modules/bullet.src.js +8 -8
- package/modules/coloraxis.js +22 -21
- package/modules/coloraxis.js.map +1 -1
- package/modules/coloraxis.src.js +67 -59
- package/modules/current-date-indicator.js +3 -3
- package/modules/current-date-indicator.js.map +1 -1
- package/modules/current-date-indicator.src.js +4 -5
- package/modules/cylinder.js +8 -8
- package/modules/cylinder.js.map +1 -1
- package/modules/cylinder.src.js +21 -23
- package/modules/data.d.ts +2 -2
- package/modules/data.js +32 -32
- package/modules/data.js.map +1 -1
- package/modules/data.src.d.ts +2 -2
- package/modules/data.src.js +26 -25
- package/modules/datagrouping.js +17 -17
- package/modules/datagrouping.js.map +1 -1
- package/modules/datagrouping.src.js +6 -7
- package/modules/debugger.js +5 -5
- package/modules/debugger.js.map +1 -1
- package/modules/debugger.src.js +13 -8
- package/modules/dependency-wheel.js +8 -8
- package/modules/dependency-wheel.js.map +1 -1
- package/modules/dependency-wheel.src.js +10 -10
- package/modules/dotplot.js +5 -5
- package/modules/dotplot.js.map +1 -1
- package/modules/dotplot.src.js +6 -14
- package/modules/drag-panes.js +10 -10
- package/modules/drag-panes.js.map +1 -1
- package/modules/drag-panes.src.js +4 -6
- package/modules/draggable-points.js +33 -33
- package/modules/draggable-points.js.map +1 -1
- package/modules/draggable-points.src.js +22 -35
- package/modules/drilldown.d.ts +1 -1
- package/modules/drilldown.js +23 -22
- package/modules/drilldown.js.map +1 -1
- package/modules/drilldown.src.d.ts +1 -1
- package/modules/drilldown.src.js +66 -53
- package/modules/dumbbell.d.ts +4 -0
- package/modules/dumbbell.js +24 -9
- package/modules/dumbbell.js.map +1 -1
- package/modules/dumbbell.src.d.ts +4 -0
- package/modules/dumbbell.src.js +1029 -104
- package/modules/export-data.d.ts +4 -29
- package/modules/export-data.js +21 -21
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.d.ts +4 -29
- package/modules/export-data.src.js +155 -189
- package/modules/exporting.d.ts +2 -0
- package/modules/exporting.js +33 -33
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.d.ts +2 -0
- package/modules/exporting.src.js +40 -30
- package/modules/full-screen.js +7 -7
- package/modules/full-screen.js.map +1 -1
- package/modules/full-screen.src.js +4 -3
- package/modules/funnel.js +9 -9
- package/modules/funnel.js.map +1 -1
- package/modules/funnel.src.js +14 -15
- package/modules/funnel3d.js +17 -17
- package/modules/funnel3d.js.map +1 -1
- package/modules/funnel3d.src.js +12 -14
- package/modules/gantt.js +194 -183
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +2071 -1260
- package/modules/grid-axis.js +22 -19
- package/modules/grid-axis.js.map +1 -1
- package/modules/grid-axis.src.js +149 -43
- package/modules/heatmap.js +33 -32
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +130 -114
- package/modules/histogram-bellcurve.js +10 -10
- package/modules/histogram-bellcurve.js.map +1 -1
- package/modules/histogram-bellcurve.src.js +57 -16
- package/modules/item-series.js +9 -9
- package/modules/item-series.js.map +1 -1
- package/modules/item-series.src.js +20 -13
- package/modules/lollipop.d.ts +20 -1
- package/modules/lollipop.js +26 -4
- package/modules/lollipop.js.map +1 -1
- package/modules/lollipop.src.d.ts +20 -1
- package/modules/lollipop.src.js +1452 -10
- package/modules/map.d.ts +2 -2
- package/modules/map.js +99 -98
- package/modules/map.js.map +1 -1
- package/modules/map.src.d.ts +2 -2
- package/modules/map.src.js +1442 -1326
- package/modules/marker-clusters.js +35 -36
- package/modules/marker-clusters.js.map +1 -1
- package/modules/marker-clusters.src.js +31 -51
- package/modules/networkgraph.js +47 -46
- package/modules/networkgraph.js.map +1 -1
- package/modules/networkgraph.src.js +98 -81
- package/modules/no-data-to-display.js +4 -4
- package/modules/no-data-to-display.js.map +1 -1
- package/modules/no-data-to-display.src.js +17 -13
- package/modules/offline-exporting.js +15 -15
- package/modules/offline-exporting.js.map +1 -1
- package/modules/offline-exporting.src.js +63 -46
- package/modules/oldie-polyfills.js +6 -6
- package/modules/oldie-polyfills.js.map +1 -1
- package/modules/oldie-polyfills.src.js +7 -2
- package/modules/oldie.js +52 -26
- package/modules/oldie.js.map +1 -1
- package/modules/oldie.src.js +1411 -34
- package/modules/organization.js +11 -11
- package/modules/organization.js.map +1 -1
- package/modules/organization.src.js +7 -6
- package/modules/overlapping-datalabels.js +1 -1
- package/modules/overlapping-datalabels.src.js +1 -1
- package/modules/parallel-coordinates.js +11 -11
- package/modules/parallel-coordinates.js.map +1 -1
- package/modules/parallel-coordinates.src.js +144 -136
- package/modules/pareto.js +5 -5
- package/modules/pareto.js.map +1 -1
- package/modules/pareto.src.js +8 -9
- package/modules/pathfinder.js +31 -27
- package/modules/pathfinder.js.map +1 -1
- package/modules/pathfinder.src.js +1589 -985
- package/modules/pattern-fill.js +13 -13
- package/modules/pattern-fill.js.map +1 -1
- package/modules/pattern-fill.src.js +25 -21
- package/modules/price-indicator.js +4 -4
- package/modules/price-indicator.js.map +1 -1
- package/modules/price-indicator.src.js +5 -3
- package/modules/pyramid3d.js +3 -3
- package/modules/pyramid3d.js.map +1 -1
- package/modules/pyramid3d.src.js +4 -5
- package/modules/sankey.js +25 -26
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.js +39 -36
- package/modules/series-label.js +17 -17
- package/modules/series-label.js.map +1 -1
- package/modules/series-label.src.js +17 -17
- package/modules/solid-gauge.js +8 -8
- package/modules/solid-gauge.js.map +1 -1
- package/modules/solid-gauge.src.js +123 -91
- package/modules/sonification.d.ts +33 -16
- package/modules/sonification.js +55 -49
- package/modules/sonification.js.map +1 -1
- package/modules/sonification.src.d.ts +33 -16
- package/modules/sonification.src.js +361 -115
- package/modules/static-scale.js +4 -4
- package/modules/static-scale.js.map +1 -1
- package/modules/static-scale.src.js +3 -4
- package/modules/stock-tools.d.ts +23 -1
- package/modules/stock-tools.js +150 -84
- package/modules/stock-tools.js.map +1 -1
- package/modules/stock-tools.src.d.ts +23 -1
- package/modules/stock-tools.src.js +3792 -44
- package/modules/stock.js +161 -158
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.js +456 -412
- package/modules/streamgraph.js +2 -2
- package/modules/streamgraph.js.map +1 -1
- package/modules/streamgraph.src.js +42 -5
- package/modules/sunburst.js +51 -49
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +152 -52
- package/modules/tilemap.js +14 -14
- package/modules/tilemap.js.map +1 -1
- package/modules/tilemap.src.js +12 -11
- package/modules/timeline.js +14 -14
- package/modules/timeline.js.map +1 -1
- package/modules/timeline.src.js +19 -18
- package/modules/treegrid.js +57 -52
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +236 -60
- package/modules/treemap.js +35 -34
- package/modules/treemap.js.map +1 -1
- package/modules/treemap.src.js +213 -118
- package/modules/variable-pie.js +8 -8
- package/modules/variable-pie.js.map +1 -1
- package/modules/variable-pie.src.js +12 -10
- package/modules/variwide.js +8 -8
- package/modules/variwide.js.map +1 -1
- package/modules/variwide.src.js +8 -8
- package/modules/vector.js +6 -6
- package/modules/vector.js.map +1 -1
- package/modules/vector.src.js +9 -9
- package/modules/venn.js +26 -26
- package/modules/venn.js.map +1 -1
- package/modules/venn.src.js +49 -37
- package/modules/windbarb.js +11 -11
- package/modules/windbarb.js.map +1 -1
- package/modules/windbarb.src.js +11 -12
- package/modules/wordcloud.js +19 -19
- package/modules/wordcloud.js.map +1 -1
- package/modules/wordcloud.src.js +26 -18
- package/modules/xrange.js +12 -12
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +19 -20
- package/package.json +1 -1
- package/themes/avocado.js +3 -3
- package/themes/avocado.js.map +1 -1
- package/themes/avocado.src.js +5 -4
- package/themes/dark-blue.js +3 -3
- package/themes/dark-blue.js.map +1 -1
- package/themes/dark-blue.src.js +4 -3
- package/themes/dark-green.js +3 -3
- package/themes/dark-green.js.map +1 -1
- package/themes/dark-green.src.js +4 -3
- package/themes/dark-unica.js +7 -7
- package/themes/dark-unica.js.map +1 -1
- package/themes/dark-unica.src.js +6 -6
- package/themes/gray.js +3 -3
- package/themes/gray.js.map +1 -1
- package/themes/gray.src.js +5 -4
- package/themes/grid-light.js +4 -4
- package/themes/grid-light.js.map +1 -1
- package/themes/grid-light.src.js +4 -3
- package/themes/grid.js +3 -3
- package/themes/grid.js.map +1 -1
- package/themes/grid.src.js +4 -3
- package/themes/high-contrast-dark.js +6 -6
- package/themes/high-contrast-dark.js.map +1 -1
- package/themes/high-contrast-dark.src.js +5 -4
- package/themes/high-contrast-light.js +3 -3
- package/themes/high-contrast-light.js.map +1 -1
- package/themes/high-contrast-light.src.js +4 -3
- package/themes/sand-signika.js +5 -5
- package/themes/sand-signika.js.map +1 -1
- package/themes/sand-signika.src.js +4 -3
- package/themes/skies.js +4 -4
- package/themes/skies.js.map +1 -1
- package/themes/skies.src.js +5 -4
- package/themes/sunset.js +3 -3
- package/themes/sunset.js.map +1 -1
- package/themes/sunset.src.js +5 -4
- package/es-modules/annotations/controllable/ControllableCircle.js +0 -79
- package/es-modules/annotations/controllable/ControllableImage.js +0 -79
- package/es-modules/annotations/controllable/ControllableRect.js +0 -82
- package/es-modules/annotations/types/InfinityLine.js +0 -110
- package/es-modules/masters/modules/map-parser.src.js +0 -12
- package/es-modules/modules/accessibility/components/InfoRegionsComponent/AnnotationsA11y.js +0 -80
- package/es-modules/modules/accessibility/components/InfoRegionsComponent/InfoRegionsComponent.js +0 -499
- package/es-modules/modules/accessibility/components/SeriesComponent/forcedMarkers.js +0 -147
- package/es-modules/modules/map-parser.src.js +0 -365
- package/es-modules/modules/sonification/options.js +0 -36
- package/es-modules/parts-3d/Chart.js +0 -1577
- package/es-modules/parts-3d/VMLRenderer.js +0 -35
- package/es-modules/parts-gantt/PathfinderAlgorithms.js +0 -656
- package/modules/map-parser.d.ts +0 -17
- package/modules/map-parser.js +0 -17
- package/modules/map-parser.js.map +0 -1
- package/modules/map-parser.src.d.ts +0 -17
- package/modules/map-parser.src.js +0 -421
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* @license Highcharts JS v8.
|
|
2
|
+
* @license Highcharts JS v8.2.2 (2020-10-22)
|
|
3
3
|
*
|
|
4
4
|
* Sonification module
|
|
5
5
|
*
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
obj[path] = fn.apply(null, args);
|
|
29
29
|
}
|
|
30
30
|
}
|
|
31
|
-
_registerModule(_modules, '
|
|
31
|
+
_registerModule(_modules, 'Extensions/Sonification/Instrument.js', [_modules['Core/Globals.js'], _modules['Core/Utilities.js']], function (H, U) {
|
|
32
32
|
/* *
|
|
33
33
|
*
|
|
34
34
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -60,6 +60,11 @@
|
|
|
60
60
|
* @name Highcharts.InstrumentOptionsObject#id
|
|
61
61
|
* @type {string|undefined}
|
|
62
62
|
*/ /**
|
|
63
|
+
* The master volume multiplier to apply to the instrument, regardless of other
|
|
64
|
+
* volume changes. Defaults to 1.
|
|
65
|
+
* @name Highcharts.InstrumentPlayOptionsObject#masterVolume
|
|
66
|
+
* @type {number|undefined}
|
|
67
|
+
*/ /**
|
|
63
68
|
* When using functions to determine frequency or other parameters during
|
|
64
69
|
* playback, this options specifies how often to call the callback functions.
|
|
65
70
|
* Number given in milliseconds. Defaults to 20.
|
|
@@ -141,6 +146,7 @@
|
|
|
141
146
|
var defaultOptions = {
|
|
142
147
|
type: 'oscillator',
|
|
143
148
|
playCallbackInterval: 20,
|
|
149
|
+
masterVolume: 1,
|
|
144
150
|
oscillator: {
|
|
145
151
|
waveformShape: 'sine'
|
|
146
152
|
}
|
|
@@ -173,18 +179,24 @@
|
|
|
173
179
|
}
|
|
174
180
|
this.options = merge(defaultOptions, options);
|
|
175
181
|
this.id = this.options.id = options && options.id || uniqueKey();
|
|
182
|
+
this.masterVolume = this.options.masterVolume || 0;
|
|
176
183
|
// Init the audio nodes
|
|
177
184
|
var ctx = H.audioContext;
|
|
185
|
+
// Note: Destination node can be overridden by setting
|
|
186
|
+
// Highcharts.sonification.Instrument.prototype.destinationNode.
|
|
187
|
+
// This allows for inserting an additional chain of nodes after
|
|
188
|
+
// the default processing.
|
|
189
|
+
var destination = this.destinationNode || ctx.destination;
|
|
178
190
|
this.gainNode = ctx.createGain();
|
|
179
191
|
this.setGain(0);
|
|
180
192
|
this.panNode = ctx.createStereoPanner && ctx.createStereoPanner();
|
|
181
193
|
if (this.panNode) {
|
|
182
194
|
this.setPan(0);
|
|
183
195
|
this.gainNode.connect(this.panNode);
|
|
184
|
-
this.panNode.connect(
|
|
196
|
+
this.panNode.connect(destination);
|
|
185
197
|
}
|
|
186
198
|
else {
|
|
187
|
-
this.gainNode.connect(
|
|
199
|
+
this.gainNode.connect(destination);
|
|
188
200
|
}
|
|
189
201
|
// Oscillator initialization
|
|
190
202
|
if (this.options.type === 'oscillator') {
|
|
@@ -259,7 +271,8 @@
|
|
|
259
271
|
};
|
|
260
272
|
/**
|
|
261
273
|
* Set gain level. A maximum of 1.2 is allowed before we emit a warning. The
|
|
262
|
-
* actual volume is not set above this level regardless of input.
|
|
274
|
+
* actual volume is not set above this level regardless of input. This function
|
|
275
|
+
* also handles the Instrument's master volume.
|
|
263
276
|
* @private
|
|
264
277
|
* @param {number} gainValue
|
|
265
278
|
* The gain level to set for the instrument.
|
|
@@ -268,19 +281,21 @@
|
|
|
268
281
|
* @return {void}
|
|
269
282
|
*/
|
|
270
283
|
Instrument.prototype.setGain = function (gainValue, rampTime) {
|
|
271
|
-
|
|
272
|
-
|
|
284
|
+
var gainNode = this.gainNode;
|
|
285
|
+
var newVal = gainValue * this.masterVolume;
|
|
286
|
+
if (gainNode) {
|
|
287
|
+
if (newVal > 1.2) {
|
|
273
288
|
console.warn(// eslint-disable-line
|
|
274
289
|
'Highcharts sonification warning: ' +
|
|
275
290
|
'Volume of instrument set too high.');
|
|
276
|
-
|
|
291
|
+
newVal = 1.2;
|
|
277
292
|
}
|
|
278
293
|
if (rampTime) {
|
|
279
|
-
|
|
280
|
-
|
|
294
|
+
gainNode.gain.setValueAtTime(gainNode.gain.value, H.audioContext.currentTime);
|
|
295
|
+
gainNode.gain.linearRampToValueAtTime(newVal, H.audioContext.currentTime + rampTime / 1000);
|
|
281
296
|
}
|
|
282
297
|
else {
|
|
283
|
-
|
|
298
|
+
gainNode.gain.setValueAtTime(newVal, H.audioContext.currentTime);
|
|
284
299
|
}
|
|
285
300
|
}
|
|
286
301
|
};
|
|
@@ -294,6 +309,15 @@
|
|
|
294
309
|
this.gainNode.gain.cancelScheduledValues(0);
|
|
295
310
|
}
|
|
296
311
|
};
|
|
312
|
+
/**
|
|
313
|
+
* Set the master volume multiplier of the instrument after creation.
|
|
314
|
+
* @param {number} volumeMultiplier
|
|
315
|
+
* The gain level to set for the instrument.
|
|
316
|
+
* @return {void}
|
|
317
|
+
*/
|
|
318
|
+
Instrument.prototype.setMasterVolume = function (volumeMultiplier) {
|
|
319
|
+
this.masterVolume = volumeMultiplier || 0;
|
|
320
|
+
};
|
|
297
321
|
/**
|
|
298
322
|
* Get the closest valid frequency for this instrument.
|
|
299
323
|
* @private
|
|
@@ -559,7 +583,7 @@
|
|
|
559
583
|
|
|
560
584
|
return Instrument;
|
|
561
585
|
});
|
|
562
|
-
_registerModule(_modules, '
|
|
586
|
+
_registerModule(_modules, 'Extensions/Sonification/MusicalFrequencies.js', [], function () {
|
|
563
587
|
/* *
|
|
564
588
|
*
|
|
565
589
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -673,7 +697,7 @@
|
|
|
673
697
|
|
|
674
698
|
return frequencies;
|
|
675
699
|
});
|
|
676
|
-
_registerModule(_modules, '
|
|
700
|
+
_registerModule(_modules, 'Extensions/Sonification/Utilities.js', [_modules['Extensions/Sonification/MusicalFrequencies.js'], _modules['Core/Utilities.js']], function (musicalFrequencies, U) {
|
|
677
701
|
/* *
|
|
678
702
|
*
|
|
679
703
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -825,14 +849,19 @@
|
|
|
825
849
|
* The possible extremes for this value.
|
|
826
850
|
* @param {object} limits
|
|
827
851
|
* Limits for the virtual axis.
|
|
852
|
+
* @param {boolean} [invert]
|
|
853
|
+
* Invert the virtual axis.
|
|
828
854
|
* @return {number}
|
|
829
855
|
* The value mapped to the virtual axis.
|
|
830
856
|
*/
|
|
831
|
-
virtualAxisTranslate: function (value, dataExtremes, limits) {
|
|
857
|
+
virtualAxisTranslate: function (value, dataExtremes, limits, invert) {
|
|
832
858
|
var lenValueAxis = dataExtremes.max - dataExtremes.min,
|
|
833
|
-
lenVirtualAxis = limits.max - limits.min,
|
|
834
|
-
|
|
835
|
-
|
|
859
|
+
lenVirtualAxis = Math.abs(limits.max - limits.min),
|
|
860
|
+
valueDelta = invert ?
|
|
861
|
+
dataExtremes.max - value :
|
|
862
|
+
value - dataExtremes.min,
|
|
863
|
+
virtualValueDelta = lenVirtualAxis * valueDelta / lenValueAxis,
|
|
864
|
+
virtualAxisValue = limits.min + virtualValueDelta;
|
|
836
865
|
return lenValueAxis > 0 ?
|
|
837
866
|
clamp(virtualAxisValue, limits.min, limits.max) :
|
|
838
867
|
limits.min;
|
|
@@ -841,7 +870,7 @@
|
|
|
841
870
|
|
|
842
871
|
return utilities;
|
|
843
872
|
});
|
|
844
|
-
_registerModule(_modules, '
|
|
873
|
+
_registerModule(_modules, 'Extensions/Sonification/InstrumentDefinitions.js', [_modules['Extensions/Sonification/Instrument.js'], _modules['Extensions/Sonification/Utilities.js']], function (Instrument, utilities) {
|
|
845
874
|
/* *
|
|
846
875
|
*
|
|
847
876
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -873,7 +902,7 @@
|
|
|
873
902
|
|
|
874
903
|
return instruments;
|
|
875
904
|
});
|
|
876
|
-
_registerModule(_modules, '
|
|
905
|
+
_registerModule(_modules, 'Extensions/Sonification/Earcon.js', [_modules['Core/Globals.js'], _modules['Core/Utilities.js']], function (H, U) {
|
|
877
906
|
/* *
|
|
878
907
|
*
|
|
879
908
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -994,11 +1023,6 @@
|
|
|
994
1023
|
copyId = '';
|
|
995
1024
|
if (instrument && instrument.play) {
|
|
996
1025
|
if (opts.playOptions) {
|
|
997
|
-
// Handle master pan/volume
|
|
998
|
-
if (typeof opts.playOptions.volume !== 'function') {
|
|
999
|
-
instrumentOpts.volume = pick(masterVolume, 1) *
|
|
1000
|
-
pick(opts.playOptions.volume, 1);
|
|
1001
|
-
}
|
|
1002
1026
|
instrumentOpts.pan = pick(masterPan, instrumentOpts.pan);
|
|
1003
1027
|
// Handle onEnd
|
|
1004
1028
|
instrOnEnd = instrumentOpts.onEnd;
|
|
@@ -1019,6 +1043,7 @@
|
|
|
1019
1043
|
// Play the instrument. Use a copy so we can play multiple at
|
|
1020
1044
|
// the same time.
|
|
1021
1045
|
instrumentCopy = instrument.copy();
|
|
1046
|
+
instrumentCopy.setMasterVolume(masterVolume);
|
|
1022
1047
|
copyId = instrumentCopy.id;
|
|
1023
1048
|
earcon.instrumentsPlaying[copyId] = instrumentCopy;
|
|
1024
1049
|
instrumentCopy.play(instrumentOpts);
|
|
@@ -1053,7 +1078,7 @@
|
|
|
1053
1078
|
|
|
1054
1079
|
return Earcon;
|
|
1055
1080
|
});
|
|
1056
|
-
_registerModule(_modules, '
|
|
1081
|
+
_registerModule(_modules, 'Extensions/Sonification/PointSonify.js', [_modules['Core/Globals.js'], _modules['Core/Utilities.js'], _modules['Extensions/Sonification/Utilities.js']], function (H, U, utilities) {
|
|
1057
1082
|
/* *
|
|
1058
1083
|
*
|
|
1059
1084
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -1078,20 +1103,24 @@
|
|
|
1078
1103
|
* Define the volume of the instrument. This can be a string with a data
|
|
1079
1104
|
* property name, e.g. `'y'`, in which case this data property is used to define
|
|
1080
1105
|
* the volume relative to the `y`-values of the other points. A higher `y` value
|
|
1081
|
-
* would then result in a higher volume.
|
|
1082
|
-
*
|
|
1083
|
-
*
|
|
1084
|
-
*
|
|
1085
|
-
*
|
|
1086
|
-
*
|
|
1106
|
+
* would then result in a higher volume. Alternatively, `'-y'` can be used,
|
|
1107
|
+
* which inverts the polarity, so that a higher `y` value results in a lower
|
|
1108
|
+
* volume. This option can also be a fixed number or a function. If it is a
|
|
1109
|
+
* function, this function is called in regular intervals while the note is
|
|
1110
|
+
* playing. It receives three arguments: The point, the dataExtremes, and the
|
|
1111
|
+
* current relative time - where 0 is the beginning of the note and 1 is the
|
|
1112
|
+
* end. The function should return the volume of the note as a number between
|
|
1113
|
+
* 0 and 1.
|
|
1087
1114
|
* @name Highcharts.PointInstrumentMappingObject#volume
|
|
1088
1115
|
* @type {string|number|Function}
|
|
1089
1116
|
*/ /**
|
|
1090
1117
|
* Define the duration of the notes for this instrument. This can be a string
|
|
1091
1118
|
* with a data property name, e.g. `'y'`, in which case this data property is
|
|
1092
1119
|
* used to define the duration relative to the `y`-values of the other points. A
|
|
1093
|
-
* higher `y` value would then result in a longer duration.
|
|
1094
|
-
*
|
|
1120
|
+
* higher `y` value would then result in a longer duration. Alternatively,
|
|
1121
|
+
* `'-y'` can be used, in which case the polarity is inverted, and a higher
|
|
1122
|
+
* `y` value would result in a shorter duration. This option can also be a
|
|
1123
|
+
* fixed number or a function. If it is a function, this function is called
|
|
1095
1124
|
* once before the note starts playing, and should return the duration in
|
|
1096
1125
|
* milliseconds. It receives two arguments: The point, and the dataExtremes.
|
|
1097
1126
|
* @name Highcharts.PointInstrumentMappingObject#duration
|
|
@@ -1101,24 +1130,28 @@
|
|
|
1101
1130
|
* property name, e.g. `'x'`, in which case this data property is used to define
|
|
1102
1131
|
* the panning relative to the `x`-values of the other points. A higher `x`
|
|
1103
1132
|
* value would then result in a higher panning value (panned further to the
|
|
1104
|
-
* right).
|
|
1105
|
-
*
|
|
1106
|
-
*
|
|
1107
|
-
*
|
|
1108
|
-
*
|
|
1109
|
-
*
|
|
1133
|
+
* right). Alternatively, `'-x'` can be used, in which case the polarity is
|
|
1134
|
+
* inverted, and a higher `x` value would result in a lower panning value
|
|
1135
|
+
* (panned further to the left). This option can also be a fixed number or a
|
|
1136
|
+
* function. If it is a function, this function is called in regular intervals
|
|
1137
|
+
* while the note is playing. It receives three arguments: The point, the
|
|
1138
|
+
* dataExtremes, and the current relative time - where 0 is the beginning of
|
|
1139
|
+
* the note and 1 is the end. The function should return the panning of the
|
|
1140
|
+
* note as a number between -1 and 1.
|
|
1110
1141
|
* @name Highcharts.PointInstrumentMappingObject#pan
|
|
1111
1142
|
* @type {string|number|Function|undefined}
|
|
1112
1143
|
*/ /**
|
|
1113
1144
|
* Define the frequency of the instrument. This can be a string with a data
|
|
1114
1145
|
* property name, e.g. `'y'`, in which case this data property is used to define
|
|
1115
1146
|
* the frequency relative to the `y`-values of the other points. A higher `y`
|
|
1116
|
-
* value would then result in a higher frequency.
|
|
1117
|
-
*
|
|
1118
|
-
*
|
|
1119
|
-
*
|
|
1120
|
-
*
|
|
1121
|
-
*
|
|
1147
|
+
* value would then result in a higher frequency. Alternatively, `'-y'` can be
|
|
1148
|
+
* used, in which case the polarity is inverted, and a higher `y` value would
|
|
1149
|
+
* result in a lower frequency. This option can also be a fixed number or a
|
|
1150
|
+
* function. If it is a function, this function is called in regular intervals
|
|
1151
|
+
* while the note is playing. It receives three arguments: The point, the
|
|
1152
|
+
* dataExtremes, and the current relative time - where 0 is the beginning of
|
|
1153
|
+
* the note and 1 is the end. The function should return the frequency of the
|
|
1154
|
+
* note as a number (in Hz).
|
|
1122
1155
|
* @name Highcharts.PointInstrumentMappingObject#frequency
|
|
1123
1156
|
* @type {string|number|Function}
|
|
1124
1157
|
*/
|
|
@@ -1262,8 +1295,10 @@
|
|
|
1262
1295
|
* @return {void}
|
|
1263
1296
|
*/
|
|
1264
1297
|
function pointSonify(options) {
|
|
1298
|
+
var _a;
|
|
1265
1299
|
var point = this,
|
|
1266
1300
|
chart = point.series.chart,
|
|
1301
|
+
masterVolume = pick(options.masterVolume, (_a = chart.options.sonification) === null || _a === void 0 ? void 0 : _a.masterVolume),
|
|
1267
1302
|
dataExtremes = options.dataExtremes || {},
|
|
1268
1303
|
// Get the value to pass to instrument.play from the mapping value
|
|
1269
1304
|
// passed in.
|
|
@@ -1281,13 +1316,17 @@
|
|
|
1281
1316
|
} :
|
|
1282
1317
|
value(point, dataExtremes);
|
|
1283
1318
|
}
|
|
1284
|
-
// String, this is a data prop.
|
|
1319
|
+
// String, this is a data prop. Potentially with negative polarity.
|
|
1285
1320
|
if (typeof value === 'string') {
|
|
1321
|
+
var hasInvertedPolarity = value.charAt(0) === '-';
|
|
1322
|
+
var dataProp = hasInvertedPolarity ? value.slice(1) : value;
|
|
1323
|
+
var pointValue = pick(point[dataProp],
|
|
1324
|
+
point.options[dataProp]);
|
|
1286
1325
|
// Find data extremes if we don't have them
|
|
1287
|
-
dataExtremes[
|
|
1288
|
-
utilities.calculateDataExtremes(point.series.chart,
|
|
1326
|
+
dataExtremes[dataProp] = dataExtremes[dataProp] ||
|
|
1327
|
+
utilities.calculateDataExtremes(point.series.chart, dataProp);
|
|
1289
1328
|
// Find the value
|
|
1290
|
-
return utilities.virtualAxisTranslate(
|
|
1329
|
+
return utilities.virtualAxisTranslate(pointValue, dataExtremes[dataProp], allowedExtremes, hasInvertedPolarity);
|
|
1291
1330
|
}
|
|
1292
1331
|
// Fixed number or something else weird, just use that
|
|
1293
1332
|
return value;
|
|
@@ -1340,6 +1379,9 @@
|
|
|
1340
1379
|
};
|
|
1341
1380
|
// Play the note on the instrument
|
|
1342
1381
|
if (instrument && instrument.play) {
|
|
1382
|
+
if (typeof masterVolume !== 'undefined') {
|
|
1383
|
+
instrument.setMasterVolume(masterVolume);
|
|
1384
|
+
}
|
|
1343
1385
|
point.sonification.instrumentsPlaying[instrument.id] =
|
|
1344
1386
|
instrument;
|
|
1345
1387
|
instrument.play({
|
|
@@ -1388,7 +1430,7 @@
|
|
|
1388
1430
|
|
|
1389
1431
|
return pointSonifyFunctions;
|
|
1390
1432
|
});
|
|
1391
|
-
_registerModule(_modules, '
|
|
1433
|
+
_registerModule(_modules, 'Extensions/Sonification/ChartSonify.js', [_modules['Core/Globals.js'], _modules['Core/Series/Point.js'], _modules['Core/Utilities.js'], _modules['Extensions/Sonification/Utilities.js']], function (H, Point, U, utilities) {
|
|
1392
1434
|
/* *
|
|
1393
1435
|
*
|
|
1394
1436
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -1487,7 +1529,8 @@
|
|
|
1487
1529
|
isArray = U.isArray,
|
|
1488
1530
|
merge = U.merge,
|
|
1489
1531
|
pick = U.pick,
|
|
1490
|
-
splat = U.splat
|
|
1532
|
+
splat = U.splat,
|
|
1533
|
+
objectEach = U.objectEach;
|
|
1491
1534
|
/**
|
|
1492
1535
|
* Get the relative time value of a point.
|
|
1493
1536
|
* @private
|
|
@@ -1529,19 +1572,36 @@
|
|
|
1529
1572
|
});
|
|
1530
1573
|
}
|
|
1531
1574
|
/**
|
|
1532
|
-
* Calculate value extremes for used instrument data properties.
|
|
1575
|
+
* Calculate value extremes for used instrument data properties on a chart.
|
|
1533
1576
|
* @private
|
|
1534
1577
|
* @param {Highcharts.Chart} chart
|
|
1535
1578
|
* The chart to calculate extremes from.
|
|
1536
|
-
* @param {Array<Highcharts.PointInstrumentObject>} instruments
|
|
1537
|
-
*
|
|
1579
|
+
* @param {Array<Highcharts.PointInstrumentObject>} [instruments]
|
|
1580
|
+
* Additional instrument definitions to inspect for data props used, in
|
|
1581
|
+
* addition to the instruments defined in the chart options.
|
|
1538
1582
|
* @param {Highcharts.Dictionary<Highcharts.RangeObject>} [dataExtremes]
|
|
1539
1583
|
* Predefined extremes for each data prop.
|
|
1540
1584
|
* @return {Highcharts.Dictionary<Highcharts.RangeObject>}
|
|
1541
1585
|
* New extremes with data properties mapped to min/max objects.
|
|
1542
1586
|
*/
|
|
1543
1587
|
function getExtremesForInstrumentProps(chart, instruments, dataExtremes) {
|
|
1544
|
-
|
|
1588
|
+
var _a;
|
|
1589
|
+
var allInstrumentDefinitions = (instruments || []).slice(0);
|
|
1590
|
+
var defaultInstrumentDef = (_a = chart.options.sonification) === null || _a === void 0 ? void 0 : _a.defaultInstrumentOptions;
|
|
1591
|
+
var optionDefToInstrDef = function (optionDef) { return ({
|
|
1592
|
+
instrumentMapping: optionDef.mapping
|
|
1593
|
+
}); };
|
|
1594
|
+
if (defaultInstrumentDef) {
|
|
1595
|
+
allInstrumentDefinitions.push(optionDefToInstrDef(defaultInstrumentDef));
|
|
1596
|
+
}
|
|
1597
|
+
chart.series.forEach(function (series) {
|
|
1598
|
+
var _a;
|
|
1599
|
+
var instrOptions = (_a = series.options.sonification) === null || _a === void 0 ? void 0 : _a.instruments;
|
|
1600
|
+
if (instrOptions) {
|
|
1601
|
+
allInstrumentDefinitions = allInstrumentDefinitions.concat(instrOptions.map(optionDefToInstrDef));
|
|
1602
|
+
}
|
|
1603
|
+
});
|
|
1604
|
+
return (allInstrumentDefinitions).reduce(function (newExtremes, instrumentDefinition) {
|
|
1545
1605
|
Object.keys(instrumentDefinition.instrumentMapping || {}).forEach(function (instrumentParameter) {
|
|
1546
1606
|
var value = instrumentDefinition.instrumentMapping[instrumentParameter];
|
|
1547
1607
|
if (typeof value === 'string' && !newExtremes[value]) {
|
|
@@ -1605,6 +1665,52 @@
|
|
|
1605
1665
|
return merge(instrumentDef, { instrument: copy });
|
|
1606
1666
|
});
|
|
1607
1667
|
}
|
|
1668
|
+
/**
|
|
1669
|
+
* Utility function to apply a master volume to a list of instrument
|
|
1670
|
+
* options.
|
|
1671
|
+
* @private
|
|
1672
|
+
* @param {Array<Highcharts.PointInstrumentObject>} instruments
|
|
1673
|
+
* The instrument options. Only options with Instrument object instances
|
|
1674
|
+
* will be affected.
|
|
1675
|
+
* @param {number} masterVolume
|
|
1676
|
+
* The master volume multiplier to apply to the instruments.
|
|
1677
|
+
* @return {Array<Highcharts.PointInstrumentObject>}
|
|
1678
|
+
* Array of instrument options.
|
|
1679
|
+
*/
|
|
1680
|
+
function applyMasterVolumeToInstruments(instruments, masterVolume) {
|
|
1681
|
+
instruments.forEach(function (instrOpts) {
|
|
1682
|
+
var instr = instrOpts.instrument;
|
|
1683
|
+
if (typeof instr !== 'string') {
|
|
1684
|
+
instr.setMasterVolume(masterVolume);
|
|
1685
|
+
}
|
|
1686
|
+
});
|
|
1687
|
+
return instruments;
|
|
1688
|
+
}
|
|
1689
|
+
/**
|
|
1690
|
+
* Utility function to find the duration of the final note in a series.
|
|
1691
|
+
* @private
|
|
1692
|
+
* @param {Highcharts.Series} series The data series to calculate on.
|
|
1693
|
+
* @param {Array<Highcharts.PointInstrumentObject>} instruments The instrument options for this series.
|
|
1694
|
+
* @param {Highcharts.Dictionary<Highcharts.RangeObject>} dataExtremes Value extremes for the data series props.
|
|
1695
|
+
* @return {number} The duration of the final note in milliseconds.
|
|
1696
|
+
*/
|
|
1697
|
+
function getFinalNoteDuration(series, instruments, dataExtremes) {
|
|
1698
|
+
var finalPoint = series.points[series.points.length - 1];
|
|
1699
|
+
return instruments.reduce(function (duration, instrument) {
|
|
1700
|
+
var mapping = instrument.instrumentMapping.duration;
|
|
1701
|
+
var instrumentDuration;
|
|
1702
|
+
if (typeof mapping === 'string') {
|
|
1703
|
+
instrumentDuration = 0; // Ignore, no easy way to map this
|
|
1704
|
+
}
|
|
1705
|
+
else if (typeof mapping === 'function') {
|
|
1706
|
+
instrumentDuration = mapping(finalPoint, dataExtremes);
|
|
1707
|
+
}
|
|
1708
|
+
else {
|
|
1709
|
+
instrumentDuration = mapping;
|
|
1710
|
+
}
|
|
1711
|
+
return Math.max(duration, instrumentDuration);
|
|
1712
|
+
}, 0);
|
|
1713
|
+
}
|
|
1608
1714
|
/**
|
|
1609
1715
|
* Create a TimelinePath from a series. Takes the same options as seriesSonify.
|
|
1610
1716
|
* To intuitively allow multiple series to play simultaneously we make copies of
|
|
@@ -1622,18 +1728,26 @@
|
|
|
1622
1728
|
// chart.sonify can be reused.
|
|
1623
1729
|
var timeExtremes = options.timeExtremes || getTimeExtremes(series,
|
|
1624
1730
|
options.pointPlayTime),
|
|
1731
|
+
// Compute any data extremes that aren't defined yet
|
|
1732
|
+
dataExtremes = getExtremesForInstrumentProps(series.chart,
|
|
1733
|
+
options.instruments,
|
|
1734
|
+
options.dataExtremes),
|
|
1735
|
+
minimumSeriesDurationMs = 10,
|
|
1736
|
+
// Get the duration of the final note
|
|
1737
|
+
finalNoteDuration = getFinalNoteDuration(series,
|
|
1738
|
+
options.instruments,
|
|
1739
|
+
dataExtremes),
|
|
1625
1740
|
// Get time offset for a point, relative to duration
|
|
1626
1741
|
pointToTime = function (point) {
|
|
1627
1742
|
return utilities.virtualAxisTranslate(getPointTimeValue(point,
|
|
1628
1743
|
options.pointPlayTime),
|
|
1629
1744
|
timeExtremes, { min: 0,
|
|
1630
|
-
max: options.duration
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
dataExtremes = getExtremesForInstrumentProps(series.chart, options.instruments, options.dataExtremes),
|
|
1745
|
+
max: Math.max(options.duration - finalNoteDuration,
|
|
1746
|
+
minimumSeriesDurationMs) });
|
|
1747
|
+
}, masterVolume = pick(options.masterVolume, 1),
|
|
1634
1748
|
// Make copies of the instruments used for this series, to allow
|
|
1635
1749
|
// multiple series with the same instrument to play together
|
|
1636
|
-
|
|
1750
|
+
instrumentCopies = makeInstrumentCopies(options.instruments), instruments = applyMasterVolumeToInstruments(instrumentCopies, masterVolume),
|
|
1637
1751
|
// Go through the points, convert to events, optionally add Earcons
|
|
1638
1752
|
timelineEvents = series.points.reduce(function (events, point) {
|
|
1639
1753
|
var earcons = getPointEarcons(point,
|
|
@@ -1647,14 +1761,18 @@
|
|
|
1647
1761
|
id: point.id,
|
|
1648
1762
|
playOptions: {
|
|
1649
1763
|
instruments: instruments,
|
|
1650
|
-
dataExtremes: dataExtremes
|
|
1764
|
+
dataExtremes: dataExtremes,
|
|
1765
|
+
masterVolume: masterVolume
|
|
1651
1766
|
}
|
|
1652
1767
|
}),
|
|
1653
1768
|
// Earcons
|
|
1654
1769
|
earcons.map(function (earcon) {
|
|
1655
1770
|
return new H.sonification.TimelineEvent({
|
|
1656
1771
|
eventObject: earcon,
|
|
1657
|
-
time: time
|
|
1772
|
+
time: time,
|
|
1773
|
+
playOptions: {
|
|
1774
|
+
volume: masterVolume
|
|
1775
|
+
}
|
|
1658
1776
|
});
|
|
1659
1777
|
}));
|
|
1660
1778
|
}, []);
|
|
@@ -1696,7 +1814,8 @@
|
|
|
1696
1814
|
if (options.onEnd) {
|
|
1697
1815
|
options.onEnd(series);
|
|
1698
1816
|
}
|
|
1699
|
-
}
|
|
1817
|
+
},
|
|
1818
|
+
targetDuration: options.duration
|
|
1700
1819
|
});
|
|
1701
1820
|
}
|
|
1702
1821
|
/* eslint-disable no-invalid-this, valid-jsdoc */
|
|
@@ -1716,22 +1835,25 @@
|
|
|
1716
1835
|
*
|
|
1717
1836
|
* @function Highcharts.Series#sonify
|
|
1718
1837
|
*
|
|
1719
|
-
* @param {Highcharts.SonifySeriesOptionsObject} options
|
|
1720
|
-
* The options for sonifying this series.
|
|
1838
|
+
* @param {Highcharts.SonifySeriesOptionsObject} [options]
|
|
1839
|
+
* The options for sonifying this series. If not provided,
|
|
1840
|
+
* uses options set on chart and series.
|
|
1721
1841
|
*
|
|
1722
1842
|
* @return {void}
|
|
1723
1843
|
*/
|
|
1724
1844
|
function seriesSonify(options) {
|
|
1845
|
+
var mergedOptions = getSeriesSonifyOptions(this,
|
|
1846
|
+
options);
|
|
1725
1847
|
var timelinePath = buildTimelinePathFromSeries(this,
|
|
1726
|
-
|
|
1727
|
-
|
|
1848
|
+
mergedOptions);
|
|
1849
|
+
var chartSonification = this.chart.sonification;
|
|
1728
1850
|
// Only one timeline can play at a time. If we want multiple series playing
|
|
1729
1851
|
// at the same time, use chart.sonify.
|
|
1730
1852
|
if (chartSonification.timeline) {
|
|
1731
1853
|
chartSonification.timeline.pause();
|
|
1732
1854
|
}
|
|
1733
1855
|
// Store reference to duration
|
|
1734
|
-
chartSonification.duration =
|
|
1856
|
+
chartSonification.duration = mergedOptions.duration;
|
|
1735
1857
|
// Create new timeline for this series, and play it.
|
|
1736
1858
|
chartSonification.timeline = new H.sonification.Timeline({
|
|
1737
1859
|
paths: [timelinePath]
|
|
@@ -1751,27 +1873,37 @@
|
|
|
1751
1873
|
* @return {Partial<Highcharts.SonifySeriesOptionsObject>}
|
|
1752
1874
|
* Options for buildTimelinePathFromSeries.
|
|
1753
1875
|
*/
|
|
1754
|
-
function
|
|
1755
|
-
var
|
|
1756
|
-
|
|
1876
|
+
function buildChartSonifySeriesOptions(series, dataExtremes, chartSonifyOptions) {
|
|
1877
|
+
var _a,
|
|
1878
|
+
_b,
|
|
1879
|
+
_c;
|
|
1880
|
+
var additionalSeriesOptions = chartSonifyOptions.seriesOptions || {};
|
|
1881
|
+
var pointPlayTime = ((_c = (_b = (_a = series.chart.options.sonification) === null || _a === void 0 ? void 0 : _a.defaultInstrumentOptions) === null || _b === void 0 ? void 0 : _b.mapping) === null || _c === void 0 ? void 0 : _c.pointPlayTime) || 'x';
|
|
1882
|
+
var configOptions = chartOptionsToSonifySeriesOptions(series);
|
|
1883
|
+
return merge(
|
|
1884
|
+
// Options from chart configuration
|
|
1885
|
+
configOptions,
|
|
1886
|
+
// Options passed in
|
|
1887
|
+
{
|
|
1757
1888
|
// Calculated dataExtremes for chart
|
|
1758
1889
|
dataExtremes: dataExtremes,
|
|
1759
1890
|
// We need to get timeExtremes for each series. We pass this
|
|
1760
1891
|
// in when building the TimelinePath objects to avoid
|
|
1761
1892
|
// calculating twice.
|
|
1762
|
-
timeExtremes: getTimeExtremes(series,
|
|
1893
|
+
timeExtremes: getTimeExtremes(series, pointPlayTime),
|
|
1763
1894
|
// Some options we just pass on
|
|
1764
|
-
instruments: chartSonifyOptions.instruments,
|
|
1765
|
-
onStart: chartSonifyOptions.onSeriesStart,
|
|
1766
|
-
onEnd: chartSonifyOptions.onSeriesEnd,
|
|
1767
|
-
earcons: chartSonifyOptions.earcons
|
|
1895
|
+
instruments: chartSonifyOptions.instruments || configOptions.instruments,
|
|
1896
|
+
onStart: chartSonifyOptions.onSeriesStart || configOptions.onStart,
|
|
1897
|
+
onEnd: chartSonifyOptions.onSeriesEnd || configOptions.onEnd,
|
|
1898
|
+
earcons: chartSonifyOptions.earcons || configOptions.earcons,
|
|
1899
|
+
masterVolume: pick(chartSonifyOptions.masterVolume, configOptions.masterVolume)
|
|
1768
1900
|
},
|
|
1769
|
-
// Merge in the specific series options by ID
|
|
1770
|
-
isArray(
|
|
1901
|
+
// Merge in the specific series options by ID if any are passed in
|
|
1902
|
+
isArray(additionalSeriesOptions) ? (find(additionalSeriesOptions, function (optEntry) {
|
|
1771
1903
|
return optEntry.id === pick(series.id, series.options.id);
|
|
1772
|
-
}) || {}) :
|
|
1904
|
+
}) || {}) : additionalSeriesOptions, {
|
|
1773
1905
|
// Forced options
|
|
1774
|
-
pointPlayTime:
|
|
1906
|
+
pointPlayTime: pointPlayTime
|
|
1775
1907
|
});
|
|
1776
1908
|
}
|
|
1777
1909
|
/**
|
|
@@ -1795,7 +1927,8 @@
|
|
|
1795
1927
|
if (orderOptions === 'sequential' || orderOptions === 'simultaneous') {
|
|
1796
1928
|
// Just add the series from the chart
|
|
1797
1929
|
order = chart.series.reduce(function (seriesList, series) {
|
|
1798
|
-
|
|
1930
|
+
var _a;
|
|
1931
|
+
if (series.visible && ((_a = series.options.sonification) === null || _a === void 0 ? void 0 : _a.enabled) !== false) {
|
|
1799
1932
|
seriesList.push({
|
|
1800
1933
|
series: series,
|
|
1801
1934
|
seriesOptions: seriesOptionsCallback(series)
|
|
@@ -2017,15 +2150,111 @@
|
|
|
2017
2150
|
return allPaths;
|
|
2018
2151
|
}, []);
|
|
2019
2152
|
}
|
|
2153
|
+
/**
|
|
2154
|
+
* @private
|
|
2155
|
+
* @param {Highcharts.Series} series The series to get options for.
|
|
2156
|
+
* @param {Highcharts.SonifySeriesOptionsObject} options
|
|
2157
|
+
* Options to merge with user options on series/chart and default options.
|
|
2158
|
+
* @returns {Array<Highcharts.PointInstrumentObject>} The merged options.
|
|
2159
|
+
*/
|
|
2160
|
+
function getSeriesInstrumentOptions(series, options) {
|
|
2161
|
+
var _a,
|
|
2162
|
+
_b;
|
|
2163
|
+
if (options === null || options === void 0 ? void 0 : options.instruments) {
|
|
2164
|
+
return options.instruments;
|
|
2165
|
+
}
|
|
2166
|
+
var defaultInstrOpts = ((_a = series.chart.options.sonification) === null || _a === void 0 ? void 0 : _a.defaultInstrumentOptions) || {};
|
|
2167
|
+
var seriesInstrOpts = ((_b = series.options.sonification) === null || _b === void 0 ? void 0 : _b.instruments) || [{}];
|
|
2168
|
+
var removeNullsFromObject = function (obj) {
|
|
2169
|
+
objectEach(obj,
|
|
2170
|
+
function (val,
|
|
2171
|
+
key) {
|
|
2172
|
+
if (val === null) {
|
|
2173
|
+
delete obj[key];
|
|
2174
|
+
}
|
|
2175
|
+
});
|
|
2176
|
+
};
|
|
2177
|
+
// Convert series options to PointInstrumentObjects and merge with
|
|
2178
|
+
// default options
|
|
2179
|
+
return (seriesInstrOpts).map(function (optionSet) {
|
|
2180
|
+
// Allow setting option to null to use default
|
|
2181
|
+
removeNullsFromObject(optionSet.mapping || {});
|
|
2182
|
+
removeNullsFromObject(optionSet);
|
|
2183
|
+
return {
|
|
2184
|
+
instrument: optionSet.instrument || defaultInstrOpts.instrument,
|
|
2185
|
+
instrumentOptions: merge(defaultInstrOpts, optionSet, {
|
|
2186
|
+
// Instrument options are lifted to root in the API options
|
|
2187
|
+
// object, so merge all in order to avoid missing any. But
|
|
2188
|
+
// remove the following which are not instrumentOptions:
|
|
2189
|
+
mapping: void 0,
|
|
2190
|
+
instrument: void 0
|
|
2191
|
+
}),
|
|
2192
|
+
instrumentMapping: merge(defaultInstrOpts.mapping, optionSet.mapping)
|
|
2193
|
+
};
|
|
2194
|
+
});
|
|
2195
|
+
}
|
|
2196
|
+
/**
|
|
2197
|
+
* Utility function to translate between options set in chart configuration and
|
|
2198
|
+
* a SonifySeriesOptionsObject.
|
|
2199
|
+
* @private
|
|
2200
|
+
* @param {Highcharts.Series} series The series to get options for.
|
|
2201
|
+
* @returns {Highcharts.SonifySeriesOptionsObject} Options for chart/series.sonify()
|
|
2202
|
+
*/
|
|
2203
|
+
function chartOptionsToSonifySeriesOptions(series) {
|
|
2204
|
+
var _a,
|
|
2205
|
+
_b;
|
|
2206
|
+
var seriesOpts = series.options.sonification || {};
|
|
2207
|
+
var chartOpts = series.chart.options.sonification || {};
|
|
2208
|
+
var chartEvents = chartOpts.events || {};
|
|
2209
|
+
var seriesEvents = seriesOpts.events || {};
|
|
2210
|
+
return {
|
|
2211
|
+
onEnd: seriesEvents.onSeriesEnd || chartEvents.onSeriesEnd,
|
|
2212
|
+
onStart: seriesEvents.onSeriesStart || chartEvents.onSeriesStart,
|
|
2213
|
+
onPointEnd: seriesEvents.onPointEnd || chartEvents.onPointEnd,
|
|
2214
|
+
onPointStart: seriesEvents.onPointStart || chartEvents.onPointStart,
|
|
2215
|
+
pointPlayTime: (_b = (_a = chartOpts.defaultInstrumentOptions) === null || _a === void 0 ? void 0 : _a.mapping) === null || _b === void 0 ? void 0 : _b.pointPlayTime,
|
|
2216
|
+
masterVolume: chartOpts.masterVolume,
|
|
2217
|
+
instruments: getSeriesInstrumentOptions(series),
|
|
2218
|
+
earcons: seriesOpts.earcons || chartOpts.earcons
|
|
2219
|
+
};
|
|
2220
|
+
}
|
|
2221
|
+
/**
|
|
2222
|
+
* @private
|
|
2223
|
+
* @param {Highcharts.Series} series The series to get options for.
|
|
2224
|
+
* @param {Highcharts.SonifySeriesOptionsObject} options
|
|
2225
|
+
* Options to merge with user options on series/chart and default options.
|
|
2226
|
+
* @returns {Highcharts.SonifySeriesOptionsObject} The merged options.
|
|
2227
|
+
*/
|
|
2228
|
+
function getSeriesSonifyOptions(series, options) {
|
|
2229
|
+
var chartOpts = series.chart.options.sonification;
|
|
2230
|
+
var seriesOpts = series.options.sonification;
|
|
2231
|
+
return merge({
|
|
2232
|
+
duration: (seriesOpts === null || seriesOpts === void 0 ? void 0 : seriesOpts.duration) || (chartOpts === null || chartOpts === void 0 ? void 0 : chartOpts.duration)
|
|
2233
|
+
}, chartOptionsToSonifySeriesOptions(series), options);
|
|
2234
|
+
}
|
|
2020
2235
|
/**
|
|
2021
2236
|
* @private
|
|
2022
2237
|
* @param {Highcharts.Chart} chart The chart to get options for.
|
|
2023
|
-
* @param {Highcharts.SonificationOptions}
|
|
2024
|
-
* Options to merge with options on chart and default options.
|
|
2238
|
+
* @param {Highcharts.SonificationOptions} options
|
|
2239
|
+
* Options to merge with user options on chart and default options.
|
|
2025
2240
|
* @returns {Highcharts.SonificationOptions} The merged options.
|
|
2026
2241
|
*/
|
|
2027
|
-
function getChartSonifyOptions(chart,
|
|
2028
|
-
|
|
2242
|
+
function getChartSonifyOptions(chart, options) {
|
|
2243
|
+
var _a,
|
|
2244
|
+
_b,
|
|
2245
|
+
_c,
|
|
2246
|
+
_d,
|
|
2247
|
+
_e;
|
|
2248
|
+
var chartOpts = chart.options.sonification || {};
|
|
2249
|
+
return merge({
|
|
2250
|
+
duration: chartOpts.duration,
|
|
2251
|
+
afterSeriesWait: chartOpts.afterSeriesWait,
|
|
2252
|
+
pointPlayTime: (_b = (_a = chartOpts.defaultInstrumentOptions) === null || _a === void 0 ? void 0 : _a.mapping) === null || _b === void 0 ? void 0 : _b.pointPlayTime,
|
|
2253
|
+
order: chartOpts.order,
|
|
2254
|
+
onSeriesStart: (_c = chartOpts.events) === null || _c === void 0 ? void 0 : _c.onSeriesStart,
|
|
2255
|
+
onSeriesEnd: (_d = chartOpts.events) === null || _d === void 0 ? void 0 : _d.onSeriesEnd,
|
|
2256
|
+
onEnd: (_e = chartOpts.events) === null || _e === void 0 ? void 0 : _e.onEnd
|
|
2257
|
+
}, options);
|
|
2029
2258
|
}
|
|
2030
2259
|
/**
|
|
2031
2260
|
* Options for sonifying a chart.
|
|
@@ -2134,8 +2363,9 @@
|
|
|
2134
2363
|
*
|
|
2135
2364
|
* @function Highcharts.Chart#sonify
|
|
2136
2365
|
*
|
|
2137
|
-
* @param {Highcharts.SonificationOptions} options
|
|
2138
|
-
* The options for sonifying this chart.
|
|
2366
|
+
* @param {Highcharts.SonificationOptions} [options]
|
|
2367
|
+
* The options for sonifying this chart. If not provided,
|
|
2368
|
+
* uses options set on chart and series.
|
|
2139
2369
|
*
|
|
2140
2370
|
* @return {void}
|
|
2141
2371
|
*/
|
|
@@ -2156,7 +2386,7 @@
|
|
|
2156
2386
|
var order = buildPathOrder(opts.order,
|
|
2157
2387
|
this,
|
|
2158
2388
|
function (series) {
|
|
2159
|
-
return
|
|
2389
|
+
return buildChartSonifySeriesOptions(series,
|
|
2160
2390
|
dataExtremes,
|
|
2161
2391
|
opts);
|
|
2162
2392
|
});
|
|
@@ -2341,7 +2571,7 @@
|
|
|
2341
2571
|
|
|
2342
2572
|
return chartSonifyFunctions;
|
|
2343
2573
|
});
|
|
2344
|
-
_registerModule(_modules, '
|
|
2574
|
+
_registerModule(_modules, 'Extensions/Sonification/Timeline.js', [_modules['Core/Globals.js'], _modules['Core/Utilities.js'], _modules['Extensions/Sonification/Utilities.js']], function (H, U, utilities) {
|
|
2345
2575
|
/* *
|
|
2346
2576
|
*
|
|
2347
2577
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -2529,6 +2759,9 @@
|
|
|
2529
2759
|
new TimelineEvent({ time: options.silentWait })
|
|
2530
2760
|
] :
|
|
2531
2761
|
this.options.events;
|
|
2762
|
+
// Reference optionally provided by the user that indicates the intended
|
|
2763
|
+
// duration of the path. Unused by TimelinePath itself.
|
|
2764
|
+
this.targetDuration = options.targetDuration || options.silentWait;
|
|
2532
2765
|
// We need to sort our events by time
|
|
2533
2766
|
this.sortEvents();
|
|
2534
2767
|
// Get map from event ID to index
|
|
@@ -2763,7 +2996,7 @@
|
|
|
2763
2996
|
Timeline.prototype.init = function (options) {
|
|
2764
2997
|
this.options = options;
|
|
2765
2998
|
this.cursor = 0;
|
|
2766
|
-
this.paths = options.paths;
|
|
2999
|
+
this.paths = options.paths || [];
|
|
2767
3000
|
this.pathsPlaying = {};
|
|
2768
3001
|
this.signalHandler = new utilities.SignalHandler(['playOnEnd', 'masterOnEnd', 'onPathStart', 'onPathEnd']);
|
|
2769
3002
|
this.signalHandler.registerSignalCallbacks(merge(options, { masterOnEnd: options.onEnd }));
|
|
@@ -2802,10 +3035,18 @@
|
|
|
2802
3035
|
* @return {void}
|
|
2803
3036
|
*/
|
|
2804
3037
|
Timeline.prototype.playPaths = function (direction) {
|
|
3038
|
+
var timeline = this;
|
|
3039
|
+
var signalHandler = timeline.signalHandler;
|
|
3040
|
+
if (!timeline.paths.length) {
|
|
3041
|
+
var emptySignal = {
|
|
3042
|
+
cancelled: false
|
|
3043
|
+
};
|
|
3044
|
+
signalHandler.emitSignal('playOnEnd', emptySignal);
|
|
3045
|
+
signalHandler.emitSignal('masterOnEnd', emptySignal);
|
|
3046
|
+
return;
|
|
3047
|
+
}
|
|
2805
3048
|
var curPaths = splat(this.paths[this.cursor]),
|
|
2806
3049
|
nextPaths = this.paths[this.cursor + direction],
|
|
2807
|
-
timeline = this,
|
|
2808
|
-
signalHandler = this.signalHandler,
|
|
2809
3050
|
pathsEnded = 0,
|
|
2810
3051
|
// Play a path
|
|
2811
3052
|
playPath = function (path) {
|
|
@@ -2942,7 +3183,10 @@
|
|
|
2942
3183
|
* True if timeline is at the beginning.
|
|
2943
3184
|
*/
|
|
2944
3185
|
Timeline.prototype.atStart = function () {
|
|
2945
|
-
|
|
3186
|
+
if (this.cursor) {
|
|
3187
|
+
return false;
|
|
3188
|
+
}
|
|
3189
|
+
return !splat(this.paths[0]).some(function (path) {
|
|
2946
3190
|
return path.cursor;
|
|
2947
3191
|
});
|
|
2948
3192
|
};
|
|
@@ -2953,6 +3197,9 @@
|
|
|
2953
3197
|
* The TimelinePaths currently being played.
|
|
2954
3198
|
*/
|
|
2955
3199
|
Timeline.prototype.getCurrentPlayingPaths = function () {
|
|
3200
|
+
if (!this.paths.length) {
|
|
3201
|
+
return [];
|
|
3202
|
+
}
|
|
2956
3203
|
return splat(this.paths[this.cursor]);
|
|
2957
3204
|
};
|
|
2958
3205
|
// Export the classes
|
|
@@ -2964,7 +3211,7 @@
|
|
|
2964
3211
|
|
|
2965
3212
|
return timelineClasses;
|
|
2966
3213
|
});
|
|
2967
|
-
_registerModule(_modules, '
|
|
3214
|
+
_registerModule(_modules, 'Extensions/Sonification/Options.js', [], function () {
|
|
2968
3215
|
/* *
|
|
2969
3216
|
*
|
|
2970
3217
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -2980,29 +3227,27 @@
|
|
|
2980
3227
|
var options = {
|
|
2981
3228
|
sonification: {
|
|
2982
3229
|
enabled: false,
|
|
2983
|
-
duration:
|
|
2984
|
-
afterSeriesWait:
|
|
3230
|
+
duration: 2500,
|
|
3231
|
+
afterSeriesWait: 700,
|
|
3232
|
+
masterVolume: 1,
|
|
2985
3233
|
order: 'sequential',
|
|
2986
|
-
|
|
2987
|
-
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
2991
|
-
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
2996
|
-
|
|
2997
|
-
maxFrequency: 1046
|
|
2998
|
-
}
|
|
2999
|
-
}]
|
|
3234
|
+
defaultInstrumentOptions: {
|
|
3235
|
+
instrument: 'sineMusical',
|
|
3236
|
+
// Start at G4 note, end at C6
|
|
3237
|
+
minFrequency: 392,
|
|
3238
|
+
maxFrequency: 1046,
|
|
3239
|
+
mapping: {
|
|
3240
|
+
pointPlayTime: 'x',
|
|
3241
|
+
duration: 200,
|
|
3242
|
+
frequency: 'y'
|
|
3243
|
+
}
|
|
3244
|
+
}
|
|
3000
3245
|
}
|
|
3001
3246
|
};
|
|
3002
3247
|
|
|
3003
3248
|
return options;
|
|
3004
3249
|
});
|
|
3005
|
-
_registerModule(_modules, '
|
|
3250
|
+
_registerModule(_modules, 'Extensions/Sonification/Sonification.js', [_modules['Core/Chart/Chart.js'], _modules['Core/Globals.js'], _modules['Core/Options.js'], _modules['Core/Series/Point.js'], _modules['Core/Utilities.js'], _modules['Extensions/Sonification/Instrument.js'], _modules['Extensions/Sonification/InstrumentDefinitions.js'], _modules['Extensions/Sonification/Earcon.js'], _modules['Extensions/Sonification/PointSonify.js'], _modules['Extensions/Sonification/ChartSonify.js'], _modules['Extensions/Sonification/Utilities.js'], _modules['Extensions/Sonification/Timeline.js'], _modules['Extensions/Sonification/Options.js']], function (Chart, H, O, Point, U, Instrument, instruments, Earcon, pointSonifyFunctions, chartSonifyFunctions, utilities, TimelineClasses, sonificationOptions) {
|
|
3006
3251
|
/* *
|
|
3007
3252
|
*
|
|
3008
3253
|
* (c) 2009-2020 Øystein Moseng
|
|
@@ -3014,6 +3259,7 @@
|
|
|
3014
3259
|
* !!!!!!! SOURCE GETS TRANSPILED BY TYPESCRIPT. EDIT TS FILE ONLY. !!!!!!!
|
|
3015
3260
|
*
|
|
3016
3261
|
* */
|
|
3262
|
+
var defaultOptions = O.defaultOptions;
|
|
3017
3263
|
var addEvent = U.addEvent,
|
|
3018
3264
|
extend = U.extend,
|
|
3019
3265
|
merge = U.merge;
|
|
@@ -3084,12 +3330,12 @@
|
|
|
3084
3330
|
Timeline: TimelineClasses.Timeline
|
|
3085
3331
|
};
|
|
3086
3332
|
// Add default options
|
|
3087
|
-
merge(true,
|
|
3333
|
+
merge(true, defaultOptions, sonificationOptions);
|
|
3088
3334
|
// Chart specific
|
|
3089
3335
|
Point.prototype.sonify = pointSonifyFunctions.pointSonify;
|
|
3090
3336
|
Point.prototype.cancelSonify = pointSonifyFunctions.pointCancelSonify;
|
|
3091
3337
|
H.Series.prototype.sonify = chartSonifyFunctions.seriesSonify;
|
|
3092
|
-
extend(
|
|
3338
|
+
extend(Chart.prototype, {
|
|
3093
3339
|
sonify: chartSonifyFunctions.chartSonify,
|
|
3094
3340
|
pauseSonify: chartSonifyFunctions.pause,
|
|
3095
3341
|
resumeSonify: chartSonifyFunctions.resume,
|
|
@@ -3102,11 +3348,11 @@
|
|
|
3102
3348
|
});
|
|
3103
3349
|
/* eslint-disable no-invalid-this */
|
|
3104
3350
|
// Prepare charts for sonification on init
|
|
3105
|
-
addEvent(
|
|
3351
|
+
addEvent(Chart, 'init', function () {
|
|
3106
3352
|
this.sonification = {};
|
|
3107
3353
|
});
|
|
3108
3354
|
// Update with chart/series/point updates
|
|
3109
|
-
addEvent(
|
|
3355
|
+
addEvent(Chart, 'update', function (e) {
|
|
3110
3356
|
var newOptions = e.options.sonification;
|
|
3111
3357
|
if (newOptions) {
|
|
3112
3358
|
merge(true, this.options.sonification, newOptions);
|