@amcharts/amcharts5 5.14.2 → 5.14.4

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 (235) hide show
  1. package/.internal/charts/gantt/GanttCategoryAxisRenderer.d.ts.map +1 -1
  2. package/.internal/charts/gantt/GanttCategoryAxisRenderer.js +6 -0
  3. package/.internal/charts/gantt/GanttCategoryAxisRenderer.js.map +1 -1
  4. package/.internal/charts/stock/StockChart.js +1 -1
  5. package/.internal/charts/stock/StockChart.js.map +1 -1
  6. package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
  7. package/.internal/charts/stock/StockChartDefaultTheme.js +6 -0
  8. package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
  9. package/.internal/charts/stock/drawing/DrawingSeries.d.ts +1 -0
  10. package/.internal/charts/stock/drawing/DrawingSeries.d.ts.map +1 -1
  11. package/.internal/charts/stock/drawing/DrawingSeries.js +13 -2
  12. package/.internal/charts/stock/drawing/DrawingSeries.js.map +1 -1
  13. package/.internal/charts/stock/drawing/EllipseSeries.d.ts.map +1 -1
  14. package/.internal/charts/stock/drawing/EllipseSeries.js +3 -0
  15. package/.internal/charts/stock/drawing/EllipseSeries.js.map +1 -1
  16. package/.internal/charts/stock/drawing/IconSeries.js +1 -1
  17. package/.internal/charts/stock/drawing/IconSeries.js.map +1 -1
  18. package/.internal/charts/stock/drawing/Measure.js +1 -1
  19. package/.internal/charts/stock/drawing/Measure.js.map +1 -1
  20. package/.internal/charts/stock/drawing/RectangleSeries.d.ts.map +1 -1
  21. package/.internal/charts/stock/drawing/RectangleSeries.js +3 -0
  22. package/.internal/charts/stock/drawing/RectangleSeries.js.map +1 -1
  23. package/.internal/charts/stock/indicators/AccelerationBands.d.ts +0 -3
  24. package/.internal/charts/stock/indicators/AccelerationBands.d.ts.map +1 -1
  25. package/.internal/charts/stock/indicators/AccelerationBands.js +16 -16
  26. package/.internal/charts/stock/indicators/AccelerationBands.js.map +1 -1
  27. package/.internal/charts/stock/indicators/AccumulationDistribution.d.ts.map +1 -1
  28. package/.internal/charts/stock/indicators/AccumulationDistribution.js +33 -31
  29. package/.internal/charts/stock/indicators/AccumulationDistribution.js.map +1 -1
  30. package/.internal/charts/stock/indicators/Indicator.d.ts.map +1 -1
  31. package/.internal/charts/stock/indicators/Indicator.js +139 -91
  32. package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
  33. package/.internal/charts/stock/toolbar/DateRangeSelector.d.ts.map +1 -1
  34. package/.internal/charts/stock/toolbar/DateRangeSelector.js +1 -1
  35. package/.internal/charts/stock/toolbar/DateRangeSelector.js.map +1 -1
  36. package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
  37. package/.internal/charts/xy/axes/Axis.js +6 -2
  38. package/.internal/charts/xy/axes/Axis.js.map +1 -1
  39. package/.internal/charts/xy/axes/CategoryAxis.d.ts.map +1 -1
  40. package/.internal/charts/xy/axes/CategoryAxis.js +1 -0
  41. package/.internal/charts/xy/axes/CategoryAxis.js.map +1 -1
  42. package/.internal/charts/xy/axes/DateAxis.d.ts.map +1 -1
  43. package/.internal/charts/xy/axes/DateAxis.js +8 -4
  44. package/.internal/charts/xy/axes/DateAxis.js.map +1 -1
  45. package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
  46. package/.internal/charts/xy/axes/GaplessDateAxis.js +1 -0
  47. package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
  48. package/.internal/charts/xy/series/LineSeries.js +2 -2
  49. package/.internal/charts/xy/series/LineSeries.js.map +1 -1
  50. package/.internal/charts/xy/series/XYSeries.d.ts.map +1 -1
  51. package/.internal/charts/xy/series/XYSeries.js +6 -20
  52. package/.internal/charts/xy/series/XYSeries.js.map +1 -1
  53. package/.internal/core/Registry.d.ts +7 -1
  54. package/.internal/core/Registry.d.ts.map +1 -1
  55. package/.internal/core/Registry.js +14 -3
  56. package/.internal/core/Registry.js.map +1 -1
  57. package/.internal/core/Root.d.ts.map +1 -1
  58. package/.internal/core/Root.js +8 -2
  59. package/.internal/core/Root.js.map +1 -1
  60. package/.internal/core/render/Component.d.ts.map +1 -1
  61. package/.internal/core/render/Component.js +3 -0
  62. package/.internal/core/render/Component.js.map +1 -1
  63. package/.internal/core/render/Container.d.ts.map +1 -1
  64. package/.internal/core/render/Container.js +5 -0
  65. package/.internal/core/render/Container.js.map +1 -1
  66. package/.internal/core/render/Series.d.ts +9 -0
  67. package/.internal/core/render/Series.d.ts.map +1 -1
  68. package/.internal/core/render/Series.js +77 -65
  69. package/.internal/core/render/Series.js.map +1 -1
  70. package/.internal/core/util/Color.js.map +1 -1
  71. package/.internal/core/util/Type.d.ts.map +1 -1
  72. package/.internal/core/util/Type.js +2 -1
  73. package/.internal/core/util/Type.js.map +1 -1
  74. package/.internal/plugins/exporting/ExportingMenu.d.ts +6 -0
  75. package/.internal/plugins/exporting/ExportingMenu.d.ts.map +1 -1
  76. package/.internal/plugins/exporting/ExportingMenu.js +2 -2
  77. package/.internal/plugins/exporting/ExportingMenu.js.map +1 -1
  78. package/CHANGELOG.md +33 -1
  79. package/examples/javascript/flow-arc-horizontal/package.json +1 -1
  80. package/examples/javascript/flow-arc-vertical/package.json +1 -1
  81. package/examples/javascript/flow-chord/package.json +1 -1
  82. package/examples/javascript/flow-chord-directed/package.json +1 -1
  83. package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
  84. package/examples/javascript/flow-sankey/package.json +1 -1
  85. package/examples/javascript/gantt/package.json +1 -1
  86. package/examples/javascript/gantt-multilevel/package.json +1 -1
  87. package/examples/javascript/gantt-simple/package.json +1 -1
  88. package/examples/javascript/gauge/package.json +1 -1
  89. package/examples/javascript/gauge-bands/package.json +1 -1
  90. package/examples/javascript/hierarchy-force-directed/package.json +1 -1
  91. package/examples/javascript/hierarchy-pack/package.json +1 -1
  92. package/examples/javascript/hierarchy-partition/package.json +1 -1
  93. package/examples/javascript/hierarchy-sunburst/package.json +1 -1
  94. package/examples/javascript/hierarchy-tree/package.json +1 -1
  95. package/examples/javascript/hierarchy-treemap/package.json +1 -1
  96. package/examples/javascript/hierarchy-voronoi-treemap/package.json +1 -1
  97. package/examples/javascript/jest/package.json +1 -1
  98. package/examples/javascript/json-pie/package.json +1 -1
  99. package/examples/javascript/json-xy/package.json +1 -1
  100. package/examples/javascript/map-animating-along-lines/package.json +1 -1
  101. package/examples/javascript/map-clustered-points/package.json +1 -1
  102. package/examples/javascript/map-day-and-night/package.json +1 -1
  103. package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
  104. package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
  105. package/examples/javascript/map-with-bubbles/package.json +1 -1
  106. package/examples/javascript/map-zoom-to-country/package.json +1 -1
  107. package/examples/javascript/misc-40-charts/package.json +1 -1
  108. package/examples/javascript/misc-microchart-grid/package.json +1 -1
  109. package/examples/javascript/pie-chart/package.json +1 -1
  110. package/examples/javascript/pie-donut-chart/package.json +1 -1
  111. package/examples/javascript/pie-variable-radius/package.json +1 -1
  112. package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
  113. package/examples/javascript/radar-heat-map/package.json +1 -1
  114. package/examples/javascript/radar-line/package.json +1 -1
  115. package/examples/javascript/radar-time-line/package.json +1 -1
  116. package/examples/javascript/sliced-funnel/package.json +1 -1
  117. package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
  118. package/examples/javascript/sliced-pyramid/package.json +1 -1
  119. package/examples/javascript/stock-chart/package.json +1 -1
  120. package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
  121. package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
  122. package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
  123. package/examples/javascript/stock-chart-intraday/package.json +1 -1
  124. package/examples/javascript/stock-chart-live/package.json +1 -1
  125. package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
  126. package/examples/javascript/timeline-horizontal-serpentine-chart/package.json +1 -1
  127. package/examples/javascript/timeline-linear-process-diagram/package.json +1 -1
  128. package/examples/javascript/timeline-serpentine-chart/package.json +1 -1
  129. package/examples/javascript/timeline-spiral-chart/package.json +1 -1
  130. package/examples/javascript/venn-diagram/package.json +1 -1
  131. package/examples/javascript/wordcloud-with-data/package.json +1 -1
  132. package/examples/javascript/wordcloud-with-text/package.json +1 -1
  133. package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
  134. package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  135. package/examples/javascript/xy-bubble/package.json +1 -1
  136. package/examples/javascript/xy-candlestick/package.json +1 -1
  137. package/examples/javascript/xy-clustered-column/package.json +1 -1
  138. package/examples/javascript/xy-column/package.json +1 -1
  139. package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
  140. package/examples/javascript/xy-data-grouping/package.json +1 -1
  141. package/examples/javascript/xy-draggable-range/package.json +1 -1
  142. package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  143. package/examples/javascript/xy-dumbbell plot/package.json +1 -1
  144. package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
  145. package/examples/javascript/xy-line/package.json +1 -1
  146. package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
  147. package/examples/javascript/xy-live-data/package.json +1 -1
  148. package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
  149. package/examples/javascript/xy-ohlc/package.json +1 -1
  150. package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
  151. package/examples/javascript/xy-smoothed-line/package.json +1 -1
  152. package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
  153. package/examples/javascript/xy-stacked-column/package.json +1 -1
  154. package/examples/javascript/xy-stacked-step/package.json +1 -1
  155. package/examples/javascript/xy-stock/package.json +1 -1
  156. package/examples/javascript/xy-stock-comparing/package.json +1 -1
  157. package/examples/typescript/flow-arc-horizontal/package.json +1 -1
  158. package/examples/typescript/flow-arc-vertical/package.json +1 -1
  159. package/examples/typescript/flow-chord/package.json +1 -1
  160. package/examples/typescript/flow-chord-directed/package.json +1 -1
  161. package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
  162. package/examples/typescript/flow-sankey/package.json +1 -1
  163. package/examples/typescript/gantt/package.json +1 -1
  164. package/examples/typescript/gantt-multilevel/package.json +1 -1
  165. package/examples/typescript/gantt-simple/package.json +1 -1
  166. package/examples/typescript/gauge/package.json +1 -1
  167. package/examples/typescript/gauge-bands/package.json +1 -1
  168. package/examples/typescript/hierarchy-force-directed/package.json +1 -1
  169. package/examples/typescript/hierarchy-pack/package.json +1 -1
  170. package/examples/typescript/hierarchy-partition/package.json +1 -1
  171. package/examples/typescript/hierarchy-sunburst/package.json +1 -1
  172. package/examples/typescript/hierarchy-tree/package.json +1 -1
  173. package/examples/typescript/hierarchy-treemap/package.json +1 -1
  174. package/examples/typescript/hierarchy-voronoi-treemap/package.json +1 -1
  175. package/examples/typescript/jest/package.json +1 -1
  176. package/examples/typescript/json-pie/package.json +1 -1
  177. package/examples/typescript/json-xy/package.json +1 -1
  178. package/examples/typescript/map-animating-along-lines/package.json +1 -1
  179. package/examples/typescript/map-clustered-points/package.json +1 -1
  180. package/examples/typescript/map-day-and-night/package.json +1 -1
  181. package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
  182. package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
  183. package/examples/typescript/map-with-bubbles/package.json +1 -1
  184. package/examples/typescript/map-zoom-to-country/package.json +1 -1
  185. package/examples/typescript/misc-40-charts/package.json +1 -1
  186. package/examples/typescript/misc-microchart-grid/package.json +1 -1
  187. package/examples/typescript/pie-chart/package.json +1 -1
  188. package/examples/typescript/pie-donut-chart/package.json +1 -1
  189. package/examples/typescript/pie-variable-radius/package.json +1 -1
  190. package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
  191. package/examples/typescript/radar-heat-map/package.json +1 -1
  192. package/examples/typescript/radar-line/package.json +1 -1
  193. package/examples/typescript/radar-time-line/package.json +1 -1
  194. package/examples/typescript/sliced-funnel/package.json +1 -1
  195. package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
  196. package/examples/typescript/sliced-pyramid/package.json +1 -1
  197. package/examples/typescript/stock-chart/package.json +1 -1
  198. package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
  199. package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
  200. package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
  201. package/examples/typescript/stock-chart-intraday/package.json +1 -1
  202. package/examples/typescript/stock-chart-live/package.json +1 -1
  203. package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
  204. package/examples/typescript/timeline-horizontal-serpentine-chart/package.json +1 -1
  205. package/examples/typescript/timeline-linear-process-diagram/package.json +1 -1
  206. package/examples/typescript/timeline-serpentine-chart/package.json +1 -1
  207. package/examples/typescript/timeline-spiral-chart/package.json +1 -1
  208. package/examples/typescript/venn-diagram/package.json +1 -1
  209. package/examples/typescript/wordcloud-with-data/package.json +1 -1
  210. package/examples/typescript/wordcloud-with-text/package.json +1 -1
  211. package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
  212. package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
  213. package/examples/typescript/xy-bubble/package.json +1 -1
  214. package/examples/typescript/xy-candlestick/package.json +1 -1
  215. package/examples/typescript/xy-clustered-column/package.json +1 -1
  216. package/examples/typescript/xy-column/package.json +1 -1
  217. package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
  218. package/examples/typescript/xy-data-grouping/package.json +1 -1
  219. package/examples/typescript/xy-draggable-range/package.json +1 -1
  220. package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
  221. package/examples/typescript/xy-dumbbell plot/package.json +1 -1
  222. package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
  223. package/examples/typescript/xy-line/package.json +1 -1
  224. package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
  225. package/examples/typescript/xy-live-data/package.json +1 -1
  226. package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
  227. package/examples/typescript/xy-ohlc/package.json +1 -1
  228. package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
  229. package/examples/typescript/xy-smoothed-line/package.json +1 -1
  230. package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
  231. package/examples/typescript/xy-stacked-column/package.json +1 -1
  232. package/examples/typescript/xy-stacked-step/package.json +1 -1
  233. package/examples/typescript/xy-stock/package.json +1 -1
  234. package/examples/typescript/xy-stock-comparing/package.json +1 -1
  235. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"EllipseSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/EllipseSeries.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 { DrawingSeries, IDrawingSeriesSettings, IDrawingSeriesPrivate, IDrawingSeriesDataItem } from \"./DrawingSeries\";\r\nimport { Ellipse } from \"../../../core/render/Ellipse\";\r\nimport { ListTemplate } from \"../../../core/util/List\";\r\nimport { Template } from \"../../../core/util/Template\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $object from \"../../../core/util/Object\";\r\n\r\nexport interface IEllipseSeriesDataItem extends IDrawingSeriesDataItem {\r\n}\r\n\r\nexport interface IEllipseSeriesSettings extends IDrawingSeriesSettings {\r\n}\r\n\r\nexport interface IEllipseSeriesPrivate extends IDrawingSeriesPrivate {\r\n}\r\n\r\nexport class EllipseSeries extends DrawingSeries {\r\n\tpublic static className: string = \"EllipseSeries\";\r\n\tpublic static classNames: Array<string> = DrawingSeries.classNames.concat([EllipseSeries.className]);\r\n\r\n\tdeclare public _settings: IEllipseSeriesSettings;\r\n\tdeclare public _privateSettings: IEllipseSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IEllipseSeriesDataItem;\r\n\r\n\tprotected _ellipses: Array<Ellipse> = [];\r\n\r\n\tprotected _tag = \"ellipse\";\r\n\tprotected _clickPX: number = 0;\r\n\tprotected _clickVY: number = 0;\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic makeEllipse(): Ellipse {\r\n\t\tconst ellipse = this.ellipses.make();\r\n\t\tthis.mainContainer.children.push(ellipse);\r\n\t\tthis.ellipses.push(ellipse);\r\n\t\treturn ellipse;\r\n\t}\r\n\r\n\tpublic readonly ellipses: ListTemplate<Ellipse> = this.addDisposer(new ListTemplate(\r\n\t\tTemplate.new({ radiusX: 0, radiusY: 0 }),\r\n\t\t() => Ellipse._new(this._root, { radiusX: 0, radiusY: 0, templateField: \"settings\" }, [this.ellipses.template])\r\n\t));\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tthis.setPrivate(\"allowChangeSnap\", false);\r\n\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t\tthis.fills.template.set(\"visible\", false);\r\n\r\n\t\tconst ellipseTemplate = this.ellipses.template;\r\n\t\tellipseTemplate.events.on(\"pointerover\", (e) => {\r\n\t\t\tthis._showSegmentBullets(e.target.get(\"userData\"));\r\n\t\t})\r\n\r\n\t\t/*\r\n\t\tellipseTemplate.events.on(\"pointerout\", () => {\r\n\t\t\tthis._hideAllBullets();\r\n\t\t})\r\n\t\t*/\r\n\r\n\t\tellipseTemplate.events.on(\"dragstart\", (e) => {\r\n\t\t\tthis.startDragItem(e, e.target.get(\"userData\"));\r\n\t\t})\r\n\r\n\t\tellipseTemplate.events.on(\"dragstop\", (e) => {\r\n\t\t\tthis.stopDragItem(e, e.target.get(\"userData\"));\r\n\t\t})\r\n\r\n\t\tellipseTemplate.events.on(\"click\", (e) => {\r\n\t\t\tconst index = e.target.get(\"userData\");\r\n\t\t\tif (this._erasingEnabled) {\r\n\t\t\t\tthis._disposeIndex(index);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tthis._selectDrawing(index, (e.originalEvent as any).ctrlKey);\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _applySettings(index: number, settings: { [index: string]: any }) {\r\n\t\tsuper._applySettings(index, settings);\r\n\t\tlet template: Template<any>;\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tif (dataContext.index == index) {\r\n\t\t\t\tif (dataContext.settings) {\r\n\t\t\t\t\ttemplate = dataContext.settings;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tconst ellipse = this._getSprite(this.ellipses, index);\r\n\t\tif (ellipse) {\r\n\t\t\tconst defaultState = ellipse.states.lookup(\"default\")!;\r\n\t\t\t$object.each(settings, (key, value) => {\r\n\t\t\t\tellipse.set(key as any, value);\r\n\t\t\t\tdefaultState.set(key as any, value);\r\n\t\t\t\tif (template) {\r\n\t\t\t\t\ttemplate.set(key, value);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleFillDragStop(event: ISpritePointerEvent, index: number) {\r\n\t\tsuper._handleFillDragStop(event, index);\r\n\r\n\t\tconst items = this._di[index];\r\n\t\tconst bDI = items[\"b\"];\r\n\t\tconst tDI = items[\"t\"];\r\n\t\tconst rDI = items[\"r\"];\r\n\t\tconst lDI = items[\"l\"];\r\n\r\n\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\tif (bDI && tDI && rDI && lDI) {\r\n\t\t\tconst positionL = xAxis.valueToPosition(lDI.get(\"valueX\", 0));\r\n\t\t\tconst positionR = xAxis.valueToPosition(rDI.get(\"valueX\", 0));\r\n\r\n\t\t\tlet mx = this._getXValue(xAxis.positionToValue(positionL + (positionR - positionL) / 2));\r\n\t\t\tthis._setContext(tDI, \"valueX\", mx);\r\n\t\t\tthis._setContext(bDI, \"valueX\", mx);\r\n\r\n\t\t\tthis._setXLocation(tDI, mx);\r\n\t\t\tthis._setXLocation(bDI, mx);\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tprotected _handleBulletDragged(event: ISpritePointerEvent) {\r\n\t\tconst dataItem = event.target.dataItem as DataItem<IEllipseSeriesDataItem>;\r\n\r\n\t\tconst valueXReal = dataItem.get(\"valueX\");\r\n\t\tconst locationXReal = dataItem.get(\"locationX\");\r\n\t\tconst valueYReal = dataItem.get(\"valueY\");\r\n\r\n\t\tsuper._handleBulletDragged(event);\r\n\r\n\t\tconst movePoint = this._movePointerPoint;\r\n\t\tif (dataItem && movePoint) {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tconst corner = dataContext.corner;\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\tconst vx = \"valueX\"\r\n\t\t\tconst vy = \"valueY\"\r\n\t\t\tconst vwy = \"valueYWorking\";\r\n\r\n\t\t\tconst items = this._di[index];\r\n\t\t\tconst bDI = items[\"b\"];\r\n\t\t\tconst tDI = items[\"t\"];\r\n\t\t\tconst rDI = items[\"r\"];\r\n\t\t\tconst lDI = items[\"l\"];\r\n\r\n\r\n\t\t\tif (bDI && tDI && rDI && lDI) {\r\n\t\t\t\tif (corner == \"b\") {\r\n\t\t\t\t\tconst valueY0 = tDI.get(vwy, 0)\r\n\t\t\t\t\tthis._setContext(bDI, vy, valueY, true);\r\n\r\n\t\t\t\t\tlet my = valueY0 + (valueY - valueY0) / 2;\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(lDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(bDI, vx, valueXReal);\r\n\r\n\t\t\t\t\tbDI.set(\"locationX\", locationXReal);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (corner == \"t\") {\r\n\t\t\t\t\tconst valueY0 = bDI.get(vwy, 0)\r\n\r\n\t\t\t\t\tthis._setContext(tDI, vy, valueY, true);\r\n\r\n\t\t\t\t\tlet my = valueY0 + (valueY - valueY0) / 2;\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(lDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(tDI, vx, valueXReal);\r\n\r\n\t\t\t\t\ttDI.set(\"locationX\", locationXReal);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (corner == \"l\") {\r\n\t\t\t\t\tconst valueX0 = rDI.get(vx, 0)\r\n\t\t\t\t\tconst positionX0 = xAxis.valueToPosition(valueX0);\r\n\t\t\t\t\tconst positionX = xAxis.valueToPosition(valueX);\r\n\r\n\t\t\t\t\tthis._setContext(lDI, vx, valueX);\r\n\t\t\t\t\tthis._setXLocation(lDI, valueX);\r\n\r\n\t\t\t\t\tlet mpos = positionX0 + (positionX - positionX0) / 2;\r\n\t\t\t\t\tlet mx = this._getXValue(xAxis.positionToValue(mpos));\r\n\t\t\t\t\tthis._setContext(tDI, vx, mx);\r\n\t\t\t\t\tthis._setContext(bDI, vx, mx);\r\n\r\n\t\t\t\t\tthis._setXLocation(tDI, mx);\r\n\t\t\t\t\tthis._setXLocation(bDI, mx);\r\n\r\n\t\t\t\t\tthis._setContext(lDI, vy, valueYReal, true);\r\n\t\t\t\t}\r\n\t\t\t\tif (corner == \"r\") {\r\n\t\t\t\t\tconst valueX0 = lDI.get(vx, 0)\r\n\t\t\t\t\tconst positionX0 = xAxis.valueToPosition(valueX0);\r\n\t\t\t\t\tconst positionX = xAxis.valueToPosition(valueX);\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vx, valueX);\r\n\t\t\t\t\tthis._setXLocation(rDI, valueX);\r\n\r\n\t\t\t\t\tlet mpos = positionX0 + (positionX - positionX0) / 2;\r\n\t\t\t\t\tlet mx = this._getXValue(xAxis.positionToValue(mpos));\r\n\r\n\t\t\t\t\tthis._setContext(tDI, vx, mx);\r\n\t\t\t\t\tthis._setContext(bDI, vx, mx);\r\n\r\n\t\t\t\t\tthis._setXLocation(tDI, mx);\r\n\t\t\t\t\tthis._setXLocation(bDI, mx);\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vy, valueYReal, true);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tthis._positionBullets(dataItem);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tsuper._handlePointerClick(event);\r\n\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tif (!this._isDrawing) {\r\n\t\t\t\t\tif (this.unselectAllDrawings() == 0) {\r\n\t\t\t\t\t\tthis._increaseIndex();\r\n\t\t\t\t\t\tthis.isDrawing(true);\r\n\t\t\t\t\t\tthis._hideResizer(event.target);\r\n\t\t\t\t\t\tthis.bulletsContainer.show();\r\n\t\t\t\t\t\tthis._addPoints(event, this._index);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tthis.isDrawing(false);\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 _createElements(index: number, dataItem?: DataItem<IDrawingSeriesDataItem>) {\r\n\t\tif (!this._ellipses[index]) {\r\n\t\t\tconst ellipse = this.makeEllipse();\r\n\t\t\tellipse._setDataItem(dataItem);\r\n\t\t\tthis._ellipses[index] = ellipse;\r\n\t\t\tellipse.setAll({ userData: index });\r\n\t\t\t(dataItem?.dataContext as any).sprite = ellipse;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerMove(event: ISpritePointerEvent) {\r\n\t\tsuper._handlePointerMove(event);\r\n\t\tif (this._isDrawing) {\r\n\t\t\tconst movePoint = this._movePointerPoint;\r\n\r\n\t\t\tif (movePoint) {\r\n\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\t\tconst index = this._index;\r\n\t\t\t\tconst dataItems = this._di[index];\r\n\r\n\t\t\t\tif (dataItems) {\r\n\t\t\t\t\tconst diT = this._di[index][\"t\"];\r\n\t\t\t\t\tconst diB = this._di[index][\"b\"];\r\n\t\t\t\t\tconst diL = this._di[index][\"l\"];\r\n\t\t\t\t\tconst diR = this._di[index][\"r\"];\r\n\r\n\t\t\t\t\tconst valueY0 = this._clickVY;\r\n\r\n\t\t\t\t\tconst positionX = xAxis.coordinateToPosition(movePoint.x);\r\n\t\t\t\t\tconst positionX0 = this._clickPX;\r\n\r\n\t\t\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\t\t\tif (diB && diL && diR && diT) {\r\n\t\t\t\t\t\tthis._setContext(diB, \"valueY\", valueY, true);\r\n\r\n\t\t\t\t\t\tconst my = valueY0 + (valueY - valueY0) / 2;\r\n\t\t\t\t\t\tconst mx = this._getXValue(xAxis.positionToValue(positionX0 + (positionX - positionX0) / 2))\r\n\r\n\t\t\t\t\t\tthis._setContext(diR, \"valueY\", my, true);\r\n\t\t\t\t\t\tthis._setContext(diL, \"valueY\", my, true);\r\n\r\n\t\t\t\t\t\tthis._setContext(diB, \"valueX\", mx);\r\n\t\t\t\t\t\tthis._setContext(diT, \"valueX\", mx);\r\n\r\n\t\t\t\t\t\tthis._setXLocation(diB, mx);\r\n\t\t\t\t\t\tthis._setXLocation(diT, mx);\r\n\r\n\t\t\t\t\t\tthis._setContext(diR, \"valueX\", valueX);\r\n\t\t\t\t\t\tthis._setXLocation(diR, valueX);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoints(event: ISpritePointerEvent, index: number) {\r\n\t\tconst chart = this.chart;\r\n\r\n\t\tif (chart) {\r\n\t\t\tthis.data.push({ settings: this._getEllipseTemplate(), stroke: this._getStrokeTemplate(), index: index, corner: \"e\", drawingId: this._drawingId });\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\tconst point = chart.plotContainer.toLocal(event.point);\r\n\t\t\tthis._clickPX = xAxis.coordinateToPosition(point.x);\r\n\r\n\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(this._clickPX));\r\n\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(point.y)), valueX);\r\n\r\n\t\t\tthis._clickVY = valueY;\r\n\r\n\t\t\tthis._di[index] = {};\r\n\r\n\t\t\tthis._addPoint(valueX, valueY, \"l\", index);\r\n\t\t\tthis._addPoint(valueX, valueY, \"t\", index);\r\n\t\t\tthis._addPoint(valueX, valueY, \"b\", index);\r\n\t\t\tthis._addPoint(valueX, valueY, \"r\", index);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoint(valueX: number, valueY: number, corner: string, index: number) {\r\n\t\tthis.data.push({ valueY: valueY, valueX: valueX, index: index, corner: corner, drawingId: this._drawingId });\r\n\t\tconst len = this.dataItems.length;\r\n\t\tconst dataItem = this.dataItems[len - 1];\r\n\t\tif (dataItem) {\r\n\t\t\tthis._setXLocation(dataItem, valueX);\r\n\t\t\tthis.setPrivate(\"startIndex\", 0);\r\n\t\t\tthis.setPrivate(\"endIndex\", len);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tlet index = 0;\r\n\t\t$array.each(this._di, (dataItems) => {\r\n\t\t\tif (dataItems) {\r\n\t\t\t\tconst diT = dataItems[\"t\"];\r\n\t\t\t\tconst diB = dataItems[\"b\"];\r\n\t\t\t\tconst diL = dataItems[\"l\"];\r\n\t\t\t\tconst diR = dataItems[\"r\"];\r\n\t\t\t\tif (diT && diB && diL && diR) {\r\n\t\t\t\t\tconst pt = diT.get(\"point\");\r\n\t\t\t\t\tconst pb = diB.get(\"point\");\r\n\t\t\t\t\tconst pr = diR.get(\"point\");\r\n\t\t\t\t\tconst pl = diL.get(\"point\");\r\n\r\n\t\t\t\t\tif (pt && pb && pr && pl) {\r\n\t\t\t\t\t\tconst rx = (pr.x - pl.x) / 2;\r\n\t\t\t\t\t\tconst ry = (pb.y - pt.y) / 2;\r\n\t\t\t\t\t\tconst x = pl.x + rx;\r\n\t\t\t\t\t\tconst y = pt.y + ry;\r\n\t\t\t\t\t\tconst ellipse = this._ellipses[index];\r\n\t\t\t\t\t\tif (ellipse) {\r\n\t\t\t\t\t\t\tellipse.setAll({ x: x, y: y, radiusX: rx, radiusY: ry });\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\tindex++;\r\n\t\t})\r\n\t}\r\n\r\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\r\n\t\tsuper.disposeDataItem(dataItem);\r\n\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\tif (dataContext) {\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tconst ellipse = this._ellipses[index];\r\n\t\t\tif (ellipse) {\r\n\t\t\t\tdelete (this._ellipses[index]);\r\n\t\t\t\tthis.ellipses.removeValue(ellipse);\r\n\t\t\t\tellipse.dispose();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _getEllipseTemplate(): Template<any> {\r\n\t\tconst template = this._getStrokeTemplate();\r\n\r\n\t\tconst fillColor = this.get(\"fillColor\");\r\n\t\tif (fillColor != null) {\r\n\t\t\ttemplate.set(\"fill\", fillColor);\r\n\t\t}\r\n\r\n\t\tconst fillOpacity = this.get(\"fillOpacity\");\r\n\t\tif (fillOpacity != null) {\r\n\t\t\ttemplate.set(\"fillOpacity\", fillOpacity);\r\n\t\t}\r\n\r\n\t\treturn template;\r\n\t}\r\n\r\n\tpublic setInteractive(value: boolean) {\r\n\t\tsuper.setInteractive(value);\r\n\t\tthis.ellipses.template.set(\"forceInactive\", !value);\r\n\t}\r\n\r\n\tpublic enableDrawingSelection(value: boolean) {\r\n\t\tsuper.enableDrawingSelection(value);\r\n\t\tthis.ellipses.template.set(\"forceInactive\", !value);\r\n\t}\r\n}\r\n"]}
