@amcharts/amcharts5 5.5.0 → 5.5.2

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 (292) hide show
  1. package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
  2. package/.internal/charts/stock/StockChartDefaultTheme.js +40 -11
  3. package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
  4. package/.internal/charts/stock/drawing/AverageSeries.d.ts +1 -7
  5. package/.internal/charts/stock/drawing/AverageSeries.d.ts.map +1 -1
  6. package/.internal/charts/stock/drawing/AverageSeries.js +7 -8
  7. package/.internal/charts/stock/drawing/AverageSeries.js.map +1 -1
  8. package/.internal/charts/stock/drawing/CalloutSeries.d.ts +0 -14
  9. package/.internal/charts/stock/drawing/CalloutSeries.d.ts.map +1 -1
  10. package/.internal/charts/stock/drawing/CalloutSeries.js +0 -8
  11. package/.internal/charts/stock/drawing/CalloutSeries.js.map +1 -1
  12. package/.internal/charts/stock/drawing/DoodleSeries.js +2 -2
  13. package/.internal/charts/stock/drawing/DoodleSeries.js.map +1 -1
  14. package/.internal/charts/stock/drawing/DrawingSeries.d.ts +15 -1
  15. package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -1
  16. package/.internal/charts/stock/drawing/DrawingSeries.js +56 -15
  17. package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
  18. package/.internal/charts/stock/drawing/EllipseSeries.d.ts.map +1 -1
  19. package/.internal/charts/stock/drawing/EllipseSeries.js +4 -3
  20. package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -1
  21. package/.internal/charts/stock/drawing/FibonacciSeries.d.ts +0 -3
  22. package/.internal/charts/stock/drawing/FibonacciSeries.d.ts.map +1 -1
  23. package/.internal/charts/stock/drawing/FibonacciSeries.js +6 -52
  24. package/.internal/charts/stock/drawing/FibonacciSeries.js.map +1 -1
  25. package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.d.ts +1 -2
  26. package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.d.ts.map +1 -1
  27. package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js +6 -4
  28. package/.internal/charts/stock/drawing/FibonacciTimezoneSeries.js.map +1 -1
  29. package/.internal/charts/stock/drawing/HorizontalLineSeries.js +1 -1
  30. package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -1
  31. package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts +1 -8
  32. package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts.map +1 -1
  33. package/.internal/charts/stock/drawing/HorizontalRaySeries.js +11 -20
  34. package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -1
  35. package/.internal/charts/stock/drawing/IconSeries.d.ts +0 -1
  36. package/.internal/charts/stock/drawing/IconSeries.d.ts.map +1 -1
  37. package/.internal/charts/stock/drawing/IconSeries.js +0 -5
  38. package/.internal/charts/stock/drawing/IconSeries.js.map +1 -1
  39. package/.internal/charts/stock/drawing/Measure.d.ts +41 -0
  40. package/.internal/charts/stock/drawing/Measure.d.ts.map +1 -0
  41. package/.internal/charts/stock/drawing/Measure.js +207 -0
  42. package/.internal/charts/stock/drawing/Measure.js.map +1 -0
  43. package/.internal/charts/stock/drawing/PolylineSeries.d.ts +5 -0
  44. package/.internal/charts/stock/drawing/PolylineSeries.d.ts.map +1 -1
  45. package/.internal/charts/stock/drawing/PolylineSeries.js +36 -1
  46. package/.internal/charts/stock/drawing/PolylineSeries.js.map +1 -1
  47. package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts +0 -7
  48. package/.internal/charts/stock/drawing/QuadrantLineSeries.d.ts.map +1 -1
  49. package/.internal/charts/stock/drawing/QuadrantLineSeries.js +7 -18
  50. package/.internal/charts/stock/drawing/QuadrantLineSeries.js.map +1 -1
  51. package/.internal/charts/stock/drawing/RectangleSeries.d.ts +14 -11
  52. package/.internal/charts/stock/drawing/RectangleSeries.d.ts.map +1 -1
  53. package/.internal/charts/stock/drawing/RectangleSeries.js +80 -121
  54. package/.internal/charts/stock/drawing/RectangleSeries.js.map +1 -1
  55. package/.internal/charts/stock/drawing/RegressionSeries.d.ts +0 -7
  56. package/.internal/charts/stock/drawing/RegressionSeries.d.ts.map +1 -1
  57. package/.internal/charts/stock/drawing/RegressionSeries.js +0 -3
  58. package/.internal/charts/stock/drawing/RegressionSeries.js.map +1 -1
  59. package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts +1 -1
  60. package/.internal/charts/stock/drawing/SimpleLineSeries.d.ts.map +1 -1
  61. package/.internal/charts/stock/drawing/SimpleLineSeries.js +12 -9
  62. package/.internal/charts/stock/drawing/SimpleLineSeries.js.map +1 -1
  63. package/.internal/charts/stock/drawing/TrendLineSeries.d.ts +0 -7
  64. package/.internal/charts/stock/drawing/TrendLineSeries.d.ts.map +1 -1
  65. package/.internal/charts/stock/drawing/TrendLineSeries.js +0 -3
  66. package/.internal/charts/stock/drawing/TrendLineSeries.js.map +1 -1
  67. package/.internal/charts/stock/drawing/VerticalLineSeries.js +1 -1
  68. package/.internal/charts/stock/drawing/VerticalLineSeries.js.map +1 -1
  69. package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts +1 -0
  70. package/.internal/charts/stock/indicators/RelativeStrengthIndex.d.ts.map +1 -1
  71. package/.internal/charts/stock/indicators/RelativeStrengthIndex.js +19 -11
  72. package/.internal/charts/stock/indicators/RelativeStrengthIndex.js.map +1 -1
  73. package/.internal/charts/stock/toolbar/DrawingControl.d.ts +14 -0
  74. package/.internal/charts/stock/toolbar/DrawingControl.d.ts.map +1 -1
  75. package/.internal/charts/stock/toolbar/DrawingControl.js +109 -68
  76. package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -1
  77. package/.internal/charts/stock/toolbar/DrawingToolControl.d.ts +1 -1
  78. package/.internal/charts/stock/toolbar/DrawingToolControl.d.ts.map +1 -1
  79. package/.internal/charts/stock/toolbar/DrawingToolControl.js.map +1 -1
  80. package/.internal/charts/stock/toolbar/DropdownList.d.ts +2 -0
  81. package/.internal/charts/stock/toolbar/DropdownList.d.ts.map +1 -1
  82. package/.internal/charts/stock/toolbar/DropdownList.js +11 -0
  83. package/.internal/charts/stock/toolbar/DropdownList.js.map +1 -1
  84. package/.internal/charts/stock/toolbar/DropdownListControl.d.ts +1 -0
  85. package/.internal/charts/stock/toolbar/DropdownListControl.d.ts.map +1 -1
  86. package/.internal/charts/stock/toolbar/DropdownListControl.js +1 -0
  87. package/.internal/charts/stock/toolbar/DropdownListControl.js.map +1 -1
  88. package/.internal/charts/stock/toolbar/StockIcons.d.ts.map +1 -1
  89. package/.internal/charts/stock/toolbar/StockIcons.js +3 -2
  90. package/.internal/charts/stock/toolbar/StockIcons.js.map +1 -1
  91. package/.internal/charts/xy/XYChart.js +1 -1
  92. package/.internal/charts/xy/XYChart.js.map +1 -1
  93. package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
  94. package/.internal/charts/xy/axes/CategoryAxis.js +2 -4
  95. package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
  96. package/.internal/charts/xy/axes/CategoryDateAxis.d.ts.map +1 -1
  97. package/.internal/charts/xy/axes/CategoryDateAxis.js +2 -4
  98. package/.internal/charts/xy/axes/CategoryDateAxis.js.map +1 -1
  99. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  100. package/.internal/charts/xy/axes/DateAxis.js +3 -5
  101. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  102. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
  103. package/.internal/charts/xy/axes/GaplessDateAxis.js +3 -5
  104. package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
  105. package/.internal/charts/xy/axes/ValueAxis.d.ts.map +1 -1
  106. package/.internal/charts/xy/axes/ValueAxis.js +2 -4
  107. package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
  108. package/.internal/charts/xy/series/BaseColumnSeries.d.ts +2 -0
  109. package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
  110. package/.internal/charts/xy/series/BaseColumnSeries.js +31 -5
  111. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  112. package/.internal/core/Classes.d.ts +7 -5
  113. package/.internal/core/Classes.d.ts.map +1 -1
  114. package/.internal/core/Classes.js.map +1 -1
  115. package/.internal/core/Registry.js +1 -1
  116. package/.internal/core/Registry.js.map +1 -1
  117. package/.internal/core/render/Graphics.d.ts.map +1 -1
  118. package/.internal/core/render/Graphics.js +1 -1
  119. package/.internal/core/render/Graphics.js.map +1 -1
  120. package/.internal/core/render/Series.d.ts +22 -0
  121. package/.internal/core/render/Series.d.ts.map +1 -1
  122. package/.internal/core/render/Series.js +1 -1
  123. package/.internal/core/render/Series.js.map +1 -1
  124. package/.internal/core/render/Sprite.d.ts +1 -1
  125. package/.internal/core/render/Sprite.js.map +1 -1
  126. package/.internal/core/render/backend/CanvasRenderer.d.ts +3 -3
  127. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  128. package/.internal/core/render/backend/CanvasRenderer.js +17 -16
  129. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  130. package/.internal/core/render/patterns/GrainPattern.d.ts +6 -5
  131. package/.internal/core/render/patterns/GrainPattern.d.ts.map +1 -1
  132. package/.internal/core/render/patterns/GrainPattern.js.map +1 -1
  133. package/.internal/core/util/Percent.d.ts +2 -1
  134. package/.internal/core/util/Percent.d.ts.map +1 -1
  135. package/.internal/core/util/Percent.js +2 -1
  136. package/.internal/core/util/Percent.js.map +1 -1
  137. package/.internal/plugins/exporting/Exporting.js +6 -7
  138. package/.internal/plugins/exporting/Exporting.js.map +1 -1
  139. package/.internal/plugins/json/Classes-script.d.ts +16 -0
  140. package/.internal/plugins/json/Classes-script.d.ts.map +1 -1
  141. package/.internal/plugins/json/Classes-script.js +8 -0
  142. package/.internal/plugins/json/Classes-script.js.map +1 -1
  143. package/.internal/plugins/json/Classes.d.ts +16 -0
  144. package/.internal/plugins/json/Classes.d.ts.map +1 -1
  145. package/.internal/plugins/json/Classes.js +8 -0
  146. package/.internal/plugins/json/Classes.js.map +1 -1
  147. package/CHANGELOG.md +33 -0
  148. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  149. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  150. package/examples/javascript/flow-chord/package.json +1 -1
  151. package/examples/javascript/flow-chord-directed/package.json +1 -1
  152. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  153. package/examples/javascript/flow-sankey/package.json +1 -1
  154. package/examples/javascript/gauge/package.json +1 -1
  155. package/examples/javascript/gauge-bands/package.json +1 -1
  156. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  157. package/examples/javascript/hierarchy-pack/package.json +1 -1
  158. package/examples/javascript/hierarchy-partition/package.json +1 -1
  159. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  160. package/examples/javascript/hierarchy-tree/package.json +1 -1
  161. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  162. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  163. package/examples/javascript/jest/package.json +1 -1
  164. package/examples/javascript/json-pie/package.json +1 -1
  165. package/examples/javascript/json-xy/package.json +1 -1
  166. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  167. package/examples/javascript/map-day-and-night/package.json +1 -1
  168. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  169. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  170. package/examples/javascript/map-with-bubbles/package.json +1 -1
  171. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  172. package/examples/javascript/misc-40-charts/package.json +1 -1
  173. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  174. package/examples/javascript/pie-chart/package.json +1 -1
  175. package/examples/javascript/pie-donut-chart/package.json +1 -1
  176. package/examples/javascript/pie-variable-radius/package.json +1 -1
  177. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  178. package/examples/javascript/radar-heat-map/package.json +1 -1
  179. package/examples/javascript/radar-line/package.json +1 -1
  180. package/examples/javascript/radar-time-line/package.json +1 -1
  181. package/examples/javascript/sliced-funnel/package.json +1 -1
  182. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  183. package/examples/javascript/sliced-pyramid/package.json +1 -1
  184. package/examples/javascript/stock-chart/package.json +1 -1
  185. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  186. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  187. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  188. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  189. package/examples/javascript/stock-chart-live/package.json +1 -1
  190. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  191. package/examples/javascript/venn-diagram/package.json +1 -1
  192. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  193. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  194. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  195. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  196. package/examples/javascript/xy-bubble/package.json +1 -1
  197. package/examples/javascript/xy-candlestick/package.json +1 -1
  198. package/examples/javascript/xy-clustered-column/package.json +1 -1
  199. package/examples/javascript/xy-column/package.json +1 -1
  200. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  201. package/examples/javascript/xy-data-grouping/package.json +1 -1
  202. package/examples/javascript/xy-draggable-range/package.json +1 -1
  203. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  204. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  205. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  206. package/examples/javascript/xy-line/package.json +1 -1
  207. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  208. package/examples/javascript/xy-live-data/package.json +1 -1
  209. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  210. package/examples/javascript/xy-ohlc/package.json +1 -1
  211. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  212. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  213. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  214. package/examples/javascript/xy-stacked-column/package.json +1 -1
  215. package/examples/javascript/xy-stacked-step/package.json +1 -1
  216. package/examples/javascript/xy-stock/package.json +1 -1
  217. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  218. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  219. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  220. package/examples/typescript/flow-chord/package.json +1 -1
  221. package/examples/typescript/flow-chord-directed/package.json +1 -1
  222. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  223. package/examples/typescript/flow-sankey/package.json +1 -1
  224. package/examples/typescript/gauge/package.json +1 -1
  225. package/examples/typescript/gauge-bands/package.json +1 -1
  226. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  227. package/examples/typescript/hierarchy-pack/package.json +1 -1
  228. package/examples/typescript/hierarchy-partition/package.json +1 -1
  229. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  230. package/examples/typescript/hierarchy-tree/package.json +1 -1
  231. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  232. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  233. package/examples/typescript/jest/package.json +1 -1
  234. package/examples/typescript/json-pie/package.json +1 -1
  235. package/examples/typescript/json-xy/package.json +1 -1
  236. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  237. package/examples/typescript/map-day-and-night/package.json +1 -1
  238. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  239. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  240. package/examples/typescript/map-with-bubbles/package.json +1 -1
  241. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  242. package/examples/typescript/misc-40-charts/package.json +1 -1
  243. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  244. package/examples/typescript/pie-chart/package.json +1 -1
  245. package/examples/typescript/pie-donut-chart/package.json +1 -1
  246. package/examples/typescript/pie-variable-radius/package.json +1 -1
  247. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  248. package/examples/typescript/radar-heat-map/package.json +1 -1
  249. package/examples/typescript/radar-line/package.json +1 -1
  250. package/examples/typescript/radar-time-line/package.json +1 -1
  251. package/examples/typescript/sliced-funnel/package.json +1 -1
  252. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  253. package/examples/typescript/sliced-pyramid/package.json +1 -1
  254. package/examples/typescript/stock-chart/package.json +1 -1
  255. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  256. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  257. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  258. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  259. package/examples/typescript/stock-chart-live/package.json +1 -1
  260. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  261. package/examples/typescript/venn-diagram/package.json +1 -1
  262. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  263. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  264. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  265. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  266. package/examples/typescript/xy-bubble/package.json +1 -1
  267. package/examples/typescript/xy-candlestick/package.json +1 -1
  268. package/examples/typescript/xy-clustered-column/package.json +1 -1
  269. package/examples/typescript/xy-column/package.json +1 -1
  270. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  271. package/examples/typescript/xy-data-grouping/package.json +1 -1
  272. package/examples/typescript/xy-draggable-range/package.json +1 -1
  273. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  274. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  275. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  276. package/examples/typescript/xy-line/package.json +1 -1
  277. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  278. package/examples/typescript/xy-live-data/package.json +1 -1
  279. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  280. package/examples/typescript/xy-ohlc/package.json +1 -1
  281. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  282. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  283. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  284. package/examples/typescript/xy-stacked-column/package.json +1 -1
  285. package/examples/typescript/xy-stacked-step/package.json +1 -1
  286. package/examples/typescript/xy-stock/package.json +1 -1
  287. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  288. package/package.json +1 -1
  289. package/stock.d.ts +2 -0
  290. package/stock.d.ts.map +1 -1
  291. package/stock.js +2 -0
  292. package/stock.js.map +1 -1
