move textfield components to global components

This commit is contained in:
fmtabbara
2022-05-11 13:39:01 +01:00
parent 7b00282b27
commit bfb868bfc7
13 changed files with 45 additions and 39 deletions
@@ -16,6 +16,7 @@ import { ArrowBackSharp } from '@mui/icons-material';
import { useClipboard } from 'use-clipboard-copy';
import { createMnemonic } from 'src/requests';
import { AccountsContext } from 'src/context';
import { PasswordInput } from 'src/components';
import { Mnemonic } from '../Mnemonic';
const createAccountSteps = [
@@ -117,7 +118,12 @@ const ConfirmPassword = ({ onConfirm }: { onConfirm: (password: string) => void
{error}
</Typography>
)}
<TextField value={value} onChange={(e) => setValue(e.target.value)} fullWidth type="password" />
<PasswordInput
password={value}
onUpdatePassword={(pswrd) => setValue(pswrd)}
label="Confirm password"
autoFocus
/>
</DialogContent>
<DialogActions sx={{ p: 3, pt: 0 }}>
<Button
@@ -210,7 +216,6 @@ export const AddAccountModal = () => {
onConfirm={async (password) => {
if (data.accountName && data.mnemonic) {
await handleAddAccount({ accountName: data.accountName, mnemonic: data.mnemonic, password });
setStep(0);
}
}}
/>
@@ -8,13 +8,13 @@ import {
DialogContent,
DialogTitle,
IconButton,
TextField,
Typography,
} from '@mui/material';
import { ArrowBackSharp } from '@mui/icons-material';
import { AccountsContext } from 'src/context';
import { useClipboard } from 'use-clipboard-copy';
import { Mnemonic } from '../Mnemonic';
import { PasswordInput } from '../textfields';
export const MnemonicModal = () => {
const [password, setPassword] = useState('');
@@ -62,12 +62,10 @@ export const MnemonicModal = () => {
{!accountMnemonic.value ? (
<>
<Typography sx={{ mb: 2 }}>Enter the password used to login to your wallet</Typography>
<TextField
<PasswordInput
label="Password"
type="password"
fullWidth
value={password}
onChange={(e: React.ChangeEvent<HTMLInputElement>) => setPassword(e.target.value)}
password={password}
onUpdatePassword={(pswrd) => setPassword(pswrd)}
autoFocus
/>
</>
+5 -14
View File
@@ -1,17 +1,8 @@
import React from 'react';
import { FallbackProps } from 'react-error-boundary';
import { Alert, AlertTitle, Button } from '@mui/material';
import { Alert } from '@mui/material';
export const ErrorFallback = ({ error, resetErrorBoundary }: FallbackProps) => (
<div>
<Alert severity="error" data-testid="error-message">
<AlertTitle>{error.name}</AlertTitle>
{error.message}
</Alert>
<Alert severity="error" data-testid="stack-trace">
<AlertTitle>Stack trace</AlertTitle>
{error.stack}
</Alert>
<Button onClick={resetErrorBoundary}>Back to safety</Button>
</div>
export const Error = ({ message }: { message: string }) => (
<Alert severity="error" variant="outlined" data-testid="error" sx={{ color: 'error.light', width: '100%' }}>
{message}
</Alert>
);
@@ -0,0 +1,17 @@
import React from 'react';
import { FallbackProps } from 'react-error-boundary';
import { Alert, AlertTitle, Button } from '@mui/material';
export const ErrorFallback = ({ error, resetErrorBoundary }: FallbackProps) => (
<div>
<Alert severity="error" data-testid="error-message">
<AlertTitle>{error.name}</AlertTitle>
{error.message}
</Alert>
<Alert severity="error" data-testid="stack-trace">
<AlertTitle>Stack trace</AlertTitle>
{error.stack}
</Alert>
<Button onClick={resetErrorBoundary}>Back to safety</Button>
</div>
);
+2 -1
View File
@@ -1,4 +1,4 @@
export * from './Error';
export * from './ErrorFallback';
export * from './CopyToClipboard';
export * from './NymCard';
export * from './Nav';
@@ -16,3 +16,4 @@ export * from './InfoToolTip';
export * from './Title';
export * from './TokenPoolSelector';
export * from './LoadingPage';
export * from './textfields';
@@ -1,7 +1,7 @@
import React, { useState } from 'react';
import { Box, IconButton, Stack, TextField } from '@mui/material';
import { Visibility, VisibilityOff } from '@mui/icons-material';
import { Error } from './error';
import { Error } from './Error';
export const MnemonicInput: React.FC<{
mnemonic: string;
@@ -1,8 +0,0 @@
import React from 'react';
import { Alert } from '@mui/material';
export const Error = ({ message }: { message: string }) => (
<Alert severity="error" variant="outlined" data-testid="error" sx={{ color: 'error.light', width: '100%' }}>
{message}
</Alert>
);
@@ -1,6 +1,4 @@
export * from './heading';
export * from './word-tiles';
export * from './password-strength';
export * from './error';
export * from './textfields';
export * from './step';
@@ -2,8 +2,9 @@ import React, { useContext, useEffect, useState } from 'react';
import { useHistory } from 'react-router-dom';
import { Button, Stack } from '@mui/material';
import { validateMnemonic } from 'src/requests';
import { MnemonicInput } from 'src/components';
import { AuthContext } from 'src/context/auth';
import { MnemonicInput, Subtitle } from '../components';
import { Subtitle } from '../components';
export const ConfirmMnemonic = () => {
const { error, setError, setMnemonic, mnemonic } = useContext(AuthContext);
@@ -4,8 +4,8 @@ import { Button, CircularProgress, FormControl, Stack } from '@mui/material';
import { useSnackbar } from 'notistack';
import { AuthContext } from 'src/context/auth';
import { createPassword } from 'src/requests';
import { PasswordInput } from 'src/components';
import { Subtitle, Title, PasswordStrength } from '../components';
import { PasswordInput } from '../components/textfields';
export const ConnectPassword = () => {
const [confirmedPassword, setConfirmedPassword] = useState<string>('');
@@ -4,7 +4,8 @@ import { Button, FormControl, Stack } from '@mui/material';
import { useSnackbar } from 'notistack';
import { AuthContext } from 'src/context/auth';
import { createPassword } from 'src/requests';
import { PasswordInput, Subtitle, Title, PasswordStrength } from '../components';
import { PasswordInput } from 'src/components';
import { Subtitle, Title, PasswordStrength } from '../components';
export const CreatePassword = () => {
const { password, setPassword, resetState, mnemonic } = useContext(AuthContext);
@@ -3,7 +3,8 @@ import { useHistory } from 'react-router-dom';
import { Box, Button, FormControl, Stack } from '@mui/material';
import { AppContext } from 'src/context';
import { isPasswordCreated } from 'src/requests';
import { MnemonicInput, Subtitle } from '../components';
import { MnemonicInput } from 'src/components';
import { Subtitle } from '../components';
export const SignInMnemonic = () => {
const [mnemonic, setMnemonic] = useState('');
@@ -1,7 +1,8 @@
import React, { useContext, useState } from 'react';
import { useHistory } from 'react-router-dom';
import { Box, Button, FormControl, Stack } from '@mui/material';
import { PasswordInput, Subtitle } from '../components';
import { PasswordInput } from 'src/components';
import { Subtitle } from '../components';
import { AppContext } from '../../../context/main';
export const SignInPassword = () => {