Prompt for login by default
Summary: This aligns behaviour with non-sandy behaviour of login: Prompt for login on startup if the user isn't yet signed in. Logic is based on https://www.internalfb.com/intern/diffusion/FBS/browse/master/xplat/sonar/desktop/app/src/chrome/UserAccount.tsx?commit=1fc905fdd1cd&lines=94 Reviewed By: jknoxville Differential Revision: D24922397 fbshipit-source-id: b4bab9c109a1054c0e260599d28320699c47dfda
This commit is contained in:
committed by
Facebook GitHub Bot
parent
9d101263a0
commit
dca419ee24
@@ -7,7 +7,13 @@
|
||||
* @format
|
||||
*/
|
||||
|
||||
import React, {cloneElement, useState, useCallback, useMemo} from 'react';
|
||||
import React, {
|
||||
cloneElement,
|
||||
useState,
|
||||
useCallback,
|
||||
useMemo,
|
||||
useEffect,
|
||||
} from 'react';
|
||||
import {Button, Divider, Badge, Tooltip, Avatar, Popover} from 'antd';
|
||||
import {
|
||||
MobileFilled,
|
||||
@@ -37,7 +43,7 @@ import SignInSheet from '../chrome/SignInSheet';
|
||||
import {errorCounterAtom} from '../chrome/ConsoleLogs';
|
||||
import {ToplevelProps} from './SandyApp';
|
||||
import {useValue} from 'flipper-plugin';
|
||||
import {logout} from '../reducers/user';
|
||||
import {logout, USER_NOT_SIGNEDIN, USER_UNAUTHORIZED} from '../reducers/user';
|
||||
import config from '../fb-stubs/config';
|
||||
import styled from '@emotion/styled';
|
||||
import {showEmulatorLauncher} from './appinspect/LaunchEmulator';
|
||||
@@ -46,6 +52,7 @@ import SupportRequestFormV2 from '../fb-stubs/SupportRequestFormV2';
|
||||
import {setStaticView} from '../reducers/connections';
|
||||
import {getInstance} from '../fb-stubs/Logger';
|
||||
import {isStaticViewActive} from '../chrome/mainsidebar/sidebarUtils';
|
||||
import {getUser} from '../fb-stubs/user';
|
||||
|
||||
const LeftRailButtonElem = styled(Button)<{kind?: 'small'}>(({kind}) => ({
|
||||
width: kind === 'small' ? 32 : 36,
|
||||
@@ -353,6 +360,17 @@ function LoginButton() {
|
||||
(visible) => setShowLogout(visible),
|
||||
[],
|
||||
);
|
||||
|
||||
useEffect(() => {
|
||||
if (config.showLogin) {
|
||||
getUser().catch((error) => {
|
||||
if (error === USER_UNAUTHORIZED || error === USER_NOT_SIGNEDIN) {
|
||||
setShowLogin(true);
|
||||
}
|
||||
});
|
||||
}
|
||||
}, []);
|
||||
|
||||
return login ? (
|
||||
<Popover
|
||||
content={
|
||||
|
||||
Reference in New Issue
Block a user