@@ -0,0 +1,207 @@
1
+ import { RectangleSeries } from "./RectangleSeries";
2
+ import { Template } from "../../../core/util/Template";
3
+ import { ListTemplate } from "../../../core/util/List";
4
+ import { Label } from "../../../core/render/Label";
5
+ import { DataItem } from "../../../core/render/Component";
6
+ import { RoundedRectangle } from "../../../core/render/RoundedRectangle";
7
+ import * as $type from "../../../core/util/Type";
8
+ export class Measure extends RectangleSeries {
9
+ constructor() {
10
+ super(...arguments);
11
+ Object.defineProperty(this, "_lines", {
12
+ enumerable: true,
13
+ configurable: true,
14
+ writable: true,
15
+ value: []
16
+ });
17
+ Object.defineProperty(this, "_labels", {
18
+ enumerable: true,
19
+ configurable: true,
20
+ writable: true,
21
+ value: []
22
+ });
23
+ Object.defineProperty(this, "_tag", {
24
+ enumerable: true,
25
+ configurable: true,
26
+ writable: true,
27
+ value: "measure"
28
+ });
29
+ /**
30
+ * A list of labels.
31
+ *
32
+ * `labels.template` can be used to configure axis labels.
33
+ *
34
+ * @default new ListTemplate<Label>
35
+ */
36
+ Object.defineProperty(this, "labels", {
37
+ enumerable: true,
38
+ configurable: true,
39
+ writable: true,
40
+ value: new ListTemplate(Template.new({}), () => Label._new(this._root, {}, [this.labels.template]))
41
+ });
42
+ }
43
+ _afterNew() {
44
+ super._afterNew();
45
+ this.set("snapToData", true);
46
+ this.strokes.template.set("templateField", undefined);
47
+ this.fills.template.set("templateField", undefined);
48
+ }
49
+ /**
50
+ * @ignore
51
+ */
52
+ makeLabel() {
53
+ const label = this.labels.make();
54
+ this.bulletsContainer.children.push(label);
55
+ label.setAll({
56
+ populateText: true,
57
+ background: RoundedRectangle.new(this._root, { themeTags: ["background"] })
58
+ });
59
+ label._setDataItem(new DataItem(this, {}, {}));
60
+ this.labels.push(label);
61
+ return label;
62
+ }
63
+ _createElements(index) {
64
+ super._createElements(index);
65
+ if (!this._labels[index]) {
66
+ const label = this.makeLabel();
67
+ this._labels[index] = label;
68
+ }
69
+ }
70
+ _disposeIndex(index) {
71
+ super._disposeIndex(index);
72
+ const label = this._labels[index];
73
+ if (label) {
74
+ label.dispose();
75
+ delete (this._labels[index]);
76
+ }
77
+ const line = this._lines[index];
78
+ if (line) {
79
+ line.dispose();
80
+ delete (this._lines[index]);
81
+ }
82
+ }
83
+ _updateOthers(index, fillGraphics, p1, p2) {
84
+ const xAxis = this.get("xAxis");
85
+ const panel = xAxis.chart;
86
+ const line = this._lines[index];
87
+ let positiveColor = this._root.interfaceColors.get("positive");
88
+ let negativeColor = this._root.interfaceColors.get("negative");
89
+ const stockChart = panel.getPrivate("stockChart");
90
+ let volumeSeries;
91
+ if (stockChart) {
92
+ positiveColor = stockChart.get("stockPositiveColor", positiveColor);
93
+ negativeColor = stockChart.get("stockNegativeColor", negativeColor);
94
+ volumeSeries = stockChart.get("volumeSeries");
95
+ }
96
+ let ix = 1;
97
+ if (p1.x > p2.x) {
98
+ ix = -1;
99
+ }
100
+ const label = this._labels[index];
101
+ const labelBg = label.get("background");
102
+ const diP1 = this._di[index]["p1"];
103
+ const diP2 = this._di[index]["p2"];
104
+ let color = positiveColor;
105
+ let iy = 1;
106
+ if (p1.y > p2.y) {
107
+ iy = -1;
108
+ color = negativeColor;
109
+ }
110
+ fillGraphics.set("fill", color);
111
+ line.set("stroke", color);
112
+ labelBg.set("fill", color);
113
+ this.outerCircles.each((outerCircle) => {
114
+ outerCircle.set("stroke", color);
115
+ });
116
+ const mx = p1.x + (p2.x - p1.x) / 2;
117
+ const my = p1.y + (p2.y - p1.y) / 2;
118
+ line.set("segments", [[[{ x: mx, y: p1.y }, { x: mx, y: p2.y }]], [[{ x: mx - 5, y: p2.y - 5 * iy }, { x: mx, y: p2.y }, { x: mx + 5, y: p2.y - 5 * iy }]], [[{ x: p1.x, y: my }, { x: p2.x, y: my }]], [[{ x: p2.x - 5 * ix, y: my - 5 }, { x: p2.x, y: my }, { x: p2.x - 5 * ix, y: my + 5 }]]]);
119
+ const value1 = diP1.get("valueY", 0);
120
+ const value2 = diP2.get("valueY", 0);
121
+ const numberFormatter = this.getNumberFormatter();
122
+ const value = numberFormatter.format((value2 - value1));
123
+ const percent = numberFormatter.format((value2 - value1) / value1 * 100) + "%";
124
+ const baseInterval = xAxis.getPrivate("baseInterval");
125
+ const time1 = diP1.get("valueX", 0);
126
+ const time2 = diP2.get("valueX", 0);
127
+ const series = this.get("series");
128
+ let count = 0;
129
+ if (series) {
130
+ const di1 = xAxis.getSeriesItem(series, xAxis.valueToPosition(time1));
131
+ const di2 = xAxis.getSeriesItem(series, xAxis.valueToPosition(time2));
132
+ if (di1 && di2) {
133
+ count = series.dataItems.indexOf(di2) - series.dataItems.indexOf(di1) + 1;
134
+ if (this.get("snapToData")) {
135
+ count--;
136
+ }
137
+ }
138
+ }
139
+ let intervalCount = Math.ceil((time2 - time1) / xAxis.baseDuration() * baseInterval.count);
140
+ if (intervalCount < count) {
141
+ intervalCount = count;
142
+ }
143
+ let volume = 0;
144
+ if (volumeSeries) {
145
+ const div1 = xAxis.getSeriesItem(volumeSeries, xAxis.valueToPosition(time1));
146
+ const div2 = xAxis.getSeriesItem(volumeSeries, xAxis.valueToPosition(time2));
147
+ if (div1 && div2) {
148
+ const dataItems = volumeSeries.dataItems;
149
+ let i1 = dataItems.indexOf(div1);
150
+ let i2 = dataItems.indexOf(div2);
151
+ if (i1 > i2) {
152
+ [i1, i2] = [i2, i1];
153
+ }
154
+ for (let i = i1; i < i2; i++) {
155
+ const dataItem = dataItems[i];
156
+ if (dataItem) {
157
+ const value = dataItem.get("valueY");
158
+ if ($type.isNumber(value)) {
159
+ volume += value;
160
+ }
161
+ }
162
+ }
163
+ }
164
+ }
165
+ let text = this.get("labelText", "");
166
+ if (volume > 0) {
167
+ text += this.get("labelVolumeText");
168
+ }
169
+ const unitNames = {
170
+ millisecond: "ms",
171
+ second: "s",
172
+ minute: "m",
173
+ hour: "h",
174
+ day: "d",
175
+ week: "wk",
176
+ month: "mo",
177
+ year: "y"
178
+ };
179
+ label.dataItem.dataContext = {
180
+ value: value,
181
+ percent: percent,
182
+ count: count,
183
+ intervalCount: intervalCount,
184
+ intervalUnit: this._root.language.translateAny(unitNames[baseInterval.timeUnit]),
185
+ volume: volume
186
+ };
187
+ label.setAll({
188
+ text: text,
189
+ x: mx,
190
+ y: my
191
+ });
192
+ label.text.markDirtyText();
193
+ }
194
+ }
195
+ Object.defineProperty(Measure, "className", {
196
+ enumerable: true,
197
+ configurable: true,
198
+ writable: true,
199
+ value: "Measure"
200
+ });
201
+ Object.defineProperty(Measure, "classNames", {
202
+ enumerable: true,
203
+ configurable: true,
204
+ writable: true,
205
+ value: RectangleSeries.classNames.concat([Measure.className])
206
+ });
207
+ //# sourceMappingURL=Measure.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Measure.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/Measure.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IPoint } from \"../../../core/util/IPoint\";\r\nimport type { Line } from \"../../../core/render/Line\";\r\nimport type { XYSeries } from \"../../xy/series/XYSeries\";\r\nimport type { StockPanel } from \"../StockPanel\";\r\nimport type { Graphics } from \"../../../core/render/Graphics\";\r\n\r\nimport { RectangleSeries, IRectangleSeriesSettings, IRectangleSeriesPrivate, IRectangleSeriesDataItem } from \"./RectangleSeries\";\r\nimport { Template } from \"../../../core/util/Template\";\r\nimport { ListTemplate } from \"../../../core/util/List\";\r\nimport { Label } from \"../../../core/render/Label\";\r\nimport { DataItem } from \"../../../core/render/Component\";\r\nimport { RoundedRectangle } from \"../../../core/render/RoundedRectangle\";\r\n\r\nimport * as $type from \"../../../core/util/Type\";\r\n\r\nexport interface IMeasureDataItem extends IRectangleSeriesDataItem {\r\n}\r\n\r\nexport interface IMeasureSettings extends IRectangleSeriesSettings {\r\n\tlabelText?: string;\r\n\tlabelVolumeText?: string;\r\n}\r\n\r\nexport interface IMeasurePrivate extends IRectangleSeriesPrivate {\r\n}\r\n\r\nexport class Measure extends RectangleSeries {\r\n\tpublic static className: string = \"Measure\";\r\n\tpublic static classNames: Array<string> = RectangleSeries.classNames.concat([Measure.className]);\r\n\r\n\tdeclare public _settings: IMeasureSettings;\r\n\tdeclare public _privateSettings: IMeasurePrivate;\r\n\tdeclare public _dataItemSettings: IMeasureDataItem;\r\n\r\n\tprotected _lines: Array<Line> = [];\r\n\tprotected _labels: Array<Label> = [];\r\n\r\n\tprotected _tag = \"measure\";\r\n\r\n\tpublic _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.set(\"snapToData\", true);\r\n\t\tthis.strokes.template.set(\"templateField\", undefined);\r\n\t\tthis.fills.template.set(\"templateField\", undefined);\r\n\t}\r\n\r\n\t/**\r\n\t * A list of labels.\r\n\t *\r\n\t * `labels.template` can be used to configure axis labels.\r\n\t *\r\n\t * @default new ListTemplate<Label>\r\n\t */\r\n\tpublic readonly labels: ListTemplate<Label> = new ListTemplate(\r\n\t\tTemplate.new({}),\r\n\t\t() => Label._new(this._root, {}, [this.labels.template])\r\n\t);\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic makeLabel(): Label {\r\n\t\tconst label = this.labels.make();\r\n\t\tthis.bulletsContainer.children.push(label);\r\n\t\tlabel.setAll({\r\n\t\t\tpopulateText: true,\r\n\t\t\tbackground: RoundedRectangle.new(this._root, { themeTags: [\"background\"] })\r\n\t\t});\r\n\t\tlabel._setDataItem(new DataItem(this, {}, {}));\r\n\t\tthis.labels.push(label);\r\n\t\treturn label;\r\n\t}\r\n\r\n\tprotected _createElements(index: number) {\r\n\t\tsuper._createElements(index);\r\n\t\tif (!this._labels[index]) {\r\n\t\t\tconst label = this.makeLabel();\r\n\t\t\tthis._labels[index] = label;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _disposeIndex(index: number) {\r\n\t\tsuper._disposeIndex(index);\r\n\t\tconst label = this._labels[index];\r\n\t\tif (label) {\r\n\t\t\tlabel.dispose();\r\n\t\t\tdelete (this._labels[index]);\r\n\t\t}\r\n\r\n\t\tconst line = this._lines[index];\r\n\t\tif (line) {\r\n\t\t\tline.dispose();\r\n\t\t\tdelete (this._lines[index]);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateOthers(index: number, fillGraphics: Graphics, p1: IPoint, p2: IPoint) {\r\n\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\tconst panel = xAxis.chart as StockPanel;\r\n\t\tconst line = this._lines[index];\r\n\r\n\t\tlet positiveColor = this._root.interfaceColors.get(\"positive\");\r\n\t\tlet negativeColor = this._root.interfaceColors.get(\"negative\");\r\n\r\n\t\tconst stockChart = panel.getPrivate(\"stockChart\");\r\n\r\n\t\tlet volumeSeries: XYSeries | undefined;\r\n\r\n\t\tif (stockChart) {\r\n\t\t\tpositiveColor = stockChart.get(\"stockPositiveColor\", positiveColor);\r\n\t\t\tnegativeColor = stockChart.get(\"stockNegativeColor\", negativeColor);\r\n\t\t\tvolumeSeries = stockChart.get(\"volumeSeries\");\r\n\t\t}\r\n\r\n\t\tlet ix = 1;\r\n\t\tif (p1.x > p2.x) {\r\n\t\t\tix = -1;\r\n\t\t}\r\n\r\n\t\tconst label = this._labels[index];\r\n\t\tconst labelBg = label.get(\"background\")!;\r\n\r\n\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\t\tlet color = positiveColor;\r\n\t\tlet iy = 1;\r\n\t\tif (p1.y > p2.y) {\r\n\t\t\tiy = -1;\r\n\t\t\tcolor = negativeColor;\r\n\t\t}\r\n\r\n\t\tfillGraphics.set(\"fill\", color);\r\n\t\tline.set(\"stroke\", color);\r\n\t\tlabelBg.set(\"fill\", color);\r\n\r\n\t\tthis.outerCircles.each((outerCircle) => {\r\n\t\t\touterCircle.set(\"stroke\", color);\r\n\t\t})\r\n\r\n\t\tconst mx = p1.x + (p2.x - p1.x) / 2;\r\n\t\tconst my = p1.y + (p2.y - p1.y) / 2;\r\n\r\n\t\tline.set(\"segments\", [[[{ x: mx, y: p1.y }, { x: mx, y: p2.y }]], [[{ x: mx - 5, y: p2.y - 5 * iy }, { x: mx, y: p2.y }, { x: mx + 5, y: p2.y - 5 * iy }]], [[{ x: p1.x, y: my }, { x: p2.x, y: my }]], [[{ x: p2.x - 5 * ix, y: my - 5 }, { x: p2.x, y: my }, { x: p2.x - 5 * ix, y: my + 5 }]]]);\r\n\r\n\t\tconst value1 = diP1.get(\"valueY\", 0);\r\n\t\tconst value2 = diP2.get(\"valueY\", 0);\r\n\r\n\t\tconst numberFormatter = this.getNumberFormatter();\r\n\t\tconst value = numberFormatter.format((value2 - value1));\r\n\t\tconst percent = numberFormatter.format((value2 - value1) / value1 * 100) + \"%\";\r\n\t\tconst baseInterval = xAxis.getPrivate(\"baseInterval\");\r\n\r\n\t\tconst time1 = diP1.get(\"valueX\", 0);\r\n\t\tconst time2 = diP2.get(\"valueX\", 0);\r\n\r\n\t\tconst series = this.get(\"series\");\r\n\r\n\t\tlet count = 0;\r\n\t\tif (series) {\r\n\t\t\tconst di1 = xAxis.getSeriesItem(series, xAxis.valueToPosition(time1));\r\n\t\t\tconst di2 = xAxis.getSeriesItem(series, xAxis.valueToPosition(time2));\r\n\t\t\tif (di1 && di2) {\r\n\t\t\t\tcount = series.dataItems.indexOf(di2) - series.dataItems.indexOf(di1) + 1;\r\n\r\n\t\t\t\tif (this.get(\"snapToData\")) {\r\n\t\t\t\t\tcount--;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tlet intervalCount = Math.ceil((time2 - time1) / xAxis.baseDuration() * baseInterval.count);\r\n\t\tif (intervalCount < count) {\r\n\t\t\tintervalCount = count;\r\n\t\t}\r\n\r\n\r\n\t\tlet volume = 0;\r\n\t\tif (volumeSeries) {\r\n\t\t\tconst div1 = xAxis.getSeriesItem(volumeSeries, xAxis.valueToPosition(time1));\r\n\t\t\tconst div2 = xAxis.getSeriesItem(volumeSeries, xAxis.valueToPosition(time2));\r\n\r\n\t\t\tif (div1 && div2) {\r\n\t\t\t\tconst dataItems = volumeSeries.dataItems;\r\n\t\t\t\tlet i1 = dataItems.indexOf(div1);\r\n\t\t\t\tlet i2 = dataItems.indexOf(div2);\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\tfor (let i = i1; i < i2; i++) {\r\n\t\t\t\t\tconst dataItem = dataItems[i];\r\n\t\t\t\t\tif (dataItem) {\r\n\t\t\t\t\t\tconst value = dataItem.get(\"valueY\");\r\n\t\t\t\t\t\tif ($type.isNumber(value)) {\r\n\t\t\t\t\t\t\tvolume += value;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\r\n\r\n\t\tlet text = this.get(\"labelText\", \"\");\r\n\t\tif (volume > 0) {\r\n\t\t\ttext += this.get(\"labelVolumeText\");\r\n\t\t}\r\n\r\n\t\tconst unitNames = {\r\n\t\t\tmillisecond: \"ms\",\r\n\t\t\tsecond: \"s\",\r\n\t\t\tminute: \"m\",\r\n\t\t\thour: \"h\",\r\n\t\t\tday: \"d\",\r\n\t\t\tweek: \"wk\",\r\n\t\t\tmonth: \"mo\",\r\n\t\t\tyear: \"y\"\r\n\t\t}\r\n\r\n\t\tlabel.dataItem!.dataContext = {\r\n\t\t\tvalue: value,\r\n\t\t\tpercent: percent,\r\n\t\t\tcount: count,\r\n\t\t\tintervalCount: intervalCount,\r\n\t\t\tintervalUnit: this._root.language.translateAny(unitNames[baseInterval.timeUnit]),\r\n\t\t\tvolume: volume\r\n\t\t};\r\n\r\n\t\tlabel.setAll({\r\n\t\t\ttext: text,\r\n\t\t\tx: mx,\r\n\t\t\ty: my\r\n\t\t});\r\n\r\n\t\tlabel.text.markDirtyText();\r\n\t}\r\n\r\n}"]}
@@ -1,6 +1,7 @@
1
1
  import type { ISpritePointerEvent } from "../../../core/render/Sprite";
