@amcharts/amcharts5 5.10.7 → 5.10.9

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 (215) hide show
  1. package/.internal/charts/map/MapChart.d.ts.map +1 -1
  2. package/.internal/charts/map/MapChart.js +8 -1
  3. package/.internal/charts/map/MapChart.js.map +1 -1
  4. package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
  5. package/.internal/charts/stock/StockChartDefaultTheme.js +11 -1
  6. package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
  7. package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts +1 -0
  8. package/.internal/charts/stock/drawing/HorizontalLineSeries.d.ts.map +1 -1
  9. package/.internal/charts/stock/drawing/HorizontalLineSeries.js +17 -4
  10. package/.internal/charts/stock/drawing/HorizontalLineSeries.js.map +1 -1
  11. package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts +1 -0
  12. package/.internal/charts/stock/drawing/HorizontalRaySeries.d.ts.map +1 -1
  13. package/.internal/charts/stock/drawing/HorizontalRaySeries.js +14 -2
  14. package/.internal/charts/stock/drawing/HorizontalRaySeries.js.map +1 -1
  15. package/.internal/charts/stock/drawing/Measure.d.ts.map +1 -1
  16. package/.internal/charts/stock/drawing/Measure.js +1 -1
  17. package/.internal/charts/stock/drawing/Measure.js.map +1 -1
  18. package/.internal/charts/stock/indicators/HeikinAshi.d.ts +43 -0
  19. package/.internal/charts/stock/indicators/HeikinAshi.d.ts.map +1 -0
  20. package/.internal/charts/stock/indicators/HeikinAshi.js +109 -0
  21. package/.internal/charts/stock/indicators/HeikinAshi.js.map +1 -0
  22. package/.internal/charts/stock/toolbar/IndicatorControl.d.ts +1 -1
  23. package/.internal/charts/stock/toolbar/IndicatorControl.d.ts.map +1 -1
  24. package/.internal/charts/stock/toolbar/IndicatorControl.js +8 -0
  25. package/.internal/charts/stock/toolbar/IndicatorControl.js.map +1 -1
  26. package/.internal/charts/xy/XYChart.d.ts.map +1 -1
  27. package/.internal/charts/xy/XYChart.js +48 -2
  28. package/.internal/charts/xy/XYChart.js.map +1 -1
  29. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  30. package/.internal/charts/xy/axes/DateAxis.js +3 -0
  31. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  32. package/.internal/charts/xy/series/BaseColumnSeries.d.ts.map +1 -1
  33. package/.internal/charts/xy/series/BaseColumnSeries.js +3 -0
  34. package/.internal/charts/xy/series/BaseColumnSeries.js.map +1 -1
  35. package/.internal/core/Classes.d.ts +2 -0
  36. package/.internal/core/Classes.d.ts.map +1 -1
  37. package/.internal/core/Classes.js.map +1 -1
  38. package/.internal/core/Registry.js +1 -1
  39. package/.internal/core/Registry.js.map +1 -1
  40. package/.internal/core/Root.d.ts +1 -1
  41. package/.internal/core/Root.d.ts.map +1 -1
  42. package/.internal/core/Root.js +56 -6
  43. package/.internal/core/Root.js.map +1 -1
  44. package/.internal/core/render/Graphics.d.ts +8 -0
  45. package/.internal/core/render/Graphics.d.ts.map +1 -1
  46. package/.internal/core/render/Graphics.js +5 -4
  47. package/.internal/core/render/Graphics.js.map +1 -1
  48. package/.internal/core/render/Label.js +2 -2
  49. package/.internal/core/render/Label.js.map +1 -1
  50. package/.internal/core/render/ZoomableContainer.d.ts.map +1 -1
  51. package/.internal/core/render/ZoomableContainer.js +10 -8
  52. package/.internal/core/render/ZoomableContainer.js.map +1 -1
  53. package/.internal/core/render/backend/CanvasRenderer.d.ts +2 -1
  54. package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
  55. package/.internal/core/render/backend/CanvasRenderer.js +23 -6
  56. package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
  57. package/.internal/core/render/backend/Renderer.d.ts +2 -1
  58. package/.internal/core/render/backend/Renderer.d.ts.map +1 -1
  59. package/.internal/core/render/backend/Renderer.js.map +1 -1
  60. package/.internal/core/render/patterns/PicturePattern.d.ts.map +1 -1
  61. package/.internal/core/render/patterns/PicturePattern.js +5 -0
  62. package/.internal/core/render/patterns/PicturePattern.js.map +1 -1
  63. package/.internal/core/util/Accessibility.d.ts +7 -0
  64. package/.internal/core/util/Accessibility.d.ts.map +1 -1
  65. package/.internal/core/util/Accessibility.js.map +1 -1
  66. package/.internal/core/util/Timezone.d.ts.map +1 -1
  67. package/.internal/core/util/Timezone.js +2 -2
  68. package/.internal/core/util/Timezone.js.map +1 -1
  69. package/.internal/plugins/exporting/ExportingCSS.d.ts.map +1 -1
  70. package/.internal/plugins/exporting/ExportingCSS.js +110 -102
  71. package/.internal/plugins/exporting/ExportingCSS.js.map +1 -1
  72. package/CHANGELOG.md +38 -0
  73. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  74. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  75. package/examples/javascript/flow-chord/package.json +1 -1
  76. package/examples/javascript/flow-chord-directed/package.json +1 -1
  77. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  78. package/examples/javascript/flow-sankey/package.json +1 -1
  79. package/examples/javascript/gauge/package.json +1 -1
  80. package/examples/javascript/gauge-bands/package.json +1 -1
  81. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  82. package/examples/javascript/hierarchy-pack/package.json +1 -1
  83. package/examples/javascript/hierarchy-partition/package.json +1 -1
  84. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  85. package/examples/javascript/hierarchy-tree/package.json +1 -1
  86. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  87. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  88. package/examples/javascript/jest/package.json +1 -1
  89. package/examples/javascript/json-pie/package.json +1 -1
  90. package/examples/javascript/json-xy/package.json +1 -1
  91. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  92. package/examples/javascript/map-clustered-points/package.json +1 -1
  93. package/examples/javascript/map-day-and-night/package.json +1 -1
  94. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  95. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  96. package/examples/javascript/map-with-bubbles/package.json +1 -1
  97. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  98. package/examples/javascript/misc-40-charts/package.json +1 -1
  99. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  100. package/examples/javascript/pie-chart/package.json +1 -1
  101. package/examples/javascript/pie-donut-chart/package.json +1 -1
  102. package/examples/javascript/pie-variable-radius/package.json +1 -1
  103. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  104. package/examples/javascript/radar-heat-map/package.json +1 -1
  105. package/examples/javascript/radar-line/package.json +1 -1
  106. package/examples/javascript/radar-time-line/package.json +1 -1
  107. package/examples/javascript/sliced-funnel/package.json +1 -1
  108. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  109. package/examples/javascript/sliced-pyramid/package.json +1 -1
  110. package/examples/javascript/stock-chart/package.json +1 -1
  111. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  112. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  113. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  114. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  115. package/examples/javascript/stock-chart-live/package.json +1 -1
  116. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  117. package/examples/javascript/venn-diagram/package.json +1 -1
  118. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  119. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  120. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  121. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  122. package/examples/javascript/xy-bubble/package.json +1 -1
  123. package/examples/javascript/xy-candlestick/package.json +1 -1
  124. package/examples/javascript/xy-clustered-column/package.json +1 -1
  125. package/examples/javascript/xy-column/package.json +1 -1
  126. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  127. package/examples/javascript/xy-data-grouping/package.json +1 -1
  128. package/examples/javascript/xy-draggable-range/package.json +1 -1
  129. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  130. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  131. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  132. package/examples/javascript/xy-line/package.json +1 -1
  133. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  134. package/examples/javascript/xy-live-data/package.json +1 -1
  135. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  136. package/examples/javascript/xy-ohlc/package.json +1 -1
  137. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  138. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  139. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  140. package/examples/javascript/xy-stacked-column/package.json +1 -1
  141. package/examples/javascript/xy-stacked-step/package.json +1 -1
  142. package/examples/javascript/xy-stock/package.json +1 -1
  143. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  144. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  145. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  146. package/examples/typescript/flow-chord/package.json +1 -1
  147. package/examples/typescript/flow-chord-directed/package.json +1 -1
  148. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  149. package/examples/typescript/flow-sankey/package.json +1 -1
  150. package/examples/typescript/gauge/package.json +1 -1
  151. package/examples/typescript/gauge-bands/package.json +1 -1
  152. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  153. package/examples/typescript/hierarchy-pack/package.json +1 -1
  154. package/examples/typescript/hierarchy-partition/package.json +1 -1
  155. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  156. package/examples/typescript/hierarchy-tree/package.json +1 -1
  157. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  158. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  159. package/examples/typescript/jest/package.json +1 -1
  160. package/examples/typescript/json-pie/package.json +1 -1
  161. package/examples/typescript/json-xy/package.json +1 -1
  162. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  163. package/examples/typescript/map-clustered-points/package.json +1 -1
  164. package/examples/typescript/map-day-and-night/package.json +1 -1
  165. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  166. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  167. package/examples/typescript/map-with-bubbles/package.json +1 -1
  168. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  169. package/examples/typescript/misc-40-charts/package.json +1 -1
  170. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  171. package/examples/typescript/pie-chart/package.json +1 -1
  172. package/examples/typescript/pie-donut-chart/package.json +1 -1
  173. package/examples/typescript/pie-variable-radius/package.json +1 -1
  174. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  175. package/examples/typescript/radar-heat-map/package.json +1 -1
  176. package/examples/typescript/radar-line/package.json +1 -1
  177. package/examples/typescript/radar-time-line/package.json +1 -1
  178. package/examples/typescript/sliced-funnel/package.json +1 -1
  179. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  180. package/examples/typescript/sliced-pyramid/package.json +1 -1
  181. package/examples/typescript/stock-chart/package.json +1 -1
  182. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  183. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  184. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  185. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  186. package/examples/typescript/stock-chart-live/package.json +1 -1
  187. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  188. package/examples/typescript/venn-diagram/package.json +1 -1
  189. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  190. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  191. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  192. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  193. package/examples/typescript/xy-bubble/package.json +1 -1
  194. package/examples/typescript/xy-candlestick/package.json +1 -1
  195. package/examples/typescript/xy-clustered-column/package.json +1 -1
  196. package/examples/typescript/xy-column/package.json +1 -1
  197. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  198. package/examples/typescript/xy-data-grouping/package.json +1 -1
  199. package/examples/typescript/xy-draggable-range/package.json +1 -1
  200. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  201. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  202. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  203. package/examples/typescript/xy-line/package.json +1 -1
  204. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  205. package/examples/typescript/xy-live-data/package.json +1 -1
  206. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  207. package/examples/typescript/xy-ohlc/package.json +1 -1
  208. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  209. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  210. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  211. package/examples/typescript/xy-stacked-column/package.json +1 -1
  212. package/examples/typescript/xy-stacked-step/package.json +1 -1
  213. package/examples/typescript/xy-stock/package.json +1 -1
  214. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  215. package/package.json +1 -1
