import { __extends } from "tslib";
import { Component, forwardRef, ChangeDetectionStrategy } from '@angular/core';
import { IgxStraightNumericAxisBaseComponent } from "./igx-straight-numeric-axis-base-component";
import { IgxNumericAxisBaseComponent } from "./igx-numeric-axis-base-component";
import { IgxAxisComponent } from "./igx-axis-component";
import { NumericYAxis } from "./NumericYAxis";
import * as i0 from "@angular/core";
/**
 * Represents a IgxDataChartComponent numeric Y axis.
*
* The `IgxNumericYAxisComponent` treats the data as continuously varying numerical data items. Labels on this axis are placed along the Y-axis. Location of labels varies according to the value in a data column that is mapped using the `YMemberPath` property for Scatter Series or `ValueMemberPath` property for Category Series.
*
* ```html
* <igx-data-chart
*     [dataSource]="data" >
*     <igx-category-x-axis
*         label="label"
*         #xAxis>
*     </igx-category-x-axis>
*     <igx-numeric-y-axis
*         #yAxis>
*     </igx-numeric-y-axis>
*     <igx-column-series
*         [xAxis]="xAxis"
*         [yAxis]="yAxis"
*         valueMemberPath="value">
*     </igx-column-series>
* </igx-data-chart>
* ```
*/
var IgxNumericYAxisComponent = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(IgxNumericYAxisComponent, _super);
    function IgxNumericYAxisComponent() {
        return _super.call(this) || this;
    }
    IgxNumericYAxisComponent.prototype.createImplementation = function () {
        return new NumericYAxis();
    };
    Object.defineProperty(IgxNumericYAxisComponent.prototype, "i", {
        /**
                                     * @hidden
                                     */
        get: function () {
            return this._implementation;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(IgxNumericYAxisComponent.prototype, "isVertical", {
        /**
         * Gets if the current axis is of vertical axis
        */
        get: function () {
            return this.i.ch;
        },
        enumerable: false,
        configurable: true
    });
    IgxNumericYAxisComponent.prototype.scrollRangeIntoView = function (minimum, maximum) {
        this.i.l4(minimum, maximum);
    };
    IgxNumericYAxisComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: IgxNumericYAxisComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
    IgxNumericYAxisComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: IgxNumericYAxisComponent, selector: "igx-numeric-y-axis", providers: [{ provide: IgxStraightNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }, { provide: IgxNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }, { provide: IgxAxisComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }], usesInheritance: true, ngImport: i0, template: "", isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
    return IgxNumericYAxisComponent;
}(IgxStraightNumericAxisBaseComponent));
export { IgxNumericYAxisComponent };
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: IgxNumericYAxisComponent, decorators: [{
            type: Component,
            args: [{
                    selector: 'igx-numeric-y-axis',
                    template: "",
                    providers: [{ provide: IgxStraightNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }, { provide: IgxNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }, { provide: IgxAxisComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }],
                    changeDetection: ChangeDetectionStrategy.OnPush
                }]
        }], ctorParameters: function () { return []; } });
//# sourceMappingURL=igx-numeric-y-axis-component.js.map
