using System; using System.Collections.ObjectModel; using Nebula.Launcher.Views.Popup; using Nebula.Shared.Services; namespace Nebula.Launcher.ViewModels.Popup; [ViewModelRegister(typeof(ExceptionView), false)] [ConstructGenerator] public sealed partial class ExceptionViewModel : PopupViewModelBase { [GenerateProperty] public override PopupMessageService PopupMessageService { get; } public override string Title => "Oopsie! Some shit is happened now!"; public override bool IsClosable => true; public ObservableCollection Errors { get; } = new(); protected override void Initialise() { } protected override void InitialiseInDesignMode() { var e = new Exception("TEST"); AppendError(e); } public void AppendError(Exception exception) { Errors.Add(exception); if (exception.InnerException != null) AppendError(exception.InnerException); } }