highcharts 10.0.0 → 10.2.1
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 +10 -20
- package/css/themes/dark-unica.css +10 -20
- package/css/themes/grid-light.css +10 -20
- package/css/themes/sand-signika.css +10 -20
- package/es-modules/Accessibility/A11yI18n.js +4 -4
- package/es-modules/Accessibility/Accessibility.js +8 -3
- package/es-modules/Accessibility/Components/AnnotationsA11y.js +3 -3
- package/es-modules/Accessibility/Components/ContainerComponent.js +11 -10
- package/es-modules/Accessibility/Components/InfoRegionsComponent.js +18 -11
- package/es-modules/Accessibility/Components/LegendComponent.js +11 -11
- package/es-modules/Accessibility/Components/MenuComponent.js +3 -1
- package/es-modules/Accessibility/Components/RangeSelectorComponent.js +3 -1
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesComponent.js +3 -1
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesDescriber.js +34 -17
- package/es-modules/Accessibility/Components/SeriesComponent/SeriesKeyboardNavigation.js +35 -10
- package/es-modules/Accessibility/Components/ZoomComponent.js +30 -70
- package/es-modules/Accessibility/FocusBorder.js +6 -5
- package/es-modules/Accessibility/HighContrastMode.js +1 -1
- package/es-modules/Accessibility/KeyboardNavigation.js +2 -2
- package/es-modules/Accessibility/Options/{Options.js → A11yDefaults.js} +73 -5
- package/es-modules/Accessibility/Options/DeprecatedOptions.js +12 -2
- package/es-modules/Accessibility/Options/{LangOptions.js → LangDefaults.js} +46 -31
- package/es-modules/Accessibility/Utils/ChartUtilities.js +10 -5
- package/es-modules/Core/Animation/Fx.js +1 -1
- package/es-modules/Core/Axis/Axis.js +51 -46
- package/es-modules/Core/Axis/Axis3D.js +1 -1
- package/es-modules/Core/Axis/AxisDefaults.js +9 -9
- package/es-modules/Core/Axis/BrokenAxis.js +1 -1
- package/es-modules/Core/Axis/Color/ColorAxis.js +4 -2
- package/es-modules/Core/Axis/Color/ColorAxisDefaults.js +7 -3
- package/es-modules/Core/Axis/DateTimeAxis.js +5 -3
- package/es-modules/Core/Axis/GridAxis.js +821 -822
- package/es-modules/Core/Axis/LogarithmicAxis.js +1 -1
- package/es-modules/Core/Axis/NavigatorAxis.js +2 -2
- package/es-modules/Core/Axis/OrdinalAxis.js +26 -3
- package/es-modules/Core/Axis/PlotLineOrBand/PlotLineOrBand.js +3 -3
- package/es-modules/Core/Axis/RadialAxis.js +1 -1
- package/es-modules/Core/Axis/Stacking/StackItem.js +262 -0
- package/es-modules/Core/Axis/Stacking/StackingAxis.js +468 -0
- package/es-modules/Core/Axis/Tick.js +22 -18
- package/es-modules/Core/Axis/TreeGrid/TreeGridAxis.js +732 -0
- package/es-modules/Core/Axis/TreeGrid/TreeGridTick.js +313 -0
- package/es-modules/Core/Axis/WaterfallAxis.js +1 -1
- package/es-modules/Core/Axis/ZAxis.js +76 -71
- package/es-modules/Core/Chart/Chart.js +42 -9
- package/es-modules/Core/Chart/Chart3D.js +2 -2
- package/es-modules/Core/Chart/ChartDefaults.js +165 -5
- package/es-modules/Core/Chart/GanttChart.js +3 -1
- package/es-modules/Core/Chart/MapChart.js +3 -1
- package/es-modules/Core/Chart/StockChart.js +12 -8
- package/es-modules/Core/Color/Color.js +1 -1
- package/es-modules/Core/DefaultOptions.js +19 -16
- package/es-modules/Core/Geometry/CircleUtilities.js +4 -4
- package/es-modules/Core/Globals.js +2 -1
- package/es-modules/Core/HttpUtilities.js +39 -37
- package/es-modules/Core/Legend/Legend.js +4 -4
- package/es-modules/Core/MSPointer.js +3 -1
- package/es-modules/{Extensions → Core}/Math3D.js +48 -43
- package/es-modules/Core/Navigator.js +31 -14
- package/es-modules/Core/Pointer.js +8 -10
- package/es-modules/Core/Renderer/HTML/AST.js +13 -7
- package/es-modules/Core/Renderer/HTML/HTMLElement.js +3 -1
- package/es-modules/Core/Renderer/HTML/HTMLRenderer.js +3 -1
- package/es-modules/Core/Renderer/SVG/SVGElement.js +132 -192
- package/es-modules/Core/Renderer/SVG/SVGLabel.js +32 -28
- package/es-modules/Core/Renderer/SVG/SVGRenderer.js +50 -45
- package/es-modules/Core/Renderer/SVG/SVGRenderer3D.js +5 -3
- package/es-modules/Core/Renderer/SVG/TextBuilder.js +5 -3
- package/es-modules/Core/Scrollbar.js +12 -6
- package/es-modules/Core/ScrollbarDefaults.js +8 -8
- package/es-modules/Core/Series/DataLabel.js +63 -40
- package/es-modules/Core/Series/Point.js +11 -2
- package/es-modules/Core/Series/Series.js +60 -43
- package/es-modules/Core/Series/Series3D.js +4 -2
- package/es-modules/Core/Series/SeriesDefaults.js +11 -6
- package/es-modules/Core/Series/SeriesRegistry.js +6 -29
- package/es-modules/Core/Time.js +6 -7
- package/es-modules/Core/Tooltip.js +17 -6
- package/es-modules/Core/Utilities.js +7 -9
- package/es-modules/Data/DataConverter.js +6 -1
- package/es-modules/Data/DataPromise.js +1 -1
- package/es-modules/Data/DataSeriesComposition.js +288 -0
- package/es-modules/Data/DataSeriesConverter.js +1 -1
- package/es-modules/Data/DataTable.js +14 -12
- package/es-modules/Data/Modifiers/ChainModifier.js +4 -2
- package/es-modules/Data/Modifiers/DataModifier.js +1 -1
- package/es-modules/Data/Modifiers/GroupModifier.js +4 -2
- package/es-modules/Data/Modifiers/InvertModifier.js +10 -8
- package/es-modules/Data/Modifiers/RangeModifier.js +4 -2
- package/es-modules/Data/Modifiers/SeriesPointsModifier.js +4 -2
- package/es-modules/Data/Modifiers/SortModifier.js +4 -2
- package/es-modules/Data/Parsers/CSVParser.js +3 -1
- package/es-modules/Data/Parsers/DataParser.js +2 -2
- package/es-modules/Data/Parsers/GoogleSheetsParser.js +3 -2
- package/es-modules/Data/Parsers/HTMLTableParser.js +3 -1
- package/es-modules/Data/Stores/CSVStore.js +8 -5
- package/es-modules/Data/Stores/DataStore.js +1 -1
- package/es-modules/Data/Stores/GoogleSheetsStore.js +3 -1
- package/es-modules/Data/Stores/HTMLTableStore.js +3 -1
- package/es-modules/Extensions/Annotations/Annotation.js +652 -0
- package/es-modules/Extensions/Annotations/AnnotationChart.js +291 -0
- package/es-modules/Extensions/Annotations/AnnotationDefaults.js +624 -0
- package/es-modules/Extensions/Annotations/ControlPoint.js +89 -64
- package/es-modules/Extensions/Annotations/{Mixins/ControllableMixin.js → Controllables/Controllable.js} +300 -241
- package/es-modules/Extensions/Annotations/Controllables/ControllableCircle.js +63 -50
- package/es-modules/Extensions/Annotations/Controllables/ControllableDefaults.js +95 -0
- package/es-modules/Extensions/Annotations/Controllables/ControllableEllipse.js +95 -63
- package/es-modules/Extensions/Annotations/Controllables/ControllableImage.js +50 -44
- package/es-modules/Extensions/Annotations/Controllables/ControllableLabel.js +95 -78
- package/es-modules/Extensions/Annotations/Controllables/ControllablePath.js +167 -51
- package/es-modules/Extensions/Annotations/Controllables/ControllableRect.js +53 -52
- package/es-modules/Extensions/Annotations/{Mixins/EventEmitterMixin.js → EventEmitter.js} +136 -116
- package/es-modules/Extensions/Annotations/MockPoint.js +210 -145
- package/es-modules/Extensions/Annotations/NavigationBindings.js +272 -663
- package/es-modules/Extensions/Annotations/NavigationBindingsDefaults.js +396 -0
- package/es-modules/Extensions/Annotations/NavigationBindingsUtilities.js +98 -0
- package/es-modules/Extensions/Annotations/Popup/Popup.js +295 -0
- package/es-modules/Extensions/Annotations/Popup/PopupAnnotations.js +177 -0
- package/es-modules/Extensions/Annotations/Popup/PopupComposition.js +81 -0
- package/es-modules/Extensions/Annotations/Popup/PopupIndicators.js +609 -0
- package/es-modules/Extensions/Annotations/Popup/PopupTabs.js +134 -0
- package/es-modules/Extensions/Annotations/Types/BasicAnnotation.js +23 -23
- package/es-modules/Extensions/Annotations/Types/CrookedLine.js +15 -21
- package/es-modules/Extensions/Annotations/Types/ElliottWave.js +14 -12
- package/es-modules/Extensions/Annotations/Types/Fibonacci.js +33 -23
- package/es-modules/Extensions/Annotations/Types/FibonacciTimeZones.js +67 -65
- package/es-modules/Extensions/Annotations/Types/InfinityLine.js +14 -21
- package/es-modules/Extensions/Annotations/Types/Measure.js +259 -251
- package/es-modules/Extensions/Annotations/Types/Pitchfork.js +15 -19
- package/es-modules/Extensions/Annotations/Types/TimeCycles.js +24 -19
- package/es-modules/Extensions/Annotations/Types/Tunnel.js +17 -15
- package/es-modules/Extensions/Annotations/Types/VerticalLine.js +15 -17
- package/es-modules/Extensions/Boost/Boost.js +320 -15
- package/es-modules/Extensions/Boost/BoostChart.js +245 -0
- package/es-modules/Extensions/Boost/BoostSeries.js +927 -0
- package/es-modules/Extensions/Boost/BoostableMap.js +21 -5
- package/es-modules/Extensions/Boost/Boostables.js +13 -2
- package/es-modules/Extensions/Boost/NamedColors.js +15 -6
- package/es-modules/Extensions/Boost/WGLDrawMode.js +36 -0
- package/es-modules/Extensions/Boost/WGLRenderer.js +288 -295
- package/es-modules/Extensions/Boost/WGLShader.js +370 -376
- package/es-modules/Extensions/Boost/WGLVertexBuffer.js +192 -0
- package/es-modules/Extensions/BoostCanvas.js +70 -48
- package/es-modules/Extensions/Breadcrumbs.js +37 -9
- package/es-modules/Extensions/CurrentDateIndication.js +1 -1
- package/es-modules/Extensions/Data.js +638 -602
- package/es-modules/Extensions/DataGrouping.js +68 -28
- package/es-modules/Extensions/Debugger/Debugger.js +60 -22
- package/es-modules/Extensions/Debugger/ErrorMessages.js +4 -0
- package/es-modules/Extensions/DownloadURL.js +3 -3
- package/es-modules/Extensions/DragPanes.js +1 -1
- package/es-modules/Extensions/DraggablePoints.js +4 -3
- package/es-modules/Extensions/Drilldown.js +15 -14
- package/es-modules/Extensions/{ExportData.js → ExportData/ExportData.js} +358 -498
- package/es-modules/Extensions/ExportData/ExportDataDefaults.js +272 -0
- package/es-modules/Extensions/Exporting/Exporting.js +30 -17
- package/es-modules/Extensions/Exporting/ExportingDefaults.js +10 -8
- package/es-modules/Extensions/Exporting/Fullscreen.js +352 -0
- package/es-modules/Extensions/GeoJSON.js +3 -4
- package/es-modules/Extensions/MarkerClusters.js +5 -3
- package/es-modules/Extensions/NoDataToDisplay.js +1 -1
- package/es-modules/Extensions/OfflineExporting/OfflineExportingDefaults.js +1 -1
- package/es-modules/Extensions/Oldie/Oldie.js +2 -2
- package/es-modules/Extensions/OverlappingDataLabels.js +5 -4
- package/es-modules/Extensions/Pane.js +3 -3
- package/es-modules/Extensions/ParallelCoordinates.js +12 -8
- package/es-modules/Extensions/PatternFill.js +14 -2
- package/es-modules/Extensions/RangeSelector.js +29 -18
- package/es-modules/Extensions/ScrollablePlotArea.js +4 -4
- package/es-modules/Extensions/{SeriesLabel.js → SeriesLabel/SeriesLabel.js} +264 -386
- package/es-modules/Extensions/SeriesLabel/SeriesLabelDefaults.js +124 -0
- package/es-modules/Extensions/SeriesLabel/SeriesLabelUtilities.js +67 -0
- package/es-modules/Extensions/Sonification/ChartSonify.js +1 -1
- package/es-modules/Extensions/Sonification/Earcon.js +1 -1
- package/es-modules/Extensions/Themes/HighContrastDark.js +10 -10
- package/es-modules/Extensions/Themes/HighContrastLight.js +9 -9
- package/es-modules/Maps/MapNavigation.js +3 -7
- package/es-modules/Maps/MapPointer.js +1 -1
- package/es-modules/Maps/MapView.js +31 -19
- package/es-modules/Maps/MapViewInsetsOptionsDefault.js +1 -1
- package/es-modules/Maps/MapViewOptionsDefault.js +3 -1
- package/es-modules/Maps/Projection.js +13 -11
- package/es-modules/Series/ArcDiagram/ArcDiagramPoint.js +3 -1
- package/es-modules/Series/ArcDiagram/ArcDiagramSeries.js +12 -2
- package/es-modules/Series/Area/AreaSeries.js +21 -14
- package/es-modules/Series/{Area3DSeries.js → Area3D/Area3DSeries.js} +42 -20
- package/es-modules/Series/AreaRange/AreaRangePoint.js +24 -11
- package/es-modules/Series/AreaRange/AreaRangeSeries.js +162 -149
- package/es-modules/Series/AreaSpline/AreaSplineSeries.js +45 -41
- package/es-modules/Series/AreaSplineRange/AreaSplineRangeSeries.js +43 -43
- package/es-modules/Series/Bar/BarSeries.js +3 -1
- package/es-modules/Series/Bellcurve/BellcurveSeries.js +3 -1
- package/es-modules/Series/BoxPlot/BoxPlotSeries.js +4 -2
- package/es-modules/Series/Bubble/BubbleLegendComposition.js +223 -231
- package/es-modules/Series/Bubble/BubbleLegendDefaults.js +1 -1
- package/es-modules/Series/Bubble/BubbleLegendItem.js +46 -45
- package/es-modules/Series/Bubble/BubblePoint.js +3 -1
- package/es-modules/Series/Bubble/BubbleSeries.js +96 -68
- package/es-modules/Series/Bullet/BulletPoint.js +3 -1
- package/es-modules/Series/Bullet/BulletSeries.js +4 -3
- package/es-modules/Series/Candlestick/CandlestickSeries.js +5 -3
- package/es-modules/Series/CenteredUtilities.js +8 -2
- package/es-modules/Series/ColorMapComposition.js +111 -0
- package/es-modules/Series/Column/ColumnSeries.js +8 -4
- package/es-modules/Series/Column3D/Column3DComposition.js +2 -2
- package/es-modules/Series/ColumnPyramid/ColumnPyramidSeries.js +4 -2
- package/es-modules/Series/ColumnRange/ColumnRangePoint.js +17 -13
- package/es-modules/Series/ColumnRange/ColumnRangeSeries.js +60 -57
- package/es-modules/Series/Cylinder/CylinderComposition.js +1 -1
- package/es-modules/Series/Cylinder/CylinderPoint.js +3 -1
- package/es-modules/Series/Cylinder/CylinderSeries.js +3 -1
- package/es-modules/Series/DependencyWheel/DependencyWheelPoint.js +27 -12
- package/es-modules/Series/DependencyWheel/DependencyWheelSeries.js +19 -3
- package/es-modules/Series/DotPlot/DotPlotSeries.js +3 -1
- package/es-modules/Series/DragNodesComposition.js +166 -0
- package/es-modules/Series/DrawPointUtilities.js +87 -0
- package/es-modules/Series/Dumbbell/DumbbellPoint.js +3 -1
- package/es-modules/Series/Dumbbell/DumbbellSeries.js +4 -2
- package/es-modules/Series/ErrorBar/ErrorBarSeries.js +4 -2
- package/es-modules/Series/Flags/FlagsPoint.js +4 -1
- package/es-modules/Series/Flags/FlagsSeries.js +13 -16
- package/es-modules/Series/Funnel/FunnelSeries.js +5 -3
- package/es-modules/Series/Funnel3D/Funnel3DPoint.js +3 -1
- package/es-modules/Series/Funnel3D/Funnel3DSeries.js +4 -2
- package/es-modules/Series/Gantt/GanttPoint.js +3 -1
- package/es-modules/Series/Gantt/GanttSeries.js +4 -2
- package/es-modules/Series/Gauge/GaugePoint.js +3 -1
- package/es-modules/Series/Gauge/GaugeSeries.js +196 -174
- package/es-modules/Series/GraphLayoutComposition.js +130 -0
- package/es-modules/Series/HLC/HLCPoint.js +3 -1
- package/es-modules/Series/HLC/HLCSeries.js +4 -2
- package/es-modules/Series/Heatmap/HeatmapPoint.js +7 -5
- package/es-modules/Series/Heatmap/HeatmapSeries.js +34 -34
- package/es-modules/Series/HeikinAshi/HeikinAshiPoint.js +3 -1
- package/es-modules/Series/HeikinAshi/HeikinAshiSeries.js +3 -1
- package/es-modules/Series/Histogram/HistogramSeries.js +3 -1
- package/es-modules/Series/HollowCandlestick/HollowCandlestickPoint.js +3 -1
- package/es-modules/Series/HollowCandlestick/HollowCandlestickSeries.js +11 -9
- package/es-modules/Series/Item/ItemPoint.js +3 -1
- package/es-modules/Series/Item/ItemSeries.js +3 -1
- package/es-modules/Series/Line/LineSeries.js +4 -2
- package/es-modules/Series/Lollipop/LollipopPoint.js +24 -12
- package/es-modules/Series/Lollipop/LollipopSeries.js +18 -11
- package/es-modules/Series/Map/MapPoint.js +8 -6
- package/es-modules/Series/Map/MapSeries.js +115 -28
- package/es-modules/Series/MapBubble/MapBubblePoint.js +18 -18
- package/es-modules/Series/MapBubble/MapBubbleSeries.js +69 -21
- package/es-modules/Series/MapLine/MapLineSeries.js +18 -1
- package/es-modules/Series/MapPoint/MapPointPoint.js +4 -2
- package/es-modules/Series/MapPoint/MapPointSeries.js +14 -2
- package/es-modules/Series/Networkgraph/EulerIntegration.js +199 -0
- package/es-modules/Series/Networkgraph/NetworkgraphPoint.js +290 -0
- package/es-modules/Series/Networkgraph/NetworkgraphSeries.js +401 -0
- package/es-modules/Series/Networkgraph/NetworkgraphSeriesDefaults.js +545 -0
- package/es-modules/Series/Networkgraph/QuadTree.js +66 -272
- package/es-modules/Series/Networkgraph/QuadTreeNode.js +271 -0
- package/es-modules/Series/Networkgraph/{Layouts.js → ReingoldFruchtermanLayout.js} +240 -259
- package/es-modules/Series/Networkgraph/VerletIntegration.js +193 -0
- package/es-modules/Series/NodesComposition.js +45 -40
- package/es-modules/Series/OHLC/OHLCPoint.js +3 -1
- package/es-modules/Series/OHLC/OHLCSeries.js +3 -1
- package/es-modules/Series/Organization/OrganizationPoint.js +3 -1
- package/es-modules/Series/Organization/OrganizationSeries.js +14 -4
- package/es-modules/Series/PackedBubble/PackedBubbleIntegration.js +81 -0
- package/es-modules/Series/PackedBubble/{PackedBubbleComposition.js → PackedBubbleLayout.js} +114 -79
- package/es-modules/Series/PackedBubble/PackedBubblePoint.js +5 -3
- package/es-modules/Series/PackedBubble/PackedBubbleSeries.js +200 -571
- package/es-modules/Series/PackedBubble/PackedBubbleSeriesDefaults.js +394 -0
- package/es-modules/Series/ParetoSeries/ParetoSeries.js +3 -1
- package/es-modules/Series/Pie/PieDataLabel.js +4 -2
- package/es-modules/Series/Pie/PiePoint.js +3 -1
- package/es-modules/Series/Pie/PieSeries.js +54 -38
- package/es-modules/Series/Pie3D/Pie3DPoint.js +3 -1
- package/es-modules/Series/Pie3D/Pie3DSeries.js +3 -1
- package/es-modules/Series/PolarComposition.js +819 -0
- package/es-modules/Series/Polygon/PolygonSeries.js +3 -1
- package/es-modules/Series/Pyramid/PyramidSeries.js +3 -1
- package/es-modules/Series/Pyramid3D/Pyramid3DSeries.js +3 -1
- package/es-modules/Series/Sankey/SankeyPoint.js +3 -1
- package/es-modules/Series/Sankey/SankeySeries.js +38 -10
- package/es-modules/Series/Scatter/ScatterSeries.js +14 -6
- package/es-modules/Series/Scatter3D/Scatter3DPoint.js +3 -1
- package/es-modules/Series/Scatter3D/Scatter3DSeries.js +4 -2
- package/es-modules/Series/SeriesOnPointComposition.js +395 -0
- package/es-modules/Series/SolidGauge/SolidGaugeSeries.js +6 -4
- package/es-modules/Series/Spline/SplineSeries.js +13 -4
- package/es-modules/Series/Streamgraph/StreamgraphSeries.js +3 -1
- package/es-modules/Series/Sunburst/SunburstPoint.js +8 -9
- package/es-modules/Series/Sunburst/SunburstSeries.js +32 -5
- package/es-modules/Series/Tilemap/TilemapPoint.js +3 -1
- package/es-modules/Series/Tilemap/TilemapSeries.js +3 -1
- package/es-modules/Series/Timeline/TimelinePoint.js +3 -1
- package/es-modules/Series/Timeline/TimelineSeries.js +8 -4
- package/es-modules/Series/Treemap/TreemapPoint.js +8 -4
- package/es-modules/Series/Treemap/TreemapSeries.js +12 -10
- package/es-modules/Series/VariablePie/VariablePieSeries.js +3 -1
- package/es-modules/Series/Variwide/VariwidePoint.js +3 -1
- package/es-modules/Series/Variwide/VariwideSeries.js +3 -1
- package/es-modules/Series/Vector/VectorSeries.js +5 -5
- package/es-modules/Series/Venn/VennPoint.js +5 -5
- package/es-modules/Series/Venn/VennSeries.js +9 -6
- package/es-modules/Series/Waterfall/WaterfallPoint.js +3 -1
- package/es-modules/Series/Waterfall/WaterfallSeries.js +14 -12
- package/es-modules/Series/Windbarb/WindbarbPoint.js +3 -1
- package/es-modules/Series/Windbarb/WindbarbSeries.js +3 -1
- package/es-modules/Series/Wordcloud/WordcloudPoint.js +6 -6
- package/es-modules/Series/Wordcloud/WordcloudSeries.js +12 -9
- package/es-modules/Series/Wordcloud/WordcloudUtils.js +1 -1
- package/es-modules/Series/XRange/XRangePoint.js +57 -46
- package/es-modules/Series/XRange/XRangeSeries.js +124 -274
- package/es-modules/Series/XRange/XRangeSeriesDefaults.js +211 -0
- package/es-modules/Stock/Indicators/ABands/ABandsIndicator.js +13 -3
- package/es-modules/Stock/Indicators/AD/ADIndicator.js +8 -1
- package/es-modules/Stock/Indicators/AO/AOIndicator.js +27 -14
- package/es-modules/Stock/Indicators/APO/APOIndicator.js +9 -2
- package/es-modules/Stock/Indicators/ATR/ATRIndicator.js +19 -4
- package/es-modules/Stock/Indicators/Aroon/AroonIndicator.js +18 -3
- package/es-modules/Stock/Indicators/AroonOscillator/AroonOscillatorIndicator.js +9 -3
- package/es-modules/Stock/Indicators/BB/BBIndicator.js +11 -5
- package/es-modules/Stock/Indicators/CCI/CCIIndicator.js +19 -4
- package/es-modules/Stock/Indicators/CMF/CMFIndicator.js +23 -1
- package/es-modules/Stock/Indicators/CMO/CMOIndicator.js +18 -2
- package/es-modules/Stock/Indicators/Chaikin/ChaikinIndicator.js +10 -3
- package/es-modules/Stock/Indicators/DEMA/DEMAIndicator.js +28 -1
- package/es-modules/Stock/Indicators/DMI/DMIIndicator.js +18 -7
- package/es-modules/Stock/Indicators/DPO/DPOIndicator.js +22 -9
- package/es-modules/Stock/Indicators/DisparityIndex/DisparityIndexIndicator.js +3 -1
- package/es-modules/Stock/Indicators/EMA/EMAIndicator.js +13 -1
- package/es-modules/Stock/Indicators/IKH/IKHIndicator.js +37 -16
- package/es-modules/Stock/Indicators/KeltnerChannels/KeltnerChannelsIndicator.js +28 -1
- package/es-modules/Stock/Indicators/Klinger/KlingerIndicator.js +15 -2
- package/es-modules/Stock/Indicators/LinearRegression/{LinearRegression.js → LinearRegressionIndicator.js} +14 -2
- package/es-modules/Stock/Indicators/LinearRegressionAngle/{LinearRegressionAngle.js → LinearRegressionAngleIndicator.js} +15 -8
- package/es-modules/Stock/Indicators/LinearRegressionIntercept/{LinearRegressionIntercept.js → LinearRegressionInterceptIndicator.js} +14 -2
- package/es-modules/Stock/Indicators/LinearRegressionSlopes/{LinearRegressionSlopes.js → LinearRegressionSlopesIndicator.js} +14 -2
- package/es-modules/Stock/Indicators/MACD/MACDIndicator.js +47 -23
- package/es-modules/Stock/Indicators/MFI/MFIIndicator.js +26 -11
- package/es-modules/Stock/Indicators/Momentum/MomentumIndicator.js +33 -3
- package/es-modules/Stock/Indicators/MultipleLinesComposition.js +85 -95
- package/es-modules/Stock/Indicators/NATR/NATRIndicator.js +19 -2
- package/es-modules/Stock/Indicators/OBV/OBVIndicator.js +13 -1
- package/es-modules/Stock/Indicators/PC/PCIndicator.js +16 -9
- package/es-modules/Stock/Indicators/PPO/PPOIndicator.js +17 -5
- package/es-modules/Stock/Indicators/PSAR/PSARIndicator.js +19 -4
- package/es-modules/Stock/Indicators/PivotPoints/PivotPointsIndicator.js +19 -7
- package/es-modules/Stock/Indicators/PivotPoints/PivotPointsPoint.js +19 -13
- package/es-modules/Stock/Indicators/PriceEnvelopes/PriceEnvelopesIndicator.js +28 -1
- package/es-modules/Stock/Indicators/ROC/ROCIndicator.js +18 -3
- package/es-modules/Stock/Indicators/RSI/RSIIndicator.js +23 -3
- package/es-modules/Stock/Indicators/SMA/SMAIndicator.js +4 -2
- package/es-modules/Stock/Indicators/SlowStochastic/SlowStochasticIndicator.js +28 -1
- package/es-modules/Stock/Indicators/Stochastic/StochasticIndicator.js +18 -1
- package/es-modules/Stock/Indicators/Supertrend/SupertrendIndicator.js +23 -7
- package/es-modules/Stock/Indicators/TEMA/TEMAIndicator.js +3 -1
- package/es-modules/Stock/Indicators/TRIX/TRIXIndicator.js +28 -1
- package/es-modules/Stock/Indicators/TrendLine/TrendLineIndicator.js +17 -5
- package/es-modules/Stock/Indicators/VBP/VBPIndicator.js +35 -4
- package/es-modules/Stock/Indicators/VBP/VBPPoint.js +9 -7
- package/es-modules/Stock/Indicators/VWAP/VWAPIndicator.js +14 -2
- package/es-modules/Stock/Indicators/WMA/WMAIndicator.js +33 -3
- package/es-modules/Stock/Indicators/WilliamsR/WilliamsRIndicator.js +13 -1
- package/es-modules/Stock/Indicators/Zigzag/ZigzagIndicator.js +14 -2
- package/es-modules/Stock/StockToolbar.js +568 -0
- package/es-modules/Stock/StockTools.js +256 -0
- package/es-modules/Stock/StockToolsBindings.js +140 -647
- package/es-modules/Stock/StockToolsDefaults.js +1190 -0
- package/es-modules/Stock/StockToolsGui.js +150 -1771
- package/es-modules/Stock/StockToolsUtilities.js +423 -0
- package/es-modules/masters/highcharts-3d.src.js +5 -4
- package/es-modules/masters/highcharts-gantt.src.js +1 -1
- package/es-modules/masters/highcharts-more.src.js +7 -6
- package/es-modules/masters/highcharts.src.js +5 -2
- package/es-modules/masters/highmaps.src.js +1 -1
- package/es-modules/masters/highstock.src.js +1 -1
- package/es-modules/masters/indicators/acceleration-bands.src.js +1 -1
- package/es-modules/masters/indicators/accumulation-distribution.src.js +1 -1
- package/es-modules/masters/indicators/ao.src.js +1 -1
- package/es-modules/masters/indicators/apo.src.js +1 -1
- package/es-modules/masters/indicators/aroon-oscillator.src.js +1 -1
- package/es-modules/masters/indicators/aroon.src.js +1 -1
- package/es-modules/masters/indicators/atr.src.js +1 -1
- package/es-modules/masters/indicators/bollinger-bands.src.js +1 -1
- package/es-modules/masters/indicators/cci.src.js +1 -1
- package/es-modules/masters/indicators/chaikin.src.js +1 -1
- package/es-modules/masters/indicators/cmf.src.js +1 -1
- package/es-modules/masters/indicators/cmo.src.js +1 -1
- package/es-modules/masters/indicators/dema.src.js +1 -1
- package/es-modules/masters/indicators/disparity-index.src.js +1 -1
- package/es-modules/masters/indicators/dmi.src.js +1 -1
- package/es-modules/masters/indicators/dpo.src.js +1 -1
- package/es-modules/masters/indicators/ichimoku-kinko-hyo.src.js +1 -1
- package/es-modules/masters/indicators/indicators-all.src.js +5 -7
- package/es-modules/masters/indicators/indicators.src.js +1 -1
- package/es-modules/masters/indicators/keltner-channels.src.js +1 -1
- package/es-modules/masters/indicators/klinger.src.js +1 -1
- package/es-modules/masters/indicators/macd.src.js +1 -1
- package/es-modules/masters/indicators/mfi.src.js +1 -1
- package/es-modules/masters/indicators/momentum.src.js +1 -1
- package/es-modules/masters/indicators/natr.src.js +1 -1
- package/es-modules/masters/indicators/obv.src.js +1 -1
- package/es-modules/masters/indicators/pivot-points.src.js +1 -1
- package/es-modules/masters/indicators/ppo.src.js +1 -1
- package/es-modules/masters/indicators/price-channel.src.js +1 -1
- package/es-modules/masters/indicators/price-envelopes.src.js +1 -1
- package/es-modules/masters/indicators/psar.src.js +1 -1
- package/es-modules/masters/indicators/regressions.src.js +5 -5
- package/es-modules/masters/indicators/roc.src.js +1 -1
- package/es-modules/masters/indicators/rsi.src.js +1 -1
- package/es-modules/masters/indicators/slow-stochastic.src.js +1 -1
- package/es-modules/masters/indicators/stochastic.src.js +1 -1
- package/es-modules/masters/indicators/supertrend.src.js +1 -1
- package/es-modules/masters/indicators/tema.src.js +1 -1
- package/es-modules/masters/indicators/trendline.src.js +1 -1
- package/es-modules/masters/indicators/trix.src.js +1 -1
- package/es-modules/masters/indicators/volume-by-price.src.js +1 -1
- package/es-modules/masters/indicators/vwap.src.js +1 -1
- package/es-modules/masters/indicators/williams-r.src.js +1 -1
- package/es-modules/masters/indicators/wma.src.js +1 -1
- package/es-modules/masters/indicators/zigzag.src.js +1 -1
- package/es-modules/masters/modules/accessibility.src.js +1 -1
- package/es-modules/masters/modules/annotations-advanced.src.js +6 -4
- package/es-modules/masters/modules/annotations.src.js +6 -4
- package/es-modules/masters/modules/arc-diagram.src.js +1 -1
- package/es-modules/masters/modules/arrow-symbols.src.js +1 -1
- package/es-modules/masters/modules/boost-canvas.src.js +1 -1
- package/es-modules/masters/modules/boost.src.js +6 -2
- package/es-modules/masters/modules/broken-axis.src.js +1 -1
- package/es-modules/masters/modules/bullet.src.js +1 -1
- package/es-modules/masters/modules/coloraxis.src.js +1 -1
- package/es-modules/masters/modules/current-date-indicator.src.js +1 -1
- package/es-modules/masters/modules/cylinder.src.js +1 -1
- package/es-modules/masters/modules/data.src.js +2 -1
- package/es-modules/masters/modules/datagrouping.src.js +1 -1
- package/es-modules/masters/modules/debugger.src.js +5 -3
- package/es-modules/masters/modules/dependency-wheel.src.js +1 -1
- package/es-modules/masters/modules/dotplot.src.js +1 -1
- package/es-modules/masters/modules/drag-panes.src.js +1 -1
- package/es-modules/masters/modules/draggable-points.src.js +1 -1
- package/es-modules/masters/modules/drilldown.src.js +1 -1
- package/es-modules/masters/modules/dumbbell.src.js +1 -1
- package/es-modules/masters/modules/export-data.src.js +5 -2
- package/es-modules/masters/modules/exporting.src.js +1 -2
- package/es-modules/masters/modules/full-screen.src.js +6 -2
- package/es-modules/masters/modules/funnel.src.js +1 -1
- package/es-modules/masters/modules/funnel3d.src.js +1 -1
- package/es-modules/masters/modules/gantt.src.js +3 -2
- package/es-modules/masters/modules/grid-axis.src.js +1 -1
- package/es-modules/masters/modules/heatmap.src.js +1 -1
- package/es-modules/masters/modules/heikinashi.src.js +1 -1
- package/es-modules/masters/modules/histogram-bellcurve.src.js +1 -1
- package/es-modules/masters/modules/hollowcandlestick.src.js +1 -1
- package/es-modules/masters/modules/item-series.src.js +1 -1
- package/es-modules/masters/modules/lollipop.src.js +1 -1
- package/es-modules/masters/modules/map.src.js +2 -2
- package/es-modules/masters/modules/marker-clusters.src.js +1 -1
- package/es-modules/masters/modules/networkgraph.src.js +5 -2
- package/es-modules/masters/modules/no-data-to-display.src.js +1 -1
- package/es-modules/masters/modules/offline-exporting.src.js +1 -1
- package/es-modules/masters/modules/oldie-polyfills.src.js +1 -1
- package/es-modules/masters/modules/oldie.src.js +1 -1
- package/es-modules/masters/modules/organization.src.js +1 -1
- package/es-modules/masters/modules/overlapping-datalabels.src.js +1 -1
- package/es-modules/masters/modules/parallel-coordinates.src.js +1 -1
- package/es-modules/masters/modules/pareto.src.js +1 -1
- package/es-modules/masters/modules/pathfinder.src.js +1 -1
- package/es-modules/masters/modules/pattern-fill.src.js +1 -1
- package/es-modules/masters/modules/price-indicator.src.js +1 -1
- package/es-modules/masters/modules/pyramid3d.src.js +1 -1
- package/es-modules/masters/modules/sankey.src.js +1 -1
- package/es-modules/masters/modules/series-label.src.js +5 -2
- package/es-modules/masters/modules/series-on-point.src.js +16 -0
- package/es-modules/masters/modules/solid-gauge.src.js +1 -1
- package/es-modules/masters/modules/sonification.src.js +2 -6
- package/es-modules/masters/modules/static-scale.src.js +1 -1
- package/es-modules/masters/modules/stock-tools.src.js +10 -3
- package/es-modules/masters/modules/stock.src.js +1 -1
- package/es-modules/masters/modules/streamgraph.src.js +1 -1
- package/es-modules/masters/modules/sunburst.src.js +1 -1
- package/es-modules/masters/modules/tilemap.src.js +1 -1
- package/es-modules/masters/modules/timeline.src.js +1 -1
- package/es-modules/masters/modules/treegrid.src.js +2 -2
- package/es-modules/masters/modules/treemap.src.js +1 -1
- package/es-modules/masters/modules/variable-pie.src.js +1 -1
- package/es-modules/masters/modules/variwide.src.js +1 -1
- package/es-modules/masters/modules/vector.src.js +1 -1
- package/es-modules/masters/modules/venn.src.js +1 -1
- package/es-modules/masters/modules/windbarb.src.js +1 -1
- package/es-modules/masters/modules/wordcloud.src.js +1 -1
- package/es-modules/masters/modules/xrange.src.js +5 -2
- package/es-modules/masters/themes/avocado.src.js +1 -1
- package/es-modules/masters/themes/brand-dark.src.js +1 -1
- package/es-modules/masters/themes/brand-light.src.js +1 -1
- package/es-modules/masters/themes/dark-blue.src.js +1 -1
- package/es-modules/masters/themes/dark-green.src.js +1 -1
- package/es-modules/masters/themes/dark-unica.src.js +1 -1
- package/es-modules/masters/themes/gray.src.js +1 -1
- package/es-modules/masters/themes/grid-light.src.js +1 -1
- package/es-modules/masters/themes/grid.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-dark.src.js +1 -1
- package/es-modules/masters/themes/high-contrast-light.src.js +1 -1
- package/es-modules/masters/themes/sand-signika.src.js +1 -1
- package/es-modules/masters/themes/skies.src.js +1 -1
- package/es-modules/masters/themes/sunset.src.js +1 -1
- package/highcharts-3d.js +98 -99
- package/highcharts-3d.js.map +1 -1
- package/highcharts-3d.src.js +233 -212
- package/highcharts-gantt.js +809 -805
- package/highcharts-gantt.js.map +1 -1
- package/highcharts-gantt.src.js +3817 -3470
- package/highcharts-more.d.ts +15 -8
- package/highcharts-more.js +201 -195
- package/highcharts-more.js.map +1 -1
- package/highcharts-more.src.d.ts +15 -8
- package/highcharts-more.src.js +7994 -7461
- package/highcharts.d.ts +11364 -1136
- package/highcharts.js +593 -591
- package/highcharts.js.map +1 -1
- package/highcharts.src.d.ts +11364 -1136
- package/highcharts.src.js +1408 -1117
- package/highmaps.js +762 -758
- package/highmaps.js.map +1 -1
- package/highmaps.src.js +2237 -1721
- package/highstock.js +796 -792
- package/highstock.js.map +1 -1
- package/highstock.src.js +1617 -1224
- package/indicators/acceleration-bands.d.ts +1 -17
- package/indicators/acceleration-bands.js +11 -12
- package/indicators/acceleration-bands.js.map +1 -1
- package/indicators/acceleration-bands.src.d.ts +1 -17
- package/indicators/acceleration-bands.src.js +99 -101
- package/indicators/accumulation-distribution.js +1 -1
- package/indicators/accumulation-distribution.js.map +1 -1
- package/indicators/accumulation-distribution.src.js +6 -1
- package/indicators/ao.js +6 -6
- package/indicators/ao.js.map +1 -1
- package/indicators/ao.src.js +25 -16
- package/indicators/apo.js +1 -1
- package/indicators/apo.js.map +1 -1
- package/indicators/apo.src.js +6 -1
- package/indicators/aroon-oscillator.d.ts +1 -17
- package/indicators/aroon-oscillator.js +10 -10
- package/indicators/aroon-oscillator.js.map +1 -1
- package/indicators/aroon-oscillator.src.d.ts +1 -17
- package/indicators/aroon-oscillator.src.js +95 -101
- package/indicators/aroon.d.ts +1 -17
- package/indicators/aroon.js +11 -11
- package/indicators/aroon.js.map +1 -1
- package/indicators/aroon.src.d.ts +1 -17
- package/indicators/aroon.src.js +104 -101
- package/indicators/atr.js +1 -1
- package/indicators/atr.js.map +1 -1
- package/indicators/atr.src.js +17 -4
- package/indicators/bollinger-bands.d.ts +1 -17
- package/indicators/bollinger-bands.js +11 -12
- package/indicators/bollinger-bands.js.map +1 -1
- package/indicators/bollinger-bands.src.d.ts +1 -17
- package/indicators/bollinger-bands.src.js +97 -103
- package/indicators/cci.js +1 -1
- package/indicators/cci.js.map +1 -1
- package/indicators/cci.src.js +17 -4
- package/indicators/chaikin.js +8 -8
- package/indicators/chaikin.js.map +1 -1
- package/indicators/chaikin.src.js +13 -5
- package/indicators/cmf.js +1 -1
- package/indicators/cmf.js.map +1 -1
- package/indicators/cmf.src.js +21 -1
- package/indicators/cmo.js +1 -1
- package/indicators/cmo.js.map +1 -1
- package/indicators/cmo.src.js +16 -2
- package/indicators/dema.js +1 -1
- package/indicators/dema.js.map +1 -1
- package/indicators/dema.src.js +26 -1
- package/indicators/disparity-index.js +1 -1
- package/indicators/disparity-index.src.js +1 -1
- package/indicators/dmi.js +12 -12
- package/indicators/dmi.js.map +1 -1
- package/indicators/dmi.src.js +104 -105
- package/indicators/dpo.js +1 -1
- package/indicators/dpo.js.map +1 -1
- package/indicators/dpo.src.js +20 -9
- package/indicators/ichimoku-kinko-hyo.js +1 -1
- package/indicators/ichimoku-kinko-hyo.js.map +1 -1
- package/indicators/ichimoku-kinko-hyo.src.js +35 -16
- package/indicators/indicators-all.d.ts +1 -17
- package/indicators/indicators-all.js +200 -199
- package/indicators/indicators-all.js.map +1 -1
- package/indicators/indicators-all.src.d.ts +1 -17
- package/indicators/indicators-all.src.js +882 -284
- package/indicators/indicators.js +1 -1
- package/indicators/indicators.js.map +1 -1
- package/indicators/indicators.src.js +12 -2
- package/indicators/keltner-channels.d.ts +1 -17
- package/indicators/keltner-channels.js +11 -12
- package/indicators/keltner-channels.js.map +1 -1
- package/indicators/keltner-channels.src.d.ts +1 -17
- package/indicators/keltner-channels.src.js +114 -99
- package/indicators/klinger.js +14 -14
- package/indicators/klinger.js.map +1 -1
- package/indicators/klinger.src.js +101 -102
- package/indicators/macd.js +10 -9
- package/indicators/macd.js.map +1 -1
- package/indicators/macd.src.js +46 -25
- package/indicators/mfi.js +1 -1
- package/indicators/mfi.js.map +1 -1
- package/indicators/mfi.src.js +24 -11
- package/indicators/momentum.js +1 -1
- package/indicators/momentum.js.map +1 -1
- package/indicators/momentum.src.js +31 -3
- package/indicators/natr.js +1 -1
- package/indicators/natr.js.map +1 -1
- package/indicators/natr.src.js +17 -3
- package/indicators/obv.js +1 -1
- package/indicators/obv.js.map +1 -1
- package/indicators/obv.src.js +11 -1
- package/indicators/pivot-points.js +1 -1
- package/indicators/pivot-points.js.map +1 -1
- package/indicators/pivot-points.src.js +32 -19
- package/indicators/ppo.js +1 -1
- package/indicators/ppo.js.map +1 -1
- package/indicators/ppo.src.js +15 -5
- package/indicators/price-channel.d.ts +1 -17
- package/indicators/price-channel.js +11 -11
- package/indicators/price-channel.js.map +1 -1
- package/indicators/price-channel.src.d.ts +1 -17
- package/indicators/price-channel.src.js +102 -107
- package/indicators/price-envelopes.js +1 -1
- package/indicators/price-envelopes.js.map +1 -1
- package/indicators/price-envelopes.src.js +26 -1
- package/indicators/psar.js +1 -1
- package/indicators/psar.js.map +1 -1
- package/indicators/psar.src.js +17 -4
- package/indicators/regressions.js +12 -11
- package/indicators/regressions.js.map +1 -1
- package/indicators/regressions.src.js +50 -15
- package/indicators/roc.js +1 -1
- package/indicators/roc.js.map +1 -1
- package/indicators/roc.src.js +16 -3
- package/indicators/rsi.js +1 -1
- package/indicators/rsi.js.map +1 -1
- package/indicators/rsi.src.js +21 -3
- package/indicators/slow-stochastic.js +1 -1
- package/indicators/slow-stochastic.js.map +1 -1
- package/indicators/slow-stochastic.src.js +26 -1
- package/indicators/stochastic.d.ts +1 -17
- package/indicators/stochastic.js +12 -12
- package/indicators/stochastic.js.map +1 -1
- package/indicators/stochastic.src.d.ts +1 -17
- package/indicators/stochastic.src.js +104 -99
- package/indicators/supertrend.js +7 -7
- package/indicators/supertrend.js.map +1 -1
- package/indicators/supertrend.src.js +21 -9
- package/indicators/tema.js +1 -1
- package/indicators/tema.src.js +1 -1
- package/indicators/trendline.js +1 -1
- package/indicators/trendline.js.map +1 -1
- package/indicators/trendline.src.js +15 -5
- package/indicators/trix.js +1 -1
- package/indicators/trix.js.map +1 -1
- package/indicators/trix.src.js +26 -1
- package/indicators/volume-by-price.js +17 -17
- package/indicators/volume-by-price.js.map +1 -1
- package/indicators/volume-by-price.src.js +38 -10
- package/indicators/vwap.js +1 -1
- package/indicators/vwap.js.map +1 -1
- package/indicators/vwap.src.js +12 -2
- package/indicators/williams-r.js +1 -1
- package/indicators/williams-r.js.map +1 -1
- package/indicators/williams-r.src.js +11 -1
- package/indicators/wma.js +1 -1
- package/indicators/wma.js.map +1 -1
- package/indicators/wma.src.js +31 -3
- package/indicators/zigzag.js +1 -1
- package/indicators/zigzag.js.map +1 -1
- package/indicators/zigzag.src.js +12 -2
- package/modules/accessibility.js +246 -242
- package/modules/accessibility.js.map +1 -1
- package/modules/accessibility.src.js +797 -664
- package/modules/annotations-advanced.d.ts +1 -1
- package/modules/annotations-advanced.js +193 -192
- package/modules/annotations-advanced.js.map +1 -1
- package/modules/annotations-advanced.src.d.ts +1 -1
- package/modules/annotations-advanced.src.js +9229 -8589
- package/modules/annotations.d.ts +1 -1
- package/modules/annotations.js +128 -126
- package/modules/annotations.js.map +1 -1
- package/modules/annotations.src.d.ts +1 -1
- package/modules/annotations.src.js +6190 -5528
- package/modules/arc-diagram.js +7 -7
- package/modules/arc-diagram.js.map +1 -1
- package/modules/arc-diagram.src.js +10 -2
- package/modules/arrow-symbols.js +1 -1
- package/modules/arrow-symbols.src.js +1 -1
- package/modules/boost-canvas.d.ts +19 -0
- package/modules/boost-canvas.js +81 -15
- package/modules/boost-canvas.js.map +1 -1
- package/modules/boost-canvas.src.d.ts +19 -0
- package/modules/boost-canvas.src.js +3342 -52
- package/modules/boost.d.ts +8 -26
- package/modules/boost.js +88 -80
- package/modules/boost.js.map +1 -1
- package/modules/boost.src.d.ts +8 -26
- package/modules/boost.src.js +2435 -1889
- package/modules/broken-axis.js +2 -2
- package/modules/broken-axis.js.map +1 -1
- package/modules/broken-axis.src.js +2 -2
- package/modules/bullet.js +1 -1
- package/modules/bullet.js.map +1 -1
- package/modules/bullet.src.js +2 -5
- package/modules/coloraxis.js +2 -2
- package/modules/coloraxis.js.map +1 -1
- package/modules/coloraxis.src.js +9 -5
- package/modules/current-date-indicator.js +1 -1
- package/modules/current-date-indicator.src.js +2 -2
- package/modules/cylinder.js +9 -9
- package/modules/cylinder.js.map +1 -1
- package/modules/cylinder.src.js +2 -2
- package/modules/data.d.ts +12 -12
- package/modules/data.js +33 -34
- package/modules/data.js.map +1 -1
- package/modules/data.src.d.ts +12 -12
- package/modules/data.src.js +862 -829
- package/modules/datagrouping.d.ts +22 -0
- package/modules/datagrouping.js +9 -9
- package/modules/datagrouping.js.map +1 -1
- package/modules/datagrouping.src.d.ts +22 -0
- package/modules/datagrouping.src.js +69 -29
- package/modules/debugger.js +8 -6
- package/modules/debugger.js.map +1 -1
- package/modules/debugger.src.js +85 -40
- package/modules/dependency-wheel.js +12 -12
- package/modules/dependency-wheel.js.map +1 -1
- package/modules/dependency-wheel.src.js +41 -14
- package/modules/dotplot.js +1 -1
- package/modules/dotplot.src.js +1 -1
- package/modules/drag-panes.js +1 -1
- package/modules/drag-panes.src.js +2 -2
- package/modules/draggable-points.js +5 -5
- package/modules/draggable-points.js.map +1 -1
- package/modules/draggable-points.src.js +5 -4
- package/modules/drilldown.d.ts +0 -10
- package/modules/drilldown.js +37 -37
- package/modules/drilldown.js.map +1 -1
- package/modules/drilldown.src.d.ts +0 -10
- package/modules/drilldown.src.js +59 -25
- package/modules/dumbbell.d.ts +4 -0
- package/modules/dumbbell.js +17 -17
- package/modules/dumbbell.js.map +1 -1
- package/modules/dumbbell.src.d.ts +4 -0
- package/modules/dumbbell.src.js +24 -12
- package/modules/export-data.js +25 -22
- package/modules/export-data.js.map +1 -1
- package/modules/export-data.src.js +641 -469
- package/modules/exporting.d.ts +8 -8
- package/modules/exporting.js +39 -39
- package/modules/exporting.js.map +1 -1
- package/modules/exporting.src.d.ts +8 -8
- package/modules/exporting.src.js +442 -319
- package/modules/full-screen.js +8 -8
- package/modules/full-screen.js.map +1 -1
- package/modules/full-screen.src.js +196 -78
- package/modules/funnel.js +1 -1
- package/modules/funnel.src.js +3 -3
- package/modules/funnel3d.js +2 -2
- package/modules/funnel3d.js.map +1 -1
- package/modules/funnel3d.src.js +2 -2
- package/modules/gantt.js +219 -217
- package/modules/gantt.js.map +1 -1
- package/modules/gantt.src.js +2420 -2364
- package/modules/grid-axis.js +23 -23
- package/modules/grid-axis.js.map +1 -1
- package/modules/grid-axis.src.js +890 -891
- package/modules/heatmap.js +40 -40
- package/modules/heatmap.js.map +1 -1
- package/modules/heatmap.src.js +137 -108
- package/modules/heikinashi.js +1 -1
- package/modules/heikinashi.src.js +1 -1
- package/modules/histogram-bellcurve.js +1 -1
- package/modules/histogram-bellcurve.src.js +1 -1
- package/modules/hollowcandlestick.js +1 -1
- package/modules/hollowcandlestick.src.js +9 -9
- package/modules/item-series.js +1 -1
- package/modules/item-series.src.js +1 -1
- package/modules/lollipop.js +6 -6
- package/modules/lollipop.js.map +1 -1
- package/modules/lollipop.src.js +37 -22
- package/modules/map.d.ts +3 -3
- package/modules/map.js +171 -169
- package/modules/map.js.map +1 -1
- package/modules/map.src.d.ts +3 -3
- package/modules/map.src.js +830 -605
- package/modules/marker-clusters.js +1 -1
- package/modules/marker-clusters.js.map +1 -1
- package/modules/marker-clusters.src.js +4 -6
- package/modules/networkgraph.d.ts +1 -17
- package/modules/networkgraph.js +55 -50
- package/modules/networkgraph.js.map +1 -1
- package/modules/networkgraph.src.d.ts +1 -17
- package/modules/networkgraph.src.js +2339 -2008
- package/modules/no-data-to-display.js +1 -1
- package/modules/no-data-to-display.src.js +2 -2
- package/modules/offline-exporting.js +3 -3
- package/modules/offline-exporting.js.map +1 -1
- package/modules/offline-exporting.src.js +5 -5
- package/modules/oldie-polyfills.js +1 -1
- package/modules/oldie-polyfills.src.js +1 -1
- package/modules/oldie.js +2 -2
- package/modules/oldie.src.js +3 -3
- package/modules/organization.js +15 -15
- package/modules/organization.js.map +1 -1
- package/modules/organization.src.js +12 -4
- 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 +14 -9
- package/modules/pareto.js +1 -1
- package/modules/pareto.src.js +1 -1
- package/modules/pathfinder.js +1 -1
- package/modules/pathfinder.src.js +1 -1
- package/modules/pattern-fill.js +15 -14
- package/modules/pattern-fill.js.map +1 -1
- package/modules/pattern-fill.src.js +15 -2
- package/modules/price-indicator.js +1 -1
- package/modules/price-indicator.src.js +1 -1
- package/modules/pyramid3d.js +1 -1
- package/modules/pyramid3d.src.js +1 -1
- package/modules/sankey.d.ts +1 -17
- package/modules/sankey.js +32 -32
- package/modules/sankey.js.map +1 -1
- package/modules/sankey.src.d.ts +1 -17
- package/modules/sankey.src.js +102 -57
- package/modules/series-label.js +18 -18
- package/modules/series-label.js.map +1 -1
- package/modules/series-label.src.js +474 -387
- package/modules/series-on-point.js +18 -0
- package/modules/series-on-point.js.map +1 -0
- package/modules/series-on-point.src.js +468 -0
- package/modules/solid-gauge.js +4 -4
- package/modules/solid-gauge.js.map +1 -1
- package/modules/solid-gauge.src.js +6 -6
- package/modules/sonification.d.ts +2 -2
- package/modules/sonification.js +1 -1
- package/modules/sonification.js.map +1 -1
- package/modules/sonification.src.d.ts +2 -2
- package/modules/sonification.src.js +4 -8
- package/modules/static-scale.js +1 -1
- package/modules/static-scale.src.js +1 -1
- package/modules/stock-tools.d.ts +1 -23
- package/modules/stock-tools.js +109 -179
- package/modules/stock-tools.js.map +1 -1
- package/modules/stock-tools.src.d.ts +1 -23
- package/modules/stock-tools.src.js +2652 -6347
- package/modules/stock.d.ts +8 -0
- package/modules/stock.js +205 -204
- package/modules/stock.js.map +1 -1
- package/modules/stock.src.d.ts +8 -0
- package/modules/stock.src.js +208 -106
- package/modules/streamgraph.js +1 -1
- package/modules/streamgraph.src.js +1 -1
- package/modules/sunburst.js +73 -73
- package/modules/sunburst.js.map +1 -1
- package/modules/sunburst.src.js +251 -193
- package/modules/tilemap.js +1 -1
- package/modules/tilemap.src.js +1 -1
- package/modules/timeline.js +1 -1
- package/modules/timeline.js.map +1 -1
- package/modules/timeline.src.js +6 -4
- package/modules/treegrid.js +57 -57
- package/modules/treegrid.js.map +1 -1
- package/modules/treegrid.src.js +1908 -1901
- package/modules/treemap.js +54 -53
- package/modules/treemap.js.map +1 -1
- package/modules/treemap.src.js +217 -183
- package/modules/variable-pie.js +1 -1
- package/modules/variable-pie.src.js +1 -1
- package/modules/variwide.js +1 -1
- package/modules/variwide.src.js +1 -1
- package/modules/vector.js +2 -2
- package/modules/vector.js.map +1 -1
- package/modules/vector.src.js +3 -5
- package/modules/venn.js +31 -31
- package/modules/venn.js.map +1 -1
- package/modules/venn.src.js +82 -111
- package/modules/windbarb.js +1 -1
- package/modules/windbarb.src.js +1 -1
- package/modules/wordcloud.js +23 -23
- package/modules/wordcloud.js.map +1 -1
- package/modules/wordcloud.src.js +84 -113
- package/modules/xrange.js +17 -17
- package/modules/xrange.js.map +1 -1
- package/modules/xrange.src.js +411 -397
- package/package.json +1 -1
- package/themes/avocado.js +1 -1
- package/themes/avocado.src.js +1 -1
- package/themes/brand-dark.js +1 -1
- package/themes/brand-dark.src.js +1 -1
- package/themes/brand-light.js +1 -1
- package/themes/brand-light.src.js +1 -1
- package/themes/dark-blue.js +1 -1
- package/themes/dark-blue.src.js +1 -1
- package/themes/dark-green.js +1 -1
- package/themes/dark-green.src.js +1 -1
- package/themes/dark-unica.js +1 -1
- package/themes/dark-unica.src.js +1 -1
- package/themes/gray.js +1 -1
- package/themes/gray.src.js +1 -1
- package/themes/grid-light.js +1 -1
- package/themes/grid-light.src.js +1 -1
- package/themes/grid.js +1 -1
- package/themes/grid.src.js +1 -1
- package/themes/high-contrast-dark.js +2 -2
- package/themes/high-contrast-dark.src.js +11 -11
- package/themes/high-contrast-light.js +2 -2
- package/themes/high-contrast-light.src.js +10 -10
- package/themes/sand-signika.js +1 -1
- package/themes/sand-signika.src.js +1 -1
- package/themes/skies.js +1 -1
- package/themes/skies.src.js +1 -1
- package/themes/sunset.js +1 -1
- package/themes/sunset.src.js +1 -1
- package/es-modules/Core/Axis/StackingAxis.js +0 -216
- package/es-modules/Core/Axis/TreeGridAxis.js +0 -720
- package/es-modules/Core/Axis/TreeGridTick.js +0 -317
- package/es-modules/Extensions/Annotations/Annotations.js +0 -1449
- package/es-modules/Extensions/Annotations/Mixins/MarkerMixin.js +0 -179
- package/es-modules/Extensions/Annotations/Popup.js +0 -1123
- package/es-modules/Extensions/Boost/BoostAttach.js +0 -150
- package/es-modules/Extensions/Boost/BoostInit.js +0 -323
- package/es-modules/Extensions/Boost/BoostOptions.js +0 -245
- package/es-modules/Extensions/Boost/BoostOverrides.js +0 -386
- package/es-modules/Extensions/Boost/BoostUtils.js +0 -255
- package/es-modules/Extensions/Boost/WGLVBuffer.js +0 -153
- package/es-modules/Extensions/FullScreen.js +0 -240
- package/es-modules/Extensions/Polar.js +0 -740
- package/es-modules/Extensions/Stacking.js +0 -517
- package/es-modules/Series/ColorMapMixin.js +0 -84
- package/es-modules/Series/DrawPointComposition.js +0 -114
- package/es-modules/Series/Networkgraph/DraggableNodes.js +0 -132
- package/es-modules/Series/Networkgraph/Integrations.js +0 -348
- package/es-modules/Series/Networkgraph/Networkgraph.js +0 -1178
- package/es-modules/Series/XRange/XRangeComposition.js +0 -49
|
@@ -10,546 +10,27 @@
|
|
|
10
10
|
*
|
|
11
11
|
* */
|
|
12
12
|
'use strict';
|
|
13
|
-
import D from '../Core/DefaultOptions.js';
|
|
14
|
-
var getOptions = D.getOptions, setOptions = D.setOptions;
|
|
15
13
|
import H from '../Core/Globals.js';
|
|
16
|
-
import
|
|
17
|
-
|
|
14
|
+
import NBU from '../Extensions/Annotations/NavigationBindingsUtilities.js';
|
|
15
|
+
var getAssignedAxis = NBU.getAssignedAxis;
|
|
16
|
+
import STU from './StockToolsUtilities.js';
|
|
17
|
+
var addFlagFromForm = STU.addFlagFromForm, attractToPoint = STU.attractToPoint, isNotNavigatorYAxis = STU.isNotNavigatorYAxis, isPriceIndicatorEnabled = STU.isPriceIndicatorEnabled, manageIndicators = STU.manageIndicators, updateHeight = STU.updateHeight, updateNthPoint = STU.updateNthPoint, updateRectSize = STU.updateRectSize;
|
|
18
18
|
import U from '../Core/Utilities.js';
|
|
19
|
-
var
|
|
20
|
-
|
|
21
|
-
/* eslint-disable no-invalid-this, valid-jsdoc */
|
|
22
|
-
/**
|
|
23
|
-
* Generates function which will add a flag series using modal in GUI.
|
|
24
|
-
* Method fires an event "showPopup" with config:
|
|
25
|
-
* `{type, options, callback}`.
|
|
26
|
-
*
|
|
27
|
-
* Example: NavigationBindings.utils.addFlagFromForm('url(...)') - will
|
|
28
|
-
* generate function that shows modal in GUI.
|
|
29
|
-
*
|
|
30
|
-
* @private
|
|
31
|
-
* @function bindingsUtils.addFlagFromForm
|
|
32
|
-
*
|
|
33
|
-
* @param {Highcharts.FlagsShapeValue} type
|
|
34
|
-
* Type of flag series, e.g. "squarepin"
|
|
35
|
-
*
|
|
36
|
-
* @return {Function}
|
|
37
|
-
* Callback to be used in `start` callback
|
|
38
|
-
*/
|
|
39
|
-
bindingsUtils.addFlagFromForm = function (type) {
|
|
40
|
-
return function (e) {
|
|
41
|
-
var navigation = this, chart = navigation.chart, toolbar = chart.stockTools, getFieldType = bindingsUtils.getFieldType, point = bindingsUtils.attractToPoint(e, chart), pointConfig, seriesOptions;
|
|
42
|
-
if (!point) {
|
|
43
|
-
return;
|
|
44
|
-
}
|
|
45
|
-
pointConfig = {
|
|
46
|
-
x: point.x,
|
|
47
|
-
y: point.y
|
|
48
|
-
};
|
|
49
|
-
seriesOptions = {
|
|
50
|
-
type: 'flags',
|
|
51
|
-
onSeries: point.series.id,
|
|
52
|
-
shape: type,
|
|
53
|
-
data: [pointConfig],
|
|
54
|
-
xAxis: point.xAxis,
|
|
55
|
-
yAxis: point.yAxis,
|
|
56
|
-
point: {
|
|
57
|
-
events: {
|
|
58
|
-
click: function () {
|
|
59
|
-
var point = this, options = point.options;
|
|
60
|
-
fireEvent(navigation, 'showPopup', {
|
|
61
|
-
point: point,
|
|
62
|
-
formType: 'annotation-toolbar',
|
|
63
|
-
options: {
|
|
64
|
-
langKey: 'flags',
|
|
65
|
-
type: 'flags',
|
|
66
|
-
title: [
|
|
67
|
-
options.title,
|
|
68
|
-
getFieldType(options.title)
|
|
69
|
-
],
|
|
70
|
-
name: [
|
|
71
|
-
options.name,
|
|
72
|
-
getFieldType(options.name)
|
|
73
|
-
]
|
|
74
|
-
},
|
|
75
|
-
onSubmit: function (updated) {
|
|
76
|
-
if (updated.actionType === 'remove') {
|
|
77
|
-
point.remove();
|
|
78
|
-
}
|
|
79
|
-
else {
|
|
80
|
-
point.update(navigation.fieldsToOptions(updated.fields, {}));
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
});
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
};
|
|
88
|
-
if (!toolbar || !toolbar.guiEnabled) {
|
|
89
|
-
chart.addSeries(seriesOptions);
|
|
90
|
-
}
|
|
91
|
-
fireEvent(navigation, 'showPopup', {
|
|
92
|
-
formType: 'flag',
|
|
93
|
-
// Enabled options:
|
|
94
|
-
options: {
|
|
95
|
-
langKey: 'flags',
|
|
96
|
-
type: 'flags',
|
|
97
|
-
title: ['A', getFieldType('A')],
|
|
98
|
-
name: ['Flag A', getFieldType('Flag A')]
|
|
99
|
-
},
|
|
100
|
-
// Callback on submit:
|
|
101
|
-
onSubmit: function (data) {
|
|
102
|
-
navigation.fieldsToOptions(data.fields, seriesOptions.data[0]);
|
|
103
|
-
chart.addSeries(seriesOptions);
|
|
104
|
-
}
|
|
105
|
-
});
|
|
106
|
-
};
|
|
107
|
-
};
|
|
108
|
-
bindingsUtils.indicatorsWithAxes = [
|
|
109
|
-
'apo',
|
|
110
|
-
'ad',
|
|
111
|
-
'aroon',
|
|
112
|
-
'aroonoscillator',
|
|
113
|
-
'atr',
|
|
114
|
-
'ao',
|
|
115
|
-
'cci',
|
|
116
|
-
'chaikin',
|
|
117
|
-
'cmf',
|
|
118
|
-
'cmo',
|
|
119
|
-
'disparityindex',
|
|
120
|
-
'dmi',
|
|
121
|
-
'dpo',
|
|
122
|
-
'linearRegressionAngle',
|
|
123
|
-
'linearRegressionIntercept',
|
|
124
|
-
'linearRegressionSlope',
|
|
125
|
-
'klinger',
|
|
126
|
-
'macd',
|
|
127
|
-
'mfi',
|
|
128
|
-
'momentum',
|
|
129
|
-
'natr',
|
|
130
|
-
'obv',
|
|
131
|
-
'ppo',
|
|
132
|
-
'roc',
|
|
133
|
-
'rsi',
|
|
134
|
-
'slowstochastic',
|
|
135
|
-
'stochastic',
|
|
136
|
-
'trix',
|
|
137
|
-
'williamsr'
|
|
138
|
-
];
|
|
139
|
-
bindingsUtils.manageIndicators = function (data) {
|
|
140
|
-
var navigation = this, chart = navigation.chart, seriesConfig = {
|
|
141
|
-
linkedTo: data.linkedTo,
|
|
142
|
-
type: data.type
|
|
143
|
-
}, indicatorsWithVolume = [
|
|
144
|
-
'ad',
|
|
145
|
-
'cmf',
|
|
146
|
-
'klinger',
|
|
147
|
-
'mfi',
|
|
148
|
-
'obv',
|
|
149
|
-
'vbp',
|
|
150
|
-
'vwap'
|
|
151
|
-
], indicatorsWithAxes = bindingsUtils.indicatorsWithAxes, yAxis, parentSeries, defaultOptions, series;
|
|
152
|
-
if (data.actionType === 'edit') {
|
|
153
|
-
navigation.fieldsToOptions(data.fields, seriesConfig);
|
|
154
|
-
series = chart.get(data.seriesId);
|
|
155
|
-
if (series) {
|
|
156
|
-
series.update(seriesConfig, false);
|
|
157
|
-
}
|
|
158
|
-
}
|
|
159
|
-
else if (data.actionType === 'remove') {
|
|
160
|
-
series = chart.get(data.seriesId);
|
|
161
|
-
if (series) {
|
|
162
|
-
yAxis = series.yAxis;
|
|
163
|
-
if (series.linkedSeries) {
|
|
164
|
-
series.linkedSeries.forEach(function (linkedSeries) {
|
|
165
|
-
linkedSeries.remove(false);
|
|
166
|
-
});
|
|
167
|
-
}
|
|
168
|
-
series.remove(false);
|
|
169
|
-
if (indicatorsWithAxes.indexOf(series.type) >= 0) {
|
|
170
|
-
var removedYAxisHeight = yAxis.options.height;
|
|
171
|
-
yAxis.remove(false);
|
|
172
|
-
navigation.resizeYAxes(removedYAxisHeight);
|
|
173
|
-
}
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
else {
|
|
177
|
-
seriesConfig.id = uniqueKey();
|
|
178
|
-
navigation.fieldsToOptions(data.fields, seriesConfig);
|
|
179
|
-
parentSeries = chart.get(seriesConfig.linkedTo);
|
|
180
|
-
defaultOptions = getOptions().plotOptions;
|
|
181
|
-
// Make sure that indicator uses the SUM approx if SUM approx is used
|
|
182
|
-
// by parent series (#13950).
|
|
183
|
-
if (typeof parentSeries !== 'undefined' &&
|
|
184
|
-
parentSeries instanceof Series &&
|
|
185
|
-
parentSeries.getDGApproximation() === 'sum' &&
|
|
186
|
-
// If indicator has defined approx type, use it (e.g. "ranges")
|
|
187
|
-
!defined(defaultOptions && defaultOptions[seriesConfig.type] &&
|
|
188
|
-
defaultOptions.dataGrouping &&
|
|
189
|
-
defaultOptions.dataGrouping.approximation)) {
|
|
190
|
-
seriesConfig.dataGrouping = {
|
|
191
|
-
approximation: 'sum'
|
|
192
|
-
};
|
|
193
|
-
}
|
|
194
|
-
if (indicatorsWithAxes.indexOf(data.type) >= 0) {
|
|
195
|
-
yAxis = chart.addAxis({
|
|
196
|
-
id: uniqueKey(),
|
|
197
|
-
offset: 0,
|
|
198
|
-
opposite: true,
|
|
199
|
-
title: {
|
|
200
|
-
text: ''
|
|
201
|
-
},
|
|
202
|
-
tickPixelInterval: 40,
|
|
203
|
-
showLastLabel: false,
|
|
204
|
-
labels: {
|
|
205
|
-
align: 'left',
|
|
206
|
-
y: -2
|
|
207
|
-
}
|
|
208
|
-
}, false, false);
|
|
209
|
-
seriesConfig.yAxis = yAxis.options.id;
|
|
210
|
-
navigation.resizeYAxes();
|
|
211
|
-
}
|
|
212
|
-
else {
|
|
213
|
-
seriesConfig.yAxis = chart.get(data.linkedTo).options.yAxis;
|
|
214
|
-
}
|
|
215
|
-
if (indicatorsWithVolume.indexOf(data.type) >= 0) {
|
|
216
|
-
seriesConfig.params.volumeSeriesID = chart.series.filter(function (series) {
|
|
217
|
-
return series.options.type === 'column';
|
|
218
|
-
})[0].options.id;
|
|
219
|
-
}
|
|
220
|
-
chart.addSeries(seriesConfig, false);
|
|
221
|
-
}
|
|
222
|
-
fireEvent(navigation, 'deselectButton', {
|
|
223
|
-
button: navigation.selectedButtonElement
|
|
224
|
-
});
|
|
225
|
-
chart.redraw();
|
|
226
|
-
};
|
|
227
|
-
/**
|
|
228
|
-
* Update height for an annotation. Height is calculated as a difference
|
|
229
|
-
* between last point in `typeOptions` and current position. It's a value,
|
|
230
|
-
* not pixels height.
|
|
231
|
-
*
|
|
232
|
-
* @private
|
|
233
|
-
* @function bindingsUtils.updateHeight
|
|
234
|
-
*
|
|
235
|
-
* @param {Highcharts.PointerEventObject} e
|
|
236
|
-
* normalized browser event
|
|
19
|
+
var fireEvent = U.fireEvent, merge = U.merge;
|
|
20
|
+
/* *
|
|
237
21
|
*
|
|
238
|
-
*
|
|
239
|
-
* Annotation to be updated
|
|
22
|
+
* Constants
|
|
240
23
|
*
|
|
241
|
-
*
|
|
242
|
-
*/
|
|
243
|
-
bindingsUtils.updateHeight = function (e, annotation) {
|
|
244
|
-
var options = annotation.options.typeOptions, yAxis = isNumber(options.yAxis) && this.chart.yAxis[options.yAxis];
|
|
245
|
-
if (yAxis && options.points) {
|
|
246
|
-
annotation.update({
|
|
247
|
-
typeOptions: {
|
|
248
|
-
height: yAxis.toValue(e[yAxis.horiz ? 'chartX' : 'chartY']) -
|
|
249
|
-
(options.points[1].y || 0)
|
|
250
|
-
}
|
|
251
|
-
});
|
|
252
|
-
}
|
|
253
|
-
};
|
|
254
|
-
// @todo
|
|
255
|
-
// Consider using getHoverData(), but always kdTree (columns?)
|
|
256
|
-
bindingsUtils.attractToPoint = function (e, chart) {
|
|
257
|
-
var coords = chart.pointer.getCoordinates(e), coordsX, coordsY, distX = Number.MAX_VALUE, closestPoint, x, y;
|
|
258
|
-
if (chart.navigationBindings) {
|
|
259
|
-
coordsX = chart.navigationBindings.utils.getAssignedAxis(coords.xAxis);
|
|
260
|
-
coordsY = chart.navigationBindings.utils.getAssignedAxis(coords.yAxis);
|
|
261
|
-
}
|
|
262
|
-
// Exit if clicked out of axes area.
|
|
263
|
-
if (!coordsX || !coordsY) {
|
|
264
|
-
return;
|
|
265
|
-
}
|
|
266
|
-
x = coordsX.value;
|
|
267
|
-
y = coordsY.value;
|
|
268
|
-
// Search by 'x' but only in yAxis' series.
|
|
269
|
-
coordsY.axis.series.forEach(function (series) {
|
|
270
|
-
if (series.points) {
|
|
271
|
-
series.points.forEach(function (point) {
|
|
272
|
-
if (point && distX > Math.abs(point.x - x)) {
|
|
273
|
-
distX = Math.abs(point.x - x);
|
|
274
|
-
closestPoint = point;
|
|
275
|
-
}
|
|
276
|
-
});
|
|
277
|
-
}
|
|
278
|
-
});
|
|
279
|
-
if (closestPoint && closestPoint.x && closestPoint.y) {
|
|
280
|
-
return {
|
|
281
|
-
x: closestPoint.x,
|
|
282
|
-
y: closestPoint.y,
|
|
283
|
-
below: y < closestPoint.y,
|
|
284
|
-
series: closestPoint.series,
|
|
285
|
-
xAxis: closestPoint.series.xAxis.options.index || 0,
|
|
286
|
-
yAxis: closestPoint.series.yAxis.options.index || 0
|
|
287
|
-
};
|
|
288
|
-
}
|
|
289
|
-
};
|
|
290
|
-
/**
|
|
291
|
-
* Shorthand to check if given yAxis comes from navigator.
|
|
292
|
-
*
|
|
293
|
-
* @private
|
|
294
|
-
* @function bindingsUtils.isNotNavigatorYAxis
|
|
295
|
-
*
|
|
296
|
-
* @param {Highcharts.Axis} axis
|
|
297
|
-
* Axis to check.
|
|
298
|
-
*
|
|
299
|
-
* @return {boolean}
|
|
300
|
-
* True, if axis comes from navigator.
|
|
301
|
-
*/
|
|
302
|
-
bindingsUtils.isNotNavigatorYAxis = function (axis) {
|
|
303
|
-
return axis.userOptions.className !== PREFIX + 'navigator-yaxis';
|
|
304
|
-
};
|
|
305
|
-
/**
|
|
306
|
-
* Check if any of the price indicators are enabled.
|
|
307
|
-
* @private
|
|
308
|
-
* @function bindingsUtils.isLastPriceEnabled
|
|
309
|
-
*
|
|
310
|
-
* @param {Array} series
|
|
311
|
-
* Array of series.
|
|
312
|
-
*
|
|
313
|
-
* @return {boolean}
|
|
314
|
-
* Tells which indicator is enabled.
|
|
315
|
-
*/
|
|
316
|
-
bindingsUtils.isPriceIndicatorEnabled = function (series) {
|
|
317
|
-
return series.some(function (s) { return s.lastVisiblePrice || s.lastPrice; });
|
|
318
|
-
};
|
|
24
|
+
* */
|
|
319
25
|
/**
|
|
320
|
-
*
|
|
321
|
-
*
|
|
322
|
-
* same, only index changes when adding an annotation.
|
|
323
|
-
*
|
|
324
|
-
* Example: NavigationBindings.utils.updateNthPoint(1) - will generate
|
|
325
|
-
* function that updates all consecutive points except point with index=0.
|
|
326
|
-
*
|
|
327
|
-
* @private
|
|
328
|
-
* @function bindingsUtils.updateNthPoint
|
|
329
|
-
*
|
|
330
|
-
* @param {number} startIndex
|
|
331
|
-
* Index from each point should udpated
|
|
26
|
+
* @sample {highstock} stock/stocktools/custom-stock-tools-bindings
|
|
27
|
+
* Custom stock tools bindings
|
|
332
28
|
*
|
|
333
|
-
* @return {Function}
|
|
334
|
-
* Callback to be used in steps array
|
|
335
|
-
*/
|
|
336
|
-
bindingsUtils.updateNthPoint = function (startIndex) {
|
|
337
|
-
return function (e, annotation) {
|
|
338
|
-
var options = annotation.options.typeOptions, xAxis = isNumber(options.xAxis) && this.chart.xAxis[options.xAxis], yAxis = isNumber(options.yAxis) && this.chart.yAxis[options.yAxis];
|
|
339
|
-
if (xAxis && yAxis) {
|
|
340
|
-
options.points.forEach(function (point, index) {
|
|
341
|
-
if (index >= startIndex) {
|
|
342
|
-
point.x = xAxis.toValue(e[xAxis.horiz ? 'chartX' : 'chartY']);
|
|
343
|
-
point.y = yAxis.toValue(e[yAxis.horiz ? 'chartX' : 'chartY']);
|
|
344
|
-
}
|
|
345
|
-
});
|
|
346
|
-
annotation.update({
|
|
347
|
-
typeOptions: {
|
|
348
|
-
points: options.points
|
|
349
|
-
}
|
|
350
|
-
});
|
|
351
|
-
}
|
|
352
|
-
};
|
|
353
|
-
};
|
|
354
|
-
// Extends NavigationBindigs to support indicators and resizers:
|
|
355
|
-
extend(NavigationBindings.prototype, {
|
|
356
|
-
/* eslint-disable valid-jsdoc */
|
|
357
|
-
/**
|
|
358
|
-
* Get current positions for all yAxes. If new axis does not have position,
|
|
359
|
-
* returned is default height and last available top place.
|
|
360
|
-
*
|
|
361
|
-
* @private
|
|
362
|
-
* @function Highcharts.NavigationBindings#getYAxisPositions
|
|
363
|
-
*
|
|
364
|
-
* @param {Array<Highcharts.Axis>} yAxes
|
|
365
|
-
* Array of yAxes available in the chart.
|
|
366
|
-
*
|
|
367
|
-
* @param {number} plotHeight
|
|
368
|
-
* Available height in the chart.
|
|
369
|
-
*
|
|
370
|
-
* @param {number} defaultHeight
|
|
371
|
-
* Default height in percents.
|
|
372
|
-
*
|
|
373
|
-
* @param {string} removedYAxisHeight
|
|
374
|
-
* Height of the removed yAxis in percents.
|
|
375
|
-
*
|
|
376
|
-
* @return {Highcharts.YAxisPositions}
|
|
377
|
-
* An object containing an array of calculated positions
|
|
378
|
-
* in percentages. Format: `{top: Number, height: Number}`
|
|
379
|
-
* and maximum value of top + height of axes.
|
|
380
|
-
*/
|
|
381
|
-
getYAxisPositions: function (yAxes, plotHeight, defaultHeight, removedYAxisHeight) {
|
|
382
|
-
var positions, allAxesHeight = 0, previousAxisHeight, removedHeight;
|
|
383
|
-
/** @private */
|
|
384
|
-
function isPercentage(prop) {
|
|
385
|
-
return defined(prop) && !isNumber(prop) && prop.match('%');
|
|
386
|
-
}
|
|
387
|
-
if (removedYAxisHeight) {
|
|
388
|
-
removedHeight = correctFloat((parseFloat(removedYAxisHeight) / 100));
|
|
389
|
-
}
|
|
390
|
-
positions = yAxes.map(function (yAxis, index) {
|
|
391
|
-
var height = correctFloat(isPercentage(yAxis.options.height) ?
|
|
392
|
-
parseFloat(yAxis.options.height) / 100 :
|
|
393
|
-
yAxis.height / plotHeight), top = correctFloat(isPercentage(yAxis.options.top) ?
|
|
394
|
-
parseFloat(yAxis.options.top) / 100 :
|
|
395
|
-
(yAxis.top - yAxis.chart.plotTop) / plotHeight);
|
|
396
|
-
// New axis' height is NaN so we can check if
|
|
397
|
-
// the axis is newly created this way
|
|
398
|
-
if (!removedHeight) {
|
|
399
|
-
if (!isNumber(height)) {
|
|
400
|
-
// Check if the previous axis is the
|
|
401
|
-
// indicator axis (every indicator inherits from sma)
|
|
402
|
-
height = yAxes[index - 1].series
|
|
403
|
-
.every(function (s) { return s.is('sma'); }) ?
|
|
404
|
-
previousAxisHeight : defaultHeight / 100;
|
|
405
|
-
}
|
|
406
|
-
if (!isNumber(top)) {
|
|
407
|
-
top = allAxesHeight;
|
|
408
|
-
}
|
|
409
|
-
previousAxisHeight = height;
|
|
410
|
-
allAxesHeight = correctFloat(Math.max(allAxesHeight, (top || 0) + (height || 0)));
|
|
411
|
-
}
|
|
412
|
-
else {
|
|
413
|
-
if (top <= allAxesHeight) {
|
|
414
|
-
allAxesHeight = correctFloat(Math.max(allAxesHeight, (top || 0) + (height || 0)));
|
|
415
|
-
}
|
|
416
|
-
else {
|
|
417
|
-
top = correctFloat(top - removedHeight);
|
|
418
|
-
allAxesHeight = correctFloat(allAxesHeight + height);
|
|
419
|
-
}
|
|
420
|
-
}
|
|
421
|
-
return {
|
|
422
|
-
height: height * 100,
|
|
423
|
-
top: top * 100
|
|
424
|
-
};
|
|
425
|
-
});
|
|
426
|
-
return { positions: positions, allAxesHeight: allAxesHeight };
|
|
427
|
-
},
|
|
428
|
-
/**
|
|
429
|
-
* Get current resize options for each yAxis. Note that each resize is
|
|
430
|
-
* linked to the next axis, except the last one which shouldn't affect
|
|
431
|
-
* axes in the navigator. Because indicator can be removed with it's yAxis
|
|
432
|
-
* in the middle of yAxis array, we need to bind closest yAxes back.
|
|
433
|
-
*
|
|
434
|
-
* @private
|
|
435
|
-
* @function Highcharts.NavigationBindings#getYAxisResizers
|
|
436
|
-
*
|
|
437
|
-
* @param {Array<Highcharts.Axis>} yAxes
|
|
438
|
-
* Array of yAxes available in the chart
|
|
439
|
-
*
|
|
440
|
-
* @return {Array<object>}
|
|
441
|
-
* An array of resizer options.
|
|
442
|
-
* Format: `{enabled: Boolean, controlledAxis: { next: [String]}}`
|
|
443
|
-
*/
|
|
444
|
-
getYAxisResizers: function (yAxes) {
|
|
445
|
-
var resizers = [];
|
|
446
|
-
yAxes.forEach(function (_yAxis, index) {
|
|
447
|
-
var nextYAxis = yAxes[index + 1];
|
|
448
|
-
// We have next axis, bind them:
|
|
449
|
-
if (nextYAxis) {
|
|
450
|
-
resizers[index] = {
|
|
451
|
-
enabled: true,
|
|
452
|
-
controlledAxis: {
|
|
453
|
-
next: [
|
|
454
|
-
pick(nextYAxis.options.id, nextYAxis.options.index)
|
|
455
|
-
]
|
|
456
|
-
}
|
|
457
|
-
};
|
|
458
|
-
}
|
|
459
|
-
else {
|
|
460
|
-
// Remove binding:
|
|
461
|
-
resizers[index] = {
|
|
462
|
-
enabled: false
|
|
463
|
-
};
|
|
464
|
-
}
|
|
465
|
-
});
|
|
466
|
-
return resizers;
|
|
467
|
-
},
|
|
468
|
-
/**
|
|
469
|
-
* Resize all yAxes (except navigator) to fit the plotting height. Method
|
|
470
|
-
* checks if new axis is added, if the new axis will fit under previous
|
|
471
|
-
* axes it is placed there. If not, current plot area is scaled
|
|
472
|
-
* to make room for new axis.
|
|
473
|
-
*
|
|
474
|
-
* If axis is removed, the current plot area streaches to fit into 100%
|
|
475
|
-
* of the plot area.
|
|
476
|
-
*
|
|
477
|
-
* @private
|
|
478
|
-
* @function Highcharts.NavigationBindings#resizeYAxes
|
|
479
|
-
* @param {string} [removedYAxisHeight]
|
|
480
|
-
*
|
|
481
|
-
*
|
|
482
|
-
*/
|
|
483
|
-
resizeYAxes: function (removedYAxisHeight) {
|
|
484
|
-
// The height of the new axis before rescalling. In %, but as a number.
|
|
485
|
-
var defaultHeight = 20;
|
|
486
|
-
var chart = this.chart,
|
|
487
|
-
// Only non-navigator axes
|
|
488
|
-
yAxes = chart.yAxis.filter(bindingsUtils.isNotNavigatorYAxis), plotHeight = chart.plotHeight,
|
|
489
|
-
// Gather current heights (in %)
|
|
490
|
-
_a = this.getYAxisPositions(yAxes, plotHeight, defaultHeight, removedYAxisHeight), positions = _a.positions, allAxesHeight = _a.allAxesHeight, resizers = this.getYAxisResizers(yAxes);
|
|
491
|
-
// check if the axis is being either added or removed and
|
|
492
|
-
// if the new indicator axis will fit under existing axes.
|
|
493
|
-
// if so, there is no need to scale them.
|
|
494
|
-
if (!removedYAxisHeight &&
|
|
495
|
-
allAxesHeight <= correctFloat(0.8 + defaultHeight / 100)) {
|
|
496
|
-
positions[positions.length - 1] = {
|
|
497
|
-
height: defaultHeight,
|
|
498
|
-
top: correctFloat(allAxesHeight * 100 - defaultHeight)
|
|
499
|
-
};
|
|
500
|
-
}
|
|
501
|
-
else {
|
|
502
|
-
positions.forEach(function (position) {
|
|
503
|
-
position.height = (position.height / (allAxesHeight * 100)) * 100;
|
|
504
|
-
position.top = (position.top / (allAxesHeight * 100)) * 100;
|
|
505
|
-
});
|
|
506
|
-
}
|
|
507
|
-
positions.forEach(function (position, index) {
|
|
508
|
-
yAxes[index].update({
|
|
509
|
-
height: position.height + '%',
|
|
510
|
-
top: position.top + '%',
|
|
511
|
-
resize: resizers[index],
|
|
512
|
-
offset: 0
|
|
513
|
-
}, false);
|
|
514
|
-
});
|
|
515
|
-
},
|
|
516
|
-
/**
|
|
517
|
-
* Utility to modify calculated positions according to the remaining/needed
|
|
518
|
-
* space. Later, these positions are used in `yAxis.update({ top, height })`
|
|
519
|
-
*
|
|
520
|
-
* @private
|
|
521
|
-
* @function Highcharts.NavigationBindings#recalculateYAxisPositions
|
|
522
|
-
* @param {Array<Highcharts.Dictionary<number>>} positions
|
|
523
|
-
* Default positions of all yAxes.
|
|
524
|
-
* @param {number} changedSpace
|
|
525
|
-
* How much space should be added or removed.
|
|
526
|
-
* @param {boolean} modifyHeight
|
|
527
|
-
* Update only `top` or both `top` and `height`.
|
|
528
|
-
* @param {number} adder
|
|
529
|
-
* `-1` or `1`, to determine whether we should add or remove space.
|
|
530
|
-
*
|
|
531
|
-
* @return {Array<object>}
|
|
532
|
-
* Modified positions,
|
|
533
|
-
*/
|
|
534
|
-
recalculateYAxisPositions: function (positions, changedSpace, modifyHeight, adder) {
|
|
535
|
-
positions.forEach(function (position, index) {
|
|
536
|
-
var prevPosition = positions[index - 1];
|
|
537
|
-
position.top = !prevPosition ? 0 :
|
|
538
|
-
correctFloat(prevPosition.height + prevPosition.top);
|
|
539
|
-
if (modifyHeight) {
|
|
540
|
-
position.height = correctFloat(position.height + adder * changedSpace);
|
|
541
|
-
}
|
|
542
|
-
});
|
|
543
|
-
return positions;
|
|
544
|
-
}
|
|
545
|
-
/* eslint-enable valid-jsdoc */
|
|
546
|
-
});
|
|
547
|
-
/**
|
|
548
29
|
* @type {Highcharts.Dictionary<Highcharts.NavigationBindingsOptionsObject>}
|
|
549
30
|
* @since 7.0.0
|
|
550
31
|
* @optionparent navigation.bindings
|
|
551
32
|
*/
|
|
552
|
-
var
|
|
33
|
+
var StockToolsBindings = {
|
|
553
34
|
// Line type annotations:
|
|
554
35
|
/**
|
|
555
36
|
* A segment annotation bindings. Includes `start` and one event in `steps`
|
|
@@ -565,12 +46,12 @@ var stockToolsBindings = {
|
|
|
565
46
|
// eslint-disable-next-line valid-jsdoc
|
|
566
47
|
/** @ignore-option */
|
|
567
48
|
start: function (e) {
|
|
568
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
49
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
569
50
|
// Exit if clicked out of axes area
|
|
570
51
|
if (!coordsX || !coordsY) {
|
|
571
52
|
return;
|
|
572
53
|
}
|
|
573
|
-
options = merge({
|
|
54
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
574
55
|
langKey: 'segment',
|
|
575
56
|
type: 'crookedLine',
|
|
576
57
|
typeOptions: {
|
|
@@ -589,7 +70,7 @@ var stockToolsBindings = {
|
|
|
589
70
|
},
|
|
590
71
|
/** @ignore-option */
|
|
591
72
|
steps: [
|
|
592
|
-
|
|
73
|
+
updateNthPoint(1)
|
|
593
74
|
]
|
|
594
75
|
},
|
|
595
76
|
/**
|
|
@@ -606,12 +87,12 @@ var stockToolsBindings = {
|
|
|
606
87
|
// eslint-disable-next-line valid-jsdoc
|
|
607
88
|
/** @ignore-option */
|
|
608
89
|
start: function (e) {
|
|
609
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
90
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
610
91
|
// Exit if clicked out of axes area
|
|
611
92
|
if (!coordsX || !coordsY) {
|
|
612
93
|
return;
|
|
613
94
|
}
|
|
614
|
-
options = merge({
|
|
95
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
615
96
|
langKey: 'arrowSegment',
|
|
616
97
|
type: 'crookedLine',
|
|
617
98
|
typeOptions: {
|
|
@@ -633,7 +114,7 @@ var stockToolsBindings = {
|
|
|
633
114
|
},
|
|
634
115
|
/** @ignore-option */
|
|
635
116
|
steps: [
|
|
636
|
-
|
|
117
|
+
updateNthPoint(1)
|
|
637
118
|
]
|
|
638
119
|
},
|
|
639
120
|
/**
|
|
@@ -650,12 +131,12 @@ var stockToolsBindings = {
|
|
|
650
131
|
// eslint-disable-next-line valid-jsdoc
|
|
651
132
|
/** @ignore-option */
|
|
652
133
|
start: function (e) {
|
|
653
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
134
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
654
135
|
// Exit if clicked out of axes area
|
|
655
136
|
if (!coordsX || !coordsY) {
|
|
656
137
|
return;
|
|
657
138
|
}
|
|
658
|
-
options = merge({
|
|
139
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
659
140
|
langKey: 'ray',
|
|
660
141
|
type: 'infinityLine',
|
|
661
142
|
typeOptions: {
|
|
@@ -675,7 +156,7 @@ var stockToolsBindings = {
|
|
|
675
156
|
},
|
|
676
157
|
/** @ignore-option */
|
|
677
158
|
steps: [
|
|
678
|
-
|
|
159
|
+
updateNthPoint(1)
|
|
679
160
|
]
|
|
680
161
|
},
|
|
681
162
|
/**
|
|
@@ -692,12 +173,12 @@ var stockToolsBindings = {
|
|
|
692
173
|
// eslint-disable-next-line valid-jsdoc
|
|
693
174
|
/** @ignore-option */
|
|
694
175
|
start: function (e) {
|
|
695
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
176
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
696
177
|
// Exit if clicked out of axes area
|
|
697
178
|
if (!coordsX || !coordsY) {
|
|
698
179
|
return;
|
|
699
180
|
}
|
|
700
|
-
options = merge({
|
|
181
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
701
182
|
langKey: 'arrowRay',
|
|
702
183
|
type: 'infinityLine',
|
|
703
184
|
typeOptions: {
|
|
@@ -720,7 +201,7 @@ var stockToolsBindings = {
|
|
|
720
201
|
},
|
|
721
202
|
/** @ignore-option */
|
|
722
203
|
steps: [
|
|
723
|
-
|
|
204
|
+
updateNthPoint(1)
|
|
724
205
|
]
|
|
725
206
|
},
|
|
726
207
|
/**
|
|
@@ -736,12 +217,12 @@ var stockToolsBindings = {
|
|
|
736
217
|
// eslint-disable-next-line valid-jsdoc
|
|
737
218
|
/** @ignore-option */
|
|
738
219
|
start: function (e) {
|
|
739
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
220
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
740
221
|
// Exit if clicked out of axes area
|
|
741
222
|
if (!coordsX || !coordsY) {
|
|
742
223
|
return;
|
|
743
224
|
}
|
|
744
|
-
options = merge({
|
|
225
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
745
226
|
langKey: 'infinityLine',
|
|
746
227
|
type: 'infinityLine',
|
|
747
228
|
typeOptions: {
|
|
@@ -761,7 +242,7 @@ var stockToolsBindings = {
|
|
|
761
242
|
},
|
|
762
243
|
/** @ignore-option */
|
|
763
244
|
steps: [
|
|
764
|
-
|
|
245
|
+
updateNthPoint(1)
|
|
765
246
|
]
|
|
766
247
|
},
|
|
767
248
|
/**
|
|
@@ -778,12 +259,12 @@ var stockToolsBindings = {
|
|
|
778
259
|
// eslint-disable-next-line valid-jsdoc
|
|
779
260
|
/** @ignore-option */
|
|
780
261
|
start: function (e) {
|
|
781
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
262
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
782
263
|
// Exit if clicked out of axes area
|
|
783
264
|
if (!coordsX || !coordsY) {
|
|
784
265
|
return;
|
|
785
266
|
}
|
|
786
|
-
options = merge({
|
|
267
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
787
268
|
langKey: 'arrowInfinityLine',
|
|
788
269
|
type: 'infinityLine',
|
|
789
270
|
typeOptions: {
|
|
@@ -807,7 +288,7 @@ var stockToolsBindings = {
|
|
|
807
288
|
},
|
|
808
289
|
/** @ignore-option */
|
|
809
290
|
steps: [
|
|
810
|
-
|
|
291
|
+
updateNthPoint(1)
|
|
811
292
|
]
|
|
812
293
|
},
|
|
813
294
|
/**
|
|
@@ -823,12 +304,12 @@ var stockToolsBindings = {
|
|
|
823
304
|
// eslint-disable-next-line valid-jsdoc
|
|
824
305
|
/** @ignore-option */
|
|
825
306
|
start: function (e) {
|
|
826
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
307
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
827
308
|
// Exit if clicked out of axes area
|
|
828
309
|
if (!coordsX || !coordsY) {
|
|
829
310
|
return;
|
|
830
311
|
}
|
|
831
|
-
options = merge({
|
|
312
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
832
313
|
langKey: 'horizontalLine',
|
|
833
314
|
type: 'infinityLine',
|
|
834
315
|
draggable: 'y',
|
|
@@ -841,7 +322,8 @@ var stockToolsBindings = {
|
|
|
841
322
|
y: coordsY.value
|
|
842
323
|
}]
|
|
843
324
|
}
|
|
844
|
-
}, navigation.annotationsOptions, navigation.bindings
|
|
325
|
+
}, navigation.annotationsOptions, navigation.bindings
|
|
326
|
+
.horizontalLine.annotationsOptions);
|
|
845
327
|
this.chart.addAnnotation(options);
|
|
846
328
|
}
|
|
847
329
|
},
|
|
@@ -858,12 +340,12 @@ var stockToolsBindings = {
|
|
|
858
340
|
// eslint-disable-next-line valid-jsdoc
|
|
859
341
|
/** @ignore-option */
|
|
860
342
|
start: function (e) {
|
|
861
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
343
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
862
344
|
// Exit if clicked out of axes area
|
|
863
345
|
if (!coordsX || !coordsY) {
|
|
864
346
|
return;
|
|
865
347
|
}
|
|
866
|
-
options = merge({
|
|
348
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
867
349
|
langKey: 'verticalLine',
|
|
868
350
|
type: 'infinityLine',
|
|
869
351
|
draggable: 'x',
|
|
@@ -895,7 +377,7 @@ var stockToolsBindings = {
|
|
|
895
377
|
// eslint-disable-next-line valid-jsdoc
|
|
896
378
|
/** @ignore-option */
|
|
897
379
|
start: function (e) {
|
|
898
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
380
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
899
381
|
// Exit if clicked out of axes area
|
|
900
382
|
if (!coordsX || !coordsY) {
|
|
901
383
|
return;
|
|
@@ -917,8 +399,8 @@ var stockToolsBindings = {
|
|
|
917
399
|
},
|
|
918
400
|
/** @ignore-option */
|
|
919
401
|
steps: [
|
|
920
|
-
|
|
921
|
-
|
|
402
|
+
updateNthPoint(1),
|
|
403
|
+
updateNthPoint(2)
|
|
922
404
|
]
|
|
923
405
|
},
|
|
924
406
|
/**
|
|
@@ -935,7 +417,7 @@ var stockToolsBindings = {
|
|
|
935
417
|
// eslint-disable-next-line valid-jsdoc
|
|
936
418
|
/** @ignore-option */
|
|
937
419
|
start: function (e) {
|
|
938
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
420
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
939
421
|
// Exit if clicked out of axes area
|
|
940
422
|
if (!coordsX || !coordsY) {
|
|
941
423
|
return;
|
|
@@ -959,10 +441,10 @@ var stockToolsBindings = {
|
|
|
959
441
|
},
|
|
960
442
|
/** @ignore-option */
|
|
961
443
|
steps: [
|
|
962
|
-
|
|
963
|
-
|
|
964
|
-
|
|
965
|
-
|
|
444
|
+
updateNthPoint(1),
|
|
445
|
+
updateNthPoint(2),
|
|
446
|
+
updateNthPoint(3),
|
|
447
|
+
updateNthPoint(4)
|
|
966
448
|
]
|
|
967
449
|
},
|
|
968
450
|
/**
|
|
@@ -979,7 +461,7 @@ var stockToolsBindings = {
|
|
|
979
461
|
// eslint-disable-next-line valid-jsdoc
|
|
980
462
|
/** @ignore-option */
|
|
981
463
|
start: function (e) {
|
|
982
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
464
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
983
465
|
// Exit if clicked out of axes area
|
|
984
466
|
if (!coordsX || !coordsY) {
|
|
985
467
|
return;
|
|
@@ -999,7 +481,7 @@ var stockToolsBindings = {
|
|
|
999
481
|
},
|
|
1000
482
|
labelOptions: {
|
|
1001
483
|
style: {
|
|
1002
|
-
color: "#666666" /* neutralColor60 */
|
|
484
|
+
color: "#666666" /* Palette.neutralColor60 */
|
|
1003
485
|
}
|
|
1004
486
|
}
|
|
1005
487
|
}, navigation.annotationsOptions, navigation.bindings.elliott3.annotationsOptions);
|
|
@@ -1007,9 +489,9 @@ var stockToolsBindings = {
|
|
|
1007
489
|
},
|
|
1008
490
|
/** @ignore-option */
|
|
1009
491
|
steps: [
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
|
-
|
|
492
|
+
updateNthPoint(1),
|
|
493
|
+
updateNthPoint(2),
|
|
494
|
+
updateNthPoint(3)
|
|
1013
495
|
]
|
|
1014
496
|
},
|
|
1015
497
|
/**
|
|
@@ -1026,7 +508,7 @@ var stockToolsBindings = {
|
|
|
1026
508
|
// eslint-disable-next-line valid-jsdoc
|
|
1027
509
|
/** @ignore-option */
|
|
1028
510
|
start: function (e) {
|
|
1029
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
511
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1030
512
|
// Exit if clicked out of axes area
|
|
1031
513
|
if (!coordsX || !coordsY) {
|
|
1032
514
|
return;
|
|
@@ -1048,7 +530,7 @@ var stockToolsBindings = {
|
|
|
1048
530
|
},
|
|
1049
531
|
labelOptions: {
|
|
1050
532
|
style: {
|
|
1051
|
-
color: "#666666" /* neutralColor60 */
|
|
533
|
+
color: "#666666" /* Palette.neutralColor60 */
|
|
1052
534
|
}
|
|
1053
535
|
}
|
|
1054
536
|
}, navigation.annotationsOptions, navigation.bindings.elliott5.annotationsOptions);
|
|
@@ -1056,11 +538,11 @@ var stockToolsBindings = {
|
|
|
1056
538
|
},
|
|
1057
539
|
/** @ignore-option */
|
|
1058
540
|
steps: [
|
|
1059
|
-
|
|
1060
|
-
|
|
1061
|
-
|
|
1062
|
-
|
|
1063
|
-
|
|
541
|
+
updateNthPoint(1),
|
|
542
|
+
updateNthPoint(2),
|
|
543
|
+
updateNthPoint(3),
|
|
544
|
+
updateNthPoint(4),
|
|
545
|
+
updateNthPoint(5)
|
|
1064
546
|
]
|
|
1065
547
|
},
|
|
1066
548
|
/**
|
|
@@ -1077,7 +559,7 @@ var stockToolsBindings = {
|
|
|
1077
559
|
// eslint-disable-next-line valid-jsdoc
|
|
1078
560
|
/** @ignore-option */
|
|
1079
561
|
start: function (e) {
|
|
1080
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
562
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1081
563
|
// Exit if clicked out of axes area
|
|
1082
564
|
if (!coordsX || !coordsY) {
|
|
1083
565
|
return;
|
|
@@ -1092,23 +574,23 @@ var stockToolsBindings = {
|
|
|
1092
574
|
point: { x: x, y: y },
|
|
1093
575
|
crosshairX: {
|
|
1094
576
|
strokeWidth: 1,
|
|
1095
|
-
stroke: "#000000" /* neutralColor100 */
|
|
577
|
+
stroke: "#000000" /* Palette.neutralColor100 */
|
|
1096
578
|
},
|
|
1097
579
|
crosshairY: {
|
|
1098
580
|
enabled: false,
|
|
1099
581
|
strokeWidth: 0,
|
|
1100
|
-
stroke: "#000000" /* neutralColor100 */
|
|
582
|
+
stroke: "#000000" /* Palette.neutralColor100 */
|
|
1101
583
|
},
|
|
1102
584
|
background: {
|
|
1103
585
|
width: 0,
|
|
1104
586
|
height: 0,
|
|
1105
587
|
strokeWidth: 0,
|
|
1106
|
-
stroke: "#ffffff" /* backgroundColor */
|
|
588
|
+
stroke: "#ffffff" /* Palette.backgroundColor */
|
|
1107
589
|
}
|
|
1108
590
|
},
|
|
1109
591
|
labelOptions: {
|
|
1110
592
|
style: {
|
|
1111
|
-
color: "#666666" /* neutralColor60 */
|
|
593
|
+
color: "#666666" /* Palette.neutralColor60 */
|
|
1112
594
|
}
|
|
1113
595
|
}
|
|
1114
596
|
}, navigation.annotationsOptions, navigation.bindings.measureX.annotationsOptions);
|
|
@@ -1116,7 +598,7 @@ var stockToolsBindings = {
|
|
|
1116
598
|
},
|
|
1117
599
|
/** @ignore-option */
|
|
1118
600
|
steps: [
|
|
1119
|
-
|
|
601
|
+
updateRectSize
|
|
1120
602
|
]
|
|
1121
603
|
},
|
|
1122
604
|
/**
|
|
@@ -1133,7 +615,7 @@ var stockToolsBindings = {
|
|
|
1133
615
|
// eslint-disable-next-line valid-jsdoc
|
|
1134
616
|
/** @ignore-option */
|
|
1135
617
|
start: function (e) {
|
|
1136
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
618
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1137
619
|
// Exit if clicked out of axes area
|
|
1138
620
|
if (!coordsX || !coordsY) {
|
|
1139
621
|
return;
|
|
@@ -1149,22 +631,22 @@ var stockToolsBindings = {
|
|
|
1149
631
|
crosshairX: {
|
|
1150
632
|
enabled: false,
|
|
1151
633
|
strokeWidth: 0,
|
|
1152
|
-
stroke: "#000000" /* neutralColor100 */
|
|
634
|
+
stroke: "#000000" /* Palette.neutralColor100 */
|
|
1153
635
|
},
|
|
1154
636
|
crosshairY: {
|
|
1155
637
|
strokeWidth: 1,
|
|
1156
|
-
stroke: "#000000" /* neutralColor100 */
|
|
638
|
+
stroke: "#000000" /* Palette.neutralColor100 */
|
|
1157
639
|
},
|
|
1158
640
|
background: {
|
|
1159
641
|
width: 0,
|
|
1160
642
|
height: 0,
|
|
1161
643
|
strokeWidth: 0,
|
|
1162
|
-
stroke: "#ffffff" /* backgroundColor */
|
|
644
|
+
stroke: "#ffffff" /* Palette.backgroundColor */
|
|
1163
645
|
}
|
|
1164
646
|
},
|
|
1165
647
|
labelOptions: {
|
|
1166
648
|
style: {
|
|
1167
|
-
color: "#666666" /* neutralColor60 */
|
|
649
|
+
color: "#666666" /* Palette.neutralColor60 */
|
|
1168
650
|
}
|
|
1169
651
|
}
|
|
1170
652
|
}, navigation.annotationsOptions, navigation.bindings.measureY.annotationsOptions);
|
|
@@ -1172,7 +654,7 @@ var stockToolsBindings = {
|
|
|
1172
654
|
},
|
|
1173
655
|
/** @ignore-option */
|
|
1174
656
|
steps: [
|
|
1175
|
-
|
|
657
|
+
updateRectSize
|
|
1176
658
|
]
|
|
1177
659
|
},
|
|
1178
660
|
/**
|
|
@@ -1189,7 +671,7 @@ var stockToolsBindings = {
|
|
|
1189
671
|
// eslint-disable-next-line valid-jsdoc
|
|
1190
672
|
/** @ignore-option */
|
|
1191
673
|
start: function (e) {
|
|
1192
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
674
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1193
675
|
// Exit if clicked out of axes area
|
|
1194
676
|
if (!coordsX || !coordsY) {
|
|
1195
677
|
return;
|
|
@@ -1209,16 +691,16 @@ var stockToolsBindings = {
|
|
|
1209
691
|
},
|
|
1210
692
|
crosshairX: {
|
|
1211
693
|
strokeWidth: 1,
|
|
1212
|
-
stroke: "#000000" /* neutralColor100 */
|
|
694
|
+
stroke: "#000000" /* Palette.neutralColor100 */
|
|
1213
695
|
},
|
|
1214
696
|
crosshairY: {
|
|
1215
697
|
strokeWidth: 1,
|
|
1216
|
-
stroke: "#000000" /* neutralColor100 */
|
|
698
|
+
stroke: "#000000" /* Palette.neutralColor100 */
|
|
1217
699
|
}
|
|
1218
700
|
},
|
|
1219
701
|
labelOptions: {
|
|
1220
702
|
style: {
|
|
1221
|
-
color: "#666666" /* neutralColor60 */
|
|
703
|
+
color: "#666666" /* Palette.neutralColor60 */
|
|
1222
704
|
}
|
|
1223
705
|
}
|
|
1224
706
|
}, navigation.annotationsOptions, navigation.bindings.measureXY.annotationsOptions);
|
|
@@ -1226,7 +708,7 @@ var stockToolsBindings = {
|
|
|
1226
708
|
},
|
|
1227
709
|
/** @ignore-option */
|
|
1228
710
|
steps: [
|
|
1229
|
-
|
|
711
|
+
updateRectSize
|
|
1230
712
|
]
|
|
1231
713
|
},
|
|
1232
714
|
// Advanced type annotations:
|
|
@@ -1234,6 +716,9 @@ var stockToolsBindings = {
|
|
|
1234
716
|
* A fibonacci annotation bindings. Includes `start` and two events in
|
|
1235
717
|
* `steps` array (updates second point, then height).
|
|
1236
718
|
*
|
|
719
|
+
* @sample {highstock} stock/stocktools/custom-stock-tools-bindings
|
|
720
|
+
* Custom stock tools bindings
|
|
721
|
+
*
|
|
1237
722
|
* @type {Highcharts.NavigationBindingsOptionsObject}
|
|
1238
723
|
* @product highstock
|
|
1239
724
|
* @default {"className": "highcharts-fibonacci", "start": function() {}, "steps": [function() {}, function() {}], "annotationsOptions": {}}
|
|
@@ -1244,7 +729,7 @@ var stockToolsBindings = {
|
|
|
1244
729
|
// eslint-disable-next-line valid-jsdoc
|
|
1245
730
|
/** @ignore-option */
|
|
1246
731
|
start: function (e) {
|
|
1247
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
732
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1248
733
|
// Exit if clicked out of axes area
|
|
1249
734
|
if (!coordsX || !coordsY) {
|
|
1250
735
|
return;
|
|
@@ -1262,7 +747,7 @@ var stockToolsBindings = {
|
|
|
1262
747
|
},
|
|
1263
748
|
labelOptions: {
|
|
1264
749
|
style: {
|
|
1265
|
-
color: "#666666" /* neutralColor60 */
|
|
750
|
+
color: "#666666" /* Palette.neutralColor60 */
|
|
1266
751
|
}
|
|
1267
752
|
}
|
|
1268
753
|
}, navigation.annotationsOptions, navigation.bindings.fibonacci.annotationsOptions);
|
|
@@ -1270,8 +755,8 @@ var stockToolsBindings = {
|
|
|
1270
755
|
},
|
|
1271
756
|
/** @ignore-option */
|
|
1272
757
|
steps: [
|
|
1273
|
-
|
|
1274
|
-
|
|
758
|
+
updateNthPoint(1),
|
|
759
|
+
updateHeight
|
|
1275
760
|
]
|
|
1276
761
|
},
|
|
1277
762
|
/**
|
|
@@ -1288,7 +773,7 @@ var stockToolsBindings = {
|
|
|
1288
773
|
// eslint-disable-next-line valid-jsdoc
|
|
1289
774
|
/** @ignore-option */
|
|
1290
775
|
start: function (e) {
|
|
1291
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
776
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1292
777
|
// Exit if clicked out of axes area
|
|
1293
778
|
if (!coordsX || !coordsY) {
|
|
1294
779
|
return;
|
|
@@ -1310,8 +795,8 @@ var stockToolsBindings = {
|
|
|
1310
795
|
},
|
|
1311
796
|
/** @ignore-option */
|
|
1312
797
|
steps: [
|
|
1313
|
-
|
|
1314
|
-
|
|
798
|
+
updateNthPoint(1),
|
|
799
|
+
updateHeight
|
|
1315
800
|
]
|
|
1316
801
|
},
|
|
1317
802
|
/**
|
|
@@ -1328,7 +813,7 @@ var stockToolsBindings = {
|
|
|
1328
813
|
// eslint-disable-next-line valid-jsdoc
|
|
1329
814
|
/** @ignore-option */
|
|
1330
815
|
start: function (e) {
|
|
1331
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
816
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1332
817
|
// Exit if clicked out of axes area
|
|
1333
818
|
if (!coordsX || !coordsY) {
|
|
1334
819
|
return;
|
|
@@ -1344,10 +829,11 @@ var stockToolsBindings = {
|
|
|
1344
829
|
y: coordsY.value,
|
|
1345
830
|
controlPoint: {
|
|
1346
831
|
style: {
|
|
1347
|
-
fill: "#f21313" /* negativeColor */
|
|
832
|
+
fill: "#f21313" /* Palette.negativeColor */
|
|
1348
833
|
}
|
|
1349
834
|
}
|
|
1350
|
-
},
|
|
835
|
+
},
|
|
836
|
+
{ x: x, y: y },
|
|
1351
837
|
{ x: x, y: y }],
|
|
1352
838
|
innerBackground: {
|
|
1353
839
|
fill: 'rgba(100, 170, 255, 0.8)'
|
|
@@ -1361,8 +847,8 @@ var stockToolsBindings = {
|
|
|
1361
847
|
},
|
|
1362
848
|
/** @ignore-option */
|
|
1363
849
|
steps: [
|
|
1364
|
-
|
|
1365
|
-
|
|
850
|
+
updateNthPoint(1),
|
|
851
|
+
updateNthPoint(2)
|
|
1366
852
|
]
|
|
1367
853
|
},
|
|
1368
854
|
// Labels with arrow and auto increments
|
|
@@ -1381,13 +867,13 @@ var stockToolsBindings = {
|
|
|
1381
867
|
// eslint-disable-next-line valid-jsdoc
|
|
1382
868
|
/** @ignore-option */
|
|
1383
869
|
start: function (e) {
|
|
1384
|
-
var closestPoint =
|
|
870
|
+
var closestPoint = attractToPoint(e, this.chart);
|
|
1385
871
|
// Exit if clicked out of axes area
|
|
1386
872
|
if (!closestPoint) {
|
|
1387
873
|
return;
|
|
1388
874
|
}
|
|
1389
875
|
this.verticalCounter = this.verticalCounter || 0;
|
|
1390
|
-
options = merge({
|
|
876
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
1391
877
|
langKey: 'verticalCounter',
|
|
1392
878
|
type: 'verticalLine',
|
|
1393
879
|
typeOptions: {
|
|
@@ -1404,7 +890,7 @@ var stockToolsBindings = {
|
|
|
1404
890
|
},
|
|
1405
891
|
labelOptions: {
|
|
1406
892
|
style: {
|
|
1407
|
-
color: "#666666" /* neutralColor60 */,
|
|
893
|
+
color: "#666666" /* Palette.neutralColor60 */,
|
|
1408
894
|
fontSize: '11px'
|
|
1409
895
|
}
|
|
1410
896
|
},
|
|
@@ -1412,30 +898,30 @@ var stockToolsBindings = {
|
|
|
1412
898
|
stroke: 'rgba(0, 0, 0, 0.75)',
|
|
1413
899
|
strokeWidth: 1
|
|
1414
900
|
}
|
|
1415
|
-
}, navigation.annotationsOptions, navigation.bindings
|
|
1416
|
-
|
|
901
|
+
}, navigation.annotationsOptions, navigation.bindings
|
|
902
|
+
.verticalCounter.annotationsOptions), annotation = this.chart.addAnnotation(options);
|
|
1417
903
|
this.verticalCounter++;
|
|
1418
904
|
annotation.options.events.click.call(annotation, {});
|
|
1419
905
|
}
|
|
1420
906
|
},
|
|
1421
907
|
/**
|
|
1422
|
-
* A
|
|
1423
|
-
*
|
|
1424
|
-
*
|
|
908
|
+
* A time cycles annotation bindings. Includes `start` event and 1 `step`
|
|
909
|
+
* event. first click marks the beginning of the circle, and the second one
|
|
910
|
+
* sets its diameter.
|
|
1425
911
|
*
|
|
1426
912
|
* @type {Highcharts.NavigationBindingsOptionsObject}
|
|
1427
913
|
* @product highstock
|
|
1428
|
-
* @default {"className": "highcharts-
|
|
914
|
+
* @default {"className": "highcharts-time-cycles", "start": function() {}, "steps": [function (){}] "annotationsOptions": {}}
|
|
1429
915
|
*/
|
|
1430
916
|
timeCycles: {
|
|
1431
917
|
className: 'highcharts-time-cycles',
|
|
1432
918
|
start: function (e) {
|
|
1433
|
-
var closestPoint =
|
|
919
|
+
var closestPoint = attractToPoint(e, this.chart);
|
|
1434
920
|
// Exit if clicked out of axes area
|
|
1435
921
|
if (!closestPoint) {
|
|
1436
922
|
return;
|
|
1437
923
|
}
|
|
1438
|
-
options = merge({
|
|
924
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
1439
925
|
langKey: 'timeCycles',
|
|
1440
926
|
type: 'timeCycles',
|
|
1441
927
|
typeOptions: {
|
|
@@ -1452,13 +938,12 @@ var stockToolsBindings = {
|
|
|
1452
938
|
strokeWidth: 2
|
|
1453
939
|
}
|
|
1454
940
|
}
|
|
1455
|
-
}, navigation.annotationsOptions, navigation.bindings.timeCycles.annotationsOptions);
|
|
1456
|
-
annotation = this.chart.addAnnotation(options);
|
|
941
|
+
}, navigation.annotationsOptions, navigation.bindings.timeCycles.annotationsOptions), annotation = this.chart.addAnnotation(options);
|
|
1457
942
|
annotation.options.events.click.call(annotation, {});
|
|
1458
943
|
return annotation;
|
|
1459
944
|
},
|
|
1460
945
|
steps: [
|
|
1461
|
-
|
|
946
|
+
updateNthPoint(1)
|
|
1462
947
|
]
|
|
1463
948
|
},
|
|
1464
949
|
verticalLabel: {
|
|
@@ -1467,12 +952,12 @@ var stockToolsBindings = {
|
|
|
1467
952
|
// eslint-disable-next-line valid-jsdoc
|
|
1468
953
|
/** @ignore-option */
|
|
1469
954
|
start: function (e) {
|
|
1470
|
-
var closestPoint =
|
|
955
|
+
var closestPoint = attractToPoint(e, this.chart);
|
|
1471
956
|
// Exit if clicked out of axes area
|
|
1472
957
|
if (!closestPoint) {
|
|
1473
958
|
return;
|
|
1474
959
|
}
|
|
1475
|
-
options = merge({
|
|
960
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
1476
961
|
langKey: 'verticalLabel',
|
|
1477
962
|
type: 'verticalLine',
|
|
1478
963
|
typeOptions: {
|
|
@@ -1488,7 +973,7 @@ var stockToolsBindings = {
|
|
|
1488
973
|
},
|
|
1489
974
|
labelOptions: {
|
|
1490
975
|
style: {
|
|
1491
|
-
color: "#666666" /* neutralColor60 */,
|
|
976
|
+
color: "#666666" /* Palette.neutralColor60 */,
|
|
1492
977
|
fontSize: '11px'
|
|
1493
978
|
}
|
|
1494
979
|
},
|
|
@@ -1496,8 +981,8 @@ var stockToolsBindings = {
|
|
|
1496
981
|
stroke: 'rgba(0, 0, 0, 0.75)',
|
|
1497
982
|
strokeWidth: 1
|
|
1498
983
|
}
|
|
1499
|
-
}, navigation.annotationsOptions, navigation.bindings
|
|
1500
|
-
|
|
984
|
+
}, navigation.annotationsOptions, navigation.bindings
|
|
985
|
+
.verticalLabel.annotationsOptions), annotation = this.chart.addAnnotation(options);
|
|
1501
986
|
annotation.options.events.click.call(annotation, {});
|
|
1502
987
|
}
|
|
1503
988
|
},
|
|
@@ -1518,12 +1003,12 @@ var stockToolsBindings = {
|
|
|
1518
1003
|
// eslint-disable-next-line valid-jsdoc
|
|
1519
1004
|
/** @ignore-option */
|
|
1520
1005
|
start: function (e) {
|
|
1521
|
-
var closestPoint =
|
|
1006
|
+
var closestPoint = attractToPoint(e, this.chart);
|
|
1522
1007
|
// Exit if clicked out of axes area
|
|
1523
1008
|
if (!closestPoint) {
|
|
1524
1009
|
return;
|
|
1525
1010
|
}
|
|
1526
|
-
options = merge({
|
|
1011
|
+
var navigation = this.chart.options.navigation, options = merge({
|
|
1527
1012
|
langKey: 'verticalArrow',
|
|
1528
1013
|
type: 'verticalLine',
|
|
1529
1014
|
typeOptions: {
|
|
@@ -1540,15 +1025,16 @@ var stockToolsBindings = {
|
|
|
1540
1025
|
connector: {
|
|
1541
1026
|
fill: 'none',
|
|
1542
1027
|
stroke: closestPoint.below ?
|
|
1543
|
-
"#f21313" /* negativeColor */ :
|
|
1028
|
+
"#f21313" /* Palette.negativeColor */ :
|
|
1029
|
+
"#06b535" /* Palette.positiveColor */
|
|
1544
1030
|
}
|
|
1545
1031
|
},
|
|
1546
1032
|
shapeOptions: {
|
|
1547
1033
|
stroke: 'rgba(0, 0, 0, 0.75)',
|
|
1548
1034
|
strokeWidth: 1
|
|
1549
1035
|
}
|
|
1550
|
-
}, navigation.annotationsOptions, navigation.bindings
|
|
1551
|
-
|
|
1036
|
+
}, navigation.annotationsOptions, navigation.bindings
|
|
1037
|
+
.verticalArrow.annotationsOptions), annotation = this.chart.addAnnotation(options);
|
|
1552
1038
|
annotation.options.events.click.call(annotation, {});
|
|
1553
1039
|
}
|
|
1554
1040
|
},
|
|
@@ -1566,7 +1052,7 @@ var stockToolsBindings = {
|
|
|
1566
1052
|
// eslint-disable-next-line valid-jsdoc
|
|
1567
1053
|
/** @ignore-option */
|
|
1568
1054
|
start: function (e) {
|
|
1569
|
-
var coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
1055
|
+
var coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1570
1056
|
// Exit if clicked out of axes area
|
|
1571
1057
|
if (!coordsX || !coordsY) {
|
|
1572
1058
|
return;
|
|
@@ -1589,7 +1075,7 @@ var stockToolsBindings = {
|
|
|
1589
1075
|
// eslint-disable-next-line valid-jsdoc
|
|
1590
1076
|
steps: [
|
|
1591
1077
|
function (e, annotation) {
|
|
1592
|
-
var mockPointOpts = annotation.options.typeOptions.points, x = mockPointOpts && mockPointOpts[0].x, coords = this.chart.pointer.getCoordinates(e), coordsX =
|
|
1078
|
+
var mockPointOpts = annotation.options.typeOptions.points, x = mockPointOpts && mockPointOpts[0].x, coords = this.chart.pointer.getCoordinates(e), coordsX = getAssignedAxis(coords.xAxis), coordsY = getAssignedAxis(coords.yAxis);
|
|
1593
1079
|
annotation.update({
|
|
1594
1080
|
typeOptions: {
|
|
1595
1081
|
xAxis: coordsX.axis.options.index,
|
|
@@ -1617,7 +1103,7 @@ var stockToolsBindings = {
|
|
|
1617
1103
|
/** @ignore-option */
|
|
1618
1104
|
className: 'highcharts-flag-circlepin',
|
|
1619
1105
|
/** @ignore-option */
|
|
1620
|
-
start:
|
|
1106
|
+
start: addFlagFromForm('circlepin')
|
|
1621
1107
|
},
|
|
1622
1108
|
/**
|
|
1623
1109
|
* A flag series bindings. Includes `start` event. On click, finds the
|
|
@@ -1631,7 +1117,7 @@ var stockToolsBindings = {
|
|
|
1631
1117
|
/** @ignore-option */
|
|
1632
1118
|
className: 'highcharts-flag-diamondpin',
|
|
1633
1119
|
/** @ignore-option */
|
|
1634
|
-
start:
|
|
1120
|
+
start: addFlagFromForm('flag')
|
|
1635
1121
|
},
|
|
1636
1122
|
/**
|
|
1637
1123
|
* A flag series bindings. Includes `start` event.
|
|
@@ -1646,7 +1132,7 @@ var stockToolsBindings = {
|
|
|
1646
1132
|
/** @ignore-option */
|
|
1647
1133
|
className: 'highcharts-flag-squarepin',
|
|
1648
1134
|
/** @ignore-option */
|
|
1649
|
-
start:
|
|
1135
|
+
start: addFlagFromForm('squarepin')
|
|
1650
1136
|
},
|
|
1651
1137
|
/**
|
|
1652
1138
|
* A flag series bindings. Includes `start` event.
|
|
@@ -1661,7 +1147,7 @@ var stockToolsBindings = {
|
|
|
1661
1147
|
/** @ignore-option */
|
|
1662
1148
|
className: 'highcharts-flag-simplepin',
|
|
1663
1149
|
/** @ignore-option */
|
|
1664
|
-
start:
|
|
1150
|
+
start: addFlagFromForm('nopin')
|
|
1665
1151
|
},
|
|
1666
1152
|
// Other tools:
|
|
1667
1153
|
/**
|
|
@@ -1680,7 +1166,9 @@ var stockToolsBindings = {
|
|
|
1680
1166
|
init: function (button) {
|
|
1681
1167
|
this.chart.update({
|
|
1682
1168
|
chart: {
|
|
1683
|
-
|
|
1169
|
+
zooming: {
|
|
1170
|
+
type: 'x'
|
|
1171
|
+
}
|
|
1684
1172
|
}
|
|
1685
1173
|
});
|
|
1686
1174
|
fireEvent(this, 'deselectButton', { button: button });
|
|
@@ -1702,7 +1190,9 @@ var stockToolsBindings = {
|
|
|
1702
1190
|
init: function (button) {
|
|
1703
1191
|
this.chart.update({
|
|
1704
1192
|
chart: {
|
|
1705
|
-
|
|
1193
|
+
zooming: {
|
|
1194
|
+
type: 'y'
|
|
1195
|
+
}
|
|
1706
1196
|
}
|
|
1707
1197
|
});
|
|
1708
1198
|
fireEvent(this, 'deselectButton', { button: button });
|
|
@@ -1724,7 +1214,9 @@ var stockToolsBindings = {
|
|
|
1724
1214
|
init: function (button) {
|
|
1725
1215
|
this.chart.update({
|
|
1726
1216
|
chart: {
|
|
1727
|
-
|
|
1217
|
+
zooming: {
|
|
1218
|
+
type: 'xy'
|
|
1219
|
+
}
|
|
1728
1220
|
}
|
|
1729
1221
|
});
|
|
1730
1222
|
fireEvent(this, 'deselectButton', { button: button });
|
|
@@ -1856,10 +1348,11 @@ var stockToolsBindings = {
|
|
|
1856
1348
|
/** @ignore-option */
|
|
1857
1349
|
className: 'highcharts-full-screen',
|
|
1858
1350
|
noDataState: 'normal',
|
|
1859
|
-
// eslint-disable-next-line valid-jsdoc
|
|
1860
1351
|
/** @ignore-option */
|
|
1861
1352
|
init: function (button) {
|
|
1862
|
-
this.chart.fullscreen
|
|
1353
|
+
if (this.chart.fullscreen) {
|
|
1354
|
+
this.chart.fullscreen.toggle();
|
|
1355
|
+
}
|
|
1863
1356
|
fireEvent(this, 'deselectButton', { button: button });
|
|
1864
1357
|
}
|
|
1865
1358
|
},
|
|
@@ -1878,7 +1371,7 @@ var stockToolsBindings = {
|
|
|
1878
1371
|
// eslint-disable-next-line valid-jsdoc
|
|
1879
1372
|
/** @ignore-option */
|
|
1880
1373
|
init: function (button) {
|
|
1881
|
-
var chart = this.chart, series = chart.series, gui = chart.stockTools, priceIndicatorEnabled =
|
|
1374
|
+
var chart = this.chart, series = chart.series, gui = chart.stockTools, priceIndicatorEnabled = isPriceIndicatorEnabled(chart.series);
|
|
1882
1375
|
if (gui && gui.guiEnabled) {
|
|
1883
1376
|
series.forEach(function (series) {
|
|
1884
1377
|
series.update({
|
|
@@ -1918,7 +1411,7 @@ var stockToolsBindings = {
|
|
|
1918
1411
|
options: {},
|
|
1919
1412
|
// Callback on submit:
|
|
1920
1413
|
onSubmit: function (data) {
|
|
1921
|
-
|
|
1414
|
+
manageIndicators.call(navigation, data);
|
|
1922
1415
|
}
|
|
1923
1416
|
});
|
|
1924
1417
|
}
|
|
@@ -1987,11 +1480,11 @@ var stockToolsBindings = {
|
|
|
1987
1480
|
}
|
|
1988
1481
|
});
|
|
1989
1482
|
chart.yAxis.forEach(function (yAxis) {
|
|
1990
|
-
if (
|
|
1483
|
+
if (isNotNavigatorYAxis(yAxis)) {
|
|
1991
1484
|
yAxes.push(yAxis.options);
|
|
1992
1485
|
}
|
|
1993
1486
|
});
|
|
1994
|
-
H.win.localStorage.setItem(
|
|
1487
|
+
H.win.localStorage.setItem('highcharts-chart', JSON.stringify({
|
|
1995
1488
|
annotations: annotations,
|
|
1996
1489
|
indicators: indicators,
|
|
1997
1490
|
flags: flags,
|
|
@@ -2001,9 +1494,9 @@ var stockToolsBindings = {
|
|
|
2001
1494
|
}
|
|
2002
1495
|
}
|
|
2003
1496
|
};
|
|
2004
|
-
|
|
2005
|
-
|
|
2006
|
-
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
1497
|
+
/* *
|
|
1498
|
+
*
|
|
1499
|
+
* Default Export
|
|
1500
|
+
*
|
|
1501
|
+
* */
|
|
1502
|
+
export default StockToolsBindings;
|