using Newtonsoft.Json;

namespace Tranga;

public static class Migrate
{
    private static readonly ushort CurrentVersion = 16;
    public static void Files(TrangaSettings settings)
    {
        settings.version ??= 15;
        switch (settings.version)
        {
            case 15:
                RemoveUpdateLibraryTask(settings);
                break;
        }

        settings.version = CurrentVersion;
        settings.ExportSettings();
    }

    private static void RemoveUpdateLibraryTask(TrangaSettings settings)
    {
        List<TrangaTask> tasks = JsonConvert.DeserializeObject<List<TrangaTask>>(settings.tasksFilePath)!;
        tasks.RemoveAll(t => t.task == TrangaTask.Task.UpdateLibraries);
    }
}