using System.Text; using System.Text.Json.Serialization; namespace UI_MAUI.Pages; public partial class LoadProject { private readonly List recentProjects = new(); private string newProjectDestination = string.Empty; #region Overrides of ComponentBase protected override async Task OnInitializedAsync() { await base.OnInitializedAsync(); await this.LoadRecentProjects(); } #endregion private readonly record struct RecentProject(string Path, string Name, bool Available); private async Task LoadRecentProjects() { var appDataDirectory = FileSystem.Current.AppDataDirectory; var recentProjectsFile = Path.Join(appDataDirectory, "recentProjects.json"); if (!File.Exists(recentProjectsFile)) await File.WriteAllTextAsync(recentProjectsFile, string.Empty, Encoding.UTF8); // Read the JSON data from that file & decode it to an array of recent projects: } private async Task WriteRecentProjects() { } private async Task ChooseProjectDestination() { var projectDestination = await FilePicker.PickAsync(new PickOptions { PickerTitle = "Choose the project destination", }); if(projectDestination is null) return; this.newProjectDestination = projectDestination!.FullPath; } }