using Toolkit.Foundation; namespace Bitvault; [Notification(typeof(CreateEventArgs), nameof(ItemContentViewModel))] public partial class ItemContentViewModel(ICollectionSynchronizer synchronizer, IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, ISubscription subscriber, IDisposer disposer, IContentTemplate template, ItemState state = ItemState.Read) : ObservableCollection(synchronizer, provider, factory, mediator, publisher, subscriber, disposer), IItemEntryViewModel, INotificationHandler>> { public IContentTemplate Template { get; set; } = template; public Task Handle(NotifyEventArgs> args) { if (args.Value is ItemCategory category) { if (category.Value is string value) { Fetch(() => new AggregateExpression(new AggerateEventArgs(value)), true); } } return Task.CompletedTask; } }