Refactored ui. Improved console experience. Added command endpoint

This commit is contained in:
2025-07-18 21:16:52 +02:00
parent f8c11b2dd8
commit 265a4b280b
43 changed files with 479 additions and 149 deletions

View File

@@ -5,7 +5,7 @@
@using MoonCore.Helpers
@using Moonlight.Shared.Http.Responses.Admin.Users
@using MoonlightServers.Shared.Http.Requests.Admin.Servers
@using MoonlightServers.Frontend.UI.Components.Servers.CreateServerPartials
@using MoonlightServers.Frontend.UI.Components.Servers.CreatePartials
@using MoonlightServers.Shared.Http.Responses.Admin.NodeAllocations
@using MoonlightServers.Shared.Http.Responses.Admin.Nodes
@using MoonlightServers.Shared.Http.Responses.Admin.Stars
@@ -18,11 +18,11 @@
<PageHeader Title="Create Server">
<a href="/admin/servers/all" class="btn btn-secondary">
<i class="icon-chevron-left mr-1"></i>
<i class="icon-chevron-left"></i>
Back
</a>
<WButton OnClick="_ => Form.Submit()" CssClasses="btn btn-primary">
<i class="icon-check mr-1"></i>
<i class="icon-check"></i>
Create
</WButton>
</PageHeader>
@@ -31,16 +31,16 @@
<HandleForm @ref="Form" Model="Request" OnValidSubmit="OnSubmit">
<Tabs>
<Tab Name="General">
<GeneralServerCreate Request="Request" Parent="this" />
<General Request="Request" Parent="this" />
</Tab>
<Tab Name="Allocations">
<AllocationsServerCreate Request="Request" Parent="this" />
<Allocations Request="Request" Parent="this" />
</Tab>
<Tab Name="Variables">
<VariablesServerCreate Request="Request" Parent="this" />
<Variables Request="Request" Parent="this" />
</Tab>
<Tab Name="Advanced">
<AdvancedServerCreate Request="Request" />
<Advanced Request="Request" />
</Tab>
</Tabs>
</HandleForm>

View File

