mirror of https://git.lenooby09.tech/LeNooby09/social-app.git
at verify-code 2.6 kB view raw
1import React from 'react' 2import {View} from 'react-native' 3import {msg, Trans} from '@lingui/macro' 4import {useLingui} from '@lingui/react' 5 6import {useLoggedOutViewControls} from '#/state/shell/logged-out' 7import {useCloseAllActiveElements} from '#/state/util' 8import {usePalette} from 'lib/hooks/usePalette' 9import {s} from 'lib/styles' 10import {Button} from '#/view/com/util/forms/Button' 11import {Text} from '#/view/com/util/text/Text' 12import {Logo} from '#/view/icons/Logo' 13import {atoms as a} from '#/alf' 14import {AppLanguageDropdown} from '#/components/AppLanguageDropdown' 15import {Link} from '#/components/Link' 16 17let NavSignupCard = ({}: {}): React.ReactNode => { 18 const {_} = useLingui() 19 const pal = usePalette('default') 20 const {requestSwitchToAccount} = useLoggedOutViewControls() 21 const closeAllActiveElements = useCloseAllActiveElements() 22 23 const showSignIn = React.useCallback(() => { 24 closeAllActiveElements() 25 requestSwitchToAccount({requestedAccount: 'none'}) 26 }, [requestSwitchToAccount, closeAllActiveElements]) 27 28 const showCreateAccount = React.useCallback(() => { 29 closeAllActiveElements() 30 requestSwitchToAccount({requestedAccount: 'new'}) 31 // setShowLoggedOut(true) 32 }, [requestSwitchToAccount, closeAllActiveElements]) 33 34 return ( 35 <View 36 style={{ 37 alignItems: 'flex-start', 38 paddingTop: 6, 39 marginBottom: 24, 40 }}> 41 <Link to="/" label="Bluesky - Home"> 42 <Logo width={48} /> 43 </Link> 44 45 <View style={{paddingTop: 18}}> 46 <Text type="md-bold" style={[pal.text]}> 47 <Trans>Sign up or sign in to join the conversation</Trans> 48 </Text> 49 </View> 50 51 <View 52 style={{ 53 flexDirection: 'row', 54 flexWrap: 'wrap', 55 paddingTop: 12, 56 gap: 8, 57 }}> 58 <Button 59 onPress={showCreateAccount} 60 accessibilityHint={_(msg`Sign up`)} 61 accessibilityLabel={_(msg`Sign up`)}> 62 <Text type="md" style={[{color: 'white'}, s.bold]}> 63 <Trans>Sign up</Trans> 64 </Text> 65 </Button> 66 <Button 67 type="default" 68 onPress={showSignIn} 69 accessibilityHint={_(msg`Sign in`)} 70 accessibilityLabel={_(msg`Sign in`)}> 71 <Text type="md" style={[pal.text, s.bold]}> 72 <Trans>Sign in</Trans> 73 </Text> 74 </Button> 75 </View> 76 77 <View style={[a.pt_2xl, a.w_full]}> 78 <AppLanguageDropdown /> 79 </View> 80 </View> 81 ) 82} 83NavSignupCard = React.memo(NavSignupCard) 84export {NavSignupCard}