2
2
  import type { DataItem } from "../../../core/render/Component";
3
3
  import type { IPoint } from "../../../core/util/IPoint";
4
+ import { Line } from "../../../core/render/Line";
4
5
  import { DrawingSeries, IDrawingSeriesSettings, IDrawingSeriesPrivate, IDrawingSeriesDataItem } from "./DrawingSeries";
5
6
  export interface IPolylineSeriesDataItem extends IDrawingSeriesDataItem {
6
7
  }
@@ -16,12 +17,16 @@ export declare class PolylineSeries extends DrawingSeries {
16
17
  _dataItemSettings: IPolylineSeriesDataItem;
17
18
  protected _pIndex: number;
18
19
  protected _tag: string;
20
+ protected _drawingLine: Line;
19
21
  protected _handlePointerClick(event: ISpritePointerEvent): void;
20
22
  protected _handleBulletDragStop(event: ISpritePointerEvent): void;
23
+ disableDrawing(): void;
21
24
  protected _afterDataChange(): void;
25
+ clearDrawings(): void;
22
26
  protected _addPoint(event: ISpritePointerEvent): void;
23
27
  protected _checkClosing(event: ISpritePointerEvent): void;
24
28
  protected _handleClosing(dataItem: DataItem<this["_dataItemSettings"]>, point: IPoint): void;
29
+ protected _handlePointerMove(event: ISpritePointerEvent): void;
25
30
  protected _updateElements(): void;
26
31
  }