@@ -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\n\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 _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.lines.template.set(\"forceHidden\", true);\r\n\t}\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\t\t\tconst diP3 = this._di[index][\"p3\"];\r\n\r\n\t\t\tconst movePoint = this._movePointerPoint;\r\n\r\n\t\t\tif (diP1 && diP2 && diP3 && 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 valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueY\", valueY, true);\r\n\t\t\t\tthis._setContext(diP2, \"valueY\", valueY, true);\r\n\t\t\t\tthis._setContext(diP3, \"valueY\", valueY, true);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueX\", min - (max - min) * 200);\r\n\t\t\t\tthis._setContext(diP2, \"valueX\", valueX);\r\n\t\t\t\tthis._setContext(diP3, \"valueX\", max + (max - min) * 200);\r\n\r\n\t\t\t\tthis._setXLocation(diP2, diP2.get(\"valueX\", 0));\r\n\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 _updateSegment(index: number) {\r\n\t\tif (this._di[index]) {\r\n\t\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\t\tconst diP3 = this._di[index][\"p3\"];\r\n\r\n\t\t\tif (diP1 && diP3) {\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueX\", min - (max - min) * 200, true);\r\n\t\t\t\tthis._setContext(diP3, \"valueX\", max + (max - min) * 200, true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tif(this.unselectAllDrawings() == 0){\r\n\t\t\t\t\tthis._increaseIndex();\r\n\t\t\t\t\tthis._addPoints(event, this._index);\r\n\t\t\t\t\tthis.isDrawing(false);\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis._updateSegment(this._index);\r\n\t\t\t\t\tthis._dispatchStockEvent(\"drawingadded\", this._drawingId, this._index);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPointsReal(valueX: number, valueY: number, index: number) {\r\n\t\tsuper._addPointsReal(valueX, valueY, index);\r\n\t\tthis._addPoint(valueX, valueY, \"p3\", index);\r\n\t}\r\n\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 * as $array from \"../../../core/util/Array\";\r\n\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 _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.lines.template.set(\"forceHidden\", true);\r\n\t}\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\t\t\tconst diP3 = this._di[index][\"p3\"];\r\n\r\n\t\t\tconst movePoint = this._movePointerPoint;\r\n\r\n\t\t\tif (diP1 && diP2 && diP3 && 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 valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueY\", valueY, true);\r\n\t\t\t\tthis._setContext(diP2, \"valueY\", valueY, true);\r\n\t\t\t\tthis._setContext(diP3, \"valueY\", valueY, true);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueX\", min - (max - min));\r\n\t\t\t\tthis._setContext(diP2, \"valueX\", valueX);\r\n\t\t\t\tthis._setContext(diP3, \"valueX\", max + (max - min));\r\n\r\n\t\t\t\tthis._setXLocation(diP2, diP2.get(\"valueX\", 0));\r\n\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\tpublic _prepareChildren(): void {\r\n\t\tsuper._prepareChildren();\r\n\r\n\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t$array.each(this._di, (di) => {\r\n\t\t\tif(di){\r\n\t\t\t\tthis._setContext(di[\"p1\"], \"valueX\", min - (max - min), true);\r\n\t\t\t\tthis._setContext(di[\"p3\"], \"valueX\", max + (max - min), true);\t\t\t\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tif (this._di[index]) {\r\n\t\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\t\tconst diP3 = this._di[index][\"p3\"];\r\n\r\n\t\t\tif (diP1 && diP3) {\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueX\", min - (max - min), true);\r\n\t\t\t\tthis._setContext(diP3, \"valueX\", max + (max - min), true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tif(this.unselectAllDrawings() == 0){\r\n\t\t\t\t\tthis._increaseIndex();\r\n\t\t\t\t\tthis._addPoints(event, this._index);\r\n\t\t\t\t\tthis.isDrawing(false);\r\n\t\t\t\t\t\r\n\t\t\t\t\tthis._updateSegment(this._index);\r\n\t\t\t\t\tthis._dispatchStockEvent(\"drawingadded\", this._drawingId, this._index);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPointsReal(valueX: number, valueY: number, index: number) {\r\n\t\tsuper._addPointsReal(valueX, valueY, index);\r\n\t\tthis._addPoint(valueX, valueY, \"p3\", index);\r\n\t}\r\n\r\n}"]}
@@ -15,6 +15,7 @@ export declare class HorizontalRaySeries extends SimpleLineSeries {
15
15
  protected _tag: string;
16
16
  protected _afterNew(): void;
17
17
  protected _handleBulletDragged(event: ISpritePointerEvent): void;
18
+ _prepareChildren(): void;
18
19
  protected _handlePointerMoveReal(): void;
19
20
  protected _updateSegment(index: number): void;
20
21
  protected _handlePointerClickReal(event: ISpritePointerEvent): void;
@@ -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;AAGvE,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;CAC9E;AAED,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;CAC9E;AAED,MAAM,WAAW,2BAA4B,SAAQ,wBAAwB;CAC5E;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;IAGvB,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,mBAAmB;IAoCzD,SAAS,CAAC,sBAAsB;IAIhC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAetC,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,mBAAmB;CAe5D"}
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;AAIvE,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;CAC9E;AAED,MAAM,WAAW,4BAA6B,SAAQ,yBAAyB;CAC9E;AAED,MAAM,WAAW,2BAA4B,SAAQ,wBAAwB;CAC5E;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;IAGvB,SAAS,CAAC,SAAS;IAKnB,SAAS,CAAC,oBAAoB,CAAC,KAAK,EAAE,mBAAmB;IAoClD,gBAAgB,IAAI,IAAI;IAe/B,SAAS,CAAC,sBAAsB;IAIhC,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAgBtC,SAAS,CAAC,uBAAuB,CAAC,KAAK,EAAE,mBAAmB;CAe5D"}
@@ -1,3 +1,4 @@
1
+ import * as $array from "../../../core/util/Array";
1
2
  import { SimpleLineSeries } from "./SimpleLineSeries";
2
3
  export class HorizontalRaySeries extends SimpleLineSeries {
3
4
  constructor() {
@@ -32,12 +33,23 @@ export class HorizontalRaySeries extends SimpleLineSeries {
32
33
  this._setContext(diP1, "valueY", valueY, true);
33
34
  this._setContext(diP2, "valueY", valueY, true);
34
35
  this._setContext(diP1, "valueX", valueX);
35
- this._setContext(diP2, "valueX", max + (max - min) * 100);
36
+ this._setContext(diP2, "valueX", max + (max - min));
36
37
  this._setXLocation(diP1, diP1.get("valueX", 0));
37
38
  this._positionBullets(diP1);
38
39
  }
39
40
  }
40
41
  }
42
+ _prepareChildren() {
43
+ super._prepareChildren();
44
+ const xAxis = this.get("xAxis");
45
+ const min = xAxis.getPrivate("min", 0);
46
+ const max = xAxis.getPrivate("max", 1);
47
+ $array.each(this._di, (di) => {
48
+ if (di) {
49
+ this._setContext(di["p2"], "valueX", max + (max - min), true);
50
+ }
51
+ });
52
+ }
41
53
  _handlePointerMoveReal() {
42
54
  }
43
55
  _updateSegment(index) {
@@ -47,7 +59,7 @@ export class HorizontalRaySeries extends SimpleLineSeries {
47
59
  const xAxis = this.get("xAxis");
48
60
  const min = xAxis.getPrivate("min", 0);
49
61
  const max = xAxis.getPrivate("max", 1);
50
- this._setContext(diP2, "valueX", max + (max - min) * 100, true);
62
+ this._setContext(diP2, "valueX", max + (max - min), true);
51
63
  }
52
64
  }
53
65
  }
