using System; using System.Text.Json.Serialization; using API.Entities.Interfaces; namespace API.Entities; /// /// Represents a saved page in a Chapter entity for a given user. /// public class AppUserBookmark : IEntityDate { public int Id { get; set; } public int Page { get; set; } public int SeriesId { get; set; } public int VolumeId { get; set; } public int ChapterId { get; set; } /// /// Filename in the Bookmark Directory /// public string FileName { get; set; } = string.Empty; /// /// Only applicable for Epubs - handles multiple images on one page /// /// 0-based index of the image position on page public int ImageOffset { get; set; } /// /// Only applicable for Epubs /// public string? XPath { get; set; } /// /// Chapter name (from ToC) or Title (from ComicInfo/PDF) /// public string? ChapterTitle { get; set; } // Relationships [JsonIgnore] public AppUser AppUser { get; set; } = null!; public int AppUserId { get; set; } public DateTime Created { get; set; } public DateTime LastModified { get; set; } public DateTime CreatedUtc { get; set; } public DateTime LastModifiedUtc { get; set; } }