igniteui-react-charts
Version:
Ignite UI React charting components for building rich data visualizations using TypeScript APIs.
1,529 lines (1,528 loc) • 108 kB
JavaScript
/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE: you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import { __extends, __values } from "tslib";
import * as React from 'react';
import { Visibility_$type } from "igniteui-react-core";
import { TransitionInSpeedType_$type } from './TransitionInSpeedType';
import { SeriesHitTestMode_$type } from './SeriesHitTestMode';
import { fromDoubleCollection, toDoubleCollection, brushToString, stringToBrush, toPoint, fromPoint, toRect, fromRect, stringToColor, colorToString, ensureEnum, ensureBool, isValidProp, getModifiedProps, toSpinal, initializePropertiesFromCss, NamePatcher, arrayFindByName } from "igniteui-react-core";
import { IgrRenderRequestedEventArgs } from './igr-render-requested-event-args';
import { delegateCombine, delegateRemove, TypeRegistrar } from "igniteui-react-core";
import { SeriesVisibleRangeMode_$type } from './SeriesVisibleRangeMode';
import { SeriesHighlightingMode_$type } from './SeriesHighlightingMode';
import { SeriesOutlineMode_$type } from './SeriesOutlineMode';
import { LegendItemBadgeMode_$type } from "igniteui-react-core";
import { LegendItemBadgeShape_$type } from "igniteui-react-core";
import { PenLineJoin_$type } from "igniteui-react-core";
import { PenLineCap_$type } from "igniteui-react-core";
import { IgrSeriesLayerCollection } from './igr-series-layer-collection';
import { SeriesLayerCollection as SeriesLayerCollection_internal } from './SeriesLayerCollection';
import { SeriesLayer } from './SeriesLayer';
import { SyncableObservableCollection$1 } from "igniteui-react-core";
import { TransitionOutSpeedType_$type } from './TransitionOutSpeedType';
import { SeriesHighlightedValuesDisplayMode_$type } from "igniteui-react-core";
//import { DataLegendSeriesContext, DataLegendSeriesContext_$type } from 'igniteui-core/DataLegendSeriesContext';
//import { DataLegendSeriesInfo, DataLegendSeriesInfo_$type } from 'igniteui-core/DataLegendSeriesInfo';
import { IgrSeriesLayerPropertyOverlayCollection } from './igr-series-layer-property-overlay-collection';
import { SeriesLayerPropertyOverlayCollection as SeriesLayerPropertyOverlayCollection_internal } from './SeriesLayerPropertyOverlayCollection';
import { SeriesLayerPropertyOverlay } from './SeriesLayerPropertyOverlay';
import { SeriesSelectionMode_$type } from './SeriesSelectionMode';
import { IgrTransitionOutCompletedEventArgs } from './igr-transition-out-completed-event-args';
/**
* Represents the base class for all IgxDataChartComponent series.
*/
var IgrSeries = /** @class */ /*@__PURE__*/ (function (_super) {
__extends(IgrSeries, _super);
function IgrSeries(props) {
var _this = _super.call(this, props) || this;
//set opacity(value: number) {
// this.i.opacity = +value;
//}
//get opacity(): number {
// return this.i.opacity;
//}
//set visibility(v: Visibility) {
// this.i.visibility = ensureEnum<Visibility>(Visibility_$type, v);
//}
//get visibility(): Visibility {
// return this.i.visibility;
//}
_this._chartLevelData = null;
_this._dataSource = null;
_this._chartLevelHighlightedData = null;
_this._highlightedDataSource = null;
_this._tooltipTemplate = null;
_this._tooltipContent = null;
_this._tooltipContainerTemplate = null;
_this._renderer = null;
_this._highlightedValuesExtraPropertyOverlays = null;
_this._layers = null;
_this._actualLayers = null;
_this.__p = null;
_this._hasUserValues = new Set();
_this._stylingContainer = null;
_this._stylingParent = null;
_this._inStyling = false;
_this._transitionOutCompleted = null;
_this._transitionOutCompleted_wrapped = null;
_this._renderRequested = null;
_this._renderRequested_wrapped = null;
if (_this._styling) {
NamePatcher.ensureStylablePatched(Object.getPrototypeOf(_this));
}
_this._implementation = _this.createImplementation();
_this._implementation.externalObject = _this;
_this.onImplementationCreated();
return _this;
}
Object.defineProperty(IgrSeries.prototype, "i", {
get: function () {
return this._implementation;
},
enumerable: false,
configurable: true
});
IgrSeries.prototype.onImplementationCreated = function () {
};
IgrSeries.prototype.createImplementation = function () {
return null;
};
IgrSeries.prototype.componentDidMount = function () {
var e_1, _a;
try {
for (var _b = __values(Object.keys(this.props)), _c = _b.next(); !_c.done; _c = _b.next()) {
var p = _c.value;
if (isValidProp(this, p)) {
{
this[p] = this.props[p];
}
}
}
}
catch (e_1_1) {
e_1 = { error: e_1_1 };
}
finally {
try {
if (_c && !_c.done && (_a = _b.return))
_a.call(_b);
}
finally {
if (e_1)
throw e_1.error;
}
}
};
Object.defineProperty(IgrSeries.prototype, "seriesInternal", {
get: function () {
return this.i;
},
enumerable: false,
configurable: true
});
IgrSeries.prototype.shouldComponentUpdate = function (nextProps, nextState) {
var e_2, _a;
var mod = getModifiedProps(this.props, nextProps);
try {
for (var _b = __values(Object.keys(mod)), _c = _b.next(); !_c.done; _c = _b.next()) {
var p = _c.value;
if (isValidProp(this, p)) {
this[p] = mod[p];
}
}
}
catch (e_2_1) {
e_2 = { error: e_2_1 };
}
finally {
try {
if (_c && !_c.done && (_a = _b.return))
_a.call(_b);
}
finally {
if (e_2)
throw e_2.error;
}
}
return true;
};
IgrSeries.prototype.render = function () {
return null;
};
Object.defineProperty(IgrSeries.prototype, "name", {
get: function () {
return this.i.name;
},
set: function (value) {
this.i.name = value;
},
enumerable: false,
configurable: true
});
IgrSeries.prototype.provideData = function (data) {
this._chartLevelData = data;
this.updateDataSource();
};
IgrSeries.prototype.onUpdateDataSource = function (dataSource) {
return dataSource;
};
IgrSeries.prototype.updateDataSource = function () {
if (this._dataSource == null) {
this.i.itemsSource = this.onUpdateDataSource(this._chartLevelData);
}
else {
this.i.itemsSource = this.onUpdateDataSource(this._dataSource);
}
};
Object.defineProperty(IgrSeries.prototype, "dataSource", {
get: function () {
if (this._dataSource != null) {
return this._dataSource;
}
return this.i.itemsSource;
},
set: function (value) {
this._dataSource = value;
this.updateDataSource();
//console.log("setting axis data source: " + value)
},
enumerable: false,
configurable: true
});
IgrSeries.prototype.provideHighlightedData = function (data) {
this._chartLevelHighlightedData = data;
this.updatehighlightedDataSource();
};
IgrSeries.prototype.onUpdatehighlightedDataSource = function (highlightedDataSource) {
return highlightedDataSource;
};
IgrSeries.prototype.updatehighlightedDataSource = function () {
if (this._highlightedDataSource == null) {
this.i.highlightedItemsSource = this.onUpdatehighlightedDataSource(this._chartLevelHighlightedData);
}
else {
this.i.highlightedItemsSource = this.onUpdatehighlightedDataSource(this._highlightedDataSource);
}
};
Object.defineProperty(IgrSeries.prototype, "highlightedDataSource", {
get: function () {
if (this._highlightedDataSource != null) {
return this._highlightedDataSource;
}
return this.i.highlightedItemsSource;
},
set: function (value) {
this._highlightedDataSource = value;
this.updatehighlightedDataSource();
//console.log("setting axis data source: " + value)
},
enumerable: false,
configurable: true
});
IgrSeries.prototype.bindAxes = function (axes) {
};
Object.defineProperty(IgrSeries.prototype, "tooltipTemplate", {
get: function () {
return this._tooltipTemplate;
},
set: function (value) {
this._tooltipTemplate = value;
if (value == null) {
if (this._tooltipContent !== null) {
//this._tooltipContent.destroy();
this._tooltipContent = null;
}
}
if (this._tooltipContent != null) {
this._tooltipContent.template = this._tooltipTemplate;
}
else {
if (this.owner != null) {
this.owner._ensureTooltipCreated(this);
}
}
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "tooltipContainerTemplate", {
get: function () {
return this._tooltipContainerTemplate;
},
set: function (value) {
this._tooltipContainerTemplate = value;
if (this._tooltipContent != null) {
this._tooltipContent.instance.containerTemplate = this._tooltipContainerTemplate;
}
},
enumerable: false,
configurable: true
});
IgrSeries.prototype._ensureTooltipCreated = function (createTooltip, createWrapper) {
if (this._tooltipTemplate == null) {
this.i.toolTip = null;
}
if (this._tooltipContent == null && this._tooltipTemplate != null) {
var tooltip = createTooltip();
if (tooltip == null) {
return;
}
this._tooltipContent = tooltip;
tooltip.tooltipTemplate = this._tooltipTemplate;
this.i.toolTip = createWrapper(tooltip);
}
};
IgrSeries.prototype._ensureTooltipDestroyed = function () {
if (this._tooltipContent !== null) {
//this._tooltipContent.destroy();
this._tooltipContent = null;
}
};
IgrSeries.prototype._provideRenderer = function (renderer) {
this._renderer = renderer;
};
IgrSeries._createFromInternal = function (internal) {
if (!internal) {
return null;
}
if (!internal.$type) {
return null;
}
var name = internal.$type.name;
var externalName = "Igr" + name;
if (!TypeRegistrar.isRegistered(externalName)) {
return null;
}
return TypeRegistrar.create(externalName);
};
Object.defineProperty(IgrSeries.prototype, "legend", {
/**
* Gets or sets the legend used for the current series.
*/
get: function () {
if (this.i.legend != null)
return this.i.legend.externalObject;
},
set: function (v) {
if (v != undefined && v != null)
this.i.legend = v.i;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "dataLegendKey", {
/**
* Gets unique key used to identify the series in data legend
*/
get: function () {
return this.i.dataLegendKey;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "dataLegendGroup", {
/**
* Gets or sets a name used for grouping multiple series in the Data Legend
* If not set, series will be grouped by series family, e.g. Category, Range, Financial, Scatter
*/
get: function () {
return this.i.l5;
},
set: function (v) {
this.i.l5 = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "highlightedValuesDataLegendGroup", {
/**
* Gets or sets a name used for grouping highlighted series in the Data Legend
* If not set, series will default to parent series' DataLegendGroup, e.g. Category, Range, Financial, Scatter
*/
get: function () {
return this.i.ml;
},
set: function (v) {
this.i.ml = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isAnnotationLayer", {
/**
* Gets whether the series is an annotation layer.
*
* ```ts
* let isAnnotationLayer: boolean = this.series.isAnnotationLayer;
* ```
*/
get: function () {
return this.i.eu;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isAnnotationCrosshairLayer", {
/**
* Gets whether the series is an crosshair annotation layer.
*/
get: function () {
return this.i.er;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isAnnotationCalloutLayer", {
/**
* Gets whether the series is an callout annotation layer.
*/
get: function () {
return this.i.eq;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isAnnotationHoverLayer", {
/**
* Gets whether the series is an annotation layer displayed only when hovering over the chart.
* Crosshair Layer, Category Highlight Layer, Category Tooltip Layer, Item Tooltip Layer
*/
get: function () {
return this.i.et;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isAnnotationFinalValue", {
/**
* Gets whether the series is final value annotation layer.
*/
get: function () {
return this.i.es;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isAnnotationValueLayer", {
/**
* Gets whether the series is a value annotation layer.
*/
get: function () {
return this.i.ev;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isVertical", {
/**
* Gets whether the current series is oriented vertically.
*
* ```ts
* let isVertical: boolean = this.series.isVertical;
* ```
*/
get: function () {
return this.i.isVertical;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isFragment", {
/**
* Gets whether the current series is a stack fragment.
*
* ```ts
* let isFragment: boolean = this.series.isFragment;
* ```
*/
get: function () {
return this.i.isFragment;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isAreaOrLine", {
/**
* Gets whether the current series shows an area or line shape.
*
* ```ts
* let isAreaorLine: boolean = this.series.isAreaorLine;
* ```
*/
get: function () {
return this.i.ex;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isArea", {
/**
* Gets whether the current series shows an area shape.
*/
get: function () {
return this.i.ew;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "hasValueAxis", {
/**
* Gets whether the current series shows an area shape.
*/
get: function () {
return this.i.em;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isValueAxisInverted", {
/**
* Gets whether the current series shows an area shape.
*/
get: function () {
return this.i.f6;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isLineOnly", {
/**
* Gets whether the current series shows only line shapes.
*/
get: function () {
return this.i.fl;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isLineContour", {
/**
* Gets whether the current series shows a line contour shape.
*/
get: function () {
return this.i.fk;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isSpline", {
/**
* Gets whether the current series shows a spline shape.
*/
get: function () {
return this.i.f1;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isColumn", {
/**
* Gets whether the current series shows a column shape.
*/
get: function () {
return this.i.e1;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isBar", {
/**
* Gets whether the current series shows a horizontal column shape.
*/
get: function () {
return this.i.ez;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isWaterfall", {
/**
* Gets whether the current series shows a waterfall column shape.
*/
get: function () {
return this.i.f7;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isPolyline", {
/**
* Gets whether the current series shows a polyline shape.
*/
get: function () {
return this.i.fs;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isPolygon", {
/**
* Gets whether the current series shows a polygon shape.
*/
get: function () {
return this.i.fr;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isPixel", {
/**
* Gets whether the current series shows pixels.
*/
get: function () {
return this.i.fp;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isPie", {
/**
* Gets whether the current series shows a pie shape.
*/
get: function () {
return this.i.fo;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isTile", {
/**
* Gets whether the current series shows a tile imagery.
*/
get: function () {
return this.i.f4;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isStep", {
/**
* Gets whether the current series shows step shapes.
*/
get: function () {
return this.i.f2;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isShapeControl", {
/**
* Gets whether the current series shows interactive shape controls.
*/
get: function () {
return this.i.fz;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isPolar", {
/**
* Gets whether the current series is a polar type series.
*
* ```ts
* let isPolar: boolean = this.series.isPolar;
* ```
*/
get: function () {
return this.i.fq;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isScatter", {
/**
* Gets whether the current series is a scatter type series.
*
* ```ts
* let isScatter: boolean = this.series.isScatter;
* ```
*/
get: function () {
return this.i.fx;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isRadial", {
/**
* Gets whether the current series is a radial type series.
*
* ```ts
* let isRadial: boolean = this.series.isRadial;
* ```
*/
get: function () {
return this.i.fu;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isStacked", {
/**
* Gets whether the current series is a stacked type series.
*
* ```ts
* let isStacked: boolean = this.series.isStacked;
* ```
*/
get: function () {
return this.i.isStacked;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isFinancial", {
/**
* Gets whether the current series is a financial type series.
*
* ```ts
* let isFinancial: boolean = this.series.isFinancial;
* ```
*/
get: function () {
return this.i.e8;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isRange", {
/**
* Gets whether the current series is a range type series.
*
* ```ts
* let isRange: boolean = this.series.isRange;
* ```
*/
get: function () {
return this.i.fv;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isCategory", {
/**
* Gets whether the current series is a category type series.
*
* ```ts
* let isCategory: boolean = this.series.isCategory;
* ```
*/
get: function () {
return this.i.e0;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isGeographic", {
/**
* Gets whether the current series is a geographic series.
*
* ```ts
* let isGeographic: boolean = this.series.isGeographic;
* ```
*/
get: function () {
return this.i.fd;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isShape", {
/**
* Gets whether the current series is a shape type series.
*/
get: function () {
return this.i.fy;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isValueOverlay", {
/**
* Gets whether the series is a value overlay.
*/
get: function () {
return this.i.isValueOverlay;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isHighlightOverlay", {
/**
* Gets whether the series is a highlight overlay.
*/
get: function () {
return this.i.fg;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isSummarizationSupported", {
/**
* Gets whether the series supports summarization in Data Legend and Data Tooltip.
*/
get: function () {
return this.i.isSummarizationSupported;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isLayer", {
get: function () {
return this.i.isLayer;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "hasOnlyMarkers", {
/**
* Gets whether the series has only marker as visuals
*/
get: function () {
return this.i.ek;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isFinancialSeries", {
/**
* Gets whether the series has financial OHLC/candlestick visuals
*/
get: function () {
return this.i.fb;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isFinancialOverlay", {
/**
* Gets whether the series is financial overlay
*/
get: function () {
return this.i.fa;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isFinancialIndicator", {
/**
* Gets whether the series is financial indicator
*/
get: function () {
return this.i.e9;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isFinancialWaterfall", {
/**
* Gets whether the series is financial waterfall
*/
get: function () {
return this.i.fc;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isDefaultCrosshairBehaviorDisabled", {
/**
* Gets whether the default crosshair behavior should be disabled if this series is present.
*
* `IsDefaultCrosshairBehaviorDisabled` defaults to true for annotation layers. When not using annotaion layers, you can show crosshairs by setting the chart's `CrosshairVisibility` to true.
*
* ```ts
* let isDefaultCrosshairBehaviorDisabled: boolean = this.series.isDefaultCrosshairBehaviorDisabled;
* ```
*/
get: function () {
return this.i.e3;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isDefaultTooltipBehaviorDisabled", {
/**
* Gets whether the default tooltip behavior should be disabled if this series is present.
*
* ```ts
* let isDefaultTooltipBehaviorDisabled: boolean = this.series.isDefaultTooltipBehaviorDisabled;
* ```
*/
get: function () {
return this.i.e4;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "hasMarkers", {
/**
* Returns whether the current series supports visual markers.
*
* ```ts
* let hasMarkers: boolean = this.series.hasMarkers;
* ```
*/
get: function () {
return this.i.hasMarkers;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "hasVisibleMarkers", {
/**
* Returns whether the current series has a visible marker style.
*/
get: function () {
return this.i.en;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "highlightedValuesExtraPropertyOverlays", {
/**
* Gets the current extra layers for the series.
*/
get: function () {
if (this._highlightedValuesExtraPropertyOverlays === null) {
var coll = new IgrSeriesLayerPropertyOverlayCollection();
var innerColl = this.i.cf;
if (!innerColl) {
innerColl = new SeriesLayerPropertyOverlayCollection_internal();
}
this._highlightedValuesExtraPropertyOverlays = coll._fromInner(innerColl);
}
return this._highlightedValuesExtraPropertyOverlays;
},
set: function (v) {
if (this._highlightedValuesExtraPropertyOverlays !== null) {
this._highlightedValuesExtraPropertyOverlays._setSyncTarget(null);
this._highlightedValuesExtraPropertyOverlays = null;
}
var coll = new IgrSeriesLayerPropertyOverlayCollection();
this._highlightedValuesExtraPropertyOverlays = coll._fromOuter(v);
var syncColl = new SyncableObservableCollection$1(SeriesLayerPropertyOverlay.$type);
var innerColl = this.i.cf;
if (!innerColl) {
innerColl = new SeriesLayerPropertyOverlayCollection_internal();
}
syncColl._inner = innerColl;
syncColl.clear();
this._highlightedValuesExtraPropertyOverlays._setSyncTarget(syncColl);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isIndexed", {
/**
* Gets if the series uses an index, which can be used to auto-assign it a color.
*
* ```ts
* let isIndexed: boolean = this.series.isIndexed;
* ```
*/
get: function () {
return this.i.fh;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "isUsableInLegend", {
/**
* Gets if the series should appear in any legends.
*
* ```ts
* let isUsableInLegend: boolean = this.series.isUsableInLegend;
* ```
*/
get: function () {
return this.i.isUsableInLegend;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "legendItemVisibility", {
/**
* Gets or sets whether or not the current series will have a legend item displayed in a legend.
*
* The `LegendItemVisibilty` can be used to exclude only certain `Series` from the `Legend`.
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"
* yAxisName="yAxis"
* valueMemberPath="Value"
* legendItemVisibility= "collapsed" />
* </IgrDataChart>
* ```
*/
get: function () {
return this.i.legendItemVisibility;
},
set: function (v) {
this.i.legendItemVisibility = ensureEnum(Visibility_$type, v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "legendItemBadgeTemplate", {
/**
* Gets or sets the LegendItemBadgeTemplate property.
* The legend item badge is created according to the LegendItemBadgeTemplate on-demand by
* the series object itself.
*/
get: function () {
return this.i.legendItemBadgeTemplate;
},
set: function (v) {
this.i.legendItemBadgeTemplate = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "actualLegendItemBadgeTemplate", {
/**
* Gets the actual legend item badge template used by the series.
*/
get: function () {
return this.i.s0;
},
set: function (v) {
this.i.s0 = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "actualLegendItemBadgeOutline", {
/**
* Gets the effective legend badge outline for the current series.
*/
get: function () {
return brushToString(this.i.vh);
},
set: function (v) {
this.i.vh = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "actualLegendItemBadgeBrush", {
/**
* Gets the effective legend badge fill for the current series.
*/
get: function () {
return brushToString(this.i.vg);
},
set: function (v) {
this.i.vg = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "legendItemBadgeShape", {
/**
* Gets or sets the type of legend badge representing the current series in a legend.
* This property will be ignored when the LegendItemTemplate/LegendItemBadgeTemplate property is set on the series
*/
get: function () {
return this.i.legendItemBadgeShape;
},
set: function (v) {
this.i.legendItemBadgeShape = ensureEnum(LegendItemBadgeShape_$type, v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "legendItemBadgeMode", {
/**
* Gets or sets the mode of legend badge representing the current series in a legend.
* This property will be ignored when the LegendItemTemplate/LegendItemBadgeTemplate property is set on the series
*/
get: function () {
return this.i.be;
},
set: function (v) {
this.i.be = ensureEnum(LegendItemBadgeMode_$type, v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "legendItemTemplate", {
/**
* Gets or sets the LegendItemTemplate property.
* The legend item control content is created according to the LegendItemTemplate on-demand by
* the series object itself.
*/
get: function () {
return this.i.legendItemTemplate;
},
set: function (v) {
this.i.legendItemTemplate = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "discreteLegendItemTemplate", {
/**
* Gets or sets the DiscreteLegendItemTemplate property.
* The legend item control content is created according to the DiscreteLegendItemTemplate on-demand by
* the series object itself.
*/
get: function () {
return this.i.s1;
},
set: function (v) {
this.i.s1 = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "index", {
/**
* Gets the Index property.
*/
get: function () {
return this.i.index;
},
set: function (v) {
this.i.index = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "transitionEasingFunction", {
/**
* Gets or sets the easing function used to morph the current series.
*
* The `TransitioninDuration` and `TransitionEasingFunction` can be used to play animation when data is added or removed from a `Series`. To play an initial animation see `TransitionInDuration`.
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"
* yAxisName="yAxis"
* valueMemberPath="Value"
* isDropShadowEnabled=true
* markerType="circle"
* transitionEasingFunction ="cubicEase"
* isTransitionInEnabled= {true} />
* </IgrDataChart>
* ```
*
* ```ts
* this.series.transitionEasingFunction = EasingFunctions.cubicEase;
* ```
*/
get: function () {
return this.i.de;
},
set: function (v) {
this.i.de = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "transitionInEasingFunction", {
/**
* Gets or sets the EasingFunction used to morph the current series during the initial transition.
*
* The `TransitionInEasingFunction` can be used with `IsTransitionInEnabled` to cofigure the animation when a new datasource is loaded.
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"
* yAxisName="yAxis"
* valueMemberPath="Value"
* isDropShadowEnabled=true
* markerType="circle"
* transitionInEasingFunction ="cubicEase"
* isTransitionInEnabled= {true} />
* </IgrDataChart>
* ```
*
* ```ts
* this.series.transitionInEasingFunction = EasingFunctions.cubicEase;
* ```
*/
get: function () {
return this.i.df;
},
set: function (v) {
this.i.df = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "transitionOutEasingFunction", {
/**
* Gets or sets the EasingFunction used to morph the current series during the initial transition.
*/
get: function () {
return this.i.dg;
},
set: function (v) {
this.i.dg = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "transitionDuration", {
/**
* Gets or sets the duration of the current series' morph.
*
* The `TransitionDuration` can be used to play animation when data is added or removed from a `Series`. To play an initial animation see `TransitionInDuration`.
*
* ```ts
* this.series.transitionDuration = 500;
* ```
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"
* yAxisName="yAxis"
* valueMemberPath="Value"
* isTransitionInEnabled=true
* transitionInSpeedType="indexScaled"
* transitionDuration= {500}
* transitionInDuration = {500} />
* </IgrDataChart>
* ```
*/
get: function () {
return this.i.ke;
},
set: function (v) {
this.i.ke = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "actualResolution", {
get: function () {
return this.i.ie;
},
set: function (v) {
this.i.ie = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "resolution", {
/**
* Gets or sets the current series object's rendering resolution.
*
* Setting the `Resolution` on a Series to a higher value can help with performance, but it will lower the graphical fidelity of the line. As such, it can be increased up until the fidelity is unacceptable.
*
* ```ts
* this.series.resolution = 1.5;
* ```
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"
* yAxisName="yAxis"
* valueMemberPath="Value"
* resolution= {1.5} />
* </IgrDataChart>
* ```
*/
get: function () {
return this.i.jk;
},
set: function (v) {
this.i.jk = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "visibleRangeMarginTop", {
/**
* Gets or sets the top margin to use when getting a visible axis range for the series.
*/
get: function () {
return this.i.jv;
},
set: function (v) {
this.i.jv = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "visibleRangeMarginBottom", {
/**
* Gets or sets the bottom margin to use when getting a visible axis range for the series.
*/
get: function () {
return this.i.js;
},
set: function (v) {
this.i.js = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "visibleRangeMarginLeft", {
/**
* Gets or sets the left margin to use when getting a visible axis range for the series.
*/
get: function () {
return this.i.jt;
},
set: function (v) {
this.i.jt = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "visibleRangeMarginRight", {
/**
* Gets or sets the right margin to use when getting a visible axis range for the series.
*/
get: function () {
return this.i.ju;
},
set: function (v) {
this.i.ju = +v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "title", {
/**
* Gets or sets the Title property.
* The legend item control is created according to the Title on-demand by
* the series object itself.
*
* The `Series` `Title` may be used in tooltips and legends.
*
* ```ts
* this.series.title = "InStock Items";
* ```
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"
* yAxisName="yAxis"
* valueMemberPath="Value"
* title="InStock Items" />
* </IgrDataChart>
* ```
*/
get: function () {
return this.i.title;
},
set: function (v) {
this.i.title = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "highlightedTitleSuffix", {
/**
* Gets or sets the HighlightedTitleSuffix property.
*/
get: function () {
return this.i.mj;
},
set: function (v) {
this.i.mj = v;
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "highlightedLegendItemVisibility", {
/**
* Gets or sets whether the highlighted values layer should have a legend item.
*/
get: function () {
return this.i.w2;
},
set: function (v) {
this.i.w2 = ensureEnum(Visibility_$type, v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "brush", {
/**
* Gets or sets the brush to use for the series.
*
* The `Brush` along with the `Outline` and `Negative Brush` can be used to affect the visuals of the `Series`.
*
* ```ts
* this.series.brush = "red";
* ```
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"
* yAxisName="yAxis"
* valueMemberPath="Value"
* brush="Gray"
* outline="Black" />
* </IgrDataChart>
* ```
*/
get: function () {
return brushToString(this.i.vk);
},
set: function (v) {
this.i.vk = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "actualBrush", {
/**
* Gets the effective brush for the current series object.
*
* ```ts
* let actualBrush: string = series.actualBrush;
* ```
*/
get: function () {
return brushToString(this.i.ve);
},
set: function (v) {
this.i.ve = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "selectionBrush", {
/**
* Gets or sets the selection brush to use for the series.
*/
get: function () {
return brushToString(this.i.v4);
},
set: function (v) {
this.i.v4 = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "focusBrush", {
/**
* Gets or sets the Focus brush to use for the series.
*/
get: function () {
return brushToString(this.i.vp);
},
set: function (v) {
this.i.vp = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "actualSelectionBrush", {
/**
* Gets the effective emphasis brush for the current series object.
*/
get: function () {
return brushToString(this.i.vj);
},
set: function (v) {
this.i.vj = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "actualFocusBrush", {
/**
* Gets the effective emphasis brush for the current series object.
*/
get: function () {
return brushToString(this.i.vf);
},
set: function (v) {
this.i.vf = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "safeActualBrush", {
/**
* Gets the effective brush for the current series object with opacity removed so its contrasty for use as a font color.
*/
get: function () {
return brushToString(this.i.safeActualBrush);
},
set: function (v) {
this.i.safeActualBrush = stringToBrush(v);
},
enumerable: false,
configurable: true
});
Object.defineProperty(IgrSeries.prototype, "outline", {
/**
* Gets or sets the brush to use for the outline of the series.
* Some series types, such as LineSeries, do not display outlines. Therefore, this property does not affect some charts.
*
* The `Outline` along with the `Brush` and `NegativeBrush` can be used to affect the visuals of the `Series`.
*
* ```ts
* this.series.brush = "red";
* ```
*
* ```ts
* <IgrDataChart
* dataSource={this.state.dataSource} >
*
* <IgrNumericXAxis name="xAxis" />
* <IgrNumericYAxis name="yAxis" />
*
* <IgrAreaSeries
* name="series1"
* xAxisName="xAxis"