using System; using API.Entities.Enums; using API.Entities.Interfaces; namespace API.Entities; /// /// Represents an annotation in the Epub reader /// public class AppUserAnnotation : IEntityDate { public int Id { get; set; } /// /// Starting point of the Highlight /// public required string XPath { get; set; } /// /// Ending point of the Highlight. Can be the same as /// public string EndingXPath { get; set; } /// /// The text selected. /// public string SelectedText { get; set; } /// /// Rich text Comment /// public string? Comment { get; set; } /// /// The number of characters selected /// public int HighlightCount { get; set; } public int PageNumber { get; set; } public HightlightColor HighlightColor { get; set; } public bool ContainsSpoiler { get; set; } // TODO: Figure out a simple mechansim to track upvotes (hashmap of userids?) public required int SeriesId { get; set; } public required int VolumeId { get; set; } public required int ChapterId { get; set; } public Chapter Chapter { get; set; } public required int AppUserId { get; set; } public AppUser AppUser { get; set; } public DateTime Created { get; set; } public DateTime CreatedUtc { get; set; } public DateTime LastModified { get; set; } public DateTime LastModifiedUtc { get; set; } }