Commit Graph

985 Commits

Author SHA1 Message Date
Jonathan Rainville 3a6ed745f6
add transactionTracker to track transactions and their time 2018-10-23 10:38:13 +02:00
Jonathan Rainville 8ff13b09f1
add gasPrice to transactions for contracts 2018-10-23 10:38:12 +02:00
Anthony Laibe b945b87d4d
File explorer 2018-10-23 10:38:11 +02:00
Anthony Laibe e31f4778ac
Handle string 2018-10-23 10:37:28 +02:00
Anthony Laibe e4fd9ab3ba
All command available in backend tab console 2018-10-23 10:37:28 +02:00
Anthony Laibe eb86bd7fbf
Fix profile command (rebase issue) 2018-10-23 10:37:28 +02:00
Anthony Laibe c453a85dde
Add back console command 2018-10-23 10:37:28 +02:00
emizzle ae029a5959
Small fixes
Fixed issue with contract deploying for first time and having no gasLimit specified.

Optimised/refactored looping of compiled contracts.

Added body parameter type checking for `/embark-api/contract/deploy` endpoint
2018-10-23 10:37:01 +02:00
emizzle 859d78eb41
Remove lodash 2018-10-23 10:37:00 +02:00
emizzle 05b324dffe
Fiddle use cases fixed
Handle use cases:

1) handle case when temp.sol doesn’t exist - due to the new saga updates, the response from retreiving a temp fiddle from the filesystem (even if it doesn’t exist) is forward to the compilation endpoint, which returns an ENOENT, and this is handled in the selector.
2) delete all code - shouldn’t return last fiddle and should compile an empty string.
3) Switch to different tab (ie contracts) then back to fiddle - previous fiddle should remain.

Also fixed an issue (most likely due to latest rebase) when deploying fiddle contracts. The gasLimit was not being specified.

Handled issue where entities stored in the state were not being put in the correct order, so a timestamp was sent with the requests and then sorted when the response was returned.
2018-10-23 10:37:00 +02:00
Anthony Laibe 4ecb092ed3
Remove last fiddle, and use code to compile 2018-10-23 10:37:00 +02:00
emizzle cd176a5f95
Handle use cases that were failing
1) hanlde case when temp.sol doesn’t exist
2) delete all code - shouldn’t return last fiddle
3) Switch to different tab (ie contracts) then back to fiddle - fiddle should now remain.
2018-10-23 10:37:00 +02:00
emizzle 68957f5dc8
change registerAPICall to hang off embark 2018-10-23 10:36:59 +02:00
emizzle b8b98cd6c4
Remove ‘async’ from function name and remove comments 2018-10-23 10:36:59 +02:00
emizzle cba4e9fb91
Fiddle file stored in filesystem
Fiddles are now stored in the filesystem so they can be preserved across page reloads, but also so that contracts deployed via fiddles can have their source code shown.

Fiddles deployed as contracts now fully work with existing contract list UI and functionality. Fiddle deployed contracts are listed in a separate section in the UI.

Current limitation is that only single contracts per file are supported. If the fiddle contains multiple contracts, it’s currently not supported.
2018-10-23 10:36:59 +02:00
emizzle 59d3a3be83
Fiddle deploy integration
Fiddle is properly deploying now, except the source code needs to be saved to the filesystem in order to be recalled later.

Fixes for handling errors on deploy and compilation.

Update contract state UI for determining state / interface / deployed.
2018-10-23 10:36:58 +02:00
emizzle 609d4eb762
Fix Tabler browser errors
Fixed browser errors caused by tabler (bodyItems and headerItems complaints) as well as staticContext issues caused by using withRoute(NavLink)

Also added a response to fiddler deployment.

Added loading states to fiddler results, that shows the errors/warnings as having a loading state when compiling/deploying
2018-10-23 10:36:58 +02:00
emizzle bf46b91166
concat deployed fiddle contracts with existing contracts 2018-10-23 10:36:57 +02:00
emizzle fec740ad6f
Initial commit for deployment of fiddle
API call set up for contract deploy which deploys the contract(s) sent from the fiddle.

