using ErsatzTV.Core.Domain; using ErsatzTV.Infrastructure.Data; using Microsoft.EntityFrameworkCore; namespace ErsatzTV.Application.Images; public class ImageFolderExistsHandler(IDbContextFactory dbContextFactory) : IRequestHandler { public async Task Handle(ImageFolderExists request, CancellationToken cancellationToken) { await using TvContext dbContext = await dbContextFactory.CreateDbContextAsync(cancellationToken); return await dbContext.LibraryFolders .AsNoTracking() .AnyAsync( lf => lf.Id == request.LibraryFolderId && lf.LibraryPath.Library.MediaKind == LibraryMediaKind.Images, cancellationToken); } }