using Toolkit.Foundation; namespace Bitvault; public class ConfirmUpdateItemHandler(IDecoratorService> decoratorItem, IDecoratorService decoratorItemConfiguration, IMediator mediator, IPublisher publisher) : INotificationHandler> { public async Task Handle(ConfirmEventArgs args) { string? name = await mediator.Handle, string>(Confirm.As()); if (name is not null) { var dd = decoratorItemConfiguration; publisher.Publish(Notify.As(new ItemHeader(name))); if (decoratorItem?.Value is Item<(Guid, string)> item) { (Guid id, string _) = item.Value; Item<(Guid, string)> newItem = new((id, name)); publisher.Publish(Modified.As(item, newItem)); decoratorItem.Set(newItem); await mediator.Handle, bool>(new UpdateEventArgs<(Guid, string, ItemConfiguration)>((id, name, new ItemConfiguration()))); } } } }