[Refactoring] Settings: Some renamings

This commit is contained in:
Alexander Zinchuk 2023-12-04 14:38:34 +01:00
parent 888d98c318
commit 0e5660abd7
3 changed files with 34 additions and 45 deletions

View File

@ -191,27 +191,27 @@ const Settings: FC<OwnProps> = ({
onReset(); onReset();
}); });
function renderCurrentSectionContent(isScreenActive: boolean, screen: SettingsScreens) { function renderCurrentSectionContent(isScreenActive: boolean, activeScreen: SettingsScreens) {
const privacyAllowScreens: Record<number, boolean> = { const privacyAllowScreens: Record<number, boolean> = {
[SettingsScreens.PrivacyPhoneNumber]: PRIVACY_PHONE_NUMBER_SCREENS.includes(screen), [SettingsScreens.PrivacyPhoneNumber]: PRIVACY_PHONE_NUMBER_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyLastSeen]: PRIVACY_LAST_SEEN_PHONE_SCREENS.includes(screen), [SettingsScreens.PrivacyLastSeen]: PRIVACY_LAST_SEEN_PHONE_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyProfilePhoto]: PRIVACY_PROFILE_PHOTO_SCREENS.includes(screen), [SettingsScreens.PrivacyProfilePhoto]: PRIVACY_PROFILE_PHOTO_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyBio]: PRIVACY_BIO_SCREENS.includes(screen), [SettingsScreens.PrivacyBio]: PRIVACY_BIO_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyPhoneCall]: PRIVACY_PHONE_CALL_SCREENS.includes(screen), [SettingsScreens.PrivacyPhoneCall]: PRIVACY_PHONE_CALL_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyPhoneP2P]: PRIVACY_PHONE_P2P_SCREENS.includes(screen), [SettingsScreens.PrivacyPhoneP2P]: PRIVACY_PHONE_P2P_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyForwarding]: PRIVACY_FORWARDING_SCREENS.includes(screen), [SettingsScreens.PrivacyForwarding]: PRIVACY_FORWARDING_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyVoiceMessages]: PRIVACY_VOICE_MESSAGES_SCREENS.includes(screen), [SettingsScreens.PrivacyVoiceMessages]: PRIVACY_VOICE_MESSAGES_SCREENS.includes(activeScreen),
[SettingsScreens.PrivacyGroupChats]: PRIVACY_GROUP_CHATS_SCREENS.includes(screen), [SettingsScreens.PrivacyGroupChats]: PRIVACY_GROUP_CHATS_SCREENS.includes(activeScreen),
}; };
const isTwoFaScreen = TWO_FA_SCREENS.includes(screen); const isTwoFaScreen = TWO_FA_SCREENS.includes(activeScreen);
const isPasscodeScreen = PASSCODE_SCREENS.includes(screen); const isPasscodeScreen = PASSCODE_SCREENS.includes(activeScreen);
const isFoldersScreen = FOLDERS_SCREENS.includes(screen); const isFoldersScreen = FOLDERS_SCREENS.includes(activeScreen);
const isPrivacyScreen = PRIVACY_SCREENS.includes(screen) const isPrivacyScreen = PRIVACY_SCREENS.includes(activeScreen)
|| isTwoFaScreen || isTwoFaScreen
|| isPasscodeScreen || isPasscodeScreen
|| Object.keys(privacyAllowScreens).includes(screen.toString()) || Object.keys(privacyAllowScreens).map(Number).includes(activeScreen)
|| Object.values(privacyAllowScreens).find((key) => key === true); || Object.values(privacyAllowScreens).includes(true);
switch (currentScreen) { switch (currentScreen) {
case SettingsScreens.Main: case SettingsScreens.Main:
@ -230,10 +230,10 @@ const Settings: FC<OwnProps> = ({
<SettingsGeneral <SettingsGeneral
onScreenSelect={onScreenSelect} onScreenSelect={onScreenSelect}
isActive={isScreenActive isActive={isScreenActive
|| screen === SettingsScreens.GeneralChatBackgroundColor || activeScreen === SettingsScreens.GeneralChatBackgroundColor
|| screen === SettingsScreens.GeneralChatBackground || activeScreen === SettingsScreens.GeneralChatBackground
|| screen === SettingsScreens.QuickReaction || activeScreen === SettingsScreens.QuickReaction
|| screen === SettingsScreens.CustomEmoji || activeScreen === SettingsScreens.CustomEmoji
|| isPrivacyScreen || isFoldersScreen} || isPrivacyScreen || isFoldersScreen}
onReset={handleReset} onReset={handleReset}
/> />
@ -265,7 +265,7 @@ const Settings: FC<OwnProps> = ({
case SettingsScreens.Language: case SettingsScreens.Language:
return ( return (
<SettingsLanguage <SettingsLanguage
isActive={isScreenActive || screen === SettingsScreens.DoNotTranslate} isActive={isScreenActive || activeScreen === SettingsScreens.DoNotTranslate}
onReset={handleReset} onReset={handleReset}
onScreenSelect={onScreenSelect} onScreenSelect={onScreenSelect}
/> />
@ -286,7 +286,7 @@ const Settings: FC<OwnProps> = ({
return ( return (
<SettingsGeneralBackground <SettingsGeneralBackground
onScreenSelect={onScreenSelect} onScreenSelect={onScreenSelect}
isActive={isScreenActive || screen === SettingsScreens.GeneralChatBackgroundColor} isActive={isScreenActive || activeScreen === SettingsScreens.GeneralChatBackgroundColor}
onReset={handleReset} onReset={handleReset}
/> />
); );
@ -385,7 +385,7 @@ const Settings: FC<OwnProps> = ({
return ( return (
<SettingsFolders <SettingsFolders
currentScreen={currentScreen} currentScreen={currentScreen}
shownScreen={screen} shownScreen={activeScreen}
state={foldersState} state={foldersState}
dispatch={foldersDispatch} dispatch={foldersDispatch}
isActive={isScreenActive} isActive={isScreenActive}
@ -415,7 +415,7 @@ const Settings: FC<OwnProps> = ({
currentScreen={currentScreen} currentScreen={currentScreen}
state={twoFaState} state={twoFaState}
dispatch={twoFaDispatch} dispatch={twoFaDispatch}
shownScreen={screen} shownScreen={activeScreen}
isActive={isScreenActive} isActive={isScreenActive}
onScreenSelect={onScreenSelect} onScreenSelect={onScreenSelect}
onReset={handleReset} onReset={handleReset}
@ -436,7 +436,7 @@ const Settings: FC<OwnProps> = ({
currentScreen={currentScreen} currentScreen={currentScreen}
passcode={privacyPasscode} passcode={privacyPasscode}
onSetPasscode={setPrivacyPasscode} onSetPasscode={setPrivacyPasscode}
shownScreen={screen} shownScreen={activeScreen}
isActive={isScreenActive} isActive={isScreenActive}
onScreenSelect={onScreenSelect} onScreenSelect={onScreenSelect}
onReset={handleReset} onReset={handleReset}
@ -456,7 +456,12 @@ const Settings: FC<OwnProps> = ({
} }
} }
function renderCurrentSection(isScreenActive: boolean, isFrom: boolean, currentKey: SettingsScreens) { function renderCurrentSection(
isScreenActive: boolean,
_isFrom: boolean,
_currentKey: SettingsScreens,
activeKey: SettingsScreens,
) {
return ( return (
<> <>
<SettingsHeader <SettingsHeader
@ -465,7 +470,7 @@ const Settings: FC<OwnProps> = ({
onScreenSelect={onScreenSelect} onScreenSelect={onScreenSelect}
editedFolderId={foldersState.folderId} editedFolderId={foldersState.folderId}
/> />
{renderCurrentSectionContent(isScreenActive, currentKey)} {renderCurrentSectionContent(isScreenActive, activeKey)}
</> </>
); );
} }

View File

@ -1,16 +0,0 @@
import type { FC } from '../../lib/teact/teact';
import React from '../../lib/teact/teact';
import type { ChildrenFn, TransitionProps } from '../ui/Transition';
import { IS_TOUCH_ENV } from '../../util/windowEnvironment';
import Transition from '../ui/Transition';
const SlideTransition: FC<TransitionProps & { children: ChildrenFn }> = ({ children, ...props }) => {
if (IS_TOUCH_ENV) return children(true, true, 1);
// eslint-disable-next-line react/jsx-props-no-spreading
return <Transition {...props}>{children}</Transition>;
};
export default SlideTransition;

View File

@ -23,7 +23,7 @@ type AnimationName = (
| 'fade' | 'pushSlide' | 'reveal' | 'slideOptimized' | 'slideOptimizedRtl' | 'semiFade' | 'fade' | 'pushSlide' | 'reveal' | 'slideOptimized' | 'slideOptimizedRtl' | 'semiFade'
| 'slideVertical' | 'slideVerticalFade' | 'slideFadeAndroid' | 'slideVertical' | 'slideVerticalFade' | 'slideFadeAndroid'
); );
export type ChildrenFn = (isActive: boolean, isFrom: boolean, currentKey: number) => React.ReactNode; export type ChildrenFn = (isActive: boolean, isFrom: boolean, currentKey: number, activeKey: number) => React.ReactNode;
export type TransitionProps = { export type TransitionProps = {
ref?: RefObject<HTMLDivElement>; ref?: RefObject<HTMLDivElement>;
activeKey: number; activeKey: number;
@ -350,7 +350,7 @@ function Transition({
} }
const rendered = typeof render === 'function' const rendered = typeof render === 'function'
? render(key === activeKey, key === prevActiveKey, activeKey) ? render(key === activeKey, key === prevActiveKey, key, activeKey)
: render; : render;
return (shouldWrap && key !== wrapExceptionKey) || asFastList return (shouldWrap && key !== wrapExceptionKey) || asFastList