UNPKG

ngx-ui-hero

Version:

Simple, fast and reliable utilities for Angular.

55 lines 11.7 kB
import { Component, Inject, Input, Optional, ViewChild } from '@angular/core'; import { NG_ASYNC_VALIDATORS, NG_VALIDATORS, NG_VALUE_ACCESSOR, NgModel } from '@angular/forms'; import { ElementBase } from '../../base/element-base'; import { INPUT_FORMS_CONFIG } from '../../input-forms-config.constants'; import * as i0 from "@angular/core"; import * as i1 from "@angular/common"; import * as i2 from "@angular/forms"; import * as i3 from "ngx-bootstrap/tooltip"; import * as i4 from "../../directives/max-value-validator.directive"; import * as i5 from "../../directives/min-value-validator.directive"; import * as i6 from "../input-validations/input-validations.component"; let identifier = 0; export class InputNumberComponent extends ElementBase { constructor(validators, asyncValidators, config) { super(validators, asyncValidators, config); this.config = config; this.identifier = `input-number-${identifier++}`; } ngOnInit() { } } InputNumberComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: InputNumberComponent, deps: [{ token: NG_VALIDATORS, optional: true }, { token: NG_ASYNC_VALIDATORS, optional: true }, { token: INPUT_FORMS_CONFIG }], target: i0.ɵɵFactoryTarget.Component }); InputNumberComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "15.2.10", type: InputNumberComponent, selector: "input-number", inputs: { maxValue: "maxValue", minValue: "minValue" }, providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputNumberComponent, multi: true }], viewQueries: [{ propertyName: "model", first: true, predicate: NgModel, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<label *ngIf=\"label\" [attr.for]=\"identifier\">\n {{label}}\n <span class=\"required-symbol\" *ngIf=\"isRequired\"> *</span>\n <i class=\"fa fa-question-circle ml-2\" tooltip=\"{{help}}\" container=\"body\" *ngIf=\"help\"></i>\n</label>\n\n<input\n class=\"form-control\"\n type=\"number\"\n [max]=\"maxValue\"\n [min]=\"minValue\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [(ngModel)]=\"value\"\n [id]=\"identifier\"\n [ngClass]=\"{\n 'is-valid': showValidations && !disabled && touched && !(invalid | async),\n 'is-invalid': showValidations && !disabled && touched && (invalid | async)\n }\"\n/>\n\n<small class=\"text-muted\" *ngIf=\"description\">{{description}}</small>\n\n<input-validations\n *ngIf=\"showValidations && !disabled && touched && (invalid | async)\"\n [messages]=\"failures | async\">\n</input-validations>\n", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.TooltipDirective, selector: "[tooltip], [tooltipHtml]", inputs: ["containerClass", "tooltipAnimation", "tooltipFadeDuration", "isOpen", "tooltipHtml", "tooltip", "tooltipPlacement", "placement", "tooltipIsOpen", "tooltipEnable", "isDisabled", "tooltipAppendToBody", "container", "tooltipClass", "tooltipContext", "tooltipPopupDelay", "delay", "tooltipTrigger", "triggers", "adaptivePosition"], outputs: ["tooltipChange", "tooltipStateChanged", "onShown", "onHidden"], exportAs: ["bs-tooltip"] }, { kind: "directive", type: i4.MaxValueDirective, selector: "[max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i5.MinValueDirective, selector: "[min][ngModel]", inputs: ["min"] }, { kind: "component", type: i6.InputValidationsComponent, selector: "input-validations", inputs: ["messages"] }, { kind: "pipe", type: i1.AsyncPipe, name: "async" }] }); i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "15.2.10", ngImport: i0, type: InputNumberComponent, decorators: [{ type: Component, args: [{ selector: 'input-number', providers: [{ provide: NG_VALUE_ACCESSOR, useExisting: InputNumberComponent, multi: true }], template: "<label *ngIf=\"label\" [attr.for]=\"identifier\">\n {{label}}\n <span class=\"required-symbol\" *ngIf=\"isRequired\"> *</span>\n <i class=\"fa fa-question-circle ml-2\" tooltip=\"{{help}}\" container=\"body\" *ngIf=\"help\"></i>\n</label>\n\n<input\n class=\"form-control\"\n type=\"number\"\n [max]=\"maxValue\"\n [min]=\"minValue\"\n [disabled]=\"disabled\"\n [autocomplete]=\"autocomplete\"\n [(ngModel)]=\"value\"\n [id]=\"identifier\"\n [ngClass]=\"{\n 'is-valid': showValidations && !disabled && touched && !(invalid | async),\n 'is-invalid': showValidations && !disabled && touched && (invalid | async)\n }\"\n/>\n\n<small class=\"text-muted\" *ngIf=\"description\">{{description}}</small>\n\n<input-validations\n *ngIf=\"showValidations && !disabled && touched && (invalid | async)\"\n [messages]=\"failures | async\">\n</input-validations>\n" }] }], ctorParameters: function () { return [{ type: Array, decorators: [{ type: Optional }, { type: Inject, args: [NG_VALIDATORS] }] }, { type: Array, decorators: [{ type: Optional }, { type: Inject, args: [NG_ASYNC_VALIDATORS] }] }, { type: undefined, decorators: [{ type: Inject, args: [INPUT_FORMS_CONFIG] }] }]; }, propDecorators: { maxValue: [{ type: Input }], minValue: [{ type: Input }], model: [{ type: ViewChild, args: [NgModel, { static: true }] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5wdXQtbnVtYmVyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC11aS1oZXJvL3NyYy9saWIvaW5wdXQtZm9ybXMvY29tcG9uZW50cy9pbnB1dC1udW1iZXIvaW5wdXQtbnVtYmVyLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC11aS1oZXJvL3NyYy9saWIvaW5wdXQtZm9ybXMvY29tcG9uZW50cy9pbnB1dC1udW1iZXIvaW5wdXQtbnVtYmVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBVSxRQUFRLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3RGLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxhQUFhLEVBQUUsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFaEcsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXRELE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOzs7Ozs7OztBQUV4RSxJQUFJLFVBQVUsR0FBRyxDQUFDLENBQUM7QUFXbkIsTUFBTSxPQUFPLG9CQUFxQixTQUFRLFdBQW1CO0lBUTNELFlBQ3FDLFVBQXNCLEVBQ2hCLGVBQTJCLEVBQ2pDLE1BQXdCO1FBRTNELEtBQUssQ0FBQyxVQUFVLEVBQUUsZUFBZSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRlIsV0FBTSxHQUFOLE1BQU0sQ0FBa0I7UUFMdEQsZUFBVSxHQUFHLGdCQUFnQixVQUFVLEVBQUUsRUFBRSxDQUFDO0lBUW5ELENBQUM7SUFFRCxRQUFRLEtBQVUsQ0FBQzs7a0hBaEJSLG9CQUFvQixrQkFTVCxhQUFhLDZCQUNiLG1CQUFtQiw2QkFDL0Isa0JBQWtCO3NHQVhqQixvQkFBb0IsK0ZBTnBCLENBQUM7WUFDVixPQUFPLEVBQUUsaUJBQWlCO1lBQzFCLFdBQVcsRUFBRSxvQkFBb0I7WUFDakMsS0FBSyxFQUFFLElBQUk7U0FDWixDQUFDLGlFQU1TLE9BQU8scUZDdEJwQix5MkJBMkJBOzRGRFRhLG9CQUFvQjtrQkFUaEMsU0FBUzsrQkFDRSxjQUFjLGFBRWIsQ0FBQzs0QkFDVixPQUFPLEVBQUUsaUJBQWlCOzRCQUMxQixXQUFXLHNCQUFzQjs0QkFDakMsS0FBSyxFQUFFLElBQUk7eUJBQ1osQ0FBQzs7MEJBV0MsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxhQUFhOzswQkFDaEMsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxtQkFBbUI7OzBCQUN0QyxNQUFNOzJCQUFDLGtCQUFrQjs0Q0FWWixRQUFRO3NCQUF2QixLQUFLO2dCQUNVLFFBQVE7c0JBQXZCLEtBQUs7Z0JBRThCLEtBQUs7c0JBQXhDLFNBQVM7dUJBQUMsT0FBTyxFQUFFLEVBQUMsTUFBTSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbXBvbmVudCwgSW5qZWN0LCBJbnB1dCwgT25Jbml0LCBPcHRpb25hbCwgVmlld0NoaWxkIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19BU1lOQ19WQUxJREFUT1JTLCBOR19WQUxJREFUT1JTLCBOR19WQUxVRV9BQ0NFU1NPUiwgTmdNb2RlbCB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcblxuaW1wb3J0IHsgRWxlbWVudEJhc2UgfSBmcm9tICcuLi8uLi9iYXNlL2VsZW1lbnQtYmFzZSc7XG5pbXBvcnQgeyBJbnB1dEZvcm1zQ29uZmlnIH0gZnJvbSAnLi4vLi4vaW5wdXQtZm9ybXMtY29uZmlnJztcbmltcG9ydCB7IElOUFVUX0ZPUk1TX0NPTkZJRyB9IGZyb20gJy4uLy4uL2lucHV0LWZvcm1zLWNvbmZpZy5jb25zdGFudHMnO1xuXG5sZXQgaWRlbnRpZmllciA9IDA7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2lucHV0LW51bWJlcicsXG4gIHRlbXBsYXRlVXJsOiAnLi9pbnB1dC1udW1iZXIuY29tcG9uZW50Lmh0bWwnLFxuICBwcm92aWRlcnM6IFt7XG4gICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgdXNlRXhpc3Rpbmc6IElucHV0TnVtYmVyQ29tcG9uZW50LFxuICAgIG11bHRpOiB0cnVlXG4gIH1dXG59KVxuZXhwb3J0IGNsYXNzIElucHV0TnVtYmVyQ29tcG9uZW50IGV4dGVuZHMgRWxlbWVudEJhc2U8c3RyaW5nPiBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIEBJbnB1dCgpIHB1YmxpYyBtYXhWYWx1ZTogbnVtYmVyO1xuICBASW5wdXQoKSBwdWJsaWMgbWluVmFsdWU6IG51bWJlcjtcblxuICBAVmlld0NoaWxkKE5nTW9kZWwsIHtzdGF0aWM6IHRydWV9KSBtb2RlbDogTmdNb2RlbDtcblxuICBwdWJsaWMgaWRlbnRpZmllciA9IGBpbnB1dC1udW1iZXItJHtpZGVudGlmaWVyKyt9YDtcblxuICBjb25zdHJ1Y3RvcihcbiAgICBAT3B0aW9uYWwoKSBASW5qZWN0KE5HX1ZBTElEQVRPUlMpIHZhbGlkYXRvcnM6IEFycmF5PGFueT4sXG4gICAgQE9wdGlvbmFsKCkgQEluamVjdChOR19BU1lOQ19WQUxJREFUT1JTKSBhc3luY1ZhbGlkYXRvcnM6IEFycmF5PGFueT4sXG4gICAgQEluamVjdChJTlBVVF9GT1JNU19DT05GSUcpIHB1YmxpYyBjb25maWc6IElucHV0Rm9ybXNDb25maWdcbiAgKSB7XG4gICAgc3VwZXIodmFsaWRhdG9ycywgYXN5bmNWYWxpZGF0b3JzLCBjb25maWcpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7fVxufVxuIiwiPGxhYmVsICpuZ0lmPVwibGFiZWxcIiBbYXR0ci5mb3JdPVwiaWRlbnRpZmllclwiPlxuICB7e2xhYmVsfX1cbiAgPHNwYW4gY2xhc3M9XCJyZXF1aXJlZC1zeW1ib2xcIiAqbmdJZj1cImlzUmVxdWlyZWRcIj4gKjwvc3Bhbj5cbiAgPGkgY2xhc3M9XCJmYSBmYS1xdWVzdGlvbi1jaXJjbGUgbWwtMlwiIHRvb2x0aXA9XCJ7e2hlbHB9fVwiIGNvbnRhaW5lcj1cImJvZHlcIiAqbmdJZj1cImhlbHBcIj48L2k+XG48L2xhYmVsPlxuXG48aW5wdXRcbiAgY2xhc3M9XCJmb3JtLWNvbnRyb2xcIlxuICB0eXBlPVwibnVtYmVyXCJcbiAgW21heF09XCJtYXhWYWx1ZVwiXG4gIFttaW5dPVwibWluVmFsdWVcIlxuICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICBbYXV0b2NvbXBsZXRlXT1cImF1dG9jb21wbGV0ZVwiXG4gIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICBbaWRdPVwiaWRlbnRpZmllclwiXG4gIFtuZ0NsYXNzXT1cIntcbiAgICAnaXMtdmFsaWQnOiBzaG93VmFsaWRhdGlvbnMgJiYgIWRpc2FibGVkICYmIHRvdWNoZWQgJiYgIShpbnZhbGlkIHwgYXN5bmMpLFxuICAgICdpcy1pbnZhbGlkJzogc2hvd1ZhbGlkYXRpb25zICYmICFkaXNhYmxlZCAmJiB0b3VjaGVkICYmIChpbnZhbGlkIHwgYXN5bmMpXG4gIH1cIlxuLz5cblxuPHNtYWxsIGNsYXNzPVwidGV4dC1tdXRlZFwiICpuZ0lmPVwiZGVzY3JpcHRpb25cIj57e2Rlc2NyaXB0aW9ufX08L3NtYWxsPlxuXG48aW5wdXQtdmFsaWRhdGlvbnNcbiAgKm5nSWY9XCJzaG93VmFsaWRhdGlvbnMgJiYgIWRpc2FibGVkICYmIHRvdWNoZWQgJiYgKGludmFsaWQgfCBhc3luYylcIlxuICBbbWVzc2FnZXNdPVwiZmFpbHVyZXMgfCBhc3luY1wiPlxuPC9pbnB1dC12YWxpZGF0aW9ucz5cbiJdfQ==