Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
baas-ide
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
1
Merge Requests
1
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
guxukai
baas-ide
Commits
5d8fe546
Commit
5d8fe546
authored
Aug 02, 2017
by
yann300
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
move eventDecoder to root folder && fix devent decoding
parent
3cce2a17
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
22 additions
and
17 deletions
+22
-17
app.js
src/app.js
+13
-9
eventsDecoder.js
src/app/eventsDecoder.js
+8
-7
txListener.js
src/app/txListener.js
+1
-1
No files found.
src/app.js
View file @
5d8fe546
...
@@ -31,7 +31,7 @@ var RighthandPanel = require('./app/righthand-panel')
...
@@ -31,7 +31,7 @@ var RighthandPanel = require('./app/righthand-panel')
var
examples
=
require
(
'./app/example-contracts'
)
var
examples
=
require
(
'./app/example-contracts'
)
var
modalDialogCustom
=
require
(
'./app/modal-dialog-custom'
)
var
modalDialogCustom
=
require
(
'./app/modal-dialog-custom'
)
var
Txlistener
=
require
(
'./app/txListener'
)
var
Txlistener
=
require
(
'./app/txListener'
)
var
EventsDecoder
=
require
(
'./app/
listener/
eventsDecoder'
)
var
EventsDecoder
=
require
(
'./app/eventsDecoder'
)
var
css
=
csjs
`
var
css
=
csjs
`
html { box-sizing: border-box; }
html { box-sizing: border-box; }
...
@@ -775,27 +775,31 @@ function run () {
...
@@ -775,27 +775,31 @@ function run () {
var
eventsDecoder
=
new
EventsDecoder
({
txListener
:
txlistener
})
var
eventsDecoder
=
new
EventsDecoder
({
txListener
:
txlistener
})
txlistener
.
event
.
register
(
'txResolved'
,
(
tx
,
resolvedData
)
=>
{
if
(
resolvedData
)
{
eventsDecoder
.
parseLogs
(
tx
,
resolvedData
,
compiledContracts
())
}
})
txlistener
.
startListening
()
txlistener
.
startListening
()
txlistener
.
event
.
register
(
'newTransaction'
,
(
tx
)
=>
{
txlistener
.
event
.
register
(
'newTransaction'
,
(
tx
)
=>
{
var
resolvedTransaction
=
txlistener
.
resolvedTransaction
(
tx
.
hash
)
var
resolvedTransaction
=
txlistener
.
resolvedTransaction
(
tx
.
hash
)
var
address
=
null
var
address
=
null
if
(
resolvedTransaction
)
{
if
(
resolvedTransaction
)
{
var
resolvedContract
address
=
resolvedTransaction
.
contractAddress
?
resolvedTransaction
.
contractAddress
:
tx
.
to
address
=
resolvedTransaction
.
contractAddress
?
resolvedTransaction
.
contractAddress
:
tx
.
to
}
resolvedContract
=
txlistener
.
resolvedContract
(
address
)
if
(
resolvedContract
)
{
eventsDecoder
.
parseLogs
(
tx
,
resolvedContract
,
compiledContracts
(),
()
=>
{
console
.
log
({
console
.
log
({
tx
:
tx
,
tx
:
tx
,
resolvedContract
:
txlistener
.
resolvedContract
(
address
)
,
resolvedContract
:
resolvedContract
,
resolvedTransaction
:
resolvedTransaction
,
resolvedTransaction
:
resolvedTransaction
,
resolvedEvents
:
eventsDecoder
.
eventsOf
(
tx
.
hash
)
resolvedEvents
:
eventsDecoder
.
eventsOf
(
tx
.
hash
)
})
})
})
})
}
}
else
{
console
.
log
({
tx
:
tx
})
}
})
// ----------------- autoCompile -----------------
// ----------------- autoCompile -----------------
var
autoCompile
=
document
.
querySelector
(
'#autoCompile'
).
checked
var
autoCompile
=
document
.
querySelector
(
'#autoCompile'
).
checked
...
...
src/app/
listener/
eventsDecoder.js
→
src/app/eventsDecoder.js
View file @
5d8fe546
...
@@ -19,10 +19,10 @@ class EventsDecoder {
...
@@ -19,10 +19,10 @@ class EventsDecoder {
* @param {Object} tx - transaction object
* @param {Object} tx - transaction object
* @param {Function} cb - callback
* @param {Function} cb - callback
*/
*/
parseLogs
(
tx
,
resolvedData
,
compiledContracts
)
{
parseLogs
(
tx
,
contractName
,
compiledContracts
,
cb
)
{
this
.
txListener
.
resolveTransactionReceipt
(
tx
,
(
error
,
receipt
)
=>
{
this
.
txListener
.
resolveTransactionReceipt
(
tx
,
(
error
,
receipt
)
=>
{
if
(
error
)
c
onsole
.
log
(
error
)
if
(
error
)
c
b
(
error
)
this
.
_decodeLogs
(
tx
,
receipt
,
resolvedData
.
contractName
,
compiledContracts
)
this
.
_decodeLogs
(
tx
,
receipt
,
contractName
,
compiledContracts
,
cb
)
})
})
}
}
...
@@ -30,11 +30,11 @@ class EventsDecoder {
...
@@ -30,11 +30,11 @@ class EventsDecoder {
return
this
.
resolvedEvents
[
hash
]
return
this
.
resolvedEvents
[
hash
]
}
}
_decodeLogs
(
tx
,
receipt
,
contract
,
contracts
)
{
_decodeLogs
(
tx
,
receipt
,
contract
,
contracts
,
cb
)
{
if
(
!
contract
||
!
receipt
.
logs
)
{
if
(
!
contract
||
!
receipt
.
logs
)
{
return
return
cb
()
}
}
this
.
_decodeEvents
(
tx
,
receipt
.
logs
,
contract
,
contracts
)
this
.
_decodeEvents
(
tx
,
receipt
.
logs
,
contract
,
contracts
,
cb
)
}
}
_eventABI
(
contractName
,
compiledContracts
)
{
_eventABI
(
contractName
,
compiledContracts
)
{
...
@@ -50,7 +50,7 @@ class EventsDecoder {
...
@@ -50,7 +50,7 @@ class EventsDecoder {
return
eventABI
return
eventABI
}
}
_decodeEvents
(
tx
,
logs
,
contractName
,
compiledContracts
)
{
_decodeEvents
(
tx
,
logs
,
contractName
,
compiledContracts
,
cb
)
{
var
eventABI
=
this
.
_eventABI
(
contractName
,
compiledContracts
)
var
eventABI
=
this
.
_eventABI
(
contractName
,
compiledContracts
)
// FIXME: support indexed events
// FIXME: support indexed events
for
(
var
i
in
logs
)
{
for
(
var
i
in
logs
)
{
...
@@ -75,6 +75,7 @@ class EventsDecoder {
...
@@ -75,6 +75,7 @@ class EventsDecoder {
}
}
this
.
resolvedEvents
[
tx
.
hash
].
push
({
event
:
event
,
args
:
decoded
})
this
.
resolvedEvents
[
tx
.
hash
].
push
({
event
:
event
,
args
:
decoded
})
}
}
cb
()
}
}
}
}
...
...
src/app/txListener.js
View file @
5d8fe546
...
@@ -127,8 +127,8 @@ class TxListener {
...
@@ -127,8 +127,8 @@ class TxListener {
async
.
each
(
block
.
transactions
,
(
tx
,
cb
)
=>
{
async
.
each
(
block
.
transactions
,
(
tx
,
cb
)
=>
{
this
.
_resolveTx
(
tx
,
(
error
,
resolvedData
)
=>
{
this
.
_resolveTx
(
tx
,
(
error
,
resolvedData
)
=>
{
if
(
error
)
cb
(
error
)
if
(
error
)
cb
(
error
)
this
.
event
.
trigger
(
'newTransaction'
,
[
tx
])
if
(
resolvedData
)
this
.
event
.
trigger
(
'txResolved'
,
[
tx
,
resolvedData
])
if
(
resolvedData
)
this
.
event
.
trigger
(
'txResolved'
,
[
tx
,
resolvedData
])
this
.
event
.
trigger
(
'newTransaction'
,
[
tx
])
cb
()
cb
()
})
})
},
()
=>
{
},
()
=>
{
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment