import React, {useEffect} from 'react'; import i18n, {SUPPORTED_LANGUAGES} from '../i18n'; import {useTranslation} from 'react-i18next'; import {SetupPicker} from '../components/ui/SetupPicker'; import {Button, Column, Text} from '../components/ui'; import {Theme} from '../components/ui/styleUtils'; import {Icon} from 'react-native-elements'; import {RootRouteProps} from '../routes'; import {useWelcomeScreen} from './WelcomeScreenController'; import {changeLanguage} from '../components/LanguageSelector'; import {BackHandler, Dimensions} from 'react-native'; import {useBackupRestoreScreen} from './Settings/BackupRestoreController'; import {SvgImage} from '../components/ui/svg'; export const SetupLanguageScreen: React.FC = props => { const {t} = useTranslation('SetupLanguage'); const controller = useWelcomeScreen(props); const backupRestoreController = useBackupRestoreScreen(); const languages = Object.entries(SUPPORTED_LANGUAGES).map( ([value, label]) => ({label, value}), ); useEffect(() => { backupRestoreController.DOWNLOAD_UNSYNCED_BACKUP_FILES(); }, []); useEffect(() => { const backAction = () => { BackHandler.exitApp(); return true; }; const backHandler = BackHandler.addEventListener( 'hardwareBackPress', backAction, ); return () => backHandler.remove(); }, []); return ( {SvgImage.settingsLanguageIcon(58)} {t('header')} {t('description')} changeLanguage(i18n, language)} />