public AccountWindow(ContentWindow contentWindow, bool edit)
        {
            _contentWindow = contentWindow ?? throw new ArgumentNullException(nameof(contentWindow));

            InitializeComponent();
            Owner       = _contentWindow;
            DataContext = App.Current.GetService <AccountModel>();

            AddAccountButton.Visibility  = edit ? Visibility.Collapsed : Visibility.Visible;
            EditAccountButton.Visibility = edit ? Visibility.Visible : Visibility.Collapsed;
        }
        private async void OnClickLoginButton(object sender, RoutedEventArgs e)
        {
            if (DataContext is LoginModel model)
            {
                if (model.Login.IsValid())
                {
                    // Save options
                    await model.SaveOptions();

                    // Set login details
                    var data = App.Current.GetService <OnePassData>();
                    data.Username = model.Login.Username;
                    data.Password = model.Login.Password;

                    // Change window
                    var contentWindow = new ContentWindow();
                    contentWindow.Show();
                    Close();
                }
            }
        }
        private async void OnClickCreateAccountButton(object sender, RoutedEventArgs e)
        {
            if (DataContext is LoginModel model)
            {
                if (model.Register.IsValid())
                {
                    // Create account
                    await model.CreateAccountAsync(model.Register.Username, model.Register.Password);

                    // Set login details
                    var data = App.Current.GetService <OnePassData>();
                    data.Username = model.Register.Username;
                    data.Password = model.Register.Password;

                    // Change window
                    var contentWindow = new ContentWindow();
                    contentWindow.Show();
                    Close();
                }
            }
        }