update libs

This commit is contained in:
Kirill Chikalin
2025-02-13 17:48:12 +03:00
parent e17e7c2786
commit 275dc598c7
816 changed files with 22479 additions and 10792 deletions

View File

@@ -0,0 +1,41 @@
using AssetStoreTools.Previews.Data;
using System.Collections.Generic;
using System.IO;
using System.Linq;
namespace AssetStoreTools.Exporter
{
internal class PreviewInjector : IPreviewInjector
{
private PreviewGenerationResult _result;
public PreviewInjector(PreviewGenerationResult result)
{
_result = result;
}
public void Inject(string temporaryPackagePath)
{
if (_result == null || !_result.Success)
return;
var previews = _result.Previews.Where(x => x.Type == _result.GenerationType && x.Exists());
InjectFilesIntoGuidFolders(previews, temporaryPackagePath);
}
private void InjectFilesIntoGuidFolders(IEnumerable<PreviewMetadata> previews, string temporaryPackagePath)
{
foreach (var assetFolder in Directory.EnumerateDirectories(temporaryPackagePath))
{
var guid = assetFolder.Replace("\\", "/").Split('/').Last();
var generatedPreview = previews.FirstOrDefault(x => x.Guid.Equals(guid));
if (generatedPreview == null)
continue;
// Note: Unity Importer and Asset Store only operate with .png extensions
File.Copy(generatedPreview.Path, $"{assetFolder}/preview.png", true);
}
}
}
}