[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 AuthControllerModel Auth = new(client);
|
||||||
public readonly DriveControllerModel Drive = new(client);
|
public readonly DriveControllerModel Drive = new(client);
|
||||||
public readonly EmojiControllerModel Emoji = new(client);
|
public readonly EmojiControllerModel Emoji = new(client);
|
||||||
|
public readonly InstanceControllerModel Instance = new(client);
|
||||||
public readonly NoteControllerModel Notes = new(client);
|
public readonly NoteControllerModel Notes = new(client);
|
||||||
public readonly NotificationControllerModel Notifications = new(client);
|
public readonly NotificationControllerModel Notifications = new(client);
|
||||||
public readonly SearchControllerModel Search = 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<ComposeService>();
|
||||||
builder.Services.AddSingleton<StateService>();
|
builder.Services.AddSingleton<StateService>();
|
||||||
builder.Services.AddSingleton<EmojiService>();
|
builder.Services.AddSingleton<EmojiService>();
|
||||||
|
builder.Services.AddSingleton<MetadataService>();
|
||||||
builder.Services.AddSingleton<VersionService>();
|
builder.Services.AddSingleton<VersionService>();
|
||||||
builder.Services.AddSingleton<MessageService>();
|
builder.Services.AddSingleton<MessageService>();
|
||||||
builder.Services.AddSingleton<GlobalComponentSvc>();
|
builder.Services.AddSingleton<GlobalComponentSvc>();
|
||||||
|
|
Loading…
Add table
Reference in a new issue