using Toolkit.Foundation; namespace Bitvault; public partial class ItemEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, ISubscription subscriber, IDisposer disposer, ISynchronizationCollection synchronization, ItemEntryConfiguration configuration, TKey? key = default, TValue? value = default) : Observable(provider, factory, mediator, publisher, subscriber, disposer, key, value), IHandler, (int, ItemEntryConfiguration)>, IItemEntryViewModel, IIndexable { public int Index => synchronization.IndexOf(this); public Task<(int, ItemEntryConfiguration)> Handle(ConfirmEventArgs args, CancellationToken cancellationToken) => Task.FromResult((Index, configuration with { Value = Value })); }