Frontend UI button calls API to deploy the fiddle code.
2018-10-23 10:36:57 +02:00
Jonathan Rainville c844338c8a
add back return all errors 2018-10-23 10:36:57 +02:00
Jonathan Rainville 56d541fb8d
fix most rebase issues 2018-10-23 10:36:57 +02:00
Iuri Matias 5c5715d480
rebase fixes 2018-10-23 10:34:46 +02:00
Iuri Matias 7532562e28
rebase fixes 2018-10-23 10:34:46 +02:00
Anthony Laibe d9ae5cbfc7
PR feedback: Use request 2018-10-23 10:34:18 +02:00
Anthony Laibe 6038da4339
Deploy contract 2018-10-23 10:34:18 +02:00
Anthony Laibe 870efbcf20
Show result 2018-10-23 10:34:18 +02:00
Anthony Laibe 3c9cea594c
Make call successfully 2018-10-23 10:34:17 +02:00
Anthony Laibe c234a850e3
Call Function API 2018-10-23 10:34:17 +02:00
Anthony Laibe 788db99a0e
Display error + lint 2018-10-23 10:34:02 +02:00
Anthony Laibe 2fd52c2be3
Client fixes 2018-10-23 10:33:41 +02:00
Anthony Laibe f569767788
Lookup/Resolver between EmbarkJS and Embark 2018-10-23 10:33:40 +02:00
Anthony Laibe 83d6130259
Add plugins and versions to backend tab 2018-10-23 10:32:02 +02:00
emizzle 23a1cf57c2
Removed the contract compile event
(really did it this time)
2018-10-23 10:31:36 +02:00
emizzle 6f8f9a14d9
Addressed PR comments
Changed `fiddle` to an entity and removed unneeded fiddle reducer.

Added a selector for getting the entity.

Changed fiddle saga to `doRequest`.

Changed fiddle api call to the `post` method (did not see beofre the rebase).

Added `CompilerError` presentation component to handle displaying compiler errors and warnings.

Added spaces to css (as requested).

Removed extra space after function in solidity compiler (as requested).

Removed the compile contract event from the solidity compiler (as requested).

Handling of fatal api error in the UI.

Changed fiddle action to the one created with `createRequestTypes`.

Moved `Fiddle` nav tab before `Documentation`.

Changed `FiddleResults` DOM manipulation to be controlled via React state instead.
2018-10-23 10:31:36 +02:00
emizzle 8caa478968
Annotations, click to error, UI improvements
Compiler annotations added to editor gutter for errors and warnings

Clicking an error now scrolls editor to offending line and scrolls page to the top of the editor

