Commit Graph

165 Commits

Author SHA1 Message Date
Daniel Ternyak a4ec6f6139 Finalize send (broadcast signedTx, loading indicators, error handling, form validation) (#141)
* hide buttons during send loading state

* fix transaction succeeded not clickable; provide error in action

* move BroadcastStatusTransaction into 'libs/transaction'

* use more succint Array.prototype.find

* rename resetState -> resetTransaction

* refactor and component componentDidUpdate logic

* rename disabled -> generateDisabled; comment componentDidUpdate

* add size to Spinner, use in ConfirmationModal; disable instead of hide buttons in Modal

* fix flow not understanding that an object wouldn't be null in this case anyway. silly flow

* various refactors; send entire balance working
2017-08-30 21:00:31 -07:00
William O'Beirne ae0ada9c06 Add an alpha agreement screen cover. Bump up announcement size by a bit. (#139) 2017-08-28 14:09:42 -05:00
William O'Beirne f5b6a49463 Translation updates (#120)
* Updated all translations, moved into their own folders.

* Switch translations to use Markdown component.

* Remove markup tests, since were using a module now.

* Fix flow errors, render react elements instead of dangerouslysetinnerhtml.

* Make translate a connected component, so it updates with Redux.

* Fix flow errors

* First pass at returning raw when needed for placeholder.

* Added aria test.

* Fixed flow errors and linter warnings.

* Move settimeout to saga.

* Change reload to 250 ms from 1500 ms
2017-08-28 13:05:38 -05:00
William O'Beirne 1d235cf67a Trezor Unlock + Deterministic Wallet Groundwork (#137)
* Basic reducer / action / saga setup, rendering wallets.

* Better address rows, with values.

* Styling + back and next buttons.

* Formatting, dpath changing.

* Derived -> Deterministic

* Set wallet on confirm.

* Flesh out Trezor wallet, add transaction signing.

* Custom dpath, better handling of canceled switches and over-rendering / prop calling.

* Token empty string value.

* Move DPaths to config file.

* Clarifying comments.
2017-08-28 12:43:57 -05:00
William O'Beirne cfba08ccf4 Visual Alpha Prep (#135)
* Added alpha banner to top of site.

* Grey out non functioning nav items. Redirect help to groovehq.

* Disable view wallet while it's just a stub.

* Disable non-implemented wallets.
2017-08-25 09:37:36 +02:00
William O'Beirne bf4171dfbd Transaction confirmation modal (#108)
* Add a little arrow icon.

* Replaced toEther function with toUnit to reduce the number of conversion functions wed need. Add tests for conversion functions.

* First pass at a styled confirm transaction modal.

* More data about data

* Hook up generated transaction with modal

* Fix modal position

* Add from address. Restyle a bit.

* Only show textareas and button if transaction has been generated.

* Remove need for param.

* Copy.

* Use non-relative path.

* Initial crack at transaction token support.

* Fix flow type

* Unit tests for contracts and erc20

* Convert contract class to ethereumjs-abi, caught a bug

* Add decodeArgs for contracts, decodeTransfer for erc20

* Show token value in modal

* Show value from transaction data in confirmation.

* Show address of receiver, not token contract

* Flow type

* Only accept bigs

* Unlog

* Use ethereumjs-abis method ID function

* Get transaction stuff out of state. Leave todo notes.

* Intuit token from transaction to address.

* Move generate transaction out of node and into libs/transaction.

* timeout -> interval

* Promise.reject -> throw

* Get default currency from network.

* Add more unit tests for decoding. Adopt the $ prefix for decoding calls.

* Use signed transaction in confirmation modal.
2017-08-23 08:57:18 +02:00
Will Piers 318a42ccf3 Throttling changes to gas price (#81) (#123) 2017-08-20 22:51:01 +02:00
skubakdj f42837de68 Keystore & Private Key Wallet Decrypts (#116)
* wire up keystore decrypt & build UI

* add support for encrypted private keys

* add check for key length

* rename keystore wallet file

* rename encrypted priv key wallet file

* add support for presale, v1, & v2 JSON keystores

* clean up TODO messages, add class files

* add v3 references

* add flow type

* fix event bug

* update privkey validators to accept whole privkey

* refactor pkey/pass validation to function

* move pass req detection to function, remove unnecessary state

* add tests for decrypt & keystore libs
2017-08-20 22:28:47 +02:00
William O'Beirne 9b2156ed4f WIP: Generating transaction on Send tab (Pt 1) (#100)
* Generating transaction ,placing into read only textareas.

* Fix async wallet getAddress cases.

* Chain id from network

* remove leftover console log

* Check balance before generating transaction.

* Translate error msgs, check for invalid address.

* Errors for gas limit and gas price issues.
2017-08-11 22:54:10 +01:00
skubakdj 187d2e16ad Fix flow errors (#110)
* simplify getAddress method

* refactor to handle async wallet getAddress

* fix bug on BaseWallet

* remove unnecessary catch
2017-08-09 07:01:34 -05:00
William O'Beirne 7541d6f486 Estimate gas (WIP) (#102)
* relayout rpc code, start contract helper

* Dont ask for estimate if theres no value

* Split out conversion of ether to wei hex into lib function.

* big.js -> bignumber.js
2017-08-07 22:45:08 -05:00
Daniel Ternyak a66337ac0a Swap Part 4 (#101)
### Re-implements:
* min/max validators on initial currency swap selection
* polling of order status
* timer that persists across refreshes via localStorage (computed based on `createdTime` and `validFor` amount)
* swap persists across refreshes once order is created.
* various type refactors

### New additions:
* *SimpleButton* (can be PRd separately on request)
* clear loading state after order create (via SimpleButton and font-awesome)
* buffers for non-BTC swaps (bity does not actually accept 0.01 BTC worth of ETH as they claim they do in their JSON response, so a magic number of 10% is added to the minimum).
2017-07-31 18:14:30 -05:00
William O'Beirne e3505fd958 Contracts Tab Scaffolding (#70)
* Empty component, routes setup.

* Shared components for all Contracts inputs. Dont do anything yet.

* Check in reducer work so far. Still WIP.

* Header styling

* Check in input work so far, splitting to new branch.

* Strip down contracts inputs. Split out into form and explorer

* Contract selector

* Constantized config actions to use in contract saga.

* Interact explorer UI, no functionality

* Convert to constants, hook up errors

* Deploy and style cleanup.

* Remove unnecessary class.

* Fix flow errors with css modules

* Attempt at fixing all newly introduced flow errors in the contracts branch.

* Removed unused validator.

* Remove action constants, fix flow specificity in reducers

* Fix unit tests

* Move network contracts out of redux / sagas, and read directly from state with a selector in mapStateToProps.

* Fix initialState -> INITIAL_STATE rename

* foreach push -> concat
2017-07-27 19:31:59 -05:00
Daniel Ternyak 0eae13f938 Swap Cleanup (#68)
* add types for swap action creators (and separate out to separate module)
* DRY up swapInformation and onGoingSwapInformation -> SwapInfoHeader.
* stop bity rate loading when Swap will unmount
* split out SimpleDropdown to separate module
* various additional refactors
2017-07-22 16:24:03 -05:00
skubakdj 7fd7ba66c9 Gas price dropdown (#61)
* implement gas price dropdown
2017-07-20 12:06:10 -05:00
Daniel Ternyak 37008e9fe9 Complete Generate/Create Wallet Flow (#38)
* GenerateWallet: Download real UTC file.

* Paper wallet (#45)

* Working paper wallet (#52)

* Reset Generate Wallet state when component will unmount
2017-07-16 16:02:13 -05:00
crptm c8fa6e3022 support tokens on send page (#47) 2017-07-15 18:05:57 -05:00
William O'Beirne ccd946a08d Reusable modal component (#50)
* README proposal.

* First pass at implementation of proposal on Footer and Header. Footer could use some work.

* Cleanup, and readme additions

* First pass at basic modal

* Modal open / close

* Modal close on esc key.

* Freeze body scrolling when modal is open.

* Use the index bestowed upon me.

* No close on shade click

* Only render children if modal is open. Also, dont show cursor on shade

* Use flexbox for simpler content height / scroll behavior.

* type modal, fix body scroll when mounted opened

* Modal width is sized by content, not hard coded sizes.

* Remove size from flow prop types.
2017-07-15 01:26:43 -05:00
William O'Beirne 8ed09dfa06 First attempt at CSS modules (#48)
* README proposal.

* First pass at implementation of proposal on Footer and Header. Footer could use some work.

* Cleanup, and readme additions
2017-07-14 23:16:36 -05:00
William O'Beirne c9948626d1 Bundle and compress images with Webpack (#49)
* First pass at image loader

* Clean up config, convert some images as example.
2017-07-14 12:04:08 -05:00
crptm 780f3ba94f balance fetching (#41)
* balance fetching

* fix tests

* bump deps

* validate custom token form

* equiv values

* fix rates saga naming

* address review comments
2017-07-13 16:02:39 -05:00
Daniel Ternyak 12fa008755 reformat everything 2017-07-03 22:28:56 -05:00
Daniel Ternyak 06ae70988a merge develop into 'swap_part_3' 2017-07-03 22:21:19 -05:00
crptm 85759d73b4 type dropdown, config actions 2017-07-04 05:25:01 +04:00
Daniel Ternyak 29be2821a3 refactor donation addresses map; fix hardcoded instance of address in send 2017-07-03 19:16:20 -05:00
Daniel Ternyak 7cf3d26bbe Merge feat/send-page 2017-07-02 00:49:06 -05:00
crptm 63e7eb89e4 unlock wip 2017-06-30 03:03:11 +04:00
crptm 0ad93101e7 validators merge 2017-06-27 03:27:26 +04:00
crptm 240007fe43 merge develop 2017-06-27 03:13:21 +04:00
crptm 1fb4a004ac send wip 2017-06-27 02:27:55 +04:00
Daniel Ternyak 07bde87658 Refactor: Use global donation mapping instead of hardcoding donation address in footer 2017-06-23 20:27:17 -05:00
Daniel Ternyak 8e530fe476 use props.location instead of window 2017-06-18 14:56:12 -05:00
Daniel Ternyak df3ddd7351 Add swap link; fix activeOrNot nav option selection. 2017-06-11 20:08:48 -05:00
crptm 3718e4f128 translator names 2017-06-02 00:45:00 +04:00
Daniel Kaspo e49e72d250 Let to Const 2017-05-31 00:36:00 -04:00
Daniel Ternyak db70e17a67 PR comments 2017-05-30 22:34:57 -05:00
Daniel Ternyak 62dcec96d9 fix merge conflicts 2017-05-30 18:35:30 -05:00
crptm 96cf7f5969 eslint 2017-05-31 00:36:52 +04:00
crptm ec4212ae8f fix footer spacing 2017-05-30 15:18:39 +04:00
Daniel Ternyak db19b45c0d fix active bug in navbar 2017-05-30 01:18:12 -05:00
Daniel Ternyak cf36d9eb52 footer, generate wallet improved translations 2017-05-29 23:53:28 -05:00
crptm bb99a6f0b2 Merge branch 'develop' into feat/translations 2017-05-25 10:06:53 +00:00
crptm 8516b03343 baby translations 2017-05-25 04:06:30 +04:00
Daniel Ternyak c6b172562a create initial help view 2017-05-23 21:23:33 -05:00
crptm 94b7111761 cleanup header 2017-05-24 03:06:01 +04:00
Daniel Ternyak c5b6461631 reformat/refactor 2017-04-27 01:16:23 -05:00
Daniel Ternyak fdc4bfa3b8 remove nested <a> in <Link> element 2017-04-27 01:15:57 -05:00
Daniel Ternyak 20c256fc77 add route linking to tabs 2017-04-26 23:03:46 -05:00
Daniel Ternyak 9450971bd6 re-enable tab options 2017-04-26 22:14:16 -05:00
Daniel Ternyak fa18b408cd Remove authCheck dead code. 2017-04-24 19:03:08 -05:00
Daniel Ternyak 5f11991b7f Refactor/code reformat. 2017-04-24 19:02:33 -05:00
Daniel Ternyak a12d720c8a Resolve broken prod css 2017-04-24 18:36:59 -05:00
Daniel Ternyak 5652c56995 Add WIP TabsOption Component. 2017-04-18 18:37:11 -05:00
Daniel Ternyak 2cf54a8221 reformat 2017-04-18 18:36:53 -05:00
Daniel Ternyak e8c5ab355d refactors/reformatting. 2017-04-18 18:36:29 -05:00
Daniel Ternyak 8c92ad7287 Use prop-types package instead of React.PropTypes. 2017-04-14 01:27:01 -05:00
Daniel Ternyak bfbd3b2319 Use prop-types package instead of React.PropTypes. 2017-04-14 01:21:22 -05:00
Daniel Ternyak 024c14610b Allow redux state to flow through Header component into LanguageDropDown/NodeDropDown Components. 2017-04-14 01:20:39 -05:00
Daniel Ternyak c890c8872a Wire up NodeDropdownComponent to use Redux actions and remove local state. 2017-04-14 01:19:43 -05:00
Daniel Ternyak b6adc5330e Wire up LanguageDropdownComponent to use Redux actions and remove local state. 2017-04-14 01:19:26 -05:00
Daniel Ternyak 29b3f9e44b Make href of logo relative path instead of hardcoded to myetherwallet.com 2017-04-14 01:17:53 -05:00
Daniel Ternyak 2fc8cf4116 Create NodeDropdownComponent with working, adjustable local state. 2017-04-13 20:25:28 -05:00
Daniel Ternyak f91f47b877 Create LanguageDropdownComponent with working, adjustable local state. 2017-04-13 20:25:08 -05:00
Daniel Ternyak 746d2f5802 Break header into multiple Components
Delete commented out code / misc cleanup.
2017-04-13 20:24:24 -05:00
Daniel Ternyak a17b97cbc2 create react/redux boilerplate 2017-04-12 00:04:27 -05:00