using ErsatzTV.Application.MediaCollections;

namespace ErsatzTV.Controllers.Api.Requests;

public record AddItemsToCollectionRequest(
    List<int> MovieIds,
    List<int> ShowIds,
    List<int> SeasonIds,
    List<int> EpisodeIds,
    List<int> ArtistIds,
    List<int> MusicVideoIds,
    List<int> OtherVideoIds,
    List<int> SongIds,
    List<int> ImageIds,
    List<int> RemoteStreamIds)
{
    public AddItemsToCollection ToCommand(int collectionId) =>
        new(
            collectionId,
            MovieIds ?? [],
            ShowIds ?? [],
            SeasonIds ?? [],
            EpisodeIds ?? [],
            ArtistIds ?? [],
            MusicVideoIds ?? [],
            OtherVideoIds ?? [],
            SongIds ?? [],
            ImageIds ?? [],
            RemoteStreamIds ?? []);
}
