@amcharts/amcharts5 5.3.7 → 5.3.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.internal/charts/hierarchy/ForceDirected.d.ts.map +1 -1
- package/.internal/charts/hierarchy/ForceDirected.js +3 -3
- package/.internal/charts/hierarchy/ForceDirected.js.map +1 -1
- package/.internal/charts/hierarchy/Hierarchy.d.ts.map +1 -1
- package/.internal/charts/hierarchy/Hierarchy.js +9 -2
- package/.internal/charts/hierarchy/Hierarchy.js.map +1 -1
- package/.internal/charts/map/MapChart.d.ts +13 -4
- package/.internal/charts/map/MapChart.d.ts.map +1 -1
- package/.internal/charts/map/MapChart.js +49 -8
- package/.internal/charts/map/MapChart.js.map +1 -1
- package/.internal/charts/map/MapChartDefaultTheme.d.ts.map +1 -1
- package/.internal/charts/map/MapChartDefaultTheme.js +4 -0
- package/.internal/charts/map/MapChartDefaultTheme.js.map +1 -1
- package/.internal/charts/map/MapPointSeries.d.ts +2 -1
- package/.internal/charts/map/MapPointSeries.d.ts.map +1 -1
- package/.internal/charts/map/MapPointSeries.js +8 -2
- package/.internal/charts/map/MapPointSeries.js.map +1 -1
- package/.internal/charts/map/MapPolygonSeries.d.ts +2 -1
- package/.internal/charts/map/MapPolygonSeries.d.ts.map +1 -1
- package/.internal/charts/map/MapPolygonSeries.js +7 -1
- package/.internal/charts/map/MapPolygonSeries.js.map +1 -1
- package/.internal/charts/map/MapUtils.d.ts +6 -2
- package/.internal/charts/map/MapUtils.d.ts.map +1 -1
- package/.internal/charts/map/MapUtils.js +9 -3
- package/.internal/charts/map/MapUtils.js.map +1 -1
- package/.internal/charts/map/ZoomControl.js +1 -0
- package/.internal/charts/map/ZoomControl.js.map +1 -1
- package/.internal/charts/stock/StockChart.d.ts.map +1 -1
- package/.internal/charts/stock/StockChart.js +1 -0
- package/.internal/charts/stock/StockChart.js.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.d.ts.map +1 -1
- package/.internal/charts/stock/StockChartDefaultTheme.js +4 -0
- package/.internal/charts/stock/StockChartDefaultTheme.js.map +1 -1
- package/.internal/charts/stock/indicators/BollingerBands.d.ts +2 -0
- package/.internal/charts/stock/indicators/BollingerBands.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/BollingerBands.js +25 -0
- package/.internal/charts/stock/indicators/BollingerBands.js.map +1 -1
- package/.internal/charts/stock/indicators/ChartIndicator.d.ts +2 -0
- package/.internal/charts/stock/indicators/ChartIndicator.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/ChartIndicator.js +23 -0
- package/.internal/charts/stock/indicators/ChartIndicator.js.map +1 -1
- package/.internal/charts/stock/indicators/Indicator.d.ts +2 -0
- package/.internal/charts/stock/indicators/Indicator.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/Indicator.js +23 -0
- package/.internal/charts/stock/indicators/Indicator.js.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.d.ts +2 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.d.ts.map +1 -1
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js +25 -0
- package/.internal/charts/stock/indicators/MovingAverageEnvelope.js.map +1 -1
- package/.internal/charts/stock/indicators/Trix.js.map +1 -1
- package/.internal/charts/stock/toolbar/DrawingControl.d.ts +13 -0
- package/.internal/charts/stock/toolbar/DrawingControl.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/DrawingControl.js +74 -47
- package/.internal/charts/stock/toolbar/DrawingControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/PeriodSelector.d.ts +8 -0
- package/.internal/charts/stock/toolbar/PeriodSelector.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/PeriodSelector.js +37 -2
- package/.internal/charts/stock/toolbar/PeriodSelector.js.map +1 -1
- package/.internal/charts/stock/toolbar/SettingsControl.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/SettingsControl.js +1 -0
- package/.internal/charts/stock/toolbar/SettingsControl.js.map +1 -1
- package/.internal/charts/stock/toolbar/StockToolbarCSS.d.ts.map +1 -1
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js +3 -0
- package/.internal/charts/stock/toolbar/StockToolbarCSS.js.map +1 -1
- package/.internal/charts/xy/axes/Axis.d.ts +7 -2
- package/.internal/charts/xy/axes/Axis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/Axis.js.map +1 -1
- package/.internal/charts/xy/axes/GaplessDateAxis.d.ts.map +1 -1
- package/.internal/charts/xy/axes/GaplessDateAxis.js +5 -0
- package/.internal/charts/xy/axes/GaplessDateAxis.js.map +1 -1
- package/.internal/charts/xy/axes/ValueAxis.d.ts +1 -1
- package/.internal/charts/xy/axes/ValueAxis.js.map +1 -1
- package/.internal/core/Registry.js +1 -1
- package/.internal/core/Registry.js.map +1 -1
- package/.internal/core/Root.d.ts +2 -1
- package/.internal/core/Root.d.ts.map +1 -1
- package/.internal/core/Root.js +34 -10
- package/.internal/core/Root.js.map +1 -1
- package/.internal/core/render/Component.d.ts.map +1 -1
- package/.internal/core/render/Component.js +3 -1
- package/.internal/core/render/Component.js.map +1 -1
- package/.internal/core/render/Graphics.d.ts.map +1 -1
- package/.internal/core/render/Graphics.js +3 -0
- package/.internal/core/render/Graphics.js.map +1 -1
- package/.internal/core/render/Sprite.d.ts.map +1 -1
- package/.internal/core/render/Sprite.js +13 -3
- package/.internal/core/render/Sprite.js.map +1 -1
- package/.internal/core/render/Tooltip.d.ts +2 -1
- package/.internal/core/render/Tooltip.d.ts.map +1 -1
- package/.internal/core/render/Tooltip.js +25 -2
- package/.internal/core/render/Tooltip.js.map +1 -1
- package/.internal/core/render/backend/CanvasRenderer.d.ts +1 -1
- package/.internal/core/render/backend/CanvasRenderer.d.ts.map +1 -1
- package/.internal/core/render/backend/CanvasRenderer.js +38 -18
- package/.internal/core/render/backend/CanvasRenderer.js.map +1 -1
- package/.internal/core/render/backend/Renderer.d.ts +1 -0
- package/.internal/core/render/backend/Renderer.d.ts.map +1 -1
- package/.internal/core/render/backend/Renderer.js.map +1 -1
- package/.internal/core/util/Template.d.ts +4 -0
- package/.internal/core/util/Template.d.ts.map +1 -1
- package/.internal/core/util/Template.js +6 -0
- package/.internal/core/util/Template.js.map +1 -1
- package/CHANGELOG.md +36 -0
- package/examples/javascript/flow-chord/package.json +1 -1
- package/examples/javascript/flow-chord-directed/package.json +1 -1
- package/examples/javascript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/javascript/flow-sankey/package.json +1 -1
- package/examples/javascript/gauge/package.json +1 -1
- package/examples/javascript/gauge-bands/package.json +1 -1
- package/examples/javascript/hierarchy-force-directed/package.json +1 -1
- package/examples/javascript/hierarchy-pack/package.json +1 -1
- package/examples/javascript/hierarchy-partition/package.json +1 -1
- package/examples/javascript/hierarchy-sunburst/package.json +1 -1
- package/examples/javascript/hierarchy-tree/package.json +1 -1
- package/examples/javascript/hierarchy-treemap/package.json +1 -1
- package/examples/javascript/jest/package.json +1 -1
- package/examples/javascript/json-pie/package.json +1 -1
- package/examples/javascript/json-xy/package.json +1 -1
- package/examples/javascript/map-animating-along-lines/package.json +1 -1
- package/examples/javascript/map-day-and-night/package.json +1 -1
- package/examples/javascript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/javascript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/javascript/map-with-bubbles/package.json +1 -1
- package/examples/javascript/map-zoom-to-country/package.json +1 -1
- package/examples/javascript/misc-40-charts/package.json +1 -1
- package/examples/javascript/misc-microchart-grid/package.json +1 -1
- package/examples/javascript/pie-chart/package.json +1 -1
- package/examples/javascript/pie-donut-chart/package.json +1 -1
- package/examples/javascript/pie-variable-radius/package.json +1 -1
- package/examples/javascript/radar-column-iwatch-style/package.json +1 -1
- package/examples/javascript/radar-heat-map/package.json +1 -1
- package/examples/javascript/radar-line/package.json +1 -1
- package/examples/javascript/radar-time-line/package.json +1 -1
- package/examples/javascript/sliced-funnel/package.json +1 -1
- package/examples/javascript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/javascript/sliced-pyramid/package.json +1 -1
- package/examples/javascript/stock-chart/package.json +1 -1
- package/examples/javascript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/javascript/stock-chart-data-granularity/package.json +1 -1
- package/examples/javascript/stock-chart-data-grouping/package.json +1 -1
- package/examples/javascript/stock-chart-intraday/package.json +1 -1
- package/examples/javascript/stock-chart-live/package.json +1 -1
- package/examples/javascript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/javascript/venn-diagram/package.json +1 -1
- package/examples/javascript/wordcloud-with-data/package.json +1 -1
- package/examples/javascript/wordcloud-with-text/package.json +1 -1
- package/examples/javascript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/javascript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/javascript/xy-bubble/package.json +1 -1
- package/examples/javascript/xy-candlestick/package.json +1 -1
- package/examples/javascript/xy-clustered-column/package.json +1 -1
- package/examples/javascript/xy-column/package.json +1 -1
- package/examples/javascript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/javascript/xy-data-grouping/package.json +1 -1
- package/examples/javascript/xy-draggable-range/package.json +1 -1
- package/examples/javascript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/javascript/xy-dumbbell plot/package.json +1 -1
- package/examples/javascript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/javascript/xy-line/package.json +1 -1
- package/examples/javascript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/javascript/xy-live-data/package.json +1 -1
- package/examples/javascript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/javascript/xy-ohlc/package.json +1 -1
- package/examples/javascript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/javascript/xy-smoothed-line/package.json +1 -1
- package/examples/javascript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/javascript/xy-stacked-column/package.json +1 -1
- package/examples/javascript/xy-stacked-step/package.json +1 -1
- package/examples/javascript/xy-stock/package.json +1 -1
- package/examples/javascript/xy-stock-comparing/package.json +1 -1
- package/examples/typescript/flow-chord/package.json +1 -1
- package/examples/typescript/flow-chord-directed/package.json +1 -1
- package/examples/typescript/flow-chord-non-ribbon/package.json +1 -1
- package/examples/typescript/flow-sankey/package.json +1 -1
- package/examples/typescript/gauge/package.json +1 -1
- package/examples/typescript/gauge-bands/package.json +1 -1
- package/examples/typescript/hierarchy-force-directed/package.json +1 -1
- package/examples/typescript/hierarchy-pack/package.json +1 -1
- package/examples/typescript/hierarchy-partition/package.json +1 -1
- package/examples/typescript/hierarchy-sunburst/package.json +1 -1
- package/examples/typescript/hierarchy-tree/package.json +1 -1
- package/examples/typescript/hierarchy-treemap/package.json +1 -1
- package/examples/typescript/jest/package.json +1 -1
- package/examples/typescript/json-pie/package.json +1 -1
- package/examples/typescript/json-xy/package.json +1 -1
- package/examples/typescript/map-animating-along-lines/package.json +1 -1
- package/examples/typescript/map-day-and-night/package.json +1 -1
- package/examples/typescript/map-globe-rotate-to-country/package.json +1 -1
- package/examples/typescript/map-globe-with-projected-circles/package.json +1 -1
- package/examples/typescript/map-with-bubbles/package.json +1 -1
- package/examples/typescript/map-zoom-to-country/package.json +1 -1
- package/examples/typescript/misc-40-charts/package.json +1 -1
- package/examples/typescript/misc-microchart-grid/package.json +1 -1
- package/examples/typescript/pie-chart/package.json +1 -1
- package/examples/typescript/pie-donut-chart/package.json +1 -1
- package/examples/typescript/pie-variable-radius/package.json +1 -1
- package/examples/typescript/radar-column-iwatch-style/package.json +1 -1
- package/examples/typescript/radar-heat-map/package.json +1 -1
- package/examples/typescript/radar-line/package.json +1 -1
- package/examples/typescript/radar-time-line/package.json +1 -1
- package/examples/typescript/sliced-funnel/package.json +1 -1
- package/examples/typescript/sliced-pictorial-stacked/package.json +1 -1
- package/examples/typescript/sliced-pyramid/package.json +1 -1
- package/examples/typescript/stock-chart/package.json +1 -1
- package/examples/typescript/stock-chart-comparing-stocks/package.json +1 -1
- package/examples/typescript/stock-chart-data-granularity/package.json +1 -1
- package/examples/typescript/stock-chart-data-grouping/package.json +1 -1
- package/examples/typescript/stock-chart-intraday/package.json +1 -1
- package/examples/typescript/stock-chart-live/package.json +1 -1
- package/examples/typescript/stock-chart-volume-separate-panel/package.json +1 -1
- package/examples/typescript/venn-diagram/package.json +1 -1
- package/examples/typescript/wordcloud-with-data/package.json +1 -1
- package/examples/typescript/wordcloud-with-text/package.json +1 -1
- package/examples/typescript/xy-100-percent-stacked-column/package.json +1 -1
- package/examples/typescript/xy-animated-bullet-at-the-end-of-the-series/package.json +1 -1
- package/examples/typescript/xy-bubble/package.json +1 -1
- package/examples/typescript/xy-candlestick/package.json +1 -1
- package/examples/typescript/xy-clustered-column/package.json +1 -1
- package/examples/typescript/xy-column/package.json +1 -1
- package/examples/typescript/xy-comparing-series-google-analytics-style/package.json +1 -1
- package/examples/typescript/xy-data-grouping/package.json +1 -1
- package/examples/typescript/xy-draggable-range/package.json +1 -1
- package/examples/typescript/xy-drawing-series-with-mouse-or-touch/package.json +1 -1
- package/examples/typescript/xy-dumbbell plot/package.json +1 -1
- package/examples/typescript/xy-evenly-spaced-date-axis/package.json +1 -1
- package/examples/typescript/xy-line/package.json +1 -1
- package/examples/typescript/xy-line-highlight-on-legend-hover/package.json +1 -1
- package/examples/typescript/xy-live-data/package.json +1 -1
- package/examples/typescript/xy-multiple-synced-value-axes/package.json +1 -1
- package/examples/typescript/xy-ohlc/package.json +1 -1
- package/examples/typescript/xy-real-time-data-sorting/package.json +1 -1
- package/examples/typescript/xy-smoothed-line/package.json +1 -1
- package/examples/typescript/xy-stacked-and-clustered-column/package.json +1 -1
- package/examples/typescript/xy-stacked-column/package.json +1 -1
- package/examples/typescript/xy-stacked-step/package.json +1 -1
- package/examples/typescript/xy-stock/package.json +1 -1
- package/examples/typescript/xy-stock-comparing/package.json +1 -1
- package/map.d.ts +1 -1
- package/map.d.ts.map +1 -1
- package/map.js +1 -1
- package/map.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
1
2
|
import { Indicator } from "./Indicator";
|
|
2
3
|
import { StockPanel } from "../StockPanel";
|
|
3
4
|
import { XYCursor } from "../../xy/XYCursor";
|
|
@@ -120,6 +121,28 @@ export class ChartIndicator extends Indicator {
|
|
|
120
121
|
const stockChart = this.get("stockChart");
|
|
121
122
|
stockChart.panels.removeValue(this.panel);
|
|
122
123
|
}
|
|
124
|
+
hide(duration) {
|
|
125
|
+
const _super = Object.create(null, {
|
|
126
|
+
hide: { get: () => super.hide }
|
|
127
|
+
});
|
|
128
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
129
|
+
return Promise.all([
|
|
130
|
+
_super.hide.call(this, duration),
|
|
131
|
+
this.panel.hide(duration)
|
|
132
|
+
]);
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
show(duration) {
|
|
136
|
+
const _super = Object.create(null, {
|
|
137
|
+
show: { get: () => super.show }
|
|
138
|
+
});
|
|
139
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
140
|
+
return Promise.all([
|
|
141
|
+
_super.show.call(this, duration),
|
|
142
|
+
this.panel.show(duration)
|
|
143
|
+
]);
|
|
144
|
+
});
|
|
145
|
+
}
|
|
123
146
|
}
|
|
124
147
|
Object.defineProperty(ChartIndicator, "className", {
|
|
125
148
|
enumerable: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChartIndicator.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/ChartIndicator.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,SAAS,EAA2D,MAAM,aAAa,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAa7C;;;;GAIG;AACH,MAAM,OAAgB,cAAe,SAAQ,SAAS;IAAtD;;QAQC;;;;;WAA0B;QAC1B;;;;;WAAsC;QACtC;;;;;WAAuC;QACvC;;;;;WAAyB;QACzB;;;;;WAA4B;QAE5B;;;;;WAA6B;
|
|
1
|
+
{"version":3,"file":"ChartIndicator.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/ChartIndicator.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,SAAS,EAA2D,MAAM,aAAa,CAAC;AACjG,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAa7C;;;;GAIG;AACH,MAAM,OAAgB,cAAe,SAAQ,SAAS;IAAtD;;QAQC;;;;;WAA0B;QAC1B;;;;;WAAsC;QACtC;;;;;WAAuC;QACvC;;;;;WAAyB;QACzB;;;;;WAA4B;QAE5B;;;;;WAA6B;IAyG9B,CAAC;IAvGU,SAAS;QAClB,KAAK,CAAC,SAAS,EAAE,CAAC;QAClB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAC5C,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC;QACtC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC;QACxB,IAAI,UAAU,IAAI,WAAW,EAAE;YAC9B,aAAa;YACb,IAAI,SAAS,GAAG,CAAC,WAAW,CAAC,CAAC;YAC9B,IAAI,IAAI,CAAC,SAAS,EAAE;gBACnB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;aAC/B;YACD,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC;YAC/H,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;YAC1B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YAEnB,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,aAAa,EAAE,CAAC,CAAC,EAAE,EAAE;gBAChD,IAAI,CAAC,CAAC,QAAQ,IAAI,KAAK,EAAE;oBACxB,UAAU,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;iBACxC;YACF,CAAC,CAAC,CAAA;YAEF,MAAM,WAAW,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAQ,CAAC;YAEpD,QAAQ;YACR,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC9C,IAAI,KAAyE,CAAC;YAC9E,IAAI,YAAY,GAAG,WAAW,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;YACnD,IAAI,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACrC,IAAI,GAAG,GAAG,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;YAEjC,IAAI,WAAW,YAAY,eAAe,EAAE;gBAC3C,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;aACzG;iBACI;gBACJ,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC;aAClG;YAED,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC;YACrD,KAAK,CAAC,GAAG,CAAC,YAAY,EAAE,WAAW,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC;YAEvD,KAAK,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;YAE/D,KAAK,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;YACxC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YAEnB,QAAQ;YACR,MAAM,SAAS,GAAG,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAC9C,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,EAAE;gBAClD,QAAQ,EAAE,SAAS;gBACnB,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;aACjD,CAAC,CAAC,CAAA;YACH,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;YAEnB,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,EAAE,CAAC;YACpC,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YAErB,SAAS;YACT,MAAM,MAAM,GAAG,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,EAC3D,WAAW,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAC7D,CAAC;YAEF,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAEzB,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YACrE,cAAc,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACnC,cAAc,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;YAEtD,MAAM,cAAc,GAAG,cAAc,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;YAC5D,cAAc,CAAC,UAAU,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAE9C,MAAM,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,CAAC;YAChD,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,IAAI,CAAC,EAAE;gBACtD,cAAc,CAAC,GAAG,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;aACxC;YAED,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;SAGxE;IACF,CAAC;IAES,QAAQ;QACjB,KAAK,CAAC,QAAQ,EAAE,CAAC;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;QAC1C,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3C,CAAC;IAEY,IAAI,CAAC,QAAiB;;;;;YAClC,OAAO,OAAO,CAAC,GAAG,CAAC;gBAClB,OAAM,IAAI,YAAC,QAAQ;gBACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;aACzB,CAAC,CAAC;QACJ,CAAC;KAAA;IAEY,IAAI,CAAC,QAAiB;;;;;YAClC,OAAO,OAAO,CAAC,GAAG,CAAC;gBAClB,OAAM,IAAI,YAAC,QAAQ;gBACnB,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;aACzB,CAAC,CAAC;QACJ,CAAC;KAAA;;AAnHD;;;;WAAkC,gBAAgB;GAAC;AACnD;;;;WAA0C,SAAS,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,SAAS,CAAC,CAAC;GAAC","sourcesContent":["import type { XYSeries } from \"../../xy/series/XYSeries\";\r\nimport type { AxisRenderer } from \"../../xy/axes/AxisRenderer\";\r\n\r\nimport { Indicator, IIndicatorSettings, IIndicatorPrivate, IIndicatorEvents } from \"./Indicator\";\r\nimport { StockPanel } from \"../StockPanel\";\r\nimport { XYCursor } from \"../../xy/XYCursor\";\r\nimport { DateAxis } from \"../../xy/axes/DateAxis\";\r\nimport { GaplessDateAxis } from \"../../xy/axes/GaplessDateAxis\";\r\nimport { ValueAxis } from \"../../xy/axes/ValueAxis\";\r\nimport { AxisRendererX } from \"../../xy/axes/AxisRendererX\";\r\nimport { AxisRendererY } from \"../../xy/axes/AxisRendererY\";\r\nimport { Tooltip } from \"../../../core/render/Tooltip\";\r\nimport { StockLegend } from \"../StockLegend\";\r\n\r\n\r\nexport interface IChartIndicatorSettings extends IIndicatorSettings {\r\n}\r\n\r\nexport interface IChartIndicatorPrivate extends IIndicatorPrivate {\r\n}\r\n\r\nexport interface IChartIndicatorEvents extends IIndicatorEvents {\r\n}\r\n\r\n\r\n/**\r\n * A base class for chart-based [[StockChart]] indicators.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport abstract class ChartIndicator extends Indicator {\r\n\tpublic static className: string = \"ChartIndicator\";\r\n\tpublic static classNames: Array<string> = Indicator.classNames.concat([ChartIndicator.className]);\r\n\r\n\tdeclare public _settings: IChartIndicatorSettings;\r\n\tdeclare public _privateSettings: IChartIndicatorPrivate;\r\n\tdeclare public _events: IChartIndicatorEvents;\r\n\r\n\tpublic panel!: StockPanel;\r\n\tpublic xAxis!: DateAxis<AxisRenderer>;\r\n\tpublic yAxis!: ValueAxis<AxisRenderer>;\r\n\tpublic cursor!: XYCursor;\r\n\tpublic legend!: StockLegend;\r\n\r\n\tprotected _themeTag?: string;\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\tconst seriesChart = stockSeries.chart;\r\n\t\tconst root = this._root;\r\n\t\tif (stockChart && seriesChart) {\r\n\t\t\t// make chart\r\n\t\t\tlet themeTags = [\"indicator\"];\r\n\t\t\tif (this._themeTag) {\r\n\t\t\t\tthemeTags.push(this._themeTag);\r\n\t\t\t}\r\n\t\t\tconst chart = stockChart.panels.push(StockPanel.new(root, { wheelY: \"zoomX\", panX: true, panY: false, themeTags: themeTags }));\r\n\t\t\tchart.addTag(\"indicator\");\r\n\t\t\tthis.panel = chart;\r\n\r\n\t\t\tstockChart.panels.events.on(\"removeIndex\", (e) => {\r\n\t\t\t\tif (e.oldValue == chart) {\r\n\t\t\t\t\tstockChart.indicators.removeValue(this);\r\n\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t\tconst seriesXAxis = stockSeries.get(\"xAxis\") as any;\r\n\r\n\t\t\t// xAxis\r\n\t\t\tconst xRenderer = AxisRendererX.new(root, {});\r\n\t\t\tlet xAxis: DateAxis<AxisRenderer> | GaplessDateAxis<AxisRenderer> | undefined;\r\n\t\t\tlet baseInterval = seriesXAxis.get(\"baseInterval\");\r\n\t\t\tlet start = seriesXAxis.get(\"start\");\r\n\t\t\tlet end = seriesXAxis.get(\"end\");\r\n\r\n\t\t\tif (seriesXAxis instanceof GaplessDateAxis) {\r\n\t\t\t\txAxis = chart.xAxes.push(GaplessDateAxis.new(root, { renderer: xRenderer, baseInterval: baseInterval }));\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\txAxis = chart.xAxes.push(DateAxis.new(root, { renderer: xRenderer, baseInterval: baseInterval }));\r\n\t\t\t}\r\n\r\n\t\t\txAxis.set(\"groupData\", seriesXAxis.get(\"groupData\"));\r\n\t\t\txAxis.set(\"groupCount\", seriesXAxis.get(\"groupCount\"));\r\n\r\n\t\t\txAxis.set(\"tooltip\", Tooltip.new(root, { forceHidden: true }));\r\n\r\n\t\t\txAxis.setAll({ start: start, end: end })\r\n\t\t\tthis.xAxis = xAxis;\r\n\r\n\t\t\t// yAxis\r\n\t\t\tconst yRenderer = AxisRendererY.new(root, {});\r\n\t\t\tconst yAxis = chart.yAxes.push(ValueAxis.new(root, {\r\n\t\t\t\trenderer: yRenderer,\r\n\t\t\t\ttooltip: Tooltip.new(root, { forceHidden: true })\r\n\t\t\t}))\r\n\t\t\tthis.yAxis = yAxis;\r\n\r\n\t\t\tconst series = this._createSeries();\r\n\t\t\tthis.series = series;\r\n\r\n\t\t\t// legend\r\n\t\t\tconst legend = chart.topPlotContainer.children.insertIndex(0,\r\n\t\t\t\tStockLegend.new(root, { stockChart: this.get(\"stockChart\") })\r\n\t\t\t);\r\n\r\n\t\t\tlegend.data.push(series);\r\n\r\n\t\t\tconst legendDataItem = legend.dataItems[legend.dataItems.length - 1];\r\n\t\t\tlegendDataItem.set(\"panel\", chart);\r\n\t\t\tlegendDataItem.get(\"marker\").set(\"forceHidden\", true);\r\n\r\n\t\t\tconst settingsButton = legendDataItem.get(\"settingsButton\");\r\n\t\t\tsettingsButton.setPrivate(\"customData\", this);\r\n\r\n\t\t\tconst editableSettings = this._editableSettings;\r\n\t\t\tif (!editableSettings || editableSettings.length == 0) {\r\n\t\t\t\tsettingsButton.set(\"forceHidden\", true);\r\n\t\t\t}\r\n\r\n\t\t\tchart.set(\"cursor\", XYCursor.new(root, { yAxis: yAxis, xAxis: xAxis }));\r\n\r\n\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tsuper._dispose();\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tstockChart.panels.removeValue(this.panel);\r\n\t}\r\n\r\n\tpublic async hide(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.hide(duration),\r\n\t\t\tthis.panel.hide(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tpublic async show(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.show(duration),\r\n\t\t\tthis.panel.show(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tprotected abstract _createSeries(): XYSeries;\r\n}"]}
|
|
@@ -93,6 +93,8 @@ export declare abstract class Indicator extends Container {
|
|
|
93
93
|
protected markDataDirty(): void;
|
|
94
94
|
_updateChildren(): void;
|
|
95
95
|
protected _dispose(): void;
|
|
96
|
+
hide(duration?: number): Promise<any>;
|
|
97
|
+
show(duration?: number): Promise<any>;
|
|
96
98
|
protected _handleLegend(series: XYSeries): void;
|
|
97
99
|
protected _updateSeriesColor(series?: XYSeries, color?: Color, contextName?: string): void;
|
|
98
100
|
setCustomData(name: string, value?: any): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Indicator.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/Indicator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAGpH,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAI5D,MAAM,WAAW,yBAAyB;IAEzC;;OAEG;IACH,GAAG,EAAE,MAAM,CAAC;IAEZ;;;;OAIG;IACH,IAAI,EAAE,MAAM,CAAC;IAEb;;OAEG;IACH,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,UAAU,GAAG,UAAU,CAAC;IAEnD;;OAEG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,GAAG;QAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAEnE;AAED,MAAM,WAAW,kBAAmB,SAAQ,kBAAkB;IAE7D;;OAEG;IACH,UAAU,EAAE,UAAU,CAAC;IAEvB;;OAEG;IACH,WAAW,EAAE,QAAQ,CAAC;IAEtB;;OAEG;IACH,YAAY,CAAC,EAAE,QAAQ,CAAC;IAExB;;;OAGG;IACH,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB;;OAEG;IACH,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,QAAQ,CAAC;IAEnF;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IAEd;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAC;CAEpB;AAED,MAAM,WAAW,iBAAkB,SAAQ,iBAAiB;CAC3D;AAED,MAAM,WAAW,gBAAiB,SAAQ,gBAAgB;CACzD;AAED;;;;GAIG;AACH,8BAAsB,SAAU,SAAQ,SAAS;IAChD,OAAc,SAAS,EAAE,MAAM,CAAe;IAC9C,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsD;IAE9E,SAAS,EAAE,kBAAkB,CAAC;IAC9B,gBAAgB,EAAE,iBAAiB,CAAC;IACpC,OAAO,EAAE,gBAAgB,CAAC;IAElC,iBAAiB,EAAE,yBAAyB,EAAE,CAAM;IAEpD,MAAM,EAAG,QAAQ,CAAC;IAEzB,SAAS,CAAC,UAAU,UAAS;IAE7B,SAAS,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;IAC/B,SAAS,CAAC,IAAI,CAAC,EAAE,aAAa,CAAC;IAExB,gBAAgB;IAwDvB,SAAS,CAAC,aAAa;IAKhB,eAAe;IActB,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"Indicator.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/Indicator.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
1
2
|
import { Container } from "../../../core/render/Container";
|
|
2
3
|
import { LineSeries } from "../../xy/series/LineSeries";
|
|
3
4
|
import { BaseColumnSeries } from "../../xy/series/BaseColumnSeries";
|
|
@@ -129,6 +130,28 @@ export class Indicator extends Container {
|
|
|
129
130
|
stockChart.indicators.removeValue(this);
|
|
130
131
|
}
|
|
131
132
|
}
|
|
133
|
+
hide(duration) {
|
|
134
|
+
const _super = Object.create(null, {
|
|
135
|
+
hide: { get: () => super.hide }
|
|
136
|
+
});
|
|
137
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
138
|
+
return Promise.all([
|
|
139
|
+
_super.hide.call(this, duration),
|
|
140
|
+
this.series.hide(duration)
|
|
141
|
+
]);
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
show(duration) {
|
|
145
|
+
const _super = Object.create(null, {
|
|
146
|
+
show: { get: () => super.show }
|
|
147
|
+
});
|
|
148
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
149
|
+
return Promise.all([
|
|
150
|
+
_super.show.call(this, duration),
|
|
151
|
+
this.series.show(duration)
|
|
152
|
+
]);
|
|
153
|
+
});
|
|
154
|
+
}
|
|
132
155
|
_handleLegend(series) {
|
|
133
156
|
const legend = this.get("legend");
|
|
134
157
|
if (legend) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Indicator.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/Indicator.ts"],"names":[],"mappings":"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","sourcesContent":["import type { XYSeries, IXYSeriesDataItem } from \"../../xy/series/XYSeries\";\r\nimport type { StockLegend } from \"../StockLegend\";\r\nimport type { StockChart } from \"../StockChart\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\nimport type { Color } from \"../../../core/util/Color\";\r\n\r\nimport { Container, IContainerSettings, IContainerPrivate, IContainerEvents } from \"../../../core/render/Container\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\nimport { BaseColumnSeries } from \"../../xy/series/BaseColumnSeries\";\r\nimport { MultiDisposer } from \"../../../core/util/Disposer\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IIndicatorEditableSetting {\r\n\r\n\t/**\r\n\t * Setting key.\r\n\t */\r\n\tkey: string;\r\n\r\n\t/**\r\n\t * Name of the setting (displayed in edit modal).\r\n\t *\r\n\t * Settings with the same name will be grouped in modal.\r\n\t */\r\n\tname: string;\r\n\r\n\t/**\r\n\t * Type of the control to show for editing the setting in modal.\r\n\t */\r\n\ttype: \"color\" | \"number\" | \"dropdown\" | \"checkbox\";\r\n\r\n\t/**\r\n\t * If `type: \"dropdown\"`, `options` should contain a list of items it.\r\n\t */\r\n\toptions?: Array<string | { value: number | string, text: string }>;\r\n\r\n}\r\n\r\nexport interface IIndicatorSettings extends IContainerSettings {\r\n\r\n\t/**\r\n\t * An instance of target [[StockChart]].\r\n\t */\r\n\tstockChart: StockChart;\r\n\r\n\t/**\r\n\t * A main series indicator will be based on.\r\n\t */\r\n\tstockSeries: XYSeries;\r\n\r\n\t/**\r\n\t * A volume series indicator will be based on, if it reaquires one.\r\n\t */\r\n\tvolumeSeries?: XYSeries;\r\n\r\n\t/**\r\n\t * If set to a reference to [[StockLegend]], indicator will add itself into\r\n\t * the legend.\r\n\t */\r\n\tlegend?: StockLegend;\r\n\r\n\t/**\r\n\t * Period.\r\n\t */\r\n\tperiod?: number;\r\n\r\n\t/**\r\n\t * A value field to use.\r\n\t */\r\n\tfield?: \"open\" | \"close\" | \"low\" | \"high\" | \"hl/2\" | \"hlc/3\" | \"hlcc/4\" | \"ohlc/4\";\r\n\r\n\t/**\r\n\t * Indicator name, e.g. \"Moving Average\".\r\n\t */\r\n\tname?: string;\r\n\r\n\t/**\r\n\t * Short name for the indicator, e.g. \"MA\" (for \"Moving Average\").\r\n\t *\r\n\t * Mainly used for the legend.\r\n\t */\r\n\tshortName?: string;\r\n\r\n\t/**\r\n\t * A color to use for the indicator series.\r\n\t */\r\n\tseriesColor?: Color;\r\n\r\n}\r\n\r\nexport interface IIndicatorPrivate extends IContainerPrivate {\r\n}\r\n\r\nexport interface IIndicatorEvents extends IContainerEvents {\r\n}\r\n\r\n/**\r\n * Base class for [[StockChart]] indicators.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport abstract class Indicator extends Container {\r\n\tpublic static className: string = \"Indicator\";\r\n\tpublic static classNames: Array<string> = Container.classNames.concat([Indicator.className]);\r\n\r\n\tdeclare public _settings: IIndicatorSettings;\r\n\tdeclare public _privateSettings: IIndicatorPrivate;\r\n\tdeclare public _events: IIndicatorEvents;\r\n\r\n\tpublic _editableSettings: IIndicatorEditableSetting[] = [];\r\n\r\n\tpublic series!: XYSeries;\r\n\r\n\tprotected _dataDirty = false;\r\n\r\n\tprotected _sDP?: MultiDisposer;\r\n\tprotected _vDP?: MultiDisposer;\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tsuper._prepareChildren();\r\n\r\n\t\tif (this.isDirty(\"stockSeries\") || this.isDirty(\"volumeSeries\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\r\n\t\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\t\tconst previousS = this._prevSettings.stockSeries;\r\n\t\t\tif (previousS && this._sDP) {\r\n\t\t\t\tthis._sDP.dispose();\r\n\t\t\t}\r\n\t\t\tif (stockSeries) {\r\n\t\t\t\tthis._sDP = new MultiDisposer([\r\n\t\t\t\t\tstockSeries.events.on(\"datavalidated\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tstockSeries.events.on(\"datasetchanged\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t})\r\n\t\t\t\t])\r\n\t\t\t}\r\n\r\n\t\t\tconst previousV = this._prevSettings.volumeSeries;\r\n\t\t\tif (previousV && this._vDP) {\r\n\t\t\t\tthis._vDP.dispose();\r\n\t\t\t}\r\n\t\t\tconst volumeSeries = this.get(\"volumeSeries\");\r\n\t\t\tif (volumeSeries) {\r\n\t\t\t\tthis._vDP = new MultiDisposer([\r\n\t\t\t\t\tvolumeSeries.events.on(\"datavalidated\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tvolumeSeries.events.on(\"datasetchanged\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\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\tif (this.isDirty(\"field\")) {\r\n\t\t\tif (this.get(\"field\")) {\r\n\t\t\t\tthis._dataDirty = true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.isDirty(\"period\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\t\t\tthis.setCustomData(\"period\", this.get(\"period\"));\r\n\t\t}\r\n\r\n\t\tif (this._dataDirty) {\r\n\t\t\tthis.prepareData();\r\n\t\t\tthis._dataDirty = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected markDataDirty() {\r\n\t\tthis._dataDirty = true;\r\n\t\tthis.markDirty();\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tif (this.isDirty(\"seriesColor\")) {\r\n\t\t\tthis._updateSeriesColor(this.series, this.get(\"seriesColor\"), \"seriesColor\");\r\n\t\t}\r\n\r\n\t\tthis.setCustomData(\"period\", this.get(\"period\"));\r\n\t\tthis.setCustomData(\"field\", this.get(\"field\"));\r\n\t\tthis.setCustomData(\"name\", this.get(\"name\"));\r\n\t\tthis.setCustomData(\"shortName\", this.get(\"shortName\"));\r\n\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tsuper._dispose();\r\n\r\n\t\tif (this._sDP) {\r\n\t\t\tthis._sDP.dispose();\r\n\t\t}\r\n\t\tif (this._vDP) {\r\n\t\t\tthis._vDP.dispose();\r\n\t\t}\r\n\r\n\t\tconst series = this.series;\r\n\t\tif (series) {\r\n\t\t\tseries.dispose();\r\n\t\t}\r\n\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tif (stockChart) {\r\n\t\t\tconst legend = this.get(\"legend\");\r\n\t\t\tif (legend) {\r\n\t\t\t\tconst legendDataItem = series.get(\"legendDataItem\");\r\n\t\t\t\tif (legendDataItem) {\r\n\t\t\t\t\tlegend.disposeDataItem(legendDataItem as any);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tstockChart.indicators.removeValue(this);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _handleLegend(series: XYSeries) {\r\n\t\tconst legend = this.get(\"legend\");\r\n\t\tif (legend) {\r\n\t\t\tlegend.data.push(series);\r\n\r\n\t\t\tvar legendDataItem = legend.dataItems[legend.dataItems.length - 1];\r\n\t\t\tlegendDataItem.get(\"marker\").set(\"forceHidden\", true);\r\n\r\n\t\t\tvar closeButton = legendDataItem.get(\"closeButton\");\r\n\t\t\tcloseButton.set(\"forceHidden\", false);\r\n\t\t\tcloseButton.events.on(\"click\", () => {\r\n\t\t\t\tthis.dispose();\r\n\t\t\t})\r\n\r\n\t\t\tvar settingsButton = legendDataItem.get(\"settingsButton\");\r\n\t\t\tsettingsButton.setPrivate(\"customData\", this);\r\n\r\n\t\t\tconst editableSettings = this._editableSettings;\r\n\t\t\tif (!editableSettings || editableSettings.length == 0) {\r\n\t\t\t\tsettingsButton.set(\"forceHidden\", true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateSeriesColor(series?: XYSeries, color?: Color, contextName?: string) {\r\n\t\tif (series) {\r\n\t\t\tseries.set(\"stroke\", color);\r\n\t\t\tseries.set(\"fill\", color);\r\n\t\t\tif (series instanceof LineSeries) {\r\n\t\t\t\tseries.strokes.template.set(\"stroke\", color);\r\n\t\t\t\tseries.fills.template.set(\"fill\", color);\r\n\t\t\t}\r\n\r\n\t\t\tif (series instanceof BaseColumnSeries) {\r\n\t\t\t\tseries.columns.template.setAll({ stroke: color, fill: color });\r\n\t\t\t}\r\n\r\n\t\t\tif (contextName && color) {\r\n\t\t\t\tthis.setCustomData(contextName, color.toCSSHex());\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tpublic setCustomData(name: string, value?: any) {\r\n\t\tconst customData = this.series.getPrivate(\"customData\");\r\n\t\tif (customData) {\r\n\t\t\tcustomData[name] = value;\r\n\t\t}\r\n\t}\r\n\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic prepareData() {\r\n\r\n\t}\r\n\r\n\tprotected _getValue(dataItem: DataItem<IXYSeriesDataItem>): number | undefined {\r\n\t\tconst field = this.get(\"field\");\r\n\r\n\t\tlet o = dataItem.get(\"openValueY\") as number;\r\n\t\tlet h = dataItem.get(\"highValueY\") as number;\r\n\t\tlet l = dataItem.get(\"lowValueY\") as number;\r\n\t\tlet c = dataItem.get(\"valueY\") as number;\r\n\r\n\t\tswitch (field) {\r\n\t\t\tcase \"close\":\r\n\t\t\t\treturn c;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"open\":\r\n\t\t\t\treturn o;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"high\":\r\n\t\t\t\treturn h;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"low\":\r\n\t\t\t\treturn l;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hl/2\":\r\n\t\t\t\treturn (h + l) / 2;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hlc/3\":\r\n\t\t\t\treturn (h + l + c) / 3;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hlcc/4\":\r\n\t\t\t\treturn (h + l + c + c) / 4;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"ohlc/4\":\r\n\t\t\t\treturn (o + h + l + c) / 4;\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tprotected _getDataArray(dataItems: Array<DataItem<any>>): Array<any> {\r\n\t\tconst data: Array<any> = [];\r\n\t\t$array.each(dataItems, (dataItem) => {\r\n\t\t\tdata.push({ valueX: dataItem.get(\"valueX\"), value_y: this._getValue(dataItem) });\r\n\t\t})\r\n\t\treturn data;\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tprotected _getTypicalPrice(dataItems: Array<DataItem<any>>): Array<any> {\r\n\t\tconst data: Array<any> = [];\r\n\t\t$array.each(dataItems, (dataItem) => {\r\n\t\t\tdata.push({ valueX: dataItem.get(\"valueX\"), value_y: (dataItem.get(\"valueY\", 0) + dataItem.get(\"highValueY\", 0) + dataItem.get(\"lowValueY\", 0)) / 2 });\r\n\t\t})\r\n\t\treturn data;\r\n\t}\r\n\r\n\tprotected _sma(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet index = 0;\r\n\t\tlet ma = 0;\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tma += value / period;\r\n\r\n\t\t\t\tif (i >= period) {\r\n\t\t\t\t\tif (i > period) {\r\n\t\t\t\t\t\tlet valueToRemove = data[index - period][field];\r\n\t\t\t\t\t\tif (valueToRemove != null) {\r\n\t\t\t\t\t\t\tma -= valueToRemove / period;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdataItem[toField] = ma;\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\tprotected _wma(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet index = 0;\r\n\t\tlet ma = 0;\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i >= period) {\r\n\t\t\t\t\tlet sum = 0;\r\n\t\t\t\t\tlet m = 0;\r\n\t\t\t\t\tlet count = 0;\r\n\t\t\t\t\tlet k = 0\r\n\t\t\t\t\tfor (let n = index; n >= 0; n--) {\r\n\t\t\t\t\t\tlet pValue = data[n][field];\r\n\r\n\t\t\t\t\t\tif (pValue != null) {\r\n\t\t\t\t\t\t\tsum += pValue * (period - m);\r\n\t\t\t\t\t\t\tcount += (period - m);\r\n\t\t\t\t\t\t\tk++;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tm++;\r\n\r\n\t\t\t\t\t\tif (k == period) {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tma = sum / count;\r\n\t\t\t\t\tdataItem[toField] = ma;\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\tprotected _ema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ma = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tma = value * multiplier + ma * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = ma;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tma += value / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = ma;\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 _dema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ema2 = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\r\n\t\tthis._ema(data, period, field, \"ema\");\r\n\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet ema = dataItem.ema;\r\n\t\t\tif (ema != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tema2 = ema * multiplier + ema2 * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = 2 * ema - ema2;\r\n\t\t\t\t\tdataItem.ema2 = ema2;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tema2 += ema / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = 2 * ema - ema2;\r\n\t\t\t\t\t\tdataItem.ema2 = ema2;\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 _tema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ema3 = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\r\n\t\tthis._dema(data, period, field, \"dema\");\r\n\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet ema = dataItem.ema;\r\n\t\t\tlet ema2 = dataItem.ema2;\r\n\r\n\t\t\tif (ema2 != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tema3 = ema2 * multiplier + ema3 * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = 3 * ema - 3 * ema2 + ema3;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tema3 += ema2 / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = 3 * ema - 3 * ema2 + ema3;\r\n\t\t\t\t\t}\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t})\r\n\t}\r\n}"]}
|
|
1
|
+
{"version":3,"file":"Indicator.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/Indicator.ts"],"names":[],"mappings":"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","sourcesContent":["import type { XYSeries, IXYSeriesDataItem } from \"../../xy/series/XYSeries\";\r\nimport type { StockLegend } from \"../StockLegend\";\r\nimport type { StockChart } from \"../StockChart\";\r\nimport type { DataItem } from \"../../../core/render/Component\";\r\nimport type { Color } from \"../../../core/util/Color\";\r\n\r\nimport { Container, IContainerSettings, IContainerPrivate, IContainerEvents } from \"../../../core/render/Container\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\nimport { BaseColumnSeries } from \"../../xy/series/BaseColumnSeries\";\r\nimport { MultiDisposer } from \"../../../core/util/Disposer\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IIndicatorEditableSetting {\r\n\r\n\t/**\r\n\t * Setting key.\r\n\t */\r\n\tkey: string;\r\n\r\n\t/**\r\n\t * Name of the setting (displayed in edit modal).\r\n\t *\r\n\t * Settings with the same name will be grouped in modal.\r\n\t */\r\n\tname: string;\r\n\r\n\t/**\r\n\t * Type of the control to show for editing the setting in modal.\r\n\t */\r\n\ttype: \"color\" | \"number\" | \"dropdown\" | \"checkbox\";\r\n\r\n\t/**\r\n\t * If `type: \"dropdown\"`, `options` should contain a list of items it.\r\n\t */\r\n\toptions?: Array<string | { value: number | string, text: string }>;\r\n\r\n}\r\n\r\nexport interface IIndicatorSettings extends IContainerSettings {\r\n\r\n\t/**\r\n\t * An instance of target [[StockChart]].\r\n\t */\r\n\tstockChart: StockChart;\r\n\r\n\t/**\r\n\t * A main series indicator will be based on.\r\n\t */\r\n\tstockSeries: XYSeries;\r\n\r\n\t/**\r\n\t * A volume series indicator will be based on, if it reaquires one.\r\n\t */\r\n\tvolumeSeries?: XYSeries;\r\n\r\n\t/**\r\n\t * If set to a reference to [[StockLegend]], indicator will add itself into\r\n\t * the legend.\r\n\t */\r\n\tlegend?: StockLegend;\r\n\r\n\t/**\r\n\t * Period.\r\n\t */\r\n\tperiod?: number;\r\n\r\n\t/**\r\n\t * A value field to use.\r\n\t */\r\n\tfield?: \"open\" | \"close\" | \"low\" | \"high\" | \"hl/2\" | \"hlc/3\" | \"hlcc/4\" | \"ohlc/4\";\r\n\r\n\t/**\r\n\t * Indicator name, e.g. \"Moving Average\".\r\n\t */\r\n\tname?: string;\r\n\r\n\t/**\r\n\t * Short name for the indicator, e.g. \"MA\" (for \"Moving Average\").\r\n\t *\r\n\t * Mainly used for the legend.\r\n\t */\r\n\tshortName?: string;\r\n\r\n\t/**\r\n\t * A color to use for the indicator series.\r\n\t */\r\n\tseriesColor?: Color;\r\n\r\n}\r\n\r\nexport interface IIndicatorPrivate extends IContainerPrivate {\r\n}\r\n\r\nexport interface IIndicatorEvents extends IContainerEvents {\r\n}\r\n\r\n/**\r\n * Base class for [[StockChart]] indicators.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport abstract class Indicator extends Container {\r\n\tpublic static className: string = \"Indicator\";\r\n\tpublic static classNames: Array<string> = Container.classNames.concat([Indicator.className]);\r\n\r\n\tdeclare public _settings: IIndicatorSettings;\r\n\tdeclare public _privateSettings: IIndicatorPrivate;\r\n\tdeclare public _events: IIndicatorEvents;\r\n\r\n\tpublic _editableSettings: IIndicatorEditableSetting[] = [];\r\n\r\n\tpublic series!: XYSeries;\r\n\r\n\tprotected _dataDirty = false;\r\n\r\n\tprotected _sDP?: MultiDisposer;\r\n\tprotected _vDP?: MultiDisposer;\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tsuper._prepareChildren();\r\n\r\n\t\tif (this.isDirty(\"stockSeries\") || this.isDirty(\"volumeSeries\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\r\n\t\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\t\tconst previousS = this._prevSettings.stockSeries;\r\n\t\t\tif (previousS && this._sDP) {\r\n\t\t\t\tthis._sDP.dispose();\r\n\t\t\t}\r\n\t\t\tif (stockSeries) {\r\n\t\t\t\tthis._sDP = new MultiDisposer([\r\n\t\t\t\t\tstockSeries.events.on(\"datavalidated\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tstockSeries.events.on(\"datasetchanged\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t})\r\n\t\t\t\t])\r\n\t\t\t}\r\n\r\n\t\t\tconst previousV = this._prevSettings.volumeSeries;\r\n\t\t\tif (previousV && this._vDP) {\r\n\t\t\t\tthis._vDP.dispose();\r\n\t\t\t}\r\n\t\t\tconst volumeSeries = this.get(\"volumeSeries\");\r\n\t\t\tif (volumeSeries) {\r\n\t\t\t\tthis._vDP = new MultiDisposer([\r\n\t\t\t\t\tvolumeSeries.events.on(\"datavalidated\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\r\n\t\t\t\t\t}),\r\n\t\t\t\t\tvolumeSeries.events.on(\"datasetchanged\", () => {\r\n\t\t\t\t\t\tthis.markDataDirty();\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\tif (this.isDirty(\"field\")) {\r\n\t\t\tif (this.get(\"field\")) {\r\n\t\t\t\tthis._dataDirty = true;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tif (this.isDirty(\"period\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\t\t\tthis.setCustomData(\"period\", this.get(\"period\"));\r\n\t\t}\r\n\r\n\t\tif (this._dataDirty) {\r\n\t\t\tthis.prepareData();\r\n\t\t\tthis._dataDirty = false;\r\n\t\t}\r\n\t}\r\n\r\n\tprotected markDataDirty() {\r\n\t\tthis._dataDirty = true;\r\n\t\tthis.markDirty();\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tif (this.isDirty(\"seriesColor\")) {\r\n\t\t\tthis._updateSeriesColor(this.series, this.get(\"seriesColor\"), \"seriesColor\");\r\n\t\t}\r\n\r\n\t\tthis.setCustomData(\"period\", this.get(\"period\"));\r\n\t\tthis.setCustomData(\"field\", this.get(\"field\"));\r\n\t\tthis.setCustomData(\"name\", this.get(\"name\"));\r\n\t\tthis.setCustomData(\"shortName\", this.get(\"shortName\"));\r\n\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tsuper._dispose();\r\n\r\n\t\tif (this._sDP) {\r\n\t\t\tthis._sDP.dispose();\r\n\t\t}\r\n\t\tif (this._vDP) {\r\n\t\t\tthis._vDP.dispose();\r\n\t\t}\r\n\r\n\t\tconst series = this.series;\r\n\t\tif (series) {\r\n\t\t\tseries.dispose();\r\n\t\t}\r\n\r\n\t\tconst stockChart = this.get(\"stockChart\");\r\n\t\tif (stockChart) {\r\n\t\t\tconst legend = this.get(\"legend\");\r\n\t\t\tif (legend) {\r\n\t\t\t\tconst legendDataItem = series.get(\"legendDataItem\");\r\n\t\t\t\tif (legendDataItem) {\r\n\t\t\t\t\tlegend.disposeDataItem(legendDataItem as any);\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t\tstockChart.indicators.removeValue(this);\r\n\t\t}\r\n\t}\r\n\r\n\tpublic async hide(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.hide(duration),\r\n\t\t\tthis.series.hide(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tpublic async show(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.show(duration),\r\n\t\t\tthis.series.show(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tprotected _handleLegend(series: XYSeries) {\r\n\t\tconst legend = this.get(\"legend\");\r\n\t\tif (legend) {\r\n\t\t\tlegend.data.push(series);\r\n\r\n\t\t\tvar legendDataItem = legend.dataItems[legend.dataItems.length - 1];\r\n\t\t\tlegendDataItem.get(\"marker\").set(\"forceHidden\", true);\r\n\r\n\t\t\tvar closeButton = legendDataItem.get(\"closeButton\");\r\n\t\t\tcloseButton.set(\"forceHidden\", false);\r\n\t\t\tcloseButton.events.on(\"click\", () => {\r\n\t\t\t\tthis.dispose();\r\n\t\t\t})\r\n\r\n\t\t\tvar settingsButton = legendDataItem.get(\"settingsButton\");\r\n\t\t\tsettingsButton.setPrivate(\"customData\", this);\r\n\r\n\t\t\tconst editableSettings = this._editableSettings;\r\n\t\t\tif (!editableSettings || editableSettings.length == 0) {\r\n\t\t\t\tsettingsButton.set(\"forceHidden\", true);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _updateSeriesColor(series?: XYSeries, color?: Color, contextName?: string) {\r\n\t\tif (series) {\r\n\t\t\tseries.set(\"stroke\", color);\r\n\t\t\tseries.set(\"fill\", color);\r\n\t\t\tif (series instanceof LineSeries) {\r\n\t\t\t\tseries.strokes.template.set(\"stroke\", color);\r\n\t\t\t\tseries.fills.template.set(\"fill\", color);\r\n\t\t\t}\r\n\r\n\t\t\tif (series instanceof BaseColumnSeries) {\r\n\t\t\t\tseries.columns.template.setAll({ stroke: color, fill: color });\r\n\t\t\t}\r\n\r\n\t\t\tif (contextName && color) {\r\n\t\t\t\tthis.setCustomData(contextName, color.toCSSHex());\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tpublic setCustomData(name: string, value?: any) {\r\n\t\tconst customData = this.series.getPrivate(\"customData\");\r\n\t\tif (customData) {\r\n\t\t\tcustomData[name] = value;\r\n\t\t}\r\n\t}\r\n\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic prepareData() {\r\n\r\n\t}\r\n\r\n\tprotected _getValue(dataItem: DataItem<IXYSeriesDataItem>): number | undefined {\r\n\t\tconst field = this.get(\"field\");\r\n\r\n\t\tlet o = dataItem.get(\"openValueY\") as number;\r\n\t\tlet h = dataItem.get(\"highValueY\") as number;\r\n\t\tlet l = dataItem.get(\"lowValueY\") as number;\r\n\t\tlet c = dataItem.get(\"valueY\") as number;\r\n\r\n\t\tswitch (field) {\r\n\t\t\tcase \"close\":\r\n\t\t\t\treturn c;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"open\":\r\n\t\t\t\treturn o;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"high\":\r\n\t\t\t\treturn h;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"low\":\r\n\t\t\t\treturn l;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hl/2\":\r\n\t\t\t\treturn (h + l) / 2;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hlc/3\":\r\n\t\t\t\treturn (h + l + c) / 3;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"hlcc/4\":\r\n\t\t\t\treturn (h + l + c + c) / 4;\r\n\t\t\t\tbreak;\r\n\t\t\tcase \"ohlc/4\":\r\n\t\t\t\treturn (o + h + l + c) / 4;\r\n\t\t\t\tbreak;\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tprotected _getDataArray(dataItems: Array<DataItem<any>>): Array<any> {\r\n\t\tconst data: Array<any> = [];\r\n\t\t$array.each(dataItems, (dataItem) => {\r\n\t\t\tdata.push({ valueX: dataItem.get(\"valueX\"), value_y: this._getValue(dataItem) });\r\n\t\t})\r\n\t\treturn data;\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tprotected _getTypicalPrice(dataItems: Array<DataItem<any>>): Array<any> {\r\n\t\tconst data: Array<any> = [];\r\n\t\t$array.each(dataItems, (dataItem) => {\r\n\t\t\tdata.push({ valueX: dataItem.get(\"valueX\"), value_y: (dataItem.get(\"valueY\", 0) + dataItem.get(\"highValueY\", 0) + dataItem.get(\"lowValueY\", 0)) / 2 });\r\n\t\t})\r\n\t\treturn data;\r\n\t}\r\n\r\n\tprotected _sma(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet index = 0;\r\n\t\tlet ma = 0;\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tma += value / period;\r\n\r\n\t\t\t\tif (i >= period) {\r\n\t\t\t\t\tif (i > period) {\r\n\t\t\t\t\t\tlet valueToRemove = data[index - period][field];\r\n\t\t\t\t\t\tif (valueToRemove != null) {\r\n\t\t\t\t\t\t\tma -= valueToRemove / period;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\t\t\t\t\tdataItem[toField] = ma;\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\tprotected _wma(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet index = 0;\r\n\t\tlet ma = 0;\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i >= period) {\r\n\t\t\t\t\tlet sum = 0;\r\n\t\t\t\t\tlet m = 0;\r\n\t\t\t\t\tlet count = 0;\r\n\t\t\t\t\tlet k = 0\r\n\t\t\t\t\tfor (let n = index; n >= 0; n--) {\r\n\t\t\t\t\t\tlet pValue = data[n][field];\r\n\r\n\t\t\t\t\t\tif (pValue != null) {\r\n\t\t\t\t\t\t\tsum += pValue * (period - m);\r\n\t\t\t\t\t\t\tcount += (period - m);\r\n\t\t\t\t\t\t\tk++;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\tm++;\r\n\r\n\t\t\t\t\t\tif (k == period) {\r\n\t\t\t\t\t\t\tbreak;\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tma = sum / count;\r\n\t\t\t\t\tdataItem[toField] = ma;\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\tprotected _ema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ma = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet value = dataItem[field];\r\n\t\t\tif (value != null) {\r\n\t\t\t\ti++;\r\n\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tma = value * multiplier + ma * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = ma;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tma += value / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = ma;\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 _dema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ema2 = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\r\n\t\tthis._ema(data, period, field, \"ema\");\r\n\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet ema = dataItem.ema;\r\n\t\t\tif (ema != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tema2 = ema * multiplier + ema2 * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = 2 * ema - ema2;\r\n\t\t\t\t\tdataItem.ema2 = ema2;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tema2 += ema / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = 2 * ema - ema2;\r\n\t\t\t\t\t\tdataItem.ema2 = ema2;\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 _tema(data: Array<any>, period: number, field: string, toField: string) {\r\n\t\tlet i = 0;\r\n\t\tlet ema3 = 0;\r\n\t\tlet multiplier = 2 / (1 + period);\r\n\r\n\t\tthis._dema(data, period, field, \"dema\");\r\n\r\n\t\t$array.each(data, (dataItem) => {\r\n\t\t\tlet ema = dataItem.ema;\r\n\t\t\tlet ema2 = dataItem.ema2;\r\n\r\n\t\t\tif (ema2 != null) {\r\n\t\t\t\ti++;\r\n\t\t\t\tif (i > period) {\r\n\t\t\t\t\tema3 = ema2 * multiplier + ema3 * (1 - multiplier);\r\n\t\t\t\t\tdataItem[toField] = 3 * ema - 3 * ema2 + ema3;\r\n\t\t\t\t}\r\n\t\t\t\telse {\r\n\t\t\t\t\tema3 += ema2 / period;\r\n\t\t\t\t\tif (i == period) {\r\n\t\t\t\t\t\tdataItem[toField] = 3 * ema - 3 * ema2 + ema3;\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}"]}
|
|
@@ -56,5 +56,7 @@ export declare class MovingAverageEnvelope extends MovingAverage {
|
|
|
56
56
|
*/
|
|
57
57
|
prepareData(): void;
|
|
58
58
|
protected _dispose(): void;
|
|
59
|
+
hide(duration?: number): Promise<any>;
|
|
60
|
+
show(duration?: number): Promise<any>;
|
|
59
61
|
}
|
|
60
62
|
//# sourceMappingURL=MovingAverageEnvelope.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MovingAverageEnvelope.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/MovingAverageEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACrH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,MAAM,WAAW,8BAA+B,SAAQ,sBAAsB;IAE7E;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAEjC;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;CAEnB;AAED,MAAM,WAAW,6BAA8B,SAAQ,qBAAqB;CAC3E;AAED,MAAM,WAAW,4BAA6B,SAAQ,oBAAoB;CACzE;AAGD;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,aAAa;IACvD,OAAc,SAAS,EAAE,MAAM,CAA2B;IAC1D,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsE;IAE9F,SAAS,EAAE,8BAA8B,CAAC;IAC1C,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,OAAO,EAAE,4BAA4B,CAAC;IAErD;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAEpC;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAE7B,iBAAiB,EAAE,yBAAyB,EAAE,CAuClD;IAEH,SAAS,CAAC,SAAS;IAyCZ,eAAe;IAuBf,gBAAgB;IASvB;;OAEG;IACI,WAAW;IAgClB,SAAS,CAAC,QAAQ;
|
|
1
|
+
{"version":3,"file":"MovingAverageEnvelope.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/MovingAverageEnvelope.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD,OAAO,EAAE,aAAa,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACrH,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAIxD,MAAM,WAAW,8BAA+B,SAAQ,sBAAsB;IAE7E;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;OAIG;IACH,SAAS,CAAC,EAAE,SAAS,GAAG,QAAQ,CAAC;IAEjC;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,KAAK,CAAC;CAEnB;AAED,MAAM,WAAW,6BAA8B,SAAQ,qBAAqB;CAC3E;AAED,MAAM,WAAW,4BAA6B,SAAQ,oBAAoB;CACzE;AAGD;;;;GAIG;AACH,qBAAa,qBAAsB,SAAQ,aAAa;IACvD,OAAc,SAAS,EAAE,MAAM,CAA2B;IAC1D,OAAc,UAAU,EAAE,KAAK,CAAC,MAAM,CAAC,CAAsE;IAE9F,SAAS,EAAE,8BAA8B,CAAC;IAC1C,gBAAgB,EAAE,6BAA6B,CAAC;IAChD,OAAO,EAAE,4BAA4B,CAAC;IAErD;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAEpC;;OAEG;IACI,eAAe,EAAG,UAAU,CAAC;IAE7B,iBAAiB,EAAE,yBAAyB,EAAE,CAuClD;IAEH,SAAS,CAAC,SAAS;IAyCZ,eAAe;IAuBf,gBAAgB;IASvB;;OAEG;IACI,WAAW;IAgClB,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;CAOlD"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
1
2
|
import { MovingAverage } from "./MovingAverage";
|
|
2
3
|
import { LineSeries } from "../../xy/series/LineSeries";
|
|
3
4
|
import * as $array from "../../../core/util/Array";
|
|
@@ -167,6 +168,30 @@ export class MovingAverageEnvelope extends MovingAverage {
|
|
|
167
168
|
this.lowerBandSeries.dispose();
|
|
168
169
|
super._dispose();
|
|
169
170
|
}
|
|
171
|
+
hide(duration) {
|
|
172
|
+
const _super = Object.create(null, {
|
|
173
|
+
hide: { get: () => super.hide }
|
|
174
|
+
});
|
|
175
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
176
|
+
return Promise.all([
|
|
177
|
+
_super.hide.call(this, duration),
|
|
178
|
+
this.upperBandSeries.hide(duration),
|
|
179
|
+
this.lowerBandSeries.hide(duration)
|
|
180
|
+
]);
|
|
181
|
+
});
|
|
182
|
+
}
|
|
183
|
+
show(duration) {
|
|
184
|
+
const _super = Object.create(null, {
|
|
185
|
+
show: { get: () => super.show }
|
|
186
|
+
});
|
|
187
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
188
|
+
return Promise.all([
|
|
189
|
+
_super.show.call(this, duration),
|
|
190
|
+
this.upperBandSeries.show(duration),
|
|
191
|
+
this.lowerBandSeries.show(duration)
|
|
192
|
+
]);
|
|
193
|
+
});
|
|
194
|
+
}
|
|
170
195
|
}
|
|
171
196
|
Object.defineProperty(MovingAverageEnvelope, "className", {
|
|
172
197
|
enumerable: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MovingAverageEnvelope.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/MovingAverageEnvelope.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 { MovingAverage, IMovingAverageSettings, IMovingAveragePrivate, IMovingAverageEvents } from \"./MovingAverage\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IMovingAverageEnvelopeSettings extends IMovingAverageSettings {\r\n\r\n\t/**\r\n\t * Shift.\r\n\t *\r\n\t * @default 5\r\n\t */\r\n\tshift?: number;\r\n\r\n\t/**\r\n\t * Type of the shift.\r\n\t *\r\n\t * @default \"percent\"\r\n\t */\r\n\tshiftType?: \"percent\" | \"points\";\r\n\r\n\t/**\r\n\t * A color for upper section.\r\n\t */\r\n\tupperColor?: Color;\r\n\r\n\t/**\r\n\t * A color for lower section.\r\n\t */\r\n\tlowerColor?: Color;\r\n\r\n}\r\n\r\nexport interface IMovingAverageEnvelopePrivate extends IMovingAveragePrivate {\r\n}\r\n\r\nexport interface IMovingAverageEnvelopeEvents extends IMovingAverageEvents {\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 MovingAverageEnvelope extends MovingAverage {\r\n\tpublic static className: string = \"MovingAverageEnvelope\";\r\n\tpublic static classNames: Array<string> = MovingAverage.classNames.concat([MovingAverageEnvelope.className]);\r\n\r\n\tdeclare public _settings: IMovingAverageEnvelopeSettings;\r\n\tdeclare public _privateSettings: IMovingAverageEnvelopePrivate;\r\n\tdeclare public _events: IMovingAverageEnvelopeEvents;\r\n\r\n\t/**\r\n\t * Indicator series for the upper band.\r\n\t */\r\n\tpublic upperBandSeries!: LineSeries;\r\n\r\n\t/**\r\n\t * Indicator series for the lower band.\r\n\t */\r\n\tpublic lowerBandSeries!: LineSeries;\r\n\r\n\tpublic _editableSettings: IIndicatorEditableSetting[] = [{\r\n\t\tkey: \"period\",\r\n\t\tname: this.root.language.translateAny(\"Period\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"type\",\r\n\t\tname: this.root.language.translateAny(\"Type\"),\r\n\t\ttype: \"dropdown\",\r\n\t\toptions: [\"simple\", \"weighted\", \"exponential\", \"dema\", \"tema\"]\r\n\t}, {\r\n\t\tkey: \"field\",\r\n\t\tname: this.root.language.translateAny(\"Field\"),\r\n\t\ttype: \"dropdown\",\r\n\t\toptions: [\"open\", \"close\", \"low\", \"high\", \"hl/2\", \"hlc/3\", \"hlcc/4\", \"ohlc/4\"]\r\n\t}, {\r\n\t\tkey: \"shiftType\",\r\n\t\tname: this.root.language.translateAny(\"Shift type\"),\r\n\t\ttype: \"dropdown\",\r\n\t\toptions: [\"percent\", \"points\"]\r\n\t}, {\r\n\t\tkey: \"shift\",\r\n\t\tname: this.root.language.translateAny(\"Shift\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"offset\",\r\n\t\tname: this.root.language.translateAny(\"Offset\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"upperColor\",\r\n\t\tname: this.root.language.translateAny(\"Top\"),\r\n\t\ttype: \"color\"\r\n\t}, {\r\n\t\tkey: \"seriesColor\",\r\n\t\tname: this.root.language.translateAny(\"Median\"),\r\n\t\ttype: \"color\"\r\n\t}, {\r\n\t\tkey: \"lowerColor\",\r\n\t\tname: this.root.language.translateAny(\"Bottom\"),\r\n\t\ttype: \"color\"\r\n\t}];\r\n\r\n\tprotected _afterNew() {\r\n\r\n\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\tconst chart = stockSeries.chart;\r\n\r\n\t\tif (chart) {\r\n\t\t\tconst upperBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n\t\t\t\tvalueXField: \"valueX\",\r\n\t\t\t\tvalueYField: \"upper\",\r\n\t\t\t\topenValueYField: \"lower\",\r\n\t\t\t\txAxis: stockSeries.get(\"xAxis\"),\r\n\t\t\t\tyAxis: stockSeries.get(\"yAxis\"),\r\n\t\t\t\tgroupDataDisabled: true,\r\n\t\t\t\tcalculateAggregates: true,\r\n\t\t\t\tthemeTags: [\"indicator\", \"movingaverageenvelope\", \"upper\"]\r\n\t\t\t}))\r\n\r\n\t\t\tupperBandSeries.fills.template.set(\"visible\", true);\r\n\t\t\tupperBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n\r\n\t\t\tthis.upperBandSeries = upperBandSeries;\r\n\r\n\t\t\tconst lowerBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n\t\t\t\tvalueXField: \"valueX\",\r\n\t\t\t\tvalueYField: \"lower\",\r\n\t\t\t\txAxis: stockSeries.get(\"xAxis\"),\r\n\t\t\t\tyAxis: stockSeries.get(\"yAxis\"),\r\n\t\t\t\tgroupDataDisabled: true,\r\n\t\t\t\tcalculateAggregates: true,\r\n\t\t\t\tthemeTags: [\"indicator\", \"movingaverageenvelope\", \"lower\"]\r\n\t\t\t}))\r\n\r\n\t\t\tlowerBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n\t\t\tthis.lowerBandSeries = lowerBandSeries;\r\n\t\t}\r\n\r\n\t\tsuper._afterNew();\r\n\t\tthis.series.addTag(\"movingaverageenvelope\");\r\n\t\tthis.series._applyThemes();\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\t\tif (this.isDirty(\"upperColor\")) {\r\n\t\t\tconst color = this.get(\"upperColor\");\r\n\t\t\tconst upperBandSeries = this.upperBandSeries;\r\n\t\t\tupperBandSeries.set(\"stroke\", color);\r\n\t\t\tupperBandSeries.set(\"fill\", color);\r\n\t\t\tupperBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n\t\t\tthis._updateSeriesColor(upperBandSeries, color, \"upperColor\");\r\n\t\t}\r\n\r\n\t\tif (this.isDirty(\"lowerColor\")) {\r\n\t\t\tconst color = this.get(\"lowerColor\");\r\n\t\t\tconst lowerBandSeries = this.lowerBandSeries;\r\n\t\t\tlowerBandSeries.set(\"stroke\", color);\r\n\t\t\tlowerBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n\t\t\tthis._updateSeriesColor(lowerBandSeries, color, \"lowerColor\");\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tif (this.isDirty(\"shiftType\") || this.isDirty(\"shift\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\t\t\tthis.setCustomData(\"shift\", this.get(\"shift\"));\r\n\t\t\tthis.setCustomData(\"shiftType\", this.get(\"shiftType\"));\r\n\t\t}\r\n\t\tsuper._prepareChildren();\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic prepareData() {\r\n\t\tsuper.prepareData();\r\n\r\n\t\tif (this.series) {\r\n\t\t\tlet smaData = this.series.data.values as any;\r\n\t\t\tlet shift = Number(this.get(\"shift\", 5));\r\n\t\t\tlet shiftType = this.get(\"shiftType\");\r\n\r\n\t\t\t$array.each(smaData, (dataItem: any) => {\r\n\t\t\t\tlet value = dataItem.ma;\r\n\t\t\t\tif (value != null) {\r\n\t\t\t\t\tlet upper = value;\r\n\t\t\t\t\tlet lower = value;\r\n\t\t\t\t\tif (shiftType == \"points\") {\r\n\t\t\t\t\t\tupper += shift;\r\n\t\t\t\t\t\tlower -= shift;\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tupper += upper * shift / 100;\r\n\t\t\t\t\t\tlower -= lower * shift / 100;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tdataItem.upper = upper;\r\n\t\t\t\t\tdataItem.lower = lower;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t\tthis.upperBandSeries.data.setAll(smaData);\r\n\t\t\tthis.lowerBandSeries.data.setAll(smaData);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tthis.upperBandSeries.dispose();\r\n\t\tthis.lowerBandSeries.dispose();\r\n\t\tsuper._dispose();\r\n\t}\r\n}"]}
|
|
1
|
+
{"version":3,"file":"MovingAverageEnvelope.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/MovingAverageEnvelope.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 { MovingAverage, IMovingAverageSettings, IMovingAveragePrivate, IMovingAverageEvents } from \"./MovingAverage\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\n\r\nexport interface IMovingAverageEnvelopeSettings extends IMovingAverageSettings {\r\n\r\n\t/**\r\n\t * Shift.\r\n\t *\r\n\t * @default 5\r\n\t */\r\n\tshift?: number;\r\n\r\n\t/**\r\n\t * Type of the shift.\r\n\t *\r\n\t * @default \"percent\"\r\n\t */\r\n\tshiftType?: \"percent\" | \"points\";\r\n\r\n\t/**\r\n\t * A color for upper section.\r\n\t */\r\n\tupperColor?: Color;\r\n\r\n\t/**\r\n\t * A color for lower section.\r\n\t */\r\n\tlowerColor?: Color;\r\n\r\n}\r\n\r\nexport interface IMovingAverageEnvelopePrivate extends IMovingAveragePrivate {\r\n}\r\n\r\nexport interface IMovingAverageEnvelopeEvents extends IMovingAverageEvents {\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 MovingAverageEnvelope extends MovingAverage {\r\n\tpublic static className: string = \"MovingAverageEnvelope\";\r\n\tpublic static classNames: Array<string> = MovingAverage.classNames.concat([MovingAverageEnvelope.className]);\r\n\r\n\tdeclare public _settings: IMovingAverageEnvelopeSettings;\r\n\tdeclare public _privateSettings: IMovingAverageEnvelopePrivate;\r\n\tdeclare public _events: IMovingAverageEnvelopeEvents;\r\n\r\n\t/**\r\n\t * Indicator series for the upper band.\r\n\t */\r\n\tpublic upperBandSeries!: LineSeries;\r\n\r\n\t/**\r\n\t * Indicator series for the lower band.\r\n\t */\r\n\tpublic lowerBandSeries!: LineSeries;\r\n\r\n\tpublic _editableSettings: IIndicatorEditableSetting[] = [{\r\n\t\tkey: \"period\",\r\n\t\tname: this.root.language.translateAny(\"Period\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"type\",\r\n\t\tname: this.root.language.translateAny(\"Type\"),\r\n\t\ttype: \"dropdown\",\r\n\t\toptions: [\"simple\", \"weighted\", \"exponential\", \"dema\", \"tema\"]\r\n\t}, {\r\n\t\tkey: \"field\",\r\n\t\tname: this.root.language.translateAny(\"Field\"),\r\n\t\ttype: \"dropdown\",\r\n\t\toptions: [\"open\", \"close\", \"low\", \"high\", \"hl/2\", \"hlc/3\", \"hlcc/4\", \"ohlc/4\"]\r\n\t}, {\r\n\t\tkey: \"shiftType\",\r\n\t\tname: this.root.language.translateAny(\"Shift type\"),\r\n\t\ttype: \"dropdown\",\r\n\t\toptions: [\"percent\", \"points\"]\r\n\t}, {\r\n\t\tkey: \"shift\",\r\n\t\tname: this.root.language.translateAny(\"Shift\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"offset\",\r\n\t\tname: this.root.language.translateAny(\"Offset\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"upperColor\",\r\n\t\tname: this.root.language.translateAny(\"Top\"),\r\n\t\ttype: \"color\"\r\n\t}, {\r\n\t\tkey: \"seriesColor\",\r\n\t\tname: this.root.language.translateAny(\"Median\"),\r\n\t\ttype: \"color\"\r\n\t}, {\r\n\t\tkey: \"lowerColor\",\r\n\t\tname: this.root.language.translateAny(\"Bottom\"),\r\n\t\ttype: \"color\"\r\n\t}];\r\n\r\n\tprotected _afterNew() {\r\n\r\n\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\tconst chart = stockSeries.chart;\r\n\r\n\t\tif (chart) {\r\n\t\t\tconst upperBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n\t\t\t\tvalueXField: \"valueX\",\r\n\t\t\t\tvalueYField: \"upper\",\r\n\t\t\t\topenValueYField: \"lower\",\r\n\t\t\t\txAxis: stockSeries.get(\"xAxis\"),\r\n\t\t\t\tyAxis: stockSeries.get(\"yAxis\"),\r\n\t\t\t\tgroupDataDisabled: true,\r\n\t\t\t\tcalculateAggregates: true,\r\n\t\t\t\tthemeTags: [\"indicator\", \"movingaverageenvelope\", \"upper\"]\r\n\t\t\t}))\r\n\r\n\t\t\tupperBandSeries.fills.template.set(\"visible\", true);\r\n\t\t\tupperBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n\r\n\t\t\tthis.upperBandSeries = upperBandSeries;\r\n\r\n\t\t\tconst lowerBandSeries = chart.series.push(LineSeries.new(this._root, {\r\n\t\t\t\tvalueXField: \"valueX\",\r\n\t\t\t\tvalueYField: \"lower\",\r\n\t\t\t\txAxis: stockSeries.get(\"xAxis\"),\r\n\t\t\t\tyAxis: stockSeries.get(\"yAxis\"),\r\n\t\t\t\tgroupDataDisabled: true,\r\n\t\t\t\tcalculateAggregates: true,\r\n\t\t\t\tthemeTags: [\"indicator\", \"movingaverageenvelope\", \"lower\"]\r\n\t\t\t}))\r\n\r\n\t\t\tlowerBandSeries.setPrivate(\"baseValueSeries\", stockSeries);\r\n\t\t\tthis.lowerBandSeries = lowerBandSeries;\r\n\t\t}\r\n\r\n\t\tsuper._afterNew();\r\n\t\tthis.series.addTag(\"movingaverageenvelope\");\r\n\t\tthis.series._applyThemes();\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\t\tif (this.isDirty(\"upperColor\")) {\r\n\t\t\tconst color = this.get(\"upperColor\");\r\n\t\t\tconst upperBandSeries = this.upperBandSeries;\r\n\t\t\tupperBandSeries.set(\"stroke\", color);\r\n\t\t\tupperBandSeries.set(\"fill\", color);\r\n\t\t\tupperBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n\t\t\tthis._updateSeriesColor(upperBandSeries, color, \"upperColor\");\r\n\t\t}\r\n\r\n\t\tif (this.isDirty(\"lowerColor\")) {\r\n\t\t\tconst color = this.get(\"lowerColor\");\r\n\t\t\tconst lowerBandSeries = this.lowerBandSeries;\r\n\t\t\tlowerBandSeries.set(\"stroke\", color);\r\n\t\t\tlowerBandSeries.strokes.template.set(\"stroke\", color);\r\n\r\n\t\t\tthis._updateSeriesColor(lowerBandSeries, color, \"lowerColor\");\r\n\t\t}\r\n\r\n\t}\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tif (this.isDirty(\"shiftType\") || this.isDirty(\"shift\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\t\t\tthis.setCustomData(\"shift\", this.get(\"shift\"));\r\n\t\t\tthis.setCustomData(\"shiftType\", this.get(\"shiftType\"));\r\n\t\t}\r\n\t\tsuper._prepareChildren();\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic prepareData() {\r\n\t\tsuper.prepareData();\r\n\r\n\t\tif (this.series) {\r\n\t\t\tlet smaData = this.series.data.values as any;\r\n\t\t\tlet shift = Number(this.get(\"shift\", 5));\r\n\t\t\tlet shiftType = this.get(\"shiftType\");\r\n\r\n\t\t\t$array.each(smaData, (dataItem: any) => {\r\n\t\t\t\tlet value = dataItem.ma;\r\n\t\t\t\tif (value != null) {\r\n\t\t\t\t\tlet upper = value;\r\n\t\t\t\t\tlet lower = value;\r\n\t\t\t\t\tif (shiftType == \"points\") {\r\n\t\t\t\t\t\tupper += shift;\r\n\t\t\t\t\t\tlower -= shift;\r\n\t\t\t\t\t}\r\n\t\t\t\t\telse {\r\n\t\t\t\t\t\tupper += upper * shift / 100;\r\n\t\t\t\t\t\tlower -= lower * shift / 100;\r\n\t\t\t\t\t}\r\n\r\n\t\t\t\t\tdataItem.upper = upper;\r\n\t\t\t\t\tdataItem.lower = lower;\r\n\t\t\t\t}\r\n\t\t\t})\r\n\r\n\t\t\tthis.upperBandSeries.data.setAll(smaData);\r\n\t\t\tthis.lowerBandSeries.data.setAll(smaData);\r\n\t\t}\r\n\t}\r\n\r\n\tprotected _dispose() {\r\n\t\tthis.upperBandSeries.dispose();\r\n\t\tthis.lowerBandSeries.dispose();\r\n\t\tsuper._dispose();\r\n\t}\r\n\r\n\tpublic async hide(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.hide(duration),\r\n\t\t\tthis.upperBandSeries.hide(duration),\r\n\t\t\tthis.lowerBandSeries.hide(duration)\r\n\t\t]);\r\n\t}\r\n\r\n\tpublic async show(duration?: number): Promise<any> {\r\n\t\treturn Promise.all([\r\n\t\t\tsuper.show(duration),\r\n\t\t\tthis.upperBandSeries.show(duration),\r\n\t\t\tthis.lowerBandSeries.show(duration)\r\n\t\t]);\r\n\t}\r\n}"]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Trix.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/Trix.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAA0E,MAAM,kBAAkB,CAAC;AAC1H,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,KAAK,MAAM,MAAM,0BAA0B,CAAC;AACnD,OAAO,KAAK,KAAK,MAAM,yBAAyB,CAAC;AAsBjD;;;;GAIG;AACH,MAAM,OAAO,IAAK,SAAQ,cAAc;IAAxC;;QAaC;;WAEG;QACH;;;;;WAAiC;QAEjC;;;;mBAAwD,CAAC;oBACxD,GAAG,EAAE,QAAQ;oBACb,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,QAAQ,CAAC;oBAC/C,IAAI,EAAE,QAAQ;iBACd,EAAE;oBACF,GAAG,EAAE,aAAa;oBAClB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,OAAO,CAAC;oBAC9C,IAAI,EAAE,OAAO;iBACb,
|
|
1
|
+
{"version":3,"file":"Trix.js","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/indicators/Trix.ts"],"names":[],"mappings":"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","sourcesContent":["import type { IIndicatorEditableSetting } from \"./Indicator\";\r\n\r\nimport { ChartIndicator, IChartIndicatorSettings, IChartIndicatorPrivate, IChartIndicatorEvents } from \"./ChartIndicator\";\r\nimport { LineSeries } from \"../../xy/series/LineSeries\";\r\n\r\nimport * as $array from \"../../../core/util/Array\";\r\nimport * as $type from \"../../../core/util/Type\";\r\nimport type { Color } from \"../../../core/util/Color\";\r\n\r\nexport interface ITrixSettings extends IChartIndicatorSettings {\r\n\t/**\r\n\t * Signal color.\r\n\t */\r\n\tsignalColor?: Color;\r\n\r\n\t/**\r\n\t * A value for \"signal\" period.\r\n\t */\r\n\tsignalPeriod?: number;\r\n}\r\n\r\nexport interface ITrixPrivate extends IChartIndicatorPrivate {\r\n}\r\n\r\nexport interface ITrixEvents extends IChartIndicatorEvents {\r\n}\r\n\r\n\r\n/**\r\n * An implementation of a [[StockChart]] indicator.\r\n *\r\n * @see {@link https://www.amcharts.com/docs/v5/charts/stock/indicators/} for more info\r\n */\r\nexport class Trix extends ChartIndicator {\r\n\tpublic static className: string = \"Trix\";\r\n\tpublic static classNames: Array<string> = ChartIndicator.classNames.concat([Trix.className]);\r\n\r\n\tdeclare public _settings: ITrixSettings;\r\n\tdeclare public _privateSettings: ITrixPrivate;\r\n\tdeclare public _events: ITrixEvents;\r\n\r\n\t/**\r\n\t * Indicator series.\r\n\t */\r\n\tdeclare public series: LineSeries;\r\n\r\n\t/**\r\n\t * Indicator series for the signal.\r\n\t */\r\n\tpublic signalSeries!: LineSeries;\r\n\r\n\tpublic _editableSettings: IIndicatorEditableSetting[] = [{\r\n\t\tkey: \"period\",\r\n\t\tname: this.root.language.translateAny(\"Period\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"seriesColor\",\r\n\t\tname: this.root.language.translateAny(\"Color\"),\r\n\t\ttype: \"color\"\r\n\t}, {\r\n\t\tkey: \"signalPeriod\",\r\n\t\tname: this.root.language.translateAny(\"Signal period\"),\r\n\t\ttype: \"number\"\r\n\t}, {\r\n\t\tkey: \"signalColor\",\r\n\t\tname: this.root.language.translateAny(\"Signal color\"),\r\n\t\ttype: \"color\"\r\n\t}];\r\n\r\n\tprotected _themeTag: string = \"trix\";\r\n\r\n\tpublic _createSeries(): LineSeries {\r\n\t\treturn this.panel.series.push(LineSeries.new(this._root, {\r\n\t\t\tthemeTags: [\"indicator\"],\r\n\t\t\txAxis: this.xAxis,\r\n\t\t\tyAxis: this.yAxis,\r\n\t\t\tvalueXField: \"valueX\",\r\n\t\t\tvalueYField: \"trix\",\r\n\t\t\tfill: undefined\r\n\t\t}))\r\n\t}\r\n\r\n\r\n\tprotected _afterNew() {\r\n\t\tsuper._afterNew();\r\n\r\n\t\tconst chart = this.panel;\r\n\r\n\t\tif (chart) {\r\n\r\n\t\t\tconst signalSeries = chart.series.push(LineSeries.new(this._root, {\r\n\t\t\t\tvalueXField: \"valueX\",\r\n\t\t\t\tvalueYField: \"signal\",\r\n\t\t\t\txAxis: this.xAxis,\r\n\t\t\t\tyAxis: this.yAxis,\r\n\t\t\t\tgroupDataDisabled: true,\r\n\t\t\t\tthemeTags: [\"indicator\", \"signal\"]\r\n\t\t\t}))\r\n\r\n\t\t\tthis.signalSeries = signalSeries;\r\n\t\t}\r\n\t}\r\n\r\n\r\n\tpublic _prepareChildren() {\r\n\t\tif (this.isDirty(\"signalPeriod\")) {\r\n\t\t\tthis._dataDirty = true;\r\n\t\t\tthis.setCustomData(\"signalPeriod\", this.get(\"signalPeriod\"));\r\n\t\t}\r\n\t\tsuper._prepareChildren();\r\n\t}\r\n\r\n\tpublic _updateChildren() {\r\n\t\tsuper._updateChildren();\r\n\r\n\t\tif (this.isDirty(\"signalColor\")) {\r\n\t\t\tthis._updateSeriesColor(this.signalSeries, this.get(\"signalColor\"), \"signalColor\");\r\n\t\t}\r\n\r\n\t\tconst dataItem = this.series.dataItem;\r\n\t\tif (dataItem) {\r\n\t\t\tconst dataContext = dataItem.dataContext as any;\r\n\t\t\tif (dataContext) {\r\n\t\t\t\tdataContext.signalPeriod = this.get(\"signalPeriod\");\r\n\t\t\t\tconst signalColor = this.get(\"signalColor\");\r\n\t\t\t\tif (signalColor) {\r\n\t\t\t\t\tdataContext.signalColor = signalColor.toCSSHex();\r\n\t\t\t\t}\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\r\n\t/**\r\n\t * @ignore\r\n\t */\r\n\tpublic prepareData() {\r\n\t\tsuper.prepareData();\r\n\r\n\t\tif (this.series) {\r\n\r\n\t\t\tlet period = this.get(\"period\", 14);\r\n\t\t\tconst stockSeries = this.get(\"stockSeries\");\r\n\t\t\tconst dataItems = stockSeries.dataItems;\r\n\r\n\t\t\tlet data = this._getDataArray(dataItems);\r\n\r\n\t\t\tthis._ema(data, period, \"value_y\", \"ema\");\r\n\t\t\tthis._ema(data, period, \"ema\", \"ema2\");\r\n\t\t\tthis._ema(data, period, \"ema2\", \"ema3\");\r\n\r\n\t\t\tlet previousDataItem: any;\r\n\t\t\tlet previousValue: number;\r\n\t\t\t$array.each(data, (dataItem) => {\r\n\t\t\t\tlet value = dataItem.ema3;\r\n\t\t\t\tif (previousDataItem) {\r\n\t\t\t\t\tpreviousValue = previousDataItem.ema3;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tif ($type.isNumber(value) && $type.isNumber(previousValue)) {\r\n\t\t\t\t\tdataItem.trix = 100 * (value - previousValue) / previousValue;\r\n\t\t\t\t}\r\n\r\n\t\t\t\tpreviousDataItem = dataItem;\r\n\t\t\t})\r\n\r\n\r\n\t\t\tthis.series.data.setAll(data);\r\n\r\n\r\n\t\t\tperiod = this.get(\"signalPeriod\", 9);\r\n\t\t\tthis._sma(data, period, \"trix\", \"signal\");\r\n\r\n\t\t\tthis.signalSeries.data.setAll(data);\r\n\t\t}\r\n\t}\r\n}"]}
|
|
@@ -140,6 +140,19 @@ export declare class DrawingControl extends StockControl {
|
|
|
140
140
|
protected _isInited(): boolean;
|
|
141
141
|
protected _resetControls(): void;
|
|
142
142
|
protected _initToolbar(): void;
|
|
143
|
+
/**
|
|
144
|
+
* Enables or disables eraser tool.
|
|
145
|
+
*
|
|
146
|
+
* @since 5.3.9
|
|
147
|
+
* @param active Eraser active
|
|
148
|
+
*/
|
|
149
|
+
setEraser(active: boolean): void;
|
|
150
|
+
/**
|
|
151
|
+
* Clears all drawings.
|
|
152
|
+
*
|
|
153
|
+
* @since 5.3.9
|
|
154
|
+
*/
|
|
155
|
+
clearDrawings(): void;
|
|
143
156
|
_beforeChanged(): void;
|
|
144
157
|
protected _setTool(tool?: DrawingTools): void;
|
|
145
158
|
protected _maybeInitToolSeries(tool: DrawingTools): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawingControl.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/toolbar/DrawingControl.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DrawingControl.d.ts","sourceRoot":"","sources":["../../../../../../src/.internal/charts/stock/toolbar/DrawingControl.ts"],"names":[],"mappings":"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"}
|