@amcharts/amcharts5 5.2.5 → 5.2.8

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 (297) hide show
  1. package/.internal/charts/funnel/FunnelSeries.d.ts +2 -0
  2. package/.internal/charts/funnel/FunnelSeries.d.ts.map +1 -1
  3. package/.internal/charts/funnel/FunnelSeries.js +27 -0
  4. package/.internal/charts/funnel/FunnelSeries.js.map +1 -1
  5. package/.internal/charts/hierarchy/Pack.d.ts +6 -0
  6. package/.internal/charts/hierarchy/Pack.d.ts.map +1 -1
  7. package/.internal/charts/hierarchy/Pack.js +1 -0
  8. package/.internal/charts/hierarchy/Pack.js.map +1 -1
  9. package/.internal/charts/map/MapChart.d.ts +2 -1
  10. package/.internal/charts/map/MapChart.d.ts.map +1 -1
  11. package/.internal/charts/map/MapChart.js +25 -1
  12. package/.internal/charts/map/MapChart.js.map +1 -1
  13. package/.internal/charts/map/MapChartDefaultTheme.d.ts.map +1 -1
  14. package/.internal/charts/map/MapChartDefaultTheme.js +2 -1
  15. package/.internal/charts/map/MapChartDefaultTheme.js.map +1 -1
  16. package/.internal/charts/map/MapPointSeries.d.ts +5 -0
  17. package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
  18. package/.internal/charts/map/MapPointSeries.js.map +1 -1
  19. package/.internal/charts/percent/PercentChart.d.ts +1 -0
  20. package/.internal/charts/percent/PercentChart.d.ts.map +1 -1
  21. package/.internal/charts/percent/PercentChart.js +9 -0
  22. package/.internal/charts/percent/PercentChart.js.map +1 -1
  23. package/.internal/charts/percent/PercentSeries.d.ts +1 -1
  24. package/.internal/charts/percent/PercentSeries.d.ts.map +1 -1
  25. package/.internal/charts/percent/PercentSeries.js +6 -0
  26. package/.internal/charts/percent/PercentSeries.js.map +1 -1
  27. package/.internal/charts/pie/PieChart.d.ts.map +1 -1
  28. package/.internal/charts/pie/PieChart.js +5 -0
  29. package/.internal/charts/pie/PieChart.js.map +1 -1
  30. package/.internal/charts/pie/PieSeries.d.ts +2 -0
  31. package/.internal/charts/pie/PieSeries.d.ts.map +1 -1
  32. package/.internal/charts/pie/PieSeries.js +26 -2
  33. package/.internal/charts/pie/PieSeries.js.map +1 -1
  34. package/.internal/charts/stock/StockChart.d.ts +1 -0
  35. package/.internal/charts/stock/StockChart.d.ts.map +1 -1
  36. package/.internal/charts/stock/StockChart.js +34 -25
  37. package/.internal/charts/stock/StockChart.js.map +1 -1
  38. package/.internal/charts/stock/drawing/AverageSeries.d.ts +3 -1
  39. package/.internal/charts/stock/drawing/AverageSeries.d.ts.map +1 -1
  40. package/.internal/charts/stock/drawing/AverageSeries.js.map +1 -1
  41. package/.internal/charts/stock/drawing/CalloutSeries.d.ts +6 -2
  42. package/.internal/charts/stock/drawing/CalloutSeries.d.ts.map +1 -1
  43. package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -1
  44. package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts.map +1 -1
  45. package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -1
  46. package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts +3 -1
  47. package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts.map +1 -1
  48. package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -1
  49. package/.internal/charts/stock/drawing/LabelSeries.d.ts +3 -3
  50. package/.internal/charts/stock/drawing/LabelSeries.d.ts.map +1 -1
  51. package/.internal/charts/stock/drawing/LabelSeries.js.map +1 -1
  52. package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts +3 -1
  53. package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts.map +1 -1
  54. package/.internal/charts/stock/drawing/QuadrantLineSeries.js.map +1 -1
  55. package/.internal/charts/stock/drawing/RegressionSeries.d.ts +3 -1
  56. package/.internal/charts/stock/drawing/RegressionSeries.d.ts.map +1 -1
  57. package/.internal/charts/stock/drawing/RegressionSeries.js.map +1 -1
  58. package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts +3 -1
  59. package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts.map +1 -1
  60. package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -1
  61. package/.internal/charts/stock/drawing/SpriteResizer.d.ts +4 -2
  62. package/.internal/charts/stock/drawing/SpriteResizer.d.ts.map +1 -1
  63. package/.internal/charts/stock/drawing/SpriteResizer.js.map +1 -1
  64. package/.internal/charts/stock/drawing/TrendLineSeries.d.ts +3 -1
  65. package/.internal/charts/stock/drawing/TrendLineSeries.d.ts.map +1 -1
  66. package/.internal/charts/stock/drawing/TrendLineSeries.js.map +1 -1
  67. package/.internal/charts/stock/drawing/VerticalLineSeries.d.ts.map +1 -1
  68. package/.internal/charts/stock/drawing/VerticalLineSeries.js.map +1 -1
  69. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts +6 -6
  70. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.d.ts.map +1 -1
  71. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js +1 -1
  72. package/.internal/charts/stock/indicators/AccumulativeSwingIndex.js.map +1 -1
  73. package/.internal/charts/stock/indicators/Aroon.d.ts +2 -2
  74. package/.internal/charts/stock/indicators/Aroon.js.map +1 -1
  75. package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts +2 -2
  76. package/.internal/charts/stock/indicators/AwesomeOscillator.d.ts.map +1 -1
  77. package/.internal/charts/stock/indicators/AwesomeOscillator.js.map +1 -1
  78. package/.internal/charts/stock/indicators/BollingerBands.d.ts +3 -3
  79. package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -1
  80. package/.internal/charts/stock/indicators/CommodityChannelIndex.d.ts +4 -4
  81. package/.internal/charts/stock/indicators/CommodityChannelIndex.js.map +1 -1
  82. package/.internal/charts/stock/indicators/Indicator.d.ts +17 -12
  83. package/.internal/charts/stock/indicators/Indicator.d.ts.map +1 -1
  84. package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
  85. package/.internal/charts/stock/indicators/MACD.d.ts +6 -6
  86. package/.internal/charts/stock/indicators/MACD.d.ts.map +1 -1
  87. package/.internal/charts/stock/indicators/MACD.js.map +1 -1
  88. package/.internal/charts/stock/indicators/MovingAverageDeviation.d.ts +2 -2
  89. package/.internal/charts/stock/indicators/MovingAverageDeviation.js.map +1 -1
  90. package/.internal/charts/stock/indicators/MovingAverageEnvelope.d.ts +2 -2
  91. package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -1
  92. package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts +4 -4
  93. package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -1
  94. package/.internal/charts/stock/indicators/StochasticOscillator.d.ts +3 -3
  95. package/.internal/charts/stock/indicators/StochasticOscillator.d.ts.map +1 -1
  96. package/.internal/charts/stock/indicators/StochasticOscillator.js.map +1 -1
  97. package/.internal/charts/stock/indicators/Volume.d.ts +2 -2
  98. package/.internal/charts/stock/indicators/Volume.d.ts.map +1 -1
  99. package/.internal/charts/stock/indicators/Volume.js.map +1 -1
  100. package/.internal/charts/stock/indicators/WilliamsR.d.ts +4 -4
  101. package/.internal/charts/stock/indicators/WilliamsR.js.map +1 -1
  102. package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts.map +1 -1
  103. package/.internal/charts/stock/toolbar/DateRangeSelector.js +7 -5
  104. package/.internal/charts/stock/toolbar/DateRangeSelector.js.map +1 -1
  105. package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts.map +1 -1
  106. package/.internal/charts/stock/toolbar/StockToolbarCSS.js +7 -2
  107. package/.internal/charts/stock/toolbar/StockToolbarCSS.js.map +1 -1
  108. package/.internal/charts/xy/XYChart.d.ts +17 -3
  109. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  110. package/.internal/charts/xy/XYChart.js +25 -2
  111. package/.internal/charts/xy/XYChart.js.map +1 -1
  112. package/.internal/charts/xy/axes/Axis.d.ts +5 -0
  113. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  114. package/.internal/charts/xy/axes/Axis.js +1 -0
  115. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  116. package/.internal/charts/xy/axes/DateAxis.d.ts +1 -1
  117. package/.internal/charts/xy/axes/DateAxis.js +2 -2
  118. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  119. package/.internal/charts/xy/series/LineSeries.d.ts +16 -2
  120. package/.internal/charts/xy/series/LineSeries.d.ts.map +1 -1
  121. package/.internal/charts/xy/series/LineSeries.js +29 -4
  122. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  123. package/.internal/core/Root.d.ts +18 -1
  124. package/.internal/core/Root.d.ts.map +1 -1
  125. package/.internal/core/Root.js +187 -27
  126. package/.internal/core/Root.js.map +1 -1
  127. package/.internal/core/render/Container.d.ts.map +1 -1
  128. package/.internal/core/render/Container.js +9 -1
  129. package/.internal/core/render/Container.js.map +1 -1
  130. package/.internal/core/render/Label.d.ts +2 -2
  131. package/.internal/core/render/Label.d.ts.map +1 -1
  132. package/.internal/core/render/Label.js.map +1 -1
  133. package/.internal/core/render/Scrollbar.d.ts +2 -2
  134. package/.internal/core/render/Scrollbar.d.ts.map +1 -1
  135. package/.internal/core/render/Scrollbar.js +5 -2
  136. package/.internal/core/render/Scrollbar.js.map +1 -1
  137. package/.internal/core/render/Series.d.ts.map +1 -1
  138. package/.internal/core/render/Series.js +3 -0
  139. package/.internal/core/render/Series.js.map +1 -1
  140. package/.internal/core/render/Sprite.d.ts +11 -1
  141. package/.internal/core/render/Sprite.d.ts.map +1 -1
  142. package/.internal/core/render/Sprite.js +25 -15
  143. package/.internal/core/render/Sprite.js.map +1 -1
  144. package/.internal/core/render/Text.d.ts +1 -1
  145. package/.internal/core/render/Text.d.ts.map +1 -1
  146. package/.internal/core/render/Text.js.map +1 -1
  147. package/.internal/core/render/backend/CanvasRenderer.d.ts +3 -1
  148. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  149. package/.internal/core/render/backend/CanvasRenderer.js +82 -17
  150. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  151. package/.internal/core/render/backend/Renderer.d.ts +2 -1
  152. package/.internal/core/render/backend/Renderer.d.ts.map +1 -1
  153. package/.internal/core/render/backend/Renderer.js.map +1 -1
  154. package/.internal/core/util/EventDispatcher.d.ts +1 -1
  155. package/.internal/core/util/EventDispatcher.d.ts.map +1 -1
  156. package/.internal/core/util/EventDispatcher.js.map +1 -1
  157. package/.internal/core/util/TextFormatter.js +2 -2
  158. package/.internal/core/util/TextFormatter.js.map +1 -1
  159. package/.internal/core/util/Utils.d.ts +9 -0
  160. package/.internal/core/util/Utils.d.ts.map +1 -1
  161. package/.internal/core/util/Utils.js +10 -0
  162. package/.internal/core/util/Utils.js.map +1 -1
  163. package/.internal/plugins/exporting/Exporting.d.ts.map +1 -1
  164. package/.internal/plugins/exporting/Exporting.js +26 -15
  165. package/.internal/plugins/exporting/Exporting.js.map +1 -1
  166. package/CHANGELOG.md +51 -2
  167. package/examples/javascript/flow-chord/package.json +1 -1
  168. package/examples/javascript/flow-chord-directed/package.json +1 -1
  169. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  170. package/examples/javascript/flow-sankey/package.json +1 -1
  171. package/examples/javascript/gauge/package.json +1 -1
  172. package/examples/javascript/gauge-bands/package.json +1 -1
  173. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  174. package/examples/javascript/hierarchy-pack/package.json +1 -1
  175. package/examples/javascript/hierarchy-partition/package.json +1 -1
  176. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  177. package/examples/javascript/hierarchy-tree/package.json +1 -1
  178. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  179. package/examples/javascript/json/package.json +1 -1
  180. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  181. package/examples/javascript/map-day-and-night/package.json +1 -1
  182. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  183. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  184. package/examples/javascript/map-with-bubbles/package.json +1 -1
  185. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  186. package/examples/javascript/misc-40-charts/package.json +1 -1
  187. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  188. package/examples/javascript/pie-chart/package.json +1 -1
  189. package/examples/javascript/pie-donut-chart/package.json +1 -1
  190. package/examples/javascript/pie-variable-radius/package.json +1 -1
  191. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  192. package/examples/javascript/radar-heat-map/package.json +1 -1
  193. package/examples/javascript/radar-line/package.json +1 -1
  194. package/examples/javascript/radar-time-line/package.json +1 -1
  195. package/examples/javascript/sliced-funnel/package.json +1 -1
  196. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  197. package/examples/javascript/sliced-pyramid/package.json +1 -1
  198. package/examples/javascript/stock-chart/package.json +1 -1
  199. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  200. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  201. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  202. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  203. package/examples/javascript/stock-chart-live/package.json +1 -1
  204. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  205. package/examples/javascript/venn-diagram/package.json +1 -1
  206. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  207. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  208. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  209. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  210. package/examples/javascript/xy-bubble/package.json +1 -1
  211. package/examples/javascript/xy-candlestick/package.json +1 -1
  212. package/examples/javascript/xy-clustered-column/package.json +1 -1
  213. package/examples/javascript/xy-column/package.json +1 -1
  214. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  215. package/examples/javascript/xy-data-grouping/package.json +1 -1
  216. package/examples/javascript/xy-draggable-range/package.json +1 -1
  217. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  218. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  219. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  220. package/examples/javascript/xy-line/package.json +1 -1
  221. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  222. package/examples/javascript/xy-live-data/package.json +1 -1
  223. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  224. package/examples/javascript/xy-ohlc/package.json +1 -1
  225. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  226. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  227. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  228. package/examples/javascript/xy-stacked-column/package.json +1 -1
  229. package/examples/javascript/xy-stacked-step/package.json +1 -1
  230. package/examples/javascript/xy-stock/package.json +1 -1
  231. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  232. package/examples/typescript/flow-chord/package.json +1 -1
  233. package/examples/typescript/flow-chord-directed/package.json +1 -1
  234. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  235. package/examples/typescript/flow-sankey/package.json +1 -1
  236. package/examples/typescript/gauge/package.json +1 -1
  237. package/examples/typescript/gauge-bands/package.json +1 -1
  238. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  239. package/examples/typescript/hierarchy-pack/package.json +1 -1
  240. package/examples/typescript/hierarchy-partition/package.json +1 -1
  241. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  242. package/examples/typescript/hierarchy-tree/package.json +1 -1
  243. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  244. package/examples/typescript/json/package.json +1 -1
  245. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  246. package/examples/typescript/map-day-and-night/package.json +1 -1
  247. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  248. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  249. package/examples/typescript/map-with-bubbles/package.json +1 -1
  250. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  251. package/examples/typescript/misc-40-charts/package.json +1 -1
  252. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  253. package/examples/typescript/pie-chart/package.json +1 -1
  254. package/examples/typescript/pie-donut-chart/package.json +1 -1
  255. package/examples/typescript/pie-variable-radius/package.json +1 -1
  256. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  257. package/examples/typescript/radar-heat-map/package.json +1 -1
  258. package/examples/typescript/radar-line/package.json +1 -1
  259. package/examples/typescript/radar-time-line/package.json +1 -1
  260. package/examples/typescript/sliced-funnel/package.json +1 -1
  261. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  262. package/examples/typescript/sliced-pyramid/package.json +1 -1
  263. package/examples/typescript/stock-chart/package.json +1 -1
  264. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  265. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  266. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  267. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  268. package/examples/typescript/stock-chart-live/package.json +1 -1
  269. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  270. package/examples/typescript/venn-diagram/package.json +1 -1
  271. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  272. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  273. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  274. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  275. package/examples/typescript/xy-bubble/package.json +1 -1
  276. package/examples/typescript/xy-candlestick/package.json +1 -1
  277. package/examples/typescript/xy-clustered-column/package.json +1 -1
  278. package/examples/typescript/xy-column/package.json +1 -1
  279. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  280. package/examples/typescript/xy-data-grouping/package.json +1 -1
  281. package/examples/typescript/xy-draggable-range/package.json +1 -1
  282. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  283. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  284. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  285. package/examples/typescript/xy-line/package.json +1 -1
  286. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  287. package/examples/typescript/xy-live-data/package.json +1 -1
  288. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  289. package/examples/typescript/xy-ohlc/package.json +1 -1
  290. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  291. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  292. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  293. package/examples/typescript/xy-stacked-column/package.json +1 -1
  294. package/examples/typescript/xy-stacked-step/package.json +1 -1
  295. package/examples/typescript/xy-stock/package.json +1 -1
  296. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  297. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"StockChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/StockChart.ts"],"names":[],"mappings":"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","sourcesContent":["import type { StockPanel } from \"./StockPanel\";\nimport type { StockLegend, IStockLegendDataItem } from \"./StockLegend\";\nimport type { Axis } from \"../xy/axes/Axis\";\nimport type { AxisRenderer } from \"../xy/axes/AxisRenderer\";\nimport type { BaseColumnSeries } from \"../xy/series/BaseColumnSeries\";\nimport type { IValueAxisSettings } from \"../xy/axes/ValueAxis\";\nimport type { XYSeries, IXYSeriesDataItem, IXYSeriesSettings } from \"../xy/series/XYSeries\";\nimport type { DataItem } from \"../../core/render/Component\";\nimport type { Indicator } from \"./indicators/Indicator\";\nimport type { DrawingSeries } from \"./drawing/DrawingSeries\";\n\nimport { PanelControls } from \"./PanelControls\";\nimport { StockChartDefaultTheme } from \"./StockChartDefaultTheme\";\nimport { XYChartDefaultTheme } from \"../xy/XYChartDefaultTheme\";\nimport { Container, IContainerPrivate, IContainerSettings, IContainerEvents } from \"../../core/render/Container\";\nimport { ListAutoDispose } from \"../../core/util/List\";\nimport { Rectangle } from \"../../core/render/Rectangle\";\nimport { p100, percent, Percent } from \"../../core/util/Percent\";\nimport { SettingsModal } from \"./SettingsModal\";\nimport { Color } from \"../../core/util/Color\";\nimport { registry } from \"../../core/Registry\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $object from \"../../core/util/Object\";\n\nexport interface IStockChartSettings extends IContainerSettings {\n\n\t/**\n\t * Main value series.\n\t *\n\t * This series is used to target by settings, as well as calculating\n\t * indicators, and annotations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Setting_main_series}\n\t */\n\tstockSeries?: XYSeries;\n\n\t/**\n\t * Main volume series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Setting_main_series}\n\t */\n\tvolumeSeries?: XYSeries;\n\n\t/**\n\t * @ignore\n\t */\n\tcomparingSeriesSettings?: Partial<IXYSeriesSettings>;\n\n\t/**\n\t * Settings to be applied to the the main value series, when chart is\n\t * switched to \"percent scale\".\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/percent-mode/#Configuring} for more info\n\t */\n\tpercentScaleSeriesSettings?: Partial<IXYSeriesSettings>;\n\n\t/**\n\t * Settings to be applied to the [[ValueAxis]] of the main value series,\n\t * when chart is switched to \"percent scale\".\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/percent-mode/#Configuring} for more info\n\t */\n\tpercentScaleValueAxisSettings?: Partial<IValueAxisSettings<AxisRenderer>>;\n\n\t/**\n\t * If set to `true`, the chart will go into \"percent scale\" when compared\n\t * series are added to chart, and will exit it when all of the comparisons\n\t * are removed.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/percent-mode/} for more info\n\t * @default true\n\t */\n\tautoSetPercentScale?: boolean;\n\n\t/**\n\t * This color will be applied to columns/candles on the main value series (series\n\t * set as `stockSeries`) where the open value is lower or equal to the close\n\t * value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tstockPositiveColor?: Color;\n\n\t/**\n\t * This color will be applied to columns/candles on the main value series (series\n\t * set as `stockSeries`) where the open value is higher than the close value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tstockNegativeColor?: Color;\n\n\t/**\n\t * This color will be applied to columns/candles on the main volume series (series\n\t * set as `stockSeries`) where the open value is lower or equal to the close\n\t * value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tvolumePositiveColor?: Color;\n\n\t/**\n\t * This color will be applied to columns/candles on the main volume series (series\n\t * set as `stockSeries`) where the open value is higher than the close value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tvolumeNegativeColor?: Color;\n\n}\n\nexport interface IStockChartPrivate extends IContainerPrivate {\n\n\t/**\n\t * A instance of [[SettingsModal]].\n\t */\n\tsettingsModal: SettingsModal;\n\n\t/**\n\t * Indicates if chart has currently have any \"compared\" series set.\n\t */\n\tcomparing?: boolean;\n\n\t/**\n\t * A list of compared series.\n\t */\n\tcomparedSeries?: XYSeries[];\n\n}\n\nexport interface IStockChartEvents extends IContainerEvents {\n\n}\n\n\n/**\n * A main class for the Stock Chart.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/} for more info\n * @important\n */\nexport class StockChart extends Container {\n\n\tpublic static className: string = \"StockChart\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([StockChart.className]);\n\n\n\tdeclare public _settings: IStockChartSettings;\n\tdeclare public _privateSettings: IStockChartPrivate;\n\tdeclare public _events: IContainerEvents;\n\n\tprotected _xAxes: Array<Axis<AxisRenderer>> = [];\n\tprotected _downY?: number;\n\tprotected _upperPanel?: StockPanel;\n\tprotected _dhp?: Percent;\n\tprotected _uhp?: Percent;\n\tprotected _downResizer?: Rectangle;\n\n\t/**\n\t * A list of stock panels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Panels} for more info\n\t */\n\tpublic readonly panels: ListAutoDispose<StockPanel> = new ListAutoDispose();\n\n\t/**\n\t * A list of indicators on chart.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\n\t */\n\tpublic readonly indicators: ListAutoDispose<Indicator> = new ListAutoDispose();\n\n\t/**\n\t * A [[Container]], resiting on top of the charts, suitable for additional\n\t * tools, like [[Scrollbar]].\n\t * \n\t * @default Container.new()\n\t */\n\tpublic readonly toolsContainer: Container = this.children.push(Container.new(this._root, { width: p100, themeTags: [] }));\n\n\t/**\n\t * A [[Container]] where all the stock panels are placed into.\n\t * \n\t * @default Container.new()\n\t */\n\tpublic readonly panelsContainer: Container = this.children.push(Container.new(this._root, { width: p100, height: p100, layout: this._root.verticalLayout, themeTags: [\"chartscontainer\"] }));\n\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"stock\"]);\n\t\tthis._defaultThemes.push(StockChartDefaultTheme.new(this._root));\n\t\tthis._defaultThemes.push(XYChartDefaultTheme.new(this._root));\n\n\t\tconst tooltipContainer = this._root.tooltipContainer;\n\t\ttooltipContainer.set(\"themeTags\", $utils.mergeTags(tooltipContainer.get(\"themeTags\", []), [\"stock\"]));\n\n\t\tsuper._afterNew();\n\n\t\tconst children = this.panelsContainer.children;\n\t\tthis._disposers.push(this.panels.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (chart) => {\n\t\t\t\t\tthis._removePanel(chart);\n\t\t\t\t})\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tchildren.moveValue(change.newValue);\n\t\t\t\tthis._processPanel(change.newValue);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tchildren.setIndex(change.index, change.newValue);\n\t\t\t\tthis._processPanel(change.newValue);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tchildren.insertIndex(change.index, change.newValue);\n\t\t\t\tthis._processPanel(change.newValue);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._removePanel(change.oldValue);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push(this.indicators.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (indicator) => {\n\t\t\t\t\tthis._removeIndicator(indicator);\n\t\t\t\t})\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._processIndicator(change.newValue);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._processIndicator(change.newValue);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._processIndicator(change.newValue);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._removeIndicator(change.oldValue);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t}));\n\n\t\tthis.setPrivateRaw(\"settingsModal\", SettingsModal.new(this.root, {\n\t\t\tstockChart: this\n\t\t}));\n\n\t\tlet license = false;\n\t\tfor (let i = 0; i < registry.licenses.length; i++) {\n\t\t\tif (registry.licenses[i].match(/^AM5S.{5,}/i)) {\n\t\t\t\tlicense = true;\n\t\t\t}\n\t\t}\n\t\tif (!license) {\n\t\t\tthis._root._showBranding();\n\t\t}\n\t\telse {\n\t\t\tthis._root._licenseApplied();\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\n\t\tif (this.isDirty(\"volumeNegativeColor\") || this.isDirty(\"volumePositiveColor\")) {\n\t\t\tconst volumeSeries = this.get(\"volumeSeries\");\n\t\t\tif (volumeSeries && volumeSeries.isType<BaseColumnSeries>(\"BaseColumnSeries\")) {\n\t\t\t\tvolumeSeries.columns.each((column) => {\n\t\t\t\t\tcolumn._markDirtyKey(\"fill\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\n\t\tif (this.isDirty(\"stockNegativeColor\") || this.isDirty(\"stockPositiveColor\")) {\n\t\t\tif (stockSeries && stockSeries.isType<BaseColumnSeries>(\"BaseColumnSeries\")) {\n\t\t\t\tconst stockNegativeColor = this.get(\"stockNegativeColor\", this._root.interfaceColors.get(\"negative\"));\n\t\t\t\tconst stockPositiveColor = this.get(\"stockPositiveColor\", this._root.interfaceColors.get(\"positive\"));\n\t\t\t\tlet previous = stockSeries.dataItems[0];\n\t\t\t\t$array.each(stockSeries.dataItems, (dataItem) => {\n\t\t\t\t\tconst column = dataItem.get(\"graphics\");\n\t\t\t\t\tif (column) {\n\t\t\t\t\t\tconst dropFromOpen = column.states.lookup(\"dropFromOpen\");\n\t\t\t\t\t\tif (dropFromOpen) {\n\t\t\t\t\t\t\tdropFromOpen.setAll({ fill: stockNegativeColor, stroke: stockNegativeColor });\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst riseFromOpen = column.states.lookup(\"riseFromOpen\");\n\t\t\t\t\t\tif (riseFromOpen) {\n\t\t\t\t\t\t\triseFromOpen.setAll({ fill: stockPositiveColor, stroke: stockPositiveColor });\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tstockSeries._applyGraphicsStates(dataItem, previous);\n\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\tstockSeries.markDirtyValues();\n\t\t\t}\n\t\t}\n\n\t\tif (this.isDirty(\"stockSeries\")) {\n\n\t\t\tif (stockSeries) {\n\t\t\t\tthis.indicators.each((indicator) => {\n\t\t\t\t\tindicator.set(\"stockSeries\", stockSeries);\n\t\t\t\t})\n\t\t\t\tconst mainChart = stockSeries.chart;\n\n\t\t\t\tif (mainChart) {\n\t\t\t\t\tconst previous = this._prevSettings.stockSeries;\n\t\t\t\t\tmainChart.series.each((series) => {\n\t\t\t\t\t\tif (series.isType<DrawingSeries>(\"DrawingSeries\")) {\n\t\t\t\t\t\t\tlet s = series.get(\"series\");\n\t\t\t\t\t\t\tif (s == previous) {\n\t\t\t\t\t\t\t\tseries.set(\"series\", stockSeries);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (this.getPrivate(\"comparing\")) {\n\t\t\t\t\tthis.setPercentScale(true);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tsuper._prepareChildren();\n\t}\n\n\t/**\n\t * Enables or disables percent scale mode.\n\t *\n\t * If `percentScale` is not set, it will try to determine the status on its own.\n\t *\n\t * In percent scale mode `percentScaleSeriesSettings` and `percentScaleValueAxisSettings` will\n\t * be applied to the regular series on the main panel and its Y axis.\n\t * \n\t * @param percentScale Comparison mode active\n\t */\n\tpublic setPercentScale(percentScale?: boolean): void {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tconst seriesSettings = this.get(\"percentScaleSeriesSettings\");\n\t\tconst axisSettings = this.get(\"percentScaleValueAxisSettings\");\n\t\tif (stockSeries) {\n\t\t\tconst mainChart = stockSeries.chart;\n\t\t\tconst yAxis = stockSeries.get(\"yAxis\");\n\t\t\tthis._maybePrepAxisDefaults();\n\t\t\tif (mainChart) {\n\t\t\t\tconst seriesList: XYSeries[] = [];\n\t\t\t\tmainChart.series.each((series) => {\n\t\t\t\t\tif (series.get(\"yAxis\") == yAxis) {\n\t\t\t\t\t\tseriesList.push(series);\n\t\t\t\t\t\tthis._maybePrepSeriesDefaults(series);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (percentScale == undefined) {\n\t\t\t\t\tpercentScale = this.getPrivate(\"comparedSeries\", []).length > 0;\n\t\t\t\t}\n\n\t\t\t\tthis.setPrivate(\"comparing\", percentScale);\n\n\t\t\t\tif (seriesSettings) {\n\t\t\t\t\t$array.each(seriesList, (series) => {\n\t\t\t\t\t\tif (percentScale) {\n\t\t\t\t\t\t\tseries.setAll(seriesSettings);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tseries.states.apply(\"comparingDefaults\");\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (axisSettings) {\n\t\t\t\t\tif (percentScale) {\n\t\t\t\t\t\tyAxis.setAll(axisSettings);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tyAxis.states.apply(\"comparingDefaults\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Adds a \"compared\" series to chart. Returns the same series.\n\t *\n\t * @param series Compared series\n\t * @return Compared series\n\t */\n\tpublic addComparingSeries(series: XYSeries): XYSeries {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tif (stockSeries) {\n\t\t\tconst chart = stockSeries.chart;\n\t\t\tif (chart) {\n\t\t\t\tchart.series.push(series);\n\t\t\t}\n\n\t\t\t// Apply comparingSeriesSettings\n\t\t\tconst comparingSeriesSettings = this.get(\"comparingSeriesSettings\");\n\t\t\tif (comparingSeriesSettings) {\n\t\t\t\tseries.setAll(comparingSeriesSettings);\n\t\t\t}\n\n\t\t\tconst comparedSeries = this.getPrivate(\"comparedSeries\");\n\t\t\tif (comparedSeries) {\n\t\t\t\tcomparedSeries.push(series);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.setPrivate(\"comparedSeries\", [series]);\n\t\t\t}\n\n\t\t\tconst legendDataItem = stockSeries.get(\"legendDataItem\");\n\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst legend = legendDataItem.component;\n\t\t\t\tif (legend.isType<StockLegend>(\"StockLegend\")) {\n\t\t\t\t\tlegend.data.push(series);\n\t\t\t\t\tconst ldi = series.get(\"legendDataItem\") as DataItem<IStockLegendDataItem>;\n\t\t\t\t\tif (ldi) {\n\t\t\t\t\t\tconst closeButton = ldi.get(\"closeButton\");\n\t\t\t\t\t\tcloseButton.set(\"forceHidden\", false);\n\t\t\t\t\t\tcloseButton.events.on(\"click\", () => {\n\t\t\t\t\t\t\tthis.removeComparingSeries(series);\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.get(\"autoSetPercentScale\")) {\n\t\t\t\tthis.setPercentScale(true);\n\t\t\t}\n\n\t\t}\n\t\treturn series;\n\t}\n\n\t/**\n\t * Removes compared series.\n\t * \n\t * @param series Compared series\n\t */\n\tpublic removeComparingSeries(series: XYSeries) {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tif (stockSeries) {\n\t\t\tconst chart = stockSeries.chart;\n\t\t\tif (chart) {\n\t\t\t\tchart.series.removeValue(series);\n\t\t\t}\n\n\t\t\tconst comparedSeries = this.getPrivate(\"comparedSeries\");\n\t\t\tif (comparedSeries) {\n\t\t\t\t$array.remove(comparedSeries, series);\n\t\t\t\tif (comparedSeries.length == 0 && this.get(\"autoSetPercentScale\")) {\n\t\t\t\t\tthis.setPercentScale(true);\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\n\t\tconst ldi = series.get(\"legendDataItem\") as DataItem<IStockLegendDataItem>;\n\t\tif (ldi) {\n\t\t\tconst legend = ldi.component;\n\t\t\tlegend.data.removeValue(series);\n\t\t}\n\n\t}\n\n\tprotected _maybePrepSeriesDefaults(series: XYSeries): void {\n\t\tif (!series.states.lookup(\"comparingDefaults\")) {\n\t\t\tconst seriesSettings = this.get(\"percentScaleSeriesSettings\");\n\t\t\tconst defaults: any = {};\n\t\t\t$object.each(seriesSettings, (key, _val) => {\n\t\t\t\tdefaults[key] = (<any>series).get(key);\n\t\t\t});\n\t\t\tseries.states.create(\"comparingDefaults\", defaults);\n\t\t}\n\t}\n\n\tprotected _maybePrepAxisDefaults(): void {\n\t\tconst stockSeries = this.get(\"stockSeries\")!;\n\t\tconst axis = stockSeries.get(\"yAxis\");\n\t\tif (!axis.states.lookup(\"comparingDefaults\")) {\n\t\t\tconst axisSettings = this.get(\"percentScaleValueAxisSettings\");\n\t\t\tconst defaults: any = {};\n\t\t\t$object.each(axisSettings, (key, _val) => {\n\t\t\t\tdefaults[key] = (<any>axis).get(key);\n\t\t\t});\n\t\t\taxis.states.create(\"comparingDefaults\", defaults);\n\t\t}\n\t}\n\n\tprotected _processIndicator(indicator: Indicator) {\n\t\tthis.children.push(indicator);\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tif (stockSeries) {\n\t\t\tindicator.set(\"stockSeries\", stockSeries);\n\t\t}\n\n\t\tconst volumeSeries = this.get(\"volumeSeries\");\n\t\tif (volumeSeries) {\n\t\t\tindicator.set(\"volumeSeries\", volumeSeries);\n\t\t}\n\n\t\tif (this.getPrivate(\"comparing\")) {\n\t\t\tthis.setPercentScale(true);\n\t\t}\n\n\t\tindicator.prepareData();\n\t}\n\n\tprotected _removeIndicator(indicator: Indicator) {\n\t\tthis.children.removeValue(indicator);\n\t}\n\n\tprotected _removePanel(chart: StockPanel) {\n\t\tthis.panelsContainer.children.removeValue(chart);\n\t}\n\n\tpublic _updateControls() {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tthis.panels.each((panel) => {\n\t\t\tconst panelControls = panel.panelControls;\n\t\t\tconst index = this.panelsContainer.children.indexOf(panel);\n\t\t\tconst len = this.panels.length;\n\n\t\t\tpanelControls.upButton.setPrivate(\"visible\", false);\n\t\t\tpanelControls.downButton.setPrivate(\"visible\", false);\n\t\t\tpanelControls.expandButton.setPrivate(\"visible\", false);\n\t\t\tpanelControls.closeButton.setPrivate(\"visible\", false);\n\n\t\t\tif (len > 1) {\n\t\t\t\tpanelControls.expandButton.setPrivate(\"visible\", true);\n\n\t\t\t\tif (index != 0) {\n\t\t\t\t\tpanelControls.upButton.setPrivate(\"visible\", true);\n\t\t\t\t}\n\t\t\t\tif (index != len - 1) {\n\t\t\t\t\tpanelControls.downButton.setPrivate(\"visible\", true);\n\t\t\t\t}\n\n\t\t\t\tif (!stockSeries || stockSeries.chart != panel) {\n\t\t\t\t\tpanelControls.closeButton.setPrivate(\"visible\", true);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (stockSeries) {\n\t\t\t\tthis.indicators.each((indicator) => {\n\t\t\t\t\tindicator.set(\"stockSeries\", stockSeries);\n\t\t\t\t});\n\t\t\t}\n\t\t})\n\n\t}\n\n\tprotected _processPanel(panel: StockPanel) {\n\n\t\tpanel.setPrivate(\"otherCharts\", this.panels.values);\n\t\tpanel.setPrivate(\"stockChart\", this);\n\t\tpanel.panelControls = panel.topPlotContainer.children.push(PanelControls.new(this._root, { stockPanel: panel, stockChart: this }));\n\t\tthis._updateControls();\n\n\t\tif (this.panels.length > 1) {\n\t\t\tconst resizer = panel.children.push(Rectangle.new(this._root, { themeTags: [\"panelresizer\"] }))\n\t\t\tresizer.events.on(\"pointerdown\", (e) => {\n\t\t\t\tconst chartsContainer = this.panelsContainer;\n\t\t\t\tthis._downResizer = e.target;\n\t\t\t\tthis.panels.each((chart) => {\n\t\t\t\t\tchart.set(\"height\", percent(chart.height() / chartsContainer.height() * 100))\n\t\t\t\t})\n\n\t\t\t\tthis._downY = chartsContainer.toLocal(e.point).y;\n\n\t\t\t\tconst upperChart = this.panels.getIndex(this.panels.indexOf(panel) - 1);\n\t\t\t\tthis._upperPanel = upperChart;\n\t\t\t\tif (upperChart) {\n\t\t\t\t\tthis._uhp = upperChart.get(\"height\") as Percent;\n\t\t\t\t}\n\n\t\t\t\tthis._dhp = panel.get(\"height\") as Percent;\n\t\t\t})\n\n\t\t\tresizer.events.on(\"pointerup\", () => {\n\t\t\t\tthis._downResizer = undefined;\n\t\t\t})\n\n\t\t\tresizer.events.on(\"globalpointermove\", (e) => {\n\t\t\t\tif (e.target == this._downResizer) {\n\t\t\t\t\tconst chartsContainer = this.panelsContainer;\n\t\t\t\t\tconst height = chartsContainer.height();\n\t\t\t\t\tconst upperChart = this._upperPanel;\n\n\t\t\t\t\tif (upperChart) {\n\t\t\t\t\t\tconst index = this.panels.indexOf(upperChart) + 2\n\t\t\t\t\t\tlet max = height - panel.get(\"minHeight\", 0);\n\t\t\t\t\t\tconst lowerChart = this.panels.getIndex(index);\n\t\t\t\t\t\tif (lowerChart) {\n\t\t\t\t\t\t\tmax = lowerChart.y() - panel.get(\"minHeight\", 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//console.log(upperChart.get(\"minHeight\", 0))\n\t\t\t\t\t\tconst y = Math.max(upperChart.y() + upperChart.get(\"minHeight\", 0) + upperChart.get(\"paddingTop\", 0), Math.min(chartsContainer.toLocal(e.point).y, max));\n\n\t\t\t\t\t\tconst downY = this._downY;\n\t\t\t\t\t\tconst dhp = this._dhp;\n\t\t\t\t\t\tconst uhp = this._uhp;\n\t\t\t\t\t\tif (downY != null && dhp != null && uhp != null) {\n\t\t\t\t\t\t\tconst diff = (downY - y) / height;\n\t\t\t\t\t\t\tpanel.set(\"height\", percent((dhp.value + diff) * 100));\n\t\t\t\t\t\t\tupperChart.set(\"height\", percent((uhp.value - diff) * 100))\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t\tpanel.xAxes.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (axis) => {\n\t\t\t\t\tthis._removeXAxis(axis);\n\t\t\t\t})\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._processXAxis(change.newValue);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._processXAxis(change.newValue);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._processXAxis(change.newValue);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._removeXAxis(change.oldValue);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t})\n\n\t\tpanel.leftAxesContainer.events.on(\"boundschanged\", () => {\n\t\t\tthis._syncYAxesSize();\n\t\t})\n\n\t\tpanel.rightAxesContainer.events.on(\"boundschanged\", () => {\n\t\t\tthis._syncYAxesSize();\n\t\t})\n\n\t}\n\n\tprotected _syncYAxesSize() {\n\t\tvar maxLeft = 0;\n\t\tvar maxRight = 0;\n\t\tthis.panels.each((chart) => {\n\t\t\tlet lw = chart.leftAxesContainer.width();\n\t\t\tlet rw = chart.rightAxesContainer.width();\n\t\t\tif (lw > maxLeft) {\n\t\t\t\tmaxLeft = lw;\n\t\t\t}\n\t\t\tif (rw > maxRight) {\n\t\t\t\tmaxRight = rw;\n\t\t\t}\n\t\t})\n\t\tthis.panels.each((chart) => {\n\t\t\tchart.leftAxesContainer.set(\"minWidth\", maxLeft);\n\t\t\tchart.rightAxesContainer.set(\"minWidth\", maxRight);\n\t\t})\n\n\t\tthis.toolsContainer.set(\"paddingRight\", maxRight);\n\t\tthis.toolsContainer.set(\"paddingRight\", maxRight);\n\t}\n\n\tprotected _removeXAxis(_axis: Axis<AxisRenderer>) {\n\n\t}\n\n\tprotected _processXAxis(axis: Axis<AxisRenderer>) {\n\t\t$array.move(this._xAxes, axis);\n\t\taxis.on(\"start\", () => {\n\t\t\tif (axis._skipSync != true) {\n\t\t\t\tthis._syncXAxes(axis);\n\t\t\t}\n\t\t})\n\t\taxis.on(\"end\", () => {\n\t\t\tif (axis._skipSync != true) {\n\t\t\t\tthis._syncXAxes(axis);\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected _syncXAxes(axis: Axis<AxisRenderer>) {\n\t\t$array.each(this._xAxes, (xAxis) => {\n\t\t\tif (xAxis != axis) {\n\t\t\t\txAxis._skipSync = true;\n\t\t\t\txAxis.set(\"start\", axis.get(\"start\"));\n\t\t\t\txAxis.set(\"end\", axis.get(\"end\"));\n\t\t\t\txAxis._skipSync = false;\n\t\t\t}\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getVolumeColor(dataItem: DataItem<IXYSeriesDataItem>, negativeColor?: Color, positiveColor?: Color): Color | undefined {\n\t\tif (dataItem) {\n\t\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\t\tconst volumeSeries = dataItem.component;\n\n\t\t\tif (!negativeColor) {\n\t\t\t\tnegativeColor = this.get(\"volumeNegativeColor\", this.root.interfaceColors.get(\"negative\", Color.fromHex(0xff0000)));\n\t\t\t}\n\n\t\t\tif (!positiveColor) {\n\t\t\t\tpositiveColor = this.get(\"volumePositiveColor\", this.root.interfaceColors.get(\"positive\", Color.fromHex(0x00FF00)));\n\t\t\t}\n\n\t\t\tif (stockSeries && volumeSeries) {\n\t\t\t\tconst index = volumeSeries.dataItems.indexOf(dataItem);\n\t\t\t\tif (index > 0) {\n\t\t\t\t\tlet stockDataItem = stockSeries.dataItems[index];\n\t\t\t\t\tif (stockDataItem) {\n\t\t\t\t\t\tlet close = stockDataItem.get(\"valueY\");\n\t\t\t\t\t\tif (close != null) {\n\t\t\t\t\t\t\tfor (let i = index - 1; i >= 0; i--) {\n\t\t\t\t\t\t\t\tlet di = stockSeries.dataItems[i];\n\t\t\t\t\t\t\t\tlet previousClose = di.get(\"valueY\");\n\n\t\t\t\t\t\t\t\tif (previousClose != null) {\n\t\t\t\t\t\t\t\t\tif (close < previousClose) {\n\t\t\t\t\t\t\t\t\t\treturn negativeColor;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\t\treturn positiveColor;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn positiveColor;\n\t}\n}\n"]}
