using Microsoft.Extensions.DependencyInjection; namespace Hyperbar.Widget; public class WidgetStartedHandler(IPublisher publisher) : INotificationHandler> { public async Task Handle(Started notification, CancellationToken cancellationToken) { if (notification.Value is IWidgetHost host) { if (host.Services.GetService() is IWidgetViewModel viewModel) { await publisher.PublishAsync(new Create(viewModel), nameof(IWidgetHostViewModel), cancellationToken); } } } }