@amcharts/amcharts5 5.6.2 → 5.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (326) hide show
  1. package/.internal/charts/stock/StockChart.d.ts +22 -0
  2. package/.internal/charts/stock/StockChart.d.ts.map +1 -1
  3. package/.internal/charts/stock/StockChart.js +64 -12
  4. package/.internal/charts/stock/StockChart.js.map +1 -1
  5. package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
  6. package/.internal/charts/stock/StockChartDefaultTheme.js +64 -2
  7. package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
  8. package/.internal/charts/stock/drawing/CalloutSeries.d.ts.map +1 -1
  9. package/.internal/charts/stock/drawing/CalloutSeries.js +36 -34
  10. package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -1
  11. package/.internal/charts/stock/drawing/DrawingSeries.d.ts +2 -0
  12. package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -1
  13. package/.internal/charts/stock/drawing/DrawingSeries.js +3 -0
  14. package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
  15. package/.internal/charts/stock/drawing/IconSeries.d.ts +1 -1
  16. package/.internal/charts/stock/drawing/IconSeries.d.ts.map +1 -1
  17. package/.internal/charts/stock/drawing/IconSeries.js +35 -33
  18. package/.internal/charts/stock/drawing/IconSeries.js.map +1 -1
  19. package/.internal/charts/stock/drawing/LabelSeries.d.ts +1 -1
  20. package/.internal/charts/stock/drawing/LabelSeries.d.ts.map +1 -1
  21. package/.internal/charts/stock/drawing/LabelSeries.js +35 -29
  22. package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
  23. package/.internal/charts/stock/indicators/AccumulationDistribution.d.ts.map +1 -1
  24. package/.internal/charts/stock/indicators/AccumulationDistribution.js +4 -3
  25. package/.internal/charts/stock/indicators/AccumulationDistribution.js.map +1 -1
  26. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts.map +1 -1
  27. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js +4 -3
  28. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js.map +1 -1
  29. package/.internal/charts/stock/indicators/Aroon.d.ts.map +1 -1
  30. package/.internal/charts/stock/indicators/Aroon.js +8 -6
  31. package/.internal/charts/stock/indicators/Aroon.js.map +1 -1
  32. package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts.map +1 -1
  33. package/.internal/charts/stock/indicators/AwesomeOscillator.js +6 -4
  34. package/.internal/charts/stock/indicators/AwesomeOscillator.js.map +1 -1
  35. package/.internal/charts/stock/indicators/BollingerBands.d.ts.map +1 -1
  36. package/.internal/charts/stock/indicators/BollingerBands.js +9 -7
  37. package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -1
  38. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts +2 -3
  39. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.d.ts.map +1 -1
  40. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js +0 -6
  41. package/.internal/charts/stock/indicators/ChaikinMoneyFlow.js.map +1 -1
  42. package/.internal/charts/stock/indicators/ChaikinOscillator.js +2 -2
  43. package/.internal/charts/stock/indicators/ChaikinOscillator.js.map +1 -1
  44. package/.internal/charts/stock/indicators/ChartIndicator.d.ts.map +1 -1
  45. package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
  46. package/.internal/charts/stock/indicators/DisparityIndex.d.ts.map +1 -1
  47. package/.internal/charts/stock/indicators/DisparityIndex.js +4 -3
  48. package/.internal/charts/stock/indicators/DisparityIndex.js.map +1 -1
  49. package/.internal/charts/stock/indicators/Indicator.d.ts +2 -1
  50. package/.internal/charts/stock/indicators/Indicator.d.ts.map +1 -1
  51. package/.internal/charts/stock/indicators/Indicator.js +13 -8
  52. package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
  53. package/.internal/charts/stock/indicators/MACD.js +1 -1
  54. package/.internal/charts/stock/indicators/MACD.js.map +1 -1
  55. package/.internal/charts/stock/indicators/MovingAverage.js +1 -1
  56. package/.internal/charts/stock/indicators/MovingAverage.js.map +1 -1
  57. package/.internal/charts/stock/indicators/MovingAverageDeviation.js +1 -1
  58. package/.internal/charts/stock/indicators/MovingAverageDeviation.js.map +1 -1
  59. package/.internal/charts/stock/indicators/MovingAverageEnvelope.js +1 -1
  60. package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -1
  61. package/.internal/charts/stock/indicators/OnBalanceVolume.d.ts +0 -1
  62. package/.internal/charts/stock/indicators/OnBalanceVolume.d.ts.map +1 -1
  63. package/.internal/charts/stock/indicators/OnBalanceVolume.js +0 -6
  64. package/.internal/charts/stock/indicators/OnBalanceVolume.js.map +1 -1
  65. package/.internal/charts/stock/indicators/OverboughtOversold.d.ts +0 -1
  66. package/.internal/charts/stock/indicators/OverboughtOversold.d.ts.map +1 -1
  67. package/.internal/charts/stock/indicators/OverboughtOversold.js +0 -8
  68. package/.internal/charts/stock/indicators/OverboughtOversold.js.map +1 -1
  69. package/.internal/charts/stock/indicators/RelativeStrengthIndex.js +1 -1
  70. package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -1
  71. package/.internal/charts/stock/indicators/StochasticMomentumIndex.js +1 -1
  72. package/.internal/charts/stock/indicators/StochasticMomentumIndex.js.map +1 -1
  73. package/.internal/charts/stock/indicators/StochasticOscillator.js +1 -1
  74. package/.internal/charts/stock/indicators/StochasticOscillator.js.map +1 -1
  75. package/.internal/charts/stock/indicators/Trix.js +1 -1
  76. package/.internal/charts/stock/indicators/Trix.js.map +1 -1
  77. package/.internal/charts/stock/indicators/VWAP.d.ts +0 -1
  78. package/.internal/charts/stock/indicators/VWAP.d.ts.map +1 -1
  79. package/.internal/charts/stock/indicators/VWAP.js +20 -22
  80. package/.internal/charts/stock/indicators/VWAP.js.map +1 -1
  81. package/.internal/charts/stock/indicators/Volume.js +1 -1
  82. package/.internal/charts/stock/indicators/Volume.js.map +1 -1
  83. package/.internal/charts/stock/indicators/VolumeProfile.d.ts +85 -0
  84. package/.internal/charts/stock/indicators/VolumeProfile.d.ts.map +1 -0
  85. package/.internal/charts/stock/indicators/VolumeProfile.js +458 -0
  86. package/.internal/charts/stock/indicators/VolumeProfile.js.map +1 -0
  87. package/.internal/charts/stock/toolbar/DataSaveControl.d.ts +75 -0
  88. package/.internal/charts/stock/toolbar/DataSaveControl.d.ts.map +1 -0
  89. package/.internal/charts/stock/toolbar/DataSaveControl.js +204 -0
  90. package/.internal/charts/stock/toolbar/DataSaveControl.js.map +1 -0
  91. package/.internal/charts/stock/toolbar/DrawingControl.d.ts.map +1 -1
  92. package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -1
  93. package/.internal/charts/stock/toolbar/Dropdown.d.ts.map +1 -1
  94. package/.internal/charts/stock/toolbar/Dropdown.js +5 -1
  95. package/.internal/charts/stock/toolbar/Dropdown.js.map +1 -1
  96. package/.internal/charts/stock/toolbar/DropdownList.d.ts +29 -0
  97. package/.internal/charts/stock/toolbar/DropdownList.d.ts.map +1 -1
  98. package/.internal/charts/stock/toolbar/DropdownList.js +19 -2
  99. package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -1
  100. package/.internal/charts/stock/toolbar/DropdownListControl.d.ts +29 -0
  101. package/.internal/charts/stock/toolbar/DropdownListControl.d.ts.map +1 -1
  102. package/.internal/charts/stock/toolbar/DropdownListControl.js +2 -1
  103. package/.internal/charts/stock/toolbar/DropdownListControl.js.map +1 -1
  104. package/.internal/charts/stock/toolbar/IndicatorControl.d.ts +1 -1
  105. package/.internal/charts/stock/toolbar/IndicatorControl.d.ts.map +1 -1
  106. package/.internal/charts/stock/toolbar/IndicatorControl.js +10 -1
  107. package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
  108. package/.internal/charts/stock/toolbar/PeriodSelector.js +1 -1
  109. package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -1
  110. package/.internal/charts/stock/toolbar/SettingsControl.d.ts +21 -0
  111. package/.internal/charts/stock/toolbar/SettingsControl.d.ts.map +1 -1
  112. package/.internal/charts/stock/toolbar/SettingsControl.js +33 -3
  113. package/.internal/charts/stock/toolbar/SettingsControl.js.map +1 -1
  114. package/.internal/charts/stock/toolbar/StockControl.d.ts.map +1 -1
  115. package/.internal/charts/stock/toolbar/StockControl.js +1 -0
  116. package/.internal/charts/stock/toolbar/StockControl.js.map +1 -1
  117. package/.internal/charts/stock/toolbar/StockIcons.d.ts.map +1 -1
  118. package/.internal/charts/stock/toolbar/StockIcons.js +1 -0
  119. package/.internal/charts/stock/toolbar/StockIcons.js.map +1 -1
  120. package/.internal/charts/xy/XYCursor.d.ts +2 -1
  121. package/.internal/charts/xy/XYCursor.d.ts.map +1 -1
  122. package/.internal/charts/xy/XYCursor.js.map +1 -1
  123. package/.internal/charts/xy/axes/Axis.d.ts +5 -0
  124. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  125. package/.internal/charts/xy/axes/Axis.js +111 -109
  126. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  127. package/.internal/charts/xy/axes/AxisRendererX.d.ts.map +1 -1
  128. package/.internal/charts/xy/axes/AxisRendererX.js +4 -1
  129. package/.internal/charts/xy/axes/AxisRendererX.js.map +1 -1
  130. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  131. package/.internal/charts/xy/axes/DateAxis.js +40 -35
  132. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  133. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts +13 -1
  134. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
  135. package/.internal/charts/xy/axes/GaplessDateAxis.js +116 -75
  136. package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
  137. package/.internal/charts/xy/series/XYSeries.d.ts +1 -0
  138. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  139. package/.internal/charts/xy/series/XYSeries.js +4 -2
  140. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  141. package/.internal/core/Classes.d.ts +4 -0
  142. package/.internal/core/Classes.d.ts.map +1 -1
  143. package/.internal/core/Classes.js.map +1 -1
  144. package/.internal/core/Registry.js +1 -1
  145. package/.internal/core/Registry.js.map +1 -1
  146. package/.internal/core/render/Series.d.ts.map +1 -1
  147. package/.internal/core/render/Series.js +3 -0
  148. package/.internal/core/render/Series.js.map +1 -1
  149. package/.internal/core/render/SpriteResizer.d.ts +1 -1
  150. package/.internal/core/render/SpriteResizer.d.ts.map +1 -1
  151. package/.internal/core/render/SpriteResizer.js.map +1 -1
  152. package/.internal/core/render/backend/CanvasRenderer.d.ts +1 -0
  153. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  154. package/.internal/core/render/backend/CanvasRenderer.js +4 -0
  155. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  156. package/.internal/core/render/backend/Renderer.d.ts +1 -0
  157. package/.internal/core/render/backend/Renderer.d.ts.map +1 -1
  158. package/.internal/core/render/backend/Renderer.js.map +1 -1
  159. package/.internal/core/util/Time.d.ts +5 -0
  160. package/.internal/core/util/Time.d.ts.map +1 -1
  161. package/.internal/core/util/Time.js +10 -0
  162. package/.internal/core/util/Time.js.map +1 -1
  163. package/.internal/core/util/Utils.d.ts +0 -8
  164. package/.internal/core/util/Utils.d.ts.map +1 -1
  165. package/.internal/core/util/Utils.js +0 -24
  166. package/.internal/core/util/Utils.js.map +1 -1
  167. package/.internal/plugins/json/Classes-script.d.ts +4 -0
  168. package/.internal/plugins/json/Classes-script.d.ts.map +1 -1
  169. package/.internal/plugins/json/Classes-script.js +2 -0
  170. package/.internal/plugins/json/Classes-script.js.map +1 -1
  171. package/.internal/plugins/json/Classes.d.ts +4 -0
  172. package/.internal/plugins/json/Classes.d.ts.map +1 -1
  173. package/.internal/plugins/json/Classes.js +2 -0
  174. package/.internal/plugins/json/Classes.js.map +1 -1
  175. package/.internal/plugins/json/Serializer.d.ts +6 -0
  176. package/.internal/plugins/json/Serializer.d.ts.map +1 -1
  177. package/.internal/plugins/json/Serializer.js +3 -2
  178. package/.internal/plugins/json/Serializer.js.map +1 -1
  179. package/CHANGELOG.md +37 -0
  180. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  181. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  182. package/examples/javascript/flow-chord/package.json +1 -1
  183. package/examples/javascript/flow-chord-directed/package.json +1 -1
  184. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  185. package/examples/javascript/flow-sankey/package.json +1 -1
  186. package/examples/javascript/gauge/package.json +1 -1
  187. package/examples/javascript/gauge-bands/package.json +1 -1
  188. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  189. package/examples/javascript/hierarchy-pack/package.json +1 -1
  190. package/examples/javascript/hierarchy-partition/package.json +1 -1
  191. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  192. package/examples/javascript/hierarchy-tree/package.json +1 -1
  193. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  194. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  195. package/examples/javascript/jest/package.json +1 -1
  196. package/examples/javascript/json-pie/package.json +1 -1
  197. package/examples/javascript/json-xy/package.json +1 -1
  198. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  199. package/examples/javascript/map-clustered-points/package.json +1 -1
  200. package/examples/javascript/map-day-and-night/package.json +1 -1
  201. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  202. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  203. package/examples/javascript/map-with-bubbles/package.json +1 -1
  204. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  205. package/examples/javascript/misc-40-charts/package.json +1 -1
  206. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  207. package/examples/javascript/pie-chart/package.json +1 -1
  208. package/examples/javascript/pie-donut-chart/package.json +1 -1
  209. package/examples/javascript/pie-variable-radius/package.json +1 -1
  210. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  211. package/examples/javascript/radar-heat-map/package.json +1 -1
  212. package/examples/javascript/radar-line/package.json +1 -1
  213. package/examples/javascript/radar-time-line/package.json +1 -1
  214. package/examples/javascript/sliced-funnel/package.json +1 -1
  215. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  216. package/examples/javascript/sliced-pyramid/package.json +1 -1
  217. package/examples/javascript/stock-chart/package.json +1 -1
  218. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  219. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  220. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  221. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  222. package/examples/javascript/stock-chart-live/package.json +1 -1
  223. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  224. package/examples/javascript/venn-diagram/package.json +1 -1
  225. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  226. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  227. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  228. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  229. package/examples/javascript/xy-bubble/package.json +1 -1
  230. package/examples/javascript/xy-candlestick/package.json +1 -1
  231. package/examples/javascript/xy-clustered-column/package.json +1 -1
  232. package/examples/javascript/xy-column/package.json +1 -1
  233. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  234. package/examples/javascript/xy-data-grouping/package.json +1 -1
  235. package/examples/javascript/xy-draggable-range/package.json +1 -1
  236. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  237. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  238. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  239. package/examples/javascript/xy-line/package.json +1 -1
  240. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  241. package/examples/javascript/xy-live-data/package.json +1 -1
  242. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  243. package/examples/javascript/xy-ohlc/package.json +1 -1
  244. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  245. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  246. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  247. package/examples/javascript/xy-stacked-column/package.json +1 -1
  248. package/examples/javascript/xy-stacked-step/package.json +1 -1
  249. package/examples/javascript/xy-stock/package.json +1 -1
  250. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  251. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  252. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  253. package/examples/typescript/flow-chord/package.json +1 -1
  254. package/examples/typescript/flow-chord-directed/package.json +1 -1
  255. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  256. package/examples/typescript/flow-sankey/package.json +1 -1
  257. package/examples/typescript/gauge/package.json +1 -1
  258. package/examples/typescript/gauge-bands/package.json +1 -1
  259. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  260. package/examples/typescript/hierarchy-pack/package.json +1 -1
  261. package/examples/typescript/hierarchy-partition/package.json +1 -1
  262. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  263. package/examples/typescript/hierarchy-tree/package.json +1 -1
  264. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  265. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  266. package/examples/typescript/jest/package.json +1 -1
  267. package/examples/typescript/json-pie/package.json +1 -1
  268. package/examples/typescript/json-xy/package.json +1 -1
  269. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  270. package/examples/typescript/map-clustered-points/package.json +1 -1
  271. package/examples/typescript/map-day-and-night/package.json +1 -1
  272. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  273. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  274. package/examples/typescript/map-with-bubbles/package.json +1 -1
  275. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  276. package/examples/typescript/misc-40-charts/package.json +1 -1
  277. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  278. package/examples/typescript/pie-chart/package.json +1 -1
  279. package/examples/typescript/pie-donut-chart/package.json +1 -1
  280. package/examples/typescript/pie-variable-radius/package.json +1 -1
  281. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  282. package/examples/typescript/radar-heat-map/package.json +1 -1
  283. package/examples/typescript/radar-line/package.json +1 -1
  284. package/examples/typescript/radar-time-line/package.json +1 -1
  285. package/examples/typescript/sliced-funnel/package.json +1 -1
  286. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  287. package/examples/typescript/sliced-pyramid/package.json +1 -1
  288. package/examples/typescript/stock-chart/package.json +1 -1
  289. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  290. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  291. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  292. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  293. package/examples/typescript/stock-chart-live/package.json +1 -1
  294. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  295. package/examples/typescript/venn-diagram/package.json +1 -1
  296. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  297. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  298. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  299. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  300. package/examples/typescript/xy-bubble/package.json +1 -1
  301. package/examples/typescript/xy-candlestick/package.json +1 -1
  302. package/examples/typescript/xy-clustered-column/package.json +1 -1
  303. package/examples/typescript/xy-column/package.json +1 -1
  304. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  305. package/examples/typescript/xy-data-grouping/package.json +1 -1
  306. package/examples/typescript/xy-draggable-range/package.json +1 -1
  307. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  308. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  309. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  310. package/examples/typescript/xy-line/package.json +1 -1
  311. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  312. package/examples/typescript/xy-live-data/package.json +1 -1
  313. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  314. package/examples/typescript/xy-ohlc/package.json +1 -1
  315. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  316. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  317. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  318. package/examples/typescript/xy-stacked-column/package.json +1 -1
  319. package/examples/typescript/xy-stacked-step/package.json +1 -1
  320. package/examples/typescript/xy-stock/package.json +1 -1
  321. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  322. package/package.json +1 -1
  323. package/stock.d.ts +2 -0
  324. package/stock.d.ts.map +1 -1
  325. package/stock.js +2 -0
  326. package/stock.js.map +1 -1
