@using Moonlight.App.Services.Interop @using Moonlight.App.Services @using Moonlight.App.Perms @inject ModalService ModalService @inject SmartTranslateService SmartTranslateService @code { [Parameter] public byte[] InitialData { get; set; } = Array.Empty(); [Parameter] public Func? OnSave { get; set; } private bool Enabled = false; private PermissionStorage Storage; public async Task Launch() { Enabled = true; Storage = new(InitialData); await InvokeAsync(StateHasChanged); await ModalService.Show("permissionEditor"); } private async Task Save() { OnSave?.Invoke(Storage.Data); await ModalService.Hide("permissionEditor"); Enabled = false; await InvokeAsync(StateHasChanged); } }