@amcharts/amcharts5 5.15.6 → 5.16.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.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.js +7 -42
- 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.js +8 -38
- 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.js +11 -72
- 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.js +3 -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.js +9 -66
- 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.js +9 -54
- 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.js +5 -36
- 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.js +13 -89
- 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.js +33 -282
- 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.map +1 -1
- package/.internal/core/Root.js +38 -398
- 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/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 +12 -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":"FunnelSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { SlicedChart } from \"./SlicedChart\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FunnelSlice } from \"./FunnelSlice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { Label } from \"../../core/render/Label\";\nimport { percent, p50, p100 } from \"../../core/util/Percent\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\n\n\nexport interface IFunnelSeriesDataItem extends IPercentSeriesDataItem {\n\n\t/**\n\t * A related slice element.\n\t */\n\tslice: FunnelSlice;\n\n\t/**\n\t * A related slice link element\n\t */\n\tlink: FunnelSlice;\n\n\t/**\n\t * Data item's index.\n\t */\n\tindex: number;\n\n}\n\nexport interface IFunnelSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Width of the bottom edge of the slice relative to the top edge of the next\n\t * slice.\n\t *\n\t * `1` - means the full width of the slice, resulting in a rectangle.\n\t * `0` - means using width of the next slice, resulting in a trapezoid.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_bottom_width} for more info\n\t * @default 1\n\t */\n\tbottomRatio?: number;\n\n\t/**\n\t * Orientation of the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/#Series_orientation} for more info\n\t * @default \"vertical\"\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * If set to `true`, series will not create slices for data items with zero\n\t * value.\n\t */\n\tignoreZeroValues?: boolean;\n\n\t/**\n\t * Should labels be aligned into columns/rows?\n\t *\n\t * @default false\n\t */\n\talignLabels?: boolean;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tstartLocation?: number;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tendLocation?: number;\n\n}\n\nexport interface IFunnelSeriesPrivate extends IPercentSeriesPrivate {\n}\n\n/**\n * Creates a funnel series for use in a [[SlicedChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/} for more info\n * @important\n */\nexport class FunnelSeries extends PercentSeries {\n\n\t/**\n\t * A chart series is attached to.\n\t */\n\tdeclare public chart: SlicedChart | undefined;\n\n\tprotected _tag = \"funnel\";\n\n\tdeclare public _sliceType: FunnelSlice;\n\tdeclare public _labelType: Label;\n\tdeclare public _tickType: Tick;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [this._tag, \"series\", \"slice\", this.get(\"orientation\")])\n\t\t\t}, [this.slices.template])\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Label._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [this._tag, \"series\", \"label\", this.get(\"orientation\")])\n\t\t\t}, [this.labels.template])\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [this._tag, \"series\", \"tick\", this.get(\"orientation\")])\n\t\t\t}, [this.ticks.template])\n\t\t);\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice links in series.\n\t *\n\t * `links.template` can also be used to configure slice links.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_links} for more info\n\t */\n\tpublic readonly links: ListTemplate<this[\"_sliceType\"]> = this.addDisposer(this._makeLinks());\n\n\tprotected _makeLinks(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.links.template.get(\"themeTags\", []), [this._tag, \"series\", \"link\", this.get(\"orientation\")])\n\t\t\t}, [this.links.template]),\n\t\t);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_sliceType\"] {\n\t\tconst link = this.slicesContainer.children.push(this.links.make());\n\t\tlink._setDataItem(dataItem);\n\t\tdataItem.set(\"link\", link);\n\t\tthis.links.push(link);\n\t\treturn link;\n\t}\n\n\tpublic static className: string = \"FunnelSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([FunnelSeries.className]);\n\n\tdeclare public _settings: IFunnelSeriesSettings;\n\tdeclare public _privateSettings: IFunnelSeriesPrivate;\n\tdeclare public _dataItemSettings: IFunnelSeriesDataItem;\n\n\tprotected _total: number = 0;\n\tprotected _count: number = 0;\n\tprotected _nextCoord: number = 0;\n\n\tprotected _opposite: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tconst slicesContainer = this.slicesContainer;\n\t\tslicesContainer.setAll({ isMeasured: true, position: \"relative\", width: percent(100), height: percent(100) });\n\t\tslicesContainer.onPrivate(\"width\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tslicesContainer.onPrivate(\"height\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t}\n\t\telse {\n\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t}\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice._setDataItem(dataItem);\n\n\t\tdataItem.set(\"slice\", slice);\n\n\t\tthis.makeLink(dataItem);\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.on(\"x\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tlabel.on(\"y\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\n\t\tslice.events.on(\"boundschanged\", () => {\n\t\t\tconst dataItem = slice.dataItem;\n\t\t\tif (dataItem) {\n\t\t\t\tthis._updateTick(dataItem as any);\n\t\t\t}\n\t\t})\n\t}\n\n\n\tpublic _updateChildren() {\n\t\tthis._opposite = false;\n\t\tif (this.children.indexOf(this.labelsContainer) == 0) {\n\t\t\tthis._opposite = true;\n\t\t}\n\n\t\tlet total = 0;\n\t\tlet count = 0;\n\n\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\tconst value = dataItem.get(\"value\");\n\t\t\tif ($type.isNumber(value)) {\n\t\t\t\tcount++;\n\t\t\t\tif (value > 0) {\n\t\t\t\t\ttotal += Math.abs(dataItem.get(\"valueWorking\", value) / value);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (this.get(\"ignoreZeroValues\", false)) {\n\t\t\t\t\t\tcount--;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\t\t\tcount--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\ttotal += 1;\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\n\t\tthis._total = 1 / count * total;\n\t\tthis._count = count;\n\n\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\tthis._fixLayout();\n\t\t}\n\n\t\tif (this._total > 0 && (this._valuesDirty || this._sizeDirty)) {\n\n\t\t\tconst slicesContainer = this.slicesContainer;\n\n\t\t\tlet h: number;\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\th = slicesContainer.innerHeight();\n\t\t\t}\n\t\t\telse {\n\t\t\t\th = slicesContainer.innerWidth();\n\t\t\t}\n\n\t\t\tthis._nextCoord = this.get(\"startLocation\", 0) * h;\n\n\t\t\tthis.markDirtyBounds();\n\n\t\t\tlet i = 0;\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\tdataItem.set(\"index\", i);\n\t\t\t\ti++;\n\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\tconst fillPattern = dataItem.get(\"fillPattern\");\n\n\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\tslice._setDefault(\"fillPattern\", fillPattern);\n\t\t\t\tlink._setDefault(\"fill\", color);\n\t\t\t\tlink._setDefault(\"stroke\", color);\n\n\t\t\t\tconst value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tif (value == 0 && this.get(\"ignoreZeroValues\")) {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", false);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", false);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", false);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", true);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", true);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", true);\n\n\t\t\t\t\t\tthis.decorateSlice(dataItem);\n\n\t\t\t\t\t\tif (this.isLast(dataItem)) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (!dataItem.isHidden()) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", true);\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\tsuper._updateChildren();\n\t}\n\n\tprotected _fixLayout() {\n\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst labelsContainer = this.labelsContainer;\n\t\tconst labelsTemplate = this.labels.template;\n\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tlabelsContainer.set(\"position\", \"relative\");\n\t\t\tlabelsContainer.setAll({ isMeasured: true });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: p100, x: p100 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: 0, x: 0 });\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tlabelsContainer.setAll({ isMeasured: false, position: \"absolute\" });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tlabelsContainer.setAll({ x: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, x: 0 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlabelsContainer.setAll({ y: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, y: 0 });\n\t\t\t}\n\t\t}\n\t\tthis.markDirtySize();\n\t}\n\n\tprotected getNextValue(dataItem: DataItem<this[\"_dataItemSettings\"]>): number {\n\t\tlet index = dataItem.get(\"index\");\n\t\tlet nextValue = dataItem.get(\"valueWorking\", 0);\n\t\tif (index < this.dataItems.length - 1) {\n\t\t\tlet nextItem = this.dataItems[index + 1];\n\t\t\tnextValue = nextItem.get(\"valueWorking\", 0);\n\n\t\t\tif (nextItem.isHidden() || (nextItem.get(\"value\") == 0 && this.get(\"ignoreZeroValues\"))) {\n\t\t\t\treturn this.getNextValue(nextItem);\n\t\t\t}\n\t\t}\n\t\treturn nextValue;\n\t}\n\n\tprotected isLast(dataItem: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tlet index = dataItem.get(\"index\");\n\t\tif (index == this.dataItems.length - 1) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\tfor (let i = index + 1; i < this.dataItems.length; i++) {\n\t\t\t\tif (!this.dataItems[i].isHidden()) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected decorateSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst orientation = this.get(\"orientation\");\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst link = dataItem.get(\"link\");\n\n\t\tconst slicesContainer = this.slicesContainer;\n\n\t\tlet maxWidth = slicesContainer.innerWidth();\n\t\tlet maxHeight = slicesContainer.innerHeight();\n\n\t\tlet maxSize = maxWidth;\n\t\tif (orientation == \"horizontal\") {\n\t\t\tmaxSize = maxHeight;\n\t\t}\n\n\t\tconst nextValue = this.getNextValue(dataItem);\n\t\tconst value = dataItem.get(\"value\", 0);\n\t\tconst workingValue = Math.abs(dataItem.get(\"valueWorking\", value));\n\t\tconst bottomRatio = this.get(\"bottomRatio\", 0);\n\t\tconst valueHigh = this.getPrivate(\"valueHigh\", 0);\n\n\n\t\tlet d = 1;\n\t\tif (value != 0) {\n\t\t\td = workingValue / Math.abs(value);\n\t\t}\n\t\telse {\n\t\t\tif (dataItem.isHidden()) {\n\t\t\t\td = 0.000001;\n\t\t\t}\n\t\t}\n\n\t\tif (this._nextCoord == Infinity) {\n\t\t\tthis._nextCoord = 0;\n\t\t}\n\n\t\tlet topWidth = workingValue / valueHigh * maxSize;\n\t\tlet bottomWidth = (workingValue - (workingValue - nextValue) * bottomRatio) / valueHigh * maxSize;\n\n\t\tslice.setAll({ topWidth, bottomWidth, orientation });\n\t\tlink.setAll({ topWidth: bottomWidth, bottomWidth: (workingValue - (workingValue - nextValue)) / valueHigh * maxSize, orientation });\n\n\t\tconst startLocation = this.get(\"startLocation\", 0);\n\t\tconst endLocation = this.get(\"endLocation\", 1);\n\n\t\tif (orientation == \"vertical\") {\n\n\t\t\tlet linkHeight = link.height() * d;\n\n\t\t\tmaxHeight = maxHeight * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"y\", this._nextCoord);\n\n\t\t\tlet height = Math.min(100000, Math.max(0, maxHeight / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ height, x: maxWidth / 2 });\n\t\t\tlet labelY = this._nextCoord + height / 2;\n\t\t\tlabel.set(\"y\", labelY);\n\n\t\t\tthis._nextCoord += height + linkHeight;\n\t\t\tlink.setAll({ y: this._nextCoord - linkHeight, x: maxWidth / 2 });\n\t\t}\n\t\telse {\n\t\t\tlet linkHeight = link.width() * d;\n\n\t\t\tmaxWidth = maxWidth * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"x\", this._nextCoord);\n\n\t\t\tlet width = Math.min(100000, Math.max(0, maxWidth / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ width, y: maxHeight / 2 });\n\t\t\tconst labelX = this._nextCoord + width / 2;\n\t\t\tlabel.set(\"x\", labelX);\n\n\t\t\tthis._nextCoord += width + linkHeight;\n\t\t\tlink.setAll({ x: this._nextCoord - linkHeight, y: maxHeight / 2 });\n\t\t}\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\tdataItem.get(\"link\").hide(duration);\n\t\treturn super.hideDataItem(dataItem, duration)\n\t}\n\n\t/**\n\t * Shows 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 showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tdataItem.get(\"link\").show(duration);\n\t\treturn super.showDataItem(dataItem, duration)\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\tconst label = dataItem.get(\"label\");\n\t\t\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (tick && slice && label) {\n\n\t\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\t\tconst slicesContainer = this.slicesContainer;\n\t\t\t\tlet tickLocation = tick.get(\"location\", 0.5);\n\n\t\t\t\tconst lcw = labelsContainer.width();\n\t\t\t\tconst lch = labelsContainer.height();\n\n\t\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\tconst pt = labelsContainer.get(\"paddingTop\", 0);\n\t\t\t\tconst pb = labelsContainer.get(\"paddingBottom\", 0);\n\n\t\t\t\tlet p0 = { x: 0, y: 0 };\n\t\t\t\tlet p1 = { x: 0, y: 0 };\n\t\t\t\tlet p2 = { x: 0, y: 0 };\n\n\t\t\t\tif (this._opposite) {\n\t\t\t\t\ttickLocation = 1 - tickLocation;\n\t\t\t\t}\n\n\t\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\t\tp0 = slice.getPoint(tickLocation, 0.5);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.x = lcw;\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = lcw - pl;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.x = slicesContainer.x() + slicesContainer.width();\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = p1.x + lcw - label.width() - pr;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tp0 = slice.getPoint(0.5, tickLocation);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.y = lch;\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = lch - pt;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.y = slicesContainer.y() + slicesContainer.height();\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = p1.y + lch - label.height() - pb;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttick.set(\"points\", [p0, p1, p2]);\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 link = dataItem.get(\"link\");\n\t\tif (link) {\n\t\t\tthis.links.removeValue(link);\n\t\t\tlink.dispose();\n\t\t}\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\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\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (slice) {\n\t\t\t\tconst width = slice.width();\n\t\t\t\tconst height = slice.height();\n\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\n\t\t\t\tlet dx = 0;\n\t\t\t\tlet dy = 0;\n\t\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\t\tdy = height / 2\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tdx = width / 2\n\t\t\t\t}\n\n\t\t\t\tsprite.setAll({ x: slice.x() + width * locationX - dx, y: slice.y() - dy + height * locationY });\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"FunnelSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\nimport type { SlicedChart } from \"./SlicedChart\";\nimport type { Bullet } from \"../../core/render/Bullet\";\n\nimport { PercentSeries, IPercentSeriesSettings, IPercentSeriesDataItem, IPercentSeriesPrivate } from \"../percent/PercentSeries\";\nimport { Template } from \"../../core/util/Template\";\nimport { ListTemplate } from \"../../core/util/List\";\nimport { FunnelSlice } from \"./FunnelSlice\";\nimport { Tick } from \"../../core/render/Tick\";\nimport { Label } from \"../../core/render/Label\";\nimport { percent, p50, p100 } from \"../../core/util/Percent\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $utils from \"../../core/util/Utils\";\n\n\nexport interface IFunnelSeriesDataItem extends IPercentSeriesDataItem {\n\n\t/**\n\t * A related slice element.\n\t */\n\tslice: FunnelSlice;\n\n\t/**\n\t * A related slice link element\n\t */\n\tlink: FunnelSlice;\n\n\t/**\n\t * Data item's index.\n\t */\n\tindex: number;\n\n}\n\nexport interface IFunnelSeriesSettings extends IPercentSeriesSettings {\n\n\t/**\n\t * Width of the bottom edge of the slice relative to the top edge of the next\n\t * slice.\n\t *\n\t * `1` - means the full width of the slice, resulting in a rectangle.\n\t * `0` - means using width of the next slice, resulting in a trapezoid.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_bottom_width} for more info\n\t * @default 1\n\t */\n\tbottomRatio?: number;\n\n\t/**\n\t * Orientation of the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/#Series_orientation} for more info\n\t * @default \"vertical\"\n\t */\n\torientation: \"horizontal\" | \"vertical\";\n\n\t/**\n\t * If set to `true`, series will not create slices for data items with zero\n\t * value.\n\t */\n\tignoreZeroValues?: boolean;\n\n\t/**\n\t * Should labels be aligned into columns/rows?\n\t *\n\t * @default false\n\t */\n\talignLabels?: boolean;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tstartLocation?: number;\n\n\t/**\n\t * Relative location within area available to series where it should start.\n\t *\n\t * `0` - beginning, `1` - end, or any intermediate value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Start_end_locations} for more info\n\t * @default 0\n\t */\n\tendLocation?: number;\n\n}\n\nexport interface IFunnelSeriesPrivate extends IPercentSeriesPrivate {\n}\n\n/**\n * Creates a funnel series for use in a [[SlicedChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/} for more info\n * @important\n */\nexport class FunnelSeries extends PercentSeries {\n\n\t/**\n\t * A chart series is attached to.\n\t */\n\tdeclare public chart: SlicedChart | undefined;\n\n\tprotected _tag = \"funnel\";\n\n\tdeclare public _sliceType: FunnelSlice;\n\tdeclare public _labelType: Label;\n\tdeclare public _tickType: Tick;\n\n\tprotected _makeSlices(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.slices.template.get(\"themeTags\", []), [this._tag, \"series\", \"slice\", this.get(\"orientation\")])\n\t\t\t}, [this.slices.template])\n\t\t);\n\t}\n\n\tprotected _makeLabels(): ListTemplate<this[\"_labelType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Label._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.labels.template.get(\"themeTags\", []), [this._tag, \"series\", \"label\", this.get(\"orientation\")])\n\t\t\t}, [this.labels.template])\n\t\t);\n\t}\n\n\tprotected _makeTicks(): ListTemplate<this[\"_tickType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => Tick._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.ticks.template.get(\"themeTags\", []), [this._tag, \"series\", \"tick\", this.get(\"orientation\")])\n\t\t\t}, [this.ticks.template])\n\t\t);\n\t}\n\n\t/**\n\t * A [[ListTemplate]] of all slice links in series.\n\t *\n\t * `links.template` can also be used to configure slice links.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/funnel-series/#Slice_links} for more info\n\t */\n\tpublic readonly links: ListTemplate<this[\"_sliceType\"]> = this.addDisposer(this._makeLinks());\n\n\tprotected _makeLinks(): ListTemplate<this[\"_sliceType\"]> {\n\t\treturn new ListTemplate(\n\t\t\tTemplate.new({}),\n\t\t\t() => FunnelSlice._new(this._root, {\n\t\t\t\tthemeTags: $utils.mergeTags(this.links.template.get(\"themeTags\", []), [this._tag, \"series\", \"link\", this.get(\"orientation\")])\n\t\t\t}, [this.links.template]),\n\t\t);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic makeLink(dataItem: DataItem<this[\"_dataItemSettings\"]>): this[\"_sliceType\"] {\n\t\tconst link = this.slicesContainer.children.push(this.links.make());\n\t\tlink._setDataItem(dataItem);\n\t\tdataItem.set(\"link\", link);\n\t\tthis.links.push(link);\n\t\treturn link;\n\t}\n\n\tpublic static className: string = \"FunnelSeries\";\n\tpublic static classNames: Array<string> = PercentSeries.classNames.concat([FunnelSeries.className]);\n\n\tdeclare public _settings: IFunnelSeriesSettings;\n\tdeclare public _privateSettings: IFunnelSeriesPrivate;\n\tdeclare public _dataItemSettings: IFunnelSeriesDataItem;\n\n\tprotected _total: number = 0;\n\tprotected _count: number = 0;\n\tprotected _nextCoord: number = 0;\n\n\tprotected _opposite: boolean = false;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tconst slicesContainer = this.slicesContainer;\n\t\tslicesContainer.setAll({ isMeasured: true, position: \"relative\", width: percent(100), height: percent(100) });\n\t\tslicesContainer.onPrivate(\"width\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tslicesContainer.onPrivate(\"height\", () => {\n\t\t\tthis.markDirtySize();\n\t\t})\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t}\n\t\telse {\n\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t}\n\t}\n\n\tprotected processDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.processDataItem(dataItem);\n\n\t\tconst slice = this.makeSlice(dataItem);\n\n\t\tslice._setDataItem(dataItem);\n\n\t\tdataItem.set(\"slice\", slice);\n\n\t\tthis.makeLink(dataItem);\n\t\tconst label = this.makeLabel(dataItem);\n\n\t\tlabel.on(\"x\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tlabel.on(\"y\", () => {\n\t\t\tthis._updateTick(dataItem);\n\t\t})\n\n\t\tthis.makeTick(dataItem);\n\n\t\tslice.events.on(\"positionchanged\", () => {\n\t\t\tlabel.markDirty();\n\t\t})\n\n\t\tslice.events.on(\"boundschanged\", () => {\n\t\t\tconst dataItem = slice.dataItem;\n\t\t\tif (dataItem) {\n\t\t\t\tthis._updateTick(dataItem as any);\n\t\t\t}\n\t\t})\n\t}\n\n\n\tpublic _updateChildren() {\n\t\tthis._opposite = false;\n\t\tif (this.children.indexOf(this.labelsContainer) == 0) {\n\t\t\tthis._opposite = true;\n\t\t}\n\n\t\tlet total = 0;\n\t\tlet count = 0;\n\n\t\t$array.each(this.dataItems, (dataItem) => {\n\t\t\tconst value = dataItem.get(\"value\");\n\t\t\tif ($type.isNumber(value)) {\n\t\t\t\tcount++;\n\t\t\t\tif (value > 0) {\n\t\t\t\t\ttotal += Math.abs(dataItem.get(\"valueWorking\", value) / value);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (this.get(\"ignoreZeroValues\", false)) {\n\t\t\t\t\t\tcount--;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\t\t\tcount--;\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\ttotal += 1;\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\n\t\tthis._total = 1 / count * total;\n\t\tthis._count = count;\n\n\t\tif (this.isDirty(\"alignLabels\")) {\n\t\t\tthis._fixLayout();\n\t\t}\n\n\t\tif (this._total > 0 && (this._valuesDirty || this._sizeDirty)) {\n\n\t\t\tconst slicesContainer = this.slicesContainer;\n\n\t\t\tlet h: number;\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\th = slicesContainer.innerHeight();\n\t\t\t}\n\t\t\telse {\n\t\t\t\th = slicesContainer.innerWidth();\n\t\t\t}\n\n\t\t\tthis._nextCoord = this.get(\"startLocation\", 0) * h;\n\n\t\t\tthis.markDirtyBounds();\n\n\t\t\tlet i = 0;\n\t\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\t\tthis.updateLegendValue(dataItem);\n\n\t\t\t\tdataItem.set(\"index\", i);\n\t\t\t\ti++;\n\n\t\t\t\tconst slice = dataItem.get(\"slice\");\n\t\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tconst link = dataItem.get(\"link\");\n\t\t\t\tconst color = dataItem.get(\"fill\");\n\t\t\t\tconst fillPattern = dataItem.get(\"fillPattern\");\n\n\t\t\t\tslice._setDefault(\"fill\", color);\n\t\t\t\tslice._setDefault(\"stroke\", color);\n\t\t\t\tslice._setDefault(\"fillPattern\", fillPattern);\n\t\t\t\tlink._setDefault(\"fill\", color);\n\t\t\t\tlink._setDefault(\"stroke\", color);\n\n\t\t\t\tconst value = dataItem.get(\"value\");\n\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\tif (value == 0 && this.get(\"ignoreZeroValues\")) {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", false);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", false);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", false);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tslice.setPrivate(\"visible\", true);\n\t\t\t\t\t\ttick.setPrivate(\"visible\", true);\n\t\t\t\t\t\tlabel.setPrivate(\"visible\", true);\n\n\t\t\t\t\t\tthis.decorateSlice(dataItem);\n\n\t\t\t\t\t\tif (this.isLast(dataItem)) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", false);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse if (!dataItem.isHidden()) {\n\t\t\t\t\t\t\tlink.setPrivate(\"visible\", true);\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\tsuper._updateChildren();\n\t}\n\n\tprotected _fixLayout() {\n\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst labelsContainer = this.labelsContainer;\n\t\tconst labelsTemplate = this.labels.template;\n\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tlabelsContainer.set(\"position\", \"relative\");\n\t\t\tlabelsContainer.setAll({ isMeasured: true });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tthis.set(\"layout\", this._root.horizontalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: p100, x: p100 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.set(\"layout\", this._root.verticalLayout);\n\t\t\t\tlabelsTemplate.setAll({ centerX: 0, x: 0 });\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tlabelsContainer.setAll({ isMeasured: false, position: \"absolute\" });\n\t\t\tif (orientation == \"vertical\") {\n\t\t\t\tlabelsContainer.setAll({ x: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, x: 0 });\n\t\t\t}\n\t\t\telse {\n\t\t\t\tlabelsContainer.setAll({ y: p50 });\n\t\t\t\tlabelsTemplate.setAll({ centerX: p50, y: 0 });\n\t\t\t}\n\t\t}\n\t\tthis.markDirtySize();\n\t}\n\n\tprotected getNextValue(dataItem: DataItem<this[\"_dataItemSettings\"]>): number {\n\t\tlet index = dataItem.get(\"index\");\n\t\tlet nextValue = dataItem.get(\"valueWorking\", 0);\n\t\tif (index < this.dataItems.length - 1) {\n\t\t\tlet nextItem = this.dataItems[index + 1];\n\t\t\tnextValue = nextItem.get(\"valueWorking\", 0);\n\n\t\t\tif (nextItem.isHidden() || (nextItem.get(\"value\") == 0 && this.get(\"ignoreZeroValues\"))) {\n\t\t\t\treturn this.getNextValue(nextItem);\n\t\t\t}\n\t\t}\n\t\treturn nextValue;\n\t}\n\n\tprotected isLast(dataItem: DataItem<this[\"_dataItemSettings\"]>): boolean {\n\t\tlet index = dataItem.get(\"index\");\n\t\tif (index == this.dataItems.length - 1) {\n\t\t\treturn true;\n\t\t}\n\t\telse {\n\t\t\tfor (let i = index + 1; i < this.dataItems.length; i++) {\n\t\t\t\tif (!this.dataItems[i].isHidden()) {\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn true;\n\t}\n\n\tprotected decorateSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst orientation = this.get(\"orientation\");\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst link = dataItem.get(\"link\");\n\n\t\tconst slicesContainer = this.slicesContainer;\n\n\t\tlet maxWidth = slicesContainer.innerWidth();\n\t\tlet maxHeight = slicesContainer.innerHeight();\n\n\t\tlet maxSize = maxWidth;\n\t\tif (orientation == \"horizontal\") {\n\t\t\tmaxSize = maxHeight;\n\t\t}\n\n\t\tconst nextValue = this.getNextValue(dataItem);\n\t\tconst value = dataItem.get(\"value\", 0);\n\t\tconst workingValue = Math.abs(dataItem.get(\"valueWorking\", value));\n\t\tconst bottomRatio = this.get(\"bottomRatio\", 0);\n\t\tconst valueHigh = this.getPrivate(\"valueHigh\", 0);\n\n\n\t\tlet d = 1;\n\t\tif (value != 0) {\n\t\t\td = workingValue / Math.abs(value);\n\t\t}\n\t\telse {\n\t\t\tif (dataItem.isHidden()) {\n\t\t\t\td = 0.000001;\n\t\t\t}\n\t\t}\n\n\t\tif (this._nextCoord == Infinity) {\n\t\t\tthis._nextCoord = 0;\n\t\t}\n\n\t\tlet topWidth = workingValue / valueHigh * maxSize;\n\t\tlet bottomWidth = (workingValue - (workingValue - nextValue) * bottomRatio) / valueHigh * maxSize;\n\n\t\tslice.setAll({ topWidth, bottomWidth, orientation });\n\t\tlink.setAll({ topWidth: bottomWidth, bottomWidth: (workingValue - (workingValue - nextValue)) / valueHigh * maxSize, orientation });\n\n\t\tconst startLocation = this.get(\"startLocation\", 0);\n\t\tconst endLocation = this.get(\"endLocation\", 1);\n\n\t\tif (orientation == \"vertical\") {\n\n\t\t\tlet linkHeight = link.height() * d;\n\n\t\t\tmaxHeight = maxHeight * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"y\", this._nextCoord);\n\n\t\t\tlet height = Math.min(100000, Math.max(0, maxHeight / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ height, x: maxWidth / 2 });\n\t\t\tlet labelY = this._nextCoord + height / 2;\n\t\t\tlabel.set(\"y\", labelY);\n\n\t\t\tthis._nextCoord += height + linkHeight;\n\t\t\tlink.setAll({ y: this._nextCoord - linkHeight, x: maxWidth / 2 });\n\t\t}\n\t\telse {\n\t\t\tlet linkHeight = link.width() * d;\n\n\t\t\tmaxWidth = maxWidth * (endLocation - startLocation) + linkHeight;\n\n\t\t\tslice.set(\"x\", this._nextCoord);\n\n\t\t\tlet width = Math.min(100000, Math.max(0, maxWidth / this._count * d / this._total - linkHeight));\n\n\t\t\tslice.setAll({ width, y: maxHeight / 2 });\n\t\t\tconst labelX = this._nextCoord + width / 2;\n\t\t\tlabel.set(\"x\", labelX);\n\n\t\t\tthis._nextCoord += width + linkHeight;\n\t\t\tlink.setAll({ x: this._nextCoord - linkHeight, y: maxHeight / 2 });\n\t\t}\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\tdataItem.get(\"link\").hide(duration);\n\t\treturn super.hideDataItem(dataItem, duration)\n\t}\n\n\t/**\n\t * Shows 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 showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tdataItem.get(\"link\").show(duration);\n\t\treturn super.showDataItem(dataItem, duration)\n\t}\n\n\tprotected _updateTick(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tif (this.get(\"alignLabels\")) {\n\t\t\tconst tick = dataItem.get(\"tick\");\n\t\t\tconst label = dataItem.get(\"label\");\n\t\t\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (tick && slice && label) {\n\n\t\t\t\tconst labelsContainer = this.labelsContainer;\n\t\t\t\tconst slicesContainer = this.slicesContainer;\n\t\t\t\tlet tickLocation = tick.get(\"location\", 0.5);\n\n\t\t\t\tconst lcw = labelsContainer.width();\n\t\t\t\tconst lch = labelsContainer.height();\n\n\t\t\t\tconst pl = labelsContainer.get(\"paddingLeft\", 0);\n\t\t\t\tconst pr = labelsContainer.get(\"paddingRight\", 0);\n\t\t\t\tconst pt = labelsContainer.get(\"paddingTop\", 0);\n\t\t\t\tconst pb = labelsContainer.get(\"paddingBottom\", 0);\n\n\t\t\t\tlet p0 = { x: 0, y: 0 };\n\t\t\t\tlet p1 = { x: 0, y: 0 };\n\t\t\t\tlet p2 = { x: 0, y: 0 };\n\n\t\t\t\tif (this._opposite) {\n\t\t\t\t\ttickLocation = 1 - tickLocation;\n\t\t\t\t}\n\n\t\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\t\tp0 = slice.getPoint(tickLocation, 0.5);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.x = lcw;\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = lcw - pl;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.x = slicesContainer.x() + slicesContainer.width();\n\t\t\t\t\t\tp1.y = label.y();\n\n\t\t\t\t\t\tp2.x = p1.x + lcw - label.width() - pr;\n\t\t\t\t\t\tp2.y = p1.y;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tp0 = slice.getPoint(0.5, tickLocation);\n\t\t\t\t\tp0.x += slice.x() + slicesContainer.x();\n\t\t\t\t\tp0.y += slice.y() + slicesContainer.y();\n\n\t\t\t\t\tif (this._opposite) {\n\t\t\t\t\t\tp1.y = lch;\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = lch - pt;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tp1.y = slicesContainer.y() + slicesContainer.height();\n\t\t\t\t\t\tp1.x = label.x();\n\n\t\t\t\t\t\tp2.y = p1.y + lch - label.height() - pb;\n\t\t\t\t\t\tp2.x = p1.x;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\ttick.set(\"points\", [p0, p1, p2]);\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 link = dataItem.get(\"link\");\n\t\tif (link) {\n\t\t\tthis.links.removeValue(link);\n\t\t\tlink.dispose();\n\t\t}\n\t}\n\n\tpublic _positionBullet(bullet: Bullet) {\n\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\tconst slice = dataItem.get(\"slice\");\n\n\t\t\tif (slice) {\n\t\t\t\tconst width = slice.width();\n\t\t\t\tconst height = slice.height();\n\t\t\t\tconst locationX = bullet.get(\"locationX\", 0.5);\n\t\t\t\tconst locationY = bullet.get(\"locationY\", 0.5);\n\n\t\t\t\tlet dx = 0;\n\t\t\t\tlet dy = 0;\n\t\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\t\tdy = height / 2\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tdx = width / 2\n\t\t\t\t}\n\n\t\t\t\tsprite.setAll({ x: slice.x() + width * locationX - dx, y: slice.y() - dy + height * locationY });\n\t\t\t}\n\t\t}\n\t}\n}\n"]}
|
|
@@ -7,84 +7,19 @@ import * as $utils from "../../core/util/Utils";
|
|
|
7
7
|
export class FunnelSlice extends Graphics {
|
|
8
8
|
constructor() {
|
|
9
9
|
super(...arguments);
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
enumerable: true,
|
|
24
|
-
configurable: true,
|
|
25
|
-
writable: true,
|
|
26
|
-
value: 0
|
|
27
|
-
});
|
|
28
|
-
Object.defineProperty(this, "_trx", {
|
|
29
|
-
enumerable: true,
|
|
30
|
-
configurable: true,
|
|
31
|
-
writable: true,
|
|
32
|
-
value: 0
|
|
33
|
-
});
|
|
34
|
-
Object.defineProperty(this, "_try", {
|
|
35
|
-
enumerable: true,
|
|
36
|
-
configurable: true,
|
|
37
|
-
writable: true,
|
|
38
|
-
value: 0
|
|
39
|
-
});
|
|
40
|
-
Object.defineProperty(this, "_blx", {
|
|
41
|
-
enumerable: true,
|
|
42
|
-
configurable: true,
|
|
43
|
-
writable: true,
|
|
44
|
-
value: 0
|
|
45
|
-
});
|
|
46
|
-
Object.defineProperty(this, "_bly", {
|
|
47
|
-
enumerable: true,
|
|
48
|
-
configurable: true,
|
|
49
|
-
writable: true,
|
|
50
|
-
value: 0
|
|
51
|
-
});
|
|
52
|
-
Object.defineProperty(this, "_brx", {
|
|
53
|
-
enumerable: true,
|
|
54
|
-
configurable: true,
|
|
55
|
-
writable: true,
|
|
56
|
-
value: 0
|
|
57
|
-
});
|
|
58
|
-
Object.defineProperty(this, "_bry", {
|
|
59
|
-
enumerable: true,
|
|
60
|
-
configurable: true,
|
|
61
|
-
writable: true,
|
|
62
|
-
value: 0
|
|
63
|
-
});
|
|
64
|
-
Object.defineProperty(this, "_cprx", {
|
|
65
|
-
enumerable: true,
|
|
66
|
-
configurable: true,
|
|
67
|
-
writable: true,
|
|
68
|
-
value: 0
|
|
69
|
-
});
|
|
70
|
-
Object.defineProperty(this, "_cplx", {
|
|
71
|
-
enumerable: true,
|
|
72
|
-
configurable: true,
|
|
73
|
-
writable: true,
|
|
74
|
-
value: 0
|
|
75
|
-
});
|
|
76
|
-
Object.defineProperty(this, "_cpry", {
|
|
77
|
-
enumerable: true,
|
|
78
|
-
configurable: true,
|
|
79
|
-
writable: true,
|
|
80
|
-
value: 0
|
|
81
|
-
});
|
|
82
|
-
Object.defineProperty(this, "_cply", {
|
|
83
|
-
enumerable: true,
|
|
84
|
-
configurable: true,
|
|
85
|
-
writable: true,
|
|
86
|
-
value: 0
|
|
87
|
-
});
|
|
10
|
+
this._projectionDirty = false;
|
|
11
|
+
this._tlx = 0;
|
|
12
|
+
this._tly = 0;
|
|
13
|
+
this._trx = 0;
|
|
14
|
+
this._try = 0;
|
|
15
|
+
this._blx = 0;
|
|
16
|
+
this._bly = 0;
|
|
17
|
+
this._brx = 0;
|
|
18
|
+
this._bry = 0;
|
|
19
|
+
this._cprx = 0;
|
|
20
|
+
this._cplx = 0;
|
|
21
|
+
this._cpry = 0;
|
|
22
|
+
this._cply = 0;
|
|
88
23
|
}
|
|
89
24
|
_afterNew() {
|
|
90
25
|
super._afterNew();
|
|
@@ -217,16 +152,6 @@ export class FunnelSlice extends Graphics {
|
|
|
217
152
|
super._changed();
|
|
218
153
|
}
|
|
219
154
|
}
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
configurable: true,
|
|
223
|
-
writable: true,
|
|
224
|
-
value: "FunnelSlice"
|
|
225
|
-
});
|
|
226
|
-
Object.defineProperty(FunnelSlice, "classNames", {
|
|
227
|
-
enumerable: true,
|
|
228
|
-
configurable: true,
|
|
229
|
-
writable: true,
|
|
230
|
-
value: Graphics.classNames.concat([FunnelSlice.className])
|
|
231
|
-
});
|
|
155
|
+
FunnelSlice.className = "FunnelSlice";
|
|
156
|
+
FunnelSlice.classNames = Graphics.classNames.concat([FunnelSlice.className]);
|
|
232
157
|
//# sourceMappingURL=FunnelSlice.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunnelSlice.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSlice.ts"],"names":[],"mappings":"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AG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK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","sourcesContent":["import type { IPoint } from \"../../core/util/IPoint\";\n\nimport { Graphics, IGraphicsSettings, IGraphicsPrivate } from \"../../core/render/Graphics\";\n\nimport * as $math from \"../../core/util/Math\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IFunnelSliceSettings extends IGraphicsSettings {\n\n\t/**\n\t * Top width in pixels.\n\t */\n\ttopWidth?: number;\n\n\t/**\n\t * Bottom width in pixels.\n\t */\n\tbottomWidth?: number;\n\n\t/**\n\t * Orientation.\n\t */\n\torientation?: \"vertical\" | \"horizontal\";\n\n\t/**\n\t * A distance in pixels the slice should \"puff up\".\n\t *\n\t * Any non-zero value will make sides of the slide curved.\n\t */\n\texpandDistance?: number;\n\n\t/**\n\t * Radius of the top-left corner in pixels.\n\t *\n\t * @since 5.11.2\n\t */\n\tcornerRadiusTL?: number;\n\n\t/**\n\t * Radius of the top-right corner in pixels.\n\t * \n\t * @since 5.11.2\n\t */\n\tcornerRadiusTR?: number;\n\n\t/**\n\t * Radius of the botttom-right corner in pixels.\n\t * \n\t * @since 5.11.2\n\t */\n\tcornerRadiusBR?: number;\n\n\t/**\n\t * Radius of the bottom-left corner in pixels.\n\t * \n\t * @since 5.11.2\n\t */\n\tcornerRadiusBL?: number;\n\n}\n\nexport interface IFunnelSlicePrivate extends IGraphicsPrivate {\n}\n\n/**\n * Draws a slice for [[FunnelSeries]].\n */\nexport class FunnelSlice extends Graphics {\n\tdeclare public _settings: IFunnelSliceSettings;\n\tdeclare public _privateSettings: IFunnelSlicePrivate;\n\n\tpublic static className: string = \"FunnelSlice\";\n\tpublic static classNames: Array<string> = Graphics.classNames.concat([FunnelSlice.className]);\n\tprotected _projectionDirty: boolean = false;\n\n\tprotected _tlx: number = 0;\n\tprotected _tly: number = 0;\n\n\tprotected _trx: number = 0;\n\tprotected _try: number = 0;\n\n\tprotected _blx: number = 0;\n\tprotected _bly: number = 0;\n\n\tprotected _brx: number = 0;\n\tprotected _bry: number = 0;\n\n\tprotected _cprx: number = 0;\n\tprotected _cplx: number = 0;\n\tprotected _cpry: number = 0;\n\tprotected _cply: number = 0;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis.set(\"draw\", (display) => {\n\t\t\tconst w = this.width();\n\t\t\tconst h = this.height();\n\n\t\t\tlet minSide = Math.min(w, h) / 2;\n\n\t\t\tlet crtl = $utils.relativeToValue(this.get(\"cornerRadiusTL\", 0), minSide);\n\t\t\tlet crtr = $utils.relativeToValue(this.get(\"cornerRadiusTR\", 0), minSide);\n\t\t\tlet crbr = $utils.relativeToValue(this.get(\"cornerRadiusBR\", 0), minSide);\n\t\t\tlet crbl = $utils.relativeToValue(this.get(\"cornerRadiusBL\", 0), minSide);\n\n\t\t\tlet trX = this._trx;\n\t\t\tlet trY = this._try;\n\t\t\tlet tlX = this._tlx;\n\t\t\tlet tlY = this._tly;\n\t\t\tlet brX = this._brx;\n\t\t\tlet brY = this._bry;\n\t\t\tlet blX = this._blx;\n\t\t\tlet blY = this._bly;\n\n\t\t\tif (trY == tlY) {\n\t\t\t\ttrY = trY - 0.01;\n\t\t\t}\n\n\t\t\tif (brY == blY) {\n\t\t\t\tbrY = brY - 0.01;\n\t\t\t}\n\n\t\t\tlet tlAngle = $math.getAngle({ x: tlX, y: tlY }, { x: trX, y: trY });\n\t\t\tlet trAngle = $math.getAngle({ x: trX, y: trY }, { x: brX, y: brY });\n\t\t\tlet brAngle = $math.getAngle({ x: brX, y: brY }, { x: blX, y: blY });\n\t\t\tlet blAngle = $math.getAngle({ x: blX, y: blY }, { x: tlX, y: tlY });\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\tcrtl = Math.min(crtl, Math.abs(tlY - trY) / 2);\n\t\t\t\tcrtr = Math.min(crtr, Math.abs(tlY - trY) / 2);\n\t\t\t\tcrbr = Math.min(crbr, Math.abs(blY - brY) / 2);\n\t\t\t\tcrbl = Math.min(crbl, Math.abs(blY - brY) / 2);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tcrtl = Math.min(crtl, Math.abs(tlX - trX) / 2);\n\t\t\t\tcrtr = Math.min(crtr, Math.abs(tlX - trX) / 2);\n\t\t\t\tcrbr = Math.min(crbr, Math.abs(blX - brX) / 2);\n\t\t\t\tcrbl = Math.min(crbl, Math.abs(blX - brX) / 2);\n\t\t\t}\n\n\t\t\tconst tlX1 = tlX - crtl * $math.tan((tlAngle - blAngle) / 2) * $math.cos((blAngle));\n\t\t\tconst tlY1 = tlY - crtl * $math.tan((tlAngle - blAngle) / 2) * $math.sin((blAngle));\n\n\t\t\tconst tlX2 = tlX - crtl * $math.tan((blAngle - tlAngle) / 2) * $math.cos((tlAngle));\n\t\t\tconst tlY2 = tlY - crtl * $math.tan((blAngle - tlAngle) / 2) * $math.sin((tlAngle));\n\n\t\t\tconst trX1 = trX - crtr * $math.tan((trAngle - tlAngle) / 2) * $math.cos((tlAngle));\n\t\t\tconst trY1 = trY - crtr * $math.tan((trAngle - tlAngle) / 2) * $math.sin((tlAngle));\n\n\t\t\tconst trX2 = trX - crtr * $math.tan((tlAngle - trAngle) / 2) * $math.cos((trAngle));\n\t\t\tconst trY2 = trY - crtr * $math.tan((tlAngle - trAngle) / 2) * $math.sin((trAngle));\n\n\t\t\tconst brX1 = brX - crbr * $math.tan((brAngle - trAngle) / 2) * $math.cos((trAngle));\n\t\t\tconst brY1 = brY - crbr * $math.tan((brAngle - trAngle) / 2) * $math.sin((trAngle));\n\n\t\t\tconst brX2 = brX - crbr * $math.tan((trAngle - brAngle) / 2) * $math.cos((brAngle));\n\t\t\tconst brY2 = brY - crbr * $math.tan((trAngle - brAngle) / 2) * $math.sin((brAngle));\n\n\t\t\tconst blX1 = blX - crbl * $math.tan((blAngle - brAngle) / 2) * $math.cos((brAngle));\n\t\t\tconst blY1 = blY - crbl * $math.tan((blAngle - brAngle) / 2) * $math.sin((brAngle));\n\n\t\t\tconst blX2 = blX - crbl * $math.tan((brAngle - blAngle) / 2) * $math.cos((blAngle));\n\t\t\tconst blY2 = blY - crbl * $math.tan((brAngle - blAngle) / 2) * $math.sin((blAngle));\n\n\t\t\tdisplay.moveTo(tlX2, tlY2);\n\t\t\tdisplay.lineTo(trX1, trY1);\n\n\t\t\tdisplay.arcTo(trX, trY, trX2, trY2, crtr);\n\t\t\tdisplay.quadraticCurveTo(this._cprx, this._cpry, brX1, brY1);\n\t\t\tdisplay.arcTo(brX, brY, brX2, brY2, crbr);\n\t\t\tdisplay.lineTo(blX1, blY1);\n\t\t\tdisplay.arcTo(blX, blY, blX2, blY2, crbl);\n\t\t\tdisplay.quadraticCurveTo(this._cplx, this._cply, tlX1, tlY1);\n\t\t\tdisplay.arcTo(tlX, tlY, tlX2, tlY2, crtl);\n\t\t})\n\t}\n\n\tpublic getPoint(locationX: number, locationY: number): IPoint {\n\t\tlet w = this.width();\n\t\tlet h = this.height();\n\n\t\tconst tw = this.get(\"topWidth\", 0);\n\t\tconst bw = this.get(\"bottomWidth\", 0);\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tlet tlx = -tw / 2;\n\t\t\tlet trx = tw / 2;\n\n\t\t\tlet brx = bw / 2;\n\t\t\tlet blx = - bw / 2;\n\n\t\t\tlet mlx = tlx + (blx - tlx) * locationY;\n\t\t\tlet mrx = trx + (brx - trx) * locationY;\n\n\t\t\treturn { x: mlx + (mrx - mlx) * locationX, y: h * locationY };\n\t\t}\n\t\telse {\n\t\t\tlet tlx = -tw / 2;\n\t\t\tlet trx = tw / 2;\n\n\t\t\tlet brx = bw / 2;\n\t\t\tlet blx = - bw / 2;\n\n\t\t\tlet mlx = tlx + (blx - tlx) * locationX;\n\t\t\tlet mrx = trx + (brx - trx) * locationX;\n\n\t\t\treturn { x: w * locationX, y: mlx + (mrx - mlx) * locationY };\n\t\t}\n\n\t}\n\n\tpublic _changed() {\n\n\t\tif (this.isDirty(\"topWidth\") || this.isDirty(\"bottomWidth\") || this.isDirty(\"expandDistance\") || this.isDirty(\"orientation\") || this.isDirty(\"width\") || this.isDirty(\"height\")) {\n\t\t\tconst w = this.width();\n\t\t\tconst h = this.height();\n\t\t\tconst tw = this.get(\"topWidth\", 0);\n\t\t\tconst bw = this.get(\"bottomWidth\", 0);\n\t\t\tthis._clear = true;\n\n\t\t\tlet ed = this.get(\"expandDistance\", 0);\n\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\tthis._tlx = -tw / 2;\n\t\t\t\tthis._tly = 0;\n\n\t\t\t\tthis._trx = tw / 2;\n\t\t\t\tthis._try = 0;\n\n\t\t\t\tthis._brx = bw / 2;\n\t\t\t\tthis._bry = h;\n\n\t\t\t\tthis._blx = -bw / 2;\n\t\t\t\tthis._bly = h;\n\n\t\t\t\tthis._cprx = this._trx + (this._brx - this._trx) / 2 + ed * h,\n\t\t\t\t\tthis._cpry = this._try + 0.5 * h;\n\n\t\t\t\tthis._cplx = this._tlx + (this._blx - this._tlx) / 2 - ed * h;\n\t\t\t\tthis._cply = this._tly + 0.5 * h;\n\t\t\t}\n\t\t\telse {\n\n\t\t\t\tthis._tly = tw / 2;\n\t\t\t\tthis._tlx = 0;\n\n\t\t\t\tthis._try = -tw / 2;\n\t\t\t\tthis._trx = 0;\n\n\t\t\t\tthis._bry = -bw / 2;\n\t\t\t\tthis._brx = w;\n\n\t\t\t\tthis._bly = bw / 2;\n\t\t\t\tthis._blx = w;\n\n\t\t\t\tthis._cpry = this._try + (this._bry - this._try) / 2 - ed * w,\n\t\t\t\t\tthis._cprx = this._trx + 0.5 * w;\n\n\t\t\t\tthis._cply = this._tly + (this._bly - this._tly) / 2 + ed * w;\n\t\t\t\tthis._cplx = this._tlx + 0.5 * w;\n\t\t\t}\n\t\t}\n\t\tsuper._changed();\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"FunnelSlice.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/FunnelSlice.ts"],"names":[],"mappings":"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GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YACpF,MAAM,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC;YAEpF,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3B,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAE3B,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7D,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC1C,OAAO,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;YAC7D,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC,CAAC,CAAA;IACH,CAAC;IAEM,QAAQ,CAAC,SAAiB,EAAE,SAAiB;QACnD,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;QAEtB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACnC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QAEtC,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,UAAU,EAAE;YAC1C,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAClB,IAAI,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;YAEjB,IAAI,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;YACjB,IAAI,GAAG,GAAG,CAAE,EAAE,GAAG,CAAC,CAAC;YAEnB,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;YACxC,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;YAExC,OAAO,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC;SAC9D;aACI;YACJ,IAAI,GAAG,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;YAClB,IAAI,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;YAEjB,IAAI,GAAG,GAAG,EAAE,GAAG,CAAC,CAAC;YACjB,IAAI,GAAG,GAAG,CAAE,EAAE,GAAG,CAAC,CAAC;YAEnB,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;YACxC,IAAI,GAAG,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,SAAS,CAAC;YAExC,OAAO,EAAE,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,CAAC,EAAE,GAAG,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,SAAS,EAAE,CAAC;SAC9D;IAEF,CAAC;IAEM,QAAQ;QAEd,IAAI,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;YAChL,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;YACvB,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;YACxB,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACnC,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACtC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;YAEnB,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC;YAEvC,IAAI,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,UAAU,EAAE;gBAC1C,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC;oBAC5D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;gBAElC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC9D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;aACjC;iBACI;gBAEJ,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,IAAI,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;gBACpB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,IAAI,GAAG,EAAE,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC;gBAEd,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC;oBAC5D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;gBAElC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC9D,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC;aACjC;SACD;QACD,KAAK,CAAC,QAAQ,EAAE,CAAC;IAClB,CAAC;;AAhMa,qBAAS,GAAW,aAAa,CAAC;AAClC,sBAAU,GAAkB,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC","sourcesContent":["import type { IPoint } from \"../../core/util/IPoint\";\n\nimport { Graphics, IGraphicsSettings, IGraphicsPrivate } from \"../../core/render/Graphics\";\n\nimport * as $math from \"../../core/util/Math\";\nimport * as $utils from \"../../core/util/Utils\";\n\nexport interface IFunnelSliceSettings extends IGraphicsSettings {\n\n\t/**\n\t * Top width in pixels.\n\t */\n\ttopWidth?: number;\n\n\t/**\n\t * Bottom width in pixels.\n\t */\n\tbottomWidth?: number;\n\n\t/**\n\t * Orientation.\n\t */\n\torientation?: \"vertical\" | \"horizontal\";\n\n\t/**\n\t * A distance in pixels the slice should \"puff up\".\n\t *\n\t * Any non-zero value will make sides of the slide curved.\n\t */\n\texpandDistance?: number;\n\n\t/**\n\t * Radius of the top-left corner in pixels.\n\t *\n\t * @since 5.11.2\n\t */\n\tcornerRadiusTL?: number;\n\n\t/**\n\t * Radius of the top-right corner in pixels.\n\t * \n\t * @since 5.11.2\n\t */\n\tcornerRadiusTR?: number;\n\n\t/**\n\t * Radius of the botttom-right corner in pixels.\n\t * \n\t * @since 5.11.2\n\t */\n\tcornerRadiusBR?: number;\n\n\t/**\n\t * Radius of the bottom-left corner in pixels.\n\t * \n\t * @since 5.11.2\n\t */\n\tcornerRadiusBL?: number;\n\n}\n\nexport interface IFunnelSlicePrivate extends IGraphicsPrivate {\n}\n\n/**\n * Draws a slice for [[FunnelSeries]].\n */\nexport class FunnelSlice extends Graphics {\n\tdeclare public _settings: IFunnelSliceSettings;\n\tdeclare public _privateSettings: IFunnelSlicePrivate;\n\n\tpublic static className: string = \"FunnelSlice\";\n\tpublic static classNames: Array<string> = Graphics.classNames.concat([FunnelSlice.className]);\n\tprotected _projectionDirty: boolean = false;\n\n\tprotected _tlx: number = 0;\n\tprotected _tly: number = 0;\n\n\tprotected _trx: number = 0;\n\tprotected _try: number = 0;\n\n\tprotected _blx: number = 0;\n\tprotected _bly: number = 0;\n\n\tprotected _brx: number = 0;\n\tprotected _bry: number = 0;\n\n\tprotected _cprx: number = 0;\n\tprotected _cplx: number = 0;\n\tprotected _cpry: number = 0;\n\tprotected _cply: number = 0;\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis.set(\"draw\", (display) => {\n\t\t\tconst w = this.width();\n\t\t\tconst h = this.height();\n\n\t\t\tlet minSide = Math.min(w, h) / 2;\n\n\t\t\tlet crtl = $utils.relativeToValue(this.get(\"cornerRadiusTL\", 0), minSide);\n\t\t\tlet crtr = $utils.relativeToValue(this.get(\"cornerRadiusTR\", 0), minSide);\n\t\t\tlet crbr = $utils.relativeToValue(this.get(\"cornerRadiusBR\", 0), minSide);\n\t\t\tlet crbl = $utils.relativeToValue(this.get(\"cornerRadiusBL\", 0), minSide);\n\n\t\t\tlet trX = this._trx;\n\t\t\tlet trY = this._try;\n\t\t\tlet tlX = this._tlx;\n\t\t\tlet tlY = this._tly;\n\t\t\tlet brX = this._brx;\n\t\t\tlet brY = this._bry;\n\t\t\tlet blX = this._blx;\n\t\t\tlet blY = this._bly;\n\n\t\t\tif (trY == tlY) {\n\t\t\t\ttrY = trY - 0.01;\n\t\t\t}\n\n\t\t\tif (brY == blY) {\n\t\t\t\tbrY = brY - 0.01;\n\t\t\t}\n\n\t\t\tlet tlAngle = $math.getAngle({ x: tlX, y: tlY }, { x: trX, y: trY });\n\t\t\tlet trAngle = $math.getAngle({ x: trX, y: trY }, { x: brX, y: brY });\n\t\t\tlet brAngle = $math.getAngle({ x: brX, y: brY }, { x: blX, y: blY });\n\t\t\tlet blAngle = $math.getAngle({ x: blX, y: blY }, { x: tlX, y: tlY });\n\n\t\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\t\tcrtl = Math.min(crtl, Math.abs(tlY - trY) / 2);\n\t\t\t\tcrtr = Math.min(crtr, Math.abs(tlY - trY) / 2);\n\t\t\t\tcrbr = Math.min(crbr, Math.abs(blY - brY) / 2);\n\t\t\t\tcrbl = Math.min(crbl, Math.abs(blY - brY) / 2);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tcrtl = Math.min(crtl, Math.abs(tlX - trX) / 2);\n\t\t\t\tcrtr = Math.min(crtr, Math.abs(tlX - trX) / 2);\n\t\t\t\tcrbr = Math.min(crbr, Math.abs(blX - brX) / 2);\n\t\t\t\tcrbl = Math.min(crbl, Math.abs(blX - brX) / 2);\n\t\t\t}\n\n\t\t\tconst tlX1 = tlX - crtl * $math.tan((tlAngle - blAngle) / 2) * $math.cos((blAngle));\n\t\t\tconst tlY1 = tlY - crtl * $math.tan((tlAngle - blAngle) / 2) * $math.sin((blAngle));\n\n\t\t\tconst tlX2 = tlX - crtl * $math.tan((blAngle - tlAngle) / 2) * $math.cos((tlAngle));\n\t\t\tconst tlY2 = tlY - crtl * $math.tan((blAngle - tlAngle) / 2) * $math.sin((tlAngle));\n\n\t\t\tconst trX1 = trX - crtr * $math.tan((trAngle - tlAngle) / 2) * $math.cos((tlAngle));\n\t\t\tconst trY1 = trY - crtr * $math.tan((trAngle - tlAngle) / 2) * $math.sin((tlAngle));\n\n\t\t\tconst trX2 = trX - crtr * $math.tan((tlAngle - trAngle) / 2) * $math.cos((trAngle));\n\t\t\tconst trY2 = trY - crtr * $math.tan((tlAngle - trAngle) / 2) * $math.sin((trAngle));\n\n\t\t\tconst brX1 = brX - crbr * $math.tan((brAngle - trAngle) / 2) * $math.cos((trAngle));\n\t\t\tconst brY1 = brY - crbr * $math.tan((brAngle - trAngle) / 2) * $math.sin((trAngle));\n\n\t\t\tconst brX2 = brX - crbr * $math.tan((trAngle - brAngle) / 2) * $math.cos((brAngle));\n\t\t\tconst brY2 = brY - crbr * $math.tan((trAngle - brAngle) / 2) * $math.sin((brAngle));\n\n\t\t\tconst blX1 = blX - crbl * $math.tan((blAngle - brAngle) / 2) * $math.cos((brAngle));\n\t\t\tconst blY1 = blY - crbl * $math.tan((blAngle - brAngle) / 2) * $math.sin((brAngle));\n\n\t\t\tconst blX2 = blX - crbl * $math.tan((brAngle - blAngle) / 2) * $math.cos((blAngle));\n\t\t\tconst blY2 = blY - crbl * $math.tan((brAngle - blAngle) / 2) * $math.sin((blAngle));\n\n\t\t\tdisplay.moveTo(tlX2, tlY2);\n\t\t\tdisplay.lineTo(trX1, trY1);\n\n\t\t\tdisplay.arcTo(trX, trY, trX2, trY2, crtr);\n\t\t\tdisplay.quadraticCurveTo(this._cprx, this._cpry, brX1, brY1);\n\t\t\tdisplay.arcTo(brX, brY, brX2, brY2, crbr);\n\t\t\tdisplay.lineTo(blX1, blY1);\n\t\t\tdisplay.arcTo(blX, blY, blX2, blY2, crbl);\n\t\t\tdisplay.quadraticCurveTo(this._cplx, this._cply, tlX1, tlY1);\n\t\t\tdisplay.arcTo(tlX, tlY, tlX2, tlY2, crtl);\n\t\t})\n\t}\n\n\tpublic getPoint(locationX: number, locationY: number): IPoint {\n\t\tlet w = this.width();\n\t\tlet h = this.height();\n\n\t\tconst tw = this.get(\"topWidth\", 0);\n\t\tconst bw = this.get(\"bottomWidth\", 0);\n\n\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\tlet tlx = -tw / 2;\n\t\t\tlet trx = tw / 2;\n\n\t\t\tlet brx = bw / 2;\n\t\t\tlet blx = - bw / 2;\n\n\t\t\tlet mlx = tlx + (blx - tlx) * locationY;\n\t\t\tlet mrx = trx + (brx - trx) * locationY;\n\n\t\t\treturn { x: mlx + (mrx - mlx) * locationX, y: h * locationY };\n\t\t}\n\t\telse {\n\t\t\tlet tlx = -tw / 2;\n\t\t\tlet trx = tw / 2;\n\n\t\t\tlet brx = bw / 2;\n\t\t\tlet blx = - bw / 2;\n\n\t\t\tlet mlx = tlx + (blx - tlx) * locationX;\n\t\t\tlet mrx = trx + (brx - trx) * locationX;\n\n\t\t\treturn { x: w * locationX, y: mlx + (mrx - mlx) * locationY };\n\t\t}\n\n\t}\n\n\tpublic _changed() {\n\n\t\tif (this.isDirty(\"topWidth\") || this.isDirty(\"bottomWidth\") || this.isDirty(\"expandDistance\") || this.isDirty(\"orientation\") || this.isDirty(\"width\") || this.isDirty(\"height\")) {\n\t\t\tconst w = this.width();\n\t\t\tconst h = this.height();\n\t\t\tconst tw = this.get(\"topWidth\", 0);\n\t\t\tconst bw = this.get(\"bottomWidth\", 0);\n\t\t\tthis._clear = true;\n\n\t\t\tlet ed = this.get(\"expandDistance\", 0);\n\n\t\t\tif (this.get(\"orientation\") == \"vertical\") {\n\t\t\t\tthis._tlx = -tw / 2;\n\t\t\t\tthis._tly = 0;\n\n\t\t\t\tthis._trx = tw / 2;\n\t\t\t\tthis._try = 0;\n\n\t\t\t\tthis._brx = bw / 2;\n\t\t\t\tthis._bry = h;\n\n\t\t\t\tthis._blx = -bw / 2;\n\t\t\t\tthis._bly = h;\n\n\t\t\t\tthis._cprx = this._trx + (this._brx - this._trx) / 2 + ed * h,\n\t\t\t\t\tthis._cpry = this._try + 0.5 * h;\n\n\t\t\t\tthis._cplx = this._tlx + (this._blx - this._tlx) / 2 - ed * h;\n\t\t\t\tthis._cply = this._tly + 0.5 * h;\n\t\t\t}\n\t\t\telse {\n\n\t\t\t\tthis._tly = tw / 2;\n\t\t\t\tthis._tlx = 0;\n\n\t\t\t\tthis._try = -tw / 2;\n\t\t\t\tthis._trx = 0;\n\n\t\t\t\tthis._bry = -bw / 2;\n\t\t\t\tthis._brx = w;\n\n\t\t\t\tthis._bly = bw / 2;\n\t\t\t\tthis._blx = w;\n\n\t\t\t\tthis._cpry = this._try + (this._bry - this._try) / 2 - ed * w,\n\t\t\t\t\tthis._cprx = this._trx + 0.5 * w;\n\n\t\t\t\tthis._cply = this._tly + (this._bly - this._tly) / 2 + ed * w;\n\t\t\t\tthis._cplx = this._tlx + 0.5 * w;\n\t\t\t}\n\t\t}\n\t\tsuper._changed();\n\t}\n}\n"]}
|
|
@@ -10,29 +10,14 @@ import { p100, p50 } from "../../core/util/Percent";
|
|
|
10
10
|
export class PictorialStackedSeries extends PyramidSeries {
|
|
11
11
|
constructor() {
|
|
12
12
|
super(...arguments);
|
|
13
|
-
|
|
14
|
-
enumerable: true,
|
|
15
|
-
configurable: true,
|
|
16
|
-
writable: true,
|
|
17
|
-
value: "pictorial"
|
|
18
|
-
});
|
|
13
|
+
this._tag = "pictorial";
|
|
19
14
|
/**
|
|
20
15
|
* A [[Graphics]] element to used as a mask (shape) for the series.
|
|
21
16
|
*
|
|
22
17
|
* This element is read-only. To modify the mask/shape, use the `svgPath` setting.
|
|
23
18
|
*/
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
configurable: true,
|
|
27
|
-
writable: true,
|
|
28
|
-
value: Graphics.new(this._root, { position: "absolute", x: p50, y: p50, centerX: p50, centerY: p50 })
|
|
29
|
-
});
|
|
30
|
-
Object.defineProperty(this, "seriesGraphics", {
|
|
31
|
-
enumerable: true,
|
|
32
|
-
configurable: true,
|
|
33
|
-
writable: true,
|
|
34
|
-
value: this.slicesContainer.children.push(Graphics.new(this._root, { themeTags: ["pictorial", "background"], position: "absolute", x: p50, y: p50, centerX: p50, centerY: p50 }))
|
|
35
|
-
});
|
|
19
|
+
this.seriesMask = Graphics.new(this._root, { position: "absolute", x: p50, y: p50, centerX: p50, centerY: p50 });
|
|
20
|
+
this.seriesGraphics = this.slicesContainer.children.push(Graphics.new(this._root, { themeTags: ["pictorial", "background"], position: "absolute", x: p50, y: p50, centerX: p50, centerY: p50 }));
|
|
36
21
|
}
|
|
37
22
|
_afterNew() {
|
|
38
23
|
super._afterNew();
|
|
@@ -76,16 +61,6 @@ export class PictorialStackedSeries extends PyramidSeries {
|
|
|
76
61
|
this._updateScale();
|
|
77
62
|
}
|
|
78
63
|
}
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
configurable: true,
|
|
82
|
-
writable: true,
|
|
83
|
-
value: "PictorialStackedSeries"
|
|
84
|
-
});
|
|
85
|
-
Object.defineProperty(PictorialStackedSeries, "classNames", {
|
|
86
|
-
enumerable: true,
|
|
87
|
-
configurable: true,
|
|
88
|
-
writable: true,
|
|
89
|
-
value: PyramidSeries.classNames.concat([PictorialStackedSeries.className])
|
|
90
|
-
});
|
|
64
|
+
PictorialStackedSeries.className = "PictorialStackedSeries";
|
|
65
|
+
PictorialStackedSeries.classNames = PyramidSeries.classNames.concat([PictorialStackedSeries.className]);
|
|
91
66
|
//# sourceMappingURL=PictorialStackedSeries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PictorialStackedSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/PictorialStackedSeries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAyE,MAAM,iBAAiB,CAAC;AACvH,OAAO,EAAE,QAAQ,EAAE,MAAM,4BAA4B,CAAC;AACtD,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,yBAAyB,CAAA;AAqBnD;;;;;GAKG;AACH,MAAM,OAAO,sBAAuB,SAAQ,aAAa;IAAzD;;
|
|
1
|
+
{"version":3,"file":"PictorialStackedSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/PictorialStackedSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import { PyramidSeries, IPyramidSeriesSettings, IPyramidSeriesDataItem, IPyramidSeriesPrivate } from \"./PyramidSeries\";\nimport { Graphics } from \"../../core/render/Graphics\";\nimport { p100, p50 } from \"../../core/util/Percent\"\n\n\nexport interface IPictorialStackedSeriesDataItem extends IPyramidSeriesDataItem {\n\n}\n\nexport interface IPictorialStackedSeriesSettings extends IPyramidSeriesSettings {\n\n\t/**\n\t * An SVG path that will define the shape of the pictorial series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pictorial-stacked-series/#Shape_of_the_series} for more info\n\t */\n\tsvgPath?: string;\n\n}\n\nexport interface IPictorialStackedSeriesPrivate extends IPyramidSeriesPrivate {\n}\n\n/**\n * Creates a pictorial series for use in a [[SlicedChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pictorial-stacked-series/} for more info\n * @important\n */\nexport class PictorialStackedSeries extends PyramidSeries {\n\tprotected _tag = \"pictorial\";\n\n\tpublic static className: string = \"PictorialStackedSeries\";\n\tpublic static classNames: Array<string> = PyramidSeries.classNames.concat([PictorialStackedSeries.className]);\n\n\tdeclare public _settings: IPictorialStackedSeriesSettings;\n\tdeclare public _privateSettings: IPictorialStackedSeriesPrivate;\n\tdeclare public _dataItemSettings: IPictorialStackedSeriesDataItem;\n\n\t/**\n\t * A [[Graphics]] element to used as a mask (shape) for the series.\n\t *\n\t * This element is read-only. To modify the mask/shape, use the `svgPath` setting.\n\t */\n\tpublic readonly seriesMask: Graphics = Graphics.new(this._root, { position: \"absolute\", x: p50, y: p50, centerX: p50, centerY: p50 });\n\n\tpublic readonly seriesGraphics: Graphics = this.slicesContainer.children.push(Graphics.new(this._root, { themeTags: [\"pictorial\", \"background\"], position: \"absolute\", x: p50, y: p50, centerX: p50, centerY: p50 }));\n\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\t\tthis.set(\"topWidth\", p100);\n\t\tthis.set(\"bottomWidth\", p100);\n\t\tthis.set(\"valueIs\", \"height\");\n\t\tthis.slicesContainer.set(\"mask\", this.seriesMask);\n\t}\n\n\tprotected _updateScale() {\n\t\tlet slicesContainer = this.slicesContainer;\n\n\t\tlet w = slicesContainer.innerWidth();\n\t\tlet h = slicesContainer.innerHeight();\n\n\t\tlet seriesMask = this.seriesMask;\n\t\tlet seriesGraphics = this.seriesGraphics;\n\t\tlet scale = seriesMask.get(\"scale\", 1);\n\n\t\tconst bounds = seriesMask.localBounds();\n\n\t\tlet mw = bounds.right - bounds.left;\n\t\tlet mh = bounds.bottom - bounds.top;\n\t\tif (this.get(\"orientation\") == \"horizontal\") {\n\t\t\tscale = w / mw;\n\t\t}\n\t\telse {\n\t\t\tscale = h / mh;\n\t\t}\n\t\tif (scale != Infinity && scale != NaN) {\n\t\t\tseriesMask.set(\"scale\", scale);\n\t\t\tseriesMask.set(\"x\", w / 2);\n\t\t\tseriesMask.set(\"y\", h / 2);\n\n\t\t\tseriesGraphics.set(\"scale\", scale);\n\t\t\tseriesGraphics.set(\"x\", w / 2);\n\t\t\tseriesGraphics.set(\"y\", h / 2);\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tif (this.isDirty(\"svgPath\")) {\n\t\t\tconst svgPath = this.get(\"svgPath\");\n\t\t\tthis.seriesMask.set(\"svgPath\", svgPath);\n\t\t\tthis.seriesGraphics.set(\"svgPath\", svgPath);\n\t\t}\n\n\t\tthis._updateScale();\n\t}\n\n}\n"]}
|
|
@@ -11,18 +11,7 @@ import * as $type from "../../core/util/Type";
|
|
|
11
11
|
export class PyramidSeries extends FunnelSeries {
|
|
12
12
|
constructor() {
|
|
13
13
|
super(...arguments);
|
|
14
|
-
|
|
15
|
-
enumerable: true,
|
|
16
|
-
configurable: true,
|
|
17
|
-
writable: true,
|
|
18
|
-
value: "pyramid"
|
|
19
|
-
});
|
|
20
|
-
Object.defineProperty(this, "_nextSize", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
configurable: true,
|
|
23
|
-
writable: true,
|
|
24
|
-
value: void 0
|
|
25
|
-
});
|
|
14
|
+
this._tag = "pyramid";
|
|
26
15
|
}
|
|
27
16
|
_prepareChildren() {
|
|
28
17
|
super._prepareChildren();
|
|
@@ -121,16 +110,6 @@ export class PyramidSeries extends FunnelSeries {
|
|
|
121
110
|
this._nextCoord += sliceHeight + linkHeight;
|
|
122
111
|
}
|
|
123
112
|
}
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
configurable: true,
|
|
127
|
-
writable: true,
|
|
128
|
-
value: "PyramidSeries"
|
|
129
|
-
});
|
|
130
|
-
Object.defineProperty(PyramidSeries, "classNames", {
|
|
131
|
-
enumerable: true,
|
|
132
|
-
configurable: true,
|
|
133
|
-
writable: true,
|
|
134
|
-
value: FunnelSeries.classNames.concat([PyramidSeries.className])
|
|
135
|
-
});
|
|
113
|
+
PyramidSeries.className = "PyramidSeries";
|
|
114
|
+
PyramidSeries.classNames = FunnelSeries.classNames.concat([PyramidSeries.className]);
|
|
136
115
|
//# sourceMappingURL=PyramidSeries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PyramidSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/PyramidSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\n\nimport { FunnelSeries, IFunnelSeriesSettings, IFunnelSeriesDataItem, IFunnelSeriesPrivate } from \"./FunnelSeries\";\nimport { Percent, p100 } from \"../../core/util/Percent\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IPyramidSeriesDataItem extends IFunnelSeriesDataItem {\n\n}\n\nexport interface IPyramidSeriesSettings extends IFunnelSeriesSettings {\n\n\t/**\n\t * The width of the tip of the pyramid.\n\t *\n\t * Can either be a fixed pixel value or percent relative to the space\n\t * available to the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/#Tip_and_base} for more info\n\t * @default 0\n\t */\n\ttopWidth?: number | Percent;\n\n\t/**\n\t * The width of the base of the pyramid.\n\t *\n\t * Can either be a fixed pixel value or percent relative to the space\n\t * available to the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/#Tip_and_base} for more info\n\t * @default 0\n\t */\n\tbottomWidth?: number | Percent;\n\n\t/**\n\t * Determines calculation mechanism for the slice area based on value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/#Slice_size} for more info\n\t * @default \"area\"\n\t */\n\tvalueIs?: \"area\" | \"height\";\n\n}\n\nexport interface IPyramidSeriesPrivate extends IFunnelSeriesPrivate {\n}\n\n/**\n * Creates a pyramid series for use in a [[SlicedChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/} for more info\n * @important\n */\nexport class PyramidSeries extends FunnelSeries {\n\tprotected _tag = \"pyramid\";\n\n\tpublic static className: string = \"PyramidSeries\";\n\tpublic static classNames: Array<string> = FunnelSeries.classNames.concat([PyramidSeries.className]);\n\n\tdeclare public _settings: IPyramidSeriesSettings;\n\tdeclare public _privateSettings: IPyramidSeriesPrivate;\n\tdeclare public _dataItemSettings: IPyramidSeriesDataItem;\n\n\tprotected _nextSize: number | undefined;\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tthis._nextSize = undefined;\n\t}\n\n\tprotected decorateSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst slicesContainer = this.slicesContainer;\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst link = dataItem.get(\"link\");\n\t\tconst valueIs = this.get(\"valueIs\", \"area\");\n\n\t\tconst sum = this.getPrivate(\"valueAbsoluteSum\", 0);\n\n\t\tif (sum == 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst startLocation = this.get(\"startLocation\", 0);\n\t\tconst endLocation = this.get(\"endLocation\", 1);\n\n\t\tconst tw = this.get(\"topWidth\", 0);\n\t\tconst bw = this.get(\"bottomWidth\", p100);\n\n\t\tconst workingValue = Math.abs(dataItem.get(\"valueWorking\", 0));\n\t\tconst value = dataItem.get(\"value\", 0);\n\n\t\tlet sliceHeight: number;\n\t\tlet sliceBottomWidth: number;\n\n\t\tlet pyramidHeight = slicesContainer.innerHeight();\n\t\tlet pyramidWidth = slicesContainer.innerWidth();\n\t\tlet linkWidth = link.width();\n\t\tlet linkHeight = link.height();\n\n\t\tif (orientation == \"horizontal\") {\n\t\t\t[pyramidWidth, pyramidHeight] = [pyramidHeight, pyramidWidth];\n\t\t\t[linkWidth, linkHeight] = [linkHeight, linkWidth];\n\t\t}\n\n\t\tconst center = pyramidWidth / 2;\n\n\t\tlet d = 1;\n\t\tif (value != 0) {\n\t\t\td = workingValue / Math.abs(value);\n\t\t}\n\t\telse {\n\t\t\tif (dataItem.isHidden()) {\n\t\t\t\td = 0.000001;\n\t\t\t}\n\t\t}\n\n\t\tlinkHeight *= d;\n\n\t\tpyramidHeight = pyramidHeight * (endLocation - startLocation) - linkHeight * (this._count * this._total - 1);\n\n\t\tlet topWidth = $utils.relativeToValue(tw, pyramidWidth);\n\n\t\tif (!$type.isNumber(this._nextSize)) {\n\t\t\tthis._nextSize = topWidth;\n\t\t}\n\n\t\tlet bottomWidth = $utils.relativeToValue(bw, pyramidWidth);\n\t\tlet sliceTopWidth = this._nextSize;\n\n\t\tlet angle = Math.atan2(pyramidHeight, topWidth - bottomWidth);\n\t\tlet c = Math.tan(Math.PI / 2 - angle);\n\t\tif (c == 0) {\n\t\t\tc = 0.00000001;\n\t\t}\n\n\t\tif (valueIs == \"area\") {\n\t\t\tlet totalSquare = (topWidth + bottomWidth) / 2 * pyramidHeight;\n\t\t\tlet square = totalSquare * workingValue / sum;\n\n\t\t\tlet s = Math.abs(sliceTopWidth * sliceTopWidth - 2 * square * c);\n\n\t\t\tsliceHeight = (sliceTopWidth - Math.sqrt(s)) / c;\n\n\t\t\tif (sliceHeight > 0) {\n\t\t\t\tsliceBottomWidth = (2 * square - sliceHeight * sliceTopWidth) / sliceHeight;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tsliceBottomWidth = sliceTopWidth;\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tsliceHeight = pyramidHeight * workingValue / sum;\n\t\t\tsliceBottomWidth = sliceTopWidth - sliceHeight * c;\n\t\t}\n\n\t\tlet labelCoord = this._nextCoord + sliceHeight / 2;\n\t\tlet sliceX = center;\n\t\tlet sliceY = this._nextCoord;\n\n\t\tlet linkX = center;\n\t\tlet linkY = sliceY + sliceHeight;\n\n\t\tif (orientation == \"vertical\") {\n\t\t\tlabel.set(\"y\", labelCoord);\n\t\t\tif (label.get(\"opacity\") > 0) {\n\t\t\t\tthis._rLabels.push({ label: label, y: labelCoord });\n\t\t\t}\n\t\t\tslice.set(\"height\", sliceHeight);\n\t\t}\n\t\telse {\n\t\t\tlabel.set(\"x\", labelCoord);\n\t\t\tif (label.get(\"opacity\") > 0) {\n\t\t\t\tthis._hLabels.push({ label: label, y: labelCoord });\n\t\t\t}\n\t\t\t[sliceX, sliceY] = [sliceY, sliceX];\n\t\t\t[linkX, linkY] = [linkY, linkX];\n\n\t\t\tslice.set(\"width\", sliceHeight);\n\t\t}\n\n\t\tslice.setAll({ orientation, bottomWidth: sliceBottomWidth, topWidth: sliceTopWidth, x: sliceX, y: sliceY });\n\t\tlink.setAll({ orientation, x: linkX, y: linkY, topWidth: sliceBottomWidth, bottomWidth: sliceBottomWidth });\n\n\t\tthis._nextSize = sliceBottomWidth;\n\t\tthis._nextCoord += sliceHeight + linkHeight;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"PyramidSeries.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/PyramidSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../core/render/Component\";\n\nimport { FunnelSeries, IFunnelSeriesSettings, IFunnelSeriesDataItem, IFunnelSeriesPrivate } from \"./FunnelSeries\";\nimport { Percent, p100 } from \"../../core/util/Percent\";\n\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $type from \"../../core/util/Type\";\n\nexport interface IPyramidSeriesDataItem extends IFunnelSeriesDataItem {\n\n}\n\nexport interface IPyramidSeriesSettings extends IFunnelSeriesSettings {\n\n\t/**\n\t * The width of the tip of the pyramid.\n\t *\n\t * Can either be a fixed pixel value or percent relative to the space\n\t * available to the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/#Tip_and_base} for more info\n\t * @default 0\n\t */\n\ttopWidth?: number | Percent;\n\n\t/**\n\t * The width of the base of the pyramid.\n\t *\n\t * Can either be a fixed pixel value or percent relative to the space\n\t * available to the series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/#Tip_and_base} for more info\n\t * @default 0\n\t */\n\tbottomWidth?: number | Percent;\n\n\t/**\n\t * Determines calculation mechanism for the slice area based on value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/#Slice_size} for more info\n\t * @default \"area\"\n\t */\n\tvalueIs?: \"area\" | \"height\";\n\n}\n\nexport interface IPyramidSeriesPrivate extends IFunnelSeriesPrivate {\n}\n\n/**\n * Creates a pyramid series for use in a [[SlicedChart]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/sliced-chart/pyramid-series/} for more info\n * @important\n */\nexport class PyramidSeries extends FunnelSeries {\n\tprotected _tag = \"pyramid\";\n\n\tpublic static className: string = \"PyramidSeries\";\n\tpublic static classNames: Array<string> = FunnelSeries.classNames.concat([PyramidSeries.className]);\n\n\tdeclare public _settings: IPyramidSeriesSettings;\n\tdeclare public _privateSettings: IPyramidSeriesPrivate;\n\tdeclare public _dataItemSettings: IPyramidSeriesDataItem;\n\n\tprotected _nextSize: number | undefined;\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\t\tthis._nextSize = undefined;\n\t}\n\n\tprotected decorateSlice(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tconst orientation = this.get(\"orientation\");\n\t\tconst slicesContainer = this.slicesContainer;\n\n\t\tconst slice = dataItem.get(\"slice\");\n\t\tconst label = dataItem.get(\"label\");\n\t\tconst link = dataItem.get(\"link\");\n\t\tconst valueIs = this.get(\"valueIs\", \"area\");\n\n\t\tconst sum = this.getPrivate(\"valueAbsoluteSum\", 0);\n\n\t\tif (sum == 0) {\n\t\t\treturn;\n\t\t}\n\n\t\tconst startLocation = this.get(\"startLocation\", 0);\n\t\tconst endLocation = this.get(\"endLocation\", 1);\n\n\t\tconst tw = this.get(\"topWidth\", 0);\n\t\tconst bw = this.get(\"bottomWidth\", p100);\n\n\t\tconst workingValue = Math.abs(dataItem.get(\"valueWorking\", 0));\n\t\tconst value = dataItem.get(\"value\", 0);\n\n\t\tlet sliceHeight: number;\n\t\tlet sliceBottomWidth: number;\n\n\t\tlet pyramidHeight = slicesContainer.innerHeight();\n\t\tlet pyramidWidth = slicesContainer.innerWidth();\n\t\tlet linkWidth = link.width();\n\t\tlet linkHeight = link.height();\n\n\t\tif (orientation == \"horizontal\") {\n\t\t\t[pyramidWidth, pyramidHeight] = [pyramidHeight, pyramidWidth];\n\t\t\t[linkWidth, linkHeight] = [linkHeight, linkWidth];\n\t\t}\n\n\t\tconst center = pyramidWidth / 2;\n\n\t\tlet d = 1;\n\t\tif (value != 0) {\n\t\t\td = workingValue / Math.abs(value);\n\t\t}\n\t\telse {\n\t\t\tif (dataItem.isHidden()) {\n\t\t\t\td = 0.000001;\n\t\t\t}\n\t\t}\n\n\t\tlinkHeight *= d;\n\n\t\tpyramidHeight = pyramidHeight * (endLocation - startLocation) - linkHeight * (this._count * this._total - 1);\n\n\t\tlet topWidth = $utils.relativeToValue(tw, pyramidWidth);\n\n\t\tif (!$type.isNumber(this._nextSize)) {\n\t\t\tthis._nextSize = topWidth;\n\t\t}\n\n\t\tlet bottomWidth = $utils.relativeToValue(bw, pyramidWidth);\n\t\tlet sliceTopWidth = this._nextSize;\n\n\t\tlet angle = Math.atan2(pyramidHeight, topWidth - bottomWidth);\n\t\tlet c = Math.tan(Math.PI / 2 - angle);\n\t\tif (c == 0) {\n\t\t\tc = 0.00000001;\n\t\t}\n\n\t\tif (valueIs == \"area\") {\n\t\t\tlet totalSquare = (topWidth + bottomWidth) / 2 * pyramidHeight;\n\t\t\tlet square = totalSquare * workingValue / sum;\n\n\t\t\tlet s = Math.abs(sliceTopWidth * sliceTopWidth - 2 * square * c);\n\n\t\t\tsliceHeight = (sliceTopWidth - Math.sqrt(s)) / c;\n\n\t\t\tif (sliceHeight > 0) {\n\t\t\t\tsliceBottomWidth = (2 * square - sliceHeight * sliceTopWidth) / sliceHeight;\n\t\t\t}\n\t\t\telse {\n\t\t\t\tsliceBottomWidth = sliceTopWidth;\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tsliceHeight = pyramidHeight * workingValue / sum;\n\t\t\tsliceBottomWidth = sliceTopWidth - sliceHeight * c;\n\t\t}\n\n\t\tlet labelCoord = this._nextCoord + sliceHeight / 2;\n\t\tlet sliceX = center;\n\t\tlet sliceY = this._nextCoord;\n\n\t\tlet linkX = center;\n\t\tlet linkY = sliceY + sliceHeight;\n\n\t\tif (orientation == \"vertical\") {\n\t\t\tlabel.set(\"y\", labelCoord);\n\t\t\tif (label.get(\"opacity\") > 0) {\n\t\t\t\tthis._rLabels.push({ label: label, y: labelCoord });\n\t\t\t}\n\t\t\tslice.set(\"height\", sliceHeight);\n\t\t}\n\t\telse {\n\t\t\tlabel.set(\"x\", labelCoord);\n\t\t\tif (label.get(\"opacity\") > 0) {\n\t\t\t\tthis._hLabels.push({ label: label, y: labelCoord });\n\t\t\t}\n\t\t\t[sliceX, sliceY] = [sliceY, sliceX];\n\t\t\t[linkX, linkY] = [linkY, linkX];\n\n\t\t\tslice.set(\"width\", sliceHeight);\n\t\t}\n\n\t\tslice.setAll({ orientation, bottomWidth: sliceBottomWidth, topWidth: sliceTopWidth, x: sliceX, y: sliceY });\n\t\tlink.setAll({ orientation, x: linkX, y: linkY, topWidth: sliceBottomWidth, bottomWidth: sliceBottomWidth });\n\n\t\tthis._nextSize = sliceBottomWidth;\n\t\tthis._nextCoord += sliceHeight + linkHeight;\n\t}\n}\n"]}
|
|
@@ -11,16 +11,6 @@ export class SlicedChart extends PercentChart {
|
|
|
11
11
|
this.seriesContainer.setAll({ isMeasured: true, layout: this._root.horizontalLayout });
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
configurable: true,
|
|
17
|
-
writable: true,
|
|
18
|
-
value: "SlicedChart"
|
|
19
|
-
});
|
|
20
|
-
Object.defineProperty(SlicedChart, "classNames", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
configurable: true,
|
|
23
|
-
writable: true,
|
|
24
|
-
value: PercentChart.classNames.concat([SlicedChart.className])
|
|
25
|
-
});
|
|
14
|
+
SlicedChart.className = "SlicedChart";
|
|
15
|
+
SlicedChart.classNames = PercentChart.classNames.concat([SlicedChart.className]);
|
|
26
16
|
//# sourceMappingURL=SlicedChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SlicedChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/SlicedChart.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAA+C,MAAM,yBAAyB,CAAC;AASpG;;;;;GAKG;AACH,MAAM,OAAO,WAAY,SAAQ,YAAY;IAClC,SAAS;QAClB,KAAK,CAAC,SAAS,EAAE,CAAC;QAElB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACxF,CAAC;;
|
|
1
|
+
{"version":3,"file":"SlicedChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/funnel/SlicedChart.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAA+C,MAAM,yBAAyB,CAAC;AASpG;;;;;GAKG;AACH,MAAM,OAAO,WAAY,SAAQ,YAAY;IAClC,SAAS;QAClB,KAAK,CAAC,SAAS,EAAE,CAAC;QAElB,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC,CAAC;IACxF,CAAC;;AAEa,qBAAS,GAAW,aAAa,CAAC;AAClC,sBAAU,GAAkB,YAAY,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC,CAAC","sourcesContent":["import type { PercentSeries } from \"../percent/PercentSeries\";\n\nimport { PercentChart, IPercentChartPrivate, IPercentChartSettings } from \"../percent/PercentChart\";\n\n\nexport interface ISlicedChartSettings extends IPercentChartSettings {\n}\n\nexport interface ISlicedChartPrivate extends IPercentChartPrivate {\n}\n\n/**\n * Creates a sliced chart for use with [[FunnelSeries]], [[PyramidSeries]], or [[PictorialStackedSeries]].\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/percent-charts/pie-chart/} for more info\n * @important\n */\nexport class SlicedChart extends PercentChart {\n\tprotected _afterNew() {\n\t\tsuper._afterNew();\n\n\t\tthis.seriesContainer.setAll({ isMeasured: true, layout: this._root.horizontalLayout });\n\t}\n\n\tpublic static className: string = \"SlicedChart\";\n\tpublic static classNames: Array<string> = PercentChart.classNames.concat([SlicedChart.className]);\n\n\tdeclare public _settings: ISlicedChartSettings;\n\tdeclare public _privateSettings: ISlicedChartPrivate;\n\tdeclare public _seriesType: PercentSeries;\n}\n"]}
|