using Avalonia; using Avalonia.Controls; using Avalonia.Markup.Xaml; using ModpackUpdater.Apps.Manager.Api.Model; using ModpackUpdater.Manager; namespace ModpackUpdater.Apps.Manager.Ui; public partial class UpdatesCollectorWindow : Window { public record ModUpdateInfo(KeyValuePair[] AvailableVersions, InstallAction Origin) { public int NewVersion { get; set; } = 0; } public record ModUpdates(List List); private readonly IWorkspace workspace; private readonly ModpackFactory factory = new(); private readonly InstallAction[] actions; public ModUpdates? CurrentUpdates { get; private set; } public ModUpdateInfo? SelectedUpdate => radListView_Updates.SelectedItem?.Value as ModUpdateInfo; public int SelectedVersion => radListView_VersionTags.SelectedIndex; public UpdatesCollectorWindow(IWorkspace workspace, params InstallAction[] actions) { this.workspace = workspace; this.actions = actions; InitializeComponent(); } }