mirror of
https://github.com/Kareadita/Kavita.git
synced 2025-06-23 15:30:34 -04:00
* Switched Ratings to a float system. Allow rating something as 0%. Allow half step ratings. Added new css variable: --rating-star-color. By default, N/A will show for series that have no ratings. N/A ratings are not included in overall rating calculations. * Show extended entity properties on desktop for list view cards. * Refactored the code for series metadata detail to use a re-usable component to reduce the copy/paste for the Genres tags like sections. * List Item will show extended properties about a chapter/volume, like weblinks on Desktop viewports. * Refactored even further so all of series detail uses the same component code. Tweaked the spacing on the series detail area. List items will now show Characters and Tags which are helpful for more Hentai related content. * Fixed a bug with removing something from "OnDeckRemoval" table when something was read.
67 lines
2.3 KiB
C#
67 lines
2.3 KiB
C#
using System;
|
|
using API.Entities.Enums;
|
|
using API.Entities.Interfaces;
|
|
|
|
namespace API.DTOs;
|
|
#nullable enable
|
|
|
|
public class SeriesDto : IHasReadTimeEstimate
|
|
{
|
|
public int Id { get; init; }
|
|
public string? Name { get; init; }
|
|
public string? OriginalName { get; init; }
|
|
public string? LocalizedName { get; init; }
|
|
public string? SortName { get; init; }
|
|
public string? Summary { get; init; }
|
|
public int Pages { get; init; }
|
|
public bool CoverImageLocked { get; set; }
|
|
/// <summary>
|
|
/// Sum of pages read from linked Volumes. Calculated at API-time.
|
|
/// </summary>
|
|
public int PagesRead { get; set; }
|
|
/// <summary>
|
|
/// DateTime representing last time the series was Read. Calculated at API-time.
|
|
/// </summary>
|
|
public DateTime LatestReadDate { get; set; }
|
|
/// <summary>
|
|
/// DateTime representing last time a chapter was added to the Series
|
|
/// </summary>
|
|
public DateTime LastChapterAdded { get; set; }
|
|
/// <summary>
|
|
/// Rating from logged in user. Calculated at API-time.
|
|
/// </summary>
|
|
public float UserRating { get; set; }
|
|
/// <summary>
|
|
/// If the user has set the rating or not
|
|
/// </summary>
|
|
public bool HasUserRated { get; set; }
|
|
|
|
public MangaFormat Format { get; set; }
|
|
public DateTime Created { get; set; }
|
|
|
|
public bool NameLocked { get; set; }
|
|
public bool SortNameLocked { get; set; }
|
|
public bool LocalizedNameLocked { get; set; }
|
|
/// <summary>
|
|
/// Total number of words for the series. Only applies to epubs.
|
|
/// </summary>
|
|
public long WordCount { get; set; }
|
|
|
|
public int LibraryId { get; set; }
|
|
public string LibraryName { get; set; } = default!;
|
|
/// <inheritdoc cref="IHasReadTimeEstimate.MinHoursToRead"/>
|
|
public int MinHoursToRead { get; set; }
|
|
/// <inheritdoc cref="IHasReadTimeEstimate.MaxHoursToRead"/>
|
|
public int MaxHoursToRead { get; set; }
|
|
/// <inheritdoc cref="IHasReadTimeEstimate.AvgHoursToRead"/>
|
|
public int AvgHoursToRead { get; set; }
|
|
/// <summary>
|
|
/// The highest level folder for this Series
|
|
/// </summary>
|
|
public string FolderPath { get; set; } = default!;
|
|
/// <summary>
|
|
/// The last time the folder for this series was scanned
|
|
/// </summary>
|
|
public DateTime LastFolderScanned { get; set; }
|
|
}
|