// @ts-nocheck
import { Component, Input, Output, EventEmitter } from "@angular/core";
/**
* AlertComponent
* Angular wrapper component representing dismissible or static feedback blocks.
*/
@Component({
selector: "mayvio-alert",
template: `
`
})
export class AlertComponent {
@Input() variant: "success" | "error" | "warning" | "info" = "info";
@Input() title = "";
@Input() dismissible = false;
@Output() close = new EventEmitter();
visible = true;
animation?: string;
get icon() {
return {
success: "✓",
error: "✕",
warning: "⚠",
info: "ℹ"
}[this.variant] || "ℹ";
}
dismiss() {
this.animation = "alertIn 0.2s ease reverse forwards";
setTimeout(() => {
this.visible = false;
this.close.emit();
}, 200);
}
}