OSDN Git Service

update the restore from keystore
authorZhiting Lin <zlin035@uottawa.ca>
Mon, 3 Aug 2020 02:49:36 +0000 (10:49 +0800)
committerZhiting Lin <zlin035@uottawa.ca>
Mon, 3 Aug 2020 02:49:36 +0000 (10:49 +0800)
src/models/account.js
src/utils/Settings.js
src/utils/constants.js
src/views/welcome/import.vue
src/views/welcome/password/setting.vue

index 6d14dc3..40bf2f6 100644 (file)
@@ -60,7 +60,7 @@ account.restoreByMnemonic = function(accountAlias, mnemonic, passwd, context) {
 
     const res = bytom.keys.restoreFromMnemonic(keyAlias, passwd, mnemonic)
 
-    bytom.wallet.list(res.xPub).then(wallet =>{
+    bytom.wallet.list(res.xpub).then(wallet =>{
       let walletInfo
       if(wallet.length>0){
         let ret = {
@@ -109,7 +109,7 @@ account.restoreByKeystore = function(accountAlias, keystore, password, context)
 
     const res = bytom.keys.restoreFromKeystore(password, keystore)
 
-    bytom.wallet.list(res.xPub).then(wallet =>{
+    bytom.wallet.list(res.xpub).then(wallet =>{
       let walletInfo
       if(wallet.length>0){
         let ret = {
@@ -123,10 +123,12 @@ account.restoreByKeystore = function(accountAlias, keystore, password, context)
       }
 
       walletInfo.then(ret => {
-        let resultObj =  Object.assign(res, ret)
+        let resultObj =  Object.assign(ret, {})
         resultObj.alias = accountAlias
         resultObj.keyAlias = res.keyAlias
         resultObj.vMnemonic = true
+        resultObj.keystore = keystore
+        resultObj.xpub = res.xpub
 
         _bytom.keychain.pairs[accountAlias] = resultObj
         _bytom.currentAccount = resultObj
@@ -227,6 +229,10 @@ account.isValidMnemonic = function(mnemonic) {
   return bytom.keys.isValidMnemonic(mnemonic)
 }
 
+account.isValidKeystore = function(keystore) {
+  return bytom.keys.isValidKeystore(keystore)
+}
+
 
 
 export default account
index c70857a..c292648 100644 (file)
@@ -4,6 +4,8 @@ export default class Settings {
         const uiLang = (chrome.i18n.getUILanguage().split('_')[0]).split('-')[0]
         this.domains = [];
         this.language = uiLang||'en';
+        this.netType ='bytom';
+        this.net ='testnet';
     }
 
     static placeholder(){ return new Settings(); }
index 7334bc5..6b64e63 100644 (file)
@@ -26,9 +26,9 @@ export const networks = {
 }
 
 export const networksJS = {
-  mainnet: `${networks['mainnet']}/bytom/v3/`,
+  mainnetbytom: `${networks['mainnet']}/bytom/v3/`,
   mainnetvapor: `${networks['mainnet']}/vapor/v3/` ,
-  testnet: `${networks['testnet']}:4000/bytom/v3/`,
+  testnetbytom: `${networks['testnet']}:4000/bytom/v3/`,
   testnetvapor: `${networks['testnet']}:3000/vapor/v3/` ,
 }
 
index ca404f2..620e70e 100644 (file)
               );
               return
             }
-            this[Actions.SET_DATA]({
-              keystore: this.formItem.keystoreF
-            }).then(() => {
-              this.$router.push('/restore-password');
-            });
+
+            try{
+              const keystore = account.isValidKeystore(this.formItem.keystoreF)
+              this[Actions.SET_DATA]({
+                keystore: keystore
+              }).then(() => {
+                this.$router.push('/restore-password');
+              });
+            }catch (e){
+              this.$toast.error(
+                e.message || e
+              );
+              return
+            }
+
             break;
           }
           case 'ktext':
               return
             }
 
-            this[Actions.SET_DATA]({
-              keystore: this.formItem.keystore
-            }).then(() => {
-              this.$router.push('/restore-password');
-            });
+            try{
+              const keystore = account.isValidKeystore(this.formItem.keystore)
+              this[Actions.SET_DATA]({
+                keystore: keystore
+              }).then(() => {
+                this.$router.push('/restore-password');
+              });
+            }catch (e){
+              this.$toast.error(
+                e.message || e
+              );
+              return
+            }
+
             break;
           }
         }
index 1b35300..535111c 100644 (file)
@@ -57,7 +57,7 @@
       <div class="header color-black">
         <BackButton/>
         <h1>
-          <div class="welcome-title">{{ data.mnemonic? $t('restore.sPassword'):$t('restore.vPassword')}}</div>
+          <div class="welcome-title">{{ (data && data.mnemonic)? $t('restore.sPassword'):$t('restore.vPassword')}}</div>
         </h1>
       </div>
       <div class="divider"></div>
             }).catch(err => {
               loader.hide();
               this.$toast.error(
-                err.message
+                err.message || err
               )
             });
           }else if(keystore){
             }).catch(err => {
               loader.hide();
               this.$toast.error(
-                err.message
+                err.message || err
               )
             });