1
0

initial commit

This commit is contained in:
2026-03-04 07:59:35 +01:00
commit 3ceb0e4884
27 changed files with 2280 additions and 0 deletions

View File

@@ -0,0 +1,31 @@
using Spectre.Console;
namespace AnchorCli.Commands;
public class CommandDispatcher
{
private readonly CommandRegistry _registry;
public CommandDispatcher(CommandRegistry registry)
{
_registry = registry;
}
public async Task<bool> TryExecuteAsync(string input, CancellationToken ct)
{
if (!input.StartsWith('/')) return false;
var parts = input[1..].Split(' ', 2);
var commandName = parts[0];
var args = parts.Length > 1 ? new[] { parts[1] } : Array.Empty<string>();
var command = _registry.GetCommand(commandName);
if (command == null)
{
AnsiConsole.MarkupLine($"[red]Unknown command: /{commandName}[/]");
return true;
}
await command.ExecuteAsync(args, ct);
return true;
}
}