/*
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 { ShapeSeriesBase } from "./ShapeSeriesBase";
import { StyleSelector } from "./StyleSelector";
import { DependencyProperty } from "igniteui-angular-core";
import { Style } from "igniteui-angular-core";
import { markType, markDep, typeCast } from "igniteui-angular-core";
import { ShapeSeriesViewBase } from "./ShapeSeriesViewBase";
import { PropertyMetadata } from "igniteui-angular-core";
import { Defaults } from "./Defaults";
import { Path } from "igniteui-angular-core";
import { stringIsNullOrEmpty } from "igniteui-angular-core";
/**
 * @hidden
 */
export let ScatterPolylineSeries = /*@__PURE__*/ (() => {
    class ScatterPolylineSeries extends ShapeSeriesBase {
        constructor() {
            super();
            this.ab = ScatterPolylineSeries.$;
        }
        get_d8() {
            return true;
        }
        bx() {
            return new ScatterPolylineSeriesView(this);
        }
        get_qx() {
            return false;
        }
        ly(a) {
            super.ly(a);
            this.sq = a;
        }
        get_q2() {
            return false;
        }
        l3(a, b, c, d) {
            super.l3(a, b, c, d);
            switch (b) {
                case ScatterPolylineSeries.$$p[0]:
                    this.sq.cv(this.sw);
                    this.mh(false);
                    this.lo();
                    break;
                case ScatterPolylineSeries.$$p[1]:
                    this.sq.cw(this.sr);
                    this.mh(false);
                    this.lo();
                    break;
            }
        }
        sa(a) {
            let b = a;
            b.cv(this.sw);
            b.cw(this.sr);
            super.sa(a);
        }
        at(a, b) {
            let c = this.sq.c0(a, b, true);
            if (c != null) {
                return c.dataContext;
            }
            return super.at(a, b);
        }
    }
    ScatterPolylineSeries.$t = markType(ScatterPolylineSeries, 'ScatterPolylineSeries', ShapeSeriesBase.$);
    ScatterPolylineSeries.$$p = markDep(DependencyProperty, PropertyMetadata, ScatterPolylineSeries, 'raisePropertyChanged', ['ShapeStyle:sw:su', [Style.$, null], 'ShapeStyleSelector:sr:sv', [StyleSelector.$, null]]);
    return ScatterPolylineSeries;
})();
/**
 * @hidden
 */
export let ScatterPolylineSeriesView = /*@__PURE__*/ (() => {
    class ScatterPolylineSeriesView extends ShapeSeriesViewBase {
        constructor(a) {
            super(a);
        }
        as() {
            super.as();
            if (!this.q) {
                this.b3.gz = Defaults.aa;
            }
        }
        c2(a, b) {
            return this.c3(a, b, false);
        }
        cj(a, b, c) {
            super.cj(a, b, c);
            ShapeSeriesViewBase.ci(this, a, b);
        }
        ch(a, b) {
            let c = typeCast(Path.$, a);
            if (c == null) {
                return;
            }
            c.ak = b;
        }
        ac(a) {
            let b = super.ac(a);
            b._fill = null;
            return b;
        }
        ab(a) {
            let b = super.ab(a);
            b._fill = null;
            return b;
        }
        b8(a) {
            return a.width >= this.b3.rj || a.height >= this.b3.rj;
        }
        getDefaultTooltipTemplate() {
            let a = "<div class='ui-chart-default-tooltip-content'><span";
            let b = this.e.a6.a$r(this.e);
            if (!stringIsNullOrEmpty(b)) {
                a += " style='color:" + b + "'";
            }
            a += ">" + this.b3.title + "</span><br/>";
            a += "</div>";
            return a;
        }
    }
    ScatterPolylineSeriesView.$t = markType(ScatterPolylineSeriesView, 'ScatterPolylineSeriesView', ShapeSeriesViewBase.$);
    return ScatterPolylineSeriesView;
})();
