Feature flags env variable gating (#9481)

closes #9032

---------

Co-authored-by: Antoine Moreaux <moreaux.antoine@gmail.com>
This commit is contained in:
nitin
2025-01-10 18:34:00 +05:30
committed by GitHub
parent 75bf9e3c69
commit ddcb3dfd28
14 changed files with 113 additions and 89 deletions

View File

@ -27,22 +27,17 @@ export const VerifyEffect = () => {
);
useEffect(() => {
const getTokens = async () => {
if (isDefined(errorMessage)) {
enqueueSnackBar(errorMessage, {
variant: SnackBarVariant.Error,
});
}
if (!loginToken) {
navigate(AppPath.SignInUp);
} else {
setIsAppWaitingForFreshObjectMetadata(true);
await verify(loginToken);
}
};
if (isDefined(errorMessage)) {
enqueueSnackBar(errorMessage, {
variant: SnackBarVariant.Error,
});
}
if (!isLogged) {
getTokens();
if (isDefined(loginToken)) {
setIsAppWaitingForFreshObjectMetadata(true);
verify(loginToken);
} else if (!isLogged) {
navigate(AppPath.SignInUp);
}
// Verify only needs to run once at mount
// eslint-disable-next-line react-hooks/exhaustive-deps

View File

@ -141,10 +141,7 @@ describe('useAuth', () => {
const { result } = renderHooks();
await act(async () => {
const res = await result.current.signUpWithCredentials(email, password);
expect(res).toHaveProperty('user');
expect(res).toHaveProperty('workspaceMember');
expect(res).toHaveProperty('workspace');
await result.current.signUpWithCredentials(email, password);
});
expect(mocks[2].result).toHaveBeenCalled();

View File

@ -268,6 +268,8 @@ export const useAuth = () => {
const handleVerify = useCallback(
async (loginToken: string) => {
setIsVerifyPendingState(true);
const verifyResult = await verify({
variables: { loginToken },
});
@ -282,16 +284,11 @@ export const useAuth = () => {
setTokenPair(verifyResult.data?.verify.tokens);
const { user, workspaceMember, workspace } = await loadCurrentUser();
await loadCurrentUser();
return {
user,
workspaceMember,
workspace,
tokens: verifyResult.data?.verify.tokens,
};
setIsVerifyPendingState(false);
},
[verify, setTokenPair, loadCurrentUser],
[setIsVerifyPendingState, verify, setTokenPair, loadCurrentUser],
);
const handleCrendentialsSignIn = useCallback(
@ -301,21 +298,9 @@ export const useAuth = () => {
password,
captchaToken,
);
setIsVerifyPendingState(true);
const { user, workspaceMember, workspace } = await handleVerify(
loginToken.token,
);
setIsVerifyPendingState(false);
return {
user,
workspaceMember,
workspace,
};
await handleVerify(loginToken.token);
},
[handleChallenge, handleVerify, setIsVerifyPendingState],
[handleChallenge, handleVerify],
);
const handleSignOut = useCallback(async () => {
@ -360,13 +345,7 @@ export const useAuth = () => {
);
}
const { user, workspace, workspaceMember } = await handleVerify(
signUpResult.data?.signUp.loginToken.token,
);
setIsVerifyPendingState(false);
return { user, workspaceMember, workspace };
await handleVerify(signUpResult.data?.signUp.loginToken.token);
},
[
setIsVerifyPendingState,