33 lines
1014 B
C#
33 lines
1014 B
C#
namespace ClaudeDo.Ui.ViewModels.Islands;
|
|
|
|
public enum LogKind { Sys, Tool, Claude, Stdout, Stderr, Done, Msg }
|
|
|
|
public sealed class LogLineViewModel
|
|
{
|
|
public required LogKind Kind { get; init; }
|
|
public required string Text { get; init; }
|
|
public string TimestampFormatted { get; } = DateTime.Now.ToString("HH:mm:ss");
|
|
public string KindMarker => Kind switch
|
|
{
|
|
LogKind.Sys => "sys",
|
|
LogKind.Tool => "tool",
|
|
LogKind.Claude => "claude",
|
|
LogKind.Stdout => "out",
|
|
LogKind.Stderr => "err",
|
|
LogKind.Done => "done",
|
|
LogKind.Msg => "claude",
|
|
_ => "",
|
|
};
|
|
public string ClassName => Kind switch
|
|
{
|
|
LogKind.Sys => "log-sys",
|
|
LogKind.Tool => "log-tool",
|
|
LogKind.Claude => "log-claude",
|
|
LogKind.Stdout => "log-stdout",
|
|
LogKind.Stderr => "log-stderr",
|
|
LogKind.Done => "log-done",
|
|
LogKind.Msg => "log-msg",
|
|
_ => "",
|
|
};
|
|
}
|