@@ -33,7 +33,13 @@
<Pagination TItem="ServerResponse" ItemSource="LoadData" />
<DataTableColumn TItem="ServerResponse" Field="@(x => x.Id)" Name="Id"/>
<DataTableColumn TItem="ServerResponse" Field="@(x => x.Name)" Name="Name"/>
<DataTableColumn TItem="ServerResponse" Field="@(x => x.Name)" Name="Name">
<ColumnTemplate>
<a class="text-primary" href="/admin/servers/all/update/@context.Id">
@context.Name
</a>
</ColumnTemplate>
</DataTableColumn>
<DataTableColumn TItem="ServerResponse" Field="@(x => x.NodeId)" Name="Node">
<ColumnTemplate>
@{

View File

@@ -6,7 +6,7 @@
@using Moonlight.Shared.Http.Responses.Admin.Users
@using MoonlightServers.Shared.Http.Requests.Admin.Servers
@using MoonlightServers.Shared.Http.Responses.Admin.Servers
@using MoonlightServers.Frontend.UI.Components.Servers.UpdateServerPartials
@using MoonlightServers.Frontend.UI.Components.Servers.UpdatePartials
@using MoonlightServers.Shared.Http.Responses.Admin.NodeAllocations
@inject HttpApiClient ApiClient
@@ -18,11 +18,11 @@
<LazyLoader Load="Load">
<PageHeader Title="Update Server">
<a href="/admin/servers/all" class="btn btn-secondary">
<i class="icon-chevron-left mr-1"></i>
<i class="icon-chevron-left"></i>
Back
</a>
<WButton OnClick="_ => Form.Submit()" CssClasses="btn btn-primary">
<i class="icon-check mr-1"></i>
<i class="icon-check"></i>
Update
</WButton>
</PageHeader>
@@ -31,16 +31,16 @@
<HandleForm @ref="Form" Model="Request" OnValidSubmit="OnSubmit">
<Tabs>
<Tab Name="General">
<GeneralServerUpdate Request="Request" Owner="Owner"/>
<General Request="Request" Parent="this"/>
</Tab>
<Tab Name="Allocations">
<AllocationsServerUpdate Request="Request" Server="Server" Allocations="Allocations"/>
<Allocations Request="Request" Server="Server" Parent="this"/>
</Tab>
<Tab Name="Variables">
<VariablesServerUpdate Request="Request" Server="Server"/>
<Variables Request="Request" Server="Server"/>
</Tab>
<Tab Name="Advanced">
<AdvancedServerUpdate Request="Request"/>
<Advanced Request="Request"/>
</Tab>
</Tabs>
</HandleForm>
@@ -55,8 +55,8 @@
private UpdateServerRequest Request;
private ServerResponse Server;
private List<NodeAllocationResponse> Allocations = new();
private UserResponse Owner;
public List<NodeAllocationResponse> Allocations = new();
public UserResponse Owner;
private async Task Load(LazyLoader _)
{

View File

@@ -13,11 +13,11 @@
<PageHeader Title="Create Node">
<a href="/admin/servers/nodes" class="btn btn-secondary">
<i class="icon-chevron-left mr-1"></i>
<i class="icon-chevron-left"></i>
Back
</a>
<WButton OnClick="_ => Form.Submit()" CssClasses="btn btn-primary">
<i class="icon-check mr-1"></i>
<i class="icon-check"></i>
Create
</WButton>
</PageHeader>

View File

@@ -5,7 +5,7 @@
@using MoonCore.Helpers
@using MoonlightServers.Shared.Http.Requests.Admin.Nodes
@using MoonlightServers.Shared.Http.Responses.Admin.Nodes
@using MoonlightServers.Frontend.UI.Components.Nodes.UpdateNodePartials
@using MoonlightServers.Frontend.UI.Components.Nodes.UpdatePartials
@inject HttpApiClient ApiClient
@inject NavigationManager Navigation
@@ -16,11 +16,11 @@
<LazyLoader Load="Load">
<PageHeader Title="@Node.Name">
<a href="/admin/servers/nodes" class="btn btn-secondary">
<i class="icon-chevron-left mr-1"></i>
<i class="icon-chevron-left"></i>
Back
</a>
<WButton OnClick="_ => Form.Submit()" CssClasses="btn btn-primary">
<i class="icon-check mr-1"></i>
<i class="icon-check"></i>
Update
</WButton>
</PageHeader>
@@ -30,19 +30,19 @@
<Tabs>
<Tab Name="Overview">
<OverviewNodeUpdate Node="Node" />
<Overview Node="Node" />
</Tab>
<Tab Name="Settings">
<GeneralNodeUpdate Request="Request"/>
<General Request="Request"/>
</Tab>
<Tab Name="Allocations">
<AllocationsNodeUpdate Node="Node"/>
<Allocations Node="Node"/>
</Tab>
<Tab Name="Advanced Settings">
<AdvancedNodeUpdate Request="Request"/>
<Advanced Request="Request"/>
</Tab>
</Tabs>

View File

@@ -14,11 +14,11 @@
<PageHeader Title="Create Star">
<a href="/admin/servers/stars" class="btn btn-secondary">
<i class="icon-chevron-left mr-1"></i>
<i class="icon-chevron-left"></i>
Back
</a>
<WButton OnClick="_ => Form.Submit()" CssClasses="btn btn-primary">
<i class="icon-check mr-1"></i>
<i class="icon-check"></i>
Create
</WButton>
</PageHeader>

View File

@@ -25,7 +25,7 @@
<PageHeader Title="Stars">
<InputFile id="import-file" hidden="" multiple OnChange="OnImportFiles"/>
<label for="import-file" class="btn btn-accent cursor-pointer">
<i class="icon-file-up mr-2"></i>
<i class="icon-file-up"></i>
Import
</label>

View File

@@ -5,7 +5,7 @@
@using MoonCore.Helpers
@using MoonlightServers.Shared.Http.Requests.Admin.Stars
@using MoonlightServers.Shared.Http.Responses.Admin.Stars
@using MoonlightServers.Frontend.UI.Components.Stars.UpdateStarPartials
@using MoonlightServers.Frontend.UI.Components.Stars.UpdatePartials
@inject HttpApiClient ApiClient
@inject NavigationManager Navigation
@@ -16,11 +16,11 @@
<LazyLoader Load="Load">
<PageHeader Title="Update Star">
<a href="/admin/servers/stars" class="btn btn-secondary">
<i class="icon-chevron-left mr-1"></i>
<i class="icon-chevron-left"></i>
Back
</a>
<WButton OnClick="_ => Form.Submit()" CssClasses="btn btn-primary">
<i class="icon-check mr-1"></i>
<i class="icon-check"></i>
Update
</WButton>
</PageHeader>
@@ -30,31 +30,31 @@
<Tabs>
<Tab Name="General">
<GeneralStarUpdate Request="Request" />
<General Request="Request" />
</Tab>
<Tab Name="Start, Stop & Status">
<StartStopStatusStarUpdate Request="Request" />
<StartStopStatus Request="Request" />
</Tab>
<Tab Name="Parse Configuration">
<ParseConfigStarUpdate Request="Request" />
<ParseConfig Request="Request" />
</Tab>
<Tab Name="Installation">
<InstallationStarUpdate Request="Request" />
<Installation Request="Request" />
</Tab>
<Tab Name="Variables">
<VariablesStarUpdate Star="Detail" />
<Variables Star="Detail" />
</Tab>
<Tab Name="Docker Images">
<DockerImageStarUpdate Star="Detail" />
<DockerImage Star="Detail" />
</Tab>
<Tab Name="Miscellaneous">
<MiscStarUpdate Star="Detail" Request="Request" />
<Misc Star="Detail" Request="Request" />
</Tab>
</Tabs>