fix recover flow caused leading user to gallery even if he is on auth app

This commit is contained in:
Abhinav 2023-04-14 12:18:39 +05:30
parent ac0bece019
commit 1b10204c58
4 changed files with 24 additions and 16 deletions

View file

@ -19,7 +19,6 @@ export interface SetPasswordFormProps {
) => void ) => void
) => Promise<void>; ) => Promise<void>;
buttonText: string; buttonText: string;
back: () => void;
} }
export interface SetPasswordFormValues { export interface SetPasswordFormValues {
passphrase: string; passphrase: string;

View file

@ -19,6 +19,7 @@ export const ALLOWED_APP_PAGES = new Map([
PAGES.VERIFY, PAGES.VERIFY,
PAGES.CREDENTIALS, PAGES.CREDENTIALS,
PAGES.RECOVER, PAGES.RECOVER,
PAGES.CHANGE_PASSWORD,
PAGES.GENERATE, PAGES.GENERATE,
PAGES.AUTH, PAGES.AUTH,
PAGES.TWO_FACTOR_VERIFY, PAGES.TWO_FACTOR_VERIFY,

View file

@ -21,6 +21,7 @@ import FormPaper from 'components/Form/FormPaper';
import FormPaperFooter from 'components/Form/FormPaper/Footer'; import FormPaperFooter from 'components/Form/FormPaper/Footer';
import FormPaperTitle from 'components/Form/FormPaper/Title'; import FormPaperTitle from 'components/Form/FormPaper/Title';
import ComlinkCryptoWorker from 'utils/comlink/ComlinkCryptoWorker'; import ComlinkCryptoWorker from 'utils/comlink/ComlinkCryptoWorker';
import { APPS, getAppName } from 'constants/apps';
export default function ChangePassword() { export default function ChangePassword() {
const [token, setToken] = useState<string>(); const [token, setToken] = useState<string>();
@ -74,12 +75,17 @@ export default function ChangePassword() {
); );
await saveKeyInSessionStore(SESSION_KEYS.ENCRYPTION_KEY, key); await saveKeyInSessionStore(SESSION_KEYS.ENCRYPTION_KEY, key);
redirectToGallery(); redirectToAppHome();
}; };
const redirectToGallery = () => { const redirectToAppHome = () => {
setData(LS_KEYS.SHOW_BACK_BUTTON, { value: true }); setData(LS_KEYS.SHOW_BACK_BUTTON, { value: true });
router.push(PAGES.GALLERY); const appName = getAppName();
if (appName === APPS.AUTH) {
router.push(PAGES.AUTH);
} else {
router.push(PAGES.GALLERY);
}
}; };
return ( return (
@ -90,18 +96,14 @@ export default function ChangePassword() {
userEmail={user?.email} userEmail={user?.email}
callback={onSubmit} callback={onSubmit}
buttonText={t('CHANGE_PASSWORD')} buttonText={t('CHANGE_PASSWORD')}
back={
getData(LS_KEYS.SHOW_BACK_BUTTON)?.value
? redirectToGallery
: null
}
/> />
{getData(LS_KEYS.SHOW_BACK_BUTTON)?.value && (
<FormPaperFooter> <FormPaperFooter>
<LinkButton onClick={router.back}> <LinkButton onClick={router.back}>
{t('GO_BACK')} {t('GO_BACK')}
</LinkButton> </LinkButton>
</FormPaperFooter> </FormPaperFooter>
)}
</FormPaper> </FormPaper>
</VerticallyCentered> </VerticallyCentered>
); );

View file

@ -23,6 +23,8 @@ import FormContainer from 'components/Form/FormContainer';
import FormPaper from 'components/Form/FormPaper'; import FormPaper from 'components/Form/FormPaper';
import FormTitle from 'components/Form/FormPaper/Title'; import FormTitle from 'components/Form/FormPaper/Title';
import { APPS, getAppName } from 'constants/apps'; import { APPS, getAppName } from 'constants/apps';
import FormPaperFooter from 'components/Form/FormPaper/Footer';
import LinkButton from 'components/pages/gallery/LinkButton';
export default function Generate() { export default function Generate() {
const [token, setToken] = useState<string>(); const [token, setToken] = useState<string>();
@ -117,8 +119,12 @@ export default function Generate() {
userEmail={user?.email} userEmail={user?.email}
callback={onSubmit} callback={onSubmit}
buttonText={t('SET_PASSPHRASE')} buttonText={t('SET_PASSPHRASE')}
back={logoutUser}
/> />
<FormPaperFooter>
<LinkButton onClick={logoutUser}>
{t('GO_BACK')}
</LinkButton>
</FormPaperFooter>
</FormPaper> </FormPaper>
</FormContainer> </FormContainer>
)} )}