@@ -33,14 +33,26 @@ export class GaplessDateAxis extends DateAxis {
33
33
  writable: true,
34
34
  value: []
35
35
  });
36
+ Object.defineProperty(this, "_customDates", {
37
+ enumerable: true,
38
+ configurable: true,
39
+ writable: true,
40
+ value: void 0
41
+ });
36
42
  }
37
43
  _afterNew() {
38
44
  this.valueFields.push("date");
39
45
  super._afterNew();
40
46
  }
47
+ _getDates() {
48
+ if (this._customDates) {
49
+ return this._customDates;
50
+ }
51
+ return this._dates;
52
+ }
41
53
  _updateDates(date, series) {
42
54
  if (!series.get("ignoreMinMax")) {
43
- const dates = this._dates;
55
+ const dates = this._getDates();
44
56
  const result = $array.getSortedIndex(dates, (x) => $order.compare(x, date));
45
57
  if (!result.found) {
46
58
  $array.insertIndex(dates, result.index, date);
@@ -48,49 +60,51 @@ export class GaplessDateAxis extends DateAxis {
48
60
  }
49
61
  }
50
62
  _updateAllDates() {
51
- const dates = this._dates;
52
- dates.length = 0;
53
- $array.each(this.series, (series) => {
54
- let field = "valueX";
55
- if (series.get("yAxis") == this) {
56
- field = "valueY";
57
- }
58
- $array.each(series.dataItems, (dataItem) => {
59
- let value = dataItem.get(field);
60
- if ($type.isNumber(value)) {
61
- if (dataItem.open) {
62
- this._updateDates(dataItem.open[field], series);
63
- }
63
+ if (!this._customDates) {
64
+ const dates = this._dates;
65
+ dates.length = 0;
66
+ $array.each(this.series, (series) => {
67
+ let field = "valueX";
68
+ if (series.get("yAxis") == this) {
69
+ field = "valueY";
64
70
  }
71
+ $array.each(series.dataItems, (dataItem) => {
72
+ let value = dataItem.get(field);
73
+ if ($type.isNumber(value)) {
74
+ if (dataItem.open) {
75
+ this._updateDates(dataItem.open[field], series);
76
+ }
77
+ }
78
+ });
65
79
  });
66
- });
67
- const extraMax = this.get("extraMax", 0);
68
- const extraMin = this.get("extraMin", 0);
69
- const len = dates.length;
70
- const baseInterval = this.getPrivate("baseInterval");
71
- const timeUnit = baseInterval.timeUnit;
72
- const firstDay = this._root.locale.firstDayOfWeek;
73
- const utc = this._root.utc;
74
- const timezone = this._root.timezone;
75
- if (extraMax > 0) {
76
- const extra = len * extraMax;
77
- let time = dates[len - 1];
78
- if ($type.isNumber(time)) {
79
- for (let i = len - 1; i < len + extra; i++) {
80
- time += $time.getDuration(timeUnit, baseInterval.count * this._getM(timeUnit));
81
- time = $time.round(new Date(time), timeUnit, baseInterval.count, firstDay, utc, undefined, timezone).getTime();
82
- dates.push(time);
80
+ const extraMax = this.get("extraMax", 0);
81
+ const extraMin = this.get("extraMin", 0);
82
+ let len = dates.length;
83
+ const baseInterval = this.getPrivate("baseInterval");
84
+ const baseCount = baseInterval.count;
85
+ const timeUnit = baseInterval.timeUnit;
86
+ if (extraMax > 0) {
87
+ const extra = len * extraMax;
88
+ let time = dates[len - 1];
89
+ if ($type.isNumber(time)) {
90
+ for (let i = len - 1; i < len + extra; i++) {
91
+ time += $time.getDuration(timeUnit, baseCount * this._getM(timeUnit));
92
+ //time = $time.round(new Date(time), timeUnit, baseInterval.count, firstDay, utc, undefined, timezone).getTime();
93
+ time = $time.roun(time, timeUnit, baseCount, this._root);
94
+ dates.push(time);
95
+ }
83
96
  }
84
97
  }
85
- }
86
- if (extraMin > 0) {
87
- const extra = len * extraMin;
88
- let time = dates[0];
89
- if ($type.isNumber(time)) {
90
- for (let i = 0; i < extra; i++) {
91
- time -= $time.getDuration(timeUnit, baseInterval.count);
92
- time = $time.round(new Date(time), timeUnit, baseInterval.count, firstDay, utc, undefined, timezone).getTime();
93
- dates.unshift(time);
98
+ if (extraMin > 0) {
99
+ const extra = len * extraMin;
100
+ let time = dates[0];
101
+ if ($type.isNumber(time)) {
102
+ for (let i = 0; i < extra; i++) {
103
+ time -= $time.getDuration(timeUnit, baseCount);
104
+ //time = $time.round(new Date(time), timeUnit, baseCount, firstDay, utc, undefined, timezone).getTime();
105
+ time = $time.roun(time, timeUnit, baseCount, this._root);
106
+ dates.unshift(time);
107
+ }
94
108
  }
95
109
  }
96
110
  }
@@ -102,7 +116,7 @@ export class GaplessDateAxis extends DateAxis {
102
116
  * @return Relative position
103
117
  */
104
118
  valueToPosition(value) {
105
- const dates = this._dates;
119
+ const dates = this._getDates();
106
120
  const startLocation = this.get("startLocation", 0);
107
121
  const endLocation = this.get("endLocation", 1);
108
122
  const len = dates.length - startLocation - (1 - endLocation);
@@ -133,7 +147,7 @@ export class GaplessDateAxis extends DateAxis {
133
147
  * @return Index
134
148
  */
135
149
  valueToIndex(value) {
136
- const dates = this._dates;
150
+ const dates = this._getDates();
137
151
  const result = $array.getSortedIndex(dates, (x) => $order.compare(x, value));
138
152
  let index = result.index;
139
153
  if (result.found) {
@@ -156,7 +170,8 @@ export class GaplessDateAxis extends DateAxis {
156
170
  positionToValue(position) {
157
171
  const startLocation = this.get("startLocation", 0);
158
172
  const endLocation = this.get("endLocation", 1);
159
- let len = Math.round(this._dates.length - startLocation - (1 - endLocation));
173
+ const dates = this._getDates();
174
+ let len = Math.round(dates.length - startLocation - (1 - endLocation));
160
175
  let index = position * len;
161
176
  let findex = Math.floor(index);
162
177
  if (findex < 0) {
@@ -165,10 +180,31 @@ export class GaplessDateAxis extends DateAxis {
165
180
  if (findex > len - 1) {
166
181
  findex = len - 1;
167
182
  }
168
- return this._dates[findex] + (index - findex + startLocation) * this.baseDuration();
183
+ return dates[findex] + (index - findex + startLocation) * this.baseDuration();
169
184
  }
170
185
  _fixZoomFactor() {
171
- this.setPrivateRaw("maxZoomFactor", this._dates.length - this.get("startLocation", 0) - (1 - this.get("endLocation", 1)));
186
+ this.setPrivateRaw("maxZoomFactor", this._getDates().length - this.get("startLocation", 0) - (1 - this.get("endLocation", 1)));
187
+ }
188
+ /**
189
+ * Zooms the axis to specific `start` and `end` dates.
190
+ *
191
+ * Optional `duration` specifies duration of zoom animation in milliseconds.
192
+ *
193
+ * @param start Start Date
194
+ * @param end End Date
195
+ * @param duration Duration in milliseconds
196
+ */
197
+ zoomToDates(start, end, duration) {
198
+ const dates = this._getDates();
199
+ const len = dates.length;
200
+ let result = $array.getSortedIndex(dates, (x) => $order.compare(x, start.getTime()));
201
+ let startValue = dates[Math.min(result.index, len - 1)];
202
+ result = $array.getSortedIndex(dates, (x) => $order.compare(x, end.getTime()));
203
+ let endValue = dates[result.index];
204
+ if (result.index >= len) {
205
+ endValue = dates[len - 1] + this.baseDuration();
206
+ }
207
+ this.zoomToValues(startValue, endValue, duration);
172
208
  }
173
209
  /**
174
210
  * Zooms the axis to specific `start` and `end` values.
@@ -194,10 +230,10 @@ export class GaplessDateAxis extends DateAxis {
194
230
  this._seriesValuesDirty = false;
195
231
  this._updateAllDates();
196
232
  }
197
- const firstDay = this._root.locale.firstDayOfWeek;
198
- const utc = this._root.utc;
199
- const timezone = this._root.timezone;
200
- const dates = this._dates;
233
+ const root = this._root;
234
+ const utc = root.utc;
235
+ const timezone = root.timezone;
236
+ const dates = this._getDates();
201
237
  const renderer = this.get("renderer");
202
238
  const len = dates.length;
203
239
  const baseDuration = this.baseDuration();
@@ -232,11 +268,12 @@ export class GaplessDateAxis extends DateAxis {
232
268
  this._intervalDuration = intervalDuration;
233
269
  const timeUnit = gridInterval.timeUnit;
234
270
  const formats = this.get("dateFormats");
235
- let firstDate = new Date();
236
- if (this._dates[0]) {
237
- firstDate = new Date(this._dates[0]);
271
+ let firstTime = Date.now();
272
+ if (dates[0]) {
273
+ firstTime = dates[0];
238
274
  }
239
- let value = $time.round(new Date(this.getPrivate("selectionMin", 0)), timeUnit, gridInterval.count, firstDay, utc, firstDate, timezone).getTime();
275
+ //let value = $time.round(new Date(this.getPrivate("selectionMin", 0)), timeUnit, gridInterval.count, firstDay, utc, firstDate, timezone).getTime();
276
+ let value = $time.roun(this.getPrivate("selectionMin", 0), timeUnit, gridInterval.count, root, firstTime);
240
277
  const minorLabelsEnabled = renderer.get("minorLabelsEnabled");
241
278
  const minorGridEnabled = renderer.get("minorGridEnabled", minorLabelsEnabled);
242
279
  let minorGridInterval;
@@ -293,7 +330,7 @@ export class GaplessDateAxis extends DateAxis {
293
330
  this._createAssets(dataItem, []);
294
331
  const label = dataItem.get("label");
295
332
  if (label) {
296
- label.set("text", this._root.dateFormatter.format(date, format));
333
+ label.set("text", root.dateFormatter.format(date, format));
297
334
  }
298
335
  this._toggleDataItem(dataItem, true);
299
336
  let count = gridInterval.count;
@@ -307,11 +344,12 @@ export class GaplessDateAxis extends DateAxis {
307
344
  timeUnit2 = "day";
308
345
  }
309
346
  if (count > 1 || gridInterval.timeUnit == "week") {
310
- let labelEndValue = $time.round(new Date(value), timeUnit2, 1, firstDay, utc, undefined, timezone).getTime() + $time.getDuration(timeUnit2, this._getM(timeUnit2));
347
+ //let labelEndValue = $time.round(new Date(value), timeUnit2, 1, firstDay, utc, undefined, timezone).getTime() + $time.getDuration(timeUnit2, this._getM(timeUnit2));
348
+ let labelEndValue = $time.roun(value, timeUnit2, 1, root) + $time.getDuration(timeUnit2, this._getM(timeUnit2));
311
349
  let index = this.valueToIndex(labelEndValue);
312
- labelEndValue = this._dates[index];
350
+ labelEndValue = dates[index];
313
351
  if (labelEndValue == value) {
314
- let next = this._dates[index + 1];
352
+ let next = dates[index + 1];
315
353
  if (next) {
316
354
  labelEndValue = next;
317
355
  }
@@ -373,13 +411,12 @@ export class GaplessDateAxis extends DateAxis {
373
411
  _addMinorGrid(startValue, endValue, minorDuration, gridInterval) {
374
412
  const minorFormats = this.get("minorDateFormats", this.get("dateFormats"));
375
413
  const mTimeUnit = gridInterval.timeUnit;
376
- const firstDay = this._root.locale.firstDayOfWeek;
377
- const utc = this._root.utc;
378
- const timezone = this._root.timezone;
379
414
  let value = startValue + $time.getDuration(mTimeUnit, this._getM(mTimeUnit));
380
- value = $time.round(new Date(value), mTimeUnit, 1, firstDay, utc, undefined, timezone).getTime();
415
+ //value = $time.round(new Date(value), mTimeUnit, 1, firstDay, utc, undefined, timezone).getTime();
416
+ value = $time.roun(value, mTimeUnit, 1, this._root);
381
417
  let maxValue = endValue - minorDuration * 0.5;
382
418
  let minorSelectedItems = this._getIndexes(value, maxValue, gridInterval, value);
419
+ const dates = this._getDates();
383
420
  $array.each(minorSelectedItems, (index) => {
384
421
  let minorDataItem;
385
422
  if (this.minorDataItems.length < this._m + 1) {
@@ -390,7 +427,7 @@ export class GaplessDateAxis extends DateAxis {
390
427
  else {
391
428
  minorDataItem = this.minorDataItems[this._m];
392
429
  }
393
- value = this._dates[index];
430
+ value = dates[index];
394
431
  minorDataItem.setRaw("value", value);
395
432
  minorDataItem.setRaw("endValue", value + minorDuration);
396
433
  minorDataItem.setRaw("index", index);
@@ -415,22 +452,23 @@ export class GaplessDateAxis extends DateAxis {
415
452
  const items = [];
416
453
  const timeUnit = interval.timeUnit;
417
454
  const count = interval.count;
455
+ const mmm = this._getM(timeUnit);
418
456
  const baseInterval = this.getPrivate("baseInterval");
419
- const firstDay = this._root.locale.firstDayOfWeek;
420
- const utc = this._root.utc;
421
- const timezone = this._root.timezone;
457
+ const root = this._root;
458
+ const dates = this._getDates();
422
459
  let c = count - 1;
423
460
  let previousValue = -Infinity;
424
- let duration = $time.getDuration(timeUnit, this._getM(timeUnit));
425
- let fullDuration = $time.getDuration(timeUnit, count * this._getM(timeUnit));
461
+ let duration = $time.getDuration(timeUnit, mmm);
462
+ let fullDuration = $time.getDuration(timeUnit, count * mmm);
426
463
  let originalValue = value;
427
464
  if (timeUnit == "day") {
428
465
  value = firstValue;
429
466
  }
430
467
  while (value <= maxValue) {
431
- value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();
468
+ //value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();
469
+ value = $time.roun(value, timeUnit, count, root);
432
470
  let index = this.valueToIndex(value);
433
- let realValue = this._dates[index];
471
+ let realValue = dates[index];
434
472
  if (timeUnit == "day" && baseInterval.timeUnit == "day") {
435
473
  if (this._hasDate(value)) {
436
474
  c++;
@@ -442,12 +480,13 @@ export class GaplessDateAxis extends DateAxis {
442
480
  c = 0;
443
481
  }
444
482
  value += duration;
445
- value = $time.round(new Date(value), timeUnit, 1, firstDay, utc, undefined, timezone).getTime();
483
+ //value = $time.round(new Date(value), timeUnit, 1, firstDay, utc, undefined, timezone).getTime();
484
+ value = $time.roun(value, timeUnit, 1, root);
446
485
  }
447
486
  else {
448
487
  if (realValue < value) {
449
- for (let i = index, len = this._dates.length; i < len; i++) {
450
- realValue = this._dates[i];
488
+ for (let i = index, len = dates.length; i < len; i++) {
489
+ realValue = dates[i];
451
490
  if (realValue >= value) {
452
491
  index = i;
453
492
  break;
@@ -456,11 +495,13 @@ export class GaplessDateAxis extends DateAxis {
456
495
  }
457
496
  $array.move(items, index);
458
497
  value += fullDuration;
459
- value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();
498
+ //value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();
499
+ value = $time.roun(value, timeUnit, count, root);
460
500
  }
461
501
  if (value == previousValue) {
462
502
  value += fullDuration + duration;
463
- value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();
503
+ //value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();
504
+ value = $time.roun(value, timeUnit, count, root);
464
505
  }
465
506
  if (value == previousValue) {
466
507
  break;
@@ -470,7 +511,7 @@ export class GaplessDateAxis extends DateAxis {
470
511
  return items;
471
512
  }
472
513
  _hasDate(time) {
473
- const result = $array.getSortedIndex(this._dates, (date) => {
514
+ const result = $array.getSortedIndex(this._getDates(), (date) => {
474
515
  return $order.compareNumber(date, time);
475
516
  });
476
517
  return result.found;
@@ -1 +1 @@
1
- {"version":3,"file":"GaplessDateAxis.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/axes/GaplessDateAxis.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,QAAQ,EAA2E,MAAM,YAAY,CAAC;AAC/G,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAG1D,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAA;AAClD,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AACjD,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AAuBjD;;;;;;GAMG;AACH,MAAM,OAAO,eAAwC,SAAQ,QAAW;IAAxE;;QASC;;;;mBAA+B,CAAC;WAAC;QACjC;;;;mBAAuB,CAAC;WAAC;QAOzB;;;;mBAAkC,EAAE;WAAC;IA2hBtC,CAAC;IAhiBO,SAAS;QACf,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC9B,KAAK,CAAC,SAAS,EAAE,CAAC;IACnB,CAAC;IAIS,YAAY,CAAC,IAAY,EAAE,MAAgB;QACpD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;YAChC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC;YAC5E,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;gBAClB,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;aAC9C;SACD;IACF,CAAC;IAEM,eAAe;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAEjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;YACnC,IAAI,KAAK,GAAG,QAAQ,CAAC;YACrB,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE;gBAChC,KAAK,GAAG,QAAQ,CAAA;aAChB;YACD,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;gBAC1C,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAY,CAAC,CAAC;gBACvC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBAC1B,IAAI,QAAQ,CAAC,IAAI,EAAE;wBAClB,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAK,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC;qBACjD;iBACD;YACF,CAAC,CAAC,CAAA;QACH,CAAC,CAAC,CAAA;QAEF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QACzC,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;QAEzC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;QAEzB,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;QAEvC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAErC,IAAI,QAAQ,GAAG,CAAC,EAAE;YACjB,MAAM,KAAK,GAAG,GAAG,GAAG,QAAQ,CAAC;YAC7B,IAAI,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;YAC1B,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACzB,KAAK,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC3C,IAAI,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAC/E,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC/G,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;iBACjB;aACD;SAED;QAED,IAAI,QAAQ,GAAG,CAAC,EAAE;YACjB,MAAM,KAAK,GAAG,GAAG,GAAG,QAAQ,CAAC;YAC7B,IAAI,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACpB,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;gBACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE;oBAC/B,IAAI,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;oBACxD,IAAI,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;oBAC/G,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;iBACpB;aACD;SACD;IACF,CAAC;IAED;;;;;OAKG;IACI,eAAe,CAAC,KAAa;QACnC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAC1B,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC;QAC7D,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAC7E,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAEzB,IAAI,MAAM,CAAC,KAAK,EAAE;YACjB,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,GAAG,GAAG,CAAC;SACrC;aACI;YACJ,IAAI,KAAK,GAAG,CAAC,EAAE;gBACd,KAAK,IAAI,CAAC,CAAC;aACX;YAED,IAAI,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;YAE7B,IAAI,CAAC,GAAG,CAAC,CAAC;YACV,IAAI,SAAS,GAAG,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE;gBAC3D,CAAC,GAAG,SAAS,GAAG,KAAK,CAAC;aACtB;iBACI;gBACJ,CAAC,GAAG,KAAK,GAAG,SAAS,CAAC;aACtB;YAED,OAAO,CAAC,KAAK,GAAG,aAAa,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,GAAG,GAAG,CAAC;SACrE;IACF,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,KAAa;QAChC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;QAE1B,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAC7E,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAEzB,IAAI,MAAM,CAAC,KAAK,EAAE;YACjB,OAAO,KAAK,CAAC;SACb;aACI;YACJ,IAAI,KAAK,GAAG,CAAC,EAAE;gBACd,KAAK,IAAI,CAAC,CAAC;aACX;YACD,OAAO,KAAK,CAAC;SACb;IACF,CAAC;IAED;;;;;;OAMG;IACI,eAAe,CAAC,QAAgB;QACtC,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QACnD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QAC/C,IAAI,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,aAAa,GAAG,CAAC,CAAC,GAAG,WAAW,CAAC,CAAC,CAAC;QAC7E,IAAI,KAAK,GAAG,QAAQ,GAAG,GAAG,CAAC;QAC3B,IAAI,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,MAAM,GAAG,CAAC,EAAE;YACf,MAAM,GAAG,CAAC,CAAC;SACX;QAED,IAAI,MAAM,GAAG,GAAG,GAAG,CAAC,EAAE;YACrB,MAAM,GAAG,GAAG,GAAG,CAAC,CAAA;SAChB;QAED,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,GAAG,MAAM,GAAG,aAAa,CAAC,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;IACrF,CAAC;IAES,cAAc;QACvB,IAAI,CAAC,aAAa,CAAC,eAAe,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC3H,CAAC;IAED;;;;;;;;OAQG;IACI,YAAY,CAAC,KAAa,EAAE,GAAW,EAAE,QAAiB;QAChE,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACtC,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;QACtC,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAC1C,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC;IAGS,iBAAiB;QAC1B,IAAI,SAAS,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACnD,IAAI,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QAEjD,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE;YAEzD,IAAI,IAAI,CAAC,kBAAkB,EAAE;gBAC5B,IAAI,CAAC,kBAAkB,GAAG,KAAK,CAAC;gBAChC,IAAI,CAAC,eAAe,EAAE,CAAC;aACvB;YAED,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC;YAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;YACrC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC;YAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;YACtC,MAAM,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC;YACzB,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;YAEzC,IAAI,UAAU,GAAG,IAAI,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;YAC9C,IAAI,UAAU,GAAG,CAAC,EAAE;gBACnB,UAAU,EAAE,CAAC;aACb;YAED,IAAI,QAAQ,GAAG,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YAC1C,IAAI,QAAQ,GAAG,GAAG,GAAG,CAAC,EAAE;gBACvB,QAAQ,EAAE,CAAC;aACX;YACD,IAAI,QAAQ,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,iBAAiB,CAAE,EAAE,CAAC,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC;YAC/G,IAAI,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,QAAQ,GAAG,UAAU,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC;YAC7E,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;YAEnC,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC,GAAG,SAAS,CAAC;YAE5D,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;YAE5B,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,QAAQ,EAAE,EAAE;gBACxC,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACvC,CAAC,CAAC,CAAA;YAEF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC,QAAQ,EAAE,EAAE;gBAC7C,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;YACvC,CAAC,CAAC,CAAA;YAEF,IAAI,YAAY,GAAG,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC,GAAG,YAAY,GAAG,CAAC,QAAQ,GAAG,UAAU,CAAC,CAAC,GAAG,YAAY,CAAC;YAE3H,2BAA2B;YAC3B,IAAI,YAAY,GAAG,KAAK,CAAC,cAAc,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,eAAe,CAAE,CAAC,CAAC;YAE/F,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;YACrD,IAAI,gBAAgB,GAAG,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;YAE/D,IAAI,gBAAgB,GAAG,YAAY,EAAE;gBACpC,YAAY,qBAAQ,YAAY,CAAE,CAAC;gBACnC,gBAAgB,GAAG,KAAK,CAAC,mBAAmB,CAAC,YAAY,CAAC,CAAC;aAC3D;YAED,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;YAE1C,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC;YACvC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC;YAEzC,IAAI,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC;YAC3B,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE;gBACnB,SAAS,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;aACrC;YAED,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;YAElJ,MAAM,kBAAkB,GAAG,QAAQ,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC;YAC9D,MAAM,gBAAgB,GAAG,QAAQ,CAAC,GAAG,CAAC,kBAAkB,EAAE,kBAAkB,CAAC,CAAC;YAE9E,IAAI,iBAA4C,CAAC;YACjD,IAAI,aAAa,GAAG,CAAC,CAAC;YACtB,IAAI,gBAAgE,CAAC;YAErE,IAAI,gBAAgB,EAAE;gBACrB,iBAAiB,GAAG,IAAI,CAAC,iBAAiB,CAAC,YAAY,CAAC,CAAC;gBACzD,aAAa,GAAG,KAAK,CAAC,mBAAmB,CAAC,iBAAiB,CAAC,CAAC;aAC7D;YAGD,IAAI,aAAa,GAAkB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,cAAc,EAAE,KAAK,CAAC,GAAG,gBAAgB,EAAE,YAAY,EAAE,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;YACnK,IAAI,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;gBAC7B,IAAI,CAAC,GAAG,CAAC,CAAC;gBACV,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;gBACZ,IAAI,aAAa,GAAG,KAAK,GAAG,gBAAgB,GAAG,EAAE,CAAC;gBAClD,MAAM,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;gBAEjD,aAAa;gBACb,IAAI,iBAAiB,EAAE;oBACtB,IAAI,KAAK,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC;oBACpC,IAAI,CAAC,aAAa,CAAC,KAAK,GAAG,gBAAgB,EAAE,KAAK,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC;iBACtF;gBAED,IAAI,WAAW,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,QAAQ,CAAC,SAAS,EAAE,GAAG,GAAG,CAAC;gBAErE,MAAM,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;;oBACpC,IAAI,QAA6C,CAAC;oBAClD,IAAI,IAAI,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,GAAG,CAAC,EAAE;wBAClC,QAAQ,GAAG,IAAI,QAAQ,CAA4B,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;wBACxE,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;wBAC/B,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;qBAC/B;yBACI;wBACJ,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;qBAC7B;oBAED,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;oBACzB,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;oBAE3B,IAAI,QAAQ,GAAG,KAAK,CAAC;oBACrB,IAAI,CAAC,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE;wBACjC,QAAQ,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;qBACvC;yBACI;wBACJ,QAAQ,IAAI,gBAAgB,CAAC;qBAC7B;oBACD,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;oBAChC,QAAQ,CAAC,MAAM,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;oBACtC,QAAQ,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;oBAC5B,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;oBAE5C,IAAI,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;oBAC/B,IAAI,YAAY,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE;wBAChF,IAAI,QAAQ,IAAI,MAAM,EAAE;4BACvB,IAAI,KAAK,CAAC,WAAW,CAAC,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE;gCACzE,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,yBAAyB,CAAE,CAAC,QAAQ,CAAC,CAAC;6BACxD;yBACD;qBACD;oBAED,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBAEjC,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;oBACpC,IAAI,KAAK,EAAE;wBACV,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC,CAAC;qBAClE;oBAED,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBAErC,IAAI,KAAK,GAAG,YAAY,CAAC,KAAK,CAAC;oBAE/B,sEAAsE;oBACtE,IAAI,QAAQ,IAAI,MAAM,EAAE;wBACvB,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;qBACxC;oBAED,IAAI,gBAAgB,EAAE;wBACrB,IAAI,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC;wBACtC,IAAI,SAAS,IAAI,MAAM,EAAE;4BACxB,SAAS,GAAG,KAAK,CAAC;yBAClB;wBAED,IAAI,KAAK,GAAG,CAAC,IAAI,YAAY,CAAC,QAAQ,IAAI,MAAM,EAAE;4BACjD,IAAI,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,GAAG,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;4BACnK,IAAI,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,aAAa,CAAC,CAAA;4BAC5C,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;4BACnC,IAAI,aAAa,IAAI,KAAK,EAAE;gCAC3B,IAAI,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;gCAClC,IAAI,IAAI,EAAE;oCACT,aAAa,GAAG,IAAI,CAAC;iCACrB;qCACI;oCACJ,aAAa,IAAI,aAAa,CAAC;iCAC/B;6BACD;4BAED,QAAQ,CAAC,MAAM,CAAC,eAAe,EAAE,aAAa,CAAC,CAAC;yBAChD;wBACD,KAAK,GAAG,CAAC,CAAC;qBACV;oBAED,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;oBAEvC,IAAI,KAAK,IAAI,gBAAgB,EAAE;wBAC9B,IAAI,QAAQ,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,GAAG,EAAE;4BACzC,IAAI,aAAa,GAAG,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;4BAClD,IAAI,aAAa,EAAE;gCAClB,IAAI,CAAC,GAAG,KAAK,CAAC,CAAC,EAAE,CAAC;gCAClB,IAAI,SAAS,GAAG,aAAa,CAAC,CAAC,EAAE,CAAC;gCAElC,IAAI,CAAC,GAAG,SAAS,GAAG,WAAW,EAAE;oCAChC,IAAI,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAA;oCACrE,IAAI,KAAK,EAAE;wCACV,MAAA,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,0CAAE,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;qCACjD;iCACD;6BACD;yBACD;wBAED,UAAU;qBAEV;oBAED,aAAa;oBACb,IAAI,iBAAiB,EAAE;wBACtB,IAAI,CAAC,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,aAAa,EAAE,iBAAiB,CAAC,CAAC;qBACtE;oBAED,CAAC,EAAE,CAAC;oBAEJ,IAAI,KAAK,IAAI,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE;wBACzC,gBAAgB,GAAG,QAAQ,CAAC;qBAC5B;oBACD,aAAa,GAAG,KAAK,CAAC;gBACvB,CAAC,CAAC,CAAA;aACF;YAED,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,MAAM,EAAE,EAAE;gBACnC,IAAI,MAAM,CAAC,MAAM,EAAE;oBAClB,MAAM,CAAC,cAAc,EAAE,CAAC;iBACxB;YACF,CAAC,CAAC,CAAA;SACF;QAED,IAAI,CAAC,YAAY,EAAE,CAAC;IACrB,CAAC;IAES,UAAU,CAAC,SAA6C,EAAE,SAA6C,EAAE,QAAuB;QACzI,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QAEnC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACzC,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAEzC,IAAI,QAAQ,IAAI,MAAM,EAAE;YACvB,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,EAAE,EAAE;gBAC7D,OAAO,SAAS,CAAC;aACjB;SACD;QAED,OAAO,SAAS,CAAC;IAClB,CAAC;IAES,aAAa,CAAC,UAAkB,EAAE,QAAgB,EAAE,aAAqB,EAAE,YAA2B;QAC/G,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAE,CAAC;QAC5E,MAAM,SAAS,GAAG,YAAY,CAAC,QAAQ,CAAC;QACxC,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAErC,IAAI,KAAK,GAAG,UAAU,GAAG,KAAK,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7E,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;QAEjG,IAAI,QAAQ,GAAG,QAAQ,GAAG,aAAa,GAAG,GAAG,CAAC;QAE9C,IAAI,kBAAkB,GAAkB,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,CAAC,CAAC;QAE/F,MAAM,CAAC,IAAI,CAAC,kBAAkB,EAAE,CAAC,KAAK,EAAE,EAAE;YACzC,IAAI,aAAkD,CAAC;YACvD,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,GAAG,CAAC,EAAE;gBAC7C,aAAa,GAAG,IAAI,QAAQ,CAA4B,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;gBAC7E,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBACxC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC;aACpC;iBACI;gBACJ,aAAa,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;aAC7C;YAED,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAC3B,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACrC,aAAa,CAAC,MAAM,CAAC,UAAU,EAAE,KAAK,GAAG,aAAa,CAAC,CAAC;YACxD,aAAa,CAAC,MAAM,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAErC,IAAI,CAAC,aAAa,CAAC,aAAa,EAAE,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,CAAC;YAEnD,MAAM,KAAK,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACzC,IAAI,KAAK,EAAE;gBACV,IAAI,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,oBAAoB,CAAC,EAAE;oBACnD,IAAI,IAAI,GAAG,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC3B,IAAI,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;oBACrC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAO,CAAC,CAAC,CAAC;iBAClE;qBACI;oBACJ,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;iBACnC;aACD;YAED,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAC1C,IAAI,CAAC,gBAAgB,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;YACxC,IAAI,CAAC,EAAE,EAAE,CAAC;QACX,CAAC,CAAC,CAAA;IACH,CAAC;IAGS,WAAW,CAAC,KAAa,EAAE,QAAgB,EAAE,QAAuB,EAAE,UAAkB;QACjG,MAAM,KAAK,GAAkB,EAAE,CAAC;QAChC,MAAM,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;QACnC,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC;QAE7B,MAAM,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAErD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,cAAc,CAAC;QAClD,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAC3B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;QAErC,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,CAAC;QAClB,IAAI,aAAa,GAAG,CAAC,QAAQ,CAAC;QAC9B,IAAI,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QACjE,IAAI,YAAY,GAAG,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC7E,IAAI,aAAa,GAAG,KAAK,CAAC;QAE1B,IAAI,QAAQ,IAAI,KAAK,EAAE;YACtB,KAAK,GAAG,UAAU,CAAC;SACnB;QAED,OAAO,KAAK,IAAI,QAAQ,EAAE;YACzB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;YAEpG,IAAI,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;YACrC,IAAI,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YAEnC,IAAI,QAAQ,IAAI,KAAK,IAAI,YAAY,CAAC,QAAQ,IAAI,KAAK,EAAE;gBACxD,IAAI,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;oBACzB,CAAC,EAAE,CAAC;iBACJ;gBAED,IAAI,CAAC,IAAI,KAAK,EAAE;oBACf,IAAI,KAAK,IAAI,aAAa,GAAG,YAAY,GAAG,CAAC,EAAE;wBAC9C,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;qBAC1B;oBACD,CAAC,GAAG,CAAC,CAAC;iBACN;gBACD,KAAK,IAAI,QAAQ,CAAC;gBAClB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;aAChG;iBACI;gBACJ,IAAI,SAAS,GAAG,KAAK,EAAE;oBACtB,KAAK,IAAI,CAAC,GAAG,KAAK,EAAE,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;wBAC3D,SAAS,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;wBAC3B,IAAI,SAAS,IAAI,KAAK,EAAE;4BACvB,KAAK,GAAG,CAAC,CAAC;4BACV,MAAM;yBACN;qBACD;iBACD;gBAED,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;gBAE1B,KAAK,IAAI,YAAY,CAAC;gBACtB,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;aACpG;YAED,IAAI,KAAK,IAAI,aAAa,EAAE;gBAC3B,KAAK,IAAI,YAAY,GAAG,QAAQ,CAAC;gBACjC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC,OAAO,EAAE,CAAC;aACpG;YACD,IAAI,KAAK,IAAI,aAAa,EAAE;gBAC3B,MAAM;aACN;YAED,aAAa,GAAG,KAAK,CAAC;SACtB;QAED,OAAO,KAAK,CAAC;IACd,CAAC;IAES,QAAQ,CAAC,IAAY;QAC9B,MAAM,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;YAC1D,OAAO,MAAM,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC,KAAK,CAAC;IACrB,CAAC;;AAziBD;;;;WAAkC,iBAAiB;GAAC;AACpD;;;;WAA0C,QAAQ,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { AxisRenderer } from \"./AxisRenderer\";\r\n\r\nimport { DateAxis, IDateAxisSettings, IDateAxisPrivate, IDateAxisDataItem, IDateAxisEvents } from \"./DateAxis\";\r\nimport { DataItem } from \"../../../core/render/Component\";\r\nimport type { XYSeries } from \"../../xy/series/XYSeries\";\r\n\r\nimport * as $array from \"../../../core/util/Array\"\r\nimport * as $order from \"../../../core/util/Order\";\r\nimport * as $time from \"../../../core/util/Time\";\r\nimport * as $type from \"../../../core/util/Type\";\r\nimport * as $math from \"../../../core/util/Math\";\r\nimport type { ITimeInterval } from \"../../../core/util/Time\";\r\n\r\nexport interface IGaplessDateAxisSettings<R extends AxisRenderer> extends IDateAxisSettings<R> {\r\n\r\n}\r\n\r\nexport interface IGaplessDateAxisDataItem extends IDateAxisDataItem {\r\n\r\n\t/**\r\n\t * An index of a data item.\r\n\t */\r\n\tindex?: number\r\n\r\n}\r\n\r\nexport interface IGaplessDateAxisPrivate extends IDateAxisPrivate {\r\n\r\n}\r\n\r\nexport interface IGaplessDateAxisEvents extends IDateAxisEvents {\r\n}\r\n\r\n/**\r\n * A version of a [[DateAxis]] which removes intervals that don't have any data\r\n * items in them.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/gapless-date-axis/} for more info\r\n * @important\r\n */\r\nexport class GaplessDateAxis<R extends AxisRenderer> extends DateAxis<R> {\r\n\tpublic static className: string = \"GaplessDateAxis\";\r\n\tpublic static classNames: Array<string> = DateAxis.classNames.concat([GaplessDateAxis.className]);\r\n\r\n\tdeclare public _settings: IGaplessDateAxisSettings<R>;\r\n\tdeclare public _privateSettings: IGaplessDateAxisPrivate;\r\n\tdeclare public _dataItemSettings: IGaplessDateAxisDataItem;\r\n\tdeclare public _events: IGaplessDateAxisEvents;\r\n\r\n\tprotected _frequency: number = 1;\r\n\tprotected _m: number = 0;\r\n\r\n\tpublic _afterNew() {\r\n\t\tthis.valueFields.push(\"date\");\r\n\t\tsuper._afterNew();\r\n\t}\r\n\r\n\tprotected _dates: Array<number> = [];\r\n\r\n\tprotected _updateDates(date: number, series: XYSeries) {\r\n\t\tif (!series.get(\"ignoreMinMax\")) {\r\n\t\t\tconst dates = this._dates;\r\n\t\t\tconst result = $array.getSortedIndex(dates, (x) => $order.compare(x, date));\r\n\t\t\tif (!result.found) {\r\n\t\t\t\t$array.insertIndex(dates, result.index, date);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tpublic _updateAllDates() {\r\n\t\tconst dates = this._dates;\r\n\t\tdates.length = 0;\r\n\r\n\t\t$array.each(this.series, (series) => {\r\n\t\t\tlet field = \"valueX\";\r\n\t\t\tif (series.get(\"yAxis\") == this) {\r\n\t\t\t\tfield = \"valueY\"\r\n\t\t\t}\r\n\t\t\t$array.each(series.dataItems, (dataItem) => {\r\n\t\t\t\tlet value = dataItem.get(field as any);\r\n\t\t\t\tif ($type.isNumber(value)) {\r\n\t\t\t\t\tif (dataItem.open) {\r\n\t\t\t\t\t\tthis._updateDates(dataItem.open![field], series);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t})\r\n\r\n\t\tconst extraMax = this.get(\"extraMax\", 0);\r\n\t\tconst extraMin = this.get(\"extraMin\", 0);\r\n\r\n\t\tconst len = dates.length;\r\n\r\n\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\r\n\t\tconst timeUnit = baseInterval.timeUnit;\r\n\r\n\t\tconst firstDay = this._root.locale.firstDayOfWeek;\r\n\t\tconst utc = this._root.utc;\r\n\t\tconst timezone = this._root.timezone;\r\n\r\n\t\tif (extraMax > 0) {\r\n\t\t\tconst extra = len * extraMax;\r\n\t\t\tlet time = dates[len - 1];\r\n\t\t\tif ($type.isNumber(time)) {\r\n\t\t\t\tfor (let i = len - 1; i < len + extra; i++) {\r\n\t\t\t\t\ttime += $time.getDuration(timeUnit, baseInterval.count * this._getM(timeUnit));\r\n\t\t\t\t\ttime = $time.round(new Date(time), timeUnit, baseInterval.count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t\t\tdates.push(time);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t\tif (extraMin > 0) {\r\n\t\t\tconst extra = len * extraMin;\r\n\t\t\tlet time = dates[0];\r\n\t\t\tif ($type.isNumber(time)) {\r\n\t\t\t\tfor (let i = 0; i < extra; i++) {\r\n\t\t\t\t\ttime -= $time.getDuration(timeUnit, baseInterval.count);\r\n\t\t\t\t\ttime = $time.round(new Date(time), timeUnit, baseInterval.count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t\t\tdates.unshift(time);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Convers value to a relative position on axis.\r\n\t *\r\n\t * @param value Value\r\n\t * @return Relative position\r\n\t */\r\n\tpublic valueToPosition(value: number): number {\r\n\t\tconst dates = this._dates;\r\n\t\tconst startLocation = this.get(\"startLocation\", 0);\r\n\t\tconst endLocation = this.get(\"endLocation\", 1);\r\n\t\tconst len = dates.length - startLocation - (1 - endLocation);\r\n\t\tconst result = $array.getSortedIndex(dates, (x) => $order.compare(x, value));\r\n\t\tlet index = result.index;\r\n\r\n\t\tif (result.found) {\r\n\t\t\treturn (index - startLocation) / len;\r\n\t\t}\r\n\t\telse {\r\n\t\t\tif (index > 0) {\r\n\t\t\t\tindex -= 1;\r\n\t\t\t}\r\n\r\n\t\t\tlet itemValue = dates[index];\r\n\r\n\t\t\tlet d = 0;\r\n\t\t\tif (itemValue > value && value > this.getPrivate(\"min\", 0)) {\r\n\t\t\t\td = itemValue - value;\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\td = value - itemValue;\r\n\t\t\t}\r\n\r\n\t\t\treturn (index - startLocation) / len + d / this.baseDuration() / len;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Converts numeric value from axis scale to index.\r\n\t * \r\n\t * @param value Value\r\n\t * @return Index\r\n\t */\r\n\tpublic valueToIndex(value: number): number {\r\n\t\tconst dates = this._dates;\r\n\r\n\t\tconst result = $array.getSortedIndex(dates, (x) => $order.compare(x, value));\r\n\t\tlet index = result.index;\r\n\r\n\t\tif (result.found) {\r\n\t\t\treturn index;\r\n\t\t}\r\n\t\telse {\r\n\t\t\tif (index > 0) {\r\n\t\t\t\tindex -= 1;\r\n\t\t\t}\r\n\t\t\treturn index;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Converts a relative position to a corresponding numeric value from axis\r\n\t * scale.\r\n\t *\r\n\t * @param position Relative position\r\n\t * @return Value\r\n\t */\r\n\tpublic positionToValue(position: number): number {\r\n\t\tconst startLocation = this.get(\"startLocation\", 0);\r\n\t\tconst endLocation = this.get(\"endLocation\", 1);\r\n\t\tlet len = Math.round(this._dates.length - startLocation - (1 - endLocation));\r\n\t\tlet index = position * len;\r\n\t\tlet findex = Math.floor(index);\r\n\t\tif (findex < 0) {\r\n\t\t\tfindex = 0;\r\n\t\t}\r\n\r\n\t\tif (findex > len - 1) {\r\n\t\t\tfindex = len - 1\r\n\t\t}\r\n\r\n\t\treturn this._dates[findex] + (index - findex + startLocation) * this.baseDuration();\r\n\t}\r\n\r\n\tprotected _fixZoomFactor() {\r\n\t\tthis.setPrivateRaw(\"maxZoomFactor\", this._dates.length - this.get(\"startLocation\", 0) - (1 - this.get(\"endLocation\", 1)));\r\n\t}\r\n\r\n\t/**\r\n\t * Zooms the axis to specific `start` and `end` values.\r\n\t *\r\n\t * Optional `duration` specifies duration of zoom animation in milliseconds.\r\n\t *\r\n\t * @param start Start value\r\n\t * @param end End value\r\n\t * @param duration Duration in milliseconds\r\n\t */\r\n\tpublic zoomToValues(start: number, end: number, duration?: number) {\r\n\t\tconst min = this.getPrivate(\"min\", 0);\r\n\t\tconst max = this.getPrivate(\"max\", 0);\r\n\t\tstart = $math.fitToRange(start, min, max);\r\n\t\tend = $math.fitToRange(end, min, max);\r\n\t\tthis.zoom(this.valueToPosition(start), this.valueToPosition(end), duration);\r\n\t}\r\n\r\n\r\n\tprotected _prepareAxisItems() {\r\n\t\tlet startTime = this.getPrivate(\"selectionMin\", 0);\r\n\t\tlet endTime = this.getPrivate(\"selectionMax\", 0);\r\n\r\n\t\tif ($type.isNumber(startTime) && $type.isNumber(endTime)) {\r\n\r\n\t\t\tif (this._seriesValuesDirty) {\r\n\t\t\t\tthis._seriesValuesDirty = false;\r\n\t\t\t\tthis._updateAllDates();\r\n\t\t\t}\r\n\r\n\t\t\tconst firstDay = this._root.locale.firstDayOfWeek;\r\n\t\t\tconst utc = this._root.utc;\r\n\t\t\tconst timezone = this._root.timezone;\r\n\t\t\tconst dates = this._dates;\r\n\t\t\tconst renderer = this.get(\"renderer\");\r\n\t\t\tconst len = dates.length;\r\n\t\t\tconst baseDuration = this.baseDuration();\r\n\r\n\t\t\tlet startIndex = this.valueToIndex(startTime);\r\n\t\t\tif (startIndex > 0) {\r\n\t\t\t\tstartIndex--;\r\n\t\t\t}\r\n\r\n\t\t\tlet endIndex = this.valueToIndex(endTime);\r\n\t\t\tif (endIndex < len - 1) {\r\n\t\t\t\tendIndex++;\r\n\t\t\t}\r\n\t\t\tlet maxCount = renderer.axisLength() / Math.max(renderer.get(\"minGridDistance\")!, 1 / Number.MAX_SAFE_INTEGER);\r\n\t\t\tlet frequency = Math.min(len, Math.ceil((endIndex - startIndex) / maxCount));\r\n\t\t\tfrequency = Math.max(1, frequency);\r\n\r\n\t\t\tstartIndex = Math.floor(startIndex / frequency) * frequency;\r\n\r\n\t\t\tthis._frequency = frequency;\r\n\r\n\t\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\t\tthis._toggleDataItem(dataItem, false);\r\n\t\t\t})\r\n\r\n\t\t\t$array.each(this.minorDataItems, (dataItem) => {\r\n\t\t\t\tthis._toggleDataItem(dataItem, false);\r\n\t\t\t})\r\n\r\n\t\t\tlet realDuration = (endTime - startTime) - ((endTime - startTime) / baseDuration - (endIndex - startIndex)) * baseDuration;\r\n\r\n\t\t\t// if all items are on axis\r\n\t\t\tlet gridInterval = $time.chooseInterval(0, realDuration, maxCount, this.get(\"gridIntervals\")!);\r\n\r\n\t\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\r\n\t\t\tlet intervalDuration = $time.getIntervalDuration(gridInterval);\r\n\r\n\t\t\tif (intervalDuration < baseDuration) {\r\n\t\t\t\tgridInterval = { ...baseInterval };\r\n\t\t\t\tintervalDuration = $time.getIntervalDuration(gridInterval);\r\n\t\t\t}\r\n\r\n\t\t\tthis._intervalDuration = intervalDuration;\r\n\r\n\t\t\tconst timeUnit = gridInterval.timeUnit;\r\n\t\t\tconst formats = this.get(\"dateFormats\")!;\r\n\r\n\t\t\tlet firstDate = new Date();\r\n\t\t\tif (this._dates[0]) {\r\n\t\t\t\tfirstDate = new Date(this._dates[0]);\r\n\t\t\t}\r\n\r\n\t\t\tlet value = $time.round(new Date(this.getPrivate(\"selectionMin\", 0)), timeUnit, gridInterval.count, firstDay, utc, firstDate, timezone).getTime();\r\n\r\n\t\t\tconst minorLabelsEnabled = renderer.get(\"minorLabelsEnabled\");\r\n\t\t\tconst minorGridEnabled = renderer.get(\"minorGridEnabled\", minorLabelsEnabled);\r\n\r\n\t\t\tlet minorGridInterval: ITimeInterval | undefined;\r\n\t\t\tlet minorDuration = 0;\r\n\t\t\tlet previousDataItem: DataItem<IGaplessDateAxisDataItem> | undefined;\r\n\r\n\t\t\tif (minorGridEnabled) {\r\n\t\t\t\tminorGridInterval = this._getMinorInterval(gridInterval);\r\n\t\t\t\tminorDuration = $time.getIntervalDuration(minorGridInterval);\r\n\t\t\t}\r\n\r\n\r\n\t\t\tlet selectedItems: Array<number> = this._getIndexes(value, this.getPrivate(\"selectionMax\", value) + intervalDuration, gridInterval, this.getPrivate(\"min\", value));\r\n\t\t\tif (selectedItems.length > 0) {\r\n\t\t\t\tlet i = 0;\r\n\t\t\t\tthis._m = 0;\r\n\t\t\t\tlet previousValue = value - intervalDuration * 10;\r\n\t\t\t\tconst nextGridUnit = $time.getNextUnit(timeUnit);\r\n\r\n\t\t\t\t// MINOR GRID\r\n\t\t\t\tif (minorGridInterval) {\r\n\t\t\t\t\tlet first = dates[selectedItems[0]];\r\n\t\t\t\t\tthis._addMinorGrid(first - intervalDuration, first, minorDuration, minorGridInterval);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlet minDistance = renderer.axisLength() / renderer.gridCount() * 0.5;\r\n\r\n\t\t\t\t$array.each(selectedItems, (index) => {\r\n\t\t\t\t\tlet dataItem: DataItem<this[\"_dataItemSettings\"]>;\r\n\t\t\t\t\tif (this.dataItems.length < i + 1) {\r\n\t\t\t\t\t\tdataItem = new DataItem<this[\"_dataItemSettings\"]>(this, undefined, {});\r\n\t\t\t\t\t\tthis._dataItems.push(dataItem);\r\n\t\t\t\t\t\tthis.processDataItem(dataItem);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tdataItem = this.dataItems[i];\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tlet value = dates[index];\r\n\t\t\t\t\tlet date = new Date(value);\r\n\r\n\t\t\t\t\tlet endValue = value;\r\n\t\t\t\t\tif (i < selectedItems.length - 1) {\r\n\t\t\t\t\t\tendValue = dates[selectedItems[i + 1]];\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tendValue += intervalDuration;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdataItem.setRaw(\"value\", value);\r\n\t\t\t\t\tdataItem.setRaw(\"endValue\", endValue);\r\n\t\t\t\t\tdataItem.setRaw(\"index\", i);\r\n\t\t\t\t\tdataItem.setRaw(\"labelEndValue\", undefined);\r\n\r\n\t\t\t\t\tlet format = formats[timeUnit];\r\n\t\t\t\t\tif (nextGridUnit && this.get(\"markUnitChange\") && $type.isNumber(previousValue)) {\r\n\t\t\t\t\t\tif (timeUnit != \"year\") {\r\n\t\t\t\t\t\t\tif ($time.checkChange(value, previousValue, nextGridUnit, utc, timezone)) {\r\n\t\t\t\t\t\t\t\tformat = this.get(\"periodChangeDateFormats\")![timeUnit];\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\r\n\t\t\t\t\tthis._createAssets(dataItem, []);\r\n\r\n\t\t\t\t\tconst label = dataItem.get(\"label\");\r\n\t\t\t\t\tif (label) {\r\n\t\t\t\t\t\tlabel.set(\"text\", this._root.dateFormatter.format(date, format!));\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis._toggleDataItem(dataItem, true);\r\n\r\n\t\t\t\t\tlet count = gridInterval.count;\r\n\r\n\t\t\t\t\t// so that labels of week would always be at the beginning of the grid\r\n\t\t\t\t\tif (timeUnit == \"week\") {\r\n\t\t\t\t\t\tdataItem.setRaw(\"labelEndValue\", value);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (minorGridEnabled) {\r\n\t\t\t\t\t\tlet timeUnit2 = gridInterval.timeUnit;\r\n\t\t\t\t\t\tif (timeUnit2 == \"week\") {\r\n\t\t\t\t\t\t\ttimeUnit2 = \"day\";\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (count > 1 || gridInterval.timeUnit == \"week\") {\r\n\t\t\t\t\t\t\tlet labelEndValue = $time.round(new Date(value), timeUnit2, 1, firstDay, utc, undefined, timezone).getTime() + $time.getDuration(timeUnit2, this._getM(timeUnit2));\r\n\t\t\t\t\t\t\tlet index = this.valueToIndex(labelEndValue)\r\n\t\t\t\t\t\t\tlabelEndValue = this._dates[index];\r\n\t\t\t\t\t\t\tif (labelEndValue == value) {\r\n\t\t\t\t\t\t\t\tlet next = this._dates[index + 1];\r\n\t\t\t\t\t\t\t\tif (next) {\r\n\t\t\t\t\t\t\t\t\tlabelEndValue = next;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t\t\tlabelEndValue += minorDuration;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tdataItem.setRaw(\"labelEndValue\", labelEndValue);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tcount = 1;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis._prepareDataItem(dataItem, count);\r\n\r\n\t\t\t\t\tif (label && previousDataItem) {\r\n\t\t\t\t\t\tif (renderer.getPrivate(\"letter\") == \"X\") {\r\n\t\t\t\t\t\t\tlet previousLabel = previousDataItem.get(\"label\");\r\n\t\t\t\t\t\t\tif (previousLabel) {\r\n\t\t\t\t\t\t\t\tlet x = label.x();\r\n\t\t\t\t\t\t\t\tlet previousX = previousLabel.x();\r\n\r\n\t\t\t\t\t\t\t\tif (x - previousX < minDistance) {\r\n\t\t\t\t\t\t\t\t\tlet worse = this._pickWorse(previousDataItem, dataItem, gridInterval)\r\n\t\t\t\t\t\t\t\t\tif (worse) {\r\n\t\t\t\t\t\t\t\t\t\tworse.get(\"label\")?.setPrivate(\"visible\", false);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// todo y?\r\n\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// MINOR GRID\r\n\t\t\t\t\tif (minorGridInterval) {\r\n\t\t\t\t\t\tthis._addMinorGrid(value, endValue, minorDuration, minorGridInterval);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ti++;\r\n\r\n\t\t\t\t\tif (label && label.getPrivate(\"visible\")) {\r\n\t\t\t\t\t\tpreviousDataItem = dataItem;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tpreviousValue = value;\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\t$array.each(this.series, (series) => {\r\n\t\t\t\tif (series.inited) {\r\n\t\t\t\t\tseries._markDirtyAxes();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tthis._updateGhost();\r\n\t}\r\n\r\n\tprotected _pickWorse(dataItemA: DataItem<IGaplessDateAxisDataItem>, dataItemB: DataItem<IGaplessDateAxisDataItem>, interval: ITimeInterval): DataItem<IGaplessDateAxisDataItem> {\r\n\t\tconst timeUnit = interval.timeUnit;\r\n\r\n\t\tconst valueA = dataItemA.get(\"value\", 0);\r\n\t\tconst valueB = dataItemB.get(\"value\", 0);\r\n\r\n\t\tif (timeUnit == \"hour\") {\r\n\t\t\tif (new Date(valueA).getDate() != new Date(valueB).getDate()) {\r\n\t\t\t\treturn dataItemA;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn dataItemB;\r\n\t}\r\n\r\n\tprotected _addMinorGrid(startValue: number, endValue: number, minorDuration: number, gridInterval: ITimeInterval) {\r\n\t\tconst minorFormats = this.get(\"minorDateFormats\", this.get(\"dateFormats\"))!;\r\n\t\tconst mTimeUnit = gridInterval.timeUnit;\r\n\t\tconst firstDay = this._root.locale.firstDayOfWeek;\r\n\t\tconst utc = this._root.utc;\r\n\t\tconst timezone = this._root.timezone;\r\n\r\n\t\tlet value = startValue + $time.getDuration(mTimeUnit, this._getM(mTimeUnit));\r\n\t\tvalue = $time.round(new Date(value), mTimeUnit, 1, firstDay, utc, undefined, timezone).getTime();\r\n\r\n\t\tlet maxValue = endValue - minorDuration * 0.5;\r\n\r\n\t\tlet minorSelectedItems: Array<number> = this._getIndexes(value, maxValue, gridInterval, value);\r\n\r\n\t\t$array.each(minorSelectedItems, (index) => {\r\n\t\t\tlet minorDataItem: DataItem<this[\"_dataItemSettings\"]>;\r\n\t\t\tif (this.minorDataItems.length < this._m + 1) {\r\n\t\t\t\tminorDataItem = new DataItem<this[\"_dataItemSettings\"]>(this, undefined, {});\r\n\t\t\t\tthis.minorDataItems.push(minorDataItem);\r\n\t\t\t\tthis.processDataItem(minorDataItem);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tminorDataItem = this.minorDataItems[this._m];\r\n\t\t\t}\r\n\r\n\t\t\tvalue = this._dates[index];\r\n\t\t\tminorDataItem.setRaw(\"value\", value);\r\n\t\t\tminorDataItem.setRaw(\"endValue\", value + minorDuration);\r\n\t\t\tminorDataItem.setRaw(\"index\", index);\r\n\r\n\t\t\tthis._createAssets(minorDataItem, [\"minor\"], true);\r\n\r\n\t\t\tconst label = minorDataItem.get(\"label\");\r\n\t\t\tif (label) {\r\n\t\t\t\tif (this.get(\"renderer\").get(\"minorLabelsEnabled\")) {\r\n\t\t\t\t\tlet date = new Date(value);\r\n\t\t\t\t\tlet format = minorFormats[mTimeUnit];\r\n\t\t\t\t\tlabel.set(\"text\", this._root.dateFormatter.format(date, format!));\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tlabel.setPrivate(\"visible\", false);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tthis._toggleDataItem(minorDataItem, true);\r\n\t\t\tthis._prepareDataItem(minorDataItem, 1);\r\n\t\t\tthis._m++;\r\n\t\t})\r\n\t}\r\n\r\n\r\n\tprotected _getIndexes(value: number, maxValue: number, interval: ITimeInterval, firstValue: number): Array<number> {\r\n\t\tconst items: Array<number> = [];\r\n\t\tconst timeUnit = interval.timeUnit;\r\n\t\tconst count = interval.count;\r\n\r\n\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\r\n\r\n\t\tconst firstDay = this._root.locale.firstDayOfWeek;\r\n\t\tconst utc = this._root.utc;\r\n\t\tconst timezone = this._root.timezone;\r\n\r\n\t\tlet c = count - 1;\r\n\t\tlet previousValue = -Infinity;\r\n\t\tlet duration = $time.getDuration(timeUnit, this._getM(timeUnit));\r\n\t\tlet fullDuration = $time.getDuration(timeUnit, count * this._getM(timeUnit));\r\n\t\tlet originalValue = value;\r\n\r\n\t\tif (timeUnit == \"day\") {\r\n\t\t\tvalue = firstValue;\r\n\t\t}\r\n\r\n\t\twhile (value <= maxValue) {\r\n\t\t\tvalue = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();\r\n\r\n\t\t\tlet index = this.valueToIndex(value);\r\n\t\t\tlet realValue = this._dates[index];\r\n\r\n\t\t\tif (timeUnit == \"day\" && baseInterval.timeUnit == \"day\") {\r\n\t\t\t\tif (this._hasDate(value)) {\r\n\t\t\t\t\tc++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (c == count) {\r\n\t\t\t\t\tif (value >= originalValue - fullDuration * 2) {\r\n\t\t\t\t\t\t$array.move(items, index);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tc = 0;\r\n\t\t\t\t}\r\n\t\t\t\tvalue += duration;\r\n\t\t\t\tvalue = $time.round(new Date(value), timeUnit, 1, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tif (realValue < value) {\r\n\t\t\t\t\tfor (let i = index, len = this._dates.length; i < len; i++) {\r\n\t\t\t\t\t\trealValue = this._dates[i];\r\n\t\t\t\t\t\tif (realValue >= value) {\r\n\t\t\t\t\t\t\tindex = i;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$array.move(items, index);\r\n\r\n\t\t\t\tvalue += fullDuration;\r\n\t\t\t\tvalue = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t}\r\n\r\n\t\t\tif (value == previousValue) {\r\n\t\t\t\tvalue += fullDuration + duration;\r\n\t\t\t\tvalue = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t}\r\n\t\t\tif (value == previousValue) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\tpreviousValue = value;\r\n\t\t}\r\n\r\n\t\treturn items;\r\n\t}\r\n\r\n\tprotected _hasDate(time: number) {\r\n\t\tconst result = $array.getSortedIndex(this._dates, (date) => {\r\n\t\t\treturn $order.compareNumber(date, time);\r\n\t\t});\r\n\r\n\t\treturn result.found;\r\n\t}\r\n\r\n}"]}
1
+ {"version":3,"file":"GaplessDateAxis.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/axes/GaplessDateAxis.ts"],"names":[],"mappings":"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","sourcesContent":["import type { AxisRenderer } from \"./AxisRenderer\";\r\n\r\nimport { DateAxis, IDateAxisSettings, IDateAxisPrivate, IDateAxisDataItem, IDateAxisEvents } from \"./DateAxis\";\r\nimport { DataItem } from \"../../../core/render/Component\";\r\nimport type { XYSeries } from \"../../xy/series/XYSeries\";\r\n\r\nimport * as $array from \"../../../core/util/Array\"\r\nimport * as $order from \"../../../core/util/Order\";\r\nimport * as $time from \"../../../core/util/Time\";\r\nimport * as $type from \"../../../core/util/Type\";\r\nimport * as $math from \"../../../core/util/Math\";\r\nimport type { ITimeInterval } from \"../../../core/util/Time\";\r\n\r\nexport interface IGaplessDateAxisSettings<R extends AxisRenderer> extends IDateAxisSettings<R> {\r\n\r\n}\r\n\r\nexport interface IGaplessDateAxisDataItem extends IDateAxisDataItem {\r\n\r\n\t/**\r\n\t * An index of a data item.\r\n\t */\r\n\tindex?: number\r\n\r\n}\r\n\r\nexport interface IGaplessDateAxisPrivate extends IDateAxisPrivate {\r\n\r\n}\r\n\r\nexport interface IGaplessDateAxisEvents extends IDateAxisEvents {\r\n}\r\n\r\n/**\r\n * A version of a [[DateAxis]] which removes intervals that don't have any data\r\n * items in them.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/xy-chart/axes/gapless-date-axis/} for more info\r\n * @important\r\n */\r\nexport class GaplessDateAxis<R extends AxisRenderer> extends DateAxis<R> {\r\n\tpublic static className: string = \"GaplessDateAxis\";\r\n\tpublic static classNames: Array<string> = DateAxis.classNames.concat([GaplessDateAxis.className]);\r\n\r\n\tdeclare public _settings: IGaplessDateAxisSettings<R>;\r\n\tdeclare public _privateSettings: IGaplessDateAxisPrivate;\r\n\tdeclare public _dataItemSettings: IGaplessDateAxisDataItem;\r\n\tdeclare public _events: IGaplessDateAxisEvents;\r\n\r\n\tprotected _frequency: number = 1;\r\n\tprotected _m: number = 0;\r\n\r\n\tpublic _afterNew() {\r\n\t\tthis.valueFields.push(\"date\");\r\n\t\tsuper._afterNew();\r\n\t}\r\n\r\n\tpublic _dates: Array<number> = [];\r\n\tpublic _customDates?: Array<number>;\r\n\r\n\r\n\tpublic _getDates(): Array<number> {\r\n\t\tif (this._customDates) {\r\n\t\t\treturn this._customDates;\r\n\t\t}\r\n\t\treturn this._dates;\r\n\t}\r\n\r\n\tprotected _updateDates(date: number, series: XYSeries) {\r\n\t\tif (!series.get(\"ignoreMinMax\")) {\r\n\t\t\tconst dates = this._getDates();\r\n\t\t\tconst result = $array.getSortedIndex(dates, (x) => $order.compare(x, date));\r\n\t\t\tif (!result.found) {\r\n\t\t\t\t$array.insertIndex(dates, result.index, date);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tpublic _updateAllDates() {\r\n\t\tif (!this._customDates) {\r\n\t\t\tconst dates = this._dates;\r\n\t\t\tdates.length = 0;\r\n\r\n\t\t\t$array.each(this.series, (series) => {\r\n\t\t\t\tlet field = \"valueX\";\r\n\t\t\t\tif (series.get(\"yAxis\") == this) {\r\n\t\t\t\t\tfield = \"valueY\"\r\n\t\t\t\t}\r\n\t\t\t\t$array.each(series.dataItems, (dataItem) => {\r\n\t\t\t\t\tlet value = dataItem.get(field as any);\r\n\t\t\t\t\tif ($type.isNumber(value)) {\r\n\t\t\t\t\t\tif (dataItem.open) {\r\n\t\t\t\t\t\t\tthis._updateDates(dataItem.open![field], series);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t})\r\n\r\n\t\t\tconst extraMax = this.get(\"extraMax\", 0);\r\n\t\t\tconst extraMin = this.get(\"extraMin\", 0);\r\n\r\n\t\t\tlet len = dates.length;\r\n\r\n\t\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\r\n\t\t\tconst baseCount = baseInterval.count;\r\n\t\t\tconst timeUnit = baseInterval.timeUnit;\r\n\r\n\t\t\tif (extraMax > 0) {\r\n\t\t\t\tconst extra = len * extraMax;\r\n\t\t\t\tlet time = dates[len - 1];\r\n\t\t\t\tif ($type.isNumber(time)) {\r\n\t\t\t\t\tfor (let i = len - 1; i < len + extra; i++) {\r\n\t\t\t\t\t\ttime += $time.getDuration(timeUnit, baseCount * this._getM(timeUnit));\r\n\t\t\t\t\t\t//time = $time.round(new Date(time), timeUnit, baseInterval.count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t\t\t\ttime = $time.roun(time, timeUnit, baseCount, this._root);\r\n\t\t\t\t\t\tdates.push(time);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tif (extraMin > 0) {\r\n\t\t\t\tconst extra = len * extraMin;\r\n\t\t\t\tlet time = dates[0];\r\n\t\t\t\tif ($type.isNumber(time)) {\r\n\t\t\t\t\tfor (let i = 0; i < extra; i++) {\r\n\t\t\t\t\t\ttime -= $time.getDuration(timeUnit, baseCount);\r\n\t\t\t\t\t\t//time = $time.round(new Date(time), timeUnit, baseCount, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t\t\t\ttime = $time.roun(time, timeUnit, baseCount, this._root);\r\n\t\t\t\t\t\tdates.unshift(time);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Convers value to a relative position on axis.\r\n\t *\r\n\t * @param value Value\r\n\t * @return Relative position\r\n\t */\r\n\tpublic valueToPosition(value: number): number {\r\n\t\tconst dates = this._getDates();\r\n\t\tconst startLocation = this.get(\"startLocation\", 0);\r\n\t\tconst endLocation = this.get(\"endLocation\", 1);\r\n\t\tconst len = dates.length - startLocation - (1 - endLocation);\r\n\t\tconst result = $array.getSortedIndex(dates, (x) => $order.compare(x, value));\r\n\t\tlet index = result.index;\r\n\r\n\t\tif (result.found) {\r\n\t\t\treturn (index - startLocation) / len;\r\n\t\t}\r\n\t\telse {\r\n\t\t\tif (index > 0) {\r\n\t\t\t\tindex -= 1;\r\n\t\t\t}\r\n\r\n\t\t\tlet itemValue = dates[index];\r\n\r\n\t\t\tlet d = 0;\r\n\t\t\tif (itemValue > value && value > this.getPrivate(\"min\", 0)) {\r\n\t\t\t\td = itemValue - value;\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\td = value - itemValue;\r\n\t\t\t}\r\n\r\n\t\t\treturn (index - startLocation) / len + d / this.baseDuration() / len;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Converts numeric value from axis scale to index.\r\n\t * \r\n\t * @param value Value\r\n\t * @return Index\r\n\t */\r\n\tpublic valueToIndex(value: number): number {\r\n\t\tconst dates = this._getDates();\r\n\r\n\t\tconst result = $array.getSortedIndex(dates, (x) => $order.compare(x, value));\r\n\t\tlet index = result.index;\r\n\r\n\t\tif (result.found) {\r\n\t\t\treturn index;\r\n\t\t}\r\n\t\telse {\r\n\t\t\tif (index > 0) {\r\n\t\t\t\tindex -= 1;\r\n\t\t\t}\r\n\t\t\treturn index;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Converts a relative position to a corresponding numeric value from axis\r\n\t * scale.\r\n\t *\r\n\t * @param position Relative position\r\n\t * @return Value\r\n\t */\r\n\tpublic positionToValue(position: number): number {\r\n\t\tconst startLocation = this.get(\"startLocation\", 0);\r\n\t\tconst endLocation = this.get(\"endLocation\", 1);\r\n\t\tconst dates = this._getDates();\r\n\t\tlet len = Math.round(dates.length - startLocation - (1 - endLocation));\r\n\t\tlet index = position * len;\r\n\t\tlet findex = Math.floor(index);\r\n\t\tif (findex < 0) {\r\n\t\t\tfindex = 0;\r\n\t\t}\r\n\r\n\t\tif (findex > len - 1) {\r\n\t\t\tfindex = len - 1\r\n\t\t}\r\n\r\n\t\treturn dates[findex] + (index - findex + startLocation) * this.baseDuration();\r\n\t}\r\n\r\n\tprotected _fixZoomFactor() {\r\n\t\tthis.setPrivateRaw(\"maxZoomFactor\", this._getDates().length - this.get(\"startLocation\", 0) - (1 - this.get(\"endLocation\", 1)));\r\n\t}\r\n\r\n\t/**\r\n\t * Zooms the axis to specific `start` and `end` dates.\r\n\t *\r\n\t * Optional `duration` specifies duration of zoom animation in milliseconds.\r\n\t *\r\n\t * @param start Start Date\r\n\t * @param end End Date\r\n\t * @param duration Duration in milliseconds\r\n\t */\r\n\r\n\tpublic zoomToDates(start: Date, end: Date, duration?: number) {\r\n\t\tconst dates = this._getDates();\r\n\t\tconst len = dates.length;\r\n\t\tlet result = $array.getSortedIndex(dates, (x) => $order.compare(x, start.getTime()));\r\n\t\t\r\n\t\tlet startValue = dates[Math.min(result.index, len - 1)];\r\n\r\n\t\tresult = $array.getSortedIndex(dates, (x) => $order.compare(x, end.getTime()));\r\n\t\tlet endValue = dates[result.index];\r\n\r\n\t\tif(result.index >= len){\r\n\t\t\tendValue = dates[len - 1] + this.baseDuration();\r\n\t\t}\r\n\r\n\t\tthis.zoomToValues(startValue, endValue, duration);\r\n\t}\r\n\r\n\t/**\r\n\t * Zooms the axis to specific `start` and `end` values.\r\n\t *\r\n\t * Optional `duration` specifies duration of zoom animation in milliseconds.\r\n\t *\r\n\t * @param start Start value\r\n\t * @param end End value\r\n\t * @param duration Duration in milliseconds\r\n\t */\r\n\tpublic zoomToValues(start: number, end: number, duration?: number) {\r\n\t\tconst min = this.getPrivate(\"min\", 0);\r\n\t\tconst max = this.getPrivate(\"max\", 0);\r\n\t\tstart = $math.fitToRange(start, min, max);\r\n\t\tend = $math.fitToRange(end, min, max);\r\n\t\tthis.zoom(this.valueToPosition(start), this.valueToPosition(end), duration);\r\n\t}\r\n\r\n\r\n\tprotected _prepareAxisItems() {\r\n\t\tlet startTime = this.getPrivate(\"selectionMin\", 0);\r\n\t\tlet endTime = this.getPrivate(\"selectionMax\", 0);\r\n\r\n\t\tif ($type.isNumber(startTime) && $type.isNumber(endTime)) {\r\n\r\n\t\t\tif (this._seriesValuesDirty) {\r\n\t\t\t\tthis._seriesValuesDirty = false;\r\n\t\t\t\tthis._updateAllDates();\r\n\t\t\t}\r\n\r\n\t\t\tconst root = this._root;\r\n\t\t\tconst utc = root.utc;\r\n\t\t\tconst timezone = root.timezone;\r\n\t\t\tconst dates = this._getDates();\r\n\t\t\tconst renderer = this.get(\"renderer\");\r\n\t\t\tconst len = dates.length;\r\n\t\t\tconst baseDuration = this.baseDuration();\r\n\r\n\t\t\tlet startIndex = this.valueToIndex(startTime);\r\n\t\t\tif (startIndex > 0) {\r\n\t\t\t\tstartIndex--;\r\n\t\t\t}\r\n\r\n\t\t\tlet endIndex = this.valueToIndex(endTime);\r\n\t\t\tif (endIndex < len - 1) {\r\n\t\t\t\tendIndex++;\r\n\t\t\t}\r\n\t\t\tlet maxCount = renderer.axisLength() / Math.max(renderer.get(\"minGridDistance\")!, 1 / Number.MAX_SAFE_INTEGER);\r\n\t\t\tlet frequency = Math.min(len, Math.ceil((endIndex - startIndex) / maxCount));\r\n\t\t\tfrequency = Math.max(1, frequency);\r\n\r\n\t\t\tstartIndex = Math.floor(startIndex / frequency) * frequency;\r\n\r\n\t\t\tthis._frequency = frequency;\r\n\r\n\t\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\t\tthis._toggleDataItem(dataItem, false);\r\n\t\t\t})\r\n\r\n\t\t\t$array.each(this.minorDataItems, (dataItem) => {\r\n\t\t\t\tthis._toggleDataItem(dataItem, false);\r\n\t\t\t})\r\n\r\n\t\t\tlet realDuration = (endTime - startTime) - ((endTime - startTime) / baseDuration - (endIndex - startIndex)) * baseDuration;\r\n\r\n\t\t\t// if all items are on axis\r\n\t\t\tlet gridInterval = $time.chooseInterval(0, realDuration, maxCount, this.get(\"gridIntervals\")!);\r\n\r\n\t\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\r\n\t\t\tlet intervalDuration = $time.getIntervalDuration(gridInterval);\r\n\r\n\t\t\tif (intervalDuration < baseDuration) {\r\n\t\t\t\tgridInterval = { ...baseInterval };\r\n\t\t\t\tintervalDuration = $time.getIntervalDuration(gridInterval);\r\n\t\t\t}\r\n\r\n\t\t\tthis._intervalDuration = intervalDuration;\r\n\r\n\t\t\tconst timeUnit = gridInterval.timeUnit;\r\n\t\t\tconst formats = this.get(\"dateFormats\")!;\r\n\r\n\t\t\tlet firstTime = Date.now();\r\n\r\n\t\t\tif (dates[0]) {\r\n\t\t\t\tfirstTime = dates[0];\r\n\t\t\t}\r\n\r\n\t\t\t//let value = $time.round(new Date(this.getPrivate(\"selectionMin\", 0)), timeUnit, gridInterval.count, firstDay, utc, firstDate, timezone).getTime();\r\n\t\t\tlet value = $time.roun(this.getPrivate(\"selectionMin\", 0), timeUnit, gridInterval.count, root, firstTime);\r\n\r\n\t\t\tconst minorLabelsEnabled = renderer.get(\"minorLabelsEnabled\");\r\n\t\t\tconst minorGridEnabled = renderer.get(\"minorGridEnabled\", minorLabelsEnabled);\r\n\r\n\t\t\tlet minorGridInterval: ITimeInterval | undefined;\r\n\t\t\tlet minorDuration = 0;\r\n\t\t\tlet previousDataItem: DataItem<IGaplessDateAxisDataItem> | undefined;\r\n\r\n\t\t\tif (minorGridEnabled) {\r\n\t\t\t\tminorGridInterval = this._getMinorInterval(gridInterval);\r\n\t\t\t\tminorDuration = $time.getIntervalDuration(minorGridInterval);\r\n\t\t\t}\r\n\r\n\r\n\t\t\tlet selectedItems: Array<number> = this._getIndexes(value, this.getPrivate(\"selectionMax\", value) + intervalDuration, gridInterval, this.getPrivate(\"min\", value));\r\n\t\t\tif (selectedItems.length > 0) {\r\n\t\t\t\tlet i = 0;\r\n\t\t\t\tthis._m = 0;\r\n\t\t\t\tlet previousValue = value - intervalDuration * 10;\r\n\t\t\t\tconst nextGridUnit = $time.getNextUnit(timeUnit);\r\n\r\n\t\t\t\t// MINOR GRID\r\n\t\t\t\tif (minorGridInterval) {\r\n\t\t\t\t\tlet first = dates[selectedItems[0]];\r\n\t\t\t\t\tthis._addMinorGrid(first - intervalDuration, first, minorDuration, minorGridInterval);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlet minDistance = renderer.axisLength() / renderer.gridCount() * 0.5;\r\n\r\n\t\t\t\t$array.each(selectedItems, (index) => {\r\n\t\t\t\t\tlet dataItem: DataItem<this[\"_dataItemSettings\"]>;\r\n\t\t\t\t\tif (this.dataItems.length < i + 1) {\r\n\t\t\t\t\t\tdataItem = new DataItem<this[\"_dataItemSettings\"]>(this, undefined, {});\r\n\t\t\t\t\t\tthis._dataItems.push(dataItem);\r\n\t\t\t\t\t\tthis.processDataItem(dataItem);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tdataItem = this.dataItems[i];\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tlet value = dates[index];\r\n\t\t\t\t\tlet date = new Date(value);\r\n\r\n\t\t\t\t\tlet endValue = value;\r\n\t\t\t\t\tif (i < selectedItems.length - 1) {\r\n\t\t\t\t\t\tendValue = dates[selectedItems[i + 1]];\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tendValue += intervalDuration;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdataItem.setRaw(\"value\", value);\r\n\t\t\t\t\tdataItem.setRaw(\"endValue\", endValue);\r\n\t\t\t\t\tdataItem.setRaw(\"index\", i);\r\n\t\t\t\t\tdataItem.setRaw(\"labelEndValue\", undefined);\r\n\r\n\t\t\t\t\tlet format = formats[timeUnit];\r\n\t\t\t\t\tif (nextGridUnit && this.get(\"markUnitChange\") && $type.isNumber(previousValue)) {\r\n\t\t\t\t\t\tif (timeUnit != \"year\") {\r\n\t\t\t\t\t\t\tif ($time.checkChange(value, previousValue, nextGridUnit, utc, timezone)) {\r\n\t\t\t\t\t\t\t\tformat = this.get(\"periodChangeDateFormats\")![timeUnit];\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\r\n\t\t\t\t\tthis._createAssets(dataItem, []);\r\n\r\n\t\t\t\t\tconst label = dataItem.get(\"label\");\r\n\t\t\t\t\tif (label) {\r\n\t\t\t\t\t\tlabel.set(\"text\", root.dateFormatter.format(date, format!));\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis._toggleDataItem(dataItem, true);\r\n\r\n\t\t\t\t\tlet count = gridInterval.count;\r\n\r\n\t\t\t\t\t// so that labels of week would always be at the beginning of the grid\r\n\t\t\t\t\tif (timeUnit == \"week\") {\r\n\t\t\t\t\t\tdataItem.setRaw(\"labelEndValue\", value);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tif (minorGridEnabled) {\r\n\t\t\t\t\t\tlet timeUnit2 = gridInterval.timeUnit;\r\n\t\t\t\t\t\tif (timeUnit2 == \"week\") {\r\n\t\t\t\t\t\t\ttimeUnit2 = \"day\";\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\tif (count > 1 || gridInterval.timeUnit == \"week\") {\r\n\t\t\t\t\t\t\t//let labelEndValue = $time.round(new Date(value), timeUnit2, 1, firstDay, utc, undefined, timezone).getTime() + $time.getDuration(timeUnit2, this._getM(timeUnit2));\r\n\t\t\t\t\t\t\tlet labelEndValue = $time.roun(value, timeUnit2, 1, root) + $time.getDuration(timeUnit2, this._getM(timeUnit2));\r\n\t\t\t\t\t\t\tlet index = this.valueToIndex(labelEndValue)\r\n\t\t\t\t\t\t\tlabelEndValue = dates[index];\r\n\t\t\t\t\t\t\tif (labelEndValue == value) {\r\n\t\t\t\t\t\t\t\tlet next = dates[index + 1];\r\n\t\t\t\t\t\t\t\tif (next) {\r\n\t\t\t\t\t\t\t\t\tlabelEndValue = next;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\telse {\r\n\t\t\t\t\t\t\t\t\tlabelEndValue += minorDuration;\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t\tdataItem.setRaw(\"labelEndValue\", labelEndValue);\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tcount = 1;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tthis._prepareDataItem(dataItem, count);\r\n\r\n\t\t\t\t\tif (label && previousDataItem) {\r\n\t\t\t\t\t\tif (renderer.getPrivate(\"letter\") == \"X\") {\r\n\t\t\t\t\t\t\tlet previousLabel = previousDataItem.get(\"label\");\r\n\t\t\t\t\t\t\tif (previousLabel) {\r\n\t\t\t\t\t\t\t\tlet x = label.x();\r\n\t\t\t\t\t\t\t\tlet previousX = previousLabel.x();\r\n\r\n\t\t\t\t\t\t\t\tif (x - previousX < minDistance) {\r\n\t\t\t\t\t\t\t\t\tlet worse = this._pickWorse(previousDataItem, dataItem, gridInterval)\r\n\t\t\t\t\t\t\t\t\tif (worse) {\r\n\t\t\t\t\t\t\t\t\t\tworse.get(\"label\")?.setPrivate(\"visible\", false);\r\n\t\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t}\r\n\r\n\t\t\t\t\t\t// todo y?\r\n\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\t// MINOR GRID\r\n\t\t\t\t\tif (minorGridInterval) {\r\n\t\t\t\t\t\tthis._addMinorGrid(value, endValue, minorDuration, minorGridInterval);\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\ti++;\r\n\r\n\t\t\t\t\tif (label && label.getPrivate(\"visible\")) {\r\n\t\t\t\t\t\tpreviousDataItem = dataItem;\r\n\t\t\t\t\t}\r\n\t\t\t\t\tpreviousValue = value;\r\n\t\t\t\t})\r\n\t\t\t}\r\n\r\n\t\t\t$array.each(this.series, (series) => {\r\n\t\t\t\tif (series.inited) {\r\n\t\t\t\t\tseries._markDirtyAxes();\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\r\n\t\tthis._updateGhost();\r\n\t}\r\n\r\n\tprotected _pickWorse(dataItemA: DataItem<IGaplessDateAxisDataItem>, dataItemB: DataItem<IGaplessDateAxisDataItem>, interval: ITimeInterval): DataItem<IGaplessDateAxisDataItem> {\r\n\t\tconst timeUnit = interval.timeUnit;\r\n\r\n\t\tconst valueA = dataItemA.get(\"value\", 0);\r\n\t\tconst valueB = dataItemB.get(\"value\", 0);\r\n\r\n\t\tif (timeUnit == \"hour\") {\r\n\t\t\tif (new Date(valueA).getDate() != new Date(valueB).getDate()) {\r\n\t\t\t\treturn dataItemA;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\treturn dataItemB;\r\n\t}\r\n\r\n\tprotected _addMinorGrid(startValue: number, endValue: number, minorDuration: number, gridInterval: ITimeInterval) {\r\n\t\tconst minorFormats = this.get(\"minorDateFormats\", this.get(\"dateFormats\"))!;\r\n\t\tconst mTimeUnit = gridInterval.timeUnit;\r\n\t\tlet value = startValue + $time.getDuration(mTimeUnit, this._getM(mTimeUnit));\r\n\t\t//value = $time.round(new Date(value), mTimeUnit, 1, firstDay, utc, undefined, timezone).getTime();\r\n\t\tvalue = $time.roun(value, mTimeUnit, 1, this._root);\r\n\r\n\t\tlet maxValue = endValue - minorDuration * 0.5;\r\n\r\n\t\tlet minorSelectedItems: Array<number> = this._getIndexes(value, maxValue, gridInterval, value);\r\n\t\tconst dates = this._getDates();\r\n\r\n\t\t$array.each(minorSelectedItems, (index) => {\r\n\t\t\tlet minorDataItem: DataItem<this[\"_dataItemSettings\"]>;\r\n\t\t\tif (this.minorDataItems.length < this._m + 1) {\r\n\t\t\t\tminorDataItem = new DataItem<this[\"_dataItemSettings\"]>(this, undefined, {});\r\n\t\t\t\tthis.minorDataItems.push(minorDataItem);\r\n\t\t\t\tthis.processDataItem(minorDataItem);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tminorDataItem = this.minorDataItems[this._m];\r\n\t\t\t}\r\n\r\n\t\t\tvalue = dates[index];\r\n\t\t\tminorDataItem.setRaw(\"value\", value);\r\n\t\t\tminorDataItem.setRaw(\"endValue\", value + minorDuration);\r\n\t\t\tminorDataItem.setRaw(\"index\", index);\r\n\r\n\t\t\tthis._createAssets(minorDataItem, [\"minor\"], true);\r\n\r\n\t\t\tconst label = minorDataItem.get(\"label\");\r\n\t\t\tif (label) {\r\n\t\t\t\tif (this.get(\"renderer\").get(\"minorLabelsEnabled\")) {\r\n\t\t\t\t\tlet date = new Date(value);\r\n\t\t\t\t\tlet format = minorFormats[mTimeUnit];\r\n\t\t\t\t\tlabel.set(\"text\", this._root.dateFormatter.format(date, format!));\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tlabel.setPrivate(\"visible\", false);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tthis._toggleDataItem(minorDataItem, true);\r\n\t\t\tthis._prepareDataItem(minorDataItem, 1);\r\n\t\t\tthis._m++;\r\n\t\t})\r\n\t}\r\n\r\n\r\n\tprotected _getIndexes(value: number, maxValue: number, interval: ITimeInterval, firstValue: number): Array<number> {\r\n\t\tconst items: Array<number> = [];\r\n\t\tconst timeUnit = interval.timeUnit;\r\n\t\tconst count = interval.count;\r\n\t\tconst mmm = this._getM(timeUnit);\r\n\r\n\t\tconst baseInterval = this.getPrivate(\"baseInterval\");\r\n\r\n\t\tconst root = this._root;\r\n\t\tconst dates = this._getDates();\r\n\r\n\t\tlet c = count - 1;\r\n\t\tlet previousValue = -Infinity;\r\n\r\n\t\tlet duration = $time.getDuration(timeUnit, mmm);\r\n\t\tlet fullDuration = $time.getDuration(timeUnit, count * mmm);\r\n\t\tlet originalValue = value;\r\n\r\n\t\tif (timeUnit == \"day\") {\r\n\t\t\tvalue = firstValue;\r\n\t\t}\r\n\r\n\t\twhile (value <= maxValue) {\r\n\t\t\t//value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\tvalue = $time.roun(value, timeUnit, count, root);\r\n\r\n\t\t\tlet index = this.valueToIndex(value);\r\n\t\t\tlet realValue = dates[index];\r\n\r\n\t\t\tif (timeUnit == \"day\" && baseInterval.timeUnit == \"day\") {\r\n\t\t\t\tif (this._hasDate(value)) {\r\n\t\t\t\t\tc++;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (c == count) {\r\n\t\t\t\t\tif (value >= originalValue - fullDuration * 2) {\r\n\t\t\t\t\t\t$array.move(items, index);\r\n\t\t\t\t\t}\r\n\t\t\t\t\tc = 0;\r\n\t\t\t\t}\r\n\t\t\t\tvalue += duration;\r\n\t\t\t\t//value = $time.round(new Date(value), timeUnit, 1, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t\tvalue = $time.roun(value, timeUnit, 1, root);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tif (realValue < value) {\r\n\t\t\t\t\tfor (let i = index, len = dates.length; i < len; i++) {\r\n\t\t\t\t\t\trealValue = dates[i];\r\n\t\t\t\t\t\tif (realValue >= value) {\r\n\t\t\t\t\t\t\tindex = i;\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\t$array.move(items, index);\r\n\r\n\t\t\t\tvalue += fullDuration;\r\n\t\t\t\t//value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t\tvalue = $time.roun(value, timeUnit, count, root);\r\n\t\t\t}\r\n\r\n\t\t\tif (value == previousValue) {\r\n\t\t\t\tvalue += fullDuration + duration;\r\n\t\t\t\t//value = $time.round(new Date(value), timeUnit, count, firstDay, utc, undefined, timezone).getTime();\r\n\t\t\t\tvalue = $time.roun(value, timeUnit, count, root);\r\n\t\t\t}\r\n\t\t\tif (value == previousValue) {\r\n\t\t\t\tbreak;\r\n\t\t\t}\r\n\r\n\t\t\tpreviousValue = value;\r\n\t\t}\r\n\r\n\t\treturn items;\r\n\t}\r\n\r\n\tprotected _hasDate(time: number) {\r\n\t\tconst result = $array.getSortedIndex(this._getDates(), (date) => {\r\n\t\t\treturn $order.compareNumber(date, time);\r\n\t\t});\r\n\r\n\t\treturn result.found;\r\n\t}\r\n\r\n}"]}
@@ -657,6 +657,7 @@ export interface IXYSeriesPrivate extends ISeriesPrivate {
657
657
  highValueYhighSelection?: number;
658
658
  highValueYCloseSelection?: number;
659
659
  outOfSelection?: boolean;
660
+ doNotUpdateLegend?: boolean;
660
661
  }
661
662
  /**
662
663
  * A base class for all XY chart series.
@@ -1 +1 @@
1
- {"version":3,"file":"XYSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/XYSeries.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XYSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/xy/series/XYSeries.ts"],"names":[],"mappings":"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"}