LANCommander/LANCommander.Launcher/Startup/ApplicationSettings.cs
2025-11-23 20:53:45 -06:00

31 lines
No EOL
978 B
C#

using LANCommander.Launcher.Models;
using LANCommander.SDK.Extensions;
using LANCommander.SDK.Providers;
using Microsoft.Extensions.Configuration;
using Microsoft.Extensions.DependencyInjection;
using Photino.Blazor;
using Serilog;
namespace LANCommander.Launcher.Startup;
public static class ApplicationSettings
{
public static PhotinoBlazorAppBuilder AddSettings(this PhotinoBlazorAppBuilder builder)
{
Log.Debug("Loading settings file");
var configurationBuilder = new ConfigurationBuilder();
var configuration = configurationBuilder.ReadFromFile<Settings.Settings>();
var refresher = configurationBuilder.ReadFromServer<Settings.Settings>(configuration);
configuration = configurationBuilder.Build();
builder.Services.Configure<Settings.Settings>(configuration);
builder.Services.AddSingleton(refresher);
Log.Debug("Validating settings");
return builder;
}
}