UNPKG

igniteui-angular-charts

Version:

Ignite UI Angular charting components for building rich data visualizations for modern web apps.

151 lines (150 loc) 6.74 kB
import { Component, forwardRef, Input, ChangeDetectionStrategy } from '@angular/core'; import { IgxStrategyBasedIndicatorComponent } from "./igx-strategy-based-indicator-component"; import { IgxFinancialIndicatorComponent } from "./igx-financial-indicator-component"; import { IgxFinancialSeriesComponent } from "./igx-financial-series-component"; import { IgxSeriesComponent } from "./igx-series-component"; import { ChaikinOscillatorIndicator } from "./ChaikinOscillatorIndicator"; import * as i0 from "@angular/core"; /** * Represents the IgxDataChartComponent Chaikin Oscillator indicator series. * Default required members: Close, Low, High, Volume * * `ChaikinOscillatorIndicator` class specify the series as Chaikin Oscillator Indicator series. * * ```html * <igx-data-chart [dataSource]="data"> * <igx-category-x-axis #xAxis * label="time"> * </igx-category-x-axis> * <igx-numeric-y-axis #yAxis> * </igx-numeric-y-axis> * <igx-chaikin-oscillator-indicator * [xAxis]="xAxis" * [yAxis]="yAxis" * openMemberPath="open" * highMemberPath="high" * lowMemberPath="low" * closeMemberPath="close" * volumeMemberPath="volume" * longPeriod="30"> * </igx-chaikin-oscillator-indicator> * </igx-data-chart> * ``` * * ```ts * let series = new IgxChaikinOscillatorIndicatorComponent(); * series.xAxis = this.xAxis; * series.yAxis = this.yAxis; * series.openMemberPath = "open"; * series.highMemberPath = "high"; * series.lowMemberPath = "low"; * series.closeMemberPath = "close"; * this.chart.series.add(series); * ``` */ export let IgxChaikinOscillatorIndicatorComponent = /*@__PURE__*/ (() => { class IgxChaikinOscillatorIndicatorComponent extends IgxStrategyBasedIndicatorComponent { constructor() { super(); } createImplementation() { return new ChaikinOscillatorIndicator(); } /** * @hidden */ get i() { return this._implementation; } /** * Gets or sets the short moving average period for the current ChaikinOscillatorIndicator object. * The typical, and initial, value for short CHO periods is 3. * * Set the `ShortPeriod` property if you wish to change the short moving average period for the indicator. * * ```html * <igx-data-chart [dataSource]="data"> * <igx-category-x-axis #xAxis * label="time"> * </igx-category-x-axis> * <igx-numeric-y-axis #yAxis> * </igx-numeric-y-axis> * * <igx-chaikin-oscillator-indicator * [xAxis]="xAxis" * [yAxis]="yAxis" * openMemberPath="open" * highMemberPath="high" * lowMemberPath="low" * closeMemberPath="close" * volumeMemberPath="volume" * shortPeriod="5"> * </igx-chaikin-oscillator-indicator> * </igx-data-chart> * ``` * * ```ts * this.series.shortPeriod = 30; * ``` */ get shortPeriod() { return this.i.shortPeriod; } set shortPeriod(v) { this.i.shortPeriod = +v; } /** * Gets or sets the long moving average period for the current ChaikinOscillatorIndicator object. * The typical, and initial, value for long CHO periods is 10. * * Set the `LongPeriod` property if you wish to change the long moving average period for the indicator. * * ```html * <igx-data-chart [dataSource]="data"> * <igx-category-x-axis #xAxis * label="time"> * </igx-category-x-axis> * <igx-numeric-y-axis #yAxis> * </igx-numeric-y-axis> * * <igx-chaikin-oscillator-indicator * [xAxis]="xAxis" * [yAxis]="yAxis" * openMemberPath="open" * highMemberPath="high" * lowMemberPath="low" * closeMemberPath="close" * volumeMemberPath="volume" * longPeriod="30" > * </igx-chaikin-oscillator-indicator> * </igx-data-chart> * ``` * * ```ts * this.series.longPeriod = 30; * ``` */ get longPeriod() { return this.i.longPeriod; } set longPeriod(v) { this.i.longPeriod = +v; } } IgxChaikinOscillatorIndicatorComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxChaikinOscillatorIndicatorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); IgxChaikinOscillatorIndicatorComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: IgxChaikinOscillatorIndicatorComponent, selector: "igx-chaikin-oscillator-indicator", inputs: { shortPeriod: "shortPeriod", longPeriod: "longPeriod" }, providers: [{ provide: IgxStrategyBasedIndicatorComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }, { provide: IgxFinancialIndicatorComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }, { provide: IgxFinancialSeriesComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }, { provide: IgxSeriesComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }], usesInheritance: true, ngImport: i0, template: ``, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush }); return IgxChaikinOscillatorIndicatorComponent; })(); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxChaikinOscillatorIndicatorComponent, decorators: [{ type: Component, args: [{ selector: 'igx-chaikin-oscillator-indicator', template: ``, providers: [{ provide: IgxStrategyBasedIndicatorComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }, { provide: IgxFinancialIndicatorComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }, { provide: IgxFinancialSeriesComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }, { provide: IgxSeriesComponent, useExisting: forwardRef(() => IgxChaikinOscillatorIndicatorComponent) }], changeDetection: ChangeDetectionStrategy.OnPush }] }], ctorParameters: function () { return []; }, propDecorators: { shortPeriod: [{ type: Input }], longPeriod: [{ type: Input }] } });