diff --git a/_locales/en/messages.json b/_locales/en/messages.json
index 0c7928003..72d933528 100644
--- a/_locales/en/messages.json
+++ b/_locales/en/messages.json
@@ -430,7 +430,6 @@
"recoveryPasswordHidePermanentlyDescription2": "Are you sure you want to permanently hide your recovery password on this device? This cannot be undone.",
"recoveryPasswordHideRecoveryPasswordDescription": "Permanently hide your recover password on this device.",
"recoveryPasswordWarningSendDescription": "This is your recovery password. If you send it to someone they'll have full access to your account.",
- "recoveryPhraseSavePromptMain": "Your recovery password is the master key to your Account ID — you can use it to restore your Account ID if you lose access to your device. Store your recovery password in a safe place, and don't give it to anyone.",
"remove": "Remove",
"removeAccountPasswordDescription": "Remove the password required to unlock Session.",
"removeAccountPasswordTitle": "Remove Password",
diff --git a/ts/components/dialog/ModalContainer.tsx b/ts/components/dialog/ModalContainer.tsx
index 4293d4305..11ab250f4 100644
--- a/ts/components/dialog/ModalContainer.tsx
+++ b/ts/components/dialog/ModalContainer.tsx
@@ -13,7 +13,6 @@ import {
getOnionPathDialog,
getReactClearAllDialog,
getReactListDialog,
- getRecoveryPhraseDialog,
getRemoveModeratorsModal,
getSessionPasswordDialog,
getUpdateGroupMembersModal,
@@ -34,7 +33,6 @@ import { ReactClearAllModal } from './ReactClearAllModal';
import { ReactListModal } from './ReactListModal';
import { SessionConfirm } from './SessionConfirm';
import { SessionNicknameDialog } from './SessionNicknameDialog';
-import { SessionSeedModal } from './SessionSeedModal';
import { SessionSetPasswordDialog } from './SessionSetPasswordDialog';
import { UpdateGroupMembersDialog } from './UpdateGroupMembersDialog';
import { UpdateGroupNameDialog } from './UpdateGroupNameDialog';
@@ -51,7 +49,6 @@ export const ModalContainer = () => {
const changeNicknameModal = useSelector(getChangeNickNameDialog);
const editProfileModalState = useSelector(getEditProfileDialog);
const onionPathModalState = useSelector(getOnionPathDialog);
- const recoveryPhraseModalState = useSelector(getRecoveryPhraseDialog);
const enterPasswordModalState = useSelector(getEnterPasswordModalState);
const sessionPasswordModalState = useSelector(getSessionPasswordDialog);
const deleteAccountModalState = useSelector(getDeleteAccountModalState);
@@ -75,7 +72,6 @@ export const ModalContainer = () => {
{changeNicknameModal && }
{editProfileModalState && }
{onionPathModalState && }
- {recoveryPhraseModalState && }
{enterPasswordModalState && }
{sessionPasswordModalState && }
{deleteAccountModalState && }
diff --git a/ts/components/dialog/SessionSeedModal.tsx b/ts/components/dialog/SessionSeedModal.tsx
deleted file mode 100644
index e1cbdc709..000000000
--- a/ts/components/dialog/SessionSeedModal.tsx
+++ /dev/null
@@ -1,142 +0,0 @@
-import { useState } from 'react';
-import { useDispatch, useSelector } from 'react-redux';
-import styled from 'styled-components';
-
-import { ToastUtils } from '../../session/utils';
-
-import { mnDecode } from '../../session/crypto/mnemonic';
-import { recoveryPhraseModal } from '../../state/ducks/modalDialog';
-import { SpacerSM } from '../basic/Text';
-
-import { usePasswordModal } from '../../hooks/usePasswordModal';
-import { getTheme } from '../../state/selectors/theme';
-import { getThemeValue } from '../../themes/globals';
-import { getCurrentRecoveryPhrase } from '../../util/storage';
-import { SessionQRCode } from '../SessionQRCode';
-import { SessionWrapperModal } from '../SessionWrapperModal';
-import { SessionButton, SessionButtonType } from '../basic/SessionButton';
-
-interface SeedProps {
- recoveryPhrase: string;
- onClickCopy?: () => any;
-}
-
-const StyledRecoveryPhrase = styled.i``;
-
-const Seed = (props: SeedProps) => {
- const { recoveryPhrase, onClickCopy } = props;
- const dispatch = useDispatch();
- const theme = useSelector(getTheme);
-
- const hexEncodedSeed = mnDecode(recoveryPhrase, 'english');
-
- const copyRecoveryPhrase = (recoveryPhraseToCopy: string) => {
- window.clipboard.writeText(recoveryPhraseToCopy);
- ToastUtils.pushCopiedToClipBoard();
- if (onClickCopy) {
- onClickCopy();
- }
- dispatch(recoveryPhraseModal(null));
- };
-
- return (
- <>
-
-
- {window.i18n('recoveryPhraseSavePromptMain')}
-
-
-
-
-
- {recoveryPhrase}
-
-
-
- {
- copyRecoveryPhrase(recoveryPhrase);
- }}
- />
-
- >
- );
-};
-
-const StyledSeedModalContainer = styled.div`
- margin: var(--margins-md) var(--margins-sm);
-`;
-
-interface ModalInnerProps {
- onClickOk?: () => any;
-}
-
-const SessionSeedModalInner = (props: ModalInnerProps) => {
- const { onClickOk } = props;
- const [loadingSeed, setLoadingSeed] = useState(true);
- const [recoveryPhrase, setRecoveryPhrase] = useState('');
- const dispatch = useDispatch();
-
- const onClose = () => dispatch(recoveryPhraseModal(null));
-
- usePasswordModal({
- onSuccess: () => {
- const newRecoveryPhrase = getCurrentRecoveryPhrase();
- setRecoveryPhrase(newRecoveryPhrase);
- setLoadingSeed(false);
- },
- onClose,
- title: window.i18n('sessionRecoveryPassword'),
- });
-
- if (loadingSeed) {
- return null;
- }
-
- return (
-
-
-
-
-
-
- );
-};
-
-export const SessionSeedModal = SessionSeedModalInner;
diff --git a/ts/state/ducks/modalDialog.tsx b/ts/state/ducks/modalDialog.tsx
index c4fbffa1c..cb27d97b7 100644
--- a/ts/state/ducks/modalDialog.tsx
+++ b/ts/state/ducks/modalDialog.tsx
@@ -20,7 +20,6 @@ export type UpdateGroupNameModalState = InviteContactModalState;
export type ChangeNickNameModalState = InviteContactModalState;
export type EditProfileModalState = object | null;
export type OnionPathModalState = EditProfileModalState;
-export type RecoveryPhraseModalState = EditProfileModalState;
export type EnterPasswordModalState = EnterPasswordModalProps | null;
export type DeleteAccountModalState = EditProfileModalState;
@@ -53,7 +52,6 @@ export type ModalState = {
nickNameModal: ChangeNickNameModalState;
editProfileModal: EditProfileModalState;
onionPathModal: OnionPathModalState;
- recoveryPhraseModal: RecoveryPhraseModalState;
enterPasswordModal: EnterPasswordModalState;
sessionPasswordModal: SessionPasswordModalState;
deleteAccountModal: DeleteAccountModalState;
@@ -75,7 +73,6 @@ export const initialModalState: ModalState = {
nickNameModal: null,
editProfileModal: null,
onionPathModal: null,
- recoveryPhraseModal: null,
enterPasswordModal: null,
sessionPasswordModal: null,
deleteAccountModal: null,
@@ -122,9 +119,6 @@ const ModalSlice = createSlice({
onionPathModal(state, action: PayloadAction) {
return { ...state, onionPathModal: action.payload };
},
- recoveryPhraseModal(state, action: PayloadAction) {
- return { ...state, recoveryPhraseModal: action.payload };
- },
updateEnterPasswordModal(state, action: PayloadAction) {
return { ...state, enterPasswordModal: action.payload };
},
@@ -161,7 +155,6 @@ export const {
changeNickNameModal,
editProfileModal,
onionPathModal,
- recoveryPhraseModal,
updateEnterPasswordModal,
sessionPassword,
updateDeleteAccountModal,
diff --git a/ts/state/selectors/modal.ts b/ts/state/selectors/modal.ts
index c09681a12..1e22a7498 100644
--- a/ts/state/selectors/modal.ts
+++ b/ts/state/selectors/modal.ts
@@ -14,7 +14,6 @@ import {
ModalState,
OnionPathModalState,
ReactModalsState,
- RecoveryPhraseModalState,
RemoveModeratorsModalState,
SessionPasswordModalState,
UpdateGroupMembersModalState,
@@ -82,11 +81,6 @@ export const getOnionPathDialog = createSelector(
(state: ModalState): OnionPathModalState => state.onionPathModal
);
-export const getRecoveryPhraseDialog = createSelector(
- getModal,
- (state: ModalState): RecoveryPhraseModalState => state.recoveryPhraseModal
-);
-
export const getEnterPasswordModalState = createSelector(
getModal,
(state: ModalState): EnterPasswordModalState => state.enterPasswordModal
diff --git a/ts/types/LocalizerKeys.ts b/ts/types/LocalizerKeys.ts
index e2ccdbc4e..3e6175aa5 100644
--- a/ts/types/LocalizerKeys.ts
+++ b/ts/types/LocalizerKeys.ts
@@ -430,7 +430,6 @@ export type LocalizerKeys =
| 'recoveryPasswordHidePermanentlyDescription2'
| 'recoveryPasswordHideRecoveryPasswordDescription'
| 'recoveryPasswordWarningSendDescription'
- | 'recoveryPhraseSavePromptMain'
| 'remove'
| 'removeAccountPasswordDescription'
| 'removeAccountPasswordTitle'