Added Compiling… loader.
2018-10-23 10:31:35 +02:00
emizzle 70f5a09d47
Fiddle now showing compilation warnings and errors 2018-10-23 10:31:35 +02:00
Anthony Laibe 52cec0a29e
Display compilation result 2018-10-23 10:31:35 +02:00
emizzle 1d13c71d83
Code compilation API working, but not updating state 2018-10-23 10:31:34 +02:00
emizzle ddcccb3c2d
Initial compile API and Fiddle container/pres components 2018-10-23 10:31:34 +02:00
Jonathan Rainville aaa5a6fd58
put as one line 2018-10-23 10:31:33 +02:00
Jonathan Rainville e0ca082a57
watch for future contract logs 2018-10-23 10:31:33 +02:00
Jonathan Rainville 1ffe9505c8
conflict in contarct container 2018-10-23 10:31:33 +02:00
Jonathan Rainville 031ccc37ee
add contract logs 2018-10-23 10:31:33 +02:00
Jonathan Rainville c7f9a374f2
rename name to className so it matches contract object 2018-10-23 10:31:33 +02:00
Anthony Laibe 4526c1a871
Fix fuzzer for bytes and uint 2018-10-23 10:31:32 +02:00
Jonathan Rainville 2d1e081c15
register api calls when web3 ready 2018-10-23 10:31:32 +02:00
Jonathan Rainville d0a0fb49a7
clean listenTo 2018-10-23 10:31:32 +02:00
Jonathan Rainville c2c00835f8
fix old WS not open and show subscriptions list 2018-10-23 10:31:31 +02:00
Jonathan Rainville fd1b43d3e3
conflict in saga 2018-10-23 10:31:30 +02:00
Jonathan Rainville d3f897e204
use topic param for listenTo 2018-10-23 10:31:09 +02:00
Jonathan Rainville 11bf667ad4
conflict in saga and action 2018-10-23 10:31:08 +02:00
Jonathan Rainville 1a787021d5
add communicationFunctions that has listenTo and send 2018-10-23 10:30:00 +02:00
Iuri Matias f57d4b0a66
remove commented code 2018-10-23 10:27:41 +02:00
Iuri Matias 40004b5655
add contracts and contract page 2018-10-23 10:27:40 +02:00
Iuri Matias 8eb4d41ecd
refactor format params 2018-10-23 10:27:39 +02:00
Iuri Matias f7d5bd0e70
refactor profile caller 2018-10-23 10:27:39 +02:00
Iuri Matias 1b96fbf451
use json in table generation 2018-10-23 10:27:39 +02:00
Iuri Matias efbe71f5e2
return profiler object instead of text 2018-10-23 10:27:39 +02:00
Iuri Matias 7e96eb661e
define api for profiler 2018-10-23 10:27:39 +02:00
Anthony Laibe 5039d8b414
Adding home container 2018-10-23 10:26:57 +02:00
Anthony Laibe 83c56b6740
Apply changes for block and transaction + error 2018-10-23 10:26:56 +02:00
Anthony Laibe 966af5db73
Improve saga/actions/api interations 2018-10-23 10:26:56 +02:00
Anthony Laibe 6bc8a6d8c0
Lint 2018-10-23 10:26:56 +02:00
Anthony Laibe 2e1791e0f4
Add show components 2018-10-23 10:26:55 +02:00
Anthony Laibe bfd123b133
New block Header ws API + Client 2018-10-23 10:26:54 +02:00
Iuri Matias 6243d7c453
add missing self 2018-10-23 10:26:14 +02:00
Jonathan Rainville 4e7a0389bb
fix eslint on EVERYTHING 2018-10-23 10:26:14 +02:00
Jonathan Rainville 0b6cb01a80
fix errors and add swarm 2018-10-23 10:25:43 +02:00
Jonathan Rainville 21d8d84cca
conflict in api 2018-10-23 10:25:13 +02:00
Anthony Laibe 20bf924687
Adding transactions explorer 2018-10-23 10:23:46 +02:00
Anthony Laibe ede5afa6e0
Feedback PR 2018-10-23 10:23:46 +02:00
Anthony Laibe 80c2b9f439
Adding Load more 2018-10-23 10:23:45 +02:00
Anthony Laibe b00ce3c9fa
Adding blocks explorer 2018-10-23 10:23:45 +02:00
Jonathan Rainville 640ec0b761
change route name 2018-10-23 10:23:44 +02:00
Jonathan Rainville 459d0cc2d6
small conflicts 2018-10-23 10:23:43 +02:00
Anthony Laibe e607d10edc
Adding Fetch Account UI 2018-10-23 10:22:38 +02:00
Anthony Laibe 57874bac71
Use path embark-api 2018-10-23 10:22:37 +02:00
Anthony Laibe 8d8d3db316
Adding embark ui 2018-10-23 10:22:37 +02:00
Anthony Laibe 7df9ae66f9
Add blockchain account endpoint 2018-10-23 10:22:37 +02:00
Iuri Matias 5a67d87d59
re-add missing backend files 2018-10-23 10:21:40 +02:00
Iuri Matias 14a0396326
fix index.html 2018-10-23 10:21:39 +02:00
Iuri Matias f83989d677
fix branch 2018-10-23 10:21:39 +02:00
Iuri Matias cf9bebf538
fix identation 2018-10-23 10:21:39 +02:00
Iuri Matias 50740211da
cherry-pick features/react-routes 2018-10-23 10:21:39 +02:00
Iuri Matias 4e30ddeb1b
fix rebase issues 2018-10-23 10:21:39 +02:00
Richard Ramos 8da0d60b42
Fixing function invokation and result showing
- Booleans weren't being sent correctly (it always assumed true)
- Booleans now are shown on the results
- Handling result visualization when there's more than one parameter
2018-10-23 10:21:39 +02:00
Richard Ramos 42db8258e0
Allows copying commands to clipboard 2018-10-23 10:21:38 +02:00
Richard Ramos 92f1ac7576
Verifying if contract can be deployed or not 2018-10-23 10:21:38 +02:00
Richard Ramos 56afed906a
Added event to obtain list of contracts and show them on the dashboard 2018-10-23 10:21:38 +02:00
Richard Ramos 502d2c0dec
Handling errors and UI reorganization / features
- UI shows error screen if contract doesn't exist or fails fetching data
- Menu shows selected state and icons can be specified
- Component created for card alerts
2018-10-23 10:21:38 +02:00
Richard Ramos 1528dd9022
Added section to embark backend tab 2018-10-23 10:21:38 +02:00
Iuri Matias 05f0fef46d
track original filepath of the contract 2018-10-23 10:21:37 +02:00
Iuri Matias 4f51a3cf84
add event and API endpoint to get the contract sourcecode 2018-10-23 10:21:37 +02:00
Iuri Matias 21440505e1
first stab a backend tab 2018-10-23 10:21:37 +02:00
Richard Ramos c393754c52
Moving components 2018-10-23 10:21:36 +02:00
Iuri Matias 9ed4922367
move console api call into console 2018-10-23 10:20:09 +02:00
Iuri Matias 26d7e42218
move dashboard api into dashboard module 2018-10-23 10:20:09 +02:00
Iuri Matias 09390276bc
fix ws send; attempt to fix missing contractsState in ws 2018-10-23 10:20:09 +02:00
Iuri Matias be68625c01
add dashboard endpoint 2018-10-23 10:20:08 +02:00
Iuri Matias 8bf344e4a0
send & parse JSON in the ws calls; add cb to avoid crash due to unavailable connection 2018-10-23 10:20:08 +02:00
Iuri Matias ceb107f43b
send logs to ws 2018-10-23 10:20:08 +02:00
Iuri Matias 7bd6b9da8f
add basic ws functionality 2018-10-23 10:20:08 +02:00
Iuri Matias 0917acb02f
add 2nd endpoint to webserver; use express 2018-10-23 10:17:29 +02:00
Richard Ramos 457d78815f
Fixing template 2018-10-23 10:17:28 +02:00
Richard Ramos f687b9880e
Reorganizing template 2018-10-23 10:17:28 +02:00
Richard Ramos 152cf4c87b
Uncommented error throwing 2018-10-23 10:17:28 +02:00
Richard Ramos 1e4aa12665
Added payable functionality 2018-10-23 10:17:28 +02:00
Richard Ramos cdf34fa6ca
Disabling button while loading 2018-10-23 10:17:27 +02:00
Richard Ramos ca86a58244
Base logic for invoking send functions and showin results 2018-10-23 10:17:27 +02:00
Richard Ramos cab6b889b5
Alert for error invoking functions 2018-10-23 10:17:27 +02:00
Richard Ramos a247c43080
Form generation for view/constant/pure functions 2018-10-23 10:17:27 +02:00
Richard Ramos 83644b939f
Importing contract and bootstrap css 2018-10-23 10:17:27 +02:00
Richard Ramos 1dc513cdec
JS generation + embark.json configuration update 2018-10-23 10:17:27 +02:00
Richard Ramos 3d9dc2abe9
Addid basic templating to start building UI from here 2018-10-23 10:17:26 +02:00
Richard Ramos 2aa00a415b
Adding base command logic for scaffolding generation 2018-10-23 10:17:26 +02:00
Iuri Matias 713268538d
remove engine param 2018-10-23 10:15:47 +02:00
Iuri Matias f328be7ba5
remove console log 2018-10-23 10:15:46 +02:00
Anthony Laibe 99a38b08c8
Adding ipns 2018-10-23 10:15:46 +02:00
Anthony Laibe 6a3e8081a5
Add ipns resolve 2018-10-23 10:15:46 +02:00
Iuri Matias 1e7f0ada5b
move blockchain connection code to its own module 2018-10-23 10:15:29 +02:00
Iuri Matias c2002e16fe
move deployment to module 2018-10-23 10:14:03 +02:00
Iuri Matias 40021f968a
move contract deployer to deploy manager 2018-10-23 10:14:02 +02:00
Iuri Matias faf83ee16c
fix library manager init 2018-10-23 10:14:02 +02:00
Iuri Matias 9c04dd8c59
add missing utils 2018-10-23 10:14:02 +02:00
Iuri Matias c6f7658dc0
cleanup 2018-10-23 10:14:02 +02:00
Iuri Matias 1011d136a8
remove debug 2018-10-23 10:14:01 +02:00
Iuri Matias 75551aa005
first stab at refactor blockchain launcher 2018-10-23 10:14:00 +02:00
Michael Bradley, Jr dd4bb22da5
blockchain -- defaultHost, dockerHostSwap 2018-10-23 10:14:00 +02:00
Jonathan Rainville 972ebe07cd
only enabble register in dev 2018-10-23 10:13:59 +02:00
Jonathan Rainville d30faa6b05
put register function in another module that can be used by embark and embark js 2018-10-23 10:12:13 +02:00
Jonathan Rainville 2484f9c72b
fix using only_owner 2018-10-23 10:12:13 +02:00
Jonathan Rainville ead79cd77f
fix lookup and also enable lookup for new subdomains 2018-10-23 10:11:37 +02:00
Jonathan Rainville 9125fe82d9
add function to register the domains from config 2018-10-23 10:09:59 +02:00
Jonathan Rainville 0e93e75aba
conflict in embark js 2018-10-23 10:09:59 +02:00
Jonathan Rainville f43281bf42
conflict in lock 2018-10-23 10:09:59 +02:00
Jonathan Rainville c67a9ddf58
very wip working register 2018-10-23 10:09:23 +02:00
Anthony Laibe 90e1476888
Remove code dependencies to underscore 2018-10-23 10:05:24 +02:00
Jonathan Rainville d84ac05376
fix the indexOf instead by simulating what solc does 2018-10-23 10:05:22 +02:00
Jonathan Rainville 19ff41c4c3
fix duplicate dependencies and warn correctly for length 2018-10-23 10:05:22 +02:00
Jonathan Rainville 6203ad3530
fix ens by using right addres depending on chain and also add isAvailable 2018-10-23 10:05:21 +02:00
Iuri Matias 4877bb4956
fix plugin call 2018-10-23 10:05:20 +02:00
Iuri Matias a1e72e38ef
re-add register upload cmd api; refactor storage module initialization 2018-10-23 10:05:20 +02:00
Iuri Matias bd13626d49
fix logger 2018-10-23 10:05:20 +02:00
Iuri Matias 1564a2c511
check ipfs connection before attempting to connect 2018-10-23 10:05:19 +02:00
Jonathan Rainville 0f18c5caf1
display gas cost of each test 2018-10-23 10:05:08 +02:00
RJ Catalano a682f754e9
fix line 2018-10-23 10:03:03 +02:00
VoR0220 35cad02b71
catch errors and handle gracefully in ENS 2018-10-23 10:03:03 +02:00
emizzle 86480440b1
Updated online/offline event checks so they are run during initialisation.
Changed the online event to `once` and set it to be bound every time the node goes offline.

