MCPcopy Create free account
hub / github.com/dailydotdev/apps / AuthSignBack

Function AuthSignBack

packages/shared/src/components/auth/AuthSignBack.tsx:27–162  ·  view source on GitHub ↗
({
  loginFormProps,
  onRegister,
  isLoginFlow,
  onProviderClick,
  isProviderLoading,
  simplified,
  onShowLoginOptions,
  isConnectedAccount,
  isOnboardingFunnel,
}: AuthSignBackProps)

Source from the content-addressed store, hash-verified

25}
26
27export const AuthSignBack = ({
28 loginFormProps,
29 onRegister,
30 isLoginFlow,
31 onProviderClick,
32 isProviderLoading,
33 simplified,
34 onShowLoginOptions,
35 isConnectedAccount,
36 isOnboardingFunnel,
37}: AuthSignBackProps): ReactElement | null => {
38 const { signBack, provider, isLoaded } = useSignBack();
39 const socialProvider =
40 provider && provider !== 'password'
41 ? (provider as SocialProvider)
42 : undefined;
43 const providerItem = socialProvider ? providerMap[socialProvider] : undefined;
44 const isValid = signBack && (provider === 'password' || !!providerItem);
45 const handleShowLoginOptions = (): void => {
46 onShowLoginOptions?.();
47 };
48 const handleRegister = (): void => {
49 onRegister?.();
50 };
51 const handleProviderClick = (): void => {
52 if (!socialProvider || !onProviderClick) {
53 return;
54 }
55
56 onProviderClick(socialProvider);
57 };
58
59 useEffect(() => {
60 if (!isLoaded || isValid) {
61 return;
62 }
63
64 if (isLoginFlow) {
65 onShowLoginOptions?.();
66 return;
67 }
68
69 onRegister?.();
70 // @NOTE see https://dailydotdev.atlassian.net/l/cp/dK9h1zoM
71 // eslint-disable-next-line react-hooks/exhaustive-deps
72 }, [isLoaded, isValid]);
73
74 if (!isLoaded || !signBack || !isValid) {
75 return null;
76 }
77
78 if (provider === 'password' && !loginFormProps) {
79 return null;
80 }
81
82 const renderAuthAction = () => {
83 if (provider === 'password') {
84 if (!loginFormProps) {

Callers

nothing calls this directly

Calls 3

useSignBackFunction · 0.90
renderAuthActionFunction · 0.85
onRegisterFunction · 0.70

Tested by

no test coverage detected