@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":"IndicatorControl.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/toolbar/IndicatorControl.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAClF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,KAAK,EAAE,MAAM,qBAAqB,CAAC;AAC5C,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sCAAsC,CAAC;AAC9E,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,GAAG,EAAE,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,qCAAqC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,uCAAuC,CAAC;AAChF,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,kCAAkC,CAAC;AAE9D,+DAA+D;AAC/D,OAAO,EAAE,mBAAmB,EAAyF,MAAM,uBAAuB,CAAC;AAEnJ,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AAgCjD;;;;GAIG;AACH,MAAM,OAAO,gBAAiB,SAAQ,mBAAmB;IAQ9C,SAAS;QAElB,kBAAkB;QAClB,KAAK,CAAC,SAAS,EAAE,CAAC;QAElB,uBAAuB;QACvB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,UAAU,CAAE,CAAC;QAC1C,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAE9B,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,EAAE,EAAE,EAAE;YAChC,MAAM,SAAS,GAAG,IAAI,CAAC,YAAY,CAAa,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YAC5D,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,SAAS,EAAE;gBACnD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE;oBAChC,IAAI,EAAE,UAAU;oBAChB,MAAM,EAAE,IAAI;oBACZ,SAAS,EAAE,SAAS;oBACpB,IAAI,EAAE,EAAE,CAAC,IAAI;iBACb,CAAC,CAAC;aACH;QACF,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,EAAE;YAChC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;YAC5B,IAAI,MAAM,EAAE;gBACX,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;aACvC;iBACI;gBACJ,IAAI,CAAC,IAAI,EAAE,CAAC;aACZ;QACF,CAAC,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAE,CAAC;QAC1C,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,GAAG,4BAA4B,CAAC;QAEnE,IAAI,CAAC,SAAS,EAAE,CAAC;QAEjB,4EAA4E;QAC5E,8BAA8B;QAC9B,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,EAAE,CAAC,cAAc,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;IACnE,CAAC;IAES,SAAS;QAClB,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAE,CAAC;QACtC,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAE,CAAC;QAC3C,MAAM,KAAK,GAAwB,EAAE,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,CAAC,SAAkC,EAAE,EAAE;YAC9D,IAAI,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE;gBAC9B,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,EAAgB,CAAC,EAAE;oBACvD,KAAK,CAAC,IAAI,CAAC;wBACV,EAAE,EAAE,SAAS,CAAC,EAAE;wBAChB,KAAK,EAAE,SAAS,CAAC,IAAI;qBACrB,CAAC,CAAC;iBACH;aACD;iBACI;gBACJ,IAAI,IAAI,CAAC,iBAAiB,CAAC,SAAuB,CAAC,EAAE;oBACpD,KAAK,CAAC,IAAI,CAAC;wBACV,EAAE,EAAE,SAAS;wBACb,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,YAAY,CAAC,SAAS,CAAC;qBAClD,CAAC,CAAC;iBACH;aACD;QACF,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC1B,CAAC;IAED;;;;;OAKG;IACI,iBAAiB,CAAC,WAAuB;QAC/C,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,MAAM,gBAAgB,GAAG,CAAC,oBAAoB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,QAAQ,EAAE,gBAAgB,EAAE,MAAM,CAAC,CAAC;QACrJ,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;IACxG,CAAC;IAES,eAAe;QACxB,OAAO,UAAU,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAEM,cAAc;QACpB,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE;YAC/B,IAAI,CAAC,SAAS,EAAE,CAAC;SACjB;IACF,CAAC;IAED;;;;OAIG;IACI,eAAe;QACrB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,SAAS,EAAE,EAAE;YAC/C,SAAS,CAAC,OAAO,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACI,YAAY,CAAC,WAAuB;QAE1C,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,WAAW,CAAC,EAAE;YACzC,OAAO;SACP;QAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,SAAgC,CAAC;QACrC,MAAM,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,aAAa,CAAE,CAAC;QACnD,MAAM,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAE,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAElC,QAAQ,WAAW,EAAE;YACpB,KAAK,oBAAoB;gBACxB,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC5C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YAEP,KAAK,2BAA2B;gBAC/B,SAAS,GAAG,wBAAwB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACnD,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,0BAA0B;gBAC9B,SAAS,GAAG,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACjD,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,OAAO;gBACX,SAAS,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAChC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,oBAAoB;gBACxB,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC5C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,iBAAiB;gBACrB,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACzC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,iBAAiB;gBACrB,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACxC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,oBAAoB;gBACxB,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC3C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,oBAAoB;gBACxB,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC5C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,yBAAyB;gBAC7B,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAChD,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;iBACxB,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,iBAAiB;gBACrB,SAAS,GAAG,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACzC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;iBACxB,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,MAAM;gBACV,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC/B,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,cAAc;gBAClB,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACtC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,UAAU;gBACd,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACnC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;iBACxB,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,sBAAsB;gBAC1B,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAClC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,gBAAgB;gBACpB,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACxC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,0BAA0B;gBAC9B,SAAS,GAAG,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACjD,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,yBAAyB;gBAC7B,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAChD,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,oBAAoB;gBACxB,SAAS,GAAG,iBAAiB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC5C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,MAAM;gBACV,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC/B,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,eAAe;gBACnB,SAAS,GAAG,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACvC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,oBAAoB;gBACvB,SAAS,GAAG,gBAAgB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC3C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACR,KAAK,mBAAmB;gBACvB,SAAS,GAAG,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC1C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,oBAAoB;gBACxB,SAAS,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC9B,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,yBAAyB;gBAC7B,SAAS,GAAG,qBAAqB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAChD,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;iBACxB,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,2BAA2B;gBAC/B,SAAS,GAAG,uBAAuB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAClD,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;iBACxB,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,uBAAuB;gBAC3B,SAAS,GAAG,oBAAoB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC/C,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;iBACxB,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,YAAY;gBAChB,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACpC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;iBACxB,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,QAAQ;gBACZ,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACjC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;iBAC1B,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,gBAAgB;gBACpB,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACxC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,MAAM;gBACV,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBAC/B,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,YAAY,EAAE,YAAY;oBAC1B,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;YACP,KAAK,QAAQ;gBACZ,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE;oBACjC,UAAU,EAAE,UAAU;oBACtB,WAAW,EAAE,WAAW;oBACxB,MAAM,EAAE,MAAM;iBACd,CAAC,CAAC;gBACH,MAAM;SACP;QAED,IAAI,CAAC,SAAS,EAAE;YACf,4BAA4B;YAC5B,MAAM,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,YAAY,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE;gBACxD,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,EAAE,IAAI,WAAW,EAAE;oBACnD,SAAS,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;oBACrC,OAAO,KAAK,CAAC;iBACb;gBACD,OAAO,IAAI,CAAC;YACb,CAAC,CAAC,CAAC;SACH;QAED,IAAI,SAAS,EAAE;YACd,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACtC,IAAI,SAAS,CAAC,iBAAiB,CAAC,MAAM,IAAI,SAAS,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,CAAC,EAAE;gBAClF,MAAM,KAAK,GAAG,UAAU,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;gBACrD,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE;oBAChC,IAAI,SAAS,EAAE;wBACd,IAAI,CAAC,EAAE,CAAC,QAAQ,EAAE;4BACjB,SAAS,CAAC,OAAO,EAAE,CAAC;yBACpB;qBACD;gBACF,CAAC,CAAC,CAAC;gBACH,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;aAC/B;SAED;QAED,OAAO,SAAS,CAAC;IAClB,CAAC;IAED;;;;;;;;;;;OAWG;IACI,mBAAmB,CAAC,SAA8B,QAAQ,EAAE,MAAe;QACjF,MAAM,GAAG,GAAe,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE;YACxC,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE;gBAC7C,eAAe,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,QAAQ,CAAC;aACxE,CAAC,CAAC;YAEH,QAAQ;YACR,MAAM,IAAI,GAAQ,EAAE,CAAC;YAErB,oBAAoB;YACpB,IAAI,SAAS,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE;gBACjC,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC;aAC1B;YAED,IAAI,SAAS,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE;gBAClC,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC;aAC3B;YAED,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACvC,IAAI,MAAM,EAAE;gBACX,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,EAAE;oBAC9B,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;wBAChC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,MAAM,CAAC,OAAO,CAAC,MAAoB,CAAC,CAAC;qBACrE;gBACF,CAAC,CAAC,CAAC;aACH;YAED,YAAY;YACZ,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,SAAS,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;YAEtD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC,CAAC,CAAC;QACH,OAAO,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IAC1E,CAAC;IAED;;;;;;;OAOG;IACI,qBAAqB,CAAC,IAAyB;QACrD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACzB,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SACxB;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,SAAS,EAAE,EAAE;YAE/B,WAAW;YACX,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE;gBACpC,SAAS,CAAC,WAAW,CAAC,QAAQ,GAAG,EAAE,CAAC;aACpC;YACD,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,UAAU,GAAG,UAAU,CAAC;YAEvD,IAAI,SAAS,CAAC,aAAa,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,EAAE;gBAC3E,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,WAAW,GAAG,UAAU,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;aAC3E;YAED,IAAI,SAAS,CAAC,cAAc,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,YAAY,EAAE;gBAC7E,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,YAAY,GAAG,UAAU,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;aAC7E;YAED,IAAI,SAAS,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,EAAE;gBACpF,gBAAgB;gBAChB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC;gBAClE,IAAI,KAAK,EAAE;oBACV,KAAK,CAAC,YAAY,CAAC,CAAC,KAAK,EAAE,EAAE;wBAC5B,IAAI,KAAK,CAAC,MAAM,CAAC,aAAa,CAAC,EAAE;4BAChC,SAAS,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,GAAG,KAAK,CAAC;yBAC9C;oBACF,CAAC,CAAC,CAAC;iBACH;aACD;YAED,QAAQ;YACR,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,SAAc,EAAE,EAAE;gBAC/E,IAAI,SAAS,YAAY,SAAS,EAAE;oBACnC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;iBACtC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IAEJ,CAAC;;AAteD;;;;WAAkC,kBAAkB;GAAC;AACrD;;;;WAA0C,mBAAmB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { StockLegend } from \"../StockLegend\";\r\nimport type { StockPanel } from \"../StockPanel\";\r\n\r\nimport { Indicator } from \"../indicators/Indicator\";\r\nimport { AccelerationBands } from \"../indicators/AccelerationBands\";\r\nimport { AccumulationDistribution } from \"../indicators/AccumulationDistribution\";\r\nimport { AccumulativeSwingIndex } from \"../indicators/AccumulativeSwingIndex\";\r\nimport { Aroon } from \"../indicators/Aroon\";\r\nimport { AwesomeOscillator } from \"../indicators/AwesomeOscillator\";\r\nimport { BollingerBands } from \"../indicators/BollingerBands\";\r\nimport { BullBearPower } from \"../indicators/BullBearPower\";\r\nimport { ChaikinMoneyFlow } from \"../indicators/ChaikinMoneyFlow\";\r\nimport { ChaikinOscillator } from \"../indicators/ChaikinOscillator\";\r\nimport { CommodityChannelIndex } from \"../indicators/CommodityChannelIndex\";\r\nimport { DisparityIndex } from \"../indicators/DisparityIndex\";\r\nimport { MACD } from \"../indicators/MACD\";\r\nimport { MACross } from \"../indicators/MACross\";\r\nimport { MovingAverage } from \"../indicators/MovingAverage\";\r\nimport { MovingAverageDeviation } from \"../indicators/MovingAverageDeviation\";\r\nimport { MovingAverageEnvelope } from \"../indicators/MovingAverageEnvelope\";\r\nimport { StandardDeviation } from \"../indicators/StandardDeviation\";\r\nimport { TypicalPrice } from \"../indicators/TypicalPrice\";\r\nimport { AverageTrueRange } from \"../indicators/AverageTrueRange\";\r\nimport { MedianPrice } from \"../indicators/MedianPrice\";\r\nimport { OnBalanceVolume } from \"../indicators/OnBalanceVolume\";\r\nimport { PVT } from \"../indicators/PVT\";\r\nimport { Momentum } from \"../indicators/Momentum\";\r\nimport { RelativeStrengthIndex } from \"../indicators/RelativeStrengthIndex\";\r\nimport { StochasticMomentumIndex } from \"../indicators/StochasticMomentumIndex\";\r\nimport { StochasticOscillator } from \"../indicators/StochasticOscillator\";\r\nimport { WilliamsR } from \"../indicators/WilliamsR\";\r\nimport { Trix } from \"../indicators/Trix\";\r\nimport { Volume } from \"../indicators/Volume\";\r\nimport { VolumeProfile } from \"../indicators/VolumeProfile\";\r\nimport { VWAP } from \"../indicators/VWAP\";\r\nimport { ZigZag } from \"../indicators/ZigZag\";\r\n\r\nimport { JsonParser } from \"../../../plugins/json/Json\";\r\nimport { Serializer } from \"../../../plugins/json/Serializer\";\r\n\r\n//import type { IDisposer } from \"../../../core/util/Disposer\";\r\nimport { DropdownListControl, IDropdownListControlSettings, IDropdownListControlPrivate, IDropdownListControlEvents } from \"./DropdownListControl\";\r\nimport type { DropdownList, IDropdownListItem } from \"./DropdownList\";\r\nimport { StockIcons } from \"./StockIcons\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $type from \"../../../core/util/Type\";\r\n\r\nexport 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\";\r\n\r\nexport interface IIndicator {\r\n\tid: string;\r\n\tname: string;\r\n\tcallback: () => Indicator;\r\n}\r\n\r\nexport interface IIndicatorControlSettings extends IDropdownListControlSettings {\r\n\tindicators?: Array<Indicators | IIndicator>;\r\n\tlegend?: StockLegend;\r\n}\r\n\r\nexport interface IIndicatorControlPrivate extends IDropdownListControlPrivate {\r\n\t/**\r\n\t * Here for backwards compatiblity befor [[IndicatorControl]] was\r\n\t * migrated to extend [[DropdownListControl]].\r\n\t *\r\n\t * @ignore\r\n\t */\r\n\tlist?: DropdownList;\r\n}\r\n\r\nexport interface IIndicatorControlEvents extends IDropdownListControlEvents {\r\n\tselected: {\r\n\t\titem: string | IDropdownListItem;\r\n\t\tindicator: Indicator | IIndicator;\r\n\t}\r\n}\r\n\r\n/**\r\n * A [[StockToolbar]] control for adding indicators to a [[StockChart]].\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/toolbar/indicator-control/} for more info\r\n */\r\nexport class IndicatorControl extends DropdownListControl {\r\n\tpublic static className: string = \"IndicatorControl\";\r\n\tpublic static classNames: Array<string> = DropdownListControl.classNames.concat([IndicatorControl.className]);\r\n\r\n\tdeclare public _settings: IIndicatorControlSettings;\r\n\tdeclare public _privateSettings: IIndicatorControlPrivate;\r\n\tdeclare public _events: IIndicatorControlEvents;\r\n\r\n\tprotected _afterNew() {\r\n\r\n\t\t// Do parent stuff\r\n\t\tsuper._afterNew();\r\n\r\n\t\t// Create list of tools\r\n\t\tconst list = this.getPrivate(\"dropdown\")!;\r\n\t\tthis.setPrivate(\"list\", list);\r\n\r\n\t\tlist.events.on(\"invoked\", (ev) => {\r\n\t\t\tconst indicator = this.addIndicator(<Indicators>ev.item.id);\r\n\t\t\tif (this.events.isEnabled(\"selected\") && indicator) {\r\n\t\t\t\tthis.events.dispatch(\"selected\", {\r\n\t\t\t\t\ttype: \"selected\",\r\n\t\t\t\t\ttarget: this,\r\n\t\t\t\t\tindicator: indicator,\r\n\t\t\t\t\titem: ev.item\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tlist.events.on(\"closed\", (_ev) => {\r\n\t\t\tthis.set(\"active\", false);\r\n\t\t});\r\n\r\n\t\tthis.on(\"active\", (active) => {\r\n\t\t\tif (active) {\r\n\t\t\t\tthis.setTimeout(() => list.show(), 10);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tlist.hide();\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tconst button = this.getPrivate(\"button\")!;\r\n\t\tbutton.className = button.className + \" am5stock-control-dropdown\";\r\n\r\n\t\tthis._initList();\r\n\r\n\t\t// Re-nit list if volume series is added or removed so that we can show/hide\r\n\t\t// volume-dependent indicators\r\n\t\tthis.get(\"stockChart\").on(\"volumeSeries\", () => this._initList());\r\n\t}\r\n\r\n\tprotected _initList(): void {\r\n\t\tconst list = this.getPrivate(\"list\")!;\r\n\t\tconst indicators = this.get(\"indicators\")!;\r\n\t\tconst items: IDropdownListItem[] = [];\r\n\t\t$array.each(indicators, (indicator: Indicators | IIndicator) => {\r\n\t\t\tif ($type.isObject(indicator)) {\r\n\t\t\t\tif (this.supportsIndicator(indicator.id as Indicators)) {\r\n\t\t\t\t\titems.push({\r\n\t\t\t\t\t\tid: indicator.id,\r\n\t\t\t\t\t\tlabel: indicator.name\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tif (this.supportsIndicator(indicator as Indicators)) {\r\n\t\t\t\t\titems.push({\r\n\t\t\t\t\t\tid: indicator,\r\n\t\t\t\t\t\tlabel: this._root.language.translateAny(indicator)\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\tlist.set(\"items\", items);\r\n\t}\r\n\r\n\t/**\r\n\t * Returns `true` if the indicator is supported in current chart setup.\r\n\t * \r\n\t * @param indicatorId Indicator ID\r\n\t * @return Supported?\r\n\t */\r\n\tpublic supportsIndicator(indicatorId: Indicators): boolean {\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tconst volumeIndicators = [\"Chaikin Money Flow\", \"Chaikin Oscillator\", \"On Balance Volume\", \"Price Volume Trend\", \"Volume\", \"Volume Profile\", \"VWAP\"];\r\n\t\treturn (stockChart.get(\"volumeSeries\") || volumeIndicators.indexOf(indicatorId) === -1) ? true : false;\r\n\t}\r\n\r\n\tprotected _getDefaultIcon(): SVGElement {\r\n\t\treturn StockIcons.getIcon(\"Indicator\");\r\n\t}\r\n\r\n\tpublic _beforeChanged() {\r\n\t\tsuper._beforeChanged();\r\n\t\tif (this.isDirty(\"indicators\")) {\r\n\t\t\tthis._initList();\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Removes all indicators from the stock chart.\r\n\t *\r\n\t * @since 5.9.3\r\n\t */\r\n\tpublic clearIndicators(): void {\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tstockChart.indicators.eachReverse((indicator) => {\r\n\t\t\tindicator.dispose();\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Creates a specific indicator, adds it to chart, and returns the instance.\r\n\t * \r\n\t * @param indicatorId Indicator ID\r\n\t * @return Indicator instance\r\n\t */\r\n\tpublic addIndicator(indicatorId: Indicators): Indicator | undefined {\r\n\r\n\t\tif (!this.supportsIndicator(indicatorId)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tlet indicator: Indicator | undefined;\r\n\t\tconst stockSeries = stockChart.get(\"stockSeries\")!;\r\n\t\tconst volumeSeries = stockChart.get(\"volumeSeries\")!;\r\n\t\tconst legend = this.get(\"legend\");\r\n\r\n\t\tswitch (indicatorId) {\r\n\t\t\tcase \"Acceleration Bands\":\r\n\t\t\t\tindicator = AccelerationBands.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase \"Accumulation Distribution\":\r\n\t\t\t\tindicator = AccumulationDistribution.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Accumulative Swing Index\":\r\n\t\t\t\tindicator = AccumulativeSwingIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Aroon\":\r\n\t\t\t\tindicator = Aroon.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Awesome Oscillator\":\r\n\t\t\t\tindicator = AwesomeOscillator.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Bollinger Bands\":\r\n\t\t\t\tindicator = BollingerBands.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Bull Bear Power\":\r\n\t\t\t\tindicator = BullBearPower.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Chaikin Money Flow\":\r\n\t\t\t\tindicator = ChaikinMoneyFlow.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Chaikin Oscillator\":\r\n\t\t\t\tindicator = ChaikinOscillator.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Commodity Channel Index\":\r\n\t\t\t\tindicator = CommodityChannelIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Disparity Index\":\r\n\t\t\t\tindicator = DisparityIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"MACD\":\r\n\t\t\t\tindicator = MACD.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Median Price\":\r\n\t\t\t\tindicator = MedianPrice.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Momentum\":\r\n\t\t\t\tindicator = Momentum.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average Cross\":\r\n\t\t\t\tindicator = MACross.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average\":\r\n\t\t\t\tindicator = MovingAverage.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average Deviation\":\r\n\t\t\t\tindicator = MovingAverageDeviation.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average Envelope\":\r\n\t\t\t\tindicator = MovingAverageEnvelope.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Standard Deviation\":\r\n\t\t\t\tindicator = StandardDeviation.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Trix\":\r\n\t\t\t\tindicator = Trix.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Typical Price\":\r\n\t\t\t\tindicator = TypicalPrice.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Average True Range\":\r\n\t\t\t\t\tindicator = AverageTrueRange.new(this.root, {\r\n\t\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\t\tlegend: legend\r\n\t\t\t\t\t});\r\n\t\t\t\t\tbreak;\t\t\t\t\r\n\t\t\tcase \"On Balance Volume\":\r\n\t\t\t\tindicator = OnBalanceVolume.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Price Volume Trend\":\r\n\t\t\t\tindicator = PVT.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Relative Strength Index\":\r\n\t\t\t\tindicator = RelativeStrengthIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Stochastic Momentum Index\":\r\n\t\t\t\tindicator = StochasticMomentumIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Stochastic Oscillator\":\r\n\t\t\t\tindicator = StochasticOscillator.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Williams R\":\r\n\t\t\t\tindicator = WilliamsR.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Volume\":\r\n\t\t\t\tindicator = Volume.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Volume Profile\":\r\n\t\t\t\tindicator = VolumeProfile.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"VWAP\":\r\n\t\t\t\tindicator = VWAP.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"ZigZag\":\r\n\t\t\t\tindicator = ZigZag.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tif (!indicator) {\r\n\t\t\t// Try searching in the list\r\n\t\t\t$array.eachContinue(this.get(\"indicators\", []), (item) => {\r\n\t\t\t\tif ($type.isObject(item) && item.id == indicatorId) {\r\n\t\t\t\t\tindicator = item.callback.call(this);\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t\treturn true;\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tif (indicator) {\r\n\t\t\tstockChart.indicators.push(indicator);\r\n\t\t\tif (indicator._editableSettings.length && indicator.get(\"autoOpenSettings\", true)) {\r\n\t\t\t\tconst modal = stockChart.getPrivate(\"settingsModal\");\r\n\t\t\t\tmodal.events.once(\"done\", (ev) => {\r\n\t\t\t\t\tif (indicator) {\r\n\t\t\t\t\t\tif (!ev.settings) {\r\n\t\t\t\t\t\t\tindicator.dispose();\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\tmodal.openIndicator(indicator);\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t\treturn indicator;\r\n\t}\r\n\r\n\t/**\r\n\t * Serializes all available indicators into an array of simple objects or\r\n\t * JSON.\r\n\t *\r\n\t * `output` parameter can either be `\"object\"` or `\"string\"` (default).\r\n\t *\r\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/serializing-indicators-annotations/} for more info\r\n\t * @since 5.3.0\r\n\t * @param output Output format\r\n\t * @param indent Line indent in JSON\r\n\t * @return Serialized indicators\r\n\t */\r\n\tpublic serializeIndicators(output: \"object\" | \"string\" = \"string\", indent?: string): Array<unknown> | string {\r\n\t\tconst res: Array<any> = [];\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tstockChart.indicators.each((indicator) => {\r\n\t\t\tconst serializer = Serializer.new(this._root, {\r\n\t\t\t\texcludeSettings: [\"stockChart\", \"stockSeries\", \"volumeSeries\", \"legend\"]\r\n\t\t\t});\r\n\r\n\t\t\t// Panel\r\n\t\t\tconst json: any = {};\r\n\r\n\t\t\t// Series and legend\r\n\t\t\tif (indicator.get(\"stockSeries\")) {\r\n\t\t\t\tjson.__stockSeries = true;\r\n\t\t\t}\r\n\r\n\t\t\tif (indicator.get(\"volumeSeries\")) {\r\n\t\t\t\tjson.__volumeSeries = true;\r\n\t\t\t}\r\n\r\n\t\t\tconst legend = indicator.get(\"legend\");\r\n\t\t\tif (legend) {\r\n\t\t\t\tlegend._walkParents((parent) => {\r\n\t\t\t\t\tif (parent.isType(\"StockPanel\")) {\r\n\t\t\t\t\t\tjson.__legendIndex = stockChart.panels.indexOf(parent as StockPanel);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Serialize\r\n\t\t\tjson.__indicator = serializer.serialize(indicator, 0);\r\n\r\n\t\t\tres.push(json);\r\n\t\t});\r\n\t\treturn output == \"object\" ? res : JSON.stringify(res, undefined, indent);\r\n\t}\r\n\r\n\t/**\r\n\t * Parses data serialized with `serializeIndicators()` and adds indicators to\r\n\t * the chart.\r\n\t *\r\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/serializing-indicators-annotations/} for more info\r\n\t * @since 5.3.0\r\n\t * @param data Serialized data\r\n\t */\r\n\tpublic unserializeIndicators(data: string | Array<any>): void {\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tif ($type.isString(data)) {\r\n\t\t\tdata = JSON.parse(data);\r\n\t\t}\r\n\t\t$array.each(data, (indicator) => {\r\n\r\n\t\t\t// Populate\r\n\t\t\tif (!indicator.__indicator.settings) {\r\n\t\t\t\tindicator.__indicator.settings = {};\r\n\t\t\t}\r\n\t\t\tindicator.__indicator.settings.stockChart = stockChart;\r\n\r\n\t\t\tif (indicator.__stockSeries && !indicator.__indicator.settings.stockSeries) {\r\n\t\t\t\tindicator.__indicator.settings.stockSeries = stockChart.get(\"stockSeries\");\r\n\t\t\t}\r\n\r\n\t\t\tif (indicator.__volumeSeries && !indicator.__indicator.settings.volumeSeries) {\r\n\t\t\t\tindicator.__indicator.settings.volumeSeries = stockChart.get(\"volumeSeries\");\r\n\t\t\t}\r\n\r\n\t\t\tif (indicator.__legendIndex !== undefined && !indicator.__indicator.settings.legend) {\r\n\t\t\t\t// Find a legend\r\n\t\t\t\tconst panel = stockChart.panels.getIndex(indicator.__legendIndex);\r\n\t\t\t\tif (panel) {\r\n\t\t\t\t\tpanel.walkChildren((child) => {\r\n\t\t\t\t\t\tif (child.isType(\"StockLegend\")) {\r\n\t\t\t\t\t\t\tindicator.__indicator.settings.legend = child;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Parse\r\n\t\t\tJsonParser.new(this._root).parse(indicator.__indicator).then((indicator: any) => {\r\n\t\t\t\tif (indicator instanceof Indicator) {\r\n\t\t\t\t\tstockChart.indicators.push(indicator);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t}\r\n\r\n}"]}
1
+ {"version":3,"file":"IndicatorControl.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/toolbar/IndicatorControl.ts"],"names":[],"mappings":"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","sourcesContent":["import type { StockLegend } from \"../StockLegend\";\r\nimport type { StockPanel } from \"../StockPanel\";\r\n\r\nimport { Indicator } from \"../indicators/Indicator\";\r\nimport { AccelerationBands } from \"../indicators/AccelerationBands\";\r\nimport { AccumulationDistribution } from \"../indicators/AccumulationDistribution\";\r\nimport { AccumulativeSwingIndex } from \"../indicators/AccumulativeSwingIndex\";\r\nimport { Aroon } from \"../indicators/Aroon\";\r\nimport { AwesomeOscillator } from \"../indicators/AwesomeOscillator\";\r\nimport { BollingerBands } from \"../indicators/BollingerBands\";\r\nimport { BullBearPower } from \"../indicators/BullBearPower\";\r\nimport { ChaikinMoneyFlow } from \"../indicators/ChaikinMoneyFlow\";\r\nimport { ChaikinOscillator } from \"../indicators/ChaikinOscillator\";\r\nimport { CommodityChannelIndex } from \"../indicators/CommodityChannelIndex\";\r\nimport { DisparityIndex } from \"../indicators/DisparityIndex\";\r\nimport { HeikinAshi } from \"../indicators/HeikinAshi\";\r\nimport { MACD } from \"../indicators/MACD\";\r\nimport { MACross } from \"../indicators/MACross\";\r\nimport { MovingAverage } from \"../indicators/MovingAverage\";\r\nimport { MovingAverageDeviation } from \"../indicators/MovingAverageDeviation\";\r\nimport { MovingAverageEnvelope } from \"../indicators/MovingAverageEnvelope\";\r\nimport { StandardDeviation } from \"../indicators/StandardDeviation\";\r\nimport { TypicalPrice } from \"../indicators/TypicalPrice\";\r\nimport { AverageTrueRange } from \"../indicators/AverageTrueRange\";\r\nimport { MedianPrice } from \"../indicators/MedianPrice\";\r\nimport { OnBalanceVolume } from \"../indicators/OnBalanceVolume\";\r\nimport { PVT } from \"../indicators/PVT\";\r\nimport { Momentum } from \"../indicators/Momentum\";\r\nimport { RelativeStrengthIndex } from \"../indicators/RelativeStrengthIndex\";\r\nimport { StochasticMomentumIndex } from \"../indicators/StochasticMomentumIndex\";\r\nimport { StochasticOscillator } from \"../indicators/StochasticOscillator\";\r\nimport { WilliamsR } from \"../indicators/WilliamsR\";\r\nimport { Trix } from \"../indicators/Trix\";\r\nimport { Volume } from \"../indicators/Volume\";\r\nimport { VolumeProfile } from \"../indicators/VolumeProfile\";\r\nimport { VWAP } from \"../indicators/VWAP\";\r\nimport { ZigZag } from \"../indicators/ZigZag\";\r\n\r\nimport { JsonParser } from \"../../../plugins/json/Json\";\r\nimport { Serializer } from \"../../../plugins/json/Serializer\";\r\n\r\n//import type { IDisposer } from \"../../../core/util/Disposer\";\r\nimport { DropdownListControl, IDropdownListControlSettings, IDropdownListControlPrivate, IDropdownListControlEvents } from \"./DropdownListControl\";\r\nimport type { DropdownList, IDropdownListItem } from \"./DropdownList\";\r\nimport { StockIcons } from \"./StockIcons\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $type from \"../../../core/util/Type\";\r\n\r\nexport 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\";\r\n\r\nexport interface IIndicator {\r\n\tid: string;\r\n\tname: string;\r\n\tcallback: () => Indicator;\r\n}\r\n\r\nexport interface IIndicatorControlSettings extends IDropdownListControlSettings {\r\n\tindicators?: Array<Indicators | IIndicator>;\r\n\tlegend?: StockLegend;\r\n}\r\n\r\nexport interface IIndicatorControlPrivate extends IDropdownListControlPrivate {\r\n\t/**\r\n\t * Here for backwards compatiblity befor [[IndicatorControl]] was\r\n\t * migrated to extend [[DropdownListControl]].\r\n\t *\r\n\t * @ignore\r\n\t */\r\n\tlist?: DropdownList;\r\n}\r\n\r\nexport interface IIndicatorControlEvents extends IDropdownListControlEvents {\r\n\tselected: {\r\n\t\titem: string | IDropdownListItem;\r\n\t\tindicator: Indicator | IIndicator;\r\n\t}\r\n}\r\n\r\n/**\r\n * A [[StockToolbar]] control for adding indicators to a [[StockChart]].\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/toolbar/indicator-control/} for more info\r\n */\r\nexport class IndicatorControl extends DropdownListControl {\r\n\tpublic static className: string = \"IndicatorControl\";\r\n\tpublic static classNames: Array<string> = DropdownListControl.classNames.concat([IndicatorControl.className]);\r\n\r\n\tdeclare public _settings: IIndicatorControlSettings;\r\n\tdeclare public _privateSettings: IIndicatorControlPrivate;\r\n\tdeclare public _events: IIndicatorControlEvents;\r\n\r\n\tprotected _afterNew() {\r\n\r\n\t\t// Do parent stuff\r\n\t\tsuper._afterNew();\r\n\r\n\t\t// Create list of tools\r\n\t\tconst list = this.getPrivate(\"dropdown\")!;\r\n\t\tthis.setPrivate(\"list\", list);\r\n\r\n\t\tlist.events.on(\"invoked\", (ev) => {\r\n\t\t\tconst indicator = this.addIndicator(<Indicators>ev.item.id);\r\n\t\t\tif (this.events.isEnabled(\"selected\") && indicator) {\r\n\t\t\t\tthis.events.dispatch(\"selected\", {\r\n\t\t\t\t\ttype: \"selected\",\r\n\t\t\t\t\ttarget: this,\r\n\t\t\t\t\tindicator: indicator,\r\n\t\t\t\t\titem: ev.item\r\n\t\t\t\t});\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tlist.events.on(\"closed\", (_ev) => {\r\n\t\t\tthis.set(\"active\", false);\r\n\t\t});\r\n\r\n\t\tthis.on(\"active\", (active) => {\r\n\t\t\tif (active) {\r\n\t\t\t\tthis.setTimeout(() => list.show(), 10);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tlist.hide();\r\n\t\t\t}\r\n\t\t});\r\n\r\n\t\tconst button = this.getPrivate(\"button\")!;\r\n\t\tbutton.className = button.className + \" am5stock-control-dropdown\";\r\n\r\n\t\tthis._initList();\r\n\r\n\t\t// Re-nit list if volume series is added or removed so that we can show/hide\r\n\t\t// volume-dependent indicators\r\n\t\tthis.get(\"stockChart\").on(\"volumeSeries\", () => this._initList());\r\n\t}\r\n\r\n\tprotected _initList(): void {\r\n\t\tconst list = this.getPrivate(\"list\")!;\r\n\t\tconst indicators = this.get(\"indicators\")!;\r\n\t\tconst items: IDropdownListItem[] = [];\r\n\t\t$array.each(indicators, (indicator: Indicators | IIndicator) => {\r\n\t\t\tif ($type.isObject(indicator)) {\r\n\t\t\t\tif (this.supportsIndicator(indicator.id as Indicators)) {\r\n\t\t\t\t\titems.push({\r\n\t\t\t\t\t\tid: indicator.id,\r\n\t\t\t\t\t\tlabel: indicator.name\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tif (this.supportsIndicator(indicator as Indicators)) {\r\n\t\t\t\t\titems.push({\r\n\t\t\t\t\t\tid: indicator,\r\n\t\t\t\t\t\tlabel: this._root.language.translateAny(indicator)\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\tlist.set(\"items\", items);\r\n\t}\r\n\r\n\t/**\r\n\t * Returns `true` if the indicator is supported in current chart setup.\r\n\t * \r\n\t * @param indicatorId Indicator ID\r\n\t * @return Supported?\r\n\t */\r\n\tpublic supportsIndicator(indicatorId: Indicators): boolean {\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tconst volumeIndicators = [\"Chaikin Money Flow\", \"Chaikin Oscillator\", \"On Balance Volume\", \"Price Volume Trend\", \"Volume\", \"Volume Profile\", \"VWAP\"];\r\n\t\treturn (stockChart.get(\"volumeSeries\") || volumeIndicators.indexOf(indicatorId) === -1) ? true : false;\r\n\t}\r\n\r\n\tprotected _getDefaultIcon(): SVGElement {\r\n\t\treturn StockIcons.getIcon(\"Indicator\");\r\n\t}\r\n\r\n\tpublic _beforeChanged() {\r\n\t\tsuper._beforeChanged();\r\n\t\tif (this.isDirty(\"indicators\")) {\r\n\t\t\tthis._initList();\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * Removes all indicators from the stock chart.\r\n\t *\r\n\t * @since 5.9.3\r\n\t */\r\n\tpublic clearIndicators(): void {\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tstockChart.indicators.eachReverse((indicator) => {\r\n\t\t\tindicator.dispose();\r\n\t\t});\r\n\t}\r\n\r\n\t/**\r\n\t * Creates a specific indicator, adds it to chart, and returns the instance.\r\n\t * \r\n\t * @param indicatorId Indicator ID\r\n\t * @return Indicator instance\r\n\t */\r\n\tpublic addIndicator(indicatorId: Indicators): Indicator | undefined {\r\n\r\n\t\tif (!this.supportsIndicator(indicatorId)) {\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tlet indicator: Indicator | undefined;\r\n\t\tconst stockSeries = stockChart.get(\"stockSeries\")!;\r\n\t\tconst volumeSeries = stockChart.get(\"volumeSeries\")!;\r\n\t\tconst legend = this.get(\"legend\");\r\n\r\n\t\tswitch (indicatorId) {\r\n\t\t\tcase \"Acceleration Bands\":\r\n\t\t\t\tindicator = AccelerationBands.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\r\n\t\t\tcase \"Accumulation Distribution\":\r\n\t\t\t\tindicator = AccumulationDistribution.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Accumulative Swing Index\":\r\n\t\t\t\tindicator = AccumulativeSwingIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Aroon\":\r\n\t\t\t\tindicator = Aroon.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Awesome Oscillator\":\r\n\t\t\t\tindicator = AwesomeOscillator.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Bollinger Bands\":\r\n\t\t\t\tindicator = BollingerBands.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Bull Bear Power\":\r\n\t\t\t\tindicator = BullBearPower.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Chaikin Money Flow\":\r\n\t\t\t\tindicator = ChaikinMoneyFlow.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Chaikin Oscillator\":\r\n\t\t\t\tindicator = ChaikinOscillator.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Commodity Channel Index\":\r\n\t\t\t\tindicator = CommodityChannelIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Disparity Index\":\r\n\t\t\t\tindicator = DisparityIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Heikin Ashi\":\r\n\t\t\t\tindicator = HeikinAshi.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\t\r\n\t\t\tcase \"MACD\":\r\n\t\t\t\tindicator = MACD.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Median Price\":\r\n\t\t\t\tindicator = MedianPrice.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Momentum\":\r\n\t\t\t\tindicator = Momentum.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average Cross\":\r\n\t\t\t\tindicator = MACross.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average\":\r\n\t\t\t\tindicator = MovingAverage.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average Deviation\":\r\n\t\t\t\tindicator = MovingAverageDeviation.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Moving Average Envelope\":\r\n\t\t\t\tindicator = MovingAverageEnvelope.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Standard Deviation\":\r\n\t\t\t\tindicator = StandardDeviation.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Trix\":\r\n\t\t\t\tindicator = Trix.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Typical Price\":\r\n\t\t\t\tindicator = TypicalPrice.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Average True Range\":\r\n\t\t\t\t\tindicator = AverageTrueRange.new(this.root, {\r\n\t\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\t\tlegend: legend\r\n\t\t\t\t\t});\r\n\t\t\t\t\tbreak;\t\t\t\t\r\n\t\t\tcase \"On Balance Volume\":\r\n\t\t\t\tindicator = OnBalanceVolume.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Price Volume Trend\":\r\n\t\t\t\tindicator = PVT.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Relative Strength Index\":\r\n\t\t\t\tindicator = RelativeStrengthIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Stochastic Momentum Index\":\r\n\t\t\t\tindicator = StochasticMomentumIndex.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Stochastic Oscillator\":\r\n\t\t\t\tindicator = StochasticOscillator.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Williams R\":\r\n\t\t\t\tindicator = WilliamsR.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Volume\":\r\n\t\t\t\tindicator = Volume.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"Volume Profile\":\r\n\t\t\t\tindicator = VolumeProfile.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"VWAP\":\r\n\t\t\t\tindicator = VWAP.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tvolumeSeries: volumeSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"ZigZag\":\r\n\t\t\t\tindicator = ZigZag.new(this.root, {\r\n\t\t\t\t\tstockChart: stockChart,\r\n\t\t\t\t\tstockSeries: stockSeries,\r\n\t\t\t\t\tlegend: legend\r\n\t\t\t\t});\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\r\n\t\tif (!indicator) {\r\n\t\t\t// Try searching in the list\r\n\t\t\t$array.eachContinue(this.get(\"indicators\", []), (item) => {\r\n\t\t\t\tif ($type.isObject(item) && item.id == indicatorId) {\r\n\t\t\t\t\tindicator = item.callback.call(this);\r\n\t\t\t\t\treturn false;\r\n\t\t\t\t}\r\n\t\t\t\treturn true;\r\n\t\t\t});\r\n\t\t}\r\n\r\n\t\tif (indicator) {\r\n\t\t\tstockChart.indicators.push(indicator);\r\n\t\t\tif (indicator._editableSettings.length && indicator.get(\"autoOpenSettings\", true)) {\r\n\t\t\t\tconst modal = stockChart.getPrivate(\"settingsModal\");\r\n\t\t\t\tmodal.events.once(\"done\", (ev) => {\r\n\t\t\t\t\tif (indicator) {\r\n\t\t\t\t\t\tif (!ev.settings) {\r\n\t\t\t\t\t\t\tindicator.dispose();\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\tmodal.openIndicator(indicator);\r\n\t\t\t}\r\n\r\n\t\t}\r\n\r\n\t\treturn indicator;\r\n\t}\r\n\r\n\t/**\r\n\t * Serializes all available indicators into an array of simple objects or\r\n\t * JSON.\r\n\t *\r\n\t * `output` parameter can either be `\"object\"` or `\"string\"` (default).\r\n\t *\r\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/serializing-indicators-annotations/} for more info\r\n\t * @since 5.3.0\r\n\t * @param output Output format\r\n\t * @param indent Line indent in JSON\r\n\t * @return Serialized indicators\r\n\t */\r\n\tpublic serializeIndicators(output: \"object\" | \"string\" = \"string\", indent?: string): Array<unknown> | string {\r\n\t\tconst res: Array<any> = [];\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tstockChart.indicators.each((indicator) => {\r\n\t\t\tconst serializer = Serializer.new(this._root, {\r\n\t\t\t\texcludeSettings: [\"stockChart\", \"stockSeries\", \"volumeSeries\", \"legend\"]\r\n\t\t\t});\r\n\r\n\t\t\t// Panel\r\n\t\t\tconst json: any = {};\r\n\r\n\t\t\t// Series and legend\r\n\t\t\tif (indicator.get(\"stockSeries\")) {\r\n\t\t\t\tjson.__stockSeries = true;\r\n\t\t\t}\r\n\r\n\t\t\tif (indicator.get(\"volumeSeries\")) {\r\n\t\t\t\tjson.__volumeSeries = true;\r\n\t\t\t}\r\n\r\n\t\t\tconst legend = indicator.get(\"legend\");\r\n\t\t\tif (legend) {\r\n\t\t\t\tlegend._walkParents((parent) => {\r\n\t\t\t\t\tif (parent.isType(\"StockPanel\")) {\r\n\t\t\t\t\t\tjson.__legendIndex = stockChart.panels.indexOf(parent as StockPanel);\r\n\t\t\t\t\t}\r\n\t\t\t\t});\r\n\t\t\t}\r\n\r\n\t\t\t// Serialize\r\n\t\t\tjson.__indicator = serializer.serialize(indicator, 0);\r\n\r\n\t\t\tres.push(json);\r\n\t\t});\r\n\t\treturn output == \"object\" ? res : JSON.stringify(res, undefined, indent);\r\n\t}\r\n\r\n\t/**\r\n\t * Parses data serialized with `serializeIndicators()` and adds indicators to\r\n\t * the chart.\r\n\t *\r\n\t * @see {@link https://www.amcharts.com/docs/v5/charts/stock/serializing-indicators-annotations/} for more info\r\n\t * @since 5.3.0\r\n\t * @param data Serialized data\r\n\t */\r\n\tpublic unserializeIndicators(data: string | Array<any>): void {\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tif ($type.isString(data)) {\r\n\t\t\tdata = JSON.parse(data);\r\n\t\t}\r\n\t\t$array.each(data, (indicator) => {\r\n\r\n\t\t\t// Populate\r\n\t\t\tif (!indicator.__indicator.settings) {\r\n\t\t\t\tindicator.__indicator.settings = {};\r\n\t\t\t}\r\n\t\t\tindicator.__indicator.settings.stockChart = stockChart;\r\n\r\n\t\t\tif (indicator.__stockSeries && !indicator.__indicator.settings.stockSeries) {\r\n\t\t\t\tindicator.__indicator.settings.stockSeries = stockChart.get(\"stockSeries\");\r\n\t\t\t}\r\n\r\n\t\t\tif (indicator.__volumeSeries && !indicator.__indicator.settings.volumeSeries) {\r\n\t\t\t\tindicator.__indicator.settings.volumeSeries = stockChart.get(\"volumeSeries\");\r\n\t\t\t}\r\n\r\n\t\t\tif (indicator.__legendIndex !== undefined && !indicator.__indicator.settings.legend) {\r\n\t\t\t\t// Find a legend\r\n\t\t\t\tconst panel = stockChart.panels.getIndex(indicator.__legendIndex);\r\n\t\t\t\tif (panel) {\r\n\t\t\t\t\tpanel.walkChildren((child) => {\r\n\t\t\t\t\t\tif (child.isType(\"StockLegend\")) {\r\n\t\t\t\t\t\t\tindicator.__indicator.settings.legend = child;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t});\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\t// Parse\r\n\t\t\tJsonParser.new(this._root).parse(indicator.__indicator).then((indicator: any) => {\r\n\t\t\t\tif (indicator instanceof Indicator) {\r\n\t\t\t\t\tstockChart.indicators.push(indicator);\r\n\t\t\t\t}\r\n\t\t\t});\r\n\t\t});\r\n\r\n\t}\r\n\r\n}"]}
@@ -1 +1 @@
1
- {"version":3,"file":"XYChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/xy/XYChart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"XYChart.d.ts","sourceRoot":"","sources":["../../../../../src/.internal/charts/xy/XYChart.ts"],"names":[],"mappings":"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"}
@@ -346,8 +346,9 @@ export class XYChart extends SerialChart {
346
346
  const wheelEvent = event.originalEvent;
347
347
  // Ignore wheel event if it is happening on a non-chart element, e.g. if
348
348
  // some page element is over the chart.
349
+ let prevent = false;
349
350
  if ($utils.isLocalEvent(wheelEvent, this)) {
350
- wheelEvent.preventDefault();
351
+ prevent = true;
351
352
  }
352
353
  else {
353
354
  return;
@@ -370,9 +371,15 @@ export class XYChart extends SerialChart {
370
371
  let maxDeviation = axis.get("maxDeviation", 0);
371
372
  let newStart = Math.min(1 + maxDeviation, Math.max(-maxDeviation, start - wheelStep * (end - start) * shiftX * position));
372
373
  let newEnd = Math.max(-maxDeviation, Math.min(1 + maxDeviation, end + wheelStep * (end - start) * shiftX * (1 - position)));
374
+ if (newStart == start && newEnd == end) {
375
+ prevent = false;
376
+ }
373
377
  if (1 / (newEnd - newStart) < axis.getPrivate("maxZoomFactor", Infinity) / axis.get("minZoomCount", 1)) {
374
378
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
375
379
  }
380
+ else {
381
+ prevent = false;
382
+ }
376
383
  }
377
384
  });
378
385
  }
