@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":"ResizeSensor.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/ResizeSensor.ts"],"names":[],"mappings":"AAAA,cAAc,CAAA,MAAM;AAGpB,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,MAAM,MAAM,SAAS,CAAC;AAelC;;GAEG;AACH,MAAM,MAAM;IAIX;
|
|
1
|
+
{"version":3,"file":"ResizeSensor.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/ResizeSensor.ts"],"names":[],"mappings":"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","sourcesContent":["/** @ignore *//** */\n\nimport type { IDisposer } from \"./Disposer\";\nimport * as $array from \"./Array\";\nimport * as $utils from \"./Utils\";\n\n/**\n * @ignore\n */\ninterface Sensor {\n\taddTarget(target: Element, callback: () => void): void;\n\tremoveTarget(target: Element): void;\n}\n\n/**\n * @ignore\n */\ndeclare const ResizeObserver: any;\n\n/**\n * @ignore\n */\nclass Native implements Sensor {\n\tprivate _observer: any;\n\tprivate _targets: Array<{ target: Element, callback: () => void }> = [];\n\n\tconstructor() {\n\t\tthis._observer = new ResizeObserver((entries: Array<any>) => {\n\t\t\t$array.each(entries, (entry) => {\n\t\t\t\t$array.each(this._targets, (x) => {\n\t\t\t\t\tif (x.target === entry.target) {\n\t\t\t\t\t\tx.callback();\n\t\t\t\t\t}\n\t\t\t\t});\n\t\t\t});\n\t\t});\n\t}\n\n\taddTarget(target: Element, callback: () => void) {\n\t\tthis._observer.observe(target, { box: \"border-box\" });\n\t\tthis._targets.push({ target, callback });\n\t}\n\n\tremoveTarget(target: Element) {\n\t\tthis._observer.unobserve(target);\n\n\t\t$array.keepIf(this._targets, (x) => {\n\t\t\treturn x.target !== target;\n\t\t});\n\t}\n}\n\n/**\n * @ignore\n */\ninterface ClientBounds {\n\twidth: number,\n\theight: number,\n\tleft: number,\n\tright: number,\n\ttop: number,\n\tbottom: number,\n\tx: number,\n\ty: number\n}\n\n\n/**\n * @ignore\n */\nclass Raf implements Sensor {\n\tpublic static delay: number = 200;\n\n\tprivate _timer: number | null = null;\n\tprivate _targets: Array<{ target: Element, callback: () => void, size: ClientRect | DOMRect | ClientBounds }> = [];\n\n\taddTarget(target: Element, callback: () => void) {\n\t\tif (this._timer === null) {\n\t\t\tlet lastTime: number | null = null;\n\n\t\t\tconst loop = () => {\n\t\t\t\tconst currentTime = Date.now();\n\n\t\t\t\tif (lastTime === null || currentTime > (lastTime + Raf.delay)) {\n\t\t\t\t\tlastTime = currentTime;\n\n\t\t\t\t\t$array.each(this._targets, (x) => {\n\t\t\t\t\t\tlet newSize = x.target.getBoundingClientRect();\n\n\t\t\t\t\t\tif (newSize.width !== x.size.width || newSize.height !== x.size.height) {\n\t\t\t\t\t\t\tx.size = newSize;\n\t\t\t\t\t\t\tx.callback();\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (this._targets.length === 0) {\n\t\t\t\t\tthis._timer = null;\n\n\t\t\t\t} else {\n\t\t\t\t\tthis._timer = requestAnimationFrame(loop);\n\t\t\t\t}\n\t\t\t};\n\n\t\t\tthis._timer = requestAnimationFrame(loop);\n\t\t}\n\n\t\t// We start off with fake bounds so that sensor always kicks in\n\t\tlet size = { width: 0, height: 0, left: 0, right: 0, top: 0, bottom: 0, x: 0, y: 0 };\n\t\tthis._targets.push({ target, callback, size });\n\t}\n\n\tremoveTarget(target: Element) {\n\t\t$array.keepIf(this._targets, (x) => {\n\t\t\treturn x.target !== target;\n\t\t});\n\n\t\tif (this._targets.length === 0) {\n\t\t\tif (this._timer !== null) {\n\t\t\t\tcancelAnimationFrame(this._timer);\n\t\t\t\tthis._timer = null;\n\t\t\t}\n\t\t}\n\t}\n}\n\n\n/**\n * @ignore\n */\nlet observer: Sensor | null = null;\n\n/**\n * @ignore\n */\nfunction makeSensor(): Sensor {\n\tif (observer === null) {\n\t\tif (typeof ResizeObserver !== \"undefined\") {\n\t\t\tobserver = new Native();\n\n\t\t} else {\n\t\t\tobserver = new Raf();\n\t\t}\n\t}\n\n\treturn observer;\n}\n\n/**\n * @ignore\n */\nexport class ResizeSensor implements IDisposer {\n\tprivate _sensor: Sensor;\n\tprivate _element: Element;\n\tprivate _listener: IDisposer;\n\tprivate _disposed: boolean = false;\n\n\tconstructor(element: Element, callback: () => void) {\n\t\tthis._sensor = makeSensor();\n\t\tthis._element = element;\n\n\t\t// This is needed because we need to know when the window is zoomed\n\t\tthis._listener = $utils.onZoom(callback);\n\n\t\tthis._sensor.addTarget(element, callback);\n\t}\n\n\tpublic isDisposed() {\n\t\treturn this._disposed;\n\t}\n\n\tpublic dispose() {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\t\t\tthis._sensor.removeTarget(this._element);\n\t\t\tthis._listener.dispose();\n\t\t}\n\t}\n\n\tpublic get sensor(): Sensor {\n\t\treturn this._sensor;\n\t}\n}\n"]}
|
|
@@ -7,24 +7,7 @@ import * as $ease from "./Ease";
|
|
|
7
7
|
*/
|
|
8
8
|
export class State {
|
|
9
9
|
constructor(entity, settings) {
|
|
10
|
-
|
|
11
|
-
enumerable: true,
|
|
12
|
-
configurable: true,
|
|
13
|
-
writable: true,
|
|
14
|
-
value: void 0
|
|
15
|
-
});
|
|
16
|
-
Object.defineProperty(this, "_settings", {
|
|
17
|
-
enumerable: true,
|
|
18
|
-
configurable: true,
|
|
19
|
-
writable: true,
|
|
20
|
-
value: void 0
|
|
21
|
-
});
|
|
22
|
-
Object.defineProperty(this, "_userSettings", {
|
|
23
|
-
enumerable: true,
|
|
24
|
-
configurable: true,
|
|
25
|
-
writable: true,
|
|
26
|
-
value: {}
|
|
27
|
-
});
|
|
10
|
+
this._userSettings = {};
|
|
28
11
|
this._entity = entity;
|
|
29
12
|
this._settings = settings;
|
|
30
13
|
$object.each(settings, (key) => {
|
|
@@ -161,18 +144,7 @@ export class State {
|
|
|
161
144
|
*/
|
|
162
145
|
export class States {
|
|
163
146
|
constructor(entity) {
|
|
164
|
-
|
|
165
|
-
enumerable: true,
|
|
166
|
-
configurable: true,
|
|
167
|
-
writable: true,
|
|
168
|
-
value: {}
|
|
169
|
-
});
|
|
170
|
-
Object.defineProperty(this, "_entity", {
|
|
171
|
-
enumerable: true,
|
|
172
|
-
configurable: true,
|
|
173
|
-
writable: true,
|
|
174
|
-
value: void 0
|
|
175
|
-
});
|
|
147
|
+
this._states = {};
|
|
176
148
|
this._entity = entity;
|
|
177
149
|
}
|
|
178
150
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"States.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/States.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Entity, Dirty } from \"./Entity\";\nimport type { Animations } from \"./Animation\";\nimport * as $object from \"./Object\";\nimport * as $ease from \"./Ease\";\n\n/**\n * An object representing a collection of setting values to apply as required.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/states/} for more info\n */\nexport class State<E extends Entity> {\n\tprivate _entity: E;\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\tpublic _userSettings: Dirty<E[\"_settings\"]> = {};\n\n\tconstructor(entity: E, settings: Partial<E[\"_settings\"]>) {\n\t\tthis._entity = entity;\n\t\tthis._settings = settings;\n\n\t\t$object.each(settings, (key) => {\n\t\t\tthis._userSettings[key] = true;\n\t\t});\n\t}\n\n\t/**\n\t * Returns settings value for the specified `key`.\n\t *\n\t * If there is no value, `fallback` is returned instead (if set).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/} for more info\n\t * @param key Settings value\n\t * @param callback Fallback value\n\t * @return Value\n\t */\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic setRaw<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._settings[key] = value;\n\t}\n\n\t/**\n\t * Sets a setting `value` for the specified `key` to be set when the state\n\t * is applied.\n\t *\n\t * @param key Setting key\n\t * @param value Setting value\n\t * @return Setting value\n\t */\n\tpublic set<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._userSettings[key] = true;\n\t\tthis.setRaw(key, value);\n\t}\n\n\t/**\n\t * Removes a setting value for the specified `key`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/} for more info\n\t * @param key Setting key\n\t */\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key) {\n\t\tdelete this._userSettings[key];\n\t\tdelete this._settings[key];\n\t}\n\n\t/**\n\t * Sets multiple settings at once.\n\t *\n\t * `settings` must be an object with key: value pairs.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/} for more info\n\t * @param settings Settings\n\t */\n\tpublic setAll(settings: this[\"_settings\"]) {\n\t\t$object.entries(settings).forEach(([key, value]) => {\n\t\t\tthis.set(key, value);\n\t\t});\n\t}\n\n\tprivate _eachSetting<Key extends keyof E[\"_settings\"], Value extends E[\"_settings\"][Key]>(f: (key: Key, value: Value) => void): void {\n\t\t$object.each(this._settings, f as any);\n\t}\n\n\t/**\n\t * Applies the state to the target element.\n\t *\n\t * All setting values are set immediately.\n\t */\n\tpublic apply() {\n\t\tconst seen: Dirty<E[\"_settings\"]> = {};\n\n\t\tseen[\"stateAnimationEasing\"] = true;\n\t\tseen[\"stateAnimationDuration\"] = true;\n\n\t\tconst defaultState = this._entity.states.lookup(\"default\")!;\n\n\t\tthis._eachSetting((key, value) => {\n\t\t\tif (!seen[key]) {\n\t\t\t\tseen[key] = true;\n\n\t\t\t\t// save values to default state\n\t\t\t\tif (this !== defaultState) {\n\t\t\t\t\tif (!(key in defaultState._settings)) {\n\t\t\t\t\t\tdefaultState._settings[key] = this._entity.get(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tthis._entity.set(key, value);\n\t\t\t}\n\t\t});\n\t}\n\n\n\n\t/**\n\t * Applies the state to the target element.\n\t *\n\t * Returns an object representing all [[Animation]] objects created for\n\t * each setting key transition.\n\t *\n\t * @return Animations\n\t */\n\tpublic applyAnimate(duration?: number): Animations<E[\"_settings\"]> {\n\n\t\tif (duration == null) {\n\t\t\tduration = this._settings.stateAnimationDuration;\n\t\t}\n\t\tif (duration == null) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", this._entity.get(\"stateAnimationDuration\", 0));\n\t\t}\n\n\t\tlet easing = this._settings.stateAnimationEasing;\n\t\tif (easing == null) {\n\t\t\teasing = this.get(\"stateAnimationEasing\", this._entity.get(\"stateAnimationEasing\", $ease.cubic));\n\t\t}\n\n\t\tconst defaultState = this._entity.states.lookup(\"default\")!;\n\n\t\tconst seen: Dirty<E[\"_settings\"]> = {};\n\n\t\tseen[\"stateAnimationEasing\"] = true;\n\t\tseen[\"stateAnimationDuration\"] = true;\n\n\t\tconst animations: Animations<E[\"_settings\"]> = {};\n\n\t\tthis._eachSetting((key, value) => {\n\t\t\tif (!seen[key]) {\n\t\t\t\tseen[key] = true;\n\n\t\t\t\t// save values to default state\n\t\t\t\tif (this != defaultState) {\n\t\t\t\t\tif (!(key in defaultState._settings)) {\n\t\t\t\t\t\tdefaultState._settings[key] = this._entity.get(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst animation = this._entity.animate({\n\t\t\t\t\tkey: key,\n\t\t\t\t\tto: value,\n\t\t\t\t\tduration: duration!,\n\t\t\t\t\teasing: easing\n\t\t\t\t});\n\n\t\t\t\tif (animation) {\n\t\t\t\t\tanimations[key] = animation;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn animations;\n\t}\n}\n\n/**\n * Collection of [[State]] objects for an element.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/states/} for more info\n */\nexport class States<E extends Entity> {\n\tprivate _states: { [key: string]: State<E> } = {};\n\tprivate _entity: E;\n\n\tconstructor(entity: E) {\n\t\tthis._entity = entity;\n\t}\n\n\t/**\n\t * Checks if a state by `name` exists. Returns it there is one.\n\t *\n\t * @param name State name\n\t * @return State\n\t */\n\tpublic lookup(name: string): State<E> | undefined {\n\t\treturn this._states[name];\n\t}\n\n\t/**\n\t * Sets supplied `settings` on a state by the `name`.\n\t *\n\t * If such state does not yet exists, it is created.\n\t *\n\t * @param name State name\n\t * @param settings Settings\n\t * @return New State\n\t */\n\tpublic create(name: string, settings: Partial<E[\"_settings\"]>): State<E> {\n\t\tconst state = this._states[name];\n\n\t\tif (state) {\n\t\t\tstate.setAll(settings);\n\t\t\treturn state;\n\n\t\t} else {\n\t\t\tconst state = new State(this._entity, settings);\n\t\t\tthis._states[name] = state;\n\t\t\treturn state;\n\t\t}\n\t}\n\n\t/**\n\t * Removes the state called `name`.\n\t *\n\t * @param name State name\n\t */\n\tpublic remove(name: string): void {\n\t\tdelete this._states[name];\n\t}\n\n\t/**\n\t * Applies a named state to the target element.\n\t *\n\t * @param newState State name\n\t */\n\tpublic apply(newState: string) {\n\t\tconst state = this._states[newState];\n\n\t\tif (state) {\n\t\t\tstate.apply();\n\t\t}\n\n\t\tthis._entity._applyState(newState);\n\t}\n\n\t/**\n\t * Applies a named state to the element.\n\t *\n\t * Returns an object representing all [[Animation]] objects created for\n\t * each setting key transition.\n\t *\n\t * @param newState State name\n\t * @return Animations\n\t */\n\tpublic applyAnimate(newState: string, duration?: number): Animations<E[\"_settings\"]> | undefined {\n\t\tlet animations;\n\t\tconst state = this._states[newState];\n\n\t\tif (state) {\n\t\t\tanimations = state.applyAnimate(duration);\n\t\t}\n\n\t\tthis._entity._applyStateAnimated(newState, duration);\n\t\treturn animations;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"States.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/States.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Entity, Dirty } from \"./Entity\";\nimport type { Animations } from \"./Animation\";\nimport * as $object from \"./Object\";\nimport * as $ease from \"./Ease\";\n\n/**\n * An object representing a collection of setting values to apply as required.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/states/} for more info\n */\nexport class State<E extends Entity> {\n\tprivate _entity: E;\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\tpublic _userSettings: Dirty<E[\"_settings\"]> = {};\n\n\tconstructor(entity: E, settings: Partial<E[\"_settings\"]>) {\n\t\tthis._entity = entity;\n\t\tthis._settings = settings;\n\n\t\t$object.each(settings, (key) => {\n\t\t\tthis._userSettings[key] = true;\n\t\t});\n\t}\n\n\t/**\n\t * Returns settings value for the specified `key`.\n\t *\n\t * If there is no value, `fallback` is returned instead (if set).\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/} for more info\n\t * @param key Settings value\n\t * @param callback Fallback value\n\t * @return Value\n\t */\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic setRaw<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._settings[key] = value;\n\t}\n\n\t/**\n\t * Sets a setting `value` for the specified `key` to be set when the state\n\t * is applied.\n\t *\n\t * @param key Setting key\n\t * @param value Setting value\n\t * @return Setting value\n\t */\n\tpublic set<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._userSettings[key] = true;\n\t\tthis.setRaw(key, value);\n\t}\n\n\t/**\n\t * Removes a setting value for the specified `key`.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/} for more info\n\t * @param key Setting key\n\t */\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key) {\n\t\tdelete this._userSettings[key];\n\t\tdelete this._settings[key];\n\t}\n\n\t/**\n\t * Sets multiple settings at once.\n\t *\n\t * `settings` must be an object with key: value pairs.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/} for more info\n\t * @param settings Settings\n\t */\n\tpublic setAll(settings: this[\"_settings\"]) {\n\t\t$object.entries(settings).forEach(([key, value]) => {\n\t\t\tthis.set(key, value);\n\t\t});\n\t}\n\n\tprivate _eachSetting<Key extends keyof E[\"_settings\"], Value extends E[\"_settings\"][Key]>(f: (key: Key, value: Value) => void): void {\n\t\t$object.each(this._settings, f as any);\n\t}\n\n\t/**\n\t * Applies the state to the target element.\n\t *\n\t * All setting values are set immediately.\n\t */\n\tpublic apply() {\n\t\tconst seen: Dirty<E[\"_settings\"]> = {};\n\n\t\tseen[\"stateAnimationEasing\"] = true;\n\t\tseen[\"stateAnimationDuration\"] = true;\n\n\t\tconst defaultState = this._entity.states.lookup(\"default\")!;\n\n\t\tthis._eachSetting((key, value) => {\n\t\t\tif (!seen[key]) {\n\t\t\t\tseen[key] = true;\n\n\t\t\t\t// save values to default state\n\t\t\t\tif (this !== defaultState) {\n\t\t\t\t\tif (!(key in defaultState._settings)) {\n\t\t\t\t\t\tdefaultState._settings[key] = this._entity.get(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tthis._entity.set(key, value);\n\t\t\t}\n\t\t});\n\t}\n\n\n\n\t/**\n\t * Applies the state to the target element.\n\t *\n\t * Returns an object representing all [[Animation]] objects created for\n\t * each setting key transition.\n\t *\n\t * @return Animations\n\t */\n\tpublic applyAnimate(duration?: number): Animations<E[\"_settings\"]> {\n\n\t\tif (duration == null) {\n\t\t\tduration = this._settings.stateAnimationDuration;\n\t\t}\n\t\tif (duration == null) {\n\t\t\tduration = this.get(\"stateAnimationDuration\", this._entity.get(\"stateAnimationDuration\", 0));\n\t\t}\n\n\t\tlet easing = this._settings.stateAnimationEasing;\n\t\tif (easing == null) {\n\t\t\teasing = this.get(\"stateAnimationEasing\", this._entity.get(\"stateAnimationEasing\", $ease.cubic));\n\t\t}\n\n\t\tconst defaultState = this._entity.states.lookup(\"default\")!;\n\n\t\tconst seen: Dirty<E[\"_settings\"]> = {};\n\n\t\tseen[\"stateAnimationEasing\"] = true;\n\t\tseen[\"stateAnimationDuration\"] = true;\n\n\t\tconst animations: Animations<E[\"_settings\"]> = {};\n\n\t\tthis._eachSetting((key, value) => {\n\t\t\tif (!seen[key]) {\n\t\t\t\tseen[key] = true;\n\n\t\t\t\t// save values to default state\n\t\t\t\tif (this != defaultState) {\n\t\t\t\t\tif (!(key in defaultState._settings)) {\n\t\t\t\t\t\tdefaultState._settings[key] = this._entity.get(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst animation = this._entity.animate({\n\t\t\t\t\tkey: key,\n\t\t\t\t\tto: value,\n\t\t\t\t\tduration: duration!,\n\t\t\t\t\teasing: easing\n\t\t\t\t});\n\n\t\t\t\tif (animation) {\n\t\t\t\t\tanimations[key] = animation;\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\n\t\treturn animations;\n\t}\n}\n\n/**\n * Collection of [[State]] objects for an element.\n *\n * @see {@link https://www.amcharts.com/docs/v5/concepts/settings/states/} for more info\n */\nexport class States<E extends Entity> {\n\tprivate _states: { [key: string]: State<E> } = {};\n\tprivate _entity: E;\n\n\tconstructor(entity: E) {\n\t\tthis._entity = entity;\n\t}\n\n\t/**\n\t * Checks if a state by `name` exists. Returns it there is one.\n\t *\n\t * @param name State name\n\t * @return State\n\t */\n\tpublic lookup(name: string): State<E> | undefined {\n\t\treturn this._states[name];\n\t}\n\n\t/**\n\t * Sets supplied `settings` on a state by the `name`.\n\t *\n\t * If such state does not yet exists, it is created.\n\t *\n\t * @param name State name\n\t * @param settings Settings\n\t * @return New State\n\t */\n\tpublic create(name: string, settings: Partial<E[\"_settings\"]>): State<E> {\n\t\tconst state = this._states[name];\n\n\t\tif (state) {\n\t\t\tstate.setAll(settings);\n\t\t\treturn state;\n\n\t\t} else {\n\t\t\tconst state = new State(this._entity, settings);\n\t\t\tthis._states[name] = state;\n\t\t\treturn state;\n\t\t}\n\t}\n\n\t/**\n\t * Removes the state called `name`.\n\t *\n\t * @param name State name\n\t */\n\tpublic remove(name: string): void {\n\t\tdelete this._states[name];\n\t}\n\n\t/**\n\t * Applies a named state to the target element.\n\t *\n\t * @param newState State name\n\t */\n\tpublic apply(newState: string) {\n\t\tconst state = this._states[newState];\n\n\t\tif (state) {\n\t\t\tstate.apply();\n\t\t}\n\n\t\tthis._entity._applyState(newState);\n\t}\n\n\t/**\n\t * Applies a named state to the element.\n\t *\n\t * Returns an object representing all [[Animation]] objects created for\n\t * each setting key transition.\n\t *\n\t * @param newState State name\n\t * @return Animations\n\t */\n\tpublic applyAnimate(newState: string, duration?: number): Animations<E[\"_settings\"]> | undefined {\n\t\tlet animations;\n\t\tconst state = this._states[newState];\n\n\t\tif (state) {\n\t\t\tanimations = state.applyAnimate(duration);\n\t\t}\n\n\t\tthis._entity._applyStateAnimated(newState, duration);\n\t\treturn animations;\n\t}\n}\n"]}
|
|
@@ -13,24 +13,6 @@ function disposeSettings(settings) {
|
|
|
13
13
|
}
|
|
14
14
|
export class TemplateState {
|
|
15
15
|
constructor(name, template, settings) {
|
|
16
|
-
Object.defineProperty(this, "_settings", {
|
|
17
|
-
enumerable: true,
|
|
18
|
-
configurable: true,
|
|
19
|
-
writable: true,
|
|
20
|
-
value: void 0
|
|
21
|
-
});
|
|
22
|
-
Object.defineProperty(this, "_name", {
|
|
23
|
-
enumerable: true,
|
|
24
|
-
configurable: true,
|
|
25
|
-
writable: true,
|
|
26
|
-
value: void 0
|
|
27
|
-
});
|
|
28
|
-
Object.defineProperty(this, "_template", {
|
|
29
|
-
enumerable: true,
|
|
30
|
-
configurable: true,
|
|
31
|
-
writable: true,
|
|
32
|
-
value: void 0
|
|
33
|
-
});
|
|
34
16
|
this._name = name;
|
|
35
17
|
this._template = template;
|
|
36
18
|
this._settings = settings;
|
|
@@ -74,18 +56,7 @@ export class TemplateState {
|
|
|
74
56
|
}
|
|
75
57
|
export class TemplateStates {
|
|
76
58
|
constructor(template) {
|
|
77
|
-
|
|
78
|
-
enumerable: true,
|
|
79
|
-
configurable: true,
|
|
80
|
-
writable: true,
|
|
81
|
-
value: void 0
|
|
82
|
-
});
|
|
83
|
-
Object.defineProperty(this, "_states", {
|
|
84
|
-
enumerable: true,
|
|
85
|
-
configurable: true,
|
|
86
|
-
writable: true,
|
|
87
|
-
value: {}
|
|
88
|
-
});
|
|
59
|
+
this._states = {};
|
|
89
60
|
this._template = template;
|
|
90
61
|
}
|
|
91
62
|
_dispose() {
|
|
@@ -126,12 +97,7 @@ export class TemplateStates {
|
|
|
126
97
|
}
|
|
127
98
|
export class TemplateAdapters {
|
|
128
99
|
constructor() {
|
|
129
|
-
|
|
130
|
-
enumerable: true,
|
|
131
|
-
configurable: true,
|
|
132
|
-
writable: true,
|
|
133
|
-
value: {}
|
|
134
|
-
});
|
|
100
|
+
this._callbacks = {};
|
|
135
101
|
}
|
|
136
102
|
add(key, callback) {
|
|
137
103
|
let callbacks = this._callbacks[key];
|
|
@@ -165,67 +131,15 @@ export class TemplateAdapters {
|
|
|
165
131
|
// TODO maybe extend from Properties ?
|
|
166
132
|
export class Template {
|
|
167
133
|
constructor(settings, isReal) {
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
configurable: true,
|
|
171
|
-
writable: true,
|
|
172
|
-
value: false
|
|
173
|
-
});
|
|
174
|
-
Object.defineProperty(this, "_settings", {
|
|
175
|
-
enumerable: true,
|
|
176
|
-
configurable: true,
|
|
177
|
-
writable: true,
|
|
178
|
-
value: void 0
|
|
179
|
-
});
|
|
180
|
-
Object.defineProperty(this, "_privateSettings", {
|
|
181
|
-
enumerable: true,
|
|
182
|
-
configurable: true,
|
|
183
|
-
writable: true,
|
|
184
|
-
value: {}
|
|
185
|
-
});
|
|
134
|
+
this._disposed = false;
|
|
135
|
+
this._privateSettings = {};
|
|
186
136
|
// TODO code duplication with Properties
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
Object.defineProperty(this, "_privateSettingEvents", {
|
|
194
|
-
enumerable: true,
|
|
195
|
-
configurable: true,
|
|
196
|
-
writable: true,
|
|
197
|
-
value: {}
|
|
198
|
-
});
|
|
199
|
-
Object.defineProperty(this, "_entities", {
|
|
200
|
-
enumerable: true,
|
|
201
|
-
configurable: true,
|
|
202
|
-
writable: true,
|
|
203
|
-
value: []
|
|
204
|
-
});
|
|
205
|
-
Object.defineProperty(this, "states", {
|
|
206
|
-
enumerable: true,
|
|
207
|
-
configurable: true,
|
|
208
|
-
writable: true,
|
|
209
|
-
value: new TemplateStates(this)
|
|
210
|
-
});
|
|
211
|
-
Object.defineProperty(this, "adapters", {
|
|
212
|
-
enumerable: true,
|
|
213
|
-
configurable: true,
|
|
214
|
-
writable: true,
|
|
215
|
-
value: new TemplateAdapters()
|
|
216
|
-
});
|
|
217
|
-
Object.defineProperty(this, "events", {
|
|
218
|
-
enumerable: true,
|
|
219
|
-
configurable: true,
|
|
220
|
-
writable: true,
|
|
221
|
-
value: new EventDispatcher()
|
|
222
|
-
});
|
|
223
|
-
Object.defineProperty(this, "setup", {
|
|
224
|
-
enumerable: true,
|
|
225
|
-
configurable: true,
|
|
226
|
-
writable: true,
|
|
227
|
-
value: void 0
|
|
228
|
-
});
|
|
137
|
+
this._settingEvents = {};
|
|
138
|
+
this._privateSettingEvents = {};
|
|
139
|
+
this._entities = [];
|
|
140
|
+
this.states = new TemplateStates(this);
|
|
141
|
+
this.adapters = new TemplateAdapters();
|
|
142
|
+
this.events = new EventDispatcher();
|
|
229
143
|
if (!isReal) {
|
|
230
144
|
throw new Error("You cannot use `new Class()`, instead use `Class.new()`");
|
|
231
145
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Template.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Template.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Entity, Dirty } from \"./Entity\";\nimport type { State } from \"./States\";\nimport { EventDispatcher, Events } from \"./EventDispatcher\";\nimport { IDisposer, Disposer, MultiDisposer } from \"./Disposer\";\nimport * as $array from \"./Array\";\nimport * as $object from \"./Object\";\nimport * as $type from \"./Type\";\n\n\nfunction disposeSettings(settings: object) {\n\t$object.each(settings, (_key, value) => {\n\t\tif ($type.isObject(value) && typeof (value as any).dispose === \"function\") {\n\t\t\t(value as any).enableDispose = true;\n\t\t\t(value as any).dispose();\n\t\t}\n\t});\n}\n\n\nexport class TemplateState<E extends Entity> {\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\n\tprivate _name: string;\n\tprivate _template: Template<E>;\n\n\tconstructor(name: string, template: Template<E>, settings: Partial<E[\"_settings\"]>) {\n\t\tthis._name = name;\n\t\tthis._template = template;\n\t\tthis._settings = settings;\n\t}\n\n\tpublic _dispose() {\n\t\tdisposeSettings(this._settings);\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic set<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._settings[key] = value;\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key) {\n\t\tdelete this._settings[key];\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic setAll(settings: this[\"_settings\"]) {\n\t\t$object.keys(settings).forEach((key) => {\n\t\t\tthis._settings[key] = settings[key];\n\t\t});\n\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic _apply(other: State<E>, seen: Dirty<E[\"_settings\"]>): void {\n\t\t$object.each(this._settings, (key, value) => {\n\t\t\tif (!seen[key] && !other._userSettings[key]) {\n\t\t\t\tseen[key] = true;\n\t\t\t\tother.setRaw(key, value);\n\t\t\t}\n\t\t});\n\t}\n}\n\n\nexport class TemplateStates<E extends Entity> {\n\tprivate _template: Template<E>;\n\tprivate _states: { [key: string]: TemplateState<E> } = {};\n\n\tconstructor(template: Template<E>) {\n\t\tthis._template = template;\n\t}\n\n\tpublic _dispose() {\n\t\t$object.each(this._states, (_key, state) => {\n\t\t\tstate._dispose();\n\t\t});\n\t}\n\n\tpublic lookup(name: string): TemplateState<E> | undefined {\n\t\treturn this._states[name];\n\t}\n\n\tpublic create(name: string, settings: Partial<E[\"_settings\"]>): TemplateState<E> {\n\t\tconst state = this._states[name];\n\n\t\tif (state) {\n\t\t\tstate.setAll(settings);\n\t\t\treturn state;\n\n\t\t} else {\n\t\t\tconst state = new TemplateState(name, this._template, settings);\n\t\t\tthis._states[name] = state;\n\t\t\tthis._template._stateChanged(name);\n\t\t\treturn state;\n\t\t}\n\t}\n\n\tpublic remove(name: string) {\n\t\tdelete this._states[name];\n\t\tthis._template._stateChanged(name);\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): void {\n\t\t$object.each(this._states, (key, value) => {\n\t\t\tlet seen = state.states[key];\n\n\t\t\tif (seen == null) {\n\t\t\t\tseen = state.states[key] = {};\n\t\t\t}\n\n\t\t\tconst other = entity.states.create(key as string, {});\n\t\t\tvalue._apply(other, seen);\n\t\t});\n\t}\n}\n\n\nexport class TemplateAdapters<E extends Entity> {\n\tprivate _callbacks: { [K in keyof E[\"_settings\"]]?: Array<<O extends E>(value: O[\"_settings\"][K], target: O, key: K) => O[\"_settings\"][K]> } = {};\n\n\tpublic add<Key extends keyof E[\"_settings\"]>(key: Key, callback: (value: E[\"_settings\"][Key], target: E, key: Key) => E[\"_settings\"][Key]): IDisposer {\n\t\tlet callbacks = this._callbacks[key];\n\n\t\tif (callbacks === undefined) {\n\t\t\tcallbacks = this._callbacks[key] = [];\n\t\t}\n\n\t\tcallbacks.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(callbacks!, callback);\n\n\t\t\tif (callbacks!.length === 0) {\n\t\t\t\tdelete this._callbacks[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic remove<Key extends keyof E[\"_settings\"]>(key: Key) {\n\t\tconst callbacks = this._callbacks[key];\n\n\t\tif (callbacks !== undefined) {\n\t\t\tdelete this._callbacks[key];\n\t\t}\n\t}\n\n\tpublic _apply(entity: E): IDisposer {\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._callbacks, (key, callbacks) => {\n\t\t\t$array.each(callbacks, (callback) => {\n\t\t\t\tdisposers.push(entity.adapters.add(key, callback));\n\t\t\t});\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n}\n\n\nexport interface ApplyState<E extends Entity> {\n\tsettings: Dirty<E[\"_settings\"]>;\n\tprivateSettings: Dirty<E[\"_privateSettings\"]>;\n\tstates: { [name: string]: Dirty<E[\"_settings\"]> };\n}\n\n\n// TODO maybe extend from Properties ?\nexport class Template<E extends Entity> implements IDisposer {\n\tprivate _disposed: boolean = false;\n\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\tpublic _privateSettings: E[\"_privateSettings\"] = {};\n\n\t// TODO code duplication with Properties\n\tpublic _settingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\tpublic _privateSettingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\n\tpublic _entities: Array<E> = [];\n\n\tpublic readonly states: TemplateStates<E> = new TemplateStates(this);\n\n\tpublic readonly adapters: TemplateAdapters<E> = new TemplateAdapters();\n\tpublic readonly events: EventDispatcher<Events<E, E[\"_events\"]>> = new EventDispatcher();\n\n\tpublic setup: (<O extends E>(entity: O) => void) | undefined;\n\n\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new<E extends Entity>(settings: E[\"_settings\"]): Template<E> {\n\t\treturn new Template<E>(settings, true);\n\t}\n\n\tprotected _dispose() {\n\t\tdisposeSettings(this._settings);\n\t\tdisposeSettings(this._privateSettings);\n\t}\n\n\t/**\n\t * Returns `true` if this element is disposed.\n\t *\n\t * @return Disposed\n\t */\n\tpublic isDisposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\t/**\n\t * Disposes this object.\n\t */\n\tpublic dispose() {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\t\t\tthis._dispose();\n\t\t}\n\t}\n\n\tprivate _checkDisposed() {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"Template is disposed\");\n\t\t}\n\t}\n\n\t/**\n\t * Array of all entities using this template.\n\t */\n\tpublic get entities():Array<E>{\n\t\treturn this._entities;\n\t}\n\n\tconstructor(settings: E[\"_settings\"], isReal: boolean) {\n\t\tif (!isReal) {\n\t\t\tthrow new Error(\"You cannot use `new Class()`, instead use `Class.new()`\");\n\t\t}\n\n\t\tthis._settings = settings;\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tthis._checkDisposed();\n\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setRaw<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tthis._checkDisposed();\n\t\tthis._settings[key] = value;\n\t}\n\n\tpublic set<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tthis._checkDisposed();\n\n\t\tif (this._settings[key] !== value) {\n\t\t\tthis.setRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key): void {\n\t\tthis._checkDisposed();\n\n\t\tif (key in this._settings) {\n\t\t\tdelete this._settings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic removeAll(): void {\n\t\tthis._checkDisposed();\n\n\t\t$object.each(this._settings, (key, _value) => {\n\t\t\tthis.remove(key);\n\t\t});\n\t}\n\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"], F>(key: Key, fallback: F): NonNullable<this[\"_privateSettings\"][Key]> | F;\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): this[\"_privateSettings\"][Key];\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, fallback?: any): any {\n\t\tthis._checkDisposed();\n\n\t\tconst value = this._privateSettings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setPrivateRaw<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tthis._checkDisposed();\n\t\tthis._privateSettings[key] = value;\n\t\treturn value;\n\t}\n\n\tpublic setPrivate<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tthis._checkDisposed();\n\n\t\tif (this._privateSettings[key] !== value) {\n\t\t\tthis.setPrivateRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplatePrivateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\n\t\treturn value;\n\t}\n\n\tpublic removePrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): void {\n\t\tthis._checkDisposed();\n\n\t\tif (key in this._privateSettings) {\n\t\t\tdelete this._privateSettings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplatePrivateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic setAll(value: this[\"_settings\"]) {\n\t\tthis._checkDisposed();\n\n\t\t$object.each(value, (key, value) => {\n\t\t\tthis.set(key, value);\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic on<Key extends keyof this[\"_settings\"]>(key: Key, callback: (value: this[\"_settings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tlet events = this._settingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._settingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._settingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic onPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, callback: (value: this[\"_privateSettings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tlet events = this._privateSettingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._privateSettingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._privateSettingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._settingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.on(key, event));\n\t\t\t});\n\t\t});\n\n\t\t$object.each(this._privateSettingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.onPrivate(key, event));\n\t\t\t});\n\t\t});\n\n\t\tthis.states._apply(entity, state);\n\n\t\tdisposers.push(this.adapters._apply(entity));\n\t\tdisposers.push(entity.events.copyFrom(this.events));\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n\tpublic _setObjectTemplate(entity: E) {\n\t\tthis._checkDisposed();\n\t\tthis._entities.push(entity);\n\t}\n\n\tpublic _removeObjectTemplate(entity: E) {\n\t\t//this._checkDisposed();\n\t\t$array.remove(this._entities, entity);\n\t}\n\n\tpublic _stateChanged(name: string): void {\n\t\tthis._checkDisposed();\n\n\t\tthis._entities.forEach((entity) => {\n\t\t\tentity._applyStateByKey(name);\n\t\t});\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"Template.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Template.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Entity, Dirty } from \"./Entity\";\nimport type { State } from \"./States\";\nimport { EventDispatcher, Events } from \"./EventDispatcher\";\nimport { IDisposer, Disposer, MultiDisposer } from \"./Disposer\";\nimport * as $array from \"./Array\";\nimport * as $object from \"./Object\";\nimport * as $type from \"./Type\";\n\n\nfunction disposeSettings(settings: object) {\n\t$object.each(settings, (_key, value) => {\n\t\tif ($type.isObject(value) && typeof (value as any).dispose === \"function\") {\n\t\t\t(value as any).enableDispose = true;\n\t\t\t(value as any).dispose();\n\t\t}\n\t});\n}\n\n\nexport class TemplateState<E extends Entity> {\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\n\tprivate _name: string;\n\tprivate _template: Template<E>;\n\n\tconstructor(name: string, template: Template<E>, settings: Partial<E[\"_settings\"]>) {\n\t\tthis._name = name;\n\t\tthis._template = template;\n\t\tthis._settings = settings;\n\t}\n\n\tpublic _dispose() {\n\t\tdisposeSettings(this._settings);\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic set<Key extends keyof E[\"_settings\"]>(key: Key, value: E[\"_settings\"][Key]) {\n\t\tthis._settings[key] = value;\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key) {\n\t\tdelete this._settings[key];\n\t\t// TODO maybe only do this if the value changed ?\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic setAll(settings: this[\"_settings\"]) {\n\t\t$object.keys(settings).forEach((key) => {\n\t\t\tthis._settings[key] = settings[key];\n\t\t});\n\n\t\tthis._template._stateChanged(this._name);\n\t}\n\n\tpublic _apply(other: State<E>, seen: Dirty<E[\"_settings\"]>): void {\n\t\t$object.each(this._settings, (key, value) => {\n\t\t\tif (!seen[key] && !other._userSettings[key]) {\n\t\t\t\tseen[key] = true;\n\t\t\t\tother.setRaw(key, value);\n\t\t\t}\n\t\t});\n\t}\n}\n\n\nexport class TemplateStates<E extends Entity> {\n\tprivate _template: Template<E>;\n\tprivate _states: { [key: string]: TemplateState<E> } = {};\n\n\tconstructor(template: Template<E>) {\n\t\tthis._template = template;\n\t}\n\n\tpublic _dispose() {\n\t\t$object.each(this._states, (_key, state) => {\n\t\t\tstate._dispose();\n\t\t});\n\t}\n\n\tpublic lookup(name: string): TemplateState<E> | undefined {\n\t\treturn this._states[name];\n\t}\n\n\tpublic create(name: string, settings: Partial<E[\"_settings\"]>): TemplateState<E> {\n\t\tconst state = this._states[name];\n\n\t\tif (state) {\n\t\t\tstate.setAll(settings);\n\t\t\treturn state;\n\n\t\t} else {\n\t\t\tconst state = new TemplateState(name, this._template, settings);\n\t\t\tthis._states[name] = state;\n\t\t\tthis._template._stateChanged(name);\n\t\t\treturn state;\n\t\t}\n\t}\n\n\tpublic remove(name: string) {\n\t\tdelete this._states[name];\n\t\tthis._template._stateChanged(name);\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): void {\n\t\t$object.each(this._states, (key, value) => {\n\t\t\tlet seen = state.states[key];\n\n\t\t\tif (seen == null) {\n\t\t\t\tseen = state.states[key] = {};\n\t\t\t}\n\n\t\t\tconst other = entity.states.create(key as string, {});\n\t\t\tvalue._apply(other, seen);\n\t\t});\n\t}\n}\n\n\nexport class TemplateAdapters<E extends Entity> {\n\tprivate _callbacks: { [K in keyof E[\"_settings\"]]?: Array<<O extends E>(value: O[\"_settings\"][K], target: O, key: K) => O[\"_settings\"][K]> } = {};\n\n\tpublic add<Key extends keyof E[\"_settings\"]>(key: Key, callback: (value: E[\"_settings\"][Key], target: E, key: Key) => E[\"_settings\"][Key]): IDisposer {\n\t\tlet callbacks = this._callbacks[key];\n\n\t\tif (callbacks === undefined) {\n\t\t\tcallbacks = this._callbacks[key] = [];\n\t\t}\n\n\t\tcallbacks.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(callbacks!, callback);\n\n\t\t\tif (callbacks!.length === 0) {\n\t\t\t\tdelete this._callbacks[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic remove<Key extends keyof E[\"_settings\"]>(key: Key) {\n\t\tconst callbacks = this._callbacks[key];\n\n\t\tif (callbacks !== undefined) {\n\t\t\tdelete this._callbacks[key];\n\t\t}\n\t}\n\n\tpublic _apply(entity: E): IDisposer {\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._callbacks, (key, callbacks) => {\n\t\t\t$array.each(callbacks, (callback) => {\n\t\t\t\tdisposers.push(entity.adapters.add(key, callback));\n\t\t\t});\n\t\t});\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n}\n\n\nexport interface ApplyState<E extends Entity> {\n\tsettings: Dirty<E[\"_settings\"]>;\n\tprivateSettings: Dirty<E[\"_privateSettings\"]>;\n\tstates: { [name: string]: Dirty<E[\"_settings\"]> };\n}\n\n\n// TODO maybe extend from Properties ?\nexport class Template<E extends Entity> implements IDisposer {\n\tprivate _disposed: boolean = false;\n\n\tpublic _settings: Partial<E[\"_settings\"]>;\n\tpublic _privateSettings: E[\"_privateSettings\"] = {};\n\n\t// TODO code duplication with Properties\n\tpublic _settingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\tpublic _privateSettingEvents: { [K in keyof this[\"_settings\"]]?: Array<<V extends this[\"_settings\"][K]>(value: V) => void> } = {};\n\n\tpublic _entities: Array<E> = [];\n\n\tpublic readonly states: TemplateStates<E> = new TemplateStates(this);\n\n\tpublic readonly adapters: TemplateAdapters<E> = new TemplateAdapters();\n\tpublic readonly events: EventDispatcher<Events<E, E[\"_events\"]>> = new EventDispatcher();\n\n\tpublic setup: (<O extends E>(entity: O) => void) | undefined;\n\n\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param root Root element\n\t * @param settings Settings\n\t * @param template Template\n\t * @return Instantiated object\n\t */\n\tpublic static new<E extends Entity>(settings: E[\"_settings\"]): Template<E> {\n\t\treturn new Template<E>(settings, true);\n\t}\n\n\tprotected _dispose() {\n\t\tdisposeSettings(this._settings);\n\t\tdisposeSettings(this._privateSettings);\n\t}\n\n\t/**\n\t * Returns `true` if this element is disposed.\n\t *\n\t * @return Disposed\n\t */\n\tpublic isDisposed(): boolean {\n\t\treturn this._disposed;\n\t}\n\n\t/**\n\t * Disposes this object.\n\t */\n\tpublic dispose() {\n\t\tif (!this._disposed) {\n\t\t\tthis._disposed = true;\n\t\t\tthis._dispose();\n\t\t}\n\t}\n\n\tprivate _checkDisposed() {\n\t\tif (this._disposed) {\n\t\t\tthrow new Error(\"Template is disposed\");\n\t\t}\n\t}\n\n\t/**\n\t * Array of all entities using this template.\n\t */\n\tpublic get entities():Array<E>{\n\t\treturn this._entities;\n\t}\n\n\tconstructor(settings: E[\"_settings\"], isReal: boolean) {\n\t\tif (!isReal) {\n\t\t\tthrow new Error(\"You cannot use `new Class()`, instead use `Class.new()`\");\n\t\t}\n\n\t\tthis._settings = settings;\n\t}\n\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key): this[\"_settings\"][Key];\n\tpublic get<Key extends keyof this[\"_settings\"], F>(key: Key, fallback: F): NonNullable<this[\"_settings\"][Key]> | F;\n\tpublic get<Key extends keyof this[\"_settings\"]>(key: Key, fallback?: any): any {\n\t\tthis._checkDisposed();\n\n\t\tconst value = this._settings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setRaw<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tthis._checkDisposed();\n\t\tthis._settings[key] = value;\n\t}\n\n\tpublic set<Key extends keyof this[\"_settings\"]>(key: Key, value: this[\"_settings\"][Key]) {\n\t\tthis._checkDisposed();\n\n\t\tif (this._settings[key] !== value) {\n\t\t\tthis.setRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic remove<Key extends keyof this[\"_settings\"]>(key: Key): void {\n\t\tthis._checkDisposed();\n\n\t\tif (key in this._settings) {\n\t\t\tdelete this._settings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic removeAll(): void {\n\t\tthis._checkDisposed();\n\n\t\t$object.each(this._settings, (key, _value) => {\n\t\t\tthis.remove(key);\n\t\t});\n\t}\n\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"], F>(key: Key, fallback: F): NonNullable<this[\"_privateSettings\"][Key]> | F;\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): this[\"_privateSettings\"][Key];\n\tpublic getPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, fallback?: any): any {\n\t\tthis._checkDisposed();\n\n\t\tconst value = this._privateSettings[key];\n\n\t\tif (value !== undefined) {\n\t\t\treturn value;\n\n\t\t} else {\n\t\t\treturn fallback;\n\t\t}\n\t}\n\n\tpublic setPrivateRaw<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tthis._checkDisposed();\n\t\tthis._privateSettings[key] = value;\n\t\treturn value;\n\t}\n\n\tpublic setPrivate<Key extends keyof this[\"_privateSettings\"], Value extends this[\"_privateSettings\"][Key]>(key: Key, value: Value): Value {\n\t\tthis._checkDisposed();\n\n\t\tif (this._privateSettings[key] !== value) {\n\t\t\tthis.setPrivateRaw(key, value);\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._setTemplatePrivateProperty(this, key, value);\n\t\t\t});\n\t\t}\n\n\t\treturn value;\n\t}\n\n\tpublic removePrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key): void {\n\t\tthis._checkDisposed();\n\n\t\tif (key in this._privateSettings) {\n\t\t\tdelete this._privateSettings[key];\n\n\t\t\tthis._entities.forEach((entity) => {\n\t\t\t\tentity._removeTemplatePrivateProperty(key);\n\t\t\t});\n\t\t}\n\t}\n\n\tpublic setAll(value: this[\"_settings\"]) {\n\t\tthis._checkDisposed();\n\n\t\t$object.each(value, (key, value) => {\n\t\t\tthis.set(key, value);\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic on<Key extends keyof this[\"_settings\"]>(key: Key, callback: (value: this[\"_settings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tlet events = this._settingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._settingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._settingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\t// TODO code duplication with Properties\n\tpublic onPrivate<Key extends keyof this[\"_privateSettings\"]>(key: Key, callback: (value: this[\"_privateSettings\"][Key], target?: E, key?: Key) => void): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tlet events = this._privateSettingEvents[key];\n\n\t\tif (events === undefined) {\n\t\t\tevents = this._privateSettingEvents[key] = [];\n\t\t}\n\n\t\tevents.push(callback);\n\n\t\treturn new Disposer(() => {\n\t\t\t$array.removeFirst(events!, callback);\n\n\t\t\tif (events!.length === 0) {\n\t\t\t\tdelete this._privateSettingEvents[key];\n\t\t\t}\n\t\t});\n\t}\n\n\tpublic _apply(entity: E, state: ApplyState<E>): IDisposer {\n\t\tthis._checkDisposed();\n\n\t\tconst disposers: Array<IDisposer> = [];\n\n\t\t$object.each(this._settingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.on(key, event));\n\t\t\t});\n\t\t});\n\n\t\t$object.each(this._privateSettingEvents, (key, events) => {\n\t\t\t$array.each(events, (event) => {\n\t\t\t\tdisposers.push(entity.onPrivate(key, event));\n\t\t\t});\n\t\t});\n\n\t\tthis.states._apply(entity, state);\n\n\t\tdisposers.push(this.adapters._apply(entity));\n\t\tdisposers.push(entity.events.copyFrom(this.events));\n\n\t\treturn new MultiDisposer(disposers);\n\t}\n\n\tpublic _setObjectTemplate(entity: E) {\n\t\tthis._checkDisposed();\n\t\tthis._entities.push(entity);\n\t}\n\n\tpublic _removeObjectTemplate(entity: E) {\n\t\t//this._checkDisposed();\n\t\t$array.remove(this._entities, entity);\n\t}\n\n\tpublic _stateChanged(name: string): void {\n\t\tthis._checkDisposed();\n\n\t\tthis._entities.forEach((entity) => {\n\t\t\tentity._applyStateByKey(name);\n\t\t});\n\t}\n}\n"]}
|
|
@@ -204,10 +204,5 @@ export class TextFormatter {
|
|
|
204
204
|
return format;
|
|
205
205
|
}
|
|
206
206
|
}
|
|
207
|
-
|
|
208
|
-
enumerable: true,
|
|
209
|
-
configurable: true,
|
|
210
|
-
writable: true,
|
|
211
|
-
value: "__amcharts__"
|
|
212
|
-
});
|
|
207
|
+
TextFormatter.prefix = "__amcharts__";
|
|
213
208
|
//# sourceMappingURL=TextFormatter.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TextFormatter.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/TextFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["import { Color } from \"./Color\"\nimport type { ITextStyle } from \"../render/backend/Renderer\"\nimport * as $type from \"./Type\";\n\n/**\n * Defines an interface for an object that holds a chunk of text.\n */\nexport interface ITextChunk {\n\n\t/**\n\t * Type of the chunk.\n\t */\n\t\"type\": \"value\" | \"text\" | \"format\" | \"image\",\n\n\t/**\n\t * Text.\n\t */\n\t\"text\": string\n\n}\n\nexport class TextFormatter {\n\n\tpublic static prefix = \"__amcharts__\";\n\n\t/**\n\t * Replaces brackets with temporary placeholders.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Escaped text\n\t */\n\tpublic static escape(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, this.prefix + \"1\").\n\t\t\treplace(/([^\\/\\]]{1})\\]\\]/g, \"$1\" + this.prefix + \"2\").\n\t\t\treplace(/\\]\\]/g, this.prefix + \"2\").\n\t\t\treplace(/\\{\\{/g, this.prefix + \"3\").\n\t\t\treplace(/\\}\\}/g, this.prefix + \"4\").\n\t\t\treplace(/\\'\\'/g, this.prefix + \"5\");\n\t}\n\n\t/**\n\t * Replaces placeholders back to brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Escaped text\n\t * @return Unescaped text\n\t */\n\tpublic static unescape(text: string): string {\n\t\treturn text.\n\t\t\treplace(new RegExp(this.prefix + \"1\", \"g\"), \"[[\").\n\t\t\treplace(new RegExp(this.prefix + \"2\", \"g\"), \"]]\").\n\t\t\treplace(new RegExp(this.prefix + \"3\", \"g\"), \"{{\").\n\t\t\treplace(new RegExp(this.prefix + \"4\", \"g\"), \"}}\").\n\t\t\treplace(new RegExp(this.prefix + \"5\", \"g\"), \"''\");\n\t}\n\n\t/**\n\t * Cleans up the text text for leftover double square brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Cleaned up text\n\t */\n\tpublic static cleanUp(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, \"[\").\n\t\t\treplace(/\\]\\]/g, \"]\").\n\t\t\treplace(/\\{\\{/g, \"{\").\n\t\t\treplace(/\\}\\}/g, \"}\").\n\t\t\treplace(/\\'\\'/g, \"'\");\n\t}\n\n\t/**\n\t * Splits string into chunks. (style blocks, quoted blocks, regular blocks)\n\t *\n\t * If the second parameter `quotedBlocks` is set to `true` this method will\n\t * also single out text blocks enclosed within single quotes that no\n\t * formatting should be applied to, and they should be displayed as is.\n\t *\n\t * Default for the above is `false`, so that you can use single quote in text\n\t * without escaping it.\n\t *\n\t * If enabled, single quotes can be escaped by doubling it - adding two\n\t * single quotes, which will be replaced by a one single quote in the final\n\t * output.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Text to chunk\n\t * @param quotedBlocks Use quoted blocks\n\t * @param noFormatting Formatting blocks will be treated as regular text\n\t * @return Array of string chunks\n\t */\n\tpublic static chunk(text: string, quotedBlocks: boolean = false, noFormatting: boolean = false): ITextChunk[] {\n\n\t\t// Init result\n\t\tlet res: ITextChunk[] = [];\n\n\t\t// Replace double (escaped) square spaces and quotes with temporary codes\n\t\ttext = this.escape(text);\n\n\t\t// Deal with style blocks\n\t\tlet chunks = quotedBlocks ? text.split(\"'\") : [text];\n\t\tfor (let i: number = 0; i < chunks.length; i++) {\n\t\t\tlet chunk = chunks[i];\n\n\t\t\t// Empty?\n\t\t\tif (chunk === \"\") {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif ((i % 2) === 0) {\n\n\t\t\t\t// Text outside quotes\n\t\t\t\t// Parse for style blocks which are \"text\" chunks, the rest chunks are\n\t\t\t\t// \"value\"\n\n\t\t\t\tchunk = chunk.replace(/\\]\\[/g, \"]\" + $type.PLACEHOLDER + \"[\");\n\t\t\t\tchunk = chunk.replace(/\\[\\]/g, \"[ ]\");\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Placeholder?\n\t\t\t\t\tif (chunk2 === $type.PLACEHOLDER) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or value\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"value\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": noFormatting ? \"value\" : \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t\telse {\n\n\t\t\t\t// A text within doublequotes\n\t\t\t\t// All chunks are \"text\"\n\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or text\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse if (this.isImage(chunk2)) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"image\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\n\t\treturn res;\n\t}\n\n\t/**\n\t * Checks if supplied format contains image information and should be\n\t * formatted as such.\n\t * I.e.: `[img: myImage.png]`\n\t *\n\t * @ignore\n\t * @param text Format\n\t * @return true if it is an image\n\t */\n\tpublic static isImage(text: string): boolean {\n\t\treturn text.match(/img[ ]?:/) ? true : false;\n\t}\n\n\tpublic static getTextStyle(style: string): ITextStyle {\n\n\t\t// let textStyle: string[] = [];\n\t\t// let textFill: string | undefined;\n\t\tlet format: ITextStyle = {};\n\n\t\tif (style == \"\" || style == \"[ ]\") {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Pre-process quoted text\n\t\tconst q = style.match(/('[^']*')|(\"[^\"]*\")/gi);\n\t\tif (q) {\n\t\t\tfor (let i: number = 0; i < q.length; i++) {\n\t\t\t\tstyle = style.replace(q[i], q[i].replace(/['\"]*/g, \"\").replace(/[ ]+/g, \"+\"));\n\t\t\t}\n\t\t}\n\n\t\t// Get style parts\n\t\tlet b: string[] | null = style.match(/([\\w\\-]*:[\\s]?[^;\\s\\]]*)|(\\#[\\w]{1,6})|([\\w\\-]+)|(\\/)/gi);\n\n\t\t// Empty?\n\t\tif (!b) {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Check each part\n\t\tfor (let i: number = 0; i < b.length; i++) {\n\n\t\t\tif (b[i].match(/^(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)$/i)) {\n\t\t\t\t(<any>format).fontWeight = b[i];\n\t\t\t}\n\t\t\telse if (b[i].match(/^(underline|line-through)$/i)) {\n\t\t\t\t(<any>format).textDecoration = b[i];\n\t\t\t}\n\t\t\telse if (b[i] == \"/\") {\n\t\t\t\t// Just closing tag\n\t\t\t\t// Do nothing\n\t\t\t}\n\t\t\telse if (!b[i].match(/:/)) {\n\t\t\t\t// Color\n\t\t\t\tformat.fill = Color.fromString(b[i]);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst p = b[i].replace(\"+\", \" \").split(/:[ ]*/);\n\t\t\t\t(<any>format)[p[0]] = p[1];\n\t\t\t\t//textStyle.push(b[i].replace(/^[a-zA-Z]:[ ]*/, \"\"));\n\t\t\t\t//b[i] = b[i].replace(/\\+/g, \" \");\n\t\t\t}\n\n\t\t}\n\n\t\treturn format;\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TextFormatter.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/TextFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["import { Color } from \"./Color\"\nimport type { ITextStyle } from \"../render/backend/Renderer\"\nimport * as $type from \"./Type\";\n\n/**\n * Defines an interface for an object that holds a chunk of text.\n */\nexport interface ITextChunk {\n\n\t/**\n\t * Type of the chunk.\n\t */\n\t\"type\": \"value\" | \"text\" | \"format\" | \"image\",\n\n\t/**\n\t * Text.\n\t */\n\t\"text\": string\n\n}\n\nexport class TextFormatter {\n\n\tpublic static prefix = \"__amcharts__\";\n\n\t/**\n\t * Replaces brackets with temporary placeholders.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Escaped text\n\t */\n\tpublic static escape(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, this.prefix + \"1\").\n\t\t\treplace(/([^\\/\\]]{1})\\]\\]/g, \"$1\" + this.prefix + \"2\").\n\t\t\treplace(/\\]\\]/g, this.prefix + \"2\").\n\t\t\treplace(/\\{\\{/g, this.prefix + \"3\").\n\t\t\treplace(/\\}\\}/g, this.prefix + \"4\").\n\t\t\treplace(/\\'\\'/g, this.prefix + \"5\");\n\t}\n\n\t/**\n\t * Replaces placeholders back to brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Escaped text\n\t * @return Unescaped text\n\t */\n\tpublic static unescape(text: string): string {\n\t\treturn text.\n\t\t\treplace(new RegExp(this.prefix + \"1\", \"g\"), \"[[\").\n\t\t\treplace(new RegExp(this.prefix + \"2\", \"g\"), \"]]\").\n\t\t\treplace(new RegExp(this.prefix + \"3\", \"g\"), \"{{\").\n\t\t\treplace(new RegExp(this.prefix + \"4\", \"g\"), \"}}\").\n\t\t\treplace(new RegExp(this.prefix + \"5\", \"g\"), \"''\");\n\t}\n\n\t/**\n\t * Cleans up the text text for leftover double square brackets.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Input text\n\t * @return Cleaned up text\n\t */\n\tpublic static cleanUp(text: string): string {\n\t\treturn text.\n\t\t\treplace(/\\[\\[/g, \"[\").\n\t\t\treplace(/\\]\\]/g, \"]\").\n\t\t\treplace(/\\{\\{/g, \"{\").\n\t\t\treplace(/\\}\\}/g, \"}\").\n\t\t\treplace(/\\'\\'/g, \"'\");\n\t}\n\n\t/**\n\t * Splits string into chunks. (style blocks, quoted blocks, regular blocks)\n\t *\n\t * If the second parameter `quotedBlocks` is set to `true` this method will\n\t * also single out text blocks enclosed within single quotes that no\n\t * formatting should be applied to, and they should be displayed as is.\n\t *\n\t * Default for the above is `false`, so that you can use single quote in text\n\t * without escaping it.\n\t *\n\t * If enabled, single quotes can be escaped by doubling it - adding two\n\t * single quotes, which will be replaced by a one single quote in the final\n\t * output.\n\t *\n\t * @ignore Exclude from docs\n\t * @param text Text to chunk\n\t * @param quotedBlocks Use quoted blocks\n\t * @param noFormatting Formatting blocks will be treated as regular text\n\t * @return Array of string chunks\n\t */\n\tpublic static chunk(text: string, quotedBlocks: boolean = false, noFormatting: boolean = false): ITextChunk[] {\n\n\t\t// Init result\n\t\tlet res: ITextChunk[] = [];\n\n\t\t// Replace double (escaped) square spaces and quotes with temporary codes\n\t\ttext = this.escape(text);\n\n\t\t// Deal with style blocks\n\t\tlet chunks = quotedBlocks ? text.split(\"'\") : [text];\n\t\tfor (let i: number = 0; i < chunks.length; i++) {\n\t\t\tlet chunk = chunks[i];\n\n\t\t\t// Empty?\n\t\t\tif (chunk === \"\") {\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tif ((i % 2) === 0) {\n\n\t\t\t\t// Text outside quotes\n\t\t\t\t// Parse for style blocks which are \"text\" chunks, the rest chunks are\n\t\t\t\t// \"value\"\n\n\t\t\t\tchunk = chunk.replace(/\\]\\[/g, \"]\" + $type.PLACEHOLDER + \"[\");\n\t\t\t\tchunk = chunk.replace(/\\[\\]/g, \"[ ]\");\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Placeholder?\n\t\t\t\t\tif (chunk2 === $type.PLACEHOLDER) {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or value\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"value\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": noFormatting ? \"value\" : \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t\telse {\n\n\t\t\t\t// A text within doublequotes\n\t\t\t\t// All chunks are \"text\"\n\n\t\t\t\tlet chunks2 = chunk.split(/[\\[\\]]+/);\n\t\t\t\tfor (let i2: number = 0; i2 < chunks2.length; i2++) {\n\t\t\t\t\tlet chunk2 = this.cleanUp(this.unescape(chunks2[i2]));\n\n\t\t\t\t\t// Empty?\n\t\t\t\t\tif (chunk2 === \"\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\n\t\t\t\t\t// Block or text\n\t\t\t\t\tif ((i2 % 2) === 0) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"text\",\n\t\t\t\t\t\t\t\"text\": chunk2\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse if (this.isImage(chunk2)) {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"image\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tres.push({\n\t\t\t\t\t\t\t\"type\": \"format\",\n\t\t\t\t\t\t\t\"text\": \"[\" + chunk2 + \"]\"\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t}\n\t\t}\n\n\t\treturn res;\n\t}\n\n\t/**\n\t * Checks if supplied format contains image information and should be\n\t * formatted as such.\n\t * I.e.: `[img: myImage.png]`\n\t *\n\t * @ignore\n\t * @param text Format\n\t * @return true if it is an image\n\t */\n\tpublic static isImage(text: string): boolean {\n\t\treturn text.match(/img[ ]?:/) ? true : false;\n\t}\n\n\tpublic static getTextStyle(style: string): ITextStyle {\n\n\t\t// let textStyle: string[] = [];\n\t\t// let textFill: string | undefined;\n\t\tlet format: ITextStyle = {};\n\n\t\tif (style == \"\" || style == \"[ ]\") {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Pre-process quoted text\n\t\tconst q = style.match(/('[^']*')|(\"[^\"]*\")/gi);\n\t\tif (q) {\n\t\t\tfor (let i: number = 0; i < q.length; i++) {\n\t\t\t\tstyle = style.replace(q[i], q[i].replace(/['\"]*/g, \"\").replace(/[ ]+/g, \"+\"));\n\t\t\t}\n\t\t}\n\n\t\t// Get style parts\n\t\tlet b: string[] | null = style.match(/([\\w\\-]*:[\\s]?[^;\\s\\]]*)|(\\#[\\w]{1,6})|([\\w\\-]+)|(\\/)/gi);\n\n\t\t// Empty?\n\t\tif (!b) {\n\t\t\treturn {};\n\t\t}\n\n\t\t// Check each part\n\t\tfor (let i: number = 0; i < b.length; i++) {\n\n\t\t\tif (b[i].match(/^(normal|bold|bolder|lighter|100|200|300|400|500|600|700|800|900)$/i)) {\n\t\t\t\t(<any>format).fontWeight = b[i];\n\t\t\t}\n\t\t\telse if (b[i].match(/^(underline|line-through)$/i)) {\n\t\t\t\t(<any>format).textDecoration = b[i];\n\t\t\t}\n\t\t\telse if (b[i] == \"/\") {\n\t\t\t\t// Just closing tag\n\t\t\t\t// Do nothing\n\t\t\t}\n\t\t\telse if (!b[i].match(/:/)) {\n\t\t\t\t// Color\n\t\t\t\tformat.fill = Color.fromString(b[i]);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tconst p = b[i].replace(\"+\", \" \").split(/:[ ]*/);\n\t\t\t\t(<any>format)[p[0]] = p[1];\n\t\t\t\t//textStyle.push(b[i].replace(/^[a-zA-Z]:[ ]*/, \"\"));\n\t\t\t\t//b[i] = b[i].replace(/\\+/g, \" \");\n\t\t\t}\n\n\t\t}\n\n\t\treturn format;\n\t}\n\n}\n"]}
|
|
@@ -1,23 +1,7 @@
|
|
|
1
1
|
export class Throttler {
|
|
2
2
|
constructor(fn) {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
configurable: true,
|
|
6
|
-
writable: true,
|
|
7
|
-
value: true
|
|
8
|
-
});
|
|
9
|
-
Object.defineProperty(this, "_pending", {
|
|
10
|
-
enumerable: true,
|
|
11
|
-
configurable: true,
|
|
12
|
-
writable: true,
|
|
13
|
-
value: false
|
|
14
|
-
});
|
|
15
|
-
Object.defineProperty(this, "_fn", {
|
|
16
|
-
enumerable: true,
|
|
17
|
-
configurable: true,
|
|
18
|
-
writable: true,
|
|
19
|
-
value: void 0
|
|
20
|
-
});
|
|
3
|
+
this._ready = true;
|
|
4
|
+
this._pending = false;
|
|
21
5
|
this._fn = fn;
|
|
22
6
|
}
|
|
23
7
|
run() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Throttler.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Throttler.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAS;IAKrB,YAAY,EAAc;
|
|
1
|
+
{"version":3,"file":"Throttler.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Throttler.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,SAAS;IAKrB,YAAY,EAAc;QAJlB,WAAM,GAAY,IAAI,CAAC;QACvB,aAAQ,GAAY,KAAK,CAAC;QAIjC,IAAI,CAAC,GAAG,GAAG,EAAE,CAAC;IACf,CAAC;IAEM,GAAG;QACT,IAAI,IAAI,CAAC,MAAM,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YACpB,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;YAEtB,qBAAqB,CAAC,GAAG,EAAE;gBAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;gBAEnB,IAAI,IAAI,CAAC,QAAQ,EAAE;oBAClB,IAAI,CAAC,GAAG,EAAE,CAAC;iBACX;YACF,CAAC,CAAC,CAAC;YAEH,IAAI,CAAC,GAAG,EAAE,CAAC;SAEX;aAAM;YACN,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;SACrB;IACF,CAAC;CACD","sourcesContent":["export class Throttler {\n\tprivate _ready: boolean = true;\n\tprivate _pending: boolean = false;\n\tprivate _fn: () => void;\n\n\tconstructor(fn: () => void) {\n\t\tthis._fn = fn;\n\t}\n\n\tpublic run(): void {\n\t\tif (this._ready) {\n\t\t\tthis._ready = false;\n\t\t\tthis._pending = false;\n\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tthis._ready = true;\n\n\t\t\t\tif (this._pending) {\n\t\t\t\t\tthis.run();\n\t\t\t\t}\n\t\t\t});\n\n\t\t\tthis._fn();\n\n\t\t} else {\n\t\t\tthis._pending = true;\n\t\t}\n\t}\n}\n"]}
|
|
@@ -67,24 +67,6 @@ function toUTCDate(timezone, date) {
|
|
|
67
67
|
}
|
|
68
68
|
export class Timezone {
|
|
69
69
|
constructor(timezone, isReal) {
|
|
70
|
-
Object.defineProperty(this, "_utc", {
|
|
71
|
-
enumerable: true,
|
|
72
|
-
configurable: true,
|
|
73
|
-
writable: true,
|
|
74
|
-
value: void 0
|
|
75
|
-
});
|
|
76
|
-
Object.defineProperty(this, "_dtf", {
|
|
77
|
-
enumerable: true,
|
|
78
|
-
configurable: true,
|
|
79
|
-
writable: true,
|
|
80
|
-
value: void 0
|
|
81
|
-
});
|
|
82
|
-
Object.defineProperty(this, "name", {
|
|
83
|
-
enumerable: true,
|
|
84
|
-
configurable: true,
|
|
85
|
-
writable: true,
|
|
86
|
-
value: void 0
|
|
87
|
-
});
|
|
88
70
|
if (!isReal) {
|
|
89
71
|
throw new Error("You cannot use `new Class()`, instead use `Class.new()`");
|
|
90
72
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Timezone.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Timezone.ts"],"names":[],"mappings":"AAWA,SAAS,SAAS,CAAC,QAA6B,EAAE,IAAU;IAC3D,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,IAAI,OAAO,GAAG,CAAC,CAAC;IAIhB,QAAQ,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;QAE1C,QAAQ,CAAC,CAAC,IAAI,EAAE;YACf,KAAK,MAAM;gBACV,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;gBAChB,MAAM;YACP,KAAK,OAAO;gBACX,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvB,MAAM;YACP,KAAK,KAAK;gBACT,GAAG,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;gBACf,MAAM;YACP,KAAK,MAAM;gBACV,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;gBAChB,MAAM;YACP,KAAK,QAAQ;gBACZ,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;gBAClB,MAAM;YACP,KAAK,QAAQ;gBACZ,MAAM,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;gBAClB,MAAM;YACP,KAAK,kBAAyB;gBAC7B,WAAW,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC;gBACvB,MAAM;YACP,KAAK,SAAS;gBACb,QAAQ,CAAC,CAAC,KAAK,EAAE;oBAChB,KAAK,KAAK;wBACT,OAAO,GAAG,CAAC,CAAC;wBACZ,MAAM;oBACP,KAAK,KAAK;wBACT,OAAO,GAAG,CAAC,CAAC;wBACZ,MAAM;oBACP,KAAK,KAAK;wBACT,OAAO,GAAG,CAAC,CAAC;wBACZ,MAAM;oBACP,KAAK,KAAK;wBACT,OAAO,GAAG,CAAC,CAAC;wBACZ,MAAM;oBACP,KAAK,KAAK;wBACT,OAAO,GAAG,CAAC,CAAC;wBACZ,MAAM;oBACP,KAAK,KAAK;wBACT,OAAO,GAAG,CAAC,CAAC;wBACZ,MAAM;oBACP,KAAK,KAAK;wBACT,OAAO,GAAG,CAAC,CAAC;wBACZ,MAAM;iBACP;SACF;IACF,CAAC,CAAC,CAAC;IAEH,IAAI,IAAI,KAAK,EAAE,EAAE;QAChB,IAAI,GAAG,CAAC,CAAC;KACT;IAED,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AACzE,CAAC;AAGD,SAAS,SAAS,CAAC,QAA6B,EAAE,IAAU;IAC3D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,SAAS,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC1F,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;AACtE,CAAC;AAGD,MAAM,OAAO,QAAQ;IAiBpB,YAAY,QAA4B,EAAE,MAAe;
|
|
1
|
+
{"version":3,"file":"Timezone.js","sourceRoot":"","sources":["../../../../../src/.internal/core/util/Timezone.ts"],"names":[],"mappings":"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","sourcesContent":["interface ParsedDate {\n\tyear: number,\n\tmonth: number,\n\tday: number,\n\thour: number,\n\tminute: number,\n\tsecond: number,\n\tmillisecond: number,\n\tweekday: number\n}\n\nfunction parseDate(timezone: Intl.DateTimeFormat, date: Date): ParsedDate {\n\tlet year = 0;\n\tlet month = 0;\n\tlet day = 1;\n\tlet hour = 0;\n\tlet minute = 0;\n\tlet second = 0;\n\tlet millisecond = 0;\n\tlet weekday = 0;\n\n\n\n\ttimezone.formatToParts(date).forEach((x) => {\n\n\t\tswitch (x.type) {\n\t\t\tcase \"year\":\n\t\t\t\tyear = +x.value;\n\t\t\t\tbreak;\n\t\t\tcase \"month\":\n\t\t\t\tmonth = (+x.value) - 1;\n\t\t\t\tbreak;\n\t\t\tcase \"day\":\n\t\t\t\tday = +x.value;\n\t\t\t\tbreak;\n\t\t\tcase \"hour\":\n\t\t\t\thour = +x.value;\n\t\t\t\tbreak;\n\t\t\tcase \"minute\":\n\t\t\t\tminute = +x.value;\n\t\t\t\tbreak;\n\t\t\tcase \"second\":\n\t\t\t\tsecond = +x.value;\n\t\t\t\tbreak;\n\t\t\tcase \"fractionalSecond\" as any:\n\t\t\t\tmillisecond = +x.value;\n\t\t\t\tbreak;\n\t\t\tcase \"weekday\":\n\t\t\t\tswitch (x.value) {\n\t\t\t\t\tcase \"Sun\":\n\t\t\t\t\t\tweekday = 0;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Mon\":\n\t\t\t\t\t\tweekday = 1;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Tue\":\n\t\t\t\t\t\tweekday = 2;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Wed\":\n\t\t\t\t\t\tweekday = 3;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Thu\":\n\t\t\t\t\t\tweekday = 4;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Fri\":\n\t\t\t\t\t\tweekday = 5;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\tcase \"Sat\":\n\t\t\t\t\t\tweekday = 6;\n\t\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t}\n\t});\n\n\tif (hour === 24) {\n\t\thour = 0;\n\t}\n\n\treturn { year, month, day, hour, minute, second, millisecond, weekday };\n}\n\n\nfunction toUTCDate(timezone: Intl.DateTimeFormat, date: Date): number {\n\tconst { year, month, day, hour, minute, second, millisecond } = parseDate(timezone, date);\n\treturn Date.UTC(year, month, day, hour, minute, second, millisecond);\n}\n\n\nexport class Timezone {\n\tprivate _utc: Intl.DateTimeFormat;\n\tprivate _dtf: Intl.DateTimeFormat;\n\n\tpublic readonly name: string | undefined;\n\n\t/**\n\t * Use this method to create an instance of this class.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/getting-started/#New_element_syntax} for more info\n\t * @param timezone IANA timezone\n\t * @return Instantiated object\n\t */\n\tstatic new<C extends typeof Timezone, T extends InstanceType<C>>(this: C, timezone: string | undefined): T {\n\t\treturn (new this(timezone, true)) as T;\n\t}\n\n\tconstructor(timezone: string | undefined, isReal: boolean) {\n\t\tif (!isReal) {\n\t\t\tthrow new Error(\"You cannot use `new Class()`, instead use `Class.new()`\");\n\t\t}\n\n\t\tthis.name = timezone;\n\n\t\tthis._utc = new Intl.DateTimeFormat(\"en-US\", {\n\t\t\thour12: false,\n\t\t\ttimeZone: \"UTC\",\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"2-digit\",\n\t\t\tday: \"2-digit\",\n\t\t\thour: \"2-digit\",\n\t\t\tminute: \"2-digit\",\n\t\t\tsecond: \"2-digit\",\n\t\t\tweekday: \"short\",\n\t\t\tfractionalSecondDigits: 3,\n\t\t} as any);\n\n\t\tthis._dtf = new Intl.DateTimeFormat(\"en-US\", {\n\t\t\thour12: false,\n\t\t\ttimeZone: timezone,\n\t\t\tyear: \"numeric\",\n\t\t\tmonth: \"2-digit\",\n\t\t\tday: \"2-digit\",\n\t\t\thour: \"2-digit\",\n\t\t\tminute: \"2-digit\",\n\t\t\tsecond: \"2-digit\",\n\t\t\tweekday: \"short\",\n\t\t\tfractionalSecondDigits: 3,\n\t\t} as any);\n\t}\n\n\tconvertLocal(date: Date): Date {\n\t\tconst offset = this.offsetUTC(date);\n\t\tconst userOffset = date.getTimezoneOffset();\n\t\tconst output = new Date(date);\n\t\toutput.setUTCMinutes(output.getUTCMinutes() - (offset - userOffset));\n\n\t\tconst newUserOffset = output.getTimezoneOffset();\n\n\t\tif (userOffset != newUserOffset) {\n\t\t\toutput.setUTCMinutes(output.getUTCMinutes() + newUserOffset - userOffset)\n\t\t}\n\n\t\treturn output;\n\t}\n\n\toffsetUTC(date: Date): number {\n\t\tconst utc = toUTCDate(this._utc, date);\n\t\tconst dtf = toUTCDate(this._dtf, date);\n\t\treturn (utc - dtf) / 60000;\n\t}\n\n\tparseDate(date: Date): ParsedDate {\n\t\treturn parseDate(this._dtf, date)\n\t}\n}\n"]}
|
|
@@ -392,21 +392,6 @@ export class StyleRule extends DisposerClass {
|
|
|
392
392
|
*/
|
|
393
393
|
constructor(element, selector, styles, nonce = "") {
|
|
394
394
|
super();
|
|
395
|
-
Object.defineProperty(this, "_root", {
|
|
396
|
-
enumerable: true,
|
|
397
|
-
configurable: true,
|
|
398
|
-
writable: true,
|
|
399
|
-
value: void 0
|
|
400
|
-
});
|
|
401
|
-
/**
|
|
402
|
-
* CSS rule.
|
|
403
|
-
*/
|
|
404
|
-
Object.defineProperty(this, "_rule", {
|
|
405
|
-
enumerable: true,
|
|
406
|
-
configurable: true,
|
|
407
|
-
writable: true,
|
|
408
|
-
value: void 0
|
|
409
|
-
});
|
|
410
395
|
this._root = getStylesheet(element, nonce);
|
|
411
396
|
try {
|
|
412
397
|
this._rule = appendStylesheet(this._root, selector);
|
|
@@ -489,12 +474,6 @@ export class StyleSheet extends DisposerClass {
|
|
|
489
474
|
*/
|
|
490
475
|
constructor(element, text, nonce = "") {
|
|
491
476
|
super();
|
|
492
|
-
Object.defineProperty(this, "_element", {
|
|
493
|
-
enumerable: true,
|
|
494
|
-
configurable: true,
|
|
495
|
-
writable: true,
|
|
496
|
-
value: void 0
|
|
497
|
-
});
|
|
498
477
|
this._element = createStylesheet(element, text, nonce);
|
|
499
478
|
}
|
|
500
479
|
_dispose() {
|