ng-materialgrammi
Version:
An Angular framework which follows
47 lines • 5.28 kB
JavaScript
import { Component, Input } from '@angular/core';
import * as i0 from "@angular/core";
import * as i1 from "@angular/common";
export class ToastComponent {
constructor() {
this.show = true;
this.position = "bottom";
this.theme = "primary";
this.timeout = 4000;
}
ngOnInit() {
}
ngOnChanges() {
if (this.show) {
this.setTimer();
}
}
showToast() {
return this.show ? "active " + this.theme + " toast-" + this.position : this.theme + " toast-" + this.position;
}
close() {
this.show = false;
}
setTimer() {
if (this.timeout !== 0) {
var $this = this;
setTimeout(function () {
$this.show = !$this.show;
}, $this.timeout);
}
}
}
ToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToastComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
ToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.0.3", type: ToastComponent, selector: "mg-toast", inputs: { show: "show", position: "position", theme: "theme", timeout: "timeout" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"toast\" [ngClass]=\"showToast()\">\n <a class=\"close-btn\" (click)=\"close()\"><i class=\"fas fa-times\"></i></a>\n <ng-content></ng-content>\n</div>\n", styles: [""], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.3", ngImport: i0, type: ToastComponent, decorators: [{
type: Component,
args: [{ selector: 'mg-toast', template: "<div class=\"toast\" [ngClass]=\"showToast()\">\n <a class=\"close-btn\" (click)=\"close()\"><i class=\"fas fa-times\"></i></a>\n <ng-content></ng-content>\n</div>\n", styles: [""] }]
}], ctorParameters: function () { return []; }, propDecorators: { show: [{
type: Input
}], position: [{
type: Input
}], theme: [{
type: Input
}], timeout: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidG9hc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbWF0ZXJpYWxncmFtbWkvc3JjL2xpYi9jb21wb25lbnRzL3RvYXN0L3RvYXN0LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL21hdGVyaWFsZ3JhbW1pL3NyYy9saWIvY29tcG9uZW50cy90b2FzdC90b2FzdC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7OztBQU9wRSxNQUFNLE9BQU8sY0FBYztJQUt6QjtRQUpTLFNBQUksR0FBRyxJQUFJLENBQUM7UUFDWixhQUFRLEdBQUcsUUFBUSxDQUFDO1FBQ3BCLFVBQUssR0FBRyxTQUFTLENBQUM7UUFDbEIsWUFBTyxHQUFHLElBQUksQ0FBQztJQUNSLENBQUM7SUFFakIsUUFBUTtJQUNSLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxJQUFJLENBQUMsSUFBSSxFQUFFO1lBQ2IsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ2pCO0lBQ0gsQ0FBQztJQUVELFNBQVM7UUFDUCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsS0FBSyxHQUFHLFNBQVMsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ2pILENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxDQUFDLElBQUksR0FBRyxLQUFLLENBQUM7SUFDcEIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLElBQUksQ0FBQyxPQUFPLEtBQUssQ0FBQyxFQUFFO1lBQ3RCLElBQUksS0FBSyxHQUFHLElBQUksQ0FBQztZQUNqQixVQUFVLENBQUM7Z0JBQ1QsS0FBSyxDQUFDLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUM7WUFDM0IsQ0FBQyxFQUFFLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztTQUNuQjtJQUNILENBQUM7OzJHQS9CVSxjQUFjOytGQUFkLGNBQWMseUpDUDNCLHlLQUlBOzJGREdhLGNBQWM7a0JBTDFCLFNBQVM7K0JBQ0UsVUFBVTswRUFLWCxJQUFJO3NCQUFaLEtBQUs7Z0JBQ0csUUFBUTtzQkFBaEIsS0FBSztnQkFDRyxLQUFLO3NCQUFiLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgT25DaGFuZ2VzLCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbWctdG9hc3QnLFxuICB0ZW1wbGF0ZVVybDogJy4vdG9hc3QuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi90b2FzdC5jb21wb25lbnQuY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgVG9hc3RDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uQ2hhbmdlcyB7XG4gIEBJbnB1dCgpIHNob3cgPSB0cnVlO1xuICBASW5wdXQoKSBwb3NpdGlvbiA9IFwiYm90dG9tXCI7XG4gIEBJbnB1dCgpIHRoZW1lID0gXCJwcmltYXJ5XCI7XG4gIEBJbnB1dCgpIHRpbWVvdXQgPSA0MDAwO1xuICBjb25zdHJ1Y3RvcigpIHsgfVxuXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICB9XG5cbiAgbmdPbkNoYW5nZXMoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuc2hvdykge1xuICAgICAgdGhpcy5zZXRUaW1lcigpO1xuICAgIH1cbiAgfVxuXG4gIHNob3dUb2FzdCgpIHtcbiAgICByZXR1cm4gdGhpcy5zaG93ID8gXCJhY3RpdmUgXCIgKyB0aGlzLnRoZW1lICsgXCIgdG9hc3QtXCIgKyB0aGlzLnBvc2l0aW9uIDogdGhpcy50aGVtZSArIFwiIHRvYXN0LVwiICsgdGhpcy5wb3NpdGlvbjtcbiAgfVxuXG4gIGNsb3NlKCkge1xuICAgIHRoaXMuc2hvdyA9IGZhbHNlO1xuICB9XG5cbiAgc2V0VGltZXIoKSB7XG4gICAgaWYgKHRoaXMudGltZW91dCAhPT0gMCkge1xuICAgICAgdmFyICR0aGlzID0gdGhpcztcbiAgICAgIHNldFRpbWVvdXQoZnVuY3Rpb24gKCkge1xuICAgICAgICAkdGhpcy5zaG93ID0gISR0aGlzLnNob3c7XG4gICAgICB9LCAkdGhpcy50aW1lb3V0KTtcbiAgICB9XG4gIH1cblxufVxuIiwiPGRpdiBjbGFzcz1cInRvYXN0XCIgW25nQ2xhc3NdPVwic2hvd1RvYXN0KClcIj5cbiAgPGEgY2xhc3M9XCJjbG9zZS1idG5cIiAoY2xpY2spPVwiY2xvc2UoKVwiPjxpIGNsYXNzPVwiZmFzIGZhLXRpbWVzXCI+PC9pPjwvYT5cbiAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuPC9kaXY+XG4iXX0=