Add exit waiting to ToolsFramework
This commit is contained in:
@@ -17,6 +17,7 @@ const ToolsFramework: React.FC = () => {
|
|||||||
const [submenuTop, setSubmenuTop] = useState(0)
|
const [submenuTop, setSubmenuTop] = useState(0)
|
||||||
const [submenuLeft, setSubmenuLeft] = useState(0)
|
const [submenuLeft, setSubmenuLeft] = useState(0)
|
||||||
const [hideSidebar, setHideSidebar] = useState(getLocalStorage('hideSidebar') === 'false')
|
const [hideSidebar, setHideSidebar] = useState(getLocalStorage('hideSidebar') === 'false')
|
||||||
|
const [exiting, setExiting] = useState(false)
|
||||||
|
|
||||||
const switchSidebar = () => {
|
const switchSidebar = () => {
|
||||||
setHideSidebar(!hideSidebar)
|
setHideSidebar(!hideSidebar)
|
||||||
@@ -52,6 +53,11 @@ const ToolsFramework: React.FC = () => {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const handleLogout = () => {
|
const handleLogout = () => {
|
||||||
|
if (exiting) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
setExiting(true)
|
||||||
void logout().finally(() => {
|
void logout().finally(() => {
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
window.location.reload()
|
window.location.reload()
|
||||||
@@ -232,7 +238,10 @@ const ToolsFramework: React.FC = () => {
|
|||||||
className={'icon-exit'}
|
className={'icon-exit'}
|
||||||
onClick={handleLogout}
|
onClick={handleLogout}
|
||||||
>
|
>
|
||||||
<Icon component={IconFatwebExit} />
|
<Icon
|
||||||
|
component={exiting ? IconFatwebLoading : IconFatwebExit}
|
||||||
|
spin={exiting}
|
||||||
|
/>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
Reference in New Issue
Block a user