public async Task <TelevisionSeasonCardResultsViewModel> Handle(
        GetTelevisionSeasonCards request,
        CancellationToken cancellationToken)
    {
        int count = await _televisionRepository.GetSeasonCount(request.TelevisionShowId);

        Option <JellyfinMediaSource> maybeJellyfin = await _mediaSourceRepository.GetAllJellyfin()
                                                     .Map(list => list.HeadOrNone());

        Option <EmbyMediaSource> maybeEmby = await _mediaSourceRepository.GetAllEmby()
                                             .Map(list => list.HeadOrNone());

        List <TelevisionSeasonCardViewModel> results = await _televisionRepository
                                                       .GetPagedSeasons(request.TelevisionShowId, request.PageNumber, request.PageSize)
                                                       .Map(list => list.Map(s => ProjectToViewModel(s, maybeJellyfin, maybeEmby)).ToList());

        return(new TelevisionSeasonCardResultsViewModel(count, results, None));
    }