1
+ {"version":3,"file":"StockChart.js","sourceRoot":"","sources":["../../../../../src/.internal/charts/stock/StockChart.ts"],"names":[],"mappings":"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","sourcesContent":["import type { StockPanel } from \"./StockPanel\";\nimport type { StockLegend, IStockLegendDataItem } from \"./StockLegend\";\nimport type { Axis } from \"../xy/axes/Axis\";\nimport type { AxisRenderer } from \"../xy/axes/AxisRenderer\";\nimport type { BaseColumnSeries } from \"../xy/series/BaseColumnSeries\";\nimport type { IValueAxisSettings } from \"../xy/axes/ValueAxis\";\nimport type { XYSeries, IXYSeriesDataItem, IXYSeriesSettings } from \"../xy/series/XYSeries\";\nimport type { DataItem } from \"../../core/render/Component\";\nimport type { Indicator } from \"./indicators/Indicator\";\nimport type { DrawingSeries } from \"./drawing/DrawingSeries\";\n\nimport { PanelControls } from \"./PanelControls\";\nimport { StockChartDefaultTheme } from \"./StockChartDefaultTheme\";\nimport { XYChartDefaultTheme } from \"../xy/XYChartDefaultTheme\";\nimport { Container, IContainerPrivate, IContainerSettings, IContainerEvents } from \"../../core/render/Container\";\nimport { ListAutoDispose } from \"../../core/util/List\";\nimport { Rectangle } from \"../../core/render/Rectangle\";\nimport { p100, percent, Percent } from \"../../core/util/Percent\";\nimport { SettingsModal } from \"./SettingsModal\";\nimport { Color } from \"../../core/util/Color\";\nimport { registry } from \"../../core/Registry\";\n\nimport * as $array from \"../../core/util/Array\";\nimport * as $utils from \"../../core/util/Utils\";\nimport * as $object from \"../../core/util/Object\";\n\nexport interface IStockChartSettings extends IContainerSettings {\n\n\t/**\n\t * Main value series.\n\t *\n\t * This series is used to target by settings, as well as calculating\n\t * indicators, and annotations.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Setting_main_series}\n\t */\n\tstockSeries?: XYSeries;\n\n\t/**\n\t * Main volume series.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Setting_main_series}\n\t */\n\tvolumeSeries?: XYSeries;\n\n\t/**\n\t * @ignore\n\t */\n\tcomparingSeriesSettings?: Partial<IXYSeriesSettings>;\n\n\t/**\n\t * Settings to be applied to the the main value series, when chart is\n\t * switched to \"percent scale\".\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/percent-mode/#Configuring} for more info\n\t */\n\tpercentScaleSeriesSettings?: Partial<IXYSeriesSettings>;\n\n\t/**\n\t * Settings to be applied to the [[ValueAxis]] of the main value series,\n\t * when chart is switched to \"percent scale\".\n\t * \n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/percent-mode/#Configuring} for more info\n\t */\n\tpercentScaleValueAxisSettings?: Partial<IValueAxisSettings<AxisRenderer>>;\n\n\t/**\n\t * If set to `true`, the chart will go into \"percent scale\" when compared\n\t * series are added to chart, and will exit it when all of the comparisons\n\t * are removed.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/percent-mode/} for more info\n\t * @default true\n\t */\n\tautoSetPercentScale?: boolean;\n\n\t/**\n\t * This color will be applied to columns/candles on the main value series (series\n\t * set as `stockSeries`) where the open value is lower or equal to the close\n\t * value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tstockPositiveColor?: Color;\n\n\t/**\n\t * This color will be applied to columns/candles on the main value series (series\n\t * set as `stockSeries`) where the open value is higher than the close value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tstockNegativeColor?: Color;\n\n\t/**\n\t * This color will be applied to columns/candles on the main volume series (series\n\t * set as `stockSeries`) where the open value is lower or equal to the close\n\t * value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tvolumePositiveColor?: Color;\n\n\t/**\n\t * This color will be applied to columns/candles on the main volume series (series\n\t * set as `stockSeries`) where the open value is higher than the close value.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Positive_negative_colors} for more info\n\t */\n\tvolumeNegativeColor?: Color;\n\n}\n\nexport interface IStockChartPrivate extends IContainerPrivate {\n\n\t/**\n\t * A instance of [[SettingsModal]].\n\t */\n\tsettingsModal: SettingsModal;\n\n\t/**\n\t * Indicates if chart has currently have any \"compared\" series set.\n\t */\n\tcomparing?: boolean;\n\n\t/**\n\t * A list of compared series.\n\t */\n\tcomparedSeries?: XYSeries[];\n\n}\n\nexport interface IStockChartEvents extends IContainerEvents {\n\n}\n\n\n/**\n * A main class for the Stock Chart.\n *\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/} for more info\n * @important\n */\nexport class StockChart extends Container {\n\n\tpublic static className: string = \"StockChart\";\n\tpublic static classNames: Array<string> = Container.classNames.concat([StockChart.className]);\n\n\n\tdeclare public _settings: IStockChartSettings;\n\tdeclare public _privateSettings: IStockChartPrivate;\n\tdeclare public _events: IContainerEvents;\n\n\tprotected _xAxes: Array<Axis<AxisRenderer>> = [];\n\tprotected _downY?: number;\n\tprotected _upperPanel?: StockPanel;\n\tprotected _dhp?: Percent;\n\tprotected _uhp?: Percent;\n\tprotected _downResizer?: Rectangle;\n\n\t/**\n\t * A list of stock panels.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/#Panels} for more info\n\t */\n\tpublic readonly panels: ListAutoDispose<StockPanel> = new ListAutoDispose();\n\n\t/**\n\t * A list of indicators on chart.\n\t *\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\n\t */\n\tpublic readonly indicators: ListAutoDispose<Indicator> = new ListAutoDispose();\n\n\t/**\n\t * A [[Container]], resiting on top of the charts, suitable for additional\n\t * tools, like [[Scrollbar]].\n\t * \n\t * @default Container.new()\n\t */\n\tpublic readonly toolsContainer: Container = this.children.push(Container.new(this._root, { width: p100, themeTags: [] }));\n\n\t/**\n\t * A [[Container]] where all the stock panels are placed into.\n\t * \n\t * @default Container.new()\n\t */\n\tpublic readonly panelsContainer: Container = this.children.push(Container.new(this._root, { width: p100, height: p100, layout: this._root.verticalLayout, themeTags: [\"chartscontainer\"] }));\n\n\n\tprotected _afterNew() {\n\t\tthis._settings.themeTags = $utils.mergeTags(this._settings.themeTags, [\"stock\"]);\n\t\tthis._defaultThemes.push(StockChartDefaultTheme.new(this._root));\n\t\tthis._defaultThemes.push(XYChartDefaultTheme.new(this._root));\n\n\t\tconst tooltipContainer = this._root.tooltipContainer;\n\t\ttooltipContainer.set(\"themeTags\", $utils.mergeTags(tooltipContainer.get(\"themeTags\", []), [\"stock\"]));\n\n\t\tsuper._afterNew();\n\n\t\tconst children = this.panelsContainer.children;\n\t\tthis._disposers.push(this.panels.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (chart) => {\n\t\t\t\t\tthis._removePanel(chart);\n\t\t\t\t})\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tchildren.moveValue(change.newValue);\n\t\t\t\tthis._processPanel(change.newValue);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tchildren.setIndex(change.index, change.newValue);\n\t\t\t\tthis._processPanel(change.newValue);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tchildren.insertIndex(change.index, change.newValue);\n\t\t\t\tthis._processPanel(change.newValue);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._removePanel(change.oldValue);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t}));\n\n\t\tthis._disposers.push(this.indicators.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (indicator) => {\n\t\t\t\t\tthis._removeIndicator(indicator);\n\t\t\t\t})\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._processIndicator(change.newValue);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._processIndicator(change.newValue);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._processIndicator(change.newValue);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._removeIndicator(change.oldValue);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t}));\n\n\t\tthis.setPrivateRaw(\"settingsModal\", SettingsModal.new(this.root, {\n\t\t\tstockChart: this\n\t\t}));\n\n\t\tlet license = false;\n\t\tfor (let i = 0; i < registry.licenses.length; i++) {\n\t\t\tif (registry.licenses[i].match(/^AM5S.{5,}/i)) {\n\t\t\t\tlicense = true;\n\t\t\t}\n\t\t}\n\t\tif (!license) {\n\t\t\tthis._root._showBranding();\n\t\t}\n\t\telse {\n\t\t\tthis._root._licenseApplied();\n\t\t}\n\t}\n\n\tpublic _prepareChildren() {\n\n\t\tif (this.isDirty(\"volumeNegativeColor\") || this.isDirty(\"volumePositiveColor\")) {\n\t\t\tconst volumeSeries = this.get(\"volumeSeries\");\n\t\t\tif (volumeSeries && volumeSeries.isType<BaseColumnSeries>(\"BaseColumnSeries\")) {\n\t\t\t\tvolumeSeries.columns.each((column) => {\n\t\t\t\t\tcolumn._markDirtyKey(\"fill\");\n\t\t\t\t})\n\t\t\t}\n\t\t}\n\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\n\n\t\tif (this.isDirty(\"stockSeries\")) {\n\n\t\t\tif (stockSeries) {\n\t\t\t\tthis.indicators.each((indicator) => {\n\t\t\t\t\tindicator.set(\"stockSeries\", stockSeries);\n\t\t\t\t})\n\t\t\t\tconst mainChart = stockSeries.chart;\n\n\t\t\t\tif (mainChart) {\n\t\t\t\t\tconst previous = this._prevSettings.stockSeries;\n\t\t\t\t\tmainChart.series.each((series) => {\n\t\t\t\t\t\tif (series.isType<DrawingSeries>(\"DrawingSeries\")) {\n\t\t\t\t\t\t\tlet s = series.get(\"series\");\n\t\t\t\t\t\t\tif (s == previous) {\n\t\t\t\t\t\t\t\tseries.set(\"series\", stockSeries);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (this.getPrivate(\"comparing\")) {\n\t\t\t\t\tthis.setPercentScale(true);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\tsuper._prepareChildren();\n\t}\n\n\tpublic _updateChildren() {\n\t\tsuper._updateChildren()\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\n\t\tif (this.isDirty(\"stockNegativeColor\") || this.isDirty(\"stockPositiveColor\") || this.isDirty(\"stockSeries\")) {\n\t\t\tif (stockSeries && stockSeries.isType<BaseColumnSeries>(\"BaseColumnSeries\")) {\n\t\t\t\tconst stockNegativeColor = this.get(\"stockNegativeColor\", this._root.interfaceColors.get(\"negative\"));\n\t\t\t\tconst stockPositiveColor = this.get(\"stockPositiveColor\", this._root.interfaceColors.get(\"positive\"));\n\t\t\t\tlet previous = stockSeries.dataItems[0];\n\n\t\t\t\t$array.each(stockSeries.dataItems, (dataItem) => {\n\t\t\t\t\tconst column = dataItem.get(\"graphics\");\n\t\t\t\t\tif (column) {\n\t\t\t\t\t\tconst dropFromOpen = column.states.lookup(\"dropFromOpen\");\n\t\t\t\t\t\tif (dropFromOpen) {\n\t\t\t\t\t\t\tdropFromOpen.setAll({ fill: stockNegativeColor, stroke: stockNegativeColor });\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tconst riseFromOpen = column.states.lookup(\"riseFromOpen\");\n\t\t\t\t\t\tif (riseFromOpen) {\n\t\t\t\t\t\t\triseFromOpen.setAll({ fill: stockPositiveColor, stroke: stockPositiveColor });\n\t\t\t\t\t\t}\n\n\t\t\t\t\t\tstockSeries._applyGraphicsStates(dataItem, previous);\n\t\t\t\t\t\tprevious = dataItem;\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t\tstockSeries.markDirtyValues();\n\t\t\t}\n\t\t}\n\t}\n\n\n\t/**\n\t * Enables or disables percent scale mode.\n\t *\n\t * If `percentScale` is not set, it will try to determine the status on its own.\n\t *\n\t * In percent scale mode `percentScaleSeriesSettings` and `percentScaleValueAxisSettings` will\n\t * be applied to the regular series on the main panel and its Y axis.\n\t * \n\t * @param percentScale Comparison mode active\n\t */\n\tpublic setPercentScale(percentScale?: boolean): void {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tconst seriesSettings = this.get(\"percentScaleSeriesSettings\");\n\t\tconst axisSettings = this.get(\"percentScaleValueAxisSettings\");\n\t\tif (stockSeries) {\n\t\t\tconst mainChart = stockSeries.chart;\n\t\t\tconst yAxis = stockSeries.get(\"yAxis\");\n\t\t\tthis._maybePrepAxisDefaults();\n\t\t\tif (mainChart) {\n\t\t\t\tconst seriesList: XYSeries[] = [];\n\t\t\t\tmainChart.series.each((series) => {\n\t\t\t\t\tif (series.get(\"yAxis\") == yAxis) {\n\t\t\t\t\t\tseriesList.push(series);\n\t\t\t\t\t\tthis._maybePrepSeriesDefaults(series);\n\t\t\t\t\t}\n\t\t\t\t});\n\n\t\t\t\tif (percentScale == undefined) {\n\t\t\t\t\tpercentScale = this.getPrivate(\"comparedSeries\", []).length > 0;\n\t\t\t\t}\n\n\t\t\t\tthis.setPrivate(\"comparing\", percentScale);\n\n\t\t\t\tif (seriesSettings) {\n\t\t\t\t\t$array.each(seriesList, (series) => {\n\t\t\t\t\t\tif (percentScale) {\n\t\t\t\t\t\t\tseries.setAll(seriesSettings);\n\t\t\t\t\t\t}\n\t\t\t\t\t\telse {\n\t\t\t\t\t\t\tseries.states.apply(\"comparingDefaults\");\n\t\t\t\t\t\t}\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif (axisSettings) {\n\t\t\t\t\tif (percentScale) {\n\t\t\t\t\t\tyAxis.setAll(axisSettings);\n\t\t\t\t\t}\n\t\t\t\t\telse {\n\t\t\t\t\t\tyAxis.states.apply(\"comparingDefaults\");\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t * Adds a \"compared\" series to chart. Returns the same series.\n\t *\n\t * @param series Compared series\n\t * @return Compared series\n\t */\n\tpublic addComparingSeries(series: XYSeries): XYSeries {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tif (stockSeries) {\n\t\t\tconst chart = stockSeries.chart;\n\t\t\tif (chart) {\n\t\t\t\tchart.series.push(series);\n\t\t\t}\n\n\t\t\t// Apply comparingSeriesSettings\n\t\t\tconst comparingSeriesSettings = this.get(\"comparingSeriesSettings\");\n\t\t\tif (comparingSeriesSettings) {\n\t\t\t\tseries.setAll(comparingSeriesSettings);\n\t\t\t}\n\n\t\t\tconst comparedSeries = this.getPrivate(\"comparedSeries\");\n\t\t\tif (comparedSeries) {\n\t\t\t\tcomparedSeries.push(series);\n\t\t\t}\n\t\t\telse {\n\t\t\t\tthis.setPrivate(\"comparedSeries\", [series]);\n\t\t\t}\n\n\t\t\tconst legendDataItem = stockSeries.get(\"legendDataItem\");\n\n\t\t\tif (legendDataItem) {\n\t\t\t\tconst legend = legendDataItem.component;\n\t\t\t\tif (legend.isType<StockLegend>(\"StockLegend\")) {\n\t\t\t\t\tlegend.data.push(series);\n\t\t\t\t\tconst ldi = series.get(\"legendDataItem\") as DataItem<IStockLegendDataItem>;\n\t\t\t\t\tif (ldi) {\n\t\t\t\t\t\tconst closeButton = ldi.get(\"closeButton\");\n\t\t\t\t\t\tcloseButton.set(\"forceHidden\", false);\n\t\t\t\t\t\tcloseButton.events.on(\"click\", () => {\n\t\t\t\t\t\t\tthis.removeComparingSeries(series);\n\t\t\t\t\t\t})\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (this.get(\"autoSetPercentScale\")) {\n\t\t\t\tthis.setPercentScale(true);\n\t\t\t}\n\n\t\t}\n\t\treturn series;\n\t}\n\n\t/**\n\t * Removes compared series.\n\t * \n\t * @param series Compared series\n\t */\n\tpublic removeComparingSeries(series: XYSeries) {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tif (stockSeries) {\n\t\t\tconst chart = stockSeries.chart;\n\t\t\tif (chart) {\n\t\t\t\tchart.series.removeValue(series);\n\t\t\t}\n\n\t\t\tconst comparedSeries = this.getPrivate(\"comparedSeries\");\n\t\t\tif (comparedSeries) {\n\t\t\t\t$array.remove(comparedSeries, series);\n\t\t\t\tif (comparedSeries.length == 0 && this.get(\"autoSetPercentScale\")) {\n\t\t\t\t\tthis.setPercentScale(true);\n\t\t\t\t}\n\t\t\t}\n\n\t\t}\n\n\t\tconst ldi = series.get(\"legendDataItem\") as DataItem<IStockLegendDataItem>;\n\t\tif (ldi) {\n\t\t\tconst legend = ldi.component;\n\t\t\tlegend.data.removeValue(series);\n\t\t}\n\n\t}\n\n\tprotected _maybePrepSeriesDefaults(series: XYSeries): void {\n\t\tif (!series.states.lookup(\"comparingDefaults\")) {\n\t\t\tconst seriesSettings = this.get(\"percentScaleSeriesSettings\");\n\t\t\tconst defaults: any = {};\n\t\t\t$object.each(seriesSettings, (key, _val) => {\n\t\t\t\tdefaults[key] = (<any>series).get(key);\n\t\t\t});\n\t\t\tseries.states.create(\"comparingDefaults\", defaults);\n\t\t}\n\t}\n\n\tprotected _maybePrepAxisDefaults(): void {\n\t\tconst stockSeries = this.get(\"stockSeries\")!;\n\t\tconst axis = stockSeries.get(\"yAxis\");\n\t\tif (!axis.states.lookup(\"comparingDefaults\")) {\n\t\t\tconst axisSettings = this.get(\"percentScaleValueAxisSettings\");\n\t\t\tconst defaults: any = {};\n\t\t\t$object.each(axisSettings, (key, _val) => {\n\t\t\t\tdefaults[key] = (<any>axis).get(key);\n\t\t\t});\n\t\t\taxis.states.create(\"comparingDefaults\", defaults);\n\t\t}\n\t}\n\n\tprotected _processIndicator(indicator: Indicator) {\n\t\tthis.children.push(indicator);\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tif (stockSeries) {\n\t\t\tindicator.set(\"stockSeries\", stockSeries);\n\t\t}\n\n\t\tconst volumeSeries = this.get(\"volumeSeries\");\n\t\tif (volumeSeries) {\n\t\t\tindicator.set(\"volumeSeries\", volumeSeries);\n\t\t}\n\n\t\tif (this.getPrivate(\"comparing\")) {\n\t\t\tthis.setPercentScale(true);\n\t\t}\n\n\t\tindicator.prepareData();\n\t}\n\n\tprotected _removeIndicator(indicator: Indicator) {\n\t\tthis.children.removeValue(indicator);\n\t}\n\n\tprotected _removePanel(chart: StockPanel) {\n\t\tthis.panelsContainer.children.removeValue(chart);\n\t}\n\n\tpublic _updateControls() {\n\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\tthis.panels.each((panel) => {\n\t\t\tconst panelControls = panel.panelControls;\n\t\t\tconst index = this.panelsContainer.children.indexOf(panel);\n\t\t\tconst len = this.panels.length;\n\n\t\t\tpanelControls.upButton.setPrivate(\"visible\", false);\n\t\t\tpanelControls.downButton.setPrivate(\"visible\", false);\n\t\t\tpanelControls.expandButton.setPrivate(\"visible\", false);\n\t\t\tpanelControls.closeButton.setPrivate(\"visible\", false);\n\n\t\t\tif (len > 1) {\n\t\t\t\tpanelControls.expandButton.setPrivate(\"visible\", true);\n\n\t\t\t\tif (index != 0) {\n\t\t\t\t\tpanelControls.upButton.setPrivate(\"visible\", true);\n\t\t\t\t}\n\t\t\t\tif (index != len - 1) {\n\t\t\t\t\tpanelControls.downButton.setPrivate(\"visible\", true);\n\t\t\t\t}\n\n\t\t\t\tif (!stockSeries || stockSeries.chart != panel) {\n\t\t\t\t\tpanelControls.closeButton.setPrivate(\"visible\", true);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (stockSeries) {\n\t\t\t\tthis.indicators.each((indicator) => {\n\t\t\t\t\tindicator.set(\"stockSeries\", stockSeries);\n\t\t\t\t});\n\t\t\t}\n\t\t})\n\n\t}\n\n\tprotected _processPanel(panel: StockPanel) {\n\n\t\tpanel.setPrivate(\"otherCharts\", this.panels.values);\n\t\tpanel.setPrivate(\"stockChart\", this);\n\t\tpanel.panelControls = panel.topPlotContainer.children.push(PanelControls.new(this._root, { stockPanel: panel, stockChart: this }));\n\t\tthis._updateControls();\n\n\t\tif (this.panels.length > 1) {\n\t\t\tconst resizer = panel.children.push(Rectangle.new(this._root, { themeTags: [\"panelresizer\"] }))\n\t\t\tresizer.events.on(\"pointerdown\", (e) => {\n\t\t\t\tconst chartsContainer = this.panelsContainer;\n\t\t\t\tthis._downResizer = e.target;\n\t\t\t\tthis.panels.each((chart) => {\n\t\t\t\t\tchart.set(\"height\", percent(chart.height() / chartsContainer.height() * 100))\n\t\t\t\t})\n\n\t\t\t\tthis._downY = chartsContainer.toLocal(e.point).y;\n\n\t\t\t\tconst upperChart = this.panels.getIndex(this.panels.indexOf(panel) - 1);\n\t\t\t\tthis._upperPanel = upperChart;\n\t\t\t\tif (upperChart) {\n\t\t\t\t\tthis._uhp = upperChart.get(\"height\") as Percent;\n\t\t\t\t}\n\n\t\t\t\tthis._dhp = panel.get(\"height\") as Percent;\n\t\t\t})\n\n\t\t\tresizer.events.on(\"pointerup\", () => {\n\t\t\t\tthis._downResizer = undefined;\n\t\t\t})\n\n\t\t\tresizer.events.on(\"globalpointermove\", (e) => {\n\t\t\t\tif (e.target == this._downResizer) {\n\t\t\t\t\tconst chartsContainer = this.panelsContainer;\n\t\t\t\t\tconst height = chartsContainer.height();\n\t\t\t\t\tconst upperChart = this._upperPanel;\n\n\t\t\t\t\tif (upperChart) {\n\t\t\t\t\t\tconst index = this.panels.indexOf(upperChart) + 2\n\t\t\t\t\t\tlet max = height - panel.get(\"minHeight\", 0);\n\t\t\t\t\t\tconst lowerChart = this.panels.getIndex(index);\n\t\t\t\t\t\tif (lowerChart) {\n\t\t\t\t\t\t\tmax = lowerChart.y() - panel.get(\"minHeight\", 0);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t//console.log(upperChart.get(\"minHeight\", 0))\n\t\t\t\t\t\tconst y = Math.max(upperChart.y() + upperChart.get(\"minHeight\", 0) + upperChart.get(\"paddingTop\", 0), Math.min(chartsContainer.toLocal(e.point).y, max));\n\n\t\t\t\t\t\tconst downY = this._downY;\n\t\t\t\t\t\tconst dhp = this._dhp;\n\t\t\t\t\t\tconst uhp = this._uhp;\n\t\t\t\t\t\tif (downY != null && dhp != null && uhp != null) {\n\t\t\t\t\t\t\tconst diff = (downY - y) / height;\n\t\t\t\t\t\t\tpanel.set(\"height\", percent((dhp.value + diff) * 100));\n\t\t\t\t\t\t\tupperChart.set(\"height\", percent((uhp.value - diff) * 100))\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})\n\t\t}\n\t\tpanel.xAxes.events.onAll((change) => {\n\t\t\tif (change.type === \"clear\") {\n\t\t\t\t$array.each(change.oldValues, (axis) => {\n\t\t\t\t\tthis._removeXAxis(axis);\n\t\t\t\t})\n\t\t\t} else if (change.type === \"push\") {\n\t\t\t\tthis._processXAxis(change.newValue);\n\t\t\t} else if (change.type === \"setIndex\") {\n\t\t\t\tthis._processXAxis(change.newValue);\n\t\t\t} else if (change.type === \"insertIndex\") {\n\t\t\t\tthis._processXAxis(change.newValue);\n\t\t\t} else if (change.type === \"removeIndex\") {\n\t\t\t\tthis._removeXAxis(change.oldValue);\n\t\t\t} else {\n\t\t\t\tthrow new Error(\"Unknown IListEvent type\");\n\t\t\t}\n\t\t})\n\n\t\tpanel.leftAxesContainer.events.on(\"boundschanged\", () => {\n\t\t\tthis._syncYAxesSize();\n\t\t})\n\n\t\tpanel.rightAxesContainer.events.on(\"boundschanged\", () => {\n\t\t\tthis._syncYAxesSize();\n\t\t})\n\n\t}\n\n\tprotected _syncYAxesSize() {\n\t\tvar maxLeft = 0;\n\t\tvar maxRight = 0;\n\t\tthis.panels.each((chart) => {\n\t\t\tlet lw = chart.leftAxesContainer.width();\n\t\t\tlet rw = chart.rightAxesContainer.width();\n\t\t\tif (lw > maxLeft) {\n\t\t\t\tmaxLeft = lw;\n\t\t\t}\n\t\t\tif (rw > maxRight) {\n\t\t\t\tmaxRight = rw;\n\t\t\t}\n\t\t})\n\t\tthis.panels.each((chart) => {\n\t\t\tchart.leftAxesContainer.set(\"minWidth\", maxLeft);\n\t\t\tchart.rightAxesContainer.set(\"minWidth\", maxRight);\n\t\t})\n\n\t\tthis.toolsContainer.set(\"paddingRight\", maxRight);\n\t\tthis.toolsContainer.set(\"paddingRight\", maxRight);\n\t}\n\n\tprotected _removeXAxis(_axis: Axis<AxisRenderer>) {\n\n\t}\n\n\tprotected _processXAxis(axis: Axis<AxisRenderer>) {\n\t\t$array.move(this._xAxes, axis);\n\t\taxis.on(\"start\", () => {\n\t\t\tif (axis._skipSync != true) {\n\t\t\t\tthis._syncXAxes(axis);\n\t\t\t}\n\t\t})\n\t\taxis.on(\"end\", () => {\n\t\t\tif (axis._skipSync != true) {\n\t\t\t\tthis._syncXAxes(axis);\n\t\t\t}\n\t\t})\n\t}\n\n\tprotected _syncXAxes(axis: Axis<AxisRenderer>) {\n\t\t$array.each(this._xAxes, (xAxis) => {\n\t\t\tif (xAxis != axis) {\n\t\t\t\txAxis._skipSync = true;\n\t\t\t\txAxis.set(\"start\", axis.get(\"start\"));\n\t\t\t\txAxis.set(\"end\", axis.get(\"end\"));\n\t\t\t\txAxis._skipSync = false;\n\t\t\t}\n\t\t})\n\t}\n\n\t/**\n\t * @ignore\n\t */\n\tpublic getVolumeColor(dataItem: DataItem<IXYSeriesDataItem>, negativeColor?: Color, positiveColor?: Color): Color | undefined {\n\t\tif (dataItem) {\n\t\t\tconst stockSeries = this.get(\"stockSeries\");\n\t\t\tconst volumeSeries = dataItem.component;\n\n\t\t\tif (!negativeColor) {\n\t\t\t\tnegativeColor = this.get(\"volumeNegativeColor\", this.root.interfaceColors.get(\"negative\", Color.fromHex(0xff0000)));\n\t\t\t}\n\n\t\t\tif (!positiveColor) {\n\t\t\t\tpositiveColor = this.get(\"volumePositiveColor\", this.root.interfaceColors.get(\"positive\", Color.fromHex(0x00FF00)));\n\t\t\t}\n\n\t\t\tif (stockSeries && volumeSeries) {\n\t\t\t\tconst index = volumeSeries.dataItems.indexOf(dataItem);\n\t\t\t\tif (index > 0) {\n\t\t\t\t\tlet stockDataItem = stockSeries.dataItems[index];\n\t\t\t\t\tif (stockDataItem) {\n\t\t\t\t\t\tlet close = stockDataItem.get(\"valueY\");\n\t\t\t\t\t\tif (close != null) {\n\t\t\t\t\t\t\tfor (let i = index - 1; i >= 0; i--) {\n\t\t\t\t\t\t\t\tlet di = stockSeries.dataItems[i];\n\t\t\t\t\t\t\t\tlet previousClose = di.get(\"valueY\");\n\n\t\t\t\t\t\t\t\tif (previousClose != null) {\n\t\t\t\t\t\t\t\t\tif (close < previousClose) {\n\t\t\t\t\t\t\t\t\t\treturn negativeColor;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\telse {\n\t\t\t\t\t\t\t\t\t\treturn positiveColor;\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\treturn positiveColor;\n\t}\n}\n"]}
@@ -3,7 +3,9 @@ export interface IAverageSeriesDataItem extends ISimpleLineSeriesDataItem {
3
3
  }
