Use jshashes on Enter new password
This commit is contained in:
@@ -1,35 +1,24 @@
|
||||
import React, { useState, useEffect } from 'react'
|
||||
import React, { useState } from 'react'
|
||||
import { KeyboardAvoidingView, StyleSheet } from 'react-native'
|
||||
import nodejs from 'nodejs-mobile-react-native'
|
||||
import PropTypes from 'prop-types'
|
||||
import { SHA512 } from 'jshashes'
|
||||
|
||||
import AppText from '../../common/app-text'
|
||||
import AppTextInput from '../../common/app-text-input'
|
||||
import Button from '../../common/button'
|
||||
|
||||
import { requestHash } from '../../../db'
|
||||
import { Colors, Spacing } from '../../../styles'
|
||||
import settings from '../../../i18n/en/settings'
|
||||
|
||||
const LISTENER_TYPE = 'create-or-change-pw'
|
||||
|
||||
const EnterNewPassword = ({ changeEncryptionAndRestart }) => {
|
||||
const [password, setPassword] = useState('')
|
||||
const [passwordConfirmation, setPasswordConfirmation] = useState('')
|
||||
const [shouldShowErrorMessage, setShouldShowErrorMessage] = useState(false)
|
||||
|
||||
useEffect(() => {
|
||||
const listener = nodejs.channel.addListener(
|
||||
LISTENER_TYPE,
|
||||
changeEncryptionAndRestart,
|
||||
this
|
||||
)
|
||||
return () => listener.remove()
|
||||
}, [])
|
||||
|
||||
const savePassword = () => {
|
||||
if (comparePasswords()) {
|
||||
requestHash(LISTENER_TYPE, password)
|
||||
const hash = new SHA512().hex(password)
|
||||
changeEncryptionAndRestart(hash)
|
||||
} else {
|
||||
setShouldShowErrorMessage(true)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user