1 <style lang="scss" scoped>
10 color: rgba(255,255,255,0.5);
41 width: calc(100% - 40px);
50 .mnemonic-panel, .target-mnemonic-panel {
54 display: inline-block;
58 border: 1px solid #EBEBEB;
59 box-sizing: border-box;
61 color: rgba(0, 0, 0, 0.88);
81 .target-mnemonic-panel {
89 cursor: auto !important;
96 <div class="warp bg-white">
97 <div class="header color-black">
98 <BackButton :des="'welcome-mnemonic'"/>
100 <div class="welcome-title">{{ $t('verifyMnemonic.title')}}</div>
103 <div class="divider"></div>
104 <div class="container">
105 <div class="target-mnemonic-panel">
106 <div v-for="index in inputMnemonicIndex">
107 <div> {{ mnemonicList[index] }}</div>
110 <div class="mnemonic-panel">
111 <div v-for="(word, index) in mnemonicList">
112 <div :class="activeWord(index)" @click="updateMnemonicList(index)"> {{ word }}</div>
116 <button :class="['btn btn-primary btn-round float-right',{disable: disableBtn}]" @click="verify" :disabled="disableBtn"><i class="iconfont icon-right-arrow"></i></button>
125 import account from "../../models/account";
126 import { getLanguage } from '@/assets/language'
127 import { mapActions, mapGetters, mapState } from 'vuex'
128 import * as Actions from '@/store/constants';
129 import {RouteNames} from '@/router'
136 inputMnemonicIndex:[]
142 const a = this.mnemonic.split(' ')
144 for (let i = a.length - 1; i > 0; i--) {
145 const j = Math.floor(Math.random() * (i + 1));
146 [a[i], a[j]] = [a[j], a[i]];
155 const formMnemonic = this.inputMnemonicIndex.map(i => this.mnemonicList[i]).join(" ")
156 return this.inputMnemonicIndex.length !==12 || formMnemonic !==this.mnemonic;
176 verify: function () {
177 const formMnemonic = this.inputMnemonicIndex.map(i => this.mnemonicList[i]).join(" ")
179 if (formMnemonic !== this.mnemonic) {
181 this.$t("error.BTM0002")
186 let loader = this.$loading.show({
189 onCancel: this.onCancel
192 account.createAccount(this).then(() => {
194 this[Actions.PUSH_ALERT](this.$t("successMsg.createWallet"))
202 updateMnemonicList(index){
203 const i = this.inputMnemonicIndex.indexOf(index)
205 this.inputMnemonicIndex.splice(i, 1)
207 this.inputMnemonicIndex.push(index)
211 return this.inputMnemonicIndex.includes(index)? "active": "";
214 Actions.UPDATE_STORED_BYTOM,
220 this.$router.push({ name: RouteNames.MNEMONIC })