Commit Graph

414 Commits

Author SHA1 Message Date
Ian Lapham
9c473270ee
fix(governance): modal bugs, redable styles, show common names for contracts (#1164)
* fix modal bugs, reable styles, show common names for contracts

* use theme for blue
2020-10-12 15:45:20 -04:00
Nikita Kudryavtsev
fc76177791
fix style of proposals text block in vote page (#1149) 2020-10-09 18:12:49 -05:00
Moody Salem
03913d9c0b
UNI 2020-09-24 11:29:31 -05:00
Ian Lapham
975570fa97
improvement(swap): progress bar and more minimal default UI, also fix custom add/remove (#1069)
* add progress bar and minimal UI updates on swap

* add hook to explicity check user added tokens, fixes add/remove bug

* update with latest

* remove confusing comment

* update styles on loading, update arrow placement, code cleanup

* fix typo on progress import
2020-08-31 15:27:30 -04:00
Moody Salem
95030a52c5
fix(remove liquidity): price display in remove liquidity incorrect 2020-08-27 14:26:23 -05:00
Moody Salem
85217452db
improvement(ts): strict everywhere 2020-08-27 13:10:00 -05:00
Moody Salem
f7a1a2ab58
move noImplicitAny and some type declarations 2020-08-27 12:24:03 -05:00
Moody Salem
7cf25ac7c8
feat(lists): allow selecting and adding token lists (#1023)
* more list stuff

Use the selected list instead of the default list, but also use the default list

start list selection code

* move token warning to a modal, fix the install issue

* add/remove/enter key

* handle enter on currency select for ETHER

* change slippage tolerance to be a slider

* make ui closer to the mocks

* commit slider changes

* back to tabs

* copy changes

* bump list version

* some styling for the list select

* bump uniswap default list version

* use contract calls to get ens names and addresses

* show list logo

* fix failing integration test

* .eth.link

* list introduction screen

* remove showSendWithSwap

* fix integration and unit tests

* resolve ENS names

* logos from ens

* fix the lint errors

* some refactoring to better support using a the library provider from the user for resolving ENS names

* load list info from the list url for the introduction page

* make it slightly harder to remove a list

* minor clean up, some help text and links

* remove icon from list update popup

* show added/removed tokens

* add GA everywhere, don't debounce contenthash lookups

* show tags

* fix tag key

* tag display, list rendering, needs optimization

* fix list fetching in firefox, style issue in safari

* sort the lists, clean up styling

* use client provider when possible

* show token warning for url loaded tokens

* improve the warning modal

* some refactoring to fix the list fetching on networks other than mainnet

* fix tests

* some minor improvements

* increase timeout to maybe fix integration tests which pass locally

* build for tests using the dev network url

* reset the lists if we deleted the other two copies

* improve how we handle updating the default list of lists

* fix integration test

* Update token list selection styles

* fix external links, reuse the on click outside code, show add errors

* show the list origin instead of the full url

* fix update list link

* show host instead of hostname
do not automatically dismiss major version upgrades for lists

* fix link to tokenlists.org

* add uma

* clean up styling in list rows

* bump token list version

* bump token list version again

* hover symbol to see currency name

* bump version

* add cmc lists, dharma list

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-08-26 08:46:21 -05:00
Moody Salem
73580de922
improvement(swap): show add a send only for expert mode 2020-08-24 13:33:46 -05:00
Moody Salem
0f91af1df2
improvement(swap): Better swap errors for FoT (#1015)
* move the gas estimation stuff into its own hook and report errors from the gas estimation

* fix linter errors

* show the swap callback error separately

* rename some variables

* use a manually specified key for gas estimates

* flip price... thought i did this already

* only show swap callback error if approval state is approved

* some clean up to the swap components

* stop proactively looking for gas estimates

* improve some retry stuff, show errors inline

* add another retry test

* latest ethers

* fix integration tests

* simplify modal and fix jitter on open in mobile

* refactor confirmation modal into pieces before creating the error content

* finish refactoring of transaction confirmation modal

* show error state in the transaction confirmation modal

* fix lint errors

* error not always relevant

* fix lint errors, remove action item

* move a lot of code into ConfirmSwapModal.tsx

* show accept changes flow, not styled

* Adjust styles for slippage error states

* Add styles for updated price prompt

* Add input/output highlighting

* lint errors

* fix link to wallets in modal

* use total supply instead of reserves for `noLiquidity` (fixes #701)

* bump the walletconnect version to the fixed alpha

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-08-06 18:18:43 -05:00
Ian Lapham
2150450760
improvement(token warnings): show better warnings for imported tokens (#1005)
* add updated ui warnings for imported tokens

* remove useless styling

* update to surpress on default tokens

* add integration tests for warning cards on token import

* remove callbacks as props in token warning card
2020-07-30 15:21:37 -04:00
Moody Salem
1b07e95885
fix(add liquidity): fix the mint hooks to return a price as well as return the dependent amount in the input currency (#1011) 2020-07-28 17:04:33 -05:00
Moody Salem
b08bb7eaff
add an integration test 2020-07-27 13:29:25 -05:00
Moody Salem
2962cd0e14
fix(migrate v1): migrate v1 pages and formatting 2020-07-27 12:33:02 -05:00
Moody Salem
365b429c0b
feat(token lists): implement the uniswap default list as a token list (#983)
* load tokens from url `useTokenList`

* improve performance of the loading

* move the loading to redux and save loaded lists

* lint error

* move the list fetching code to a separate component

* change how token lists are fetched to use the updater and add unit tests

* fix a crash with currencyEquals

* bump sdk version

* token lists should automatically update for minor/patch changes

* nit

* show popups for list updates

* support pointing at localhost

* spuport ipfs/ipns logos

* use the updater to bump list versions

* save the old/new list in the popup for viewing diffs

* improve the list popup

* fix linter error, make sure visibility checking is working

* show list update notifications

* address a couple metamask warnings, linter error

* fix the custom added/default tokens

* refactor some popup stuff to reuse the fader

* linter error

* Revert: refactor some popup stuff to reuse the fader (a7b0f752)

* style improvements, linter

* add to the readme, drop the token-request template

* back to the beta that works with wallet connect

* get the dependencies to a state that works with wallet connect and passes integration tests
2020-07-25 10:41:03 -05:00
Moody Salem
19b1e9e399
feat(weth): support WETH across the site and use sdk 3.0 (#947)
* first pass of sdk 3.0

* second pass using weth

* kill unused pool popup

* get it compiling again

* first pass of sdk 3.0

* switch to currencies

* get it compiling after the big move merge

* restore margin

* clean up add liquidity more

* fix a bunch of bugs

* todo trade on v1

* show eth in currency list

* allow selecting eth in the swap page

* fix unit tests for swap page

* test lint errors

* fix failing integration tests

* fix another couple of failing unit tests

* handle selecting currency b when no currency a

* improve the import pool page

* clean up add liquidity for invalid pairs

* bold

* first pass at swap arguments for v1, some unit tests

* fix some bugs in add liquidity, burn hook

* fix last of ts errors in remove liquidity

* support wrapping/unwrapping weth

* kill a bunch of code including the dummy pairs

* required pair prop in the position card

* tests for the v1 swap arguments

* do not say estimated on the wrap ui

* show ETH instead of WETH in the pool summaries

* small size socks

* fix lint error

* in burn, use currencies from the URL

* fix some integration tests

* both contain weth

* receive eth/weth link

* fix empty row

* show wrapped only if one currency is weth

* currency selects in the remove liquidity page
2020-07-20 06:48:42 -05:00
Moody Salem
6287b95b92
fix(#961): change send copy 2020-07-17 09:05:20 -05:00
Moody Salem
e05e0206b7
fix a warning with add liquidity button 2020-07-10 15:31:58 -04:00
Moody Salem
344b4340ae
improvement(pool): simplify pool flow, remove pool search modal (#941)
* deleting some code first

* strict, some refactoring

* denser common bases

* more add liquidity refactoring

* add liquidity paths working

* show common bases in the token selects

* fix the ability to select duplicate tokens

* useless rename

* try to handle alllll the duplicate token edge cases

* think i got them all lol

* remove common bases header

* Revert "remove common bases header"

This reverts commit 6ac4565d

* fix and add integration tests

* make gap between rows smaller

* get integration tests actually running again

* try another format of the command, upgrade serve

* frozen lockfile on install

* try the cypress github action

* install cypress in ci

* remove redundant ignore-scripts command

* use a specific github commit for the pinata action

* fix a bug in the multicall reducer, improve token list rendering performance

* improve the enter key on the token search modal

* stop using history.push

* fix linting errors

* position card cleanup before updating to match mock
2020-07-10 15:25:15 -04:00
Moody Salem
a4aef02747
nit(swap): add "(optional)" to add recipient button 2020-07-09 10:28:58 -04:00
Moody Salem
0fa238af0b
fix(swap): swap to account if recipient is null (#940)
* fix(swap): swap to account if recipient is null

* fix naming and strict ts error
2020-07-09 09:55:20 -04:00
Moody Salem
21c1484c0e
feat(send page): remove send page, implement recipient feature in swap page (#934)
* quick poc for removing swap page

* accidental import

* error for recipient field

* query parameter working

* undo id change

* tweaks to match mocks better

* tweaks to match mocks better

* some extra integration tests

* clean up nav tabs a bit

* clean up nav tabs a bit

* space swap/pool better

* stop selecting button text when double clicking

* remove unused transfer modal header

* add info to swap confirm modal

* shorten address

* improve summary message, remove unused send callback, fix react ga event

* fix lint errors

* arrow color
2020-07-08 23:06:29 -04:00
Moody Salem
91a8202737
fix(send page): support swap + send query parameters on send page (#921)
* support swap + send query parameters on send page

* revert the unfinished portis logic

Co-authored-by: ianlapham <ianlapham@gmail.com>
2020-07-05 22:32:54 -04:00
Moody Salem
d4911d1054
chore(ipfs migration): changes for ipfs url migration
- remove netlify stuff
- update rename to uniswap-interface
- always use hash router
2020-06-30 13:41:51 -04:00
Moody Salem
90df9c4ced
improvement(layout): move header version switch, drop footer for mobile (#910)
* version switch tweaks

* Mobile layout and toggle tweaks

* Remove the entire footer

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-06-29 16:55:33 -04:00
Moody Salem
58721fb191
improvement(remove liquidity): fix width of buttons on small screens 2020-06-24 11:55:19 -05:00
Moody Salem
2c4f4092d8
improvement(advanced): always show advanced (#890)
* always show advanced

* fix test

* always show the price, less jitter

* show tokens in price field

* fix the dropdown sticking around when switching between swap/send

* lint

* fix ios scrolling the modal body into the viewport bug

* don't use react-spring for simple slide animation

* safer price impact constants
2020-06-15 10:13:12 -04:00
Callil Capuozzo
fd162a72ff
feat(expert mode): Add expert mode (#828)
* Add expert mode scaffolding

* move advanced settings to settings tab, add expert mode

* update settings modal

* update font weight

* fix text

* update with modal
;

* add null checks

* update with input checking

* merge and add fixes

* update language and bg

Co-authored-by: ianlapham <ianlapham@gmail.com>
2020-06-12 15:26:28 -04:00
Noah Zinsmeister
e20936709c
improvement(migration): improve v1 migration flow (#885)
* first stab at improving v1 migration flow

* lint errors

* improve UI

* fix loading indicator

* switch back to dedicated migration UI

* address comments

* make migrate consistent with new token behavior

* hooks -> utils
2020-06-12 14:04:42 -04:00
Moody Salem
2fda2c8c15
fix(background image): cuts off at the bottom when scrolling 2020-06-12 13:42:35 -04:00
Moody Salem
7e49babff7
improvement(token search): No automatic add (#888)
* no automatic add, major refactors

* fix nit with version link

* add/remove links in the token search modal

* close tooltip when user types

* remove skip
2020-06-12 11:15:18 -04:00
Noah Zinsmeister
b35653ade1
fix approval bugs (#887)
clear signature on input in remove
2020-06-11 19:34:53 -04:00
Ian Lapham
57b53013d1
improvement(add/remove liquidity): update approve flow on add + remove (#879)
* update approve flow on add + remove

* add confirm to remove page
2020-06-11 17:01:39 -04:00
Moody Salem
bafd3f3c05
feat(v1-support): Enable executing swaps on v1 or v2 (#883)
* swap-v1

* toggle the version switch based on the search query parameter

* rework some of the query parameter stuff in send/swap

* hide the url when they click it

* allow switching back to v2 via the toggle

* represent the v1 trade in the UI if they toggle it on

* show trade link in both directions (5% threshold for v1 link)

* input amounts should reflect v1/v2

* perform the approve on v1 exchange for v1 trades

* get swap on v1 working

* move some code around to reduce duplication

* fix ts error

* correct input allowance

* fix exact token to token on v1

* fix pending approvals to be specific to the spender

* google analytics for swap version

* disable the version switch on pages other than swap and send
2020-06-11 15:56:28 -04:00
Noah Zinsmeister
e667615449
support proposed new FoT-capable methods (#866)
* support new FoT-capable methods

short-circuit modal footer rendering if no trade

improve clarity of tx modal flow

* update router address + ABI
2020-06-05 18:40:02 -04:00
Ian Lapham
0004db3d4a
Style updates, Approve UI updates (#841)
improvements(approvals): match approve flow to add/remove, update UI styles
2020-06-05 13:20:47 -04:00
Moody Salem
24c70791cd
lint error 2020-06-03 20:23:01 -04:00
Moody Salem
216fdea290
fix(instrumentation): event for migration v1->v2 2020-06-03 20:22:28 -04:00
Moody Salem
40e4ce2ed3
fix(style): add missing padding 2020-06-03 17:23:21 -04:00
Moody Salem
c1d35cc8b3
feat(migrate): adds the migrate flow to the uniswap exchange site
* links and page

* print all the details of the liquidity

* show working approve/migrate buttons

* testnet v1 factory addresses

* split code up into two pages

* getting closer to styled

* compute min amount out of eth and token

* compute min amount out of eth and token

* add a back button to the list page

* Improve empty states

* Improve the state management

* change the display of the migrate page to be more similar to original

* style fix, pending transaction hook fix

* add forwarding to netlify.toml

* handle case where v2 spot price does not exist because pair does not exist

* make ternaries more accurate

* handle first liquidity provider situation

* Style tweaks for migrate

* merge

* Address feedback
- show pool token amount
- show success when migration complete
- show price warning only if price difference is large

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-06-03 14:07:01 -04:00
Moody Salem
f279b2bea2
fix(misc): migrate link and gradient cut off 2020-06-03 13:36:31 -04:00
Moody Salem
10837d7ba1
fix(scrolling): too much scrolling 2020-06-02 12:28:35 -04:00
Moody Salem
dc391d1bea
fix(misc): fix the blinking ethereum logo on ios safari and temporarily remove the overflow settings to fix double scrolling situation 2020-05-31 00:15:17 -04:00
Moody Salem
e2d0514344
chore(cleanup): separate the components for 3 kinds of links we use 2020-05-30 23:33:16 -04:00
Moody Salem
98d25dd2af
perf(cleanup): remove the material ui dependency for the input range 2020-05-30 21:22:59 -04:00
Moody Salem
83554f44f8
perf(multicall): add unit tests and fix a bug (#845)
* start with the migrate page

* Add a bunch of tests and bump up the call size

* Show a link to the old portal, disable the WIP page

* Fix lint error
2020-05-29 20:07:18 -04:00
Moody Salem
9c1fe53e4b
perf(ethereum): reduce number of calls by batching all polling node calls (#840)
* initial refactoring

* rebase lint error

* start implementing reducer

* multicall reducer

* working multicall!

* clean up performance, re-fix annoying error

* use multicall everywhere

* use multicall for balances

* fix lint warning

* Use checksummed address

* Fix strict warning

* get it to a working state with the more generic form

* convert useETHBalances

* Remove the eth-scan contract completely

* Remove the eth-scan contract completely more

* Default export

* Put the encoding/decoding in the methods that can do it most efficiently

* Avoid duplicate fetches via debounce

* Reduce delay to something less noticeable

* Return null if pair reserves are undefined to indicate it does not exist
2020-05-28 21:17:45 -04:00
Noah Zinsmeister
28c916ff45
Remove liquidity callback (#837)
* give add liquidity the reducer treatment

rename setDefaultsFromURL to setDefaultsFromURLSearch

* fix tests and crash

* rework DOM structure to make flow more natural

* allow slippage + deadline setting in add liquidity

* migrate burn

* disable token selection in mint

clear input between pairs

* reset fields between pairs

* tweak helper text

* address review comments
2020-05-27 13:13:31 -04:00
Noah Zinsmeister
b2f0236ee8
Add liquidity callback (#830)
* give add liquidity the reducer treatment

rename setDefaultsFromURL to setDefaultsFromURLSearch

* fix tests and crash

* rework DOM structure to make flow more natural

* allow slippage + deadline setting in add liquidity

* disable token selection in mint

clear input between pairs
2020-05-27 11:42:25 -04:00
Moody Salem
2452d51e14
fix(remove swap button): weirdness on firefox 2020-05-23 22:21:20 -04:00
Moody Salem
a0d4710a11
perf(Search modal): performance improvements (#829)
* Search modal performance improvements

* Move more code out of the search modal

* Add the question helper to the search

* Fix a couple lint errors

* Fix the tests, duplicate import text

* Hide the token info on small screens, flex the list

* Fix token sorting, have a link that focuses and shows a tooltip for the search input

* Remove reach tooltip css

* Fix pair balances in the search modal

* Get the arrow working

* Only clear the input when they re-open

* Better way to exclude props

* More small performance tweaks
2020-05-23 12:06:16 -04:00
Moody Salem
219de1f471
fix(release): remove console.log statement 2020-05-22 08:24:16 -04:00
Ian Lapham
513a1b0c4b
add default text on create flow (#825) 2020-05-21 19:16:42 -04:00
Moody Salem
ccab6f01cf
More tests for add/remove liquidity and fix the automatic loading of tokens in those pages 2020-05-20 23:11:49 -05:00
Moody Salem
384c3cada4
Add integration test, change ipfs deploy into daily release workflow 2020-05-20 22:31:05 -05:00
Moody Salem
04584cc4ac
Fix the add liquidity link from uniswap.info 2020-05-20 21:09:36 -05:00
Moody Salem
0b8d05b696
Add a new target for deploying to IPFS (#819)
* Add a new target for deploying to IPFS

* verbose command

* Try the github action
2020-05-20 16:10:26 -05:00
Moody Salem
b616c7b50d
Default box-sizing to border-box everywhere 2020-05-20 14:59:12 -05:00
Moody Salem
1bb4db5414
Make the hooks directory strict (#817)
* Make the hooks directory strict

* Move using the v1 factory contract to hooks

* Add a comment to why we copy the token map

* Fix another lint error and make AllTokens deep readonly

* Move ALL_TOKENS to constants directory
2020-05-20 14:39:28 -05:00
Moody Salem
199eb8bf50
Refactor pages directory (#809)
* Revert "Temporarily disable the token warning for style fixes"

This reverts commit 70722b5e

* Move pages around and refactor to better support rendering content outside the app body

* Automatically add tokens in the add and remove liquidity pages

* Put the warning above the send/swap pages

* Add a margin below the token warning cards

* Save token warning dismissal state in user state

* Linting errors

* style fix
2020-05-20 14:00:33 -05:00
Moody Salem
cba76c43f6
Token warning a la #789 and #790 (#807)
* Token warning a la #789 and #790

* Clean up the duplicate name or symbol implementation

* Fix the spacing

* Change wording and add to send page

* Wording changes

* Refactor the common code to a component

* Fix lint error
2020-05-19 14:18:24 -05:00
Noah Zinsmeister
373b3180d3
manual approve fallback for remove liquidity (#806)
* generalize useApproveCallback

* show proper slippageAdjustedAmounts in dialog

* make confirmed button text readable in light mode

* default timeout from 15 -> 20 minutes

* add manual approve fallback to remove liquidity

* remove console log

* fix bad web3-react import introduced by refactor

* rename our wrapped version of useWeb3React

* return an enum from useApproveCallback

* fix comment
2020-05-19 15:08:58 -04:00
Moody Salem
c35d8fc702
Quick fix to #800 2020-05-19 09:50:31 -05:00
Moody Salem
e6a043cdc5
Fix #798 2020-05-19 09:34:24 -05:00
Moody Salem
81b063351d
Properly label the pure send transactions 2020-05-18 22:06:45 -05:00
Moody Salem
690a121218
Strict typescript (#792)
* Make typescript compilation strict in some new code

* Fix other errors, change how we set dark mode to always respond to url parameter

* Fix bug in block number
2020-05-18 18:23:58 -05:00
Moody Salem
f0e1e92178
Move trade price formatting to its own component 2020-05-18 15:03:34 -05:00
Moody Salem
1aea452f3b
Add a test and improve our redirects 2020-05-18 13:47:52 -05:00
Noah Zinsmeister
e311e2fcf9
mainnet (#782)
* mainnet config

* fix token + pair sorting

* standardize wrapped useWeb3React imports

* add final return to pair sorting

* add connecting pairs

* break tokens out into separate files

revert isAddress change

* filter out duplicate pairs

* remove add liquidity prompts

* link to v1 trades that are invalid on v2

* forward v2 subdomain to apex

* update blog link

* get rid of smart quotes

* link to uniswap info in position card

* improve pair sorting/searching

break out token identification

fix crash on early pool position clicks

change pair token separator from : to /
2020-05-18 13:20:42 -04:00
Moody Salem
095beae0c2
Refactor ExchangePage into Swap and Send pages (#774)
* Part 1, separate swap and send, move duplicate code into separate files

* Move some more constants out of the swap/send

* Support defaults from URL parameters

* Implement query string parsing via a redux action

* Finish merging the changes

* Fix the slippage warnings

* Clean up some other files

* More refactoring

* Move the price bar out of the component

* Move advanced details and some computations into utilities

* Make same improvements to send

* Approval hook

* Swap page functional with swap callback hook

* Swap/send page functional with swap callback hook

* Fix lint

* Move styleds.ts

* Fix integration test

* Fix error state in swap and move some things around

* Move send callback out of send page

* Make send behave more like current behavior

* Differentiate swap w/o send on send page from swap w/o send on swap page

* Remove userAdvanced which was always false

* Remove the price bar which is not used in the new UI

* Delete the file

* Fix null in the send dialog and move another component out of send

* Move the swap modal header out to another file

* Include change after merge

* Add recipient to swap message

* Keep input token selected if user has no balance and clicks send with swap

* Move the modal footer out of send component

* Remove the hard coded estimated time

* Fix the label/action for swap/sends

* Share the swap modal footer between swap and send

* Fix integration test

* remove margin from popper to suppress warnings

fix missing ENS name recipient link

default deadline to 15 minutes

* ensure useApproveCallback returns accurate data

* clean up callbacks

* extra space

* Re-apply ignored changes from v2 branch ExchangePage file

Co-authored-by: Noah Zinsmeister <noahwz@gmail.com>
2020-05-16 16:55:22 -05:00
Moody Salem
1380f865a9
Place tooltips better on smaller screens 2020-05-16 10:44:26 -04:00
Ian Lapham
6c9eeb4691
fixes from bug hunting (#773)
* fix small bugs , token icons

* remove mainnet

* style changes

* fix nav pointer issues on desktop

* more style changes

* remove mainnet
2020-05-15 15:17:19 -04:00
Noah Zinsmeister
7bffea0692
update swr hooks when block number changes (#771)
* key per-block SWR data with block number

* fix + tweak copy and decrease sig figs for lp fee

* don't use blocknumber as a key

instead mutate when it changes

* fix totalsupply + user liquidity sync issues

* fix v1 trade checker logic

* rough fix allowing removal of user added tokens

probably needs a more comprehensive overhaul...

* refactor SWR block updates to custom hook

* typo

* fix import error

* fix footer css to work cross-broswer

* disallow \ to be typing into amount inputs

add test case for this

add value assertions to all input integration tests

* fix import error

* remove console.log

* clean up address input a bit

trim whitespace from pasted addresses

* fix input maxing

remove spurious max output logic
2020-05-14 17:12:59 -04:00
Moody Salem
b1ffab1890
Refactors (#772)
* Bunch of refactoring

* Add an integration test that gets as far as swapping

* Drop the nonce code that isn't doing anything right now

* Undo one of the accidental changes to the reducer
2020-05-14 15:56:40 -04:00
Moody Salem
4ef3746a09
Add GA instrumentation to v2 (#769) 2020-05-14 13:18:08 -04:00
Moody Salem
d2462af821
Address flashy first loading behavior 2020-05-14 12:57:19 -04:00
Moody Salem
9006acb4c5
Balances rewrite (#761)
* Create the wallet store

* Get the updater completed

* Code complete

* Fix token balance bug

* Fix another bug in the hooks

* Final bug fix, blockNumber can be undefined

* Formalize the fact that block number can be undefined

* Woops add package

* Add more info to errors

* Replace balances in the v1 methods with the new ones

* Only return a balance value if it's present

* Address comments

* Trigger updateVersion before anything else
2020-05-13 16:36:45 -04:00
Ian Lapham
3a2566b4e7
Changes to useReserves, escapreRegex moved to utils, code cleanup (#762)
* bug fixes on non-existent vs no reserves, fix scanning on pair search, small ui tweaks

* remove unused vars

* remove mainnet in injected connector

* code cleanup for pr

* update pair value check
2020-05-13 14:16:52 -04:00
Moody Salem
ef65943659
Rewrite tx store (#754)
* Rewrite the transaction store

* Working state

* Fix lint errors

* Just always call getSigner
2020-05-12 18:11:10 -04:00
Moody Salem
19a53cd999
Rewrite localstorage context (#749)
* Rewrite the local storage context into a redux store for user data

* Separate out the mega methods

* Fix infinite loop

* Missing dependency

* Missing dependency, rename version field
2020-05-12 14:46:58 -04:00
Noah Zinsmeister
d40d81ca6a
noah changes (#739)
* remove duplicated prettier from dependencies

* use swr for allowances

* slight improvements to error cascading

* fetch totalsupply with SWR

fetch pairs with SWR (except persistent pairs, will be refactored later)

* fix lint error

* stop using pair context, instead store per-user pairs in local storage

* add more pairs to the default list

remove unnecessary isWETH

fix lint error

* add more bases to trade consideration

* fix lint warnings

* get SWR data on same schedule

* don't pass value if it's 0

fix WETH equality checks

* clean up fixed/significant formatting

* fix slippage calculation bug in swap

add slippage to remove

* fix token logos

* show fewer sig figs

* lint error

* remove unused signer

* add calculateSlippageAmount safety check and tests

* fix useAllBalances type

stop spuriously sorting token amounts of different tokens

use slightly better comparisons for slippage calculations

* improve priceSlippage comparison logic

* useReserves -> usePair

* use checksum for DAI logo address
2020-05-11 16:39:05 -04:00
Callil Capuozzo
dba6abadf5
UI/UX tweaks (#740)
* Prepare for V2 testing

* Bug fixes and tweaks

* Add form link

* Design tweaks

* higher quality favicon

* Favicon... again.

* Start dark mode

* Add dark toggle

* New dark theme unicorn

* fix connect wallet ui

* Titles for fields && small UI/UX tweaks

* Fix ts linter errors

* UI/UX tweaks

* rebass and change color names

* v1/v2 toggle and color tweaks

* Small header tweaks

* fix account input mobile padding

* remove unused imports

* Fix header link

* Theme toggle for mobile & fix

* no acount? hide maxes

* Use system theme unless toggled

* Remove unused styles

* Fix missing hooks dependencies

* Fix linting errors

* improve system dark mode listener

* add listener

* fix hook dependency

Co-authored-by: Ian Lapham <ianlapham@gmail.com>
Co-authored-by: Noah Zinsmeister <noahwz@gmail.com>
2020-05-11 15:12:38 -04:00
Moody Salem
c365a5ec33
Add some integration tests (#743) 2020-05-11 09:03:44 -04:00
Moody Salem
f1ccd7a166
Fix horizontal scrolling on small screens & add some small padding 2020-05-09 10:55:41 -04:00
Moody Salem
843d5e790a
Done with linter errors! 2020-05-08 18:32:36 -04:00
Ian Lapham
40a7cea6f6
Bug fixes, UI tweaks (#738)
* linking bug fixes, search UI tweaks

* search style tweaks

* organize imports
2020-05-08 17:22:19 -04:00
Moody Salem
152e84bc25
Fix more linting errors 2020-05-08 15:46:42 -04:00
Moody Salem
3b3f281319
Use eslint/prettier for typescript files 2020-05-08 14:50:27 -04:00
Moody Salem
2adb0a3dfb
Ts almost everywhere (#736)
* First 2

* More typescript

* More and more

* Almost there

* More

* More typescript

* Fix remove liquidity button

* Make the error chain more readable

* Slippage tabs
2020-05-08 13:48:05 -04:00
Moody Salem
86fa969d6b
Types for react-router-dom, stop lazy loading each route (#735)
* Types for react-router-dom, stop lazy loading each route

* Couple small fixes to README.md
2020-05-08 12:05:52 -04:00
Moody Salem
28b24036c6
Cypress (#734)
* Add some basic integration tests and CI in GitHub

* Add push trigger

* Add badge for tests to readme

* Unit tests

* Just use the development infura URL in the tests

* Remove unused webpack config

* Make integration test run on the same port as yarn start

* make test a little bit better

* rename describe
2020-05-08 11:38:33 -04:00
Moody Salem
a1a9d9f041
Type safety for styled components (#733) 2020-05-08 11:24:47 -04:00
Noah Zinsmeister
cb00e0baa5
migrate full away from ethers v4 to v5 (#728)
move some pacakges from dependencies to dev dependencies

bump versions
2020-05-07 19:53:08 -04:00
Moody Salem
7fcecc22d9
TS migrations and commit hash in code link (#730)
* TypeScript in the utils directory, README fixes

* Remove unused methods

* Added unnecessary space

* Some env variable cleanup

* Bug in change

* Another file to ts

* App.tsx

* Header and Footer to tsx

* Few more TS migrations and add a commit hash title to the uni icon

* Few more TS migrations and put commit hash in code link

* Splitting up files

* Splitting up files (merged dark mode changes)
2020-05-07 18:52:26 -04:00
Ian Lapham
404d7a60e5
bug fixes, style updates dark mode (#729)
* Prepare for V2 testing

* Bug fixes and tweaks

* Add form link

* Design tweaks

* higher quality favicon

* Favicon... again.

* Start dark mode

* Add dark toggle

* New dark theme unicorn

* header style changes

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-05-07 16:46:45 -04:00
Ian Lapham
49462fdb3b
bug fixes (#727) 2020-05-07 14:01:34 -04:00
Callil Capuozzo
e5ced44d75
Design tweaks (#717)
* Prepare for V2 testing

* Bug fixes and tweaks

* Add form link

* Design tweaks

* higher quality favicon

* Favicon... again.

Co-authored-by: Ian Lapham <ianlapham@gmail.com>
2020-05-06 15:34:06 -04:00
Ian Lapham
cdbf440e9c
add slider, big fixes (#715) 2020-05-05 23:20:31 -04:00
Ian Lapham
5426e48872
popup styles, slippage language and amounts, min max copy (#714)
* Prepare for V2 testing

* popup styles, slippage language and amounts, min max copy

* Bug fixes and tweaks

* Add form link

* remove other imports

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-05-05 20:40:59 -04:00
Noah Zinsmeister
64dd09f2cc
update to latest deploy (#712) 2020-05-05 16:36:22 -04:00
Ian Lapham
6fd9808e7d
Style updates merge with storage updates (#710)
* Add advanced user toggle

* UX stuff

* Remove unused imported checks

* Design tweaks and selection card

* remove unused imports

* Cleanup

* fix merge

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-05-04 20:21:55 -04:00
Noah Zinsmeister
c3d8bc7ed5
Localstorage and routing improvements (#704)
* remove tokens context in favor of localstorage

refactor localstorage

improve adding custom token flow

* drop exchange language

* ensure url tokens are added to localstorage

clean up routing

remove unnecessary output approval checks

* fix bad import

* Remove unused imported checks

* remove unused imports

Co-authored-by: Ian Lapham <ianlapham@gmail.com>
2020-05-04 17:56:10 -04:00
Ian Lapham
3f1d7ab310
add basic structure for advanced mode (#703)
* add basic structure for advanced mode

* auto dismiss popup

* Remove test code

* remove shadow

* Update advanced section, ui tweaks, balances back inline

* fix memory leak

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-04-30 21:14:29 -04:00
Ian Lapham
76dbc9fa18
Multiple UI changes (#700)
* small layout and text changes, bug fixes

* UI changes, add summary to txns

* Remove updates, small changes on send, common bases
2020-04-28 18:46:55 -04:00
Ian Lapham
006fe9b325
Updated context keys, remove logs (#680)
* updated keys in pair context

* fix bug on imported liquidity

* Add price bar and spacing tweaks

* Header tweaks

* Base for token import, query params, styling updates

* remove unused imports

* query params, create flow

* set ETH as default for create

* Style tweaks and price bar location

* add mobile popups, mobile styling on header

* updated mobile styles

* style updates mobile, fix build

Co-authored-by: Callil Capuozzo <callil.capuozzo@gmail.com>
2020-04-22 17:22:13 -04:00
Ian Lapham
50c9d9973a
UI Updates, Route Context Updates (#679)
* UI updates, big fixes on route hook

* fix bug on all pair list

* logout fix and  add mainnet WETH
2020-04-15 20:56:59 -04:00
Ian Lapham
af6add09a0
Radio button edits, theme updates (#668) 2020-03-30 17:07:12 -04:00
Ian Lapham
cf5c67ec88
fix rerender bugs (#666) 2020-03-26 12:58:45 -04:00
Ian Lapham
eaf8d5a39c
Add routes through ETH (#665)
* add fix for ETH balance fetching

* add tokens to other testnets

* update with Exchange -> Pair

* routes throuh ETH

* fix logs

* fix conflict
2020-03-26 12:42:06 -04:00
Ian Lapham
02dedcbc6e
Update message for testnet, bug fixes (#663) 2020-03-24 16:46:56 -04:00
Ian Lapham
2b15979e93
Hide dark and advanced, fix bug on empty balances (#660)
* Hide dark and advanced, fix bug on empty balances

* remove unused imports

* change default dark mode

* add warning on main net

* remove unused imports
2020-03-23 15:20:03 -04:00
ianlapham
6211dff044 typed pages 2020-03-20 16:03:23 -04:00
ianlapham
655b79569b basic send added 2020-03-17 16:23:27 -04:00
ianlapham
4e2c5c1e84 slippage without micro warnings on swap 2020-03-13 16:26:29 -04:00
ianlapham
e43d9e03f1 add popups to context 2020-03-11 10:44:39 -04:00
ianlapham
35d398406d add import to token search 2020-03-10 15:55:31 -04:00
ianlapham
217a700832 error warnings on remove and pool finder added 2020-03-10 14:55:33 -04:00
ianlapham
55eb03c237 remove version with derived percent 2020-03-09 17:20:41 -04:00
ianlapham
a6d8613bdd updated position cards 2020-03-06 14:45:11 -05:00
ianlapham
2ca3bf8da3 add slider to remove 2020-03-05 22:57:41 -05:00
ianlapham
236c3030e1 stable state for swaps, add, and remove eth (no remove token token yet) 2020-03-04 13:48:43 -05:00
ianlapham
753e5f3423 stable version with updated balances, add liquidity using SDK, pair menu search 2020-02-26 12:00:59 -05:00
Ian Lapham
7786537c43
add txn hash to analytics (#632) 2020-02-12 15:23:27 -05:00
Noah Zinsmeister
26c82401ea
fix value / token display (#615) 2020-01-27 10:47:23 -05:00
Ian Lapham
e05be71ea5
Token check (#610)
* update market rate calculation and input parsing for 0 decimal tokens

* remove style bump and revert tokens

* add custom warning for pasted tokens

* update centering

* upload dark theme

* update copy and loading state

* copy edits

* update color

* multiple cards
2020-01-24 17:24:53 -05:00
Ian Lapham
8290cf565f update market rate calculation and input parsing for 0 decimal tokens (#601)
* update market rate calculation and input parsing for 0 decimal tokens

* remove style bump and revert tokens
2020-01-21 17:54:17 -05:00
Ian Lapham
a6b9de3ec1 add warnign for broken ERC20 (#589) 2020-01-08 12:28:00 -05:00
Ian Lapham
008be5dcda fix linking bug (#583) 2020-01-02 13:13:20 -05:00
Ian Lapham
64296d8229 Update GA (#577)
* add updated GA

* update swap/send events

* add custom variable for device type

* cleanup
2019-12-31 15:27:51 -05:00
Ian Lapham
38625d24e9 Balance and USD Refactor (#544)
* update injected loading state

* basic setup

* add contexts

* minor changes

* refactor balances and USd price

* small tweaks

* clean up balances context code

don't store usd price except in hook

refactor getUSDPrice to make clear it's sync

* add small memo
2019-12-10 10:33:35 -05:00
Ian Lapham
795caac4fd Wallet Support with web3-react v6 (#514)
* basic support for desktop and mobile, with or without web3

* stable before mobile view update

* mobile modal views

* remove unused modules

* create global context for wallet modal, update to click button to connect

* first pass

* drag with react pose

* try without pose

* replace context with new syntax, basic setup

* stable version on all browser types

* remove dev flags

* fix swap broken

* update to clickable connect button if logged out

* stable, good entry

* fix bugs, exit animations

* prep for merge

* stable version with updated application context

* update animations with correct gesture package

* refactor wallet logic to multi-root

* small fixes

* Style Updates

* remove unused imports

* refactor wallet page
2019-11-25 17:56:31 -05:00
Ian Lapham
116a7f3833 fix bug with a try catch on approval (#516) 2019-11-21 14:10:59 -05:00
Ian Lapham
5f8c350d86 fix big on linking to add liquidity (#505) 2019-11-15 16:02:16 -05:00
Ian Lapham
c2f51f3b3e create warning and disable add liquidity button for broken tokens (#491)
* create warning and disable add liquidity button for broken tokens

* fix mobile styles
2019-10-29 15:56:53 -04:00
Ian Lapham
a33a2d90e1 make balances clickable on add liquidity page (#449)
* make balances clickable on add liquidity page

* update formatting logic

* fix max slippage calculation
2019-09-30 15:24:40 -04:00
Ian Lapham
4f566ab0c2 Add Custom url parameters (#423)
* query params for input and output currencies

* add slippage option

* add slippage cusytom param

* updated for sender address

* add field and amount support

* update params for pool page

* finish basic url support

* update app format

* update error checking to top level

* update for all pages

* fix build

* param updates

* fix slippage to basis points, update theme text, refactor to minimize lookups

* fix code styles

* update theme logic, remove extra setting, update rounding

* remove eslint comment errors

* remove logs, ignore lock

* remove lock
2019-09-17 18:47:32 -04:00
Ian Lapham
677537ca31 Updates to Token Modal (#399) 2019-08-12 20:37:32 -04:00
Callil Capuozzo
c28884f44b Add theme toggle and footer (#400) 2019-08-07 14:58:29 -04:00
Callil Capuozzo
80da6e0ff6 Dark theme (#380) 2019-07-31 14:11:58 -04:00
ian-jh
7a58ca810f resolve conflicts 2019-07-29 16:46:36 -04:00
ian-jh
7304277735 update appjs component structure 2019-07-29 16:03:35 -04:00
ian-jh
e19e150f01 combine swap and send pages into one component 2019-07-29 15:35:28 -04:00
Ian Lapham
30887ef1fc Add slippage option (#369)
* add custom slippage to /swap
2019-07-26 18:11:35 -04:00
Noah Zinsmeister
12344f74ef
add localstorage support (#374)
* add localstorage support

* remove connect arrow

* invert rates to start
2019-07-26 18:02:48 -04:00
ian-jh
2fef97d0f3 setup initital component merging 2019-07-24 16:33:28 -04:00
ian-jh
8c3b2bff8d update logic for button state 2019-07-24 14:53:36 -04:00
Mounir Benchemled
12ab73d6c9 Feature/ropsten (#370)
* Refactoring AddLiquidity to make gasLimit computation more clear
2019-07-24 10:26:17 -04:00
ian-jh
2a6b1e63c4 add initial changes 2019-07-22 15:00:45 -04:00
ian-jh
0bb6bdcd37 fix styles 2019-07-17 10:18:17 -04:00
ian-jh
6be569a2c6 fix i18n bug 2019-07-17 10:10:55 -04:00
Noah Zinsmeister
668a1c80ee
fix various 0 decimal bugs (#342) 2019-06-21 10:25:13 -04:00
Noah Zinsmeister
727d289413
modal responsiveness, 1 token addition, token selection (#329)
* improve modal responsiveness

* add MATIC

* fix modal min height reversion

* add token population via route
2019-06-14 10:39:33 -04:00
Noah Zinsmeister
cb4e1648d4
bug fixes (#319)
* fix ens name bug

* remove console.log

* add GEN

* fix styling and min display values
2019-05-31 13:39:22 -04:00
Noah Zinsmeister
c36a319982
fix 0 decimals bug (#318) 2019-05-30 17:54:32 -04:00
Noah Zinsmeister
70e9257c49
fix warnings + bugs 2019-05-28 14:53:47 -04:00
Noah Zinsmeister
f2f960f6fa
various improvements (#313)
* add unchecked signer

* remove focus underline from tabs

* update tokens

* remove console log

* remove snx for now

* make slippage warnings more robust

* memo-ize contexts

* improve slippage styling
2019-05-28 14:10:02 -04:00
Noah Zinsmeister
6579e17f7f
Account improvements (#302)
* begin account migration

* prep for styling

* improve multi-network support

allow deprecated window.web3 providers

* kill old modal

* remove tests

* clean up css

* Style account modal

* kill scss

* bug fixes

* use suspense for code-splitting and i18n

move abis

add ENS support to Web3Status

* Account modal mobile styles

* style tweaks

* finalize migration

* fix account styling

* fix ethereum svg

* fixes

* Split wallet modal into components

* refactor wallet modal and add connect button styles

* removing tap highlights

fix spacing on some mobile browsers

* Styling fixes for account and warning

* clean up injected connector logic

* remove console

* add wrong network copy

* restore border radius

change wallet logo
2019-05-24 16:53:01 -04:00
Noah Zinsmeister
25692792fa
fix liquidityMinted bug 2019-05-16 17:03:10 -04:00
Noah Zinsmeister
39312ab8c0
final bug fixes (#293)
* make jazzicon same as metamask

* fix token-token market rate

fix transactions bugs

add new contextual info to send

* fix .1 balance check on add liquidity

fix double click max balance bug
2019-05-16 16:54:15 -04:00
Noah Zinsmeister
e27cd92cd2
Slippage warning (#292)
* add rudimentary slippage warning

fix address checksum bug

debounce address input

alway show tx details if valid trade

* fix estimated copy
2019-05-16 13:21:14 -04:00
Noah Zinsmeister
2f0e2fb234
Beta cleanup (#285)
* improve context logic

* fix font-variant

* add dependencies for later

* fix icon
2019-05-14 10:19:09 -04:00
Noah Zinsmeister
c27cd98b33
fix 0 decimals bug 2019-05-09 20:48:34 -04:00
Noah Zinsmeister
78cdf11b37
Liquidity migration (#279)
* finalize initial migration

* remove redux

* fix token to token rate bug

* finalize initial migration

* fix test
2019-05-07 22:25:55 -04:00
Noah Zinsmeister
eb394ee88e
fix exchange address logic 2019-05-03 20:18:06 -04:00
Noah Zinsmeister
44d77ce948
Swap Migration (#277)
* migrate core logic

* finalize swap migration

* upgrade react-scripts and fix errors/warnings

* finalize swap, modularize currency input

* remove console.logs

* copy swap logic for send

* remove unnecessary variable

* tighten caching logic

* snappier ens integration
2019-05-03 16:37:59 -04:00
Noah Zinsmeister
4e413915f8
web3-react migration (#269)
* put suspense below redux

* don't mount qr

* properly format .json's

* remove useless Web3Connect component

* remove react-responsive header logic

* finalize initial web3-react migration

* add rudimentary network support

* address ci/cd issues

* fix syntax

* add infura support

rewrite create-exchange

closes #173

* remove CI flag, lazy loaded disabled for now

* roll back /pool

* fix currency input errors

fix valid state of buttons

* fix nav

* obscure env variables

* fix mobile header bug
2019-04-25 12:12:47 -04:00
Noah Zinsmeister
f855706f0d
update i18n; kinda fix tests; remove stale dependencies (#266) 2019-04-15 20:06:39 -04:00
Noah Zinsmeister
b2d753d6bb
bug fixes 2019-04-15 14:09:46 -04:00
Noah Zinsmeister
fff0718404
add travis support; clean up public/ 2019-04-15 14:05:54 -04:00
Noah Zinsmeister
71376cf7db
set up eslint and prettier; run prettier 2019-04-15 12:56:40 -04:00
Noah Zinsmeister
9c93c1a95b
fix lint errors 2019-04-15 12:07:16 -04:00
haydenadams
2c873a9cbd change deadline to 10 mins 2019-02-20 22:39:17 -05:00
haydenadams
5392c5e1e2 remove space 2019-02-17 20:58:08 -05:00
Hayden Adams
0888812431
Merge pull request #186 from rossbulat/remove-animated-switch
Replaced AnimatedSwitch with Switch. Added CSS Animation
2019-02-17 17:54:09 -08:00
maggie-5miles
832220b0a5 fix several missing translations 2019-01-23 16:15:32 +08:00
Ross Bulat
b38b41a1f5
Merge branch 'master' into remove-animated-switch 2019-01-12 15:19:35 +07:00
Ross
60eab0ebec conflicts 2019-01-12 15:16:03 +07:00
Ross
097a6afdc4 conflicts 2019-01-12 15:14:06 +07:00
Ross
c98591eb9c remove animation 2019-01-12 15:10:36 +07:00
Hayden Adams
09d3a7ce7b fix rebase error 2019-01-11 20:18:54 -05:00
maggie-5miles
520b9a58d6 i18n support 2019-01-11 19:24:20 -05:00
Jeff Reiner
e761cd6f8a 🐛 fix bug w/ wrapper width
no more breakpoints, just max width #183
2019-01-11 19:21:19 -05:00
Ross
43637b0fcb - top 2019-01-09 12:46:28 +07:00
Ross
fa61db21b2 subtle 2019-01-09 11:57:26 +07:00
Ross
5bf978e49e tidy up, additional ani wrap 2019-01-07 23:12:42 +07:00
Ross
10dc4e2df9 added ani 2019-01-07 22:35:00 +07:00
Jeff Reiner
38f13c4ef7 🎨 cleaning up old modal css declarations
improving classnames for transaction details items
2019-01-06 17:14:02 +01:00
Jeff Reiner
d5679be56a ♻️ refactor transaction details modal into expanding panel 2019-01-06 17:07:10 +01:00
Jeff Reiner
b96db4ef96 🐛 fix issue w/ responsiveness due to media querie
device-width is deprecated and only works in chrome it seems. reworked to use regular min/max-width queries for both scss & react-responsive. submitted a ticket to react-responsive to fix
2019-01-03 10:04:27 +01:00
Hayden Adams
df3f8e98ed fix rounding error 2018-12-24 15:14:47 +08:00
Kenny Tran
89290c5bcf Middle arrow flips input/output for swap/send (#151) 2018-12-24 15:14:47 +08:00
Kenny Tran
d63a73aed0 Use decimals instead of label (#152) 2018-12-24 15:14:47 +08:00
Kenny Tran
4b4df7ed3d Don’t render numbers if decimals is 0 (#135) 2018-12-24 15:14:47 +08:00
Kenny Tran
7608485fdb Retry deadline if undefined (#134)
* Retry deadline if undefined

* Remove console logs
2018-12-24 15:14:47 +08:00
Kenny Tran
6c57d78240 Add different transaction details for 1st liquidity (#133) 2018-12-24 15:14:47 +08:00
Kenny Tran
03ecca1b5e Don’t render exchange if no label (#124) 2018-11-15 01:37:42 +08:00
Kenny Tran
9091910e0c Create ContextualInfo component and refactor pages (#107)
* Add contextual info to Remove Liquidity page

* Create ContextualInfo component and refactor pages

* Add contextual info to remove liq and refactor

* Add modalClass attribute to ContextualInfo

* Mirror add liquidity text
2018-11-15 01:37:42 +08:00
Kenny Tran
05e7f9a022 Update output calc for remove liquidity 2018-11-12 13:18:04 -08:00
Kenny Tran
207df31154 Normalize remove liquidity exchange rate 2018-11-12 12:55:46 -08:00
Chi Kei Chan
f87aa671a3
Normalize token decimals before calculating exchange rate (#129) 2018-11-12 11:29:26 +08:00