4
4
  export interface IAverageSeriesSettings extends ISimpleLineSeriesSettings {
5
5
  /**
6
- * @todo review
6
+ * Value field to use for calculations.
7
+ *
8
+ * @default "value"
7
9
  */
8
10
  field: "open" | "value" | "low" | "high";
9
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"AverageSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/AverageSeries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAGtI,MAAM,WAAW,sBAAuB,SAAQ,yBAAyB;CAExE;AAED,MAAM,WAAW,sBAAuB,SAAQ,yBAAyB;IACxE;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;CACzC;AAED,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;CAEtE;AAED,qBAAa,aAAc,SAAQ,gBAAgB;IAClD,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAiE;IAEzF,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,iBAAiB,EAAE,sBAAsB,CAAC;IAEzD,SAAS,CAAC,IAAI,SAAa;IAE3B,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IA0DtC,SAAS,CAAC,aAAa;CAGvB"}
1
+ {"version":3,"file":"AverageSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/AverageSeries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAGtI,MAAM,WAAW,sBAAuB,SAAQ,yBAAyB;CAExE;AAED,MAAM,WAAW,sBAAuB,SAAQ,yBAAyB;IAExE;;;;OAIG;IACH,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;CAEzC;AAED,MAAM,WAAW,qBAAsB,SAAQ,wBAAwB;CAEtE;AAED,qBAAa,aAAc,SAAQ,gBAAgB;IAClD,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAiE;IAEzF,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,iBAAiB,EAAE,sBAAsB,CAAC;IAEzD,SAAS,CAAC,IAAI,SAAa;IAE3B,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IA0DtC,SAAS,CAAC,aAAa;CAGvB"}
@@ -1 +1 @@
1
- {"version":3,"file":"AverageSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/AverageSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\nimport * as $math from \"../../../core/util/Math\";\r\n\r\nexport interface IAverageSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n\r\n}\r\n\r\nexport interface IAverageSeriesSettings extends ISimpleLineSeriesSettings {\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tfield: \"open\" | \"value\" | \"low\" | \"high\";\r\n}\r\n\r\nexport interface IAverageSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n\r\n}\r\n\r\nexport class AverageSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"AverageSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([AverageSeries.className]);\r\n\r\n\tdeclare public _settings: IAverageSeriesSettings;\r\n\tdeclare public _privateSettings: IAverageSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IAverageSeriesDataItem;\r\n\r\n\tprotected _tag = \"average\";\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\tconst series = this.get(\"series\");\r\n\t\tif (series) {\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\t\tconst min = xAxis.getPrivate(\"min\", 0) + 1;\r\n\t\t\tconst max = xAxis.getPrivate(\"max\", 1) - 1;\r\n\r\n\t\t\tlet x1 = $math.fitToRange(diP1.get(\"valueX\" as any), min, max);\r\n\t\t\tlet x2 = $math.fitToRange(diP2.get(\"valueX\" as any), min, max);\r\n\r\n\t\t\tconst di1 = xAxis.getSeriesItem(series, Math.max(0, xAxis.valueToPosition(x1)));\r\n\t\t\tconst di2 = xAxis.getSeriesItem(series, Math.min(1, xAxis.valueToPosition(x2)));\r\n\r\n\t\t\tconst field = this.get(\"field\") + \"Y\";\r\n\r\n\t\t\tif (di1 && di2) {\r\n\t\t\t\tlet i1 = series.dataItems.indexOf(di1);\r\n\t\t\t\tlet i2 = series.dataItems.indexOf(di2);\r\n\r\n\t\t\t\tif (i1 > i2) {\r\n\t\t\t\t\t[i1, i2] = [i2, i1];\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlet sum = 0;\r\n\t\t\t\tlet count = 0;\r\n\r\n\t\t\t\tfor (var i = i1; i <= i2; i++) {\r\n\t\t\t\t\tconst di = series.dataItems[i];\r\n\t\t\t\t\tconst value = di.get(field as any);\r\n\t\t\t\t\tif (value != null) {\r\n\t\t\t\t\t\tsum += value;\r\n\t\t\t\t\t\tcount++;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst average = sum / count;\r\n\r\n\t\t\t\tdiP1.set(\"valueX\", x1);\r\n\t\t\t\tdiP2.set(\"valueX\", x2);\r\n\r\n\t\t\t\tdiP1.set(\"valueY\", average);\r\n\t\t\t\tdiP1.set(\"valueYWorking\", average);\r\n\r\n\t\t\t\tdiP2.set(\"valueY\", average);\r\n\t\t\t\tdiP2.set(\"valueYWorking\", average);\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\r\n\t\t\t\tthis._positionBullets(diP2);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// need to override so that location would not be set\r\n\tprotected _setXLocation() {\r\n\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"AverageSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/AverageSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\nimport * as $math from \"../../../core/util/Math\";\r\n\r\nexport interface IAverageSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n\r\n}\r\n\r\nexport interface IAverageSeriesSettings extends ISimpleLineSeriesSettings {\r\n\r\n\t/**\r\n\t * Value field to use for calculations.\r\n\t *\r\n\t * @default \"value\"\r\n\t */\r\n\tfield: \"open\" | \"value\" | \"low\" | \"high\";\r\n\r\n}\r\n\r\nexport interface IAverageSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n\r\n}\r\n\r\nexport class AverageSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"AverageSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([AverageSeries.className]);\r\n\r\n\tdeclare public _settings: IAverageSeriesSettings;\r\n\tdeclare public _privateSettings: IAverageSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IAverageSeriesDataItem;\r\n\r\n\tprotected _tag = \"average\";\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\tconst series = this.get(\"series\");\r\n\t\tif (series) {\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\t\tconst min = xAxis.getPrivate(\"min\", 0) + 1;\r\n\t\t\tconst max = xAxis.getPrivate(\"max\", 1) - 1;\r\n\r\n\t\t\tlet x1 = $math.fitToRange(diP1.get(\"valueX\" as any), min, max);\r\n\t\t\tlet x2 = $math.fitToRange(diP2.get(\"valueX\" as any), min, max);\r\n\r\n\t\t\tconst di1 = xAxis.getSeriesItem(series, Math.max(0, xAxis.valueToPosition(x1)));\r\n\t\t\tconst di2 = xAxis.getSeriesItem(series, Math.min(1, xAxis.valueToPosition(x2)));\r\n\r\n\t\t\tconst field = this.get(\"field\") + \"Y\";\r\n\r\n\t\t\tif (di1 && di2) {\r\n\t\t\t\tlet i1 = series.dataItems.indexOf(di1);\r\n\t\t\t\tlet i2 = series.dataItems.indexOf(di2);\r\n\r\n\t\t\t\tif (i1 > i2) {\r\n\t\t\t\t\t[i1, i2] = [i2, i1];\r\n\t\t\t\t}\r\n\r\n\t\t\t\tlet sum = 0;\r\n\t\t\t\tlet count = 0;\r\n\r\n\t\t\t\tfor (var i = i1; i <= i2; i++) {\r\n\t\t\t\t\tconst di = series.dataItems[i];\r\n\t\t\t\t\tconst value = di.get(field as any);\r\n\t\t\t\t\tif (value != null) {\r\n\t\t\t\t\t\tsum += value;\r\n\t\t\t\t\t\tcount++;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst average = sum / count;\r\n\r\n\t\t\t\tdiP1.set(\"valueX\", x1);\r\n\t\t\t\tdiP2.set(\"valueX\", x2);\r\n\r\n\t\t\t\tdiP1.set(\"valueY\", average);\r\n\t\t\t\tdiP1.set(\"valueYWorking\", average);\r\n\r\n\t\t\t\tdiP2.set(\"valueY\", average);\r\n\t\t\t\tdiP2.set(\"valueYWorking\", average);\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\r\n\t\t\t\tthis._positionBullets(diP2);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t// need to override so that location would not be set\r\n\tprotected _setXLocation() {\r\n\r\n\t}\r\n}"]}
@@ -3,13 +3,17 @@ import type { Container } from "../../../core/render/Container";
3
3
  import { LabelSeries, ILabelSeriesSettings, ILabelSeriesPrivate, ILabelSeriesDataItem } from "./LabelSeries";
