UNPKG

igniteui-webcomponents-charts

Version:

Ignite UI Web Components charting components for building rich data visualizations using TypeScript APIs.

444 lines (439 loc) 17.3 kB
import { delegateCombine, delegateRemove } from "igniteui-webcomponents-core"; import { IgcBrushScaleComponent } from "./igc-brush-scale-component"; import { ShapeItemSearchMode_$type } from "./ShapeItemSearchMode"; import { IgcNumericXAxisComponent } from "./igc-numeric-x-axis-component"; import { IgcNumericYAxisComponent } from "./igc-numeric-y-axis-component"; import { IgcAssigningShapeStyleEventArgs } from "./igc-assigning-shape-style-event-args"; import { IgcAssigningShapeMarkerStyleEventArgs } from "./igc-assigning-shape-marker-style-event-args"; import { IgcStyleShapeEventArgs } from "./igc-style-shape-event-args"; import { IgcSeriesComponent } from "./igc-series-component"; import { getAllPropertyNames, toSpinal, ensureBool, ensureEnum, enumToString, toPoint, fromPoint } from "igniteui-webcomponents-core"; /** * Series class for rendering polygons. */ export let IgcShapeSeriesBaseComponent = /*@__PURE__*/ (() => { class IgcShapeSeriesBaseComponent extends IgcSeriesComponent { /** * @hidden */ get i() { return this._implementation; } constructor() { super(); this._xAxisName = null; this._yAxisName = null; this._assigningShapeStyle = null; this._assigningShapeStyle_wrapped = null; this._assigningShapeMarkerStyle = null; this._assigningShapeMarkerStyle_wrapped = null; this._styleShape = null; this._styleShape_wrapped = null; } connectedCallback() { if (super["connectedCallback"]) { super["connectedCallback"](); } if (this.i.connectedCallback) { this.i.connectedCallback(); } if (!this._attached) { this._attached = true; this._flushQueuedAttributes(); } } disconnectedCallback() { if (super["disconnectedCallback"]) { super["disconnectedCallback"](); } if (this.i.disconnectedCallback) { this.i.disconnectedCallback(); } if (this._attached) { this._attached = false; } } static get observedAttributes() { if (IgcShapeSeriesBaseComponent._observedAttributesIgcShapeSeriesBaseComponent == null) { let names = getAllPropertyNames(IgcShapeSeriesBaseComponent); for (let i = 0; i < names.length; i++) { names[i] = toSpinal(names[i]); } IgcShapeSeriesBaseComponent._observedAttributesIgcShapeSeriesBaseComponent = names; } return IgcShapeSeriesBaseComponent._observedAttributesIgcShapeSeriesBaseComponent; } /** * Gets or sets whether this Shape series should allow custom style overrides of its individual visuals. */ get isCustomShapeStyleAllowed() { return this.i.yd; } set isCustomShapeStyleAllowed(v) { this.i.yd = ensureBool(v); this._a("isCustomShapeStyleAllowed", this.i.yd); } /** * Gets or sets whether this Shape series should allow custom style overrides of its individual marker visuals. */ get isCustomShapeMarkerStyleAllowed() { return this.i.yc; } set isCustomShapeMarkerStyleAllowed(v) { this.i.yc = ensureBool(v); this._a("isCustomShapeMarkerStyleAllowed", this.i.yc); } /** * Gets or sets the fill mapping property for the current series object. */ get fillMemberPath() { return this.i.yz; } set fillMemberPath(v) { this.i.yz = v; } /** * Gets or sets the brush scale for the fill brush of markers. */ get fillScale() { const r = this.i.xf; if (r == null) { return null; } if (!r.externalObject) { let e = IgcBrushScaleComponent._createFromInternal(r); if (e) { e._implementation = r; } r.externalObject = e; } return r.externalObject; } set fillScale(v) { if (v != null && this._stylingContainer && v._styling) v._styling(this._stylingContainer, this, this); v == null ? this.i.xf = null : this.i.xf = v.i; } /** * Gets or sets whether or not the FillScale uses global min/max values of FillMemberPath from multiple series. * This setting applies only if multiple series are using the same FillScale. */ get fillScaleUseGlobalValues() { return this.i.x8; } set fillScaleUseGlobalValues(v) { this.i.x8 = ensureBool(v); this._a("fillScaleUseGlobalValues", this.i.x8); } get actualItemSearchMode() { return this.i.xn; } set actualItemSearchMode(v) { this.i.xn = ensureEnum(ShapeItemSearchMode_$type, v); this._a("actualItemSearchMode", enumToString(ShapeItemSearchMode_$type, this.i.xn)); } /** * Gets or sets the mode the series will use to find the closest point to the cursor. */ get itemSearchMode() { return this.i.xp; } set itemSearchMode(v) { this.i.xp = ensureEnum(ShapeItemSearchMode_$type, v); this._a("itemSearchMode", enumToString(ShapeItemSearchMode_$type, this.i.xp)); } /** * Gets or sets the threshold to use when searching for items using ItemSearchMode. */ get itemSearchThreshold() { return this.i.yv; } set itemSearchThreshold(v) { this.i.yv = +v; this._a("itemSearchThreshold", this.i.yv); } /** * Gets or sets the points threshold to use when searching for items using ItemSearchMode. */ get itemSearchPointsThreshold() { return this.i.yu; } set itemSearchPointsThreshold(v) { this.i.yu = +v; this._a("itemSearchPointsThreshold", this.i.yu); } /** * The name of the property on ItemsSource items which, for each shape, contains a list of points to be converted to a polygon. * To be consistent with the Shapefile technical description, it is expected that each list of points is defined as an IEnumerable of IEnumerable of Point, or in other words, a list of lists of points. */ get shapeMemberPath() { return this.i.zc; } set shapeMemberPath(v) { this.i.zc = v; } /** * Gets or sets the value mapping property for the current series object. */ get highlightedShapeMemberPath() { return this.i.y3; } set highlightedShapeMemberPath(v) { this.i.y3 = v; } /** * Gets or sets the effective x-axis for the current ScatterBase object. */ get xAxis() { const r = this.i.xj; if (r == null) { return null; } if (!r.externalObject) { let e = IgcNumericXAxisComponent._createFromInternal(r); if (e) { e._implementation = r; } r.externalObject = e; } return r.externalObject; } set xAxis(v) { if (v != null && this._stylingContainer && v._styling) v._styling(this._stylingContainer, this, this); v == null ? this.i.xj = null : this.i.xj = v.i; } /** * Gets or sets the name to use to resolve xAxis from markup. */ get xAxisName() { return this._xAxisName; } set xAxisName(v) { this._xAxisName = v; } /** * Gets or sets the effective y-axis for the current ScatterBase object. */ get yAxis() { const r = this.i.xl; if (r == null) { return null; } if (!r.externalObject) { let e = IgcNumericYAxisComponent._createFromInternal(r); if (e) { e._implementation = r; } r.externalObject = e; } return r.externalObject; } set yAxis(v) { if (v != null && this._stylingContainer && v._styling) v._styling(this._stylingContainer, this, this); v == null ? this.i.xl = null : this.i.xl = v.i; } /** * Gets or sets the name to use to resolve yAxis from markup. */ get yAxisName() { return this._yAxisName; } set yAxisName(v) { this._yAxisName = v; } /** * The resolution at which to filter out shapes in the series. For example, if the ShapeFilterResolution is set to 3, then elements with a bounding rectangle smaller than 3 X 3 pixels will be filtered out. * In the case of ScatterPolylineSeries, the resolution is compared to either dimension, rather than both. In other words, a polyline will not be filtered if its height or its width exceeds the value of this property. Whereas with a ShapeSeries, both the height and the width must exceed the value of this property. */ get shapeFilterResolution() { return this.i.yr; } set shapeFilterResolution(v) { this.i.yr = +v; this._a("shapeFilterResolution", this.i.yr); } /** * Gets whether or not this series is a shape series */ get isShape() { return this.i.fy; } /** * Overridden by derived series classes to indicate when marker-less display is preferred or not. */ get isMarkerlessDisplayPreferred() { return this.i.fm; } bindAxes(axes) { super.bindAxes(axes); for (let i = 0; i < axes.length; i++) { if (this.xAxisName && this.xAxisName.length > 0 && axes[i].name == this.xAxisName) { this.xAxis = axes[i]; } } for (let i = 0; i < axes.length; i++) { if (this.yAxisName && this.yAxisName.length > 0 && axes[i].name == this.yAxisName) { this.yAxis = axes[i]; } } } findByName(name) { var baseResult = super.findByName(name); if (baseResult) { return baseResult; } if (this.fillScale && this.fillScale.name && this.fillScale.name == name) { return this.fillScale; } if (this.xAxis && this.xAxis.name && this.xAxis.name == name) { return this.xAxis; } if (this.yAxis && this.yAxis.name && this.yAxis.name == name) { return this.yAxis; } return null; } _styling(container, component, parent) { super._styling(container, component, parent); this._inStyling = true; if (this.fillScale && this.fillScale._styling) { this.fillScale._styling(container, component, this); } if (this.xAxis && this.xAxis._styling) { this.xAxis._styling(container, component, this); } if (this.yAxis && this.yAxis._styling) { this.yAxis._styling(container, component, this); } this._inStyling = false; } getItemValue(item, memberPathName) { let iv = this.i.kr(item, memberPathName); return (iv); } /** * Gets the value of a requested member path from the series. * @param memberPathName * The property name of a valid member path for the series */ getMemberPathValue(memberPathName) { let iv = this.i.mf(memberPathName); return (iv); } getExactItemIndex(world) { let iv = this.i.is(toPoint(world)); return (iv); } getSeriesValuePosition(world, useInterpolation, skipUnknowns) { let iv = this.i.wh(toPoint(world), useInterpolation, skipUnknowns); return fromPoint(iv); } /** * Gets the item that is the best match for the specified world coordinates. * @param world * The world coordinates to use. */ getItem(world) { let iv = this.i.ko(toPoint(world)); return (iv); } /** * Determine if object can be used as YAxis * @param axis * The object to check */ canUseAsYAxis(axis) { let iv = this.i.x7(axis); return (iv); } /** * Determine if object can be used as XAxis * @param axis * The object to check */ canUseAsXAxis(axis) { let iv = this.i.x6(axis); return (iv); } /** * Event raised when Assigning Shape Style. Note, if using this event, or highlighting, its best to avoid use of ShapeStyle/StyleShape/ShapeStyleSelector. */ get assigningShapeStyle() { return this._assigningShapeStyle; } set assigningShapeStyle(ev) { if (this._assigningShapeStyle_wrapped !== null) { this.i.assigningShapeStyle = delegateRemove(this.i.assigningShapeStyle, this._assigningShapeStyle_wrapped); this._assigningShapeStyle_wrapped = null; this._assigningShapeStyle = null; } this._assigningShapeStyle = ev; this._assigningShapeStyle_wrapped = (o, e) => { let outerArgs = new IgcAssigningShapeStyleEventArgs(); outerArgs._provideImplementation(e); if (this.beforeAssigningShapeStyle) { this.beforeAssigningShapeStyle(this, outerArgs); } if (this._assigningShapeStyle) { this._assigningShapeStyle(this, outerArgs); } }; this.i.assigningShapeStyle = delegateCombine(this.i.assigningShapeStyle, this._assigningShapeStyle_wrapped); ; } /** * Event raised when Assigning Shape Marker Style */ get assigningShapeMarkerStyle() { return this._assigningShapeMarkerStyle; } set assigningShapeMarkerStyle(ev) { if (this._assigningShapeMarkerStyle_wrapped !== null) { this.i.assigningShapeMarkerStyle = delegateRemove(this.i.assigningShapeMarkerStyle, this._assigningShapeMarkerStyle_wrapped); this._assigningShapeMarkerStyle_wrapped = null; this._assigningShapeMarkerStyle = null; } this._assigningShapeMarkerStyle = ev; this._assigningShapeMarkerStyle_wrapped = (o, e) => { let outerArgs = new IgcAssigningShapeMarkerStyleEventArgs(); outerArgs._provideImplementation(e); if (this.beforeAssigningShapeMarkerStyle) { this.beforeAssigningShapeMarkerStyle(this, outerArgs); } if (this._assigningShapeMarkerStyle) { this._assigningShapeMarkerStyle(this, outerArgs); } }; this.i.assigningShapeMarkerStyle = delegateCombine(this.i.assigningShapeMarkerStyle, this._assigningShapeMarkerStyle_wrapped); ; } /** * Raised when tile's image URI should be provided */ get styleShape() { return this._styleShape; } set styleShape(ev) { if (this._styleShape_wrapped !== null) { this.i.styleShape = delegateRemove(this.i.styleShape, this._styleShape_wrapped); this._styleShape_wrapped = null; this._styleShape = null; } this._styleShape = ev; this._styleShape_wrapped = (o, e) => { let outerArgs = new IgcStyleShapeEventArgs(); outerArgs._provideImplementation(e); if (this.beforeStyleShape) { this.beforeStyleShape(this, outerArgs); } if (this._styleShape) { this._styleShape(this, outerArgs); } }; this.i.styleShape = delegateCombine(this.i.styleShape, this._styleShape_wrapped); ; } } IgcShapeSeriesBaseComponent._observedAttributesIgcShapeSeriesBaseComponent = null; return IgcShapeSeriesBaseComponent; })();