24 lines
911 B
C#
24 lines
911 B
C#
using Microsoft.AspNetCore.Components.WebAssembly.Hosting;
|
|
using Microsoft.FluentUI.AspNetCore.Components;
|
|
using Microsoft.AspNetCore.Components.Authorization;
|
|
using QuantEngine.Web.Client.Services;
|
|
using QuantEngine.Web.Client.Infrastructure;
|
|
|
|
var builder = WebAssemblyHostBuilder.CreateDefault(args);
|
|
|
|
// Register Fluent UI
|
|
builder.Services.AddFluentUIComponents();
|
|
|
|
// Register LocalStorage for cross-platform session persistence
|
|
builder.Services.AddScoped<LocalStorageService>();
|
|
|
|
// Authentication setup in WebAssembly client
|
|
builder.Services.AddAuthorizationCore();
|
|
builder.Services.AddCascadingAuthenticationState();
|
|
builder.Services.AddScoped<AuthenticationStateProvider, CustomAuthenticationStateProvider>();
|
|
|
|
// HttpClient register (API-First standard)
|
|
builder.Services.AddScoped(sp => new HttpClient { BaseAddress = new Uri(builder.HostEnvironment.BaseAddress) });
|
|
|
|
await builder.Build().RunAsync();
|