1
+ {"version":3,"file":"EllipseSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/EllipseSeries.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 { DrawingSeries, IDrawingSeriesSettings, IDrawingSeriesPrivate, IDrawingSeriesDataItem } from \"./DrawingSeries\";\r\nimport { Ellipse } from \"../../../core/render/Ellipse\";\r\nimport { ListTemplate } from \"../../../core/util/List\";\r\nimport { Template } from \"../../../core/util/Template\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $object from \"../../../core/util/Object\";\r\n\r\nexport interface IEllipseSeriesDataItem extends IDrawingSeriesDataItem {\r\n}\r\n\r\nexport interface IEllipseSeriesSettings extends IDrawingSeriesSettings {\r\n}\r\n\r\nexport interface IEllipseSeriesPrivate extends IDrawingSeriesPrivate {\r\n}\r\n\r\nexport class EllipseSeries extends DrawingSeries {\r\n\tpublic static className: string = \"EllipseSeries\";\r\n\tpublic static classNames: Array<string> = DrawingSeries.classNames.concat([EllipseSeries.className]);\r\n\r\n\tdeclare public _settings: IEllipseSeriesSettings;\r\n\tdeclare public _privateSettings: IEllipseSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IEllipseSeriesDataItem;\r\n\r\n\tprotected _ellipses: Array<Ellipse> = [];\r\n\r\n\tprotected _tag = \"ellipse\";\r\n\tprotected _clickPX: number = 0;\r\n\tprotected _clickVY: number = 0;\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic makeEllipse(): Ellipse {\r\n\t\tconst ellipse = this.ellipses.make();\r\n\t\tthis.mainContainer.children.push(ellipse);\r\n\t\tthis.ellipses.push(ellipse);\r\n\t\treturn ellipse;\r\n\t}\r\n\r\n\tpublic readonly ellipses: ListTemplate<Ellipse> = this.addDisposer(new ListTemplate(\r\n\t\tTemplate.new({ radiusX: 0, radiusY: 0 }),\r\n\t\t() => Ellipse._new(this._root, { radiusX: 0, radiusY: 0, templateField: \"settings\" }, [this.ellipses.template])\r\n\t));\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tthis.setPrivate(\"allowChangeSnap\", false);\r\n\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t\tthis.fills.template.set(\"visible\", false);\r\n\r\n\t\tconst ellipseTemplate = this.ellipses.template;\r\n\t\tellipseTemplate.events.on(\"pointerover\", (e) => {\r\n\t\t\tthis._showSegmentBullets(e.target.get(\"userData\"));\r\n\t\t})\r\n\r\n\t\t/*\r\n\t\tellipseTemplate.events.on(\"pointerout\", () => {\r\n\t\t\tthis._hideAllBullets();\r\n\t\t})\r\n\t\t*/\r\n\r\n\t\tellipseTemplate.events.on(\"dragstart\", (e) => {\r\n\t\t\tthis.startDragItem(e, e.target.get(\"userData\"));\r\n\t\t})\r\n\r\n\t\tellipseTemplate.events.on(\"dragstop\", (e) => {\r\n\t\t\tthis.stopDragItem(e, e.target.get(\"userData\"));\r\n\t\t})\r\n\r\n\t\tellipseTemplate.events.on(\"click\", (e) => {\r\n\t\t\tconst index = e.target.get(\"userData\");\r\n\t\t\tif (this._erasingEnabled) {\r\n\t\t\t\tthis._disposeIndex(index);\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\tthis._selectDrawing(index, (e.originalEvent as any).ctrlKey);\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _applySettings(index: number, settings: { [index: string]: any }) {\r\n\t\tsuper._applySettings(index, settings);\r\n\t\tlet template: Template<any>;\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tif (dataContext.index == index) {\r\n\t\t\t\tif (dataContext.settings) {\r\n\t\t\t\t\ttemplate = dataContext.settings;\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\r\n\t\tconst ellipse = this._getSprite(this.ellipses, index);\r\n\t\tif (ellipse) {\r\n\t\t\tconst defaultState = ellipse.states.lookup(\"default\")!;\r\n\t\t\t$object.each(settings, (key, value) => {\r\n\t\t\t\tellipse.set(key as any, value);\r\n\t\t\t\tdefaultState.set(key as any, value);\r\n\t\t\t\tif (template) {\r\n\t\t\t\t\ttemplate.set(key, value);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleFillDragStop(event: ISpritePointerEvent, index: number) {\r\n\t\tsuper._handleFillDragStop(event, index);\r\n\r\n\t\tconst items = this._di[index];\r\n\t\tconst bDI = items[\"b\"];\r\n\t\tconst tDI = items[\"t\"];\r\n\t\tconst rDI = items[\"r\"];\r\n\t\tconst lDI = items[\"l\"];\r\n\r\n\t\tconst xAxis = this.get(\"xAxis\");\r\n\r\n\t\tif (bDI && tDI && rDI && lDI) {\r\n\t\t\tconst positionL = xAxis.valueToPosition(lDI.get(\"valueX\", 0));\r\n\t\t\tconst positionR = xAxis.valueToPosition(rDI.get(\"valueX\", 0));\r\n\r\n\t\t\tlet mx = this._getXValue(xAxis.positionToValue(positionL + (positionR - positionL) / 2));\r\n\t\t\tthis._setContext(tDI, \"valueX\", mx);\r\n\t\t\tthis._setContext(bDI, \"valueX\", mx);\r\n\r\n\t\t\tthis._setXLocation(tDI, mx);\r\n\t\t\tthis._setXLocation(bDI, mx);\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tprotected _handleBulletDragged(event: ISpritePointerEvent) {\r\n\t\tconst dataItem = event.target.dataItem as DataItem<IEllipseSeriesDataItem>;\r\n\r\n\t\tconst valueXReal = dataItem.get(\"valueX\");\r\n\t\tconst locationXReal = dataItem.get(\"locationX\");\r\n\t\tconst valueYReal = dataItem.get(\"valueY\");\r\n\r\n\t\tsuper._handleBulletDragged(event);\r\n\r\n\t\tconst movePoint = this._movePointerPoint;\r\n\t\tif (dataItem && movePoint) {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tconst corner = dataContext.corner;\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\tconst vx = \"valueX\"\r\n\t\t\tconst vy = \"valueY\"\r\n\t\t\tconst vwy = \"valueYWorking\";\r\n\r\n\t\t\tconst items = this._di[index];\r\n\t\t\tconst bDI = items[\"b\"];\r\n\t\t\tconst tDI = items[\"t\"];\r\n\t\t\tconst rDI = items[\"r\"];\r\n\t\t\tconst lDI = items[\"l\"];\r\n\r\n\r\n\t\t\tif (bDI && tDI && rDI && lDI) {\r\n\t\t\t\tif (corner == \"b\") {\r\n\t\t\t\t\tconst valueY0 = tDI.get(vwy, 0)\r\n\t\t\t\t\tthis._setContext(bDI, vy, valueY, true);\r\n\r\n\t\t\t\t\tlet my = valueY0 + (valueY - valueY0) / 2;\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(lDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(bDI, vx, valueXReal);\r\n\r\n\t\t\t\t\tbDI.set(\"locationX\", locationXReal);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (corner == \"t\") {\r\n\t\t\t\t\tconst valueY0 = bDI.get(vwy, 0)\r\n\r\n\t\t\t\t\tthis._setContext(tDI, vy, valueY, true);\r\n\r\n\t\t\t\t\tlet my = valueY0 + (valueY - valueY0) / 2;\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(lDI, vy, my, true);\r\n\t\t\t\t\tthis._setContext(tDI, vx, valueXReal);\r\n\r\n\t\t\t\t\ttDI.set(\"locationX\", locationXReal);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (corner == \"l\") {\r\n\t\t\t\t\tconst valueX0 = rDI.get(vx, 0)\r\n\t\t\t\t\tconst positionX0 = xAxis.valueToPosition(valueX0);\r\n\t\t\t\t\tconst positionX = xAxis.valueToPosition(valueX);\r\n\r\n\t\t\t\t\tthis._setContext(lDI, vx, valueX);\r\n\t\t\t\t\tthis._setXLocation(lDI, valueX);\r\n\r\n\t\t\t\t\tlet mpos = positionX0 + (positionX - positionX0) / 2;\r\n\t\t\t\t\tlet mx = this._getXValue(xAxis.positionToValue(mpos));\r\n\t\t\t\t\tthis._setContext(tDI, vx, mx);\r\n\t\t\t\t\tthis._setContext(bDI, vx, mx);\r\n\r\n\t\t\t\t\tthis._setXLocation(tDI, mx);\r\n\t\t\t\t\tthis._setXLocation(bDI, mx);\r\n\r\n\t\t\t\t\tthis._setContext(lDI, vy, valueYReal, true);\r\n\t\t\t\t}\r\n\t\t\t\tif (corner == \"r\") {\r\n\t\t\t\t\tconst valueX0 = lDI.get(vx, 0)\r\n\t\t\t\t\tconst positionX0 = xAxis.valueToPosition(valueX0);\r\n\t\t\t\t\tconst positionX = xAxis.valueToPosition(valueX);\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vx, valueX);\r\n\t\t\t\t\tthis._setXLocation(rDI, valueX);\r\n\r\n\t\t\t\t\tlet mpos = positionX0 + (positionX - positionX0) / 2;\r\n\t\t\t\t\tlet mx = this._getXValue(xAxis.positionToValue(mpos));\r\n\r\n\t\t\t\t\tthis._setContext(tDI, vx, mx);\r\n\t\t\t\t\tthis._setContext(bDI, vx, mx);\r\n\r\n\t\t\t\t\tthis._setXLocation(tDI, mx);\r\n\t\t\t\t\tthis._setXLocation(bDI, mx);\r\n\r\n\t\t\t\t\tthis._setContext(rDI, vy, valueYReal, true);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\r\n\t\t\tthis._positionBullets(dataItem);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (this._drawingEnabled) {\r\n\t\t\tsuper._handlePointerClick(event);\r\n\r\n\t\t\tif (!this._isDragging) {\r\n\t\t\t\tif (!this._isDrawing) {\r\n\t\t\t\t\tif (this.unselectAllDrawings() == 0) {\r\n\t\t\t\t\t\tthis._increaseIndex();\r\n\t\t\t\t\t\tthis.isDrawing(true);\r\n\t\t\t\t\t\tthis._hideResizer(event.target);\r\n\t\t\t\t\t\tthis.bulletsContainer.show();\r\n\t\t\t\t\t\tthis._addPoints(event, this._index);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tthis.isDrawing(false);\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 _createElements(index: number, dataItem?: DataItem<IDrawingSeriesDataItem>) {\r\n\t\tif (!this._ellipses[index]) {\r\n\t\t\tconst ellipse = this.makeEllipse();\r\n\t\t\tellipse._setDataItem(dataItem);\r\n\t\t\tthis._ellipses[index] = ellipse;\r\n\t\t\tellipse.setAll({ userData: index });\r\n\t\t\t(dataItem?.dataContext as any).sprite = ellipse;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handlePointerMove(event: ISpritePointerEvent) {\r\n\t\tsuper._handlePointerMove(event);\r\n\t\tif (this._isDrawing) {\r\n\t\t\tconst movePoint = this._movePointerPoint;\r\n\r\n\t\t\tif (movePoint) {\r\n\r\n\t\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\t\tconst index = this._index;\r\n\t\t\t\tconst dataItems = this._di[index];\r\n\r\n\t\t\t\tif (dataItems) {\r\n\t\t\t\t\tconst diT = this._di[index][\"t\"];\r\n\t\t\t\t\tconst diB = this._di[index][\"b\"];\r\n\t\t\t\t\tconst diL = this._di[index][\"l\"];\r\n\t\t\t\t\tconst diR = this._di[index][\"r\"];\r\n\r\n\t\t\t\t\tconst valueY0 = this._clickVY;\r\n\r\n\t\t\t\t\tconst positionX = xAxis.coordinateToPosition(movePoint.x);\r\n\t\t\t\t\tconst positionX0 = this._clickPX;\r\n\r\n\t\t\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(xAxis.coordinateToPosition(movePoint.x)));\r\n\t\t\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(movePoint.y)), valueX);\r\n\r\n\t\t\t\t\tif (diB && diL && diR && diT) {\r\n\t\t\t\t\t\tthis._setContext(diB, \"valueY\", valueY, true);\r\n\r\n\t\t\t\t\t\tconst my = valueY0 + (valueY - valueY0) / 2;\r\n\t\t\t\t\t\tconst mx = this._getXValue(xAxis.positionToValue(positionX0 + (positionX - positionX0) / 2))\r\n\r\n\t\t\t\t\t\tthis._setContext(diR, \"valueY\", my, true);\r\n\t\t\t\t\t\tthis._setContext(diL, \"valueY\", my, true);\r\n\r\n\t\t\t\t\t\tthis._setContext(diB, \"valueX\", mx);\r\n\t\t\t\t\t\tthis._setContext(diT, \"valueX\", mx);\r\n\r\n\t\t\t\t\t\tthis._setXLocation(diB, mx);\r\n\t\t\t\t\t\tthis._setXLocation(diT, mx);\r\n\r\n\t\t\t\t\t\tthis._setContext(diR, \"valueX\", valueX);\r\n\t\t\t\t\t\tthis._setXLocation(diR, valueX);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoints(event: ISpritePointerEvent, index: number) {\r\n\t\tconst chart = this.chart;\r\n\r\n\t\tif (chart) {\r\n\t\t\tthis.data.push({ settings: this._getEllipseTemplate(), stroke: this._getStrokeTemplate(), index: index, corner: \"e\", drawingId: this._drawingId });\r\n\r\n\t\t\tconst xAxis = this.get(\"xAxis\");\r\n\t\t\tconst yAxis = this.get(\"yAxis\");\r\n\r\n\t\t\tconst point = chart.plotContainer.toLocal(event.point);\r\n\t\t\tthis._clickPX = xAxis.coordinateToPosition(point.x);\r\n\r\n\t\t\tconst valueX = this._getXValue(xAxis.positionToValue(this._clickPX));\r\n\t\t\tconst valueY = this._getYValue(yAxis.positionToValue(yAxis.coordinateToPosition(point.y)), valueX);\r\n\r\n\t\t\tthis._clickVY = valueY;\r\n\r\n\t\t\tthis._di[index] = {};\r\n\r\n\t\t\tthis._addPoint(valueX, valueY, \"l\", index);\r\n\t\t\tthis._addPoint(valueX, valueY, \"t\", index);\r\n\t\t\tthis._addPoint(valueX, valueY, \"b\", index);\r\n\t\t\tthis._addPoint(valueX, valueY, \"r\", index);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _addPoint(valueX: number, valueY: number, corner: string, index: number) {\r\n\t\tthis.data.push({ valueY: valueY, valueX: valueX, index: index, corner: corner, drawingId: this._drawingId });\r\n\t\tconst len = this.dataItems.length;\r\n\t\tconst dataItem = this.dataItems[len - 1];\r\n\t\tif (dataItem) {\r\n\t\t\tthis._setXLocation(dataItem, valueX);\r\n\t\t\tthis.setPrivate(\"startIndex\", 0);\r\n\t\t\tthis.setPrivate(\"endIndex\", len);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tif(this._isMoving){\r\n\t\t\treturn;\r\n\t\t}\r\n\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tlet index = 0;\r\n\t\t$array.each(this._di, (dataItems) => {\r\n\t\t\tif (dataItems) {\r\n\t\t\t\tconst diT = dataItems[\"t\"];\r\n\t\t\t\tconst diB = dataItems[\"b\"];\r\n\t\t\t\tconst diL = dataItems[\"l\"];\r\n\t\t\t\tconst diR = dataItems[\"r\"];\r\n\t\t\t\tif (diT && diB && diL && diR) {\r\n\t\t\t\t\tconst pt = diT.get(\"point\");\r\n\t\t\t\t\tconst pb = diB.get(\"point\");\r\n\t\t\t\t\tconst pr = diR.get(\"point\");\r\n\t\t\t\t\tconst pl = diL.get(\"point\");\r\n\r\n\t\t\t\t\tif (pt && pb && pr && pl) {\r\n\t\t\t\t\t\tconst rx = (pr.x - pl.x) / 2;\r\n\t\t\t\t\t\tconst ry = (pb.y - pt.y) / 2;\r\n\t\t\t\t\t\tconst x = pl.x + rx;\r\n\t\t\t\t\t\tconst y = pt.y + ry;\r\n\t\t\t\t\t\tconst ellipse = this._ellipses[index];\r\n\t\t\t\t\t\tif (ellipse) {\r\n\t\t\t\t\t\t\tellipse.setAll({ x: x, y: y, radiusX: rx, radiusY: ry });\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\tindex++;\r\n\t\t})\r\n\t}\r\n\r\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\r\n\t\tsuper.disposeDataItem(dataItem);\r\n\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\tif (dataContext) {\r\n\t\t\tconst index = dataContext.index;\r\n\t\t\tconst ellipse = this._ellipses[index];\r\n\t\t\tif (ellipse) {\r\n\t\t\t\tdelete (this._ellipses[index]);\r\n\t\t\t\tthis.ellipses.removeValue(ellipse);\r\n\t\t\t\tellipse.dispose();\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _getEllipseTemplate(): Template<any> {\r\n\t\tconst template = this._getStrokeTemplate();\r\n\r\n\t\tconst fillColor = this.get(\"fillColor\");\r\n\t\tif (fillColor != null) {\r\n\t\t\ttemplate.set(\"fill\", fillColor);\r\n\t\t}\r\n\r\n\t\tconst fillOpacity = this.get(\"fillOpacity\");\r\n\t\tif (fillOpacity != null) {\r\n\t\t\ttemplate.set(\"fillOpacity\", fillOpacity);\r\n\t\t}\r\n\r\n\t\treturn template;\r\n\t}\r\n\r\n\tpublic setInteractive(value: boolean) {\r\n\t\tsuper.setInteractive(value);\r\n\t\tthis.ellipses.template.set(\"forceInactive\", !value);\r\n\t}\r\n\r\n\tpublic enableDrawingSelection(value: boolean) {\r\n\t\tsuper.enableDrawingSelection(value);\r\n\t\tthis.ellipses.template.set(\"forceInactive\", !value);\r\n\t}\r\n}\r\n"]}
@@ -76,9 +76,9 @@ export class IconSeries extends PolylineSeries {
76
76
  super._handlePointerClick(event);
77
77
  const dataObject = this.data.getIndex(this.data.length - 1);
78
78
  dataObject.settings = this._getIconTemplate();
79
- this._increaseIndex();
80
79
  this._di[this._index] = {};
81
80
  this._dispatchStockEvent("drawingadded", this._drawingId, this._index);
81
+ this._increaseIndex();
82
82
  }
