Catalog/CatalogLite/Program.cs
Maddo 181229aa41
Some checks failed
Build Windows Avalonia / build (push) Failing after 1m43s
Build Windows Avalonia / release (push) Has been skipped
Catalog Lite
2026-05-26 21:47:55 +02:00

45 lines
No EOL
1.4 KiB
C#

using Avalonia;
using MaddoShared;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;
namespace CatalogLite;
internal static class Program
{
public static IServiceProvider ServiceProvider { get; private set; } = default!;
[STAThread]
public static int Main(string[] args)
{
var services = new ServiceCollection();
ConfigureServices(services);
ServiceProvider = services.BuildServiceProvider();
BuildAvaloniaApp().StartWithClassicDesktopLifetime(args ?? []);
return 0;
}
public static AppBuilder BuildAvaloniaApp()
=> AppBuilder.Configure<App>()
.UsePlatformDetect()
.LogToTrace();
private static void ConfigureServices(IServiceCollection services)
{
services.AddSingleton<PicSettings>();
services.AddSingleton<CatalogConfigurationLoader>();
services.AddTransient<ImageCreatorImageSharp>();
services.AddTransient<IImageCreator>(sp => sp.GetRequiredService<ImageCreatorImageSharp>());
services.AddTransient<ImageCreationService>();
services.AddTransient<ImageProcessingCoordinator>();
services.AddTransient<LiteCatalogViewModel>();
services.AddTransient<MainWindow>();
services.AddLogging(builder =>
{
builder.AddConsole();
builder.SetMinimumLevel(LogLevel.Information);
});
}
}