125 Commits

Author SHA1 Message Date
Anthony Laibe
64dea63457 Adding overflow to console 2018-08-31 13:11:33 +01:00
emizzle
489f619c29 Hide deploy button when not successfully compiled
Bug that cropped up in the refactor. Deploy button was showing if there warnings, but no errors. Have changed this to only show the deploy button if there is a compilation result (returned from the api) instead.
2018-08-31 08:40:51 +10:00
emizzle
c6f1f9b3eb Refactor logic to FiddleContainer
Refactored fiddle logic to be contained in the `FiddleContainer` and the components as purely presentational.

Added scroll from summary to errors/warnings/fatal/deployed cards.

Added fatal error support (ie network error in api)

Removed `lodash`
2018-08-30 21:15:28 +10:00
emizzle
f92d18d624 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-08-30 21:15:28 +10:00
Anthony Laibe
ab25436a98 Remove last fiddle, and use code to compile 2018-08-30 21:15:28 +10:00
emizzle
3216d4169e 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-08-30 21:15:28 +10:00
emizzle
76f8c53c5d Fix bug with deleting all code 2018-08-30 21:14:51 +10:00
emizzle
d7f1749d3a Hide deployment section in UI for fiddle contracts 2018-08-30 21:14:51 +10:00
emizzle
bdb1dadefb Remove ‘async’ from function name and remove comments 2018-08-30 21:14:51 +10:00
emizzle
e8a6fec4ec 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-08-30 21:14:51 +10:00
emizzle
a915be67fc 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-08-30 21:14:50 +10:00
emizzle
52289c0d5e 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-08-30 21:14:50 +10:00
emizzle
1c4ec58c4a finish removing loading entities 2018-08-30 21:14:50 +10:00
emizzle
2edec6f878 Removed loadingEntities and added to FiddleContainer 2018-08-30 21:14:50 +10:00
emizzle
438da83359 loading entity work 2018-08-30 21:14:50 +10:00
emizzle
ae826522a1 Start with reducer/selector for loading entity 2018-08-30 21:14:50 +10:00
emizzle
7a298b61f9 Added loading entities
Moved functionality out of FiddleDeployButton component

Added loading entities (WIP) to separate loading messages
2018-08-30 21:14:50 +10:00
emizzle
e6440a758d 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-08-30 21:14:50 +10:00
Anthony Laibe
1d82c32315 Deploy contract 2018-08-22 19:18:30 -04:00
Anthony Laibe
1a35735698 Show result 2018-08-22 19:18:30 -04:00
Anthony Laibe
9d1a6dad3d Make call successfully 2018-08-22 19:18:30 -04:00
Anthony Laibe
7d0a4afd88 Call Function API 2018-08-22 19:18:30 -04:00
Anthony Laibe
840b316df9 Show functions 2018-08-22 19:18:30 -04:00
Anthony Laibe
cd2f015678 Show sources 2018-08-22 19:18:30 -04:00
Anthony Laibe
6e7f9a95d8 Display error + lint 2018-08-22 19:18:30 -04:00
Anthony Laibe
347ac9e91d Fix naming 2018-08-22 19:18:30 -04:00
Anthony Laibe
76d86485f3 Rever fiddle order 2018-08-22 19:18:23 -04:00
Anthony Laibe
b31888c359 Fix typo 2018-08-22 19:18:23 -04:00
Anthony Laibe
d15e49394e Use subdomain 2018-08-22 19:18:22 -04:00
Anthony Laibe
946045dc84 Misc fixes after rebase 2018-08-22 19:18:22 -04:00
Anthony Laibe
caa6b2cf6e Lint 2018-08-22 19:18:22 -04:00
Anthony Laibe
564511c31f Register and resolve 2018-08-22 19:18:22 -04:00
Anthony Laibe
e03d1b3e0a Show ENS records 2018-08-22 19:18:22 -04:00
Anthony Laibe
b4d542dadb Add actions/api/reducers/sagas 2018-08-22 19:18:22 -04:00
Anthony Laibe
dca07bcfc2 Add plugins and versions to backend tab 2018-08-22 19:18:22 -04:00
emizzle
8dbedef0c1 Fix react ‘key’ error 2018-08-22 19:18:22 -04:00
emizzle
13e24d82d5 Make linter happy 2018-08-22 19:18:21 -04:00
emizzle
3579f59e41 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-08-22 19:18:21 -04:00
emizzle
a1195567e8 add page title class 2018-08-22 19:18:21 -04:00
emizzle
164685bc9a Remove comments and spaces 2018-08-22 19:18:21 -04:00
emizzle
26817bc2e1 Fix rebase 2018-08-22 19:18:21 -04:00
emizzle
6ddc481674 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-08-22 19:18:21 -04:00
emizzle
3561148b8c Fiddle now showing compilation warnings and errors 2018-08-22 19:18:21 -04:00
Anthony Laibe
e2a49b7d01 Display compilation result 2018-08-22 19:18:21 -04:00
emizzle
45d185b4ed Code compilation API working, but not updating state 2018-08-22 19:18:21 -04:00
emizzle
c9705f1c24 Initial compile API and Fiddle container/pres components 2018-08-22 19:18:20 -04:00
emizzle
5cf759f6da Swapped editor to Ace 2018-08-22 19:18:20 -04:00
emizzle
4a74938725 Added monaco editor via react-monaco-editor
Needs to pull version from package.json
2018-08-22 19:18:20 -04:00
emizzle
b8f5ceb6a1 Initial commit of fiddle tab
Not any functionality yet
2018-08-22 19:18:20 -04:00
Jonathan Rainville
9bde2dc77c rename compoenent to right name 2018-08-22 19:18:20 -04:00