Commit c02bf692 authored by aniket-engg's avatar aniket-engg Committed by Aniket

imports updated

parent 662faf8c
/* global ethereum */ /* global ethereum */
'use strict' 'use strict'
import Web3 from 'web3' import Web3 from 'web3'
const EventManager = require('../eventManager') import { EventManager } from '../eventManager'
const EthJSVM = require('ethereumjs-vm').default const EthJSVM = require('ethereumjs-vm').default
import { rlp, keccak, bufferToHex } from 'ethereumjs-util' import { rlp, keccak, bufferToHex } from 'ethereumjs-util'
const StateManager = require('ethereumjs-vm/dist/state/stateManager').default const StateManager = require('ethereumjs-vm/dist/state/stateManager').default
const Web3VMProvider = require('../web3Provider/web3VmProvider') import { Web3VmProvider } from '../web3Provider/web3VmProvider'
const LogsManager = require('./logsManager.js') const LogsManager = require('./logsManager.js')
...@@ -84,7 +84,7 @@ function createVm (hardfork) { ...@@ -84,7 +84,7 @@ function createVm (hardfork) {
hardfork: hardfork hardfork: hardfork
}) })
vm.blockchain.validate = false vm.blockchain.validate = false
const web3vm = new Web3VMProvider() const web3vm = new Web3VmProvider()
web3vm.setVM(vm) web3vm.setVM(vm)
return { vm, web3vm, stateManager } return { vm, web3vm, stateManager }
} }
...@@ -306,6 +306,15 @@ export class ExecutionContext { ...@@ -306,6 +306,15 @@ export class ExecutionContext {
} }
txDetailsLink (network, hash) { txDetailsLink (network, hash) {
const transactionDetailsLinks = {
'Main': 'https://www.etherscan.io/tx/',
'Rinkeby': 'https://rinkeby.etherscan.io/tx/',
'Ropsten': 'https://ropsten.etherscan.io/tx/',
'Kovan': 'https://kovan.etherscan.io/tx/',
'Goerli': 'https://goerli.etherscan.io/tx/'
}
if (transactionDetailsLinks[network]) { if (transactionDetailsLinks[network]) {
return transactionDetailsLinks[network] + hash return transactionDetailsLinks[network] + hash
} }
...@@ -330,10 +339,3 @@ export class ExecutionContext { ...@@ -330,10 +339,3 @@ export class ExecutionContext {
} }
} }
const transactionDetailsLinks = {
'Main': 'https://www.etherscan.io/tx/',
'Rinkeby': 'https://rinkeby.etherscan.io/tx/',
'Ropsten': 'https://ropsten.etherscan.io/tx/',
'Kovan': 'https://kovan.etherscan.io/tx/',
'Goerli': 'https://goerli.etherscan.io/tx/'
}
'use strict' 'use strict'
import { ethers } from 'ethers' import { ethers } from 'ethers'
const helper = require('./txHelper') import { encodeParams as encodeParamsHelper, encodeFunctionId, makeFullTypeDefinition} from './txHelper'
import { eachOfSeries } from 'async' import { eachOfSeries } from 'async'
import { linkBytecode } from 'solc/linker' import { linkBytecode } from 'solc/linker'
import { isValidAddress, addHexPrefix } from 'ethereumjs-util' import { isValidAddress, addHexPrefix } from 'ethereumjs-util'
...@@ -16,7 +16,7 @@ export function encodeData (funABI, values, contractbyteCode) { ...@@ -16,7 +16,7 @@ export function encodeData (funABI, values, contractbyteCode) {
let encoded let encoded
let encodedHex let encodedHex
try { try {
encoded = helper.encodeParams(funABI, values) encoded = encodeParamsHelper(funABI, values)
encodedHex = encoded.toString('hex') encodedHex = encoded.toString('hex')
} catch (e) { } catch (e) {
return { error: 'cannot encode arguments' } return { error: 'cannot encode arguments' }
...@@ -24,7 +24,7 @@ export function encodeData (funABI, values, contractbyteCode) { ...@@ -24,7 +24,7 @@ export function encodeData (funABI, values, contractbyteCode) {
if (contractbyteCode) { if (contractbyteCode) {
return { data: '0x' + contractbyteCode + encodedHex.replace('0x', '') } return { data: '0x' + contractbyteCode + encodedHex.replace('0x', '') }
} else { } else {
return { data: helper.encodeFunctionId(funABI) + encodedHex.replace('0x', '') } return { data: encodeFunctionId(funABI) + encodedHex.replace('0x', '') }
} }
} }
...@@ -53,7 +53,7 @@ export function encodeParams (params, funAbi, callback) { ...@@ -53,7 +53,7 @@ export function encodeParams (params, funAbi, callback) {
} }
if (funArgs.length > 0) { if (funArgs.length > 0) {
try { try {
data = helper.encodeParams(funAbi, funArgs) data = encodeParamsHelper(funAbi, funArgs)
dataHex = data.toString('hex') dataHex = data.toString('hex')
} catch (e) { } catch (e) {
return callback('Error encoding arguments: ' + e) return callback('Error encoding arguments: ' + e)
...@@ -79,7 +79,7 @@ export function encodeParams (params, funAbi, callback) { ...@@ -79,7 +79,7 @@ export function encodeParams (params, funAbi, callback) {
export function encodeFunctionCall (params, funAbi, callback) { export function encodeFunctionCall (params, funAbi, callback) {
this.encodeParams(params, funAbi, (error, encodedParam) => { this.encodeParams(params, funAbi, (error, encodedParam) => {
if (error) return callback(error) if (error) return callback(error)
callback(null, { dataHex: helper.encodeFunctionId(funAbi) + encodedParam.dataHex, funAbi, funArgs: encodedParam.funArgs }) callback(null, { dataHex: encodeFunctionId(funAbi) + encodedParam.dataHex, funAbi, funArgs: encodedParam.funArgs })
}) })
} }
...@@ -182,7 +182,7 @@ export function buildData (contractName, contract, contracts, isConstructor, fun ...@@ -182,7 +182,7 @@ export function buildData (contractName, contract, contracts, isConstructor, fun
return callback('Error encoding arguments: ' + e) return callback('Error encoding arguments: ' + e)
} }
try { try {
data = helper.encodeParams(funAbi, funArgs) data = encodeParamsHelper(funAbi, funArgs)
dataHex = data.toString('hex') dataHex = data.toString('hex')
} catch (e) { } catch (e) {
return callback('Error encoding arguments: ' + e) return callback('Error encoding arguments: ' + e)
...@@ -212,7 +212,7 @@ export function buildData (contractName, contract, contracts, isConstructor, fun ...@@ -212,7 +212,7 @@ export function buildData (contractName, contract, contracts, isConstructor, fun
dataHex = bytecodeToDeploy + dataHex dataHex = bytecodeToDeploy + dataHex
} }
} else { } else {
dataHex = helper.encodeFunctionId(funAbi) + dataHex dataHex = encodeFunctionId(funAbi) + dataHex
} }
callback(null, { dataHex, funAbi, funArgs, contractBytecode, contractName: contractName }) callback(null, { dataHex, funAbi, funArgs, contractBytecode, contractName: contractName })
} }
...@@ -361,7 +361,7 @@ export function decodeResponse (response, fnabi) { ...@@ -361,7 +361,7 @@ export function decodeResponse (response, fnabi) {
const outputTypes = [] const outputTypes = []
for (i = 0; i < fnabi.outputs.length; i++) { for (i = 0; i < fnabi.outputs.length; i++) {
const type = fnabi.outputs[i].type const type = fnabi.outputs[i].type
outputTypes.push(type.indexOf('tuple') === 0 ? helper.makeFullTypeDefinition(fnabi.outputs[i]) : type) outputTypes.push(type.indexOf('tuple') === 0 ? makeFullTypeDefinition(fnabi.outputs[i]) : type)
} }
if (!response.length) response = new Uint8Array(32 * fnabi.outputs.length) // ensuring the data is at least filled by 0 cause `AbiCoder` throws if there's not engouh data if (!response.length) response = new Uint8Array(32 * fnabi.outputs.length) // ensuring the data is at least filled by 0 cause `AbiCoder` throws if there's not engouh data
......
'use strict' 'use strict'
import async from 'async' import { each } from 'async'
import { ethers } from 'ethers' import { ethers } from 'ethers'
import { toBuffer } from 'ethereumjs-util' import { toBuffer } from 'ethereumjs-util'
const EventManager = require('../eventManager') import { EventManager } from '../eventManager'
const codeUtil = require('../util') import { compareByteCode } from '../util'
import { ExecutionContext } from './execution-context' import { ExecutionContext } from './execution-context'
import { decodeResponse } from './txFormat' import { decodeResponse } from './txFormat'
import { getFunction, getReceiveInterface, getConstructorInterface, visitContracts, makeFullTypeDefinition } from './txHelper' import { getFunction, getReceiveInterface, getConstructorInterface, visitContracts, makeFullTypeDefinition } from './txHelper'
...@@ -214,7 +213,7 @@ export class TxListener { ...@@ -214,7 +213,7 @@ export class TxListener {
} }
_resolve (transactions, callback) { _resolve (transactions, callback) {
async.each(transactions, (tx, cb) => { each(transactions, (tx, cb) => {
this._api.resolveReceipt(tx, (error, receipt) => { this._api.resolveReceipt(tx, (error, receipt) => {
if (error) return cb(error) if (error) return cb(error)
this._resolveTx(tx, receipt, (error, resolvedData) => { this._resolveTx(tx, receipt, (error, resolvedData) => {
...@@ -339,7 +338,7 @@ export class TxListener { ...@@ -339,7 +338,7 @@ export class TxListener {
let found = null let found = null
visitContracts(compiledContracts, (contract) => { visitContracts(compiledContracts, (contract) => {
const bytes = isCreation ? contract.object.evm.bytecode.object : contract.object.evm.deployedBytecode.object const bytes = isCreation ? contract.object.evm.bytecode.object : contract.object.evm.deployedBytecode.object
if (codeUtil.compareByteCode(codeToResolve, '0x' + bytes)) { if (compareByteCode(codeToResolve, '0x' + bytes)) {
found = contract found = contract
return true return true
} }
......
...@@ -2,8 +2,8 @@ ...@@ -2,8 +2,8 @@
import { Transaction } from 'ethereumjs-tx' import { Transaction } from 'ethereumjs-tx'
import { Block } from 'ethereumjs-block' import { Block } from 'ethereumjs-block'
import { BN, bufferToHex } from 'ethereumjs-util' import { BN, bufferToHex } from 'ethereumjs-util'
import { ExecutionContext } from './execution-context' import { ExecutionContext } from './execution-context'
const EventManager = require('../eventManager') import { EventManager } from '../eventManager'
export class TxRunner { export class TxRunner {
......
const EventManager = require('./eventManager') import { EventManager } from './eventManager'
const uiHelper = require('./helpers/uiHelper') import * as uiHelper from './helpers/uiHelper'
const compilerHelper = require('./helpers/compilerHelper') import * as compilerHelper from './helpers/compilerHelper'
const util = require('./util') import * as util from './util'
const Web3Providers = require('./web3Provider/web3Providers') import { Web3Providers } from './web3Provider/web3Providers'
const DummyProvider = require('./web3Provider/dummyProvider') import { DummyProvider } from './web3Provider/dummyProvider'
const Web3VMProvider = require('./web3Provider/web3VmProvider') import { Web3VmProvider } from './web3Provider/web3VmProvider'
const Storage = require('./storage') import { Storage } from './storage'
import { EventsDecoder } from './execution/eventsDecoder'
const EventsDecoder = require('./execution/eventsDecoder') import * as txExecution from './execution/txExecution'
const txExecution = require('./execution/txExecution') import * as txHelper from './execution/txHelper'
const txHelper = require('./execution/txHelper') import * as txFormat from './execution/txFormat'
const txFormat = require('./execution/txFormat') import { TxListener } from './execution/txListener'
const txListener = require('./execution/txListener') import { TxRunner } from './execution/txRunner'
const txRunner = require('./execution/txRunner') import { ExecutionContext } from './execution/execution-context'
const ExecutionContext = require('./execution/execution-context') import * as typeConversion from './execution/typeConversion'
const typeConversion = require('./execution/typeConversion') import { UniversalDApp } from './universalDapp'
const UniversalDApp = require('./universalDapp')
if (typeof (module) !== 'undefined' && typeof (module.exports) !== 'undefined') { if (typeof (module) !== 'undefined' && typeof (module.exports) !== 'undefined') {
module.exports = modules() module.exports = modules()
...@@ -32,7 +30,7 @@ function modules () { ...@@ -32,7 +30,7 @@ function modules () {
vm: { vm: {
Web3Providers: Web3Providers, Web3Providers: Web3Providers,
DummyProvider: DummyProvider, DummyProvider: DummyProvider,
Web3VMProvider: Web3VMProvider Web3VMProvider: Web3VmProvider
}, },
Storage: Storage, Storage: Storage,
util: util, util: util,
...@@ -42,8 +40,8 @@ function modules () { ...@@ -42,8 +40,8 @@ function modules () {
txHelper: txHelper, txHelper: txHelper,
executionContext: new ExecutionContext(), executionContext: new ExecutionContext(),
txFormat: txFormat, txFormat: txFormat,
txListener: txListener, txListener: TxListener,
txRunner: txRunner, txRunner: TxRunner,
typeConversion: typeConversion typeConversion: typeConversion
}, },
UniversalDApp: UniversalDApp UniversalDApp: UniversalDApp
......
...@@ -3,7 +3,6 @@ import { BN, privateToAddress, isValidPrivate, toChecksumAddress } from 'ethereu ...@@ -3,7 +3,6 @@ import { BN, privateToAddress, isValidPrivate, toChecksumAddress } from 'ethereu
import { stripHexPrefix } from 'ethjs-util' import { stripHexPrefix } from 'ethjs-util'
import { randomBytes } from 'crypto' import { randomBytes } from 'crypto'
import { EventEmitter } from 'events' import { EventEmitter } from 'events'
import { TxRunner } from './execution/txRunner' import { TxRunner } from './execution/txRunner'
import { sortAbiFunction, getFallbackInterface, getReceiveInterface, inputParametersDeclarationToString } from './execution/txHelper' import { sortAbiFunction, getFallbackInterface, getReceiveInterface, inputParametersDeclarationToString } from './execution/txHelper'
import { EventManager } from './eventManager' import { EventManager } from './eventManager'
......
export class dummyProvider { export class DummyProvider {
eth eth
debug debug
providers providers
......
import { hexConvert, hexListFromBNs, formatMemory } from '../util' import { hexConvert, hexListFromBNs, formatMemory } from '../util'
import { normalizeHexAddress } from '../helpers/uiHelper' import { normalizeHexAddress } from '../helpers/uiHelper'
import { toChecksumAddress, BN, toBuffer, } from 'ethereumjs-util' import { toChecksumAddress, BN, toBuffer, } from 'ethereumjs-util'
const Web3 = require('web3') import Web3 from 'web3'
export class Web3VmProvider { export class Web3VmProvider {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment