@amcharts/amcharts5 5.2.17 → 5.2.20
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/map/MapChart.d.ts +8 -0
- package/.internal/charts/map/MapChart.d.ts.map +1 -1
- package/.internal/charts/map/MapChart.js +15 -0
- package/.internal/charts/map/MapChart.js.map +1 -1
- package/.internal/charts/stock/SettingsModal.d.ts.map +1 -1
- package/.internal/charts/stock/SettingsModal.js +4 -3
- package/.internal/charts/stock/SettingsModal.js.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.js +21 -4
- package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
- package/.internal/charts/stock/drawing/CalloutSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/CalloutSeries.js +8 -1
- package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts +11 -10
- package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/DrawingSeries.js +24 -4
- package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/EllipseSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/EllipseSeries.js +11 -9
- package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/FibonacciSeries.d.ts +3 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/FibonacciSeries.js +30 -0
- package/.internal/charts/stock/drawing/FibonacciSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js +6 -4
- package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/IconSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/IconSeries.js +13 -5
- package/.internal/charts/stock/drawing/IconSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/LabelSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/LabelSeries.js +22 -14
- package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/PolylineSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/PolylineSeries.js +9 -7
- package/.internal/charts/stock/drawing/PolylineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js +52 -50
- package/.internal/charts/stock/drawing/QuadrantLineSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/RectangleSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/RectangleSeries.js +12 -10
- package/.internal/charts/stock/drawing/RectangleSeries.js.map +1 -1
- package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts.map +1 -1
- package/.internal/charts/stock/drawing/SimpleLineSeries.js +6 -3
- package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -1
- package/.internal/charts/stock/indicators/AccumulationDistribution.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/AccumulationDistribution.js +1 -0
- package/.internal/charts/stock/indicators/AccumulationDistribution.js.map +1 -1
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js +1 -0
- package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/Aroon.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/Aroon.js +2 -0
- package/.internal/charts/stock/indicators/Aroon.js.map +1 -1
- package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/AwesomeOscillator.js +1 -0
- package/.internal/charts/stock/indicators/AwesomeOscillator.js.map +1 -1
- package/.internal/charts/stock/indicators/BollingerBands.js +2 -2
- package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -1
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js +1 -0
- package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js.map +1 -1
- package/.internal/charts/stock/indicators/ChaikinOscillator.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/ChaikinOscillator.js +1 -0
- package/.internal/charts/stock/indicators/ChaikinOscillator.js.map +1 -1
- package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
- package/.internal/charts/stock/indicators/CommodityChannelIndex.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js +1 -0
- package/.internal/charts/stock/indicators/CommodityChannelIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/DisparityIndex.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/DisparityIndex.js +1 -0
- package/.internal/charts/stock/indicators/DisparityIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/MACD.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/MACD.js +3 -2
- package/.internal/charts/stock/indicators/MACD.js.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverageDeviation.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js +1 -0
- package/.internal/charts/stock/indicators/MovingAverageDeviation.js.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js +2 -2
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -1
- package/.internal/charts/stock/indicators/OnBalanceVolume.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/OnBalanceVolume.js +1 -0
- package/.internal/charts/stock/indicators/OnBalanceVolume.js.map +1 -1
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js +1 -0
- package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -1
- package/.internal/charts/stock/indicators/StandardDeviation.d.ts +33 -0
- package/.internal/charts/stock/indicators/StandardDeviation.d.ts.map +1 -0
- package/.internal/charts/stock/indicators/StandardDeviation.js +108 -0
- package/.internal/charts/stock/indicators/StandardDeviation.js.map +1 -0
- package/.internal/charts/stock/indicators/StochasticOscillator.d.ts +2 -2
- package/.internal/charts/stock/indicators/StochasticOscillator.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/StochasticOscillator.js +2 -1
- package/.internal/charts/stock/indicators/StochasticOscillator.js.map +1 -1
- package/.internal/charts/stock/indicators/VWAP.js.map +1 -1
- package/.internal/charts/stock/indicators/Volume.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/Volume.js +1 -0
- package/.internal/charts/stock/indicators/Volume.js.map +1 -1
- package/.internal/charts/stock/indicators/WilliamsR.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/WilliamsR.js +1 -0
- package/.internal/charts/stock/indicators/WilliamsR.js.map +1 -1
- package/.internal/charts/stock/toolbar/DropdownList.d.ts +1 -0
- package/.internal/charts/stock/toolbar/DropdownList.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/DropdownList.js +13 -8
- package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts +2 -2
- package/.internal/charts/stock/toolbar/IndicatorControl.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.js +15 -1
- package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js +5 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js.map +1 -1
- package/.internal/charts/xy/XYChart.d.ts +17 -3
- package/.internal/charts/xy/XYChart.d.ts.map +1 -1
- package/.internal/charts/xy/XYChart.js +18 -6
- package/.internal/charts/xy/XYChart.js.map +1 -1
- package/.internal/charts/xy/XYChartDefaultTheme.d.ts.map +1 -1
- package/.internal/charts/xy/XYChartDefaultTheme.js +3 -1
- package/.internal/charts/xy/XYChartDefaultTheme.js.map +1 -1
- package/.internal/charts/xy/XYCursor.d.ts +11 -1
- package/.internal/charts/xy/XYCursor.d.ts.map +1 -1
- package/.internal/charts/xy/XYCursor.js +20 -24
- package/.internal/charts/xy/XYCursor.js.map +1 -1
- package/.internal/charts/xy/axes/Axis.d.ts +1 -2
- package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/Axis.js +4 -1
- package/.internal/charts/xy/axes/Axis.js.map +1 -1
- package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/CategoryAxis.js +25 -0
- package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
- package/.internal/charts/xy/axes/ValueAxis.d.ts +11 -0
- package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/ValueAxis.js +1 -1
- package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
- package/.internal/charts/xy/series/XYSeries.d.ts +2 -2
- package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
- package/.internal/charts/xy/series/XYSeries.js +49 -35
- package/.internal/charts/xy/series/XYSeries.js.map +1 -1
- package/.internal/core/Classes.d.ts +2 -0
- package/.internal/core/Classes.d.ts.map +1 -1
- package/.internal/core/Classes.js.map +1 -1
- package/.internal/core/Root.d.ts.map +1 -1
- package/.internal/core/Root.js +8 -6
- package/.internal/core/Root.js.map +1 -1
- package/.internal/core/render/Container.d.ts.map +1 -1
- package/.internal/core/render/Container.js +12 -0
- package/.internal/core/render/Container.js.map +1 -1
- package/.internal/core/render/HorizontalLayout.d.ts.map +1 -1
- package/.internal/core/render/HorizontalLayout.js +10 -2
- package/.internal/core/render/HorizontalLayout.js.map +1 -1
- package/.internal/core/render/PointedRectangle.js +2 -2
- package/.internal/core/render/PointedRectangle.js.map +1 -1
- package/.internal/core/render/SpriteResizer.d.ts.map +1 -1
- package/.internal/core/render/SpriteResizer.js +2 -0
- package/.internal/core/render/SpriteResizer.js.map +1 -1
- package/.internal/core/render/VerticalLayout.d.ts.map +1 -1
- package/.internal/core/render/VerticalLayout.js +10 -2
- package/.internal/core/render/VerticalLayout.js.map +1 -1
- package/.internal/core/render/backend/CanvasRenderer.js +4 -4
- package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
- package/.internal/core/util/Color.d.ts +1 -1
- package/.internal/core/util/Color.js +1 -1
- package/.internal/core/util/Color.js.map +1 -1
- package/CHANGELOG.md +48 -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/jest/README.md +6 -0
- package/examples/javascript/jest/babel.config.js +6 -0
- package/examples/javascript/jest/index.css +11 -0
- package/examples/javascript/jest/index.html +12 -0
- package/examples/javascript/jest/index.js +3 -0
- package/examples/javascript/jest/package.json +30 -0
- package/examples/javascript/jest/src/chart.js +118 -0
- package/examples/javascript/jest/src/chart.test.js +16 -0
- package/examples/javascript/jest/webpack.config.js +38 -0
- 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/package.json +1 -1
- package/examples/javascript/stock-chart-comparing-stocks/index.js +24 -4
- package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
- package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
- package/examples/javascript/stock-chart-intraday/package.json +1 -1
- package/examples/javascript/stock-chart-live/package.json +1 -1
- package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/javascript/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/jest/README.md +6 -0
- package/examples/typescript/jest/babel.config.js +6 -0
- package/examples/typescript/jest/index.css +11 -0
- package/examples/typescript/jest/index.html +12 -0
- package/examples/typescript/jest/index.ts +3 -0
- package/examples/typescript/jest/package.json +32 -0
- package/examples/typescript/jest/src/chart.test.js +16 -0
- package/examples/typescript/jest/src/chart.ts +118 -0
- package/examples/typescript/jest/tsconfig.json +12 -0
- package/examples/typescript/jest/webpack.config.js +45 -0
- 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/package.json +1 -1
- package/examples/typescript/stock-chart-comparing-stocks/index.ts +24 -4
- package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
- package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
- package/examples/typescript/stock-chart-intraday/package.json +1 -1
- package/examples/typescript/stock-chart-live/package.json +1 -1
- package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/typescript/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/index.d.ts +2 -1
- package/index.d.ts.map +1 -1
- package/index.js +1 -0
- package/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -232,6 +232,14 @@ export declare class MapChart extends SerialChart {
|
|
|
232
232
|
protected _centerX: number;
|
|
233
233
|
protected _centerY: number;
|
|
234
234
|
protected _makeGeoPath(): void;
|
|
235
|
+
/**
|
|
236
|
+
* Returns a geoPoint of the current zoom position.
|
|
237
|
+
*
|
|
238
|
+
* You can later use it to restore zoom position, e.g.: `chart.zoomToGeoPoint(geoPoint, zoomLevel, true)`.
|
|
239
|
+
*
|
|
240
|
+
* @since 5.2.19
|
|
241
|
+
*/
|
|
242
|
+
geoPoint(): IGeoPoint;
|
|
235
243
|
/**
|
|
236
244
|
* Returns coordinates to geographical center of the map.
|
|
237
245
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/map/MapChart.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"MapChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/map/MapChart.ts"],"names":[],"mappings":"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"}
|
|
@@ -202,6 +202,21 @@ var MapChart = /** @class */ (function (_super) {
|
|
|
202
202
|
this.setPrivateRaw("geoPath", path);
|
|
203
203
|
}
|
|
204
204
|
});
|
|
205
|
+
/**
|
|
206
|
+
* Returns a geoPoint of the current zoom position.
|
|
207
|
+
*
|
|
208
|
+
* You can later use it to restore zoom position, e.g.: `chart.zoomToGeoPoint(geoPoint, zoomLevel, true)`.
|
|
209
|
+
*
|
|
210
|
+
* @since 5.2.19
|
|
211
|
+
*/
|
|
212
|
+
Object.defineProperty(MapChart.prototype, "geoPoint", {
|
|
213
|
+
enumerable: false,
|
|
214
|
+
configurable: true,
|
|
215
|
+
writable: true,
|
|
216
|
+
value: function () {
|
|
217
|
+
return this.invert({ x: this.width() / 2, y: this.height() / 2 });
|
|
218
|
+
}
|
|
219
|
+
});
|
|
205
220
|
/**
|
|
206
221
|
* Returns coordinates to geographical center of the map.
|
|
207
222
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MapChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/map/MapChart.ts"],"names":[],"mappings":";AAWA,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAiE,MAAM,+BAA+B,CAAC;AAC3H,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,OAAO,EAAE,MAAM,QAAQ,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAC9C,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAE/C,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,KAAK,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,SAAS,MAAM,YAAY,CAAC;AACxC,OAAO,KAAK,OAAO,MAAM,wBAAwB,CAAC;AAClD,OAAO,KAAK,MAAM,MAAM,uBAAuB,CAAC;AAuNhD;IAA8B,4BAAW;IAAzC;QAAA,qEA62BC;QAp2BA;;;;;WAA8C;QAC9C;;;;;WAA8C;QAC9C;;;;;WAA6C;QAC7C;;;;;WAA6C;QAC7C;;;;;WAA6C;QAC7C;;;;mBAA0B,CAAC;WAAC;QAC5B;;;;mBAA0B,CAAC;WAAC;QAE5B;;;;mBAAqD,EAAE;WAAC;QACxD;;;;mBAAmC,CAAC;WAAC;QACrC;;;;mBAAwC,CAAC;WAAC;QAE1C;;;;mBAAsC,KAAK;WAAC;QAC5C;;;;mBAA2D,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,EAAE,EAAE;WAAC;QAE1G;;;;mBAAqD,IAAI;WAAC;QAE1D;;;;;WAA0D;QAC1D;;;;;WAA2D;QAC3D;;;;;WAA2D;QAC3D;;;;;WAA4D;QAC5D;;;;;WAA4D;QAE5D;;;;mBAAuB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;WAAC;QAExC;;;;mBAAoC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE;WAAC;QAClE;;;;mBAAqF,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;WAAC;QAC9H;;;;mBAAyF,EAAE,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE;WAAC;QAElI;;;;mBAAqC,KAAK;WAAC;QAE3C;;;;;WAA0C;QAE1C;;;;;WAAuB;QACvB;;;;;WAAuB;QAEvB;;;;mBAAgC,KAAK;WAAC;QAEtC;;;;mBAA6B,CAAC;WAAC;QAC/B;;;;mBAA6B,CAAC;WAAC;;IA6zBhC,CAAC;;;;;eA3zBA;YACC,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAC3C,IAAM,IAAI,GAAG,OAAO,EAAE,CAAC;YACvB,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC;YAC5B,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QACrC,CAAC;;IAED;;OAEG;;;;;eACH;YACC,OAAO,IAAI,CAAC,YAAY,CAAC;QAC1B,CAAC;;IAED;;OAEG;;;;;eACH;YACC,OAAO,IAAI,CAAC,UAAU,CAAC;QACxB,CAAC;;;;;;eAED;YAAA,iBAwDC;YAtDA,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;YAE3C,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,IAAI,MAAM,EAAE;gBAEzC,IAAI,CAAC,QAAQ,GAAG,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE,UAAC,KAAK;oBACvD,IAAM,WAAW,GAAG,KAAI,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC;oBAC7C,IAAM,gBAAgB,GAAG,KAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,CAAC,CAAC,CAAC;oBACzD,IAAM,aAAa,GAAG,KAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;oBAEnD,IAAM,UAAU,GAAG,KAAK,CAAC,aAAa,CAAC;oBAEvC,wEAAwE;oBACxE,uCAAuC;oBACvC,IAAI,MAAM,CAAC,YAAY,CAAC,UAAU,EAAE,KAAI,CAAC,EAAE;wBAC1C,UAAU,CAAC,cAAc,EAAE,CAAC;qBAC5B;yBACI;wBACJ,OAAO;qBACP;oBAED,IAAM,cAAc,GAAG,KAAI,CAAC,cAAc,CAAC;oBAC3C,IAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBAE3D,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE;wBACvB,KAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;qBAChD;yBACI,IAAI,MAAM,IAAI,SAAS,EAAE;wBAC7B,KAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;qBAC/F;yBACI,IAAI,MAAM,IAAI,SAAS,EAAE;wBAC7B,KAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;qBAC/F;oBAED,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,EAAE;wBACvB,KAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;qBAChD;yBACI,IAAI,MAAM,IAAI,SAAS,EAAE;wBAC7B,KAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;qBAC/F;yBACI,IAAI,MAAM,IAAI,SAAS,EAAE;wBAC7B,KAAI,CAAC,mBAAmB,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,GAAG,gBAAgB,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;qBAC/F;gBAEF,CAAC,CAAC,CAAC;gBAEH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aACpC;iBACI;gBACJ,IAAI,IAAI,CAAC,QAAQ,EAAE;oBAClB,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;iBACxB;aACD;QACF,CAAC;;;;;;eAED;YAAA,iBAuJC;YAtJA,iBAAM,gBAAgB,WAAE,CAAC;YAEzB,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAC3C,IAAM,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAC5B,IAAM,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAE7B,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;gBAC/B,IAAI,CAAC,YAAY,EAAE,CAAC;gBACpB,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAC3B,IAAI,CAAC,OAAO,EAAE,CAAC;gBAEf,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;gBACzE,IAAI,UAAU,CAAC,MAAM,EAAE;oBACtB,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;iBACjG;gBAED,IAAI,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC;gBACzC,IAAI,IAAI,IAAI,IAAI,IAAI,UAAU,EAAE;oBAC/B,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;oBACf,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;oBACf,IAAI,IAAI,CAAC,MAAM,EAAE;wBAChB,IAAI,cAAc,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;wBAE3C,IAAI,cAAc,EAAE;4BAEnB,IAAI,EAAE,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;4BACpC,IAAI,EAAE,EAAE;gCACP,IAAI,SAAS,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;gCAEvC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gCACvC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gCAEvC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;gCAE9B,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;gCAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;6BAC9B;yBACD;qBACD;iBACD;aACD;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE;gBACrD,IAAI,CAAC,eAAe,EAAE,CAAC;aACvB;YACD,IAAI,kBAAkB,GAAG,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC;YAC5D,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBAC1B,IAAI,CAAC,kBAAkB,CAAC,UAAU,GAAG,EAAE,CAAC;gBAExC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,MAAM;oBACvB,MAAM,CAAC,OAAO,CAAC,KAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;gBACxE,CAAC,CAAC,CAAA;gBAEF,IAAI,CAAC,OAAO,EAAE,CAAC;aACf;YAED,IAAI,kBAAkB,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,CAAC,IAAI,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,EAAE;gBAChG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;oBACnB,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;oBACf,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC;oBAEf,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;oBACpD,IAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,EAAE,CAAC;oBAEpC,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;oBACzC,UAAU,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;oBAEtD,IAAI,IAAI,CAAC,eAAe,EAAE;wBACzB,IAAI,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;wBAC1C,IAAI,EAAE,EAAE;4BACP,IAAI,SAAS,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;4BAEvC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BACvC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;4BAEvC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,CAAA;4BAE9B,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;4BAC9B,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;4BAE9B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;4BAC7B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;yBAC7B;qBACD;oBAED,IAAI,CAAC,mBAAmB,EAAE,CAAC;oBAE3B,IAAM,SAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;oBAC3C,IAAI,CAAC,UAAU,GAAG,SAAO,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;iBAC1D;aACD;YAED,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YACb,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC;YAEb,IAAI,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE;gBAChC,IAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC;gBAChD,IAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC;gBAC7C,IAAI,WAAW,KAAK,QAAQ,EAAE;oBAC7B,IAAI,CAAC,gBAAgB,CAAC,aAAa,CAAC,CAAC;oBACrC,IAAI,QAAQ,EAAE;wBACb,QAAQ,CAAC,OAAO,EAAE,CAAC;qBACnB;oBACD,IAAI,WAAW,EAAE;wBAChB,WAAW,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;wBACtC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;qBAChC;oBAED,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;iBACxC;aACD;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;gBAC9B,UAAU,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC;gBACzE,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAE3B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,MAAM;oBACvB,IAAI,MAAM,CAAC,MAAM,CAAiB,gBAAgB,CAAC,EAAE;wBACpD,IAAI,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;4BAC5B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,UAAC,QAAQ;gCACtC,IAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;gCACjC,IAAI,OAAO,EAAE;oCACZ,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,UAAC,MAAM;wCAC3B,IAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wCACpC,IAAI,MAAM,EAAE;4CACX,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,KAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;yCAC3C;oCACF,CAAC,CAAC,CAAA;iCACF;4BACF,CAAC,CAAC,CAAA;yBACF;qBACD;gBACF,CAAC,CAAC,CAAA;aACF;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;gBAC7D,UAAU,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC3G,IAAI,CAAC,mBAAmB,EAAE,CAAC;aAC3B;YAED,IAAI,UAAU,CAAC,MAAM,EAAE;gBACtB,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;oBACxF,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;oBACjG,IAAI,CAAC,mBAAmB,EAAE,CAAC;iBAC3B;aACD;YAED,IAAI,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;gBACtE,IAAI,CAAC,WAAW,EAAE,CAAC;aACnB;QACF,CAAC;;;;;;eAGD;YACC,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAE3C,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;YAC1B,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;YAE3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;gBACnB,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBACpD,IAAI,CAAC,aAAa,CAAC,UAAU,EAAE,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;gBAEnD,IAAM,SAAS,GAAG,UAAU,CAAC,SAAS,EAAE,CAAC;gBAEzC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;gBACxC,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;gBAExC,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAC7B,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;gBAE7B,IAAM,SAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBAC3C,IAAI,CAAC,UAAU,GAAG,SAAO,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAE1D,IAAI,CAAC,YAAY,GAAG,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAEtE,IAAM,MAAM,GAAG,SAAS,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAC/D,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC;gBAEzB,IAAI,IAAI,CAAC,kBAAkB,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;oBAElD,MAAM,CAAC,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;oBACnD,MAAM,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;oBACrD,MAAM,CAAC,GAAG,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBACjD,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;oBAEvD,IAAM,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC;oBAE1C,IAAI,aAAa,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,aAAa,CAAC,EAAE;wBAC/D,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC;wBAC5B,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC;qBAC7B;iBACD;gBAED,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;aACvB;QACF,CAAC;;IAED;;;OAGG;;;;;eACH;YACC,IAAI,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YAC5C,IAAI,CAAC,YAAY,EAAE;gBAClB,IAAM,SAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBAC3C,IAAM,MAAM,GAAG,SAAO,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;gBAEvD,IAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAM,KAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAEzB,IAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC3B,IAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBAE5B,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,IAAI,GAAG,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,KAAG,GAAG,CAAC,MAAM,GAAG,KAAG,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;aAC1F;YACD,OAAO,YAAY,CAAC;QACrB,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAc,QAAiB;YAC9B,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACxF,CAAC;;;;;;eAED;YACC,IAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAC3C,IAAI,UAAU,CAAC,MAAM,EAAE;gBACtB,IAAI,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC1B,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;gBAC3B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE;oBACnB,IAAI,CAAC,eAAe,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;iBAC1F;aACD;QACF,CAAC;;;;;;eAED;YACC,iBAAM,aAAa,WAAE,CAAC;YACtB,IAAI,IAAI,CAAC,eAAe,EAAE;gBACzB,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;gBAC7B,IAAM,IAAI,GAAG,kBAAkB,CAAC;gBAChC,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;oBAChC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;iBACzD;aACD;QACF,CAAC;;;;;;eAED;YACC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,EAAE;gBAC9C,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;aAC1H;QACF,CAAC;;IAGD;;OAEG;;;;;eACH;YACC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC;YAC7B,IAAI,CAAC,SAAS,EAAE,CAAC;QAClB,CAAC;;IAED;;OAEG;;;;;eACH;YACC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAC,MAAM;gBACvB,MAAM,CAAC,mBAAmB,EAAE,CAAC;YAC9B,CAAC,CAAC,CAAA;QACH,CAAC;;;;;;eAED;YAAA,iBAmDC;YAlDA,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;YAC/D,IAAI,CAAC,SAAS,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;YAE/E,iBAAM,SAAS,WAAE,CAAC;YAElB,IAAI,CAAC,YAAY,EAAE,CAAC;YAEpB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;YAExD,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBACnC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;aACzC;YACD,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,IAAI,IAAI,EAAE;gBACnC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC;aAC1C;YAED,yEAAyE;YACzE,iBAAiB;YACjB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC7C,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;YACtD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;gBAC/D,SAAS,EAAE,CAAC,KAAK,EAAE,YAAY,CAAC;gBAChC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;gBAC7B,WAAW,EAAE,CAAC;aACd,CAAC,CAAC,CAAC;YAEJ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,UAAC,KAAK;gBACvE,KAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC,CAAC;YAEJ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE,UAAC,KAAK;gBAC3E,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAC5B,CAAC,CAAC,CAAC,CAAC;YAEJ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC,mBAAmB,EAAE,UAAC,KAAK;gBAC7E,KAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC,CAAC;YAEJ,IAAI,OAAO,GAAG,KAAK,CAAC;YACpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBAClD,IAAI,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE;oBAC9C,OAAO,GAAG,IAAI,CAAC;iBACf;aACD;YACD,IAAI,CAAC,OAAO,EAAE;gBACb,IAAI,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;aAC3B;YAED,IAAI,CAAC,WAAW,EAAE,CAAC;QAEpB,CAAC;;;;;;eAED,UAA2B,KAA0B;YAEpD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAG/C,IAAI,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,MAAM,CAAC;YACjE,IAAI,KAAK,GAAG,CAAC,EAAE;gBACd,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC9C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC9C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;gBAE5C,IAAM,MAAM,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,EAAE,CAAC;gBACrD,IAAI,MAAM,EAAE;oBACX,IAAI,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;oBACzC,IAAI,SAAS,EAAE;wBACd,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,SAAS,CAAC;qBACpD;iBACD;aACD;iBACI,IAAI,KAAK,IAAI,CAAC,EAAE;gBAEpB,IAAI,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;gBAC/C,IAAI,EAAE,EAAE;oBACP,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;iBAC9B;gBAED,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE;oBAEzC,IAAI,IAAI,CAAC,GAAG,EAAE;wBACb,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;qBAChB;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE;wBACd,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;qBACjB;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE;wBACd,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;qBACjB;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE;wBACd,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;qBACjB;oBACD,IAAI,IAAI,CAAC,IAAI,EAAE;wBACd,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;qBACjB;oBAED,IAAM,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACpE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBAC9C,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;oBAC9C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAC5C,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;oBAE5C,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;oBAEzC,IAAI,UAAU,CAAC,MAAM,EAAE;wBACtB,IAAI,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;wBACvD,IAAI,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;wBAC/D,IAAI,EAAE,IAAI,EAAE,EAAE;4BACb,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;4BACrC,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;yBACrC;qBACD;iBACD;aACD;QACF,CAAC;;IAED;;;;;;OAMG;;;;;eACH,UAAc,KAAa;YAC1B,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAEzC,IAAI,UAAU,CAAC,MAAM,EAAE;gBACtB,IAAM,EAAE,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;gBACjD,IAAI,EAAE,EAAE;oBACP,OAAO,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBAC7C;aACD;YAED,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC;QACtC,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAe,KAAgB;YAC9B,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;YAEzC,IAAM,EAAE,GAAG,UAAU,CAAC,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;YAEzD,IAAI,EAAE,EAAE;gBACP,OAAO,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC9B;YAED,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;QACvB,CAAC;;;;;;eAED,UAAyB,MAA2B;YACnD,IAAI,CAAC,cAAc,CAAC,WAAW,GAAG,EAAE,CAAA;QACrC,CAAC;;;;;;eAED;YAAA,iBAsDC;YArDA,IAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;YAC3C,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,IAAI,UAAU,GAAkB,EAAE,CAAC;YACnC,IAAI,UAAU,GAAkB,EAAE,CAAC;YAEnC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,UAAC,CAAC,EAAE,KAAK;gBACjD,UAAU,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;gBACtB,IAAI,SAAS,GAAG,KAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;gBACpC,IAAI,SAAS,EAAE;oBACd,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,CAAC;iBAC1B;gBACD,CAAC,EAAE,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE;gBACnD,IAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC;gBAExC,IAAI,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAE/B,IAAI,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAC/B,IAAI,UAAU,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;gBAE/B,IAAI,UAAU,IAAI,UAAU,IAAI,UAAU,IAAI,UAAU,EAAE;oBAEzD,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACzC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAEzC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACzC,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAEzC,IAAI,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;oBAC3F,IAAI,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;oBAE3F,IAAI,KAAK,GAAG,eAAe,GAAG,eAAe,GAAG,IAAI,CAAC,cAAc,CAAC;oBACpE,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC;oBAE3F,IAAI,UAAU,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBAC9H,IAAI,UAAU,GAAG,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,UAAU,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;oBAE9H,IAAI,EAAE,GAAG,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;oBACnC,IAAI,EAAE,GAAG,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC;oBAEnC,IAAI,SAAS,GAAG,IAAI,CAAC,cAAc,CAAC;oBAEpC,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,GAAG,CAAC,CAAE,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC;oBAClE,IAAI,EAAE,GAAG,UAAU,CAAC,CAAC,GAAG,CAAC,CAAE,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC;oBAElE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC;oBAC7B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;oBAC3B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;iBAC3B;aACD;QACF,CAAC;;;;;;eAED,UAA2B,KAA0B;YACpD,IAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;YAC3C,IAAI,SAAS,GAAG,cAAc,CAAC,aAAa,EAAE,CAAC;YAC/C,IAAM,WAAW,GAAG,cAAc,CAAC,eAAe,EAAE,CAAC;YACrD,IAAM,aAAa,GAAG,KAAK,CAAC,aAAoB,CAAC;YAEjD,IAAM,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;YAE1C,IAAI,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;gBAC1B,IAAI,SAAS,EAAE;oBACd,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC;oBAE1C,IAAI,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE;wBACxD,IAAI,CAAC,YAAY,EAAE,CAAC;wBACpB,OAAO;qBACP;iBACD;aACD;YAED,IAAI,WAAW,IAAI,SAAS,IAAI,SAAS,IAAI,WAAW,EAAE;gBACzD,OAAO;aACP;iBACI;gBACJ,IAAI,SAAS,EAAE;oBACd,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC9B,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC9B,IAAI,IAAI,IAAI,MAAM,IAAI,IAAI,IAAI,MAAM,EAAE;wBACrC,IAAM,OAAO,GAAG,cAAc,CAAC,QAAQ,CAAC;wBACxC,IAAI,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBACzC,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;wBAEvC,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;wBAC7B,IAAI,CAAC,GAAG,IAAI,CAAC,eAAe,CAAC;wBAE7B,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE;4BACjE,IAAI,EAAE,GAAG,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;4BAC1C,IAAI,EAAE,EAAE;gCACP,EAAE,CAAC,MAAM,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;6BAC/B;4BAED,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE;gCAC3C,IAAI,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;gCACzC,IAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;gCAE3C,IAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC;gCAC7C,IAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC;gCAE/B,IAAM,CAAC,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;gCACvB,IAAM,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC;gCAExB,IAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gCACvC,IAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gCAEvC,IAAI,IAAI,IAAI,YAAY,EAAE;oCACzB,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;oCAE3B,IAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;oCACvD,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;oCACjD,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;iCAEjD;gCACD,IAAI,IAAI,IAAI,YAAY,EAAE;oCACzB,CAAC,IAAI,KAAK,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC;oCAC3B,IAAM,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,SAAS,CAAC;oCACvD,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;oCACjD,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;iCACjD;gCAED,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gCAC1B,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;gCAE1B,IAAI,UAAU,CAAC,MAAM,EAAE;oCACtB,IAAI,YAAY,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC;oCACjE,IAAI,QAAQ,IAAI,YAAY,EAAE;wCAC7B,IAAI,IAAI,IAAI,SAAS,EAAE;4CACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,cAAe,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;yCACnF;wCACD,IAAI,IAAI,IAAI,SAAS,EAAE;4CACtB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,cAAe,GAAG,CAAC,SAAS,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC;yCACnF;qCACD;iCACD;6BACD;yBACD;qBACD;iBACD;aACD;QACF,CAAC;;;;;;eAED,UAA8B,KAAa,EAAE,QAAgB,EAAE,MAAyB;YACvF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1H,CAAC;;;;;;eAED,UAA8B,KAAa,EAAE,QAAgB,EAAE,MAAyB;YACvF,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;QAC1H,CAAC;;;;;;eAED,UAA2B,KAAa,EAAE,KAAa;YACtD,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;YACnC,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YACzC,IAAI,YAAY,GAAG,SAAS,CAAC;YAC7B,IAAI,KAAK,GAAG,CAAC,EAAE;gBACd,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC;aAChC;iBACI,IAAI,KAAK,GAAG,CAAC,EAAE;gBACnB,YAAY,GAAG,SAAS,GAAG,IAAI,CAAC;aAChC;YAED,IAAI,YAAY,IAAI,SAAS,EAAE;gBAC9B,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,YAAY,CAAC,CAAA;aACrC;QACF,CAAC;;IAED;;;;;OAKG;;;;;eACH,UAAuB,SAAuE,EAAE,QAAiB;YAChH,IAAI,SAAS,CAAC,KAAK,GAAG,SAAS,CAAC,IAAI,EAAE;gBACrC,SAAS,CAAC,KAAK,GAAG,GAAG,CAAC;gBACtB,SAAS,CAAC,IAAI,GAAG,CAAC,GAAG,CAAC;aACtB;YAED,IAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;YAE1D,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,CAAC,GAAG,EAAE,CAAC,CAAC;YAC9E,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;YAElF,IAAI,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC3B,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACvB;YAED,IAAI,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC3B,EAAE,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aACvB;YAED,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAElC,IAAI,MAAM,GAAG,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC;YAElE,IAAI,eAAe,GAAG,IAAI,CAAC,eAAe,CAAC;YAE3C,IAAI,SAAS,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,UAAU,EAAE,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,EAAE,eAAe,CAAC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,CAAC;YACnK,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvD,IAAI,CAAC,GAAG,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAEtD,IAAI,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,GAAA,EAAE,CAAC,GAAA,EAAE,CAAC,CAAC;YAErC,OAAO,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,CAAC,CAAC;QACjE,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAmB,KAAa,EAAE,KAAa,EAAE,MAAgB,EAAE,QAAiB;YACnF,IAAI,KAAK,EAAE;gBACV,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,EAAE,CAAC,CAAC,CAAC;aAC3F;YAED,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;gBAC9B,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC;aAC5C;YACD,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;YAC3C,IAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;YAE3C,IAAI,IAAI,CAAC,GAAG,CAAC,oBAAoB,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,EAAE;gBAC5E,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;gBAC1C,MAAM,GAAG,IAAI,CAAC;aACd;YAED,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YAChB,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;YAEhB,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YACnC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;YAEnC,IAAI,EAAE,GAAG,CAAC,CAAC;YACX,IAAI,EAAE,GAAG,CAAC,CAAC;YAEX,IAAI,MAAM,EAAE;gBACX,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBACtB,EAAE,GAAG,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;aACvB;YAED,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC;YAC7C,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC,CAAC;YAG7C,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,YAAY,EAAE,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAC5F,IAAI,CAAC,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,EAAE,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;YAE7F,IAAI,SAAS,IAAI,KAAK,EAAE;gBACvB,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,0BAA0B,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;aAC5G;YAED,OAAO,IAAI,CAAC,GAAG,CAAC;QACjB,CAAC;;IAED;;;;;;;OAOG;;;;;eACH,UAAsB,QAAmB,EAAE,KAAa,EAAE,MAAgB,EAAE,QAAiB;YAC5F,IAAI,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;YAEhC,IAAI,EAAE,EAAE;gBACP,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;aACrD;QACF,CAAC;;IAED;;OAEG;;;;;eACH;YACC,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5H,CAAC;;IAED;;OAEG;;;;;eACH;YACC,OAAO,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5H,CAAC;;;;;;eAED;YACC,iBAAM,WAAW,WAAE,CAAC;YACpB,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;YAC9B,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACzB,CAAC;;IAED;;OAEG;;;;;eACH,UAAe,QAA6C;YAC3D,IAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;YAC3C,IAAM,QAAQ,GAAG,QAAQ,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YAC1C,IAAI,QAAQ,EAAE;gBACb,OAAO,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;aAC9B;YACD,OAAO,CAAC,CAAC;QACV,CAAC;;IA32BD;;;;eAAkC,UAAU;OAAC;IAC7C;;;;eAA0C,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;OAAC;IA22B/F,eAAC;CAAA,AA72BD,CAA8B,WAAW,GA62BxC;SA72BY,QAAQ","sourcesContent":["import type { MapSeries } from \"./MapSeries\";\nimport type { MapPointSeries } from \"./MapPointSeries\";\nimport type { GeoProjection, GeoPath } from \"d3-geo\";\nimport type { IPoint } from \"../../core/util/IPoint\";\nimport type { IGeoPoint } from \"../../core/util/IGeoPoint\";\nimport type { Time } from \"../../core/util/Animation\";\nimport type { ZoomControl } from \"./ZoomControl\";\nimport type { Animation } from \"../../core/util/Entity\";\nimport type { DataItem } from \"../../core/render/Component\";\nimport type { IMapPolygonSeriesDataItem } from \"./MapPolygonSeries\";\n\nimport { MapChartDefaultTheme } from \"./MapChartDefaultTheme\";\nimport { SerialChart, ISerialChartPrivate, ISerialChartSettings, ISerialChartEvents } from \"../../core/render/SerialChart\";\nimport { Rectangle } from \"../../core/render/Rectangle\";\nimport { geoPath } from \"d3-geo\";\nimport { Color } from \"../../core/util/Color\";\nimport { registry } from \"../../core/Registry\";\n\nimport * as $math from \"../../core/util/Math\";\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $mapUtils from \"./MapUtils\";\nimport * as $object from \"../../core/util/Object\";\nimport * as $utils from \"../../core/util/Utils\";\n\nimport type { IDisposer } from \"../../core/util/Disposer\";\nimport type { ISpritePointerEvent } from \"../../core/render/Sprite\";\n\nexport interface IMapChartSettings extends ISerialChartSettings {\n\n\t/**\n\t * A projection to use when plotting the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Projections} for more info\n\t */\n\tprojection?: GeoProjection;\n\n\t/**\n\t * Current zoom level.\n\t */\n\tzoomLevel?: number;\n\n\t/**\n\t * @ignore\n\t */\n\ttranslateX?: number;\n\n\t/**\n\t * @ignore\n\t */\n\ttranslateY?: number;\n\n\t/**\n\t * Vertical centering of the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Centering_the_map} for more info\n\t */\n\trotationY?: number;\n\n\t/**\n\t * Horizontal centering of the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Centering_the_map} for more info\n\t */\n\trotationX?: number;\n\n\t/**\n\t * Depth centering of the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Centering_the_map} for more info\n\t */\n\trotationZ?: number;\n\n\t/**\n\t * Highest zoom level map is allowed to zoom in to.\n\t *\n\t * @deault 32\n\t */\n\tmaxZoomLevel?: number;\n\n\t/**\n\t * Lowest zoom level map is allowed to zoom in to.\n\t *\n\t * @deault 1\n\t */\n\tminZoomLevel?: number;\n\n\t/**\n\t * Increment zoom level by `zoomStep` when user zooms in via [[ZoomControl]] or\n\t * API.\n\t *\n\t * @default 2\n\t */\n\tzoomStep?: number;\n\n\t/**\n\t * Defines what happens when map is being dragged horizontally.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Panning} for more info\n\t * @default \"translateX\"\n\t */\n\tpanX?: \"none\" | \"rotateX\" | \"translateX\";\n\n\t/**\n\t * Defines what happens when map is being dragged vertically.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Panning} for more info\n\t * @default \"translateY\"\n\t */\n\tpanY?: \"none\" | \"rotateY\" | \"translateY\";\n\n\t/**\n\t * Enables pinch-zooming of the map on multi-touch devices.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Pinch_zoom} for more info\n\t * @default true\n\t */\n\tpinchZoom?: boolean;\n\n\t/**\n\t * Defines what happens when mouse wheel is turned horizontally.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Mouse_wheel_behavior} for more info\n\t * @default \"none\"\n\t */\n\twheelX?: \"none\" | \"zoom\" | \"rotateX\" | \"rotateY\";\n\n\t/**\n\t * Defines what happens when mouse wheel is turned vertically.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Mouse_wheel_behavior} for more info\n\t * @default \"zoom\"\n\t */\n\twheelY?: \"none\" | \"zoom\" | \"rotateX\" | \"rotateY\";\n\n\t/**\n\t * Sensitivity of a mouse wheel.\n\t *\n\t * @default 1\n\t */\n\twheelSensitivity?: number;\n\n\t/**\n\t * Duration of mouse-wheel action animation, in milliseconds.\n\t */\n\twheelDuration?: number;\n\n\t/**\n\t * An easing function to use for mouse wheel action animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t * @default am5.ease.out($ease.cubic)\n\t */\n\twheelEasing?: (t: Time) => Time;\n\n\t/**\n\t * Duration of zoom/pan animations, in milliseconds.\n\t */\n\tanimationDuration?: number;\n\n\t/**\n\t * An easing function to use for zoom/pan animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t * @default am5.ease.out($ease.cubic)\n\t */\n\tanimationEasing?: (t: Time) => Time;\n\n\n\t/**\n\t * A [[ZoomControl]] instance.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Zoom_control} for more info\n\t */\n\tzoomControl?: ZoomControl;\n\n\t/**\n\t * Initial/home zoom level.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Initial_position_and_zoom} for more info\n\t */\n\thomeZoomLevel?: number;\n\n\t/**\n\t * Initial coordinates to center map on load or `goHome()` call.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Initial_position_and_zoom} for more info\n\t */\n\thomeGeoPoint?: IGeoPoint;\n\n\t/**\n\t * How much of a map can go outside the viewport.\n\t *\n\t * @default 0.4\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Panning_outside_viewport} for more info\n\t */\n\tmaxPanOut?: number;\n\n\t/**\n\t * Setting `true` means that the map will automatically center itself (or go\n\t * to `homeGeoPoint` if set) when fully zoomed out.\n\t *\n\t * `false` would mean that zoom out will be centered around the mouse\n\t * cursor (when zooming using wheel), or current map position.\n\t * \n\t * @default true\n\t * @since 5.2.1\n\t */\n\tcenterMapOnZoomOut?: boolean;\n\n}\n\nexport interface IMapChartPrivate extends ISerialChartPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tgeoPath: GeoPath;\n\n\t/**\n\t * @ignore\n\t */\n\tmapScale: number;\n\n}\n\n\nexport interface IMapChartEvents extends ISerialChartEvents {\n\n\t/**\n\t * Invoked when geo bounds of the map change, usually after map is\n\t * initialized.\n\t */\n\tgeoboundschanged: {};\n\n}\n\n\nexport class MapChart extends SerialChart {\n\tpublic static className: string = \"MapChart\";\n\tpublic static classNames: Array<string> = SerialChart.classNames.concat([MapChart.className]);\n\n\tdeclare public _settings: IMapChartSettings;\n\tdeclare public _privateSettings: IMapChartPrivate;\n\tdeclare public _seriesType: MapSeries;\n\tdeclare public _events: IMapChartEvents;\n\n\tprotected _downTranslateX: number | undefined;\n\tprotected _downTranslateY: number | undefined;\n\tprotected _downRotationX: number | undefined;\n\tprotected _downRotationY: number | undefined;\n\tprotected _downRotationZ: number | undefined;\n\tprotected _pLat: number = 0;\n\tprotected _pLon: number = 0;\n\n\tprotected _movePoints: { [index: number]: IPoint } = {};\n\tprotected _downZoomLevel: number = 1;\n\tprotected _doubleDownDistance: number = 0;\n\n\tprotected _dirtyGeometries: boolean = false;\n\tprotected _geometryColection: GeoJSON.GeometryCollection = { type: \"GeometryCollection\", geometries: [] };\n\n\tprotected _centerLocation: [number, number] | null = null;\n\n\tprotected _za?: Animation<this[\"_settings\"][\"zoomLevel\"]>;\n\tprotected _rxa?: Animation<this[\"_settings\"][\"rotationX\"]>;\n\tprotected _rya?: Animation<this[\"_settings\"][\"rotationY\"]>;\n\tprotected _txa?: Animation<this[\"_settings\"][\"translateX\"]>;\n\tprotected _tya?: Animation<this[\"_settings\"][\"translateY\"]>;\n\n\tprotected _mapBounds = [[0, 0], [0, 0]];\n\n\tprotected _geoCentroid: IGeoPoint = { longitude: 0, latitude: 0 };\n\tprotected _geoBounds: { left: number, right: number, top: number, bottom: number } = { left: 0, right: 0, top: 0, bottom: 0 };\n\tprotected _prevGeoBounds: { left: number, right: number, top: number, bottom: number } = { left: 0, right: 0, top: 0, bottom: 0 };\n\n\tprotected _dispatchBounds: boolean = false;\n\n\tprotected _wheelDp: IDisposer | undefined;\n\n\tprotected _pw?: number;\n\tprotected _ph?: number;\n\n\tprotected _mapFitted: boolean = false;\n\n\tprotected _centerX: number = 0;\n\tprotected _centerY: number = 0;\n\n\tprotected _makeGeoPath() {\n\t\tconst projection = this.get(\"projection\")!;\n\t\tconst path = geoPath();\n\t\tpath.projection(projection);\n\t\tthis.setPrivateRaw(\"geoPath\", path);\n\t}\n\n\t/**\n\t * Returns coordinates to geographical center of the map.\n\t */\n\tpublic geoCentroid() {\n\t\treturn this._geoCentroid;\n\t}\n\n\t/**\n\t * Returns geographical bounds of the map.\n\t */\n\tpublic geoBounds() {\n\t\treturn this._geoBounds;\n\t}\n\n\tprotected _handleSetWheel() {\n\n\t\tconst wheelX = this.get(\"wheelX\");\n\t\tconst wheelY = this.get(\"wheelY\");\n\t\tconst chartContainer = this.chartContainer;\n\n\t\tif (wheelX != \"none\" || wheelY != \"none\") {\n\n\t\t\tthis._wheelDp = chartContainer.events.on(\"wheel\", (event) => {\n\t\t\t\tconst wheelEasing = this.get(\"wheelEasing\")!;\n\t\t\t\tconst wheelSensitivity = this.get(\"wheelSensitivity\", 1);\n\t\t\t\tconst wheelDuration = this.get(\"wheelDuration\", 0);\n\n\t\t\t\tconst wheelEvent = event.originalEvent;\n\n\t\t\t\t// Ignore wheel event if it is happening on a non-chart element, e.g. if\n\t\t\t\t// some page element is over the chart.\n\t\t\t\tif ($utils.isLocalEvent(wheelEvent, this)) {\n\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst chartContainer = this.chartContainer;\n\t\t\t\tconst point = chartContainer._display.toLocal(event.point);\n\n\t\t\t\tif ((wheelY == \"zoom\")) {\n\t\t\t\t\tthis._handleWheelZoom(wheelEvent.deltaY, point);\n\t\t\t\t}\n\t\t\t\telse if (wheelY == \"rotateY\") {\n\t\t\t\t\tthis._handleWheelRotateY(wheelEvent.deltaY / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\t\t\t\telse if (wheelY == \"rotateX\") {\n\t\t\t\t\tthis._handleWheelRotateX(wheelEvent.deltaY / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\n\t\t\t\tif ((wheelX == \"zoom\")) {\n\t\t\t\t\tthis._handleWheelZoom(wheelEvent.deltaX, point);\n\t\t\t\t}\n\t\t\t\telse if (wheelX == \"rotateY\") {\n\t\t\t\t\tthis._handleWheelRotateY(wheelEvent.deltaX / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\t\t\t\telse if (wheelX == \"rotateX\") {\n\t\t\t\t\tthis._handleWheelRotateX(wheelEvent.deltaX / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\n\t\t\t});\n\n\t\t\tthis._disposers.push(this._wheelDp);\n\t\t}\n\t\telse {\n\t\t\tif (this._wheelDp) {\n\t\t\t\tthis._wheelDp.dispose();\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst projection = this.get(\"projection\")!;\n\t\tconst w = this.innerWidth();\n\t\tconst h = this.innerHeight();\n\n\t\tif (this.isDirty(\"projection\")) {\n\t\t\tthis._makeGeoPath();\n\t\t\tthis.markDirtyProjection();\n\t\t\tthis._fitMap();\n\n\t\t\tprojection.scale(this.getPrivate(\"mapScale\") * this.get(\"zoomLevel\", 1));\n\t\t\tif (projection.rotate) {\n\t\t\t\tprojection.rotate([this.get(\"rotationX\", 0), this.get(\"rotationY\", 0), this.get(\"rotationZ\", 0)])\n\t\t\t}\n\n\t\t\tlet prev = this._prevSettings.projection;\n\t\t\tif (prev && prev != projection) {\n\t\t\t\tlet hw = w / 2;\n\t\t\t\tlet hh = h / 2;\n\t\t\t\tif (prev.invert) {\n\t\t\t\t\tlet centerLocation = prev.invert([hw, hh]);\n\n\t\t\t\t\tif (centerLocation) {\n\n\t\t\t\t\t\tlet xy = projection(centerLocation);\n\t\t\t\t\t\tif (xy) {\n\t\t\t\t\t\t\tlet translate = projection.translate();\n\n\t\t\t\t\t\t\tlet xx = hw - ((xy[0] - translate[0]));\n\t\t\t\t\t\t\tlet yy = hh - ((xy[1] - translate[1]));\n\n\t\t\t\t\t\t\tprojection.translate([xx, yy])\n\n\t\t\t\t\t\t\tthis.setRaw(\"translateX\", xx);\n\t\t\t\t\t\t\tthis.setRaw(\"translateY\", yy);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"wheelX\") || this.isDirty(\"wheelY\")) {\n\t\t\tthis._handleSetWheel();\n\t\t}\n\t\tvar previousGeometries = this._geometryColection.geometries;\n\t\tif (this._dirtyGeometries) {\n\t\t\tthis._geometryColection.geometries = [];\n\n\t\t\tthis.series.each((series) => {\n\t\t\t\t$array.pushAll(this._geometryColection.geometries, series._geometries);\n\t\t\t})\n\n\t\t\tthis._fitMap();\n\t\t}\n\n\t\tif (previousGeometries.length != 0 && (w != this._pw || h != this._ph || this._dirtyGeometries)) {\n\t\t\tif (w > 0 && h > 0) {\n\t\t\t\tlet hw = w / 2;\n\t\t\t\tlet hh = h / 2;\n\n\t\t\t\tprojection.fitSize([w, h], this._geometryColection);\n\t\t\t\tconst newScale = projection.scale();\n\n\t\t\t\tthis.setPrivateRaw(\"mapScale\", newScale);\n\t\t\t\tprojection.scale(newScale * this.get(\"zoomLevel\", 1));\n\n\t\t\t\tif (this._centerLocation) {\n\t\t\t\t\tlet xy = projection(this._centerLocation);\n\t\t\t\t\tif (xy) {\n\t\t\t\t\t\tlet translate = projection.translate();\n\n\t\t\t\t\t\tlet xx = hw - ((xy[0] - translate[0]));\n\t\t\t\t\t\tlet yy = hh - ((xy[1] - translate[1]));\n\n\t\t\t\t\t\tprojection.translate([xx, yy])\n\n\t\t\t\t\t\tthis.setRaw(\"translateX\", xx);\n\t\t\t\t\t\tthis.setRaw(\"translateY\", yy);\n\n\t\t\t\t\t\tthis._centerX = translate[0];\n\t\t\t\t\t\tthis._centerY = translate[1];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tthis.markDirtyProjection();\n\n\t\t\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\t\t\tthis._mapBounds = geoPath.bounds(this._geometryColection);\n\t\t\t}\n\t\t}\n\n\t\tthis._pw = w;\n\t\tthis._ph = h;\n\n\t\tif (this.isDirty(\"zoomControl\")) {\n\t\t\tconst previous = this._prevSettings.zoomControl;\n\t\t\tconst zoomControl = this.get(\"zoomControl\")!;\n\t\t\tif (zoomControl !== previous) {\n\t\t\t\tthis._disposeProperty(\"zoomControl\");\n\t\t\t\tif (previous) {\n\t\t\t\t\tprevious.dispose();\n\t\t\t\t}\n\t\t\t\tif (zoomControl) {\n\t\t\t\t\tzoomControl.setPrivate(\"chart\", this);\n\t\t\t\t\tthis.children.push(zoomControl);\n\t\t\t\t}\n\n\t\t\t\tthis.setRaw(\"zoomControl\", zoomControl);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"zoomLevel\")) {\n\t\t\tprojection.scale(this.getPrivate(\"mapScale\") * this.get(\"zoomLevel\", 1));\n\t\t\tthis.markDirtyProjection();\n\n\t\t\tthis.series.each((series) => {\n\t\t\t\tif (series.isType<MapPointSeries>(\"MapPointSeries\")) {\n\t\t\t\t\tif (series.get(\"autoScale\")) {\n\t\t\t\t\t\t$array.each(series.dataItems, (dataItem) => {\n\t\t\t\t\t\t\tconst bullets = dataItem.bullets;\n\t\t\t\t\t\t\tif (bullets) {\n\t\t\t\t\t\t\t\t$array.each(bullets, (bullet) => {\n\t\t\t\t\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\t\t\t\t\t\tif (sprite) {\n\t\t\t\t\t\t\t\t\t\tsprite.set(\"scale\", this.get(\"zoomLevel\"));\n\t\t\t\t\t\t\t\t\t}\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}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (this.isDirty(\"translateX\") || this.isDirty(\"translateY\")) {\n\t\t\tprojection.translate([this.get(\"translateX\", this.width() / 2), this.get(\"translateY\", this.height() / 2)])\n\t\t\tthis.markDirtyProjection();\n\t\t}\n\n\t\tif (projection.rotate) {\n\t\t\tif (this.isDirty(\"rotationX\") || this.isDirty(\"rotationY\") || this.isDirty(\"rotationZ\")) {\n\t\t\t\tprojection.rotate([this.get(\"rotationX\", 0), this.get(\"rotationY\", 0), this.get(\"rotationZ\", 0)])\n\t\t\t\tthis.markDirtyProjection();\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"pinchZoom\") || this.get(\"panX\") || this.get(\"panY\")) {\n\t\t\tthis._setUpTouch();\n\t\t}\n\t}\n\n\n\tprotected _fitMap() {\n\t\tconst projection = this.get(\"projection\")!;\n\n\t\tlet w = this.innerWidth();\n\t\tlet h = this.innerHeight();\n\n\t\tif (w > 0 && h > 0) {\n\t\t\tprojection.fitSize([w, h], this._geometryColection);\n\t\t\tthis.setPrivateRaw(\"mapScale\", projection.scale());\n\n\t\t\tconst translate = projection.translate();\n\n\t\t\tthis.setRaw(\"translateX\", translate[0]);\n\t\t\tthis.setRaw(\"translateY\", translate[1]);\n\n\t\t\tthis._centerX = translate[0];\n\t\t\tthis._centerY = translate[1];\n\n\t\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\t\tthis._mapBounds = geoPath.bounds(this._geometryColection);\n\n\t\t\tthis._geoCentroid = $mapUtils.getGeoCentroid(this._geometryColection);\n\n\t\t\tconst bounds = $mapUtils.getGeoBounds(this._geometryColection);\n\t\t\tthis._geoBounds = bounds;\n\n\t\t\tif (this._geometryColection.geometries.length > 0) {\n\n\t\t\t\tbounds.left = $math.round(this._geoBounds.left, 3);\n\t\t\t\tbounds.right = $math.round(this._geoBounds.right, 3);\n\t\t\t\tbounds.top = $math.round(this._geoBounds.top, 3);\n\t\t\t\tbounds.bottom = $math.round(this._geoBounds.bottom, 3);\n\n\t\t\t\tconst prevGeoBounds = this._prevGeoBounds;\n\n\t\t\t\tif (prevGeoBounds && !$utils.sameBounds(bounds, prevGeoBounds)) {\n\t\t\t\t\tthis._dispatchBounds = true;\n\t\t\t\t\tthis._prevGeoBounds = bounds;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._mapFitted = true;\n\t\t}\n\t}\n\n\t/**\n\t * Returns geographical coordinates for calculated or manual center of the\n\t * map.\n\t */\n\tpublic homeGeoPoint(): IGeoPoint {\n\t\tlet homeGeoPoint = this.get(\"homeGeoPoint\");\n\t\tif (!homeGeoPoint) {\n\t\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\t\tconst bounds = geoPath.bounds(this._geometryColection);\n\n\t\t\tconst left = bounds[0][0];\n\t\t\tconst top = bounds[0][1];\n\n\t\t\tconst right = bounds[1][0];\n\t\t\tconst bottom = bounds[1][1];\n\n\t\t\thomeGeoPoint = this.invert({ x: left + (right - left) / 2, y: top + (bottom - top) / 2 });\n\t\t}\n\t\treturn homeGeoPoint;\n\t}\n\n\t/**\n\t * Repositions the map to the \"home\" zoom level and center coordinates.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Resetting_position_level} for more info\n\t * @param duration Animation duration in milliseconds\n\t */\n\tpublic goHome(duration?: number) {\n\t\tthis.zoomToGeoPoint(this.homeGeoPoint(), this.get(\"homeZoomLevel\", 1), true, duration);\n\t}\n\n\tpublic _updateChildren() {\n\t\tconst projection = this.get(\"projection\")!;\n\t\tif (projection.invert) {\n\t\t\tlet w = this.innerWidth();\n\t\t\tlet h = this.innerHeight();\n\t\t\tif (w > 0 && h > 0) {\n\t\t\t\tthis._centerLocation = projection.invert([this.innerWidth() / 2, this.innerHeight() / 2]);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\t\tif (this._dispatchBounds) {\n\t\t\tthis._dispatchBounds = false;\n\t\t\tconst type = \"geoboundschanged\";\n\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _setUpTouch(): void {\n\t\tif (!this.chartContainer._display.cancelTouch) {\n\t\t\tthis.chartContainer._display.cancelTouch = (this.get(\"pinchZoom\") || this.get(\"panX\") || this.get(\"panY\")) ? true : false;\n\t\t}\n\t}\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirtyGeometries() {\n\t\tthis._dirtyGeometries = true;\n\t\tthis.markDirty();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirtyProjection() {\n\t\tthis.series.each((series) => {\n\t\t\tseries.markDirtyProjection();\n\t\t})\n\t}\n\n\tprotected _afterNew() {\n\t\tthis._defaultThemes.push(MapChartDefaultTheme.new(this._root));\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"map\"]);\n\n\t\tsuper._afterNew();\n\n\t\tthis._makeGeoPath();\n\n\t\tthis.chartContainer.children.push(this.seriesContainer);\n\n\t\tif (this.get(\"translateX\") == null) {\n\t\t\tthis.set(\"translateX\", this.width() / 2);\n\t\t}\n\t\tif (this.get(\"translateY\") == null) {\n\t\t\tthis.set(\"translateY\", this.height() / 2);\n\t\t}\n\n\t\t// Setting trasnparent background so that full body of the plot container\n\t\t// is interactive\n\t\tthis.chartContainer.set(\"interactive\", true);\n\t\tthis.chartContainer.set(\"interactiveChildren\", false);\n\t\tthis.chartContainer.set(\"background\", Rectangle.new(this._root, {\n\t\t\tthemeTags: [\"map\", \"background\"],\n\t\t\tfill: Color.fromHex(0x000000),\n\t\t\tfillOpacity: 0\n\t\t}));\n\n\t\tthis._disposers.push(this.chartContainer.events.on(\"pointerdown\", (event) => {\n\t\t\tthis._handleChartDown(event);\n\t\t}));\n\n\t\tthis._disposers.push(this.chartContainer.events.on(\"globalpointerup\", (event) => {\n\t\t\tthis._handleChartUp(event);\n\t\t}));\n\n\t\tthis._disposers.push(this.chartContainer.events.on(\"globalpointermove\", (event) => {\n\t\t\tthis._handleChartMove(event);\n\t\t}));\n\n\t\tlet license = false;\n\t\tfor (let i = 0; i < registry.licenses.length; i++) {\n\t\t\tif (registry.licenses[i].match(/^AM5M.{5,}/i)) {\n\t\t\t\tlicense = true;\n\t\t\t}\n\t\t}\n\t\tif (!license) {\n\t\t\tthis._root._showBranding();\n\t\t}\n\n\t\tthis._setUpTouch();\n\n\t}\n\n\tprotected _handleChartDown(event: ISpritePointerEvent) {\n\n\t\tthis._downZoomLevel = this.get(\"zoomLevel\", 1);\n\n\n\t\tlet count = $object.keys(this.chartContainer._downPoints).length;\n\t\tif (count > 0) {\n\t\t\tthis._downTranslateX = this.get(\"translateX\");\n\t\t\tthis._downTranslateY = this.get(\"translateY\");\n\t\t\tthis._downRotationX = this.get(\"rotationX\");\n\t\t\tthis._downRotationY = this.get(\"rotationY\");\n\t\t\tthis._downRotationZ = this.get(\"rotationZ\");\n\n\t\t\tconst downId = this.chartContainer._getDownPointId();\n\t\t\tif (downId) {\n\t\t\t\tlet movePoint = this._movePoints[downId];\n\t\t\t\tif (movePoint) {\n\t\t\t\t\tthis.chartContainer._downPoints[downId] = movePoint;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse if (count == 0) {\n\n\t\t\tlet bg = this.chartContainer.get(\"background\");\n\t\t\tif (bg) {\n\t\t\t\tbg.events.enableType(\"click\");\n\t\t\t}\n\n\t\t\tif (this.get(\"panX\") || this.get(\"panY\")) {\n\n\t\t\t\tif (this._za) {\n\t\t\t\t\tthis._za.stop();\n\t\t\t\t}\n\t\t\t\tif (this._txa) {\n\t\t\t\t\tthis._txa.stop();\n\t\t\t\t}\n\t\t\t\tif (this._tya) {\n\t\t\t\t\tthis._tya.stop();\n\t\t\t\t}\n\t\t\t\tif (this._rxa) {\n\t\t\t\t\tthis._rxa.stop();\n\t\t\t\t}\n\t\t\t\tif (this._rya) {\n\t\t\t\t\tthis._rya.stop();\n\t\t\t\t}\n\n\t\t\t\tconst downPoint = this.chartContainer._display.toLocal(event.point);\n\t\t\t\tthis._downTranslateX = this.get(\"translateX\");\n\t\t\t\tthis._downTranslateY = this.get(\"translateY\");\n\t\t\t\tthis._downRotationX = this.get(\"rotationX\");\n\t\t\t\tthis._downRotationY = this.get(\"rotationY\");\n\t\t\t\tthis._downRotationZ = this.get(\"rotationZ\");\n\n\t\t\t\tlet projection = this.get(\"projection\")!;\n\n\t\t\t\tif (projection.invert) {\n\t\t\t\t\tlet l0 = projection.invert([downPoint.x, downPoint.y]);\n\t\t\t\t\tlet l1 = projection.invert([downPoint.x + 1, downPoint.y + 1]);\n\t\t\t\t\tif (l0 && l1) {\n\t\t\t\t\t\tthis._pLon = Math.abs(l1[0] - l0[0]);\n\t\t\t\t\t\tthis._pLat = Math.abs(l1[1] - l0[1]);\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 * Converts screen coordinates (X and Y) within chart to latitude and\n\t * longitude.\n\t * \n\t * @param point Screen coordinates\n\t * @return Geographical coordinates\n\t */\n\tpublic invert(point: IPoint): IGeoPoint {\n\t\tlet projection = this.get(\"projection\")!;\n\n\t\tif (projection.invert) {\n\t\t\tconst ll = projection.invert([point.x, point.y]);\n\t\t\tif (ll) {\n\t\t\t\treturn { longitude: ll[0], latitude: ll[1] };\n\t\t\t}\n\t\t}\n\n\t\treturn { longitude: 0, latitude: 0 };\n\t}\n\n\t/**\n\t * Converts latitude/longitude to screen coordinates (X and Y).\n\t * \n\t * @param point Geographical coordinates\n\t * @return Screen coordinates\n\t */\n\tpublic convert(point: IGeoPoint): IPoint {\n\t\tlet projection = this.get(\"projection\")!;\n\n\t\tconst xy = projection([point.longitude, point.latitude]);\n\n\t\tif (xy) {\n\t\t\treturn { x: xy[0], y: xy[1] };\n\t\t}\n\n\t\treturn { x: 0, y: 0 };\n\t}\n\n\tprotected _handleChartUp(_event: ISpritePointerEvent) {\n\t\tthis.chartContainer._downPoints = {}\n\t}\n\n\tprotected _handlePinch() {\n\t\tconst chartContainer = this.chartContainer;\n\t\tlet i = 0;\n\t\tlet downPoints: Array<IPoint> = [];\n\t\tlet movePoints: Array<IPoint> = [];\n\n\t\t$object.each(chartContainer._downPoints, (k, point) => {\n\t\t\tdownPoints[i] = point;\n\t\t\tlet movePoint = this._movePoints[k];\n\t\t\tif (movePoint) {\n\t\t\t\tmovePoints[i] = movePoint;\n\t\t\t}\n\t\t\ti++;\n\t\t});\n\n\t\tif (downPoints.length > 1 && movePoints.length > 1) {\n\t\t\tconst display = chartContainer._display;\n\n\t\t\tlet downPoint0 = downPoints[0];\n\t\t\tlet downPoint1 = downPoints[1];\n\n\t\t\tlet movePoint0 = movePoints[0];\n\t\t\tlet movePoint1 = movePoints[1];\n\n\t\t\tif (downPoint0 && downPoint1 && movePoint0 && movePoint1) {\n\n\t\t\t\tdownPoint0 = display.toLocal(downPoint0);\n\t\t\t\tdownPoint1 = display.toLocal(downPoint1);\n\n\t\t\t\tmovePoint0 = display.toLocal(movePoint0);\n\t\t\t\tmovePoint1 = display.toLocal(movePoint1);\n\n\t\t\t\tlet initialDistance = Math.hypot(downPoint1.x - downPoint0.x, downPoint1.y - downPoint0.y);\n\t\t\t\tlet currentDistance = Math.hypot(movePoint1.x - movePoint0.x, movePoint1.y - movePoint0.y);\n\n\t\t\t\tlet level = currentDistance / initialDistance * this._downZoomLevel;\n\t\t\t\tlevel = $math.fitToRange(level, this.get(\"minZoomLevel\", 1), this.get(\"maxZoomLevel\", 32));\n\n\t\t\t\tlet moveCenter = { x: movePoint0.x + (movePoint1.x - movePoint0.x) / 2, y: movePoint0.y + (movePoint1.y - movePoint0.y) / 2 };\n\t\t\t\tlet downCenter = { x: downPoint0.x + (downPoint1.x - downPoint0.x) / 2, y: downPoint0.y + (downPoint1.y - downPoint0.y) / 2 };\n\n\t\t\t\tlet tx = this._downTranslateX || 0;\n\t\t\t\tlet ty = this._downTranslateY || 0;\n\n\t\t\t\tlet zoomLevel = this._downZoomLevel;\n\n\t\t\t\tlet xx = moveCenter.x - (- tx + downCenter.x) / zoomLevel * level;\n\t\t\t\tlet yy = moveCenter.y - (- ty + downCenter.y) / zoomLevel * level;\n\n\t\t\t\tthis.set(\"zoomLevel\", level);\n\t\t\t\tthis.set(\"translateX\", xx);\n\t\t\t\tthis.set(\"translateY\", yy);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _handleChartMove(event: ISpritePointerEvent) {\n\t\tconst chartContainer = this.chartContainer;\n\t\tlet downPoint = chartContainer._getDownPoint();\n\t\tconst downPointId = chartContainer._getDownPointId();\n\t\tconst originalEvent = event.originalEvent as any;\n\n\t\tconst pointerId = originalEvent.pointerId;\n\n\t\tif (this.get(\"pinchZoom\")) {\n\t\t\tif (pointerId) {\n\t\t\t\tthis._movePoints[pointerId] = event.point;\n\n\t\t\t\tif ($object.keys(chartContainer._downPoints).length > 1) {\n\t\t\t\t\tthis._handlePinch();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (downPointId && pointerId && pointerId != downPointId) {\n\t\t\treturn;\n\t\t}\n\t\telse {\n\t\t\tif (downPoint) {\n\t\t\t\tconst panX = this.get(\"panX\");\n\t\t\t\tconst panY = this.get(\"panY\");\n\t\t\t\tif (panX != \"none\" || panY != \"none\") {\n\t\t\t\t\tconst display = chartContainer._display;\n\t\t\t\t\tlet local = display.toLocal(event.point);\n\t\t\t\t\tdownPoint = display.toLocal(downPoint);\n\n\t\t\t\t\tlet x = this._downTranslateX;\n\t\t\t\t\tlet y = this._downTranslateY;\n\n\t\t\t\t\tif (Math.hypot(downPoint.x - local.x, downPoint.y - local.y) > 5) {\n\t\t\t\t\t\tlet bg = chartContainer.get(\"background\");\n\t\t\t\t\t\tif (bg) {\n\t\t\t\t\t\t\tbg.events.disableType(\"click\");\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ($type.isNumber(x) && $type.isNumber(y)) {\n\t\t\t\t\t\t\tlet projection = this.get(\"projection\")!;\n\t\t\t\t\t\t\tconst zoomLevel = this.get(\"zoomLevel\", 1);\n\n\t\t\t\t\t\t\tconst maxPanOut = this.get(\"maxPanOut\", 0.4);\n\t\t\t\t\t\t\tconst bounds = this._mapBounds;\n\n\t\t\t\t\t\t\tconst w = this.width();\n\t\t\t\t\t\t\tconst h = this.height();\n\n\t\t\t\t\t\t\tconst ww = bounds[1][0] - bounds[0][0];\n\t\t\t\t\t\t\tconst hh = bounds[1][1] - bounds[0][1];\n\n\t\t\t\t\t\t\tif (panX == \"translateX\") {\n\t\t\t\t\t\t\t\tx += local.x - downPoint.x;\n\n\t\t\t\t\t\t\t\tconst cx = w / 2 - (w / 2 - this._centerX) * zoomLevel;\n\t\t\t\t\t\t\t\tx = Math.min(x, cx + ww * maxPanOut * zoomLevel);\n\t\t\t\t\t\t\t\tx = Math.max(x, cx - ww * maxPanOut * zoomLevel);\n\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (panY == \"translateY\") {\n\t\t\t\t\t\t\t\ty += local.y - downPoint.y;\n\t\t\t\t\t\t\t\tconst cy = h / 2 - (h / 2 - this._centerY) * zoomLevel;\n\t\t\t\t\t\t\t\ty = Math.min(y, cy + hh * maxPanOut * zoomLevel);\n\t\t\t\t\t\t\t\ty = Math.max(y, cy - hh * maxPanOut * zoomLevel);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tthis.set(\"translateX\", x);\n\t\t\t\t\t\t\tthis.set(\"translateY\", y);\n\n\t\t\t\t\t\t\tif (projection.invert) {\n\t\t\t\t\t\t\t\tlet downLocation = projection.invert([downPoint.x, downPoint.y]);\n\t\t\t\t\t\t\t\tif (location && downLocation) {\n\t\t\t\t\t\t\t\t\tif (panX == \"rotateX\") {\n\t\t\t\t\t\t\t\t\t\tthis.set(\"rotationX\", this._downRotationX! - (downPoint.x - local.x) * this._pLon);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (panY == \"rotateY\") {\n\t\t\t\t\t\t\t\t\t\tthis.set(\"rotationY\", this._downRotationY! + (downPoint.y - local.y) * this._pLat);\n\t\t\t\t\t\t\t\t\t}\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}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _handleWheelRotateY(delta: number, duration: number, easing: (t: Time) => Time) {\n\t\tthis._rya = this.animate({ key: \"rotationY\", to: this.get(\"rotationY\", 0) - delta, duration: duration, easing: easing });\n\t}\n\n\tprotected _handleWheelRotateX(delta: number, duration: number, easing: (t: Time) => Time) {\n\t\tthis._rxa = this.animate({ key: \"rotationX\", to: this.get(\"rotationX\", 0) - delta, duration: duration, easing: easing });\n\t}\n\n\tprotected _handleWheelZoom(delta: number, point: IPoint) {\n\t\tlet step = this.get(\"zoomStep\", 2);\n\t\tlet zoomLevel = this.get(\"zoomLevel\", 1);\n\t\tlet newZoomLevel = zoomLevel;\n\t\tif (delta > 0) {\n\t\t\tnewZoomLevel = zoomLevel / step;\n\t\t}\n\t\telse if (delta < 0) {\n\t\t\tnewZoomLevel = zoomLevel * step;\n\t\t}\n\n\t\tif (newZoomLevel != zoomLevel) {\n\t\t\tthis.zoomToPoint(point, newZoomLevel)\n\t\t}\n\t}\n\n\t/**\n\t * Zoom the map to geographical bounds.\n\t *\n\t * @param geoBounds Bounds\n\t * @param duration Animation duration in milliseconds\n\t */\n\tpublic zoomToGeoBounds(geoBounds: { left: number, right: number, top: number, bottom: number }, duration?: number): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\tif (geoBounds.right < geoBounds.left) {\n\t\t\tgeoBounds.right = 180;\n\t\t\tgeoBounds.left = -180;\n\t\t}\n\n\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\tconst mapBounds = geoPath.bounds(this._geometryColection);\n\n\t\tlet p0 = this.convert({ longitude: geoBounds.left, latitude: geoBounds.top });\n\t\tlet p1 = this.convert({ longitude: geoBounds.right, latitude: geoBounds.bottom });\n\n\t\tif (p0.y < mapBounds[0][1]) {\n\t\t\tp0.y = mapBounds[0][1];\n\t\t}\n\n\t\tif (p1.y > mapBounds[1][1]) {\n\t\t\tp1.y = mapBounds[1][1];\n\t\t}\n\n\t\tlet zl = this.get(\"zoomLevel\", 1);\n\n\t\tlet bounds = { left: p0.x, right: p1.x, top: p0.y, bottom: p1.y };\n\n\t\tlet seriesContainer = this.seriesContainer;\n\n\t\tlet zoomLevel = .9 * Math.min(seriesContainer.innerWidth() / (bounds.right - bounds.left) * zl, seriesContainer.innerHeight() / (bounds.bottom - bounds.top) * zl);\n\t\tlet x = bounds.left + (bounds.right - bounds.left) / 2;\n\t\tlet y = bounds.top + (bounds.bottom - bounds.top) / 2;\n\n\t\tlet geoPoint = this.invert({ x, y });\n\n\t\treturn this.zoomToGeoPoint(geoPoint, zoomLevel, true, duration);\n\t}\n\n\t/**\n\t * Zooms the map to specific screen point.\n\t *\n\t * @param point Point\n\t * @param level Zoom level\n\t * @param center Center the map\n\t * @param duration Duration of the animation in milliseconds\n\t */\n\tpublic zoomToPoint(point: IPoint, level: number, center?: boolean, duration?: number): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\tif (level) {\n\t\t\tlevel = $math.fitToRange(level, this.get(\"minZoomLevel\", 1), this.get(\"maxZoomLevel\", 32));\n\t\t}\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"animationDuration\", 0);\n\t\t}\n\t\tconst easing = this.get(\"animationEasing\");\n\t\tconst zoomLevel = this.get(\"zoomLevel\", 1);\n\n\t\tif (this.get(\"centerMapOnZoomOut\") && level == this.get(\"homeZoomLevel\", 1)) {\n\t\t\tpoint = this.convert(this.homeGeoPoint());\n\t\t\tcenter = true;\n\t\t}\n\n\t\tlet x = point.x;\n\t\tlet y = point.y;\n\n\t\tlet tx = this.get(\"translateX\", 0);\n\t\tlet ty = this.get(\"translateY\", 0);\n\n\t\tlet cx = x;\n\t\tlet cy = y;\n\n\t\tif (center) {\n\t\t\tcx = this.width() / 2;\n\t\t\tcy = this.height() / 2;\n\t\t}\n\n\t\tlet xx = cx - ((x - tx) / zoomLevel * level);\n\t\tlet yy = cy - ((y - ty) / zoomLevel * level);\n\n\n\t\tthis._txa = this.animate({ key: \"translateX\", to: xx, duration: duration, easing: easing });\n\t\tthis._tya = this.animate({ key: \"translateY\", to: yy, duration: duration, easing: easing });\n\t\tthis._za = this.animate({ key: \"zoomLevel\", to: level, duration: duration, easing: easing });\n\n\t\tif (zoomLevel != level) {\n\t\t\tthis._root.readerAlert(this._t(\"Zoom level changed to %1\", this._root.locale, $type.numberToString(level)));\n\t\t}\n\n\t\treturn this._za;\n\t}\n\n\t/**\n\t * Zooms the map to specific geographical point.\n\t *\n\t * @param geoPoint Point\n\t * @param level Zoom level\n\t * @param center Center the map\n\t * @param duration Duration of the animation in milliseconds\n\t */\n\tpublic zoomToGeoPoint(geoPoint: IGeoPoint, level: number, center?: boolean, duration?: number): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\tlet xy = this.convert(geoPoint);\n\n\t\tif (xy) {\n\t\t\treturn this.zoomToPoint(xy, level, center, duration);\n\t\t}\n\t}\n\n\t/**\n\t * Zooms the map in.\n\t */\n\tpublic zoomIn(): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\treturn this.zoomToPoint({ x: this.width() / 2, y: this.height() / 2 }, this.get(\"zoomLevel\", 1) * this.get(\"zoomStep\", 2));\n\t}\n\n\t/**\n\t * Zooms the map out.\n\t */\n\tpublic zoomOut(): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\treturn this.zoomToPoint({ x: this.width() / 2, y: this.height() / 2 }, this.get(\"zoomLevel\", 1) / this.get(\"zoomStep\", 2));\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._dirtyGeometries = false;\n\t\tthis._mapFitted = false;\n\t}\n\n\t/**\n\t * Returns area of a mapPolygon in square pixels.\n\t */\n\tpublic getArea(dataItem: DataItem<IMapPolygonSeriesDataItem>): number {\n\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\tconst geometry = dataItem.get(\"geometry\");\n\t\tif (geometry) {\n\t\t\treturn geoPath.area(geometry);\n\t\t}\n\t\treturn 0;\n\t}\n}\n"]}
|
|
1
|
+
{"version":3,"file":"MapChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/map/MapChart.ts"],"names":[],"mappings":"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","sourcesContent":["import type { MapSeries } from \"./MapSeries\";\nimport type { MapPointSeries } from \"./MapPointSeries\";\nimport type { GeoProjection, GeoPath } from \"d3-geo\";\nimport type { IPoint } from \"../../core/util/IPoint\";\nimport type { IGeoPoint } from \"../../core/util/IGeoPoint\";\nimport type { Time } from \"../../core/util/Animation\";\nimport type { ZoomControl } from \"./ZoomControl\";\nimport type { Animation } from \"../../core/util/Entity\";\nimport type { DataItem } from \"../../core/render/Component\";\nimport type { IMapPolygonSeriesDataItem } from \"./MapPolygonSeries\";\n\nimport { MapChartDefaultTheme } from \"./MapChartDefaultTheme\";\nimport { SerialChart, ISerialChartPrivate, ISerialChartSettings, ISerialChartEvents } from \"../../core/render/SerialChart\";\nimport { Rectangle } from \"../../core/render/Rectangle\";\nimport { geoPath } from \"d3-geo\";\nimport { Color } from \"../../core/util/Color\";\nimport { registry } from \"../../core/Registry\";\n\nimport * as $math from \"../../core/util/Math\";\nimport * as $array from \"../../core/util/Array\";\nimport * as $type from \"../../core/util/Type\";\nimport * as $mapUtils from \"./MapUtils\";\nimport * as $object from \"../../core/util/Object\";\nimport * as $utils from \"../../core/util/Utils\";\n\nimport type { IDisposer } from \"../../core/util/Disposer\";\nimport type { ISpritePointerEvent } from \"../../core/render/Sprite\";\n\nexport interface IMapChartSettings extends ISerialChartSettings {\n\n\t/**\n\t * A projection to use when plotting the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Projections} for more info\n\t */\n\tprojection?: GeoProjection;\n\n\t/**\n\t * Current zoom level.\n\t */\n\tzoomLevel?: number;\n\n\t/**\n\t * @ignore\n\t */\n\ttranslateX?: number;\n\n\t/**\n\t * @ignore\n\t */\n\ttranslateY?: number;\n\n\t/**\n\t * Vertical centering of the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Centering_the_map} for more info\n\t */\n\trotationY?: number;\n\n\t/**\n\t * Horizontal centering of the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Centering_the_map} for more info\n\t */\n\trotationX?: number;\n\n\t/**\n\t * Depth centering of the map.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Centering_the_map} for more info\n\t */\n\trotationZ?: number;\n\n\t/**\n\t * Highest zoom level map is allowed to zoom in to.\n\t *\n\t * @deault 32\n\t */\n\tmaxZoomLevel?: number;\n\n\t/**\n\t * Lowest zoom level map is allowed to zoom in to.\n\t *\n\t * @deault 1\n\t */\n\tminZoomLevel?: number;\n\n\t/**\n\t * Increment zoom level by `zoomStep` when user zooms in via [[ZoomControl]] or\n\t * API.\n\t *\n\t * @default 2\n\t */\n\tzoomStep?: number;\n\n\t/**\n\t * Defines what happens when map is being dragged horizontally.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Panning} for more info\n\t * @default \"translateX\"\n\t */\n\tpanX?: \"none\" | \"rotateX\" | \"translateX\";\n\n\t/**\n\t * Defines what happens when map is being dragged vertically.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Panning} for more info\n\t * @default \"translateY\"\n\t */\n\tpanY?: \"none\" | \"rotateY\" | \"translateY\";\n\n\t/**\n\t * Enables pinch-zooming of the map on multi-touch devices.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Pinch_zoom} for more info\n\t * @default true\n\t */\n\tpinchZoom?: boolean;\n\n\t/**\n\t * Defines what happens when mouse wheel is turned horizontally.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Mouse_wheel_behavior} for more info\n\t * @default \"none\"\n\t */\n\twheelX?: \"none\" | \"zoom\" | \"rotateX\" | \"rotateY\";\n\n\t/**\n\t * Defines what happens when mouse wheel is turned vertically.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Mouse_wheel_behavior} for more info\n\t * @default \"zoom\"\n\t */\n\twheelY?: \"none\" | \"zoom\" | \"rotateX\" | \"rotateY\";\n\n\t/**\n\t * Sensitivity of a mouse wheel.\n\t *\n\t * @default 1\n\t */\n\twheelSensitivity?: number;\n\n\t/**\n\t * Duration of mouse-wheel action animation, in milliseconds.\n\t */\n\twheelDuration?: number;\n\n\t/**\n\t * An easing function to use for mouse wheel action animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t * @default am5.ease.out($ease.cubic)\n\t */\n\twheelEasing?: (t: Time) => Time;\n\n\t/**\n\t * Duration of zoom/pan animations, in milliseconds.\n\t */\n\tanimationDuration?: number;\n\n\t/**\n\t * An easing function to use for zoom/pan animations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/concepts/animations/#Easing_functions} for more info\n\t * @default am5.ease.out($ease.cubic)\n\t */\n\tanimationEasing?: (t: Time) => Time;\n\n\n\t/**\n\t * A [[ZoomControl]] instance.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/#Zoom_control} for more info\n\t */\n\tzoomControl?: ZoomControl;\n\n\t/**\n\t * Initial/home zoom level.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Initial_position_and_zoom} for more info\n\t */\n\thomeZoomLevel?: number;\n\n\t/**\n\t * Initial coordinates to center map on load or `goHome()` call.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Initial_position_and_zoom} for more info\n\t */\n\thomeGeoPoint?: IGeoPoint;\n\n\t/**\n\t * How much of a map can go outside the viewport.\n\t *\n\t * @default 0.4\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Panning_outside_viewport} for more info\n\t */\n\tmaxPanOut?: number;\n\n\t/**\n\t * Setting `true` means that the map will automatically center itself (or go\n\t * to `homeGeoPoint` if set) when fully zoomed out.\n\t *\n\t * `false` would mean that zoom out will be centered around the mouse\n\t * cursor (when zooming using wheel), or current map position.\n\t * \n\t * @default true\n\t * @since 5.2.1\n\t */\n\tcenterMapOnZoomOut?: boolean;\n\n}\n\nexport interface IMapChartPrivate extends ISerialChartPrivate {\n\n\t/**\n\t * @ignore\n\t */\n\tgeoPath: GeoPath;\n\n\t/**\n\t * @ignore\n\t */\n\tmapScale: number;\n\n}\n\n\nexport interface IMapChartEvents extends ISerialChartEvents {\n\n\t/**\n\t * Invoked when geo bounds of the map change, usually after map is\n\t * initialized.\n\t */\n\tgeoboundschanged: {};\n\n}\n\n\nexport class MapChart extends SerialChart {\n\tpublic static className: string = \"MapChart\";\n\tpublic static classNames: Array<string> = SerialChart.classNames.concat([MapChart.className]);\n\n\tdeclare public _settings: IMapChartSettings;\n\tdeclare public _privateSettings: IMapChartPrivate;\n\tdeclare public _seriesType: MapSeries;\n\tdeclare public _events: IMapChartEvents;\n\n\tprotected _downTranslateX: number | undefined;\n\tprotected _downTranslateY: number | undefined;\n\tprotected _downRotationX: number | undefined;\n\tprotected _downRotationY: number | undefined;\n\tprotected _downRotationZ: number | undefined;\n\tprotected _pLat: number = 0;\n\tprotected _pLon: number = 0;\n\n\tprotected _movePoints: { [index: number]: IPoint } = {};\n\tprotected _downZoomLevel: number = 1;\n\tprotected _doubleDownDistance: number = 0;\n\n\tprotected _dirtyGeometries: boolean = false;\n\tprotected _geometryColection: GeoJSON.GeometryCollection = { type: \"GeometryCollection\", geometries: [] };\n\n\tprotected _centerLocation: [number, number] | null = null;\n\n\tprotected _za?: Animation<this[\"_settings\"][\"zoomLevel\"]>;\n\tprotected _rxa?: Animation<this[\"_settings\"][\"rotationX\"]>;\n\tprotected _rya?: Animation<this[\"_settings\"][\"rotationY\"]>;\n\tprotected _txa?: Animation<this[\"_settings\"][\"translateX\"]>;\n\tprotected _tya?: Animation<this[\"_settings\"][\"translateY\"]>;\n\n\tprotected _mapBounds = [[0, 0], [0, 0]];\n\n\tprotected _geoCentroid: IGeoPoint = { longitude: 0, latitude: 0 };\n\tprotected _geoBounds: { left: number, right: number, top: number, bottom: number } = { left: 0, right: 0, top: 0, bottom: 0 };\n\tprotected _prevGeoBounds: { left: number, right: number, top: number, bottom: number } = { left: 0, right: 0, top: 0, bottom: 0 };\n\n\tprotected _dispatchBounds: boolean = false;\n\n\tprotected _wheelDp: IDisposer | undefined;\n\n\tprotected _pw?: number;\n\tprotected _ph?: number;\n\n\tprotected _mapFitted: boolean = false;\n\n\tprotected _centerX: number = 0;\n\tprotected _centerY: number = 0;\n\n\tprotected _makeGeoPath() {\n\t\tconst projection = this.get(\"projection\")!;\n\t\tconst path = geoPath();\n\t\tpath.projection(projection);\n\t\tthis.setPrivateRaw(\"geoPath\", path);\n\t}\n\n\t/**\n\t * Returns a geoPoint of the current zoom position.\n\t * \n\t * You can later use it to restore zoom position, e.g.: `chart.zoomToGeoPoint(geoPoint, zoomLevel, true)`.\n\t *\n\t * @since 5.2.19\n\t */\n\tpublic geoPoint() {\n\t\treturn this.invert({ x: this.width() / 2, y: this.height() / 2 });\n\t}\n\n\t/**\n\t * Returns coordinates to geographical center of the map.\n\t */\n\tpublic geoCentroid() {\n\t\treturn this._geoCentroid;\n\t}\n\n\t/**\n\t * Returns geographical bounds of the map.\n\t */\n\tpublic geoBounds() {\n\t\treturn this._geoBounds;\n\t}\n\n\tprotected _handleSetWheel() {\n\n\t\tconst wheelX = this.get(\"wheelX\");\n\t\tconst wheelY = this.get(\"wheelY\");\n\t\tconst chartContainer = this.chartContainer;\n\n\t\tif (wheelX != \"none\" || wheelY != \"none\") {\n\n\t\t\tthis._wheelDp = chartContainer.events.on(\"wheel\", (event) => {\n\t\t\t\tconst wheelEasing = this.get(\"wheelEasing\")!;\n\t\t\t\tconst wheelSensitivity = this.get(\"wheelSensitivity\", 1);\n\t\t\t\tconst wheelDuration = this.get(\"wheelDuration\", 0);\n\n\t\t\t\tconst wheelEvent = event.originalEvent;\n\n\t\t\t\t// Ignore wheel event if it is happening on a non-chart element, e.g. if\n\t\t\t\t// some page element is over the chart.\n\t\t\t\tif ($utils.isLocalEvent(wheelEvent, this)) {\n\t\t\t\t\twheelEvent.preventDefault();\n\t\t\t\t}\n\t\t\t\telse {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst chartContainer = this.chartContainer;\n\t\t\t\tconst point = chartContainer._display.toLocal(event.point);\n\n\t\t\t\tif ((wheelY == \"zoom\")) {\n\t\t\t\t\tthis._handleWheelZoom(wheelEvent.deltaY, point);\n\t\t\t\t}\n\t\t\t\telse if (wheelY == \"rotateY\") {\n\t\t\t\t\tthis._handleWheelRotateY(wheelEvent.deltaY / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\t\t\t\telse if (wheelY == \"rotateX\") {\n\t\t\t\t\tthis._handleWheelRotateX(wheelEvent.deltaY / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\n\t\t\t\tif ((wheelX == \"zoom\")) {\n\t\t\t\t\tthis._handleWheelZoom(wheelEvent.deltaX, point);\n\t\t\t\t}\n\t\t\t\telse if (wheelX == \"rotateY\") {\n\t\t\t\t\tthis._handleWheelRotateY(wheelEvent.deltaX / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\t\t\t\telse if (wheelX == \"rotateX\") {\n\t\t\t\t\tthis._handleWheelRotateX(wheelEvent.deltaX / 5 * wheelSensitivity, wheelDuration, wheelEasing);\n\t\t\t\t}\n\n\t\t\t});\n\n\t\t\tthis._disposers.push(this._wheelDp);\n\t\t}\n\t\telse {\n\t\t\tif (this._wheelDp) {\n\t\t\t\tthis._wheelDp.dispose();\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\t\tsuper._prepareChildren();\n\n\t\tconst projection = this.get(\"projection\")!;\n\t\tconst w = this.innerWidth();\n\t\tconst h = this.innerHeight();\n\n\t\tif (this.isDirty(\"projection\")) {\n\t\t\tthis._makeGeoPath();\n\t\t\tthis.markDirtyProjection();\n\t\t\tthis._fitMap();\n\n\t\t\tprojection.scale(this.getPrivate(\"mapScale\") * this.get(\"zoomLevel\", 1));\n\t\t\tif (projection.rotate) {\n\t\t\t\tprojection.rotate([this.get(\"rotationX\", 0), this.get(\"rotationY\", 0), this.get(\"rotationZ\", 0)])\n\t\t\t}\n\n\t\t\tlet prev = this._prevSettings.projection;\n\t\t\tif (prev && prev != projection) {\n\t\t\t\tlet hw = w / 2;\n\t\t\t\tlet hh = h / 2;\n\t\t\t\tif (prev.invert) {\n\t\t\t\t\tlet centerLocation = prev.invert([hw, hh]);\n\n\t\t\t\t\tif (centerLocation) {\n\n\t\t\t\t\t\tlet xy = projection(centerLocation);\n\t\t\t\t\t\tif (xy) {\n\t\t\t\t\t\t\tlet translate = projection.translate();\n\n\t\t\t\t\t\t\tlet xx = hw - ((xy[0] - translate[0]));\n\t\t\t\t\t\t\tlet yy = hh - ((xy[1] - translate[1]));\n\n\t\t\t\t\t\t\tprojection.translate([xx, yy])\n\n\t\t\t\t\t\t\tthis.setRaw(\"translateX\", xx);\n\t\t\t\t\t\t\tthis.setRaw(\"translateY\", yy);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"wheelX\") || this.isDirty(\"wheelY\")) {\n\t\t\tthis._handleSetWheel();\n\t\t}\n\t\tvar previousGeometries = this._geometryColection.geometries;\n\t\tif (this._dirtyGeometries) {\n\t\t\tthis._geometryColection.geometries = [];\n\n\t\t\tthis.series.each((series) => {\n\t\t\t\t$array.pushAll(this._geometryColection.geometries, series._geometries);\n\t\t\t})\n\n\t\t\tthis._fitMap();\n\t\t}\n\n\t\tif (previousGeometries.length != 0 && (w != this._pw || h != this._ph || this._dirtyGeometries)) {\n\t\t\tif (w > 0 && h > 0) {\n\t\t\t\tlet hw = w / 2;\n\t\t\t\tlet hh = h / 2;\n\n\t\t\t\tprojection.fitSize([w, h], this._geometryColection);\n\t\t\t\tconst newScale = projection.scale();\n\n\t\t\t\tthis.setPrivateRaw(\"mapScale\", newScale);\n\t\t\t\tprojection.scale(newScale * this.get(\"zoomLevel\", 1));\n\n\t\t\t\tif (this._centerLocation) {\n\t\t\t\t\tlet xy = projection(this._centerLocation);\n\t\t\t\t\tif (xy) {\n\t\t\t\t\t\tlet translate = projection.translate();\n\n\t\t\t\t\t\tlet xx = hw - ((xy[0] - translate[0]));\n\t\t\t\t\t\tlet yy = hh - ((xy[1] - translate[1]));\n\n\t\t\t\t\t\tprojection.translate([xx, yy])\n\n\t\t\t\t\t\tthis.setRaw(\"translateX\", xx);\n\t\t\t\t\t\tthis.setRaw(\"translateY\", yy);\n\n\t\t\t\t\t\tthis._centerX = translate[0];\n\t\t\t\t\t\tthis._centerY = translate[1];\n\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tthis.markDirtyProjection();\n\n\t\t\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\t\t\tthis._mapBounds = geoPath.bounds(this._geometryColection);\n\t\t\t}\n\t\t}\n\n\t\tthis._pw = w;\n\t\tthis._ph = h;\n\n\t\tif (this.isDirty(\"zoomControl\")) {\n\t\t\tconst previous = this._prevSettings.zoomControl;\n\t\t\tconst zoomControl = this.get(\"zoomControl\")!;\n\t\t\tif (zoomControl !== previous) {\n\t\t\t\tthis._disposeProperty(\"zoomControl\");\n\t\t\t\tif (previous) {\n\t\t\t\t\tprevious.dispose();\n\t\t\t\t}\n\t\t\t\tif (zoomControl) {\n\t\t\t\t\tzoomControl.setPrivate(\"chart\", this);\n\t\t\t\t\tthis.children.push(zoomControl);\n\t\t\t\t}\n\n\t\t\t\tthis.setRaw(\"zoomControl\", zoomControl);\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"zoomLevel\")) {\n\t\t\tprojection.scale(this.getPrivate(\"mapScale\") * this.get(\"zoomLevel\", 1));\n\t\t\tthis.markDirtyProjection();\n\n\t\t\tthis.series.each((series) => {\n\t\t\t\tif (series.isType<MapPointSeries>(\"MapPointSeries\")) {\n\t\t\t\t\tif (series.get(\"autoScale\")) {\n\t\t\t\t\t\t$array.each(series.dataItems, (dataItem) => {\n\t\t\t\t\t\t\tconst bullets = dataItem.bullets;\n\t\t\t\t\t\t\tif (bullets) {\n\t\t\t\t\t\t\t\t$array.each(bullets, (bullet) => {\n\t\t\t\t\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\n\t\t\t\t\t\t\t\t\tif (sprite) {\n\t\t\t\t\t\t\t\t\t\tsprite.set(\"scale\", this.get(\"zoomLevel\"));\n\t\t\t\t\t\t\t\t\t}\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}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\n\t\tif (this.isDirty(\"translateX\") || this.isDirty(\"translateY\")) {\n\t\t\tprojection.translate([this.get(\"translateX\", this.width() / 2), this.get(\"translateY\", this.height() / 2)])\n\t\t\tthis.markDirtyProjection();\n\t\t}\n\n\t\tif (projection.rotate) {\n\t\t\tif (this.isDirty(\"rotationX\") || this.isDirty(\"rotationY\") || this.isDirty(\"rotationZ\")) {\n\t\t\t\tprojection.rotate([this.get(\"rotationX\", 0), this.get(\"rotationY\", 0), this.get(\"rotationZ\", 0)])\n\t\t\t\tthis.markDirtyProjection();\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"pinchZoom\") || this.get(\"panX\") || this.get(\"panY\")) {\n\t\t\tthis._setUpTouch();\n\t\t}\n\t}\n\n\n\tprotected _fitMap() {\n\t\tconst projection = this.get(\"projection\")!;\n\n\t\tlet w = this.innerWidth();\n\t\tlet h = this.innerHeight();\n\n\t\tif (w > 0 && h > 0) {\n\t\t\tprojection.fitSize([w, h], this._geometryColection);\n\t\t\tthis.setPrivateRaw(\"mapScale\", projection.scale());\n\n\t\t\tconst translate = projection.translate();\n\n\t\t\tthis.setRaw(\"translateX\", translate[0]);\n\t\t\tthis.setRaw(\"translateY\", translate[1]);\n\n\t\t\tthis._centerX = translate[0];\n\t\t\tthis._centerY = translate[1];\n\n\t\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\t\tthis._mapBounds = geoPath.bounds(this._geometryColection);\n\n\t\t\tthis._geoCentroid = $mapUtils.getGeoCentroid(this._geometryColection);\n\n\t\t\tconst bounds = $mapUtils.getGeoBounds(this._geometryColection);\n\t\t\tthis._geoBounds = bounds;\n\n\t\t\tif (this._geometryColection.geometries.length > 0) {\n\n\t\t\t\tbounds.left = $math.round(this._geoBounds.left, 3);\n\t\t\t\tbounds.right = $math.round(this._geoBounds.right, 3);\n\t\t\t\tbounds.top = $math.round(this._geoBounds.top, 3);\n\t\t\t\tbounds.bottom = $math.round(this._geoBounds.bottom, 3);\n\n\t\t\t\tconst prevGeoBounds = this._prevGeoBounds;\n\n\t\t\t\tif (prevGeoBounds && !$utils.sameBounds(bounds, prevGeoBounds)) {\n\t\t\t\t\tthis._dispatchBounds = true;\n\t\t\t\t\tthis._prevGeoBounds = bounds;\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tthis._mapFitted = true;\n\t\t}\n\t}\n\n\t/**\n\t * Returns geographical coordinates for calculated or manual center of the\n\t * map.\n\t */\n\tpublic homeGeoPoint(): IGeoPoint {\n\t\tlet homeGeoPoint = this.get(\"homeGeoPoint\");\n\t\tif (!homeGeoPoint) {\n\t\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\t\tconst bounds = geoPath.bounds(this._geometryColection);\n\n\t\t\tconst left = bounds[0][0];\n\t\t\tconst top = bounds[0][1];\n\n\t\t\tconst right = bounds[1][0];\n\t\t\tconst bottom = bounds[1][1];\n\n\t\t\thomeGeoPoint = this.invert({ x: left + (right - left) / 2, y: top + (bottom - top) / 2 });\n\t\t}\n\t\treturn homeGeoPoint;\n\t}\n\n\t/**\n\t * Repositions the map to the \"home\" zoom level and center coordinates.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/map-chart/map-pan-zoom/#Resetting_position_level} for more info\n\t * @param duration Animation duration in milliseconds\n\t */\n\tpublic goHome(duration?: number) {\n\t\tthis.zoomToGeoPoint(this.homeGeoPoint(), this.get(\"homeZoomLevel\", 1), true, duration);\n\t}\n\n\tpublic _updateChildren() {\n\t\tconst projection = this.get(\"projection\")!;\n\t\tif (projection.invert) {\n\t\t\tlet w = this.innerWidth();\n\t\t\tlet h = this.innerHeight();\n\t\t\tif (w > 0 && h > 0) {\n\t\t\t\tthis._centerLocation = projection.invert([this.innerWidth() / 2, this.innerHeight() / 2]);\n\t\t\t}\n\t\t}\n\t}\n\n\tpublic _afterChanged() {\n\t\tsuper._afterChanged();\n\t\tif (this._dispatchBounds) {\n\t\t\tthis._dispatchBounds = false;\n\t\t\tconst type = \"geoboundschanged\";\n\t\t\tif (this.events.isEnabled(type)) {\n\t\t\t\tthis.events.dispatch(type, { type: type, target: this });\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _setUpTouch(): void {\n\t\tif (!this.chartContainer._display.cancelTouch) {\n\t\t\tthis.chartContainer._display.cancelTouch = (this.get(\"pinchZoom\") || this.get(\"panX\") || this.get(\"panY\")) ? true : false;\n\t\t}\n\t}\n\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirtyGeometries() {\n\t\tthis._dirtyGeometries = true;\n\t\tthis.markDirty();\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic markDirtyProjection() {\n\t\tthis.series.each((series) => {\n\t\t\tseries.markDirtyProjection();\n\t\t})\n\t}\n\n\tprotected _afterNew() {\n\t\tthis._defaultThemes.push(MapChartDefaultTheme.new(this._root));\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"map\"]);\n\n\t\tsuper._afterNew();\n\n\t\tthis._makeGeoPath();\n\n\t\tthis.chartContainer.children.push(this.seriesContainer);\n\n\t\tif (this.get(\"translateX\") == null) {\n\t\t\tthis.set(\"translateX\", this.width() / 2);\n\t\t}\n\t\tif (this.get(\"translateY\") == null) {\n\t\t\tthis.set(\"translateY\", this.height() / 2);\n\t\t}\n\n\t\t// Setting trasnparent background so that full body of the plot container\n\t\t// is interactive\n\t\tthis.chartContainer.set(\"interactive\", true);\n\t\tthis.chartContainer.set(\"interactiveChildren\", false);\n\t\tthis.chartContainer.set(\"background\", Rectangle.new(this._root, {\n\t\t\tthemeTags: [\"map\", \"background\"],\n\t\t\tfill: Color.fromHex(0x000000),\n\t\t\tfillOpacity: 0\n\t\t}));\n\n\t\tthis._disposers.push(this.chartContainer.events.on(\"pointerdown\", (event) => {\n\t\t\tthis._handleChartDown(event);\n\t\t}));\n\n\t\tthis._disposers.push(this.chartContainer.events.on(\"globalpointerup\", (event) => {\n\t\t\tthis._handleChartUp(event);\n\t\t}));\n\n\t\tthis._disposers.push(this.chartContainer.events.on(\"globalpointermove\", (event) => {\n\t\t\tthis._handleChartMove(event);\n\t\t}));\n\n\t\tlet license = false;\n\t\tfor (let i = 0; i < registry.licenses.length; i++) {\n\t\t\tif (registry.licenses[i].match(/^AM5M.{5,}/i)) {\n\t\t\t\tlicense = true;\n\t\t\t}\n\t\t}\n\t\tif (!license) {\n\t\t\tthis._root._showBranding();\n\t\t}\n\n\t\tthis._setUpTouch();\n\n\t}\n\n\tprotected _handleChartDown(event: ISpritePointerEvent) {\n\n\t\tthis._downZoomLevel = this.get(\"zoomLevel\", 1);\n\n\n\t\tlet count = $object.keys(this.chartContainer._downPoints).length;\n\t\tif (count > 0) {\n\t\t\tthis._downTranslateX = this.get(\"translateX\");\n\t\t\tthis._downTranslateY = this.get(\"translateY\");\n\t\t\tthis._downRotationX = this.get(\"rotationX\");\n\t\t\tthis._downRotationY = this.get(\"rotationY\");\n\t\t\tthis._downRotationZ = this.get(\"rotationZ\");\n\n\t\t\tconst downId = this.chartContainer._getDownPointId();\n\t\t\tif (downId) {\n\t\t\t\tlet movePoint = this._movePoints[downId];\n\t\t\t\tif (movePoint) {\n\t\t\t\t\tthis.chartContainer._downPoints[downId] = movePoint;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\telse if (count == 0) {\n\n\t\t\tlet bg = this.chartContainer.get(\"background\");\n\t\t\tif (bg) {\n\t\t\t\tbg.events.enableType(\"click\");\n\t\t\t}\n\n\t\t\tif (this.get(\"panX\") || this.get(\"panY\")) {\n\n\t\t\t\tif (this._za) {\n\t\t\t\t\tthis._za.stop();\n\t\t\t\t}\n\t\t\t\tif (this._txa) {\n\t\t\t\t\tthis._txa.stop();\n\t\t\t\t}\n\t\t\t\tif (this._tya) {\n\t\t\t\t\tthis._tya.stop();\n\t\t\t\t}\n\t\t\t\tif (this._rxa) {\n\t\t\t\t\tthis._rxa.stop();\n\t\t\t\t}\n\t\t\t\tif (this._rya) {\n\t\t\t\t\tthis._rya.stop();\n\t\t\t\t}\n\n\t\t\t\tconst downPoint = this.chartContainer._display.toLocal(event.point);\n\t\t\t\tthis._downTranslateX = this.get(\"translateX\");\n\t\t\t\tthis._downTranslateY = this.get(\"translateY\");\n\t\t\t\tthis._downRotationX = this.get(\"rotationX\");\n\t\t\t\tthis._downRotationY = this.get(\"rotationY\");\n\t\t\t\tthis._downRotationZ = this.get(\"rotationZ\");\n\n\t\t\t\tlet projection = this.get(\"projection\")!;\n\n\t\t\t\tif (projection.invert) {\n\t\t\t\t\tlet l0 = projection.invert([downPoint.x, downPoint.y]);\n\t\t\t\t\tlet l1 = projection.invert([downPoint.x + 1, downPoint.y + 1]);\n\t\t\t\t\tif (l0 && l1) {\n\t\t\t\t\t\tthis._pLon = Math.abs(l1[0] - l0[0]);\n\t\t\t\t\t\tthis._pLat = Math.abs(l1[1] - l0[1]);\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 * Converts screen coordinates (X and Y) within chart to latitude and\n\t * longitude.\n\t * \n\t * @param point Screen coordinates\n\t * @return Geographical coordinates\n\t */\n\tpublic invert(point: IPoint): IGeoPoint {\n\t\tlet projection = this.get(\"projection\")!;\n\n\t\tif (projection.invert) {\n\t\t\tconst ll = projection.invert([point.x, point.y]);\n\t\t\tif (ll) {\n\t\t\t\treturn { longitude: ll[0], latitude: ll[1] };\n\t\t\t}\n\t\t}\n\n\t\treturn { longitude: 0, latitude: 0 };\n\t}\n\n\t/**\n\t * Converts latitude/longitude to screen coordinates (X and Y).\n\t * \n\t * @param point Geographical coordinates\n\t * @return Screen coordinates\n\t */\n\tpublic convert(point: IGeoPoint): IPoint {\n\t\tlet projection = this.get(\"projection\")!;\n\n\t\tconst xy = projection([point.longitude, point.latitude]);\n\n\t\tif (xy) {\n\t\t\treturn { x: xy[0], y: xy[1] };\n\t\t}\n\n\t\treturn { x: 0, y: 0 };\n\t}\n\n\tprotected _handleChartUp(_event: ISpritePointerEvent) {\n\t\tthis.chartContainer._downPoints = {}\n\t}\n\n\tprotected _handlePinch() {\n\t\tconst chartContainer = this.chartContainer;\n\t\tlet i = 0;\n\t\tlet downPoints: Array<IPoint> = [];\n\t\tlet movePoints: Array<IPoint> = [];\n\n\t\t$object.each(chartContainer._downPoints, (k, point) => {\n\t\t\tdownPoints[i] = point;\n\t\t\tlet movePoint = this._movePoints[k];\n\t\t\tif (movePoint) {\n\t\t\t\tmovePoints[i] = movePoint;\n\t\t\t}\n\t\t\ti++;\n\t\t});\n\n\t\tif (downPoints.length > 1 && movePoints.length > 1) {\n\t\t\tconst display = chartContainer._display;\n\n\t\t\tlet downPoint0 = downPoints[0];\n\t\t\tlet downPoint1 = downPoints[1];\n\n\t\t\tlet movePoint0 = movePoints[0];\n\t\t\tlet movePoint1 = movePoints[1];\n\n\t\t\tif (downPoint0 && downPoint1 && movePoint0 && movePoint1) {\n\n\t\t\t\tdownPoint0 = display.toLocal(downPoint0);\n\t\t\t\tdownPoint1 = display.toLocal(downPoint1);\n\n\t\t\t\tmovePoint0 = display.toLocal(movePoint0);\n\t\t\t\tmovePoint1 = display.toLocal(movePoint1);\n\n\t\t\t\tlet initialDistance = Math.hypot(downPoint1.x - downPoint0.x, downPoint1.y - downPoint0.y);\n\t\t\t\tlet currentDistance = Math.hypot(movePoint1.x - movePoint0.x, movePoint1.y - movePoint0.y);\n\n\t\t\t\tlet level = currentDistance / initialDistance * this._downZoomLevel;\n\t\t\t\tlevel = $math.fitToRange(level, this.get(\"minZoomLevel\", 1), this.get(\"maxZoomLevel\", 32));\n\n\t\t\t\tlet moveCenter = { x: movePoint0.x + (movePoint1.x - movePoint0.x) / 2, y: movePoint0.y + (movePoint1.y - movePoint0.y) / 2 };\n\t\t\t\tlet downCenter = { x: downPoint0.x + (downPoint1.x - downPoint0.x) / 2, y: downPoint0.y + (downPoint1.y - downPoint0.y) / 2 };\n\n\t\t\t\tlet tx = this._downTranslateX || 0;\n\t\t\t\tlet ty = this._downTranslateY || 0;\n\n\t\t\t\tlet zoomLevel = this._downZoomLevel;\n\n\t\t\t\tlet xx = moveCenter.x - (- tx + downCenter.x) / zoomLevel * level;\n\t\t\t\tlet yy = moveCenter.y - (- ty + downCenter.y) / zoomLevel * level;\n\n\t\t\t\tthis.set(\"zoomLevel\", level);\n\t\t\t\tthis.set(\"translateX\", xx);\n\t\t\t\tthis.set(\"translateY\", yy);\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _handleChartMove(event: ISpritePointerEvent) {\n\t\tconst chartContainer = this.chartContainer;\n\t\tlet downPoint = chartContainer._getDownPoint();\n\t\tconst downPointId = chartContainer._getDownPointId();\n\t\tconst originalEvent = event.originalEvent as any;\n\n\t\tconst pointerId = originalEvent.pointerId;\n\n\t\tif (this.get(\"pinchZoom\")) {\n\t\t\tif (pointerId) {\n\t\t\t\tthis._movePoints[pointerId] = event.point;\n\n\t\t\t\tif ($object.keys(chartContainer._downPoints).length > 1) {\n\t\t\t\t\tthis._handlePinch();\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tif (downPointId && pointerId && pointerId != downPointId) {\n\t\t\treturn;\n\t\t}\n\t\telse {\n\t\t\tif (downPoint) {\n\t\t\t\tconst panX = this.get(\"panX\");\n\t\t\t\tconst panY = this.get(\"panY\");\n\t\t\t\tif (panX != \"none\" || panY != \"none\") {\n\t\t\t\t\tconst display = chartContainer._display;\n\t\t\t\t\tlet local = display.toLocal(event.point);\n\t\t\t\t\tdownPoint = display.toLocal(downPoint);\n\n\t\t\t\t\tlet x = this._downTranslateX;\n\t\t\t\t\tlet y = this._downTranslateY;\n\n\t\t\t\t\tif (Math.hypot(downPoint.x - local.x, downPoint.y - local.y) > 5) {\n\t\t\t\t\t\tlet bg = chartContainer.get(\"background\");\n\t\t\t\t\t\tif (bg) {\n\t\t\t\t\t\t\tbg.events.disableType(\"click\");\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tif ($type.isNumber(x) && $type.isNumber(y)) {\n\t\t\t\t\t\t\tlet projection = this.get(\"projection\")!;\n\t\t\t\t\t\t\tconst zoomLevel = this.get(\"zoomLevel\", 1);\n\n\t\t\t\t\t\t\tconst maxPanOut = this.get(\"maxPanOut\", 0.4);\n\t\t\t\t\t\t\tconst bounds = this._mapBounds;\n\n\t\t\t\t\t\t\tconst w = this.width();\n\t\t\t\t\t\t\tconst h = this.height();\n\n\t\t\t\t\t\t\tconst ww = bounds[1][0] - bounds[0][0];\n\t\t\t\t\t\t\tconst hh = bounds[1][1] - bounds[0][1];\n\n\t\t\t\t\t\t\tif (panX == \"translateX\") {\n\t\t\t\t\t\t\t\tx += local.x - downPoint.x;\n\n\t\t\t\t\t\t\t\tconst cx = w / 2 - (w / 2 - this._centerX) * zoomLevel;\n\t\t\t\t\t\t\t\tx = Math.min(x, cx + ww * maxPanOut * zoomLevel);\n\t\t\t\t\t\t\t\tx = Math.max(x, cx - ww * maxPanOut * zoomLevel);\n\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (panY == \"translateY\") {\n\t\t\t\t\t\t\t\ty += local.y - downPoint.y;\n\t\t\t\t\t\t\t\tconst cy = h / 2 - (h / 2 - this._centerY) * zoomLevel;\n\t\t\t\t\t\t\t\ty = Math.min(y, cy + hh * maxPanOut * zoomLevel);\n\t\t\t\t\t\t\t\ty = Math.max(y, cy - hh * maxPanOut * zoomLevel);\n\t\t\t\t\t\t\t}\n\n\t\t\t\t\t\t\tthis.set(\"translateX\", x);\n\t\t\t\t\t\t\tthis.set(\"translateY\", y);\n\n\t\t\t\t\t\t\tif (projection.invert) {\n\t\t\t\t\t\t\t\tlet downLocation = projection.invert([downPoint.x, downPoint.y]);\n\t\t\t\t\t\t\t\tif (location && downLocation) {\n\t\t\t\t\t\t\t\t\tif (panX == \"rotateX\") {\n\t\t\t\t\t\t\t\t\t\tthis.set(\"rotationX\", this._downRotationX! - (downPoint.x - local.x) * this._pLon);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\tif (panY == \"rotateY\") {\n\t\t\t\t\t\t\t\t\t\tthis.set(\"rotationY\", this._downRotationY! + (downPoint.y - local.y) * this._pLat);\n\t\t\t\t\t\t\t\t\t}\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}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\tprotected _handleWheelRotateY(delta: number, duration: number, easing: (t: Time) => Time) {\n\t\tthis._rya = this.animate({ key: \"rotationY\", to: this.get(\"rotationY\", 0) - delta, duration: duration, easing: easing });\n\t}\n\n\tprotected _handleWheelRotateX(delta: number, duration: number, easing: (t: Time) => Time) {\n\t\tthis._rxa = this.animate({ key: \"rotationX\", to: this.get(\"rotationX\", 0) - delta, duration: duration, easing: easing });\n\t}\n\n\tprotected _handleWheelZoom(delta: number, point: IPoint) {\n\t\tlet step = this.get(\"zoomStep\", 2);\n\t\tlet zoomLevel = this.get(\"zoomLevel\", 1);\n\t\tlet newZoomLevel = zoomLevel;\n\t\tif (delta > 0) {\n\t\t\tnewZoomLevel = zoomLevel / step;\n\t\t}\n\t\telse if (delta < 0) {\n\t\t\tnewZoomLevel = zoomLevel * step;\n\t\t}\n\n\t\tif (newZoomLevel != zoomLevel) {\n\t\t\tthis.zoomToPoint(point, newZoomLevel)\n\t\t}\n\t}\n\n\t/**\n\t * Zoom the map to geographical bounds.\n\t *\n\t * @param geoBounds Bounds\n\t * @param duration Animation duration in milliseconds\n\t */\n\tpublic zoomToGeoBounds(geoBounds: { left: number, right: number, top: number, bottom: number }, duration?: number): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\tif (geoBounds.right < geoBounds.left) {\n\t\t\tgeoBounds.right = 180;\n\t\t\tgeoBounds.left = -180;\n\t\t}\n\n\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\tconst mapBounds = geoPath.bounds(this._geometryColection);\n\n\t\tlet p0 = this.convert({ longitude: geoBounds.left, latitude: geoBounds.top });\n\t\tlet p1 = this.convert({ longitude: geoBounds.right, latitude: geoBounds.bottom });\n\n\t\tif (p0.y < mapBounds[0][1]) {\n\t\t\tp0.y = mapBounds[0][1];\n\t\t}\n\n\t\tif (p1.y > mapBounds[1][1]) {\n\t\t\tp1.y = mapBounds[1][1];\n\t\t}\n\n\t\tlet zl = this.get(\"zoomLevel\", 1);\n\n\t\tlet bounds = { left: p0.x, right: p1.x, top: p0.y, bottom: p1.y };\n\n\t\tlet seriesContainer = this.seriesContainer;\n\n\t\tlet zoomLevel = .9 * Math.min(seriesContainer.innerWidth() / (bounds.right - bounds.left) * zl, seriesContainer.innerHeight() / (bounds.bottom - bounds.top) * zl);\n\t\tlet x = bounds.left + (bounds.right - bounds.left) / 2;\n\t\tlet y = bounds.top + (bounds.bottom - bounds.top) / 2;\n\n\t\tlet geoPoint = this.invert({ x, y });\n\n\t\treturn this.zoomToGeoPoint(geoPoint, zoomLevel, true, duration);\n\t}\n\n\t/**\n\t * Zooms the map to specific screen point.\n\t *\n\t * @param point Point\n\t * @param level Zoom level\n\t * @param center Center the map\n\t * @param duration Duration of the animation in milliseconds\n\t */\n\tpublic zoomToPoint(point: IPoint, level: number, center?: boolean, duration?: number): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\tif (level) {\n\t\t\tlevel = $math.fitToRange(level, this.get(\"minZoomLevel\", 1), this.get(\"maxZoomLevel\", 32));\n\t\t}\n\n\t\tif (!$type.isNumber(duration)) {\n\t\t\tduration = this.get(\"animationDuration\", 0);\n\t\t}\n\t\tconst easing = this.get(\"animationEasing\");\n\t\tconst zoomLevel = this.get(\"zoomLevel\", 1);\n\n\t\tif (this.get(\"centerMapOnZoomOut\") && level == this.get(\"homeZoomLevel\", 1)) {\n\t\t\tpoint = this.convert(this.homeGeoPoint());\n\t\t\tcenter = true;\n\t\t}\n\n\t\tlet x = point.x;\n\t\tlet y = point.y;\n\n\t\tlet tx = this.get(\"translateX\", 0);\n\t\tlet ty = this.get(\"translateY\", 0);\n\n\t\tlet cx = x;\n\t\tlet cy = y;\n\n\t\tif (center) {\n\t\t\tcx = this.width() / 2;\n\t\t\tcy = this.height() / 2;\n\t\t}\n\n\t\tlet xx = cx - ((x - tx) / zoomLevel * level);\n\t\tlet yy = cy - ((y - ty) / zoomLevel * level);\n\n\n\t\tthis._txa = this.animate({ key: \"translateX\", to: xx, duration: duration, easing: easing });\n\t\tthis._tya = this.animate({ key: \"translateY\", to: yy, duration: duration, easing: easing });\n\t\tthis._za = this.animate({ key: \"zoomLevel\", to: level, duration: duration, easing: easing });\n\n\t\tif (zoomLevel != level) {\n\t\t\tthis._root.readerAlert(this._t(\"Zoom level changed to %1\", this._root.locale, $type.numberToString(level)));\n\t\t}\n\n\t\treturn this._za;\n\t}\n\n\t/**\n\t * Zooms the map to specific geographical point.\n\t *\n\t * @param geoPoint Point\n\t * @param level Zoom level\n\t * @param center Center the map\n\t * @param duration Duration of the animation in milliseconds\n\t */\n\tpublic zoomToGeoPoint(geoPoint: IGeoPoint, level: number, center?: boolean, duration?: number): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\tlet xy = this.convert(geoPoint);\n\n\t\tif (xy) {\n\t\t\treturn this.zoomToPoint(xy, level, center, duration);\n\t\t}\n\t}\n\n\t/**\n\t * Zooms the map in.\n\t */\n\tpublic zoomIn(): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\treturn this.zoomToPoint({ x: this.width() / 2, y: this.height() / 2 }, this.get(\"zoomLevel\", 1) * this.get(\"zoomStep\", 2));\n\t}\n\n\t/**\n\t * Zooms the map out.\n\t */\n\tpublic zoomOut(): Animation<this[\"_settings\"][\"zoomLevel\"]> | undefined {\n\t\treturn this.zoomToPoint({ x: this.width() / 2, y: this.height() / 2 }, this.get(\"zoomLevel\", 1) / this.get(\"zoomStep\", 2));\n\t}\n\n\tpublic _clearDirty() {\n\t\tsuper._clearDirty();\n\t\tthis._dirtyGeometries = false;\n\t\tthis._mapFitted = false;\n\t}\n\n\t/**\n\t * Returns area of a mapPolygon in square pixels.\n\t */\n\tpublic getArea(dataItem: DataItem<IMapPolygonSeriesDataItem>): number {\n\t\tconst geoPath = this.getPrivate(\"geoPath\");\n\t\tconst geometry = dataItem.get(\"geometry\");\n\t\tif (geometry) {\n\t\t\treturn geoPath.area(geometry);\n\t\t}\n\t\treturn 0;\n\t}\n}\n"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsModal.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/SettingsModal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAA6B,MAAM,wBAAwB,CAAC;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAItD,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAQtD,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAE7D;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;CAEvB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;CAC3D;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IAEzD;;OAEG;IACH,IAAI,EAAE;QACL,QAAQ,CAAC,EAAE,GAAG,CAAC;QACf,cAAc,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;KACrC,CAAA;CAED;AAaD;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACvC,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA8C;IAEtE,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,OAAO,EAAE,oBAAoB,CAAC;IAE7C,SAAS,CAAC,gBAAgB,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAM;IAC1D,SAAS,CAAC,eAAe,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACjD,SAAS,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IAEvC,SAAS,CAAC,SAAS;IAIZ,cAAc;IAQrB;;;;OAIG;IACI,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAK7C;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI;
|
|
1
|
+
{"version":3,"file":"SettingsModal.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/SettingsModal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAA6B,MAAM,wBAAwB,CAAC;AACnF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AAItD,OAAO,EAAE,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAQtD,MAAM,WAAW,sBAAuB,SAAQ,cAAc;IAE7D;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;CAEvB;AAED,MAAM,WAAW,qBAAsB,SAAQ,aAAa;CAC3D;AAED,MAAM,WAAW,oBAAqB,SAAQ,YAAY;IAEzD;;OAEG;IACH,IAAI,EAAE;QACL,QAAQ,CAAC,EAAE,GAAG,CAAC;QACf,cAAc,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAA;KACrC,CAAA;CAED;AAaD;;GAEG;AACH,qBAAa,aAAc,SAAQ,KAAK;IACvC,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA8C;IAEtE,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,OAAO,EAAE,oBAAoB,CAAC;IAE7C,SAAS,CAAC,gBAAgB,EAAE;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,GAAG,CAAA;KAAE,CAAM;IAC1D,SAAS,CAAC,eAAe,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IACjD,SAAS,CAAC,aAAa,CAAC,EAAE,YAAY,CAAC;IAEvC,SAAS,CAAC,SAAS;IAIZ,cAAc;IAQrB;;;;OAIG;IACI,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAK7C;;;;OAIG;IACI,UAAU,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI;IAgHzC,OAAO,CAAC,WAAW;IA8InB,OAAO,CAAC,WAAW;IA2BnB,OAAO,CAAC,SAAS;IAQjB,OAAO,CAAC,WAAW;IAOnB,OAAO,CAAC,QAAQ;IAgBhB;;OAEG;IACI,KAAK,IAAI,IAAI;IAUpB;;OAEG;IACI,MAAM,IAAI,IAAI;IASrB;;OAEG;IACI,KAAK,IAAI,IAAI;IAQpB,OAAO,CAAC,cAAc;CAItB"}
|
|
@@ -80,8 +80,9 @@ var SettingsModal = /** @class */ (function (_super) {
|
|
|
80
80
|
this._settingsTarget = series;
|
|
81
81
|
var l = this._root.language;
|
|
82
82
|
var stockChart = this.get("stockChart");
|
|
83
|
+
var isline = series instanceof LineSeries;
|
|
83
84
|
var settings = [];
|
|
84
|
-
if (series == stockChart.get("stockSeries")) {
|
|
85
|
+
if (series == stockChart.get("stockSeries") && !isline) {
|
|
85
86
|
settings.push({
|
|
86
87
|
id: "stockPositiveColor",
|
|
87
88
|
key: "stockPositiveColor",
|
|
@@ -99,7 +100,7 @@ var SettingsModal = /** @class */ (function (_super) {
|
|
|
99
100
|
target: stockChart
|
|
100
101
|
});
|
|
101
102
|
}
|
|
102
|
-
else if (series == stockChart.get("volumeSeries")) {
|
|
103
|
+
else if (series == stockChart.get("volumeSeries") && !isline) {
|
|
103
104
|
settings.push({
|
|
104
105
|
id: "volumePositiveColor",
|
|
105
106
|
key: "volumePositiveColor",
|
|
@@ -140,7 +141,7 @@ var SettingsModal = /** @class */ (function (_super) {
|
|
|
140
141
|
invalidateTarget: series
|
|
141
142
|
});
|
|
142
143
|
}
|
|
143
|
-
else if (
|
|
144
|
+
else if (isline) {
|
|
144
145
|
settings = [{
|
|
145
146
|
key: "stroke",
|
|
146
147
|
name: l.translateAny("Line"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SettingsModal.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/SettingsModal.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Indicator, IIndicatorEditableSetting } from \"./indicators/Indicator\";\r\nimport type { StockChart } from \"./StockChart\";\r\nimport type { XYSeries } from \"../xy/series/XYSeries\";\r\n\r\nimport { CandlestickSeries } from \"../xy/series/CandlestickSeries\";\r\nimport { LineSeries } from \"../xy/series/LineSeries\";\r\nimport { Modal, IModalSettings, IModalPrivate, IModalEvents } from \"../../core/util/Modal\";\r\nimport { ColorControl } from \"./toolbar/ColorControl\";\r\n\r\nimport * as $array from \"../../core/util/Array\";\r\nimport * as $object from \"../../core/util/Object\";\r\nimport * as $utils from \"../../core/util/Utils\";\r\nimport * as $type from \"../../core/util/Type\";\r\n\r\n\r\nexport interface ISettingsModalSettings extends IModalSettings {\r\n\r\n\t/**\r\n\t * A target [[StockChart]].\r\n\t */\r\n\tstockChart: StockChart;\r\n\r\n}\r\n\r\nexport interface ISettingsModalPrivate extends IModalPrivate {\r\n}\r\n\r\nexport interface ISettingsModalEvents extends IModalEvents {\r\n\r\n\t/**\r\n\t * Invoked when modal is closed/saved.\r\n\t */\r\n\tdone: {\r\n\t\tsettings?: any,\r\n\t\tsettingsTarget?: Indicator | XYSeries\r\n\t}\r\n\r\n}\r\n\r\n/**\r\n * @ignore\r\n */\r\ninterface ISeriesEditableSetting extends IIndicatorEditableSetting {\r\n\tid?: string;\r\n\ttarget?: any;\r\n\tadditionalKeys?: string[];\r\n\tcurrentValue?: any;\r\n\tinvalidateTarget?: XYSeries;\r\n}\r\n\r\n/**\r\n * Used to display a modal dialog with HTML content.\r\n */\r\nexport class SettingsModal extends Modal {\r\n\tpublic static className: string = \"SettingsModal\";\r\n\tpublic static classNames: Array<string> = Modal.classNames.concat([Modal.className]);\r\n\r\n\tdeclare public _settings: ISettingsModalSettings;\r\n\tdeclare public _privateSettings: ISettingsModalPrivate;\r\n\tdeclare public _events: ISettingsModalEvents;\r\n\r\n\tprotected _updatedSettings: { [index: string]: any } = {};\r\n\tprotected _settingsTarget?: Indicator | XYSeries;\r\n\tprotected _colorControl?: ColorControl;\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t}\r\n\r\n\tpublic _beforeChanged() {\r\n\t\tsuper._beforeChanged();\r\n\r\n\t\t// if (this.isDirty(\"content\")) {\r\n\t\t// \tthis.getPrivate(\"content\").innerHTML = this.get(\"content\", \"\");\r\n\t\t// }\r\n\t}\r\n\r\n\t/**\r\n\t * Opens settings modal for an [[Indicator]].\r\n\t * \r\n\t * @param target Target indicator\r\n\t */\r\n\tpublic openIndicator(target: Indicator): void {\r\n\t\tthis._settingsTarget = target;\r\n\t\tthis.initContent(target._editableSettings, target);\r\n\t}\r\n\r\n\t/**\r\n\t * Opens settings editing for the any [[XYSeries]].\r\n\t * \r\n\t * @param series target series\r\n\t */\r\n\tpublic openSeries(series: XYSeries): void {\r\n\t\tthis._settingsTarget = series;\r\n\r\n\t\tconst l = this._root.language;\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\r\n\t\tlet settings: ISeriesEditableSetting[] = [];\r\n\r\n\t\tif (series == stockChart.get(\"stockSeries\")) {\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"stockPositiveColor\",\r\n\t\t\t\tkey: \"stockPositiveColor\",\r\n\t\t\t\tname: l.translateAny(\"Increase\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"stockPositiveColor\", this._root.interfaceColors.get(\"positive\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"stockNegativeColor\",\r\n\t\t\t\tkey: \"stockNegativeColor\",\r\n\t\t\t\tname: l.translateAny(\"Decrease\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"stockNegativeColor\", this._root.interfaceColors.get(\"negative\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\t\t}\r\n\t\telse if (series == stockChart.get(\"volumeSeries\")) {\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"volumePositiveColor\",\r\n\t\t\t\tkey: \"volumePositiveColor\",\r\n\t\t\t\tname: l.translateAny(\"Increase\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"volumePositiveColor\", this._root.interfaceColors.get(\"positive\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"volumeNegativeColor\",\r\n\t\t\t\tkey: \"volumeNegativeColor\",\r\n\t\t\t\tname: l.translateAny(\"Decrease\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"volumeNegativeColor\", this._root.interfaceColors.get(\"negative\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\t\t}\r\n\t\telse if (series instanceof CandlestickSeries && series.columns.length) {\r\n\t\t\tconst column = series.columns.getIndex(0);\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"riseFromOpen.fill\",\r\n\t\t\t\tkey: \"fill\",\r\n\t\t\t\tadditionalKeys: [\"stroke\"],\r\n\t\t\t\tname: l.translateAny(\"Increase\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: column!.states.lookup(\"riseFromOpen\")!.get(\"fill\"),\r\n\t\t\t\ttarget: series.columns.template.states.create(\"riseFromOpen\", {}),\r\n\t\t\t\tinvalidateTarget: series\r\n\t\t\t});\r\n\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"dropFromOpen.fill\",\r\n\t\t\t\tkey: \"fill\",\r\n\t\t\t\tadditionalKeys: [\"stroke\"],\r\n\t\t\t\tname: l.translateAny(\"Decrease\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: column!.states.lookup(\"dropFromOpen\")!.get(\"fill\"),\r\n\t\t\t\ttarget: series.columns.template.states.create(\"dropFromOpen\", {}),\r\n\t\t\t\tinvalidateTarget: series\r\n\t\t\t});\r\n\t\t}\r\n\t\telse if (series instanceof LineSeries) {\r\n\t\t\tsettings = [{\r\n\t\t\t\tkey: \"stroke\",\r\n\t\t\t\tname: l.translateAny(\"Line\"),\r\n\t\t\t\ttype: \"color\"\r\n\t\t\t}, {\r\n\t\t\t\tkey: \"strokeWidth\",\r\n\t\t\t\tname: l.translateAny(\"Line\"),\r\n\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\toptions: [\r\n\t\t\t\t\t{ value: 1, text: \"1px\" },\r\n\t\t\t\t\t{ value: 2, text: \"2px\" },\r\n\t\t\t\t\t{ value: 4, text: \"4px\" },\r\n\t\t\t\t\t{ value: 10, text: \"10px\" }\r\n\t\t\t\t],\r\n\t\t\t\tcurrentValue: series.strokes.template.get(\"strokeWidth\", 1),\r\n\t\t\t\ttarget: series.strokes.template,\r\n\t\t\t\tinvalidateTarget: series\r\n\t\t\t}];\r\n\t\t\tif (series.fills.template.get(\"visible\")) {\r\n\t\t\t\tsettings.push({\r\n\t\t\t\t\tkey: \"fill\",\r\n\t\t\t\t\tname: l.translateAny(\"Fill\"),\r\n\t\t\t\t\ttype: \"color\"\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t\telse {\r\n\t\t\tsettings = [{\r\n\t\t\t\tkey: \"stroke\",\r\n\t\t\t\tname: l.translateAny(\"Line\"),\r\n\t\t\t\ttype: \"color\"\r\n\t\t\t}, {\r\n\t\t\t\tkey: \"fill\",\r\n\t\t\t\tname: l.translateAny(\"Fill\"),\r\n\t\t\t\ttype: \"color\"\r\n\t\t\t}];\r\n\t\t}\r\n\t\tthis.initContent(settings, series);\r\n\t}\r\n\r\n\tprivate initContent(settings: ISeriesEditableSetting[], target: any) {\r\n\t\tthis._updatedSettings = {};\r\n\t\tconst content = this.getPrivate(\"content\");\r\n\r\n\t\t// Clear\r\n\t\tthis.clear();\r\n\r\n\t\t// Title\r\n\t\tconst title = document.createElement(\"h1\");\r\n\t\ttitle.innerHTML = target.get(\"name\");\r\n\t\tcontent.appendChild(title);\r\n\r\n\t\t// Add fields\r\n\t\tconst table = document.createElement(\"div\");\r\n\t\ttable.className = \"am5-modal-table\";\r\n\t\tcontent.appendChild(table);\r\n\r\n\t\tconst settingInputs: { [index: string]: HTMLInputElement | HTMLSelectElement } = {};\r\n\t\tconst settingsWithTarget: { [index: string]: any } = {};\r\n\t\tlet prevName = \"\";\r\n\t\tlet prevLine: HTMLDivElement;\r\n\t\t$array.each(settings, (setting) => {\r\n\t\t\tconst key = this._getSettingKey(setting);\r\n\t\t\tconst keyTarget = setting.target || target;\r\n\t\t\tconst currentValue = setting.currentValue || keyTarget.get(setting.key);\r\n\r\n\t\t\tif (setting.target) {\r\n\t\t\t\tsettingsWithTarget[key] = setting;\r\n\t\t\t}\r\n\r\n\t\t\tlet element: HTMLElement | undefined;\r\n\t\t\tswitch (setting.type) {\r\n\t\t\t\tcase \"dropdown\":\r\n\t\t\t\t\telement = this.getDropdown(setting, currentValue);\r\n\t\t\t\t\tsettingInputs[key] = <HTMLSelectElement>element;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"number\":\r\n\t\t\t\t\telement = this.getNumber(setting, currentValue);\r\n\t\t\t\t\tsettingInputs[key] = <HTMLInputElement>element;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"color\":\r\n\t\t\t\t\telement = this.getColor(setting, currentValue);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"checkbox\":\r\n\t\t\t\t\telement = this.getCheckbox(setting, currentValue);\r\n\t\t\t\t\tsettingInputs[key] = <HTMLInputElement>element;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t// case \"text\":\r\n\t\t\t\t// \telement = this.getText(setting, currentValue);\r\n\t\t\t\t// \tbreak;\r\n\t\t\t}\r\n\r\n\t\t\tif (element) {\r\n\r\n\t\t\t\tlet line: HTMLDivElement;\r\n\t\t\t\tif (setting.name == prevName && prevLine) {\r\n\t\t\t\t\tline = prevLine;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tline = document.createElement(\"div\");\r\n\t\t\t\t\tline.className = \"am5-modal-table-row\";\r\n\t\t\t\t\ttable.appendChild(line);\r\n\r\n\t\t\t\t\tconst heading = document.createElement(\"div\");\r\n\t\t\t\t\theading.className = \"am5-modal-table-heading\";\r\n\t\t\t\t\theading.innerHTML = setting.name;\r\n\t\t\t\t\tline.appendChild(heading);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst cell = document.createElement(\"div\");\r\n\t\t\t\tcell.className = \"am5-modal-table-cell\";\r\n\t\t\t\tline.appendChild(cell);\r\n\t\t\t\tcell.appendChild(element);\r\n\r\n\t\t\t\tprevName = setting.name;\r\n\t\t\t\tprevLine = line;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Buttons\r\n\t\tconst saveButton = document.createElement(\"input\");\r\n\t\tsaveButton.type = \"button\";\r\n\t\tsaveButton.value = this._root.language.translateAny(\"Save\");\r\n\t\tsaveButton.className = \"am5-modal-button am5-modal-primary\";\r\n\t\tcontent.appendChild(saveButton);\r\n\r\n\t\t$utils.addEventListener(saveButton, \"click\", () => {\r\n\t\t\t$object.each(settingInputs, (key, element) => {\r\n\t\t\t\tif (element.type == \"checkbox\") {\r\n\t\t\t\t\tthis._updatedSettings[key] = (<HTMLInputElement>element).checked;\r\n\t\t\t\t}\r\n\t\t\t\telse if (element.type == \"number\") {\r\n\t\t\t\t\tthis._updatedSettings[key] = $type.toNumber(element.value);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tthis._updatedSettings[key] = element.value;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t$object.each(this._updatedSettings, (key, value) => {\r\n\t\t\t\tconst targetKey = (<string>key).split(\".\").pop();\r\n\t\t\t\tif ($type.isObject(value) && value.value) {\r\n\t\t\t\t\tif (value.setting && value.setting.target) {\r\n\t\t\t\t\t\tvalue.setting.target.set(targetKey, value.value);\r\n\t\t\t\t\t\tif (value.setting.additionalKeys) {\r\n\t\t\t\t\t\t\t$array.each(value.setting.additionalKeys, (additonalKey) => {\r\n\t\t\t\t\t\t\t\tvalue.setting.target.set(additonalKey, value.value);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\ttarget.set(targetKey, value.value);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\telse if (settingsWithTarget[targetKey!]) {\r\n\t\t\t\t\tsettingsWithTarget[targetKey!].target.set(targetKey, value);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\ttarget.set(targetKey, value);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (value.setting && value.setting.invalidateTarget) {\r\n\t\t\t\t\tvalue.setting.invalidateTarget.markDirtyValues();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tthis.close();\r\n\t\t});\r\n\r\n\t\tconst cancelButton = document.createElement(\"input\");\r\n\t\tcancelButton.type = \"button\";\r\n\t\tcancelButton.value = this._root.language.translateAny(\"Cancel\");\r\n\t\tcancelButton.className = \"am5-modal-button am5-modal-scondary\";\r\n\t\tcontent.appendChild(cancelButton);\r\n\r\n\t\t$utils.addEventListener(cancelButton, \"click\", () => {\r\n\t\t\tthis.cancel();\r\n\t\t});\r\n\r\n\t\t// Open modal\r\n\t\tthis.open();\r\n\r\n\t}\r\n\r\n\tprivate getDropdown(setting: any, currentValue: any): HTMLSelectElement {\r\n\t\tconst element = document.createElement(\"select\");\r\n\t\t$array.each(setting.options, (option) => {\r\n\t\t\tif (option) {\r\n\t\t\t\tconst optionElement = document.createElement(\"option\");\r\n\t\t\t\tlet value;\r\n\t\t\t\tif ($type.isObject(option)) {\r\n\t\t\t\t\toptionElement.value = <string>((<any>option).value);\r\n\t\t\t\t\toptionElement.text = <string>((<any>option).text);\r\n\t\t\t\t\tvalue = ((<any>option).value);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\toptionElement.value = <string>option;\r\n\t\t\t\t\toptionElement.text = <string>option;\r\n\t\t\t\t\tvalue = option;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (value == currentValue) {\r\n\t\t\t\t\toptionElement.selected = true;\r\n\t\t\t\t}\r\n\r\n\t\t\t\telement.appendChild(optionElement);\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn element;\r\n\t}\r\n\r\n\tprivate getNumber(_setting: any, currentValue: any): HTMLInputElement {\r\n\t\tconst element = document.createElement(\"input\");\r\n\t\telement.type = \"number\";\r\n\t\telement.value = currentValue;\r\n\t\telement.className = \"am5-modal-input-narrow\"\r\n\t\treturn element;\r\n\t}\r\n\r\n\tprivate getCheckbox(_setting: any, currentValue: any): HTMLInputElement {\r\n\t\tconst element = document.createElement(\"input\");\r\n\t\telement.type = \"checkbox\";\r\n\t\telement.checked = currentValue === true;\r\n\t\treturn element;\r\n\t}\r\n\r\n\tprivate getColor(setting: any, currentValue: any): HTMLDivElement {\r\n\t\tconst control = ColorControl.new(this.root, {\r\n\t\t\tstockChart: this.get(\"stockChart\"),\r\n\t\t\tuseOpacity: false\r\n\t\t});\r\n\t\tcontrol.setPrivate(\"color\", currentValue);\r\n\t\tcontrol.events.on(\"selected\", (ev) => {\r\n\t\t\tthis._updatedSettings[this._getSettingKey(setting)] = {\r\n\t\t\t\tvalue: ev.color,\r\n\t\t\t\tsetting: setting\r\n\t\t\t};\r\n\t\t});\r\n\t\tthis._disposers.push(control);\r\n\t\treturn control.getPrivate(\"button\")!;\r\n\t}\r\n\r\n\t/**\r\n\t * Closes the modal, saving settings.\r\n\t */\r\n\tpublic close(): void {\r\n\t\tsuper.close();\r\n\t\tthis.events.dispatch(\"done\", {\r\n\t\t\ttype: \"done\",\r\n\t\t\tsettings: this._updatedSettings,\r\n\t\t\tsettingsTarget: this._settingsTarget,\r\n\t\t\ttarget: this\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Closes the modal without applying any changes.\r\n\t */\r\n\tpublic cancel(): void {\r\n\t\tsuper.cancel();\r\n\t\tthis.events.dispatch(\"done\", {\r\n\t\t\ttype: \"done\",\r\n\t\t\tsettings: null,\r\n\t\t\ttarget: this\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Clears contents of the modal.\r\n\t */\r\n\tpublic clear(): void {\r\n\t\tconst content = this.getPrivate(\"content\");\r\n\t\tcontent.innerHTML = \"\";\r\n\t\tif (this._colorControl) {\r\n\t\t\tthis._colorControl.dispose();\r\n\t\t}\r\n\t}\r\n\r\n\tprivate _getSettingKey(setting: ISeriesEditableSetting): string {\r\n\t\treturn setting.id || setting.key;\r\n\t}\r\n\r\n}"]}
|
|
1
|
+
{"version":3,"file":"SettingsModal.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/SettingsModal.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Indicator, IIndicatorEditableSetting } from \"./indicators/Indicator\";\r\nimport type { StockChart } from \"./StockChart\";\r\nimport type { XYSeries } from \"../xy/series/XYSeries\";\r\n\r\nimport { CandlestickSeries } from \"../xy/series/CandlestickSeries\";\r\nimport { LineSeries } from \"../xy/series/LineSeries\";\r\nimport { Modal, IModalSettings, IModalPrivate, IModalEvents } from \"../../core/util/Modal\";\r\nimport { ColorControl } from \"./toolbar/ColorControl\";\r\n\r\nimport * as $array from \"../../core/util/Array\";\r\nimport * as $object from \"../../core/util/Object\";\r\nimport * as $utils from \"../../core/util/Utils\";\r\nimport * as $type from \"../../core/util/Type\";\r\n\r\n\r\nexport interface ISettingsModalSettings extends IModalSettings {\r\n\r\n\t/**\r\n\t * A target [[StockChart]].\r\n\t */\r\n\tstockChart: StockChart;\r\n\r\n}\r\n\r\nexport interface ISettingsModalPrivate extends IModalPrivate {\r\n}\r\n\r\nexport interface ISettingsModalEvents extends IModalEvents {\r\n\r\n\t/**\r\n\t * Invoked when modal is closed/saved.\r\n\t */\r\n\tdone: {\r\n\t\tsettings?: any,\r\n\t\tsettingsTarget?: Indicator | XYSeries\r\n\t}\r\n\r\n}\r\n\r\n/**\r\n * @ignore\r\n */\r\ninterface ISeriesEditableSetting extends IIndicatorEditableSetting {\r\n\tid?: string;\r\n\ttarget?: any;\r\n\tadditionalKeys?: string[];\r\n\tcurrentValue?: any;\r\n\tinvalidateTarget?: XYSeries;\r\n}\r\n\r\n/**\r\n * Used to display a modal dialog with HTML content.\r\n */\r\nexport class SettingsModal extends Modal {\r\n\tpublic static className: string = \"SettingsModal\";\r\n\tpublic static classNames: Array<string> = Modal.classNames.concat([Modal.className]);\r\n\r\n\tdeclare public _settings: ISettingsModalSettings;\r\n\tdeclare public _privateSettings: ISettingsModalPrivate;\r\n\tdeclare public _events: ISettingsModalEvents;\r\n\r\n\tprotected _updatedSettings: { [index: string]: any } = {};\r\n\tprotected _settingsTarget?: Indicator | XYSeries;\r\n\tprotected _colorControl?: ColorControl;\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t}\r\n\r\n\tpublic _beforeChanged() {\r\n\t\tsuper._beforeChanged();\r\n\r\n\t\t// if (this.isDirty(\"content\")) {\r\n\t\t// \tthis.getPrivate(\"content\").innerHTML = this.get(\"content\", \"\");\r\n\t\t// }\r\n\t}\r\n\r\n\t/**\r\n\t * Opens settings modal for an [[Indicator]].\r\n\t * \r\n\t * @param target Target indicator\r\n\t */\r\n\tpublic openIndicator(target: Indicator): void {\r\n\t\tthis._settingsTarget = target;\r\n\t\tthis.initContent(target._editableSettings, target);\r\n\t}\r\n\r\n\t/**\r\n\t * Opens settings editing for the any [[XYSeries]].\r\n\t * \r\n\t * @param series target series\r\n\t */\r\n\tpublic openSeries(series: XYSeries): void {\r\n\t\tthis._settingsTarget = series;\r\n\r\n\t\tconst l = this._root.language;\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tconst isline = series instanceof LineSeries;\r\n\r\n\t\tlet settings: ISeriesEditableSetting[] = [];\r\n\r\n\t\tif (series == stockChart.get(\"stockSeries\") && !isline) {\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"stockPositiveColor\",\r\n\t\t\t\tkey: \"stockPositiveColor\",\r\n\t\t\t\tname: l.translateAny(\"Increase\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"stockPositiveColor\", this._root.interfaceColors.get(\"positive\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"stockNegativeColor\",\r\n\t\t\t\tkey: \"stockNegativeColor\",\r\n\t\t\t\tname: l.translateAny(\"Decrease\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"stockNegativeColor\", this._root.interfaceColors.get(\"negative\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\t\t}\r\n\t\telse if (series == stockChart.get(\"volumeSeries\") && !isline) {\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"volumePositiveColor\",\r\n\t\t\t\tkey: \"volumePositiveColor\",\r\n\t\t\t\tname: l.translateAny(\"Increase\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"volumePositiveColor\", this._root.interfaceColors.get(\"positive\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"volumeNegativeColor\",\r\n\t\t\t\tkey: \"volumeNegativeColor\",\r\n\t\t\t\tname: l.translateAny(\"Decrease\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: stockChart.get(\"volumeNegativeColor\", this._root.interfaceColors.get(\"negative\")),\r\n\t\t\t\ttarget: stockChart\r\n\t\t\t});\r\n\t\t}\r\n\t\telse if (series instanceof CandlestickSeries && series.columns.length) {\r\n\t\t\tconst column = series.columns.getIndex(0);\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"riseFromOpen.fill\",\r\n\t\t\t\tkey: \"fill\",\r\n\t\t\t\tadditionalKeys: [\"stroke\"],\r\n\t\t\t\tname: l.translateAny(\"Increase\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: column!.states.lookup(\"riseFromOpen\")!.get(\"fill\"),\r\n\t\t\t\ttarget: series.columns.template.states.create(\"riseFromOpen\", {}),\r\n\t\t\t\tinvalidateTarget: series\r\n\t\t\t});\r\n\r\n\t\t\tsettings.push({\r\n\t\t\t\tid: \"dropFromOpen.fill\",\r\n\t\t\t\tkey: \"fill\",\r\n\t\t\t\tadditionalKeys: [\"stroke\"],\r\n\t\t\t\tname: l.translateAny(\"Decrease\"),\r\n\t\t\t\ttype: \"color\",\r\n\t\t\t\tcurrentValue: column!.states.lookup(\"dropFromOpen\")!.get(\"fill\"),\r\n\t\t\t\ttarget: series.columns.template.states.create(\"dropFromOpen\", {}),\r\n\t\t\t\tinvalidateTarget: series\r\n\t\t\t});\r\n\t\t}\r\n\t\telse if (isline) {\r\n\t\t\tsettings = [{\r\n\t\t\t\tkey: \"stroke\",\r\n\t\t\t\tname: l.translateAny(\"Line\"),\r\n\t\t\t\ttype: \"color\"\r\n\t\t\t}, {\r\n\t\t\t\tkey: \"strokeWidth\",\r\n\t\t\t\tname: l.translateAny(\"Line\"),\r\n\t\t\t\ttype: \"dropdown\",\r\n\t\t\t\toptions: [\r\n\t\t\t\t\t{ value: 1, text: \"1px\" },\r\n\t\t\t\t\t{ value: 2, text: \"2px\" },\r\n\t\t\t\t\t{ value: 4, text: \"4px\" },\r\n\t\t\t\t\t{ value: 10, text: \"10px\" }\r\n\t\t\t\t],\r\n\t\t\t\tcurrentValue: (<LineSeries>series).strokes.template.get(\"strokeWidth\", 1),\r\n\t\t\t\ttarget: (<LineSeries>series).strokes.template,\r\n\t\t\t\tinvalidateTarget: series\r\n\t\t\t}];\r\n\t\t\tif ((<LineSeries>series).fills.template.get(\"visible\")) {\r\n\t\t\t\tsettings.push({\r\n\t\t\t\t\tkey: \"fill\",\r\n\t\t\t\t\tname: l.translateAny(\"Fill\"),\r\n\t\t\t\t\ttype: \"color\"\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t}\r\n\t\telse {\r\n\t\t\tsettings = [{\r\n\t\t\t\tkey: \"stroke\",\r\n\t\t\t\tname: l.translateAny(\"Line\"),\r\n\t\t\t\ttype: \"color\"\r\n\t\t\t}, {\r\n\t\t\t\tkey: \"fill\",\r\n\t\t\t\tname: l.translateAny(\"Fill\"),\r\n\t\t\t\ttype: \"color\"\r\n\t\t\t}];\r\n\t\t}\r\n\t\tthis.initContent(settings, series);\r\n\t}\r\n\r\n\tprivate initContent(settings: ISeriesEditableSetting[], target: any) {\r\n\t\tthis._updatedSettings = {};\r\n\t\tconst content = this.getPrivate(\"content\");\r\n\r\n\t\t// Clear\r\n\t\tthis.clear();\r\n\r\n\t\t// Title\r\n\t\tconst title = document.createElement(\"h1\");\r\n\t\ttitle.innerHTML = target.get(\"name\");\r\n\t\tcontent.appendChild(title);\r\n\r\n\t\t// Add fields\r\n\t\tconst table = document.createElement(\"div\");\r\n\t\ttable.className = \"am5-modal-table\";\r\n\t\tcontent.appendChild(table);\r\n\r\n\t\tconst settingInputs: { [index: string]: HTMLInputElement | HTMLSelectElement } = {};\r\n\t\tconst settingsWithTarget: { [index: string]: any } = {};\r\n\t\tlet prevName = \"\";\r\n\t\tlet prevLine: HTMLDivElement;\r\n\t\t$array.each(settings, (setting) => {\r\n\t\t\tconst key = this._getSettingKey(setting);\r\n\t\t\tconst keyTarget = setting.target || target;\r\n\t\t\tconst currentValue = setting.currentValue || keyTarget.get(setting.key);\r\n\r\n\t\t\tif (setting.target) {\r\n\t\t\t\tsettingsWithTarget[key] = setting;\r\n\t\t\t}\r\n\r\n\t\t\tlet element: HTMLElement | undefined;\r\n\t\t\tswitch (setting.type) {\r\n\t\t\t\tcase \"dropdown\":\r\n\t\t\t\t\telement = this.getDropdown(setting, currentValue);\r\n\t\t\t\t\tsettingInputs[key] = <HTMLSelectElement>element;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"number\":\r\n\t\t\t\t\telement = this.getNumber(setting, currentValue);\r\n\t\t\t\t\tsettingInputs[key] = <HTMLInputElement>element;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"color\":\r\n\t\t\t\t\telement = this.getColor(setting, currentValue);\r\n\t\t\t\t\tbreak;\r\n\t\t\t\tcase \"checkbox\":\r\n\t\t\t\t\telement = this.getCheckbox(setting, currentValue);\r\n\t\t\t\t\tsettingInputs[key] = <HTMLInputElement>element;\r\n\t\t\t\t\tbreak;\r\n\t\t\t\t// case \"text\":\r\n\t\t\t\t// \telement = this.getText(setting, currentValue);\r\n\t\t\t\t// \tbreak;\r\n\t\t\t}\r\n\r\n\t\t\tif (element) {\r\n\r\n\t\t\t\tlet line: HTMLDivElement;\r\n\t\t\t\tif (setting.name == prevName && prevLine) {\r\n\t\t\t\t\tline = prevLine;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tline = document.createElement(\"div\");\r\n\t\t\t\t\tline.className = \"am5-modal-table-row\";\r\n\t\t\t\t\ttable.appendChild(line);\r\n\r\n\t\t\t\t\tconst heading = document.createElement(\"div\");\r\n\t\t\t\t\theading.className = \"am5-modal-table-heading\";\r\n\t\t\t\t\theading.innerHTML = setting.name;\r\n\t\t\t\t\tline.appendChild(heading);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst cell = document.createElement(\"div\");\r\n\t\t\t\tcell.className = \"am5-modal-table-cell\";\r\n\t\t\t\tline.appendChild(cell);\r\n\t\t\t\tcell.appendChild(element);\r\n\r\n\t\t\t\tprevName = setting.name;\r\n\t\t\t\tprevLine = line;\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\t// Buttons\r\n\t\tconst saveButton = document.createElement(\"input\");\r\n\t\tsaveButton.type = \"button\";\r\n\t\tsaveButton.value = this._root.language.translateAny(\"Save\");\r\n\t\tsaveButton.className = \"am5-modal-button am5-modal-primary\";\r\n\t\tcontent.appendChild(saveButton);\r\n\r\n\t\t$utils.addEventListener(saveButton, \"click\", () => {\r\n\t\t\t$object.each(settingInputs, (key, element) => {\r\n\t\t\t\tif (element.type == \"checkbox\") {\r\n\t\t\t\t\tthis._updatedSettings[key] = (<HTMLInputElement>element).checked;\r\n\t\t\t\t}\r\n\t\t\t\telse if (element.type == \"number\") {\r\n\t\t\t\t\tthis._updatedSettings[key] = $type.toNumber(element.value);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tthis._updatedSettings[key] = element.value;\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\t$object.each(this._updatedSettings, (key, value) => {\r\n\t\t\t\tconst targetKey = (<string>key).split(\".\").pop();\r\n\t\t\t\tif ($type.isObject(value) && value.value) {\r\n\t\t\t\t\tif (value.setting && value.setting.target) {\r\n\t\t\t\t\t\tvalue.setting.target.set(targetKey, value.value);\r\n\t\t\t\t\t\tif (value.setting.additionalKeys) {\r\n\t\t\t\t\t\t\t$array.each(value.setting.additionalKeys, (additonalKey) => {\r\n\t\t\t\t\t\t\t\tvalue.setting.target.set(additonalKey, value.value);\r\n\t\t\t\t\t\t\t});\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\ttarget.set(targetKey, value.value);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\telse if (settingsWithTarget[targetKey!]) {\r\n\t\t\t\t\tsettingsWithTarget[targetKey!].target.set(targetKey, value);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\ttarget.set(targetKey, value);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (value.setting && value.setting.invalidateTarget) {\r\n\t\t\t\t\tvalue.setting.invalidateTarget.markDirtyValues();\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t\tthis.close();\r\n\t\t});\r\n\r\n\t\tconst cancelButton = document.createElement(\"input\");\r\n\t\tcancelButton.type = \"button\";\r\n\t\tcancelButton.value = this._root.language.translateAny(\"Cancel\");\r\n\t\tcancelButton.className = \"am5-modal-button am5-modal-scondary\";\r\n\t\tcontent.appendChild(cancelButton);\r\n\r\n\t\t$utils.addEventListener(cancelButton, \"click\", () => {\r\n\t\t\tthis.cancel();\r\n\t\t});\r\n\r\n\t\t// Open modal\r\n\t\tthis.open();\r\n\r\n\t}\r\n\r\n\tprivate getDropdown(setting: any, currentValue: any): HTMLSelectElement {\r\n\t\tconst element = document.createElement(\"select\");\r\n\t\t$array.each(setting.options, (option) => {\r\n\t\t\tif (option) {\r\n\t\t\t\tconst optionElement = document.createElement(\"option\");\r\n\t\t\t\tlet value;\r\n\t\t\t\tif ($type.isObject(option)) {\r\n\t\t\t\t\toptionElement.value = <string>((<any>option).value);\r\n\t\t\t\t\toptionElement.text = <string>((<any>option).text);\r\n\t\t\t\t\tvalue = ((<any>option).value);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\toptionElement.value = <string>option;\r\n\t\t\t\t\toptionElement.text = <string>option;\r\n\t\t\t\t\tvalue = option;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (value == currentValue) {\r\n\t\t\t\t\toptionElement.selected = true;\r\n\t\t\t\t}\r\n\r\n\t\t\t\telement.appendChild(optionElement);\r\n\t\t\t}\r\n\t\t});\r\n\t\treturn element;\r\n\t}\r\n\r\n\tprivate getNumber(_setting: any, currentValue: any): HTMLInputElement {\r\n\t\tconst element = document.createElement(\"input\");\r\n\t\telement.type = \"number\";\r\n\t\telement.value = currentValue;\r\n\t\telement.className = \"am5-modal-input-narrow\"\r\n\t\treturn element;\r\n\t}\r\n\r\n\tprivate getCheckbox(_setting: any, currentValue: any): HTMLInputElement {\r\n\t\tconst element = document.createElement(\"input\");\r\n\t\telement.type = \"checkbox\";\r\n\t\telement.checked = currentValue === true;\r\n\t\treturn element;\r\n\t}\r\n\r\n\tprivate getColor(setting: any, currentValue: any): HTMLDivElement {\r\n\t\tconst control = ColorControl.new(this.root, {\r\n\t\t\tstockChart: this.get(\"stockChart\"),\r\n\t\t\tuseOpacity: false\r\n\t\t});\r\n\t\tcontrol.setPrivate(\"color\", currentValue);\r\n\t\tcontrol.events.on(\"selected\", (ev) => {\r\n\t\t\tthis._updatedSettings[this._getSettingKey(setting)] = {\r\n\t\t\t\tvalue: ev.color,\r\n\t\t\t\tsetting: setting\r\n\t\t\t};\r\n\t\t});\r\n\t\tthis._disposers.push(control);\r\n\t\treturn control.getPrivate(\"button\")!;\r\n\t}\r\n\r\n\t/**\r\n\t * Closes the modal, saving settings.\r\n\t */\r\n\tpublic close(): void {\r\n\t\tsuper.close();\r\n\t\tthis.events.dispatch(\"done\", {\r\n\t\t\ttype: \"done\",\r\n\t\t\tsettings: this._updatedSettings,\r\n\t\t\tsettingsTarget: this._settingsTarget,\r\n\t\t\ttarget: this\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Closes the modal without applying any changes.\r\n\t */\r\n\tpublic cancel(): void {\r\n\t\tsuper.cancel();\r\n\t\tthis.events.dispatch(\"done\", {\r\n\t\t\ttype: \"done\",\r\n\t\t\tsettings: null,\r\n\t\t\ttarget: this\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Clears contents of the modal.\r\n\t */\r\n\tpublic clear(): void {\r\n\t\tconst content = this.getPrivate(\"content\");\r\n\t\tcontent.innerHTML = \"\";\r\n\t\tif (this._colorControl) {\r\n\t\t\tthis._colorControl.dispose();\r\n\t\t}\r\n\t}\r\n\r\n\tprivate _getSettingKey(setting: ISeriesEditableSetting): string {\r\n\t\treturn setting.id || setting.key;\r\n\t}\r\n\r\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StockChartDefaultTheme.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/StockChartDefaultTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AASzC;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAChD,SAAS,CAAC,iBAAiB;
|
|
1
|
+
{"version":3,"file":"StockChartDefaultTheme.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/StockChartDefaultTheme.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AASzC;;GAEG;AACH,qBAAa,sBAAuB,SAAQ,KAAK;IAChD,SAAS,CAAC,iBAAiB;CAg0C3B"}
|