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
1217ade9
Commit
1217ade9
authored
Sep 14, 2020
by
ioedeveloper
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Fixed tx-browser bugs
parent
46a6a7c4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
36 additions
and
43 deletions
+36
-43
debugger-tab.js
apps/remix-ide/src/app/tabs/debugger-tab.js
+11
-5
debugger-ui.tsx
libs/remix-ui/debugger-ui/src/lib/debugger-ui.tsx
+12
-27
slider.tsx
libs/remix-ui/debugger-ui/src/lib/slider/slider.tsx
+2
-7
tx-browser.tsx
libs/remix-ui/debugger-ui/src/lib/tx-browser/tx-browser.tsx
+11
-4
No files found.
apps/remix-ide/src/app/tabs/debugger-tab.js
View file @
1217ade9
...
@@ -61,6 +61,15 @@ class DebuggerTab extends ViewPlugin {
...
@@ -61,6 +61,15 @@ class DebuggerTab extends ViewPlugin {
toaster
(
yo
`<div><b>Source verification plugin not activated or not available.</b> continuing <i>without</i> source code debugging.</div>`
)
toaster
(
yo
`<div><b>Source verification plugin not activated or not available.</b> continuing <i>without</i> source code debugging.</div>`
)
})
})
this
.
renderComponent
()
this
.
call
(
'manager'
,
'activatePlugin'
,
'source-verification'
).
catch
(
e
=>
console
.
log
(
e
.
message
))
// this.call('manager', 'activatePlugin', 'udapp')
return
this
.
el
}
renderComponent
()
{
ReactDOM
.
render
(
ReactDOM
.
render
(
<
DebuggerUI
<
DebuggerUI
debuggerModule
=
{
this
}
debuggerModule
=
{
this
}
...
@@ -73,11 +82,6 @@ class DebuggerTab extends ViewPlugin {
...
@@ -73,11 +82,6 @@ class DebuggerTab extends ViewPlugin {
getTraceHash
=
{
this
.
getTraceHash
}
getTraceHash
=
{
this
.
getTraceHash
}
/
>
/
>
,
this
.
el
)
,
this
.
el
)
this
.
call
(
'manager'
,
'activatePlugin'
,
'source-verification'
).
catch
(
e
=>
console
.
log
(
e
.
message
))
// this.call('manager', 'activatePlugin', 'udapp')
return
this
.
el
}
}
deactivate
()
{
deactivate
()
{
...
@@ -87,10 +91,12 @@ class DebuggerTab extends ViewPlugin {
...
@@ -87,10 +91,12 @@ class DebuggerTab extends ViewPlugin {
debug
(
hash
)
{
debug
(
hash
)
{
this
.
debugHash
=
hash
this
.
debugHash
=
hash
this
.
renderComponent
()
}
}
getTrace
(
hash
)
{
getTrace
(
hash
)
{
this
.
getTraceHash
=
hash
this
.
getTraceHash
=
hash
this
.
renderComponent
()
}
}
// debugger () {
// debugger () {
...
...
libs/remix-ui/debugger-ui/src/lib/debugger-ui.tsx
View file @
1217ade9
...
@@ -69,23 +69,18 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
...
@@ -69,23 +69,18 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
if
(
removeHighlights
)
deleteHighlights
()
if
(
removeHighlights
)
deleteHighlights
()
},
[
removeHighlights
])
},
[
removeHighlights
])
const
listenToEvents
=
(
debuggerInstance
)
=>
{
const
listenToEvents
=
(
debuggerInstance
,
currentReceipt
)
=>
{
if
(
!
debuggerInstance
)
return
if
(
!
debuggerInstance
)
return
debuggerInstance
.
event
.
register
(
'debuggerStatus'
,
async
(
isActive
)
=>
{
debuggerInstance
.
event
.
register
(
'debuggerStatus'
,
async
(
isActive
)
=>
{
await
debuggerModule
.
call
(
'editor'
,
'discardHighlight'
)
await
debuggerModule
.
call
(
'editor'
,
'discardHighlight'
)
setState
(
prevState
=>
{
setState
({
...
state
,
isActive
})
return
{
...
prevState
,
isActive
}
})
})
})
debuggerInstance
.
event
.
register
(
'newSourceLocation'
,
async
(
lineColumnPos
,
rawLocation
)
=>
{
debuggerInstance
.
event
.
register
(
'newSourceLocation'
,
async
(
lineColumnPos
,
rawLocation
)
=>
{
const
contracts
=
await
fetchContractAndCompile
(
const
contracts
=
await
fetchContractAndCompile
(
state
.
currentReceipt
.
contractAddress
||
state
.
currentReceipt
.
to
,
currentReceipt
.
contractAddress
||
currentReceipt
.
to
,
state
.
currentReceipt
)
currentReceipt
)
if
(
contracts
)
{
if
(
contracts
)
{
const
path
=
contracts
.
getSourceName
(
rawLocation
.
file
)
const
path
=
contracts
.
getSourceName
(
rawLocation
.
file
)
...
@@ -98,13 +93,6 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
...
@@ -98,13 +93,6 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
})
})
debuggerInstance
.
event
.
register
(
'debuggerUnloaded'
,
()
=>
unLoad
())
debuggerInstance
.
event
.
register
(
'debuggerUnloaded'
,
()
=>
unLoad
())
setState
(
prevState
=>
{
return
{
...
prevState
,
debugger
:
debuggerInstance
}
})
}
}
const
requestDebug
=
(
blockNumber
,
txNumber
,
tx
)
=>
{
const
requestDebug
=
(
blockNumber
,
txNumber
,
tx
)
=>
{
...
@@ -142,6 +130,7 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
...
@@ -142,6 +130,7 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
// yo.update(this.stepManagerView, yo`<div></div>`)
// yo.update(this.stepManagerView, yo`<div></div>`)
setState
(
prevState
=>
{
setState
(
prevState
=>
{
const
{
visibility
}
=
prevState
const
{
visibility
}
=
prevState
return
{
return
{
...
prevState
,
...
prevState
,
debugger
:
null
,
debugger
:
null
,
...
@@ -176,16 +165,17 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
...
@@ -176,16 +165,17 @@ export const DebuggerUI = ({ debuggerModule, fetchContractAndCompile, debugHash,
debuggerInstance
.
debug
(
blockNumber
,
txNumber
,
tx
,
()
=>
{
debuggerInstance
.
debug
(
blockNumber
,
txNumber
,
tx
,
()
=>
{
// this.stepManager = new StepManagerUI(this.debugger.step_manager)
// this.stepManager = new StepManagerUI(this.debugger.step_manager)
// this.vmDebugger = new VmDebugger(this.debugger.vmDebuggerLogic)
// this.vmDebugger = new VmDebugger(this.debugger.vmDebuggerLogic)
listenToEvents
(
debuggerInstance
,
currentReceipt
)
setState
(
prevState
=>
{
setState
(
prevState
=>
{
return
{
return
{
...
prevState
,
...
prevState
,
blockNumber
,
blockNumber
,
txNumber
,
txNumber
,
debugging
:
true
,
debugging
:
true
,
currentReceipt
currentReceipt
,
debugger
:
debuggerInstance
}
}
})
})
listenToEvents
(
debuggerInstance
)
// this.renderDebugger()
// this.renderDebugger()
}).
catch
((
error
)
=>
{
}).
catch
((
error
)
=>
{
toaster
(
error
,
null
,
null
)
toaster
(
error
,
null
,
null
)
...
@@ -202,12 +192,7 @@ const getTrace = (hash) => {
...
@@ -202,12 +192,7 @@ const getTrace = (hash) => {
const
web3
=
await
getDebugWeb3
()
const
web3
=
await
getDebugWeb3
()
const
currentReceipt
=
await
web3
.
eth
.
getTransactionReceipt
(
hash
)
const
currentReceipt
=
await
web3
.
eth
.
getTransactionReceipt
(
hash
)
setState
(
prevState
=>
{
setState
({
...
state
,
currentReceipt
})
return
{
...
prevState
,
currentReceipt
}
})
const
debug
=
new
Debugger
({
const
debug
=
new
Debugger
({
web3
,
web3
,
...
@@ -239,9 +224,9 @@ const deleteHighlights = async () => {
...
@@ -239,9 +224,9 @@ const deleteHighlights = async () => {
return
(
return
(
<
div
>
<
div
>
<
div
className=
"px-2"
>
<
div
className=
"px-2"
>
<
TxBrowser
requestDebug=
{
requestDebug
}
unloadRequested=
{
unloadRequested
}
/>
<
TxBrowser
requestDebug=
{
requestDebug
}
unloadRequested=
{
unloadRequested
}
transactionNumber=
{
state
.
txNumber
}
/>
{
/* <StepManager stepManager={state.debugger.step_manager
} />
<
StepManager
stepManager=
{
state
.
debugger
?
state
.
debugger
.
step_manager
:
null
}
/>
<VmDebuggerHead vmDebuggerLogic={state.debugger.vmDebuggerLogic} /> */
}
{
/*
<VmDebuggerHead vmDebuggerLogic={state.debugger.vmDebuggerLogic} /> */
}
</
div
>
</
div
>
{
/* <div className="statusMessage">{state.statusMessage}</div>
{
/* <div className="statusMessage">{state.statusMessage}</div>
<VmDebugger vmDebuggerLogic={state.debugger.vmDebuggerLogic} /> */
}
<VmDebugger vmDebuggerLogic={state.debugger.vmDebuggerLogic} /> */
}
...
...
libs/remix-ui/debugger-ui/src/lib/slider/slider.tsx
View file @
1217ade9
...
@@ -25,12 +25,7 @@ export const Slider = ({ stepManager, sliderLength, sliderValue }) => {
...
@@ -25,12 +25,7 @@ export const Slider = ({ stepManager, sliderLength, sliderValue }) => {
},
[
sliderValue
])
},
[
sliderValue
])
const
setValue
=
(
value
)
=>
{
const
setValue
=
(
value
)
=>
{
setState
(
prevState
=>
{
setState
({
...
state
,
currentValue
:
value
})
return
{
...
prevState
,
currentValue
:
value
}
})
}
}
const
handleChange
=
(
e
)
=>
{
const
handleChange
=
(
e
)
=>
{
...
@@ -56,7 +51,7 @@ export const Slider = ({ stepManager, sliderLength, sliderValue }) => {
...
@@ -56,7 +51,7 @@ export const Slider = ({ stepManager, sliderLength, sliderValue }) => {
type=
'range'
type=
'range'
min=
{
0
}
min=
{
0
}
max=
{
state
.
max
}
max=
{
state
.
max
}
v
alue=
{
state
.
currentValue
}
defaultV
alue=
{
state
.
currentValue
}
onChange=
{
handleChange
}
onChange=
{
handleChange
}
disabled=
{
state
.
disabled
}
disabled=
{
state
.
disabled
}
/>
/>
...
...
libs/remix-ui/debugger-ui/src/lib/tx-browser/tx-browser.tsx
View file @
1217ade9
import
React
,
{
useState
}
from
'react'
import
React
,
{
useState
,
useEffect
}
from
'react'
import
'./tx-browser.css'
import
'./tx-browser.css'
import
EventManager
from
'../../../../../../apps/remix-ide/src/lib/events'
export
const
TxBrowser
=
({
requestDebug
,
unloadRequested
})
=>
{
export
const
TxBrowser
=
({
requestDebug
,
unloadRequested
,
transactionNumber
})
=>
{
const
event
=
new
EventManager
()
const
[
state
,
setState
]
=
useState
({
const
[
state
,
setState
]
=
useState
({
txNumber
:
undefined
,
txNumber
:
undefined
,
debugging
:
false
debugging
:
false
})
})
useEffect
(()
=>
{
setState
(
prevState
=>
{
return
{
...
prevState
,
txNumber
:
transactionNumber
}
})
},
[
transactionNumber
])
const
handleSubmit
=
()
=>
{
const
handleSubmit
=
()
=>
{
if
(
state
.
debugging
)
{
if
(
state
.
debugging
)
{
unload
()
unload
()
...
...
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