using System.Globalization; using ErsatzTV.Core.Domain; using ErsatzTV.Core.Interfaces.Repositories; using ErsatzTV.Core.Metadata; namespace ErsatzTV.Application.MediaItems; public class GetAllLanguageCodesHandler(IMediaItemRepository mediaItemRepository) : IRequestHandler> { public async Task> Handle( GetAllLanguageCodes request, CancellationToken cancellationToken) { List languageCodes = await mediaItemRepository.GetAllLanguageCodesAndNames(); return languageCodes.Map(c => new LanguageCodeViewModel(c.Code, c.Name)).ToList(); } }