using FluentValidation; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using zero.Core.Api; using zero.Core.Entities; using zero.Core.Extensions; using zero.Core.Messages; using zero.Core.Options; using zero.Core.Plugins; using zero.Core.Utils; using zero.Core.Validation; using zero.Web.Mapper; using zero.Web.Sections; namespace zero.Web.Defaults { internal class ZeroBackofficePlugin : IZeroPlugin { public void ConfigureServices(IServiceCollection services, IConfiguration configuration) { //services.AddAll(typeof(IValidator<>), ServiceLifetime.Scoped); //services.AddAll(typeof(IValidator), ServiceLifetime.Scoped); services.AddSingleton(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient, ApplicationValidator>(); services.AddTransient, CountryValidator>(); services.AddTransient, LanguageValidator>(); services.AddTransient, TranslationValidator>(); services.AddTransient, PageValidator>(); services.AddTransient, MediaValidator>(); services.AddTransient, MediaFolderValidator>(); services.AddTransient, UserRoleValidator>(); services.AddTransient, BackofficeUserValidator>(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); services.AddTransient(); } public void Configure(IZeroPluginOptions plugin, IZeroOptions zero) { plugin.Name = "zero.Defaults"; plugin.LocalizationPaths.Add("~/Resources/Localization/zero.{lang}.json"); zero.Sections.Add(); zero.Sections.Add(); zero.Sections.Add(); zero.Sections.Add(); zero.Sections.Add(); zero.Settings.AddGroup(); //zero.Settings.AddGroup(); zero.Mapper.Add(); zero.Mapper.Add(); zero.Mapper.Add(); zero.Mapper.Add(); zero.Mapper.Add(); zero.Mapper.Add(); zero.Mapper.Add(); zero.Permissions.AddCollection(); zero.Permissions.AddCollection(); zero.Permissions.AddCollection(); zero.Permissions.AddCollection(); } } }