@amcharts/amcharts5 5.1.14 → 5.2.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/stock/PanelControls.d.ts +53 -0
- package/.internal/charts/stock/PanelControls.d.ts.map +1 -0
- package/.internal/charts/stock/PanelControls.js +122 -0
- package/.internal/charts/stock/PanelControls.js.map +1 -0
- package/.internal/charts/stock/SettingsModal.d.ts +70 -0
- package/.internal/charts/stock/SettingsModal.d.ts.map +1 -0
- package/.internal/charts/stock/SettingsModal.js +457 -0
- package/.internal/charts/stock/SettingsModal.js.map +1 -0
- package/.internal/charts/stock/StockChart.d.ts +189 -0
- package/.internal/charts/stock/StockChart.d.ts.map +1 -0
- package/.internal/charts/stock/StockChart.js +696 -0
- package/.internal/charts/stock/StockChart.js.map +1 -0
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts +8 -0
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -0
- package/.internal/charts/stock/StockChartDefaultTheme.js +1204 -0
- package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -0
- package/.internal/charts/stock/StockLegend.d.ts +67 -0
- package/.internal/charts/stock/StockLegend.d.ts.map +1 -0
- package/.internal/charts/stock/StockLegend.js +136 -0
- package/.internal/charts/stock/StockLegend.js.map +1 -0
- package/.internal/charts/stock/StockPanel.d.ts +52 -0
- package/.internal/charts/stock/StockPanel.d.ts.map +1 -0
- package/.internal/charts/stock/StockPanel.js +164 -0
- package/.internal/charts/stock/StockPanel.js.map +1 -0
- package/.internal/charts/stock/drawing/AverageSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/AverageSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/AverageSeries.js +86 -0
- package/.internal/charts/stock/drawing/AverageSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/CalloutSeries.d.ts +31 -0
- package/.internal/charts/stock/drawing/CalloutSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/CalloutSeries.js +103 -0
- package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/DoodleSeries.d.ts +26 -0
- package/.internal/charts/stock/drawing/DoodleSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/DoodleSeries.js +155 -0
- package/.internal/charts/stock/drawing/DoodleSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts +127 -0
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/DrawingSeries.js +849 -0
- package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/EllipseSeries.d.ts +37 -0
- package/.internal/charts/stock/drawing/EllipseSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/EllipseSeries.js +366 -0
- package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.d.ts +56 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.js +284 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.d.ts +20 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js +120 -0
- package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js +94 -0
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts +29 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.js +110 -0
- package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -0
- package/.internal/charts/stock/drawing/IconSeries.d.ts +54 -0
- package/.internal/charts/stock/drawing/IconSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/IconSeries.js +127 -0
- package/.internal/charts/stock/drawing/IconSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/LabelSeries.d.ts +54 -0
- package/.internal/charts/stock/drawing/LabelSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/LabelSeries.js +195 -0
- package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/PolylineSeries.d.ts +26 -0
- package/.internal/charts/stock/drawing/PolylineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/PolylineSeries.js +158 -0
- package/.internal/charts/stock/drawing/PolylineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts +26 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js +163 -0
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/RectangleSeries.d.ts +27 -0
- package/.internal/charts/stock/drawing/RectangleSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/RectangleSeries.js +202 -0
- package/.internal/charts/stock/drawing/RectangleSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/RegressionSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/RegressionSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/RegressionSeries.js +97 -0
- package/.internal/charts/stock/drawing/RegressionSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts +51 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.js +366 -0
- package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/SpriteResizer.d.ts +44 -0
- package/.internal/charts/stock/drawing/SpriteResizer.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/SpriteResizer.js +254 -0
- package/.internal/charts/stock/drawing/SpriteResizer.js.map +1 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.js +68 -0
- package/.internal/charts/stock/drawing/TrendLineSeries.js.map +1 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.d.ts +22 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.d.ts.map +1 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.js +95 -0
- package/.internal/charts/stock/drawing/VerticalLineSeries.js.map +1 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.d.ts +43 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.js +120 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.js.map +1 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts +52 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js +178 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/Aroon.d.ts +48 -0
- package/.internal/charts/stock/indicators/Aroon.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/Aroon.js +145 -0
- package/.internal/charts/stock/indicators/Aroon.js.map +1 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts +43 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.js +120 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.js.map +1 -0
- package/.internal/charts/stock/indicators/BollingerBands.d.ts +51 -0
- package/.internal/charts/stock/indicators/BollingerBands.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/BollingerBands.js +194 -0
- package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts +39 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js +129 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.d.ts +43 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.js +130 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.js.map +1 -0
- package/.internal/charts/stock/indicators/ChartIndicator.d.ts +36 -0
- package/.internal/charts/stock/indicators/ChartIndicator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/ChartIndicator.js +140 -0
- package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.d.ts +58 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js +233 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/DisparityIndex.d.ts +40 -0
- package/.internal/charts/stock/indicators/DisparityIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/DisparityIndex.js +128 -0
- package/.internal/charts/stock/indicators/DisparityIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/Indicator.d.ts +114 -0
- package/.internal/charts/stock/indicators/Indicator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/Indicator.js +443 -0
- package/.internal/charts/stock/indicators/Indicator.js.map +1 -0
- package/.internal/charts/stock/indicators/MACD.d.ts +70 -0
- package/.internal/charts/stock/indicators/MACD.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MACD.js +233 -0
- package/.internal/charts/stock/indicators/MACD.js.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverage.d.ts +45 -0
- package/.internal/charts/stock/indicators/MovingAverage.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverage.js +174 -0
- package/.internal/charts/stock/indicators/MovingAverage.js.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.d.ts +54 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js +169 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.d.ts +60 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js +213 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.d.ts +39 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.js +115 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.js.map +1 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts +58 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js +275 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.d.ts +65 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.js +245 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.js.map +1 -0
- package/.internal/charts/stock/indicators/Volume.d.ts +43 -0
- package/.internal/charts/stock/indicators/Volume.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/Volume.js +107 -0
- package/.internal/charts/stock/indicators/Volume.js.map +1 -0
- package/.internal/charts/stock/indicators/WilliamsR.d.ts +58 -0
- package/.internal/charts/stock/indicators/WilliamsR.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/WilliamsR.js +235 -0
- package/.internal/charts/stock/indicators/WilliamsR.js.map +1 -0
- package/.internal/charts/stock/toolbar/ColorControl.d.ts +40 -0
- package/.internal/charts/stock/toolbar/ColorControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/ColorControl.js +118 -0
- package/.internal/charts/stock/toolbar/ColorControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.d.ts +21 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.js +35 -0
- package/.internal/charts/stock/toolbar/ComparisonControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts +44 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.js +346 -0
- package/.internal/charts/stock/toolbar/DateRangeSelector.js.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingControl.d.ts +134 -0
- package/.internal/charts/stock/toolbar/DrawingControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingControl.js +788 -0
- package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.d.ts +31 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.js +132 -0
- package/.internal/charts/stock/toolbar/DrawingToolControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/Dropdown.d.ts +38 -0
- package/.internal/charts/stock/toolbar/Dropdown.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/Dropdown.js +174 -0
- package/.internal/charts/stock/toolbar/Dropdown.js.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownColors.d.ts +38 -0
- package/.internal/charts/stock/toolbar/DropdownColors.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownColors.js +158 -0
- package/.internal/charts/stock/toolbar/DropdownColors.js.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownList.d.ts +52 -0
- package/.internal/charts/stock/toolbar/DropdownList.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownList.js +283 -0
- package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.d.ts +34 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.js +175 -0
- package/.internal/charts/stock/toolbar/DropdownListControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/IconControl.d.ts +38 -0
- package/.internal/charts/stock/toolbar/IconControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/IconControl.js +133 -0
- package/.internal/charts/stock/toolbar/IconControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts +32 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.js +271 -0
- package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/IntervalControl.d.ts +29 -0
- package/.internal/charts/stock/toolbar/IntervalControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/IntervalControl.js +35 -0
- package/.internal/charts/stock/toolbar/IntervalControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.d.ts +31 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.js +114 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -0
- package/.internal/charts/stock/toolbar/ResetControl.d.ts +24 -0
- package/.internal/charts/stock/toolbar/ResetControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/ResetControl.js +55 -0
- package/.internal/charts/stock/toolbar/ResetControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.d.ts +18 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.js +26 -0
- package/.internal/charts/stock/toolbar/SeriesTypeControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/SettingsControl.d.ts +28 -0
- package/.internal/charts/stock/toolbar/SettingsControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/SettingsControl.js +163 -0
- package/.internal/charts/stock/toolbar/SettingsControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockControl.d.ts +80 -0
- package/.internal/charts/stock/toolbar/StockControl.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockControl.js +199 -0
- package/.internal/charts/stock/toolbar/StockControl.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockIcons.d.ts +16 -0
- package/.internal/charts/stock/toolbar/StockIcons.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockIcons.js +86 -0
- package/.internal/charts/stock/toolbar/StockIcons.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbar.d.ts +57 -0
- package/.internal/charts/stock/toolbar/StockToolbar.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbar.js +118 -0
- package/.internal/charts/stock/toolbar/StockToolbar.js.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts +7 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts.map +1 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js +286 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js.map +1 -0
- package/.internal/charts/xy/axes/Axis.d.ts +1 -0
- package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/Axis.js +18 -0
- package/.internal/charts/xy/axes/Axis.js.map +1 -1
- package/.internal/charts/xy/axes/AxisRendererX.js +1 -1
- package/.internal/charts/xy/axes/AxisRendererX.js.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/DateAxis.js +1 -5
- package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.d.ts +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/BaseColumnSeries.js +1 -0
- package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
- package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/LineSeries.js +4 -1
- package/.internal/charts/xy/series/LineSeries.js.map +1 -1
- package/.internal/core/Classes.d.ts +124 -0
- package/.internal/core/Classes.d.ts.map +1 -1
- package/.internal/core/Classes.js.map +1 -1
- package/.internal/core/Root.d.ts +13 -12
- package/.internal/core/Root.d.ts.map +1 -1
- package/.internal/core/Root.js +22 -12
- package/.internal/core/Root.js.map +1 -1
- package/.internal/core/render/Legend.d.ts.map +1 -1
- package/.internal/core/render/Legend.js +16 -0
- package/.internal/core/render/Legend.js.map +1 -1
- package/.internal/core/util/Modal.d.ts.map +1 -1
- package/.internal/core/util/Modal.js +66 -2
- package/.internal/core/util/Modal.js.map +1 -1
- package/.internal/core/util/PopulateString.d.ts +4 -0
- package/.internal/core/util/PopulateString.d.ts.map +1 -1
- package/.internal/core/util/PopulateString.js +1 -1
- package/.internal/core/util/PopulateString.js.map +1 -1
- package/.internal/core/util/Utils.d.ts +16 -0
- package/.internal/core/util/Utils.d.ts.map +1 -1
- package/.internal/core/util/Utils.js +55 -3
- package/.internal/core/util/Utils.js.map +1 -1
- package/.internal/plugins/exporting/ExportingCSS.d.ts.map +1 -1
- package/.internal/plugins/exporting/ExportingCSS.js +1 -0
- package/.internal/plugins/exporting/ExportingCSS.js.map +1 -1
- package/.internal/plugins/exporting/ExportingMenu.js +2 -2
- package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
- package/.internal/plugins/json/Classes-script.d.ts +124 -0
- package/.internal/plugins/json/Classes-script.d.ts.map +1 -1
- package/.internal/plugins/json/Classes-script.js +62 -0
- package/.internal/plugins/json/Classes-script.js.map +1 -1
- package/.internal/plugins/json/Classes.d.ts +124 -0
- package/.internal/plugins/json/Classes.d.ts.map +1 -1
- package/.internal/plugins/json/Classes.js +62 -0
- package/.internal/plugins/json/Classes.js.map +1 -1
- package/.internal/themes/DefaultTheme.d.ts.map +1 -1
- package/.internal/themes/DefaultTheme.js +15 -0
- package/.internal/themes/DefaultTheme.js.map +1 -1
- package/CHANGELOG.md +13 -0
- 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/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/json/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/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/README.md +6 -0
- package/examples/javascript/stock-chart/index.css +11 -0
- package/examples/javascript/stock-chart/index.html +13 -0
- package/examples/javascript/stock-chart/index.js +552 -0
- package/examples/javascript/stock-chart/package.json +16 -0
- package/examples/javascript/stock-chart/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-comparing-stocks/README.md +6 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/AAPL_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/AMD_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/AMZN_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/GOOG_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/MSFT_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/NFLX_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/NVDA_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/data/TSLA_day.js +255 -0
- package/examples/javascript/stock-chart-comparing-stocks/index.css +11 -0
- package/examples/javascript/stock-chart-comparing-stocks/index.html +13 -0
- package/examples/javascript/stock-chart-comparing-stocks/index.js +361 -0
- package/examples/javascript/stock-chart-comparing-stocks/package.json +16 -0
- package/examples/javascript/stock-chart-comparing-stocks/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-data-granularity/README.md +6 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_day.js +255 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_minute.js +392 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_month.js +14 -0
- package/examples/javascript/stock-chart-data-granularity/data/MSFT_week.js +55 -0
- package/examples/javascript/stock-chart-data-granularity/index.css +11 -0
- package/examples/javascript/stock-chart-data-granularity/index.html +13 -0
- package/examples/javascript/stock-chart-data-granularity/index.js +344 -0
- package/examples/javascript/stock-chart-data-granularity/package.json +16 -0
- package/examples/javascript/stock-chart-data-granularity/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-data-grouping/README.md +6 -0
- package/examples/javascript/stock-chart-data-grouping/data/MSFT_day.js +3103 -0
- package/examples/javascript/stock-chart-data-grouping/index.css +11 -0
- package/examples/javascript/stock-chart-data-grouping/index.html +13 -0
- package/examples/javascript/stock-chart-data-grouping/index.js +343 -0
- package/examples/javascript/stock-chart-data-grouping/package.json +16 -0
- package/examples/javascript/stock-chart-data-grouping/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-intraday/README.md +6 -0
- package/examples/javascript/stock-chart-intraday/index.css +11 -0
- package/examples/javascript/stock-chart-intraday/index.html +13 -0
- package/examples/javascript/stock-chart-intraday/index.js +678 -0
- package/examples/javascript/stock-chart-intraday/package.json +16 -0
- package/examples/javascript/stock-chart-intraday/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-live/README.md +6 -0
- package/examples/javascript/stock-chart-live/index.css +11 -0
- package/examples/javascript/stock-chart-live/index.html +13 -0
- package/examples/javascript/stock-chart-live/index.js +308 -0
- package/examples/javascript/stock-chart-live/package.json +16 -0
- package/examples/javascript/stock-chart-live/webpack.config.js +38 -0
- package/examples/javascript/stock-chart-volume-separate-panel/README.md +6 -0
- package/examples/javascript/stock-chart-volume-separate-panel/index.css +11 -0
- package/examples/javascript/stock-chart-volume-separate-panel/index.html +13 -0
- package/examples/javascript/stock-chart-volume-separate-panel/index.js +590 -0
- package/examples/javascript/stock-chart-volume-separate-panel/package.json +16 -0
- package/examples/javascript/stock-chart-volume-separate-panel/webpack.config.js +38 -0
- 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-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/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/json/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/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/README.md +6 -0
- package/examples/typescript/stock-chart/index.css +11 -0
- package/examples/typescript/stock-chart/index.html +13 -0
- package/examples/typescript/stock-chart/index.ts +552 -0
- package/examples/typescript/stock-chart/package.json +18 -0
- package/examples/typescript/stock-chart/tsconfig.json +12 -0
- package/examples/typescript/stock-chart/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-comparing-stocks/README.md +6 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/AAPL_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/AMD_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/AMZN_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/GOOG_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/MSFT_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/NFLX_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/NVDA_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/data/TSLA_day.js +255 -0
- package/examples/typescript/stock-chart-comparing-stocks/index.css +11 -0
- package/examples/typescript/stock-chart-comparing-stocks/index.html +13 -0
- package/examples/typescript/stock-chart-comparing-stocks/index.ts +361 -0
- package/examples/typescript/stock-chart-comparing-stocks/package.json +18 -0
- package/examples/typescript/stock-chart-comparing-stocks/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-comparing-stocks/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-data-granularity/README.md +6 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_day.js +255 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_minute.js +392 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_month.js +14 -0
- package/examples/typescript/stock-chart-data-granularity/data/MSFT_week.js +55 -0
- package/examples/typescript/stock-chart-data-granularity/index.css +11 -0
- package/examples/typescript/stock-chart-data-granularity/index.html +13 -0
- package/examples/typescript/stock-chart-data-granularity/index.ts +344 -0
- package/examples/typescript/stock-chart-data-granularity/package.json +18 -0
- package/examples/typescript/stock-chart-data-granularity/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-data-granularity/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-data-grouping/README.md +6 -0
- package/examples/typescript/stock-chart-data-grouping/data/MSFT_day.js +3103 -0
- package/examples/typescript/stock-chart-data-grouping/index.css +11 -0
- package/examples/typescript/stock-chart-data-grouping/index.html +13 -0
- package/examples/typescript/stock-chart-data-grouping/index.ts +343 -0
- package/examples/typescript/stock-chart-data-grouping/package.json +18 -0
- package/examples/typescript/stock-chart-data-grouping/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-data-grouping/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-intraday/README.md +6 -0
- package/examples/typescript/stock-chart-intraday/index.css +11 -0
- package/examples/typescript/stock-chart-intraday/index.html +13 -0
- package/examples/typescript/stock-chart-intraday/index.ts +678 -0
- package/examples/typescript/stock-chart-intraday/package.json +18 -0
- package/examples/typescript/stock-chart-intraday/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-intraday/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-live/README.md +6 -0
- package/examples/typescript/stock-chart-live/index.css +11 -0
- package/examples/typescript/stock-chart-live/index.html +13 -0
- package/examples/typescript/stock-chart-live/index.ts +308 -0
- package/examples/typescript/stock-chart-live/package.json +18 -0
- package/examples/typescript/stock-chart-live/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-live/webpack.config.js +45 -0
- package/examples/typescript/stock-chart-volume-separate-panel/README.md +6 -0
- package/examples/typescript/stock-chart-volume-separate-panel/index.css +11 -0
- package/examples/typescript/stock-chart-volume-separate-panel/index.html +13 -0
- package/examples/typescript/stock-chart-volume-separate-panel/index.ts +590 -0
- package/examples/typescript/stock-chart-volume-separate-panel/package.json +18 -0
- package/examples/typescript/stock-chart-volume-separate-panel/tsconfig.json +12 -0
- package/examples/typescript/stock-chart-volume-separate-panel/webpack.config.js +45 -0
- 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 +3 -1
- package/stock.d.ts +64 -0
- package/stock.d.ts.map +1 -0
- package/stock.js +64 -0
- package/stock.js.map +1 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateAxis.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/axes/DateAxis.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataItem } from \"../../../core/render/Component\";\nimport type { AxisRenderer } from \"./AxisRenderer\";\nimport type { XYSeries, IXYSeriesDataItem } from \"../series/XYSeries\";\nimport { ValueAxis, IValueAxisSettings, IValueAxisPrivate, IValueAxisDataItem, IMinMaxStep, IValueAxisEvents } from \"./ValueAxis\";\nimport * as $type from \"../../../core/util/Type\";\nimport * as $order from \"../../../core/util/Order\";\nimport * as $array from \"../../../core/util/Array\";\nimport * as $object from \"../../../core/util/Object\";\nimport * as $utils from \"../../../core/util/Utils\";\nimport * as $time from \"../../../core/util/Time\";\nimport type { ITimeInterval } from \"../../../core/util/Time\";\n\nexport interface IDateAxisSettings<R extends AxisRenderer> extends IValueAxisSettings<R> {\n\n\t/**\n\t * Indicates granularity of data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Data_granularity} for more info\n\t */\n\tbaseInterval: ITimeInterval;\n\n\t/**\n\t * Relative location of where axis cell starts: 0 - beginning, 1 - end.\n\t *\n\t * @default 0\n\t */\n\tstartLocation?: number;\n\n\t/**\n\t * Relative location of where axis cell ends: 0 - beginning, 1 - end.\n\t *\n\t * @default 1\n\t */\n\tendLocation?: number;\n\n\t/**\n\t * Should axis group data items togeter dynamically?\n\t *\n\t * @default false\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupData?: boolean;\n\n\t/**\n\t * Maximum number of data items in the view before data grouping kicks in.\n\t *\n\t * @default 500\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupCount?: number;\n\n\t/**\n\t * Force data item grouping to specific interval.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupInterval?: ITimeInterval;\n\n\t/**\n\t * A list of intervals the axis is allowed to group data items into.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupIntervals?: Array<ITimeInterval>;\n\n\t/**\n\t * A list of intervals the axis is allowed to show grid/labels on.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Grid_granularity} for more info\n\t */\n\tgridIntervals?: Array<ITimeInterval>;\n\n\t/**\n\t * Display \"period change\" labels using different format.\n\t *\n\t * If set to `true`, will use `periodChangeDateFormats` instead\n\t * of `dateFormats` for such labels, e.g. for month start.\n\t *\n\t * @default true\n\t */\n\tmarkUnitChange?: boolean;\n\n\t/**\n\t * Date formats used for intermediate labels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Date_formats} for more info\n\t */\n\tdateFormats?: { [index: string]: string | Intl.DateTimeFormatOptions };\n\n\t/**\n\t * Date formats used for \"period change\" labels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Date_formats} for more info\n\t */\n\tperiodChangeDateFormats?: { [index: string]: string | Intl.DateTimeFormatOptions };\n\n\t/**\n\t * A date format to use for axis tooltip.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Axis_tooltip} for more info\n\t */\n\ttooltipDateFormat?: string | Intl.DateTimeFormatOptions;\n\n\t/**\n\t * Time unit-specific formats to use for axis tooltip.\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Axis_tooltip} for more info\n\t * @since 5.1.4\n\t */\n\ttooltipDateFormats?: { [index: string]: string | Intl.DateTimeFormatOptions };\n\n\t/**\n\t * A value which indicates relative position within axis cell to get timestamp\n\t * for the tooltip from.\n\t *\n\t * Values are from `0` (zero) to `1` (one), meaning start and end of the cell.\n\t *\n\t * If not set, it will use cell's start tiemstamp.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Axis_tooltip} for more info\n\t * @since 5.1.4\n\t */\n\ttooltipIntervalOffset?: number;\n\n}\n\nexport interface IDateAxisDataItem extends IValueAxisDataItem {\n}\n\nexport interface IDateAxisPrivate extends IValueAxisPrivate {\n\n\t/**\n\t * Current group interval.\n\t */\n\tgroupInterval?: ITimeInterval;\n\n\t/**\n\t * Current base interval.\n\t */\n\tbaseInterval: ITimeInterval;\n\n\t/**\n\t * Current grid interval.\n\t */\n\tgridInterval: ITimeInterval;\n}\n\nexport interface IDateAxisEvents extends IValueAxisEvents {\n}\n\n/**\n * Creates a date axis.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/} for more info\n * @important\n */\nexport class DateAxis<R extends AxisRenderer> extends ValueAxis<R> {\n\tpublic static className: string = \"DateAxis\";\n\tpublic static classNames: Array<string> = ValueAxis.classNames.concat([DateAxis.className]);\n\n\tdeclare public _settings: IDateAxisSettings<R>;\n\tdeclare public _privateSettings: IDateAxisPrivate;\n\tdeclare public _dataItemSettings: IDateAxisDataItem;\n\tdeclare public _events: IDateAxisEvents;\n\n\tprotected _dataGrouped: boolean = false;\n\tprotected _groupingCalculated: boolean = false;\n\tprotected _intervalDuration: number = 1;\n\tprotected _baseDuration: number = 1;\n\n\tpublic _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"axis\"]);\n\t\tsuper._afterNew();\n\t\tthis._setBaseInterval(this.get(\"baseInterval\"));\n\t\tthis.on(\"baseInterval\", () => {\n\t\t\tthis._setBaseInterval(this.get(\"baseInterval\"));\n\t\t})\n\t}\n\n\tprotected _setBaseInterval(interval: ITimeInterval) {\n\t\tthis.setPrivateRaw(\"baseInterval\", interval);\n\t\tthis._baseDuration = $time.getIntervalDuration(interval);\n\t}\n\n\tprotected _fixZoomFactor() {\n\t\tthis.setPrivateRaw(\"maxZoomFactor\", Math.round((this.getPrivate(\"max\", 0) - this.getPrivate(\"min\", 0)) / this.baseMainDuration()));\n\t}\n\n\tprotected _groupData() {\n\t\tconst min = this.getPrivate(\"min\");\n\t\tconst max = this.getPrivate(\"max\");\n\n\t\tif (($type.isNumber(min) && $type.isNumber(max))) {\n\n\t\t\tthis._fixZoomFactor();\n\n\t\t\tconst groupInterval = this.getPrivate(\"groupInterval\")!;\n\t\t\tif (groupInterval) {\n\t\t\t\tthis._setBaseInterval(groupInterval);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._setBaseInterval(this.get(\"baseInterval\"));\n\t\t\t}\n\n\n\t\t\tif (this.isDirty(\"groupInterval\")) {\n\t\t\t\tlet groupInterval = this.get(\"groupInterval\")!;\n\t\t\t\tif (groupInterval) {\n\t\t\t\t\tthis.setRaw(\"groupIntervals\", [groupInterval]);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.isDirty(\"groupData\")) {\n\t\t\t\tif (!this._dataGrouped) {\n\t\t\t\t\tif (this.get(\"groupData\")) {\n\t\t\t\t\t\t$array.each(this.series, (series) => {\n\t\t\t\t\t\t\tthis._groupSeriesData(series);\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tthis._handleRangeChange();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tlet baseInterval = this.get(\"baseInterval\");\n\t\t\t\t\t\tlet mainDataSetId: string = baseInterval.timeUnit + baseInterval.count;\n\t\t\t\t\t\t$array.each(this.series, (series) => {\n\t\t\t\t\t\t\tseries.setDataSet(mainDataSetId);\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tthis._setBaseInterval(baseInterval);\n\t\t\t\t\t\tthis.setPrivateRaw(\"groupInterval\", undefined);\n\t\t\t\t\t\tthis.markDirtyExtremes();\n\t\t\t\t\t}\n\t\t\t\t\tthis._dataGrouped = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\n\tpublic _groupSeriesData(series: XYSeries) {\n\t\tif (this.get(\"groupData\") && !series.get(\"groupDataDisabled\")) {\n\t\t\t// make array of intervals which will be used;\n\t\t\tlet intervals: ITimeInterval[] = [];\n\t\t\tlet baseDuration = this.baseMainDuration();\n\n\t\t\tlet groupIntervals = this.get(\"groupIntervals\")!;\n\t\t\tif (groupIntervals) { }\n\t\t\t$array.each(groupIntervals, (interval) => {\n\t\t\t\tlet intervalDuration = $time.getIntervalDuration(interval);\n\t\t\t\tif (intervalDuration > baseDuration) {\n\t\t\t\t\tintervals.push(interval);\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tseries._dataSets = {};\n\n\t\t\tconst key = this.getPrivate(\"name\")! + this.get(\"renderer\").getPrivate(\"letter\")!;\n\t\t\tlet fields: Array<string>;\n\n\t\t\tconst baseAxis = series.get(\"baseAxis\");\n\n\t\t\tif (series.get(\"xAxis\") === baseAxis) {\n\t\t\t\tfields = series._valueYFields;\n\t\t\t}\n\t\t\telse if (series.get(\"yAxis\") === baseAxis) {\n\t\t\t\tfields = series._valueXFields;\n\t\t\t}\n\n\t\t\tlet dataItems = series._mainDataItems;\n\t\t\tlet baseInterval = this.get(\"baseInterval\");\n\t\t\tlet mainDataSetId: string = baseInterval.timeUnit + baseInterval.count;\n\n\t\t\tseries._dataSets[mainDataSetId] = dataItems;\n\n\t\t\tconst groupCallback = series.get(\"groupDataCallback\");\n\t\t\tlet groupOriginals = series.get(\"groupDataWithOriginals\", false);\n\t\t\tif (groupCallback) {\n\t\t\t\tgroupOriginals = true;\n\t\t\t}\n\n\t\t\t$array.eachContinue(intervals, (interval) => {\n\n\t\t\t\tlet previousTime = -Infinity;\n\t\t\t\tlet dataSetId = interval.timeUnit + interval.count;\n\t\t\t\tseries._dataSets[dataSetId] = [];\n\n\t\t\t\tlet newDataItem: DataItem<IXYSeriesDataItem>;\n\n\t\t\t\tlet sum: { [index: string]: number } = {};\n\t\t\t\tlet count: { [index: string]: number } = {};\n\n\t\t\t\tlet groupFieldValues: { [index: string]: string } = {};\n\t\t\t\tlet workingFields: { [index: string]: string } = {};\n\n\t\t\t\t$array.each(fields, (field) => {\n\t\t\t\t\tsum[field] = 0;\n\t\t\t\t\tcount[field] = 0;\n\t\t\t\t\tgroupFieldValues[field] = series.get((field + \"Grouped\") as any);\n\t\t\t\t\tworkingFields[field] = field + \"Working\";\n\t\t\t\t})\n\n\t\t\t\tlet intervalDuration = $time.getDuration(interval.timeUnit);\n\n\t\t\t\tlet firstItem = dataItems[0];\n\t\t\t\tlet firstDate: Date;\n\t\t\t\tif (firstItem) {\n\t\t\t\t\tfirstDate = new Date(dataItems[0].get(key as any));\n\t\t\t\t}\n\n\t\t\t\tlet prevNewDataItem: DataItem<IXYSeriesDataItem> | undefined;\n\n\t\t\t\t$array.each(dataItems, (dataItem) => {\n\t\t\t\t\tlet time = dataItem.get(key as any);\n\t\t\t\t\tlet roundedTime = $time.round(new Date(time), interval.timeUnit, interval.count, this._root.locale.firstDayOfWeek, this._root.utc, firstDate, this._root.timezone).getTime();\n\t\t\t\t\tlet dataContext: any;\n\n\t\t\t\t\tif (previousTime < roundedTime - intervalDuration / 24) {\n\t\t\t\t\t\tdataContext = $object.copy(dataItem.dataContext);\n\n\t\t\t\t\t\tnewDataItem = new DataItem(series, dataContext, series._makeDataItem(dataContext));\n\t\t\t\t\t\tnewDataItem.setRaw(key as any, roundedTime);\n\n\t\t\t\t\t\tseries._dataSets[dataSetId].push(newDataItem);\n\n\t\t\t\t\t\t$array.each(fields, (field) => {\n\t\t\t\t\t\t\tlet value = dataItem.get(field as any);\n\t\t\t\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\tnewDataItem.setRaw(workingFields[field] as any, value);\n\t\t\t\t\t\t\t\tcount[field]++;\n\t\t\t\t\t\t\t\tsum[field] += value;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tif (groupOriginals) {\n\t\t\t\t\t\t\tnewDataItem.set(\"originals\", [dataItem]);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (groupCallback && prevNewDataItem) {\n\t\t\t\t\t\t\tgroupCallback(prevNewDataItem, interval);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tprevNewDataItem = newDataItem;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\t$array.each(fields, (field) => {\n\t\t\t\t\t\t\tlet groupKey = groupFieldValues[field];\n\t\t\t\t\t\t\tlet value = dataItem.get(field as any);\n\n\t\t\t\t\t\t\tif (value !== undefined) {\n\n\t\t\t\t\t\t\t\tlet currentValue = newDataItem.get(field as any);\n\n\t\t\t\t\t\t\t\tswitch (groupKey) {\n\t\t\t\t\t\t\t\t\tcase \"close\":\n\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"sum\":\n\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, currentValue + value);\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"open\":\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"low\":\n\t\t\t\t\t\t\t\t\t\tif (value < currentValue) {\n\t\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"high\":\n\t\t\t\t\t\t\t\t\t\tif (value > currentValue) {\n\t\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"average\":\n\t\t\t\t\t\t\t\t\t\tcount[field]++;\n\t\t\t\t\t\t\t\t\t\tsum[field] += value;\n\t\t\t\t\t\t\t\t\t\tlet average = sum[field] / count[field];\n\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, average);\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"extreme\":\n\t\t\t\t\t\t\t\t\t\tif (Math.abs(value) > Math.abs(currentValue)) {\n\t\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tnewDataItem.setRaw(workingFields[field] as any, newDataItem.get(field as any));\n\t\t\t\t\t\t\t\tlet dataContext: any = $object.copy(dataItem.dataContext);\n\t\t\t\t\t\t\t\tdataContext[key as any] = roundedTime;\n\t\t\t\t\t\t\t\tnewDataItem.dataContext = dataContext;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tif (groupOriginals) {\n\t\t\t\t\t\t\tnewDataItem.get(\"originals\")!.push(dataItem);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tpreviousTime = roundedTime;\n\t\t\t\t})\n\n\t\t\t\tif (groupCallback && prevNewDataItem) {\n\t\t\t\t\tgroupCallback(prevNewDataItem, interval);\n\t\t\t\t}\n\n\t\t\t\tif (series._dataSets[dataSetId].length < this.get(\"groupCount\", Infinity)) {\n\t\t\t\t\treturn false\n\t\t\t\t}\n\t\t\t\treturn true;\n\t\t\t})\n\t\t\tif (series._dataSetId) {\n\t\t\t\tseries.setDataSet(series._dataSetId);\n\t\t\t}\n\t\t\tthis.markDirtySize();\n\t\t}\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._groupingCalculated = false;\n\t\tthis._dataGrouped = false;\n\t}\n\n\tprotected _handleRangeChange() {\n\t\tsuper._handleRangeChange();\n\n\t\tconst selectionMin = this.getPrivate(\"selectionMin\");\n\t\tconst selectionMax = this.getPrivate(\"selectionMax\");\n\n\t\tif ($type.isNumber(selectionMin) && $type.isNumber(selectionMax)) {\n\n\t\t\tif (this.get(\"groupData\") && !this._groupingCalculated) {\n\t\t\t\tthis._groupingCalculated = true;\n\t\t\t\tlet baseInterval = this.get(\"baseInterval\");\n\n\t\t\t\tlet modifiedDifference = (selectionMax - selectionMin) + (this.get(\"startLocation\", 0) + (1 - this.get(\"endLocation\", 1)) * this.baseDuration());\n\t\t\t\tlet groupInterval = this.get(\"groupInterval\");\n\n\t\t\t\tif (!groupInterval) {\n\t\t\t\t\tconst groupIntervals = this.get(\"groupIntervals\")!;\n\t\t\t\t\tif (groupIntervals) {\n\t\t\t\t\t\tgroupInterval = $time.chooseInterval(0, modifiedDifference, this.get(\"groupCount\", Infinity), groupIntervals);\n\t\t\t\t\t\tif ($time.getIntervalDuration(groupInterval) < $time.getIntervalDuration(baseInterval)) {\n\t\t\t\t\t\t\tgroupInterval = { ...baseInterval };\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet current = this.getPrivate(\"groupInterval\");\n\n\t\t\t\tif (groupInterval && (!current || (current.timeUnit !== groupInterval.timeUnit || current.count !== groupInterval.count))) {\n\t\t\t\t\tthis.setPrivateRaw(\"groupInterval\", groupInterval);\n\t\t\t\t\tthis._setBaseInterval(groupInterval)\n\n\t\t\t\t\tif (groupInterval) {\n\t\t\t\t\t\tlet newId = groupInterval.timeUnit + groupInterval.count;\n\t\t\t\t\t\t$array.each(this.series, (series) => {\n\t\t\t\t\t\t\tif (series.get(\"baseAxis\") === this) {\n\t\t\t\t\t\t\t\tseries.setDataSet(newId);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\tthis.markDirtyExtremes();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$array.each(this.series, (series) => {\n\t\t\t\tif (series.get(\"baseAxis\") === this) {\n\t\t\t\t\tlet fieldName = <any>(this.getPrivate(\"name\")! + this.get(\"renderer\").getPrivate(\"letter\")!);\n\n\t\t\t\t\tconst start = $array.getSortedIndex(series.dataItems, (dataItem) => {\n\t\t\t\t\t\treturn $order.compare(dataItem.get(fieldName), selectionMin);\n\t\t\t\t\t});\n\n\t\t\t\t\tlet startIndex = start.index;\n\n\t\t\t\t\tif (startIndex > 0) {\n\t\t\t\t\t\tstartIndex -= 1;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst end = $array.getSortedIndex(series.dataItems, (dataItem) => {\n\t\t\t\t\t\treturn $order.compare(dataItem.get(fieldName), selectionMax);\n\t\t\t\t\t});\n\t\t\t\t\tlet endIndex = end.index;\n\n\t\t\t\t\tlet endIndex2 = endIndex;\n\t\t\t\t\tif (endIndex2 > 0) {\n\t\t\t\t\t\tendIndex2--;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst firstDataItem = series.dataItems[startIndex];\n\t\t\t\t\tconst lastDataItem = series.dataItems[endIndex2];\n\n\t\t\t\t\tlet lastDate: number | undefined;\n\t\t\t\t\tlet firstDate: number | undefined;\n\t\t\t\t\tif (firstDataItem) {\n\t\t\t\t\t\tfirstDate = firstDataItem.get(fieldName);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (lastDataItem) {\n\t\t\t\t\t\tlastDate = lastDataItem.get(fieldName);\n\t\t\t\t\t}\n\n\t\t\t\t\tlet outOfSelection = false;\n\t\t\t\t\tif (lastDate != null && firstDate != null) {\n\t\t\t\t\t\tif (lastDate < selectionMin || firstDate > selectionMax) {\n\t\t\t\t\t\t\toutOfSelection = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tseries.setPrivate(\"outOfSelection\", outOfSelection);\n\t\t\t\t\tseries.setPrivate(\"startIndex\", startIndex);\n\t\t\t\t\tseries.setPrivate(\"endIndex\", endIndex);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _adjustMinMax(min: number, max: number, gridCount: number, _strictMode?: boolean): IMinMaxStep {\n\t\treturn { min: min, max: max, step: (max - min) / gridCount };\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic intervalDuration(): number {\n\t\treturn this._intervalDuration;\n\t}\n\n\tprotected _prepareAxisItems() {\n\t\tconst min = this.getPrivate(\"min\");\n\t\tconst max = this.getPrivate(\"max\");\n\n\t\tif ($type.isNumber(min) && $type.isNumber(max)) {\n\t\t\tconst selectionMin = this.getPrivate(\"selectionMin\")! as number;\n\t\t\tconst selectionMax = this.getPrivate(\"selectionMax\")! as number;\n\t\t\tconst renderer = this.get(\"renderer\");\n\t\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\n\n\t\t\tlet value = selectionMin;\n\t\t\tlet i = 0;\n\n\t\t\tconst intervals = this.get(\"gridIntervals\")!;\n\t\t\tlet gridInterval = $time.chooseInterval(0, selectionMax - selectionMin, renderer.gridCount(), intervals);\n\n\t\t\tif ($time.getIntervalDuration(gridInterval) < this.baseDuration()) {\n\t\t\t\tgridInterval = { ...baseInterval };\n\t\t\t}\n\n\t\t\tconst intervalDuration = $time.getIntervalDuration(gridInterval);\n\t\t\tthis._intervalDuration = intervalDuration;\n\n\t\t\tconst nextGridUnit = $time.getNextUnit(gridInterval.timeUnit);\n\n\t\t\tvalue = $time.round(new Date(selectionMin - intervalDuration), gridInterval.timeUnit, gridInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, new Date(min), this._root.timezone).getTime();\n\t\t\tlet previousValue = value - intervalDuration;\n\t\t\tlet format: string | Intl.DateTimeFormatOptions;\n\t\t\tconst formats = this.get(\"dateFormats\")!;\n\n\t\t\tthis.setPrivateRaw(\"gridInterval\", gridInterval);\n\n\t\t\twhile (value < selectionMax + intervalDuration) {\n\t\t\t\tlet dataItem: DataItem<this[\"_dataItemSettings\"]>;\n\t\t\t\tif (this.dataItems.length < i + 1) {\n\t\t\t\t\tdataItem = new DataItem(this, undefined, {});\n\t\t\t\t\tthis._dataItems.push(dataItem);\n\t\t\t\t\tthis.processDataItem(dataItem);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tdataItem = this.dataItems[i];\n\t\t\t\t}\n\n\t\t\t\tthis._createAssets(dataItem, []);\n\n\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\tdataItem.show();\n\t\t\t\t}\n\n\t\t\t\tdataItem.setRaw(\"value\", value);\n\t\t\t\tdataItem.setRaw(\"endValue\", $time.add(new Date(value), gridInterval.timeUnit, gridInterval.count, this._root.utc).getTime()) //$time.round(new Date(value + intervalDuration * 1.1), gridInterval.timeUnit, gridInterval.count).getTime());\n\n\t\t\t\tlet date = new Date(value);\n\n\t\t\t\tformat = formats[gridInterval.timeUnit];\n\t\t\t\tif (nextGridUnit && this.get(\"markUnitChange\") && $type.isNumber(previousValue)) {\n\t\t\t\t\tif (gridInterval.timeUnit != \"year\") {\n\t\t\t\t\t\tif ($time.checkChange(value, previousValue, nextGridUnit, this._root.utc, this._root.timezone)) {\n\t\t\t\t\t\t\tformat = this.get(\"periodChangeDateFormats\")![gridInterval.timeUnit];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tif (label) {\n\t\t\t\t\tlabel.set(\"text\", this._root.dateFormatter.format(date, format!));\n\t\t\t\t}\n\n\t\t\t\tthis._prepareDataItem(dataItem, gridInterval.count);\n\n\t\t\t\tpreviousValue = value;\n\n\t\t\t\tvalue = $time.add(new Date(value), gridInterval.timeUnit, gridInterval.count, this._root.utc).getTime();\n\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\tfor (let j = i; j < this.dataItems.length; j++) {\n\t\t\t\tthis.dataItems[j].hide();\n\t\t\t}\n\n\t\t\t$array.each(this.series, (series) => {\n\t\t\t\tif (series.inited) {\n\t\t\t\t\tseries._markDirtyAxes();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tthis._updateGhost();\n\t}\n\n\tprotected _fixMin(min: number) {\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tlet startTime = $time.round(new Date(min), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, undefined, this._root.timezone).getTime();\n\t\tlet endTime = $time.add(new Date(startTime), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\n\t\treturn startTime + (endTime - startTime) * this.get(\"startLocation\", 0);\n\t}\n\t/* goes up to the year\n\tprotected _getFormat(timeUnit: TimeUnit, value: number, previousValue: number) {\n\t\tconst formats = this.get(\"dateFormats\")!;\n\t\tlet format = formats[timeUnit];\n\n\t\tif (this.get(\"markUnitChange\")) {\n\t\t\tlet nextGridUnit = $time.getNextUnit(timeUnit);\n\n\t\t\twhile (nextGridUnit != undefined) {\n\n\t\t\t\tif (nextGridUnit) {\n\t\t\t\t\tif (timeUnit != \"year\") {\n\t\t\t\t\t\tif ($time.checkChange(value, previousValue, nextGridUnit, this._root.utc, this._root.timezone)) {\n\t\t\t\t\t\t\tformat = this.get(\"periodChangeDateFormats\")![timeUnit];\n\t\t\t\t\t\t\ttimeUnit = nextGridUnit;\n\t\t\t\t\t\t\tnextGridUnit = $time.getNextUnit(nextGridUnit);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tnextGridUnit = undefined;\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\tnextGridUnit = undefined;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn format;\n\t}\n\t*/\n\tprotected _fixMax(max: number) {\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tlet startTime = $time.round(new Date(max), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, undefined, this._root.timezone).getTime();\n\t\tlet endTime = $time.add(new Date(startTime), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\n\t\treturn startTime + (endTime - startTime) * this.get(\"endLocation\", 1);\n\t}\n\n\tprotected _updateDates(_date: number) {\n\n\t}\n\n\t/**\n\t * Returns a duration of currently active `baseInterval` in milliseconds.\n\t * \n\t * @return Duration\n\t */\n\tpublic baseDuration(): number {\n\t\treturn this._baseDuration;\n\t\t//return $time.getIntervalDuration(this.getPrivate(\"baseInterval\"));\n\t}\n\n\t/**\n\t * Returns a duration of user-defined `baseInterval` in milliseconds.\n\t *\n\t * @return Duration\n\t */\n\tpublic baseMainDuration(): number {\n\t\treturn $time.getIntervalDuration(this.get(\"baseInterval\"));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic processSeriesDataItem(dataItem: DataItem<IXYSeriesDataItem>, fields: Array<string>) {\n\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\n\n\t\tdataItem.open = {};\n\t\tdataItem.close = {};\n\n\t\t$array.each(fields, (field) => {\n\t\t\tlet value = dataItem.get(field as any);\n\t\t\tif ($type.isNumber(value)) {\n\t\t\t\tlet startTime = $time.round(new Date(value), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, undefined, this._root.timezone).getTime();\n\t\t\t\tlet endTime = $time.add(new Date(startTime), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\t\t\t\tdataItem.open![field] = startTime;\n\t\t\t\tdataItem.close![field] = endTime;\n\n\t\t\t\tthis._updateDates(startTime);\n\t\t\t}\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemPositionX(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\n\t\tlet openValue;\n\t\tlet closeValue;\n\n\t\tif (dataItem.open && dataItem.close) {\n\t\t\topenValue = dataItem.open[field];\n\t\t\tcloseValue = dataItem.close[field];\n\t\t}\n\t\telse {\n\t\t\topenValue = dataItem.get(field as any)\n\t\t\tcloseValue = openValue;\n\t\t}\n\n\t\tlet value = openValue + (closeValue - openValue) * cellLocation;\n\n\t\tvalue = this._baseValue + (value - this._baseValue) * axisLocation;\n\n\t\treturn this.valueToPosition(value);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemCoordinateX(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\t\treturn this._settings.renderer.positionToCoordinate(this.getDataItemPositionX(dataItem, field, cellLocation, axisLocation));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemPositionY(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\t\tlet openValue;\n\t\tlet closeValue;\n\n\t\tif (dataItem.open && dataItem.close) {\n\t\t\topenValue = dataItem.open[field];\n\t\t\tcloseValue = dataItem.close[field];\n\t\t}\n\t\telse {\n\t\t\topenValue = dataItem.get(field as any)\n\t\t\tcloseValue = openValue;\n\t\t}\n\n\t\tlet value = openValue + (closeValue - openValue) * cellLocation;\n\n\t\tvalue = this._baseValue + (value - this._baseValue) * axisLocation;\n\t\treturn this.valueToPosition(value);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemCoordinateY(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\t\treturn this._settings.renderer.positionToCoordinate(this.getDataItemPositionY(dataItem, field, cellLocation, axisLocation));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic roundAxisPosition(position: number, location: number): number {\n\t\tlet value = this.positionToValue(position);\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tvalue = $time.round(new Date(value), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, new Date(this.getPrivate(\"min\", 0)), this._root.timezone).getTime();\n\t\tlet endValue = value;\n\t\tif (location > 0) {\n\t\t\tendValue = $time.add(new Date(value), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\t\t}\n\t\treturn this.valueToPosition(value + (endValue - value) * location);\n\t}\n\n\t/**\n\t * Returns text to be used in an axis tooltip for specific relative position.\n\t *\n\t * @param position Position\n\t * @return Tooltip text\n\t */\n\tpublic getTooltipText(position: number): string | undefined {\n\t\t//@todo number formatter + tag\n\n\t\tlet format = this.get(\"tooltipDateFormats\")![this.getPrivate(\"baseInterval\").timeUnit];\n\t\tlet date = new Date(this.positionToValue(position));\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tlet duration = $time.getDateIntervalDuration(baseInterval, date, this._root.locale.firstDayOfWeek, this._root.utc, this._root.timezone);\n\t\treturn this._root.dateFormatter.format(new Date(this.positionToValue(position) + this.get(\"tooltipIntervalOffset\", -this.get(\"tooltipLocation\", 0.5)) * duration), this.get(\"tooltipDateFormat\", format));\n\t}\n\n\t/**\n\t * Returns a data item from series that is closest to the `position`.\n\t *\n\t * @param series Series\n\t * @param position Relative position\n\t * @return Data item\n\t */\n\tpublic getSeriesItem(series: XYSeries, position: number): DataItem<IXYSeriesDataItem> | undefined {\n\t\tlet fieldName = <any>(this.getPrivate(\"name\")! + this.get(\"renderer\").getPrivate(\"letter\")!);\n\t\tlet value = this.positionToValue(position);\n\t\tconst result = $array.getSortedIndex(series.dataItems, (dataItem) => {\n\t\t\tvar diValue = 0;\n\t\t\tif (dataItem.open) {\n\t\t\t\tdiValue = dataItem.open[fieldName];\n\t\t\t}\n\n\t\t\treturn $order.compare(diValue, value);\n\t\t});\n\n\t\tif (series.get(\"snapTooltip\")) {\n\t\t\tlet first = series.dataItems[result.index - 1];\n\t\t\tlet second = series.dataItems[result.index];\n\n\t\t\tif (first && second) {\n\t\t\t\tif (first.open && second.close) {\n\t\t\t\t\tlet open = first.open[fieldName];\n\t\t\t\t\tlet close = second.close[fieldName];\n\n\t\t\t\t\tif (Math.abs(value - open) > Math.abs(value - close)) {\n\t\t\t\t\t\treturn second;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn first;\n\t\t}\n\t\telse {\n\t\t\t// @todo check if is in range\n\t\t\tconst dataItem = series.dataItems[result.index - 1];\n\n\t\t\tif (dataItem) {\n\t\t\t\tif (dataItem.open && dataItem.close) {\n\t\t\t\t\tlet open = dataItem.open[fieldName];\n\t\t\t\t\tlet close = dataItem.close[fieldName];\n\n\t\t\t\t\tif (value >= open && value <= close) {\n\t\t\t\t\t\treturn dataItem;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic shouldGap(dataItem: DataItem<IXYSeriesDataItem>, nextItem: DataItem<IXYSeriesDataItem>, autoGapCount: number, fieldName: string): boolean {\n\t\tconst value1 = dataItem.get(fieldName as any);\n\t\tconst value2 = nextItem.get(fieldName as any);\n\n\t\tif (value2 - value1 > this.baseDuration() * autoGapCount) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Zooms the axis to specific `start` and `end` dates.\n\t *\n\t * Optional `duration` specifies duration of zoom animation in milliseconds.\n\t *\n\t * @param start Start Date\n\t * @param end End Date\n\t * @param duration Duration in milliseconds\n\t */\n\tpublic zoomToDates(start: Date, end: Date, duration?: number) {\n\t\tthis.zoomToValues(start.getTime(), end.getTime(), duration);\n\t}\n\n\t/**\n\t * Returns a `Date` object corresponding to specific position within plot\n\t * area.\n\t *\n\t * @param position Pposition\n\t * @return Date\n\t */\n\tpublic positionToDate(position: number): Date {\n\t\treturn new Date(this.positionToValue(position));\n\t}\n\n\t/**\n\t * Returns a relative position within plot area that corresponds to specific\n\t * date.\n\t *\n\t * @param date Date\n\t * @return Position\n\t */\n\tpublic dateToPosition(date: Date): number {\n\t\treturn this.valueToPosition(date.getTime());\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"DateAxis.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/axes/DateAxis.ts"],"names":[],"mappings":"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","sourcesContent":["import { DataItem } from \"../../../core/render/Component\";\nimport type { AxisRenderer } from \"./AxisRenderer\";\nimport type { XYSeries, IXYSeriesDataItem } from \"../series/XYSeries\";\nimport { ValueAxis, IValueAxisSettings, IValueAxisPrivate, IValueAxisDataItem, IMinMaxStep, IValueAxisEvents } from \"./ValueAxis\";\nimport * as $type from \"../../../core/util/Type\";\nimport * as $order from \"../../../core/util/Order\";\nimport * as $array from \"../../../core/util/Array\";\nimport * as $object from \"../../../core/util/Object\";\nimport * as $utils from \"../../../core/util/Utils\";\nimport * as $time from \"../../../core/util/Time\";\nimport type { ITimeInterval } from \"../../../core/util/Time\";\n\nexport interface IDateAxisSettings<R extends AxisRenderer> extends IValueAxisSettings<R> {\n\n\t/**\n\t * Indicates granularity of data.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Data_granularity} for more info\n\t */\n\tbaseInterval: ITimeInterval;\n\n\t/**\n\t * Relative location of where axis cell starts: 0 - beginning, 1 - end.\n\t *\n\t * @default 0\n\t */\n\tstartLocation?: number;\n\n\t/**\n\t * Relative location of where axis cell ends: 0 - beginning, 1 - end.\n\t *\n\t * @default 1\n\t */\n\tendLocation?: number;\n\n\t/**\n\t * Should axis group data items togeter dynamically?\n\t *\n\t * @default false\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupData?: boolean;\n\n\t/**\n\t * Maximum number of data items in the view before data grouping kicks in.\n\t *\n\t * @default 500\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupCount?: number;\n\n\t/**\n\t * Force data item grouping to specific interval.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupInterval?: ITimeInterval;\n\n\t/**\n\t * A list of intervals the axis is allowed to group data items into.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Dynamic_data_item_grouping} for more info\n\t */\n\tgroupIntervals?: Array<ITimeInterval>;\n\n\t/**\n\t * A list of intervals the axis is allowed to show grid/labels on.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Grid_granularity} for more info\n\t */\n\tgridIntervals?: Array<ITimeInterval>;\n\n\t/**\n\t * Display \"period change\" labels using different format.\n\t *\n\t * If set to `true`, will use `periodChangeDateFormats` instead\n\t * of `dateFormats` for such labels, e.g. for month start.\n\t *\n\t * @default true\n\t */\n\tmarkUnitChange?: boolean;\n\n\t/**\n\t * Date formats used for intermediate labels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Date_formats} for more info\n\t */\n\tdateFormats?: { [index: string]: string | Intl.DateTimeFormatOptions };\n\n\t/**\n\t * Date formats used for \"period change\" labels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Date_formats} for more info\n\t */\n\tperiodChangeDateFormats?: { [index: string]: string | Intl.DateTimeFormatOptions };\n\n\t/**\n\t * A date format to use for axis tooltip.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Axis_tooltip} for more info\n\t */\n\ttooltipDateFormat?: string | Intl.DateTimeFormatOptions;\n\n\t/**\n\t * Time unit-specific formats to use for axis tooltip.\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Axis_tooltip} for more info\n\t * @since 5.1.4\n\t */\n\ttooltipDateFormats?: { [index: string]: string | Intl.DateTimeFormatOptions };\n\n\t/**\n\t * A value which indicates relative position within axis cell to get timestamp\n\t * for the tooltip from.\n\t *\n\t * Values are from `0` (zero) to `1` (one), meaning start and end of the cell.\n\t *\n\t * If not set, it will use cell's start tiemstamp.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/#Axis_tooltip} for more info\n\t * @since 5.1.4\n\t */\n\ttooltipIntervalOffset?: number;\n\n}\n\nexport interface IDateAxisDataItem extends IValueAxisDataItem {\n}\n\nexport interface IDateAxisPrivate extends IValueAxisPrivate {\n\n\t/**\n\t * Current group interval.\n\t */\n\tgroupInterval?: ITimeInterval;\n\n\t/**\n\t * Current base interval.\n\t */\n\tbaseInterval: ITimeInterval;\n\n\t/**\n\t * Current grid interval.\n\t */\n\tgridInterval: ITimeInterval;\n}\n\nexport interface IDateAxisEvents extends IValueAxisEvents {\n}\n\n/**\n * Creates a date axis.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/date-axis/} for more info\n * @important\n */\nexport class DateAxis<R extends AxisRenderer> extends ValueAxis<R> {\n\tpublic static className: string = \"DateAxis\";\n\tpublic static classNames: Array<string> = ValueAxis.classNames.concat([DateAxis.className]);\n\n\tdeclare public _settings: IDateAxisSettings<R>;\n\tdeclare public _privateSettings: IDateAxisPrivate;\n\tdeclare public _dataItemSettings: IDateAxisDataItem;\n\tdeclare public _events: IDateAxisEvents;\n\n\tprotected _dataGrouped: boolean = false;\n\tprotected _groupingCalculated: boolean = false;\n\tprotected _intervalDuration: number = 1;\n\tprotected _baseDuration: number = 1;\n\n\tpublic _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"axis\"]);\n\t\tsuper._afterNew();\n\t\tthis._setBaseInterval(this.get(\"baseInterval\"));\n\t\tthis.on(\"baseInterval\", () => {\n\t\t\tthis._setBaseInterval(this.get(\"baseInterval\"));\n\t\t})\n\t}\n\n\tprotected _setBaseInterval(interval: ITimeInterval) {\n\t\tthis.setPrivateRaw(\"baseInterval\", interval);\n\t\tthis._baseDuration = $time.getIntervalDuration(interval);\n\t}\n\n\tprotected _fixZoomFactor() {\n\t\tthis.setPrivateRaw(\"maxZoomFactor\", Math.round((this.getPrivate(\"max\", 0) - this.getPrivate(\"min\", 0)) / this.baseMainDuration()));\n\t}\n\n\tprotected _groupData() {\n\t\tconst min = this.getPrivate(\"min\");\n\t\tconst max = this.getPrivate(\"max\");\n\n\t\tif (($type.isNumber(min) && $type.isNumber(max))) {\n\n\t\t\tthis._fixZoomFactor();\n\n\t\t\tconst groupInterval = this.getPrivate(\"groupInterval\")!;\n\t\t\tif (groupInterval) {\n\t\t\t\tthis._setBaseInterval(groupInterval);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._setBaseInterval(this.get(\"baseInterval\"));\n\t\t\t}\n\n\n\t\t\tif (this.isDirty(\"groupInterval\")) {\n\t\t\t\tlet groupInterval = this.get(\"groupInterval\")!;\n\t\t\t\tif (groupInterval) {\n\t\t\t\t\tthis.setRaw(\"groupIntervals\", [groupInterval]);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.isDirty(\"groupData\")) {\n\t\t\t\tif (!this._dataGrouped) {\n\t\t\t\t\tif (this.get(\"groupData\")) {\n\t\t\t\t\t\t$array.each(this.series, (series) => {\n\t\t\t\t\t\t\tthis._groupSeriesData(series);\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tthis._handleRangeChange();\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tlet baseInterval = this.get(\"baseInterval\");\n\t\t\t\t\t\tlet mainDataSetId: string = baseInterval.timeUnit + baseInterval.count;\n\t\t\t\t\t\t$array.each(this.series, (series) => {\n\t\t\t\t\t\t\tseries.setDataSet(mainDataSetId);\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tthis._setBaseInterval(baseInterval);\n\t\t\t\t\t\tthis.setPrivateRaw(\"groupInterval\", undefined);\n\t\t\t\t\t\tthis.markDirtyExtremes();\n\t\t\t\t\t}\n\t\t\t\t\tthis._dataGrouped = true;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\n\tpublic _groupSeriesData(series: XYSeries) {\n\t\tif (this.get(\"groupData\") && !series.get(\"groupDataDisabled\")) {\n\t\t\t// make array of intervals which will be used;\n\t\t\tlet intervals: ITimeInterval[] = [];\n\t\t\tlet baseDuration = this.baseMainDuration();\n\n\t\t\tlet groupIntervals = this.get(\"groupIntervals\")!;\n\t\t\tif (groupIntervals) { }\n\t\t\t$array.each(groupIntervals, (interval) => {\n\t\t\t\tlet intervalDuration = $time.getIntervalDuration(interval);\n\t\t\t\tif (intervalDuration > baseDuration) {\n\t\t\t\t\tintervals.push(interval);\n\t\t\t\t}\n\t\t\t})\n\n\t\t\tseries._dataSets = {};\n\n\t\t\tconst key = this.getPrivate(\"name\")! + this.get(\"renderer\").getPrivate(\"letter\")!;\n\t\t\tlet fields: Array<string>;\n\n\t\t\tconst baseAxis = series.get(\"baseAxis\");\n\n\t\t\tif (series.get(\"xAxis\") === baseAxis) {\n\t\t\t\tfields = series._valueYFields;\n\t\t\t}\n\t\t\telse if (series.get(\"yAxis\") === baseAxis) {\n\t\t\t\tfields = series._valueXFields;\n\t\t\t}\n\n\t\t\tlet dataItems = series._mainDataItems;\n\t\t\tlet baseInterval = this.get(\"baseInterval\");\n\t\t\tlet mainDataSetId: string = baseInterval.timeUnit + baseInterval.count;\n\n\t\t\tseries._dataSets[mainDataSetId] = dataItems;\n\n\t\t\tconst groupCallback = series.get(\"groupDataCallback\");\n\t\t\tlet groupOriginals = series.get(\"groupDataWithOriginals\", false);\n\t\t\tif (groupCallback) {\n\t\t\t\tgroupOriginals = true;\n\t\t\t}\n\t\t\t\n\t\t\t$array.each(intervals, (interval) => {\n\n\t\t\t\tlet previousTime = -Infinity;\n\t\t\t\tlet dataSetId = interval.timeUnit + interval.count;\n\t\t\t\tseries._dataSets[dataSetId] = [];\n\n\t\t\t\tlet newDataItem: DataItem<IXYSeriesDataItem>;\n\n\t\t\t\tlet sum: { [index: string]: number } = {};\n\t\t\t\tlet count: { [index: string]: number } = {};\n\n\t\t\t\tlet groupFieldValues: { [index: string]: string } = {};\n\t\t\t\tlet workingFields: { [index: string]: string } = {};\n\n\t\t\t\t$array.each(fields, (field) => {\n\t\t\t\t\tsum[field] = 0;\n\t\t\t\t\tcount[field] = 0;\n\t\t\t\t\tgroupFieldValues[field] = series.get((field + \"Grouped\") as any);\n\t\t\t\t\tworkingFields[field] = field + \"Working\";\n\t\t\t\t})\n\n\t\t\t\tlet intervalDuration = $time.getDuration(interval.timeUnit);\n\n\t\t\t\tlet firstItem = dataItems[0];\n\t\t\t\tlet firstDate: Date;\n\t\t\t\tif (firstItem) {\n\t\t\t\t\tfirstDate = new Date(dataItems[0].get(key as any));\n\t\t\t\t}\n\n\t\t\t\tlet prevNewDataItem: DataItem<IXYSeriesDataItem> | undefined;\n\n\t\t\t\t$array.each(dataItems, (dataItem) => {\n\t\t\t\t\tlet time = dataItem.get(key as any);\n\t\t\t\t\tlet roundedTime = $time.round(new Date(time), interval.timeUnit, interval.count, this._root.locale.firstDayOfWeek, this._root.utc, firstDate, this._root.timezone).getTime();\n\t\t\t\t\tlet dataContext: any;\n\n\t\t\t\t\tif (previousTime < roundedTime - intervalDuration / 24) {\n\t\t\t\t\t\tdataContext = $object.copy(dataItem.dataContext);\n\n\t\t\t\t\t\tnewDataItem = new DataItem(series, dataContext, series._makeDataItem(dataContext));\n\t\t\t\t\t\tnewDataItem.setRaw(key as any, roundedTime);\n\n\t\t\t\t\t\tseries._dataSets[dataSetId].push(newDataItem);\n\n\t\t\t\t\t\t$array.each(fields, (field) => {\n\t\t\t\t\t\t\tlet value = dataItem.get(field as any);\n\t\t\t\t\t\t\tif ($type.isNumber(value)) {\n\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\tnewDataItem.setRaw(workingFields[field] as any, value);\n\t\t\t\t\t\t\t\tcount[field]++;\n\t\t\t\t\t\t\t\tsum[field] += value;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tif (groupOriginals) {\n\t\t\t\t\t\t\tnewDataItem.set(\"originals\", [dataItem]);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif (groupCallback && prevNewDataItem) {\n\t\t\t\t\t\t\tgroupCallback(prevNewDataItem, interval);\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tprevNewDataItem = newDataItem;\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\t$array.each(fields, (field) => {\n\t\t\t\t\t\t\tlet groupKey = groupFieldValues[field];\n\t\t\t\t\t\t\tlet value = dataItem.get(field as any);\n\n\t\t\t\t\t\t\tif (value !== undefined) {\n\n\t\t\t\t\t\t\t\tlet currentValue = newDataItem.get(field as any);\n\n\t\t\t\t\t\t\t\tswitch (groupKey) {\n\t\t\t\t\t\t\t\t\tcase \"close\":\n\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"sum\":\n\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, currentValue + value);\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"open\":\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"low\":\n\t\t\t\t\t\t\t\t\t\tif (value < currentValue) {\n\t\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"high\":\n\t\t\t\t\t\t\t\t\t\tif (value > currentValue) {\n\t\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"average\":\n\t\t\t\t\t\t\t\t\t\tcount[field]++;\n\t\t\t\t\t\t\t\t\t\tsum[field] += value;\n\t\t\t\t\t\t\t\t\t\tlet average = sum[field] / count[field];\n\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, average);\n\t\t\t\t\t\t\t\t\t\tbreak;\n\n\t\t\t\t\t\t\t\t\tcase \"extreme\":\n\t\t\t\t\t\t\t\t\t\tif (Math.abs(value) > Math.abs(currentValue)) {\n\t\t\t\t\t\t\t\t\t\t\tnewDataItem.setRaw(field as any, value);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\t\tnewDataItem.setRaw(workingFields[field] as any, newDataItem.get(field as any));\n\t\t\t\t\t\t\t\tlet dataContext: any = $object.copy(dataItem.dataContext);\n\t\t\t\t\t\t\t\tdataContext[key as any] = roundedTime;\n\t\t\t\t\t\t\t\tnewDataItem.dataContext = dataContext;\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\n\t\t\t\t\t\tif (groupOriginals) {\n\t\t\t\t\t\t\tnewDataItem.get(\"originals\")!.push(dataItem);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tpreviousTime = roundedTime;\n\t\t\t\t})\n\n\t\t\t\tif (groupCallback && prevNewDataItem) {\n\t\t\t\t\tgroupCallback(prevNewDataItem, interval);\n\t\t\t\t}\n\t\t\t})\n\t\t\tif (series._dataSetId) {\n\t\t\t\tseries.setDataSet(series._dataSetId);\n\t\t\t}\n\t\t\tthis.markDirtySize();\n\t\t}\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._groupingCalculated = false;\n\t\tthis._dataGrouped = false;\n\t}\n\n\tprotected _handleRangeChange() {\n\t\tsuper._handleRangeChange();\n\n\t\tconst selectionMin = this.getPrivate(\"selectionMin\");\n\t\tconst selectionMax = this.getPrivate(\"selectionMax\");\n\n\t\tif ($type.isNumber(selectionMin) && $type.isNumber(selectionMax)) {\n\n\t\t\tif (this.get(\"groupData\") && !this._groupingCalculated) {\n\t\t\t\tthis._groupingCalculated = true;\n\t\t\t\tlet baseInterval = this.get(\"baseInterval\");\n\n\t\t\t\tlet modifiedDifference = (selectionMax - selectionMin) + (this.get(\"startLocation\", 0) + (1 - this.get(\"endLocation\", 1)) * this.baseDuration());\n\t\t\t\tlet groupInterval = this.get(\"groupInterval\");\n\n\t\t\t\tif (!groupInterval) {\n\t\t\t\t\tconst groupIntervals = this.get(\"groupIntervals\")!;\n\t\t\t\t\tif (groupIntervals) {\n\t\t\t\t\t\tgroupInterval = $time.chooseInterval(0, modifiedDifference, this.get(\"groupCount\", Infinity), groupIntervals);\n\t\t\t\t\t\tif ($time.getIntervalDuration(groupInterval) < $time.getIntervalDuration(baseInterval)) {\n\t\t\t\t\t\t\tgroupInterval = { ...baseInterval };\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tlet current = this.getPrivate(\"groupInterval\");\n\n\t\t\t\tif (groupInterval && (!current || (current.timeUnit !== groupInterval.timeUnit || current.count !== groupInterval.count))) {\n\t\t\t\t\tthis.setPrivateRaw(\"groupInterval\", groupInterval);\n\t\t\t\t\tthis._setBaseInterval(groupInterval)\n\n\t\t\t\t\tif (groupInterval) {\n\t\t\t\t\t\tlet newId = groupInterval.timeUnit + groupInterval.count;\n\t\t\t\t\t\t$array.each(this.series, (series) => {\n\t\t\t\t\t\t\tif (series.get(\"baseAxis\") === this) {\n\t\t\t\t\t\t\t\tseries.setDataSet(newId);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t})\n\t\t\t\t\t\tthis.markDirtyExtremes();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t$array.each(this.series, (series) => {\n\t\t\t\tif (series.get(\"baseAxis\") === this) {\n\t\t\t\t\tlet fieldName = <any>(this.getPrivate(\"name\")! + this.get(\"renderer\").getPrivate(\"letter\")!);\n\n\t\t\t\t\tconst start = $array.getSortedIndex(series.dataItems, (dataItem) => {\n\t\t\t\t\t\treturn $order.compare(dataItem.get(fieldName), selectionMin);\n\t\t\t\t\t});\n\n\t\t\t\t\tlet startIndex = start.index;\n\n\t\t\t\t\tif (startIndex > 0) {\n\t\t\t\t\t\tstartIndex -= 1;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst end = $array.getSortedIndex(series.dataItems, (dataItem) => {\n\t\t\t\t\t\treturn $order.compare(dataItem.get(fieldName), selectionMax);\n\t\t\t\t\t});\n\t\t\t\t\tlet endIndex = end.index;\n\n\t\t\t\t\tlet endIndex2 = endIndex;\n\t\t\t\t\tif (endIndex2 > 0) {\n\t\t\t\t\t\tendIndex2--;\n\t\t\t\t\t}\n\n\t\t\t\t\tconst firstDataItem = series.dataItems[startIndex];\n\t\t\t\t\tconst lastDataItem = series.dataItems[endIndex2];\n\n\t\t\t\t\tlet lastDate: number | undefined;\n\t\t\t\t\tlet firstDate: number | undefined;\n\t\t\t\t\tif (firstDataItem) {\n\t\t\t\t\t\tfirstDate = firstDataItem.get(fieldName);\n\t\t\t\t\t}\n\n\t\t\t\t\tif (lastDataItem) {\n\t\t\t\t\t\tlastDate = lastDataItem.get(fieldName);\n\t\t\t\t\t}\n\n\t\t\t\t\tlet outOfSelection = false;\n\t\t\t\t\tif (lastDate != null && firstDate != null) {\n\t\t\t\t\t\tif (lastDate < selectionMin || firstDate > selectionMax) {\n\t\t\t\t\t\t\toutOfSelection = true;\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\n\t\t\t\t\tseries.setPrivate(\"outOfSelection\", outOfSelection);\n\t\t\t\t\tseries.setPrivate(\"startIndex\", startIndex);\n\t\t\t\t\tseries.setPrivate(\"endIndex\", endIndex);\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _adjustMinMax(min: number, max: number, gridCount: number, _strictMode?: boolean): IMinMaxStep {\n\t\treturn { min: min, max: max, step: (max - min) / gridCount };\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic intervalDuration(): number {\n\t\treturn this._intervalDuration;\n\t}\n\n\tprotected _prepareAxisItems() {\n\t\tconst min = this.getPrivate(\"min\");\n\t\tconst max = this.getPrivate(\"max\");\n\n\t\tif ($type.isNumber(min) && $type.isNumber(max)) {\n\t\t\tconst selectionMin = this.getPrivate(\"selectionMin\")! as number;\n\t\t\tconst selectionMax = this.getPrivate(\"selectionMax\")! as number;\n\t\t\tconst renderer = this.get(\"renderer\");\n\t\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\n\n\t\t\tlet value = selectionMin;\n\t\t\tlet i = 0;\n\n\t\t\tconst intervals = this.get(\"gridIntervals\")!;\n\t\t\tlet gridInterval = $time.chooseInterval(0, selectionMax - selectionMin, renderer.gridCount(), intervals);\n\n\t\t\tif ($time.getIntervalDuration(gridInterval) < this.baseDuration()) {\n\t\t\t\tgridInterval = { ...baseInterval };\n\t\t\t}\n\n\t\t\tconst intervalDuration = $time.getIntervalDuration(gridInterval);\n\t\t\tthis._intervalDuration = intervalDuration;\n\n\t\t\tconst nextGridUnit = $time.getNextUnit(gridInterval.timeUnit);\n\n\t\t\tvalue = $time.round(new Date(selectionMin - intervalDuration), gridInterval.timeUnit, gridInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, new Date(min), this._root.timezone).getTime();\n\t\t\tlet previousValue = value - intervalDuration;\n\t\t\tlet format: string | Intl.DateTimeFormatOptions;\n\t\t\tconst formats = this.get(\"dateFormats\")!;\n\n\t\t\tthis.setPrivateRaw(\"gridInterval\", gridInterval);\n\n\t\t\twhile (value < selectionMax + intervalDuration) {\n\t\t\t\tlet dataItem: DataItem<this[\"_dataItemSettings\"]>;\n\t\t\t\tif (this.dataItems.length < i + 1) {\n\t\t\t\t\tdataItem = new DataItem(this, undefined, {});\n\t\t\t\t\tthis._dataItems.push(dataItem);\n\t\t\t\t\tthis.processDataItem(dataItem);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tdataItem = this.dataItems[i];\n\t\t\t\t}\n\n\t\t\t\tthis._createAssets(dataItem, []);\n\n\t\t\t\tif (dataItem.isHidden()) {\n\t\t\t\t\tdataItem.show();\n\t\t\t\t}\n\n\t\t\t\tdataItem.setRaw(\"value\", value);\n\t\t\t\tdataItem.setRaw(\"endValue\", $time.add(new Date(value), gridInterval.timeUnit, gridInterval.count, this._root.utc).getTime()) //$time.round(new Date(value + intervalDuration * 1.1), gridInterval.timeUnit, gridInterval.count).getTime());\n\n\t\t\t\tlet date = new Date(value);\n\n\t\t\t\tformat = formats[gridInterval.timeUnit];\n\t\t\t\tif (nextGridUnit && this.get(\"markUnitChange\") && $type.isNumber(previousValue)) {\n\t\t\t\t\tif (gridInterval.timeUnit != \"year\") {\n\t\t\t\t\t\tif ($time.checkChange(value, previousValue, nextGridUnit, this._root.utc, this._root.timezone)) {\n\t\t\t\t\t\t\tformat = this.get(\"periodChangeDateFormats\")![gridInterval.timeUnit];\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tconst label = dataItem.get(\"label\");\n\t\t\t\tif (label) {\n\t\t\t\t\tlabel.set(\"text\", this._root.dateFormatter.format(date, format!));\n\t\t\t\t}\n\n\t\t\t\tthis._prepareDataItem(dataItem, gridInterval.count);\n\n\t\t\t\tpreviousValue = value;\n\n\t\t\t\tvalue = $time.add(new Date(value), gridInterval.timeUnit, gridInterval.count, this._root.utc).getTime();\n\n\t\t\t\ti++;\n\t\t\t}\n\n\t\t\tfor (let j = i; j < this.dataItems.length; j++) {\n\t\t\t\tthis.dataItems[j].hide();\n\t\t\t}\n\n\t\t\t$array.each(this.series, (series) => {\n\t\t\t\tif (series.inited) {\n\t\t\t\t\tseries._markDirtyAxes();\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tthis._updateGhost();\n\t}\n\n\tprotected _fixMin(min: number) {\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tlet startTime = $time.round(new Date(min), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, undefined, this._root.timezone).getTime();\n\t\tlet endTime = $time.add(new Date(startTime), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\n\t\treturn startTime + (endTime - startTime) * this.get(\"startLocation\", 0);\n\t}\n\t/* goes up to the year\n\tprotected _getFormat(timeUnit: TimeUnit, value: number, previousValue: number) {\n\t\tconst formats = this.get(\"dateFormats\")!;\n\t\tlet format = formats[timeUnit];\n\n\t\tif (this.get(\"markUnitChange\")) {\n\t\t\tlet nextGridUnit = $time.getNextUnit(timeUnit);\n\n\t\t\twhile (nextGridUnit != undefined) {\n\n\t\t\t\tif (nextGridUnit) {\n\t\t\t\t\tif (timeUnit != \"year\") {\n\t\t\t\t\t\tif ($time.checkChange(value, previousValue, nextGridUnit, this._root.utc, this._root.timezone)) {\n\t\t\t\t\t\t\tformat = this.get(\"periodChangeDateFormats\")![timeUnit];\n\t\t\t\t\t\t\ttimeUnit = nextGridUnit;\n\t\t\t\t\t\t\tnextGridUnit = $time.getNextUnit(nextGridUnit);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tnextGridUnit = undefined;\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\tnextGridUnit = undefined;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn format;\n\t}\n\t*/\n\tprotected _fixMax(max: number) {\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tlet startTime = $time.round(new Date(max), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, undefined, this._root.timezone).getTime();\n\t\tlet endTime = $time.add(new Date(startTime), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\n\t\treturn startTime + (endTime - startTime) * this.get(\"endLocation\", 1);\n\t}\n\n\tprotected _updateDates(_date: number) {\n\n\t}\n\n\t/**\n\t * Returns a duration of currently active `baseInterval` in milliseconds.\n\t * \n\t * @return Duration\n\t */\n\tpublic baseDuration(): number {\n\t\treturn this._baseDuration;\n\t\t//return $time.getIntervalDuration(this.getPrivate(\"baseInterval\"));\n\t}\n\n\t/**\n\t * Returns a duration of user-defined `baseInterval` in milliseconds.\n\t *\n\t * @return Duration\n\t */\n\tpublic baseMainDuration(): number {\n\t\treturn $time.getIntervalDuration(this.get(\"baseInterval\"));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic processSeriesDataItem(dataItem: DataItem<IXYSeriesDataItem>, fields: Array<string>) {\n\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\n\n\t\tdataItem.open = {};\n\t\tdataItem.close = {};\n\n\t\t$array.each(fields, (field) => {\n\t\t\tlet value = dataItem.get(field as any);\n\t\t\tif ($type.isNumber(value)) {\n\t\t\t\tlet startTime = $time.round(new Date(value), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, undefined, this._root.timezone).getTime();\n\t\t\t\tlet endTime = $time.add(new Date(startTime), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\t\t\t\tdataItem.open![field] = startTime;\n\t\t\t\tdataItem.close![field] = endTime;\n\n\t\t\t\tthis._updateDates(startTime);\n\t\t\t}\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemPositionX(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\n\t\tlet openValue;\n\t\tlet closeValue;\n\n\t\tif (dataItem.open && dataItem.close) {\n\t\t\topenValue = dataItem.open[field];\n\t\t\tcloseValue = dataItem.close[field];\n\t\t}\n\t\telse {\n\t\t\topenValue = dataItem.get(field as any)\n\t\t\tcloseValue = openValue;\n\t\t}\n\n\t\tlet value = openValue + (closeValue - openValue) * cellLocation;\n\n\t\tvalue = this._baseValue + (value - this._baseValue) * axisLocation;\n\n\t\treturn this.valueToPosition(value);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemCoordinateX(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\t\treturn this._settings.renderer.positionToCoordinate(this.getDataItemPositionX(dataItem, field, cellLocation, axisLocation));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemPositionY(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\t\tlet openValue;\n\t\tlet closeValue;\n\n\t\tif (dataItem.open && dataItem.close) {\n\t\t\topenValue = dataItem.open[field];\n\t\t\tcloseValue = dataItem.close[field];\n\t\t}\n\t\telse {\n\t\t\topenValue = dataItem.get(field as any)\n\t\t\tcloseValue = openValue;\n\t\t}\n\n\t\tlet value = openValue + (closeValue - openValue) * cellLocation;\n\n\t\tvalue = this._baseValue + (value - this._baseValue) * axisLocation;\n\t\treturn this.valueToPosition(value);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getDataItemCoordinateY(dataItem: DataItem<IXYSeriesDataItem>, field: string, cellLocation: number, axisLocation: number): number {\n\t\treturn this._settings.renderer.positionToCoordinate(this.getDataItemPositionY(dataItem, field, cellLocation, axisLocation));\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic roundAxisPosition(position: number, location: number): number {\n\t\tlet value = this.positionToValue(position);\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tvalue = $time.round(new Date(value), baseInterval.timeUnit, baseInterval.count, this._root.locale.firstDayOfWeek, this._root.utc, new Date(this.getPrivate(\"min\", 0)), this._root.timezone).getTime();\n\t\tlet endValue = value;\n\t\tif (location > 0) {\n\t\t\tendValue = $time.add(new Date(value), baseInterval.timeUnit, baseInterval.count, this._root.utc).getTime();\n\t\t}\n\t\treturn this.valueToPosition(value + (endValue - value) * location);\n\t}\n\n\t/**\n\t * Returns text to be used in an axis tooltip for specific relative position.\n\t *\n\t * @param position Position\n\t * @return Tooltip text\n\t */\n\tpublic getTooltipText(position: number): string | undefined {\n\t\t//@todo number formatter + tag\n\n\t\tlet format = this.get(\"tooltipDateFormats\")![this.getPrivate(\"baseInterval\").timeUnit];\n\t\tlet date = new Date(this.positionToValue(position));\n\t\tlet baseInterval = this.getPrivate(\"baseInterval\");\n\t\tlet duration = $time.getDateIntervalDuration(baseInterval, date, this._root.locale.firstDayOfWeek, this._root.utc, this._root.timezone);\n\t\treturn this._root.dateFormatter.format(new Date(this.positionToValue(position) + this.get(\"tooltipIntervalOffset\", -this.get(\"tooltipLocation\", 0.5)) * duration), this.get(\"tooltipDateFormat\", format));\n\t}\n\n\t/**\n\t * Returns a data item from series that is closest to the `position`.\n\t *\n\t * @param series Series\n\t * @param position Relative position\n\t * @return Data item\n\t */\n\tpublic getSeriesItem(series: XYSeries, position: number): DataItem<IXYSeriesDataItem> | undefined {\n\t\tlet fieldName = <any>(this.getPrivate(\"name\")! + this.get(\"renderer\").getPrivate(\"letter\")!);\n\t\tlet value = this.positionToValue(position);\n\t\tconst result = $array.getSortedIndex(series.dataItems, (dataItem) => {\n\t\t\tvar diValue = 0;\n\t\t\tif (dataItem.open) {\n\t\t\t\tdiValue = dataItem.open[fieldName];\n\t\t\t}\n\n\t\t\treturn $order.compare(diValue, value);\n\t\t});\n\n\t\tif (series.get(\"snapTooltip\")) {\n\t\t\tlet first = series.dataItems[result.index - 1];\n\t\t\tlet second = series.dataItems[result.index];\n\n\t\t\tif (first && second) {\n\t\t\t\tif (first.open && second.close) {\n\t\t\t\t\tlet open = first.open[fieldName];\n\t\t\t\t\tlet close = second.close[fieldName];\n\n\t\t\t\t\tif (Math.abs(value - open) > Math.abs(value - close)) {\n\t\t\t\t\t\treturn second;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn first;\n\t\t}\n\t\telse {\n\t\t\t// @todo check if is in range\n\t\t\tconst dataItem = series.dataItems[result.index - 1];\n\n\t\t\tif (dataItem) {\n\t\t\t\tif (dataItem.open && dataItem.close) {\n\t\t\t\t\tlet open = dataItem.open[fieldName];\n\t\t\t\t\tlet close = dataItem.close[fieldName];\n\n\t\t\t\t\tif (value >= open && value <= close) {\n\t\t\t\t\t\treturn dataItem;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic shouldGap(dataItem: DataItem<IXYSeriesDataItem>, nextItem: DataItem<IXYSeriesDataItem>, autoGapCount: number, fieldName: string): boolean {\n\t\tconst value1 = dataItem.get(fieldName as any);\n\t\tconst value2 = nextItem.get(fieldName as any);\n\n\t\tif (value2 - value1 > this.baseDuration() * autoGapCount) {\n\t\t\treturn true;\n\t\t}\n\t\treturn false;\n\t}\n\n\t/**\n\t * Zooms the axis to specific `start` and `end` dates.\n\t *\n\t * Optional `duration` specifies duration of zoom animation in milliseconds.\n\t *\n\t * @param start Start Date\n\t * @param end End Date\n\t * @param duration Duration in milliseconds\n\t */\n\tpublic zoomToDates(start: Date, end: Date, duration?: number) {\n\t\tthis.zoomToValues(start.getTime(), end.getTime(), duration);\n\t}\n\n\t/**\n\t * Returns a `Date` object corresponding to specific position within plot\n\t * area.\n\t *\n\t * @param position Pposition\n\t * @return Date\n\t */\n\tpublic positionToDate(position: number): Date {\n\t\treturn new Date(this.positionToValue(position));\n\t}\n\n\t/**\n\t * Returns a relative position within plot area that corresponds to specific\n\t * date.\n\t *\n\t * @param date Date\n\t * @return Position\n\t */\n\tpublic dateToPosition(date: Date): number {\n\t\treturn this.valueToPosition(date.getTime());\n\t}\n}\n"]}
|
|
@@ -82,7 +82,7 @@ export declare abstract class BaseColumnSeries extends XYSeries {
|
|
|
82
82
|
protected _updateGraphics(dataItem: DataItem<this["_dataItemSettings"]>, previousDataItem: DataItem<this["_dataItemSettings"]>): void;
|
|
83
83
|
protected _updateSeriesGraphics(dataItem: DataItem<this["_dataItemSettings"]>, graphics: Graphics, l: number, r: number, t: number, b: number, fitW: boolean, fitH: boolean): void;
|
|
84
84
|
protected _handleDataSetChange(): void;
|
|
85
|
-
|
|
85
|
+
_applyGraphicsStates(dataItem: DataItem<this["_dataItemSettings"]>, previousDataItem: DataItem<this["_dataItemSettings"]>): void;
|
|
86
86
|
/**
|
|
87
87
|
* @ignore
|
|
88
88
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseColumnSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/BaseColumnSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAI5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AACnE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AAE1D,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAOlH,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IAEnE;;OAEG;IACH,QAAQ,CAAC,EAAE,QAAQ,CAAC;IAEpB;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IAEhC;;;;;OAKG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC,eAAe,CAAC,CAAC;CAC3C;AAED,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;IAEnE;;;;;;OAMG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;OAEG;IACH,2BAA2B,CAAC,EAAE,OAAO,CAAA;CACrC;AAED,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;CAAI;AAEtE,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IAErE;;;;OAIG;IACH,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;CAEhC;AAED;;GAEG;AACH,8BAAsB,gBAAiB,SAAQ,QAAQ;IAEvC,SAAS,EAAE,yBAAyB,CAAC;IACrC,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,iBAAiB,EAAE,yBAAyB,CAAC;IAC7C,cAAc,EAAE,0BAA0B,CAAC;IAE1D,OAAc,SAAS,EAAE,MAAM,CAAsB;IACrD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA4D;IAEnG;;OAEG;aACa,UAAU,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,YAAY,EAAE,YAAY,CAAC,QAAQ,CAAC,GAAG,QAAQ;IAEzH;;OAEG;IACH,SAAgB,OAAO,EAAE,YAAY,CAAC,QAAQ,CAAC,CAAC;IAEhD,SAAS,CAAC,aAAa,CAAC,YAAY,EAAE,YAAY,CAAC,QAAQ,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,GAAG,QAAQ;IAItH,SAAS,CAAC,GAAG,EAAE,MAAM,CAAK;IAC1B,SAAS,CAAC,GAAG,EAAE,MAAM,CAAK;IAEnB,eAAe;IAmCf,gBAAgB;IAkBhB,eAAe;IA4HtB,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA4BvE,SAAS,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IA2K9H,SAAS,CAAC,qBAAqB,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO;IAsE3K,SAAS,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"BaseColumnSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/BaseColumnSeries.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseColumnSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/BaseColumnSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../../core/render/Component\";\nimport type { Graphics } from \"../../../core/render/Graphics\";\nimport type { Template } from \"../../../core/util/Template\";\nimport type { ListTemplate } from \"../../../core/util/List\";\nimport type { CategoryAxis } from \"../axes/CategoryAxis\";\nimport type { DateAxis } from \"../axes/DateAxis\";\nimport type { ValueAxis } from \"../axes/ValueAxis\";\nimport type { ILegendDataItem } from \"../../../core/render/Legend\";\nimport type { Sprite } from \"../../../core/render/Sprite\";\n\nimport { XYSeries, IXYSeriesPrivate, IXYSeriesSettings, IXYSeriesDataItem, IXYSeriesAxisRange } from \"./XYSeries\";\nimport { Percent } from \"../../../core/util/Percent\";\nimport { visualSettings } from \"../../../core/render/Graphics\";\n\nimport * as $array from \"../../../core/util/Array\";\nimport * as $type from \"../../../core/util/Type\";\n\nexport interface IBaseColumnSeriesDataItem extends IXYSeriesDataItem {\n\n\t/**\n\t * An actual [[Graphics]] element (Column/Slice/Candlestick/OHLC).\n\t */\n\tgraphics?: Graphics;\n\n\t/**\n\t * In case axis ranges are added to the series, it creates a separate\n\t * element ([[Graphics]]) for each axis range. This array holds them all.\n\t */\n\trangeGraphics?: Array<Graphics>;\n\n\t/**\n\t * If data items from this series are used to feed a [[Legend]], this\n\t * will hold a reference to the equivalent Legend data item.\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/#Data_item_list} for more info\n\t */\n\tlegendDataItem?: DataItem<ILegendDataItem>;\n}\n\nexport interface IBaseColumnSeriesSettings extends IXYSeriesSettings {\n\n\t/**\n\t * Indicates if series must divvy up available space with other column\n\t * series (`true`; default) or take up the whole available space (`false`).\n\t *\n\t * @default true\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/series/column-series/#Clustering} for more info\n\t */\n\tclustered?: boolean;\n\n\t/**\n\t * Whether positions of bullets should be calculated based on portion of\n\t * column currently visual (`true`) or the whole length/height of the\n\t * column (`false`).\n\t *\n\t * @default true\n\t */\n\tadjustBulletPosition?: boolean;\n\n\t/**\n\t * @todo review\n\t */\n\tuseLastColorForLegendMarker?: boolean\n}\n\nexport interface IBaseColumnSeriesPrivate extends IXYSeriesPrivate { }\n\nexport interface IBaseColumnSeriesAxisRange extends IXYSeriesAxisRange {\n\n\t/**\n\t * A list of actual [[Graphics]] elements for an axis range.\n\t *\n\t * Can be used to ajust the look of the axis range columns.\n\t */\n\tcolumns: ListTemplate<Graphics>;\n\n}\n\n/**\n * Base class for all \"column-based\" series\n */\nexport abstract class BaseColumnSeries extends XYSeries {\n\n\tdeclare public _settings: IBaseColumnSeriesSettings;\n\tdeclare public _privateSettings: IBaseColumnSeriesPrivate;\n\tdeclare public _dataItemSettings: IBaseColumnSeriesDataItem;\n\tdeclare public _axisRangeType: IBaseColumnSeriesAxisRange;\n\n\tpublic static className: string = \"BaseColumnSeries\";\n\tpublic static classNames: Array<string> = XYSeries.classNames.concat([BaseColumnSeries.className]);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract makeColumn(dataItem: DataItem<this[\"_dataItemSettings\"]>, listTemplate: ListTemplate<Graphics>): Graphics\n\n\t/**\n\t * ListTemplate of columns in series.\n\t */\n\tpublic abstract columns: ListTemplate<Graphics>;\n\n\tprotected _makeGraphics(listTemplate: ListTemplate<Graphics>, dataItem: DataItem<this[\"_dataItemSettings\"]>): Graphics {\n\t\treturn this.makeColumn(dataItem, listTemplate);\n\t}\n\n\tprotected _ph: number = 0;\n\tprotected _pw: number = 0;\n\n\tpublic _makeFieldNames() {\n\t\tsuper._makeFieldNames();\n\n\t\tconst xAxis = this.get(\"xAxis\");\n\t\tconst yAxis = this.get(\"yAxis\");\n\n\t\tconst categoryAxis = \"CategoryAxis\";\n\t\tconst valueAxis = \"ValueAxis\";\n\n\t\tif (xAxis.isType<CategoryAxis<any>>(categoryAxis)) {\n\t\t\tif (!this.get(\"openCategoryXField\")) {\n\t\t\t\tthis._xOpenField = this._xField;\n\t\t\t}\n\t\t}\n\n\t\tif (xAxis.isType<DateAxis<any>>(valueAxis)) {\n\t\t\tif (!this.get(\"openValueXField\")) {\n\t\t\t\tthis._xOpenField = this._xField;\n\t\t\t}\n\t\t}\n\n\t\tif (yAxis.isType<CategoryAxis<any>>(categoryAxis)) {\n\t\t\tif (!this.get(\"openCategoryYField\")) {\n\t\t\t\tthis._yOpenField = this._yField;\n\t\t\t}\n\t\t}\n\n\t\tif (yAxis.isType<DateAxis<any>>(valueAxis)) {\n\t\t\tif (!this.get(\"openValueYField\")) {\n\t\t\t\tthis._yOpenField = this._yField;\n\t\t\t}\n\t\t}\n\t}\n\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst xAxis = this.get(\"xAxis\");\n\t\tconst yAxis = this.get(\"yAxis\");\n\n\t\tconst len = this.dataItems.length;\n\t\tconst startIndex = Math.max(0, this.startIndex() - 2);\n\t\tconst endIndex = Math.min(this.endIndex() + 2, len - 1);\n\n\t\tif (xAxis.inited && yAxis.inited) {\n\t\t\tfor (let i = startIndex; i <= endIndex; i++) {\n\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\tthis._createGraphics(dataItem);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\t\t\tthis._ph = chart.plotContainer.height();\n\t\t\tthis._pw = chart.plotContainer.width();\n\t\t}\n\n\t\tconst xAxis = this.get(\"xAxis\");\n\t\tconst yAxis = this.get(\"yAxis\");\n\t\tconst baseAxis = this.get(\"baseAxis\")!;\n\n\t\tconst columnsTemplate = this.columns.template;\n\t\tif (this.isDirty(\"fill\")) {\n\t\t\tif (columnsTemplate.get(\"fill\") == null) {\n\t\t\t\tcolumnsTemplate.set(\"fill\", this.get(\"fill\"));\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"stroke\")) {\n\t\t\tif (columnsTemplate.get(\"stroke\") == null) {\n\t\t\t\tcolumnsTemplate.set(\"stroke\", this.get(\"stroke\"));\n\t\t\t}\n\t\t}\n\n\t\tlet index = 0;\n\t\tlet clusterCount = 0;\n\t\tlet i = 0;\n\n\t\t$array.each(baseAxis.series, (series) => {\n\t\t\tif (series instanceof BaseColumnSeries) {\n\t\t\t\tconst stacked = series.get(\"stacked\");\n\n\t\t\t\tif (stacked && i == 0) {\n\t\t\t\t\tclusterCount++;\n\t\t\t\t}\n\n\t\t\t\tif (!stacked && series.get(\"clustered\")) {\n\t\t\t\t\tclusterCount++;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (series === this) {\n\t\t\t\tindex = clusterCount - 1;\n\t\t\t}\n\t\t\ti++;\n\t\t})\n\n\t\tif (!this.get(\"clustered\")) {\n\t\t\tindex = 0;\n\t\t\tclusterCount = 1;\n\t\t}\n\n\t\tif (clusterCount === 0) {\n\t\t\tclusterCount = 1;\n\t\t\tindex = 0;\n\t\t}\n\n\t\tconst xRenderer = xAxis.get(\"renderer\");\n\t\tconst yRenderer = yAxis.get(\"renderer\");\n\n\t\tconst cellStartLocation = \"cellStartLocation\";\n\t\tconst cellEndLocation = \"cellEndLocation\";\n\n\t\tconst cellLocationX0 = xRenderer.get(cellStartLocation, 0);\n\t\tconst cellLocationX1 = xRenderer.get(cellEndLocation, 1);\n\n\t\tconst cellLocationY0 = yRenderer.get(cellStartLocation, 0);\n\t\tconst cellLocationY1 = yRenderer.get(cellEndLocation, 1);\n\n\t\tthis._aLocationX0 = cellLocationX0 + (index / clusterCount) * (cellLocationX1 - cellLocationX0);\n\t\tthis._aLocationX1 = cellLocationX0 + (index + 1) / clusterCount * (cellLocationX1 - cellLocationX0);;\n\n\t\tthis._aLocationY0 = cellLocationY0 + (index / clusterCount) * (cellLocationY1 - cellLocationY0);\n\t\tthis._aLocationY1 = cellLocationY0 + (index + 1) / clusterCount * (cellLocationY1 - cellLocationY0);\n\n\t\tif (xAxis.inited && yAxis.inited) {\n\t\t\tif (this._axesDirty || this._valuesDirty || this._stackDirty || this.isDirty(\"vcx\") || this.isDirty(\"vcy\") || this._sizeDirty) {\n\t\t\t\tconst len = this.dataItems.length;\n\n\t\t\t\tlet startIndex = Math.max(0, this.startIndex() - 2);\n\t\t\t\tlet endIndex = Math.min(this.endIndex() + 2, len - 1);\n\n\t\t\t\tfor (let i = 0; i < startIndex; i++) {\n\t\t\t\t\tthis._toggleColumn(this.dataItems[i], false);\n\t\t\t\t}\n\t\t\t\tlet previous = this.dataItems[startIndex];\n\n\t\t\t\tfor (let i = startIndex; i <= endIndex; i++) {\n\t\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\t\tif (dataItem.get(\"valueX\") != null && dataItem.get(\"valueY\") != null) {\n\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t\tif (i > 0 && startIndex > 0) {\n\t\t\t\t\t\t\tfor (let j = i - 1; j >= 0; j--) {\n\t\t\t\t\t\t\t\tlet dataItem = this.dataItems[j];\n\t\t\t\t\t\t\t\tif (dataItem.get(\"valueX\") != null && dataItem.get(\"valueY\") != null) {\n\t\t\t\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfor (let i = startIndex; i <= endIndex; i++) {\n\t\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\t\tthis._updateGraphics(dataItem, previous);\n\t\t\t\t\tif (dataItem.get(\"valueX\") != null && dataItem.get(\"valueY\") != null) {\n\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfor (let i = endIndex + 1; i < len; i++) {\n\t\t\t\t\tthis._toggleColumn(this.dataItems[i], false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tthis._skipped = true;\n\t\t}\n\n\t\tsuper._updateChildren();\n\t}\n\n\tprotected _createGraphics(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tlet graphics = dataItem.get(\"graphics\");\n\t\tif (!graphics) {\n\t\t\tgraphics = this._makeGraphics(this.columns, dataItem);\n\t\t\tdataItem.set(\"graphics\", graphics);\n\t\t\tgraphics._setDataItem(dataItem);\n\n\t\t\tconst legendDataItem = dataItem.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\t\t\t\tif (markerRectangle) {\n\t\t\t\t\tmarkerRectangle.setAll({ fill: graphics.get(\"fill\"), stroke: graphics.get(\"stroke\") });\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.axisRanges.each((axisRange) => {\n\t\t\t\tconst container = axisRange.container!;\n\t\t\t\tconst graphicsArray: Array<Graphics> = dataItem.get(\"rangeGraphics\", []);\n\t\t\t\tdataItem.set(\"rangeGraphics\", graphicsArray);\n\n\t\t\t\tconst rangeGraphics = this._makeGraphics(axisRange.columns, dataItem);\n\t\t\t\tgraphicsArray.push(rangeGraphics);\n\t\t\t\trangeGraphics.setPrivate(\"list\", axisRange.columns);\n\t\t\t\tcontainer.children.push(rangeGraphics);\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _updateGraphics(dataItem: DataItem<this[\"_dataItemSettings\"]>, previousDataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tlet graphics = dataItem.get(\"graphics\")!;\n\n\t\t//if (!graphics) {\n\t\t//\tthis._createGraphics(dataItem);\n\t\t//\tgraphics = dataItem.get(\"graphics\")!;\n\t\t//}\n\n\t\tconst xField = this._xField;\n\t\tconst yField = this._yField;\n\n\t\tconst valueX = dataItem.get(xField as any);\n\t\tconst valueY = dataItem.get(yField as any);\n\n\t\tif (valueX != null && valueY != null) {\n\t\t\tconst xOpenField = this._xOpenField;\n\t\t\tconst yOpenField = this._yOpenField;\n\n\t\t\tconst locationX = this.get(\"locationX\", dataItem.get(\"locationX\", 0.5));\n\t\t\tconst locationY = this.get(\"locationY\", dataItem.get(\"locationY\", 0.5));\n\n\t\t\tconst openLocationX = this.get(\"openLocationX\", dataItem.get(\"openLocationX\", locationX));\n\t\t\tconst openLocationY = this.get(\"openLocationY\", dataItem.get(\"openLocationY\", locationY));\n\n\t\t\tconst width = graphics.get(\"width\");\n\t\t\tconst height = graphics.get(\"height\");\n\n\t\t\tconst stacked = this.get(\"stacked\");\n\n\t\t\tconst xAxis = this.get(\"xAxis\");\n\t\t\tconst yAxis = this.get(\"yAxis\");\n\t\t\tconst baseAxis = this.get(\"baseAxis\");\n\n\t\t\tconst xStart = xAxis.get(\"start\");\n\t\t\tconst xEnd = xAxis.get(\"end\");\n\n\t\t\tconst yStart = yAxis.get(\"start\");\n\t\t\tconst yEnd = yAxis.get(\"end\");\n\n\t\t\tlet l!: number;\n\t\t\tlet r!: number;\n\t\t\tlet t!: number;\n\t\t\tlet b!: number;\n\n\t\t\tlet vcy = this.get(\"vcy\", 1);\n\t\t\tlet vcx = this.get(\"vcx\", 1);\n\n\t\t\tlet fitW = false;\n\t\t\tlet fitH = false;\n\n\t\t\tif (yAxis.isType<CategoryAxis<any>>(\"CategoryAxis\") && xAxis.isType<CategoryAxis<any>>(\"CategoryAxis\")) {\n\n\t\t\t\tlet startLocation = this._aLocationX0 + openLocationX - 0.5;\n\t\t\t\tlet endLocation = this._aLocationX1 + locationX - 0.5;\n\n\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - width.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tl = xAxis.getDataItemPositionX(dataItem, xOpenField, startLocation, vcx);\n\t\t\t\tr = xAxis.getDataItemPositionX(dataItem, xField, endLocation, vcx);\n\n\t\t\t\tstartLocation = this._aLocationY0 + openLocationY - 0.5;\n\t\t\t\tendLocation = this._aLocationY1 + locationY - 0.5;\n\n\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - height.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tt = yAxis.getDataItemPositionY(dataItem, yOpenField, startLocation, vcy);\n\t\t\t\tb = yAxis.getDataItemPositionY(dataItem, yField, endLocation, vcy);\n\n\t\t\t\tdataItem.setRaw(\"point\", { x: l + (r - l) / 2, y: t + (b - t) / 2 });\n\t\t\t}\n\t\t\telse if (xAxis === baseAxis) {\n\n\t\t\t\tlet startLocation = this._aLocationX0 + openLocationX - 0.5;\n\t\t\t\tlet endLocation = this._aLocationX1 + locationX - 0.5;\n\n\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - width.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tl = xAxis.getDataItemPositionX(dataItem, xOpenField, startLocation, vcx);\n\t\t\t\tr = xAxis.getDataItemPositionX(dataItem, xField, endLocation, vcx);\n\t\t\t\tt = yAxis.getDataItemPositionY(dataItem, yField, locationY, vcy);\n\n\t\t\t\tif (this._yOpenField !== this._yField) {\n\t\t\t\t\tb = yAxis.getDataItemPositionY(dataItem, yOpenField, openLocationY, vcy);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (stacked) {\n\t\t\t\t\t\tlet stackToItemY = dataItem.get(\"stackToItemY\")!;\n\t\t\t\t\t\tif (stackToItemY) {\n\t\t\t\t\t\t\tb = yAxis.getDataItemPositionY(stackToItemY, yField, openLocationY, (stackToItemY.component as XYSeries).get(\"vcy\"));\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tb = yAxis.basePosition();\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\tb = yAxis.basePosition();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tdataItem.setRaw(\"point\", { x: l + (r - l) / 2, y: t });\n\n\t\t\t\tfitH = true;\n\t\t\t}\n\t\t\telse if (yAxis === baseAxis) {\n\t\t\t\tlet startLocation = this._aLocationY0 + openLocationY - 0.5;\n\t\t\t\tlet endLocation = this._aLocationY1 + locationY - 0.5;\n\n\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - height.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tt = yAxis.getDataItemPositionY(dataItem, yOpenField, startLocation, vcy);\n\t\t\t\tb = yAxis.getDataItemPositionY(dataItem, yField, endLocation, vcy);\n\t\t\t\tr = xAxis.getDataItemPositionX(dataItem, xField, locationX, vcx);\n\n\t\t\t\tif (this._xOpenField !== this._xField) {\n\t\t\t\t\tl = xAxis.getDataItemPositionX(dataItem, xOpenField, openLocationX, vcx);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (stacked) {\n\t\t\t\t\t\tlet stackToItemX = dataItem.get(\"stackToItemX\")!;\n\t\t\t\t\t\tif (stackToItemX) {\n\t\t\t\t\t\t\tl = xAxis.getDataItemPositionX(stackToItemX, xField, openLocationX, (stackToItemX.component as XYSeries).get(\"vcx\"));\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tl = xAxis.basePosition();\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\tl = xAxis.basePosition();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfitW = true;\n\n\t\t\t\tdataItem.setRaw(\"point\", { x: r, y: t + (b - t) / 2 });\n\t\t\t}\n\n\t\t\tthis._updateSeriesGraphics(dataItem, graphics!, l, r, t, b, fitW, fitH);\n\n\t\t\tif ((l < xStart && r < xStart) || (l > xEnd && r > xEnd) || (t < yStart && b < yStart) || (t > yEnd && b > yEnd)) {\n\t\t\t\tthis._toggleColumn(dataItem, false);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._toggleColumn(dataItem, true);\n\t\t\t}\n\n\t\t\tlet rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\t\tif (rangeGraphics) {\n\t\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\t\tthis._updateSeriesGraphics(dataItem, graphics, l, r, t, b, fitW, fitH);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tthis._applyGraphicsStates(dataItem, previousDataItem);\n\t\t}\n\t}\n\n\tprotected _updateSeriesGraphics(dataItem: DataItem<this[\"_dataItemSettings\"]>, graphics: Graphics, l: number, r: number, t: number, b: number, fitW: boolean, fitH: boolean) {\n\t\tconst width = graphics.get(\"width\");\n\t\tconst height = graphics.get(\"height\");\n\t\tconst maxWidth = graphics.get(\"maxWidth\");\n\t\tconst maxHeight = graphics.get(\"maxHeight\");\n\n\t\tconst ptl = this.getPoint(l, t);\n\t\tconst pbr = this.getPoint(r, b);\n\n\t\tconst tooltipPoint = dataItem.get(\"point\");\n\n\t\tif (tooltipPoint) {\n\t\t\tconst point = this.getPoint(tooltipPoint.x, tooltipPoint.y);\n\t\t\ttooltipPoint.x = point.x + this._x;\n\t\t\ttooltipPoint.y = point.y + this._y;\n\t\t}\n\n\t\tl = ptl.x;\n\t\tr = pbr.x;\n\n\t\tt = ptl.y;\n\t\tb = pbr.y;\n\n\t\tif ($type.isNumber(width)) {\n\t\t\tconst offset: number = ((r - l) - width) / 2;\n\t\t\tl += offset;\n\t\t\tr -= offset;\n\t\t}\n\n\t\tif ($type.isNumber(maxWidth) && maxWidth < Math.abs(r - l)) {\n\t\t\tconst offset: number = ((r - l) - maxWidth) / 2;\n\t\t\tl += offset;\n\t\t\tr -= offset;\n\t\t}\n\n\t\tif ($type.isNumber(height)) {\n\t\t\tconst offset: number = ((b - t) - height) / 2;\n\t\t\tt += offset;\n\t\t\tb -= offset;\n\t\t}\n\n\t\tif ($type.isNumber(maxHeight) && maxHeight < Math.abs(b - t)) {\n\t\t\tconst offset: number = ((b - t) - maxHeight) / 2;\n\t\t\tt += offset;\n\t\t\tb -= offset;\n\t\t}\n\n\t\tif (this.get(\"adjustBulletPosition\")) {\n\t\t\tif (fitW) {\n\t\t\t\tr = Math.min(Math.max(0, r), this._pw);\n\t\t\t\tl = Math.min(Math.max(0, l), this._pw);\n\t\t\t}\n\n\t\t\tif (fitH) {\n\t\t\t\tt = Math.min(Math.max(0, t), this._ph);\n\t\t\t\tb = Math.min(Math.max(0, b), this._ph);\n\t\t\t}\n\t\t}\n\n\t\tdataItem.setRaw(\"left\", l);\n\t\tdataItem.setRaw(\"right\", r);\n\t\tdataItem.setRaw(\"top\", t);\n\t\tdataItem.setRaw(\"bottom\", b);\n\n\t\tgraphics.setPrivate(\"width\", r - l);\n\t\tgraphics.setPrivate(\"height\", b - t);\n\t\tgraphics.set(\"x\", l);\n\t\tgraphics.set(\"y\", b - (b - t));\n\t}\n\n\tprotected _handleDataSetChange() {\n\t\tsuper._handleDataSetChange();\n\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\tthis._toggleColumn(dataItem, false);\n\t\t})\n\t}\n\n\tprotected _applyGraphicsStates(dataItem: DataItem<this[\"_dataItemSettings\"]>, previousDataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tconst graphics = dataItem.get(\"graphics\")!;\n\n\t\tconst dropFromOpen = graphics.states.lookup(\"dropFromOpen\");\n\t\tconst riseFromOpen = graphics.states.lookup(\"riseFromOpen\");\n\n\t\tconst dropFromPrevious = graphics.states.lookup(\"dropFromPrevious\");\n\t\tconst riseFromPrevious = graphics.states.lookup(\"riseFromPrevious\");\n\n\t\tif (dropFromOpen || dropFromPrevious || riseFromOpen || riseFromPrevious) {\n\t\t\tconst xAxis = this.get(\"xAxis\");\n\t\t\tconst yAxis = this.get(\"yAxis\");\n\t\t\tconst baseAxis = this.get(\"baseAxis\");\n\n\t\t\tlet open: number | undefined;\n\t\t\tlet close: number | undefined;\n\t\t\tlet previousClose: number | undefined;\n\n\t\t\tif (baseAxis === xAxis && yAxis.isType<ValueAxis<any>>(\"ValueAxis\")) {\n\t\t\t\topen = dataItem.get(this._yOpenField as any);\n\t\t\t\tclose = dataItem.get(this._yField as any);\n\n\t\t\t\tpreviousClose = previousDataItem.get(this._yField as any);\n\t\t\t}\n\t\t\telse if (baseAxis === yAxis && xAxis.isType<ValueAxis<any>>(\"ValueAxis\")) {\n\t\t\t\topen = dataItem.get(this._xOpenField as any);\n\t\t\t\tclose = dataItem.get(this._xField as any);\n\n\t\t\t\tpreviousClose = previousDataItem.get(this._xField as any);\n\t\t\t}\n\n\t\t\tif ($type.isNumber(open) && $type.isNumber(close)) {\n\t\t\t\tif (close < open) {\n\t\t\t\t\tif (dropFromOpen) {\n\t\t\t\t\t\tdropFromOpen.apply();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (riseFromOpen) {\n\t\t\t\t\t\triseFromOpen.apply();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($type.isNumber(previousClose)) {\n\t\t\t\t\tif (close < previousClose) {\n\t\t\t\t\t\tif (dropFromPrevious) {\n\t\t\t\t\t\t\tdropFromPrevious.apply();\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\tif (riseFromPrevious) {\n\t\t\t\t\t\t\triseFromPrevious.apply();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tthis.columns.removeValue(graphics);\n\t\t\tgraphics.dispose();\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tconst list = graphics.getPrivate(\"list\");\n\t\t\t\tif (list) {\n\t\t\t\t\tlist.removeValue(graphics);\n\t\t\t\t}\n\t\t\t\tgraphics.dispose();\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tpromises.push(graphics.hide(duration));\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tpromises.push(graphics.hide(duration));\n\t\t\t})\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\tprotected _toggleColumn(dataItem: DataItem<this[\"_dataItemSettings\"]>, visible: boolean) {\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tgraphics.setPrivate(\"visible\", visible);\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tgraphics.setPrivate(\"visible\", visible);\n\t\t\t})\n\t\t}\n\n\t\tconst bullets = dataItem.bullets;\n\t\tif (bullets) {\n\t\t\t$array.each(bullets, (bullet) => {\n\t\t\t\tbullet.setPrivate(\"hidden\", !visible);\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tpromises.push(graphics.show(duration));\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tpromises.push(graphics.show(duration));\n\t\t\t})\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(dataItem?: DataItem<IBaseColumnSeriesDataItem>) {\n\t\tlet legendDataItem = this.get(\"legendDataItem\");\n\n\t\tif (this.get(\"useLastColorForLegendMarker\")) {\n\t\t\tif (!dataItem) {\n\t\t\t\tconst lastDataItem = this.dataItems[this.endIndex() - 1];\n\t\t\t\tif (lastDataItem) {\n\t\t\t\t\tdataItem = lastDataItem;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (legendDataItem) {\n\n\t\t\tlet graphics: Template<Graphics> | Graphics = this.columns.template;\n\t\t\tif (dataItem) {\n\t\t\t\tlet column = dataItem.get(\"graphics\");\n\t\t\t\tif (column) {\n\t\t\t\t\tgraphics = column;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\n\t\t\tif (markerRectangle) {\n\t\t\t\tif (!legendDataItem.get(\"itemContainer\").get(\"disabled\")) {\n\t\t\t\t\t$array.each(visualSettings, (setting: any) => {\n\t\t\t\t\t\tmarkerRectangle.set(setting, graphics.get(setting, this.get(setting)));\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\tprotected _getTooltipTarget(dataItem: DataItem<this[\"_dataItemSettings\"]>): Sprite {\n\t\tif (this.get(\"seriesTooltipTarget\") == \"bullet\") {\n\t\t\treturn super._getTooltipTarget(dataItem);\n\t\t}\n\n\t\tlet column = dataItem.get(\"graphics\");\n\t\tif (column) {\n\t\t\treturn column;\n\t\t}\n\t\treturn this;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"BaseColumnSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/BaseColumnSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../../core/render/Component\";\nimport type { Graphics } from \"../../../core/render/Graphics\";\nimport type { Template } from \"../../../core/util/Template\";\nimport type { ListTemplate } from \"../../../core/util/List\";\nimport type { CategoryAxis } from \"../axes/CategoryAxis\";\nimport type { DateAxis } from \"../axes/DateAxis\";\nimport type { ValueAxis } from \"../axes/ValueAxis\";\nimport type { ILegendDataItem } from \"../../../core/render/Legend\";\nimport type { Sprite } from \"../../../core/render/Sprite\";\n\nimport { XYSeries, IXYSeriesPrivate, IXYSeriesSettings, IXYSeriesDataItem, IXYSeriesAxisRange } from \"./XYSeries\";\nimport { Percent } from \"../../../core/util/Percent\";\nimport { visualSettings } from \"../../../core/render/Graphics\";\n\nimport * as $array from \"../../../core/util/Array\";\nimport * as $type from \"../../../core/util/Type\";\n\nexport interface IBaseColumnSeriesDataItem extends IXYSeriesDataItem {\n\n\t/**\n\t * An actual [[Graphics]] element (Column/Slice/Candlestick/OHLC).\n\t */\n\tgraphics?: Graphics;\n\n\t/**\n\t * In case axis ranges are added to the series, it creates a separate\n\t * element ([[Graphics]]) for each axis range. This array holds them all.\n\t */\n\trangeGraphics?: Array<Graphics>;\n\n\t/**\n\t * If data items from this series are used to feed a [[Legend]], this\n\t * will hold a reference to the equivalent Legend data item.\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/legend/#Data_item_list} for more info\n\t */\n\tlegendDataItem?: DataItem<ILegendDataItem>;\n}\n\nexport interface IBaseColumnSeriesSettings extends IXYSeriesSettings {\n\n\t/**\n\t * Indicates if series must divvy up available space with other column\n\t * series (`true`; default) or take up the whole available space (`false`).\n\t *\n\t * @default true\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/series/column-series/#Clustering} for more info\n\t */\n\tclustered?: boolean;\n\n\t/**\n\t * Whether positions of bullets should be calculated based on portion of\n\t * column currently visual (`true`) or the whole length/height of the\n\t * column (`false`).\n\t *\n\t * @default true\n\t */\n\tadjustBulletPosition?: boolean;\n\n\t/**\n\t * @todo review\n\t */\n\tuseLastColorForLegendMarker?: boolean\n}\n\nexport interface IBaseColumnSeriesPrivate extends IXYSeriesPrivate { }\n\nexport interface IBaseColumnSeriesAxisRange extends IXYSeriesAxisRange {\n\n\t/**\n\t * A list of actual [[Graphics]] elements for an axis range.\n\t *\n\t * Can be used to ajust the look of the axis range columns.\n\t */\n\tcolumns: ListTemplate<Graphics>;\n\n}\n\n/**\n * Base class for all \"column-based\" series\n */\nexport abstract class BaseColumnSeries extends XYSeries {\n\n\tdeclare public _settings: IBaseColumnSeriesSettings;\n\tdeclare public _privateSettings: IBaseColumnSeriesPrivate;\n\tdeclare public _dataItemSettings: IBaseColumnSeriesDataItem;\n\tdeclare public _axisRangeType: IBaseColumnSeriesAxisRange;\n\n\tpublic static className: string = \"BaseColumnSeries\";\n\tpublic static classNames: Array<string> = XYSeries.classNames.concat([BaseColumnSeries.className]);\n\n\t/**\n\t * @ignore\n\t */\n\tpublic abstract makeColumn(dataItem: DataItem<this[\"_dataItemSettings\"]>, listTemplate: ListTemplate<Graphics>): Graphics\n\n\t/**\n\t * ListTemplate of columns in series.\n\t */\n\tpublic abstract columns: ListTemplate<Graphics>;\n\n\tprotected _makeGraphics(listTemplate: ListTemplate<Graphics>, dataItem: DataItem<this[\"_dataItemSettings\"]>): Graphics {\n\t\treturn this.makeColumn(dataItem, listTemplate);\n\t}\n\n\tprotected _ph: number = 0;\n\tprotected _pw: number = 0;\n\n\tpublic _makeFieldNames() {\n\t\tsuper._makeFieldNames();\n\n\t\tconst xAxis = this.get(\"xAxis\");\n\t\tconst yAxis = this.get(\"yAxis\");\n\n\t\tconst categoryAxis = \"CategoryAxis\";\n\t\tconst valueAxis = \"ValueAxis\";\n\n\t\tif (xAxis.isType<CategoryAxis<any>>(categoryAxis)) {\n\t\t\tif (!this.get(\"openCategoryXField\")) {\n\t\t\t\tthis._xOpenField = this._xField;\n\t\t\t}\n\t\t}\n\n\t\tif (xAxis.isType<DateAxis<any>>(valueAxis)) {\n\t\t\tif (!this.get(\"openValueXField\")) {\n\t\t\t\tthis._xOpenField = this._xField;\n\t\t\t}\n\t\t}\n\n\t\tif (yAxis.isType<CategoryAxis<any>>(categoryAxis)) {\n\t\t\tif (!this.get(\"openCategoryYField\")) {\n\t\t\t\tthis._yOpenField = this._yField;\n\t\t\t}\n\t\t}\n\n\t\tif (yAxis.isType<DateAxis<any>>(valueAxis)) {\n\t\t\tif (!this.get(\"openValueYField\")) {\n\t\t\t\tthis._yOpenField = this._yField;\n\t\t\t}\n\t\t}\n\t}\n\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst xAxis = this.get(\"xAxis\");\n\t\tconst yAxis = this.get(\"yAxis\");\n\n\t\tconst len = this.dataItems.length;\n\t\tconst startIndex = Math.max(0, this.startIndex() - 2);\n\t\tconst endIndex = Math.min(this.endIndex() + 2, len - 1);\n\n\t\tif (xAxis.inited && yAxis.inited) {\n\t\t\tfor (let i = startIndex; i <= endIndex; i++) {\n\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\tthis._createGraphics(dataItem);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _updateChildren() {\n\t\tconst chart = this.chart;\n\t\tif (chart) {\n\t\t\tthis._ph = chart.plotContainer.height();\n\t\t\tthis._pw = chart.plotContainer.width();\n\t\t}\n\n\t\tconst xAxis = this.get(\"xAxis\");\n\t\tconst yAxis = this.get(\"yAxis\");\n\t\tconst baseAxis = this.get(\"baseAxis\")!;\n\n\t\tconst columnsTemplate = this.columns.template;\n\t\tif (this.isDirty(\"fill\")) {\n\t\t\tif (columnsTemplate.get(\"fill\") == null) {\n\t\t\t\tcolumnsTemplate.set(\"fill\", this.get(\"fill\"));\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"stroke\")) {\n\t\t\tif (columnsTemplate.get(\"stroke\") == null) {\n\t\t\t\tcolumnsTemplate.set(\"stroke\", this.get(\"stroke\"));\n\t\t\t}\n\t\t}\n\n\t\tlet index = 0;\n\t\tlet clusterCount = 0;\n\t\tlet i = 0;\n\n\t\t$array.each(baseAxis.series, (series) => {\n\t\t\tif (series instanceof BaseColumnSeries) {\n\t\t\t\tconst stacked = series.get(\"stacked\");\n\n\t\t\t\tif (stacked && i == 0) {\n\t\t\t\t\tclusterCount++;\n\t\t\t\t}\n\n\t\t\t\tif (!stacked && series.get(\"clustered\")) {\n\t\t\t\t\tclusterCount++;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (series === this) {\n\t\t\t\tindex = clusterCount - 1;\n\t\t\t}\n\t\t\ti++;\n\t\t})\n\n\t\tif (!this.get(\"clustered\")) {\n\t\t\tindex = 0;\n\t\t\tclusterCount = 1;\n\t\t}\n\n\t\tif (clusterCount === 0) {\n\t\t\tclusterCount = 1;\n\t\t\tindex = 0;\n\t\t}\n\n\t\tconst xRenderer = xAxis.get(\"renderer\");\n\t\tconst yRenderer = yAxis.get(\"renderer\");\n\n\t\tconst cellStartLocation = \"cellStartLocation\";\n\t\tconst cellEndLocation = \"cellEndLocation\";\n\n\t\tconst cellLocationX0 = xRenderer.get(cellStartLocation, 0);\n\t\tconst cellLocationX1 = xRenderer.get(cellEndLocation, 1);\n\n\t\tconst cellLocationY0 = yRenderer.get(cellStartLocation, 0);\n\t\tconst cellLocationY1 = yRenderer.get(cellEndLocation, 1);\n\n\t\tthis._aLocationX0 = cellLocationX0 + (index / clusterCount) * (cellLocationX1 - cellLocationX0);\n\t\tthis._aLocationX1 = cellLocationX0 + (index + 1) / clusterCount * (cellLocationX1 - cellLocationX0);;\n\n\t\tthis._aLocationY0 = cellLocationY0 + (index / clusterCount) * (cellLocationY1 - cellLocationY0);\n\t\tthis._aLocationY1 = cellLocationY0 + (index + 1) / clusterCount * (cellLocationY1 - cellLocationY0);\n\n\t\tif (xAxis.inited && yAxis.inited) {\n\t\t\tif (this._axesDirty || this._valuesDirty || this._stackDirty || this.isDirty(\"vcx\") || this.isDirty(\"vcy\") || this._sizeDirty) {\n\t\t\t\tconst len = this.dataItems.length;\n\n\t\t\t\tlet startIndex = Math.max(0, this.startIndex() - 2);\n\t\t\t\tlet endIndex = Math.min(this.endIndex() + 2, len - 1);\n\n\t\t\t\tfor (let i = 0; i < startIndex; i++) {\n\t\t\t\t\tthis._toggleColumn(this.dataItems[i], false);\n\t\t\t\t}\n\t\t\t\tlet previous = this.dataItems[startIndex];\n\n\t\t\t\tfor (let i = startIndex; i <= endIndex; i++) {\n\t\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\t\tif (dataItem.get(\"valueX\") != null && dataItem.get(\"valueY\") != null) {\n\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t\tif (i > 0 && startIndex > 0) {\n\t\t\t\t\t\t\tfor (let j = i - 1; j >= 0; j--) {\n\t\t\t\t\t\t\t\tlet dataItem = this.dataItems[j];\n\t\t\t\t\t\t\t\tif (dataItem.get(\"valueX\") != null && dataItem.get(\"valueY\") != null) {\n\t\t\t\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfor (let i = startIndex; i <= endIndex; i++) {\n\t\t\t\t\tlet dataItem = this.dataItems[i];\n\t\t\t\t\tthis._updateGraphics(dataItem, previous);\n\t\t\t\t\tif (dataItem.get(\"valueX\") != null && dataItem.get(\"valueY\") != null) {\n\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfor (let i = endIndex + 1; i < len; i++) {\n\t\t\t\t\tthis._toggleColumn(this.dataItems[i], false);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse {\n\t\t\tthis._skipped = true;\n\t\t}\n\t\tthis.updateLegendMarker();\n\t\tsuper._updateChildren();\n\t}\n\n\tprotected _createGraphics(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tlet graphics = dataItem.get(\"graphics\");\n\t\tif (!graphics) {\n\t\t\tgraphics = this._makeGraphics(this.columns, dataItem);\n\t\t\tdataItem.set(\"graphics\", graphics);\n\t\t\tgraphics._setDataItem(dataItem);\n\n\t\t\tconst legendDataItem = dataItem.get(\"legendDataItem\");\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\t\t\t\tif (markerRectangle) {\n\t\t\t\t\tmarkerRectangle.setAll({ fill: graphics.get(\"fill\"), stroke: graphics.get(\"stroke\") });\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis.axisRanges.each((axisRange) => {\n\t\t\t\tconst container = axisRange.container!;\n\t\t\t\tconst graphicsArray: Array<Graphics> = dataItem.get(\"rangeGraphics\", []);\n\t\t\t\tdataItem.set(\"rangeGraphics\", graphicsArray);\n\n\t\t\t\tconst rangeGraphics = this._makeGraphics(axisRange.columns, dataItem);\n\t\t\t\tgraphicsArray.push(rangeGraphics);\n\t\t\t\trangeGraphics.setPrivate(\"list\", axisRange.columns);\n\t\t\t\tcontainer.children.push(rangeGraphics);\n\t\t\t})\n\t\t}\n\t}\n\n\tprotected _updateGraphics(dataItem: DataItem<this[\"_dataItemSettings\"]>, previousDataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tlet graphics = dataItem.get(\"graphics\")!;\n\n\t\t//if (!graphics) {\n\t\t//\tthis._createGraphics(dataItem);\n\t\t//\tgraphics = dataItem.get(\"graphics\")!;\n\t\t//}\n\n\t\tconst xField = this._xField;\n\t\tconst yField = this._yField;\n\n\t\tconst valueX = dataItem.get(xField as any);\n\t\tconst valueY = dataItem.get(yField as any);\n\n\t\tif (valueX != null && valueY != null) {\n\t\t\tconst xOpenField = this._xOpenField;\n\t\t\tconst yOpenField = this._yOpenField;\n\n\t\t\tconst locationX = this.get(\"locationX\", dataItem.get(\"locationX\", 0.5));\n\t\t\tconst locationY = this.get(\"locationY\", dataItem.get(\"locationY\", 0.5));\n\n\t\t\tconst openLocationX = this.get(\"openLocationX\", dataItem.get(\"openLocationX\", locationX));\n\t\t\tconst openLocationY = this.get(\"openLocationY\", dataItem.get(\"openLocationY\", locationY));\n\n\t\t\tconst width = graphics.get(\"width\");\n\t\t\tconst height = graphics.get(\"height\");\n\n\t\t\tconst stacked = this.get(\"stacked\");\n\n\t\t\tconst xAxis = this.get(\"xAxis\");\n\t\t\tconst yAxis = this.get(\"yAxis\");\n\t\t\tconst baseAxis = this.get(\"baseAxis\");\n\n\t\t\tconst xStart = xAxis.get(\"start\");\n\t\t\tconst xEnd = xAxis.get(\"end\");\n\n\t\t\tconst yStart = yAxis.get(\"start\");\n\t\t\tconst yEnd = yAxis.get(\"end\");\n\n\t\t\tlet l!: number;\n\t\t\tlet r!: number;\n\t\t\tlet t!: number;\n\t\t\tlet b!: number;\n\n\t\t\tlet vcy = this.get(\"vcy\", 1);\n\t\t\tlet vcx = this.get(\"vcx\", 1);\n\n\t\t\tlet fitW = false;\n\t\t\tlet fitH = false;\n\n\t\t\tif (yAxis.isType<CategoryAxis<any>>(\"CategoryAxis\") && xAxis.isType<CategoryAxis<any>>(\"CategoryAxis\")) {\n\n\t\t\t\tlet startLocation = this._aLocationX0 + openLocationX - 0.5;\n\t\t\t\tlet endLocation = this._aLocationX1 + locationX - 0.5;\n\n\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - width.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tl = xAxis.getDataItemPositionX(dataItem, xOpenField, startLocation, vcx);\n\t\t\t\tr = xAxis.getDataItemPositionX(dataItem, xField, endLocation, vcx);\n\n\t\t\t\tstartLocation = this._aLocationY0 + openLocationY - 0.5;\n\t\t\t\tendLocation = this._aLocationY1 + locationY - 0.5;\n\n\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - height.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tt = yAxis.getDataItemPositionY(dataItem, yOpenField, startLocation, vcy);\n\t\t\t\tb = yAxis.getDataItemPositionY(dataItem, yField, endLocation, vcy);\n\n\t\t\t\tdataItem.setRaw(\"point\", { x: l + (r - l) / 2, y: t + (b - t) / 2 });\n\t\t\t}\n\t\t\telse if (xAxis === baseAxis) {\n\n\t\t\t\tlet startLocation = this._aLocationX0 + openLocationX - 0.5;\n\t\t\t\tlet endLocation = this._aLocationX1 + locationX - 0.5;\n\n\t\t\t\tif (width instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - width.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tl = xAxis.getDataItemPositionX(dataItem, xOpenField, startLocation, vcx);\n\t\t\t\tr = xAxis.getDataItemPositionX(dataItem, xField, endLocation, vcx);\n\t\t\t\tt = yAxis.getDataItemPositionY(dataItem, yField, locationY, vcy);\n\n\t\t\t\tif (this._yOpenField !== this._yField) {\n\t\t\t\t\tb = yAxis.getDataItemPositionY(dataItem, yOpenField, openLocationY, vcy);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (stacked) {\n\t\t\t\t\t\tlet stackToItemY = dataItem.get(\"stackToItemY\")!;\n\t\t\t\t\t\tif (stackToItemY) {\n\t\t\t\t\t\t\tb = yAxis.getDataItemPositionY(stackToItemY, yField, openLocationY, (stackToItemY.component as XYSeries).get(\"vcy\"));\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tb = yAxis.basePosition();\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\tb = yAxis.basePosition();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tdataItem.setRaw(\"point\", { x: l + (r - l) / 2, y: t });\n\n\t\t\t\tfitH = true;\n\t\t\t}\n\t\t\telse if (yAxis === baseAxis) {\n\t\t\t\tlet startLocation = this._aLocationY0 + openLocationY - 0.5;\n\t\t\t\tlet endLocation = this._aLocationY1 + locationY - 0.5;\n\n\t\t\t\tif (height instanceof Percent) {\n\t\t\t\t\tlet offset: number = (endLocation - startLocation) * (1 - height.value) / 2;\n\t\t\t\t\tstartLocation += offset;\n\t\t\t\t\tendLocation -= offset;\n\t\t\t\t}\n\n\t\t\t\tt = yAxis.getDataItemPositionY(dataItem, yOpenField, startLocation, vcy);\n\t\t\t\tb = yAxis.getDataItemPositionY(dataItem, yField, endLocation, vcy);\n\t\t\t\tr = xAxis.getDataItemPositionX(dataItem, xField, locationX, vcx);\n\n\t\t\t\tif (this._xOpenField !== this._xField) {\n\t\t\t\t\tl = xAxis.getDataItemPositionX(dataItem, xOpenField, openLocationX, vcx);\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (stacked) {\n\t\t\t\t\t\tlet stackToItemX = dataItem.get(\"stackToItemX\")!;\n\t\t\t\t\t\tif (stackToItemX) {\n\t\t\t\t\t\t\tl = xAxis.getDataItemPositionX(stackToItemX, xField, openLocationX, (stackToItemX.component as XYSeries).get(\"vcx\"));\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tl = xAxis.basePosition();\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\tl = xAxis.basePosition();\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tfitW = true;\n\n\t\t\t\tdataItem.setRaw(\"point\", { x: r, y: t + (b - t) / 2 });\n\t\t\t}\n\n\t\t\tthis._updateSeriesGraphics(dataItem, graphics!, l, r, t, b, fitW, fitH);\n\n\t\t\tif ((l < xStart && r < xStart) || (l > xEnd && r > xEnd) || (t < yStart && b < yStart) || (t > yEnd && b > yEnd)) {\n\t\t\t\tthis._toggleColumn(dataItem, false);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis._toggleColumn(dataItem, true);\n\t\t\t}\n\n\t\t\tlet rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\t\tif (rangeGraphics) {\n\t\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\t\tthis._updateSeriesGraphics(dataItem, graphics, l, r, t, b, fitW, fitH);\n\t\t\t\t})\n\t\t\t}\n\n\t\t\tthis._applyGraphicsStates(dataItem, previousDataItem);\n\t\t}\n\t}\n\n\tprotected _updateSeriesGraphics(dataItem: DataItem<this[\"_dataItemSettings\"]>, graphics: Graphics, l: number, r: number, t: number, b: number, fitW: boolean, fitH: boolean) {\n\t\tconst width = graphics.get(\"width\");\n\t\tconst height = graphics.get(\"height\");\n\t\tconst maxWidth = graphics.get(\"maxWidth\");\n\t\tconst maxHeight = graphics.get(\"maxHeight\");\n\n\t\tconst ptl = this.getPoint(l, t);\n\t\tconst pbr = this.getPoint(r, b);\n\n\t\tconst tooltipPoint = dataItem.get(\"point\");\n\n\t\tif (tooltipPoint) {\n\t\t\tconst point = this.getPoint(tooltipPoint.x, tooltipPoint.y);\n\t\t\ttooltipPoint.x = point.x + this._x;\n\t\t\ttooltipPoint.y = point.y + this._y;\n\t\t}\n\n\t\tl = ptl.x;\n\t\tr = pbr.x;\n\n\t\tt = ptl.y;\n\t\tb = pbr.y;\n\n\t\tif ($type.isNumber(width)) {\n\t\t\tconst offset: number = ((r - l) - width) / 2;\n\t\t\tl += offset;\n\t\t\tr -= offset;\n\t\t}\n\n\t\tif ($type.isNumber(maxWidth) && maxWidth < Math.abs(r - l)) {\n\t\t\tconst offset: number = ((r - l) - maxWidth) / 2;\n\t\t\tl += offset;\n\t\t\tr -= offset;\n\t\t}\n\n\t\tif ($type.isNumber(height)) {\n\t\t\tconst offset: number = ((b - t) - height) / 2;\n\t\t\tt += offset;\n\t\t\tb -= offset;\n\t\t}\n\n\t\tif ($type.isNumber(maxHeight) && maxHeight < Math.abs(b - t)) {\n\t\t\tconst offset: number = ((b - t) - maxHeight) / 2;\n\t\t\tt += offset;\n\t\t\tb -= offset;\n\t\t}\n\n\t\tif (this.get(\"adjustBulletPosition\")) {\n\t\t\tif (fitW) {\n\t\t\t\tr = Math.min(Math.max(0, r), this._pw);\n\t\t\t\tl = Math.min(Math.max(0, l), this._pw);\n\t\t\t}\n\n\t\t\tif (fitH) {\n\t\t\t\tt = Math.min(Math.max(0, t), this._ph);\n\t\t\t\tb = Math.min(Math.max(0, b), this._ph);\n\t\t\t}\n\t\t}\n\n\t\tdataItem.setRaw(\"left\", l);\n\t\tdataItem.setRaw(\"right\", r);\n\t\tdataItem.setRaw(\"top\", t);\n\t\tdataItem.setRaw(\"bottom\", b);\n\n\t\tgraphics.setPrivate(\"width\", r - l);\n\t\tgraphics.setPrivate(\"height\", b - t);\n\t\tgraphics.set(\"x\", l);\n\t\tgraphics.set(\"y\", b - (b - t));\n\t}\n\n\tprotected _handleDataSetChange() {\n\t\tsuper._handleDataSetChange();\n\t\t$array.each(this._dataItems, (dataItem) => {\n\t\t\tthis._toggleColumn(dataItem, false);\n\t\t})\n\t}\n\n\tpublic _applyGraphicsStates(dataItem: DataItem<this[\"_dataItemSettings\"]>, previousDataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\n\t\tconst graphics = dataItem.get(\"graphics\")!;\n\n\t\tconst dropFromOpen = graphics.states.lookup(\"dropFromOpen\");\n\t\tconst riseFromOpen = graphics.states.lookup(\"riseFromOpen\");\n\n\t\tconst dropFromPrevious = graphics.states.lookup(\"dropFromPrevious\");\n\t\tconst riseFromPrevious = graphics.states.lookup(\"riseFromPrevious\");\n\n\t\tif (dropFromOpen || dropFromPrevious || riseFromOpen || riseFromPrevious) {\n\t\t\tconst xAxis = this.get(\"xAxis\");\n\t\t\tconst yAxis = this.get(\"yAxis\");\n\t\t\tconst baseAxis = this.get(\"baseAxis\");\n\n\t\t\tlet open: number | undefined;\n\t\t\tlet close: number | undefined;\n\t\t\tlet previousClose: number | undefined;\n\n\t\t\tif (baseAxis === xAxis && yAxis.isType<ValueAxis<any>>(\"ValueAxis\")) {\n\t\t\t\topen = dataItem.get(this._yOpenField as any);\n\t\t\t\tclose = dataItem.get(this._yField as any);\n\n\t\t\t\tpreviousClose = previousDataItem.get(this._yField as any);\n\t\t\t}\n\t\t\telse if (baseAxis === yAxis && xAxis.isType<ValueAxis<any>>(\"ValueAxis\")) {\n\t\t\t\topen = dataItem.get(this._xOpenField as any);\n\t\t\t\tclose = dataItem.get(this._xField as any);\n\n\t\t\t\tpreviousClose = previousDataItem.get(this._xField as any);\n\t\t\t}\n\n\t\t\tif ($type.isNumber(open) && $type.isNumber(close)) {\n\t\t\t\tif (close < open) {\n\t\t\t\t\tif (dropFromOpen) {\n\t\t\t\t\t\tdropFromOpen.apply();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\tif (riseFromOpen) {\n\t\t\t\t\t\triseFromOpen.apply();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tif ($type.isNumber(previousClose)) {\n\t\t\t\t\tif (close < previousClose) {\n\t\t\t\t\t\tif (dropFromPrevious) {\n\t\t\t\t\t\t\tdropFromPrevious.apply();\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\tif (riseFromPrevious) {\n\t\t\t\t\t\t\triseFromPrevious.apply();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\n\t\tsuper.disposeDataItem(dataItem);\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tthis.columns.removeValue(graphics);\n\t\t\tgraphics.dispose();\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tconst list = graphics.getPrivate(\"list\");\n\t\t\t\tif (list) {\n\t\t\t\t\tlist.removeValue(graphics);\n\t\t\t\t}\n\t\t\t\tgraphics.dispose();\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * Hides series's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async hideDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.hideDataItem(dataItem, duration)];\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tpromises.push(graphics.hide(duration));\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tpromises.push(graphics.hide(duration));\n\t\t\t})\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\tprotected _toggleColumn(dataItem: DataItem<this[\"_dataItemSettings\"]>, visible: boolean) {\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tgraphics.setPrivate(\"visible\", visible);\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tgraphics.setPrivate(\"visible\", visible);\n\t\t\t})\n\t\t}\n\n\t\tconst bullets = dataItem.bullets;\n\t\tif (bullets) {\n\t\t\t$array.each(bullets, (bullet) => {\n\t\t\t\tbullet.setPrivate(\"hidden\", !visible);\n\t\t\t})\n\t\t}\n\t}\n\n\t/**\n\t * Shows series's data item.\n\t * \n\t * @param dataItem Data item\n\t * @param duration Animation duration in milliseconds\n\t * @return Promise\n\t */\n\tpublic async showDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>, duration?: number): Promise<void> {\n\t\tconst promises = [super.showDataItem(dataItem, duration)];\n\t\tconst graphics = dataItem.get(\"graphics\");\n\t\tif (graphics) {\n\t\t\tpromises.push(graphics.show(duration));\n\t\t}\n\n\t\tconst rangeGraphics = dataItem.get(\"rangeGraphics\")!;\n\t\tif (rangeGraphics) {\n\t\t\t$array.each(rangeGraphics, (graphics) => {\n\t\t\t\tpromises.push(graphics.show(duration));\n\t\t\t})\n\t\t}\n\n\t\tawait Promise.all(promises);\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic updateLegendMarker(dataItem?: DataItem<IBaseColumnSeriesDataItem>) {\n\t\tlet legendDataItem = this.get(\"legendDataItem\");\n\n\t\tif (this.get(\"useLastColorForLegendMarker\")) {\n\t\t\tif (!dataItem) {\n\t\t\t\tconst lastDataItem = this.dataItems[this.endIndex() - 1];\n\t\t\t\tif (lastDataItem) {\n\t\t\t\t\tdataItem = lastDataItem;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (legendDataItem) {\n\n\t\t\tlet graphics: Template<Graphics> | Graphics = this.columns.template;\n\t\t\tif (dataItem) {\n\t\t\t\tlet column = dataItem.get(\"graphics\");\n\t\t\t\tif (column) {\n\t\t\t\t\tgraphics = column;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tconst markerRectangle = legendDataItem.get(\"markerRectangle\");\n\n\t\t\tif (markerRectangle) {\n\t\t\t\tif (!legendDataItem.get(\"itemContainer\").get(\"disabled\")) {\n\t\t\t\t\t$array.each(visualSettings, (setting: any) => {\n\t\t\t\t\t\tmarkerRectangle.set(setting, graphics.get(setting, this.get(setting)));\n\t\t\t\t\t})\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t}\n\n\tprotected _getTooltipTarget(dataItem: DataItem<this[\"_dataItemSettings\"]>): Sprite {\n\t\tif (this.get(\"seriesTooltipTarget\") == \"bullet\") {\n\t\t\treturn super._getTooltipTarget(dataItem);\n\t\t}\n\n\t\tlet column = dataItem.get(\"graphics\");\n\t\tif (column) {\n\t\t\treturn column;\n\t\t}\n\t\treturn this;\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/LineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAClH,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAGzD,OAAO,EAAE,YAAY,EAAc,MAAM,UAAU,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"LineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/LineSeries.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,9 @@ import * as $array from "../../../core/util/Array";
|
|
|
6
6
|
import { line, area } from "d3-shape";
|
|
7
7
|
import { Template } from "../../../core/util/Template";
|
|
8
8
|
import { ListTemplate } from "../../../core/util/List";
|
|
9
|
+
import { color } from "../../../core/util/Color";
|
|
9
10
|
import { DataItem } from "../../../core/render/Component";
|
|
11
|
+
import { Rectangle } from "../../../core/render/Rectangle";
|
|
10
12
|
import * as $utils from "../../../core/util/Utils";
|
|
11
13
|
/**
|
|
12
14
|
* Used to plot line and/or area series.
|
|
@@ -611,8 +613,9 @@ var LineSeries = /** @class */ (function (_super) {
|
|
|
611
613
|
if (markerRectangle) {
|
|
612
614
|
markerRectangle.setPrivate("visible", false);
|
|
613
615
|
}
|
|
616
|
+
marker.set("background", Rectangle.new(this._root, { fillOpacity: 0, fill: color(0x000000) }));
|
|
614
617
|
var legendStroke = marker.children.push(Graphics._new(marker._root, {
|
|
615
|
-
themeTags: ["line", "series", "legend", "marker", "stroke"]
|
|
618
|
+
themeTags: ["line", "series", "legend", "marker", "stroke"], interactive: false
|
|
616
619
|
}, [this.strokes.template]));
|
|
617
620
|
this._legendStroke = legendStroke;
|
|
618
621
|
var legendFill = marker.children.push(Graphics._new(marker._root, {
|