Merge branch 'master' into upload-refactoring

This commit is contained in:
Abhinav-grd 2021-08-13 19:50:17 +05:30
commit 34f5c42cc7
5 changed files with 16 additions and 10 deletions

View file

@ -7,7 +7,7 @@ import SubmitButton from 'components/SubmitButton';
import router from 'next/router'; import router from 'next/router';
import { changeEmail, getOTTForEmailChange } from 'services/userService'; import { changeEmail, getOTTForEmailChange } from 'services/userService';
import styled from 'styled-components'; import styled from 'styled-components';
import { AppContext } from 'pages/_app'; import { AppContext, FLASH_MESSAGE_TYPE } from 'pages/_app';
import { getData, LS_KEYS, setData } from 'utils/storage/localStorage'; import { getData, LS_KEYS, setData } from 'utils/storage/localStorage';
interface formValues { interface formValues {
@ -77,7 +77,7 @@ function ChangeEmailForm(props: Props) {
setData(LS_KEYS.USER, { ...getData(LS_KEYS.USER), email }); setData(LS_KEYS.USER, { ...getData(LS_KEYS.USER), email });
appContext.setDisappearingFlashMessage({ appContext.setDisappearingFlashMessage({
message: constants.EMAIL_UDPATE_SUCCESSFUL, message: constants.EMAIL_UDPATE_SUCCESSFUL,
severity: 'success', type: FLASH_MESSAGE_TYPE.SUCCESS,
}); });
router.push('/gallery'); router.push('/gallery');
} catch (e) { } catch (e) {

View file

@ -12,7 +12,7 @@ export default function FlashMessageBar({
return ( return (
<Alert <Alert
className="flash-message text-center" className="flash-message text-center"
variant={flashMessage.severity} variant={flashMessage.type}
dismissible dismissible
onClose={onClose}> onClose={onClose}>
<div style={{ maxWidth: '1024px', width: '80%', margin: 'auto' }}> <div style={{ maxWidth: '1024px', width: '80%', margin: 'auto' }}>

View file

@ -1,6 +1,6 @@
import { useRouter } from 'next/router'; import { useRouter } from 'next/router';
import { DeadCenter, SetLoading } from 'pages/gallery'; import { DeadCenter, SetLoading } from 'pages/gallery';
import { AppContext } from 'pages/_app'; import { AppContext, FLASH_MESSAGE_TYPE } from 'pages/_app';
import React, { useContext, useEffect, useState } from 'react'; import React, { useContext, useEffect, useState } from 'react';
import { Button, Row } from 'react-bootstrap'; import { Button, Row } from 'react-bootstrap';
import { disableTwoFactor, getTwoFactorStatus } from 'services/userService'; import { disableTwoFactor, getTwoFactorStatus } from 'services/userService';
@ -63,12 +63,12 @@ function TwoFactorModal(props: Props) {
props.closeSidebar(); props.closeSidebar();
appContext.setDisappearingFlashMessage({ appContext.setDisappearingFlashMessage({
message: constants.TWO_FACTOR_DISABLE_SUCCESS, message: constants.TWO_FACTOR_DISABLE_SUCCESS,
severity: 'info', type: FLASH_MESSAGE_TYPE.INFO,
}); });
} catch (e) { } catch (e) {
appContext.setDisappearingFlashMessage({ appContext.setDisappearingFlashMessage({
message: constants.TWO_FACTOR_DISABLE_FAILED, message: constants.TWO_FACTOR_DISABLE_FAILED,
severity: 'danger', type: FLASH_MESSAGE_TYPE.DANGER,
}); });
} }
}; };

View file

@ -404,9 +404,15 @@ type AppContextType = {
setDisappearingFlashMessage: (message: FlashMessage) => void; setDisappearingFlashMessage: (message: FlashMessage) => void;
}; };
export enum FLASH_MESSAGE_TYPE {
DANGER = 'danger',
INFO = 'info',
SUCCESS = 'success',
WARNING = 'warning',
}
export interface FlashMessage { export interface FlashMessage {
message: string; message: string;
severity: string; type: FLASH_MESSAGE_TYPE;
} }
export const AppContext = createContext<AppContextType>(null); export const AppContext = createContext<AppContextType>(null);

View file

@ -17,7 +17,7 @@ import VerifyTwoFactor from 'components/VerifyTwoFactor';
import { B64EncryptionResult } from 'utils/crypto'; import { B64EncryptionResult } from 'utils/crypto';
import { encryptWithRecoveryKey } from 'utils/crypto'; import { encryptWithRecoveryKey } from 'utils/crypto';
import { setData, LS_KEYS, getData } from 'utils/storage/localStorage'; import { setData, LS_KEYS, getData } from 'utils/storage/localStorage';
import { AppContext } from 'pages/_app'; import { AppContext, FLASH_MESSAGE_TYPE } from 'pages/_app';
enum SetupMode { enum SetupMode {
QR_CODE, QR_CODE,
@ -56,7 +56,7 @@ export default function SetupTwoFactor() {
} catch (e) { } catch (e) {
appContext.setDisappearingFlashMessage({ appContext.setDisappearingFlashMessage({
message: constants.TWO_FACTOR_SETUP_FAILED, message: constants.TWO_FACTOR_SETUP_FAILED,
severity: 'danger', type: FLASH_MESSAGE_TYPE.DANGER,
}); });
router.push('/gallery'); router.push('/gallery');
} }
@ -71,7 +71,7 @@ export default function SetupTwoFactor() {
}); });
appContext.setDisappearingFlashMessage({ appContext.setDisappearingFlashMessage({
message: constants.TWO_FACTOR_SETUP_SUCCESS, message: constants.TWO_FACTOR_SETUP_SUCCESS,
severity: 'info', type: FLASH_MESSAGE_TYPE.SUCCESS,
}); });
router.push('/gallery'); router.push('/gallery');
}; };