Started implementing server share backend. Redesigned server authorization for api calls. Refactored controller names for servers. Moved some responses to correct namespace
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
using MoonlightServers.Frontend.Interfaces;
|
||||
using MoonlightServers.Frontend.Models;
|
||||
using MoonlightServers.Frontend.UI.Components.Servers.ServerTabs;
|
||||
using MoonlightServers.Shared.Http.Responses.Users.Servers;
|
||||
using MoonlightServers.Shared.Http.Responses.Client.Servers;
|
||||
|
||||
namespace MoonlightServers.Frontend.Implementations;
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
using MoonlightServers.Frontend.Models;
|
||||
using MoonlightServers.Shared.Http.Responses.Users.Servers;
|
||||
using MoonlightServers.Shared.Http.Responses.Client.Servers;
|
||||
|
||||
namespace MoonlightServers.Frontend.Interfaces;
|
||||
|
||||
|
||||
@@ -2,8 +2,8 @@ using MoonCore.Attributes;
|
||||
using MoonCore.Helpers;
|
||||
using MoonCore.Models;
|
||||
using MoonlightServers.Shared.Http.Requests.Client.Servers.Variables;
|
||||
using MoonlightServers.Shared.Http.Responses.Client.Servers;
|
||||
using MoonlightServers.Shared.Http.Responses.Client.Servers.Variables;
|
||||
using MoonlightServers.Shared.Http.Responses.Users.Servers;
|
||||
|
||||
namespace MoonlightServers.Frontend.Services;
|
||||
|
||||
@@ -45,6 +45,13 @@ public class ServerService
|
||||
);
|
||||
}
|
||||
|
||||
public async Task<ServerStatsResponse> GetStats(int serverId)
|
||||
{
|
||||
return await HttpApiClient.GetJson<ServerStatsResponse>(
|
||||
$"api/client/servers/{serverId}/stats"
|
||||
);
|
||||
}
|
||||
|
||||
public async Task<ServerWebSocketResponse> GetWebSocket(int serverId)
|
||||
{
|
||||
return await HttpApiClient.GetJson<ServerWebSocketResponse>(
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
@using MoonCore.Helpers
|
||||
@using MoonlightServers.Frontend.Services
|
||||
@using MoonlightServers.Shared.Enums
|
||||
@using MoonlightServers.Shared.Http.Responses.Users.Servers
|
||||
@using MoonlightServers.Shared.Http.Responses.Client.Servers
|
||||
|
||||
@inject ServerService ServerService
|
||||
@inject ILogger<ServerCard> Logger
|
||||
@@ -57,7 +58,7 @@
|
||||
<i class="icon-cpu"></i>
|
||||
</div>
|
||||
|
||||
<div class="ms-3">56,8%</div>
|
||||
<div class="ms-3">@(Stats.CpuUsage)%</div>
|
||||
</div>
|
||||
|
||||
<div class="bg-gray-900 bg-opacity-45 py-1 px-2 rounded-lg flex flex-row">
|
||||
@@ -65,7 +66,7 @@
|
||||
<i class="icon-memory-stick"></i>
|
||||
</div>
|
||||
|
||||
<div class="ms-3">4,2 GB / 8 GB</div>
|
||||
<div class="ms-3">@(Formatter.FormatSize(Stats.MemoryUsage)) / @(Formatter.FormatSize(ByteConverter.FromMegaBytes(Server.Memory).Bytes))</div>
|
||||
</div>
|
||||
|
||||
<div class="bg-gray-900 bg-opacity-45 py-1 px-2 rounded-lg flex flex-row">
|
||||
@@ -147,6 +148,7 @@
|
||||
[Parameter] public ServerDetailResponse Server { get; set; }
|
||||
|
||||
private ServerStatusResponse Status;
|
||||
private ServerStatsResponse Stats;
|
||||
|
||||
private bool IsFailed = false;
|
||||
private bool IsLoaded = false;
|
||||
@@ -159,6 +161,7 @@
|
||||
try
|
||||
{
|
||||
Status = await ServerService.GetStatus(Server.Id);
|
||||
Stats = await ServerService.GetStats(Server.Id);
|
||||
}
|
||||
catch (Exception e)
|
||||
{
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
@using Microsoft.AspNetCore.SignalR.Client
|
||||
@using MoonlightServers.Frontend.UI.Views.Client
|
||||
@using MoonlightServers.Shared.Enums
|
||||
@using MoonlightServers.Shared.Http.Responses.Users.Servers
|
||||
@using MoonlightServers.Shared.Http.Responses.Client.Servers
|
||||
|
||||
@code
|
||||
{
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
@using MoonlightServers.Shared.Http.Responses.Users.Servers
|
||||
@using MoonlightServers.Shared.Http.Responses.Client.Servers
|
||||
@{
|
||||
var gradient = Status switch
|
||||
{
|
||||
|
||||
@@ -4,13 +4,21 @@
|
||||
@using MoonCore.Blazor.Tailwind.Components
|
||||
@using MoonCore.Models
|
||||
@using MoonlightServers.Frontend.Services
|
||||
@using MoonlightServers.Shared.Http.Responses.Users.Servers
|
||||
@using MoonlightServers.Shared.Http.Responses.Client.Servers
|
||||
|
||||
@inject ServerService ServerService
|
||||
|
||||
<LazyLoader Load="Load">
|
||||
<div class="flex flex-col gap-y-5">
|
||||
@* Folder design idea
|
||||
@if (Servers.Length == 0)
|
||||
{
|
||||
<IconAlert Title="No servers found" Color="text-primary" Icon="icon-search">
|
||||
There are no servers linked to your account
|
||||
</IconAlert>
|
||||
}
|
||||
else
|
||||
{
|
||||
<div class="flex flex-col gap-y-5">
|
||||
@* Folder design idea
|
||||
<div class="w-full bg-gray-800 px-5 py-3.5 rounded-xl">
|
||||
<div class="flex items-center">
|
||||
<div class="bg-gray-900 bg-opacity-45 py-1 px-2 rounded-lg flex items-center">
|
||||
@@ -28,11 +36,12 @@
|
||||
</div>
|
||||
</div>
|
||||
*@
|
||||
@foreach (var server in Servers)
|
||||
{
|
||||
<ServerCard Server="server"/>
|
||||
}
|
||||
</div>
|
||||
@foreach (var server in Servers)
|
||||
{
|
||||
<ServerCard Server="server"/>
|
||||
}
|
||||
</div>
|
||||
}
|
||||
</LazyLoader>
|
||||
|
||||
@code
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
|
||||
@using Microsoft.AspNetCore.Http.Connections
|
||||
@using Microsoft.AspNetCore.SignalR.Client
|
||||
@using MoonlightServers.Shared.Http.Responses.Users.Servers
|
||||
@using MoonCore.Blazor.Tailwind.Components
|
||||
@using MoonCore.Exceptions
|
||||
@using MoonCore.Helpers
|
||||
@@ -11,6 +10,7 @@
|
||||
@using MoonlightServers.Frontend.Models
|
||||
@using MoonlightServers.Frontend.Services
|
||||
@using MoonlightServers.Shared.Enums
|
||||
@using MoonlightServers.Shared.Http.Responses.Client.Servers
|
||||
|
||||
@inject ServerService ServerService
|
||||
@inject NavigationManager Navigation
|
||||
|
||||
Reference in New Issue
Block a user