igniteui-angular-charts
Version:
Ignite UI Angular charting components for building rich data visualizations for modern web apps.
337 lines (336 loc) • 11.8 kB
JavaScript
import { Component, Input } from '@angular/core';
import { MarkerType_$type } from "./MarkerType";
import { MarkerOutlineMode_$type } from "./MarkerOutlineMode";
import { MarkerFillMode_$type } from "./MarkerFillMode";
import { IgxSeriesComponent } from "./igx-series-component";
import { ensureBool, ensureEnum, brushToString, stringToBrush } from "igniteui-angular-core";
import * as i0 from "@angular/core";
/**
* Represents the base class for series containing markers.
*
* MarkerSeries represents the base class for series containing markers.
*
* Example:
*
* ```html
* <igx-data-chart
* [dataSource]="data">
* <igx-category-x-axis
* label="label"
* #xAxis
* >
* </igx-category-x-axis>
* <igx-numeric-y-axis
* minimumValue="0"
* #yAxis>
* </igx-numeric-y-axis>
* <igx-column-series
* #series
* [xAxis]="xAxis"
* [yAxis]="yAxis"
* valueMemberPath="value">
* </igx-column-series>
* </igx-data-chart>
* ```
*
* ```ts
* let series: IgxMarkerSeriesComponent = new IgxMarkerSeriesComponent();
* series.xAxis = this.xAxis;
* series.yAxis = this.yAxis;
* series.valueMemberPath = "value";
* this.chart.series.add(series);
* ```
*/
export let IgxMarkerSeriesComponent = /*@__PURE__*/ (() => {
class IgxMarkerSeriesComponent extends IgxSeriesComponent {
constructor() {
super();
}
/**
* @hidden
*/
get i() {
return this._implementation;
}
/**
* Returns whether the current series supports visual markers.
*
* `HasMarkers` property is overriden, it returns whether the current series supports visual markers. You can use it like this:
*
* ```ts
* let gotMarkers: boolean = this.series.hasMarkers;
* ```
*/
get hasMarkers() {
return this.i.hasMarkers;
}
get hasVisibleMarkers() {
return this.i.en;
}
/**
* Gets or sets the marker type for the current series object.
* This property is ignored when the MarkerTemplate property is set
*
* `MarkerType` property gets or sets the marker type for the current series object. For example, you can set it like this:
*
* ```html
* <igx-data-chart
* [dataSource]="data">
* <igx-category-x-axis
* label="label"
* #xAxis>
* </igx-category-x-axis>
* <igx-numeric-y-axis
* #yAxis>
* </igx-numeric-y-axis>
* <igx-column-series
* #series
* [xAxis]="xAxis"
* [yAxis]="yAxis"
* valueMemberPath="value"
* markerType = "circle">
* </igx-column-series>
* </igx-data-chart>
* ```
*
* ```ts
* this.series.markerType = "circle";
* ```
*/
get markerType() {
return this.i.xu;
}
set markerType(v) {
this.i.xu = ensureEnum(MarkerType_$type, v);
}
/**
* Represents the resolved marker type for the series.
*/
get actualMarkerType() {
return this.i.xs;
}
set actualMarkerType(v) {
this.i.xs = ensureEnum(MarkerType_$type, v);
}
/**
* Gets or sets whether the marker for the current series object should be treated as circular.
*/
get isCustomMarkerCircular() {
return this.i.xx;
}
set isCustomMarkerCircular(v) {
this.i.xx = ensureBool(v);
}
/**
* Gets whether the markers for the current series are in circular shape
*/
get effectiveIsMarkerCircular() {
return this.i.xw;
}
/**
* Gets or sets whether the marker outline is based on the marker brush of the series rather than the marker outlines collection.
*/
get markerOutlineMode() {
return this.i.xo;
}
set markerOutlineMode(v) {
this.i.xo = ensureEnum(MarkerOutlineMode_$type, v);
}
/**
* Gets or sets whether the marker fill is based on the marker outline of the series rather than the marker brushes collection.
*/
get markerFillMode() {
return this.i.xk;
}
set markerFillMode(v) {
this.i.xk = ensureEnum(MarkerFillMode_$type, v);
}
/**
* Gets or sets the MarkerTemplate for the current series object.
*
* `MarkerTemplate` property gets or sets the MarkerTemplate for the current series object. For example, you can use it like this:
*
* ```html
* <igx-data-chart
* [dataSource]="data">
* <igx-category-x-axis
* label="label"
* #xAxis>
* </igx-category-x-axis>
* <igx-numeric-y-axis #yAxis>
* </igx-numeric-y-axis>
* <igx-column-series
* #series
* [xAxis]="xAxis"
* [yAxis]="yAxis"
* valueMemberPath="value"
* markerTemplate="circleMarkerTemplate">
* </igx-column-series>
* </igx-data-chart>
* ```
*/
get markerTemplate() {
return this.i.ym;
}
set markerTemplate(v) {
this.i.ym = v;
}
/**
* Gets or sets thickness of the marker outline
*/
get markerThickness() {
return this.i.x3;
}
set markerThickness(v) {
this.i.x3 = +v;
}
/**
* Gets the effective marker template for the current series object.
*
* `ActualMarkerTemplate` property gets the effective marker template for the current series object. You can use it like this:
*
* ```ts
* let effectiveMarkerTemplate: IgxDataTemplate = this.series.actualMarkerTemplate;
* ```
*/
get actualMarkerTemplate() {
return this.i.yk;
}
set actualMarkerTemplate(v) {
this.i.yk = v;
}
/**
* Gets or sets the brush that specifies how the current series object's marker interiors are painted.
*
* `MarkerBrush` property gets or sets the brush that specifies how the current series object's marker interiors are painted. You can use it like this:
*
* ```html
* <igx-data-chart
* [dataSource]="data">
* <igx-category-x-axis
* label="label"
* #xAxis>
* </igx-category-x-axis>
* <igx-numeric-y-axis #yAxis>
* </igx-numeric-y-axis>
* <igx-column-series
* #series
* [xAxis]="xAxis"
* [yAxis]="yAxis"
* valueMemberPath="value"
* markerBrush = "blue">
* </igx-column-series>
* </igx-data-chart>
* ```
*
* ```ts
* this.series.markerBrush = "red";
* ```
*/
get markerBrush() {
return brushToString(this.i.y3);
}
set markerBrush(v) {
this.i.y3 = stringToBrush(v);
}
/**
* Gets the effective marker brush for the current series object.
*
* `ActualMarkerBrush` property gets the effective marker brush for the current series object. For example, you can use it like this:
*
* ```ts
* let effectiveMarkerBrush: string = this.series.actualMarkerBrush;
*
* ```
*/
get actualMarkerBrush() {
return brushToString(this.i.y1);
}
set actualMarkerBrush(v) {
this.i.y1 = stringToBrush(v);
}
/**
* Gets or sets the brush that specifies how the current series object's marker outlines are painted.
*
* `MarkerOutline` property gets or sets the brush that specifies how the current series object's marker outlines are painted. You can use it like this:
*
* ```html
* <igx-data-chart
* [dataSource]="data">
* <igx-category-x-axis
* label="label"
* #xAxis>
* </igx-category-x-axis>
* <igx-numeric-y-axis #yAxis>
* </igx-numeric-y-axis>
* <igx-column-series
* #series
* [xAxis]="xAxis"
* [yAxis]="yAxis"
* valueMemberPath="value"
* markerOutline = "blue">
* </igx-column-series>
* </igx-data-chart>
* ```
*
* ```ts
* this.series.markerOutline = "red";
* ```
*/
get markerOutline() {
return brushToString(this.i.y4);
}
set markerOutline(v) {
this.i.y4 = stringToBrush(v);
}
/**
* Gets the effective marker outline for the current series object.
*
* `ActualMarkerOutline` property gets the effective marker outline for the current series object. You can use it like this:
*
* ```ts
* let effectiveMarkerOutline: string = this.series.actualMarkerOutline;
*
* ```
*/
get actualMarkerOutline() {
return brushToString(this.i.y2);
}
set actualMarkerOutline(v) {
this.i.y2 = stringToBrush(v);
}
}
IgxMarkerSeriesComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxMarkerSeriesComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
IgxMarkerSeriesComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: IgxMarkerSeriesComponent, selector: "ng-component", inputs: { markerType: "markerType", actualMarkerType: "actualMarkerType", isCustomMarkerCircular: "isCustomMarkerCircular", markerOutlineMode: "markerOutlineMode", markerFillMode: "markerFillMode", markerTemplate: "markerTemplate", markerThickness: "markerThickness", actualMarkerTemplate: "actualMarkerTemplate", markerBrush: "markerBrush", actualMarkerBrush: "actualMarkerBrush", markerOutline: "markerOutline", actualMarkerOutline: "actualMarkerOutline" }, usesInheritance: true, ngImport: i0, template: ``, isInline: true });
return IgxMarkerSeriesComponent;
})();
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: IgxMarkerSeriesComponent, decorators: [{
type: Component,
args: [{
template: ``,
}]
}], ctorParameters: function () { return []; }, propDecorators: { markerType: [{
type: Input
}], actualMarkerType: [{
type: Input
}], isCustomMarkerCircular: [{
type: Input
}], markerOutlineMode: [{
type: Input
}], markerFillMode: [{
type: Input
}], markerTemplate: [{
type: Input
}], markerThickness: [{
type: Input
}], actualMarkerTemplate: [{
type: Input
}], markerBrush: [{
type: Input
}], actualMarkerBrush: [{
type: Input
}], markerOutline: [{
type: Input
}], actualMarkerOutline: [{
type: Input
}] } });