27
32
  //# sourceMappingURL=PolylineSeries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PolylineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/PolylineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAIvH,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;CAAI;AAE3E,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;CAAI;AAE3E,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;CAAI;AAEzE,qBAAa,cAAe,SAAQ,aAAa;IAChD,OAAc,SAAS,EAAE,MAAM,CAAoB;IACnD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA+D;IAEvF,SAAS,EAAE,uBAAuB,CAAC;IACnC,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,iBAAiB,EAAE,uBAAuB,CAAC;IAG1D,SAAS,CAAC,OAAO,EAAE,MAAM,CAAK;IAE9B,SAAS,CAAC,IAAI,SAAc;IAE5B,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB;IAoBxD,SAAS,CAAC,qBAAqB,CAAC,KAAK,EAAE,mBAAmB;IAK1D,SAAS,CAAC,gBAAgB;IAa1B,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,mBAAmB;IA2B9C,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,mBAAmB;IASlD,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;IAsBrF,SAAS,CAAC,eAAe;CA+BzB"}
1
+ {"version":3,"file":"PolylineSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/PolylineSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAEjD,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAIvH,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;CAAI;AAE3E,MAAM,WAAW,uBAAwB,SAAQ,sBAAsB;CAAI;AAE3E,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;CAAI;AAEzE,qBAAa,cAAe,SAAQ,aAAa;IAChD,OAAc,SAAS,EAAE,MAAM,CAAoB;IACnD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA+D;IAEvF,SAAS,EAAE,uBAAuB,CAAC;IACnC,gBAAgB,EAAE,sBAAsB,CAAC;IACzC,iBAAiB,EAAE,uBAAuB,CAAC;IAG1D,SAAS,CAAC,OAAO,EAAE,MAAM,CAAK;IAE9B,SAAS,CAAC,IAAI,SAAc;IAE5B,SAAS,CAAC,YAAY,EAAE,IAAI,CAAmF;IAE/G,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB;IAsBxD,SAAS,CAAC,qBAAqB,CAAC,KAAK,EAAE,mBAAmB;IAKnD,cAAc;IAKrB,SAAS,CAAC,gBAAgB;IAanB,aAAa,IAAI,IAAI;IAK5B,SAAS,CAAC,SAAS,CAAC,KAAK,EAAE,mBAAmB;IA2B9C,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,mBAAmB;IASlD,SAAS,CAAC,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;IAsBrF,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,mBAAmB;IAoBvD,SAAS,CAAC,eAAe;CA+BzB"}
@@ -1,3 +1,4 @@
1
+ import { Line } from "../../../core/render/Line";
1
2
  import { DrawingSeries } from "./DrawingSeries";