@@ -388,9 +395,15 @@ export class XYChart extends SerialChart {
388
395
  let maxDeviation = axis.get("maxDeviation", 0);
389
396
  let newStart = Math.min(1 + maxDeviation, Math.max(-maxDeviation, start - wheelStep * (end - start) * shiftY * position));
390
397
  let newEnd = Math.max(-maxDeviation, Math.min(1 + maxDeviation, end + wheelStep * (end - start) * shiftY * (1 - position)));
398
+ if (newStart == start && newEnd == end) {
399
+ prevent = false;
400
+ }
391
401
  if (1 / (newEnd - newStart) < axis.getPrivate("maxZoomFactor", Infinity) / axis.get("minZoomCount", 1)) {
392
402
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
393
403
  }
404
+ else {
405
+ prevent = false;
406
+ }
394
407
  }
395
408
  });
396
409
  }
@@ -406,9 +419,15 @@ export class XYChart extends SerialChart {
406
419
  let maxDeviation = axis.get("maxDeviation", 0);
407
420
  let newStart = Math.min(1 + maxDeviation, Math.max(-maxDeviation, start - wheelStep * (end - start) * shiftX * position));
408
421
  let newEnd = Math.max(-maxDeviation, Math.min(1 + maxDeviation, end + wheelStep * (end - start) * shiftX * (1 - position)));
422
+ if (newStart == start && newEnd == end) {
423
+ prevent = false;
424
+ }
409
425
  if (1 / (newEnd - newStart) < axis.getPrivate("maxZoomFactor", Infinity) / axis.get("minZoomCount", 1)) {
410
426
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
411
427
  }
428
+ else {
429
+ prevent = false;
430
+ }
412
431
  }
