UNPKG

@ngx-performance-ui/ui

Version:
116 lines 8.3 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import { ChangeDetectionStrategy, Component, forwardRef, Input, ViewEncapsulation } from '@angular/core'; import { NG_VALUE_ACCESSOR } from '@angular/forms'; import { AbstractInputComponent } from '../../abstracts'; export class SpinnerComponent extends AbstractInputComponent { constructor() { super(...arguments); this.min = 1; this.max = 100; this.buttonClass = 'btn btn-secondary'; this.increaseLabel = '+'; this.decreaseLabel = '-'; this.step = 1; this.valueLimitFn = (/** * @param {?} value * @return {?} */ (value) => { if (value > this.max) return this.max; if (value < this.min) return this.min; return false; }); } /** * @return {?} */ get defaultValue() { return this.min; } /** * @param {?} value * @return {?} */ onClick(value) { this.value = value; } } SpinnerComponent.decorators = [ { type: Component, args: [{ selector: 'p-spinner', template: ` <div class="input-group mb-3"> <div class="input-group-prepend"> <button type="button" class="{{ buttonClass }}" (click)="onClick(value - step)" [disabled]="disabled"> {{ decreaseLabel }} </button> </div> <input type="number" class="form-control text-center {{ classes }}" [(ngModel)]="value" [id]="id" [hidden]="hidden" [name]="name" [disabled]="disabled" [min]="min" [max]="max" [attr.tabindex]="tabindex" [required]="required" [autofocus]="autofocus" [autofocusDelay]="autofocusDelay" (keyup)="keyup.emit($event)" (focus)="focus.emit($event)" (blur)="blur.emit($event)" /> <div class="input-group-append"> <button type="button" class="{{ buttonClass }}" (click)="onClick(value + step)" [disabled]="disabled"> {{ increaseLabel }} </button> </div> </div> `, providers: [ { provide: NG_VALUE_ACCESSOR, useExisting: forwardRef((/** * @return {?} */ () => SpinnerComponent)), multi: true, }, ], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None }] } ]; SpinnerComponent.propDecorators = { min: [{ type: Input }], max: [{ type: Input }], buttonClass: [{ type: Input }], increaseLabel: [{ type: Input }], decreaseLabel: [{ type: Input }], step: [{ type: Input }] }; if (false) { /** @type {?} */ SpinnerComponent.prototype.min; /** @type {?} */ SpinnerComponent.prototype.max; /** @type {?} */ SpinnerComponent.prototype.buttonClass; /** @type {?} */ SpinnerComponent.prototype.increaseLabel; /** @type {?} */ SpinnerComponent.prototype.decreaseLabel; /** @type {?} */ SpinnerComponent.prototype.step; /** @type {?} */ SpinnerComponent.prototype.valueLimitFn; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3Bpbm5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9Abmd4LXBlcmZvcm1hbmNlLXVpL3VpLyIsInNvdXJjZXMiOlsibGliL2NvbXBvbmVudHMvaW5wdXQvc3Bpbm5lci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN6RyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUNuRCxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQThDekQsTUFBTSxPQUFPLGdCQUFpQixTQUFRLHNCQUFzQjtJQTVDNUQ7O1FBOENFLFFBQUcsR0FBVyxDQUFDLENBQUM7UUFHaEIsUUFBRyxHQUFXLEdBQUcsQ0FBQztRQUdsQixnQkFBVyxHQUFXLG1CQUFtQixDQUFDO1FBRzFDLGtCQUFhLEdBQVcsR0FBRyxDQUFDO1FBRzVCLGtCQUFhLEdBQVcsR0FBRyxDQUFDO1FBRzVCLFNBQUksR0FBVyxDQUFDLENBQUM7UUFFakIsaUJBQVk7Ozs7UUFBRyxDQUFDLEtBQWEsRUFBb0IsRUFBRTtZQUNqRCxJQUFJLEtBQUssR0FBRyxJQUFJLENBQUMsR0FBRztnQkFBRSxPQUFPLElBQUksQ0FBQyxHQUFHLENBQUM7WUFDdEMsSUFBSSxLQUFLLEdBQUcsSUFBSSxDQUFDLEdBQUc7Z0JBQUUsT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO1lBQ3RDLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQyxFQUFDO0lBU0osQ0FBQzs7OztJQVBDLElBQUksWUFBWTtRQUNkLE9BQU8sSUFBSSxDQUFDLEdBQUcsQ0FBQztJQUNsQixDQUFDOzs7OztJQUVELE9BQU8sQ0FBQyxLQUFLO1FBQ1gsSUFBSSxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7SUFDckIsQ0FBQzs7O1lBM0VGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsV0FBVztnQkFDckIsUUFBUSxFQUFFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBK0JUO2dCQUNELFNBQVMsRUFBRTtvQkFDVDt3QkFDRSxPQUFPLEVBQUUsaUJBQWlCO3dCQUMxQixXQUFXLEVBQUUsVUFBVTs7O3dCQUFDLEdBQUcsRUFBRSxDQUFDLGdCQUFnQixFQUFDO3dCQUMvQyxLQUFLLEVBQUUsSUFBSTtxQkFDWjtpQkFDRjtnQkFDRCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtnQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7YUFDdEM7OztrQkFFRSxLQUFLO2tCQUdMLEtBQUs7MEJBR0wsS0FBSzs0QkFHTCxLQUFLOzRCQUdMLEtBQUs7bUJBR0wsS0FBSzs7OztJQWZOLCtCQUNnQjs7SUFFaEIsK0JBQ2tCOztJQUVsQix1Q0FDMEM7O0lBRTFDLHlDQUM0Qjs7SUFFNUIseUNBQzRCOztJQUU1QixnQ0FDaUI7O0lBRWpCLHdDQUlFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgZm9yd2FyZFJlZiwgSW5wdXQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFic3RyYWN0SW5wdXRDb21wb25lbnQgfSBmcm9tICcuLi8uLi9hYnN0cmFjdHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdwLXNwaW5uZXInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cCBtYi0zXCI+XG4gICAgICA8ZGl2IGNsYXNzPVwiaW5wdXQtZ3JvdXAtcHJlcGVuZFwiPlxuICAgICAgICA8YnV0dG9uIHR5cGU9XCJidXR0b25cIiBjbGFzcz1cInt7IGJ1dHRvbkNsYXNzIH19XCIgKGNsaWNrKT1cIm9uQ2xpY2sodmFsdWUgLSBzdGVwKVwiIFtkaXNhYmxlZF09XCJkaXNhYmxlZFwiPlxuICAgICAgICAgIHt7IGRlY3JlYXNlTGFiZWwgfX1cbiAgICAgICAgPC9idXR0b24+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxpbnB1dFxuICAgICAgICB0eXBlPVwibnVtYmVyXCJcbiAgICAgICAgY2xhc3M9XCJmb3JtLWNvbnRyb2wgdGV4dC1jZW50ZXIge3sgY2xhc3NlcyB9fVwiXG4gICAgICAgIFsobmdNb2RlbCldPVwidmFsdWVcIlxuICAgICAgICBbaWRdPVwiaWRcIlxuICAgICAgICBbaGlkZGVuXT1cImhpZGRlblwiXG4gICAgICAgIFtuYW1lXT1cIm5hbWVcIlxuICAgICAgICBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIlxuICAgICAgICBbbWluXT1cIm1pblwiXG4gICAgICAgIFttYXhdPVwibWF4XCJcbiAgICAgICAgW2F0dHIudGFiaW5kZXhdPVwidGFiaW5kZXhcIlxuICAgICAgICBbcmVxdWlyZWRdPVwicmVxdWlyZWRcIlxuICAgICAgICBbYXV0b2ZvY3VzXT1cImF1dG9mb2N1c1wiXG4gICAgICAgIFthdXRvZm9jdXNEZWxheV09XCJhdXRvZm9jdXNEZWxheVwiXG4gICAgICAgIChrZXl1cCk9XCJrZXl1cC5lbWl0KCRldmVudClcIlxuICAgICAgICAoZm9jdXMpPVwiZm9jdXMuZW1pdCgkZXZlbnQpXCJcbiAgICAgICAgKGJsdXIpPVwiYmx1ci5lbWl0KCRldmVudClcIlxuICAgICAgLz5cbiAgICAgIDxkaXYgY2xhc3M9XCJpbnB1dC1ncm91cC1hcHBlbmRcIj5cbiAgICAgICAgPGJ1dHRvbiB0eXBlPVwiYnV0dG9uXCIgY2xhc3M9XCJ7eyBidXR0b25DbGFzcyB9fVwiIChjbGljayk9XCJvbkNsaWNrKHZhbHVlICsgc3RlcClcIiBbZGlzYWJsZWRdPVwiZGlzYWJsZWRcIj5cbiAgICAgICAgICB7eyBpbmNyZWFzZUxhYmVsIH19XG4gICAgICAgIDwvYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG4gIGAsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IE5HX1ZBTFVFX0FDQ0VTU09SLFxuICAgICAgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gU3Bpbm5lckNvbXBvbmVudCksXG4gICAgICBtdWx0aTogdHJ1ZSxcbiAgICB9LFxuICBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbn0pXG5leHBvcnQgY2xhc3MgU3Bpbm5lckNvbXBvbmVudCBleHRlbmRzIEFic3RyYWN0SW5wdXRDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBtaW46IG51bWJlciA9IDE7XG5cbiAgQElucHV0KClcbiAgbWF4OiBudW1iZXIgPSAxMDA7XG5cbiAgQElucHV0KClcbiAgYnV0dG9uQ2xhc3M6IHN0cmluZyA9ICdidG4gYnRuLXNlY29uZGFyeSc7XG5cbiAgQElucHV0KClcbiAgaW5jcmVhc2VMYWJlbDogc3RyaW5nID0gJysnO1xuXG4gIEBJbnB1dCgpXG4gIGRlY3JlYXNlTGFiZWw6IHN0cmluZyA9ICctJztcblxuICBASW5wdXQoKVxuICBzdGVwOiBudW1iZXIgPSAxO1xuXG4gIHZhbHVlTGltaXRGbiA9ICh2YWx1ZTogbnVtYmVyKTogbnVtYmVyIHwgYm9vbGVhbiA9PiB7XG4gICAgaWYgKHZhbHVlID4gdGhpcy5tYXgpIHJldHVybiB0aGlzLm1heDtcbiAgICBpZiAodmFsdWUgPCB0aGlzLm1pbikgcmV0dXJuIHRoaXMubWluO1xuICAgIHJldHVybiBmYWxzZTtcbiAgfTtcblxuICBnZXQgZGVmYXVsdFZhbHVlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMubWluO1xuICB9XG5cbiAgb25DbGljayh2YWx1ZSkge1xuICAgIHRoaXMudmFsdWUgPSB2YWx1ZTtcbiAgfVxufVxuIl19