diff --git a/LANCommander.SDK/LANCommander.SDK.csproj b/LANCommander.SDK/LANCommander.SDK.csproj
index 7f402557..32bd8d94 100644
--- a/LANCommander.SDK/LANCommander.SDK.csproj
+++ b/LANCommander.SDK/LANCommander.SDK.csproj
@@ -2,7 +2,7 @@
netstandard2.0
- 0.8.0
+ 0.9.0
diff --git a/LANCommander/ApiMiddleware.cs b/LANCommander.Server/ApiMiddleware.cs
similarity index 88%
rename from LANCommander/ApiMiddleware.cs
rename to LANCommander.Server/ApiMiddleware.cs
index 93a86fbc..c6b6755e 100644
--- a/LANCommander/ApiMiddleware.cs
+++ b/LANCommander.Server/ApiMiddleware.cs
@@ -1,6 +1,6 @@
-using LANCommander.Services;
+using LANCommander.Server.Services;
-namespace LANCommander
+namespace LANCommander.Server
{
public class ApiMiddleware
{
diff --git a/LANCommander/App.razor b/LANCommander.Server/App.razor
similarity index 100%
rename from LANCommander/App.razor
rename to LANCommander.Server/App.razor
diff --git a/LANCommander/Areas/Identity/Pages/Account/AccessDenied.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/AccessDenied.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/AccessDenied.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/AccessDenied.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/AccessDenied.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/AccessDenied.cshtml.cs
similarity index 93%
rename from LANCommander/Areas/Identity/Pages/Account/AccessDenied.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/AccessDenied.cshtml.cs
index 969b60e9..6e258e8c 100644
--- a/LANCommander/Areas/Identity/Pages/Account/AccessDenied.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/AccessDenied.cshtml.cs
@@ -4,7 +4,7 @@
using Microsoft.AspNetCore.Mvc.RazorPages;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
///
/// This API supports the ASP.NET Core Identity default UI infrastructure and is not intended to be used
diff --git a/LANCommander/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml
similarity index 98%
rename from LANCommander/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml
index 8d87b56d..a04888f0 100644
--- a/LANCommander/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml
@@ -1,6 +1,6 @@
@page
-@using LANCommander.Models;
-@using LANCommander.Services;
+@using LANCommander.Server.Models;
+@using LANCommander.Server.Services;
@model FirstTimeSetupModel
@{
Layout = "/UI/Views/Shared/_LayoutBasic.cshtml";
diff --git a/LANCommander/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml.cs
similarity index 98%
rename from LANCommander/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml.cs
index 9dfb0312..7a52ad07 100644
--- a/LANCommander/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/FirstTimeSetup.cshtml.cs
@@ -12,7 +12,7 @@ using System.Threading;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authorization;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Identity.UI.Services;
using Microsoft.AspNetCore.Mvc;
@@ -20,7 +20,7 @@ using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.AspNetCore.WebUtilities;
using Microsoft.Extensions.Logging;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
public class FirstTimeSetupModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/ForgotPassword.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/ForgotPassword.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/ForgotPassword.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/ForgotPassword.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/ForgotPassword.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/ForgotPassword.cshtml.cs
similarity index 97%
rename from LANCommander/Areas/Identity/Pages/Account/ForgotPassword.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/ForgotPassword.cshtml.cs
index 1c2633b3..51e19356 100644
--- a/LANCommander/Areas/Identity/Pages/Account/ForgotPassword.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/ForgotPassword.cshtml.cs
@@ -8,14 +8,14 @@ using System.Text;
using System.Text.Encodings.Web;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Identity.UI.Services;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.AspNetCore.WebUtilities;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
public class ForgotPasswordModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/Login.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Login.cshtml
similarity index 98%
rename from LANCommander/Areas/Identity/Pages/Account/Login.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Login.cshtml
index cdabe7b5..73ca9bb9 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Login.cshtml
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Login.cshtml
@@ -1,6 +1,6 @@
@page
-@using LANCommander.Models;
-@using LANCommander.Services;
+@using LANCommander.Server.Models;
+@using LANCommander.Server.Services;
@model LoginModel
@{ Layout = "/UI/Views/Shared/_LayoutBasic.cshtml"; }
diff --git a/LANCommander/Areas/Identity/Pages/Account/Login.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/Login.cshtml.cs
similarity index 98%
rename from LANCommander/Areas/Identity/Pages/Account/Login.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/Login.cshtml.cs
index bc5b18df..81edcf12 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Login.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Login.cshtml.cs
@@ -8,16 +8,16 @@ using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Identity.UI.Services;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;
-using LANCommander.Services;
+using LANCommander.Server.Services;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
public class LoginModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/Logout.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Logout.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/Logout.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Logout.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/Logout.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/Logout.cshtml.cs
similarity index 90%
rename from LANCommander/Areas/Identity/Pages/Account/Logout.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/Logout.cshtml.cs
index dff342ea..7cf4de1a 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Logout.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Logout.cshtml.cs
@@ -5,13 +5,13 @@
using System;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
public class LogoutModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml.cs
similarity index 97%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml.cs
index caa98b9e..ed6e8873 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/ChangePassword.cshtml.cs
@@ -5,13 +5,13 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.Threading.Tasks;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.Extensions.Logging;
-namespace LANCommander.Areas.Identity.Pages.Account.Manage
+namespace LANCommander.Server.Areas.Identity.Pages.Account.Manage
{
public class ChangePasswordModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/Index.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/Index.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/Index.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/Index.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs
similarity index 97%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs
index 7c38f4e5..42aa42ad 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/Index.cshtml.cs
@@ -6,12 +6,12 @@ using System;
using System.ComponentModel.DataAnnotations;
using System.Text.Encodings.Web;
using System.Threading.Tasks;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
-namespace LANCommander.Areas.Identity.Pages.Account.Manage
+namespace LANCommander.Server.Areas.Identity.Pages.Account.Manage
{
public class IndexModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/ManageNavPages.cs b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/ManageNavPages.cs
similarity index 99%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/ManageNavPages.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/ManageNavPages.cs
index 7fe5fa0f..a968ec1f 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Manage/ManageNavPages.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/ManageNavPages.cs
@@ -5,7 +5,7 @@
using System;
using Microsoft.AspNetCore.Mvc.Rendering;
-namespace LANCommander.Areas.Identity.Pages.Account.Manage
+namespace LANCommander.Server.Areas.Identity.Pages.Account.Manage
{
///
/// This API supports the ASP.NET Core Identity default UI infrastructure and is not intended to be used
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml.cs
similarity index 97%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml.cs
index 15fbfe58..fd7617c5 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/SetPassword.cshtml.cs
@@ -5,12 +5,12 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.Threading.Tasks;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
-namespace LANCommander.Areas.Identity.Pages.Account.Manage
+namespace LANCommander.Server.Areas.Identity.Pages.Account.Manage
{
public class SetPasswordModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/_Layout.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/_Layout.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/_Layout.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/_Layout.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/Manage/_ManageNav.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/_ManageNav.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/Manage/_ManageNav.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Manage/_ManageNav.cshtml
diff --git a/LANCommander.Server/Areas/Identity/Pages/Account/Manage/_ViewImports.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/_ViewImports.cshtml
new file mode 100644
index 00000000..6a031124
--- /dev/null
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Manage/_ViewImports.cshtml
@@ -0,0 +1 @@
+@using LANCommander.Server.Areas.Identity.Pages.Account.Manage
\ No newline at end of file
diff --git a/LANCommander/Areas/Identity/Pages/Account/Register.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/Register.cshtml
similarity index 98%
rename from LANCommander/Areas/Identity/Pages/Account/Register.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/Register.cshtml
index a058e9db..c44cee90 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Register.cshtml
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Register.cshtml
@@ -1,6 +1,6 @@
@page
-@using LANCommander.Models;
-@using LANCommander.Services;
+@using LANCommander.Server.Models;
+@using LANCommander.Server.Services;
@model RegisterModel
@{ Layout = "/UI/Views/Shared/_LayoutBasic.cshtml"; }
@{
diff --git a/LANCommander/Areas/Identity/Pages/Account/Register.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/Register.cshtml.cs
similarity index 98%
rename from LANCommander/Areas/Identity/Pages/Account/Register.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/Register.cshtml.cs
index be7f3047..ef184635 100644
--- a/LANCommander/Areas/Identity/Pages/Account/Register.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/Register.cshtml.cs
@@ -12,16 +12,16 @@ using System.Threading;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authentication;
using Microsoft.AspNetCore.Authorization;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Identity.UI.Services;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.AspNetCore.WebUtilities;
using Microsoft.Extensions.Logging;
-using LANCommander.Services;
+using LANCommander.Server.Services;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
public class RegisterModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/ResetPassword.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/ResetPassword.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/ResetPassword.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/ResetPassword.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/ResetPassword.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/ResetPassword.cshtml.cs
similarity index 97%
rename from LANCommander/Areas/Identity/Pages/Account/ResetPassword.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/ResetPassword.cshtml.cs
index c2ed5197..577f984b 100644
--- a/LANCommander/Areas/Identity/Pages/Account/ResetPassword.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/ResetPassword.cshtml.cs
@@ -7,13 +7,13 @@ using System.ComponentModel.DataAnnotations;
using System.Text;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.AspNetCore.WebUtilities;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
public class ResetPasswordModel : PageModel
{
diff --git a/LANCommander/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml
diff --git a/LANCommander/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml.cs b/LANCommander.Server/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml.cs
similarity index 93%
rename from LANCommander/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml.cs
rename to LANCommander.Server/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml.cs
index 5344c14a..9e53a18f 100644
--- a/LANCommander/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml.cs
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/ResetPasswordConfirmation.cshtml.cs
@@ -5,7 +5,7 @@
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc.RazorPages;
-namespace LANCommander.Areas.Identity.Pages.Account
+namespace LANCommander.Server.Areas.Identity.Pages.Account
{
///
/// This API supports the ASP.NET Core Identity default UI infrastructure and is not intended to be used
diff --git a/LANCommander.Server/Areas/Identity/Pages/Account/_ViewImports.cshtml b/LANCommander.Server/Areas/Identity/Pages/Account/_ViewImports.cshtml
new file mode 100644
index 00000000..62e1748d
--- /dev/null
+++ b/LANCommander.Server/Areas/Identity/Pages/Account/_ViewImports.cshtml
@@ -0,0 +1 @@
+@using LANCommander.Server.Areas.Identity.Pages.Account
\ No newline at end of file
diff --git a/LANCommander/Areas/Identity/Pages/_ValidationScriptsPartial.cshtml b/LANCommander.Server/Areas/Identity/Pages/_ValidationScriptsPartial.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/_ValidationScriptsPartial.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/_ValidationScriptsPartial.cshtml
diff --git a/LANCommander.Server/Areas/Identity/Pages/_ViewImports.cshtml b/LANCommander.Server/Areas/Identity/Pages/_ViewImports.cshtml
new file mode 100644
index 00000000..041ade33
--- /dev/null
+++ b/LANCommander.Server/Areas/Identity/Pages/_ViewImports.cshtml
@@ -0,0 +1,6 @@
+@using Microsoft.AspNetCore.Identity
+@using LANCommander.Server.Areas.Identity
+@using LANCommander.Server.Areas.Identity.Pages
+@using LANCommander.Server.Data.Models
+@using LANCommander.Server.UI.Components
+@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
\ No newline at end of file
diff --git a/LANCommander/Areas/Identity/Pages/_ViewStart.cshtml b/LANCommander.Server/Areas/Identity/Pages/_ViewStart.cshtml
similarity index 100%
rename from LANCommander/Areas/Identity/Pages/_ViewStart.cshtml
rename to LANCommander.Server/Areas/Identity/Pages/_ViewStart.cshtml
diff --git a/LANCommander/AutoMapper.cs b/LANCommander.Server/AutoMapper.cs
similarity index 98%
rename from LANCommander/AutoMapper.cs
rename to LANCommander.Server/AutoMapper.cs
index bddde9c8..ecbd8616 100644
--- a/LANCommander/AutoMapper.cs
+++ b/LANCommander.Server/AutoMapper.cs
@@ -1,6 +1,6 @@
using AutoMapper;
-namespace LANCommander
+namespace LANCommander.Server
{
public class AutoMapper : Profile
{
diff --git a/LANCommander/Controllers/Api/ArchivesController.cs b/LANCommander.Server/Controllers/Api/ArchivesController.cs
similarity index 88%
rename from LANCommander/Controllers/Api/ArchivesController.cs
rename to LANCommander.Server/Controllers/Api/ArchivesController.cs
index 9fb851db..6bb7f262 100644
--- a/LANCommander/Controllers/Api/ArchivesController.cs
+++ b/LANCommander.Server/Controllers/Api/ArchivesController.cs
@@ -1,13 +1,13 @@
-using LANCommander.Data;
-using LANCommander.Data.Models;
-using LANCommander.Extensions;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/AuthController.cs b/LANCommander.Server/Controllers/Api/AuthController.cs
similarity index 98%
rename from LANCommander/Controllers/Api/AuthController.cs
rename to LANCommander.Server/Controllers/Api/AuthController.cs
index 1b96f648..366d2c47 100644
--- a/LANCommander/Controllers/Api/AuthController.cs
+++ b/LANCommander.Server/Controllers/Api/AuthController.cs
@@ -1,6 +1,6 @@
-using LANCommander.Data.Models;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
@@ -11,7 +11,7 @@ using System.Security.Claims;
using System.Security.Cryptography;
using System.Text;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
public class TokenModel
{
diff --git a/LANCommander/Controllers/Api/GameSavesController.cs b/LANCommander.Server/Controllers/Api/GameSavesController.cs
similarity index 92%
rename from LANCommander/Controllers/Api/GameSavesController.cs
rename to LANCommander.Server/Controllers/Api/GameSavesController.cs
index 1f95dc58..6efe86c1 100644
--- a/LANCommander/Controllers/Api/GameSavesController.cs
+++ b/LANCommander.Server/Controllers/Api/GameSavesController.cs
@@ -1,13 +1,13 @@
-using LANCommander.Data;
-using LANCommander.Data.Models;
-using LANCommander.Extensions;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/GamesController.cs b/LANCommander.Server/Controllers/Api/GamesController.cs
similarity index 94%
rename from LANCommander/Controllers/Api/GamesController.cs
rename to LANCommander.Server/Controllers/Api/GamesController.cs
index 7c325fb9..8251a6bd 100644
--- a/LANCommander/Controllers/Api/GamesController.cs
+++ b/LANCommander.Server/Controllers/Api/GamesController.cs
@@ -1,17 +1,17 @@
using AutoMapper;
-using LANCommander.Data;
-using LANCommander.Data.Enums;
-using LANCommander.Data.Models;
-using LANCommander.Extensions;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data;
+using LANCommander.Server.Data.Enums;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using ZiggyCreatures.Caching.Fusion;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/KeysController.cs b/LANCommander.Server/Controllers/Api/KeysController.cs
similarity index 94%
rename from LANCommander/Controllers/Api/KeysController.cs
rename to LANCommander.Server/Controllers/Api/KeysController.cs
index 44309148..95f649c8 100644
--- a/LANCommander/Controllers/Api/KeysController.cs
+++ b/LANCommander.Server/Controllers/Api/KeysController.cs
@@ -1,13 +1,13 @@
using AutoMapper;
-using LANCommander.Data;
-using LANCommander.Data.Models;
-using LANCommander.Extensions;
+using LANCommander.Server.Data;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Services;
using LANCommander.SDK.Models;
-using LANCommander.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/LauncherController.cs b/LANCommander.Server/Controllers/Api/LauncherController.cs
similarity index 96%
rename from LANCommander/Controllers/Api/LauncherController.cs
rename to LANCommander.Server/Controllers/Api/LauncherController.cs
index 9563469c..4e9e26c2 100644
--- a/LANCommander/Controllers/Api/LauncherController.cs
+++ b/LANCommander.Server/Controllers/Api/LauncherController.cs
@@ -1,10 +1,10 @@
using LANCommander.SDK.Models;
-using LANCommander.Services;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using Semver;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/MediaController.cs b/LANCommander.Server/Controllers/Api/MediaController.cs
similarity index 86%
rename from LANCommander/Controllers/Api/MediaController.cs
rename to LANCommander.Server/Controllers/Api/MediaController.cs
index bc929b19..ce729ebc 100644
--- a/LANCommander/Controllers/Api/MediaController.cs
+++ b/LANCommander.Server/Controllers/Api/MediaController.cs
@@ -1,14 +1,14 @@
using AutoMapper;
-using LANCommander.Data;
-using LANCommander.Data.Models;
-using LANCommander.Extensions;
-using LANCommander.Models;
+using LANCommander.Server.Data;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Models;
using LANCommander.SDK;
-using LANCommander.Services;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/PingController.cs b/LANCommander.Server/Controllers/Api/PingController.cs
similarity index 84%
rename from LANCommander/Controllers/Api/PingController.cs
rename to LANCommander.Server/Controllers/Api/PingController.cs
index 0551eb5d..9789b4f4 100644
--- a/LANCommander/Controllers/Api/PingController.cs
+++ b/LANCommander.Server/Controllers/Api/PingController.cs
@@ -1,6 +1,6 @@
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Route("api/[controller]")]
[ApiController]
diff --git a/LANCommander/Controllers/Api/PlaySessionsController.cs b/LANCommander.Server/Controllers/Api/PlaySessionsController.cs
similarity index 95%
rename from LANCommander/Controllers/Api/PlaySessionsController.cs
rename to LANCommander.Server/Controllers/Api/PlaySessionsController.cs
index 978ac35b..4826dc5f 100644
--- a/LANCommander/Controllers/Api/PlaySessionsController.cs
+++ b/LANCommander.Server/Controllers/Api/PlaySessionsController.cs
@@ -1,12 +1,12 @@
using AutoMapper;
-using LANCommander.Data.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/ProfileController.cs b/LANCommander.Server/Controllers/Api/ProfileController.cs
similarity index 95%
rename from LANCommander/Controllers/Api/ProfileController.cs
rename to LANCommander.Server/Controllers/Api/ProfileController.cs
index 7e19f95a..c37651fb 100644
--- a/LANCommander/Controllers/Api/ProfileController.cs
+++ b/LANCommander.Server/Controllers/Api/ProfileController.cs
@@ -1,6 +1,6 @@
-using LANCommander.Data.Models;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
@@ -11,7 +11,7 @@ using System.Security.Claims;
using System.Security.Cryptography;
using System.Text;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Route("api/[controller]")]
[Authorize(AuthenticationSchemes = "Bearer")]
diff --git a/LANCommander/Controllers/Api/RedistributablesController.cs b/LANCommander.Server/Controllers/Api/RedistributablesController.cs
similarity index 91%
rename from LANCommander/Controllers/Api/RedistributablesController.cs
rename to LANCommander.Server/Controllers/Api/RedistributablesController.cs
index 2f4cf9fa..d1b16819 100644
--- a/LANCommander/Controllers/Api/RedistributablesController.cs
+++ b/LANCommander.Server/Controllers/Api/RedistributablesController.cs
@@ -1,12 +1,12 @@
using AutoMapper;
-using LANCommander.Data.Models;
-using LANCommander.Extensions;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/SavesController.cs b/LANCommander.Server/Controllers/Api/SavesController.cs
similarity index 95%
rename from LANCommander/Controllers/Api/SavesController.cs
rename to LANCommander.Server/Controllers/Api/SavesController.cs
index 448562cb..c28739c2 100644
--- a/LANCommander/Controllers/Api/SavesController.cs
+++ b/LANCommander.Server/Controllers/Api/SavesController.cs
@@ -1,16 +1,16 @@
using AutoMapper;
-using LANCommander.Data;
-using LANCommander.Data.Models;
-using LANCommander.Extensions;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data;
+using LANCommander.Server.Data.Models;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Mvc;
using Microsoft.EntityFrameworkCore;
using System.Runtime.Intrinsics.X86;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/SettingsController.cs b/LANCommander.Server/Controllers/Api/SettingsController.cs
similarity index 87%
rename from LANCommander/Controllers/Api/SettingsController.cs
rename to LANCommander.Server/Controllers/Api/SettingsController.cs
index 6ebb1e6a..594687c2 100644
--- a/LANCommander/Controllers/Api/SettingsController.cs
+++ b/LANCommander.Server/Controllers/Api/SettingsController.cs
@@ -1,9 +1,9 @@
using AutoMapper;
-using LANCommander.Services;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Authorize(AuthenticationSchemes = "Bearer")]
[Route("api/[controller]")]
diff --git a/LANCommander/Controllers/Api/UploadController.cs b/LANCommander.Server/Controllers/Api/UploadController.cs
similarity index 92%
rename from LANCommander/Controllers/Api/UploadController.cs
rename to LANCommander.Server/Controllers/Api/UploadController.cs
index 7d07bf60..6048526c 100644
--- a/LANCommander/Controllers/Api/UploadController.cs
+++ b/LANCommander.Server/Controllers/Api/UploadController.cs
@@ -1,9 +1,9 @@
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers.Api
+namespace LANCommander.Server.Controllers.Api
{
[Route("api/[controller]")]
[ApiController]
diff --git a/LANCommander/Controllers/BaseController.cs b/LANCommander.Server/Controllers/BaseController.cs
similarity index 94%
rename from LANCommander/Controllers/BaseController.cs
rename to LANCommander.Server/Controllers/BaseController.cs
index 95a1b5ee..fae6bd87 100644
--- a/LANCommander/Controllers/BaseController.cs
+++ b/LANCommander.Server/Controllers/BaseController.cs
@@ -1,7 +1,7 @@
using Microsoft.AspNetCore.Mvc;
using System.Text.Json;
-namespace LANCommander.Controllers
+namespace LANCommander.Server.Controllers
{
public class BaseController : Controller
{
diff --git a/LANCommander/Controllers/DownloadController.cs b/LANCommander.Server/Controllers/DownloadController.cs
similarity index 94%
rename from LANCommander/Controllers/DownloadController.cs
rename to LANCommander.Server/Controllers/DownloadController.cs
index cd174873..c7ed2de8 100644
--- a/LANCommander/Controllers/DownloadController.cs
+++ b/LANCommander.Server/Controllers/DownloadController.cs
@@ -1,12 +1,12 @@
-using LANCommander.Data;
-using LANCommander.Extensions;
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Data;
+using LANCommander.Server.Extensions;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
-namespace LANCommander.Controllers
+namespace LANCommander.Server.Controllers
{
[Authorize]
public class DownloadController : Controller
diff --git a/LANCommander/Controllers/GamesController.cs b/LANCommander.Server/Controllers/GamesController.cs
similarity index 98%
rename from LANCommander/Controllers/GamesController.cs
rename to LANCommander.Server/Controllers/GamesController.cs
index 3cf5cf5e..9ada0651 100644
--- a/LANCommander/Controllers/GamesController.cs
+++ b/LANCommander.Server/Controllers/GamesController.cs
@@ -1,10 +1,10 @@
using LANCommander.SDK.Helpers;
-using LANCommander.Services;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System.IO.Compression;
-namespace LANCommander.Controllers
+namespace LANCommander.Server.Controllers
{
[Authorize(Roles = "Administrator")]
public class GamesController : BaseController
diff --git a/LANCommander/Controllers/RedistributablesController.cs b/LANCommander.Server/Controllers/RedistributablesController.cs
similarity index 97%
rename from LANCommander/Controllers/RedistributablesController.cs
rename to LANCommander.Server/Controllers/RedistributablesController.cs
index 691f5a75..73b46b07 100644
--- a/LANCommander/Controllers/RedistributablesController.cs
+++ b/LANCommander.Server/Controllers/RedistributablesController.cs
@@ -1,11 +1,11 @@
using AutoMapper;
using LANCommander.SDK.Helpers;
-using LANCommander.Services;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc;
using System.IO.Compression;
-namespace LANCommander.Controllers
+namespace LANCommander.Server.Controllers
{
[Authorize(Roles = "Administrator")]
public class RedistributablesController : BaseController
diff --git a/LANCommander/Controllers/ServerController.cs b/LANCommander.Server/Controllers/ServerController.cs
similarity index 98%
rename from LANCommander/Controllers/ServerController.cs
rename to LANCommander.Server/Controllers/ServerController.cs
index 311fa32f..1d848da3 100644
--- a/LANCommander/Controllers/ServerController.cs
+++ b/LANCommander.Server/Controllers/ServerController.cs
@@ -1,10 +1,10 @@
using AutoMapper;
using LANCommander.SDK.Helpers;
-using LANCommander.Services;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Mvc;
using System.IO.Compression;
-namespace LANCommander.Controllers
+namespace LANCommander.Server.Controllers
{
public class ServerController : Controller
{
diff --git a/LANCommander/Controllers/UploadController.cs b/LANCommander.Server/Controllers/UploadController.cs
similarity index 95%
rename from LANCommander/Controllers/UploadController.cs
rename to LANCommander.Server/Controllers/UploadController.cs
index 61771c9b..c284fcc5 100644
--- a/LANCommander/Controllers/UploadController.cs
+++ b/LANCommander.Server/Controllers/UploadController.cs
@@ -1,11 +1,11 @@
-using LANCommander.Models;
-using LANCommander.Services;
+using LANCommander.Server.Models;
+using LANCommander.Server.Services;
using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Http;
using Microsoft.AspNetCore.Mvc;
using NLog;
-namespace LANCommander.Controllers
+namespace LANCommander.Server.Controllers
{
[Authorize(Roles = "Administrator")]
public class UploadController : Controller
diff --git a/LANCommander/Data/DatabaseContext.cs b/LANCommander.Server/Data/DatabaseContext.cs
similarity index 95%
rename from LANCommander/Data/DatabaseContext.cs
rename to LANCommander.Server/Data/DatabaseContext.cs
index 43b44e94..354d91e3 100644
--- a/LANCommander/Data/DatabaseContext.cs
+++ b/LANCommander.Server/Data/DatabaseContext.cs
@@ -1,10 +1,10 @@
-using LANCommander.Data.Models;
+using LANCommander.Server.Data.Models;
using Microsoft.AspNetCore.Identity;
using Microsoft.AspNetCore.Identity.EntityFrameworkCore;
using Microsoft.Build.Framework;
using Microsoft.EntityFrameworkCore;
-namespace LANCommander.Data
+namespace LANCommander.Server.Data
{
public class DatabaseContext : IdentityDbContext
{
@@ -33,7 +33,7 @@ namespace LANCommander.Data
builder.ConfigureBaseRelationships();
builder.ConfigureBaseRelationships();
builder.ConfigureBaseRelationships