413
432
  });
414
433
  }
@@ -424,9 +443,15 @@ export class XYChart extends SerialChart {
424
443
  let maxDeviation = axis.get("maxDeviation", 0);
425
444
  let newStart = Math.min(1 + maxDeviation, Math.max(-maxDeviation, start - wheelStep * (end - start) * shiftY * position));
426
445
  let newEnd = Math.max(-maxDeviation, Math.min(1 + maxDeviation, end + wheelStep * (end - start) * shiftY * (1 - position)));
446
+ if (newStart == start && newEnd == end) {
447
+ prevent = false;
448
+ }
427
449
  if (1 / (newEnd - newStart) < axis.getPrivate("maxZoomFactor", Infinity) / axis.get("minZoomCount", 1)) {
428
450
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
429
451
  }
452
+ else {
453
+ prevent = false;
454
+ }
430
455
  }
431
456
  });
432
457
  }
@@ -441,6 +466,9 @@ export class XYChart extends SerialChart {
441
466
  let se = this._fixWheel(newStart, newEnd);
442
467
  newStart = se[0];
443
468
  newEnd = se[1];
469
+ if (newStart == start && newEnd == end) {
470
+ prevent = false;
471
+ }
444
472
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
445
473
  }
446
474
  });
@@ -456,6 +484,9 @@ export class XYChart extends SerialChart {
456
484
  let se = this._fixWheel(newStart, newEnd);
457
485
  newStart = se[0];
458
486
  newEnd = se[1];
487
+ if (newStart == start && newEnd == end) {
488
+ prevent = false;
489
+ }
459
490
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
460
491
  }
