using Blazorise; using Blazorise.Icons.Material; using Blazorise.LoadingIndicator; using Blazorise.Material; //using Blazorise.Bootstrap; //using Blazorise.Icons.FontAwesome; using Gremlin_BlazorServer.Areas.Identity; using Gremlin_BlazorServer.Data; using Gremlin_BlazorServer.Data.DBClasses; using Gremlin_BlazorServer.Services; using Microsoft.AspNetCore.Components.Authorization; using Microsoft.AspNetCore.Identity; using Microsoft.EntityFrameworkCore; WebApplicationBuilder builder = WebApplication.CreateBuilder(args); // Add services to the container. builder.Services.AddRazorPages(); builder.Services.AddServerSideBlazor(); builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddScoped(); builder.Services.AddBlazorise(options => { options.Immediate = true; }) //.AddBootstrapProviders() //.AddBootstrapComponents() //.AddFontAwesomeIcons() .AddMaterialProviders() .AddMaterialIcons(); builder.Services.AddOptions(); builder.Services.AddLoadingIndicator(); //Auth const string connection = "server0"; string connectionString = builder.Configuration.GetConnectionString(connection) ?? throw new InvalidOperationException($"Connection string '{connection}' not found."); ServerVersion serverVersion = ServerVersion.AutoDetect(connectionString); builder.Services.AddDbContext( options => options.UseMySql(connectionString, serverVersion) ); builder.Services .AddDefaultIdentity(options => options.SignIn.RequireConfirmedAccount = true) .AddEntityFrameworkStores(); builder.Services.AddScoped< AuthenticationStateProvider, RevalidatingIdentityAuthenticationStateProvider >(); builder.Services.AddControllersWithViews(); // builder.WebHost.UseWebRoot("wwwroot"); builder.WebHost.UseStaticWebAssets(); builder.WebHost.UseUrls("https://*:5000"); WebApplication app = builder.Build(); // Configure the HTTP request pipeline. if (!app.Environment.IsDevelopment()) { _ = app.UseExceptionHandler("/Error"); // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts. _ = app.UseHsts(); } app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseRouting(); //Auth app.UseAuthorization(); app.MapControllers(); app.MapBlazorHub(); app.MapFallbackToPage("/_Host"); app.Run();