[frontend] Add Instance Metadata service
This commit is contained in:
parent
09b39a64ea
commit
11575e4daf
4 changed files with 28 additions and 0 deletions
|
@ -0,0 +1,10 @@
|
|||
using Iceshrimp.Frontend.Core.Services;
|
||||
using Iceshrimp.Shared.Schemas.Web;
|
||||
|
||||
namespace Iceshrimp.Frontend.Core.ControllerModels;
|
||||
|
||||
internal class InstanceControllerModel(ApiClient api)
|
||||
{
|
||||
public Task<InstanceResponse> GetInstance() =>
|
||||
api.CallAsync<InstanceResponse>(HttpMethod.Get, "/instance");
|
||||
}
|
|
@ -8,6 +8,7 @@ internal class ApiService(ApiClient client)
|
|||
public readonly AuthControllerModel Auth = new(client);
|
||||
public readonly DriveControllerModel Drive = new(client);
|
||||
public readonly EmojiControllerModel Emoji = new(client);
|
||||
public readonly InstanceControllerModel Instance = new(client);
|
||||
public readonly NoteControllerModel Notes = new(client);
|
||||
public readonly NotificationControllerModel Notifications = new(client);
|
||||
public readonly SearchControllerModel Search = new(client);
|
||||
|
|
16
Iceshrimp.Frontend/Core/Services/MetadataService.cs
Normal file
16
Iceshrimp.Frontend/Core/Services/MetadataService.cs
Normal file
|
@ -0,0 +1,16 @@
|
|||
using Iceshrimp.Shared.Schemas.Web;
|
||||
using Microsoft.AspNetCore.Components;
|
||||
|
||||
namespace Iceshrimp.Frontend.Core.Services;
|
||||
|
||||
internal class MetadataService
|
||||
{
|
||||
[Inject] private ApiService Api { get; set; }
|
||||
public Lazy<Task<InstanceResponse>> Instance { get; set; }
|
||||
|
||||
public MetadataService(ApiService api)
|
||||
{
|
||||
Api = api;
|
||||
Instance = new Lazy<Task<InstanceResponse>>(() => Api.Instance.GetInstance());
|
||||
}
|
||||
}
|
|
@ -25,6 +25,7 @@ builder.Services.AddScoped<AuthenticationStateProvider, CustomAuthStateProvider>
|
|||
builder.Services.AddSingleton<ComposeService>();
|
||||
builder.Services.AddSingleton<StateService>();
|
||||
builder.Services.AddSingleton<EmojiService>();
|
||||
builder.Services.AddSingleton<MetadataService>();
|
||||
builder.Services.AddSingleton<VersionService>();
|
||||
builder.Services.AddSingleton<MessageService>();
|
||||
builder.Services.AddSingleton<GlobalComponentSvc>();
|
||||
|
|
Loading…
Add table
Reference in a new issue