From 6bfcbe4da177dcf558013b3608404d23107110ab Mon Sep 17 00:00:00 2001 From: Alexander Zinchuk Date: Tue, 1 Jun 2021 11:49:33 +0300 Subject: [PATCH] Localization: Fix translations sometimes not applied --- src/components/common/Audio.tsx | 11 +++-- src/components/common/Avatar.tsx | 4 +- src/components/common/CalendarModal.tsx | 16 +++++-- src/components/common/DeleteChatModal.tsx | 8 ++-- src/components/common/EmbeddedMessage.tsx | 2 +- src/components/common/File.tsx | 6 ++- src/components/common/GroupChatInfo.tsx | 6 +-- src/components/common/LastMessageMeta.tsx | 7 ++- src/components/common/PickerSelectedItem.tsx | 4 +- src/components/common/PrivateChatInfo.tsx | 2 +- src/components/common/WebLink.tsx | 2 +- .../helpers/renderActionMessageText.tsx | 10 ++-- src/components/left/main/Chat.tsx | 4 +- src/components/left/search/AudioResults.tsx | 4 +- src/components/left/search/ChatMessage.tsx | 4 +- src/components/left/search/ChatResults.tsx | 9 ++-- src/components/left/search/FileResults.tsx | 4 +- src/components/left/search/LinkResults.tsx | 4 +- .../left/search/helpers/getSenderName.ts | 9 ++-- .../SettingsPrivacyActiveSessions.tsx | 2 +- .../settings/SettingsPrivacyBlockedUsers.tsx | 2 +- ...SettingsPrivacyVisibilityExceptionList.tsx | 8 ++-- .../folders/SettingsFoldersChatFilters.tsx | 6 ++- .../settings/folders/SettingsFoldersMain.tsx | 2 +- src/components/main/ForwardPicker.tsx | 8 ++-- src/components/mediaViewer/SenderInfo.tsx | 4 +- src/components/middle/AudioPlayer.tsx | 18 +++---- src/components/middle/MessageList.tsx | 4 +- src/components/middle/MiddleHeader.tsx | 31 ++++++------ src/components/middle/message/Message.tsx | 2 +- src/components/right/ProfileInfo.tsx | 2 +- src/components/right/ProfilePhoto.tsx | 4 +- src/components/right/RightSearch.tsx | 2 +- src/modules/helpers/chats.ts | 13 +++-- src/modules/helpers/messages.ts | 4 +- src/modules/helpers/users.ts | 4 +- src/util/dateFormat.ts | 48 +++++++++---------- src/util/notifications.ts | 4 +- 38 files changed, 151 insertions(+), 133 deletions(-) diff --git a/src/components/common/Audio.tsx b/src/components/common/Audio.tsx index 60a38ef6c..454cbce7c 100644 --- a/src/components/common/Audio.tsx +++ b/src/components/common/Audio.tsx @@ -27,7 +27,7 @@ import useMediaWithDownloadProgress from '../../hooks/useMediaWithDownloadProgre import useShowTransition from '../../hooks/useShowTransition'; import useBuffering from '../../hooks/useBuffering'; import useAudioPlayer from '../../hooks/useAudioPlayer'; -import useLang from '../../hooks/useLang'; +import useLang, { LangFn } from '../../hooks/useLang'; import Button from '../ui/Button'; import ProgressSpinner from '../ui/ProgressSpinner'; @@ -177,7 +177,7 @@ const Audio: FC = ({ onDateClick!(message.id, message.chatId); }, [onDateClick, message.id, message.chatId]); - useLang(); + const lang = useLang(); function getFirstLine() { if (isVoice) { @@ -245,7 +245,7 @@ const Audio: FC = ({ className="date" onClick={handleDateClick} > - {formatPastTimeShort(date * 1000)} + {formatPastTimeShort(lang, date * 1000)} )} @@ -293,7 +293,7 @@ const Audio: FC = ({ )} {renderingFor === 'searchResult' && renderSearchResult()} {renderingFor !== 'searchResult' && audio && renderAudio( - audio, isPlaying, playProgress, bufferedProgress, seekHandlers, date, + lang, audio, isPlaying, playProgress, bufferedProgress, seekHandlers, date, onDateClick ? handleDateClick : undefined, )} {renderingFor !== 'searchResult' && voice && renderVoice(voice, renderedWaveform, isMediaUnread)} @@ -302,6 +302,7 @@ const Audio: FC = ({ }; function renderAudio( + lang: LangFn, audio: ApiAudio, isPlaying: boolean, playProgress: number, @@ -327,7 +328,7 @@ function renderAudio( {' '} • {' '} - {formatMediaDateTime(date * 1000)} + {formatMediaDateTime(lang, date * 1000)} )} diff --git a/src/components/common/Avatar.tsx b/src/components/common/Avatar.tsx index 4a79a82b3..aa68be26c 100644 --- a/src/components/common/Avatar.tsx +++ b/src/components/common/Avatar.tsx @@ -54,7 +54,7 @@ const Avatar: FC = ({ const dataUri = useMedia(imageHash, false, ApiMediaFormat.DataUri, lastSyncTime); const { shouldRenderFullMedia, transitionClassNames } = useTransitionForMedia(dataUri, 'slow'); - useLang(); + const lang = useLang(); let content: string | undefined = ''; @@ -68,7 +68,7 @@ const Avatar: FC = ({ const userFullName = getUserFullName(user); content = userFullName ? getFirstLetters(userFullName, 2) : undefined; } else if (chat) { - const title = getChatTitle(chat); + const title = getChatTitle(lang, chat); content = title && getFirstLetters(title, isChatPrivate(chat.id) ? 2 : 1); } else if (text) { content = getFirstLetters(text, 2); diff --git a/src/components/common/CalendarModal.tsx b/src/components/common/CalendarModal.tsx index 7c6c28258..e70057b16 100644 --- a/src/components/common/CalendarModal.tsx +++ b/src/components/common/CalendarModal.tsx @@ -7,6 +7,7 @@ import { formatMonthAndYear, formatHumanDate, formatTime, } from '../../util/dateFormat'; import { IS_MOBILE_SCREEN } from '../../util/environment'; +import useLang, { LangFn } from '../../hooks/useLang'; import Modal from '../ui/Modal'; import Button from '../ui/Button'; @@ -42,6 +43,7 @@ const CalendarModal: FC = ({ onSubmit, onSecondButtonClick, }) => { + const lang = useLang(); const now = new Date(); const defaultSelectedDate = useMemo(() => (selectedAt ? new Date(selectedAt) : new Date()), [selectedAt]); const maxDate = maxAt ? new Date(maxAt) : undefined; @@ -181,7 +183,7 @@ const CalendarModal: FC = ({

- {formatMonthAndYear(selectedDate, IS_MOBILE_SCREEN)} + {formatMonthAndYear(lang, selectedDate, IS_MOBILE_SCREEN)}

{secondButtonLabel && (