diff --git a/nym-wallet/src/components/Accounts/AddAccountModal.tsx b/nym-wallet/src/components/Accounts/AddAccountModal.tsx index c7ce4d35c6..e2b86c8289 100644 --- a/nym-wallet/src/components/Accounts/AddAccountModal.tsx +++ b/nym-wallet/src/components/Accounts/AddAccountModal.tsx @@ -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} )} - setValue(e.target.value)} fullWidth type="password" /> + setValue(pswrd)} + label="Confirm password" + autoFocus + /> - +export const Error = ({ message }: { message: string }) => ( + + {message} + ); diff --git a/nym-wallet/src/components/ErrorFallback.tsx b/nym-wallet/src/components/ErrorFallback.tsx new file mode 100644 index 0000000000..f582536b6b --- /dev/null +++ b/nym-wallet/src/components/ErrorFallback.tsx @@ -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) => ( +
+ + {error.name} + {error.message} + + + Stack trace + {error.stack} + + +
+); diff --git a/nym-wallet/src/components/index.ts b/nym-wallet/src/components/index.ts index 776aab98a6..b688f8a81f 100644 --- a/nym-wallet/src/components/index.ts +++ b/nym-wallet/src/components/index.ts @@ -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'; diff --git a/nym-wallet/src/pages/auth/components/textfields.tsx b/nym-wallet/src/components/textfields.tsx similarity index 98% rename from nym-wallet/src/pages/auth/components/textfields.tsx rename to nym-wallet/src/components/textfields.tsx index bf4e5e5597..835e6beb23 100644 --- a/nym-wallet/src/pages/auth/components/textfields.tsx +++ b/nym-wallet/src/components/textfields.tsx @@ -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; diff --git a/nym-wallet/src/pages/auth/components/error.tsx b/nym-wallet/src/pages/auth/components/error.tsx deleted file mode 100644 index a6d042ddc2..0000000000 --- a/nym-wallet/src/pages/auth/components/error.tsx +++ /dev/null @@ -1,8 +0,0 @@ -import React from 'react'; -import { Alert } from '@mui/material'; - -export const Error = ({ message }: { message: string }) => ( - - {message} - -); diff --git a/nym-wallet/src/pages/auth/components/index.ts b/nym-wallet/src/pages/auth/components/index.ts index c249976b6a..1798949439 100644 --- a/nym-wallet/src/pages/auth/components/index.ts +++ b/nym-wallet/src/pages/auth/components/index.ts @@ -1,6 +1,4 @@ export * from './heading'; export * from './word-tiles'; export * from './password-strength'; -export * from './error'; -export * from './textfields'; export * from './step'; diff --git a/nym-wallet/src/pages/auth/pages/confirm-mnemonic.tsx b/nym-wallet/src/pages/auth/pages/confirm-mnemonic.tsx index 521b2a07a8..761c2b479a 100644 --- a/nym-wallet/src/pages/auth/pages/confirm-mnemonic.tsx +++ b/nym-wallet/src/pages/auth/pages/confirm-mnemonic.tsx @@ -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); diff --git a/nym-wallet/src/pages/auth/pages/connect-password.tsx b/nym-wallet/src/pages/auth/pages/connect-password.tsx index 9698444f4c..de8f086f64 100644 --- a/nym-wallet/src/pages/auth/pages/connect-password.tsx +++ b/nym-wallet/src/pages/auth/pages/connect-password.tsx @@ -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(''); diff --git a/nym-wallet/src/pages/auth/pages/create-password.tsx b/nym-wallet/src/pages/auth/pages/create-password.tsx index a9a2129b21..8e99cffb8a 100644 --- a/nym-wallet/src/pages/auth/pages/create-password.tsx +++ b/nym-wallet/src/pages/auth/pages/create-password.tsx @@ -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); diff --git a/nym-wallet/src/pages/auth/pages/signin-mnemonic.tsx b/nym-wallet/src/pages/auth/pages/signin-mnemonic.tsx index c77086668a..c699bbf050 100644 --- a/nym-wallet/src/pages/auth/pages/signin-mnemonic.tsx +++ b/nym-wallet/src/pages/auth/pages/signin-mnemonic.tsx @@ -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(''); diff --git a/nym-wallet/src/pages/auth/pages/signin-password.tsx b/nym-wallet/src/pages/auth/pages/signin-password.tsx index d32cc2aef9..3528cb0dbe 100644 --- a/nym-wallet/src/pages/auth/pages/signin-password.tsx +++ b/nym-wallet/src/pages/auth/pages/signin-password.tsx @@ -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 = () => {