-
+
{{$t('Login')}}
@@ -10,7 +10,7 @@
{{error.value}}
-
+
diff --git a/src/Nucleus.Web.Vue/src/admin/views/roles/role-list.vue b/src/Nucleus.Web.Vue/src/admin/views/roles/role-list.vue
index 8990fd6..c0bcb46 100644
--- a/src/Nucleus.Web.Vue/src/admin/views/roles/role-list.vue
+++ b/src/Nucleus.Web.Vue/src/admin/views/roles/role-list.vue
@@ -27,7 +27,7 @@
{{error.value}}
-
+
diff --git a/src/Nucleus.Web.Vue/src/admin/views/users/user-list.vue b/src/Nucleus.Web.Vue/src/admin/views/users/user-list.vue
index 65615da..b3222b7 100644
--- a/src/Nucleus.Web.Vue/src/admin/views/users/user-list.vue
+++ b/src/Nucleus.Web.Vue/src/admin/views/users/user-list.vue
@@ -27,7 +27,7 @@
{{error.value}}
-
+
diff --git a/src/Nucleus.Web.Vue/src/assets/sass/site.css b/src/Nucleus.Web.Vue/src/assets/sass/site.css
index 5f28270..c4a98c9 100644
--- a/src/Nucleus.Web.Vue/src/assets/sass/site.css
+++ b/src/Nucleus.Web.Vue/src/assets/sass/site.css
@@ -1 +1,10 @@
-
\ No newline at end of file
+.swal2-popup {
+ font-family: Roboto,sans-serif !important; }
+
+.dialog.centered-dialog,
+.v-dialog.centered-dialog {
+ background: #282c2d;
+ box-shadow: none;
+ border-radius: 6px;
+ width: auto;
+ color: whitesmoke; }
diff --git a/src/Nucleus.Web.Vue/src/assets/sass/site.min.css b/src/Nucleus.Web.Vue/src/assets/sass/site.min.css
index 5f28270..ecaa8cc 100644
--- a/src/Nucleus.Web.Vue/src/assets/sass/site.min.css
+++ b/src/Nucleus.Web.Vue/src/assets/sass/site.min.css
@@ -1 +1 @@
-
\ No newline at end of file
+.swal2-popup{font-family:Roboto,sans-serif !important;}.dialog.centered-dialog,.v-dialog.centered-dialog{background:#282c2d;box-shadow:none;border-radius:6px;width:auto;color:#f5f5f5;}
\ No newline at end of file
diff --git a/src/Nucleus.Web.Vue/src/assets/sass/site.scss b/src/Nucleus.Web.Vue/src/assets/sass/site.scss
index e69de29..cc236bc 100644
--- a/src/Nucleus.Web.Vue/src/assets/sass/site.scss
+++ b/src/Nucleus.Web.Vue/src/assets/sass/site.scss
@@ -0,0 +1,12 @@
+.swal2-popup {
+ font-family: Roboto,sans-serif !important;
+}
+
+.dialog.centered-dialog,
+.v-dialog.centered-dialog {
+ background: #282c2d;
+ box-shadow: none;
+ border-radius: 6px;
+ width: auto;
+ color: whitesmoke;
+}
diff --git a/src/Nucleus.Web.Vue/src/shared/application/nucleus-service-proxy.ts b/src/Nucleus.Web.Vue/src/shared/application/nucleus-service-proxy.ts
index e70ba1c..4518725 100644
--- a/src/Nucleus.Web.Vue/src/shared/application/nucleus-service-proxy.ts
+++ b/src/Nucleus.Web.Vue/src/shared/application/nucleus-service-proxy.ts
@@ -1,5 +1,6 @@
import AuthStore from '@/stores/auth-store';
import AppConsts from '@/shared/application/nucleus';
+import Nucleus from '@/shared/application/nucleus';
export default class NucleusService {
private static request(method: string, url: string, data: object | string = ''): Promise> {
@@ -14,12 +15,14 @@ export default class NucleusService {
body = JSON.stringify(data);
}
+ Nucleus.isLoading = true;
+
return fetch(AppConsts.baseApiUrl + url,
- ({
- method,
- headers,
- body
- }) as any)
+ ({
+ method,
+ headers,
+ body
+ }) as any)
.then((response: any) => {
isBadRequest = !response.ok;
if (response.status === 401) {
@@ -45,6 +48,8 @@ export default class NucleusService {
} as IRestResponseDto;
return response;
+ }).finally(() => {
+ Nucleus.isLoading = false;
});
}
diff --git a/src/Nucleus.Web.Vue/src/shared/application/nucleus.ts b/src/Nucleus.Web.Vue/src/shared/application/nucleus.ts
index 97ab86d..0a6c201 100644
--- a/src/Nucleus.Web.Vue/src/shared/application/nucleus.ts
+++ b/src/Nucleus.Web.Vue/src/shared/application/nucleus.ts
@@ -4,6 +4,7 @@ import AuthStore from '@/stores/auth-store';
const nucleus = {
baseApiUrl: 'https://localhost:44339',
baseClientUrl: 'http://localhost:8080',
+ isLoading: false,
auth: {
grantedPermissions: [] as IPermissionDto[],
isGranted(permissionName: string) {
@@ -15,8 +16,8 @@ const nucleus = {
fillProps() {
const nucleusService = new NucleusService();
nucleusService.get(
- '/api/account/GetGrantedPermissionsAsync?userNameOrEmail=' + AuthStore.getTokenData().sub
- )
+ '/api/account/GetGrantedPermissionsAsync?userNameOrEmail=' + AuthStore.getTokenData().sub
+ )
.then((response) => {
this.grantedPermissions = response.content as IPermissionDto[];
});
diff --git a/src/Nucleus.Web.Vue/yarn.lock b/src/Nucleus.Web.Vue/yarn.lock
index e36ac3c..3beac6f 100644
--- a/src/Nucleus.Web.Vue/yarn.lock
+++ b/src/Nucleus.Web.Vue/yarn.lock
@@ -661,9 +661,9 @@
mocha "^5.2.0"
mocha-webpack "^2.0.0-beta.0"
-"@vue/cli-service@^3.1.3":
- version "3.1.3"
- resolved "https://registry.yarnpkg.com/@vue/cli-service/-/cli-service-3.1.3.tgz#05e65b1c18f735497580e1d38650e3f50db618c6"
+"@vue/cli-service@^3.1.4":
+ version "3.1.4"
+ resolved "https://registry.yarnpkg.com/@vue/cli-service/-/cli-service-3.1.4.tgz#04c84c1bb798db03e2c0fecc414d6a5f2954d602"
dependencies:
"@intervolga/optimize-cssnano-plugin" "^1.0.5"
"@vue/cli-overlay" "^3.1.0"
@@ -6150,9 +6150,9 @@ svgo@^1.0.0:
unquote "~1.1.1"
util.promisify "~1.0.0"
-sweetalert2@^7.29.0:
- version "7.29.0"
- resolved "https://registry.yarnpkg.com/sweetalert2/-/sweetalert2-7.29.0.tgz#636aa5e0a57bbbb75501ef39104fc68a1a26b351"
+sweetalert2@^7.29.1:
+ version "7.29.1"
+ resolved "https://registry.yarnpkg.com/sweetalert2/-/sweetalert2-7.29.1.tgz#506d2d5c4a862c8469f67384d374432a03c49005"
symbol-tree@^3.2.2:
version "3.2.2"
@@ -6579,9 +6579,9 @@ vue-hot-reload-api@^2.3.0:
version "2.3.1"
resolved "https://registry.yarnpkg.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.1.tgz#b2d3d95402a811602380783ea4f566eb875569a2"
-vue-i18n@^8.3.1:
- version "8.3.1"
- resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.3.1.tgz#690c840a98db9a5abf94a5f8303ec4a86a6609c6"
+vue-i18n@^8.3.2:
+ version "8.3.2"
+ resolved "https://registry.yarnpkg.com/vue-i18n/-/vue-i18n-8.3.2.tgz#8878a622858060a1723fca1e735053854accdd52"
vue-loader@^15.4.2:
version "15.4.2"
@@ -6625,9 +6625,9 @@ vue@^2.5.17:
version "2.5.17"
resolved "https://registry.yarnpkg.com/vue/-/vue-2.5.17.tgz#0f8789ad718be68ca1872629832ed533589c6ada"
-vuetify@^1.3.8:
- version "1.3.8"
- resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-1.3.8.tgz#e56832f40e5043470e2100a1501463d5a1ca6d8e"
+vuetify@^1.3.9:
+ version "1.3.9"
+ resolved "https://registry.yarnpkg.com/vuetify/-/vuetify-1.3.9.tgz#19af65f7ef0c26efb1076464815d9ad9a5e4fa4f"
w3c-hr-time@^1.0.1:
version "1.0.1"
diff --git a/test/Nucleus.Tests.Application/Permissions/PermissionAppServiceTests.cs b/test/Nucleus.Tests.Application/Permissions/PermissionAppServiceTests.cs
index 28403bf..3c2c176 100644
--- a/test/Nucleus.Tests.Application/Permissions/PermissionAppServiceTests.cs
+++ b/test/Nucleus.Tests.Application/Permissions/PermissionAppServiceTests.cs
@@ -2,9 +2,7 @@
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
using Nucleus.Application.Permissions;
-using Nucleus.Application.Permissions.Dto;
using Nucleus.Core.Permissions;
-using Nucleus.Core.Roles;
using Nucleus.Core.Users;
using Xunit;
diff --git a/test/Nucleus.Tests.Web.Api/ApiTestBase.cs b/test/Nucleus.Tests.Web.Api/ApiTestBase.cs
index be386f2..f8fcac7 100644
--- a/test/Nucleus.Tests.Web.Api/ApiTestBase.cs
+++ b/test/Nucleus.Tests.Web.Api/ApiTestBase.cs
@@ -1,6 +1,7 @@
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
+using Nucleus.Application.Account.Dto;
using Nucleus.Application.Users.Dto;
using Nucleus.Core.Users;
using Nucleus.Tests.Shared;
diff --git a/test/Nucleus.Tests.Web.Api/Controllers/AccountControllerTests.cs b/test/Nucleus.Tests.Web.Api/Controllers/AccountControllerTests.cs
index 82242c6..d1dec4e 100644
--- a/test/Nucleus.Tests.Web.Api/Controllers/AccountControllerTests.cs
+++ b/test/Nucleus.Tests.Web.Api/Controllers/AccountControllerTests.cs
@@ -7,6 +7,7 @@
using System.Text;
using System.Threading.Tasks;
using Microsoft.Extensions.DependencyInjection;
+using Nucleus.Application.Account.Dto;
using Nucleus.Application.Permissions.Dto;
using Nucleus.Application.Roles.Dto;
using Nucleus.Application.Users.Dto;