using Microsoft.AspNetCore.Components.Authorization; using Microsoft.Extensions.Localization; using Oqtane.Interfaces; using Oqtane.Providers; using Oqtane.Services; using Oqtane.Shared; using Radzen; namespace Microsoft.Extensions.DependencyInjection { public static class OqtaneServiceCollectionExtensions { public static IServiceCollection AddOqtaneAuthentication(this IServiceCollection services) { services.AddAuthorizationCore(); services.AddCascadingAuthenticationState(); services.AddScoped(); services.AddScoped(s => s.GetRequiredService()); return services; } public static IServiceCollection AddOqtaneClientScopedServices(this IServiceCollection services) { services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddScoped(); // providers services.AddScoped(); services.AddScoped(); services.AddScoped(); services.AddRadzenComponents(); var localizer = services.BuildServiceProvider().GetService>(); Oqtane.Modules.Controls.RadzenEditorDefinitions.Localizer = localizer; return services; } } }