using InABox.Core;

namespace InABox.Avalonia.Platform;

public class DefaultAppVersion : IAppVersion
{
    
    public Logger? Logger { get; set; }
    
    public string InstalledVersionNumber()
    {
        Logger?.Error("InstalledVersionNumber() is not implemented on this platform");
        return "";
    }

        
    public Task<bool> IsUsingLatestVersion()
    {
        Logger?.Error("IsUsingLatestVersion() is not implemented on this platform");
        return Task.Run(() => true);
    }

    public Task<AppInfo> GetLatestVersion(bool force)
    {
        Logger?.Error("GetLatestVersion() is not implemented on this platform");
        return Task.Run(() => new AppInfo()
        {
            Version = "N/A",
            Date = DateTime.MinValue,
            Notes = "Not Implemented",
        });
    }

    public Task OpenAppInStore()
    {
        Logger?.Error("OpenAppInStore() is not implemented on this platform");
        return Task.Run(() => { });
    }
    
}