Make isLoggedIn report user value instead of bool

Summary: It makes little sense to hide this info from developers. It was also requested by antonk52

Reviewed By: LukeDefeo

Differential Revision: D44631235

fbshipit-source-id: 1756c5ca2a95b2f815f8c4336621d3c057b704f2
This commit is contained in:
Andrey Goncharov
2023-04-04 05:26:31 -07:00
committed by Facebook GitHub Bot
parent 7edaf24d5c
commit b3307baafe
6 changed files with 13 additions and 13 deletions

View File

@@ -29,7 +29,7 @@ import {FeedbackPrompt} from '../fb-stubs/UserFeedback';
import {StarOutlined} from '@ant-design/icons'; import {StarOutlined} from '@ant-design/icons';
import {Popover, Rate} from 'antd'; import {Popover, Rate} from 'antd';
import {useStore} from '../utils/useStore'; import {useStore} from '../utils/useStore';
import {isLoggedIn} from '../fb-stubs/user'; import {currentUser} from '../fb-stubs/user';
import {theme, useValue} from 'flipper-plugin'; import {theme, useValue} from 'flipper-plugin';
import {reportPlatformFailures} from 'flipper-common'; import {reportPlatformFailures} from 'flipper-common';
import {getRenderHostInstance} from 'flipper-frontend-core'; import {getRenderHostInstance} from 'flipper-frontend-core';
@@ -271,7 +271,7 @@ export function SandyRatingButton() {
const [isShown, setIsShown] = useState(false); const [isShown, setIsShown] = useState(false);
const [hasTriggered, setHasTriggered] = useState(false); const [hasTriggered, setHasTriggered] = useState(false);
const sessionId = useStore((store) => store.application.sessionId); const sessionId = useStore((store) => store.application.sessionId);
const loggedIn = useValue(isLoggedIn()); const loggedIn = useValue(currentUser());
const triggerPopover = useCallback(() => { const triggerPopover = useCallback(() => {
if (!hasTriggered) { if (!hasTriggered) {

View File

@@ -19,7 +19,7 @@ export {
internGraphGETAPIRequest, internGraphGETAPIRequest,
internGraphPOSTAPIRequest, internGraphPOSTAPIRequest,
graphQLQuery, graphQLQuery,
isLoggedIn, currentUser as isLoggedIn,
getUser, getUser,
fetchUser, fetchUser,
getCachedUser, getCachedUser,

View File

@@ -24,7 +24,7 @@ import isPluginCompatible from '../utils/isPluginCompatible';
import {selectCompatibleMarketplaceVersions} from './plugins'; import {selectCompatibleMarketplaceVersions} from './plugins';
import isPluginVersionMoreRecent from '../utils/isPluginVersionMoreRecent'; import isPluginVersionMoreRecent from '../utils/isPluginVersionMoreRecent';
import {isConnectivityOrAuthError} from 'flipper-common'; import {isConnectivityOrAuthError} from 'flipper-common';
import {isLoggedIn} from '../fb-stubs/user'; import {currentUser} from '../fb-stubs/user';
import {getRenderHostInstance} from 'flipper-frontend-core'; import {getRenderHostInstance} from 'flipper-frontend-core';
// TODO: provide this value from settings // TODO: provide this value from settings
@@ -43,7 +43,7 @@ function isAutoUpdateDisabled(store: Store) {
(!getFlipperLib().isFB && (!getFlipperLib().isFB &&
!store.getState().settingsState.enablePluginMarketplaceAutoUpdate) || !store.getState().settingsState.enablePluginMarketplaceAutoUpdate) ||
// for internal build we disable auto-updates in case user is not logged // for internal build we disable auto-updates in case user is not logged
(getFlipperLib().isFB && !isLoggedIn().get()) || (getFlipperLib().isFB && !currentUser().get()) ||
getRenderHostInstance().GK('flipper_disable_plugin_auto_update') || getRenderHostInstance().GK('flipper_disable_plugin_auto_update') ||
getRenderHostInstance().serverConfig.env.FLIPPER_NO_PLUGIN_AUTO_UPDATE !== getRenderHostInstance().serverConfig.env.FLIPPER_NO_PLUGIN_AUTO_UPDATE !==
undefined undefined
@@ -113,7 +113,7 @@ export async function loadPluginsFromMarketplace(
} }
async function refreshMarketplacePlugins(store: Store): Promise<void> { async function refreshMarketplacePlugins(store: Store): Promise<void> {
if (getFlipperLib().isFB && !isLoggedIn().get()) { if (getFlipperLib().isFB && !currentUser().get()) {
// inside FB we cannot refresh when user is not logged // inside FB we cannot refresh when user is not logged
return; return;
} }

View File

@@ -108,11 +108,11 @@ export async function appendAccessTokenToUrl(_url: URL): Promise<string> {
throw new Error('Implement appendAccessTokenToUrl'); throw new Error('Implement appendAccessTokenToUrl');
} }
const isLoggedInAtom = createState(false); const currentUserAtom = createState<User | null>(null);
const isConnectedAtom = createState(true); const isConnectedAtom = createState(true);
export function isLoggedIn(): Atom<boolean> { export function currentUser(): Atom<User | null> {
return isLoggedInAtom; return currentUserAtom;
} }
export function isConnected(): Atom<boolean> { export function isConnected(): Atom<boolean> {

View File

@@ -78,7 +78,7 @@ import {css} from '@emotion/css';
import {getRenderHostInstance} from 'flipper-frontend-core'; import {getRenderHostInstance} from 'flipper-frontend-core';
import {StyleGuide} from './StyleGuide'; import {StyleGuide} from './StyleGuide';
import {useEffect} from 'react'; import {useEffect} from 'react';
import {isConnected, isLoggedIn, logoutUser} from '../fb-stubs/user'; import {isConnected, currentUser, logoutUser} from '../fb-stubs/user';
const LeftRailButtonElem = styled(Button)<{kind?: 'small'}>(({kind}) => ({ const LeftRailButtonElem = styled(Button)<{kind?: 'small'}>(({kind}) => ({
width: kind === 'small' ? 32 : 36, width: kind === 'small' ? 32 : 36,
@@ -589,7 +589,7 @@ function SetupDoctorButton() {
function LoginConnectivityButton() { function LoginConnectivityButton() {
const dispatch = useDispatch(); const dispatch = useDispatch();
const loggedIn = useValue(isLoggedIn()); const loggedIn = useValue(currentUser());
const user = useStore((state) => state.user); const user = useStore((state) => state.user);
const profileUrl = user?.profile_picture?.uri; const profileUrl = user?.profile_picture?.uri;

View File

@@ -7,7 +7,7 @@
* @format * @format
*/ */
import {isLoggedIn} from '../../fb-stubs/user'; import {currentUser} from '../../fb-stubs/user';
import {Layout, useValue} from 'flipper-plugin'; import {Layout, useValue} from 'flipper-plugin';
import React from 'react'; import React from 'react';
import config from '../../fb-stubs/config'; import config from '../../fb-stubs/config';
@@ -15,7 +15,7 @@ import {Alert} from 'antd';
import {LoginOutlined} from '@ant-design/icons'; import {LoginOutlined} from '@ant-design/icons';
export const RequireLogin: React.FC<{}> = ({children}) => { export const RequireLogin: React.FC<{}> = ({children}) => {
const loggedIn = useValue(isLoggedIn()); const loggedIn = useValue(currentUser());
if (!config.isFBBuild) { if (!config.isFBBuild) {
return ( return (
<Layout.Container pad> <Layout.Container pad>