@ngx-performance-ui/ui
Version:
Ngx Performance UI - UI
116 lines • 8.3 kB
JavaScript
/**
* @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