83
83
  }
84
84
  this.isDrawing(false);
@@ -1 +1 @@
1
- {"version":3,"file":"IconSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/IconSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Percent } from \"../../../core/util/Percent\";\r\nimport type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\nimport type { SpriteResizer } from \"../../../core/render/SpriteResizer\";\r\n\r\nimport { PolylineSeries, IPolylineSeriesSettings, IPolylineSeriesPrivate, IPolylineSeriesDataItem } from \"./PolylineSeries\";\r\nimport { Bullet } from \"../../../core/render/Bullet\";\r\nimport { Graphics } from \"../../../core/render/Graphics\";\r\nimport { Template } from \"../../../core/util/Template\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $object from \"../../../core/util/Object\";\r\n\r\nexport interface IIconSeriesDataItem extends IPolylineSeriesDataItem {\r\n\r\n\t/**\r\n\t * An SVG path of the icon.\r\n\t */\r\n\tsvgPath: string;\r\n}\r\n\r\nexport interface IIconSeriesSettings extends IPolylineSeriesSettings {\r\n\r\n\t/**\r\n\t * An SVG path of the icon.\r\n\t */\r\n\ticonSvgPath: string;\r\n\r\n\t/**\r\n\t * Scale (0-X).\r\n\t */\r\n\ticonScale?: number;\r\n\r\n\t/**\r\n\t * Relative horizontal center.\r\n\t */\r\n\ticonCenterX?: Percent;\r\n\r\n\t/**\r\n\t * Relative vertical center.\r\n\t */\r\n\ticonCenterY?: Percent;\r\n\r\n\t/**\r\n\t * Should icon snap to closest data item?\r\n\t */\r\n\tsnapToData?: boolean;\r\n}\r\n\r\nexport interface IIconSeriesPrivate extends IPolylineSeriesPrivate {\r\n}\r\n\r\nexport class IconSeries extends PolylineSeries {\r\n\tpublic static className: string = \"IconSeries\";\r\n\tpublic static classNames: Array<string> = PolylineSeries.classNames.concat([IconSeries.className]);\r\n\r\n\tdeclare public _settings: IIconSeriesSettings;\r\n\tdeclare public _privateSettings: IIconSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IIconSeriesDataItem;\r\n\r\n\tpublic spriteResizer!: SpriteResizer;\r\n\r\n\tprotected _tag = \"icon\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tthis.spriteResizer = this._getStockChart().spriteResizer;\r\n\r\n\t\tthis.bullets.clear();\r\n\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t\tthis.fills.template.set(\"visible\", false);\r\n\r\n\t\tthis.bullets.push((root, _series, dataItem) => {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tconst template = dataContext.settings;\r\n\t\t\tif (template) {\r\n\t\t\t\tconst sprite = Graphics.new(root, {\r\n\t\t\t\t\tdraggable: true,\r\n\t\t\t\t\tthemeTags: [\"icon\"]\r\n\t\t\t\t}, template);\r\n\r\n\t\t\t\tdataContext.sprite = sprite;\r\n\r\n\t\t\t\tthis._addBulletInteraction(sprite);\r\n\r\n\t\t\t\tsprite.events.on(\"click\", (_e) => {\r\n\t\t\t\t\tconst spriteResizer = this.spriteResizer;\r\n\t\t\t\t\tif (spriteResizer.get(\"sprite\") == sprite) {\r\n\t\t\t\t\t\tspriteResizer.set(\"sprite\", undefined);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tspriteResizer.set(\"sprite\", sprite);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\r\n\t\t\t\tsprite.events.on(\"pointerover\", () => {\r\n\t\t\t\t\tthis._isHover = true;\r\n\t\t\t\t})\r\n\r\n\t\t\t\tsprite.events.on(\"pointerout\", () => {\r\n\t\t\t\t\tthis._isHover = false;\r\n\t\t\t\t})\r\n\r\n\t\t\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\r\n\t\t\t\tsprite.on(\"scale\", (scale) => {\r\n\t\t\t\t\ttemplate.set(\"scale\", scale)\r\n\t\t\t\t})\r\n\r\n\t\t\t\tsprite.on(\"rotation\", (rotation) => {\r\n\t\t\t\t\ttemplate.set(\"rotation\", rotation)\r\n\t\t\t\t})\r\n\r\n\t\t\t\treturn Bullet.new(this._root, {\r\n\t\t\t\t\tlocationX: undefined,\r\n\t\t\t\t\tsprite: sprite\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _setContextSprite(_context: any) { }\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (this._selected.length > 0) {\r\n\t\t\tthis._hideResizer();\r\n\t\t\tthis.unselectAllDrawings();\r\n\t\t}\r\n\t\telse if (this._drawingEnabled) {\r\n\t\t\tif (!this._isHover) {\r\n\t\t\t\tsuper._handlePointerClick(event);\r\n\r\n\t\t\t\tconst dataObject = this.data.getIndex(this.data.length - 1) as any;\r\n\t\t\t\tdataObject.settings = this._getIconTemplate();\r\n\r\n\t\t\t\tthis._increaseIndex();\r\n\t\t\t\tthis._di[this._index] = {};\r\n\r\n\t\t\t\tthis._dispatchStockEvent(\"drawingadded\", this._drawingId, this._index);\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.isDrawing(false);\r\n\t}\r\n\r\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\r\n\t\tsuper.disposeDataItem(dataItem);\r\n\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\t\tthis._isHover = false;\r\n\t}\r\n\r\n\tprotected _applySettings(index: number, settings?: { [index: string]: any }) {\r\n\t\tsuper._applySettings(index, settings);\r\n\t\tlet template: Template<any>;\r\n\t\tlet sprite!: Graphics;\r\n\r\n\t\tlet context = this._getContext(index);\r\n\t\tif (context) {\r\n\t\t\tsprite = context.sprite;\r\n\t\t\ttemplate = context.settings;\r\n\r\n\t\t\tif (sprite) {\r\n\r\n\t\t\t\tconst svgPath = this.get(\"iconSvgPath\");\r\n\t\t\t\tconst centerX = this.get(\"iconCenterX\");\r\n\t\t\t\tconst centerY = this.get(\"iconCenterY\");\r\n\r\n\t\t\t\tsprite.set(\"svgPath\", svgPath);\r\n\t\t\t\tsprite.set(\"centerX\", centerX);\r\n\t\t\t\tsprite.set(\"centerY\", centerY);\r\n\r\n\t\t\t\tconst defaultState = sprite.states.lookup(\"default\")!;\r\n\t\t\t\tdefaultState.set(\"svgPath\", svgPath);\r\n\t\t\t\tdefaultState.set(\"centerX\", centerX);\r\n\t\t\t\tdefaultState.set(\"centerY\", centerY);\r\n\r\n\t\t\t\tif (template) {\r\n\t\t\t\t\ttemplate.set(\"svgPath\", svgPath);\r\n\t\t\t\t\ttemplate.set(\"centerX\", centerX);\r\n\t\t\t\t\ttemplate.set(\"centerY\", centerY);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (settings) {\r\n\t\t\t\t\t$object.each(settings, (key, value) => {\r\n\t\t\t\t\t\tsprite.set(key as any, value);\r\n\t\t\t\t\t\tdefaultState.set(key as any, value);\r\n\t\t\t\t\t\tif (template) {\r\n\t\t\t\t\t\t\ttemplate.set(key, 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\t}\r\n\r\n\tprotected _dispatchAdded(): void {\r\n\r\n\t}\r\n\r\n\tprotected _getIconTemplate(): Template<any> {\r\n\t\tconst template: any = {};\r\n\r\n\t\tconst iconSvgPath = this.get(\"iconSvgPath\");\r\n\t\tif (iconSvgPath != null) {\r\n\t\t\ttemplate.svgPath = iconSvgPath;\r\n\t\t}\r\n\r\n\t\tconst iconScale = this.get(\"iconScale\");\r\n\t\tif (iconScale != null) {\r\n\t\t\ttemplate.scale = iconScale;\r\n\t\t}\r\n\r\n\t\tconst iconCenterX = this.get(\"iconCenterX\");\r\n\t\tif (iconCenterX != null) {\r\n\t\t\ttemplate.centerX = iconCenterX;\r\n\t\t}\r\n\r\n\t\tconst iconCenterY = this.get(\"iconCenterY\");\r\n\t\tif (iconCenterY != null) {\r\n\t\t\ttemplate.centerY = iconCenterY;\r\n\t\t}\r\n\r\n\t\tconst strokeColor = this.get(\"strokeColor\");\r\n\t\tif (strokeColor != null) {\r\n\t\t\ttemplate.stroke = strokeColor;\r\n\t\t}\r\n\r\n\t\tconst strokeOpacity = this.get(\"strokeOpacity\");\r\n\t\tif (strokeOpacity != null) {\r\n\t\t\ttemplate.strokeOpacity = strokeOpacity;\r\n\t\t}\r\n\r\n\t\tconst fillColor = this.get(\"fillColor\");\r\n\t\tif (fillColor != null) {\r\n\t\t\ttemplate.fill = fillColor;\r\n\t\t}\r\n\r\n\t\tconst fillOpacity = this.get(\"fillOpacity\");\r\n\t\tif (fillOpacity != null) {\r\n\t\t\ttemplate.fillOpacity = fillOpacity;\r\n\t\t}\r\n\r\n\t\treturn Template.new(template);\r\n\t}\r\n\r\n\tpublic setInteractive(value: boolean) {\r\n\t\tsuper.setInteractive(value)\r\n\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst bullets = dataItem.bullets;\r\n\t\t\tif (bullets) {\r\n\t\t\t\t$array.each(bullets, (bullet) => {\r\n\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\r\n\t\t\t\t\tif (sprite) {\r\n\t\t\t\t\t\tsprite.set(\"forceInactive\", !value);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tsuper._prepareChildren();\r\n\t\tif (this.isDirty(\"iconSvgPath\")) {\r\n\r\n\t\t\t$array.each(this._selected, (i) => {\r\n\t\t\t\tthis._applySettings(i);\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateSelector(selector: Graphics, index: number) {\r\n\t\tconst context = this._getContext(index);\r\n\t\tif (context) {\r\n\t\t\tconst sprite = context.sprite;\r\n\r\n\t\t\tif (sprite) {\r\n\t\t\t\tif (sprite.dataItem == this.spriteResizer.get(\"sprite\")?.dataItem) {\r\n\t\t\t\t\tselector.hide(0);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tif (this._selected.indexOf(index) != -1) {\r\n\t\t\t\t\t\tselector.show(0);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst selectorPadding = this.get(\"selectorPadding\", 5);\r\n\r\n\t\t\t\tlet bounds = sprite.bounds();\r\n\r\n\t\t\t\tlet w = (bounds.right - bounds.left) + selectorPadding * 2;\r\n\t\t\t\tlet h = (bounds.bottom - bounds.top) + selectorPadding * 2;\r\n\r\n\t\t\t\tselector.setAll({\r\n\t\t\t\t\twidth: w,\r\n\t\t\t\t\theight: h,\r\n\t\t\t\t\tx: bounds.left - selectorPadding,\r\n\t\t\t\t\ty: bounds.top - selectorPadding\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tpublic toggleDrawing(enabled: boolean) {\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst bullets = dataItem.bullets;\r\n\t\t\tif (bullets) {\r\n\t\t\t\t$array.each(bullets, (bullet) => {\r\n\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\r\n\t\t\t\t\tif (sprite) {\r\n\t\t\t\t\t\tsprite.set(\"forceInactive\", !enabled);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\r\n\tprotected _handleBulletDragStart(event: ISpritePointerEvent) {\r\n\t\t// don't call super\r\n\t\tthis._hideResizer(event.target);\r\n\t\tconst stockChart = this._getStockChart();\r\n\t\tif (stockChart) {\r\n\t\t\tstockChart._dragStartDrawing(event);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleBulletDragStop(event: ISpritePointerEvent) {\r\n\t\tconst stockChart = this._getStockChart();\r\n\t\tif (stockChart) {\r\n\t\t\tstockChart._dragStopDrawing(event);\r\n\t\t}\r\n\t\tthis._root.events.once(\"frameended\", () => {\r\n\t\t\tthis._positionBullets(event.target.dataItem as DataItem<IIconSeriesDataItem>);\r\n\t\t})\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"IconSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/IconSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Percent } from \"../../../core/util/Percent\";\r\nimport type { ISpritePointerEvent } from \"../../../core/render/Sprite\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\nimport type { SpriteResizer } from \"../../../core/render/SpriteResizer\";\r\n\r\nimport { PolylineSeries, IPolylineSeriesSettings, IPolylineSeriesPrivate, IPolylineSeriesDataItem } from \"./PolylineSeries\";\r\nimport { Bullet } from \"../../../core/render/Bullet\";\r\nimport { Graphics } from \"../../../core/render/Graphics\";\r\nimport { Template } from \"../../../core/util/Template\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $object from \"../../../core/util/Object\";\r\n\r\nexport interface IIconSeriesDataItem extends IPolylineSeriesDataItem {\r\n\r\n\t/**\r\n\t * An SVG path of the icon.\r\n\t */\r\n\tsvgPath: string;\r\n}\r\n\r\nexport interface IIconSeriesSettings extends IPolylineSeriesSettings {\r\n\r\n\t/**\r\n\t * An SVG path of the icon.\r\n\t */\r\n\ticonSvgPath: string;\r\n\r\n\t/**\r\n\t * Scale (0-X).\r\n\t */\r\n\ticonScale?: number;\r\n\r\n\t/**\r\n\t * Relative horizontal center.\r\n\t */\r\n\ticonCenterX?: Percent;\r\n\r\n\t/**\r\n\t * Relative vertical center.\r\n\t */\r\n\ticonCenterY?: Percent;\r\n\r\n\t/**\r\n\t * Should icon snap to closest data item?\r\n\t */\r\n\tsnapToData?: boolean;\r\n}\r\n\r\nexport interface IIconSeriesPrivate extends IPolylineSeriesPrivate {\r\n}\r\n\r\nexport class IconSeries extends PolylineSeries {\r\n\tpublic static className: string = \"IconSeries\";\r\n\tpublic static classNames: Array<string> = PolylineSeries.classNames.concat([IconSeries.className]);\r\n\r\n\tdeclare public _settings: IIconSeriesSettings;\r\n\tdeclare public _privateSettings: IIconSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IIconSeriesDataItem;\r\n\r\n\tpublic spriteResizer!: SpriteResizer;\r\n\r\n\tprotected _tag = \"icon\";\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tthis.spriteResizer = this._getStockChart().spriteResizer;\r\n\r\n\t\tthis.bullets.clear();\r\n\r\n\t\tthis.strokes.template.set(\"visible\", false);\r\n\t\tthis.fills.template.set(\"visible\", false);\r\n\r\n\t\tthis.bullets.push((root, _series, dataItem) => {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tconst template = dataContext.settings;\r\n\t\t\tif (template) {\r\n\t\t\t\tconst sprite = Graphics.new(root, {\r\n\t\t\t\t\tdraggable: true,\r\n\t\t\t\t\tthemeTags: [\"icon\"]\r\n\t\t\t\t}, template);\r\n\r\n\t\t\t\tdataContext.sprite = sprite;\r\n\r\n\t\t\t\tthis._addBulletInteraction(sprite);\r\n\r\n\t\t\t\tsprite.events.on(\"click\", (_e) => {\r\n\t\t\t\t\tconst spriteResizer = this.spriteResizer;\r\n\t\t\t\t\tif (spriteResizer.get(\"sprite\") == sprite) {\r\n\t\t\t\t\t\tspriteResizer.set(\"sprite\", undefined);\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tspriteResizer.set(\"sprite\", sprite);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\r\n\t\t\t\tsprite.events.on(\"pointerover\", () => {\r\n\t\t\t\t\tthis._isHover = true;\r\n\t\t\t\t})\r\n\r\n\t\t\t\tsprite.events.on(\"pointerout\", () => {\r\n\t\t\t\t\tthis._isHover = false;\r\n\t\t\t\t})\r\n\r\n\t\t\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\r\n\t\t\t\tsprite.on(\"scale\", (scale) => {\r\n\t\t\t\t\ttemplate.set(\"scale\", scale)\r\n\t\t\t\t})\r\n\r\n\t\t\t\tsprite.on(\"rotation\", (rotation) => {\r\n\t\t\t\t\ttemplate.set(\"rotation\", rotation)\r\n\t\t\t\t})\r\n\r\n\t\t\t\treturn Bullet.new(this._root, {\r\n\t\t\t\t\tlocationX: undefined,\r\n\t\t\t\t\tsprite: sprite\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tprotected _setContextSprite(_context: any) { }\r\n\r\n\tprotected _handlePointerClick(event: ISpritePointerEvent) {\r\n\t\tif (this._selected.length > 0) {\r\n\t\t\tthis._hideResizer();\r\n\t\t\tthis.unselectAllDrawings();\r\n\t\t}\r\n\t\telse if (this._drawingEnabled) {\r\n\t\t\tif (!this._isHover) {\r\n\t\t\t\tsuper._handlePointerClick(event);\r\n\r\n\t\t\t\tconst dataObject = this.data.getIndex(this.data.length - 1) as any;\r\n\t\t\t\tdataObject.settings = this._getIconTemplate();\r\n\r\n\t\t\t\tthis._di[this._index] = {};\r\n\r\n\t\t\t\tthis._dispatchStockEvent(\"drawingadded\", this._drawingId, this._index);\r\n\t\t\t\tthis._increaseIndex();\r\n\t\t\t}\r\n\t\t}\r\n\t\tthis.isDrawing(false);\r\n\t}\r\n\r\n\tpublic disposeDataItem(dataItem: DataItem<this[\"_dataItemSettings\"]>) {\r\n\t\tsuper.disposeDataItem(dataItem);\r\n\t\tthis.spriteResizer.set(\"sprite\", undefined);\r\n\t\tthis._isHover = false;\r\n\t}\r\n\r\n\tprotected _applySettings(index: number, settings?: { [index: string]: any }) {\r\n\t\tsuper._applySettings(index, settings);\r\n\t\tlet template: Template<any>;\r\n\t\tlet sprite!: Graphics;\r\n\r\n\t\tlet context = this._getContext(index);\r\n\t\tif (context) {\r\n\t\t\tsprite = context.sprite;\r\n\t\t\ttemplate = context.settings;\r\n\r\n\t\t\tif (sprite) {\r\n\r\n\t\t\t\tconst svgPath = this.get(\"iconSvgPath\");\r\n\t\t\t\tconst centerX = this.get(\"iconCenterX\");\r\n\t\t\t\tconst centerY = this.get(\"iconCenterY\");\r\n\r\n\t\t\t\tsprite.set(\"svgPath\", svgPath);\r\n\t\t\t\tsprite.set(\"centerX\", centerX);\r\n\t\t\t\tsprite.set(\"centerY\", centerY);\r\n\r\n\t\t\t\tconst defaultState = sprite.states.lookup(\"default\")!;\r\n\t\t\t\tdefaultState.set(\"svgPath\", svgPath);\r\n\t\t\t\tdefaultState.set(\"centerX\", centerX);\r\n\t\t\t\tdefaultState.set(\"centerY\", centerY);\r\n\r\n\t\t\t\tif (template) {\r\n\t\t\t\t\ttemplate.set(\"svgPath\", svgPath);\r\n\t\t\t\t\ttemplate.set(\"centerX\", centerX);\r\n\t\t\t\t\ttemplate.set(\"centerY\", centerY);\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif (settings) {\r\n\t\t\t\t\t$object.each(settings, (key, value) => {\r\n\t\t\t\t\t\tsprite.set(key as any, value);\r\n\t\t\t\t\t\tdefaultState.set(key as any, value);\r\n\t\t\t\t\t\tif (template) {\r\n\t\t\t\t\t\t\ttemplate.set(key, 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\t}\r\n\r\n\tprotected _dispatchAdded(): void {\r\n\r\n\t}\r\n\r\n\tprotected _getIconTemplate(): Template<any> {\r\n\t\tconst template: any = {};\r\n\r\n\t\tconst iconSvgPath = this.get(\"iconSvgPath\");\r\n\t\tif (iconSvgPath != null) {\r\n\t\t\ttemplate.svgPath = iconSvgPath;\r\n\t\t}\r\n\r\n\t\tconst iconScale = this.get(\"iconScale\");\r\n\t\tif (iconScale != null) {\r\n\t\t\ttemplate.scale = iconScale;\r\n\t\t}\r\n\r\n\t\tconst iconCenterX = this.get(\"iconCenterX\");\r\n\t\tif (iconCenterX != null) {\r\n\t\t\ttemplate.centerX = iconCenterX;\r\n\t\t}\r\n\r\n\t\tconst iconCenterY = this.get(\"iconCenterY\");\r\n\t\tif (iconCenterY != null) {\r\n\t\t\ttemplate.centerY = iconCenterY;\r\n\t\t}\r\n\r\n\t\tconst strokeColor = this.get(\"strokeColor\");\r\n\t\tif (strokeColor != null) {\r\n\t\t\ttemplate.stroke = strokeColor;\r\n\t\t}\r\n\r\n\t\tconst strokeOpacity = this.get(\"strokeOpacity\");\r\n\t\tif (strokeOpacity != null) {\r\n\t\t\ttemplate.strokeOpacity = strokeOpacity;\r\n\t\t}\r\n\r\n\t\tconst fillColor = this.get(\"fillColor\");\r\n\t\tif (fillColor != null) {\r\n\t\t\ttemplate.fill = fillColor;\r\n\t\t}\r\n\r\n\t\tconst fillOpacity = this.get(\"fillOpacity\");\r\n\t\tif (fillOpacity != null) {\r\n\t\t\ttemplate.fillOpacity = fillOpacity;\r\n\t\t}\r\n\r\n\t\treturn Template.new(template);\r\n\t}\r\n\r\n\tpublic setInteractive(value: boolean) {\r\n\t\tsuper.setInteractive(value)\r\n\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst bullets = dataItem.bullets;\r\n\t\t\tif (bullets) {\r\n\t\t\t\t$array.each(bullets, (bullet) => {\r\n\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\r\n\t\t\t\t\tif (sprite) {\r\n\t\t\t\t\t\tsprite.set(\"forceInactive\", !value);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tsuper._prepareChildren();\r\n\t\tif (this.isDirty(\"iconSvgPath\")) {\r\n\r\n\t\t\t$array.each(this._selected, (i) => {\r\n\t\t\t\tthis._applySettings(i);\r\n\t\t\t})\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateSelector(selector: Graphics, index: number) {\r\n\t\tconst context = this._getContext(index);\r\n\t\tif (context) {\r\n\t\t\tconst sprite = context.sprite;\r\n\r\n\t\t\tif (sprite) {\r\n\t\t\t\tif (sprite.dataItem == this.spriteResizer.get(\"sprite\")?.dataItem) {\r\n\t\t\t\t\tselector.hide(0);\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tif (this._selected.indexOf(index) != -1) {\r\n\t\t\t\t\t\tselector.show(0);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\r\n\t\t\t\tconst selectorPadding = this.get(\"selectorPadding\", 5);\r\n\r\n\t\t\t\tlet bounds = sprite.bounds();\r\n\r\n\t\t\t\tlet w = (bounds.right - bounds.left) + selectorPadding * 2;\r\n\t\t\t\tlet h = (bounds.bottom - bounds.top) + selectorPadding * 2;\r\n\r\n\t\t\t\tselector.setAll({\r\n\t\t\t\t\twidth: w,\r\n\t\t\t\t\theight: h,\r\n\t\t\t\t\tx: bounds.left - selectorPadding,\r\n\t\t\t\t\ty: bounds.top - selectorPadding\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tpublic toggleDrawing(enabled: boolean) {\r\n\t\t$array.each(this.dataItems, (dataItem) => {\r\n\t\t\tconst bullets = dataItem.bullets;\r\n\t\t\tif (bullets) {\r\n\t\t\t\t$array.each(bullets, (bullet) => {\r\n\t\t\t\t\tconst sprite = bullet.get(\"sprite\");\r\n\t\t\t\t\tif (sprite) {\r\n\t\t\t\t\t\tsprite.set(\"forceInactive\", !enabled);\r\n\t\t\t\t\t}\r\n\t\t\t\t})\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n\r\n\r\n\tprotected _handleBulletDragStart(event: ISpritePointerEvent) {\r\n\t\t// don't call super\r\n\t\tthis._hideResizer(event.target);\r\n\t\tconst stockChart = this._getStockChart();\r\n\t\tif (stockChart) {\r\n\t\t\tstockChart._dragStartDrawing(event);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleBulletDragStop(event: ISpritePointerEvent) {\r\n\t\tconst stockChart = this._getStockChart();\r\n\t\tif (stockChart) {\r\n\t\t\tstockChart._dragStopDrawing(event);\r\n\t\t}\r\n\t\tthis._root.events.once(\"frameended\", () => {\r\n\t\t\tthis._positionBullets(event.target.dataItem as DataItem<IIconSeriesDataItem>);\r\n\t\t})\r\n\t}\r\n}"]}
@@ -103,7 +103,7 @@ export class Measure extends RectangleSeries {
103
103
  const diP2 = this._di[index]["p2"];
104
104
  let color = positiveColor;
105
105
  let iy = 1;
106
- if (p1.y > p2.y) {
106
+ if (p1.y < p2.y) {
107
107
  iy = -1;
108
108
  color = negativeColor;
109
109
  }
@@ -1 +1 @@
1
- {"version":3,"file":"Measure.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/Measure.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IPoint } from \"../../../core/util/IPoint\";\r\nimport type { Line } from \"../../../core/render/Line\";\r\nimport type { XYSeries } from \"../../xy/series/XYSeries\";\r\nimport type { StockPanel } from \"../StockPanel\";\r\nimport type { Graphics } from \"../../../core/render/Graphics\";\r\n\r\nimport { RectangleSeries, IRectangleSeriesSettings, IRectangleSeriesPrivate, IRectangleSeriesDataItem } from \"./RectangleSeries\";\r\nimport { Template } from \"../../../core/util/Template\";\r\nimport { ListTemplate } from \"../../../core/util/List\";\r\nimport { Label } from \"../../../core/render/Label\";\r\nimport { DataItem } from \"../../../core/render/Component\";\r\nimport { RoundedRectangle } from \"../../../core/render/RoundedRectangle\";\r\n\r\nimport * as $type from \"../../../core/util/Type\";\r\n\r\nexport interface IMeasureDataItem extends IRectangleSeriesDataItem {\r\n}\r\n\r\nexport interface IMeasureSettings extends IRectangleSeriesSettings {\r\n\tlabelText?: string;\r\n\tlabelVolumeText?: string;\r\n}\r\n\r\nexport interface IMeasurePrivate extends IRectangleSeriesPrivate {\r\n}\r\n\r\nexport class Measure extends RectangleSeries {\r\n\tpublic static className: string = \"Measure\";\r\n\tpublic static classNames: Array<string> = RectangleSeries.classNames.concat([Measure.className]);\r\n\r\n\tdeclare public _settings: IMeasureSettings;\r\n\tdeclare public _privateSettings: IMeasurePrivate;\r\n\tdeclare public _dataItemSettings: IMeasureDataItem;\r\n\r\n\tprotected _lines: Array<Line> = [];\r\n\tprotected _labels: Array<Label> = [];\r\n\r\n\tprotected _tag = \"measure\";\r\n\r\n\tpublic _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tthis.set(\"snapToData\", true);\r\n\t\tthis.strokes.template.set(\"templateField\", undefined);\r\n\t\tthis.fills.template.set(\"templateField\", undefined);\r\n\t}\r\n\r\n\t/**\r\n\t * A list of labels.\r\n\t *\r\n\t * `labels.template` can be used to configure axis labels.\r\n\t *\r\n\t * @default new ListTemplate<Label>\r\n\t */\r\n\tpublic readonly labels: ListTemplate<Label> = 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"]}
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"]}
@@ -1 +1 @@
1
- {"version":3,"file":"RectangleSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/RectangleSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,wBAAyB,SAAQ,yBAAyB;CAC1E;AAED,MAAM,WAAW,wBAAyB,SAAQ,yBAAyB;CAC1E;AAED,MAAM,WAAW,uBAAwB,SAAQ,wBAAwB;CACxE;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;IACpD,OAAc,SAAS,EAAE,MAAM,CAAqB;IACpD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAmE;IAE3F,SAAS,EAAE,wBAAwB,CAAC;IACpC,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,iBAAiB,EAAE,wBAAwB,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAA;KAAE,CAAC,CAAK;IAElF,SAAS,CAAC,IAAI,SAAe;IAE7B,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAoBtC,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;IAS7E,eAAe;IAmEtB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAIzF,SAAS,CAAC,SAAS;IAInB,SAAS,CAAC,WAAW;CAGrB"}
1
+ {"version":3,"file":"RectangleSeries.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/RectangleSeries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,EAAE,gBAAgB,EAAE,yBAAyB,EAAE,wBAAwB,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAEtI,MAAM,WAAW,wBAAyB,SAAQ,yBAAyB;CAC1E;AAED,MAAM,WAAW,wBAAyB,SAAQ,yBAAyB;CAC1E;AAED,MAAM,WAAW,uBAAwB,SAAQ,wBAAwB;CACxE;AAED,qBAAa,eAAgB,SAAQ,gBAAgB;IACpD,OAAc,SAAS,EAAE,MAAM,CAAqB;IACpD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAmE;IAE3F,SAAS,EAAE,wBAAwB,CAAC;IACpC,gBAAgB,EAAE,uBAAuB,CAAC;IAC1C,iBAAiB,EAAE,wBAAwB,CAAC;IAE3D,SAAS,CAAC,GAAG,EAAE,KAAK,CAAC;QAAE,CAAC,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC,wBAAwB,CAAC,CAAA;KAAE,CAAC,CAAK;IAElF,SAAS,CAAC,IAAI,SAAe;IAE7B,SAAS,CAAC,cAAc,CAAC,KAAK,EAAE,MAAM;IAoBtC,SAAS,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM;IAU7E,eAAe;IAuEtB,SAAS,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;IAIzF,SAAS,CAAC,SAAS;IAInB,SAAS,CAAC,WAAW;CAGrB"}
@@ -38,6 +38,9 @@ export class RectangleSeries extends SimpleLineSeries {
38
38
  }
39
39
  }
