<?php

namespace App\Enums;

enum NotificationType: string
{
    case Info = 'info';
    case Success = 'success';
    case Warning = 'warning';
    case Alert = 'alert';

    public function label(): string
    {
        return match ($this) {
            self::Info => 'Info',
            self::Success => 'Success',
            self::Warning => 'Warning',
            self::Alert => 'Alert',
        };
    }

    public function color(): string
    {
        return match ($this) {
            self::Info => 'bg-blue-100 text-blue-800',
            self::Success => 'bg-green-100 text-green-800',
            self::Warning => 'bg-yellow-100 text-yellow-800',
            self::Alert => 'bg-red-100 text-red-800',
        };
    }

    public function icon(): string
    {
        return match ($this) {
            self::Info => 'info',
            self::Success => 'check_circle',
            self::Warning => 'warning',
            self::Alert => 'error',
        };
    }
}
