@amcharts/amcharts5 5.15.6 → 5.16.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/.internal/charts/flow/ArcDiagram.js +4 -24
- package/.internal/charts/flow/ArcDiagram.js.map +1 -1
- package/.internal/charts/flow/ArcDiagramLink.js +3 -30
- package/.internal/charts/flow/ArcDiagramLink.js.map +1 -1
- package/.internal/charts/flow/ArcDiagramNodes.js +5 -39
- package/.internal/charts/flow/ArcDiagramNodes.js.map +1 -1
- package/.internal/charts/flow/Chord.d.ts.map +1 -1
- package/.internal/charts/flow/Chord.js +22 -59
- package/.internal/charts/flow/Chord.js.map +1 -1
- package/.internal/charts/flow/ChordDirected.js +5 -30
- package/.internal/charts/flow/ChordDirected.js.map +1 -1
- package/.internal/charts/flow/ChordLink.js +2 -33
- package/.internal/charts/flow/ChordLink.js.map +1 -1
- package/.internal/charts/flow/ChordLinkDirected.js +2 -12
- package/.internal/charts/flow/ChordLinkDirected.js.map +1 -1
- package/.internal/charts/flow/ChordNodes.js +6 -45
- package/.internal/charts/flow/ChordNodes.js.map +1 -1
- package/.internal/charts/flow/ChordNonRibbon.js +2 -12
- package/.internal/charts/flow/ChordNonRibbon.js.map +1 -1
- package/.internal/charts/flow/Flow.js +8 -48
- package/.internal/charts/flow/Flow.js.map +1 -1
- package/.internal/charts/flow/FlowLink.js +2 -33
- package/.internal/charts/flow/FlowLink.js.map +1 -1
- package/.internal/charts/flow/FlowNode.js +2 -24
- package/.internal/charts/flow/FlowNode.js.map +1 -1
- package/.internal/charts/flow/FlowNodes.js +5 -30
- package/.internal/charts/flow/FlowNodes.js.map +1 -1
- package/.internal/charts/flow/Sankey.js +7 -48
- package/.internal/charts/flow/Sankey.js.map +1 -1
- package/.internal/charts/flow/SankeyLink.js +4 -24
- package/.internal/charts/flow/SankeyLink.js.map +1 -1
- package/.internal/charts/flow/SankeyNodes.js +3 -27
- package/.internal/charts/flow/SankeyNodes.js.map +1 -1
- package/.internal/charts/funnel/FunnelSeries.js +8 -48
- package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
- package/.internal/charts/funnel/FunnelSlice.js +15 -90
- package/.internal/charts/funnel/FunnelSlice.js.map +1 -1
- package/.internal/charts/funnel/PictorialStackedSeries.js +5 -30
- package/.internal/charts/funnel/PictorialStackedSeries.js.map +1 -1
- package/.internal/charts/funnel/PyramidSeries.js +3 -24
- package/.internal/charts/funnel/PyramidSeries.js.map +1 -1
- package/.internal/charts/funnel/SlicedChart.js +2 -12
- package/.internal/charts/funnel/SlicedChart.js.map +1 -1
- package/.internal/charts/gantt/Gantt.js +57 -188
- package/.internal/charts/gantt/Gantt.js.map +1 -1
- package/.internal/charts/gantt/GanttCategoryAxis.js +9 -110
- package/.internal/charts/gantt/GanttCategoryAxis.js.map +1 -1
- package/.internal/charts/gantt/GanttCategoryAxisRenderer.js +27 -72
- package/.internal/charts/gantt/GanttCategoryAxisRenderer.js.map +1 -1
- package/.internal/charts/gantt/GanttDateAxis.js +2 -24
- package/.internal/charts/gantt/GanttDateAxis.js.map +1 -1
- package/.internal/charts/gantt/GanttDateAxisRenderer.js +2 -12
- package/.internal/charts/gantt/GanttDateAxisRenderer.js.map +1 -1
- package/.internal/charts/gantt/GanttSeries.js +49 -173
- package/.internal/charts/gantt/GanttSeries.js.map +1 -1
- package/.internal/charts/hierarchy/BreadcrumbBar.js +8 -29
- package/.internal/charts/hierarchy/BreadcrumbBar.js.map +1 -1
- package/.internal/charts/hierarchy/ForceDirected.js +10 -60
- package/.internal/charts/hierarchy/ForceDirected.js.map +1 -1
- package/.internal/charts/hierarchy/Hierarchy.js +11 -64
- package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
- package/.internal/charts/hierarchy/HierarchyLink.js +3 -24
- package/.internal/charts/hierarchy/HierarchyLink.js.map +1 -1
- package/.internal/charts/hierarchy/HierarchyNode.js +2 -30
- package/.internal/charts/hierarchy/HierarchyNode.js.map +1 -1
- package/.internal/charts/hierarchy/LinkedHierarchy.js +18 -58
- package/.internal/charts/hierarchy/LinkedHierarchy.js.map +1 -1
- package/.internal/charts/hierarchy/LinkedHierarchyNode.js +2 -12
- package/.internal/charts/hierarchy/LinkedHierarchyNode.js.map +1 -1
- package/.internal/charts/hierarchy/Pack.js +7 -38
- package/.internal/charts/hierarchy/Pack.js.map +1 -1
- package/.internal/charts/hierarchy/Partition.js +7 -32
- package/.internal/charts/hierarchy/Partition.js.map +1 -1
- package/.internal/charts/hierarchy/Sunburst.js +10 -40
- package/.internal/charts/hierarchy/Sunburst.js.map +1 -1
- package/.internal/charts/hierarchy/Tree.js +4 -30
- package/.internal/charts/hierarchy/Tree.js.map +1 -1
- package/.internal/charts/hierarchy/Treemap.d.ts +1 -1
- package/.internal/charts/hierarchy/Treemap.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Treemap.js +17 -45
- package/.internal/charts/hierarchy/Treemap.js.map +1 -1
- package/.internal/charts/hierarchy/VoronoiTreemap.js +7 -32
- package/.internal/charts/hierarchy/VoronoiTreemap.js.map +1 -1
- package/.internal/charts/map/ClusteredPointSeries.d.ts +0 -2
- package/.internal/charts/map/ClusteredPointSeries.d.ts.map +1 -1
- package/.internal/charts/map/ClusteredPointSeries.js +128 -127
- package/.internal/charts/map/ClusteredPointSeries.js.map +1 -1
- package/.internal/charts/map/GraticuleSeries.js +3 -18
- package/.internal/charts/map/GraticuleSeries.js.map +1 -1
- package/.internal/charts/map/MapChart.d.ts +39 -1
- package/.internal/charts/map/MapChart.d.ts.map +1 -1
- package/.internal/charts/map/MapChart.js +168 -187
- package/.internal/charts/map/MapChart.js.map +1 -1
- package/.internal/charts/map/MapLine.js +3 -18
- package/.internal/charts/map/MapLine.js.map +1 -1
- package/.internal/charts/map/MapLineSeries.js +4 -24
- package/.internal/charts/map/MapLineSeries.js.map +1 -1
- package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
- package/.internal/charts/map/MapPointSeries.js +5 -24
- package/.internal/charts/map/MapPointSeries.js.map +1 -1
- package/.internal/charts/map/MapPolygon.js +3 -27
- package/.internal/charts/map/MapPolygon.js.map +1 -1
- package/.internal/charts/map/MapPolygonSeries.js +4 -24
- package/.internal/charts/map/MapPolygonSeries.js.map +1 -1
- package/.internal/charts/map/MapSeries.js +7 -42
- package/.internal/charts/map/MapSeries.js.map +1 -1
- package/.internal/charts/map/ZoomControl.js +2 -12
- package/.internal/charts/map/ZoomControl.js.map +1 -1
- package/.internal/charts/percent/PercentChart.js +2 -12
- package/.internal/charts/percent/PercentChart.js.map +1 -1
- package/.internal/charts/percent/PercentSeries.js +11 -66
- package/.internal/charts/percent/PercentSeries.js.map +1 -1
- package/.internal/charts/pie/PieChart.js +3 -18
- package/.internal/charts/pie/PieChart.js.map +1 -1
- package/.internal/charts/pie/PieSeries.js +2 -12
- package/.internal/charts/pie/PieSeries.js.map +1 -1
- package/.internal/charts/radar/AxisRendererCircular.js +9 -34
- package/.internal/charts/radar/AxisRendererCircular.js.map +1 -1
- package/.internal/charts/radar/AxisRendererRadial.js +6 -26
- package/.internal/charts/radar/AxisRendererRadial.js.map +1 -1
- package/.internal/charts/radar/ClockHand.js +4 -24
- package/.internal/charts/radar/ClockHand.js.map +1 -1
- package/.internal/charts/radar/RadarChart.js +5 -30
- package/.internal/charts/radar/RadarChart.js.map +1 -1
- package/.internal/charts/radar/RadarColumnSeries.js +6 -21
- package/.internal/charts/radar/RadarColumnSeries.js.map +1 -1
- package/.internal/charts/radar/RadarCursor.js +3 -18
- package/.internal/charts/radar/RadarCursor.js.map +1 -1
- package/.internal/charts/radar/RadarLineSeries.js +2 -12
- package/.internal/charts/radar/RadarLineSeries.js.map +1 -1
- package/.internal/charts/radar/SmoothedRadarLineSeries.js +2 -12
- package/.internal/charts/radar/SmoothedRadarLineSeries.js.map +1 -1
- package/.internal/charts/stock/PanelControls.js +26 -56
- package/.internal/charts/stock/PanelControls.js.map +1 -1
- package/.internal/charts/stock/SettingsModal.js +3 -30
- package/.internal/charts/stock/SettingsModal.js.map +1 -1
- package/.internal/charts/stock/StockChart.js +11 -108
- package/.internal/charts/stock/StockChart.js.map +1 -1
- package/.internal/charts/stock/StockLegend.js +14 -34
- package/.internal/charts/stock/StockLegend.js.map +1 -1
- package/.internal/charts/stock/StockPanel.js +3 -38
- package/.internal/charts/stock/StockPanel.js.map +1 -1
- package/.internal/charts/stock/drawing/AverageSeries.js +3 -18
- package/.internal/charts/stock/drawing/AverageSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/CalloutSeries.js +3 -18
- package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/DoodleSeries.js +5 -42
- package/.internal/charts/stock/drawing/DoodleSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/DrawingSeries.js +32 -200
- package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/EllipseSeries.js +7 -42
- package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/FibonacciSeries.js +7 -42
- package/.internal/charts/stock/drawing/FibonacciSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js +3 -18
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js +3 -18
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/HorizontalRaySeries.js +3 -18
- package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -1
- package/.internal/charts/stock/drawing/IconSeries.js +3 -24
- package/.internal/charts/stock/drawing/IconSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/LabelSeries.js +5 -36
- package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/LineArrowSeries.js +4 -24
- package/.internal/charts/stock/drawing/LineArrowSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/Measure.js +6 -36
- package/.internal/charts/stock/drawing/Measure.js.map +1 -1
- package/.internal/charts/stock/drawing/ParallelChannelSeries.js +5 -30
- package/.internal/charts/stock/drawing/ParallelChannelSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/PolylineSeries.js +4 -24
- package/.internal/charts/stock/drawing/PolylineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js +3 -18
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/RectangleSeries.js +4 -24
- package/.internal/charts/stock/drawing/RectangleSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/RegressionSeries.js +3 -18
- package/.internal/charts/stock/drawing/RegressionSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/SimpleLineSeries.js +9 -54
- package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/TrendLineSeries.js +3 -18
- package/.internal/charts/stock/drawing/TrendLineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/VerticalLineSeries.js +3 -18
- package/.internal/charts/stock/drawing/VerticalLineSeries.js.map +1 -1
- package/.internal/charts/stock/indicators/AccelerationBands.js +23 -56
- package/.internal/charts/stock/indicators/AccelerationBands.js.map +1 -1
- package/.internal/charts/stock/indicators/AccumulationDistribution.js +11 -26
- package/.internal/charts/stock/indicators/AccumulationDistribution.js.map +1 -1
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js +15 -42
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/Aroon.js +15 -30
- package/.internal/charts/stock/indicators/Aroon.js.map +1 -1
- package/.internal/charts/stock/indicators/AverageTrueRange.js +11 -26
- package/.internal/charts/stock/indicators/AverageTrueRange.js.map +1 -1
- package/.internal/charts/stock/indicators/AwesomeOscillator.js +11 -26
- package/.internal/charts/stock/indicators/AwesomeOscillator.js.map +1 -1
- package/.internal/charts/stock/indicators/BollingerBands.js +33 -66
- package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -1
- package/.internal/charts/stock/indicators/BullBearPower.js +11 -26
- package/.internal/charts/stock/indicators/BullBearPower.js.map +1 -1
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js +11 -26
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js.map +1 -1
- package/.internal/charts/stock/indicators/ChaikinOscillator.js +15 -30
- package/.internal/charts/stock/indicators/ChaikinOscillator.js.map +1 -1
- package/.internal/charts/stock/indicators/ChartIndicator.js +3 -54
- package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js +2 -12
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/DisparityIndex.js +21 -36
- package/.internal/charts/stock/indicators/DisparityIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/HeikinAshi.js +11 -26
- package/.internal/charts/stock/indicators/HeikinAshi.js.map +1 -1
- package/.internal/charts/stock/indicators/Indicator.js +4 -42
- package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
- package/.internal/charts/stock/indicators/MACD.js +31 -64
- package/.internal/charts/stock/indicators/MACD.js.map +1 -1
- package/.internal/charts/stock/indicators/MACross.js +19 -34
- package/.internal/charts/stock/indicators/MACross.js.map +1 -1
- package/.internal/charts/stock/indicators/MedianPrice.js +11 -26
- package/.internal/charts/stock/indicators/MedianPrice.js.map +1 -1
- package/.internal/charts/stock/indicators/Momentum.js +18 -33
- package/.internal/charts/stock/indicators/Momentum.js.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverage.js +25 -40
- package/.internal/charts/stock/indicators/MovingAverage.js.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js +33 -48
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js +42 -75
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -1
- package/.internal/charts/stock/indicators/OnBalanceVolume.js +7 -22
- package/.internal/charts/stock/indicators/OnBalanceVolume.js.map +1 -1
- package/.internal/charts/stock/indicators/OverboughtOversold.js +19 -64
- package/.internal/charts/stock/indicators/OverboughtOversold.js.map +1 -1
- package/.internal/charts/stock/indicators/PVT.js +7 -22
- package/.internal/charts/stock/indicators/PVT.js.map +1 -1
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js +2 -24
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/StandardDeviation.js +16 -31
- package/.internal/charts/stock/indicators/StandardDeviation.js.map +1 -1
- package/.internal/charts/stock/indicators/StochasticMomentumIndex.js +2 -24
- package/.internal/charts/stock/indicators/StochasticMomentumIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/StochasticOscillator.js +2 -24
- package/.internal/charts/stock/indicators/StochasticOscillator.js.map +1 -1
- package/.internal/charts/stock/indicators/SuperTrend.js +19 -52
- package/.internal/charts/stock/indicators/SuperTrend.js.map +1 -1
- package/.internal/charts/stock/indicators/Trix.js +20 -49
- package/.internal/charts/stock/indicators/Trix.js.map +1 -1
- package/.internal/charts/stock/indicators/TypicalPrice.js +11 -26
- package/.internal/charts/stock/indicators/TypicalPrice.js.map +1 -1
- package/.internal/charts/stock/indicators/VWAP.js +16 -31
- package/.internal/charts/stock/indicators/VWAP.js.map +1 -1
- package/.internal/charts/stock/indicators/Volume.js +11 -26
- package/.internal/charts/stock/indicators/Volume.js.map +1 -1
- package/.internal/charts/stock/indicators/VolumeProfile.js +32 -65
- package/.internal/charts/stock/indicators/VolumeProfile.js.map +1 -1
- package/.internal/charts/stock/indicators/WilliamsR.js +2 -12
- package/.internal/charts/stock/indicators/WilliamsR.js.map +1 -1
- package/.internal/charts/stock/indicators/ZigZag.js +15 -30
- package/.internal/charts/stock/indicators/ZigZag.js.map +1 -1
- package/.internal/charts/stock/toolbar/ColorControl.js +2 -12
- package/.internal/charts/stock/toolbar/ColorControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/ComparisonControl.js +2 -12
- package/.internal/charts/stock/toolbar/ComparisonControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/DataSaveControl.js +2 -12
- package/.internal/charts/stock/toolbar/DataSaveControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/DateRangeSelector.js +2 -12
- package/.internal/charts/stock/toolbar/DateRangeSelector.js.map +1 -1
- package/.internal/charts/stock/toolbar/DrawingControl.js +4 -24
- package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/DrawingToolControl.js +2 -12
- package/.internal/charts/stock/toolbar/DrawingToolControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/Dropdown.js +2 -12
- package/.internal/charts/stock/toolbar/Dropdown.js.map +1 -1
- package/.internal/charts/stock/toolbar/DropdownColors.js +2 -12
- package/.internal/charts/stock/toolbar/DropdownColors.js.map +1 -1
- package/.internal/charts/stock/toolbar/DropdownControl.js +2 -12
- package/.internal/charts/stock/toolbar/DropdownControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/DropdownList.js +2 -21
- package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -1
- package/.internal/charts/stock/toolbar/DropdownListControl.js +2 -12
- package/.internal/charts/stock/toolbar/DropdownListControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/IconControl.js +2 -12
- package/.internal/charts/stock/toolbar/IconControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.js +2 -12
- package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/IntervalControl.js +2 -12
- package/.internal/charts/stock/toolbar/IntervalControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/PeriodSelector.js +2 -27
- package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -1
- package/.internal/charts/stock/toolbar/ResetControl.js +2 -12
- package/.internal/charts/stock/toolbar/ResetControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/SeriesTypeControl.js +2 -12
- package/.internal/charts/stock/toolbar/SeriesTypeControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/SettingsControl.js +2 -12
- package/.internal/charts/stock/toolbar/SettingsControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/StockControl.js +2 -12
- package/.internal/charts/stock/toolbar/StockControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/StockIcons.js +52 -57
- package/.internal/charts/stock/toolbar/StockIcons.js.map +1 -1
- package/.internal/charts/stock/toolbar/StockToolbar.js +2 -21
- package/.internal/charts/stock/toolbar/StockToolbar.js.map +1 -1
- package/.internal/charts/timeline/AxisRendererCurveX.js +11 -46
- package/.internal/charts/timeline/AxisRendererCurveX.js.map +1 -1
- package/.internal/charts/timeline/AxisRendererCurveY.js +6 -26
- package/.internal/charts/timeline/AxisRendererCurveY.js.map +1 -1
- package/.internal/charts/timeline/CurveChart.js +3 -18
- package/.internal/charts/timeline/CurveChart.js.map +1 -1
- package/.internal/charts/timeline/CurveColumnSeries.js +6 -21
- package/.internal/charts/timeline/CurveColumnSeries.js.map +1 -1
- package/.internal/charts/timeline/CurveCursor.js +2 -12
- package/.internal/charts/timeline/CurveCursor.js.map +1 -1
- package/.internal/charts/timeline/CurveLineSeries.js +2 -12
- package/.internal/charts/timeline/CurveLineSeries.js.map +1 -1
- package/.internal/charts/timeline/SerpentineChart.js +2 -12
- package/.internal/charts/timeline/SerpentineChart.js.map +1 -1
- package/.internal/charts/timeline/SpiralChart.js +2 -12
- package/.internal/charts/timeline/SpiralChart.js.map +1 -1
- package/.internal/charts/venn/Venn.js +8 -54
- package/.internal/charts/venn/Venn.js.map +1 -1
- package/.internal/charts/wordcloud/WordCloud.d.ts +1 -1
- package/.internal/charts/wordcloud/WordCloud.d.ts.map +1 -1
- package/.internal/charts/wordcloud/WordCloud.js +26 -89
- package/.internal/charts/wordcloud/WordCloud.js.map +1 -1
- package/.internal/charts/xy/XYChart.js +23 -149
- package/.internal/charts/xy/XYChart.js.map +1 -1
- package/.internal/charts/xy/XYChartScrollbar.js +15 -35
- package/.internal/charts/xy/XYChartScrollbar.js.map +1 -1
- package/.internal/charts/xy/XYCursor.js +16 -93
- package/.internal/charts/xy/XYCursor.js.map +1 -1
- package/.internal/charts/xy/axes/Axis.js +27 -166
- package/.internal/charts/xy/axes/Axis.js.map +1 -1
- package/.internal/charts/xy/axes/AxisBullet.js +2 -24
- package/.internal/charts/xy/axes/AxisBullet.js.map +1 -1
- package/.internal/charts/xy/axes/AxisLabel.js +3 -18
- package/.internal/charts/xy/axes/AxisLabel.js.map +1 -1
- package/.internal/charts/xy/axes/AxisLabelRadial.js +3 -18
- package/.internal/charts/xy/axes/AxisLabelRadial.js.map +1 -1
- package/.internal/charts/xy/axes/AxisRenderer.js +21 -131
- package/.internal/charts/xy/axes/AxisRenderer.js.map +1 -1
- package/.internal/charts/xy/axes/AxisRendererX.js +3 -18
- package/.internal/charts/xy/axes/AxisRendererX.js.map +1 -1
- package/.internal/charts/xy/axes/AxisRendererY.js +3 -24
- package/.internal/charts/xy/axes/AxisRendererY.js.map +1 -1
- package/.internal/charts/xy/axes/AxisTick.js +3 -18
- package/.internal/charts/xy/axes/AxisTick.js.map +1 -1
- package/.internal/charts/xy/axes/CategoryAxis.js +4 -24
- package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
- package/.internal/charts/xy/axes/CategoryDateAxis.js +4 -24
- package/.internal/charts/xy/axes/CategoryDateAxis.js.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.js +16 -57
- package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
- package/.internal/charts/xy/axes/DurationAxis.js +5 -30
- package/.internal/charts/xy/axes/DurationAxis.js.map +1 -1
- package/.internal/charts/xy/axes/EditableAxisLabel.js +3 -18
- package/.internal/charts/xy/axes/EditableAxisLabel.js.map +1 -1
- package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/GaplessDateAxis.js +16 -40
- package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
- package/.internal/charts/xy/axes/Grid.js +2 -12
- package/.internal/charts/xy/axes/Grid.js.map +1 -1
- package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/ValueAxis.js +15 -73
- package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.js +5 -30
- package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
- package/.internal/charts/xy/series/Candlestick.js +2 -12
- package/.internal/charts/xy/series/Candlestick.js.map +1 -1
- package/.internal/charts/xy/series/CandlestickSeries.js +7 -22
- package/.internal/charts/xy/series/CandlestickSeries.js.map +1 -1
- package/.internal/charts/xy/series/ColumnSeries.js +8 -33
- package/.internal/charts/xy/series/ColumnSeries.js.map +1 -1
- package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/LineSeries.js +21 -95
- package/.internal/charts/xy/series/LineSeries.js.map +1 -1
- package/.internal/charts/xy/series/OHLC.js +2 -12
- package/.internal/charts/xy/series/OHLC.js.map +1 -1
- package/.internal/charts/xy/series/OHLCSeries.js +7 -22
- package/.internal/charts/xy/series/OHLCSeries.js.map +1 -1
- package/.internal/charts/xy/series/SmoothedXLineSeries.js +2 -12
- package/.internal/charts/xy/series/SmoothedXLineSeries.js.map +1 -1
- package/.internal/charts/xy/series/SmoothedXYLineSeries.js +2 -12
- package/.internal/charts/xy/series/SmoothedXYLineSeries.js.map +1 -1
- package/.internal/charts/xy/series/SmoothedYLineSeries.js +2 -12
- package/.internal/charts/xy/series/SmoothedYLineSeries.js.map +1 -1
- package/.internal/charts/xy/series/StepLineSeries.js +2 -12
- package/.internal/charts/xy/series/StepLineSeries.js.map +1 -1
- package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/XYSeries.js +45 -286
- package/.internal/charts/xy/series/XYSeries.js.map +1 -1
- package/.internal/core/Registry.js +5 -30
- package/.internal/core/Registry.js.map +1 -1
- package/.internal/core/Root.d.ts +1 -1
- package/.internal/core/Root.d.ts.map +1 -1
- package/.internal/core/Root.js +49 -407
- package/.internal/core/Root.js.map +1 -1
- package/.internal/core/Theme.js +1 -12
- package/.internal/core/Theme.js.map +1 -1
- package/.internal/core/render/Bullet.js +2 -31
- package/.internal/core/render/Bullet.js.map +1 -1
- package/.internal/core/render/Button.js +2 -12
- package/.internal/core/render/Button.js.map +1 -1
- package/.internal/core/render/Chart.js +4 -24
- package/.internal/core/render/Chart.js.map +1 -1
- package/.internal/core/render/Circle.js +2 -12
- package/.internal/core/render/Circle.js.map +1 -1
- package/.internal/core/render/Component.js +11 -135
- package/.internal/core/render/Component.js.map +1 -1
- package/.internal/core/render/ConfirmButton.js +2 -21
- package/.internal/core/render/ConfirmButton.js.map +1 -1
- package/.internal/core/render/Container.js +13 -108
- package/.internal/core/render/Container.js.map +1 -1
- package/.internal/core/render/EditableLabel.js +2 -21
- package/.internal/core/render/EditableLabel.js.map +1 -1
- package/.internal/core/render/Ellipse.js +2 -12
- package/.internal/core/render/Ellipse.js.map +1 -1
- package/.internal/core/render/Graphics.js +4 -24
- package/.internal/core/render/Graphics.js.map +1 -1
- package/.internal/core/render/GridLayout.js +2 -12
- package/.internal/core/render/GridLayout.js.map +1 -1
- package/.internal/core/render/HeatLegend.js +9 -44
- package/.internal/core/render/HeatLegend.js.map +1 -1
- package/.internal/core/render/HorizontalLayout.js +2 -12
- package/.internal/core/render/HorizontalLayout.js.map +1 -1
- package/.internal/core/render/Label.js +41 -62
- package/.internal/core/render/Label.js.map +1 -1
- package/.internal/core/render/Layout.js +2 -12
- package/.internal/core/render/Layout.js.map +1 -1
- package/.internal/core/render/Legend.js +22 -57
- package/.internal/core/render/Legend.js.map +1 -1
- package/.internal/core/render/Line.js +2 -12
- package/.internal/core/render/Line.js.map +1 -1
- package/.internal/core/render/Link.js +10 -40
- package/.internal/core/render/Link.js.map +1 -1
- package/.internal/core/render/MonotoneXTension.js +8 -54
- package/.internal/core/render/MonotoneXTension.js.map +1 -1
- package/.internal/core/render/MonotoneYTension.js +8 -54
- package/.internal/core/render/MonotoneYTension.js.map +1 -1
- package/.internal/core/render/NumericStepper.js +6 -36
- package/.internal/core/render/NumericStepper.js.map +1 -1
- package/.internal/core/render/OrthogonalLine.js +2 -12
- package/.internal/core/render/OrthogonalLine.js.map +1 -1
- package/.internal/core/render/Picture.js +3 -18
- package/.internal/core/render/Picture.js.map +1 -1
- package/.internal/core/render/PointedRectangle.js +2 -12
- package/.internal/core/render/PointedRectangle.js.map +1 -1
- package/.internal/core/render/Polygon.js +2 -21
- package/.internal/core/render/Polygon.js.map +1 -1
- package/.internal/core/render/ProgressPie.js +8 -38
- package/.internal/core/render/ProgressPie.js.map +1 -1
- package/.internal/core/render/RadialLabel.js +3 -18
- package/.internal/core/render/RadialLabel.js.map +1 -1
- package/.internal/core/render/RadialText.js +3 -18
- package/.internal/core/render/RadialText.js.map +1 -1
- package/.internal/core/render/Rectangle.js +2 -12
- package/.internal/core/render/Rectangle.js.map +1 -1
- package/.internal/core/render/RoundedRectangle.js +2 -12
- package/.internal/core/render/RoundedRectangle.js.map +1 -1
- package/.internal/core/render/Scrollbar.js +9 -60
- package/.internal/core/render/Scrollbar.js.map +1 -1
- package/.internal/core/render/SerialChart.js +4 -24
- package/.internal/core/render/SerialChart.js.map +1 -1
- package/.internal/core/render/Series.js +8 -69
- package/.internal/core/render/Series.js.map +1 -1
- package/.internal/core/render/Slice.js +5 -30
- package/.internal/core/render/Slice.js.map +1 -1
- package/.internal/core/render/Slider.js +2 -12
- package/.internal/core/render/Slider.js.map +1 -1
- package/.internal/core/render/Sprite.js +86 -249
- package/.internal/core/render/Sprite.js.map +1 -1
- package/.internal/core/render/SpriteResizer.js +11 -72
- package/.internal/core/render/SpriteResizer.js.map +1 -1
- package/.internal/core/render/Star.js +2 -12
- package/.internal/core/render/Star.js.map +1 -1
- package/.internal/core/render/Text.js +35 -66
- package/.internal/core/render/Text.js.map +1 -1
- package/.internal/core/render/Tick.js +2 -12
- package/.internal/core/render/Tick.js.map +1 -1
- package/.internal/core/render/Tooltip.js +7 -78
- package/.internal/core/render/Tooltip.js.map +1 -1
- package/.internal/core/render/Triangle.js +2 -12
- package/.internal/core/render/Triangle.js.map +1 -1
- package/.internal/core/render/VerticalLayout.js +2 -12
- package/.internal/core/render/VerticalLayout.js.map +1 -1
- package/.internal/core/render/ZoomTools.js +5 -42
- package/.internal/core/render/ZoomTools.js.map +1 -1
- package/.internal/core/render/ZoomableContainer.js +17 -82
- package/.internal/core/render/ZoomableContainer.js.map +1 -1
- package/.internal/core/render/backend/CanvasRenderer.js +142 -1205
- package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
- package/.internal/core/render/gradients/Gradient.js +2 -12
- package/.internal/core/render/gradients/Gradient.js.map +1 -1
- package/.internal/core/render/gradients/LinearGradient.js +2 -12
- package/.internal/core/render/gradients/LinearGradient.js.map +1 -1
- package/.internal/core/render/gradients/RadialGradient.js +2 -12
- package/.internal/core/render/gradients/RadialGradient.js.map +1 -1
- package/.internal/core/render/patterns/CirclePattern.js +2 -12
- package/.internal/core/render/patterns/CirclePattern.js.map +1 -1
- package/.internal/core/render/patterns/GrainPattern.js +5 -30
- package/.internal/core/render/patterns/GrainPattern.js.map +1 -1
- package/.internal/core/render/patterns/LinePattern.js +2 -12
- package/.internal/core/render/patterns/LinePattern.js.map +1 -1
- package/.internal/core/render/patterns/PathPattern.js +2 -12
- package/.internal/core/render/patterns/PathPattern.js.map +1 -1
- package/.internal/core/render/patterns/Pattern.js +5 -36
- package/.internal/core/render/patterns/Pattern.js.map +1 -1
- package/.internal/core/render/patterns/PicturePattern.js +2 -21
- package/.internal/core/render/patterns/PicturePattern.js.map +1 -1
- package/.internal/core/render/patterns/RectanglePattern.js +2 -12
- package/.internal/core/render/patterns/RectanglePattern.js.map +1 -1
- package/.internal/core/util/Animation.js +6 -54
- package/.internal/core/util/Animation.js.map +1 -1
- package/.internal/core/util/Array.d.ts.map +1 -1
- package/.internal/core/util/Array.js +5 -2
- package/.internal/core/util/Array.js.map +1 -1
- package/.internal/core/util/Benchmark.js +3 -18
- package/.internal/core/util/Benchmark.js.map +1 -1
- package/.internal/core/util/Children.js +1 -18
- package/.internal/core/util/Children.js.map +1 -1
- package/.internal/core/util/Color.js +0 -6
- package/.internal/core/util/Color.js.map +1 -1
- package/.internal/core/util/ColorSet.js +2 -12
- package/.internal/core/util/ColorSet.js.map +1 -1
- package/.internal/core/util/Counter.js +2 -18
- package/.internal/core/util/Counter.js.map +1 -1
- package/.internal/core/util/Data.js +0 -26
- package/.internal/core/util/Data.js.map +1 -1
- package/.internal/core/util/DataProcessor.js +5 -30
- package/.internal/core/util/DataProcessor.js.map +1 -1
- package/.internal/core/util/Disposer.js +2 -66
- package/.internal/core/util/Disposer.js.map +1 -1
- package/.internal/core/util/DurationFormatter.js +8 -13
- package/.internal/core/util/DurationFormatter.js.map +1 -1
- package/.internal/core/util/Entity.js +31 -271
- package/.internal/core/util/Entity.js.map +1 -1
- package/.internal/core/util/EventDispatcher.js +0 -45
- package/.internal/core/util/EventDispatcher.js.map +1 -1
- package/.internal/core/util/InterfaceColors.js +2 -12
- package/.internal/core/util/InterfaceColors.js.map +1 -1
- package/.internal/core/util/List.js +3 -39
- package/.internal/core/util/List.js.map +1 -1
- package/.internal/core/util/Matrix.js +0 -36
- package/.internal/core/util/Matrix.js.map +1 -1
- package/.internal/core/util/Modal.js +2 -12
- package/.internal/core/util/Modal.js.map +1 -1
- package/.internal/core/util/PatternSet.js +2 -12
- package/.internal/core/util/PatternSet.js.map +1 -1
- package/.internal/core/util/Percent.js +0 -9
- package/.internal/core/util/Percent.js.map +1 -1
- package/.internal/core/util/ResizeSensor.js +5 -54
- package/.internal/core/util/ResizeSensor.js.map +1 -1
- package/.internal/core/util/States.js +2 -30
- package/.internal/core/util/States.js.map +1 -1
- package/.internal/core/util/Template.js +10 -96
- package/.internal/core/util/Template.js.map +1 -1
- package/.internal/core/util/TextFormatter.js +1 -6
- package/.internal/core/util/TextFormatter.js.map +1 -1
- package/.internal/core/util/Throttler.js +2 -18
- package/.internal/core/util/Throttler.js.map +1 -1
- package/.internal/core/util/Timezone.js +0 -18
- package/.internal/core/util/Timezone.js.map +1 -1
- package/.internal/core/util/Utils.js +0 -21
- package/.internal/core/util/Utils.js.map +1 -1
- package/.internal/core/util/Value.js +1 -18
- package/.internal/core/util/Value.js.map +1 -1
- package/.internal/plugins/colorPicker/ColorPicker.js +96 -235
- package/.internal/plugins/colorPicker/ColorPicker.js.map +1 -1
- package/.internal/plugins/colorPicker/ColorPickerButton.js +8 -34
- package/.internal/plugins/colorPicker/ColorPickerButton.js.map +1 -1
- package/.internal/plugins/exporting/Annotator.js +3 -36
- package/.internal/plugins/exporting/Annotator.js.map +1 -1
- package/.internal/plugins/exporting/Exporting.js +2 -12
- package/.internal/plugins/exporting/Exporting.js.map +1 -1
- package/.internal/plugins/exporting/ExportingMenu.js +6 -66
- package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
- package/.internal/plugins/json/ChartSerializer.js +8 -48
- package/.internal/plugins/json/ChartSerializer.js.map +1 -1
- package/.internal/plugins/json/Json.js +3 -24
- package/.internal/plugins/json/Json.js.map +1 -1
- package/.internal/plugins/json/Serializer.js +3 -18
- package/.internal/plugins/json/Serializer.js.map +1 -1
- package/.internal/plugins/sliceGrouper/SliceGrouper.js +2 -24
- package/.internal/plugins/sliceGrouper/SliceGrouper.js.map +1 -1
- package/.internal/themes/ResponsiveTheme.js +8 -54
- package/.internal/themes/ResponsiveTheme.js.map +1 -1
- package/CHANGELOG.md +19 -0
- package/examples/javascript/flow-arc-horizontal/package.json +1 -1
- package/examples/javascript/flow-arc-vertical/package.json +1 -1
- package/examples/javascript/flow-chord/package.json +1 -1
- package/examples/javascript/flow-chord-directed/package.json +1 -1
- package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/javascript/flow-sankey/package.json +1 -1
- package/examples/javascript/gantt/package.json +1 -1
- package/examples/javascript/gantt-multilevel/package.json +1 -1
- package/examples/javascript/gantt-simple/package.json +1 -1
- package/examples/javascript/gauge/package.json +1 -1
- package/examples/javascript/gauge-bands/package.json +1 -1
- package/examples/javascript/hierarchy-force-directed/package.json +1 -1
- package/examples/javascript/hierarchy-pack/package.json +1 -1
- package/examples/javascript/hierarchy-partition/package.json +1 -1
- package/examples/javascript/hierarchy-sunburst/package.json +1 -1
- package/examples/javascript/hierarchy-tree/package.json +1 -1
- package/examples/javascript/hierarchy-treemap/package.json +1 -1
- package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
- package/examples/javascript/jest/package.json +1 -1
- package/examples/javascript/json-pie/package.json +1 -1
- package/examples/javascript/json-xy/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/package.json +1 -1
- package/examples/javascript/map-clustered-points/package.json +1 -1
- package/examples/javascript/map-day-and-night/package.json +1 -1
- package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/javascript/map-with-bubbles/package.json +1 -1
- package/examples/javascript/map-zoom-to-country/package.json +1 -1
- package/examples/javascript/misc-40-charts/package.json +1 -1
- package/examples/javascript/misc-microchart-grid/package.json +1 -1
- package/examples/javascript/pie-chart/package.json +1 -1
- package/examples/javascript/pie-donut-chart/package.json +1 -1
- package/examples/javascript/pie-variable-radius/package.json +1 -1
- package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
- package/examples/javascript/radar-heat-map/package.json +1 -1
- package/examples/javascript/radar-line/package.json +1 -1
- package/examples/javascript/radar-time-line/package.json +1 -1
- package/examples/javascript/sliced-funnel/package.json +1 -1
- package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/javascript/sliced-pyramid/package.json +1 -1
- package/examples/javascript/stock-chart/package.json +1 -1
- package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
- package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
- package/examples/javascript/stock-chart-intraday/package.json +1 -1
- package/examples/javascript/stock-chart-live/package.json +1 -1
- package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/javascript/timeline-horizontal-serpentine-chart/package.json +1 -1
- package/examples/javascript/timeline-linear-process-diagram/package.json +1 -1
- package/examples/javascript/timeline-serpentine-chart/package.json +1 -1
- package/examples/javascript/timeline-spiral-chart/package.json +1 -1
- package/examples/javascript/venn-diagram/package.json +1 -1
- package/examples/javascript/wordcloud-with-data/package.json +1 -1
- package/examples/javascript/wordcloud-with-text/package.json +1 -1
- package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/javascript/xy-bubble/package.json +1 -1
- package/examples/javascript/xy-candlestick/package.json +1 -1
- package/examples/javascript/xy-clustered-column/package.json +1 -1
- package/examples/javascript/xy-column/package.json +1 -1
- package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/javascript/xy-data-grouping/package.json +1 -1
- package/examples/javascript/xy-draggable-range/package.json +1 -1
- package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/javascript/xy-dumbbell plot/package.json +1 -1
- package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/javascript/xy-line/package.json +1 -1
- package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/javascript/xy-live-data/package.json +1 -1
- package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/javascript/xy-ohlc/package.json +1 -1
- package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/javascript/xy-smoothed-line/package.json +1 -1
- package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/javascript/xy-stacked-column/package.json +1 -1
- package/examples/javascript/xy-stacked-step/package.json +1 -1
- package/examples/javascript/xy-stock/package.json +1 -1
- package/examples/javascript/xy-stock-comparing/package.json +1 -1
- package/examples/typescript/flow-arc-horizontal/package.json +1 -1
- package/examples/typescript/flow-arc-vertical/package.json +1 -1
- package/examples/typescript/flow-chord/package.json +1 -1
- package/examples/typescript/flow-chord-directed/package.json +1 -1
- package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/typescript/flow-sankey/package.json +1 -1
- package/examples/typescript/gantt/package.json +1 -1
- package/examples/typescript/gantt-multilevel/package.json +1 -1
- package/examples/typescript/gantt-simple/package.json +1 -1
- package/examples/typescript/gauge/package.json +1 -1
- package/examples/typescript/gauge-bands/package.json +1 -1
- package/examples/typescript/hierarchy-force-directed/package.json +1 -1
- package/examples/typescript/hierarchy-pack/package.json +1 -1
- package/examples/typescript/hierarchy-partition/package.json +1 -1
- package/examples/typescript/hierarchy-sunburst/package.json +1 -1
- package/examples/typescript/hierarchy-tree/package.json +1 -1
- package/examples/typescript/hierarchy-treemap/package.json +1 -1
- package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
- package/examples/typescript/jest/package.json +1 -1
- package/examples/typescript/json-pie/package.json +1 -1
- package/examples/typescript/json-xy/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/package.json +1 -1
- package/examples/typescript/map-clustered-points/package.json +1 -1
- package/examples/typescript/map-day-and-night/package.json +1 -1
- package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/typescript/map-with-bubbles/package.json +1 -1
- package/examples/typescript/map-zoom-to-country/package.json +1 -1
- package/examples/typescript/misc-40-charts/package.json +1 -1
- package/examples/typescript/misc-microchart-grid/package.json +1 -1
- package/examples/typescript/pie-chart/package.json +1 -1
- package/examples/typescript/pie-donut-chart/package.json +1 -1
- package/examples/typescript/pie-variable-radius/package.json +1 -1
- package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
- package/examples/typescript/radar-heat-map/package.json +1 -1
- package/examples/typescript/radar-line/package.json +1 -1
- package/examples/typescript/radar-time-line/package.json +1 -1
- package/examples/typescript/sliced-funnel/package.json +1 -1
- package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/typescript/sliced-pyramid/package.json +1 -1
- package/examples/typescript/stock-chart/package.json +1 -1
- package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
- package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
- package/examples/typescript/stock-chart-intraday/package.json +1 -1
- package/examples/typescript/stock-chart-live/package.json +1 -1
- package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/typescript/timeline-horizontal-serpentine-chart/package.json +1 -1
- package/examples/typescript/timeline-linear-process-diagram/package.json +1 -1
- package/examples/typescript/timeline-serpentine-chart/package.json +1 -1
- package/examples/typescript/timeline-spiral-chart/package.json +1 -1
- package/examples/typescript/venn-diagram/package.json +1 -1
- package/examples/typescript/wordcloud-with-data/package.json +1 -1
- package/examples/typescript/wordcloud-with-text/package.json +1 -1
- package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/typescript/xy-bubble/package.json +1 -1
- package/examples/typescript/xy-candlestick/package.json +1 -1
- package/examples/typescript/xy-clustered-column/package.json +1 -1
- package/examples/typescript/xy-column/package.json +1 -1
- package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/typescript/xy-data-grouping/package.json +1 -1
- package/examples/typescript/xy-draggable-range/package.json +1 -1
- package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/typescript/xy-dumbbell plot/package.json +1 -1
- package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/typescript/xy-line/package.json +1 -1
- package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/typescript/xy-live-data/package.json +1 -1
- package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/typescript/xy-ohlc/package.json +1 -1
- package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/typescript/xy-smoothed-line/package.json +1 -1
- package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/typescript/xy-stacked-column/package.json +1 -1
- package/examples/typescript/xy-stacked-step/package.json +1 -1
- package/examples/typescript/xy-stock/package.json +1 -1
- package/examples/typescript/xy-stock-comparing/package.json +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FlowNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { Time } from \"../../core/util/Animation\";\nimport type { Flow, IFlowDataItem } from \"./Flow\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\nimport type { PatternSet } from \"../../core/util/PatternSet\";\nimport type { Pattern } from \"../../core/render/patterns/Pattern\";\n\nimport type * as d3sankey from \"d3-sankey\";\n\nimport { Label } from \"../../core/render/Label\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from \"../../core/render/Series\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FlowNode } from \"./FlowNode\";\n\nimport * as $array from \"../../core/util/Array\";\n\nexport interface IFlowNodesDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Node name.\n\t */\n\tname: string;\n\n\t/**\n\t * An associated node instance.\n\t */\n\tnode: FlowNode;\n\n\t/**\n\t * Node label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Node color.\n\t */\n\tfill: Color;\n\n\t/**\n\t * Node pattern.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more info\n\t * @since 5.10.0\n\t */\n\tfillPattern: Pattern;\n\n\t/**\n\t * Indicates \"unknown\" node.\n\t */\n\tunknown: boolean;\n\n\t/**\n\t * @ignore\n\t */\n\td3SankeyNode: d3sankey.SankeyNode<d3sankey.SankeyExtraProperties, d3sankey.SankeyExtraProperties>;\n\n\t/**\n\t * Sum of values of all incoming links.\n\t */\n\tsumIncoming: number;\n\n\t/**\n\t * Sum of values of all outgoing links.\n\t */\n\tsumOutgoing: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumIncomingWorking: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumOutgoingWorking: number;\n\n\t/**\n\t * Sum of values of all links: incoming and outgoing.\n\t */\n\tsum: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumWorking: number;\n\n\t/**\n\t * A list of incoming link data items.\n\t */\n\tincomingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * A list of outgoing link data items.\n\t */\n\toutgoingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * Depth of the node.\n\t */\n\tdepth: number;\n\n}\n\nexport interface IFlowNodesSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data boolean setting if the node is \"unknown\".\n\t *\n\t * @default \"unknown\"\n\t */\n\tunknownField?: string;\n\n\t/**\n\t * A field in data that holds name for the node.\n\t *\n\t * @default \"id\"\n\t */\n\tnameField?: string;\n\n\t/**\n\t * A field in data that holds boolean value indicating if node is\n\t * disabled (collapsed).\n\t *\n\t * @since 5.4.2\n\t */\n\tdisabledField?: string;\n\n\t/**\n\t * A field in data that holds color used for fills nodes.\n\t *\n\t * @default \"fill\"\n\t */\n\tfillField?: string;\n\n\t/**\n\t * A [[ColorSet]] that series will use to apply to its nodes.\n\t */\n\tcolors?: ColorSet;\n\n\t/**\n\t * A [[PatternSet]] that series will use to apply to its nodes.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/#Pattern_sets} for more info\n\t * @since 5.10.0\n\t */\n\tpatterns?: PatternSet;\n\n\t/**\n\t * Animation duration in ms.\n\t */\n\tanimationDuration?: number;\n\n\t/**\n\t * Easing function to use for node animations.\n\t */\n\tanimationEasing?: (t: Time) => Time;\n}\n\nexport interface IFlowNodesPrivate extends ISeriesPrivate {\n}\n\nexport interface IFlowNodesEvents extends ISeriesEvents {\n}\n\n\n/**\n * Holds instances of nodes for a [[Flow]] series.\n */\nexport abstract class FlowNodes extends Series {\n\tpublic static className: string = \"FlowNodes\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([FlowNodes.className]);\n\n\tdeclare public _settings: IFlowNodesSettings;\n\tdeclare public _privateSettings: IFlowNodesPrivate;\n\tdeclare public _dataItemSettings: IFlowNodesDataItem;\n\tdeclare public _events: IFlowNodesEvents;\n\n\tpublic _applyThemes(force: boolean = false): boolean {\n\t\tconst colors = this.get(\"colors\");\n\t\tif (colors) {\n\t\t\tcolors.reset();\n\t\t}\n\t\treturn super._applyThemes(force);\t\t\n\t}\t\n\n\t/**\n\t * List of label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, { themeTags: [\"flow\"] }, [this.labels.template])\n\t));\n\n\t/**\n\t * List of node elements.\n\t *\n\t * @default new ListTemplate<FlowNode>\n\t */\n\tpublic readonly nodes: ListTemplate<FlowNode> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => FlowNode._new(this._root, { themeTags: [\"node\"] }, [this.nodes.template])\n\t));\n\n\t/**\n\t * Related [[Flow]] series.\n\t */\n\tpublic abstract flow: Flow | undefined;\n\n\tpublic _userDataSet = false;\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"unknown\", \"name\", \"fill\");\n\n\t\tthis.set(\"idField\", \"id\");\n\t\tthis.set(\"nameField\", \"id\");\n\t\tthis.set(\"fillField\", \"fill\");\n\t\tthis.set(\"unknownField\", \"unknown\");\n\n\t\tthis.children.push(this.bulletsContainer);\n\n\t\tsuper._afterNew();\n\t}\n\n\tprotected _onDataClear() {\n\t\tconst colors = this.get(\"colors\");\n\t\tif (colors) {\n\t\t\tcolors.reset();\n\t\t}\n\n\t\tconst patterns = this.get(\"patterns\");\n\t\tif (patterns) {\n\t\t\tpatterns.reset();\n\t\t}\n\n\t\tthis._userDataSet = true;\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\t\tdataItem.setRaw(\"d3SankeyNode\", { name: dataItem.get(\"id\"), dataItem: dataItem });\n\n\t\tif (dataItem.get(\"fill\") == null) {\n\t\t\tlet colors = this.get(\"colors\");\n\t\t\tif (colors) {\n\t\t\t\tdataItem.setRaw(\"fill\", colors.next());\n\t\t\t}\n\t\t}\n\n\t\tif (dataItem.get(\"fillPattern\") == null) {\n\t\t\tlet patterns = this.get(\"patterns\");\n\t\t\tif (patterns) {\n\t\t\t\tdataItem.setRaw(\"fillPattern\", patterns.next());\n\t\t\t}\n\t\t}\n\n\t\tconst node = this.makeNode(dataItem);\n\t\tdataItem.setRaw(\"node\", node);\n\n\t\tconst disabledField = this.get(\"disabledField\");\n\n\t\tif (disabledField) {\n\t\t\tconst dataContext = dataItem.dataContext as any;\n\t\t\tif (dataContext) {\n\t\t\t\tif (dataContext[disabledField]) {\n\t\t\t\t\tthis.root.events.once(\"frameended\", () => {\n\t\t\t\t\t\tthis.disableDataItem(dataItem, 0);\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>, themeTag?: string): FlowNode {\n\n\t\tconst node = this.nodes.make();\n\n\t\tthis.nodes.push(node);\n\n\t\tif (themeTag) {\n\t\t\tnode.addTag(themeTag);\n\t\t}\n\n\t\tif (dataItem.get(\"unknown\")) {\n\t\t\tnode.addTag(\"unknown\");\n\t\t}\n\n\t\tthis.children.push(node);\n\t\tnode._setDataItem(dataItem);\n\t\tnode.series = this;\n\n\t\tnode.events.on(\"click\", (e) => {\n\t\t\tconst node = e.target;\n\t\t\tif (node.get(\"toggleKey\") == \"disabled\") {\n\t\t\t\tconst dataItem = node.dataItem as DataItem<IFlowNodesDataItem>;\n\t\t\t\tif (dataItem) {\n\t\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\t\tthis.enableDataItem(dataItem);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.disableDataItem(dataItem);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tdataItem.on(\"fill\", () => {\n\t\t\tthis._updateNodeColor(dataItem);\n\t\t})\n\n\t\tdataItem.on(\"fillPattern\", () => {\n\t\t\tthis._updateNodeColor(dataItem);\n\t\t})\n\n\n\t\tdataItem.set(\"node\", node);\n\t\treturn node;\n\t}\n\n\tpublic _updateNodeColor(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet node = dataItem.get(\"node\");\n\t\tif (node) {\n\t\t\tthis.nodes.removeValue(node);\n\t\t\tnode.dispose();\n\t\t}\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tthis.labels.removeValue(label);\n\t\t\tlabel.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addincomingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet incoming = dataItem.get(\"incomingLinks\");\n\t\tif (!incoming) {\n\t\t\tincoming = [];\n\t\t\tdataItem.set(\"incomingLinks\", incoming)\n\t\t}\n\t\tincoming.push(link);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addOutgoingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet outgoing = dataItem.get(\"outgoingLinks\");\n\t\tif (!outgoing) {\n\t\t\toutgoing = [];\n\t\t\tdataItem.set(\"outgoingLinks\", outgoing)\n\t\t}\n\t\toutgoing.push(link);\n\t}\n\n\t/**\n\t * Shows node's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tnode.show();\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.show(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tnode.hide();\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.hide(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Shows node's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async enableDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tthis.root.events.once(\"frameended\", () => {\n\t\t\t\t\tnode.set(\"disabled\", false);\n\t\t\t\t})\n\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.set(\"disabled\", false);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async disableDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tthis.root.events.once(\"frameended\", () => {\n\t\t\t\t\tnode.set(\"disabled\", true);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.set(\"disabled\", true);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tawait promises;\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"FlowNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/FlowNodes.ts"],"names":[],"mappings":";AAUA,OAAO,EAAE,KAAK,EAAE,MAAM,yBAAyB,CAAC;AAChD,OAAO,EAAE,MAAM,EAAmE,MAAM,0BAA0B,CAAC;AACnH,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEtC,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAuJhD;;GAEG;AACH,MAAM,OAAgB,SAAU,SAAQ,MAAM;IAA9C;;QAiBC;;;;WAIG;QACa,WAAM,GAAwB,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,CAC9E,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAC7E,CAAC,CAAC;QAEH;;;;WAIG;QACa,UAAK,GAA2B,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,CAChF,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAC/E,CAAC,CAAC;QAOI,iBAAY,GAAG,KAAK,CAAC;IA+U7B,CAAC;IAhXO,YAAY,CAAC,QAAiB,KAAK;QACzC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,MAAM,EAAE;YACX,MAAM,CAAC,KAAK,EAAE,CAAC;SACf;QACD,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;IAClC,CAAC;IA6BS,SAAS;QAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;QAE5C,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC9B,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,CAAC,CAAC;QAEpC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAE1C,KAAK,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAES,YAAY;QACrB,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,IAAI,MAAM,EAAE;YACX,MAAM,CAAC,KAAK,EAAE,CAAC;SACf;QAED,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACtC,IAAI,QAAQ,EAAE;YACb,QAAQ,CAAC,KAAK,EAAE,CAAC;SACjB;QAED,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC;IAC1B,CAAC;IAES,eAAe,CAAC,QAA6C;QACtE,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,QAAQ,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,CAAC;QAElF,IAAI,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE;YACjC,IAAI,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAChC,IAAI,MAAM,EAAE;gBACX,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;aACvC;SACD;QAED,IAAI,QAAQ,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,IAAI,EAAE;YACxC,IAAI,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACpC,IAAI,QAAQ,EAAE;gBACb,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE,QAAQ,CAAC,IAAI,EAAE,CAAC,CAAC;aAChD;SACD;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACrC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAEhD,IAAI,aAAa,EAAE;YAClB,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAkB,CAAC;YAChD,IAAI,WAAW,EAAE;gBAChB,IAAI,WAAW,CAAC,aAAa,CAAC,EAAE;oBAC/B,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE;wBACxC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;aACD;SACD;IACF,CAAC;IAED;;OAEG;IACI,QAAQ,CAAC,QAA6C,EAAE,QAAiB;QAE/E,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;QAE/B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEtB,IAAI,QAAQ,EAAE;YACb,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;SACtB;QAED,IAAI,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YAC5B,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;SACvB;QAED,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACzB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;QAEnB,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;YAC7B,MAAM,IAAI,GAAG,CAAC,CAAC,MAAM,CAAC;YACtB,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,UAAU,EAAE;gBACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAwC,CAAC;gBAC/D,IAAI,QAAQ,EAAE;oBACb,IAAI,QAAQ,CAAC,QAAQ,EAAE,EAAE;wBACxB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;qBAC9B;yBACI;wBACJ,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;qBAC/B;iBACD;aACD;QACF,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,EAAE,CAAC,MAAM,EAAE,GAAG,EAAE;YACxB,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC,CAAC,CAAA;QAEF,QAAQ,CAAC,EAAE,CAAC,aAAa,EAAE,GAAG,EAAE;YAC/B,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;QACjC,CAAC,CAAC,CAAA;QAGF,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,gBAAgB,CAAC,SAA8C;IAEtE,CAAC;IAED;;OAEG;IACI,eAAe,CAAC,QAA6C;QACnE,KAAK,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;QAChC,IAAI,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,IAAI,EAAE;YACT,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,OAAO,EAAE,CAAC;SACf;QACD,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAClC,IAAI,KAAK,EAAE;YACV,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;YAC/B,KAAK,CAAC,OAAO,EAAE,CAAC;SAChB;IACF,CAAC;IAED;;OAEG;IACI,eAAe,CAAC,QAA6C,EAAE,IAA6B;QAClG,IAAI,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE;YACd,QAAQ,GAAG,EAAE,CAAC;YACd,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;SACvC;QACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED;;OAEG;IACI,eAAe,CAAC,QAA6C,EAAE,IAA6B;QAClG,IAAI,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,EAAE;YACd,QAAQ,GAAG,EAAE,CAAC;YACd,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,QAAQ,CAAC,CAAA;SACvC;QACD,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACrB,CAAC;IAED;;;;;;OAMG;IACU,YAAY,CAAC,QAA6C,EAAE,QAAiB;;;;;YACzF,MAAM,QAAQ,GAAG,CAAC,OAAM,YAAY,YAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAEvB,IAAI,IAAI,EAAE;gBAET,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,IAAI,EAAE;oBACT,IAAI,CAAC,IAAI,EAAE,CAAC;iBACZ;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAElC,IAAI,KAAK,EAAE;oBACV,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACrB;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC1C,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;gBAED,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBACtC,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;aACD;YAED,MAAM,QAAQ,CAAC;QAChB,CAAC;KAAA;IAED;;;;;;OAMG;IACU,YAAY,CAAC,QAA6C,EAAE,QAAiB;;;;;YACzF,MAAM,QAAQ,GAAG,CAAC,OAAM,YAAY,YAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;YAE1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAEvB,IAAI,IAAI,EAAE;gBAET,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,IAAI,EAAE;oBACT,IAAI,CAAC,IAAI,EAAE,CAAC;iBACZ;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAElC,IAAI,KAAK,EAAE;oBACV,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;iBACrB;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAE1C,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;gBAED,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAEtC,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;aACD;YACD,MAAM,QAAQ,CAAC;QAChB,CAAC;KAAA;IAED;;;;;;OAMG;IACU,cAAc,CAAC,QAA6C,EAAE,QAAiB;;;;;YAC3F,MAAM,QAAQ,GAAG,CAAC,OAAM,YAAY,YAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;YAC1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAEvB,IAAI,IAAI,EAAE;gBAET,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,IAAI,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE;wBACxC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;oBAC7B,CAAC,CAAC,CAAA;iBAEF;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAElC,IAAI,KAAK,EAAE;oBACV,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;iBAC7B;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAC1C,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;gBAED,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBACtC,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;aACD;YAED,MAAM,QAAQ,CAAC;QAChB,CAAC;KAAA;IAED;;;;;;OAMG;IACU,eAAe,CAAC,QAA6C,EAAE,QAAiB;;;;;YAC5F,MAAM,QAAQ,GAAG,CAAC,OAAM,YAAY,YAAC,QAAQ,EAAE,QAAQ,EAAE,CAAC;YAE1D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;YAEvB,IAAI,IAAI,EAAE;gBAET,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBAClC,IAAI,IAAI,EAAE;oBACT,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,EAAE;wBACxC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;oBAC5B,CAAC,CAAC,CAAA;iBACF;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAElC,IAAI,KAAK,EAAE;oBACV,KAAK,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;iBAC5B;gBAED,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAE1C,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;gBAED,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC;gBAEtC,IAAI,KAAK,EAAE;oBACV,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBACnC,CAAC,CAAC,CAAA;iBACF;aACD;YACD,MAAM,QAAQ,CAAC;QAChB,CAAC;KAAA;;AAtXa,mBAAS,GAAW,WAAW,CAAC;AAChC,oBAAU,GAAkB,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { Color } from \"../../core/util/Color\";\nimport type { Time } from \"../../core/util/Animation\";\nimport type { Flow, IFlowDataItem } from \"./Flow\";\nimport type { ColorSet } from \"../../core/util/ColorSet\";\nimport type { PatternSet } from \"../../core/util/PatternSet\";\nimport type { Pattern } from \"../../core/render/patterns/Pattern\";\n\nimport type * as d3sankey from \"d3-sankey\";\n\nimport { Label } from \"../../core/render/Label\";\nimport { Series, ISeriesSettings, ISeriesDataItem, ISeriesPrivate, ISeriesEvents } from \"../../core/render/Series\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FlowNode } from \"./FlowNode\";\n\nimport * as $array from \"../../core/util/Array\";\n\nexport interface IFlowNodesDataItem extends ISeriesDataItem {\n\n\t/**\n\t * Node name.\n\t */\n\tname: string;\n\n\t/**\n\t * An associated node instance.\n\t */\n\tnode: FlowNode;\n\n\t/**\n\t * Node label.\n\t */\n\tlabel: Label;\n\n\t/**\n\t * Node color.\n\t */\n\tfill: Color;\n\n\t/**\n\t * Node pattern.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/} for more info\n\t * @since 5.10.0\n\t */\n\tfillPattern: Pattern;\n\n\t/**\n\t * Indicates \"unknown\" node.\n\t */\n\tunknown: boolean;\n\n\t/**\n\t * @ignore\n\t */\n\td3SankeyNode: d3sankey.SankeyNode<d3sankey.SankeyExtraProperties, d3sankey.SankeyExtraProperties>;\n\n\t/**\n\t * Sum of values of all incoming links.\n\t */\n\tsumIncoming: number;\n\n\t/**\n\t * Sum of values of all outgoing links.\n\t */\n\tsumOutgoing: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumIncomingWorking: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumOutgoingWorking: number;\n\n\t/**\n\t * Sum of values of all links: incoming and outgoing.\n\t */\n\tsum: number;\n\n\t/**\n\t * @ignore\n\t */\n\tsumWorking: number;\n\n\t/**\n\t * A list of incoming link data items.\n\t */\n\tincomingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * A list of outgoing link data items.\n\t */\n\toutgoingLinks: Array<DataItem<IFlowDataItem>>;\n\n\t/**\n\t * Depth of the node.\n\t */\n\tdepth: number;\n\n}\n\nexport interface IFlowNodesSettings extends ISeriesSettings {\n\n\t/**\n\t * A field in data boolean setting if the node is \"unknown\".\n\t *\n\t * @default \"unknown\"\n\t */\n\tunknownField?: string;\n\n\t/**\n\t * A field in data that holds name for the node.\n\t *\n\t * @default \"id\"\n\t */\n\tnameField?: string;\n\n\t/**\n\t * A field in data that holds boolean value indicating if node is\n\t * disabled (collapsed).\n\t *\n\t * @since 5.4.2\n\t */\n\tdisabledField?: string;\n\n\t/**\n\t * A field in data that holds color used for fills nodes.\n\t *\n\t * @default \"fill\"\n\t */\n\tfillField?: string;\n\n\t/**\n\t * A [[ColorSet]] that series will use to apply to its nodes.\n\t */\n\tcolors?: ColorSet;\n\n\t/**\n\t * A [[PatternSet]] that series will use to apply to its nodes.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/colors-gradients-and-patterns/patterns/#Pattern_sets} for more info\n\t * @since 5.10.0\n\t */\n\tpatterns?: PatternSet;\n\n\t/**\n\t * Animation duration in ms.\n\t */\n\tanimationDuration?: number;\n\n\t/**\n\t * Easing function to use for node animations.\n\t */\n\tanimationEasing?: (t: Time) => Time;\n}\n\nexport interface IFlowNodesPrivate extends ISeriesPrivate {\n}\n\nexport interface IFlowNodesEvents extends ISeriesEvents {\n}\n\n\n/**\n * Holds instances of nodes for a [[Flow]] series.\n */\nexport abstract class FlowNodes extends Series {\n\tpublic static className: string = \"FlowNodes\";\n\tpublic static classNames: Array<string> = Series.classNames.concat([FlowNodes.className]);\n\n\tdeclare public _settings: IFlowNodesSettings;\n\tdeclare public _privateSettings: IFlowNodesPrivate;\n\tdeclare public _dataItemSettings: IFlowNodesDataItem;\n\tdeclare public _events: IFlowNodesEvents;\n\n\tpublic _applyThemes(force: boolean = false): boolean {\n\t\tconst colors = this.get(\"colors\");\n\t\tif (colors) {\n\t\t\tcolors.reset();\n\t\t}\n\t\treturn super._applyThemes(force);\t\t\n\t}\t\n\n\t/**\n\t * List of label elements.\n\t *\n\t * @default new ListTemplate<Label>\n\t */\n\tpublic readonly labels: ListTemplate<Label> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => Label._new(this._root, { themeTags: [\"flow\"] }, [this.labels.template])\n\t));\n\n\t/**\n\t * List of node elements.\n\t *\n\t * @default new ListTemplate<FlowNode>\n\t */\n\tpublic readonly nodes: ListTemplate<FlowNode> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => FlowNode._new(this._root, { themeTags: [\"node\"] }, [this.nodes.template])\n\t));\n\n\t/**\n\t * Related [[Flow]] series.\n\t */\n\tpublic abstract flow: Flow | undefined;\n\n\tpublic _userDataSet = false;\n\n\tprotected _afterNew() {\n\t\tthis.fields.push(\"unknown\", \"name\", \"fill\");\n\n\t\tthis.set(\"idField\", \"id\");\n\t\tthis.set(\"nameField\", \"id\");\n\t\tthis.set(\"fillField\", \"fill\");\n\t\tthis.set(\"unknownField\", \"unknown\");\n\n\t\tthis.children.push(this.bulletsContainer);\n\n\t\tsuper._afterNew();\n\t}\n\n\tprotected _onDataClear() {\n\t\tconst colors = this.get(\"colors\");\n\t\tif (colors) {\n\t\t\tcolors.reset();\n\t\t}\n\n\t\tconst patterns = this.get(\"patterns\");\n\t\tif (patterns) {\n\t\t\tpatterns.reset();\n\t\t}\n\n\t\tthis._userDataSet = true;\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\t\tdataItem.setRaw(\"d3SankeyNode\", { name: dataItem.get(\"id\"), dataItem: dataItem });\n\n\t\tif (dataItem.get(\"fill\") == null) {\n\t\t\tlet colors = this.get(\"colors\");\n\t\t\tif (colors) {\n\t\t\t\tdataItem.setRaw(\"fill\", colors.next());\n\t\t\t}\n\t\t}\n\n\t\tif (dataItem.get(\"fillPattern\") == null) {\n\t\t\tlet patterns = this.get(\"patterns\");\n\t\t\tif (patterns) {\n\t\t\t\tdataItem.setRaw(\"fillPattern\", patterns.next());\n\t\t\t}\n\t\t}\n\n\t\tconst node = this.makeNode(dataItem);\n\t\tdataItem.setRaw(\"node\", node);\n\n\t\tconst disabledField = this.get(\"disabledField\");\n\n\t\tif (disabledField) {\n\t\t\tconst dataContext = dataItem.dataContext as any;\n\t\t\tif (dataContext) {\n\t\t\t\tif (dataContext[disabledField]) {\n\t\t\t\t\tthis.root.events.once(\"frameended\", () => {\n\t\t\t\t\t\tthis.disableDataItem(dataItem, 0);\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>, themeTag?: string): FlowNode {\n\n\t\tconst node = this.nodes.make();\n\n\t\tthis.nodes.push(node);\n\n\t\tif (themeTag) {\n\t\t\tnode.addTag(themeTag);\n\t\t}\n\n\t\tif (dataItem.get(\"unknown\")) {\n\t\t\tnode.addTag(\"unknown\");\n\t\t}\n\n\t\tthis.children.push(node);\n\t\tnode._setDataItem(dataItem);\n\t\tnode.series = this;\n\n\t\tnode.events.on(\"click\", (e) => {\n\t\t\tconst node = e.target;\n\t\t\tif (node.get(\"toggleKey\") == \"disabled\") {\n\t\t\t\tconst dataItem = node.dataItem as DataItem<IFlowNodesDataItem>;\n\t\t\t\tif (dataItem) {\n\t\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\t\tthis.enableDataItem(dataItem);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tthis.disableDataItem(dataItem);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tdataItem.on(\"fill\", () => {\n\t\t\tthis._updateNodeColor(dataItem);\n\t\t})\n\n\t\tdataItem.on(\"fillPattern\", () => {\n\t\t\tthis._updateNodeColor(dataItem);\n\t\t})\n\n\n\t\tdataItem.set(\"node\", node);\n\t\treturn node;\n\t}\n\n\tpublic _updateNodeColor(_dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet node = dataItem.get(\"node\");\n\t\tif (node) {\n\t\t\tthis.nodes.removeValue(node);\n\t\t\tnode.dispose();\n\t\t}\n\t\tlet label = dataItem.get(\"label\");\n\t\tif (label) {\n\t\t\tthis.labels.removeValue(label);\n\t\t\tlabel.dispose();\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addincomingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet incoming = dataItem.get(\"incomingLinks\");\n\t\tif (!incoming) {\n\t\t\tincoming = [];\n\t\t\tdataItem.set(\"incomingLinks\", incoming)\n\t\t}\n\t\tincoming.push(link);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic addOutgoingLink(dataItem: DataItem<this[\"_dataItemSettings\"]>, link: DataItem<IFlowDataItem>) {\n\t\tlet outgoing = dataItem.get(\"outgoingLinks\");\n\t\tif (!outgoing) {\n\t\t\toutgoing = [];\n\t\t\tdataItem.set(\"outgoingLinks\", outgoing)\n\t\t}\n\t\toutgoing.push(link);\n\t}\n\n\t/**\n\t * Shows node's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tnode.show();\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.show(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tnode.hide();\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.hide(duration);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Shows node's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async enableDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tthis.root.events.once(\"frameended\", () => {\n\t\t\t\t\tnode.set(\"disabled\", false);\n\t\t\t\t})\n\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.set(\"disabled\", false);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.showDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tawait promises;\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t *\n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async disableDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\n\t\tconst flow = this.flow;\n\n\t\tif (flow) {\n\n\t\t\tconst node = dataItem.get(\"node\");\n\t\t\tif (node) {\n\t\t\t\tthis.root.events.once(\"frameended\", () => {\n\t\t\t\t\tnode.set(\"disabled\", true);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlet label = dataItem.get(\"label\");\n\n\t\t\tif (label) {\n\t\t\t\tlabel.set(\"disabled\", true);\n\t\t\t}\n\n\t\t\tlet links = dataItem.get(\"outgoingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tlinks = dataItem.get(\"incomingLinks\");\n\n\t\t\tif (links) {\n\t\t\t\t$array.each(links, (link) => {\n\t\t\t\t\tflow.hideDataItem(link, duration);\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\t\tawait promises;\n\t}\n\n}\n"]}
|
|
@@ -24,47 +24,16 @@ export class Sankey extends Flow {
|
|
|
24
24
|
*
|
|
25
25
|
* @default new ListTemplate<SankeyLink>
|
|
26
26
|
*/
|
|
27
|
-
|
|
28
|
-
enumerable: true,
|
|
29
|
-
configurable: true,
|
|
30
|
-
writable: true,
|
|
31
|
-
value: this.addDisposer(new ListTemplate(Template.new({}), () => SankeyLink._new(this._root, { themeTags: ["link", "shape"] }, [this.links.template])))
|
|
32
|
-
});
|
|
27
|
+
this.links = this.addDisposer(new ListTemplate(Template.new({}), () => SankeyLink._new(this._root, { themeTags: ["link", "shape"] }, [this.links.template])));
|
|
33
28
|
/**
|
|
34
29
|
* A series representing sankey nodes.
|
|
35
30
|
*
|
|
36
31
|
* @default SankeyNodes.new()
|
|
37
32
|
*/
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
value: this.children.push(SankeyNodes.new(this._root, {}))
|
|
43
|
-
});
|
|
44
|
-
Object.defineProperty(this, "_d3Sankey", {
|
|
45
|
-
enumerable: true,
|
|
46
|
-
configurable: true,
|
|
47
|
-
writable: true,
|
|
48
|
-
value: d3sankey.sankey()
|
|
49
|
-
});
|
|
50
|
-
Object.defineProperty(this, "_d3Graph", {
|
|
51
|
-
enumerable: true,
|
|
52
|
-
configurable: true,
|
|
53
|
-
writable: true,
|
|
54
|
-
value: void 0
|
|
55
|
-
});
|
|
56
|
-
Object.defineProperty(this, "_fillGenerator", {
|
|
57
|
-
enumerable: true,
|
|
58
|
-
configurable: true,
|
|
59
|
-
writable: true,
|
|
60
|
-
value: area()
|
|
61
|
-
});
|
|
62
|
-
Object.defineProperty(this, "_strokeGenerator", {
|
|
63
|
-
enumerable: true,
|
|
64
|
-
configurable: true,
|
|
65
|
-
writable: true,
|
|
66
|
-
value: line()
|
|
67
|
-
});
|
|
33
|
+
this.nodes = this.children.push(SankeyNodes.new(this._root, {}));
|
|
34
|
+
this._d3Sankey = d3sankey.sankey();
|
|
35
|
+
this._fillGenerator = area();
|
|
36
|
+
this._strokeGenerator = line();
|
|
68
37
|
}
|
|
69
38
|
_afterNew() {
|
|
70
39
|
this._settings.themeTags = $utils.mergeTags(this._settings.themeTags, ["sankey", this._settings.orientation || "horizontal"]);
|
|
@@ -232,16 +201,6 @@ export class Sankey extends Flow {
|
|
|
232
201
|
}
|
|
233
202
|
}
|
|
234
203
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
configurable: true,
|
|
238
|
-
writable: true,
|
|
239
|
-
value: "Sankey"
|
|
240
|
-
});
|
|
241
|
-
Object.defineProperty(Sankey, "classNames", {
|
|
242
|
-
enumerable: true,
|
|
243
|
-
configurable: true,
|
|
244
|
-
writable: true,
|
|
245
|
-
value: Flow.classNames.concat([Sankey.className])
|
|
246
|
-
});
|
|
204
|
+
Sankey.className = "Sankey";
|
|
205
|
+
Sankey.classNames = Flow.classNames.concat([Sankey.className]);
|
|
247
206
|
//# sourceMappingURL=Sankey.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Sankey.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Sankey.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\n\nimport { Flow, IFlowSettings, IFlowDataItem, IFlowPrivate, IFlowEvents } from \"./Flow\";\nimport { SankeyNodes, ISankeyNodesDataItem } from \"./SankeyNodes\";\nimport { SankeyLink } from \"./SankeyLink\";\nimport { area, line } from \"d3-shape\";\nimport { curveMonotoneXTension } from \"../../core/render/MonotoneXTension\";\nimport { curveMonotoneYTension } from \"../../core/render/MonotoneYTension\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as d3sankey from \"d3-sankey\";\n\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nexport interface ISankeyDataItem extends IFlowDataItem {\n\n\t/**\n\t * Link element.\n\t */\n\tlink: SankeyLink;\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource: DataItem<ISankeyNodesDataItem>;\n\n\t/**\n\t * Target node data item.\n\t */\n\ttarget: DataItem<ISankeyNodesDataItem>;\n\n}\n\nexport interface ISankeySettings extends IFlowSettings {\n\n\t/**\n\t * Orientation of the series.\n\t *\n\t * @default \"horizontal\"\n\t */\n\torientation?: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * Alignment of nodes.\n\t *\n\t * @default \"left\"\n\t */\n\tnodeAlign?: \"left\" | \"right\" | \"justify\" | \"center\"\n\n\t/**\n\t * Tension setting of the link curve.\n\t *\n\t * Accepts values from `0` to `1`.\n\t *\n\t * `1` will result in perfectly straight lines.\n\t *\n\t * @default 0.5\n\t */\n\tlinkTension?: number;\n\n\t/**\n\t * A custom function to use when sorting nodes.\n\t *\n\t * @todo test\n\t * @ignore\n\t */\n\tnodeSort?: (a: d3sankey.SankeyNodeMinimal<{}, {}>, b: d3sankey.SankeyNodeMinimal<{}, {}>) => number | null;\n\n\t/**\n\t * A custom function to use when sorting links.\n\t *\n\t * Use `null` to sort links exactly the way they are presented in data.\n\t *\n\t * @since 5.4.4\n\t */\n\tlinkSort?: null | ((a: d3sankey.SankeyLinkMinimal<{}, {}>, b: d3sankey.SankeyLinkMinimal<{}, {}>) => number | null);\n\n}\n\nexport interface ISankeyPrivate extends IFlowPrivate {\n}\n\nexport interface ISankeyEvents extends IFlowEvents {\n}\n\n/**\n * Sankey series.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/} for more information\n * @important\n */\nexport class Sankey extends Flow {\n\n\tpublic static className: string = \"Sankey\";\n\tpublic static classNames: Array<string> = Flow.classNames.concat([Sankey.className]);\n\n\t/**\n\t * List of link elements.\n\t *\n\t * @default new ListTemplate<SankeyLink>\n\t */\n\tpublic readonly links: ListTemplate<SankeyLink> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => SankeyLink._new(this._root, { themeTags: [\"link\", \"shape\"] }, [this.links.template])\n\t));\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"sankey\", this._settings.orientation || \"horizontal\"]);\n\n\t\tthis._fillGenerator.y0(function(p: number[]) {\n\t\t\treturn p[3];\n\t\t});\n\n\t\tthis._fillGenerator.x0(function(p: number[]) {\n\t\t\treturn p[2];\n\t\t});\n\n\t\tthis._fillGenerator.y1(function(p: number[]) {\n\t\t\treturn p[1];\n\t\t});\n\n\t\tthis._fillGenerator.x1(function(p: number[]) {\n\t\t\treturn p[0];\n\t\t});\n\n\t\tsuper._afterNew();\n\t}\n\n\t/**\n\t * A series representing sankey nodes.\n\t *\n\t * @default SankeyNodes.new()\n\t */\n\tpublic readonly nodes: SankeyNodes = this.children.push(SankeyNodes.new(this._root, {}));\n\n\tdeclare public _settings: ISankeySettings;\n\tdeclare public _privateSettings: ISankeyPrivate;\n\tdeclare public _dataItemSettings: ISankeyDataItem;\n\tdeclare public _events: ISankeyEvents;\n\n\tpublic _d3Sankey = d3sankey.sankey();\n\tpublic _d3Graph: d3sankey.SankeyGraph<{}, {}> | undefined;\n\n\tpublic _fillGenerator = area();\n\tpublic _strokeGenerator = line();\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): SankeyLink {\n\t\tconst source = dataItem.get(\"source\");\n\t\tconst target = dataItem.get(\"target\");\n\n\t\tconst link = this.links.make();\n\n\t\tif (source.get(\"unknown\")) {\n\t\t\tlink.addTag(\"source\");\n\t\t\tlink.addTag(\"unknown\");\n\t\t}\n\n\t\tif (target.get(\"unknown\")) {\n\t\t\tlink.addTag(\"target\");\n\t\t\tlink.addTag(\"unknown\");\n\t\t}\n\n\t\tthis.linksContainer.children.push(link);\n\t\tlink._setDataItem(dataItem);\n\t\tlink.set(\"source\", source);\n\t\tlink.set(\"target\", target);\n\t\tlink.series = this;\n\n\t\tthis.links.push(link);\n\n\t\treturn link;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateSankey() {\n\t\tconst d3Graph = this._d3Graph;\n\t\tif (d3Graph) {\n\t\t\tthis._d3Sankey.update(d3Graph);\n\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tlink.setPrivate(\"orientation\", this.get(\"orientation\"));\n\t\t\t\tlink.markDirty();\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _updateLinkColor(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateLinkColor(dataItem);\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst fillGradient = dataItem.get(\"link\")._fillGradient;\n\t\tconst strokeGradient = dataItem.get(\"link\")._strokeGradient;\n\n\t\tif (orientation == \"vertical\") {\n\t\t\tif (fillGradient) {\n\t\t\t\tfillGradient.set(\"rotation\", 90);\n\t\t\t}\n\t\t\tif (strokeGradient) {\n\t\t\t\tstrokeGradient.set(\"rotation\", 90);\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tif (fillGradient) {\n\t\t\t\tfillGradient.set(\"rotation\", 0);\n\t\t\t}\n\t\t\tif (strokeGradient) {\n\t\t\t\tstrokeGradient.set(\"rotation\", 0);\n\t\t\t}\n\t\t}\n\n\t}\n\n\tprotected _getBulletLocation(bullet: Bullet): number {\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\treturn bullet.get(\"locationY\", 0);\n\t\t}\n\t\telse {\n\t\t\treturn bullet.get(\"locationX\", 0);\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tlet vertical = false;\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tvertical = true;\n\t\t}\n\n\t\tif (this.isDirty(\"orientation\") || this.isDirty(\"linkTension\")) {\n\t\t\tconst linkTension = this.get(\"linkTension\", 0.5);\n\t\t\tif (vertical) {\n\t\t\t\tthis._fillGenerator.curve(curveMonotoneYTension(linkTension));\n\t\t\t\tthis._strokeGenerator.curve(curveMonotoneYTension(linkTension));\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._fillGenerator.curve(curveMonotoneXTension(linkTension));\n\t\t\t\tthis._strokeGenerator.curve(curveMonotoneXTension(linkTension));\n\t\t\t}\n\t\t}\n\n\t\tif (this._valuesDirty || this._sizeDirty || this.isDirty(\"nodePadding\") || this.isDirty(\"nodeWidth\") || this.isDirty(\"nodeAlign\") || this.isDirty(\"nodeSort\") || this.isDirty(\"orientation\") || this.isDirty(\"linkTension\") || this.isDirty(\"linkSort\")) {\n\t\t\tif (this._nodesData.length > 0) {\n\t\t\t\tconst d3Sankey = this._d3Sankey;\n\t\t\t\tlet w = this.innerWidth();\n\t\t\t\tlet h = this.innerHeight();\n\n\t\t\t\tif (vertical) {\n\t\t\t\t\t[w, h] = [h, w];\n\t\t\t\t}\n\n\t\t\t\td3Sankey.size([w, h]);\n\t\t\t\td3Sankey.nodePadding(this.get(\"nodePadding\", 10));\n\t\t\t\td3Sankey.nodeWidth(this.get(\"nodeWidth\", 10));\n\t\t\t\td3Sankey.nodeSort(this.get(\"nodeSort\", null) as any);\n\t\t\t\t(d3Sankey as any).linkSort(this.get(\"linkSort\") as any);\n\n\t\t\t\tswitch (this.get(\"nodeAlign\")) {\n\t\t\t\t\tcase \"right\":\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyRight);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"justify\":\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyJustify);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"center\":\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyCenter);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyLeft);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tthis._d3Graph = d3Sankey({ nodes: this._nodesData, links: this._linksData });\n\n\t\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\t\tlink.setPrivate(\"orientation\", this.get(\"orientation\"));\n\t\t\t\t\tlink.markDirty();\n\t\t\t\t})\n\n\t\t\t\tconst d3Graph = this._d3Graph;\n\n\t\t\t\tif (d3Graph) {\n\t\t\t\t\tconst nodes = d3Graph.nodes;\n\n\t\t\t\t\t$array.each(nodes, (d3SankeyNode) => {\n\t\t\t\t\t\tconst dataItem = (d3SankeyNode as any).dataItem as DataItem<ISankeyNodesDataItem>;\n\t\t\t\t\t\tconst node = dataItem.get(\"node\");\n\n\t\t\t\t\t\tlet x0: number | undefined;\n\t\t\t\t\t\tlet x1: number | undefined;\n\t\t\t\t\t\tlet y0: number | undefined;\n\t\t\t\t\t\tlet y1: number | undefined;\n\n\t\t\t\t\t\tif (vertical) {\n\t\t\t\t\t\t\tx0 = d3SankeyNode.y0;\n\t\t\t\t\t\t\tx1 = d3SankeyNode.y1;\n\t\t\t\t\t\t\ty0 = d3SankeyNode.x0;\n\t\t\t\t\t\t\ty1 = d3SankeyNode.x1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tx0 = d3SankeyNode.x0;\n\t\t\t\t\t\t\tx1 = d3SankeyNode.x1;\n\t\t\t\t\t\t\ty0 = d3SankeyNode.y0;\n\t\t\t\t\t\t\ty1 = d3SankeyNode.y1;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ($type.isNumber(x0) && $type.isNumber(x1) && $type.isNumber(y0) && $type.isNumber(y1)) {\n\t\t\t\t\t\t\tnode.setAll({ x: x0, y: y0, width: x1 - x0, height: y1 - y0 });\n\n\t\t\t\t\t\t\tconst rectangle = dataItem.get(\"rectangle\");\n\t\t\t\t\t\t\trectangle.setAll({ width: x1 - x0, height: y1 - y0 });\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Sankey.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/Sankey.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\n\nimport { Flow, IFlowSettings, IFlowDataItem, IFlowPrivate, IFlowEvents } from \"./Flow\";\nimport { SankeyNodes, ISankeyNodesDataItem } from \"./SankeyNodes\";\nimport { SankeyLink } from \"./SankeyLink\";\nimport { area, line } from \"d3-shape\";\nimport { curveMonotoneXTension } from \"../../core/render/MonotoneXTension\";\nimport { curveMonotoneYTension } from \"../../core/render/MonotoneYTension\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as d3sankey from \"d3-sankey\";\n\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nexport interface ISankeyDataItem extends IFlowDataItem {\n\n\t/**\n\t * Link element.\n\t */\n\tlink: SankeyLink;\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource: DataItem<ISankeyNodesDataItem>;\n\n\t/**\n\t * Target node data item.\n\t */\n\ttarget: DataItem<ISankeyNodesDataItem>;\n\n}\n\nexport interface ISankeySettings extends IFlowSettings {\n\n\t/**\n\t * Orientation of the series.\n\t *\n\t * @default \"horizontal\"\n\t */\n\torientation?: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * Alignment of nodes.\n\t *\n\t * @default \"left\"\n\t */\n\tnodeAlign?: \"left\" | \"right\" | \"justify\" | \"center\"\n\n\t/**\n\t * Tension setting of the link curve.\n\t *\n\t * Accepts values from `0` to `1`.\n\t *\n\t * `1` will result in perfectly straight lines.\n\t *\n\t * @default 0.5\n\t */\n\tlinkTension?: number;\n\n\t/**\n\t * A custom function to use when sorting nodes.\n\t *\n\t * @todo test\n\t * @ignore\n\t */\n\tnodeSort?: (a: d3sankey.SankeyNodeMinimal<{}, {}>, b: d3sankey.SankeyNodeMinimal<{}, {}>) => number | null;\n\n\t/**\n\t * A custom function to use when sorting links.\n\t *\n\t * Use `null` to sort links exactly the way they are presented in data.\n\t *\n\t * @since 5.4.4\n\t */\n\tlinkSort?: null | ((a: d3sankey.SankeyLinkMinimal<{}, {}>, b: d3sankey.SankeyLinkMinimal<{}, {}>) => number | null);\n\n}\n\nexport interface ISankeyPrivate extends IFlowPrivate {\n}\n\nexport interface ISankeyEvents extends IFlowEvents {\n}\n\n/**\n * Sankey series.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/} for more information\n * @important\n */\nexport class Sankey extends Flow {\n\n\tpublic static className: string = \"Sankey\";\n\tpublic static classNames: Array<string> = Flow.classNames.concat([Sankey.className]);\n\n\t/**\n\t * List of link elements.\n\t *\n\t * @default new ListTemplate<SankeyLink>\n\t */\n\tpublic readonly links: ListTemplate<SankeyLink> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => SankeyLink._new(this._root, { themeTags: [\"link\", \"shape\"] }, [this.links.template])\n\t));\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"sankey\", this._settings.orientation || \"horizontal\"]);\n\n\t\tthis._fillGenerator.y0(function(p: number[]) {\n\t\t\treturn p[3];\n\t\t});\n\n\t\tthis._fillGenerator.x0(function(p: number[]) {\n\t\t\treturn p[2];\n\t\t});\n\n\t\tthis._fillGenerator.y1(function(p: number[]) {\n\t\t\treturn p[1];\n\t\t});\n\n\t\tthis._fillGenerator.x1(function(p: number[]) {\n\t\t\treturn p[0];\n\t\t});\n\n\t\tsuper._afterNew();\n\t}\n\n\t/**\n\t * A series representing sankey nodes.\n\t *\n\t * @default SankeyNodes.new()\n\t */\n\tpublic readonly nodes: SankeyNodes = this.children.push(SankeyNodes.new(this._root, {}));\n\n\tdeclare public _settings: ISankeySettings;\n\tdeclare public _privateSettings: ISankeyPrivate;\n\tdeclare public _dataItemSettings: ISankeyDataItem;\n\tdeclare public _events: ISankeyEvents;\n\n\tpublic _d3Sankey = d3sankey.sankey();\n\tpublic _d3Graph: d3sankey.SankeyGraph<{}, {}> | undefined;\n\n\tpublic _fillGenerator = area();\n\tpublic _strokeGenerator = line();\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): SankeyLink {\n\t\tconst source = dataItem.get(\"source\");\n\t\tconst target = dataItem.get(\"target\");\n\n\t\tconst link = this.links.make();\n\n\t\tif (source.get(\"unknown\")) {\n\t\t\tlink.addTag(\"source\");\n\t\t\tlink.addTag(\"unknown\");\n\t\t}\n\n\t\tif (target.get(\"unknown\")) {\n\t\t\tlink.addTag(\"target\");\n\t\t\tlink.addTag(\"unknown\");\n\t\t}\n\n\t\tthis.linksContainer.children.push(link);\n\t\tlink._setDataItem(dataItem);\n\t\tlink.set(\"source\", source);\n\t\tlink.set(\"target\", target);\n\t\tlink.series = this;\n\n\t\tthis.links.push(link);\n\n\t\treturn link;\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateSankey() {\n\t\tconst d3Graph = this._d3Graph;\n\t\tif (d3Graph) {\n\t\t\tthis._d3Sankey.update(d3Graph);\n\n\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tlink.setPrivate(\"orientation\", this.get(\"orientation\"));\n\t\t\t\tlink.markDirty();\n\t\t\t})\n\t\t}\n\t}\n\n\tpublic _updateLinkColor(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper._updateLinkColor(dataItem);\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst fillGradient = dataItem.get(\"link\")._fillGradient;\n\t\tconst strokeGradient = dataItem.get(\"link\")._strokeGradient;\n\n\t\tif (orientation == \"vertical\") {\n\t\t\tif (fillGradient) {\n\t\t\t\tfillGradient.set(\"rotation\", 90);\n\t\t\t}\n\t\t\tif (strokeGradient) {\n\t\t\t\tstrokeGradient.set(\"rotation\", 90);\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tif (fillGradient) {\n\t\t\t\tfillGradient.set(\"rotation\", 0);\n\t\t\t}\n\t\t\tif (strokeGradient) {\n\t\t\t\tstrokeGradient.set(\"rotation\", 0);\n\t\t\t}\n\t\t}\n\n\t}\n\n\tprotected _getBulletLocation(bullet: Bullet): number {\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\treturn bullet.get(\"locationY\", 0);\n\t\t}\n\t\telse {\n\t\t\treturn bullet.get(\"locationX\", 0);\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tlet vertical = false;\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tvertical = true;\n\t\t}\n\n\t\tif (this.isDirty(\"orientation\") || this.isDirty(\"linkTension\")) {\n\t\t\tconst linkTension = this.get(\"linkTension\", 0.5);\n\t\t\tif (vertical) {\n\t\t\t\tthis._fillGenerator.curve(curveMonotoneYTension(linkTension));\n\t\t\t\tthis._strokeGenerator.curve(curveMonotoneYTension(linkTension));\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._fillGenerator.curve(curveMonotoneXTension(linkTension));\n\t\t\t\tthis._strokeGenerator.curve(curveMonotoneXTension(linkTension));\n\t\t\t}\n\t\t}\n\n\t\tif (this._valuesDirty || this._sizeDirty || this.isDirty(\"nodePadding\") || this.isDirty(\"nodeWidth\") || this.isDirty(\"nodeAlign\") || this.isDirty(\"nodeSort\") || this.isDirty(\"orientation\") || this.isDirty(\"linkTension\") || this.isDirty(\"linkSort\")) {\n\t\t\tif (this._nodesData.length > 0) {\n\t\t\t\tconst d3Sankey = this._d3Sankey;\n\t\t\t\tlet w = this.innerWidth();\n\t\t\t\tlet h = this.innerHeight();\n\n\t\t\t\tif (vertical) {\n\t\t\t\t\t[w, h] = [h, w];\n\t\t\t\t}\n\n\t\t\t\td3Sankey.size([w, h]);\n\t\t\t\td3Sankey.nodePadding(this.get(\"nodePadding\", 10));\n\t\t\t\td3Sankey.nodeWidth(this.get(\"nodeWidth\", 10));\n\t\t\t\td3Sankey.nodeSort(this.get(\"nodeSort\", null) as any);\n\t\t\t\t(d3Sankey as any).linkSort(this.get(\"linkSort\") as any);\n\n\t\t\t\tswitch (this.get(\"nodeAlign\")) {\n\t\t\t\t\tcase \"right\":\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyRight);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"justify\":\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyJustify);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"center\":\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyCenter);\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tdefault:\n\t\t\t\t\t\td3Sankey.nodeAlign(d3sankey.sankeyLeft);\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\n\t\t\t\tthis._d3Graph = d3Sankey({ nodes: this._nodesData, links: this._linksData });\n\n\t\t\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\t\tlink.setPrivate(\"orientation\", this.get(\"orientation\"));\n\t\t\t\t\tlink.markDirty();\n\t\t\t\t})\n\n\t\t\t\tconst d3Graph = this._d3Graph;\n\n\t\t\t\tif (d3Graph) {\n\t\t\t\t\tconst nodes = d3Graph.nodes;\n\n\t\t\t\t\t$array.each(nodes, (d3SankeyNode) => {\n\t\t\t\t\t\tconst dataItem = (d3SankeyNode as any).dataItem as DataItem<ISankeyNodesDataItem>;\n\t\t\t\t\t\tconst node = dataItem.get(\"node\");\n\n\t\t\t\t\t\tlet x0: number | undefined;\n\t\t\t\t\t\tlet x1: number | undefined;\n\t\t\t\t\t\tlet y0: number | undefined;\n\t\t\t\t\t\tlet y1: number | undefined;\n\n\t\t\t\t\t\tif (vertical) {\n\t\t\t\t\t\t\tx0 = d3SankeyNode.y0;\n\t\t\t\t\t\t\tx1 = d3SankeyNode.y1;\n\t\t\t\t\t\t\ty0 = d3SankeyNode.x0;\n\t\t\t\t\t\t\ty1 = d3SankeyNode.x1;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tx0 = d3SankeyNode.x0;\n\t\t\t\t\t\t\tx1 = d3SankeyNode.x1;\n\t\t\t\t\t\t\ty0 = d3SankeyNode.y0;\n\t\t\t\t\t\t\ty1 = d3SankeyNode.y1;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ($type.isNumber(x0) && $type.isNumber(x1) && $type.isNumber(y0) && $type.isNumber(y1)) {\n\t\t\t\t\t\t\tnode.setAll({ x: x0, y: y0, width: x1 - x0, height: y1 - y0 });\n\n\t\t\t\t\t\t\tconst rectangle = dataItem.get(\"rectangle\");\n\t\t\t\t\t\t\trectangle.setAll({ width: x1 - x0, height: y1 - y0 });\n\t\t\t\t\t\t}\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
@@ -3,18 +3,8 @@ import * as $math from "../../core/util/Math";
|
|
|
3
3
|
export class SankeyLink extends FlowLink {
|
|
4
4
|
constructor() {
|
|
5
5
|
super(...arguments);
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
configurable: true,
|
|
9
|
-
writable: true,
|
|
10
|
-
value: document.createElementNS("http://www.w3.org/2000/svg", "path")
|
|
11
|
-
});
|
|
12
|
-
Object.defineProperty(this, "_totalLength", {
|
|
13
|
-
enumerable: true,
|
|
14
|
-
configurable: true,
|
|
15
|
-
writable: true,
|
|
16
|
-
value: 0
|
|
17
|
-
});
|
|
6
|
+
this._svgPath = document.createElementNS("http://www.w3.org/2000/svg", "path");
|
|
7
|
+
this._totalLength = 0;
|
|
18
8
|
}
|
|
19
9
|
_beforeChanged() {
|
|
20
10
|
super._beforeChanged();
|
|
@@ -228,16 +218,6 @@ export class SankeyLink extends FlowLink {
|
|
|
228
218
|
return this.toLocal(super._getTooltipPoint());
|
|
229
219
|
}
|
|
230
220
|
}
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
configurable: true,
|
|
234
|
-
writable: true,
|
|
235
|
-
value: "SankeyLink"
|
|
236
|
-
});
|
|
237
|
-
Object.defineProperty(SankeyLink, "classNames", {
|
|
238
|
-
enumerable: true,
|
|
239
|
-
configurable: true,
|
|
240
|
-
writable: true,
|
|
241
|
-
value: FlowLink.classNames.concat([SankeyLink.className])
|
|
242
|
-
});
|
|
221
|
+
SankeyLink.className = "SankeyLink";
|
|
222
|
+
SankeyLink.classNames = FlowLink.classNames.concat([SankeyLink.className]);
|
|
243
223
|
//# sourceMappingURL=SankeyLink.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SankeyLink.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyLink.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { FlowNode } from \"./FlowNode\";\nimport type { Sankey, ISankeyDataItem } from \"./Sankey\";\nimport type { ISankeyNodesDataItem } from \"./SankeyNodes\";\nimport type { IOrientationPoint } from \"../../core/util/IPoint\";\n\nimport { FlowLink, IFlowLinkPrivate, IFlowLinkSettings } from \"./FlowLink\";\nimport type { IPoint } from \"../../core/util/IPoint\";\nimport * as $math from \"../../core/util/Math\";\n\n\nexport interface ISankeyLinkSettings extends IFlowLinkSettings {\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource?: DataItem<ISankeyNodesDataItem>;\n\n\t/**\n\t * Source node data item.\n\t */\n\ttarget?: DataItem<ISankeyNodesDataItem>;\n\n\t/**\n\t * Type of fill to use for links.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/sankey-diagram/#Color_mode} for more info\n\t * @default \"gradient\"\n\t */\n\tfillStyle?: \"solid\" | \"gradient\" | \"source\" | \"target\";\n\n\t/**\n\t * A relative distance from node for link \"elbow\" (bend point).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/sankey-diagram/#Bend_point} for more info\n\t * @default 0.2\n\t */\n\tcontrolPointDistance?: number;\n\n}\n\nexport interface ISankeyLinkPrivate extends IFlowLinkPrivate {\n\n\t/**\n\t * Link orientation.\n\t */\n\torientation?: \"horizontal\" | \"vertical\";\n\n}\n\nexport class SankeyLink extends FlowLink {\n\tdeclare public _settings: ISankeyLinkSettings;\n\tdeclare public _privateSettings: ISankeyLinkPrivate;\n\n\tpublic static className: string = \"SankeyLink\";\n\tpublic static classNames: Array<string> = FlowLink.classNames.concat([SankeyLink.className]);\n\n\tdeclare protected _dataItem: DataItem<ISankeyDataItem> | undefined;\n\n\tdeclare public series: Sankey | undefined;\n\n\tprotected _svgPath: SVGPathElement = document.createElementNS(\"http://www.w3.org/2000/svg\", \"path\");\n\tprotected _totalLength: number = 0;\n\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"source\")) {\n\t\t\tconst source = this.get(\"source\");\n\t\t\tif (source) {\n\t\t\t\tconst sourceNode = source.get(\"node\");\n\t\t\t\tthis._disposers.push(sourceNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis.markDirty();\n\t\t\t\t}))\n\t\t\t}\n\t\t}\n\t\tif (this.isDirty(\"target\")) {\n\t\t\tconst target = this.get(\"target\");\n\t\t\tif (target) {\n\t\t\t\tconst targetNode = target.get(\"node\");\n\t\t\t\tthis._disposers.push(targetNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis.markDirty();\n\t\t\t\t}))\n\t\t\t}\n\t\t}\n\n\t\tif (this.isPrivateDirty(\"orientation\")) {\n\t\t\tconst series = this.series;\n\t\t\tconst dataItem = this.dataItem as DataItem<ISankeyDataItem>;\n\t\t\tif (dataItem && series) {\n\t\t\t\tseries._updateLinkColor(dataItem);\n\t\t\t}\n\t\t}\n\n\t\tconst target = this.get(\"target\");\n\t\tconst source = this.get(\"source\");\n\n\t\tlet sourceNode: FlowNode | undefined;\n\t\tlet targetNode: FlowNode | undefined;\n\n\t\tif (source && target) {\n\t\t\tthis._clear = true;\n\t\t\tsourceNode = source.get(\"node\");\n\t\t\ttargetNode = target.get(\"node\");\n\n\t\t\tlet x0 = 0;\n\t\t\tlet x1 = 0;\n\t\t\tlet y0 = 0;\n\t\t\tlet y1 = 0;\n\n\t\t\tlet xt0 = 0;\n\t\t\tlet yt0 = 0;\n\n\t\t\tlet xt1 = 0;\n\t\t\tlet yt1 = 0;\n\n\t\t\tlet xb0 = 0;\n\t\t\tlet xb1 = 0;\n\n\t\t\tlet yb0 = 0;\n\t\t\tlet yb1 = 0;\n\n\t\t\tlet xm0 = 0;\n\t\t\tlet xm1 = 0;\n\n\t\t\tlet ym0 = 0;\n\t\t\tlet ym1 = 0;\n\n\t\t\tlet angle0 = 0;\n\t\t\tlet angle1 = 0;\n\n\n\t\t\tconst dataItem = this.dataItem as DataItem<ISankeyDataItem>;\n\t\t\tif (dataItem) {\n\t\t\t\tconst d3SankeyLink = dataItem.get(\"d3SankeyLink\");\n\t\t\t\tif (d3SankeyLink) {\n\n\t\t\t\t\tlet w = d3SankeyLink.width || 0;\n\n\t\t\t\t\tlet orientation = this.getPrivate(\"orientation\");\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tif (sourceNode) {\n\t\t\t\t\t\t\ty0 = sourceNode.y() + sourceNode.get(\"dy\", 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (targetNode) {\n\t\t\t\t\t\t\ty1 = targetNode.y() + targetNode.get(\"dy\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tangle0 = 90;\n\t\t\t\t\t\tangle1 = 90;\n\n\t\t\t\t\t\tx0 = d3SankeyLink.y0 || 0;\n\t\t\t\t\t\tx1 = d3SankeyLink.y1 || 0;\n\n\t\t\t\t\t\tx0 += sourceNode.get(\"dx\", 0);\n\t\t\t\t\t\tx1 += targetNode.get(\"dx\", 0);\n\n\t\t\t\t\t\tif (y1 < y0) {\n\t\t\t\t\t\t\t[x0, x1] = [x1, x0];\n\t\t\t\t\t\t\t[y0, y1] = [y1, y0];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\t\tx0 = x1;\n\t\t\t\t\t\t\ty0 = y0 + (y1 - y0) / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\t\tx1 = x0;\n\t\t\t\t\t\t\ty1 = y0 + (y1 - y0) / 2;\n\t\t\t\t\t\t}\n\n\n\t\t\t\t\t\txt0 = x0 - w / 2;\n\t\t\t\t\t\tyt0 = y0;\n\n\t\t\t\t\t\txt1 = x1 - w / 2;\n\t\t\t\t\t\tyt1 = y1;\n\n\t\t\t\t\t\txb0 = x0 + w / 2;\n\t\t\t\t\t\txb1 = x1 + w / 2;\n\n\t\t\t\t\t\tyb0 = y0;\n\t\t\t\t\t\tyb1 = y1;\n\n\t\t\t\t\t\txm0 = x0;\n\t\t\t\t\t\txm1 = x1;\n\n\t\t\t\t\t\tym0 = y0;\n\t\t\t\t\t\tym1 = y1;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (sourceNode) {\n\t\t\t\t\t\t\tx0 = sourceNode.x() + sourceNode.get(\"dx\", 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (targetNode) {\n\t\t\t\t\t\t\tx1 = targetNode.x() + targetNode.get(\"dx\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ty0 = d3SankeyLink.y0 || 0;\n\t\t\t\t\t\ty1 = d3SankeyLink.y1 || 0;\n\n\t\t\t\t\t\ty0 += sourceNode.get(\"dy\", 0);\n\t\t\t\t\t\ty1 += targetNode.get(\"dy\", 0);\n\n\t\t\t\t\t\tif (x1 < x0) {\n\t\t\t\t\t\t\t[x0, x1] = [x1, x0];\n\t\t\t\t\t\t\t[y0, y1] = [y1, y0];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\t\ty0 = y1;\n\t\t\t\t\t\t\tx0 = x0 + (x1 - x0) / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\t\ty1 = y0;\n\t\t\t\t\t\t\tx1 = x0 + (x1 - x0) / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\txt0 = x0;\n\t\t\t\t\t\tyt0 = y0 - w / 2;\n\n\t\t\t\t\t\txt1 = x1;\n\t\t\t\t\t\tyt1 = y1 - w / 2;\n\n\t\t\t\t\t\txb0 = x0;\n\t\t\t\t\t\txb1 = x1;\n\n\t\t\t\t\t\tyb0 = y0 + w / 2;\n\t\t\t\t\t\tyb1 = y1 + w / 2;\n\n\t\t\t\t\t\txm0 = x0;\n\t\t\t\t\t\txm1 = x1;\n\n\t\t\t\t\t\tym0 = y0;\n\t\t\t\t\t\tym1 = y1;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(xt0, 3) == $math.round(xt1, 3)) {\n\t\t\t\t\t\txt1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(yt0, 3) == $math.round(yt1, 3)) {\n\t\t\t\t\t\tyt1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(xb0, 3) == $math.round(xb1, 3)) {\n\t\t\t\t\t\txb1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(yb0, 3) == $math.round(yb1, 3)) {\n\t\t\t\t\t\tyb1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet cpd = this.get(\"controlPointDistance\", 0.2);\n\t\t\t\t\tcpd = Math.min(0.4999, cpd);\n\n\t\t\t\t\tlet kxt0 = xt0 + (xt1 - xt0) * cpd * $math.cos(angle0);\n\t\t\t\t\tlet kyt0 = yt0 + (yt1 - yt0) * cpd * $math.sin(angle0);\n\n\t\t\t\t\tlet kxt1 = xt1 - (xt1 - xt0) * cpd * $math.cos(angle1);\n\t\t\t\t\tlet kyt1 = yt1 - (yt1 - yt0) * cpd * $math.sin(angle1);\n\n\t\t\t\t\tlet kxm0 = xm0 + (xm1 - xm0) * cpd * $math.cos(angle0);\n\t\t\t\t\tlet kym0 = ym0 + (ym1 - ym0) * cpd * $math.sin(angle0);\n\n\t\t\t\t\tlet kxm1 = xm1 - (xm1 - xm0) * cpd * $math.cos(angle1);\n\t\t\t\t\tlet kym1 = ym1 - (ym1 - ym0) * cpd * $math.sin(angle1);\n\n\t\t\t\t\tlet angle = $math.getAngle({ x: kxt0, y: kyt0 }, { x: kxt1, y: kyt1 });\n\n\t\t\t\t\tlet dx = (w / $math.cos(angle) - w) / $math.tan(angle) * $math.cos(angle0);\n\t\t\t\t\tlet dy = (w / $math.sin(angle) - w) * $math.tan(angle) * $math.sin(angle0);\n\n\t\t\t\t\tlet kxb0 = -dx / 2 + xb0 + (xb1 - xb0) * cpd * $math.cos(angle0);\n\t\t\t\t\tlet kyb0 = -dy / 2 + yb0 + (yb1 - yb0) * cpd * $math.sin(angle0);\n\n\t\t\t\t\tlet kxb1 = -dx / 2 + xb1 - (xb1 - xb0) * cpd * $math.cos(angle1);\n\t\t\t\t\tlet kyb1 = -dy / 2 + yb1 - (yb1 - yb0) * cpd * $math.sin(angle1);\n\n\t\t\t\t\tkxt0 += dx / 2;\n\t\t\t\t\tkyt0 += dy / 2;\n\n\t\t\t\t\tkxt1 += dx / 2;\n\t\t\t\t\tkyt1 += dy / 2;\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tkyt0 = Math.min(yt1, Math.max(yt0 + 1, kyt0));\n\t\t\t\t\t\tkyb0 = Math.min(yb1, Math.max(yb0 + 1, kyb0));\n\n\t\t\t\t\t\tkyt1 = Math.max(yt0, Math.min(yt1 - 1, kyt1));\n\t\t\t\t\t\tkyb1 = Math.max(yb0, Math.min(yb1 - 1, kyb1));\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tkxt0 = Math.min(xt1, Math.max(xt0 + 1, kxt0));\n\t\t\t\t\t\tkxb0 = Math.min(xb1, Math.max(xb0 + 1, kxb0));\n\n\t\t\t\t\t\tkxt1 = Math.max(xt0, Math.min(xt1 - 1, kxt1));\n\t\t\t\t\t\tkxb1 = Math.max(xb0, Math.min(xb1 - 1, kxb1));\n\t\t\t\t\t}\n\n\t\t\t\t\tlet segment = [[xt0, yt0, xb0, yb0], [kxt0, kyt0, kxb0, kyb0], [kxt1, kyt1, kxb1, kyb1], [xt1, yt1, xb1, yb1]];\n\n\t\t\t\t\tthis.set(\"draw\", (display) => {\n\t\t\t\t\t\tconst series = this.series!;\n\t\t\t\t\t\tseries._fillGenerator.context(display as any);\n\t\t\t\t\t\tseries._fillGenerator(segment as [number, number][]);\n\t\t\t\t\t})\n\n\t\t\t\t\tlet middleSegment = [[xm0, ym0], [kxm0, kym0], [kxm1, kym1], [xm1, ym1]];\n\n\t\t\t\t\tconst path = this.series!._strokeGenerator(middleSegment as [number, number][]);\n\n\t\t\t\t\tif (path) {\n\t\t\t\t\t\tthis._svgPath.setAttribute(\"d\", path);\n\t\t\t\t\t\tthis._totalLength = this._svgPath.getTotalLength();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.series && this.dataItem) {\n\t\t\tthis.series._positionBullets(this.dataItem as any);\n\t\t}\n\t}\n\n\tpublic getPoint(location: number): IOrientationPoint {\n\t\tif (this._svgPath) {\n\t\t\tif (this._svgPath.getAttribute(\"d\")) {\n\t\t\t\tlet p0 = this._svgPath.getPointAtLength(location * this._totalLength - 0.1);\n\t\t\t\tlet p1 = this._svgPath.getPointAtLength(location * this._totalLength + 0.1);\n\t\t\t\tlet p = this.toGlobal(this._svgPath.getPointAtLength(location * this._totalLength));\n\t\t\t\treturn { x: p.x, y: p.y, angle: $math.getAngle(p0, p1) };\n\t\t\t}\n\t\t}\n\t\treturn { x: 0, y: 0, angle: 0 }\n\t}\n\n\tpublic _getTooltipPoint(): IPoint {\n\t\treturn this.toLocal(super._getTooltipPoint());\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"SankeyLink.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyLink.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,QAAQ,EAAuC,MAAM,YAAY,CAAC;AAE3E,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AA0C9C,MAAM,OAAO,UAAW,SAAQ,QAAQ;IAAxC;;QAWW,aAAQ,GAAmB,QAAQ,CAAC,eAAe,CAAC,4BAA4B,EAAE,MAAM,CAAC,CAAC;QAC1F,iBAAY,GAAW,CAAC,CAAC;IAyRpC,CAAC;IAtRO,cAAc;QACpB,KAAK,CAAC,cAAc,EAAE,CAAC;QAEvB,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE;gBACX,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;oBACjE,IAAI,CAAC,SAAS,EAAE,CAAC;gBAClB,CAAC,CAAC,CAAC,CAAA;aACH;SACD;QACD,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC3B,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE;gBACX,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;gBACtC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE,GAAG,EAAE;oBACjE,IAAI,CAAC,SAAS,EAAE,CAAC;gBAClB,CAAC,CAAC,CAAC,CAAA;aACH;SACD;QAED,IAAI,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE;YACvC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;YAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAqC,CAAC;YAC5D,IAAI,QAAQ,IAAI,MAAM,EAAE;gBACvB,MAAM,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;aAClC;SACD;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElC,IAAI,UAAgC,CAAC;QACrC,IAAI,UAAgC,CAAC;QAErC,IAAI,MAAM,IAAI,MAAM,EAAE;YACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YACnB,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAChC,UAAU,GAAG,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YAEhC,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,CAAC;YAEX,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YAEZ,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YAEZ,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YAEZ,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YAEZ,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YAEZ,IAAI,GAAG,GAAG,CAAC,CAAC;YACZ,IAAI,GAAG,GAAG,CAAC,CAAC;YAEZ,IAAI,MAAM,GAAG,CAAC,CAAC;YACf,IAAI,MAAM,GAAG,CAAC,CAAC;YAGf,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAqC,CAAC;YAC5D,IAAI,QAAQ,EAAE;gBACb,MAAM,YAAY,GAAG,QAAQ,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;gBAClD,IAAI,YAAY,EAAE;oBAEjB,IAAI,CAAC,GAAG,YAAY,CAAC,KAAK,IAAI,CAAC,CAAC;oBAEhC,IAAI,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC;oBAEjD,IAAI,WAAW,IAAI,UAAU,EAAE;wBAC9B,IAAI,UAAU,EAAE;4BACf,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;yBAC9C;wBACD,IAAI,UAAU,EAAE;4BACf,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;yBAC9C;wBAED,MAAM,GAAG,EAAE,CAAC;wBACZ,MAAM,GAAG,EAAE,CAAC;wBAEZ,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;wBAC1B,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;wBAE1B,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAC9B,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAE9B,IAAI,EAAE,GAAG,EAAE,EAAE;4BACZ,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;4BACpB,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;yBACpB;wBAED,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BAC1B,EAAE,GAAG,EAAE,CAAC;4BACR,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;yBACxB;wBAED,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BAC1B,EAAE,GAAG,EAAE,CAAC;4BACR,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;yBACxB;wBAGD,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBACjB,GAAG,GAAG,EAAE,CAAC;wBAET,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBACjB,GAAG,GAAG,EAAE,CAAC;wBAET,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBACjB,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBAEjB,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,CAAC;wBAET,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,CAAC;wBAET,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,CAAC;qBACT;yBACI;wBACJ,IAAI,UAAU,EAAE;4BACf,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;yBAC9C;wBACD,IAAI,UAAU,EAAE;4BACf,EAAE,GAAG,UAAU,CAAC,CAAC,EAAE,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;yBAC9C;wBAED,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;wBAC1B,EAAE,GAAG,YAAY,CAAC,EAAE,IAAI,CAAC,CAAC;wBAE1B,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAC9B,EAAE,IAAI,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;wBAE9B,IAAI,EAAE,GAAG,EAAE,EAAE;4BACZ,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;4BACpB,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;yBACpB;wBAED,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BAC1B,EAAE,GAAG,EAAE,CAAC;4BACR,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;yBACxB;wBAED,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;4BAC1B,EAAE,GAAG,EAAE,CAAC;4BACR,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC;yBACxB;wBAED,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBAEjB,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBAEjB,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,CAAC;wBAET,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBACjB,GAAG,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;wBAEjB,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,CAAC;wBAET,GAAG,GAAG,EAAE,CAAC;wBACT,GAAG,GAAG,EAAE,CAAC;qBACT;oBAED,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;wBAC/C,GAAG,IAAI,IAAI,CAAC;qBACZ;oBAED,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;wBAC/C,GAAG,IAAI,IAAI,CAAC;qBACZ;oBAED,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;wBAC/C,GAAG,IAAI,IAAI,CAAC;qBACZ;oBAED,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;wBAC/C,GAAG,IAAI,IAAI,CAAC;qBACZ;oBAED,IAAI,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;oBAChD,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;oBAE5B,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACvD,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAEvD,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACvD,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAEvD,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACvD,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAEvD,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACvD,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAEvD,IAAI,KAAK,GAAG,KAAK,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;oBAEvE,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC3E,IAAI,EAAE,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAE3E,IAAI,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACjE,IAAI,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAEjE,IAAI,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBACjE,IAAI,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAEjE,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC;oBACf,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC;oBAEf,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC;oBACf,IAAI,IAAI,EAAE,GAAG,CAAC,CAAC;oBAEf,IAAI,WAAW,IAAI,UAAU,EAAE;wBAC9B,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBAC9C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBAE9C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBAC9C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBAC9C;yBACI;wBACJ,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBAC9C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBAE9C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;wBAC9C,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;qBAC9C;oBAED,IAAI,OAAO,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;oBAE/G,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,EAAE;wBAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAO,CAAC;wBAC5B,MAAM,CAAC,cAAc,CAAC,OAAO,CAAC,OAAc,CAAC,CAAC;wBAC9C,MAAM,CAAC,cAAc,CAAC,OAA6B,CAAC,CAAC;oBACtD,CAAC,CAAC,CAAA;oBAEF,IAAI,aAAa,GAAG,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;oBAEzE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAO,CAAC,gBAAgB,CAAC,aAAmC,CAAC,CAAC;oBAEhF,IAAI,IAAI,EAAE;wBACT,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;wBACtC,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAC;qBACnD;iBACD;aACD;SACD;QACD,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjC,IAAI,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAe,CAAC,CAAC;SACnD;IACF,CAAC;IAEM,QAAQ,CAAC,QAAgB;QAC/B,IAAI,IAAI,CAAC,QAAQ,EAAE;YAClB,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE;gBACpC,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC;gBAC5E,IAAI,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,CAAC;gBAC5E,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;gBACpF,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;aACzD;SACD;QACD,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAA;IAChC,CAAC;IAEM,gBAAgB;QACtB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;IAC/C,CAAC;;AAhSa,oBAAS,GAAW,YAAY,CAAC;AACjC,qBAAU,GAAkB,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { FlowNode } from \"./FlowNode\";\nimport type { Sankey, ISankeyDataItem } from \"./Sankey\";\nimport type { ISankeyNodesDataItem } from \"./SankeyNodes\";\nimport type { IOrientationPoint } from \"../../core/util/IPoint\";\n\nimport { FlowLink, IFlowLinkPrivate, IFlowLinkSettings } from \"./FlowLink\";\nimport type { IPoint } from \"../../core/util/IPoint\";\nimport * as $math from \"../../core/util/Math\";\n\n\nexport interface ISankeyLinkSettings extends IFlowLinkSettings {\n\n\t/**\n\t * Source node data item.\n\t */\n\tsource?: DataItem<ISankeyNodesDataItem>;\n\n\t/**\n\t * Source node data item.\n\t */\n\ttarget?: DataItem<ISankeyNodesDataItem>;\n\n\t/**\n\t * Type of fill to use for links.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/sankey-diagram/#Color_mode} for more info\n\t * @default \"gradient\"\n\t */\n\tfillStyle?: \"solid\" | \"gradient\" | \"source\" | \"target\";\n\n\t/**\n\t * A relative distance from node for link \"elbow\" (bend point).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/flow-charts/sankey-diagram/#Bend_point} for more info\n\t * @default 0.2\n\t */\n\tcontrolPointDistance?: number;\n\n}\n\nexport interface ISankeyLinkPrivate extends IFlowLinkPrivate {\n\n\t/**\n\t * Link orientation.\n\t */\n\torientation?: \"horizontal\" | \"vertical\";\n\n}\n\nexport class SankeyLink extends FlowLink {\n\tdeclare public _settings: ISankeyLinkSettings;\n\tdeclare public _privateSettings: ISankeyLinkPrivate;\n\n\tpublic static className: string = \"SankeyLink\";\n\tpublic static classNames: Array<string> = FlowLink.classNames.concat([SankeyLink.className]);\n\n\tdeclare protected _dataItem: DataItem<ISankeyDataItem> | undefined;\n\n\tdeclare public series: Sankey | undefined;\n\n\tprotected _svgPath: SVGPathElement = document.createElementNS(\"http://www.w3.org/2000/svg\", \"path\");\n\tprotected _totalLength: number = 0;\n\n\n\tpublic _beforeChanged() {\n\t\tsuper._beforeChanged();\n\n\t\tif (this.isDirty(\"source\")) {\n\t\t\tconst source = this.get(\"source\");\n\t\t\tif (source) {\n\t\t\t\tconst sourceNode = source.get(\"node\");\n\t\t\t\tthis._disposers.push(sourceNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis.markDirty();\n\t\t\t\t}))\n\t\t\t}\n\t\t}\n\t\tif (this.isDirty(\"target\")) {\n\t\t\tconst target = this.get(\"target\");\n\t\t\tif (target) {\n\t\t\t\tconst targetNode = target.get(\"node\");\n\t\t\t\tthis._disposers.push(targetNode.events.on(\"positionchanged\", () => {\n\t\t\t\t\tthis.markDirty();\n\t\t\t\t}))\n\t\t\t}\n\t\t}\n\n\t\tif (this.isPrivateDirty(\"orientation\")) {\n\t\t\tconst series = this.series;\n\t\t\tconst dataItem = this.dataItem as DataItem<ISankeyDataItem>;\n\t\t\tif (dataItem && series) {\n\t\t\t\tseries._updateLinkColor(dataItem);\n\t\t\t}\n\t\t}\n\n\t\tconst target = this.get(\"target\");\n\t\tconst source = this.get(\"source\");\n\n\t\tlet sourceNode: FlowNode | undefined;\n\t\tlet targetNode: FlowNode | undefined;\n\n\t\tif (source && target) {\n\t\t\tthis._clear = true;\n\t\t\tsourceNode = source.get(\"node\");\n\t\t\ttargetNode = target.get(\"node\");\n\n\t\t\tlet x0 = 0;\n\t\t\tlet x1 = 0;\n\t\t\tlet y0 = 0;\n\t\t\tlet y1 = 0;\n\n\t\t\tlet xt0 = 0;\n\t\t\tlet yt0 = 0;\n\n\t\t\tlet xt1 = 0;\n\t\t\tlet yt1 = 0;\n\n\t\t\tlet xb0 = 0;\n\t\t\tlet xb1 = 0;\n\n\t\t\tlet yb0 = 0;\n\t\t\tlet yb1 = 0;\n\n\t\t\tlet xm0 = 0;\n\t\t\tlet xm1 = 0;\n\n\t\t\tlet ym0 = 0;\n\t\t\tlet ym1 = 0;\n\n\t\t\tlet angle0 = 0;\n\t\t\tlet angle1 = 0;\n\n\n\t\t\tconst dataItem = this.dataItem as DataItem<ISankeyDataItem>;\n\t\t\tif (dataItem) {\n\t\t\t\tconst d3SankeyLink = dataItem.get(\"d3SankeyLink\");\n\t\t\t\tif (d3SankeyLink) {\n\n\t\t\t\t\tlet w = d3SankeyLink.width || 0;\n\n\t\t\t\t\tlet orientation = this.getPrivate(\"orientation\");\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tif (sourceNode) {\n\t\t\t\t\t\t\ty0 = sourceNode.y() + sourceNode.get(\"dy\", 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (targetNode) {\n\t\t\t\t\t\t\ty1 = targetNode.y() + targetNode.get(\"dy\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tangle0 = 90;\n\t\t\t\t\t\tangle1 = 90;\n\n\t\t\t\t\t\tx0 = d3SankeyLink.y0 || 0;\n\t\t\t\t\t\tx1 = d3SankeyLink.y1 || 0;\n\n\t\t\t\t\t\tx0 += sourceNode.get(\"dx\", 0);\n\t\t\t\t\t\tx1 += targetNode.get(\"dx\", 0);\n\n\t\t\t\t\t\tif (y1 < y0) {\n\t\t\t\t\t\t\t[x0, x1] = [x1, x0];\n\t\t\t\t\t\t\t[y0, y1] = [y1, y0];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\t\tx0 = x1;\n\t\t\t\t\t\t\ty0 = y0 + (y1 - y0) / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\t\tx1 = x0;\n\t\t\t\t\t\t\ty1 = y0 + (y1 - y0) / 2;\n\t\t\t\t\t\t}\n\n\n\t\t\t\t\t\txt0 = x0 - w / 2;\n\t\t\t\t\t\tyt0 = y0;\n\n\t\t\t\t\t\txt1 = x1 - w / 2;\n\t\t\t\t\t\tyt1 = y1;\n\n\t\t\t\t\t\txb0 = x0 + w / 2;\n\t\t\t\t\t\txb1 = x1 + w / 2;\n\n\t\t\t\t\t\tyb0 = y0;\n\t\t\t\t\t\tyb1 = y1;\n\n\t\t\t\t\t\txm0 = x0;\n\t\t\t\t\t\txm1 = x1;\n\n\t\t\t\t\t\tym0 = y0;\n\t\t\t\t\t\tym1 = y1;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (sourceNode) {\n\t\t\t\t\t\t\tx0 = sourceNode.x() + sourceNode.get(\"dx\", 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t\tif (targetNode) {\n\t\t\t\t\t\t\tx1 = targetNode.x() + targetNode.get(\"dx\", 0);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\ty0 = d3SankeyLink.y0 || 0;\n\t\t\t\t\t\ty1 = d3SankeyLink.y1 || 0;\n\n\t\t\t\t\t\ty0 += sourceNode.get(\"dy\", 0);\n\t\t\t\t\t\ty1 += targetNode.get(\"dy\", 0);\n\n\t\t\t\t\t\tif (x1 < x0) {\n\t\t\t\t\t\t\t[x0, x1] = [x1, x0];\n\t\t\t\t\t\t\t[y0, y1] = [y1, y0];\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (source.get(\"unknown\")) {\n\t\t\t\t\t\t\ty0 = y1;\n\t\t\t\t\t\t\tx0 = x0 + (x1 - x0) / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (target.get(\"unknown\")) {\n\t\t\t\t\t\t\ty1 = y0;\n\t\t\t\t\t\t\tx1 = x0 + (x1 - x0) / 2;\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\txt0 = x0;\n\t\t\t\t\t\tyt0 = y0 - w / 2;\n\n\t\t\t\t\t\txt1 = x1;\n\t\t\t\t\t\tyt1 = y1 - w / 2;\n\n\t\t\t\t\t\txb0 = x0;\n\t\t\t\t\t\txb1 = x1;\n\n\t\t\t\t\t\tyb0 = y0 + w / 2;\n\t\t\t\t\t\tyb1 = y1 + w / 2;\n\n\t\t\t\t\t\txm0 = x0;\n\t\t\t\t\t\txm1 = x1;\n\n\t\t\t\t\t\tym0 = y0;\n\t\t\t\t\t\tym1 = y1;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(xt0, 3) == $math.round(xt1, 3)) {\n\t\t\t\t\t\txt1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(yt0, 3) == $math.round(yt1, 3)) {\n\t\t\t\t\t\tyt1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(xb0, 3) == $math.round(xb1, 3)) {\n\t\t\t\t\t\txb1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tif ($math.round(yb0, 3) == $math.round(yb1, 3)) {\n\t\t\t\t\t\tyb1 += 0.01;\n\t\t\t\t\t}\n\n\t\t\t\t\tlet cpd = this.get(\"controlPointDistance\", 0.2);\n\t\t\t\t\tcpd = Math.min(0.4999, cpd);\n\n\t\t\t\t\tlet kxt0 = xt0 + (xt1 - xt0) * cpd * $math.cos(angle0);\n\t\t\t\t\tlet kyt0 = yt0 + (yt1 - yt0) * cpd * $math.sin(angle0);\n\n\t\t\t\t\tlet kxt1 = xt1 - (xt1 - xt0) * cpd * $math.cos(angle1);\n\t\t\t\t\tlet kyt1 = yt1 - (yt1 - yt0) * cpd * $math.sin(angle1);\n\n\t\t\t\t\tlet kxm0 = xm0 + (xm1 - xm0) * cpd * $math.cos(angle0);\n\t\t\t\t\tlet kym0 = ym0 + (ym1 - ym0) * cpd * $math.sin(angle0);\n\n\t\t\t\t\tlet kxm1 = xm1 - (xm1 - xm0) * cpd * $math.cos(angle1);\n\t\t\t\t\tlet kym1 = ym1 - (ym1 - ym0) * cpd * $math.sin(angle1);\n\n\t\t\t\t\tlet angle = $math.getAngle({ x: kxt0, y: kyt0 }, { x: kxt1, y: kyt1 });\n\n\t\t\t\t\tlet dx = (w / $math.cos(angle) - w) / $math.tan(angle) * $math.cos(angle0);\n\t\t\t\t\tlet dy = (w / $math.sin(angle) - w) * $math.tan(angle) * $math.sin(angle0);\n\n\t\t\t\t\tlet kxb0 = -dx / 2 + xb0 + (xb1 - xb0) * cpd * $math.cos(angle0);\n\t\t\t\t\tlet kyb0 = -dy / 2 + yb0 + (yb1 - yb0) * cpd * $math.sin(angle0);\n\n\t\t\t\t\tlet kxb1 = -dx / 2 + xb1 - (xb1 - xb0) * cpd * $math.cos(angle1);\n\t\t\t\t\tlet kyb1 = -dy / 2 + yb1 - (yb1 - yb0) * cpd * $math.sin(angle1);\n\n\t\t\t\t\tkxt0 += dx / 2;\n\t\t\t\t\tkyt0 += dy / 2;\n\n\t\t\t\t\tkxt1 += dx / 2;\n\t\t\t\t\tkyt1 += dy / 2;\n\n\t\t\t\t\tif (orientation == \"vertical\") {\n\t\t\t\t\t\tkyt0 = Math.min(yt1, Math.max(yt0 + 1, kyt0));\n\t\t\t\t\t\tkyb0 = Math.min(yb1, Math.max(yb0 + 1, kyb0));\n\n\t\t\t\t\t\tkyt1 = Math.max(yt0, Math.min(yt1 - 1, kyt1));\n\t\t\t\t\t\tkyb1 = Math.max(yb0, Math.min(yb1 - 1, kyb1));\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tkxt0 = Math.min(xt1, Math.max(xt0 + 1, kxt0));\n\t\t\t\t\t\tkxb0 = Math.min(xb1, Math.max(xb0 + 1, kxb0));\n\n\t\t\t\t\t\tkxt1 = Math.max(xt0, Math.min(xt1 - 1, kxt1));\n\t\t\t\t\t\tkxb1 = Math.max(xb0, Math.min(xb1 - 1, kxb1));\n\t\t\t\t\t}\n\n\t\t\t\t\tlet segment = [[xt0, yt0, xb0, yb0], [kxt0, kyt0, kxb0, kyb0], [kxt1, kyt1, kxb1, kyb1], [xt1, yt1, xb1, yb1]];\n\n\t\t\t\t\tthis.set(\"draw\", (display) => {\n\t\t\t\t\t\tconst series = this.series!;\n\t\t\t\t\t\tseries._fillGenerator.context(display as any);\n\t\t\t\t\t\tseries._fillGenerator(segment as [number, number][]);\n\t\t\t\t\t})\n\n\t\t\t\t\tlet middleSegment = [[xm0, ym0], [kxm0, kym0], [kxm1, kym1], [xm1, ym1]];\n\n\t\t\t\t\tconst path = this.series!._strokeGenerator(middleSegment as [number, number][]);\n\n\t\t\t\t\tif (path) {\n\t\t\t\t\t\tthis._svgPath.setAttribute(\"d\", path);\n\t\t\t\t\t\tthis._totalLength = this._svgPath.getTotalLength();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tif (this.series && this.dataItem) {\n\t\t\tthis.series._positionBullets(this.dataItem as any);\n\t\t}\n\t}\n\n\tpublic getPoint(location: number): IOrientationPoint {\n\t\tif (this._svgPath) {\n\t\t\tif (this._svgPath.getAttribute(\"d\")) {\n\t\t\t\tlet p0 = this._svgPath.getPointAtLength(location * this._totalLength - 0.1);\n\t\t\t\tlet p1 = this._svgPath.getPointAtLength(location * this._totalLength + 0.1);\n\t\t\t\tlet p = this.toGlobal(this._svgPath.getPointAtLength(location * this._totalLength));\n\t\t\t\treturn { x: p.x, y: p.y, angle: $math.getAngle(p0, p1) };\n\t\t\t}\n\t\t}\n\t\treturn { x: 0, y: 0, angle: 0 }\n\t}\n\n\tpublic _getTooltipPoint(): IPoint {\n\t\treturn this.toLocal(super._getTooltipPoint());\n\t}\n}\n"]}
|
|
@@ -13,21 +13,7 @@ export class SankeyNodes extends FlowNodes {
|
|
|
13
13
|
*
|
|
14
14
|
* @default new ListTemplate<RoundedRectangle>
|
|
15
15
|
*/
|
|
16
|
-
|
|
17
|
-
enumerable: true,
|
|
18
|
-
configurable: true,
|
|
19
|
-
writable: true,
|
|
20
|
-
value: this.addDisposer(new ListTemplate(Template.new({}), () => RoundedRectangle._new(this._root, { themeTags: ["shape"] }, [this.rectangles.template])))
|
|
21
|
-
});
|
|
22
|
-
/**
|
|
23
|
-
* Related [[Sankey]] series.
|
|
24
|
-
*/
|
|
25
|
-
Object.defineProperty(this, "flow", {
|
|
26
|
-
enumerable: true,
|
|
27
|
-
configurable: true,
|
|
28
|
-
writable: true,
|
|
29
|
-
value: void 0
|
|
30
|
-
});
|
|
16
|
+
this.rectangles = this.addDisposer(new ListTemplate(Template.new({}), () => RoundedRectangle._new(this._root, { themeTags: ["shape"] }, [this.rectangles.template])));
|
|
31
17
|
}
|
|
32
18
|
/**
|
|
33
19
|
* @ignore
|
|
@@ -104,16 +90,6 @@ export class SankeyNodes extends FlowNodes {
|
|
|
104
90
|
}
|
|
105
91
|
}
|
|
106
92
|
}
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
configurable: true,
|
|
110
|
-
writable: true,
|
|
111
|
-
value: "SankeyNodes"
|
|
112
|
-
});
|
|
113
|
-
Object.defineProperty(SankeyNodes, "classNames", {
|
|
114
|
-
enumerable: true,
|
|
115
|
-
configurable: true,
|
|
116
|
-
writable: true,
|
|
117
|
-
value: FlowNodes.classNames.concat([SankeyNodes.className])
|
|
118
|
-
});
|
|
93
|
+
SankeyNodes.className = "SankeyNodes";
|
|
94
|
+
SankeyNodes.classNames = FlowNodes.classNames.concat([SankeyNodes.className]);
|
|
119
95
|
//# sourceMappingURL=SankeyNodes.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SankeyNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyNodes.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,SAAS,EAA+E,MAAM,aAAa,CAAC;AACrH,OAAO,EAAE,gBAAgB,EAAE,MAAM,oCAAoC,CAAC;AAetE;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,SAAS;IAA1C;;QASC;;;;WAIG;
|
|
1
|
+
{"version":3,"file":"SankeyNodes.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/flow/SankeyNodes.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { FlowNode } from \"./FlowNode\";\nimport type { Sankey } from \"./Sankey\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FlowNodes, IFlowNodesSettings, IFlowNodesDataItem, IFlowNodesPrivate, IFlowNodesEvents } from \"./FlowNodes\";\nimport { RoundedRectangle } from \"../../core/render/RoundedRectangle\";\n\nexport interface ISankeyNodesDataItem extends IFlowNodesDataItem {\n\trectangle: RoundedRectangle;\n}\n\nexport interface ISankeyNodesSettings extends IFlowNodesSettings {\n}\n\nexport interface ISankeyNodesPrivate extends IFlowNodesPrivate {\n}\n\nexport interface ISankeyNodesEvents extends IFlowNodesEvents {\n}\n\n/**\n * Holds instances of nodes for a [[Sankey]] series.\n */\nexport class SankeyNodes extends FlowNodes {\n\tpublic static className: string = \"SankeyNodes\";\n\tpublic static classNames: Array<string> = FlowNodes.classNames.concat([SankeyNodes.className]);\n\n\tdeclare public _settings: ISankeyNodesSettings;\n\tdeclare public _privateSettings: ISankeyNodesPrivate;\n\tdeclare public _dataItemSettings: ISankeyNodesDataItem;\n\tdeclare public _events: ISankeyNodesEvents;\n\n\t/**\n\t * List of rectangle elements.\n\t *\n\t * @default new ListTemplate<RoundedRectangle>\n\t */\n\tpublic readonly rectangles: ListTemplate<RoundedRectangle> = this.addDisposer(new ListTemplate(\n\t\tTemplate.new({}),\n\t\t() => RoundedRectangle._new(this._root, { themeTags: [\"shape\"] }, [this.rectangles.template])\n\t));\n\n\t/**\n\t * Related [[Sankey]] series.\n\t */\n\tpublic flow: Sankey | undefined;\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeNode(dataItem: DataItem<this[\"_dataItemSettings\"]>): FlowNode {\n\t\tconst flow = this.flow;\n\n\t\tconst node = super.makeNode(dataItem, \"sankey\");\n\n\t\tconst rectangle = node.children.insertIndex(0, this.rectangles.make());\n\t\tthis.rectangles.push(rectangle);\n\t\trectangle._setSoft(\"fill\", dataItem.get(\"fill\"));\n\t\trectangle._setSoft(\"fillPattern\", dataItem.get(\"fillPattern\"));\n\n\t\tdataItem.set(\"rectangle\", rectangle);\n\n\t\tnode.events.on(\"dragged\", () => {\n\t\t\tconst d3SankeyNode = (node.dataItem as DataItem<ISankeyNodesDataItem>).get(\"d3SankeyNode\");\n\t\t\tif (d3SankeyNode) {\n\t\t\t\tif (flow) {\n\t\t\t\t\tif (flow.get(\"orientation\") == \"horizontal\") {\n\t\t\t\t\t\td3SankeyNode.x0 = node.x();\n\t\t\t\t\t\td3SankeyNode.y0 = node.y();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\td3SankeyNode.x0 = node.y();\n\t\t\t\t\t\td3SankeyNode.y0 = node.x();\n\t\t\t\t\t}\n\n\t\t\t\t\tflow.updateSankey();\n\t\t\t\t}\n\t\t\t}\n\t\t})\n\n\t\tconst label = this.labels.make();\n\t\tthis.labels.push(label);\n\n\t\tif (flow) {\n\t\t\tlabel.addTag(flow.get(\"orientation\", \"\"));\n\t\t}\n\t\tnode.children.push(label);\n\t\tdataItem.set(\"label\", label);\n\n\t\tlabel._setDataItem(dataItem);\n\t\trectangle._setDataItem(dataItem);\n\n\t\treturn node;\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\t\tconst sprite = bullet.get(\"sprite\");\n\t\tif (sprite) {\n\t\t\tconst dataItem = sprite.dataItem as DataItem<this[\"_dataItemSettings\"]>;\n\t\t\tif (dataItem) {\n\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\tif (sprite) {\n\t\t\t\t\tconst rectangle = dataItem.get(\"rectangle\");\n\t\t\t\t\tconst node = dataItem.get(\"node\");\n\t\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\t\t\t\t\tif (rectangle) {\n\t\t\t\t\t\tsprite.setAll({ x: node.x() + rectangle.width() * locationX, y: node.y() + rectangle.height() * locationY });\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tlet rectangle = dataItem.get(\"rectangle\");\n\t\tif (rectangle) {\n\t\t\tthis.rectangles.removeValue(rectangle);\n\t\t\trectangle.dispose();\n\t\t}\n\t}\n\n\tpublic _updateNodeColor(dataItem: DataItem<this[\"_dataItemSettings\"]>){\n\t\tconst rectangle = dataItem.get(\"rectangle\");\n\t\tif(rectangle){\n\t\t\trectangle.set(\"fill\", dataItem.get(\"fill\"));\n\t\t\trectangle.set(\"fillPattern\", dataItem.get(\"fillPattern\"));\n\t\t}\n\t}\n}\n"]}
|
|
@@ -18,12 +18,7 @@ import * as $utils from "../../core/util/Utils";
|
|
|
18
18
|
export class FunnelSeries extends PercentSeries {
|
|
19
19
|
constructor() {
|
|
20
20
|
super(...arguments);
|
|
21
|
-
|
|
22
|
-
enumerable: true,
|
|
23
|
-
configurable: true,
|
|
24
|
-
writable: true,
|
|
25
|
-
value: "funnel"
|
|
26
|
-
});
|
|
21
|
+
this._tag = "funnel";
|
|
27
22
|
/**
|
|
28
23
|
* A [[ListTemplate]] of all slice links in series.
|
|
29
24
|
*
|
|
@@ -31,36 +26,11 @@ export class FunnelSeries extends PercentSeries {
|
|
|
31
26
|
*
|
|
32
27
|
* @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_links} for more info
|
|
33
28
|
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
});
|
|
40
|
-
Object.defineProperty(this, "_total", {
|
|
41
|
-
enumerable: true,
|
|
42
|
-
configurable: true,
|
|
43
|
-
writable: true,
|
|
44
|
-
value: 0
|
|
45
|
-
});
|
|
46
|
-
Object.defineProperty(this, "_count", {
|
|
47
|
-
enumerable: true,
|
|
48
|
-
configurable: true,
|
|
49
|
-
writable: true,
|
|
50
|
-
value: 0
|
|
51
|
-
});
|
|
52
|
-
Object.defineProperty(this, "_nextCoord", {
|
|
53
|
-
enumerable: true,
|
|
54
|
-
configurable: true,
|
|
55
|
-
writable: true,
|
|
56
|
-
value: 0
|
|
57
|
-
});
|
|
58
|
-
Object.defineProperty(this, "_opposite", {
|
|
59
|
-
enumerable: true,
|
|
60
|
-
configurable: true,
|
|
61
|
-
writable: true,
|
|
62
|
-
value: false
|
|
63
|
-
});
|
|
29
|
+
this.links = this.addDisposer(this._makeLinks());
|
|
30
|
+
this._total = 0;
|
|
31
|
+
this._count = 0;
|
|
32
|
+
this._nextCoord = 0;
|
|
33
|
+
this._opposite = false;
|
|
64
34
|
}
|
|
65
35
|
_makeSlices() {
|
|
66
36
|
return new ListTemplate(Template.new({}), () => FunnelSlice._new(this._root, {
|
|
@@ -456,16 +426,6 @@ export class FunnelSeries extends PercentSeries {
|
|
|
456
426
|
}
|
|
457
427
|
}
|
|
458
428
|
}
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
configurable: true,
|
|
462
|
-
writable: true,
|
|
463
|
-
value: "FunnelSeries"
|
|
464
|
-
});
|
|
465
|
-
Object.defineProperty(FunnelSeries, "classNames", {
|
|
466
|
-
enumerable: true,
|
|
467
|
-
configurable: true,
|
|
468
|
-
writable: true,
|
|
469
|
-
value: PercentSeries.classNames.concat([FunnelSeries.className])
|
|
470
|
-
});
|
|
429
|
+
FunnelSeries.className = "FunnelSeries";
|
|
430
|
+
FunnelSeries.classNames = PercentSeries.classNames.concat([FunnelSeries.className]);
|
|
471
431
|
//# sourceMappingURL=FunnelSeries.js.map
|