40
40
  _updateChildren() {
41
+ if (this._isMoving) {
42
+ return;
43
+ }
41
44
  super._updateChildren();
42
45
  const chart = this.chart;
43
46
  this.fills.clear();
@@ -1 +1 @@
1
- {"version":3,"file":"RectangleSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/RectangleSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../../core/render/Component\";\r\nimport type { Graphics } from \"../../../core/render/Graphics\";\r\nimport type { IPoint } from \"../../../core/util/IPoint\";\r\n\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IRectangleSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n}\r\n\r\nexport interface IRectangleSeriesSettings extends ISimpleLineSeriesSettings {\r\n}\r\n\r\nexport interface IRectangleSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n}\r\n\r\nexport class RectangleSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"RectangleSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([RectangleSeries.className]);\r\n\r\n\tdeclare public _settings: IRectangleSeriesSettings;\r\n\tdeclare public _privateSettings: IRectangleSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IRectangleSeriesDataItem;\r\n\r\n\tprotected _di: Array<{ [index: string]: DataItem<IRectangleSeriesDataItem> }> = []\r\n\r\n\tprotected _tag = \"rectangle\";\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\tconst series = this.get(\"series\");\r\n\r\n\t\tif (series && diP1 && diP2) {\r\n\t\t\tconst field = this.get(\"field\") + \"Y\";\r\n\r\n\t\t\tlet y1 = diP1.get(field as any);\r\n\t\t\tlet y2 = diP2.get(field as any);\r\n\r\n\t\t\tthis._setContext(diP1, \"valueY\", y1, true);\r\n\t\t\tthis._setContext(diP2, \"valueY\", y2, true);\r\n\r\n\t\t\tthis._positionBullets(diP1);\r\n\t\t\tthis._positionBullets(diP2);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _setXLocation(dataItem: DataItem<this[\"_dataItemSettings\"]>, value: number) {\r\n\t\tif (!this.get(\"snapToData\")) {\r\n\t\t\tthis._setXLocationReal(dataItem, value);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tdataItem.set(\"locationX\", 0);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\t\tconst chart = this.chart;\r\n\t\tthis.fills.clear();\r\n\t\tif (chart) {\r\n\t\t\tfor (let i = 0; i < this._lines.length; i++) {\r\n\t\t\t\tconst line = this._lines[i];\r\n\t\t\t\tif (line) {\r\n\t\t\t\t\tconst diP1 = this._di[i][\"p1\"];\r\n\t\t\t\t\tconst diP2 = this._di[i][\"p2\"];\r\n\t\t\t\t\tconst di = this._di[i][\"e\"];\r\n\r\n\t\t\t\t\tconst dataContext = di.dataContext as any;\r\n\t\t\t\t\tconst fillGraphics = this.makeFill(this.fills);\r\n\r\n\t\t\t\t\tconst index = this.dataItems.indexOf(diP1);\r\n\t\t\t\t\tfor (let j = index; j >= 0; j--) {\r\n\t\t\t\t\t\tconst dataContext = this.dataItems[j].dataContext as any;\r\n\t\t\t\t\t\tconst template = dataContext.fill;\r\n\t\t\t\t\t\tif (template) {\r\n\t\t\t\t\t\t\tfillGraphics.template = template;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst userData = [this.dataItems.indexOf(diP1), this.dataItems.indexOf(diP2)];\r\n\r\n\t\t\t\t\tlet fillColor = this.get(\"fillColor\", this.get(\"fill\"));\r\n\r\n\t\t\t\t\tconst fillTemplate = dataContext.fill;\r\n\r\n\t\t\t\t\tif (fillTemplate) {\r\n\t\t\t\t\t\tfillColor = fillTemplate.get(\"fill\");\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst settings = { userData: userData, fill: fillColor };\r\n\t\t\t\t\tfillGraphics.setAll(settings);\r\n\r\n\t\t\t\t\tconst p1 = diP1.get(\"point\");\r\n\t\t\t\t\tconst p2 = diP2.get(\"point\");\r\n\r\n\t\t\t\t\tif (p1 && p2) {\r\n\t\t\t\t\t\tfillGraphics.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p1.y);\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tconst strokeGraphics = this.strokes.getIndex(this._getStrokeIndex(i));\r\n\r\n\t\t\t\t\t\tif (strokeGraphics) {\r\n\t\t\t\t\t\t\tstrokeGraphics.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis._updateOthers(i, fillGraphics, p1, p2);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateOthers(_index: number, _fillGraphics: Graphics, _p1: IPoint, _p2: IPoint) {\r\n\r\n\t}\r\n\r\n\tprotected _drawFill() {\r\n\r\n\t}\r\n\r\n\tprotected _updateLine() {\r\n\r\n\t}\r\n}"]}
1
+ {"version":3,"file":"RectangleSeries.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/drawing/RectangleSeries.ts"],"names":[],"mappings":"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","sourcesContent":["import type { DataItem } from \"../../../core/render/Component\";\r\nimport type { Graphics } from \"../../../core/render/Graphics\";\r\nimport type { IPoint } from \"../../../core/util/IPoint\";\r\n\r\nimport { SimpleLineSeries, ISimpleLineSeriesSettings, ISimpleLineSeriesPrivate, ISimpleLineSeriesDataItem } from \"./SimpleLineSeries\";\r\n\r\nexport interface IRectangleSeriesDataItem extends ISimpleLineSeriesDataItem {\r\n}\r\n\r\nexport interface IRectangleSeriesSettings extends ISimpleLineSeriesSettings {\r\n}\r\n\r\nexport interface IRectangleSeriesPrivate extends ISimpleLineSeriesPrivate {\r\n}\r\n\r\nexport class RectangleSeries extends SimpleLineSeries {\r\n\tpublic static className: string = \"RectangleSeries\";\r\n\tpublic static classNames: Array<string> = SimpleLineSeries.classNames.concat([RectangleSeries.className]);\r\n\r\n\tdeclare public _settings: IRectangleSeriesSettings;\r\n\tdeclare public _privateSettings: IRectangleSeriesPrivate;\r\n\tdeclare public _dataItemSettings: IRectangleSeriesDataItem;\r\n\r\n\tprotected _di: Array<{ [index: string]: DataItem<IRectangleSeriesDataItem> }> = []\r\n\r\n\tprotected _tag = \"rectangle\";\r\n\r\n\tprotected _updateSegment(index: number) {\r\n\t\tconst diP1 = this._di[index][\"p1\"];\r\n\t\tconst diP2 = this._di[index][\"p2\"];\r\n\r\n\t\tconst series = this.get(\"series\");\r\n\r\n\t\tif (series && diP1 && diP2) {\r\n\t\t\tconst field = this.get(\"field\") + \"Y\";\r\n\r\n\t\t\tlet y1 = diP1.get(field as any);\r\n\t\t\tlet y2 = diP2.get(field as any);\r\n\r\n\t\t\tthis._setContext(diP1, \"valueY\", y1, true);\r\n\t\t\tthis._setContext(diP2, \"valueY\", y2, true);\r\n\r\n\t\t\tthis._positionBullets(diP1);\r\n\t\t\tthis._positionBullets(diP2);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _setXLocation(dataItem: DataItem<this[\"_dataItemSettings\"]>, value: number) {\r\n\t\tif (!this.get(\"snapToData\")) {\r\n\t\t\tthis._setXLocationReal(dataItem, value);\r\n\t\t}\r\n\t\telse {\r\n\t\t\tdataItem.set(\"locationX\", 0);\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tpublic _updateChildren() {\r\n\t\tif(this._isMoving){\r\n\t\t\treturn;\r\n\t\t}\t\t\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tconst chart = this.chart;\r\n\t\tthis.fills.clear();\r\n\t\tif (chart) {\r\n\t\t\tfor (let i = 0; i < this._lines.length; i++) {\r\n\t\t\t\tconst line = this._lines[i];\r\n\t\t\t\tif (line) {\r\n\t\t\t\t\tconst diP1 = this._di[i][\"p1\"];\r\n\t\t\t\t\tconst diP2 = this._di[i][\"p2\"];\r\n\t\t\t\t\tconst di = this._di[i][\"e\"];\r\n\r\n\t\t\t\t\tconst dataContext = di.dataContext as any;\r\n\t\t\t\t\tconst fillGraphics = this.makeFill(this.fills);\r\n\r\n\t\t\t\t\tconst index = this.dataItems.indexOf(diP1);\r\n\t\t\t\t\tfor (let j = index; j >= 0; j--) {\r\n\t\t\t\t\t\tconst dataContext = this.dataItems[j].dataContext as any;\r\n\t\t\t\t\t\tconst template = dataContext.fill;\r\n\t\t\t\t\t\tif (template) {\r\n\t\t\t\t\t\t\tfillGraphics.template = template;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst userData = [this.dataItems.indexOf(diP1), this.dataItems.indexOf(diP2)];\r\n\r\n\t\t\t\t\tlet fillColor = this.get(\"fillColor\", this.get(\"fill\"));\r\n\r\n\t\t\t\t\tconst fillTemplate = dataContext.fill;\r\n\r\n\t\t\t\t\tif (fillTemplate) {\r\n\t\t\t\t\t\tfillColor = fillTemplate.get(\"fill\");\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tconst settings = { userData: userData, fill: fillColor };\r\n\t\t\t\t\tfillGraphics.setAll(settings);\r\n\r\n\t\t\t\t\tconst p1 = diP1.get(\"point\");\r\n\t\t\t\t\tconst p2 = diP2.get(\"point\");\r\n\r\n\t\t\t\t\tif (p1 && p2) {\r\n\t\t\t\t\t\tfillGraphics.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p1.y);\r\n\t\t\t\t\t\t})\r\n\r\n\t\t\t\t\t\tconst strokeGraphics = this.strokes.getIndex(this._getStrokeIndex(i));\r\n\r\n\t\t\t\t\t\tif (strokeGraphics) {\r\n\t\t\t\t\t\t\tstrokeGraphics.set(\"draw\", (display) => {\r\n\t\t\t\t\t\t\t\tdisplay.moveTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p1.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p2.x, p2.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p2.y);\r\n\t\t\t\t\t\t\t\tdisplay.lineTo(p1.x, p1.y);\r\n\t\t\t\t\t\t\t})\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tthis._updateOthers(i, fillGraphics, p1, p2);\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateOthers(_index: number, _fillGraphics: Graphics, _p1: IPoint, _p2: IPoint) {\r\n\r\n\t}\r\n\r\n\tprotected _drawFill() {\r\n\r\n\t}\r\n\r\n\tprotected _updateLine() {\r\n\r\n\t}\r\n}"]}
@@ -40,9 +40,6 @@ export declare class AccelerationBands extends Indicator {
40
40
  protected _afterNew(): void;
41
41
  _prepareChildren(): void;
42
42
  _updateChildren(): void;
43
- /**
44
- * @ignore
45
- */
46
43
  prepareData(): void;
47
44
  protected _dispose(): void;
48
45
  hide(duration?: number): Promise<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"AccelerationBands.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/AccelerationBands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAKxD,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IAClE;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;IAGnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;CACnE;AAED,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;CACjE;AAGD;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,SAAS;IAC5C,OAAc,SAAS,EAAE,MAAM,CAAuB;IACtD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA8D;IAEtF,SAAS,EAAE,0BAA0B,CAAC;IACtC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,OAAO,EAAE,wBAAwB,CAAC;IAEjD;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAEpC;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAE7B,iBAAiB,EAAE,yBAAyB,EAAE,CAoBlD;IAEH,SAAS,CAAC,SAAS;IAwDZ,gBAAgB;IAUhB,eAAe;IAwBtB;;OAEG;IACI,WAAW;IAyClB,SAAS,CAAC,QAAQ;IAML,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAQrC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAOrD"}
