sb-element
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 12.0.1. It is a component library constructed around the SCSS library [Sb-Theming](https://github.com/SeverinBuchser/SbTheming) and supports [Angular Schematics]
63 lines • 8.82 kB
JavaScript
import { Component, ElementRef, Input, ViewChild, ViewEncapsulation } from '@angular/core';
import { mixinClassName, mixinHide } from '../../core';
import { SbAlertBoxComponent } from "../alert-box";
import * as i0 from "@angular/core";
import * as i1 from "../../core";
import * as i2 from "./alert.service";
import * as i3 from "../alert-box/alert-box.component";
const SbAlertCore = mixinHide(mixinClassName(class {
constructor(_elementRef, _themeService) {
this._elementRef = _elementRef;
this._themeService = _themeService;
}
}, 'sb-alert'));
export class SbAlertComponent extends SbAlertCore {
constructor(elementRef, themeService, alertService) {
super(elementRef, themeService);
this.alertService = alertService;
this.showArrow = true;
this.showIcon = true;
this.showTime = 2000;
this.pauseTime = 1000;
this.message = '';
this.alertService.subscribe(this);
}
async alert(alert) {
this.configureAlertBox(alert);
this.message = alert.message;
this.setVisibleState(true);
await this.wait(this.showTime);
this.setVisibleState(false);
await this.wait(this.pauseTime);
}
configureAlertBox(alert) {
this.alertBox.size = alert.size;
this.alertBox.color = alert.color;
}
}
SbAlertComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: SbAlertComponent, deps: [{ token: i0.ElementRef }, { token: i1.SbThemeService }, { token: i2.SbAlertService }], target: i0.ɵɵFactoryTarget.Component });
SbAlertComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.2.0", type: SbAlertComponent, selector: "sb-alert", inputs: { visible: "visible", showArrow: "showArrow", showIcon: "showIcon", showTime: "showTime", pauseTime: "pauseTime" }, outputs: { show: "show", hide: "hide" }, viewQueries: [{ propertyName: "alertBox", first: true, predicate: SbAlertBoxComponent, descendants: true }, { propertyName: "transitionElement", first: true, predicate: SbAlertBoxComponent, descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<sb-alert-box\n [showArrow]=\"showArrow\"\n [showIcon]=\"showIcon\">\n {{ message }}\n</sb-alert-box>\n", components: [{ type: i3.SbAlertBoxComponent, selector: "sb-alert-box", inputs: ["size", "color", "showArrow", "showIcon", "customIcon"] }], encapsulation: i0.ViewEncapsulation.None });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.0", ngImport: i0, type: SbAlertComponent, decorators: [{
type: Component,
args: [{ selector: 'sb-alert', encapsulation: ViewEncapsulation.None, inputs: [
'visible'
], outputs: [
'show',
'hide'
], template: "<sb-alert-box\n [showArrow]=\"showArrow\"\n [showIcon]=\"showIcon\">\n {{ message }}\n</sb-alert-box>\n" }]
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1.SbThemeService }, { type: i2.SbAlertService }]; }, propDecorators: { showArrow: [{
type: Input
}], showIcon: [{
type: Input
}], showTime: [{
type: Input
}], pauseTime: [{
type: Input
}], alertBox: [{
type: ViewChild,
args: [SbAlertBoxComponent]
}], transitionElement: [{
type: ViewChild,
args: [SbAlertBoxComponent, { read: ElementRef }]
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc2ItZWxlbWVudC9zcmMvbGliL25vdGlmaWNhdGlvbi9hbGVydC9hbGVydC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zYi1lbGVtZW50L3NyYy9saWIvbm90aWZpY2F0aW9uL2FsZXJ0L2FsZXJ0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJM0YsT0FBTyxFQUFrQixjQUFjLEVBQUUsU0FBUyxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGNBQWMsQ0FBQzs7Ozs7QUFFbkQsTUFBTSxXQUFXLEdBQUcsU0FBUyxDQUMzQixjQUFjLENBQ1o7SUFDRSxZQUNTLFdBQXVCLEVBQ3ZCLGFBQTZCO1FBRDdCLGdCQUFXLEdBQVgsV0FBVyxDQUFZO1FBQ3ZCLGtCQUFhLEdBQWIsYUFBYSxDQUFnQjtJQUFHLENBQUM7Q0FDM0MsRUFBRSxVQUFVLENBQ2QsQ0FDRixDQUFDO0FBY0YsTUFBTSxPQUFPLGdCQUFpQixTQUFRLFdBQVc7SUFzQi9DLFlBQ0UsVUFBc0IsRUFDdEIsWUFBNEIsRUFDcEIsWUFBNEI7UUFFcEMsS0FBSyxDQUFDLFVBQVUsRUFBRSxZQUFZLENBQUMsQ0FBQztRQUZ4QixpQkFBWSxHQUFaLFlBQVksQ0FBZ0I7UUF0Qi9CLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFHMUIsYUFBUSxHQUFZLElBQUksQ0FBQztRQUd6QixhQUFRLEdBQVcsSUFBSSxDQUFDO1FBR3ZCLGNBQVMsR0FBVyxJQUFJLENBQUM7UUFRMUIsWUFBTyxHQUFXLEVBQUUsQ0FBQztRQVExQixJQUFJLENBQUMsWUFBWSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxDQUFDO0lBRU0sS0FBSyxDQUFDLEtBQUssQ0FBQyxLQUFjO1FBQy9CLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUM5QixJQUFJLENBQUMsT0FBTyxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7UUFDN0IsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUMzQixNQUFNLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxlQUFlLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDNUIsTUFBTSxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUNsQyxDQUFDO0lBRU8saUJBQWlCLENBQUMsS0FBYztRQUN0QyxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1FBQ2hDLElBQUksQ0FBQyxRQUFRLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLENBQUM7SUFDcEMsQ0FBQzs7NkdBM0NVLGdCQUFnQjtpR0FBaEIsZ0JBQWdCLCtQQWNoQixtQkFBbUIsb0ZBR25CLG1CQUFtQiwyQkFBUyxVQUFVLG9EQzlDbkQsNEdBS0E7MkZEd0JhLGdCQUFnQjtrQkFaNUIsU0FBUzsrQkFDRSxVQUFVLGlCQUVMLGlCQUFpQixDQUFDLElBQUksVUFDN0I7d0JBQ04sU0FBUztxQkFDVixXQUNRO3dCQUNQLE1BQU07d0JBQ04sTUFBTTtxQkFDUDsySkFLTSxTQUFTO3NCQURmLEtBQUs7Z0JBSUMsUUFBUTtzQkFEZCxLQUFLO2dCQUlDLFFBQVE7c0JBRGQsS0FBSztnQkFJRSxTQUFTO3NCQURoQixLQUFLO2dCQUlFLFFBQVE7c0JBRGYsU0FBUzt1QkFBQyxtQkFBbUI7Z0JBSXZCLGlCQUFpQjtzQkFEdkIsU0FBUzt1QkFBQyxtQkFBbUIsRUFBRSxFQUFDLElBQUksRUFBRSxVQUFVLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBWaWV3Q2hpbGQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTYkFsZXJ0IH0gZnJvbSAnLi9hbGVydCc7XG5pbXBvcnQgeyBBbGVydFNlcnZpY2VTdWJzY3JpYmVyIH0gZnJvbSAnLi9hbGVydC1zZXJ2aWNlLXN1YnNjcmliZXInO1xuaW1wb3J0IHsgU2JBbGVydFNlcnZpY2UgfSBmcm9tICcuL2FsZXJ0LnNlcnZpY2UnO1xuaW1wb3J0IHsgU2JUaGVtZVNlcnZpY2UsIG1peGluQ2xhc3NOYW1lLCBtaXhpbkhpZGUgfSBmcm9tICcuLi8uLi9jb3JlJztcbmltcG9ydCB7IFNiQWxlcnRCb3hDb21wb25lbnQgfSBmcm9tIFwiLi4vYWxlcnQtYm94XCI7XG5cbmNvbnN0IFNiQWxlcnRDb3JlID0gbWl4aW5IaWRlKFxuICBtaXhpbkNsYXNzTmFtZShcbiAgICBjbGFzcyB7XG4gICAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHVibGljIF9lbGVtZW50UmVmOiBFbGVtZW50UmVmLFxuICAgICAgICBwdWJsaWMgX3RoZW1lU2VydmljZTogU2JUaGVtZVNlcnZpY2UpIHt9XG4gICAgfSwgJ3NiLWFsZXJ0J1xuICApXG4pO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdzYi1hbGVydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbGVydC5jb21wb25lbnQuaHRtbCcsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGlucHV0czogW1xuICAgICd2aXNpYmxlJ1xuICBdLFxuICBvdXRwdXRzOiBbXG4gICAgJ3Nob3cnLFxuICAgICdoaWRlJ1xuICBdXG59KVxuZXhwb3J0IGNsYXNzIFNiQWxlcnRDb21wb25lbnQgZXh0ZW5kcyBTYkFsZXJ0Q29yZSBpbXBsZW1lbnRzIEFsZXJ0U2VydmljZVN1YnNjcmliZXIge1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93QXJyb3c6IGJvb2xlYW4gPSB0cnVlO1xuXG4gIEBJbnB1dCgpXG4gIHB1YmxpYyBzaG93SWNvbjogYm9vbGVhbiA9IHRydWU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNob3dUaW1lOiBudW1iZXIgPSAyMDAwO1xuXG4gIEBJbnB1dCgpXG4gIHByaXZhdGUgcGF1c2VUaW1lOiBudW1iZXIgPSAxMDAwO1xuXG4gIEBWaWV3Q2hpbGQoU2JBbGVydEJveENvbXBvbmVudClcbiAgcHJpdmF0ZSBhbGVydEJveCE6IFNiQWxlcnRCb3hDb21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZChTYkFsZXJ0Qm94Q29tcG9uZW50LCB7cmVhZDogRWxlbWVudFJlZn0pXG4gIHB1YmxpYyB0cmFuc2l0aW9uRWxlbWVudD86IEVsZW1lbnRSZWY7XG5cbiAgcHVibGljIG1lc3NhZ2U6IHN0cmluZyA9ICcnO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIGVsZW1lbnRSZWY6IEVsZW1lbnRSZWYsXG4gICAgdGhlbWVTZXJ2aWNlOiBTYlRoZW1lU2VydmljZSxcbiAgICBwcml2YXRlIGFsZXJ0U2VydmljZTogU2JBbGVydFNlcnZpY2UsXG4gICkge1xuICAgIHN1cGVyKGVsZW1lbnRSZWYsIHRoZW1lU2VydmljZSk7XG4gICAgdGhpcy5hbGVydFNlcnZpY2Uuc3Vic2NyaWJlKHRoaXMpO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIGFsZXJ0KGFsZXJ0OiBTYkFsZXJ0KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5jb25maWd1cmVBbGVydEJveChhbGVydCk7XG4gICAgdGhpcy5tZXNzYWdlID0gYWxlcnQubWVzc2FnZTtcbiAgICB0aGlzLnNldFZpc2libGVTdGF0ZSh0cnVlKTtcbiAgICBhd2FpdCB0aGlzLndhaXQodGhpcy5zaG93VGltZSk7XG4gICAgdGhpcy5zZXRWaXNpYmxlU3RhdGUoZmFsc2UpO1xuICAgIGF3YWl0IHRoaXMud2FpdCh0aGlzLnBhdXNlVGltZSk7XG4gIH1cblxuICBwcml2YXRlIGNvbmZpZ3VyZUFsZXJ0Qm94KGFsZXJ0OiBTYkFsZXJ0KSB7XG4gICAgdGhpcy5hbGVydEJveC5zaXplID0gYWxlcnQuc2l6ZTtcbiAgICB0aGlzLmFsZXJ0Qm94LmNvbG9yID0gYWxlcnQuY29sb3I7XG4gIH1cblxufVxuIiwiPHNiLWFsZXJ0LWJveFxuICBbc2hvd0Fycm93XT1cInNob3dBcnJvd1wiXG4gIFtzaG93SWNvbl09XCJzaG93SWNvblwiPlxuICB7eyBtZXNzYWdlIH19XG48L3NiLWFsZXJ0LWJveD5cbiJdfQ==