fix(key-generation): move generating mnemonic

This commit is contained in:
RadoslavDimchev 2024-02-01 11:31:23 +02:00 committed by Radoslav Dimchev
parent ee9a165f44
commit 0dc78ef076
2 changed files with 17 additions and 22 deletions

View File

@ -1,9 +1,6 @@
import { useEffect } from 'react'
import { Stack, YStack } from 'tamagui'
import { Text } from '@status-im/components'
import { generateMnemonic } from 'web-bip39'
import { useDispatch, useSelector } from 'react-redux'
import wordlist from 'web-bip39/wordlists/english'
import { useSelector } from 'react-redux'
import KeyGenerationHeader from './KeyGenerationHeader/KeyGenerationHeader'
import RecoveryMechanism from './RecoveryMechanism/RecoveryMechanism'
@ -16,22 +13,11 @@ import {
RECOVERY_PHRASE,
} from '../../../constants'
import { RootState } from '../../../redux/store'
import { setGeneratedMnemonic } from '../../../redux/ValidatorOnboarding/KeyGeneration/slice'
const KeyGeneration = () => {
const { recoveryMechanism, isConfirmPhraseStage } = useSelector(
(state: RootState) => state.keyGeneration,
)
const dispatch = useDispatch()
useEffect(() => {
getMnemonic()
}, [])
const getMnemonic = async () => {
const mnemonic = await generateMnemonic(wordlist, 256)
dispatch(setGeneratedMnemonic(mnemonic.split(' ')))
}
const isKeystoreFiles =
recoveryMechanism === KEYSTORE_FILES ||

View File

@ -2,10 +2,13 @@ import { Stack, XStack, YStack } from 'tamagui'
import { Button, InformationBox, Text } from '@status-im/components'
import { CloseCircleIcon, CopyIcon, CheckIcon } from '@status-im/icons'
import { useEffect, useState } from 'react'
import { useSelector } from 'react-redux'
import { useDispatch, useSelector } from 'react-redux'
import { generateMnemonic } from 'web-bip39'
import wordlist from 'web-bip39/wordlists/english'
import { RootState } from '../../../redux/store'
import { copyFunction } from '../../../utilities'
import { setGeneratedMnemonic } from '../../../redux/ValidatorOnboarding/KeyGeneration/slice'
import styles from './index.module.css'
type RecoveryPhraseProps = {
@ -18,6 +21,16 @@ const RecoveryPhrase = ({ isKeystoreFiles }: RecoveryPhraseProps) => {
const { generatedMnemonic } = useSelector(
(state: RootState) => state.keyGeneration,
)
const dispatch = useDispatch()
useEffect(() => {
getMnemonic()
}, [])
const getMnemonic = async () => {
const mnemonic = await generateMnemonic(wordlist, 256)
dispatch(setGeneratedMnemonic(mnemonic.split(' ')))
}
useEffect(() => {
setIsCopied(false)
@ -80,10 +93,6 @@ const RecoveryPhrase = ({ isKeystoreFiles }: RecoveryPhraseProps) => {
<Text key={index} size={19} weight={'semibold'}>
{word}
</Text>
</Stack>
<Text key={index} size={19} weight={'semibold'}>
{word}
</Text>
</XStack>
))}
</div>