diff --git a/app/login.tsx b/app/login.tsx index dac7a55a..46144069 100644 --- a/app/login.tsx +++ b/app/login.tsx @@ -20,6 +20,7 @@ import { Button } from "@/components/Button"; import { Input } from "@/components/common/Input"; import { Text } from "@/components/common/Text"; import JellyfinServerDiscovery from "@/components/JellyfinServerDiscovery"; +import { PasswordInput } from "@/components/PasswordInput"; import { PreviousServersList } from "@/components/PreviousServersList"; import { Colors } from "@/constants/Colors"; import { apiAtom, useJellyfin } from "@/providers/JellyfinProvider"; @@ -276,33 +277,20 @@ const Login: React.FC = () => { /> {/* Password */} - - - setCredentials({ ...credentials, password: text }) - } - value={credentials.password} - secureTextEntry={!showPassword} - keyboardType='default' - returnKeyType='done' - autoCapitalize='none' - textContentType='password' - clearButtonMode='while-editing' - maxLength={500} - className='pr-12' - /> - setShowPassword(!showPassword)} - className='absolute right-3 top-4 p-1' - > - - - + + setCredentials({ ...credentials, password: text }) + } + onSubmitEditing={handleLogin} + placeholder={t("login.password_placeholder")} + className='mb-4' + showPassword={showPassword} + onShowPasswordChange={setShowPassword} + topPosition='4' + testID='tv-password-input' + accessibilityLabel={t("login.password_placeholder")} + /> @@ -417,33 +405,18 @@ const Login: React.FC = () => { maxLength={500} /> - - - setCredentials({ ...credentials, password: text }) - } - value={credentials.password} - secureTextEntry={!showPassword} - keyboardType='default' - returnKeyType='done' - autoCapitalize='none' - textContentType='password' - clearButtonMode='while-editing' - maxLength={500} - className='pr-12' - /> - setShowPassword(!showPassword)} - className='absolute right-3 top-3.5 p-1' - > - - - + + setCredentials({ ...credentials, password: text }) + } + placeholder={t("login.password_placeholder")} + showPassword={showPassword} + onShowPasswordChange={setShowPassword} + topPosition='3.5' + testID='mobile-password-input' + accessibilityLabel={t("login.password_placeholder")} + />