using System.ComponentModel; using System.Runtime.CompilerServices; namespace AxCopilot.ViewModels; public class ThemeCardModel : INotifyPropertyChanged { private bool _isSelected; public string Key { get; init; } = ""; public string Name { get; init; } = ""; public string PreviewBackground { get; init; } = "#1A1B2E"; public string PreviewText { get; init; } = "#F0F0FF"; public string PreviewSubText { get; init; } = "#7A7D9C"; public string PreviewAccent { get; init; } = "#4B5EFC"; public string PreviewItem { get; init; } = "#252637"; public string PreviewBorder { get; init; } = "#2E2F4A"; public bool IsSelected { get { return _isSelected; } set { _isSelected = value; OnPropertyChanged("IsSelected"); } } public event PropertyChangedEventHandler? PropertyChanged; protected void OnPropertyChanged([CallerMemberName] string? n = null) { this.PropertyChanged?.Invoke(this, new PropertyChangedEventArgs(n)); } }