4
4
  export interface ICalloutSeriesDataItem extends ILabelSeriesDataItem {
5
5
  /**
6
- * @todo review
6
+ * Indicates whether callout will attach itself to the closest data item, as
7
+ * opposed to exact location of the click.
7
8
  */
8
9
  snapToData?: boolean;
9
10
  }
10
11
  export interface ICalloutSeriesSettings extends ILabelSeriesSettings {
11
12
  /**
12
- * @todo review
13
+ * If set to `true`, callout will attach itself to the closest data item, as
14
+ * opposed to exact location of the click.
15
+ *
16
+ * @default true
13
17
  */
14
18
  snapToData?: boolean;
15
19
  }
@@ -1 +1 @@
1
- {"version":3,"file":"CalloutSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/CalloutSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAM7G,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IACnE;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IACnE;;OAEG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;CACjE;AAED,qBAAa,aAAc,SAAQ,WAAW;IAC7C,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA4D;IAEpF,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,iBAAiB,EAAE,sBAAsB,CAAC;IAEzD,SAAS,CAAC,IAAI,SAAa;IAE3B,SAAS,CAAC,SAAS;IAInB,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK;IAMpC,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS;IA8B3C,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK;IAYrC,SAAS,CAAC,eAAe;CAGzB"}
1
+ {"version":3,"file":"CalloutSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/CalloutSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAEhE,OAAO,EAAE,WAAW,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAM7G,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAEnE;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CAErB;AAED,MAAM,WAAW,sBAAuB,SAAQ,oBAAoB;IAEnE;;;;;OAKG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CAErB;AAED,MAAM,WAAW,qBAAsB,SAAQ,mBAAmB;CACjE;AAED,qBAAa,aAAc,SAAQ,WAAW;IAC7C,OAAc,SAAS,EAAE,MAAM,CAAmB;IAClD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA4D;IAEpF,SAAS,EAAE,sBAAsB,CAAC;IAClC,gBAAgB,EAAE,qBAAqB,CAAC;IACxC,iBAAiB,EAAE,sBAAsB,CAAC;IAEzD,SAAS,CAAC,IAAI,SAAa;IAE3B,SAAS,CAAC,SAAS;IAInB,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK;IAMpC,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS;IA8B3C,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,KAAK;IAYrC,SAAS,CAAC,eAAe;CAGzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"CalloutSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/CalloutSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Label } from \"../../../core/render/Label\";\r\nimport type { Container } from \"../../../core/render/Container\";\r\n\r\nimport { LabelSeries, ILabelSeriesSettings, ILabelSeriesPrivate, ILabelSeriesDataItem } from \"./LabelSeries\";\r\nimport { PointedRectangle } from \"../../../core/render/PointedRectangle\";\r\nimport { Color, color } from \"../../../core/util/Color\";\r\n\r\nimport * as $ease from \"../../../core/util/Ease\";\r\n\r\nexport interface ICalloutSeriesDataItem extends ILabelSeriesDataItem {\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tsnapToData?: boolean;\r\n}\r\n\r\nexport interface ICalloutSeriesSettings extends ILabelSeriesSettings {\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tsnapToData?: boolean;\r\n}\r\n\r\nexport interface ICalloutSeriesPrivate extends ILabelSeriesPrivate {\r\n}\r\n\r\nexport class CalloutSeries extends LabelSeries {\r\n\tpublic static className: string = \"CalloutSeries\";\r\n\tpublic static classNames: Array<string> = LabelSeries.classNames.concat([CalloutSeries.className]);\r\n\r\n\tdeclare public _settings: ICalloutSeriesSettings;\r\n\tdeclare public _privateSettings: ICalloutSeriesPrivate;\r\n\tdeclare public _dataItemSettings: ICalloutSeriesDataItem;\r\n\r\n\tprotected _tag = \"callout\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t}\r\n\r\n\tprotected _tweakBullet2(label: Label) {\r\n\t\tconst bgColor = this.get(\"fillColor\", this.get(\"fill\", color(0x000000)));\r\n\t\tlabel.set(\"background\", PointedRectangle.new(this._root, { themeTags: [\"callout\"], strokeOpacity: 0, fill: bgColor }));\r\n\t\tlabel.set(\"fill\", this.get(\"labelFill\", Color.alternative(bgColor, this._root.interfaceColors.get(\"alternativeText\"), this._root.interfaceColors.get(\"text\"))));\r\n\t}\r\n\r\n\tprotected _tweakBullet(container: Container) {\r\n\t\tsuper._tweakBullet(container);\r\n\r\n\t\tconst label = this.getPrivate(\"label\");\r\n\t\tif (label) {\r\n\t\t\tlabel.events.on(\"positionchanged\", () => {\r\n\t\t\t\tthis._updatePointer(label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.events.on(\"click\", () => {\r\n\t\t\t\tthis.spriteResizer.set(\"sprite\", label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.on(\"scale\", () => {\r\n\t\t\t\tthis._updatePointer(label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.on(\"rotation\", () => {\r\n\t\t\t\tthis._updatePointer(label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.setAll({ draggable: true });\r\n\r\n\t\t\tconst defaultState = label.states.lookup(\"default\")!;\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tlabel.animate({ key: \"y\", to: -label.height() / 2 - 10, from: 0, duration: defaultState.get(\"stateAnimationDuration\", 500), easing: defaultState.get(\"stateAnimationEasing\", $ease.out($ease.cubic)) })\r\n\t\t\t}, 50)\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updatePointer(label: Label) {\r\n\t\tconst background = label.get(\"background\");\r\n\t\tif (background instanceof PointedRectangle) {\r\n\t\t\tconst parent = label.parent;\r\n\t\t\tif (parent) {\r\n\t\t\t\tlet point = parent.toGlobal({ x: 0, y: 0 });\r\n\t\t\t\tpoint = background.toLocal(point);\r\n\t\t\t\tbackground.setAll({ pointerX: point.x, pointerY: point.y });\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _hideAllBullets() {\r\n\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"CalloutSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/CalloutSeries.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,WAAW,EAAmE,MAAM,eAAe,CAAC;AAC7G,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAExD,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AA2BjD;IAAmC,iCAAW;IAA9C;QAAA,qEAiEC;QAzDA;;;;mBAAiB,SAAS;WAAC;;IAyD5B,CAAC;;;;;eAvDA;YACC,iBAAM,SAAS,WAAE,CAAC;QACnB,CAAC;;;;;;eAED,UAAwB,KAAY;YACnC,IAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;YACzE,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,SAAS,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;YACvH,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QACjK,CAAC;;;;;;eAED,UAAuB,SAAoB;YAA3C,iBA4BC;YA3BA,iBAAM,YAAY,YAAC,SAAS,CAAC,CAAC;YAE9B,IAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;YACvC,IAAI,KAAK,EAAE;gBACV,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,iBAAiB,EAAE;oBAClC,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAA;gBAEF,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE;oBACxB,KAAI,CAAC,aAAa,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACzC,CAAC,CAAC,CAAA;gBAEF,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE;oBACjB,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAA;gBAEF,KAAK,CAAC,EAAE,CAAC,UAAU,EAAE;oBACpB,KAAI,CAAC,cAAc,CAAC,KAAK,CAAC,CAAC;gBAC5B,CAAC,CAAC,CAAA;gBAEF,KAAK,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBAElC,IAAM,cAAY,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,SAAS,CAAE,CAAC;gBACrD,UAAU,CAAC;oBACV,KAAK,CAAC,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,cAAY,CAAC,GAAG,CAAC,wBAAwB,EAAE,GAAG,CAAC,EAAE,MAAM,EAAE,cAAY,CAAC,GAAG,CAAC,sBAAsB,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAA;gBACxM,CAAC,EAAE,EAAE,CAAC,CAAA;aACN;QACF,CAAC;;;;;;eAED,UAAyB,KAAY;YACpC,IAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;YAC3C,IAAI,UAAU,YAAY,gBAAgB,EAAE;gBAC3C,IAAM,QAAM,GAAG,KAAK,CAAC,MAAM,CAAC;gBAC5B,IAAI,QAAM,EAAE;oBACX,IAAI,KAAK,GAAG,QAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;oBAC5C,KAAK,GAAG,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;oBAClC,UAAU,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;iBAC5D;aACD;QACF,CAAC;;;;;;eAED;QAEA,CAAC;;IA/DD;;;;eAAkC,eAAe;OAAC;IAClD;;;;eAA0C,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;OAAC;IA+DpG,oBAAC;CAAA,AAjED,CAAmC,WAAW,GAiE7C;SAjEY,aAAa","sourcesContent":["import type { Label } from \"../../../core/render/Label\";\r\nimport type { Container } from \"../../../core/render/Container\";\r\n\r\nimport { LabelSeries, ILabelSeriesSettings, ILabelSeriesPrivate, ILabelSeriesDataItem } from \"./LabelSeries\";\r\nimport { PointedRectangle } from \"../../../core/render/PointedRectangle\";\r\nimport { Color, color } from \"../../../core/util/Color\";\r\n\r\nimport * as $ease from \"../../../core/util/Ease\";\r\n\r\nexport interface ICalloutSeriesDataItem extends ILabelSeriesDataItem {\r\n\r\n\t/**\r\n\t * Indicates whether callout will attach itself to the closest data item, as\r\n\t * opposed to exact location of the click.\r\n\t */\r\n\tsnapToData?: boolean;\r\n\r\n}\r\n\r\nexport interface ICalloutSeriesSettings extends ILabelSeriesSettings {\r\n\r\n\t/**\r\n\t * If set to `true`, callout will attach itself to the closest data item, as\r\n\t * opposed to exact location of the click.\r\n\t *\r\n\t * @default true\r\n\t */\r\n\tsnapToData?: boolean;\r\n\r\n}\r\n\r\nexport interface ICalloutSeriesPrivate extends ILabelSeriesPrivate {\r\n}\r\n\r\nexport class CalloutSeries extends LabelSeries {\r\n\tpublic static className: string = \"CalloutSeries\";\r\n\tpublic static classNames: Array<string> = LabelSeries.classNames.concat([CalloutSeries.className]);\r\n\r\n\tdeclare public _settings: ICalloutSeriesSettings;\r\n\tdeclare public _privateSettings: ICalloutSeriesPrivate;\r\n\tdeclare public _dataItemSettings: ICalloutSeriesDataItem;\r\n\r\n\tprotected _tag = \"callout\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t}\r\n\r\n\tprotected _tweakBullet2(label: Label) {\r\n\t\tconst bgColor = this.get(\"fillColor\", this.get(\"fill\", color(0x000000)));\r\n\t\tlabel.set(\"background\", PointedRectangle.new(this._root, { themeTags: [\"callout\"], strokeOpacity: 0, fill: bgColor }));\r\n\t\tlabel.set(\"fill\", this.get(\"labelFill\", Color.alternative(bgColor, this._root.interfaceColors.get(\"alternativeText\"), this._root.interfaceColors.get(\"text\"))));\r\n\t}\r\n\r\n\tprotected _tweakBullet(container: Container) {\r\n\t\tsuper._tweakBullet(container);\r\n\r\n\t\tconst label = this.getPrivate(\"label\");\r\n\t\tif (label) {\r\n\t\t\tlabel.events.on(\"positionchanged\", () => {\r\n\t\t\t\tthis._updatePointer(label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.events.on(\"click\", () => {\r\n\t\t\t\tthis.spriteResizer.set(\"sprite\", label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.on(\"scale\", () => {\r\n\t\t\t\tthis._updatePointer(label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.on(\"rotation\", () => {\r\n\t\t\t\tthis._updatePointer(label);\r\n\t\t\t})\r\n\r\n\t\t\tlabel.setAll({ draggable: true });\r\n\r\n\t\t\tconst defaultState = label.states.lookup(\"default\")!;\r\n\t\t\tsetTimeout(() => {\r\n\t\t\t\tlabel.animate({ key: \"y\", to: -label.height() / 2 - 10, from: 0, duration: defaultState.get(\"stateAnimationDuration\", 500), easing: defaultState.get(\"stateAnimationEasing\", $ease.out($ease.cubic)) })\r\n\t\t\t}, 50)\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updatePointer(label: Label) {\r\n\t\tconst background = label.get(\"background\");\r\n\t\tif (background instanceof PointedRectangle) {\r\n\t\t\tconst parent = label.parent;\r\n\t\t\tif (parent) {\r\n\t\t\t\tlet point = parent.toGlobal({ x: 0, y: 0 });\r\n\t\t\t\tpoint = background.toLocal(point);\r\n\t\t\t\tbackground.setAll({ pointerX: point.x, pointerY: point.y });\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _hideAllBullets() {\r\n\r\n\t}\r\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalLineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalLineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,6BAA8B,SAAQ,yBAAyB;CAE/E;AAED,MAAM,WAAW,6BAA8B,SAAQ,yBAAyB;CAE/E;AAED,MAAM,WAAW,4BAA6B,SAAQ,wBAAwB;CAE7E;AAED,qBAAa,oBAAqB,SAAQ,gBAAgB;IACzD,OAAc,SAAS,EAAE,MAAM,CAA0B;IACzD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAwE;IAEhG,SAAS,EAAE,6BAA6B,CAAC;IACzC,gBAAgB,EAAE,4BAA4B,CAAC;IAC/C,iBAAiB,EAAE,6BAA6B,CAAC;IAEhE,SAAS,CAAC,IAAI,SAAgB;IAE9B,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,mBAAmB;IAsCzD,SAAS,CAAC,sBAAsB;IAIhC,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,mBAAmB;IAQ5D,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAE,IAAI;CAQpE"}
1
+ {"version":3,"file":"HorizontalLineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalLineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AAEvE,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AACtD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,6BAA8B,SAAQ,yBAAyB;CAC/E;AAED,MAAM,WAAW,6BAA8B,SAAQ,yBAAyB;CAC/E;AAED,MAAM,WAAW,4BAA6B,SAAQ,wBAAwB;CAC7E;AAED,qBAAa,oBAAqB,SAAQ,gBAAgB;IACzD,OAAc,SAAS,EAAE,MAAM,CAA0B;IACzD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAwE;IAEhG,SAAS,EAAE,6BAA6B,CAAC;IACzC,gBAAgB,EAAE,4BAA4B,CAAC;IAC/C,iBAAiB,EAAE,6BAA6B,CAAC;IAEhE,SAAS,CAAC,IAAI,SAAgB;IAE9B,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,mBAAmB;IAsCzD,SAAS,CAAC,sBAAsB;IAIhC,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,mBAAmB;IAQ5D,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAE,IAAI;CAQpE"}
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalLineSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalLineSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\nimport type { Line } from \"../../../core/render/Line\";\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IHorizontalLineSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n\r\n}\r\n\r\nexport interface IHorizontalLineSeriesSettings extends ISimpleLineSeriesSettings {\r\n\r\n}\r\n\r\nexport interface IHorizontalLineSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n\r\n}\r\n\r\nexport class HorizontalLineSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"HorizontalLineSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([HorizontalLineSeries.className]);\r\n\r\n\tdeclare public _settings: IHorizontalLineSeriesSettings;\r\n\tdeclare public _privateSettings: IHorizontalLineSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IHorizontalLineSeriesDataItem;\r\n\r\n\tprotected _tag = \"horizontal\";\r\n\r\n\tprotected _handleBulletDragged(event: ISpritePointerEvent) {\r\n\t\tsuper._handleBulletDragged(event);\r\n\r\n\t\tconst dataItem = event.target.dataItem as DataItem<IHorizontalLineSeriesDataItem>;\r\n\t\tconst dataContext = dataItem.dataContext as any;\r\n\r\n\t\tif (dataContext) {\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\t\tconst movePoint = this._movePointerPoint;\r\n\r\n\t\t\tif (diP1 && diP2 && movePoint) {\r\n\t\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)));\r\n\t\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\r\n\t\t\t\tdiP1.set(\"valueY\", valueY);\r\n\t\t\t\tdiP1.set(\"valueYWorking\", valueY);\r\n\r\n\t\t\t\tdiP2.set(\"valueY\", valueY);\r\n\t\t\t\tdiP2.set(\"valueYWorking\", valueY);\r\n\r\n\t\t\t\tdiP1.set(\"valueX\", valueX);\r\n\t\t\t\tdiP2.set(\"valueX\", valueX + 0.01);\r\n\r\n\t\t\t\tthis._setXLocation(diP1, valueX);\r\n\t\t\t\tthis._setXLocation(diP2, valueX + 0.01);\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\r\n\t\t\t\tthis._positionBullets(diP2);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerMoveReal() {\r\n\r\n\t}\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (!this._isDragging) {\r\n\t\t\tthis._addPoints(event, this._index);\r\n\t\t\tthis._index++;\r\n\t\t\tthis._isDrawing = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoints(event: ISpritePointerEvent, index: number):Line {\r\n\t\tconst line = super._addPoints(event, index);\r\n\t\tthis._updateExtentionLine(line);\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\t\tdiP2.set(\"valueX\", diP2.get(\"valueX\", 0) + 0.001);\r\n\t\tthis._isDrawing = false;\r\n\t\treturn line;\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"HorizontalLineSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalLineSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\nimport type { Line } from \"../../../core/render/Line\";\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IHorizontalLineSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n}\r\n\r\nexport interface IHorizontalLineSeriesSettings extends ISimpleLineSeriesSettings {\r\n}\r\n\r\nexport interface IHorizontalLineSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n}\r\n\r\nexport class HorizontalLineSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"HorizontalLineSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([HorizontalLineSeries.className]);\r\n\r\n\tdeclare public _settings: IHorizontalLineSeriesSettings;\r\n\tdeclare public _privateSettings: IHorizontalLineSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IHorizontalLineSeriesDataItem;\r\n\r\n\tprotected _tag = \"horizontal\";\r\n\r\n\tprotected _handleBulletDragged(event: ISpritePointerEvent) {\r\n\t\tsuper._handleBulletDragged(event);\r\n\r\n\t\tconst dataItem = event.target.dataItem as DataItem<IHorizontalLineSeriesDataItem>;\r\n\t\tconst dataContext = dataItem.dataContext as any;\r\n\r\n\t\tif (dataContext) {\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\t\tconst movePoint = this._movePointerPoint;\r\n\r\n\t\t\tif (diP1 && diP2 && movePoint) {\r\n\t\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)));\r\n\t\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\r\n\t\t\t\tdiP1.set(\"valueY\", valueY);\r\n\t\t\t\tdiP1.set(\"valueYWorking\", valueY);\r\n\r\n\t\t\t\tdiP2.set(\"valueY\", valueY);\r\n\t\t\t\tdiP2.set(\"valueYWorking\", valueY);\r\n\r\n\t\t\t\tdiP1.set(\"valueX\", valueX);\r\n\t\t\t\tdiP2.set(\"valueX\", valueX + 0.01);\r\n\r\n\t\t\t\tthis._setXLocation(diP1, valueX);\r\n\t\t\t\tthis._setXLocation(diP2, valueX + 0.01);\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\r\n\t\t\t\tthis._positionBullets(diP2);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerMoveReal() {\r\n\r\n\t}\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (!this._isDragging) {\r\n\t\t\tthis._addPoints(event, this._index);\r\n\t\t\tthis._index++;\r\n\t\t\tthis._isDrawing = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoints(event: ISpritePointerEvent, index: number):Line {\r\n\t\tconst line = super._addPoints(event, index);\r\n\t\tthis._updateExtentionLine(line);\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\t\tdiP2.set(\"valueX\", diP2.get(\"valueX\", 0) + 0.001);\r\n\t\tthis._isDrawing = false;\r\n\t\treturn line;\r\n\t}\r\n}"]}
@@ -6,7 +6,9 @@ export interface IHorizontalRaySeriesDataItem extends ISimpleLineSeriesDataItem
6
6
  }
