/*
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 { FinancialSeries } from "./FinancialSeries";
import { DependencyProperty } from "igniteui-angular-core";
import { ISortingAxis_$type } from "./ISortingAxis";
import { typeCast, markType, markDep } from "igniteui-angular-core";
import { Rect } from "igniteui-angular-core";
import { ScalerParams } from "./ScalerParams";
import { AxisRange } from "./AxisRange";
import { PropertyMetadata } from "igniteui-angular-core";
import { isNaN_ } from "igniteui-angular-core";
/**
 * @hidden
 */
var FinancialOverlay = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(FinancialOverlay, _super);
    function FinancialOverlay() {
        var _this = _super.call(this) || this;
        _this.aay = false;
        _this.aay = false;
        return _this;
    }
    FinancialOverlay.prototype.get_e8 = function () {
        return true;
    };
    FinancialOverlay.prototype.pb = function (a, b, c, d) {
        _super.prototype.pb.call(this, a, b, c, d);
        if (this.w4 != null && typeCast(ISortingAxis_$type, this.w4) !== null) {
            this.w4.i$i();
        }
        this.xl.b0.e(this.id);
        this.aaz();
        if (this.xn != null) {
            this.xn.c1();
        }
        this.rp(true);
    };
    FinancialOverlay.prototype.get_hd = function () {
        return true;
    };
    FinancialOverlay.prototype.q7 = function (a, b, c, d) {
        switch (b) {
            case "FastItemsSource":
                this.aay = false;
                break;
            case FinancialOverlay.$$p[0]:
                this.aay = false;
                this.rp(false);
                this.qj();
                break;
            case "XAxis":
                this.aay = false;
                break;
        }
        _super.prototype.q7.call(this, a, b, c, d);
    };
    FinancialOverlay.prototype.b2 = function () {
        if (this.b3 == 0) {
            return 1;
        }
        else {
            return _super.prototype.b2.call(this);
        }
    };
    FinancialOverlay.prototype.gw = function (a, b) {
        if (this.gv(a, b)) {
            return true;
        }
        return false;
    };
    FinancialOverlay.prototype.ac = function () {
        _super.prototype.ac.call(this);
        this.rp(false);
    };
    FinancialOverlay.prototype.gd = function (a) {
        var b = this.dn != null ? this.dn.indexOf(a) : -1;
        var c = this.cv.by;
        c = c.copy();
        var d = this.cv.bx;
        var e = new Rect(0, 0, 0, 1, 1);
        var f = this.wj(this.cv);
        var g = new ScalerParams(0, e, e, this.w4.ch, f);
        var h = new ScalerParams(0, e, e, this.xn.ch, f);
        h.b = this.iy();
        if (b >= 0 && Rect.l_op_Inequality(c, null) && Rect.l_op_Inequality(d, null)) {
            if (this.w4 != null) {
                var i = this.w4.el(b, g);
                if (i < c.left + 0.1 * c.width) {
                    i = i + 0.4 * c.width;
                }
                if (i > c.right - 0.1 * c.width) {
                    i = i - 0.4 * c.width;
                }
                c.x = i - 0.5 * c.width;
            }
            if (this.xn != null && this.xz != null && this.xy != null && b < this.xz.count && b < this.xy.count) {
                var j = this.xn.el(this.xz.item(b), h);
                var k = this.xn.el(this.xy.item(b), h);
                if (!isNaN_(j) && !isNaN_(k)) {
                    var l = Math.abs(j - k);
                    if (c.height < l) {
                        c.height = l;
                        c.y = Math.min(j, k);
                    }
                    else {
                        if (j < c.top + 0.1 * c.height) {
                            j = j + 0.4 * c.height;
                        }
                        if (j > c.bottom - 0.1 * c.height) {
                            j = j - 0.4 * c.height;
                        }
                        c.y = j - 0.5 * c.height;
                    }
                }
            }
            this.c3.au(this.db, c, true);
        }
        return b >= 0;
    };
    FinancialOverlay.prototype.ay = function (a) {
        if (a != null && a == this.xn && this.xz != null && this.xy != null) {
            return new AxisRange(this.xz.minimum, this.xy.maximum);
        }
        return null;
    };
    FinancialOverlay.$t = markType(FinancialOverlay, 'FinancialOverlay', FinancialSeries.$);
    FinancialOverlay.$$p = markDep(DependencyProperty, PropertyMetadata, FinancialOverlay, 'raisePropertyChanged', ['IgnoreFirst:aa0:aa2', [1, 0]]);
    return FinancialOverlay;
}(FinancialSeries));
export { FinancialOverlay };
