From 046dafc179103769f6f504b69ebe7f174a585d96 Mon Sep 17 00:00:00 2001 From: TheXamlGuy Date: Wed, 12 Jun 2024 23:04:22 +0100 Subject: [PATCH] wip --- Wallet/AddItemNavigationViewModel.cs | 2 +- Wallet/AllNavigationViewModel.cs | 19 ++++---- Wallet/ArchiveItemActionViewModel.cs | 2 +- Wallet/ArchiveNavigationViewModel.cs | 2 +- Wallet/BackActionViewModel.cs | 2 +- Wallet/CategoriesNavigationViewModel.cs | 2 +- Wallet/CategoryNavigationViewModel.cs | 2 +- Wallet/ConfirmItemActionViewModel.cs | 2 +- Wallet/CreateItemActionViewModel.cs | 2 +- Wallet/CreateWalletNavigationViewModel.cs | 2 +- Wallet/CreateWalletViewModel.cs | 2 +- Wallet/DateEntryViewModel.cs | 2 +- Wallet/DeleteItemActionViewModel.cs | 2 +- Wallet/DismissItemActionViewModel.cs | 2 +- Wallet/DropdownEntryViewModel.cs | 4 +- Wallet/DropdownValueViewModel.cs | 2 +- Wallet/EditItemActionViewModel.cs | 2 +- Wallet/EmptyItemCollectionViewModel.cs | 2 +- Wallet/FavouriteItemActionViewModel.cs | 2 +- Wallet/FilterNavigationViewModel.cs | 53 ++++++++++++----------- Wallet/FooterViewModel.cs | 2 +- Wallet/HyperlinkEntryViewModel.cs | 2 +- Wallet/IconViewModel.cs | 2 +- Wallet/ItemCategoryCollectionViewModel.cs | 2 +- Wallet/ItemCategoryNavigationViewModel.cs | 2 +- Wallet/ItemCollectionViewModel.cs | 8 ++-- Wallet/ItemCommandHeaderViewModel.cs | 2 +- Wallet/ItemContentViewModel.cs | 2 +- Wallet/ItemEntryCollectionViewModel.cs | 4 +- Wallet/ItemEntryViewModel.cs | 2 +- Wallet/ItemHeaderViewModel.cs | 2 +- Wallet/ItemNavigationViewModel.cs | 2 +- Wallet/ItemSectionViewModel.cs | 2 +- Wallet/ItemViewModel.cs | 4 +- Wallet/MainViewModel.cs | 2 +- Wallet/MainWindowViewModel.cs | 2 +- Wallet/ManageNavigationViewModel.cs | 2 +- Wallet/ManageViewModel.cs | 2 +- Wallet/MaskedTextEntryViewModel.cs | 2 +- Wallet/MultilineTextEntryViewModel.cs | 2 +- Wallet/OpenWalletViewModel.cs | 2 +- Wallet/PasswordEntryViewModel.cs | 2 +- Wallet/PinEntryViewModel.cs | 2 +- Wallet/SearchWalletActionViewModel.cs | 2 +- Wallet/StarredNavigationViewModel.cs | 14 +----- Wallet/SynchronizeMainViewModelHandler.cs | 8 +++- Wallet/TextEntryViewModel.cs | 2 +- Wallet/UnarchiveItemActionViewModel.cs | 2 +- Wallet/UnfavouriteItemActionViewModel.cs | 2 +- Wallet/WalletHeaderViewModel.cs | 2 +- Wallet/WalletInitializer.cs | 2 +- Wallet/WalletNavigationViewModel.cs | 2 +- Wallet/WalletViewModel.cs | 2 +- 53 files changed, 101 insertions(+), 103 deletions(-) diff --git a/Wallet/AddItemNavigationViewModel.cs b/Wallet/AddItemNavigationViewModel.cs index 0d7de9c..6727816 100644 --- a/Wallet/AddItemNavigationViewModel.cs +++ b/Wallet/AddItemNavigationViewModel.cs @@ -6,6 +6,6 @@ public partial class AddItemNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer), IItemEntryViewModel; \ No newline at end of file diff --git a/Wallet/AllNavigationViewModel.cs b/Wallet/AllNavigationViewModel.cs index 7427f5c..3379c70 100644 --- a/Wallet/AllNavigationViewModel.cs +++ b/Wallet/AllNavigationViewModel.cs @@ -2,20 +2,19 @@ namespace Wallet; -[Notification(typeof(NotifyEventArgs>), "All")] public partial class AllNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, - IPublisher publisher, ISubscription subscriber, IDisposer disposer, int key, string value) : + IPublisher publisher, ISubscriber subscriber, IDisposer disposer, int key, string value) : FilterNavigationViewModel(provider, factory, mediator, publisher, subscriber, disposer, key, value), INotificationHandler>> { - public Task Handle(NotifyEventArgs> args) - { - if (args.Sender is Item item) - { - Key = item.Value; - } + //public Task Handle(NotifyEventArgs> args) + //{ + // if (args.Sender is Item item) + // { + // Key = item.Value; + // } - return Task.CompletedTask; - } + // return Task.CompletedTask; + //} } \ No newline at end of file diff --git a/Wallet/ArchiveItemActionViewModel.cs b/Wallet/ArchiveItemActionViewModel.cs index 49f7c66..e3a241a 100644 --- a/Wallet/ArchiveItemActionViewModel.cs +++ b/Wallet/ArchiveItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class ArchiveItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer), IRemovable { diff --git a/Wallet/ArchiveNavigationViewModel.cs b/Wallet/ArchiveNavigationViewModel.cs index aaf5545..aeacf6d 100644 --- a/Wallet/ArchiveNavigationViewModel.cs +++ b/Wallet/ArchiveNavigationViewModel.cs @@ -7,7 +7,7 @@ public partial class ArchiveNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, int key, string value) : FilterNavigationViewModel(provider, factory, mediator, publisher, subscriber, disposer, key, value), diff --git a/Wallet/BackActionViewModel.cs b/Wallet/BackActionViewModel.cs index a99aa20..2d35769 100644 --- a/Wallet/BackActionViewModel.cs +++ b/Wallet/BackActionViewModel.cs @@ -7,7 +7,7 @@ public partial class BackActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer) { [ObservableProperty] diff --git a/Wallet/CategoriesNavigationViewModel.cs b/Wallet/CategoriesNavigationViewModel.cs index 310964d..0dfa95a 100644 --- a/Wallet/CategoriesNavigationViewModel.cs +++ b/Wallet/CategoriesNavigationViewModel.cs @@ -7,7 +7,7 @@ public partial class CategoriesNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, int key, string value) : FilterNavigationViewModel(provider, factory, mediator, publisher, subscriber, disposer, key, value); \ No newline at end of file diff --git a/Wallet/CategoryNavigationViewModel.cs b/Wallet/CategoryNavigationViewModel.cs index 6159ac5..dc1077a 100644 --- a/Wallet/CategoryNavigationViewModel.cs +++ b/Wallet/CategoryNavigationViewModel.cs @@ -6,6 +6,6 @@ public partial class CategoryNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, string value) : FilterNavigationViewModel(provider, factory, mediator, publisher, subscriber, disposer, 0, value); \ No newline at end of file diff --git a/Wallet/ConfirmItemActionViewModel.cs b/Wallet/ConfirmItemActionViewModel.cs index 3f75946..a698a88 100644 --- a/Wallet/ConfirmItemActionViewModel.cs +++ b/Wallet/ConfirmItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class ConfirmItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer) { [RelayCommand] diff --git a/Wallet/CreateItemActionViewModel.cs b/Wallet/CreateItemActionViewModel.cs index 0b5b91d..b7b422b 100644 --- a/Wallet/CreateItemActionViewModel.cs +++ b/Wallet/CreateItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class CreateItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, NamedComponent named) : Observable(provider, factory, mediator, publisher, subscriber, disposer) { diff --git a/Wallet/CreateWalletNavigationViewModel.cs b/Wallet/CreateWalletNavigationViewModel.cs index ceeaada..8709519 100644 --- a/Wallet/CreateWalletNavigationViewModel.cs +++ b/Wallet/CreateWalletNavigationViewModel.cs @@ -6,7 +6,7 @@ public partial class CreateWalletNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer), IMainNavigationViewModel; \ No newline at end of file diff --git a/Wallet/CreateWalletViewModel.cs b/Wallet/CreateWalletViewModel.cs index ba88019..948bc31 100644 --- a/Wallet/CreateWalletViewModel.cs +++ b/Wallet/CreateWalletViewModel.cs @@ -8,7 +8,7 @@ public partial class CreateWalletViewModel(IServiceProvider provider, IServiceFactory factory, IPublisher publisher, IMediator mediator, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer), IPrimaryConfirmation diff --git a/Wallet/DateEntryViewModel.cs b/Wallet/DateEntryViewModel.cs index af860e8..cb60e77 100644 --- a/Wallet/DateEntryViewModel.cs +++ b/Wallet/DateEntryViewModel.cs @@ -6,7 +6,7 @@ public partial class DateEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/DeleteItemActionViewModel.cs b/Wallet/DeleteItemActionViewModel.cs index 759b32d..f343b0b 100644 --- a/Wallet/DeleteItemActionViewModel.cs +++ b/Wallet/DeleteItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class DeleteItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer) { [RelayCommand] diff --git a/Wallet/DismissItemActionViewModel.cs b/Wallet/DismissItemActionViewModel.cs index 438e976..1b8419e 100644 --- a/Wallet/DismissItemActionViewModel.cs +++ b/Wallet/DismissItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class DismissItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer) { [RelayCommand] diff --git a/Wallet/DropdownEntryViewModel.cs b/Wallet/DropdownEntryViewModel.cs index 77d17e7..642836a 100644 --- a/Wallet/DropdownEntryViewModel.cs +++ b/Wallet/DropdownEntryViewModel.cs @@ -9,7 +9,7 @@ public partial class DropdownEntryViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IEnumerable items, ItemState state, @@ -26,7 +26,7 @@ public partial class DropdownEntryViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IEnumerable items, ItemState state, diff --git a/Wallet/DropdownValueViewModel.cs b/Wallet/DropdownValueViewModel.cs index 442ad94..3bedf10 100644 --- a/Wallet/DropdownValueViewModel.cs +++ b/Wallet/DropdownValueViewModel.cs @@ -6,6 +6,6 @@ public partial class DropdownValueViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, string? value = null) : Observable(provider, factory, mediator, publisher, subscriber, disposer, value); diff --git a/Wallet/EditItemActionViewModel.cs b/Wallet/EditItemActionViewModel.cs index 85ef79e..7afd211 100644 --- a/Wallet/EditItemActionViewModel.cs +++ b/Wallet/EditItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class EditItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer) { [RelayCommand] diff --git a/Wallet/EmptyItemCollectionViewModel.cs b/Wallet/EmptyItemCollectionViewModel.cs index 6ead0c6..dd91b57 100644 --- a/Wallet/EmptyItemCollectionViewModel.cs +++ b/Wallet/EmptyItemCollectionViewModel.cs @@ -7,7 +7,7 @@ public partial class EmptyItemCollectionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, NamedComponent named) : Observable(provider, factory, mediator, publisher, subscriber, disposer) { diff --git a/Wallet/FavouriteItemActionViewModel.cs b/Wallet/FavouriteItemActionViewModel.cs index 33b5c9c..a877a36 100644 --- a/Wallet/FavouriteItemActionViewModel.cs +++ b/Wallet/FavouriteItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class FavouriteItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, bool value = false) : Observable(provider, factory, mediator, publisher, subscriber, disposer, value), IRemovable diff --git a/Wallet/FilterNavigationViewModel.cs b/Wallet/FilterNavigationViewModel.cs index ec08dd8..340abdb 100644 --- a/Wallet/FilterNavigationViewModel.cs +++ b/Wallet/FilterNavigationViewModel.cs @@ -3,11 +3,20 @@ using Toolkit.Foundation; namespace Wallet; -public partial class FilterNavigationViewModel : - ObservableCollection, +[Notification(typeof(NotifyEventArgs>), nameof(Value))] +public abstract partial class FilterNavigationViewModel(IServiceProvider provider, + IServiceFactory factory, + IMediator mediator, + IPublisher publisher, + ISubscriber subscriber, + IDisposer disposer, + int key, + string value) : + ObservableCollection(provider, factory, mediator, publisher, subscriber, disposer, key, value), IWalletNavigationViewModel, INotificationHandler>, - INotificationHandler> + INotificationHandler>, + INotificationHandler>> { [ObservableProperty] private bool activated; @@ -15,16 +24,14 @@ public partial class FilterNavigationViewModel : [ObservableProperty] private bool selected; - public FilterNavigationViewModel(IServiceProvider provider, - IServiceFactory factory, - IMediator mediator, - IPublisher publisher, - ISubscription subscriber, - IDisposer disposer, - int key, - string value) : base(provider, factory, mediator, publisher, subscriber, disposer, key, value) + public Task Handle(NotifyEventArgs> args) { + if (args.Sender is Item item) + { + Key = item.Value; + } + return Task.CompletedTask; } public Task Handle(DeactivatedEventArgs args) => @@ -34,8 +41,16 @@ public partial class FilterNavigationViewModel : Task.FromResult(Activated = true); } -public partial class FilterNavigationViewModel : - ObservableCollection, +[Notification(typeof(NotifyEventArgs>), nameof(Value))] +public abstract partial class FilterNavigationViewModel(IServiceProvider provider, + IServiceFactory factory, + IMediator mediator, + IPublisher publisher, + ISubscriber subscriber, + IDisposer disposer, + int key, + string value) : + ObservableCollection(provider, factory, mediator, publisher, subscriber, disposer, key, value), IWalletNavigationViewModel, INotificationHandler>, INotificationHandler> @@ -48,18 +63,6 @@ public partial class FilterNavigationViewModel : [ObservableProperty] private bool selected; - public FilterNavigationViewModel(IServiceProvider provider, - IServiceFactory factory, - IMediator mediator, - IPublisher publisher, - ISubscription subscriber, - IDisposer disposer, - int key, - string value) : base(provider, factory, mediator, publisher, subscriber, disposer, key, value) - { - - } - public Task Handle(DeactivatedEventArgs args) => Task.FromResult(Activated = false); diff --git a/Wallet/FooterViewModel.cs b/Wallet/FooterViewModel.cs index e465b88..b5050a3 100644 --- a/Wallet/FooterViewModel.cs +++ b/Wallet/FooterViewModel.cs @@ -9,7 +9,7 @@ public partial class FooterViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : base(provider, factory, mediator, publisher, subscriber, disposer) { Add(); diff --git a/Wallet/HyperlinkEntryViewModel.cs b/Wallet/HyperlinkEntryViewModel.cs index 87260d9..a2914b4 100644 --- a/Wallet/HyperlinkEntryViewModel.cs +++ b/Wallet/HyperlinkEntryViewModel.cs @@ -7,7 +7,7 @@ public partial class HyperlinkEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/IconViewModel.cs b/Wallet/IconViewModel.cs index 2c72ff8..e003ec2 100644 --- a/Wallet/IconViewModel.cs +++ b/Wallet/IconViewModel.cs @@ -8,7 +8,7 @@ public partial class IconViewModel : Observable IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : base(provider, factory, mediator, publisher, subscriber, disposer) { } diff --git a/Wallet/ItemCategoryCollectionViewModel.cs b/Wallet/ItemCategoryCollectionViewModel.cs index 7e37e3a..27ef536 100644 --- a/Wallet/ItemCategoryCollectionViewModel.cs +++ b/Wallet/ItemCategoryCollectionViewModel.cs @@ -8,7 +8,7 @@ public partial class ItemCategoryCollectionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template) : ObservableCollection(provider, factory, mediator, publisher, subscriber, disposer) diff --git a/Wallet/ItemCategoryNavigationViewModel.cs b/Wallet/ItemCategoryNavigationViewModel.cs index 4d093ae..cd4bfc0 100644 --- a/Wallet/ItemCategoryNavigationViewModel.cs +++ b/Wallet/ItemCategoryNavigationViewModel.cs @@ -8,7 +8,7 @@ public partial class ItemCategoryNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, string name, bool selected = false) : diff --git a/Wallet/ItemCollectionViewModel.cs b/Wallet/ItemCollectionViewModel.cs index a1e38ff..f8a3bb5 100644 --- a/Wallet/ItemCollectionViewModel.cs +++ b/Wallet/ItemCollectionViewModel.cs @@ -22,7 +22,7 @@ public partial class ItemCollectionViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template, NamedComponent named, @@ -42,7 +42,7 @@ public partial class ItemCollectionViewModel : if (args.Sender is Filter filter) { configuration = configuration with { Filter = filter.Value }; - Fetch(true); + Synchronize(true); } return Task.CompletedTask; @@ -53,7 +53,7 @@ public partial class ItemCollectionViewModel : if (args.Sender is Search search) { configuration = configuration with { Query = search.Value }; - Fetch(true); + Synchronize(true); } return Task.CompletedTask; @@ -71,5 +71,5 @@ public partial class ItemCollectionViewModel : } protected override SynchronizeExpression BuildAggregateExpression() => - new(Synchronize.As(configuration)); + new(Toolkit.Foundation.Synchronize.As(configuration)); } diff --git a/Wallet/ItemCommandHeaderViewModel.cs b/Wallet/ItemCommandHeaderViewModel.cs index 27403c1..284c84b 100644 --- a/Wallet/ItemCommandHeaderViewModel.cs +++ b/Wallet/ItemCommandHeaderViewModel.cs @@ -6,7 +6,7 @@ public partial class ItemCommandHeaderViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template) : ObservableCollection(provider, factory, mediator, publisher, subscriber, disposer), diff --git a/Wallet/ItemContentViewModel.cs b/Wallet/ItemContentViewModel.cs index 53c001e..4e50f91 100644 --- a/Wallet/ItemContentViewModel.cs +++ b/Wallet/ItemContentViewModel.cs @@ -6,7 +6,7 @@ namespace Wallet; public partial class ItemContentViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template) : ObservableCollection(provider, factory, mediator, publisher, subscriber, disposer), diff --git a/Wallet/ItemEntryCollectionViewModel.cs b/Wallet/ItemEntryCollectionViewModel.cs index 23b1fac..58ac4b1 100644 --- a/Wallet/ItemEntryCollectionViewModel.cs +++ b/Wallet/ItemEntryCollectionViewModel.cs @@ -21,7 +21,7 @@ public partial class ItemEntryCollectionViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, @@ -43,7 +43,7 @@ public partial class ItemEntryCollectionViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IEnumerable items, ItemState state, diff --git a/Wallet/ItemEntryViewModel.cs b/Wallet/ItemEntryViewModel.cs index 6b05cdd..0037932 100644 --- a/Wallet/ItemEntryViewModel.cs +++ b/Wallet/ItemEntryViewModel.cs @@ -7,7 +7,7 @@ public partial class ItemEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/ItemHeaderViewModel.cs b/Wallet/ItemHeaderViewModel.cs index 45b1f39..b148e6b 100644 --- a/Wallet/ItemHeaderViewModel.cs +++ b/Wallet/ItemHeaderViewModel.cs @@ -23,7 +23,7 @@ public partial class ItemHeaderViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemHeaderConfiguration configuration, ItemState state, diff --git a/Wallet/ItemNavigationViewModel.cs b/Wallet/ItemNavigationViewModel.cs index 7d5abe5..c5fcfc3 100644 --- a/Wallet/ItemNavigationViewModel.cs +++ b/Wallet/ItemNavigationViewModel.cs @@ -7,7 +7,7 @@ public partial class ItemNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template, NamedComponent named, diff --git a/Wallet/ItemSectionViewModel.cs b/Wallet/ItemSectionViewModel.cs index 95d1333..2c3f4d2 100644 --- a/Wallet/ItemSectionViewModel.cs +++ b/Wallet/ItemSectionViewModel.cs @@ -7,7 +7,7 @@ public partial class ItemSectionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template, string id) : ObservableCollection(provider, factory, mediator, publisher, subscriber, disposer), diff --git a/Wallet/ItemViewModel.cs b/Wallet/ItemViewModel.cs index a500dea..3058284 100644 --- a/Wallet/ItemViewModel.cs +++ b/Wallet/ItemViewModel.cs @@ -31,7 +31,7 @@ public partial class ItemViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template, NamedComponent named, @@ -135,5 +135,5 @@ public partial class ItemViewModel : } protected override SynchronizeExpression BuildAggregateExpression() => - new(Synchronize.As(("", Name, State))); + new(Toolkit.Foundation.Synchronize.As(("", Name, State))); } \ No newline at end of file diff --git a/Wallet/MainViewModel.cs b/Wallet/MainViewModel.cs index e0af474..3bf8561 100644 --- a/Wallet/MainViewModel.cs +++ b/Wallet/MainViewModel.cs @@ -15,7 +15,7 @@ public partial class MainViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template, FooterViewModel footer) : base(provider, factory, mediator, publisher, subscriber, disposer) diff --git a/Wallet/MainWindowViewModel.cs b/Wallet/MainWindowViewModel.cs index 536ede4..6af1bf0 100644 --- a/Wallet/MainWindowViewModel.cs +++ b/Wallet/MainWindowViewModel.cs @@ -6,6 +6,6 @@ public class MainWindowViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer); \ No newline at end of file diff --git a/Wallet/ManageNavigationViewModel.cs b/Wallet/ManageNavigationViewModel.cs index f700014..4f78a9d 100644 --- a/Wallet/ManageNavigationViewModel.cs +++ b/Wallet/ManageNavigationViewModel.cs @@ -6,7 +6,7 @@ public partial class ManageNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer), IMainNavigationViewModel; \ No newline at end of file diff --git a/Wallet/ManageViewModel.cs b/Wallet/ManageViewModel.cs index 899f970..7686f33 100644 --- a/Wallet/ManageViewModel.cs +++ b/Wallet/ManageViewModel.cs @@ -10,7 +10,7 @@ public partial class ManageViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template) : base(provider, factory, mediator, publisher, subscriber, disposer) { diff --git a/Wallet/MaskedTextEntryViewModel.cs b/Wallet/MaskedTextEntryViewModel.cs index 6d7f2ac..b410955 100644 --- a/Wallet/MaskedTextEntryViewModel.cs +++ b/Wallet/MaskedTextEntryViewModel.cs @@ -7,7 +7,7 @@ public partial class MaskedTextEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/MultilineTextEntryViewModel.cs b/Wallet/MultilineTextEntryViewModel.cs index 3f51a34..ad483fb 100644 --- a/Wallet/MultilineTextEntryViewModel.cs +++ b/Wallet/MultilineTextEntryViewModel.cs @@ -6,7 +6,7 @@ public partial class MultilineTextEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/OpenWalletViewModel.cs b/Wallet/OpenWalletViewModel.cs index 4b886ef..2d307c9 100644 --- a/Wallet/OpenWalletViewModel.cs +++ b/Wallet/OpenWalletViewModel.cs @@ -8,7 +8,7 @@ public partial class OpenWalletViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, string name) : Observable(provider, factory, mediator, publisher, subscriber, disposer) diff --git a/Wallet/PasswordEntryViewModel.cs b/Wallet/PasswordEntryViewModel.cs index 57454a8..e968180 100644 --- a/Wallet/PasswordEntryViewModel.cs +++ b/Wallet/PasswordEntryViewModel.cs @@ -6,7 +6,7 @@ public partial class PasswordEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/PinEntryViewModel.cs b/Wallet/PinEntryViewModel.cs index d99426a..d18f787 100644 --- a/Wallet/PinEntryViewModel.cs +++ b/Wallet/PinEntryViewModel.cs @@ -6,7 +6,7 @@ public partial class PinEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/SearchWalletActionViewModel.cs b/Wallet/SearchWalletActionViewModel.cs index 96c7dc1..14b742a 100644 --- a/Wallet/SearchWalletActionViewModel.cs +++ b/Wallet/SearchWalletActionViewModel.cs @@ -8,7 +8,7 @@ public partial class SearchWalletActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer, "") { [ObservableProperty] diff --git a/Wallet/StarredNavigationViewModel.cs b/Wallet/StarredNavigationViewModel.cs index 4df0c65..3820f34 100644 --- a/Wallet/StarredNavigationViewModel.cs +++ b/Wallet/StarredNavigationViewModel.cs @@ -2,24 +2,14 @@ namespace Wallet; -[Notification(typeof(NotifyEventArgs>), "Favourites")] public partial class StarredNavigationViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, int key, - string value) : FilterNavigationViewModel(provider, factory, mediator, publisher, subscriber, disposer, key, value), - INotificationHandler>> + string value) : FilterNavigationViewModel(provider, factory, mediator, publisher, subscriber, disposer, key, value) { - public Task Handle(NotifyEventArgs> args) - { - if (args.Sender is Item item) - { - Key = item.Value; - } - return Task.CompletedTask; - } } \ No newline at end of file diff --git a/Wallet/SynchronizeMainViewModelHandler.cs b/Wallet/SynchronizeMainViewModelHandler.cs index 9c82bbc..170e6bb 100644 --- a/Wallet/SynchronizeMainViewModelHandler.cs +++ b/Wallet/SynchronizeMainViewModelHandler.cs @@ -19,7 +19,13 @@ public class SynchronizeMainViewModelHandler(IPublisher publisher, { if (Wallet.Services.GetRequiredService() is IServiceFactory factory) { - if (factory.Create(descriptor.Name, selected) + if (factory.Create(args => + { + if (args is IPostInitialization initialization) + { + initialization.PostInitialize(); + } + }, descriptor.Name, selected) is WalletNavigationViewModel viewModel) { publisher.Publish(Create.As(viewModel), diff --git a/Wallet/TextEntryViewModel.cs b/Wallet/TextEntryViewModel.cs index b3af775..4e2985d 100644 --- a/Wallet/TextEntryViewModel.cs +++ b/Wallet/TextEntryViewModel.cs @@ -6,7 +6,7 @@ public partial class TextEntryViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, ItemState state, ItemEntryConfiguration configuration, diff --git a/Wallet/UnarchiveItemActionViewModel.cs b/Wallet/UnarchiveItemActionViewModel.cs index d5e17c8..5c147fd 100644 --- a/Wallet/UnarchiveItemActionViewModel.cs +++ b/Wallet/UnarchiveItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class UnarchiveItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer), IRemovable { diff --git a/Wallet/UnfavouriteItemActionViewModel.cs b/Wallet/UnfavouriteItemActionViewModel.cs index 4440ea2..c72866d 100644 --- a/Wallet/UnfavouriteItemActionViewModel.cs +++ b/Wallet/UnfavouriteItemActionViewModel.cs @@ -7,7 +7,7 @@ public partial class UnfavouriteItemActionViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer) : Observable(provider, factory, mediator, publisher, subscriber, disposer), IRemovable { diff --git a/Wallet/WalletHeaderViewModel.cs b/Wallet/WalletHeaderViewModel.cs index c21a94b..8f06e00 100644 --- a/Wallet/WalletHeaderViewModel.cs +++ b/Wallet/WalletHeaderViewModel.cs @@ -6,7 +6,7 @@ public partial class WalletHeaderViewModel(IServiceProvider provider, IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template) : ObservableCollection(provider, factory, mediator, publisher, subscriber, disposer), diff --git a/Wallet/WalletInitializer.cs b/Wallet/WalletInitializer.cs index 9ff0c9b..3caca66 100644 --- a/Wallet/WalletInitializer.cs +++ b/Wallet/WalletInitializer.cs @@ -4,7 +4,7 @@ namespace Wallet; public class WalletInitializer(IEnumerable> configurations, IComponentFactory componentFactory, - IWalletHostCollection Wallets) : IInitializer + IWalletHostCollection Wallets) : IInitialization { public async Task Initialize() { diff --git a/Wallet/WalletNavigationViewModel.cs b/Wallet/WalletNavigationViewModel.cs index 9e5e64e..eea310c 100644 --- a/Wallet/WalletNavigationViewModel.cs +++ b/Wallet/WalletNavigationViewModel.cs @@ -31,7 +31,7 @@ public partial class WalletNavigationViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, IContentTemplate template, string name, diff --git a/Wallet/WalletViewModel.cs b/Wallet/WalletViewModel.cs index cf79f35..8212825 100644 --- a/Wallet/WalletViewModel.cs +++ b/Wallet/WalletViewModel.cs @@ -16,7 +16,7 @@ public partial class WalletViewModel : IServiceFactory factory, IMediator mediator, IPublisher publisher, - ISubscription subscriber, + ISubscriber subscriber, IDisposer disposer, NamedComponent named, string filter) : base(provider, factory, mediator, publisher, subscriber, disposer)