// using ArcaneLibs.Extensions.Streams; // using Microsoft.AspNetCore.Mvc; // using Microsoft.OpenApi; // using Spacebar.AdminApi.TestClient.Services.Services; // using Spacebar.Cdn.Extensions; // using Spacebar.Interop.Cdn.Abstractions; // // namespace Spacebar.Cdn.Controllers; // // [ApiController] // public class StaticAssetController(LruFileCache lfc, IFileSource fs, DiscordImageResizeService dirs) : ImageController { // private static readonly Dictionary defaultAvatarHashMap = new() { // { "0", "4a8562cf00887030c416d3ec2d46385a" }, // { "1", "9b0bb198936784c45c72833cc426cc55" }, // { "2", "22341bdb500c7b63a93bbce957d1601e" }, // { "3", "d9977836b82058bf2f74eebd50edc095" }, // { "4", "9d6ddb4e4d899a533a8cc617011351c9" }, // { "5", "7213ab6677377974697dfdfbaf5f6a6f" }, // }; // // private static readonly Dictionary defaultGroupDMAvatarHashMap = new() { // { "0", "3b70bb66089c60f8be5e214bf8574c9d" }, // { "1", "9581acd31832465bdeaa5385b0e919a3" }, // { "2", "a8a4727cf2dc2939bd3c657fad4463fa" }, // { "3", "2e46fe14586f8e95471c0917f56726b5" }, // { "4", "fac7e78de9753d4a37083bba74c1d9ef" }, // { "5", "4ab900144b0865430dc9be825c838faa" }, // { "6", "1276374a404452756f3c9cc2601508a5" }, // { "7", "904bf9f1b61f53ef4a3b7a893afeabe3" }, // }; // // // png only // [HttpGet("/embed/avatars/{userIndex}.{ext}")] // public async Task GetDefaultUserAvatar(string userIndex, string ext) { // // var cacheKey = Request.Path + Request.QueryString; // // DiscordImageResizeParams resizeParams = GetResizeParams(); // // var entry = await lfc.GetOrAdd(cacheKey, async () => { // var original = await fs.GetFile(Request.Path); // // if (Request.Query.Any()) { // using var img = await original.ToMagickImageCollectionAsync(); // dirs.Apply(img, resizeParams); // // var outStream = new MemoryStream(); // await img.WriteAsync(outStream, img.First().Format); // outStream.Position = 0; // // return new LruFileCache.Entry() { // Data = outStream.ReadToEnd().ToArray(), // MimeType = original.MimeType // }; // } // // return new LruFileCache.Entry() { // Data = original.Stream.ReadToEnd().ToArray(), // MimeType = original.MimeType // }; // }); // // // byte array with mime type result // return new FileContentResult(entry.Data, entry.MimeType); // } // }