/*
<copyright file="BGUNListSaveFiles.cs" company="BansheeGz">
    Copyright (c) 2018-2021 All Rights Reserved
</copyright>
*/

using System;
using System.IO;
using MaxyGames.uNode;
using UnityEngine;

namespace BansheeGz.BGDatabase
{
    [NodeMenu("BansheeGz", "DB: list save files")]
    public class BGUNListSaveFiles : IDataNode<string[]> 
    {

        object IDataNode.GetValue(object graph)
        {
            return GetValue(graph);
        }

        public Type ReturnType()
        {
            return typeof(string[]);
        }

        public string[] GetValue(object graph)
        {
            var filesOnDisk = Directory.GetFiles(Application.persistentDataPath, "*." + BGUNSaveLoadA.FileExt);
            var filesNoExtension = new string[filesOnDisk.Length];
            if (filesOnDisk.Length > 0)
            {
                for (var i = 0; i < filesOnDisk.Length; i++) filesNoExtension[i] = Path.GetFileNameWithoutExtension(filesOnDisk[i]);
            }
            return filesNoExtension;
        }
    }
}