Skip to content

Commit

Permalink
Merge pull request #4115 from tloncorp/james/tlon-3131-uncover-passwo…
Browse files Browse the repository at this point in the history
…rd-input-during-setup

onboarding: add show/hide to password fields
  • Loading branch information
jamesacklin authored Oct 24, 2024
2 parents 62d6204 + 2d126ac commit a0c2594
Showing 1 changed file with 15 additions and 6 deletions.
21 changes: 15 additions & 6 deletions apps/tlon-mobile/src/screens/Onboarding/SignUpPasswordScreen.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import {
RECAPTCHA_SITE_KEY,
} from '@tloncorp/app/constants';
import { useSignupParams } from '@tloncorp/app/contexts/branch';
import { useSignupContext } from '.././../lib/signupContext';
import { setEulaAgreed } from '@tloncorp/app/utils/eula';
import { trackOnboardingAction } from '@tloncorp/app/utils/posthog';
import { createDevLogger } from '@tloncorp/shared';
Expand All @@ -15,7 +14,7 @@ import {
ListItem,
Modal,
ScreenHeader,
TextInput,
TextInputWithButton,
TlonText,
View,
YStack,
Expand All @@ -27,6 +26,7 @@ import { getTokenValue } from 'tamagui';

import { useOnboardingContext } from '../../lib/OnboardingContext';
import type { OnboardingStackParamList } from '../../types';
import { useSignupContext } from '.././../lib/signupContext';

type Props = NativeStackScreenProps<OnboardingStackParamList, 'SignUpPassword'>;

Expand Down Expand Up @@ -68,6 +68,9 @@ export const SignUpPasswordScreen = ({
});
const { height } = useWindowDimensions();

const [passwordVisible, setPasswordVisible] = useState(false);
const [confirmPasswordVisible, setConfirmPasswordVisible] = useState(false);

const handlePressEula = useCallback(() => {
navigation.navigate('EULA');
}, [navigation]);
Expand Down Expand Up @@ -235,17 +238,19 @@ export const SignUpPasswordScreen = ({
error={errors.password?.message}
paddingTop="$m"
>
<TextInput
<TextInputWithButton
placeholder="Choose a password"
onBlur={onBlur}
onChangeText={onChange}
onSubmitEditing={() => setFocus('confirmPassword')}
value={value}
secureTextEntry
secureTextEntry={!passwordVisible}
autoCapitalize="none"
autoCorrect={false}
returnKeyType="next"
enablesReturnKeyAutomatically
buttonText={passwordVisible ? 'Hide' : 'Show'}
onButtonPress={() => setPasswordVisible(!passwordVisible)}
/>
</Field>
)}
Expand All @@ -264,18 +269,22 @@ export const SignUpPasswordScreen = ({
label="Confirm Password"
error={errors.confirmPassword?.message}
>
<TextInput
<TextInputWithButton
placeholder="Confirm password"
onBlur={onBlur}
onChangeText={onChange}
onSubmitEditing={onSubmit}
value={value}
secureTextEntry
secureTextEntry={!confirmPasswordVisible}
autoCapitalize="none"
autoCorrect={false}
returnKeyType="send"
ref={ref}
enablesReturnKeyAutomatically
buttonText={confirmPasswordVisible ? 'Hide' : 'Show'}
onButtonPress={() =>
setConfirmPasswordVisible(!confirmPasswordVisible)
}
/>
</Field>
)}
Expand Down

0 comments on commit a0c2594

Please sign in to comment.