Implemented basic ui for server sharing. Extracted server authorization. Refactoring and small improvements
This commit is contained in:
@@ -23,6 +23,13 @@ public class ServerService
|
||||
$"api/client/servers?page={page}&pageSize={perPage}"
|
||||
);
|
||||
}
|
||||
|
||||
public async Task<PagedData<ServerDetailResponse>> GetSharedServers(int page, int perPage)
|
||||
{
|
||||
return await HttpApiClient.GetJson<PagedData<ServerDetailResponse>>(
|
||||
$"api/client/servers/shared?page={page}&pageSize={perPage}"
|
||||
);
|
||||
}
|
||||
|
||||
public async Task<ServerDetailResponse> GetServer(int serverId)
|
||||
{
|
||||
|
||||
34
MoonlightServers.Frontend/Services/ServerShareService.cs
Normal file
34
MoonlightServers.Frontend/Services/ServerShareService.cs
Normal file
@@ -0,0 +1,34 @@
|
||||
using MoonCore.Attributes;
|
||||
using MoonCore.Helpers;
|
||||
using MoonCore.Models;
|
||||
using MoonlightServers.Shared.Http.Requests.Client.Servers.Shares;
|
||||
using MoonlightServers.Shared.Http.Responses.Client.Servers.Shares;
|
||||
|
||||
namespace MoonlightServers.Frontend.Services;
|
||||
|
||||
[Scoped]
|
||||
public class ServerShareService
|
||||
{
|
||||
private readonly HttpApiClient ApiClient;
|
||||
|
||||
public ServerShareService(HttpApiClient apiClient)
|
||||
{
|
||||
ApiClient = apiClient;
|
||||
}
|
||||
|
||||
public async Task<PagedData<ServerShareResponse>> Get(int id, int page, int pageSize)
|
||||
=> await ApiClient.GetJson<PagedData<ServerShareResponse>>(
|
||||
$"api/client/servers/{id}/shares?page={page}&pageSize={pageSize}");
|
||||
|
||||
public async Task<ServerShareResponse> Get(int id, int shareId)
|
||||
=> await ApiClient.GetJson<ServerShareResponse>($"api/client/servers/{id}/shares/{shareId}");
|
||||
|
||||
public async Task<ServerShareResponse> Create(int id, CreateShareRequest request)
|
||||
=> await ApiClient.PostJson<ServerShareResponse>($"api/client/servers/{id}/shares", request);
|
||||
|
||||
public async Task<ServerShareResponse> Update(int id, int shareId, UpdateShareRequest request)
|
||||
=> await ApiClient.PatchJson<ServerShareResponse>($"api/client/servers/{id}/shares/{shareId}", request);
|
||||
|
||||
public async Task Delete(int id, int shareId)
|
||||
=> await ApiClient.Delete($"api/client/servers/{id}/shares/{shareId}");
|
||||
}
|
||||
Reference in New Issue
Block a user