{
"name": "Byone",
"description": "Bytom Chrome Extension Wallet",
- "version": "2.1.4",
+ "version": "2.2.0",
"author": "zhiting.fly@8btc.com",
"license": "MIT",
"private": true,
"scripts": {
"dev": "webpack --config ./build/webpack.dev.conf.js --watch --hot",
- "build": "node build/build.js --env.minor",
+ "build": "npm run clear && node build/build.js --env.minor",
"zip": "zip -q -r extension.zip dist",
"clear": "rm -rf chrome-ext.crx extension.zip dist"
},
const currentAccount = bytom.currentAccount
let account
if(bytom.settings.netType === 'vapor'){
- let vote
- const votes = currentAccount.votes
- if(votes && votes.length >0 ){
- vote = _.sumBy(votes,'total')
- }
-
- let balances = currentAccount.vpBalances ||[]
- balances = balances.map(({ inBtc, inCny, inUsd, name, ...keepAttrs}) => {
- if(keepAttrs.asset === BTM)
- return {availableBalance: (keepAttrs.balance-vote),...keepAttrs}
- else
- return keepAttrs
- })
-
account = {
address: currentAccount.vpAddress,
- alias:currentAccount.alias,
- balances: balances|| [],
- accountId: currentAccount.guid,
- rootXPub: currentAccount.rootXPub
};
}else{
- let balances = currentAccount.balances ||[]
- balances = balances.map(({ inBtc, inCny, inUsd, name, ...keepAttrs}) => keepAttrs)
-
account ={
address: currentAccount.address,
- alias:currentAccount.alias,
- balances: balances|| [],
- accountId: currentAccount.guid,
- rootXPub: currentAccount.rootXPub
};
}
manifest_version: 2,
name: 'Byone',
description: 'Bytom Wallet Chrome extension.',
- version: '2.1.4',
+ version: '2.2.0',
author: 'Bytom frontend, zhitinglin',
web_accessible_resources: ['js/inject.js', 'wasm/main.wasm'],
browser_action: {
return retPromise;
};
-transaction.buildTransaction = function(guid, inputs, outputs, gas, confirmations) {
+transaction.buildTransaction = function(address, inputs, outputs, gas, confirmations) {
let retPromise = new Promise((resolve, reject) => {
bytom.transaction
- .buildTransaction(guid, inputs, outputs, gas, confirmations)
+ .buildTransaction(address, inputs, outputs, gas, confirmations)
.then(res => {
resolve(res);
})
bytom.transaction
.submitPayment(address, ret.raw_transaction, ret.signatures)
.then(res3 => {
- resolve(res3);
+ const object ={
+ transactionHash: res3.txHash
+ }
+ resolve(object);
})
.catch(error => {
reject(error);
return bytom.keys.signMessage(message, password,address);
};
-transaction.advancedTransfer = function(guid, transaction, password, arrayData) {
+transaction.advancedTransfer = function(guid, transaction, password, arrayData, address) {
let retPromise = new Promise((resolve, reject) => {
bytom.transaction
- .signTransaction(guid, JSON.stringify(transaction), password)
+ .signTransaction(guid, JSON.stringify(snakeize(transaction)), password)
.then(ret => {
let signatures = ret.signatures
if(arrayData){
signatures[0] = arrayData
}
bytom.transaction
- .submitPayment(guid, ret.raw_transaction, signatures)
+ .submitPayment(address, ret.raw_transaction, signatures)
.then(res3 => {
- resolve(res3);
+ const object ={
+ transactionHash: res3.txHash
+ }
+ resolve(object);
})
.catch(error => {
reject(error);
}
export const networks = {
- mainnet:'https://bcapi.bystack.com',
+ mainnet:'https://bcapi.movapi.com',
}
export const networksJS = {
- mainnet: `${networks['mainnet']}/api/v2/btm/`,
- mainnetvapor: `${networks['mainnet']}/api/v2/vapor/`
+ mainnet: `${networks['mainnet']}/bytom/v3/`,
+ mainnetvapor: `${networks['mainnet']}/vapor/v3/` ,
}
formattedTransactions.push(transaction);
}else{
transaction.val = 0
- transaction.address = address.short(this.currentAccount.address)
+ transaction.address = address.short(this.address)
formattedTransactions.push(transaction);
}
};
},
computed: {
+ address: function(){
+ if(this.netType === 'vapor'){
+ return this.currentAccount.vpAddress
+ }else{
+ return this.currentAccount.address
+ }
+ },
...mapGetters([
'currentAccount',
'net',
onCancel: this.onCancel
});
- transaction.buildTransaction(this.currentAccount.guid, this.transaction.input, this.transaction.output, this.transaction.fee , this.transaction.confirmations).then(async (result) => {
+ transaction.buildTransaction(this.address, this.transaction.input, this.transaction.output, this.transaction.fee , this.transaction.confirmations).then(async (result) => {
let arrayData
if(this.transaction.args){
arrayData = await transaction.convertArgument(this.transaction.args)
}
- return transaction.advancedTransfer(this.currentAccount.guid, result, this.password, arrayData)
+ return transaction.advancedTransfer(this.currentAccount.guid, result[0], this.password, arrayData, this.address)
.then((resp) => {
loader.hide();
this.prompt.responder(resp);
return this.queryAsset(key).then(resp =>{
return {
'asset': key,
- 'alias':resp.alias,
- 'amount':Num.formatNue( _.sumBy(objs, 'amount'), resp.decimals)
+ 'alias':resp.symbol,
+ 'amount': _.sumBy(objs, 'amount')
}
})
})
import { BTM } from "@/utils/constants";
import {apis} from '@/utils/BrowserApis';
import NotificationService from '../../services/NotificationService'
+import { mapGetters } from 'vuex'
+
export default {
data() {
};
},
computed: {
+ ...mapGetters([
+ 'net',
+ 'netType',
+ 'accountList'
+ ])
},
watch: {
},
this.message = object.message
}
- account.setupNet(localStorage.bytomNet);
- account.list().then(accounts => {
- const account = accounts.filter(a => a.address === this.address)[0]
+ const account = this.accountList.filter(a => (a.address === this.address || a.vpAddress === this.address) )[0]
+ this.account = account
- const balances = account.balances
- let balance = 0
- if(balances.length > 0){
- const balanceObject = balances.filter(b => b.asset === BTM)[0]
- balance = balanceObject.balance/Math.pow(10,balanceObject.decimals)
- }
- this.accountBalance = balance
+ const balances = this.netType ==='vapor'? account.vpBalances : account.balances
+ let balance = 0
+ if(balances.length > 0){
+ const balanceObject = balances.filter(b => b.asset.assetId === BTM)[0]
+ balance = balanceObject.availableBalance
+ }
- this.account = account
- });
+ this.accountBalance = balance
}
};
</script>
//detect injection
if(this.$route.query.type === 'popup'){
if (this.$route.query.from != undefined) {
- this.guid = this.$route.query.from
- this.account = this.accountList.filter(e => e.guid === this.guid)[0]
+ this.address = this.$route.query.from
+ this.guid = this.currentAccount.guid
+ this.account = this.currentAccount
}
if (this.$route.query.asset != undefined) {
this.transaction.asset= currentAssetId
const assets = this.assets
- this.selectAsset = assets.filter(b => b.asset === currentAssetId.toLowerCase())[0]
-
-
+ this.selectAsset = assets.filter(b => b.assetId === currentAssetId.toLowerCase())[0]
}
if (this.$route.query.to != undefined) {
this.transaction.to = this.$route.query.to