UNPKG

igniteui-react-charts

Version:

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

612 lines (611 loc) 20.3 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 { DependencyProperty } from "igniteui-react-core"; import { Series } from "./Series"; import { Brush } from "igniteui-react-core"; import { ItemTooltipLayerFrame } from "./ItemTooltipLayerFrame"; import { Base, String_$type, fromEnum, Point_$type, markType, markDep, runOn } from "igniteui-react-core"; import { Pool$1 } from "igniteui-react-core"; import { List$1 } from "igniteui-react-core"; import { ItemTooltipCollisionInfo } from "./ItemTooltipCollisionInfo"; import { Rect } from "igniteui-react-core"; import { DataContext } from "igniteui-react-core"; import { Size } from "igniteui-react-core"; import { DeviceUtils } from "igniteui-react-core"; import { PropertyMetadata } from "igniteui-react-core"; import { isNaN_ } from "igniteui-react-core"; import { AnnotationLayerView } from "./AnnotationLayerView"; import { PointerTooltip } from "./PointerTooltip"; import { PointerTooltipStyle } from "./PointerTooltipStyle"; import { PointerTooltipUtils } from "./PointerTooltipUtils"; /** * @hidden */ var ItemToolTipLayer = /** @class */ /*@__PURE__*/ (function (_super) { __extends(ItemToolTipLayer, _super); function ItemToolTipLayer() { var _this = _super.call(this) || this; var a = new ItemTooltipLayerFrame(); var b = new ItemTooltipLayerFrame(); var c = new ItemTooltipLayerFrame(); var d = _this.kh / 1000; _this.xn = a; _this.xm = b; _this.xo = c; _this.ab = ItemToolTipLayer.$; return _this; } ItemToolTipLayer.prototype.bk = function () { return new ItemToolTipLayer(); }; ItemToolTipLayer.prototype.get_et = function () { return true; }; ItemToolTipLayer.prototype.ct = function () { return new ItemToolTipLayerView(this); }; ItemToolTipLayer.prototype.q8 = function (a) { _super.prototype.q8.call(this, a); this.aag = a; }; ItemToolTipLayer.prototype.get_e4 = function () { return true; }; ItemToolTipLayer.prototype.gv = function (a) { if (this.aah == null) { return true; } if (this.aah == a) { return true; } return false; }; ItemToolTipLayer.prototype.rh = function (a, b, c, d) { _super.prototype.rh.call(this, a, b, c, d); switch (b) { case ItemToolTipLayer.$$p[1]: case ItemToolTipLayer.$$p[2]: this.rz(true); break; case ItemToolTipLayer.$$p[6]: this.rz(true); break; case ItemToolTipLayer.$$p[0]: this.rz(true); break; case "SeriesViewer": this.aag.cz(); break; case ItemToolTipLayer.$$p[3]: case ItemToolTipLayer.$$p[4]: case ItemToolTipLayer.$$p[5]: this.rz(true); break; } }; ItemToolTipLayer.prototype.y2 = function (a, b) { if (this.aah == null || this.aah == a) { if (!this.a1.c) { this.rz(b); } } }; ItemToolTipLayer.prototype.xt = function (a) { if (!_super.prototype.xt.call(this, a)) { return false; } if (this.aao != null) { if (a.isFragment) { var b = a.nh(); if (!Base.equalsStatic(this.aao, b)) { return false; } } else { if (!Base.equalsStatic(this.aao, a.name)) { return false; } } } var c = this.yx(a); if (!c.c) { return false; } return true; }; ItemToolTipLayer.prototype.y4 = function (a, b) { var e_1, _a; var _this = this; _super.prototype.y4.call(this, a, b); var c = a; var d = this.aag.co; var e = this.aak; var f = this.aaj; c.o.clear(); c.i.clear(); c.n.clear(); c.g.clear(); c.f.clear(); c.l.clear(); c.j.clear(); c.m.clear(); c.k.clear(); c.h.clear(); if (isNaN_(this.aad.x) && isNaN_(this.aad.y)) { d.count = 0; return; } var g = 0; if (this.xt(this.aah)) { this.aaw(this.aah, c, e, f, 0); g++; } else { try { for (var _b = __values(fromEnum(this.dc.series)), _c = _b.next(); !_c.done; _c = _b.next()) { var h = _c.value; if (this.xt(h)) { this.aaw(h, c, e, f, g); g++; } if (h.isStacked) { h.p9(function (i) { if (_this.xt(i)) { _this.aaw(i, c, e, f, g); g++; } if (i.ei) { i.p7(function (j) { if (_this.xt(j)) { _this.aaw(j, c, e, f, g); g++; } return true; }); } return true; }); } if (h.ei) { h.p7(function (i) { if (_this.xt(i)) { _this.aaw(i, c, e, f, g); g++; } 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; } } this.aav(c); } d.count = g; }; ItemToolTipLayer.prototype.aav = function (a) { var b = new List$1(ItemTooltipCollisionInfo.$, 0); for (var c = 0; c < a.f.count; c++) { var d = new ItemTooltipCollisionInfo(); d.d = c; d.e = { $type: Point_$type, x: a.f._inner[c], y: a.g._inner[c] }; d.c = a.m._inner[c]; d.a = a.k._inner[c]; d.b = a.o._inner[c]; if (isNaN_(d.e.x) || isNaN_(d.e.y)) { continue; } b.add(d); } b.aa(function (e, f) { if (e.e.y < f.e.y) { return -1; } if (e.e.y > f.e.y) { return 1; } if (e.b < f.b) { return -1; } if (e.b > f.b) { return 1; } return 0; }); var e = this.aai(b); if (!e) { return; } for (var f = 0; f < b.count - 1; f++) { var g = b._inner[f]; var h = b._inner[f + 1]; var i = new Rect(0, g.e.x, g.e.y, g.c, g.a); var j = new Rect(0, h.e.x, h.e.y, h.c, h.a); if (i.intersectsWith(j) || i.top > j.bottom) { h.e = { $type: Point_$type, x: h.e.x, y: i.bottom + 1 }; } } if (b._inner[b.count - 1].e.y + b._inner[b.count - 1].a > this.cw.b9.height) { b._inner[b.count - 1].e = { $type: Point_$type, x: b._inner[b.count - 1].e.x, y: b._inner[b.count - 1].e.y - ((b._inner[b.count - 1].e.y + b._inner[b.count - 1].a) - this.cw.b9.height) }; } for (var k = b.count - 1; k >= 1; k--) { var l = b._inner[k]; var m = b._inner[k - 1]; var n = new Rect(0, l.e.x, l.e.y, l.c, l.a); var o = new Rect(0, m.e.x, m.e.y, m.c, m.a); if (n.intersectsWith(o) || n.top < o.bottom) { m.e = { $type: Point_$type, x: m.e.x, y: n.top - (o.height + 1) }; } } for (var p = 0; p < b.count; p++) { var q = b._inner[p].d; var r = b._inner[p]; a.f._inner[q] = r.e.x; a.g._inner[q] = r.e.y; } }; ItemToolTipLayer.prototype.aai = function (a) { if (a.count <= 1) { return false; } var b = this.cw.b9; for (var c = 0; c < a.count - 1; c++) { var d = a._inner[c]; var e = a._inner[c + 1]; var f = new Rect(0, d.e.x, d.e.y, d.c, d.a); var g = new Rect(0, e.e.x, e.e.y, e.c, e.a); if (f.intersectsWith(g)) { return true; } } return false; }; ItemToolTipLayer.prototype.aaw = function (a, b, c, d, e) { var f = this.yx(a); if (!f.c) { return; } var g = a.wn(f.d, c, d); var h = this.aag.co; var i = this.aam(a); var j = this.aad; if (!c) { j = this.ws(g); } var k = a.kr(j); var l = h.item(e); var m = this.cw.b9; var n = null; if (a.e5 && k != null) { n = a.a3(k); } else { n = new DataContext(); n.item = k; n.series = a; } if (!this.aag.cp(a, l, i, n)) { return; } var o = this.aag.c0(l, i, n); b.i.add1(l); b.j.add1(n); b.l.add1(i); var p = g.x; var q = g.x; q = Math.max(q, m.left); q = Math.min(q, m.right); b.n.add(q); var r = g.y; r = Math.max(r, m.top); r = Math.min(r, m.bottom); b.o.add(r); var s = DeviceUtils.g(10); var t = g.x + s; if (t + o.width > m.right) { t = (p - o.width) - s; } if (t < m.left) { t = m.left; } b.f.add(t); var u = (g.y - o.height) - s; if (u + o.height > m.bottom) { u = (m.bottom - o.height) - s; } if (u < m.top) { u = m.top; } b.g.add(u); b.m.add(o.width); b.k.add(o.height); var v = this.vk; if (v == null) { v = this.vq; } if (v == null) { v = a.vk; } b.h.add(v); }; ItemToolTipLayer.prototype.aam = function (a) { return a.toolTip; }; ItemToolTipLayer.prototype.qd = function () { this.aad = { $type: Point_$type, x: NaN, y: NaN }; this.rz(false); this.aag.cx(false); }; ItemToolTipLayer.prototype.qe = function () { this.aad = { $type: Point_$type, x: NaN, y: NaN }; this.rz(false); this.aag.cx(true); }; ItemToolTipLayer.prototype.y7 = function (a, b) { _super.prototype.y7.call(this, a, b); var c = a; var d = c.o.count; var e = b.b9.left; var f = b.b9.right; var g = b.b9.top; var h = b.b9.bottom; for (var i = 0; i < d; i++) { if (isNaN_(c.n._inner[i]) || isNaN_(c.o._inner[i]) || isNaN_(c.f._inner[i]) || isNaN_(c.g._inner[i]) || c.l._inner[i] == null || c.j._inner[i] == null) { this.aag.cw(c.i._inner[i]); continue; } var j = c.f._inner[i]; var k = c.g._inner[i]; var l = c.m._inner[i]; var m = c.k._inner[i]; var n = false; if (j < e && Math.abs(j - e) > 1) { n = true; } if (k < g && Math.abs(k - g) > 1) { n = true; } if ((j + l) > f && Math.abs((j + l) - f) > 1) { n = true; } if ((k + m) > h && Math.abs((k + m) - h) > 1) { n = true; } if (n) { this.aag.cw(c.i._inner[i]); continue; } var o = c.i._inner[i]; var p = Math.min(c.f._inner[i], c.n._inner[i]); var q = Math.min(c.g._inner[i], c.o._inner[i]); var r = c.n._inner[i] - c.f._inner[i]; var s = c.o._inner[i] - c.g._inner[i]; if (o != null) { this.aag.cy(o, p, q, r, s); } } }; ItemToolTipLayer.prototype.gb = function () { return true; }; ItemToolTipLayer.$t = markType(ItemToolTipLayer, 'ItemToolTipLayer', AnnotationLayer.$); ItemToolTipLayer.$$p = markDep(DependencyProperty, PropertyMetadata, ItemToolTipLayer, 'raisePropertyChanged', ['SkipUnknownValues:aaj:aax', [0, true], 'TargetSeriesName:aao:aay', [2, null], 'TargetSeries:aah:aaz', [Series.$, null], 'ToolTipBackground:aa4:aa0', [Brush.$, null], 'ToolTipBorderBrush:aa5:aa1', [Brush.$, null], 'ToolTipBorderThickness:aal:aa2', [1, NaN], 'UseInterpolation:aak:aa3', [0, false]]); return ItemToolTipLayer; }(AnnotationLayer)); export { ItemToolTipLayer }; /** * @hidden */ var ItemToolTipLayerView = /** @class */ /*@__PURE__*/ (function (_super) { __extends(ItemToolTipLayerView, _super); function ItemToolTipLayerView(a) { var _this = _super.call(this, a) || this; _this.cn = null; _this.co = null; _this.cq = null; _this._htmlTest = null; _this.cn = a; _this.cq = new List$1(PointerTooltip.$, 0); return _this; } ItemToolTipLayerView.prototype.a4 = function () { var _this = this; _super.prototype.a4.call(this); this.co = ((function () { var $ret = new Pool$1(Base.$); $ret.create = runOn(_this, _this.cr); $ret.activate = runOn(_this, _this.ct); $ret.disactivate = runOn(_this, _this.cv); $ret.destroy = runOn(_this, _this.cu); return $ret; })()); this.htmlTest = /^[^<]*(<[\w\W]+>)[^>]*$/; }; ItemToolTipLayerView.prototype.as = function () { _super.prototype.as.call(this); for (var a = 0; a < this.co.a.count; a++) { this.co.a._inner[a].br(); } for (var b = 0; b < this.co.b.count; b++) { this.co.b._inner[b].br(); } this.co.clear(); }; ItemToolTipLayerView.prototype.cr = function () { var a = new PointerTooltip(); a.bw(this.f.j3); a._visibility = 1; a.ap = this.f.dc.dp.k; this.cq.add(a); return a; }; ItemToolTipLayerView.prototype.ct = function (a) { var b = a; }; ItemToolTipLayerView.prototype.cv = function (a) { var b = a; b._visibility = 1; }; ItemToolTipLayerView.prototype.cu = function (a) { var b = a; b.bz(); b.content = null; this.cq.remove1(a); }; Object.defineProperty(ItemToolTipLayerView.prototype, "htmlTest", { get: function () { return this._htmlTest; }, set: function (a) { this._htmlTest = a; }, enumerable: false, configurable: true }); ItemToolTipLayerView.prototype.cp = function (a, b, c, d) { var e = b; if (a.k6 == "default") { a.k6 = a.cw.getDefaultTooltipTemplate(); } var template_ = a.k6; var context_ = d; if (a.toolTip == null) { return false; } var tooltip_ = a.toolTip; if ((tooltip_.updateToolTip)) { tooltip_._inPointer = true; tooltip_.updateToolTip(context_, true); tooltip_.setStyleProperty('position', 'relative'); tooltip_.setStyleProperty('left', ''); tooltip_.setStyleProperty('top', ''); } e.content = a.toolTip; return true; }; ItemToolTipLayerView.prototype.c0 = function (a, b, c) { var d = a; var e = d.content; var f = new Size(1, Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY); d.cy = 1; var g = d.cx(new Size(1, Number.POSITIVE_INFINITY, Number.POSITIVE_INFINITY)); d.cy = 0; return g; }; ItemToolTipLayerView.prototype.cy = function (a, b, c, d, e) { var f = new PointerTooltipStyle(); if (this.f.dc != null) { var g = this.f.dc.dp.j.i(); PointerTooltipUtils.a(g, f, this.cn.aa4, this.cn.aa5, this.cn.aal); } var h = a; h.aq = f; var i = h.content; h.cs = { $type: Point_$type, x: d, y: e }; h._visibility = 0; h.n = b; h.o = c; }; ItemToolTipLayerView.prototype.cw = function (a) { if (a != null) { var b = a; b._visibility = 1; } }; ItemToolTipLayerView.prototype.bj = function (a, b) { _super.prototype.bj.call(this, a, b); if (b) { return; } var c = 0; var d = 0; var e = this.f.dc; if (e != null) { var f = e.dp.j.b8(); c += f.x; d += f.y; } for (var g = 0; g < this.cq.count; g++) { this.cq._inner[g].by(this.cq._inner[g].n + c, this.cq._inner[g].o + d); } }; ItemToolTipLayerView.prototype.ax = function (a) { var e_2, _a; _super.prototype.ax.call(this, a); try { for (var _b = __values(fromEnum(this.co.a)), _c = _b.next(); !_c.done; _c = _b.next()) { var tooltip_ = _c.value; if (tooltip_._visibility != 0) { continue; } var b = tooltip_; var c = b.a5(); var d = b.n; var e = b.o; var f = new List$1(String_$type, 0); var g = b.content; if (g != null) { var h = g.findByClass("ui-chart-default-tooltip-content"); if (h != null && h.length > 0 && h[0] != null && h[0].getChildCount() > 0) { var i = h[0]; var j = i.getChildAt(0); var k = j.getText(); f.add(k); } else { var l = g.getText(); f.add(l); } } this.f.bc.addPointerTooltipData(a, c, d, e, f); } } 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; } } }; ItemToolTipLayerView.prototype.cx = function (a) { this.a2(); for (var b = 0; b < this.cq.count; b++) { this.cw(this.cq._inner[b]); if (a) { this.cq._inner[b].bs(); } } }; ItemToolTipLayerView.prototype.cz = function () { if (this.f.dc == null) { this.cx(true); } }; ItemToolTipLayerView.$t = markType(ItemToolTipLayerView, 'ItemToolTipLayerView', AnnotationLayerView.$); return ItemToolTipLayerView; }(AnnotationLayerView)); export { ItemToolTipLayerView };