using CommunityToolkit.Mvvm.ComponentModel; namespace Toolkit.Foundation; public partial class ValueViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, ISubscription subscriber, IDisposer disposer) : ObservableViewModel(provider, factory, mediator, publisher, subscriber, disposer) { [ObservableProperty] private TValue? value; protected virtual void OnChanged(TValue? value) { } partial void OnValueChanged(TValue? value) => OnChanged(value); }