2
3
  import * as $array from "../../../core/util/Array";
3
4
  export class PolylineSeries extends DrawingSeries {
@@ -16,6 +17,12 @@ export class PolylineSeries extends DrawingSeries {
16
17
  writable: true,
17
18
  value: "polyline"
18
19
  });
20
+ Object.defineProperty(this, "_drawingLine", {
21
+ enumerable: true,
22
+ configurable: true,
23
+ writable: true,
24
+ value: this.mainContainer.children.push(Line.new(this._root, { forceInactive: true }))
25
+ });
19
26
  }
20
27
  _handlePointerClick(event) {
21
28
  if (this._drawingEnabled) {
@@ -29,14 +36,20 @@ export class PolylineSeries extends DrawingSeries {
29
36
  if (this._pIndex == 0) {
30
37
  this.data.push({ stroke: this._getStrokeTemplate(), index: this._index, corner: "e" });
31
38
  }
39
+ this._drawingLine.show();
32
40
  this._addPoint(event);
33
41
  }
42
+ this._drawingLine.set("stroke", this.get("strokeColor"));
34
43
  }
35
44
  }
36
45
  _handleBulletDragStop(event) {
37
46
  super._handleBulletDragStop(event);
38
47
  this._checkClosing(event);
39
48
  }
49
+ disableDrawing() {
50
+ super.disableDrawing();
51
+ this._drawingLine.hide();
52
+ }
40
53
  _afterDataChange() {
41
54
  super._afterDataChange();
42
55
  const dataItems = this.dataItems;
@@ -48,6 +61,10 @@ export class PolylineSeries extends DrawingSeries {
48
61
  }
49
62
  }
50
63
  }
64
+ clearDrawings() {
65
+ super.clearDrawings();
66
+ this._drawingLine.hide();
67
+ }
51
68
  _addPoint(event) {
52
69
  const chart = this.chart;
53
70
  if (chart) {
@@ -55,7 +72,7 @@ export class PolylineSeries extends DrawingSeries {
55
72
  const yAxis = this.get("yAxis");
56
73
  const point = chart.plotContainer.toLocal(event.point);
57
74
  const valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(point.x)));
58
- const valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(point.y)));
75
+ const valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(point.y)), valueX);
59
76
  const dataItems = this.dataItems;
60
77
  const len = dataItems.length;
61
78
  this.data.push({ valueY: valueY, valueX: valueX, index: this._index, corner: this._pIndex });
@@ -89,12 +106,30 @@ export class PolylineSeries extends DrawingSeries {
89
106
  dataContext.closing = true;
90
107
  this._pIndex = 0;
91
108
  this.data.push({ stroke: this._getStrokeTemplate(), index: index + 1, corner: "e" });
109
+ this._drawingLine.hide();
92
110
  }
93
111
  }
94
112
  }
95
113
  }
96
114
  }
97
115
  }
