import React, { FC, memo } from '../../../lib/teact/teact'; import { withGlobal } from '../../../lib/teact/teactn'; import { SettingsScreens } from '../../../types'; import { ApiUser } from '../../../api/types'; import { selectUser } from '../../../modules/selectors'; import { getUserFullName } from '../../../modules/helpers'; import { formatPhoneNumberWithCode } from '../../../util/phoneNumber'; import useLang from '../../../hooks/useLang'; import ListItem from '../../ui/ListItem'; import Avatar from '../../common/Avatar'; type OwnProps = { onScreenSelect: (screen: SettingsScreens) => void; }; type StateProps = { currentUser?: ApiUser; }; const SettingsMain: FC = ({ onScreenSelect, currentUser, }) => { const lang = useLang(); return (
{currentUser && (

{getUserFullName(currentUser)}

{formatPhoneNumberWithCode(currentUser.phoneNumber)}

)} onScreenSelect(SettingsScreens.EditProfile)} > {lang('EditProfile')} onScreenSelect(SettingsScreens.Folders)} > {lang('Filters')} onScreenSelect(SettingsScreens.General)} > {lang('GeneralSettings')} onScreenSelect(SettingsScreens.Notifications)} > {lang('Notifications')} onScreenSelect(SettingsScreens.Privacy)} > {lang('PrivacySettings')} onScreenSelect(SettingsScreens.Language)} > {lang('Language')}
); }; export default memo(withGlobal( (global): StateProps => { const { currentUserId } = global; return { currentUser: currentUserId ? selectUser(global, currentUserId) : undefined, }; }, )(SettingsMain));