7
7
  export interface IHorizontalRaySeriesSettings extends ISimpleLineSeriesSettings {
8
8
  /**
9
- * @todo review
9
+ * Value field to use for calculations.
10
+ *
11
+ * @default "value"
10
12
  */
11
13
  field: "open" | "value" | "low" | "high";
12
14
  }
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalRaySeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalRaySeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAItI,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;CAE9E;AAED,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;IAC9E;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;CACzC;AAED,MAAM,WAAW,2BAA4B,SAAQ,wBAAwB;CAE5E;AAED,qBAAa,mBAAoB,SAAQ,gBAAgB;IACxD,OAAc,SAAS,EAAE,MAAM,CAAyB;IACxD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuE;IAE/F,SAAS,EAAE,4BAA4B,CAAC;IACxC,gBAAgB,EAAE,2BAA2B,CAAC;IAC9C,iBAAiB,EAAE,4BAA4B,CAAC;IAE/D,SAAS,CAAC,IAAI,SAAS;IAEvB,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAmCtC,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAMnG,SAAS,CAAC,aAAa;IAIvB,SAAS,CAAC,sBAAsB;IAIhC,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,mBAAmB;IAS5D,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAQrE"}
1
+ {"version":3,"file":"HorizontalRaySeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalRaySeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAItI,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;CAE9E;AAED,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;IAE9E;;;;OAIG;IACH,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;CAEzC;AAED,MAAM,WAAW,2BAA4B,SAAQ,wBAAwB;CAE5E;AAED,qBAAa,mBAAoB,SAAQ,gBAAgB;IACxD,OAAc,SAAS,EAAE,MAAM,CAAyB;IACxD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuE;IAE/F,SAAS,EAAE,4BAA4B,CAAC;IACxC,gBAAgB,EAAE,2BAA2B,CAAC;IAC9C,iBAAiB,EAAE,4BAA4B,CAAC;IAE/D,SAAS,CAAC,IAAI,SAAS;IAEvB,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAmCtC,SAAS,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAMnG,SAAS,CAAC,aAAa;IAIvB,SAAS,CAAC,sBAAsB;IAIhC,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,mBAAmB;IAS5D,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;CAQrE"}
@@ -1 +1 @@
1
- {"version":3,"file":"HorizontalRaySeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalRaySeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { IPoint } from \"../../../core/util/IPoint\";\r\nimport type { Line } from \"../../../core/render/Line\";\r\n\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nimport * as $math from \"../../../core/util/Math\";\r\n\r\nexport interface IHorizontalRaySeriesDataItem extends ISimpleLineSeriesDataItem {\r\n\r\n}\r\n\r\nexport interface IHorizontalRaySeriesSettings extends ISimpleLineSeriesSettings {\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tfield: \"open\" | \"value\" | \"low\" | \"high\";\r\n}\r\n\r\nexport interface IHorizontalRaySeriesPrivate extends ISimpleLineSeriesPrivate {\r\n\r\n}\r\n\r\nexport class HorizontalRaySeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"HorizontalRaySeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([HorizontalRaySeries.className]);\r\n\r\n\tdeclare public _settings: IHorizontalRaySeriesSettings;\r\n\tdeclare public _privateSettings: IHorizontalRaySeriesPrivate;\r\n\tdeclare public _dataItemSettings: IHorizontalRaySeriesDataItem;\r\n\r\n\tprotected _tag = \"ray\";\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\tconst series = this.get(\"series\");\r\n\t\tif (series) {\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\t\tconst min = xAxis.getPrivate(\"min\", 0) + 1;\r\n\t\t\tconst max = xAxis.getPrivate(\"max\", 1) - 1;\r\n\r\n\t\t\tlet x1 = $math.fitToRange(diP2.get(\"valueX\" as any), min, max);\r\n\t\t\tconst di1 = xAxis.getSeriesItem(series, Math.max(0, xAxis.valueToPosition(x1)));\r\n\r\n\t\t\tconst field = this.get(\"field\") + \"Y\";\r\n\r\n\t\t\tif (di1) {\r\n\t\t\t\tlet y1 = di1.get(field as any);\r\n\r\n\t\t\t\tdiP1.set(\"valueY\", y1);\r\n\t\t\t\tdiP1.set(\"valueYWorking\", y1);\r\n\r\n\t\t\t\tdiP2.set(\"valueY\", y1);\r\n\t\t\t\tdiP2.set(\"valueYWorking\", y1);\r\n\r\n\t\t\t\tdiP1.set(\"valueX\", x1);\r\n\t\t\t\tdiP2.set(\"valueX\", x1 + 0.01);\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\r\n\t\t\t\tthis._positionBullets(diP2);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateLine(line: Line, hitLine: Line, p11: IPoint, _p22: IPoint, p1: IPoint, _p2: IPoint) {\r\n\t\tline.set(\"points\", [p1, p11]);\r\n\t\thitLine.set(\"points\", [p1, p11]);\r\n\t}\r\n\r\n\t// need to override so that location would not be set\r\n\tprotected _setXLocation() {\r\n\r\n\t}\r\n\r\n\tprotected _handlePointerMoveReal() {\r\n\r\n\t}\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (!this._isDragging) {\r\n\t\t\tthis._addPoints(event, this._index);\r\n\t\t\tthis._updateSegment(this._index);\r\n\t\t\tthis._index++;\r\n\t\t\tthis._isDrawing = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoints(event: ISpritePointerEvent, index: number): Line {\r\n\t\tlet line = super._addPoints(event, index);\r\n\t\tthis._updateExtentionLine(line);\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\t\tdiP2.set(\"valueX\", diP2.get(\"valueX\", 0) + 0.001);\r\n\t\tthis._isDrawing = false;\r\n\t\treturn line;\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"HorizontalRaySeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/HorizontalRaySeries.ts"],"names":[],"mappings":";AAIA,OAAO,EAAE,gBAAgB,EAAkF,MAAM,oBAAoB,CAAC;AAEtI,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AAqBjD;IAAyC,uCAAgB;IAAzD;QAAA,qEA4EC;QApEA;;;;mBAAiB,KAAK;WAAC;;IAoExB,CAAC;;;;;eAlEA,UAAyB,KAAa;YACrC,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YACnC,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YAEnC,IAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClC,IAAI,MAAM,EAAE;gBAEX,IAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAEhC,IAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;gBAC3C,IAAM,GAAG,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;gBAE3C,IAAI,EAAE,GAAG,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,QAAe,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;gBAC/D,IAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;gBAEhF,IAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,GAAG,GAAG,CAAC;gBAEtC,IAAI,GAAG,EAAE;oBACR,IAAI,EAAE,GAAG,GAAG,CAAC,GAAG,CAAC,KAAY,CAAC,CAAC;oBAE/B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACvB,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;oBAE9B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACvB,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC;oBAE9B,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;oBACvB,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,EAAE,GAAG,IAAI,CAAC,CAAC;oBAE9B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;oBAC5B,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC;iBAC5B;aACD;QACF,CAAC;;;;;;eAED,UAAsB,IAAU,EAAE,OAAa,EAAE,GAAW,EAAE,IAAY,EAAE,EAAU,EAAE,GAAW;YAClG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,CAAC,CAAC;QAClC,CAAC;;IAED,qDAAqD;;;;;eACrD;QAEA,CAAC;;;;;;eAED;QAEA,CAAC;;;;;;eAED,UAAkC,KAA0B;YAC3D,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gBACtB,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;gBACpC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACjC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACd,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;aACxB;QACF,CAAC;;;;;;eAED,UAAqB,KAA0B,EAAE,KAAa;YAC7D,IAAI,IAAI,GAAG,iBAAM,UAAU,YAAC,KAAK,EAAE,KAAK,CAAC,CAAC;YAC1C,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC;YAChC,IAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;YACnC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC;YAClD,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;YACxB,OAAO,IAAI,CAAC;QACb,CAAC;;IA1ED;;;;eAAkC,qBAAqB;OAAC;IACxD;;;;eAA0C,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,CAAC;OAAC;IA0E/G,0BAAC;CAAA,AA5ED,CAAyC,gBAAgB,GA4ExD;SA5EY,mBAAmB","sourcesContent":["import type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { IPoint } from \"../../../core/util/IPoint\";\r\nimport type { Line } from \"../../../core/render/Line\";\r\n\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nimport * as $math from \"../../../core/util/Math\";\r\n\r\nexport interface IHorizontalRaySeriesDataItem extends ISimpleLineSeriesDataItem {\r\n\r\n}\r\n\r\nexport interface IHorizontalRaySeriesSettings extends ISimpleLineSeriesSettings {\r\n\r\n\t/**\r\n\t * Value field to use for calculations.\r\n\t *\r\n\t * @default \"value\"\r\n\t */\r\n\tfield: \"open\" | \"value\" | \"low\" | \"high\";\r\n\r\n}\r\n\r\nexport interface IHorizontalRaySeriesPrivate extends ISimpleLineSeriesPrivate {\r\n\r\n}\r\n\r\nexport class HorizontalRaySeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"HorizontalRaySeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([HorizontalRaySeries.className]);\r\n\r\n\tdeclare public _settings: IHorizontalRaySeriesSettings;\r\n\tdeclare public _privateSettings: IHorizontalRaySeriesPrivate;\r\n\tdeclare public _dataItemSettings: IHorizontalRaySeriesDataItem;\r\n\r\n\tprotected _tag = \"ray\";\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\tconst series = this.get(\"series\");\r\n\t\tif (series) {\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\t\tconst min = xAxis.getPrivate(\"min\", 0) + 1;\r\n\t\t\tconst max = xAxis.getPrivate(\"max\", 1) - 1;\r\n\r\n\t\t\tlet x1 = $math.fitToRange(diP2.get(\"valueX\" as any), min, max);\r\n\t\t\tconst di1 = xAxis.getSeriesItem(series, Math.max(0, xAxis.valueToPosition(x1)));\r\n\r\n\t\t\tconst field = this.get(\"field\") + \"Y\";\r\n\r\n\t\t\tif (di1) {\r\n\t\t\t\tlet y1 = di1.get(field as any);\r\n\r\n\t\t\t\tdiP1.set(\"valueY\", y1);\r\n\t\t\t\tdiP1.set(\"valueYWorking\", y1);\r\n\r\n\t\t\t\tdiP2.set(\"valueY\", y1);\r\n\t\t\t\tdiP2.set(\"valueYWorking\", y1);\r\n\r\n\t\t\t\tdiP1.set(\"valueX\", x1);\r\n\t\t\t\tdiP2.set(\"valueX\", x1 + 0.01);\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\r\n\t\t\t\tthis._positionBullets(diP2);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateLine(line: Line, hitLine: Line, p11: IPoint, _p22: IPoint, p1: IPoint, _p2: IPoint) {\r\n\t\tline.set(\"points\", [p1, p11]);\r\n\t\thitLine.set(\"points\", [p1, p11]);\r\n\t}\r\n\r\n\t// need to override so that location would not be set\r\n\tprotected _setXLocation() {\r\n\r\n\t}\r\n\r\n\tprotected _handlePointerMoveReal() {\r\n\r\n\t}\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (!this._isDragging) {\r\n\t\t\tthis._addPoints(event, this._index);\r\n\t\t\tthis._updateSegment(this._index);\r\n\t\t\tthis._index++;\r\n\t\t\tthis._isDrawing = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoints(event: ISpritePointerEvent, index: number): Line {\r\n\t\tlet line = super._addPoints(event, index);\r\n\t\tthis._updateExtentionLine(line);\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\t\tdiP2.set(\"valueX\", diP2.get(\"valueX\", 0) + 0.001);\r\n\t\tthis._isDrawing = false;\r\n\t\treturn line;\r\n\t}\r\n}"]}
@@ -9,11 +9,11 @@ export interface ILabelSeriesDataItem extends IPolylineSeriesDataItem {
9
9
  }
