feat(ui): add TaskHeaderBar detail component
Standalone UserControl for the task detail island redesign. Grid layout: id badge + editable title | trash/skull toggle | gear flyout. Skull geometry added to IslandStyles.axaml (Icon.Skull, EvenOdd fill). Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using CommunityToolkit.Mvvm.Input;
|
||||
|
||||
namespace ClaudeDo.Ui.ViewModels.Islands.Detail;
|
||||
|
||||
public record AgentOption(string Name);
|
||||
|
||||
public partial class TaskHeaderBarViewModel : ViewModelBase
|
||||
{
|
||||
[ObservableProperty] private string _taskIdBadge = "#T42";
|
||||
[ObservableProperty] private string _editableTitle = "Refactor diff viewer";
|
||||
|
||||
// Change to true to preview skull icon
|
||||
[ObservableProperty] private bool _isRunning = false;
|
||||
[ObservableProperty] private bool _isAgentSectionEnabled = true;
|
||||
|
||||
[ObservableProperty] private ObservableCollection<string> _taskModelOptions =
|
||||
new() { "claude-opus-4-5", "claude-sonnet-4-5", "claude-haiku-4-5" };
|
||||
[ObservableProperty] private string? _taskModelSelection;
|
||||
[ObservableProperty] private string? _modelBadge = "inherited · Global";
|
||||
[ObservableProperty] private string? _modelInheritedHint = "claude-opus-4-5";
|
||||
|
||||
[ObservableProperty] private decimal? _taskMaxTurns;
|
||||
[ObservableProperty] private string? _turnsBadge = "inherited · List";
|
||||
[ObservableProperty] private string? _turnsInheritedHint = "40";
|
||||
|
||||
[ObservableProperty] private string? _taskSystemPrompt;
|
||||
[ObservableProperty] private string? _effectiveSystemPromptHint = "You are a senior .NET developer…";
|
||||
|
||||
[ObservableProperty] private ObservableCollection<AgentOption> _taskAgentOptions =
|
||||
new() { new("default"), new("code-reviewer"), new("test-writer") };
|
||||
[ObservableProperty] private AgentOption? _taskSelectedAgent;
|
||||
[ObservableProperty] private string? _agentBadge;
|
||||
|
||||
[RelayCommand] private void DeleteTask() { }
|
||||
[RelayCommand] private void KillSession() { }
|
||||
[RelayCommand] private void ResetTaskModel() { }
|
||||
[RelayCommand] private void ResetTaskTurns() { }
|
||||
[RelayCommand] private void ResetTaskAgent() { }
|
||||
}
|
||||
Reference in New Issue
Block a user