mirror of
https://github.com/Kareadita/Kavita.git
synced 2025-05-31 20:24:27 -04:00
* Implemented the ability to perform multi-selections on cards. Basic selection code is done, CSS needed and exposing actions. * Implemented a bulk selection bar. Added logic to the card on when to force show checkboxes. * Fixed some bad parsing groups and cases for Comic Chapters. * Hooked up some bulk actions on series detail page. Not hooked up to backend yet. * Fixes #593. URI Enocde library names as sometimes they can have & in them. * Implemented the ability to mark volume/chapters as read/unread. * Hooked up mark as unread with specials as well. * Add to reading list hooked up for Series Detail * Implemented ability to add multiple series to a reading list. * Implemented bulk selection for series cards * Added comments to the new code in ReaderService.cs * Implemented proper styling on bulk operation bar and integrated for collections. * Fixed an issue with shift clicking * Cleaned up css of bulk operations bar * Code cleanup
74 lines
3.4 KiB
C#
74 lines
3.4 KiB
C#
using System;
|
|
using System.Collections;
|
|
using System.Collections.Generic;
|
|
using System.Threading.Tasks;
|
|
using API.DTOs;
|
|
using API.DTOs.Filtering;
|
|
using API.Entities;
|
|
using API.Helpers;
|
|
|
|
namespace API.Interfaces.Repositories
|
|
{
|
|
public interface ISeriesRepository
|
|
{
|
|
void Add(Series series);
|
|
void Update(Series series);
|
|
Task<Series> GetSeriesByNameAsync(string name);
|
|
Task<bool> DoesSeriesNameExistInLibrary(string name);
|
|
Series GetSeriesByName(string name);
|
|
|
|
/// <summary>
|
|
/// Adds user information like progress, ratings, etc
|
|
/// </summary>
|
|
/// <param name="libraryId"></param>
|
|
/// <param name="userId"></param>
|
|
/// <param name="userParams"></param>
|
|
/// <returns></returns>
|
|
Task<PagedList<SeriesDto>> GetSeriesDtoForLibraryIdAsync(int libraryId, int userId, UserParams userParams, FilterDto filter);
|
|
|
|
/// <summary>
|
|
/// Does not add user information like progress, ratings, etc.
|
|
/// </summary>
|
|
/// <param name="libraryIds"></param>
|
|
/// <param name="searchQuery">Series name to search for</param>
|
|
/// <returns></returns>
|
|
Task<IEnumerable<SearchResultDto>> SearchSeries(int[] libraryIds, string searchQuery);
|
|
Task<IEnumerable<Series>> GetSeriesForLibraryIdAsync(int libraryId);
|
|
Task<IEnumerable<VolumeDto>> GetVolumesDtoAsync(int seriesId, int userId);
|
|
Task<IEnumerable<Volume>> GetVolumes(int seriesId);
|
|
Task<SeriesDto> GetSeriesDtoByIdAsync(int seriesId, int userId);
|
|
Task<Volume> GetVolumeAsync(int volumeId);
|
|
Task<VolumeDto> GetVolumeDtoAsync(int volumeId, int userId);
|
|
/// <summary>
|
|
/// A fast lookup of just the volume information with no tracking.
|
|
/// </summary>
|
|
/// <param name="volumeId"></param>
|
|
/// <returns></returns>
|
|
Task<VolumeDto> GetVolumeDtoAsync(int volumeId);
|
|
Task<IEnumerable<Volume>> GetVolumesForSeriesAsync(IList<int> seriesIds, bool includeChapters = false);
|
|
Task<bool> DeleteSeriesAsync(int seriesId);
|
|
Task<Volume> GetVolumeByIdAsync(int volumeId);
|
|
Task<Series> GetSeriesByIdAsync(int seriesId);
|
|
Task<int[]> GetChapterIdsForSeriesAsync(int[] seriesIds);
|
|
Task<IDictionary<int, IList<int>>> GetChapterIdWithSeriesIdForSeriesAsync(int[] seriesIds);
|
|
/// <summary>
|
|
/// Used to add Progress/Rating information to series list.
|
|
/// </summary>
|
|
/// <param name="userId"></param>
|
|
/// <param name="series"></param>
|
|
/// <returns></returns>
|
|
Task AddSeriesModifiers(int userId, List<SeriesDto> series);
|
|
|
|
|
|
Task<string> GetSeriesCoverImageAsync(int seriesId);
|
|
Task<IEnumerable<SeriesDto>> GetInProgress(int userId, int libraryId, UserParams userParams, FilterDto filter);
|
|
Task<PagedList<SeriesDto>> GetRecentlyAdded(int libraryId, int userId, UserParams userParams, FilterDto filter);
|
|
Task<SeriesMetadataDto> GetSeriesMetadata(int seriesId);
|
|
Task<PagedList<SeriesDto>> GetSeriesDtoForCollectionAsync(int collectionId, int userId, UserParams userParams);
|
|
Task<IList<MangaFile>> GetFilesForSeries(int seriesId);
|
|
Task<IEnumerable<SeriesDto>> GetSeriesDtoForIdsAsync(IEnumerable<int> seriesIds, int userId);
|
|
Task<IList<string>> GetAllCoverImagesAsync();
|
|
Task<IEnumerable<string>> GetLockedCoverImagesAsync();
|
|
}
|
|
}
|