10
10
  export interface ILabelSeriesSettings extends IPolylineSeriesSettings {
11
11
  /**
12
- * @todo review
12
+ * Label font size.
13
13
  */
14
14
  labelFontSize?: number | string | undefined;
15
15
  /**
16
- * @todo review
16
+ * Label font damily.
17
17
  */
18
18
  labelFontFamily?: string;
19
19
  /**
@@ -25,7 +25,7 @@ export interface ILabelSeriesSettings extends IPolylineSeriesSettings {
25
25
  */
26
26
  labelFontStyle?: "normal" | "italic" | "oblique";
27
27
  /**
28
- * @todo review
28
+ * Label color.
29
29
  */
30
30
  labelFill?: Color;
31
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LabelSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/LabelSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC5H,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAS,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAIxD,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;CACpE;AAED,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;IACpE;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAC5C;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IAEnI;;OAEG;IACH,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IACjD;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;CAClB;AAED,MAAM,WAAW,mBAAoB,SAAQ,sBAAsB;IAClE,cAAc,EAAE,cAAc,CAAC;IAC/B,KAAK,EAAE,mBAAmB,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC;CACb;AAED,qBAAa,WAAY,SAAQ,cAAc;IAC9C,OAAc,SAAS,EAAE,MAAM,CAAiB;IAChD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA6D;IAErF,SAAS,EAAE,oBAAoB,CAAC;IAChC,gBAAgB,EAAE,mBAAmB,CAAC;IACtC,iBAAiB,EAAE,oBAAoB,CAAC;IAEhD,aAAa,gBAAyD;IAE7E,SAAS,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAE5C,SAAS,CAAC,IAAI,SAAW;IAEzB,SAAS,CAAC,SAAS;IAmDnB,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS;IA2C3C,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK;IAKpC,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB;IAkBjD,QAAQ;IAUR,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAMpE,SAAS,CAAC,eAAe;CAGzB"}
1
+ {"version":3,"file":"LabelSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/LabelSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC5H,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAEnD,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAS,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAIxD,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;CACpE;AAED,MAAM,WAAW,oBAAqB,SAAQ,uBAAuB;IAEpE;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;IAE5C;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;OAEG;IACH,eAAe,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IAEnI;;OAEG;IACH,cAAc,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAEjD;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC;CAElB;AAED,MAAM,WAAW,mBAAoB,SAAQ,sBAAsB;IAClE,cAAc,EAAE,cAAc,CAAC;IAC/B,KAAK,EAAE,mBAAmB,CAAC;IAC3B,KAAK,EAAE,KAAK,CAAC;CACb;AAED,qBAAa,WAAY,SAAQ,cAAc;IAC9C,OAAc,SAAS,EAAE,MAAM,CAAiB;IAChD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA6D;IAErF,SAAS,EAAE,oBAAoB,CAAC;IAChC,gBAAgB,EAAE,mBAAmB,CAAC;IACtC,iBAAiB,EAAE,oBAAoB,CAAC;IAEhD,aAAa,gBAAyD;IAE7E,SAAS,CAAC,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAE5C,SAAS,CAAC,IAAI,SAAW;IAEzB,SAAS,CAAC,SAAS;IAmDnB,SAAS,CAAC,YAAY,CAAC,SAAS,EAAE,SAAS;IA2C3C,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,KAAK;IAKpC,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB;IAkBjD,QAAQ;IAUR,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAMpE,SAAS,CAAC,eAAe;CAGzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"LabelSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/LabelSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { Container } from \"../../../core/render/Container\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\n\r\nimport { PolylineSeries, IPolylineSeriesSettings, IPolylineSeriesPrivate, IPolylineSeriesDataItem } from \"./PolylineSeries\";\r\nimport { Label } from \"../../../core/render/Label\";\r\nimport { RoundedRectangle } from \"../../../core/render/RoundedRectangle\";\r\nimport { SpriteResizer } from \"./SpriteResizer\";\r\nimport { color, Color } from \"../../../core/util/Color\";\r\n\r\nimport * as $utils from \"../../../core/util/Utils\";\r\n\r\nexport interface ILabelSeriesDataItem extends IPolylineSeriesDataItem {\r\n}\r\n\r\nexport interface ILabelSeriesSettings extends IPolylineSeriesSettings {\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tlabelFontSize?: number | string | undefined;\r\n\t/**\r\n\t * @todo review\r\n\t */\t\r\n\tlabelFontFamily?: string;\r\n\r\n\t/**\r\n\t * Font weight.\r\n\t */\r\n\tlabelFontWeight?: \"normal\" | \"bold\" | \"bolder\" | \"lighter\" | \"100\" | \"200\" | \"300\" | \"400\" | \"500\" | \"600\" | \"700\" | \"800\" | \"900\";\r\n\r\n\t/**\r\n\t * Font style.\r\n\t */\r\n\tlabelFontStyle?: \"normal\" | \"italic\" | \"oblique\";\r\n\t/**\r\n\t * @todo review\r\n\t */\r\n\tlabelFill?: Color;\r\n}\r\n\r\nexport interface ILabelSeriesPrivate extends IPolylineSeriesPrivate {\r\n\tinputContainer: HTMLDivElement;\r\n\tinput: HTMLTextAreaElement;\r\n\tlabel: Label;\r\n}\r\n\r\nexport class LabelSeries extends PolylineSeries {\r\n\tpublic static className: string = \"LabelSeries\";\r\n\tpublic static classNames: Array<string> = PolylineSeries.classNames.concat([LabelSeries.className]);\r\n\r\n\tdeclare public _settings: ILabelSeriesSettings;\r\n\tdeclare public _privateSettings: ILabelSeriesPrivate;\r\n\tdeclare public _dataItemSettings: ILabelSeriesDataItem;\r\n\r\n\tpublic spriteResizer = this.children.push(SpriteResizer.new(this._root, {}));\r\n\r\n\tprotected _clickEvent?: ISpritePointerEvent;\r\n\r\n\tprotected _tag = \"label\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t\tthis.fills.template.set(\"visible\", false);\r\n\r\n\t\tthis.addTag(this._tag);\r\n\r\n\t\tconst div = document.createElement(\"div\");\r\n\t\t//div.style.width = \"300px\";\r\n\t\tdiv.style.position = \"absolute\";\r\n\t\tdiv.style.display = \"none\";\r\n\t\tdiv.className = \"am5stock-drawing-label-wrapper\";\r\n\t\tthis._root._inner.appendChild(div);\r\n\t\tthis.setPrivate(\"inputContainer\", div);\r\n\r\n\t\tconst textArea = document.createElement(\"textarea\");;\r\n\t\t//textArea.style.textAlign = \"center\";\r\n\t\t//textArea.rows = 2;\r\n\t\ttextArea.className = \"am5stock-drawing-label-input\";\r\n\t\t$utils.addEventListener(textArea, \"input\", () => {\r\n\t\t\ttextArea.style.height = \"auto\";\r\n\t\t\ttextArea.style.height = textArea.scrollHeight + \"px\";\r\n\t\t}, false);\r\n\r\n\t\t\r\n\t\tdiv.appendChild(textArea);\r\n\t\tdiv.appendChild(document.createElement(\"br\"));\r\n\t\tthis.setPrivate(\"input\", textArea);\r\n\r\n\t\tconst saveButton = document.createElement(\"input\");\r\n\t\tsaveButton.type = \"button\";\r\n\t\tsaveButton.value = this._root.language.translateAny(\"Save\");\r\n\t\tsaveButton.className = \"am5-modal-button am5-modal-primary\";\r\n\t\t$utils.addEventListener(saveButton, \"click\", () => {\r\n\t\t\tthis.saveText();\r\n\t\t});\r\n\r\n\t\tdiv.appendChild(saveButton);\r\n\r\n\t\tconst cancelButton = document.createElement(\"input\");\r\n\t\tcancelButton.type = \"button\";\r\n\t\tcancelButton.value = this._root.language.translateAny(\"Cancel\");\r\n\t\tcancelButton.className = \"am5-modal-button am5-modal-scondary\";\r\n\t\t$utils.addEventListener(cancelButton, \"click\", () => {\r\n\t\t\tthis.getPrivate(\"inputContainer\").style.display = \"none\";\r\n\t\t\tthis.getPrivate(\"input\").value = \"\";\r\n\t\t});\r\n\t\tdiv.appendChild(cancelButton);\r\n\t}\r\n\r\n\tprotected _tweakBullet(container: Container) {\r\n\t\tconst label = container.children.push(Label.new(this._root, {\r\n\t\t\tthemeTags: [\"label\"],\r\n\t\t\ttext: this.getPrivate(\"input\").value\r\n\t\t}));\r\n\r\n\t\tthis.setPrivate(\"label\", label);\r\n\r\n\t\tconst fontSize = this.get(\"labelFontSize\");\r\n\t\tif (fontSize != null) {\r\n\t\t\tlabel.set(\"fontSize\", fontSize)\r\n\t\t}\r\n\r\n\t\tconst fontFamily = this.get(\"labelFontFamily\");\r\n\t\tif (fontFamily != null) {\r\n\t\t\tlabel.set(\"fontFamily\", fontFamily)\r\n\t\t}\r\n\r\n\t\tconst fontStyle = this.get(\"labelFontStyle\");\r\n\t\tif (fontStyle != null) {\r\n\t\t\tlabel.set(\"fontStyle\", fontStyle)\r\n\t\t}\r\n\r\n\t\tconst fontWeight = this.get(\"labelFontWeight\");\r\n\t\tif (fontWeight != null) {\r\n\t\t\tlabel.set(\"fontWeight\", fontWeight)\r\n\t\t}\r\n\r\n\t\tcontainer.events.on(\"click\", () => {\r\n\t\t\tthis.spriteResizer.set(\"sprite\", label);\r\n\t\t})\r\n\r\n\t\tcontainer.events.on(\"pointerover\", () => {\r\n\t\t\tthis._isHover = true;\r\n\t\t})\r\n\r\n\t\tcontainer.events.on(\"pointerout\", () => {\r\n\t\t\tthis._isHover = false;\r\n\t\t})\r\n\r\n\t\tthis._tweakBullet2(label);\r\n\t}\r\n\r\n\tprotected _tweakBullet2(label: Label) {\r\n\t\tlabel.set(\"background\", RoundedRectangle.new(this._root, { fillOpacity: 0, strokeOpacity: 0, fill: color(0xffffff) }))\r\n\t\tlabel.set(\"fill\", this.get(\"labelFill\", this.get(\"fillColor\", this.get(\"fill\"))));\r\n\t}\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (!this._isHover) {\r\n\t\t\tconst input = this.getPrivate(\"input\");\r\n\t\t\tinput.value = \"\";\r\n\r\n\t\t\tthis._clickEvent = event;\r\n\t\t\t//console.log(event);\r\n\t\t\tconst inputDiv = this.getPrivate(\"inputContainer\");\r\n\t\t\tinputDiv.style.display = \"block\";\r\n\t\t\tinputDiv.style.left = (event.point.x) + \"px\";\r\n\t\t\tinputDiv.style.top = (event.point.y) + \"px\";\r\n\t\t\tinput.focus();\r\n\t\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\t\t\tthis._index++;\r\n\t\t\tthis._di[this._index] = {};\r\n\t\t}\r\n\t}\r\n\r\n\tpublic saveText() {\r\n\t\tconst clickEvent = this._clickEvent;\r\n\t\tif (clickEvent) {\r\n\t\t\tif (this.getPrivate(\"input\").value) {\r\n\t\t\t\tsuper._handlePointerClick(clickEvent);\r\n\t\t\t}\r\n\t\t\tthis.getPrivate(\"inputContainer\").style.display = \"none\";\r\n\t\t}\r\n\t}\r\n\r\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\r\n\t\tsuper.disposeDataItem(dataItem);\r\n\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\t\tthis._isHover = false;\r\n\t}\r\n\r\n\tprotected _hideAllBullets() {\r\n\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"LabelSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/LabelSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { Container } from \"../../../core/render/Container\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\n\r\nimport { PolylineSeries, IPolylineSeriesSettings, IPolylineSeriesPrivate, IPolylineSeriesDataItem } from \"./PolylineSeries\";\r\nimport { Label } from \"../../../core/render/Label\";\r\nimport { RoundedRectangle } from \"../../../core/render/RoundedRectangle\";\r\nimport { SpriteResizer } from \"./SpriteResizer\";\r\nimport { color, Color } from \"../../../core/util/Color\";\r\n\r\nimport * as $utils from \"../../../core/util/Utils\";\r\n\r\nexport interface ILabelSeriesDataItem extends IPolylineSeriesDataItem {\r\n}\r\n\r\nexport interface ILabelSeriesSettings extends IPolylineSeriesSettings {\r\n\r\n\t/**\r\n\t * Label font size.\r\n\t */\r\n\tlabelFontSize?: number | string | undefined;\r\n\r\n\t/**\r\n\t * Label font damily.\r\n\t */\r\n\tlabelFontFamily?: string;\r\n\r\n\t/**\r\n\t * Font weight.\r\n\t */\r\n\tlabelFontWeight?: \"normal\" | \"bold\" | \"bolder\" | \"lighter\" | \"100\" | \"200\" | \"300\" | \"400\" | \"500\" | \"600\" | \"700\" | \"800\" | \"900\";\r\n\r\n\t/**\r\n\t * Font style.\r\n\t */\r\n\tlabelFontStyle?: \"normal\" | \"italic\" | \"oblique\";\r\n\r\n\t/**\r\n\t * Label color.\r\n\t */\r\n\tlabelFill?: Color;\r\n\r\n}\r\n\r\nexport interface ILabelSeriesPrivate extends IPolylineSeriesPrivate {\r\n\tinputContainer: HTMLDivElement;\r\n\tinput: HTMLTextAreaElement;\r\n\tlabel: Label;\r\n}\r\n\r\nexport class LabelSeries extends PolylineSeries {\r\n\tpublic static className: string = \"LabelSeries\";\r\n\tpublic static classNames: Array<string> = PolylineSeries.classNames.concat([LabelSeries.className]);\r\n\r\n\tdeclare public _settings: ILabelSeriesSettings;\r\n\tdeclare public _privateSettings: ILabelSeriesPrivate;\r\n\tdeclare public _dataItemSettings: ILabelSeriesDataItem;\r\n\r\n\tpublic spriteResizer = this.children.push(SpriteResizer.new(this._root, {}));\r\n\r\n\tprotected _clickEvent?: ISpritePointerEvent;\r\n\r\n\tprotected _tag = \"label\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t\tthis.fills.template.set(\"visible\", false);\r\n\r\n\t\tthis.addTag(this._tag);\r\n\r\n\t\tconst div = document.createElement(\"div\");\r\n\t\t//div.style.width = \"300px\";\r\n\t\tdiv.style.position = \"absolute\";\r\n\t\tdiv.style.display = \"none\";\r\n\t\tdiv.className = \"am5stock-drawing-label-wrapper\";\r\n\t\tthis._root._inner.appendChild(div);\r\n\t\tthis.setPrivate(\"inputContainer\", div);\r\n\r\n\t\tconst textArea = document.createElement(\"textarea\");;\r\n\t\t//textArea.style.textAlign = \"center\";\r\n\t\t//textArea.rows = 2;\r\n\t\ttextArea.className = \"am5stock-drawing-label-input\";\r\n\t\t$utils.addEventListener(textArea, \"input\", () => {\r\n\t\t\ttextArea.style.height = \"auto\";\r\n\t\t\ttextArea.style.height = textArea.scrollHeight + \"px\";\r\n\t\t}, false);\r\n\r\n\r\n\t\tdiv.appendChild(textArea);\r\n\t\tdiv.appendChild(document.createElement(\"br\"));\r\n\t\tthis.setPrivate(\"input\", textArea);\r\n\r\n\t\tconst saveButton = document.createElement(\"input\");\r\n\t\tsaveButton.type = \"button\";\r\n\t\tsaveButton.value = this._root.language.translateAny(\"Save\");\r\n\t\tsaveButton.className = \"am5-modal-button am5-modal-primary\";\r\n\t\t$utils.addEventListener(saveButton, \"click\", () => {\r\n\t\t\tthis.saveText();\r\n\t\t});\r\n\r\n\t\tdiv.appendChild(saveButton);\r\n\r\n\t\tconst cancelButton = document.createElement(\"input\");\r\n\t\tcancelButton.type = \"button\";\r\n\t\tcancelButton.value = this._root.language.translateAny(\"Cancel\");\r\n\t\tcancelButton.className = \"am5-modal-button am5-modal-scondary\";\r\n\t\t$utils.addEventListener(cancelButton, \"click\", () => {\r\n\t\t\tthis.getPrivate(\"inputContainer\").style.display = \"none\";\r\n\t\t\tthis.getPrivate(\"input\").value = \"\";\r\n\t\t});\r\n\t\tdiv.appendChild(cancelButton);\r\n\t}\r\n\r\n\tprotected _tweakBullet(container: Container) {\r\n\t\tconst label = container.children.push(Label.new(this._root, {\r\n\t\t\tthemeTags: [\"label\"],\r\n\t\t\ttext: this.getPrivate(\"input\").value\r\n\t\t}));\r\n\r\n\t\tthis.setPrivate(\"label\", label);\r\n\r\n\t\tconst fontSize = this.get(\"labelFontSize\");\r\n\t\tif (fontSize != null) {\r\n\t\t\tlabel.set(\"fontSize\", fontSize)\r\n\t\t}\r\n\r\n\t\tconst fontFamily = this.get(\"labelFontFamily\");\r\n\t\tif (fontFamily != null) {\r\n\t\t\tlabel.set(\"fontFamily\", fontFamily)\r\n\t\t}\r\n\r\n\t\tconst fontStyle = this.get(\"labelFontStyle\");\r\n\t\tif (fontStyle != null) {\r\n\t\t\tlabel.set(\"fontStyle\", fontStyle)\r\n\t\t}\r\n\r\n\t\tconst fontWeight = this.get(\"labelFontWeight\");\r\n\t\tif (fontWeight != null) {\r\n\t\t\tlabel.set(\"fontWeight\", fontWeight)\r\n\t\t}\r\n\r\n\t\tcontainer.events.on(\"click\", () => {\r\n\t\t\tthis.spriteResizer.set(\"sprite\", label);\r\n\t\t})\r\n\r\n\t\tcontainer.events.on(\"pointerover\", () => {\r\n\t\t\tthis._isHover = true;\r\n\t\t})\r\n\r\n\t\tcontainer.events.on(\"pointerout\", () => {\r\n\t\t\tthis._isHover = false;\r\n\t\t})\r\n\r\n\t\tthis._tweakBullet2(label);\r\n\t}\r\n\r\n\tprotected _tweakBullet2(label: Label) {\r\n\t\tlabel.set(\"background\", RoundedRectangle.new(this._root, { fillOpacity: 0, strokeOpacity: 0, fill: color(0xffffff) }))\r\n\t\tlabel.set(\"fill\", this.get(\"labelFill\", this.get(\"fillColor\", this.get(\"fill\"))));\r\n\t}\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (!this._isHover) {\r\n\t\t\tconst input = this.getPrivate(\"input\");\r\n\t\t\tinput.value = \"\";\r\n\r\n\t\t\tthis._clickEvent = event;\r\n\t\t\t//console.log(event);\r\n\t\t\tconst inputDiv = this.getPrivate(\"inputContainer\");\r\n\t\t\tinputDiv.style.display = \"block\";\r\n\t\t\tinputDiv.style.left = (event.point.x) + \"px\";\r\n\t\t\tinputDiv.style.top = (event.point.y) + \"px\";\r\n\t\t\tinput.focus();\r\n\t\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\t\t\tthis._index++;\r\n\t\t\tthis._di[this._index] = {};\r\n\t\t}\r\n\t}\r\n\r\n\tpublic saveText() {\r\n\t\tconst clickEvent = this._clickEvent;\r\n\t\tif (clickEvent) {\r\n\t\t\tif (this.getPrivate(\"input\").value) {\r\n\t\t\t\tsuper._handlePointerClick(clickEvent);\r\n\t\t\t}\r\n\t\t\tthis.getPrivate(\"inputContainer\").style.display = \"none\";\r\n\t\t}\r\n\t}\r\n\r\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\r\n\t\tsuper.disposeDataItem(dataItem);\r\n\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\t\tthis._isHover = false;\r\n\t}\r\n\r\n\tprotected _hideAllBullets() {\r\n\r\n\t}\r\n}"]}
@@ -3,7 +3,9 @@ export interface IQuadrantLineSeriesDataItem extends ISimpleLineSeriesDataItem {
3
3
  }