1
+ {"version":3,"file":"AccelerationBands.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/AccelerationBands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,WAAW,0BAA2B,SAAQ,kBAAkB;IAClE;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;IAGnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,yBAA0B,SAAQ,iBAAiB;CACnE;AAED,MAAM,WAAW,wBAAyB,SAAQ,gBAAgB;CACjE;AAGD;;;;GAIG;AACH,qBAAa,iBAAkB,SAAQ,SAAS;IAC5C,OAAc,SAAS,EAAE,MAAM,CAAuB;IACtD,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA8D;IAEtF,SAAS,EAAE,0BAA0B,CAAC;IACtC,gBAAgB,EAAE,yBAAyB,CAAC;IAC5C,OAAO,EAAE,wBAAwB,CAAC;IAEjD;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAEpC;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAE7B,iBAAiB,EAAE,yBAAyB,EAAE,CAoBlD;IAEH,SAAS,CAAC,SAAS;IAwDZ,gBAAgB;IAUhB,eAAe;IAwBf,WAAW;IA+ClB,SAAS,CAAC,QAAQ;IAML,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAQrC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;CAOrD"}
@@ -1,8 +1,6 @@
1
1
  import { __awaiter } from "tslib";
2
2
  import { Indicator } from "./Indicator";
3
3
  import { LineSeries } from "../../xy/series/LineSeries";
