using System; using System.Reactive; using System.Reactive.Linq; using Flawless.Client.Service; using ReactiveUI; using ReactiveUI.SourceGenerators; namespace Flawless.Client.ViewModels; public partial class MainWindowViewModel : ViewModelBase, IScreen { public RoutingState Router { get; } = new RoutingState(); public ReactiveCommand GoBackCommand => Router.NavigateBack; public MainWindowViewModel() { #pragma warning disable VSTHRD110 Api.Current.IsLoggedIn.Subscribe(login => { if (login) { Console.WriteLine("Enter main page"); Router.Navigate.Execute(new LoginViewModel(this)); } else { Console.WriteLine("Require login again"); Router.NavigateAndReset.Execute(new ServerConnectViewModel(this)); } }); #pragma warning restore VSTHRD110 } }