using System.Collections.Generic;
using API.Entities.Enums.Theme;
using API.Services;
namespace API.DTOs.Theme;
///
/// Represents a set of css overrides the user can upload to Kavita and will load into webui
///
public class SiteThemeDto
{
public int Id { get; set; }
///
/// Name of the Theme
///
public required string Name { get; set; }
///
/// Normalized name for lookups
///
public required string NormalizedName { get; set; }
///
/// File path to the content. Stored under .
/// Must be a .css file
///
public required string FileName { get; set; }
///
/// Only one theme can have this. Will auto-set this as default for new user accounts
///
public bool IsDefault { get; set; }
///
/// Where did the theme come from
///
public ThemeProvider Provider { get; set; }
public IList PreviewUrls { get; set; }
///
/// Information about the theme
///
public string Description { get; set; }
///
/// Author of the Theme (only applies to non-system provided themes)
///
public string Author { get; set; }
///
/// Last compatible version. System provided will always be most current
///
public string CompatibleVersion { get; set; }
public string Selector => "bg-" + Name.ToLower();
}