From 70b310adef92f15b6c386d03fbc2606ffae342b4 Mon Sep 17 00:00:00 2001 From: ChiaraBm Date: Sat, 23 Aug 2025 23:39:56 +0200 Subject: [PATCH] Implemented theme importing and exporting --- Moonlight.Client/Models/ThemeTransferModel.cs | 14 +++ .../Views/Admin/Sys/Customisation/Index.razor | 95 ++++++++++++++++++- 2 files changed, 107 insertions(+), 2 deletions(-) create mode 100644 Moonlight.Client/Models/ThemeTransferModel.cs diff --git a/Moonlight.Client/Models/ThemeTransferModel.cs b/Moonlight.Client/Models/ThemeTransferModel.cs new file mode 100644 index 00000000..164556f3 --- /dev/null +++ b/Moonlight.Client/Models/ThemeTransferModel.cs @@ -0,0 +1,14 @@ +using Moonlight.Shared.Misc; + +namespace Moonlight.Client.Models; + +public class ThemeTransferModel +{ + public string Name { get; set; } + public string Author { get; set; } + public string Version { get; set; } + public string? UpdateUrl { get; set; } + public string? DonateUrl { get; set; } + + public ApplicationTheme Content { get; set; } = new(); +} \ No newline at end of file diff --git a/Moonlight.Client/UI/Views/Admin/Sys/Customisation/Index.razor b/Moonlight.Client/UI/Views/Admin/Sys/Customisation/Index.razor index 912a8b2f..f2544cbb 100644 --- a/Moonlight.Client/UI/Views/Admin/Sys/Customisation/Index.razor +++ b/Moonlight.Client/UI/Views/Admin/Sys/Customisation/Index.razor @@ -1,9 +1,14 @@ @page "/admin/system/customisation" +@using System.Text.Json @using Microsoft.AspNetCore.Authorization @using MoonCore.Blazor.FlyonUi.DataTables +@using MoonCore.Blazor.FlyonUi.Helpers +@using MoonCore.Helpers @using MoonCore.Models +@using Moonlight.Client.Models @using Moonlight.Client.Services +@using Moonlight.Shared.Http.Requests.Admin.Sys.Theme @using Moonlight.Shared.Http.Responses.Admin @attribute [Authorize(Policy = "permissions:admin.system.theme")] @@ -11,6 +16,8 @@ @inject ThemeService ThemeService @inject AlertService AlertService @inject ToastService ToastService +@inject DownloadService DownloadService +@inject ILogger Logger @@ -24,13 +31,13 @@ Import -