// @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); } }