4
- import * as $type from "../../../core/util/Type";
5
- import * as $array from "../../../core/util/Array";
6
4
  /**
7
5
  * An implementation of a [[StockChart]] indicator.
8
6
  *
@@ -127,9 +125,6 @@ export class AccelerationBands extends Indicator {
127
125
  this._updateSeriesColor(lowerBandSeries, color, lowerColor);
128
126
  }
129
127
  }
130
- /**
131
- * @ignore
132
- */
133
128
  prepareData() {
134
129
  super.prepareData();
135
130
  if (this.series) {
@@ -138,20 +133,25 @@ export class AccelerationBands extends Indicator {
138
133
  const dataItems = stockSeries.dataItems;
139
134
  let data = this._getDataArray(dataItems);
140
135
  let factor = this.get("factor", 0.001);
141
- let i = 0;
142
- $array.each(data, (dataItem) => {
143
- let stockDataItem = dataItems[i];
136
+ for (let i = 0; i < data.length; i++) {
137
+ const dataItem = data[i];
138
+ const stockDataItem = dataItems[i];
144
139
  if (stockDataItem) {
145
- let low = stockDataItem.get("lowValueY");
146
- let high = stockDataItem.get("highValueY");
147
- if ($type.isNumber(low) && $type.isNumber(high) && high + low != 0) {
148
- dataItem._lower = (high * (1 + 2 * ((((high - low) / ((high + low) / 2)) * 1000) * factor)));
149
- dataItem._upper = (low * (1 - 2 * ((((high - low) / ((high + low) / 2)) * 1000) * factor)));
150
- dataItem._average = dataItem._lower + (dataItem._upper - dataItem._lower) / 2;
140
+ const low = stockDataItem.get("lowValueY");
141
+ const high = stockDataItem.get("highValueY");
142
+ if (low == null || high == null) {
143
+ continue;
151
144
  }
145
+ const sum = high + low;
146
+ if (sum === 0) {
147
+ continue;
148
+ }
149
+ const ff = (((high - low) / (sum / 2)) * 1000) * factor;
150
+ dataItem._lower = (high * (1 + 2 * ff));
151
+ dataItem._upper = (low * (1 - 2 * ff));
152
+ dataItem._average = dataItem._lower + (dataItem._upper - dataItem._lower) / 2;
152
153
  }
153
- i++;
154
- });
154
+ }
155
155
  this._sma(data, period, "_lower", "lower");
156
156
  this._sma(data, period, "_upper", "upper");
157
157
  this._sma(data, period, "_average", "average");
@@ -1 +1 @@
1
- {"version":3,"file":"AccelerationBands.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/AccelerationBands.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IIndicatorEditableSetting } from \"./Indicator\";\r\nimport type { Color } from \"../../../core/util/Color\";\r\n\r\nimport { Indicator, IIndicatorSettings, IIndicatorPrivate, IIndicatorEvents } from \"./Indicator\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\nimport * as $type from \"../../../core/util/Type\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IAccelerationBandsSettings extends IIndicatorSettings {\r\n /**\r\n * A color for upper section.\r\n */\r\n upperColor?: Color;\r\n\r\n /**\r\n * A color for lower section.\r\n */\r\n lowerColor?: Color;\r\n\r\n\r\n factor?: number;\r\n}\r\n\r\nexport interface IAccelerationBandsPrivate extends IIndicatorPrivate {\r\n}\r\n\r\nexport interface IAccelerationBandsEvents extends IIndicatorEvents {\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 AccelerationBands extends Indicator {\r\n public static className: string = \"AccelerationBands\";\r\n public static classNames: Array<string> = Indicator.classNames.concat([AccelerationBands.className]);\r\n\r\n declare public _settings: IAccelerationBandsSettings;\r\n declare public _privateSettings: IAccelerationBandsPrivate;\r\n declare public _events: IAccelerationBandsEvents;\r\n\r\n /**\r\n * Indicator series for the upper band.\r\n */\r\n public upperBandSeries!: LineSeries;\r\n\r\n /**\r\n * Indicator series for the lower band.\r\n */\r\n public lowerBandSeries!: LineSeries;\r\n\r\n public _editableSettings: IIndicatorEditableSetting[] = [{\r\n key: \"period\",\r\n name: this.root.language.translateAny(\"Period\"),\r\n type: \"number\"\r\n }, {\r\n key: \"factor\",\r\n name: this.root.language.translateAny(\"Factor\"),\r\n type: \"number\"\r\n }, {\r\n key: \"upperColor\",\r\n name: this.root.language.translateAny(\"Upper\"),\r\n type: \"color\"\r\n }, {\r\n key: \"seriesColor\",\r\n name: this.root.language.translateAny(\"Average\"),\r\n type: \"color\"\r\n }, {\r\n key: \"lowerColor\",\r\n name: this.root.language.translateAny(\"Lower\"),\r\n type: \"color\"\r\n }];\r\n\r\n protected _afterNew() {\r\n\r\n const stockSeries = this.get(\"stockSeries\");\r\n const chart = stockSeries.chart;\r\n\r\n if (chart) {\r\n\r\n const series = chart.series.push(LineSeries.new(this._root, {\r\n valueXField: \"valueX\",\r\n valueYField: \"average\",\r\n groupDataDisabled: true,\r\n calculateAggregates: true,\r\n xAxis: stockSeries.get(\"xAxis\"),\r\n yAxis: stockSeries.get(\"yAxis\"),\r\n themeTags: [\"indicator\", \"accelerationbands\", \"average\"]\r\n }))\r\n\r\n series.setPrivate(\"baseValueSeries\", stockSeries);\r\n this.series = series;\r\n\r\n const upperBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n valueXField: \"valueX\",\r\n valueYField: \"upper\",\r\n openValueYField: \"lower\",\r\n calculateAggregates: true,\r\n xAxis: stockSeries.get(\"xAxis\"),\r\n yAxis: stockSeries.get(\"yAxis\"),\r\n groupDataDisabled: true,\r\n themeTags: [\"indicator\", \"accelerationbands\", \"upper\"]\r\n }))\r\n\r\n upperBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n\r\n this.upperBandSeries = upperBandSeries;\r\n\r\n const lowerBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n valueXField: \"valueX\",\r\n valueYField: \"lower\",\r\n calculateAggregates: true,\r\n xAxis: stockSeries.get(\"xAxis\"),\r\n yAxis: stockSeries.get(\"yAxis\"),\r\n groupDataDisabled: true,\r\n themeTags: [\"indicator\", \"accelerationbands\", \"lower\"]\r\n }))\r\n\r\n lowerBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n this.lowerBandSeries = lowerBandSeries;\r\n }\r\n\r\n this._handleLegend(this.series);\r\n\r\n super._afterNew();\r\n this.series.addTag(\"accelerationbands\");\r\n this.series._applyThemes();\r\n }\r\n\r\n public _prepareChildren() {\r\n\r\n if (this.isDirty(\"factor\")) {\r\n this.markDataDirty();\r\n this.setCustomData(\"factor\", this.get(\"factor\"));\r\n }\r\n\r\n super._prepareChildren();\r\n }\r\n\r\n public _updateChildren() {\r\n super._updateChildren();\r\n const upperColor = \"upperColor\";\r\n if (this.isDirty(upperColor)) {\r\n const color = this.get(upperColor);\r\n const upperBandSeries = this.upperBandSeries;\r\n upperBandSeries.set(\"stroke\", color);\r\n upperBandSeries.set(\"fill\", color);\r\n upperBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n this._updateSeriesColor(upperBandSeries, color, upperColor);\r\n }\r\n\r\n const lowerColor = \"lowerColor\";\r\n if (this.isDirty(lowerColor)) {\r\n const color = this.get(lowerColor);\r\n const lowerBandSeries = this.lowerBandSeries;\r\n lowerBandSeries.set(\"stroke\", color);\r\n lowerBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n this._updateSeriesColor(lowerBandSeries, color, lowerColor);\r\n }\r\n }\r\n\r\n /**\r\n * @ignore\r\n */\r\n public prepareData() {\r\n super.prepareData();\r\n\r\n if (this.series) {\r\n\r\n let period = this.get(\"period\", 20);\r\n\r\n const stockSeries = this.get(\"stockSeries\");\r\n const dataItems = stockSeries.dataItems;\r\n\r\n let data = this._getDataArray(dataItems);\r\n let factor = this.get(\"factor\", 0.001);\r\n\r\n let i = 0;\r\n\r\n $array.each(data, (dataItem: any) => {\r\n let stockDataItem = dataItems[i];\r\n\r\n if (stockDataItem) {\r\n let low = stockDataItem.get(\"lowValueY\");\r\n let high = stockDataItem.get(\"highValueY\");\r\n\r\n if ($type.isNumber(low) && $type.isNumber(high) && high + low != 0) {\r\n dataItem._lower = (high * (1 + 2 * ((((high - low) / ((high + low) / 2)) * 1000) * factor)));\r\n dataItem._upper = (low * (1 - 2 * ((((high - low) / ((high + low) / 2)) * 1000) * factor)));\r\n dataItem._average = dataItem._lower + (dataItem._upper - dataItem._lower) / 2;\r\n }\r\n }\r\n i++;\r\n })\r\n\r\n this._sma(data, period, \"_lower\", \"lower\");\r\n this._sma(data, period, \"_upper\", \"upper\");\r\n this._sma(data, period, \"_average\", \"average\");\r\n\r\n this.upperBandSeries.data.setAll(data);\r\n this.lowerBandSeries.data.setAll(data);\r\n this.series.data.setAll(data);\r\n }\r\n }\r\n\r\n protected _dispose() {\r\n this.upperBandSeries.dispose();\r\n this.lowerBandSeries.dispose();\r\n super._dispose();\r\n }\r\n\r\n public async hide(duration?: number): Promise<any> {\r\n return Promise.all([\r\n super.hide(duration),\r\n this.upperBandSeries.hide(duration),\r\n this.lowerBandSeries.hide(duration)\r\n ]);\r\n }\r\n\r\n public async show(duration?: number): Promise<any> {\r\n return Promise.all([\r\n super.show(duration),\r\n this.upperBandSeries.show(duration),\r\n this.lowerBandSeries.show(duration)\r\n ]);\r\n }\r\n}"]}
1
+ {"version":3,"file":"AccelerationBands.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/AccelerationBands.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IIndicatorEditableSetting } from \"./Indicator\";\r\nimport type { Color } from \"../../../core/util/Color\";\r\n\r\nimport { Indicator, IIndicatorSettings, IIndicatorPrivate, IIndicatorEvents } from \"./Indicator\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\n\r\nexport interface IAccelerationBandsSettings extends IIndicatorSettings {\r\n /**\r\n * A color for upper section.\r\n */\r\n upperColor?: Color;\r\n\r\n /**\r\n * A color for lower section.\r\n */\r\n lowerColor?: Color;\r\n\r\n\r\n factor?: number;\r\n}\r\n\r\nexport interface IAccelerationBandsPrivate extends IIndicatorPrivate {\r\n}\r\n\r\nexport interface IAccelerationBandsEvents extends IIndicatorEvents {\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 AccelerationBands extends Indicator {\r\n public static className: string = \"AccelerationBands\";\r\n public static classNames: Array<string> = Indicator.classNames.concat([AccelerationBands.className]);\r\n\r\n declare public _settings: IAccelerationBandsSettings;\r\n declare public _privateSettings: IAccelerationBandsPrivate;\r\n declare public _events: IAccelerationBandsEvents;\r\n\r\n /**\r\n * Indicator series for the upper band.\r\n */\r\n public upperBandSeries!: LineSeries;\r\n\r\n /**\r\n * Indicator series for the lower band.\r\n */\r\n public lowerBandSeries!: LineSeries;\r\n\r\n public _editableSettings: IIndicatorEditableSetting[] = [{\r\n key: \"period\",\r\n name: this.root.language.translateAny(\"Period\"),\r\n type: \"number\"\r\n }, {\r\n key: \"factor\",\r\n name: this.root.language.translateAny(\"Factor\"),\r\n type: \"number\"\r\n }, {\r\n key: \"upperColor\",\r\n name: this.root.language.translateAny(\"Upper\"),\r\n type: \"color\"\r\n }, {\r\n key: \"seriesColor\",\r\n name: this.root.language.translateAny(\"Average\"),\r\n type: \"color\"\r\n }, {\r\n key: \"lowerColor\",\r\n name: this.root.language.translateAny(\"Lower\"),\r\n type: \"color\"\r\n }];\r\n\r\n protected _afterNew() {\r\n\r\n const stockSeries = this.get(\"stockSeries\");\r\n const chart = stockSeries.chart;\r\n\r\n if (chart) {\r\n\r\n const series = chart.series.push(LineSeries.new(this._root, {\r\n valueXField: \"valueX\",\r\n valueYField: \"average\",\r\n groupDataDisabled: true,\r\n calculateAggregates: true,\r\n xAxis: stockSeries.get(\"xAxis\"),\r\n yAxis: stockSeries.get(\"yAxis\"),\r\n themeTags: [\"indicator\", \"accelerationbands\", \"average\"]\r\n }))\r\n\r\n series.setPrivate(\"baseValueSeries\", stockSeries);\r\n this.series = series;\r\n\r\n const upperBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n valueXField: \"valueX\",\r\n valueYField: \"upper\",\r\n openValueYField: \"lower\",\r\n calculateAggregates: true,\r\n xAxis: stockSeries.get(\"xAxis\"),\r\n yAxis: stockSeries.get(\"yAxis\"),\r\n groupDataDisabled: true,\r\n themeTags: [\"indicator\", \"accelerationbands\", \"upper\"]\r\n }))\r\n\r\n upperBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n\r\n this.upperBandSeries = upperBandSeries;\r\n\r\n const lowerBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n valueXField: \"valueX\",\r\n valueYField: \"lower\",\r\n calculateAggregates: true,\r\n xAxis: stockSeries.get(\"xAxis\"),\r\n yAxis: stockSeries.get(\"yAxis\"),\r\n groupDataDisabled: true,\r\n themeTags: [\"indicator\", \"accelerationbands\", \"lower\"]\r\n }))\r\n\r\n lowerBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n this.lowerBandSeries = lowerBandSeries;\r\n }\r\n\r\n this._handleLegend(this.series);\r\n\r\n super._afterNew();\r\n this.series.addTag(\"accelerationbands\");\r\n this.series._applyThemes();\r\n }\r\n\r\n public _prepareChildren() {\r\n\r\n if (this.isDirty(\"factor\")) {\r\n this.markDataDirty();\r\n this.setCustomData(\"factor\", this.get(\"factor\"));\r\n }\r\n\r\n super._prepareChildren();\r\n }\r\n\r\n public _updateChildren() {\r\n super._updateChildren();\r\n const upperColor = \"upperColor\";\r\n if (this.isDirty(upperColor)) {\r\n const color = this.get(upperColor);\r\n const upperBandSeries = this.upperBandSeries;\r\n upperBandSeries.set(\"stroke\", color);\r\n upperBandSeries.set(\"fill\", color);\r\n upperBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n this._updateSeriesColor(upperBandSeries, color, upperColor);\r\n }\r\n\r\n const lowerColor = \"lowerColor\";\r\n if (this.isDirty(lowerColor)) {\r\n const color = this.get(lowerColor);\r\n const lowerBandSeries = this.lowerBandSeries;\r\n lowerBandSeries.set(\"stroke\", color);\r\n lowerBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n this._updateSeriesColor(lowerBandSeries, color, lowerColor);\r\n }\r\n }\r\n\r\n public prepareData() {\r\n super.prepareData();\r\n\r\n if (this.series) {\r\n\r\n let period = this.get(\"period\", 20);\r\n\r\n const stockSeries = this.get(\"stockSeries\");\r\n const dataItems = stockSeries.dataItems;\r\n\r\n let data = this._getDataArray(dataItems);\r\n let factor = this.get(\"factor\", 0.001);\r\n\r\n\r\n for (let i = 0; i < data.length; i++) {\r\n const dataItem = data[i];\r\n const stockDataItem = dataItems[i];\r\n\r\n if (stockDataItem) {\r\n const low = stockDataItem.get(\"lowValueY\") as number;\r\n const high = stockDataItem.get(\"highValueY\") as number;\r\n\r\n if (low == null || high == null) {\r\n continue;\r\n }\r\n\r\n const sum = high + low;\r\n if (sum === 0) {\r\n continue;\r\n }\r\n const ff = (((high - low) / (sum / 2)) * 1000) * factor;\r\n dataItem._lower = (high * (1 + 2 * ff));\r\n dataItem._upper = (low * (1 - 2 * ff));\r\n dataItem._average = dataItem._lower + (dataItem._upper - dataItem._lower) / 2;\r\n }\r\n }\r\n\r\n this._sma(data, period, \"_lower\", \"lower\");\r\n this._sma(data, period, \"_upper\", \"upper\");\r\n this._sma(data, period, \"_average\", \"average\");\r\n\r\n this.upperBandSeries.data.setAll(data);\r\n this.lowerBandSeries.data.setAll(data);\r\n this.series.data.setAll(data);\r\n }\r\n }\r\n\r\n protected _dispose() {\r\n this.upperBandSeries.dispose();\r\n this.lowerBandSeries.dispose();\r\n super._dispose();\r\n }\r\n\r\n public async hide(duration?: number): Promise<any> {\r\n return Promise.all([\r\n super.hide(duration),\r\n this.upperBandSeries.hide(duration),\r\n this.lowerBandSeries.hide(duration)\r\n ]);\r\n }\r\n\r\n public async show(duration?: number): Promise<any> {\r\n return Promise.all([\r\n super.show(duration),\r\n this.upperBandSeries.show(duration),\r\n this.lowerBandSeries.show(duration)\r\n ]);\r\n }\r\n}\r\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"AccumulationDistribution.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/AccumulationDistribution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC1H,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,MAAM,WAAW,iCAAkC,SAAQ,uBAAuB;IAEjF;;OAEG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CAEpB;AAED,MAAM,WAAW,gCAAiC,SAAQ,sBAAsB;CAE/E;AAED,MAAM,WAAW,+BAAgC,SAAQ,qBAAqB;CAE7E;AAGD;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,cAAc;IAC3D,OAAc,SAAS,EAAE,MAAM,CAA8B;IAC7D,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA0E;IAElG,SAAS,EAAE,iCAAiC,CAAC;IAC7C,gBAAgB,EAAE,gCAAgC,CAAC;IACnD,OAAO,EAAE,+BAA+B,CAAC;IAExD;;OAEG;IACY,MAAM,EAAE,UAAU,CAAC;IAE3B,iBAAiB,EAAE,yBAAyB,EAAE,CAQlD;IAEI,SAAS;IAMT,aAAa,IAAI,UAAU;IAY3B,gBAAgB;IASvB;;OAEG;IACI,WAAW;CAwClB"}
1
+ {"version":3,"file":"AccumulationDistribution.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/AccumulationDistribution.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAEzD,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC1H,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,MAAM,WAAW,iCAAkC,SAAQ,uBAAuB;IAEjF;;OAEG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;CAEpB;AAED,MAAM,WAAW,gCAAiC,SAAQ,sBAAsB;CAE/E;AAED,MAAM,WAAW,+BAAgC,SAAQ,qBAAqB;CAE7E;AAGD;;;;GAIG;AACH,qBAAa,wBAAyB,SAAQ,cAAc;IAC3D,OAAc,SAAS,EAAE,MAAM,CAA8B;IAC7D,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAA0E;IAElG,SAAS,EAAE,iCAAiC,CAAC;IAC7C,gBAAgB,EAAE,gCAAgC,CAAC;IACnD,OAAO,EAAE,+BAA+B,CAAC;IAExD;;OAEG;IACY,MAAM,EAAE,UAAU,CAAC;IAE3B,iBAAiB,EAAE,yBAAyB,EAAE,CAQlD;IAEI,SAAS;IAMT,aAAa,IAAI,UAAU;IAY3B,gBAAgB;IASvB;;OAEG;IACI,WAAW;CA4ClB"}