The above changes handle the case where:
1) `embark run` runs and starts geth.
2) geth is killed manually
3) `embark blockchain` is run in separate process to restart geth
4) the `embark run` process detects this change and restarts the web3 provider and recompiles/deploys/builds

Every time `embark blochain` is restarted, an error is appended and all are emitted from the `eth-block-tracker`. This is a bug but can't figure out where it originates. The downside is that if, for example, `embark blockchain` is restarted 4 times, there will be 4 errors emitted from the `eth-block-tracker`. Because of this, errors emitted from `eth-block-tracker` have been reduced to trace to avoid clogging the logs.
2018-10-23 10:03:03 +02:00
emizzle 80e323bdd3
Handle geth process exit via crash/kill and also via killing `embark blockchain`
First case - run `embark run` which starts a blockchain node, then manually kill the `geth` process. Would throw `{ [Error: connect ECONNREFUSED 127.0.0.1:8543] message: 'connect ECONNREFUSED 127.0.0.1:8543', code: -32603 }` error and ruins the dashboard.

Second case, 1) run `embark blockchain` 2) run `embark run` 3) kill `embark blockchain` throws the error `{ [Error: connect ECONNREFUSED 127.0.0.1:8543] message: 'connect ECONNREFUSED 127.0.0.1:8543', code: -32603 }` and ruins the dashboard.

The first case was solved by having the child blockchain process that spawns geth listen for geth exit, then kill itself.

The second case required updating of `eth-block-tracker` to v4.0.1 inside of the `embark-web3-provider-engine`. v4.0.1 was a major version update and introduced breaking changes. Those changes were handled inside of `embark-web3-provider-engine`, covered in **blocker** PR https://github.com/jrainville/provider-engine/pull/1.
2018-10-23 10:03:03 +02:00
Jonathan Rainville bab0b71831
fix tests using new dependencies 2018-10-23 10:01:55 +02:00