UNPKG

igniteui-react-charts

Version:

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

712 lines (711 loc) 25.1 kB
/* 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 { AnnotationLayer } from "./AnnotationLayer"; import { Series } from "./Series"; import { DependencyProperty } from "igniteui-react-core"; import { CategoryItemHighlightType_$type } from "./CategoryItemHighlightType"; import { MarkerType_$type } from "./MarkerType"; import { Brush } from "igniteui-react-core"; import { DataTemplate } from "igniteui-react-core"; import { CategoryItemHighlightLayerFrame } from "./CategoryItemHighlightLayerFrame"; import { Base, enumGetBox, fromEnum, typeCast, Point_$type, markType, markDep, runOn } from "igniteui-react-core"; import { Dictionary$2 } from "igniteui-react-core"; import { ItemHighlightFrameRect } from "./ItemHighlightFrameRect"; import { List$1 } from "igniteui-react-core"; import { IHasCategoryModePreference_$type } from "./IHasCategoryModePreference"; import { Rect } from "igniteui-react-core"; import { MarkerSeries } from "./MarkerSeries"; import { DataContext } from "igniteui-react-core"; import { Pool$1 } from "igniteui-react-core"; import { Rectangle } from "igniteui-react-core"; import { ContentControl } from "igniteui-react-core"; import { PropertyMetadata } from "igniteui-react-core"; import { isNaN_, isInfinity, truncate } from "igniteui-react-core"; import { AnnotationLayerView } from "./AnnotationLayerView"; import { Marker } from "./Marker"; import { BrushUtil } from "igniteui-react-core"; import { Color } from "igniteui-react-core"; import { DataTemplatePassInfo } from "igniteui-react-core"; import { DataTemplateRenderInfo } from "igniteui-react-core"; import { DataTemplateMeasureInfo } from "igniteui-react-core"; /** * @hidden */ var CategoryItemHighlightLayer = /** @class */ /*@__PURE__*/ (function (_super) { __extends(CategoryItemHighlightLayer, _super); function CategoryItemHighlightLayer() { var _this = _super.call(this) || this; _this.aaz = false; _this.aay = true; _this.aa2 = 10; var a = new CategoryItemHighlightLayerFrame(); var b = new CategoryItemHighlightLayerFrame(); var c = new CategoryItemHighlightLayerFrame(); _this.xy = a; _this.xx = b; _this.xz = c; _this.ab = CategoryItemHighlightLayer.$; return _this; } CategoryItemHighlightLayer.prototype.bk = function () { return new CategoryItemHighlightLayer(); }; CategoryItemHighlightLayer.prototype.get_eu = function () { return true; }; CategoryItemHighlightLayer.prototype.ct = function () { return new CategoryItemHighlightLayerView(this); }; CategoryItemHighlightLayer.prototype.ri = function (a) { _super.prototype.ri.call(this, a); this.aat = a; }; CategoryItemHighlightLayer.prototype.ze = function (a, b) { if (this.aax == null || this.aax == a) { if (!this.a1.c) { this.r9(b); } } }; CategoryItemHighlightLayer.prototype.x5 = function (a) { if (!_super.prototype.x5.call(this, a)) { return false; } if (this.abb != null) { if (a.isFragment) { var b = a.no(); if (!Base.equalsStatic(this.abb, b)) { return false; } } else { if (!Base.equalsStatic(this.abb, a.name)) { return false; } } } var c = this.o0(a, this.aaq); if (!c.c) { return false; } return true; }; CategoryItemHighlightLayer.prototype.zg = function (a, b) { var e_1, _a; var _this = this; _super.prototype.zg.call(this, a, b); var c = a; var d = this.aa1; c.j.clear(); if (isNaN_(this.aaq.x) && isNaN_(this.aaq.y)) { return; } if (this.x5(this.aax)) { this.abh(this.aax, c, d); } else { try { for (var _b = __values(fromEnum(this.dc.b9)), _c = _b.next(); !_c.done; _c = _b.next()) { var e = _c.value; if (this.x5(e)) { this.abh(e, c, d); } if (e.isStacked) { e.qi(function (f) { if (_this.x5(f)) { _this.abh(f, c, d); } if (f.ei) { f.qg(function (g) { if (_this.x5(g)) { _this.abh(g, c, d); } return true; }); } return true; }); } if (e.ei) { e.qg(function (f) { if (_this.x5(f)) { _this.abh(f, c, d); } return true; }); } } } 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; } } } }; CategoryItemHighlightLayer.prototype.rr = function (a, b, c, d) { _super.prototype.rr.call(this, a, b, c, d); switch (b) { case CategoryItemHighlightLayer.$$p[4]: case CategoryItemHighlightLayer.$$p[5]: case CategoryItemHighlightLayer.$$p[2]: case CategoryItemHighlightLayer.$$p[3]: this.r9(true); break; case CategoryItemHighlightLayer.$$p[7]: case CategoryItemHighlightLayer.$$p[8]: this.r9(true); break; case CategoryItemHighlightLayer.$$p[9]: this.aaz = d; this.r9(true); break; case CategoryItemHighlightLayer.$$p[1]: this.r9(true); break; case CategoryItemHighlightLayer.$$p[0]: this.aa2 = this.aa3; this.r9(true); break; case CategoryItemHighlightLayer.$$p[6]: this.aay = d; this.r9(true); break; } }; CategoryItemHighlightLayer.prototype.abh = function (a, b, c) { if (this.cw == null || this.cw.ca.isEmpty || this.cw.b9.isEmpty) { return; } if (!a.e1 && !a.fa) { return; } var d = a; if (d.categoryAxis == null) { return; } var e = this.aaq.x; e = this.cw.b9.left + this.cw.b9.width * (e - this.cw.ca.left) / this.cw.ca.width; var f = this.aaq.y; f = this.cw.b9.top + this.cw.b9.height * (f - this.cw.ca.top) / this.cw.ca.height; var g = this.aa0; var h = true; var i = typeCast(IHasCategoryModePreference_$type, a); var j = 0; if (i != null) { j = i.preferredCategoryMode(d.categoryAxis); if (j == 2) { h = false; } } var k = true; if (!h || this.aau == 2) { k = false; } if (this.aau == 1) { k = true; } var l = this.o0(a, this.aaq); if (!l.c) { return; } if (k) { var m = a.wx(l.d, this.aa1, g); if (j != 0 && !d.categoryAxis.dw) { var n = m.x; if (a.fa) { n -= a.getOffsetValue(); n += a.getCategoryWidth() * 0.5; m = { $type: Point_$type, x: n, y: m.y }; } else if (a.e1) { n -= a.getOffsetValue(); n += a.getCategoryWidth() * 0.5; m = { $type: Point_$type, x: n, y: m.y }; } } if (!isNaN_(m.x) && !isNaN_(m.y)) { m = this.w3(m); } this.abf(m, b, a); } else { var o = a.wx(l.d, this.aa1, g); var p = void 0; var q = this.getEffectiveViewport1(this.cw); if (a.isVertical) { var r = o.y; var s = d.categoryAxis; var t = this.aa2; if (j != 0) { t = s.p1(this.cw.ca, this.cw.b9, q); } if (isNaN_(t) || isInfinity(t)) { return; } p = new Rect(0, this.xe.left, r - t / 2, this.xe.width, t); } else { var u = o.x; var v = d.categoryAxis; var w = this.aa2; if (j != 0) { w = v.p1(this.cw.ca, this.cw.b9, q); } if (isNaN_(w) || isInfinity(w)) { return; } p = new Rect(0, u - w / 2, this.xe.top, w, this.xe.height); } p.intersect(this.cw.b9); this.abg(p, b, a); } }; CategoryItemHighlightLayer.prototype.abf = function (a, b, c) { var d = new ItemHighlightFrameRect(); d.b = a.x; d.e = a.y; d.i = this.aac(); if (this.abv != null) { d.i = this.abv; } d.j = this.aad(); if (this.abw != null) { d.j = this.abw; } if (d.i == null) { if (c.hasMarkers) { d.i = this.aat.c1(c.v6()); } else { d.i = this.aat.c1(c.vu); } } if (d.j == null) { if (c.hasMarkers) { d.j = this.aat.c1(c.v7()); } else { d.j = this.aat.c1(c.vy); } } d.d = this.im; d.f = Base.getHashCodeStatic(c); d.g = this.aav(c, a); var e = (typeCast(MarkerSeries.$, c) !== null) ? c.ym : null; if (e == null || e == MarkerSeries.yp || (this.aaw != 2 && this.aaw != 0)) { var f = MarkerSeries.xx(c, 2); if (this.aaw != 2 && this.aaw != 0) { f = this.aaw; } switch (f) { case 3: case 13: e = this.dc.ui; break; case 4: e = this.dc.ur; break; case 5: e = this.dc.uo; break; case 6: e = this.dc.up; break; case 7: e = this.dc.uj; break; case 8: e = this.dc.um; break; case 9: e = this.dc.uk; break; case 10: e = this.dc.uq; break; case 11: e = this.dc.un; break; case 12: e = this.dc.ul; break; } } d.h = this.abk != null ? this.abk : e; if (!isNaN_(d.b) && !isNaN_(d.e)) { b.j.addItem(d.f, d); } }; CategoryItemHighlightLayer.prototype.aav = function (a, b) { var c = a.kx(b); var d = a.iz(b); if (this.aa1 && d != Math.floor(d)) { c = null; } return ((function () { var $ret = new DataContext(); $ret.series = a; $ret.item = c; return $ret; })()); }; CategoryItemHighlightLayer.prototype.abg = function (a, b, c) { var d = new ItemHighlightFrameRect(); d.b = a.left; d.e = a.top; d.c = a.right; d.a = a.bottom; d.i = this.aac(); d.j = this.aad(); if (d.i == null) { if (c != null) { d.i = this.aat.c2(c.vu); } } if (d.j == null) { if (c != null) { d.j = this.aat.c2(c.vy); } } d.d = this.im; d.f = Base.getHashCodeStatic(c); if (!a.isEmpty) { b.j.addItem(d.f, d); } }; CategoryItemHighlightLayer.prototype.zj = function (a, b) { var e_2, _a; _super.prototype.zj.call(this, a, b); var c = this.aat.cp; var d = this.aat.co; var e = 0; var f = 0; var g = a; try { for (var _b = __values(fromEnum(g.j.values)), _c = _b.next(); !_c.done; _c = _b.next()) { var h = _c.value; if (h.h != null) { var i = d.item(f); this.abi(h, i); f++; } else { var j = c.item(e); this.abj(h, j); e++; } } } 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; } } c.count = e; d.count = f; }; CategoryItemHighlightLayer.prototype.abi = function (a, b) { if (isNaN_(a.b) || isNaN_(a.e) || isNaN_(a.d) || a.g == null) { b._visibility = 1; return; } var c = { $type: Point_$type, x: a.b, y: a.e }; var d = a.g; d.itemBrush = a.i; var e = d.series.wx(c, this.d4() || this.aaz, this.aay); if (isNaN_(e.x) || isNaN_(e.y)) { b._visibility = 1; return; } this.aat.cv(b, e.x, e.y); b.ah = a.h; b.content = a.g; }; CategoryItemHighlightLayer.prototype.abj = function (a, b) { if (isNaN_(a.b) || isNaN_(a.e) || isNaN_(a.a) || isNaN_(a.c) || isNaN_(a.d)) { b._visibility = 1; return; } this.aat.cw(b, a.b, a.e, a.c - a.b, a.a - a.e); b._fill = a.i; b._stroke = a.j; b.ad = a.d; if (this.wn != null) { b.ai = this.wn; } else { b.ai = null; } b.aj = this.wo; b.am = this.wq; b.al = this.wp; b.ak = this.wp; b.ac = this.jq; }; CategoryItemHighlightLayer.prototype.gh = function () { return true; }; CategoryItemHighlightLayer.$t = markType(CategoryItemHighlightLayer, 'CategoryItemHighlightLayer', AnnotationLayer.$); CategoryItemHighlightLayer.$$p = markDep(DependencyProperty, PropertyMetadata, CategoryItemHighlightLayer, 'raisePropertyChanged', ['BandHighlightWidth:aa3:abl', [1, 10], 'HighlightType:aau:abm', [CategoryItemHighlightType_$type, enumGetBox(CategoryItemHighlightType_$type, 0)], 'MarkerBrush:abv:abn', [Brush.$, null], 'MarkerOutline:abw:abo', [Brush.$, null], 'MarkerTemplate:abk:abp', [DataTemplate.$, null], 'MarkerType:aaw:abq', [MarkerType_$type, enumGetBox(MarkerType_$type, 2)], 'SkipUnknownValues:aa0:abr', [0, true], 'TargetSeriesName:abb:abs', [2, null], 'TargetSeries:aax:abt', [Series.$, null], 'UseInterpolation:aa1:abu', [0, false]]); return CategoryItemHighlightLayer; }(AnnotationLayer)); export { CategoryItemHighlightLayer }; /** * @hidden */ var CategoryItemHighlightLayerView = /** @class */ /*@__PURE__*/ (function (_super) { __extends(CategoryItemHighlightLayerView, _super); function CategoryItemHighlightLayerView(a) { var _this = _super.call(this, a) || this; _this.cn = null; _this.cp = null; _this.co = null; _this.cq = null; _this.cr = null; _this.cn = a; _this.cq = new List$1(ContentControl.$, 0); _this.cr = new List$1(Rectangle.$, 0); return _this; } CategoryItemHighlightLayerView.prototype.a4 = function () { var _this = this; _super.prototype.a4.call(this); this.cp = ((function () { var $ret = new Pool$1(Rectangle.$); $ret.create = runOn(_this, _this.c3); $ret.activate = runOn(_this, _this.cx); $ret.disactivate = runOn(_this, _this.cz); $ret.destroy = runOn(_this, _this.cy); return $ret; })()); this.co = ((function () { var $ret = new Pool$1(ContentControl.$); $ret.create = runOn(_this, _this.c0); $ret.activate = runOn(_this, _this.cs); $ret.disactivate = runOn(_this, _this.cu); $ret.destroy = runOn(_this, _this.ct); return $ret; })()); }; CategoryItemHighlightLayerView.prototype.c3 = function () { var a = new Rectangle(); a.ab = false; this.cr.add(a); return a; }; CategoryItemHighlightLayerView.prototype.cx = function (a) { a._visibility = 0; }; CategoryItemHighlightLayerView.prototype.cz = function (a) { a._visibility = 1; }; CategoryItemHighlightLayerView.prototype.cy = function (a) { this.cr.remove(a); }; CategoryItemHighlightLayerView.prototype.c0 = function () { var a = new Marker(); this.cq.add(a); return a; }; CategoryItemHighlightLayerView.prototype.cs = function (a) { a._visibility = 0; }; CategoryItemHighlightLayerView.prototype.cu = function (a) { a._visibility = 1; }; CategoryItemHighlightLayerView.prototype.ct = function (a) { this.cq.remove(a); }; CategoryItemHighlightLayerView.prototype.c1 = function (a) { if (a == null) { return a; } return BrushUtil.q(a, 0.3); }; CategoryItemHighlightLayerView.prototype.c2 = function (a) { if (a != null) { var b = BrushUtil.q(a, 0.3); if (b.isGradient) { var c = b; if (c.gradientStops != null) { for (var d = 0; d < c.gradientStops.length; d++) { var e = c.gradientStops[d]; e.color = Color.u(truncate(Math.round((e.color.l) * 0.3)), e.color.o, e.color.n, e.color.m); e.color = e.color; } } } else { b.color = Color.u(truncate(Math.round((b.color.l & 255) * 0.3)), b.color.o, b.color.n, b.color.m); b.color = b.color; } return b; } else { return null; } }; CategoryItemHighlightLayerView.prototype.cw = function (a, b, c, d, e) { a._visibility = 0; a.n = b; a.o = c; a.width = d; a.height = e; }; CategoryItemHighlightLayerView.prototype.cv = function (a, b, c) { a.n = b; a.o = c; }; CategoryItemHighlightLayerView.prototype.bv = function (a, b) { _super.prototype.bv.call(this, a, b); var c = a; var d = c.content; if (d != null) { if (d.itemBrush != null) { d.actualItemBrush = d.itemBrush; } var e = d.series; if (e.hasMarkers) { d.outline = e.v7(); } d.thickness = e.iv(); } }; CategoryItemHighlightLayerView.prototype.bj = function (a, b) { var e_3, _a; _super.prototype.bj.call(this, a, b); if (a.d && !b) { for (var c = 0; c < this.cr.count; c++) { var d = this.cr._inner[c]; if (d._visibility == 0) { a.w(d); } } if (this.cq.count > 0) { var e = new DataTemplatePassInfo(); e.isHitTestRender = b; e.context = a.h(); e.viewportTop = this.b9.top; e.viewportLeft = this.b9.left; e.viewportWidth = this.b9.width; e.viewportHeight = this.b9.height; e.passID = "ItemMarkers"; var f = new DataTemplateRenderInfo(); f.isHitTestRender = b; f.passInfo = e; var g = new DataTemplateMeasureInfo(); g.passInfo = e; var h = false; var i = a.h(); g.context = i; f.context = i; g.renderContext = a; f.renderContext = a; var j = 0; var k = 0; var l = new Dictionary$2(DataTemplate.$, DataTemplate.$, 0); for (var m = 0; m < this.cq.count; m++) { var n = this.cq._inner[m]; if (n == null || n.ah == null) { continue; } var o = n.ah; if (!l.containsKey(o)) { l.addItem(o, o); if (o != null && o.passStarting != null) { o.passStarting(e); } } if (n._visibility == 1) { continue; } this.bu(n, m, b); if (!h) { g.data = n.content; g.width = n.width; g.height = n.height; if (o.measure != null) { g.data = n.content; o.measure(g); h = g.isConstant; if (h) { j = g.width; k = g.height; } } f.availableWidth = g.width; f.availableHeight = g.height; } else { f.availableWidth = j; f.availableHeight = k; } if (!isNaN_(n.width) && !isInfinity(n.width)) { f.availableWidth = n.width; } if (!isNaN_(n.height) && !isInfinity(n.height)) { f.availableHeight = n.height; } a.q(f, n); n.m = f.availableWidth; n.l = f.availableHeight; } try { for (var _b = __values(fromEnum(l.keys)), _c = _b.next(); !_c.done; _c = _b.next()) { var p = _c.value; if (p != null && p.passCompleted != null) { p.passCompleted(e); } } } catch (e_3_1) { e_3 = { error: e_3_1 }; } finally { try { if (_c && !_c.done && (_a = _b.return)) _a.call(_b); } finally { if (e_3) throw e_3.error; } } } } }; CategoryItemHighlightLayerView.prototype.ax = function (a) { _super.prototype.ax.call(this, a); for (var b = 0; b < this.cr.count; b++) { this.f.bc.exportRectangleData(a, this.cr._inner[b], "catItemRect", ["Main", "CategoryItem"]); } for (var c = 0; c < this.cq.count; c++) { this.f.bc.exportMarkerVisualDataFromMarker(this.f, a, this.cq._inner[c]); } }; CategoryItemHighlightLayerView.$t = markType(CategoryItemHighlightLayerView, 'CategoryItemHighlightLayerView', AnnotationLayerView.$); return CategoryItemHighlightLayerView; }(AnnotationLayerView)); export { CategoryItemHighlightLayerView };