using Toolkit.Foundation; namespace Wallet; public class ItemChangedHandler(IMediator mediator, IPublisher publisher) : INotificationHandler>> { public async Task Handle(ChangedEventArgs> args) { IReadOnlyCollection<(string, int)>? categoryCounts = await mediator.Handle, IReadOnlyCollection<(string, int)>>(Count.As()); if (categoryCounts is { Count: > 0 } ) { foreach ((string key, int count) in categoryCounts) { publisher.Publish(Notify.As(new Item(count)), key); } } } }