@* Recursive editor row for one folder in the visual builder. *@
@using SharepointToolbox.Web.Core.Models
@inject TranslationSource T
📁
@if (Depth < FolderNode.MaxDepth)
{
}
@foreach (var child in Node.Children)
{
}
@code {
[Parameter, EditorRequired] public FolderNode Node { get; set; } = default!;
[Parameter] public int Depth { get; set; } = 1;
[Parameter] public EventCallback OnRemove { get; set; }
[Parameter] public EventCallback OnChanged { get; set; }
private async Task OnNameInput(ChangeEventArgs e)
{
Node.Name = e.Value?.ToString() ?? string.Empty;
await OnChanged.InvokeAsync();
}
private async Task AddChild()
{
Node.Children.Add(new FolderNode());
await OnChanged.InvokeAsync();
}
private async Task RemoveChild(FolderNode child)
{
Node.Children.Remove(child);
await OnChanged.InvokeAsync();
}
}