461
492
  });
@@ -471,6 +502,9 @@ export class XYChart extends SerialChart {
471
502
  let se = this._fixWheel(newStart, newEnd);
472
503
  newStart = se[0];
473
504
  newEnd = se[1];
505
+ if (newStart == start && newEnd == end) {
506
+ prevent = false;
507
+ }
474
508
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
475
509
  }
476
510
  });
@@ -486,10 +520,16 @@ export class XYChart extends SerialChart {
486
520
  let se = this._fixWheel(newStart, newEnd);
487
521
  newStart = se[0];
488
522
  newEnd = se[1];
523
+ if (newStart == start && newEnd == end) {
524
+ prevent = false;
525
+ }
489
526
  this._handleWheelAnimation(axis.zoom(newStart, newEnd));
490
527
  }
491
528
  });
492
529
  }
530
+ if (prevent) {
531
+ wheelEvent.preventDefault();
532
+ }
493
533
  }
494
534
  _handleSetWheel() {
495
535
  const wheelX = this.get("wheelX");
@@ -1196,7 +1236,13 @@ export class XYChart extends SerialChart {
1196
1236
  const plotContainer = this.plotContainer;
1197
1237
  const w = plotContainer.width();
1198
1238
  const h = plotContainer.height();
1199
- const hh = this.height();
1239
+ let hh = this.height();
1240
+ const bounds = this._root.tooltipContainer.get("layerMargin");
1241
+ if (bounds) {
1242
+ if (bounds.bottom > hh) {
1243
+ hh = bounds.bottom;
1244
+ }
1245
+ }
1200
1246
  let plotT = plotContainer._display.toGlobal({ x: 0, y: 0 });
1201
1247
  let plotB = plotContainer._display.toGlobal({ x: w, y: h });
1202
1248
  const tooltips = [];