using System;

namespace Tornado3_2026Election.Domain;

public sealed class LogEntry
{
    public required DateTimeOffset Timestamp { get; init; }

    public required LogLevel Level { get; init; }

    public required string Message { get; init; }

    public string LevelLabel => Level switch
    {
        LogLevel.Info => "정보",
        LogLevel.Warning => "경고",
        LogLevel.Error => "오류",
        _ => "정보"
    };

    public string Display => $"[{Timestamp:HH:mm:ss}] {LevelLabel}  {Message}";
}
