diff --git a/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/authentication-state-listener.js b/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/authentication-state-listener.js index b8c691912a..47f8c1fc81 100644 --- a/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/authentication-state-listener.js +++ b/framework/src/Volo.Abp.AspNetCore.Components.Web/wwwroot/libs/abp/js/authentication-state-listener.js @@ -1,26 +1,17 @@ (function () { - + const stateKey = 'authentication-state-id'; - - window.addEventListener('storage', function (event) { - - if (event.key !== stateKey) { - return; - } - var previousState = event.oldValue - var state = event.newValue; - - if(previousState === state) { + window.addEventListener('storage', function (event) { + if (event.key !== stateKey || event.oldValue === event.newValue) { return; } - if(previousState || !state) { + if (event.oldValue || !event.newValue) { abp.utils.removeOidcUser(); window.location.reload(); - return; + } else { + location.assign('/') } - - location.assign('/') }); }()); \ No newline at end of file diff --git a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Client/wwwroot/global.js b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Client/wwwroot/global.js index 26be485836..a7d1b4a4e3 100644 --- a/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Client/wwwroot/global.js +++ b/templates/app-nolayers/aspnet-core/MyCompanyName.MyProjectName.Blazor.WebAssembly/Client/wwwroot/global.js @@ -5,7 +5,7 @@ var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.domReady=function(n){doc var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.utils.updateHTMLDirAndLangFromLocalStorage=function(){var i=JSON.parse(localStorage.getItem("Abp.IsRtl")),n=document.getElementsByTagName("html")[0],t;n&&(t=localStorage.getItem("Abp.SelectedLanguage"),t&&n.setAttribute("lang",t),i&&n.setAttribute("dir","rtl"))};abp.utils.updateHTMLDirAndLangFromLocalStorage()})(); -(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){if(t.key===n){var i=t.oldValue,r=t.newValue;if(i!==r){if(i||!r){abp.utils.removeOidcUser();window.location.reload();return}location.assign("/")}}})})(); +(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){t.key===n&&t.oldValue!==t.newValue&&(t.oldValue||!t.newValue?(abp.utils.removeOidcUser(),window.location.reload()):location.assign("/"))})})(); /*! * Bootstrap v5.1.3 (https://getbootstrap.com/) diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Client/wwwroot/global.js b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Client/wwwroot/global.js index 8a4575f8bc..35297e22e7 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Client/wwwroot/global.js +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.Client/wwwroot/global.js @@ -5,7 +5,7 @@ var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.domReady=function(n){doc var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.utils.updateHTMLDirAndLangFromLocalStorage=function(){var i=JSON.parse(localStorage.getItem("Abp.IsRtl")),n=document.getElementsByTagName("html")[0],t;n&&(t=localStorage.getItem("Abp.SelectedLanguage"),t&&n.setAttribute("lang",t),i&&n.setAttribute("dir","rtl"))};abp.utils.updateHTMLDirAndLangFromLocalStorage()})(); -(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){if(t.key===n){var i=t.oldValue,r=t.newValue;if(i!==r){if(i||!r){abp.utils.removeOidcUser();window.location.reload();return}location.assign("/")}}})})(); +(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){t.key===n&&t.oldValue!==t.newValue&&(t.oldValue||!t.newValue?(abp.utils.removeOidcUser(),window.location.reload()):location.assign("/"))})})(); /*! * Bootstrap v5.1.3 (https://getbootstrap.com/) diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Client/wwwroot/global.js b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Client/wwwroot/global.js index 8a4575f8bc..35297e22e7 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Client/wwwroot/global.js +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Client/wwwroot/global.js @@ -5,7 +5,7 @@ var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.domReady=function(n){doc var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.utils.updateHTMLDirAndLangFromLocalStorage=function(){var i=JSON.parse(localStorage.getItem("Abp.IsRtl")),n=document.getElementsByTagName("html")[0],t;n&&(t=localStorage.getItem("Abp.SelectedLanguage"),t&&n.setAttribute("lang",t),i&&n.setAttribute("dir","rtl"))};abp.utils.updateHTMLDirAndLangFromLocalStorage()})(); -(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){if(t.key===n){var i=t.oldValue,r=t.newValue;if(i!==r){if(i||!r){abp.utils.removeOidcUser();window.location.reload();return}location.assign("/")}}})})(); +(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){t.key===n&&t.oldValue!==t.newValue&&(t.oldValue||!t.newValue?(abp.utils.removeOidcUser(),window.location.reload()):location.assign("/"))})})(); /*! * Bootstrap v5.1.3 (https://getbootstrap.com/) diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered.Client/wwwroot/global.js b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered.Client/wwwroot/global.js index 8a4575f8bc..35297e22e7 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered.Client/wwwroot/global.js +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor.WebApp.Tiered.Client/wwwroot/global.js @@ -5,7 +5,7 @@ var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.domReady=function(n){doc var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.utils.updateHTMLDirAndLangFromLocalStorage=function(){var i=JSON.parse(localStorage.getItem("Abp.IsRtl")),n=document.getElementsByTagName("html")[0],t;n&&(t=localStorage.getItem("Abp.SelectedLanguage"),t&&n.setAttribute("lang",t),i&&n.setAttribute("dir","rtl"))};abp.utils.updateHTMLDirAndLangFromLocalStorage()})(); -(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){if(t.key===n){var i=t.oldValue,r=t.newValue;if(i!==r){if(i||!r){abp.utils.removeOidcUser();window.location.reload();return}location.assign("/")}}})})(); +(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){t.key===n&&t.oldValue!==t.newValue&&(t.oldValue||!t.newValue?(abp.utils.removeOidcUser(),window.location.reload()):location.assign("/"))})})(); /*! * Bootstrap v5.1.3 (https://getbootstrap.com/) diff --git a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/App.razor b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/App.razor index a4f33c4585..1dc3fb80d0 100644 --- a/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/App.razor +++ b/templates/app/aspnet-core/src/MyCompanyName.MyProjectName.Blazor/App.razor @@ -8,7 +8,7 @@ - + @@ -36,7 +36,7 @@ - + diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host.Client/wwwroot/global.js b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host.Client/wwwroot/global.js index b28f73891d..b8450ea92f 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host.Client/wwwroot/global.js +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host.Client/wwwroot/global.js @@ -5,5 +5,5 @@ var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.domReady=function(n){doc var abp=abp||{};(function(){abp.utils=abp.utils||{};abp.utils.updateHTMLDirAndLangFromLocalStorage=function(){var i=JSON.parse(localStorage.getItem("Abp.IsRtl")),n=document.getElementsByTagName("html")[0],t;n&&(t=localStorage.getItem("Abp.SelectedLanguage"),t&&n.setAttribute("lang",t),i&&n.setAttribute("dir","rtl"))};abp.utils.updateHTMLDirAndLangFromLocalStorage()})(); -(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){if(t.key===n){var i=t.oldValue,r=t.newValue;if(i!==r){if(i||!r){abp.utils.removeOidcUser();window.location.reload();return}location.assign("/")}}})})(); +(function(){const n="authentication-state-id";window.addEventListener("storage",function(t){t.key===n&&t.oldValue!==t.newValue&&(t.oldValue||!t.newValue?(abp.utils.removeOidcUser(),window.location.reload()):location.assign("/"))})})(); diff --git a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host/App.razor b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host/App.razor index 8fa3fd89da..4253d9cc63 100644 --- a/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host/App.razor +++ b/templates/module/aspnet-core/host/MyCompanyName.MyProjectName.Blazor.Host/App.razor @@ -8,7 +8,7 @@ - + @@ -30,7 +30,7 @@ - +