Smart Filters & Dashboard Customization (#2282)
Co-authored-by: Robbie Davis <robbie@therobbiedavis.com>
This commit is contained in:
parent
3d501c9532
commit
84f85b4f24
92 changed files with 7149 additions and 555 deletions
30
API/DTOs/Dashboard/DashboardStreamDto.cs
Normal file
30
API/DTOs/Dashboard/DashboardStreamDto.cs
Normal file
|
@ -0,0 +1,30 @@
|
|||
using API.DTOs.Filtering.v2;
|
||||
using API.Entities;
|
||||
using API.Entities.Enums;
|
||||
|
||||
namespace API.DTOs.Dashboard;
|
||||
|
||||
public class DashboardStreamDto
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public required string Name { get; set; }
|
||||
/// <summary>
|
||||
/// Is System Provided
|
||||
/// </summary>
|
||||
public bool IsProvided { get; set; }
|
||||
/// <summary>
|
||||
/// Sort Order on the Dashboard
|
||||
/// </summary>
|
||||
public int Order { get; set; }
|
||||
/// <summary>
|
||||
/// If Not IsProvided, the appropriate smart filter
|
||||
/// </summary>
|
||||
/// <remarks>Encoded filter</remarks>
|
||||
public string? SmartFilterEncoded { get; set; }
|
||||
public int? SmartFilterId { get; set; }
|
||||
/// <summary>
|
||||
/// For system provided
|
||||
/// </summary>
|
||||
public DashboardStreamType StreamType { get; set; }
|
||||
public bool Visible { get; set; }
|
||||
}
|
|
@ -1,7 +1,7 @@
|
|||
using System;
|
||||
using API.Entities.Enums;
|
||||
|
||||
namespace API.DTOs;
|
||||
namespace API.DTOs.Dashboard;
|
||||
/// <summary>
|
||||
/// This is a representation of a Series with some amount of underlying files within it. This is used for Recently Updated Series section
|
||||
/// </summary>
|
|
@ -1,7 +1,7 @@
|
|||
using System;
|
||||
using API.Entities.Enums;
|
||||
|
||||
namespace API.DTOs;
|
||||
namespace API.DTOs.Dashboard;
|
||||
|
||||
/// <summary>
|
||||
/// A mesh of data for Recently added volume/chapters
|
13
API/DTOs/Dashboard/SmartFilterDto.cs
Normal file
13
API/DTOs/Dashboard/SmartFilterDto.cs
Normal file
|
@ -0,0 +1,13 @@
|
|||
using API.DTOs.Filtering.v2;
|
||||
|
||||
namespace API.DTOs.Dashboard;
|
||||
|
||||
public class SmartFilterDto
|
||||
{
|
||||
public int Id { get; set; }
|
||||
public required string Name { get; set; }
|
||||
/// <summary>
|
||||
/// This is the Filter url encoded. It is decoded and reconstructed into a <see cref="FilterV2Dto"/>
|
||||
/// </summary>
|
||||
public required string Filter { get; set; }
|
||||
}
|
9
API/DTOs/Dashboard/UpdateDashboardStreamPositionDto.cs
Normal file
9
API/DTOs/Dashboard/UpdateDashboardStreamPositionDto.cs
Normal file
|
@ -0,0 +1,9 @@
|
|||
namespace API.DTOs.Dashboard;
|
||||
|
||||
public class UpdateDashboardStreamPositionDto
|
||||
{
|
||||
public int FromPosition { get; set; }
|
||||
public int ToPosition { get; set; }
|
||||
public int DashboardStreamId { get; set; }
|
||||
public string StreamName { get; set; }
|
||||
}
|
|
@ -25,5 +25,9 @@ public enum SortField
|
|||
/// <summary>
|
||||
/// Release Year of the Series
|
||||
/// </summary>
|
||||
ReleaseYear = 6
|
||||
ReleaseYear = 6,
|
||||
/// <summary>
|
||||
/// Last time the user had any reading progress
|
||||
/// </summary>
|
||||
ReadProgress = 7,
|
||||
}
|
||||
|
|
|
@ -36,5 +36,10 @@ public enum FilterField
|
|||
/// <summary>
|
||||
/// File path
|
||||
/// </summary>
|
||||
FilePath = 25
|
||||
FilePath = 25,
|
||||
/// <summary>
|
||||
/// On Want To Read or Not
|
||||
/// </summary>
|
||||
WantToRead = 26
|
||||
|
||||
}
|
||||
|
|
|
@ -10,6 +10,10 @@ namespace API.DTOs.Filtering.v2;
|
|||
/// </summary>
|
||||
public class FilterV2Dto
|
||||
{
|
||||
/// <summary>
|
||||
/// Not used in the UI.
|
||||
/// </summary>
|
||||
public int Id { get; set; }
|
||||
/// <summary>
|
||||
/// The name of the filter
|
||||
/// </summary>
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue