From 8e4af19010d4700134f0966e2b4499aae9b8663d Mon Sep 17 00:00:00 2001 From: TheXamlGuy Date: Tue, 4 Jun 2024 15:56:37 +0100 Subject: [PATCH] wi[ --- Bitvault.Avalonia/App.axaml.cs | 9 +++------ Bitvault/ConfirmCreateItemHandler.cs | 4 ++-- Bitvault/ItemEntryViewModel.cs | 10 ++++++---- 3 files changed, 11 insertions(+), 12 deletions(-) diff --git a/Bitvault.Avalonia/App.axaml.cs b/Bitvault.Avalonia/App.axaml.cs index e499153..df580fa 100644 --- a/Bitvault.Avalonia/App.axaml.cs +++ b/Bitvault.Avalonia/App.axaml.cs @@ -113,8 +113,7 @@ public partial class App : Application services.AddSingleton>, DecoratorService>>(); - - services.AddSingleton(provider => provider.GetRequiredService>>().Value!); + services.AddTransient(provider => provider.GetRequiredService>>().Value!); services.AddHandler(); @@ -148,11 +147,9 @@ public partial class App : Application services.AddTemplate(); services.AddTemplate(); - services.AddScoped>, + services.AddSingleton>, DecoratorService>>(); - - services.AddScoped(provider => provider.GetRequiredService>>().Value!); - + services.AddTransient(provider => provider.GetRequiredService>>().Value!); services.AddTemplate("ItemCommandHeader"); diff --git a/Bitvault/ConfirmCreateItemHandler.cs b/Bitvault/ConfirmCreateItemHandler.cs index e6baa49..b8d36a9 100644 --- a/Bitvault/ConfirmCreateItemHandler.cs +++ b/Bitvault/ConfirmCreateItemHandler.cs @@ -13,8 +13,8 @@ public class ConfirmCreateItemHandler(IMediator mediator, if (name is not null) { - IList entries = await mediator.HandleMany, - ItemEntryConfiguration>(Confirm.As()); + IList<(int, ItemEntryConfiguration)> entries = await mediator.HandleMany, + (int, ItemEntryConfiguration)>(Confirm.As()); Guid id = Guid.NewGuid(); publisher.Publish(Created.As(new Item<(Guid, string)>((id, name)))); diff --git a/Bitvault/ItemEntryViewModel.cs b/Bitvault/ItemEntryViewModel.cs index 28a800d..0d5bb97 100644 --- a/Bitvault/ItemEntryViewModel.cs +++ b/Bitvault/ItemEntryViewModel.cs @@ -1,4 +1,5 @@ -using Toolkit.Foundation; +using Microsoft.Extensions.DependencyInjection; +using Toolkit.Foundation; namespace Bitvault; @@ -13,15 +14,16 @@ public partial class ItemEntryViewModel(IServiceProvider provider, TKey? key = default, TValue? value = default) : Observable(provider, factory, mediator, publisher, subscriber, disposer, key, value), - IHandler, ItemEntryConfiguration>, + IHandler, (int, ItemEntryConfiguration)>, IItemEntryViewModel, IIndexable { public int Index => synchronization.IndexOf(this); - public Task Handle(ConfirmEventArgs args, + public Task<(int, ItemEntryConfiguration)> Handle(ConfirmEventArgs args, CancellationToken cancellationToken) { - return Task.FromResult(configuration with { Value = Value }); + var doo = Provider.GetRequiredService>(); + return Task.FromResult((Index, configuration with { Value = Value })); } }