4
4
  export interface IQuadrantLineSeriesSettings extends ISimpleLineSeriesSettings {
5
5
  /**
6
- * @todo review
6
+ * Value field to use for calculations.
7
+ *
8
+ * @default "value"
7
9
  */
8
10
  field: "open" | "value" | "low" | "high";
9
11
  }
@@ -1 +1 @@
1
- {"version":3,"file":"QuadrantLineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/QuadrantLineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,2BAA4B,SAAQ,yBAAyB;CAC7E;AAED,MAAM,WAAW,2BAA4B,SAAQ,yBAAyB;IAC7E;;OAEG;IACH,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;CACzC;AAED,MAAM,WAAW,0BAA2B,SAAQ,wBAAwB;CAC3E;AAED,qBAAa,kBAAmB,SAAQ,gBAAgB;IACvD,OAAc,SAAS,EAAE,MAAM,CAAwB;IACvD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsE;IAE9F,SAAS,EAAE,2BAA2B,CAAC;IACvC,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,iBAAiB,EAAE,2BAA2B,CAAC;IAE9D,SAAS,CAAC,IAAI,SAAc;IAE5B,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAqC/B,eAAe;IAgFtB,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,aAAa;IAIvB,SAAS,CAAC,WAAW;CAGrB"}
1
+ {"version":3,"file":"QuadrantLineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/QuadrantLineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,2BAA4B,SAAQ,yBAAyB;CAC7E;AAED,MAAM,WAAW,2BAA4B,SAAQ,yBAAyB;IAE7E;;;;OAIG;IACH,KAAK,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;CAEzC;AAED,MAAM,WAAW,0BAA2B,SAAQ,wBAAwB;CAC3E;AAED,qBAAa,kBAAmB,SAAQ,gBAAgB;IACvD,OAAc,SAAS,EAAE,MAAM,CAAwB;IACvD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsE;IAE9F,SAAS,EAAE,2BAA2B,CAAC;IACvC,gBAAgB,EAAE,0BAA0B,CAAC;IAC7C,iBAAiB,EAAE,2BAA2B,CAAC;IAE9D,SAAS,CAAC,IAAI,SAAc;IAE5B,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAqC/B,eAAe;IAgFtB,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,aAAa;IAIvB,SAAS,CAAC,WAAW;CAGrB"}