116
+ _handlePointerMove(event) {
117
+ super._handlePointerMove(event);
118
+ if (this._isDrawing) {
119
+ const movePoint = this._movePointerPoint;
120
+ if (movePoint) {
121
+ const dataItems = this.dataItems;
122
+ const len = dataItems.length;
123
+ if (len > 0) {
124
+ const lastItem = dataItems[len - 1];
125
+ const point = lastItem.get("point");
126
+ if (point) {
127
+ this._drawingLine.set("points", [point, movePoint]);
128
+ }
129
+ }
130
+ }
131
+ }
132
+ }
98
133
  _updateElements() {
99
134
  $array.each(this.dataItems, (dataItem) => {
100
135
  const dataContext = dataItem.dataContext;
@@ -1 +1 @@
1
- {"version":3,"file":"PolylineSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/PolylineSeries.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 { IPoint } from \"../../../core/util/IPoint\";\r\n\r\nimport { DrawingSeries, IDrawingSeriesSettings, IDrawingSeriesPrivate, IDrawingSeriesDataItem } from \"./DrawingSeries\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IPolylineSeriesDataItem extends IDrawingSeriesDataItem { }\r\n\r\nexport interface IPolylineSeriesSettings extends IDrawingSeriesSettings { }\r\n\r\nexport interface IPolylineSeriesPrivate extends IDrawingSeriesPrivate { }\r\n\r\nexport class PolylineSeries extends DrawingSeries {\r\n\tpublic static className: string = \"PolylineSeries\";\r\n\tpublic static classNames: Array<string> = DrawingSeries.classNames.concat([PolylineSeries.className]);\r\n\r\n\tdeclare public _settings: IPolylineSeriesSettings;\r\n\tdeclare public _privateSettings: IPolylineSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IPolylineSeriesDataItem;\r\n\r\n\t// point index in segment\r\n\tprotected _pIndex: number = 0;\r\n\r\n\tprotected _tag = \"polyline\";\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tsuper._handlePointerClick(event);\r\n\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tthis._isDrawing = true;\r\n\t\t\t\t// for consistency with other series\r\n\t\t\t\tif (this._index == 0) {\r\n\t\t\t\t\tthis._index = 1;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (this._pIndex == 0) {\r\n\t\t\t\t\tthis.data.push({ stroke: this._getStrokeTemplate(), index: this._index, corner:\"e\" });\r\n\t\t\t\t}\r\n\r\n\t\t\t\tthis._addPoint(event);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleBulletDragStop(event: ISpritePointerEvent) {\r\n\t\tsuper._handleBulletDragStop(event);\r\n\t\tthis._checkClosing(event);\r\n\t}\r\n\r\n\tprotected _afterDataChange() {\r\n\t\tsuper._afterDataChange();\r\n\t\tconst dataItems = this.dataItems;\r\n\t\tif (dataItems.length > 0) {\r\n\t\t\tconst lastDataItem = dataItems[dataItems.length - 1];\r\n\t\t\tconst dataContext = lastDataItem.dataContext as any;\r\n\t\t\tif (dataContext.closing) {\r\n\t\t\t\tthis._pIndex = 0;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tprotected _addPoint(event: ISpritePointerEvent) {\r\n\t\tconst chart = this.chart;\r\n\t\tif (chart) {\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\tconst point = chart.plotContainer.toLocal(event.point);\r\n\r\n\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(point.x)));\r\n\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(point.y)));\r\n\r\n\t\t\tconst dataItems = this.dataItems;\r\n\t\t\tconst len = dataItems.length;\r\n\r\n\t\t\tthis.data.push({ valueY: valueY, valueX: valueX, index: this._index, corner: this._pIndex });\r\n\t\t\tthis.setPrivate(\"startIndex\", 0);\r\n\t\t\tthis.setPrivate(\"endIndex\", len);\r\n\r\n\t\t\tconst dataItem = dataItems[len];\r\n\t\t\tthis._positionBullets(dataItem);\r\n\t\t\tthis._setXLocation(dataItem, valueX);\r\n\r\n\t\t\tthis._pIndex++;\r\n\t\t\tthis._handleClosing(dataItem, point);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _checkClosing(event: ISpritePointerEvent) {\r\n\t\tconst dataItem = event.target.dataItem;\r\n\t\tif (dataItem) {\r\n\t\t\tconst sprite = event.target;\r\n\t\t\tconst point = { x: sprite.x(), y: sprite.y() }\r\n\t\t\tthis._handleClosing(dataItem, point);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleClosing(dataItem: DataItem<this[\"_dataItemSettings\"]>, point: IPoint) {\r\n\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\tif (!dataContext.closing) {\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tif (this._di[index]) {\r\n\t\t\t\tconst firstDataItem = this._di[index][0];\r\n\r\n\t\t\t\tif (firstDataItem && firstDataItem != dataItem) {\r\n\t\t\t\t\tconst dPoint = firstDataItem.get(\"point\");\r\n\t\t\t\t\tif (dPoint) {\r\n\t\t\t\t\t\tif (Math.hypot(point.x - dPoint.x, point.y - dPoint.y) < 5) {\r\n\t\t\t\t\t\t\tdataContext.closing = true;\r\n\t\t\t\t\t\t\tthis._pIndex = 0;\r\n\t\t\t\t\t\t\tthis.data.push({ stroke: this._getStrokeTemplate(), index: index + 1, corner: \"e\" });\r\n\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateElements() {\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tif (dataContext) {\r\n\t\t\t\tconst closing = dataContext.closing;\r\n\t\t\t\tif (closing) {\r\n\t\t\t\t\tif (this._di[dataContext.index]) {\r\n\t\t\t\t\t\tconst closingDataItem = this._di[dataContext.index][0];\r\n\t\t\t\t\t\tconst valueX = closingDataItem.get(\"valueX\", 0);\r\n\t\t\t\t\t\tconst valueY = closingDataItem.get(\"valueY\");\r\n\r\n\t\t\t\t\t\tthis._setContext(dataItem, \"valueX\", valueX);\r\n\t\t\t\t\t\tthis._setContext(dataItem, \"valueY\", valueY, true);\r\n\r\n\t\t\t\t\t\tthis._setXLocation(dataItem, valueX);\r\n\t\t\t\t\t\tthis._positionBullets(dataItem);\r\n\r\n\t\t\t\t\t\tconst bullets = dataItem.bullets;\r\n\t\t\t\t\t\tif (bullets) {\r\n\t\t\t\t\t\t\t$array.each(bullets, (bullet) => {\r\n\t\t\t\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\r\n\t\t\t\t\t\t\t\tif (sprite) {\r\n\t\t\t\t\t\t\t\t\tsprite.set(\"forceHidden\", true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"PolylineSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/PolylineSeries.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 { IPoint } from \"../../../core/util/IPoint\";\r\nimport { Line } from \"../../../core/render/Line\";\r\n\r\nimport { DrawingSeries, IDrawingSeriesSettings, IDrawingSeriesPrivate, IDrawingSeriesDataItem } from \"./DrawingSeries\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IPolylineSeriesDataItem extends IDrawingSeriesDataItem { }\r\n\r\nexport interface IPolylineSeriesSettings extends IDrawingSeriesSettings { }\r\n\r\nexport interface IPolylineSeriesPrivate extends IDrawingSeriesPrivate { }\r\n\r\nexport class PolylineSeries extends DrawingSeries {\r\n\tpublic static className: string = \"PolylineSeries\";\r\n\tpublic static classNames: Array<string> = DrawingSeries.classNames.concat([PolylineSeries.className]);\r\n\r\n\tdeclare public _settings: IPolylineSeriesSettings;\r\n\tdeclare public _privateSettings: IPolylineSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IPolylineSeriesDataItem;\r\n\r\n\t// point index in segment\r\n\tprotected _pIndex: number = 0;\r\n\r\n\tprotected _tag = \"polyline\";\r\n\r\n\tprotected _drawingLine: Line = this.mainContainer.children.push(Line.new(this._root, { forceInactive: true }));\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tsuper._handlePointerClick(event);\r\n\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tthis._isDrawing = true;\r\n\t\t\t\t// for consistency with other series\r\n\t\t\t\tif (this._index == 0) {\r\n\t\t\t\t\tthis._index = 1;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (this._pIndex == 0) {\r\n\t\t\t\t\tthis.data.push({ stroke: this._getStrokeTemplate(), index: this._index, corner: \"e\" });\r\n\t\t\t\t}\r\n\t\t\t\tthis._drawingLine.show();\r\n\t\t\t\tthis._addPoint(event);\r\n\t\t\t}\r\n\r\n\t\t\tthis._drawingLine.set(\"stroke\", this.get(\"strokeColor\"));\t\t\t\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleBulletDragStop(event: ISpritePointerEvent) {\r\n\t\tsuper._handleBulletDragStop(event);\r\n\t\tthis._checkClosing(event);\r\n\t}\r\n\r\n\tpublic disableDrawing() {\r\n\t\tsuper.disableDrawing();\r\n\t\tthis._drawingLine.hide();\r\n\t}\r\n\r\n\tprotected _afterDataChange() {\r\n\t\tsuper._afterDataChange();\r\n\t\tconst dataItems = this.dataItems;\r\n\t\tif (dataItems.length > 0) {\r\n\t\t\tconst lastDataItem = dataItems[dataItems.length - 1];\r\n\t\t\tconst dataContext = lastDataItem.dataContext as any;\r\n\t\t\tif (dataContext.closing) {\r\n\t\t\t\tthis._pIndex = 0;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tpublic clearDrawings(): void {\r\n\t\tsuper.clearDrawings();\r\n\t\tthis._drawingLine.hide();\r\n\t}\r\n\r\n\tprotected _addPoint(event: ISpritePointerEvent) {\r\n\t\tconst chart = this.chart;\r\n\t\tif (chart) {\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\tconst point = chart.plotContainer.toLocal(event.point);\r\n\r\n\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(point.x)));\r\n\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(point.y)), valueX);\r\n\r\n\t\t\tconst dataItems = this.dataItems;\r\n\t\t\tconst len = dataItems.length;\r\n\r\n\t\t\tthis.data.push({ valueY: valueY, valueX: valueX, index: this._index, corner: this._pIndex });\r\n\t\t\tthis.setPrivate(\"startIndex\", 0);\r\n\t\t\tthis.setPrivate(\"endIndex\", len);\r\n\r\n\t\t\tconst dataItem = dataItems[len];\r\n\t\t\tthis._positionBullets(dataItem);\r\n\t\t\tthis._setXLocation(dataItem, valueX);\r\n\r\n\t\t\tthis._pIndex++;\r\n\t\t\tthis._handleClosing(dataItem, point);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _checkClosing(event: ISpritePointerEvent) {\r\n\t\tconst dataItem = event.target.dataItem;\r\n\t\tif (dataItem) {\r\n\t\t\tconst sprite = event.target;\r\n\t\t\tconst point = { x: sprite.x(), y: sprite.y() }\r\n\t\t\tthis._handleClosing(dataItem, point);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleClosing(dataItem: DataItem<this[\"_dataItemSettings\"]>, point: IPoint) {\r\n\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\tif (!dataContext.closing) {\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tif (this._di[index]) {\r\n\t\t\t\tconst firstDataItem = this._di[index][0];\r\n\r\n\t\t\t\tif (firstDataItem && firstDataItem != dataItem) {\r\n\t\t\t\t\tconst dPoint = firstDataItem.get(\"point\");\r\n\t\t\t\t\tif (dPoint) {\r\n\t\t\t\t\t\tif (Math.hypot(point.x - dPoint.x, point.y - dPoint.y) < 5) {\r\n\t\t\t\t\t\t\tdataContext.closing = true;\r\n\t\t\t\t\t\t\tthis._pIndex = 0;\r\n\t\t\t\t\t\t\tthis.data.push({ stroke: this._getStrokeTemplate(), index: index + 1, corner: \"e\" });\r\n\t\t\t\t\t\t\tthis._drawingLine.hide();\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerMove(event: ISpritePointerEvent) {\r\n\t\tsuper._handlePointerMove(event);\r\n\t\tif (this._isDrawing) {\r\n\t\t\tconst movePoint = this._movePointerPoint;\r\n\r\n\t\t\tif (movePoint) {\r\n\t\t\t\tconst dataItems = this.dataItems;\r\n\t\t\t\tconst len = dataItems.length;\r\n\t\t\t\tif(len > 0){\r\n\t\t\t\t\tconst lastItem = dataItems[len - 1];\r\n\r\n\t\t\t\t\tconst point = lastItem.get(\"point\");\r\n\t\t\t\t\tif (point) {\r\n\t\t\t\t\t\tthis._drawingLine.set(\"points\", [point, movePoint]);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateElements() {\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tif (dataContext) {\r\n\t\t\t\tconst closing = dataContext.closing;\r\n\t\t\t\tif (closing) {\r\n\t\t\t\t\tif (this._di[dataContext.index]) {\r\n\t\t\t\t\t\tconst closingDataItem = this._di[dataContext.index][0];\r\n\t\t\t\t\t\tconst valueX = closingDataItem.get(\"valueX\", 0);\r\n\t\t\t\t\t\tconst valueY = closingDataItem.get(\"valueY\");\r\n\r\n\t\t\t\t\t\tthis._setContext(dataItem, \"valueX\", valueX);\r\n\t\t\t\t\t\tthis._setContext(dataItem, \"valueY\", valueY, true);\r\n\r\n\t\t\t\t\t\tthis._setXLocation(dataItem, valueX);\r\n\t\t\t\t\t\tthis._positionBullets(dataItem);\r\n\r\n\t\t\t\t\t\tconst bullets = dataItem.bullets;\r\n\t\t\t\t\t\tif (bullets) {\r\n\t\t\t\t\t\t\t$array.each(bullets, (bullet) => {\r\n\t\t\t\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\r\n\t\t\t\t\t\t\t\tif (sprite) {\r\n\t\t\t\t\t\t\t\t\tsprite.set(\"forceHidden\", true);\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}"]}
@@ -2,12 +2,6 @@ import { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate,
2
2
  export interface IQuadrantLineSeriesDataItem extends ISimpleLineSeriesDataItem {
3
3
  }
4
4
  export interface IQuadrantLineSeriesSettings extends ISimpleLineSeriesSettings {
5
- /**
6
- * Value field to use for calculations.
7
- *
8
- * @default "value"
9
- */
10
- field: "open" | "value" | "low" | "high";
11
5
  }
12
6
  export interface IQuadrantLineSeriesPrivate extends ISimpleLineSeriesPrivate {
13
7
  }
@@ -22,7 +16,6 @@ export declare class QuadrantLineSeries extends SimpleLineSeries {
22
16
  protected _updateSegment(index: number): void;
23
17
  _updateChildren(): void;
24
18
  protected _drawFill(): void;
25
- protected _setXLocation(): void;
26
19
  protected _updateLine(): void;
27
20
  }
28
21
  //# sourceMappingURL=QuadrantLineSeries.d.ts.map
@@ -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;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;IAkC/B,eAAe;IA4FtB,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;CAC7E;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;IAuB/B,eAAe;IA4FtB,SAAS,CAAC,SAAS;IAInB,SAAS,CAAC,WAAW;CAGrB"}
@@ -14,27 +14,19 @@ export class QuadrantLineSeries extends SimpleLineSeries {
14
14
  this.strokes.template.set("visible", false);
15
15
  }
16
16
  _updateSegment(index) {
17
- const movePoint = this._movePointerPoint;
18
17
  const diP1 = this._di[index]["p1"];
19
18
  const diP2 = this._di[index]["p2"];
20
19
  const series = this.get("series");
21
- if (series && movePoint && diP1 && diP2) {
22
- const xAxis = this.get("xAxis");
20
+ if (series && diP1 && diP2) {
23
21
  let x1 = this._getXValue(diP1.get("valueX"));
24
22
  let x2 = this._getXValue(diP2.get("valueX"));
25
- const di1 = xAxis.getSeriesItem(series, Math.max(0, xAxis.valueToPosition(x1)));
26
- const di2 = xAxis.getSeriesItem(series, Math.min(1, xAxis.valueToPosition(x2)));
27
23
  const field = this.get("field") + "Y";
28
- if (di1 && di2) {
29
- let y1 = di1.get(field);
30
- let y2 = di2.get(field);
31
- this._setContext(diP1, "valueY", y1, true);
32
- this._setContext(diP2, "valueY", y2, true);
33
- this._setContext(diP1, "valueX", x1);
34
- this._setContext(diP2, "valueX", x2);
35
- this._positionBullets(diP1);
36
- this._positionBullets(diP2);
37
- }
24
+ let y1 = this._getYValue(diP1.get(field), x1);
25
+ let y2 = this._getYValue(diP2.get(field), x2);
26
+ this._setContext(diP1, "valueY", y1, true);
27
+ this._setContext(diP2, "valueY", y2, true);
28
+ this._positionBullets(diP1);
29
+ this._positionBullets(diP2);
38
30
  }
39
31
  }
40
32
  _updateChildren() {
@@ -110,9 +102,6 @@ export class QuadrantLineSeries extends SimpleLineSeries {
110
102
  }
111
103
  _drawFill() {
112
104
  }
113
- // need to override so that location would not be set
114
- _setXLocation() {
115
- }
116
105
  _updateLine() {
117
106
  }
118
107
  }
@@ -1 +1 @@
1
- {"version":3,"file":"QuadrantLineSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/QuadrantLineSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IQuadrantLineSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n}\r\n\r\nexport interface IQuadrantLineSeriesSettings 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 IQuadrantLineSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n}\r\n\r\nexport class QuadrantLineSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"QuadrantLineSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([QuadrantLineSeries.className]);\r\n\r\n\tdeclare public _settings: IQuadrantLineSeriesSettings;\r\n\tdeclare public _privateSettings: IQuadrantLineSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IQuadrantLineSeriesDataItem;\r\n\r\n\tprotected _tag = \"quadrant\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t}\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tconst movePoint = this._movePointerPoint;\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\r\n\t\tif (series && movePoint && diP1 && diP2) {\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\t\tlet x1 = this._getXValue(diP1.get(\"valueX\" as any));\r\n\t\t\tlet x2 = this._getXValue(diP2.get(\"valueX\" as any));\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 y1 = di1.get(field as any);\r\n\t\t\t\tlet y2 = di2.get(field as any);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueY\", y1, true);\r\n\t\t\t\tthis._setContext(diP2, \"valueY\", y2, true);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueX\", x1);\r\n\t\t\t\tthis._setContext(diP2, \"valueX\", x2);\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\tpublic _updateChildren() {\r\n\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tconst chart = this.chart;\r\n\t\tthis.fills.clear();\r\n\t\tif (chart) {\r\n\t\t\tfor (let i = 0; i < this._lines.length; i++) {\r\n\t\t\t\tconst line = this._lines[i];\r\n\t\t\t\tif (line) {\r\n\t\t\t\t\tconst diP1 = this._di[i][\"p1\"];\r\n\t\t\t\t\tconst diP2 = this._di[i][\"p2\"];\r\n\t\t\t\t\tconst di = this._di[i][\"e\"];\r\n\t\t\t\t\tconst dataContext = di.dataContext as any;\r\n\r\n\t\t\t\t\tconst fill1 = this.makeFill(this.fills);\r\n\t\t\t\t\tconst fill2 = this.makeFill(this.fills);\r\n\r\n\t\t\t\t\tconst index = this.dataItems.indexOf(diP1);\r\n\t\t\t\t\tfor (let j = index; j >= 0; j--) {\r\n\t\t\t\t\t\tconst dataContext = this.dataItems[j].dataContext as any;\r\n\t\t\t\t\t\tconst template = dataContext.fill;\r\n\t\t\t\t\t\tif (template) {\r\n\t\t\t\t\t\t\tfill1.template = template;\r\n\t\t\t\t\t\t\tfill2.template = template;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst userData = [this.dataItems.indexOf(diP1), this.dataItems.indexOf(diP2)];\r\n\r\n\t\t\t\t\tlet fillColor = this.get(\"fillColor\", this.get(\"fill\"));\r\n\r\n\t\t\t\t\tconst fillTemplate = dataContext.fill;\r\n\r\n\t\t\t\t\tif (fillTemplate) {\r\n\t\t\t\t\t\tfillColor = fillTemplate.get(\"fill\");\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst settings = { userData: userData, fill: fillColor };\r\n\t\t\t\t\tfill1.setAll(settings);\r\n\t\t\t\t\tfill2.setAll(settings);\r\n\t\t\t\t\tfill2.set(\"forceInactive\", true);\r\n\r\n\t\t\t\t\tconst p1 = diP1.get(\"point\");\r\n\t\t\t\t\tconst p2 = diP2.get(\"point\");\r\n\r\n\t\t\t\t\tif (p1 && p2) {\r\n\t\t\t\t\t\tconst dy = (p2.y - p1.y) / 4;\r\n\t\t\t\t\t\tconst m1y = p1.y + dy;\r\n\t\t\t\t\t\tconst m2y = p1.y + dy * 2;\r\n\t\t\t\t\t\tconst m3y = p1.y + dy * 3;\r\n\r\n\t\t\t\t\t\tline.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m1y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m1y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m2y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m2y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m3y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m3y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tfill1.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p1.y);\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tfill2.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m1y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m1y);\r\n\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m3y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, m3y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, m1y);\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _drawFill() {\r\n\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 _updateLine() {\r\n\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"QuadrantLineSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/QuadrantLineSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IQuadrantLineSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n}\r\n\r\nexport interface IQuadrantLineSeriesSettings extends ISimpleLineSeriesSettings {\r\n}\r\n\r\nexport interface IQuadrantLineSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n}\r\n\r\nexport class QuadrantLineSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"QuadrantLineSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([QuadrantLineSeries.className]);\r\n\r\n\tdeclare public _settings: IQuadrantLineSeriesSettings;\r\n\tdeclare public _privateSettings: IQuadrantLineSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IQuadrantLineSeriesDataItem;\r\n\r\n\tprotected _tag = \"quadrant\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t}\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\r\n\t\tif (series && diP1 && diP2) {\r\n\t\t\tlet x1 = this._getXValue(diP1.get(\"valueX\" as any));\r\n\t\t\tlet x2 = this._getXValue(diP2.get(\"valueX\" as any));\r\n\r\n\t\t\tconst field = this.get(\"field\") + \"Y\";\r\n\r\n\t\t\tlet y1 = this._getYValue(diP1.get(field as any), x1);\r\n\t\t\tlet y2 = this._getYValue(diP2.get(field as any), x2);\r\n\r\n\t\t\tthis._setContext(diP1, \"valueY\", y1, true);\r\n\t\t\tthis._setContext(diP2, \"valueY\", y2, true);\r\n\r\n\t\t\tthis._positionBullets(diP1);\r\n\t\t\tthis._positionBullets(diP2);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tconst chart = this.chart;\r\n\t\tthis.fills.clear();\r\n\t\tif (chart) {\r\n\t\t\tfor (let i = 0; i < this._lines.length; i++) {\r\n\t\t\t\tconst line = this._lines[i];\r\n\t\t\t\tif (line) {\r\n\t\t\t\t\tconst diP1 = this._di[i][\"p1\"];\r\n\t\t\t\t\tconst diP2 = this._di[i][\"p2\"];\r\n\t\t\t\t\tconst di = this._di[i][\"e\"];\r\n\t\t\t\t\tconst dataContext = di.dataContext as any;\r\n\r\n\t\t\t\t\tconst fill1 = this.makeFill(this.fills);\r\n\t\t\t\t\tconst fill2 = this.makeFill(this.fills);\r\n\r\n\t\t\t\t\tconst index = this.dataItems.indexOf(diP1);\r\n\t\t\t\t\tfor (let j = index; j >= 0; j--) {\r\n\t\t\t\t\t\tconst dataContext = this.dataItems[j].dataContext as any;\r\n\t\t\t\t\t\tconst template = dataContext.fill;\r\n\t\t\t\t\t\tif (template) {\r\n\t\t\t\t\t\t\tfill1.template = template;\r\n\t\t\t\t\t\t\tfill2.template = template;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst userData = [this.dataItems.indexOf(diP1), this.dataItems.indexOf(diP2)];\r\n\r\n\t\t\t\t\tlet fillColor = this.get(\"fillColor\", this.get(\"fill\"));\r\n\r\n\t\t\t\t\tconst fillTemplate = dataContext.fill;\r\n\r\n\t\t\t\t\tif (fillTemplate) {\r\n\t\t\t\t\t\tfillColor = fillTemplate.get(\"fill\");\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst settings = { userData: userData, fill: fillColor };\r\n\t\t\t\t\tfill1.setAll(settings);\r\n\t\t\t\t\tfill2.setAll(settings);\r\n\t\t\t\t\tfill2.set(\"forceInactive\", true);\r\n\r\n\t\t\t\t\tconst p1 = diP1.get(\"point\");\r\n\t\t\t\t\tconst p2 = diP2.get(\"point\");\r\n\r\n\t\t\t\t\tif (p1 && p2) {\r\n\t\t\t\t\t\tconst dy = (p2.y - p1.y) / 4;\r\n\t\t\t\t\t\tconst m1y = p1.y + dy;\r\n\t\t\t\t\t\tconst m2y = p1.y + dy * 2;\r\n\t\t\t\t\t\tconst m3y = p1.y + dy * 3;\r\n\r\n\t\t\t\t\t\tline.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m1y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m1y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m2y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m2y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m3y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m3y);\r\n\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tfill1.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p1.y);\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tfill2.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, m1y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m1y);\r\n\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, m3y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, m3y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, m1y);\r\n\t\t\t\t\t\t})\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _drawFill() {\r\n\r\n\t}\r\n\r\n\tprotected _updateLine() {\r\n\r\n\t}\r\n}"]}
@@ -1,13 +1,14 @@
1
- import type { ISpritePointerEvent } from "../../../core/render/Sprite";
2
1
  import type { DataItem } from "../../../core/render/Component";
3
- import { DrawingSeries, IDrawingSeriesSettings, IDrawingSeriesPrivate, IDrawingSeriesDataItem } from "./DrawingSeries";
4
- export interface IRectangleSeriesDataItem extends IDrawingSeriesDataItem {
2
+ import type { Graphics } from "../../../core/render/Graphics";
3
+ import type { IPoint } from "../../../core/util/IPoint";
4
+ import { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from "./SimpleLineSeries";
5
+ export interface IRectangleSeriesDataItem extends ISimpleLineSeriesDataItem {
5
6
  }
6
- export interface IRectangleSeriesSettings extends IDrawingSeriesSettings {
7
+ export interface IRectangleSeriesSettings extends ISimpleLineSeriesSettings {
7
8
  }
8
- export interface IRectangleSeriesPrivate extends IDrawingSeriesPrivate {
9
+ export interface IRectangleSeriesPrivate extends ISimpleLineSeriesPrivate {
9
10
  }
10
- export declare class RectangleSeries extends DrawingSeries {
11
+ export declare class RectangleSeries extends SimpleLineSeries {
11
12
  static className: string;
12
13
  static classNames: Array<string>;
13
14
  _settings: IRectangleSeriesSettings;
@@ -18,10 +19,12 @@ export declare class RectangleSeries extends DrawingSeries {
18
19
  [index: string]: DataItem<IRectangleSeriesDataItem>;
19
20
  }>;
20
21
  protected _tag: string;
21
- protected _handleBulletDragged(event: ISpritePointerEvent): void;
22
- protected _handlePointerClick(event: ISpritePointerEvent): void;
23
- protected _handlePointerMove(event: ISpritePointerEvent): void;
24
- protected _addPoints(event: ISpritePointerEvent, index: number): void;
25
- protected _addPoint(valueX: number | null, valueY: number | null, corner: string, index: number): any;
22
+ protected _afterNew(): void;
23
+ protected _updateSegment(index: number): void;
24
+ protected _setXLocation(dataItem: DataItem<this["_dataItemSettings"]>, value: number): void;
25
+ _updateChildren(): void;
26
+ protected _updateOthers(_index: number, _fillGraphics: Graphics, _p1: IPoint, _p2: IPoint): void;
27
+ protected _drawFill(): void;
28
+ protected _updateLine(): void;
26
29
  }
27
30
  //# sourceMappingURL=RectangleSeries.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"RectangleSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/RectangleSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAE/D,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEvH,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;CACvE;AAED,MAAM,WAAW,wBAAyB,SAAQ,sBAAsB;CACvE;AAED,MAAM,WAAW,uBAAwB,SAAQ,qBAAqB;CACrE;AAED,qBAAa,eAAgB,SAAQ,aAAa;IACjD,OAAc,SAAS,EAAE,MAAM,CAAqB;IACpD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAgE;IAExF,SAAS,EAAE,wBAAwB,CAAC;IACpC,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,iBAAiB,EAAE,wBAAwB,CAAC;IAE3D,SAAS,CAAC,MAAM,EAAE,MAAM,CAAK;IAE7B,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAA;KAAE,CAAC,CAAK;IAElF,SAAS,CAAC,IAAI,SAAe;IAE7B,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,mBAAmB;IA4EzD,SAAS,CAAC,mBAAmB,CAAC,KAAK,EAAE,mBAAmB;IAmBxD,SAAS,CAAC,kBAAkB,CAAC,KAAK,EAAE,mBAAmB;IAmCvD,SAAS,CAAC,UAAU,CAAC,KAAK,EAAE,mBAAmB,EAAE,KAAK,EAAE,MAAM;IAuB9D,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,GAAG;CAerG"}
1
+ {"version":3,"file":"RectangleSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/RectangleSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,wBAAyB,SAAQ,yBAAyB;CAE1E;AAED,MAAM,WAAW,wBAAyB,SAAQ,yBAAyB;CAE1E;AAED,MAAM,WAAW,uBAAwB,SAAQ,wBAAwB;CACxE;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;IACpD,OAAc,SAAS,EAAE,MAAM,CAAqB;IACpD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAmE;IAE3F,SAAS,EAAE,wBAAwB,CAAC;IACpC,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,iBAAiB,EAAE,wBAAwB,CAAC;IAE3D,SAAS,CAAC,MAAM,EAAE,MAAM,CAAK;IAE7B,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAA;KAAE,CAAC,CAAK;IAElF,SAAS,CAAC,IAAI,SAAe;IAE7B,SAAS,CAAC,SAAS;IAInB,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAuBtC,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;IAS7E,eAAe;IAmEtB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAIzF,SAAS,CAAC,SAAS;IAInB,SAAS,CAAC,WAAW;CAGrB"}