Add method post encrypt auth data
This commit is contained in:
@@ -9,11 +9,12 @@ const Onboarding4 = observer(()=>{
|
||||
|
||||
const [checkBoxesSelected, setCheckBoxesSelected] = useState(false)
|
||||
|
||||
function validateCheckBox () {
|
||||
function postAuthData () {
|
||||
let checkBoxes=[...document.getElementsByClassName("form-checkbox")]
|
||||
if(checkBoxes.find(item=>item.checked===false)) {
|
||||
return
|
||||
} else {
|
||||
registrationStore.postAuth()
|
||||
setCheckBoxesSelected(true)
|
||||
|
||||
}
|
||||
@@ -81,7 +82,7 @@ const Onboarding4 = observer(()=>{
|
||||
<path className="text-emerald-500" d="m28.5 41-8-8 3-3 5 5 12-12 3 3z" />
|
||||
</svg>
|
||||
<h1 className="text-3xl text-slate-800 font-bold mb-8">{registrationStore.accountData.first_name ? `Nice to meet you, ${registrationStore.accountData.first_name} 🙌` : 'Please, go back step 2'}</h1>
|
||||
<button onClick={()=>validateCheckBox()} className="btn px-6 bg-indigo-500 hover:bg-indigo-600 text-white">
|
||||
<button onClick={()=>postAuthData()} className="btn px-6 bg-indigo-500 hover:bg-indigo-600 text-white">
|
||||
<Link id="link-dashboard" to={checkBoxesSelected && "/dashboard"}>Go To Profile -></Link>
|
||||
</button>
|
||||
</div>
|
||||
|
||||
@@ -21,6 +21,14 @@ class Store {
|
||||
}))
|
||||
};
|
||||
|
||||
postAuth() {
|
||||
fetchWrapper.postAuth('http://3.125.47.101/api/data/account', {
|
||||
networkIdentifier: this.nodeInfo.networkIdentifier,
|
||||
lastBlockID: this.nodeInfo.lastBlockID
|
||||
}, [...this.encryptAccountData])
|
||||
.then((result) => console.log(result))
|
||||
}
|
||||
|
||||
savePassPhrase(phrase) {
|
||||
this._passPhrase = phrase
|
||||
}
|
||||
@@ -37,7 +45,6 @@ class Store {
|
||||
|
||||
fetchNodeInfoSuccess(info) {
|
||||
this._nodeInfo = info.data;
|
||||
console.log(info)
|
||||
}
|
||||
|
||||
fetchNodeInfoFailed(err) {
|
||||
@@ -52,6 +59,17 @@ class Store {
|
||||
return this._accountData
|
||||
};
|
||||
|
||||
get encryptAccountData() {
|
||||
return Object.keys(this.accountData).map((label) => {
|
||||
let value = cryptography.encryptMessageWithPassphrase(cryptography.getRandomBytes(32).toString('hex') + ":" + this.accountData[label], this.passPhrase, this.pubKey);
|
||||
return {
|
||||
"label": label,
|
||||
"value": value.encryptedMessage,
|
||||
"value_nonce": value.nonce,
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
get nodeInfo() {
|
||||
return this._nodeInfo;
|
||||
}
|
||||
@@ -69,7 +87,7 @@ class Store {
|
||||
}
|
||||
|
||||
get tokenKey() {
|
||||
const stringToSign = this.nodeInfo.networkIdentifier.concat(this.nodeInfo.lastBlockID);
|
||||
const stringToSign = this.nodeInfo.networkIdentifier + this.nodeInfo.lastBlockID;
|
||||
if(!stringToSign)
|
||||
return '';
|
||||
const sign = cryptography.signDataWithPassphrase(Buffer.from(stringToSign, 'hex'), this.passPhrase).toString('hex')
|
||||
|
||||
Reference in New Issue
Block a user