@junte/ui
Version:
Quality Angular UI components kit
45 lines • 4.43 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Component, HostBinding } from '@angular/core';
import { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router } from '@angular/router';
import { UI } from '../../../core/enums/ui';
let AppBusynessComponent = class AppBusynessComponent {
constructor(router) {
this.ui = UI;
this.host = 'jnt-app-busyness-host';
this.loading = false;
router.events.subscribe(event => {
if (event instanceof NavigationStart) {
this.loading = true;
}
if (event instanceof NavigationEnd ||
event instanceof NavigationCancel ||
event instanceof NavigationError) {
this.loading = false;
}
});
}
get style() {
return this.loading ? 'flex' : 'none';
}
};
AppBusynessComponent.ctorParameters = () => [
{ type: Router }
];
__decorate([
HostBinding('attr.host'),
__metadata("design:type", Object)
], AppBusynessComponent.prototype, "host", void 0);
__decorate([
HostBinding('style.display'),
__metadata("design:type", Object),
__metadata("design:paramtypes", [])
], AppBusynessComponent.prototype, "style", null);
AppBusynessComponent = __decorate([
Component({
selector: 'jnt-app-busyness',
template: "<jnt-spinner child-of=\"jnt-app-busyness-host\" *jntFor=\"ui.breakpoint.mobile\" [size]=\"ui.size.large\"></jnt-spinner>\n<div child-of=\"jnt-app-busyness-host\" data-loader *jntMinFor=\"ui.breakpoint.tablet\"></div>"
}),
__metadata("design:paramtypes", [Router])
], AppBusynessComponent);
export { AppBusynessComponent };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXBwLWJ1c3luZXNzLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiJuZzovL0BqdW50ZS91aS8iLCJzb3VyY2VzIjpbImxpYi9sYXlvdXQvYXBwL2J1c3luZXNzL2FwcC1idXN5bmVzcy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxhQUFhLEVBQUUsZUFBZSxFQUFFLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFNNUMsSUFBYSxvQkFBb0IsR0FBakMsTUFBYSxvQkFBb0I7SUFZL0IsWUFBWSxNQUFjO1FBVjFCLE9BQUUsR0FBRyxFQUFFLENBQUM7UUFDMkIsU0FBSSxHQUFHLHVCQUF1QixDQUFDO1FBRWxFLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFRZCxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUM5QixJQUFJLEtBQUssWUFBWSxlQUFlLEVBQUU7Z0JBQ3BDLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDO2FBQ3JCO1lBRUQsSUFBSSxLQUFLLFlBQVksYUFBYTtnQkFDaEMsS0FBSyxZQUFZLGdCQUFnQjtnQkFDakMsS0FBSyxZQUFZLGVBQWUsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLE9BQU8sR0FBRyxLQUFLLENBQUM7YUFDdEI7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFoQkQsSUFBSSxLQUFLO1FBQ1AsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQztJQUN4QyxDQUFDO0NBZ0JGLENBQUE7O1lBZHFCLE1BQU07O0FBVEE7SUFBekIsV0FBVyxDQUFDLFdBQVcsQ0FBQzs7a0RBQXlDO0FBS2xFO0lBREMsV0FBVyxDQUFDLGVBQWUsQ0FBQzs7O2lEQUc1QjtBQVZVLG9CQUFvQjtJQUpoQyxTQUFTLENBQUM7UUFDVCxRQUFRLEVBQUUsa0JBQWtCO1FBQzVCLG9PQUErQztLQUNoRCxDQUFDO3FDQWFvQixNQUFNO0dBWmYsb0JBQW9CLENBMEJoQztTQTFCWSxvQkFBb0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEhvc3RCaW5kaW5nIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uQ2FuY2VsLCBOYXZpZ2F0aW9uRW5kLCBOYXZpZ2F0aW9uRXJyb3IsIE5hdmlnYXRpb25TdGFydCwgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFVJIH0gZnJvbSAnLi4vLi4vLi4vY29yZS9lbnVtcy91aSc7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2pudC1hcHAtYnVzeW5lc3MnLFxuICB0ZW1wbGF0ZVVybDogJy4vYXBwLWJ1c3luZXNzLmVuY2Fwc3VsYXRlZC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBBcHBCdXN5bmVzc0NvbXBvbmVudCB7XG5cbiAgdWkgPSBVSTtcbiAgQEhvc3RCaW5kaW5nKCdhdHRyLmhvc3QnKSByZWFkb25seSBob3N0ID0gJ2pudC1hcHAtYnVzeW5lc3MtaG9zdCc7XG5cbiAgbG9hZGluZyA9IGZhbHNlO1xuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuZGlzcGxheScpXG4gIGdldCBzdHlsZSgpIHtcbiAgICByZXR1cm4gdGhpcy5sb2FkaW5nID8gJ2ZsZXgnIDogJ25vbmUnO1xuICB9XG5cbiAgY29uc3RydWN0b3Iocm91dGVyOiBSb3V0ZXIpIHtcbiAgICByb3V0ZXIuZXZlbnRzLnN1YnNjcmliZShldmVudCA9PiB7XG4gICAgICBpZiAoZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpIHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gdHJ1ZTtcbiAgICAgIH1cblxuICAgICAgaWYgKGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCB8fFxuICAgICAgICBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25DYW5jZWwgfHxcbiAgICAgICAgZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uRXJyb3IpIHtcbiAgICAgICAgdGhpcy5sb2FkaW5nID0gZmFsc2U7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxufVxuIl19