using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; using Lagerprogramm.Models; using Lagerprogramm.Services; namespace Lagerprogramm.ViewModels; public partial class SettingsViewModel : ObservableObject { private readonly JsonDataService _dataService; private readonly AppData _appData; [ObservableProperty] private string _storagePath = string.Empty; [ObservableProperty] private string _companyName = string.Empty; public SettingsViewModel(JsonDataService dataService, AppData appData) { _dataService = dataService; _appData = appData; StoragePath = appData.Settings.StoragePath; CompanyName = appData.Settings.CompanyName; } [RelayCommand] private void Save() { _appData.Settings.StoragePath = StoragePath.Trim(); _appData.Settings.CompanyName = CompanyName.Trim(); _dataService.Save(_appData); } }