using LANCommander.SDK.Enums; using LANCommander.SDK.Models.Manifest; using LANCommander.Server.ImportExport.Models; using LANCommander.Server.Services; using LANCommander.Server.Services.Mappers; namespace LANCommander.Server.ImportExport.Exporters; public class DeveloperExporter( ManifestMapper manifestMapper, CompanyService companyService) : BaseExporter { public override async Task GetExportInfoAsync(Data.Models.Company record) { return new ExportItemInfo { Id = record.Id, Type = ImportExportRecordType.Developer, Name = record.Name, }; } public override bool CanExport(Company record) => ExportContext.DataRecord is Data.Models.Game; public override async Task ExportAsync(Guid id) { return await companyService.GetAsync(id, manifestMapper.ProjectToManifestCompany); } }