@@ -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 { DataItem } from \"../../../core/render/Component\";\r\n\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IHorizontalRaySeriesDataItem extends ISimpleLineSeriesDataItem {\r\n}\r\n\r\nexport interface IHorizontalRaySeriesSettings extends ISimpleLineSeriesSettings {\r\n}\r\n\r\nexport interface IHorizontalRaySeriesPrivate extends ISimpleLineSeriesPrivate {\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\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.lines.template.set(\"forceHidden\", true);\r\n\t}\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<IHorizontalRaySeriesDataItem>;\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 valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueY\", valueY, true);\r\n\t\t\t\tthis._setContext(diP2, \"valueY\", valueY, true);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueX\", valueX);\r\n\t\t\t\tthis._setContext(diP2, \"valueX\", max + (max - min) * 100);\r\n\r\n\t\t\t\tthis._setXLocation(diP1, diP1.get(\"valueX\", 0));\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\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 _updateSegment(index: number) {\r\n\t\tif (this._di[index]) {\r\n\t\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\t\tif (diP2) {\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\r\n\t\t\t\tthis._setContext(diP2, \"valueX\", max + (max - min) * 100, true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tif (this.unselectAllDrawings() == 0) {\r\n\t\t\t\t\tthis._increaseIndex();\r\n\t\t\t\t\tthis._addPoints(event, this._index);\r\n\t\t\t\t\tthis.isDrawing(false);\r\n\t\t\t\t\tthis._hideResizer();\r\n\r\n\t\t\t\t\tthis._updateSegment(this._index);\r\n\t\t\t\t\tthis._dispatchStockEvent(\"drawingadded\", this._drawingId, this._index);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}"]}
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 { DataItem } from \"../../../core/render/Component\";\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IHorizontalRaySeriesDataItem extends ISimpleLineSeriesDataItem {\r\n}\r\n\r\nexport interface IHorizontalRaySeriesSettings extends ISimpleLineSeriesSettings {\r\n}\r\n\r\nexport interface IHorizontalRaySeriesPrivate extends ISimpleLineSeriesPrivate {\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\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.lines.template.set(\"forceHidden\", true);\r\n\t}\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<IHorizontalRaySeriesDataItem>;\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 valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueY\", valueY, true);\r\n\t\t\t\tthis._setContext(diP2, \"valueY\", valueY, true);\r\n\r\n\t\t\t\tthis._setContext(diP1, \"valueX\", valueX);\r\n\t\t\t\tthis._setContext(diP2, \"valueX\", max + (max - min));\r\n\r\n\t\t\t\tthis._setXLocation(diP1, diP1.get(\"valueX\", 0));\r\n\r\n\t\t\t\tthis._positionBullets(diP1);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tpublic _prepareChildren(): void {\r\n\t\tsuper._prepareChildren();\r\n\r\n\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\t\t$array.each(this._di, (di) => {\r\n\t\t\tif(di){\r\n\t\t\t\tthis._setContext(di[\"p2\"], \"valueX\", max + (max - min), true);\t\t\t\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 _updateSegment(index: number) {\r\n\t\tif (this._di[index]) {\r\n\t\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\t\tif (diP2) {\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\t\tconst min = xAxis.getPrivate(\"min\", 0);\r\n\t\t\t\tconst max = xAxis.getPrivate(\"max\", 1);\r\n\r\n\r\n\t\t\t\tthis._setContext(diP2, \"valueX\", max + (max - min), true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\t\r\n\r\n\tprotected _handlePointerClickReal(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tif (this.unselectAllDrawings() == 0) {\r\n\t\t\t\t\tthis._increaseIndex();\r\n\t\t\t\t\tthis._addPoints(event, this._index);\r\n\t\t\t\t\tthis.isDrawing(false);\r\n\t\t\t\t\tthis._hideResizer();\r\n\r\n\t\t\t\t\tthis._updateSegment(this._index);\r\n\t\t\t\t\tthis._dispatchStockEvent(\"drawingadded\", this._drawingId, this._index);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"Measure.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/Measure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAGtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAEjI,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAMnD,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;CACjE;AAED,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAgB,SAAQ,uBAAuB;CAC/D;AAED,qBAAa,OAAQ,SAAQ,eAAe;IAC3C,OAAc,SAAS,EAAE,MAAM,CAAa;IAC5C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA0D;IAElF,SAAS,EAAE,gBAAgB,CAAC;IAC5B,gBAAgB,EAAE,eAAe,CAAC;IAClC,iBAAiB,EAAE,gBAAgB,CAAC;IAEnD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAM;IACnC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAM;IAErC,SAAS,CAAC,IAAI,SAAa;IAEpB,SAAS;IAOhB;;;;;;OAMG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAGxC;IAEH;;OAEG;IACI,SAAS,IAAI,KAAK;IAYzB,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM;IAQvC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM;IAerC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;CA8IrF"}
1
+ {"version":3,"file":"Measure.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/Measure.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,2BAA2B,CAAC;AAGtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,wBAAwB,EAAE,uBAAuB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAEjI,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AAMnD,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;CACjE;AAED,MAAM,WAAW,gBAAiB,SAAQ,wBAAwB;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,eAAgB,SAAQ,uBAAuB;CAC/D;AAED,qBAAa,OAAQ,SAAQ,eAAe;IAC3C,OAAc,SAAS,EAAE,MAAM,CAAa;IAC5C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA0D;IAElF,SAAS,EAAE,gBAAgB,CAAC;IAC5B,gBAAgB,EAAE,eAAe,CAAC;IAClC,iBAAiB,EAAE,gBAAgB,CAAC;IAEnD,SAAS,CAAC,MAAM,EAAE,KAAK,CAAC,IAAI,CAAC,CAAM;IACnC,SAAS,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAM;IAErC,SAAS,CAAC,IAAI,SAAa;IAEpB,SAAS;IAOhB;;;;;;OAMG;IACH,SAAgB,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAGxC;IAEH;;OAEG;IACI,SAAS,IAAI,KAAK;IAYzB,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM;IAQvC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM;IAerC,SAAS,CAAC,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM;CA6IrF"}
@@ -152,7 +152,7 @@ export class Measure extends RectangleSeries {
152
152
  if (i1 > i2) {
153
153
  [i1, i2] = [i2, i1];
154
154
  }
155
- for (let i = i1; i < i2; i++) {
155
+ for (let i = i1; i <= i2; i++) {
156
156
  const dataItem = dataItems[i];
157
157
  if (dataItem) {
158
158
  const value = dataItem.get("valueY");
@@ -1 +1 @@
1
- {"version":3,"file":"Measure.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/Measure.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAA+E,MAAM,mBAAmB,CAAC;AACjI,OAAO,EAAE,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,KAAK,EAAE,MAAM,4BAA4B,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AAEzE,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AAajD,MAAM,OAAO,OAAQ,SAAQ,eAAe;IAA5C;;QAQC;;;;mBAAgC,EAAE;WAAC;QACnC;;;;mBAAkC,EAAE;WAAC;QAErC;;;;mBAAiB,SAAS;WAAC;QAS3B;;;;;;WAMG;QACH;;;;mBAA8C,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,CAC9E,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,EAChB,GAAG,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CACxD,CAAC;WAAC;IAsLJ,CAAC;IAvMO,SAAS;QACf,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;QAC7B,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;QACtD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;IACrD,CAAC;IAcD;;OAEG;IACI,SAAS;QACf,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACjC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,KAAK,CAAC,MAAM,CAAC;YACZ,YAAY,EAAE,IAAI;YAClB,UAAU,EAAE,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,SAAS,EAAE,CAAC,YAAY,CAAC,EAAE,CAAC;SAC3E,CAAC,CAAC;QACH,KAAK,CAAC,YAAY,CAAC,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACxB,OAAO,KAAK,CAAC;IACd,CAAC;IAES,eAAe,CAAC,KAAa;QACtC,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC;QAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YACzB,MAAM,KAAK,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;YAC/B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;SAC5B;IACF,CAAC;IAES,aAAa,CAAC,KAAa;QACpC,KAAK,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,IAAI,KAAK,EAAE;YACV,KAAK,CAAC,OAAO,EAAE,CAAC;YAChB,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;SAC7B;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAChC,IAAI,IAAI,EAAE;YACT,IAAI,CAAC,OAAO,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;SAC5B;IACF,CAAC;IAES,aAAa,CAAC,KAAa,EAAE,YAAsB,EAAE,EAAU,EAAE,EAAU;QACpF,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAmB,CAAC;QACxC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAEhC,IAAI,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC/D,IAAI,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAE/D,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;QAElD,IAAI,YAAkC,CAAC;QAEvC,IAAI,UAAU,EAAE;YACf,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;YACpE,aAAa,GAAG,UAAU,CAAC,GAAG,CAAC,oBAAoB,EAAE,aAAa,CAAC,CAAC;YACpE,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;SAC9C;QAED,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;YAChB,EAAE,GAAG,CAAC,CAAC,CAAC;SACR;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAClC,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;QAEzC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;QACnC,IAAI,KAAK,GAAG,aAAa,CAAC;QAC1B,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,EAAE;YAChB,EAAE,GAAG,CAAC,CAAC,CAAC;YACR,KAAK,GAAG,aAAa,CAAC;SACtB;QAED,YAAY,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAChC,YAAY,CAAC,GAAG,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;QACrC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE3B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,EAAE;YACtC,WAAW,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAClC,CAAC,CAAC,CAAA;QAEF,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACpC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAEpC,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;QAEnS,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACrC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAErC,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,EAAE,CAAC;QAClD,MAAM,KAAK,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,eAAe,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,MAAM,CAAC,GAAG,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC/E,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAEtD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAEpC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElC,IAAI,KAAK,GAAG,CAAC,CAAC;QACd,IAAI,MAAM,EAAE;YACX,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YACtE,IAAI,GAAG,IAAI,GAAG,EAAE;gBACf,KAAK,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBAE1E,IAAI,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE;oBAC3B,KAAK,EAAE,CAAC;iBACR;aACD;SACD;QAED,IAAI,aAAa,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,KAAK,CAAC,YAAY,EAAE,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC;QAC3F,IAAI,aAAa,GAAG,KAAK,EAAE;YAC1B,aAAa,GAAG,KAAK,CAAC;SACtB;QAGD,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,YAAY,EAAE;YACjB,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YAC7E,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,YAAY,EAAE,KAAK,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC;YAE7E,IAAI,IAAI,IAAI,IAAI,EAAE;gBACjB,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC;gBACzC,IAAI,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBACjC,IAAI,EAAE,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;gBAEjC,IAAI,EAAE,GAAG,EAAE,EAAE;oBACZ,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC;iBACpB;gBAED,KAAK,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,EAAE;oBAC7B,MAAM,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,CAAC;oBAC9B,IAAI,QAAQ,EAAE;wBACb,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;wBACrC,IAAI,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE;4BAC1B,MAAM,IAAI,KAAK,CAAC;yBAChB;qBACD;iBACD;aACD;SACD;QAGD,IAAI,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;QACrC,IAAI,MAAM,GAAG,CAAC,EAAE;YACf,IAAI,IAAI,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;SACpC;QAED,MAAM,SAAS,GAAG;YACjB,WAAW,EAAE,IAAI;YACjB,MAAM,EAAE,GAAG;YACX,MAAM,EAAE,GAAG;YACX,IAAI,EAAE,GAAG;YACT,GAAG,EAAE,GAAG;YACR,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,GAAG;SACT,CAAA;QAED,KAAK,CAAC,QAAS,CAAC,WAAW,GAAG;YAC7B,KAAK,EAAE,KAAK;YACZ,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,KAAK;YACZ,aAAa,EAAE,aAAa;YAC5B,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;YAChF,MAAM,EAAE,MAAM;SACd,CAAC;QAEF,KAAK,CAAC,MAAM,CAAC;YACZ,IAAI,EAAE,IAAI;YACV,CAAC,EAAE,EAAE;YACL,CAAC,EAAE,EAAE;SACL,CAAC,CAAC;QAEH,KAAK,CAAC,IAAI,CAAC,aAAa,EAAE,CAAC;IAC5B,CAAC;;AAjND;;;;WAAkC,SAAS;GAAC;AAC5C;;;;WAA0C,eAAe,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;GAAC","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> = this.addDisposer(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\tfillGraphics.set(\"fillOpacity\", 0.2);\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}\r\n"]}
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> = this.addDisposer(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\tfillGraphics.set(\"fillOpacity\", 0.2);\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\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}\r\n"]}
@@ -0,0 +1,43 @@
1
+ import { ChartIndicator, IChartIndicatorSettings, IChartIndicatorPrivate, IChartIndicatorEvents } from "./ChartIndicator";
2
+ import { CandlestickSeries } from "../../xy/series/CandlestickSeries";
3
+ import type { IIndicatorEditableSetting } from "./Indicator";
4
+ import type { Color } from "../../../core/util/Color";
5
+ export interface IHeikinAshiSettings extends IChartIndicatorSettings {
6
+ /**
7
+ * Increasing color.
8
+ */
9
+ increasingColor?: Color;
10
+ /**
11
+ * Decreasing color.
12
+ */
13
+ decreasingColor?: Color;
14
+ }
15
+ export interface IHeikinAshiPrivate extends IChartIndicatorPrivate {
16
+ }
17
+ export interface IHeikinAshiEvents extends IChartIndicatorEvents {
18
+ }
19
+ /**
20
+ * An implementation of a [[StockChart]] indicator.
21
+ *
22
+ * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info
23
+ */
24
+ export declare class HeikinAshi extends ChartIndicator {
25
+ static className: string;
26
+ static classNames: Array<string>;
27
+ _settings: IHeikinAshiSettings;
28
+ _privateSettings: IHeikinAshiPrivate;
29
+ _events: IHeikinAshiEvents;
30
+ /**
31
+ * Indicator series.
32
+ */
33
+ series: CandlestickSeries;
34
+ _editableSettings: IIndicatorEditableSetting[];
35
+ _afterNew(): void;
36
+ _createSeries(): CandlestickSeries;
37
+ _updateChildren(): void;
38
+ /**
39
+ * @ignore
40
+ */
41
+ prepareData(): void;
42
+ }
43
+ //# sourceMappingURL=HeikinAshi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeikinAshi.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/HeikinAshi.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC1H,OAAO,EAAE,iBAAiB,EAAE,MAAM,mCAAmC,CAAC;AAEtE,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAKtD,MAAM,WAAW,mBAAoB,SAAQ,uBAAuB;IAEnE;;OAEG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;IAExB;;OAEG;IACH,eAAe,CAAC,EAAE,KAAK,CAAC;CAExB;AAED,MAAM,WAAW,kBAAmB,SAAQ,sBAAsB;CACjE;AAED,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;CAC/D;AAGD;;;;GAIG;AACH,qBAAa,UAAW,SAAQ,cAAc;IAC7C,OAAc,SAAS,EAAE,MAAM,CAAgB;IAC/C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA4D;IAEpF,SAAS,EAAE,mBAAmB,CAAC;IAC/B,gBAAgB,EAAE,kBAAkB,CAAC;IACrC,OAAO,EAAE,iBAAiB,CAAC;IAE1C;;OAEG;IACY,MAAM,EAAE,iBAAiB,CAAC;IAElC,iBAAiB,EAAE,yBAAyB,EAAE,CAQlD;IAGI,SAAS;IAKT,aAAa,IAAI,iBAAiB;IAelC,eAAe;IAgBtB;;OAEG;IACI,WAAW;CA6ClB"}
@@ -0,0 +1,109 @@
1
+ import { ChartIndicator } from "./ChartIndicator";
2
+ import { CandlestickSeries } from "../../xy/series/CandlestickSeries";
3
+ import * as $array from "../../../core/util/Array";
4
+ import * as $type from "../../../core/util/Type";
5
+ /**
6
+ * An implementation of a [[StockChart]] indicator.
7
+ *
8
+ * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info
9
+ */
10
+ export class HeikinAshi extends ChartIndicator {
11
+ constructor() {
12
+ super(...arguments);
13
+ Object.defineProperty(this, "_editableSettings", {
14
+ enumerable: true,
15
+ configurable: true,
16
+ writable: true,
17
+ value: [{
18
+ key: "increasingColor",
19
+ name: this.root.language.translateAny("Increasing"),
20
+ type: "color"
21
+ }, {
22
+ key: "decreasingColor",
23
+ name: this.root.language.translateAny("Decreasing"),
24
+ type: "color"
25
+ }]
26
+ });
27
+ }
28
+ _afterNew() {
29
+ this._themeTags.push("heikinashi");
30
+ super._afterNew();
31
+ }
32
+ _createSeries() {
33
+ return this.panel.series.push(CandlestickSeries.new(this._root, {
34
+ themeTags: ["indicator"],
35
+ xAxis: this.xAxis,
36
+ yAxis: this.yAxis,
37
+ valueXField: "valueX",
38
+ openValueYField: "value_o",
39
+ valueYField: "value_y",
40
+ lowValueYField: "value_l",
41
+ highValueYField: "value_h",
42
+ stroke: this.get("seriesColor"),
43
+ fill: undefined
44
+ }));
45
+ }
46
+ _updateChildren() {
47
+ super._updateChildren();
48
+ const increasingColor = "increasingColor";
49
+ const decreasingColor = "decreasingColor";
50
+ if (this.isDirty(increasingColor) || this.isDirty(decreasingColor)) {
51
+ const template = this.series.columns.template;
52
+ const increasing = this.get(increasingColor);
53
+ const decreasing = this.get(decreasingColor);
54
+ template.states.create("riseFromPrevious", { fill: increasing, stroke: increasing });
55
+ template.states.create("dropFromPrevious", { fill: decreasing, stroke: decreasing });
56
+ this.markDataDirty();
57
+ }
58
+ }
59
+ /**
60
+ * @ignore
61
+ */
62
+ prepareData() {
63
+ if (this.series) {
64
+ this.set("field", "hl/2");
65
+ const dataItems = this.get("stockSeries").dataItems;
66
+ if (dataItems.length > 0) {
67
+ const data = [];
68
+ const firstDataItem = dataItems[0];
69
+ let prevOpen = firstDataItem.get("openValueY", 0);
70
+ let prevClose = firstDataItem.get("valueY", 0);
71
+ $array.each(dataItems, (dataItem) => {
72
+ const open = dataItem.get("openValueY");
73
+ const close = dataItem.get("valueY");
74
+ const high = dataItem.get("highValueY");
75
+ const low = dataItem.get("lowValueY");
76
+ if ($type.isNumber(open) && $type.isNumber(close) && $type.isNumber(high) && $type.isNumber(low)) {
77
+ const newClose = (open + close + high + low) / 4;
78
+ const newOpen = (prevOpen + prevClose) / 2;
79
+ const newHigh = Math.max(high, open, close);
80
+ const newLow = Math.min(low, open, close);
81
+ data.push({
82
+ valueX: dataItem.get("valueX"),
83
+ value_o: newOpen,
84
+ value_y: newClose,
85
+ value_h: newHigh,
86
+ value_l: newLow
87
+ });
88
+ prevOpen = newOpen;
89
+ prevClose = newClose;
90
+ }
91
+ });
92
+ this.series.data.setAll(data);
93
+ }
94
+ }
95
+ }
96
+ }
97
+ Object.defineProperty(HeikinAshi, "className", {
98
+ enumerable: true,
99
+ configurable: true,
100
+ writable: true,
101
+ value: "HeikinAshi"
102
+ });
103
+ Object.defineProperty(HeikinAshi, "classNames", {
104
+ enumerable: true,
105
+ configurable: true,
106
+ writable: true,
107
+ value: ChartIndicator.classNames.concat([HeikinAshi.className])
108
+ });
109
+ //# sourceMappingURL=HeikinAshi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeikinAshi.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/HeikinAshi.ts"],"names":[],"mappings":"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","sourcesContent":["import { ChartIndicator, IChartIndicatorSettings, IChartIndicatorPrivate, IChartIndicatorEvents } from \"./ChartIndicator\";\r\nimport { CandlestickSeries } from \"../../xy/series/CandlestickSeries\";\r\n\r\nimport type { IIndicatorEditableSetting } from \"./Indicator\";\r\nimport type { Color } from \"../../../core/util/Color\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $type from \"../../../core/util/Type\";\r\n\r\nexport interface IHeikinAshiSettings extends IChartIndicatorSettings {\r\n\r\n\t/**\r\n\t * Increasing color.\r\n\t */\r\n\tincreasingColor?: Color;\r\n\r\n\t/**\r\n\t * Decreasing color.\r\n\t */\r\n\tdecreasingColor?: Color;\r\n\r\n}\r\n\r\nexport interface IHeikinAshiPrivate extends IChartIndicatorPrivate {\r\n}\r\n\r\nexport interface IHeikinAshiEvents extends IChartIndicatorEvents {\r\n}\r\n\r\n\r\n/**\r\n * An implementation of a [[StockChart]] indicator.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport class HeikinAshi extends ChartIndicator {\r\n\tpublic static className: string = \"HeikinAshi\";\r\n\tpublic static classNames: Array<string> = ChartIndicator.classNames.concat([HeikinAshi.className]);\r\n\r\n\tdeclare public _settings: IHeikinAshiSettings;\r\n\tdeclare public _privateSettings: IHeikinAshiPrivate;\r\n\tdeclare public _events: IHeikinAshiEvents;\r\n\r\n\t/**\r\n\t * Indicator series.\r\n\t */\r\n\tdeclare public series: CandlestickSeries;\r\n\r\n\tpublic _editableSettings: IIndicatorEditableSetting[] = [{\r\n\t\tkey: \"increasingColor\",\r\n\t\tname: this.root.language.translateAny(\"Increasing\"),\r\n\t\ttype: \"color\"\r\n\t}, {\r\n\t\tkey: \"decreasingColor\",\r\n\t\tname: this.root.language.translateAny(\"Decreasing\"),\r\n\t\ttype: \"color\"\r\n\t}];\r\n\r\n\r\n\tpublic _afterNew() {\r\n\t\tthis._themeTags.push(\"heikinashi\");\r\n\t\tsuper._afterNew();\r\n\t}\r\n\r\n\tpublic _createSeries(): CandlestickSeries {\r\n\t\treturn this.panel.series.push(CandlestickSeries.new(this._root, {\r\n\t\t\tthemeTags: [\"indicator\"],\r\n\t\t\txAxis: this.xAxis,\r\n\t\t\tyAxis: this.yAxis,\r\n\t\t\tvalueXField: \"valueX\",\r\n\t\t\topenValueYField: \"value_o\",\r\n\t\t\tvalueYField: \"value_y\",\r\n\t\t\tlowValueYField: \"value_l\",\r\n\t\t\thighValueYField: \"value_h\",\r\n\t\t\tstroke: this.get(\"seriesColor\"),\r\n\t\t\tfill: undefined\r\n\t\t}))\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tconst increasingColor = \"increasingColor\";\r\n\t\tconst decreasingColor = \"decreasingColor\";\r\n\r\n\t\tif (this.isDirty(increasingColor) || this.isDirty(decreasingColor)) {\r\n\t\t\tconst template = this.series.columns.template;\r\n\t\t\tconst increasing = this.get(increasingColor);\r\n\t\t\tconst decreasing = this.get(decreasingColor);\r\n\t\t\ttemplate.states.create(\"riseFromPrevious\", { fill: increasing, stroke: increasing });\r\n\t\t\ttemplate.states.create(\"dropFromPrevious\", { fill: decreasing, stroke: decreasing });\r\n\t\t\tthis.markDataDirty();\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic prepareData() {\r\n\t\tif (this.series) {\r\n\t\t\tthis.set(\"field\", \"hl/2\");\r\n\r\n\t\t\tconst dataItems = this.get(\"stockSeries\").dataItems;\r\n\r\n\t\t\tif (dataItems.length > 0) {\r\n\t\t\t\tconst data: any = [];\r\n\r\n\t\t\t\tconst firstDataItem = dataItems[0];\r\n\t\t\t\tlet prevOpen = firstDataItem.get(\"openValueY\", 0);\r\n\t\t\t\tlet prevClose = firstDataItem.get(\"valueY\", 0);\r\n\r\n\t\t\t\t$array.each(dataItems, (dataItem) => {\r\n\r\n\t\t\t\t\tconst open = dataItem.get(\"openValueY\");\r\n\t\t\t\t\tconst close = dataItem.get(\"valueY\");\r\n\t\t\t\t\tconst high = dataItem.get(\"highValueY\");\r\n\t\t\t\t\tconst low = dataItem.get(\"lowValueY\");\r\n\r\n\t\t\t\t\tif ($type.isNumber(open) && $type.isNumber(close) && $type.isNumber(high) && $type.isNumber(low)) {\r\n\r\n\t\t\t\t\t\tconst newClose = (open + close + high + low) / 4;\r\n\t\t\t\t\t\tconst newOpen = (prevOpen + prevClose) / 2;\r\n\r\n\t\t\t\t\t\tconst newHigh = Math.max(high, open, close);\r\n\t\t\t\t\t\tconst newLow = Math.min(low, open, close);\r\n\r\n\t\t\t\t\t\tdata.push({\r\n\t\t\t\t\t\t\tvalueX: dataItem.get(\"valueX\"),\r\n\t\t\t\t\t\t\tvalue_o: newOpen,\r\n\t\t\t\t\t\t\tvalue_y: newClose,\r\n\t\t\t\t\t\t\tvalue_h: newHigh,\r\n\t\t\t\t\t\t\tvalue_l: newLow\r\n\t\t\t\t\t\t});\r\n\r\n\t\t\t\t\t\tprevOpen = newOpen;\r\n\t\t\t\t\t\tprevClose = newClose;\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\r\n\t\t\t\tthis.series.data.setAll(data);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n}"]}
@@ -2,7 +2,7 @@ import type { StockLegend } from "../StockLegend";
2
2
  import { Indicator } from "../indicators/Indicator";
3
3
  import { DropdownListControl, IDropdownListControlSettings, IDropdownListControlPrivate, IDropdownListControlEvents } from "./DropdownListControl";
4
4
  import type { DropdownList, IDropdownListItem } from "./DropdownList";
5
- export declare type Indicators = "Acceleration Bands" | "Accumulation Distribution" | "Accumulative Swing Index" | "Aroon" | "Average True Range" | "Awesome Oscillator" | "Bollinger Bands" | "Bull Bear Power" | "Chaikin Money Flow" | "Chaikin Oscillator" | "Commodity Channel Index" | "Disparity Index" | "MACD" | "Momentum" | "Moving Average" | "Moving Average Cross" | "Moving Average Deviation" | "Moving Average Envelope" | "On Balance Volume" | "Price Volume Trend" | "Relative Strength Index" | "Standard Deviation" | "Stochastic Oscillator" | "Stochastic Momentum Index" | "Trix" | "Typical Price" | "Volume" | "Volume Profile" | "VWAP" | "Williams R" | "Median Price" | "ZigZag";
5
+ export declare type Indicators = "Acceleration Bands" | "Accumulation Distribution" | "Accumulative Swing Index" | "Aroon" | "Average True Range" | "Awesome Oscillator" | "Bollinger Bands" | "Bull Bear Power" | "Chaikin Money Flow" | "Chaikin Oscillator" | "Commodity Channel Index" | "Disparity Index" | "Heikin Ashi" | "MACD" | "Momentum" | "Moving Average" | "Moving Average Cross" | "Moving Average Deviation" | "Moving Average Envelope" | "On Balance Volume" | "Price Volume Trend" | "Relative Strength Index" | "Standard Deviation" | "Stochastic Oscillator" | "Stochastic Momentum Index" | "Trix" | "Typical Price" | "Volume" | "Volume Profile" | "VWAP" | "Williams R" | "Median Price" | "ZigZag";
6
6
  export interface IIndicator {
7
7
  id: string;
8
8
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"IndicatorControl.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/toolbar/IndicatorControl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAsCpD,OAAO,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnJ,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAMtE,oBAAY,UAAU,GAAG,oBAAoB,GAAG,2BAA2B,GAAG,0BAA0B,GAAG,OAAO,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,yBAAyB,GAAG,iBAAiB,GAAG,MAAM,GAAG,UAAU,GAAG,gBAAgB,GAAG,sBAAsB,GAAG,0BAA0B,GAAG,yBAAyB,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,yBAAyB,GAAG,oBAAoB,GAAG,uBAAuB,GAAG,2BAA2B,GAAG,MAAM,GAAG,eAAe,GAAG,QAAQ,GAAG,gBAAgB,GAAG,MAAM,GAAG,YAAY,GAAG,cAAc,GAAG,QAAQ,CAAC;AAEvqB,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,yBAA0B,SAAQ,4BAA4B;IAC9E,UAAU,CAAC,EAAE,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,wBAAyB,SAAQ,2BAA2B;IAC5E;;;;;OAKG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;CACpB;AAED,MAAM,WAAW,uBAAwB,SAAQ,0BAA0B;IAC1E,QAAQ,EAAE;QACT,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAAC;QACjC,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;KAClC,CAAA;CACD;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,mBAAmB;IACxD,OAAc,SAAS,EAAE,MAAM,CAAsB;IACrD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuE;IAE/F,SAAS,EAAE,yBAAyB,CAAC;IACrC,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,OAAO,EAAE,uBAAuB,CAAC;IAEhD,SAAS,CAAC,SAAS;IA4CnB,SAAS,CAAC,SAAS,IAAI,IAAI;IAyB3B;;;;;OAKG;IACI,iBAAiB,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO;IAM1D,SAAS,CAAC,eAAe,IAAI,UAAU;IAIhC,cAAc;IAOrB;;;;OAIG;IACI,eAAe,IAAI,IAAI;IAO9B;;;;;OAKG;IACI,YAAY,CAAC,WAAW,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS;IA+QnE;;;;;;;;;;;OAWG;IACI,mBAAmB,CAAC,MAAM,GAAE,QAAQ,GAAG,QAAmB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM;IAqC5G;;;;;;;OAOG;IACI,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI;CA2C7D"}
1
+ {"version":3,"file":"IndicatorControl.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/toolbar/IndicatorControl.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAGlD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AAuCpD,OAAO,EAAE,mBAAmB,EAAE,4BAA4B,EAAE,2BAA2B,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AACnJ,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAMtE,oBAAY,UAAU,GAAG,oBAAoB,GAAG,2BAA2B,GAAG,0BAA0B,GAAG,OAAO,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,iBAAiB,GAAG,iBAAiB,GAAG,oBAAoB,GAAG,oBAAoB,GAAG,yBAAyB,GAAG,iBAAiB,GAAG,aAAa,GAAG,MAAM,GAAG,UAAU,GAAG,gBAAgB,GAAG,sBAAsB,GAAG,0BAA0B,GAAG,yBAAyB,GAAG,mBAAmB,GAAG,oBAAoB,GAAG,yBAAyB,GAAG,oBAAoB,GAAG,uBAAuB,GAAG,2BAA2B,GAAG,MAAM,GAAG,eAAe,GAAG,QAAQ,GAAG,gBAAgB,GAAG,MAAM,GAAG,YAAY,GAAG,cAAc,GAAG,QAAQ,CAAC;AAEvrB,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,SAAS,CAAC;CAC1B;AAED,MAAM,WAAW,yBAA0B,SAAQ,4BAA4B;IAC9E,UAAU,CAAC,EAAE,KAAK,CAAC,UAAU,GAAG,UAAU,CAAC,CAAC;IAC5C,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB;AAED,MAAM,WAAW,wBAAyB,SAAQ,2BAA2B;IAC5E;;;;;OAKG;IACH,IAAI,CAAC,EAAE,YAAY,CAAC;CACpB;AAED,MAAM,WAAW,uBAAwB,SAAQ,0BAA0B;IAC1E,QAAQ,EAAE;QACT,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAAC;QACjC,SAAS,EAAE,SAAS,GAAG,UAAU,CAAC;KAClC,CAAA;CACD;AAED;;;;GAIG;AACH,qBAAa,gBAAiB,SAAQ,mBAAmB;IACxD,OAAc,SAAS,EAAE,MAAM,CAAsB;IACrD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAuE;IAE/F,SAAS,EAAE,yBAAyB,CAAC;IACrC,gBAAgB,EAAE,wBAAwB,CAAC;IAC3C,OAAO,EAAE,uBAAuB,CAAC;IAEhD,SAAS,CAAC,SAAS;IA4CnB,SAAS,CAAC,SAAS,IAAI,IAAI;IAyB3B;;;;;OAKG;IACI,iBAAiB,CAAC,WAAW,EAAE,UAAU,GAAG,OAAO;IAM1D,SAAS,CAAC,eAAe,IAAI,UAAU;IAIhC,cAAc;IAOrB;;;;OAIG;IACI,eAAe,IAAI,IAAI;IAO9B;;;;;OAKG;IACI,YAAY,CAAC,WAAW,EAAE,UAAU,GAAG,SAAS,GAAG,SAAS;IAsRnE;;;;;;;;;;;OAWG;IACI,mBAAmB,CAAC,MAAM,GAAE,QAAQ,GAAG,QAAmB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,MAAM;IAqC5G;;;;;;;OAOG;IACI,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,IAAI;CA2C7D"}
@@ -10,6 +10,7 @@ import { ChaikinMoneyFlow } from "../indicators/ChaikinMoneyFlow";
10
10
  import { ChaikinOscillator } from "../indicators/ChaikinOscillator";
11
11
  import { CommodityChannelIndex } from "../indicators/CommodityChannelIndex";
12
12
  import { DisparityIndex } from "../indicators/DisparityIndex";
13
+ import { HeikinAshi } from "../indicators/HeikinAshi";
13
14
  import { MACD } from "../indicators/MACD";
14
15
  import { MACross } from "../indicators/MACross";
15
16
  import { MovingAverage } from "../indicators/MovingAverage";
@@ -229,6 +230,13 @@ export class IndicatorControl extends DropdownListControl {
229
230
  stockSeries: stockSeries
230
231
  });
231
232
  break;
233
+ case "Heikin Ashi":
234
+ indicator = HeikinAshi.new(this.root, {
235
+ stockChart: stockChart,
236
+ stockSeries: stockSeries,
237
+ legend: legend
238
+ });
239
+ break;
232
240
  case "MACD":
233
241
  indicator = MACD.new(this.root, {
234
242
  stockChart: stockChart,