igniteui-react-charts
Version:
Ignite UI React charting components for building rich data visualizations using TypeScript APIs.
150 lines (149 loc) • 5.71 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 } from "tslib";
import { Base, markType } from "igniteui-react-core";
import { IAnchoredCategorySeriesInteractionManager_$type } from "./IAnchoredCategorySeriesInteractionManager";
import { Rect } from "igniteui-react-core";
import { ScalerParams } from "./ScalerParams";
import { truncate, intDivide, isNaN_ } from "igniteui-react-core";
import { stringIsNullOrEmpty } from "igniteui-react-core";
/**
* @hidden
*/
var AnchoredCategorySeriesInteractionManager = /** @class */ /*@__PURE__*/ (function (_super) {
__extends(AnchoredCategorySeriesInteractionManager, _super);
function AnchoredCategorySeriesInteractionManager() {
return _super !== null && _super.apply(this, arguments) || this;
}
AnchoredCategorySeriesInteractionManager.prototype.c$b = function (a, b, c, d, e, f, g, h) {
if (!g) {
return h(b);
}
if (e == null || e.dm || f == null || d == null || isNaN_(b.x) || isNaN_(b.y)) {
return h(b);
}
if (c <= 1) {
return h(b);
}
var i = truncate(Math.round(a.it(b)));
if (i < 0 || i >= a.dp.count) {
return h(b);
}
var j = intDivide(i, c);
var k = c * j;
var l = Math.min(k + c, d.count - 1);
var m = a.wu(a.cw);
var n = new ScalerParams(0, a.dc.x6, a.dc.x5, f.df, a.dc.xr);
var o = m.top;
var p = m.bottom;
var q = o + (p - o) * b.y;
var r = f.fw(q, n);
var s = 1.7976931348623157E+308;
var t = k;
for (var u = k; u <= l; u++) {
var v = Math.abs(d.item(u) - r);
if (v < s) {
s = v;
t = u;
}
}
return a.dp.item(t);
};
AnchoredCategorySeriesInteractionManager.prototype.c$a = function (a, b, c, d, e, f) {
var g = a.cw.ca;
g = g.copy();
var h = a.cw.b9;
var i = new Rect(0, 0, 0, 1, 1);
var j = !g.isEmpty && !h.isEmpty && a.dp != null ? a.dp.indexOf(f) : -1;
var k = a.ww(a.cw);
var l = new ScalerParams(0, i, i, c.df, k);
var m = new ScalerParams(0, i, i, d.df, k);
m.b = a.i0();
var n = c != null ? c.ft(j, l) : NaN;
n += e;
var o = d != null && b != null && j < b.count ? d.ft(b.item(j), m) : NaN;
if (!isNaN_(n)) {
if (n < g.left + 0.1 * g.width) {
n = n + 0.4 * g.width;
g.x = n - 0.5 * g.width;
}
if (n > g.right - 0.1 * g.width) {
n = n - 0.4 * g.width;
g.x = n - 0.5 * g.width;
}
}
if (!isNaN_(o)) {
if (o < g.top + 0.1 * g.height) {
o = o + 0.4 * g.height;
g.y = o - 0.5 * g.height;
}
if (o > g.bottom - 0.1 * g.height) {
o = o - 0.4 * g.height;
g.y = o - 0.5 * g.height;
}
}
if (a.c4 != null) {
a.c4.au(a.dc, g, true);
}
return j >= 0;
};
AnchoredCategorySeriesInteractionManager.prototype.c$c = function (a, b) {
var c = "<div class='ui-chart-default-tooltip-content'>";
var d = null;
d = a.a0();
if (d.dc) {
var e = d;
c += "<span>${item." + e.dateTimeMemberPath + "}</span><br/>";
}
else if (d != null && d.hg != null) {
c += "<span>${item." + d.hg.toString() + "}</span><br/>";
}
c += "<span";
var f = a.ba.a$u(a);
if (!stringIsNullOrEmpty(f)) {
c += " style='color:" + f + "'";
}
c += ">${series.title}: </span><span class='ui-priority-primary'>" + "${item." + b + "}</span></div>";
return c;
};
AnchoredCategorySeriesInteractionManager.prototype.c$d = function (a, b, c, d, e, f, g, h) {
if (c == null || d == null) {
return Rect.empty;
}
var i = a.wi(b);
var j = a.cw.ca;
var k = a.cw.b9;
var l = a.getEffectiveViewport1(a.cw);
var m = new ScalerParams(0, j, k, d.df, l);
m.b = a.i0();
var n = a.an(a.a0(), e.h, f, g, b, true);
if (n == null) {
return Rect.empty;
}
var o = n[0];
var p = n[1];
var q = Math.abs(i.x - o[0]);
var r = Math.abs(i.x - p[0]);
var s = d.ft(d.p5, m);
var t = c.ou(j, k, l);
if (q < r) {
var u = o[0] - 0.5 * t;
var v = h(o);
var w = s;
return new Rect(0, u, Math.min(v, w), t, Math.max(v, w) - Math.min(v, w));
}
else {
var x = p[0] - 0.5 * t;
var y = h(p);
var z = s;
return new Rect(0, x, Math.min(y, z), t, Math.max(y, z) - Math.min(y, z));
}
};
AnchoredCategorySeriesInteractionManager.$t = markType(AnchoredCategorySeriesInteractionManager, 'AnchoredCategorySeriesInteractionManager', Base.$, [IAnchoredCategorySeriesInteractionManager_$type]);
return AnchoredCategorySeriesInteractionManager;
}(Base));
export { AnchoredCategorySeriesInteractionManager };