UNPKG

@ngx-performance-ui/ui

Version:
131 lines 8.95 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as tslib_1 from "tslib"; import { Component, ChangeDetectionStrategy, ViewEncapsulation, ChangeDetectorRef, Input } from '@angular/core'; import { Select } from '@ngxs/store'; import { Observable } from 'rxjs'; import { LoaderState, takeUntilDestroy } from '@ngx-performance-ui/core'; export class ProgressBarComponent { /** * @param {?} cdRef */ constructor(cdRef) { this.cdRef = cdRef; this.classes = 'progress-bar bg-danger'; this.speed = 30; this.height = '10px'; } /** * @return {?} */ ngOnInit() { this.show$.pipe(takeUntilDestroy(this)).subscribe((/** * @param {?} status * @return {?} */ status => { if (status === true) { if (this.show) { setTimeout((/** * @return {?} */ () => { this.showFn(); }), 900); return; } this.showFn(); return; } this.value = 100; this.cdRef.detectChanges(); setTimeout((/** * @return {?} */ () => { clearInterval(this.interval); this.show = false; this.cdRef.detectChanges(); }), 800); })); } /** * @return {?} */ showFn() { this.value = 0; this.show = true; this.cdRef.detectChanges(); this.setValue(); } /** * @return {?} */ setValue() { this.interval = setInterval((/** * @return {?} */ () => { /** @type {?} */ const plus = Math.random() * this.speed; if (this.value < 100 - plus) { this.value += plus; } else { this.value += 0.1; } this.cdRef.detectChanges(); }), 500); } /** * @return {?} */ ngOnDestroy() { } } ProgressBarComponent.decorators = [ { type: Component, args: [{ selector: 'p-progress-bar', template: ` <div *ngIf="show" class="progress" [style.height]="height"> <div [ngStyle]="{ width: value + '%' }" class="{{ classes }}"></div> </div> `, changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None }] } ]; /** @nocollapse */ ProgressBarComponent.ctorParameters = () => [ { type: ChangeDetectorRef } ]; ProgressBarComponent.propDecorators = { classes: [{ type: Input }] }; tslib_1.__decorate([ Select(LoaderState.progress), tslib_1.__metadata("design:type", Observable) ], ProgressBarComponent.prototype, "show$", void 0); if (false) { /** @type {?} */ ProgressBarComponent.prototype.classes; /** @type {?} */ ProgressBarComponent.prototype.show$; /** @type {?} */ ProgressBarComponent.prototype.show; /** @type {?} */ ProgressBarComponent.prototype.value; /** @type {?} */ ProgressBarComponent.prototype.interval; /** @type {?} */ ProgressBarComponent.prototype.speed; /** @type {?} */ ProgressBarComponent.prototype.height; /** * @type {?} * @private */ ProgressBarComponent.prototype.cdRef; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BuZ3gtcGVyZm9ybWFuY2UtdWkvdWkvIiwic291cmNlcyI6WyJsaWIvY29tcG9uZW50cy9wcm9ncmVzcy9wcm9ncmVzcy1iYXIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxpQkFBaUIsRUFBRSxpQkFBaUIsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDeEgsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGFBQWEsQ0FBQztBQUNyQyxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQ2xDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQVl6RSxNQUFNLE9BQU8sb0JBQW9COzs7O0lBaUIvQixZQUFvQixLQUF3QjtRQUF4QixVQUFLLEdBQUwsS0FBSyxDQUFtQjtRQWY1QyxZQUFPLEdBQVcsd0JBQXdCLENBQUM7UUFXM0MsVUFBSyxHQUFXLEVBQUUsQ0FBQztRQUVuQixXQUFNLEdBQVcsTUFBTSxDQUFDO0lBRXVCLENBQUM7Ozs7SUFFaEQsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsU0FBUzs7OztRQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ3pELElBQUksTUFBTSxLQUFLLElBQUksRUFBRTtnQkFDbkIsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO29CQUNiLFVBQVU7OztvQkFBQyxHQUFHLEVBQUU7d0JBQ2QsSUFBSSxDQUFDLE1BQU0sRUFBRSxDQUFDO29CQUNoQixDQUFDLEdBQUUsR0FBRyxDQUFDLENBQUM7b0JBQ1IsT0FBTztpQkFDUjtnQkFDRCxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7Z0JBQ2QsT0FBTzthQUNSO1lBRUQsSUFBSSxDQUFDLEtBQUssR0FBRyxHQUFHLENBQUM7WUFDakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztZQUUzQixVQUFVOzs7WUFBQyxHQUFHLEVBQUU7Z0JBQ2QsYUFBYSxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FBQztnQkFDN0IsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7Z0JBQ2xCLElBQUksQ0FBQyxLQUFLLENBQUMsYUFBYSxFQUFFLENBQUM7WUFDN0IsQ0FBQyxHQUFFLEdBQUcsQ0FBQyxDQUFDO1FBQ1YsQ0FBQyxFQUFDLENBQUM7SUFDTCxDQUFDOzs7O0lBRUQsTUFBTTtRQUNKLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ2YsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7UUFDakIsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUUzQixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDbEIsQ0FBQzs7OztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsUUFBUSxHQUFHLFdBQVc7OztRQUFDLEdBQUcsRUFBRTs7a0JBQ3pCLElBQUksR0FBRyxJQUFJLENBQUMsTUFBTSxFQUFFLEdBQUcsSUFBSSxDQUFDLEtBQUs7WUFDdkMsSUFBSSxJQUFJLENBQUMsS0FBSyxHQUFHLEdBQUcsR0FBRyxJQUFJLEVBQUU7Z0JBQzNCLElBQUksQ0FBQyxLQUFLLElBQUksSUFBSSxDQUFDO2FBQ3BCO2lCQUFNO2dCQUNMLElBQUksQ0FBQyxLQUFLLElBQUksR0FBRyxDQUFDO2FBQ25CO1lBQ0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLEVBQUUsQ0FBQztRQUM3QixDQUFDLEdBQUUsR0FBRyxDQUFDLENBQUM7SUFDVixDQUFDOzs7O0lBRUQsV0FBVyxLQUFVLENBQUM7OztZQXpFdkIsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxnQkFBZ0I7Z0JBQzFCLFFBQVEsRUFBRTs7OztHQUlUO2dCQUNELGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNO2dCQUMvQyxhQUFhLEVBQUUsaUJBQWlCLENBQUMsSUFBSTthQUN0Qzs7OztZQWR1RSxpQkFBaUI7OztzQkFnQnRGLEtBQUs7O0FBSU47SUFEQyxNQUFNLENBQUMsV0FBVyxDQUFDLFFBQVEsQ0FBQztzQ0FDdEIsVUFBVTttREFBVTs7O0lBSjNCLHVDQUMyQzs7SUFFM0MscUNBQzJCOztJQUUzQixvQ0FBYzs7SUFFZCxxQ0FBYzs7SUFFZCx3Q0FBUzs7SUFFVCxxQ0FBbUI7O0lBRW5CLHNDQUF3Qjs7Ozs7SUFFWixxQ0FBZ0MiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIFZpZXdFbmNhcHN1bGF0aW9uLCBDaGFuZ2VEZXRlY3RvclJlZiwgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFNlbGVjdCB9IGZyb20gJ0BuZ3hzL3N0b3JlJztcbmltcG9ydCB7IE9ic2VydmFibGUgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IExvYWRlclN0YXRlLCB0YWtlVW50aWxEZXN0cm95IH0gZnJvbSAnQG5neC1wZXJmb3JtYW5jZS11aS9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAncC1wcm9ncmVzcy1iYXInLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxkaXYgKm5nSWY9XCJzaG93XCIgY2xhc3M9XCJwcm9ncmVzc1wiIFtzdHlsZS5oZWlnaHRdPVwiaGVpZ2h0XCI+XG4gICAgICA8ZGl2IFtuZ1N0eWxlXT1cInsgd2lkdGg6IHZhbHVlICsgJyUnIH1cIiBjbGFzcz1cInt7IGNsYXNzZXMgfX1cIj48L2Rpdj5cbiAgICA8L2Rpdj5cbiAgYCxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIFByb2dyZXNzQmFyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgQElucHV0KClcbiAgY2xhc3Nlczogc3RyaW5nID0gJ3Byb2dyZXNzLWJhciBiZy1kYW5nZXInO1xuXG4gIEBTZWxlY3QoTG9hZGVyU3RhdGUucHJvZ3Jlc3MpXG4gIHNob3ckOiBPYnNlcnZhYmxlPGJvb2xlYW4+O1xuXG4gIHNob3c6IGJvb2xlYW47XG5cbiAgdmFsdWU6IG51bWJlcjtcblxuICBpbnRlcnZhbDtcblxuICBzcGVlZDogbnVtYmVyID0gMzA7XG5cbiAgaGVpZ2h0OiBzdHJpbmcgPSAnMTBweCc7XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjZFJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHt9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zaG93JC5waXBlKHRha2VVbnRpbERlc3Ryb3kodGhpcykpLnN1YnNjcmliZShzdGF0dXMgPT4ge1xuICAgICAgaWYgKHN0YXR1cyA9PT0gdHJ1ZSkge1xuICAgICAgICBpZiAodGhpcy5zaG93KSB7XG4gICAgICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgICAgICB0aGlzLnNob3dGbigpO1xuICAgICAgICAgIH0sIDkwMCk7XG4gICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuc2hvd0ZuKCk7XG4gICAgICAgIHJldHVybjtcbiAgICAgIH1cblxuICAgICAgdGhpcy52YWx1ZSA9IDEwMDtcbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgY2xlYXJJbnRlcnZhbCh0aGlzLmludGVydmFsKTtcbiAgICAgICAgdGhpcy5zaG93ID0gZmFsc2U7XG4gICAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgfSwgODAwKTtcbiAgICB9KTtcbiAgfVxuXG4gIHNob3dGbigpIHtcbiAgICB0aGlzLnZhbHVlID0gMDtcbiAgICB0aGlzLnNob3cgPSB0cnVlO1xuICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuXG4gICAgdGhpcy5zZXRWYWx1ZSgpO1xuICB9XG5cbiAgc2V0VmFsdWUoKSB7XG4gICAgdGhpcy5pbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgIGNvbnN0IHBsdXMgPSBNYXRoLnJhbmRvbSgpICogdGhpcy5zcGVlZDtcbiAgICAgIGlmICh0aGlzLnZhbHVlIDwgMTAwIC0gcGx1cykge1xuICAgICAgICB0aGlzLnZhbHVlICs9IHBsdXM7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLnZhbHVlICs9IDAuMTtcbiAgICAgIH1cbiAgICAgIHRoaXMuY2RSZWYuZGV0ZWN0Q2hhbmdlcygpO1xuICAgIH0sIDUwMCk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHt9XG59XG4iXX0=