UX Overhaul Part 1 (#3047)

Co-authored-by: Joseph Milazzo <joseph.v.milazzo@gmail.com>
This commit is contained in:
Robbie Davis 2024-08-09 13:55:31 -04:00 committed by GitHub
parent 5934d516f3
commit ff79710ac6
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
324 changed files with 11589 additions and 4598 deletions

View file

@ -10,7 +10,7 @@ namespace API.DTOs;
/// A Chapter is the lowest grouping of a reading medium. A Chapter contains a set of MangaFiles which represents the underlying
/// file (abstracted from type).
/// </summary>
public class ChapterDto : IHasReadTimeEstimate
public class ChapterDto : IHasReadTimeEstimate, IHasCoverImage
{
public int Id { get; init; }
/// <summary>
@ -159,4 +159,8 @@ public class ChapterDto : IHasReadTimeEstimate
public int TotalCount { get; set; }
#endregion
public string CoverImage { get; set; }
public string PrimaryColor { get; set; }
public string SecondaryColor { get; set; }
}

View file

@ -1,11 +1,12 @@
using System;
using API.Entities.Enums;
using API.Entities.Interfaces;
using API.Services.Plus;
namespace API.DTOs.Collection;
#nullable enable
public class AppUserCollectionDto
public class AppUserCollectionDto : IHasCoverImage
{
public int Id { get; init; }
public string Title { get; set; } = default!;
@ -17,6 +18,9 @@ public class AppUserCollectionDto
/// This is used to tell the UI if it should request a Cover Image or not. If null or empty, it has not been set.
/// </summary>
public string? CoverImage { get; set; } = string.Empty;
public string PrimaryColor { get; set; }
public string SecondaryColor { get; set; }
public bool CoverImageLocked { get; set; }
/// <summary>

10
API/DTOs/ColorScape.cs Normal file
View file

@ -0,0 +1,10 @@
namespace API.DTOs;
/// <summary>
/// A primary and secondary color
/// </summary>
public class ColorScape
{
public required string? Primary { get; set; }
public required string? Secondary { get; set; }
}

View file

@ -20,4 +20,6 @@ public class MediaErrorDto
/// Exception message
/// </summary>
public string Details { get; set; }
public DateTime CreatedUtc { get; set; }
}

View file

@ -1,9 +1,10 @@
using System;
using API.Entities.Interfaces;
namespace API.DTOs.ReadingLists;
#nullable enable
public class ReadingListDto
public class ReadingListDto : IHasCoverImage
{
public int Id { get; init; }
public string Title { get; set; } = default!;
@ -17,6 +18,10 @@ public class ReadingListDto
/// This is used to tell the UI if it should request a Cover Image or not. If null or empty, it has not been set.
/// </summary>
public string? CoverImage { get; set; } = string.Empty;
public string PrimaryColor { get; set; }
public string SecondaryColor { get; set; }
/// <summary>
/// Minimum Year the Reading List starts
/// </summary>

View file

@ -5,7 +5,7 @@ using API.Entities.Interfaces;
namespace API.DTOs;
#nullable enable
public class SeriesDto : IHasReadTimeEstimate
public class SeriesDto : IHasReadTimeEstimate, IHasCoverImage
{
public int Id { get; init; }
public string? Name { get; init; }
@ -62,4 +62,8 @@ public class SeriesDto : IHasReadTimeEstimate
/// The last time the folder for this series was scanned
/// </summary>
public DateTime LastFolderScanned { get; set; }
public string? CoverImage { get; set; }
public string PrimaryColor { get; set; }
public string SecondaryColor { get; set; }
}

View file

@ -0,0 +1,19 @@
namespace API.DTOs.Theme;
#nullable enable
/// <summary>
/// A set of colors for the color scape system in the UI
/// </summary>
public class ColorScapeDto
{
public string? Primary { get; set; }
public string? Secondary { get; set; }
public ColorScapeDto(string? primary, string? secondary)
{
Primary = primary;
Secondary = secondary;
}
public static readonly ColorScapeDto Empty = new ColorScapeDto(null, null);
}

View file

@ -174,4 +174,6 @@ public class UserPreferencesDto
/// </summary>
[Required]
public PdfSpreadMode PdfSpreadMode { get; set; } = PdfSpreadMode.None;
}

View file

@ -8,7 +8,7 @@ using API.Services.Tasks.Scanner.Parser;
namespace API.DTOs;
public class VolumeDto : IHasReadTimeEstimate
public class VolumeDto : IHasReadTimeEstimate, IHasCoverImage
{
public int Id { get; set; }
/// <inheritdoc cref="Volume.MinNumber"/>
@ -62,4 +62,8 @@ public class VolumeDto : IHasReadTimeEstimate
{
return MinNumber.Is(Parser.SpecialVolumeNumber);
}
public string CoverImage { get; set; }
public string PrimaryColor { get; set; }
public string SecondaryColor { get; set; }
}