* refactor: move initializeAnalytics code to top-level
* expect that there's a node env per key
* remove more dev specific stuff
* module.exports
* remove locales
* fix
* service worker update
* init commit
* remove absolute value in date calc
* all the events are now logged properly plus changed native token address to NATIVE
* add documentation line
* remove unnecessary prop
* init
* init
* checkpoint
* checkpoint
* merge
* lint
* cleanup
* wallet user model stuff working as expected now
* add app loaded event and rest of user properties
* fix tests
* change token balances as per kyle rec
* refactor connected wallet state handling + rest of vm comments
* fix redux breaking, revert wallet from set to array
* modified redux state to track wallet connections to properly log reconnects
* linted and removed console.log
* fixes for lynn's comments + documenting
* initial
* add to index
* show more logic
* split up
* nvm combine
* combine more
* loading state for the app
* no conditional
* rm var
* comment
* move comment
* add control specifically
* init commit
* remove absolute value in date calc
* all the events are now logged properly plus changed native token address to NATIVE
* add documentation line
* remove unnecessary prop
* init
* add approve token event
* fix build
* add route event properties
* fix build
* respond to vm comments
* respond to vm comments
* remove routes properties
* feat: fetch stablecoins price with SOR, PI warning
* calculate realized price impact
* remove unrelated changes
* dupe import
* pr feedback
* use the same calculation function for PI
* use proper var
* init commit
* remove absolute value in date calc
* all the events are now logged properly plus changed native token address to NATIVE
* add documentation line
* remove unnecessary prop
* respond to vm comments
* merge and rename util method
* respond to vm comments again
* init commit
* add amplitude ts sdk to package.json
* add more comments and documentation
* respond to vm comments
* respond to cmcewen comments
* fix: remove unused constants
* init commit
* adapt to web
* add optional event properties to trace
* correct telemetry to analytics
* init commit
* change telemetry to analytics in doc
* init commit
* fix: respond to cmcewen comments + initialize analytics in app.tsx + add missing return statement
* add element name constant
* init commit
* correct price_impact calculation
* resolve vm comments
* fixes in response to comments
* respond to vm
* use ALL significant digits for token amounts
* init commit
* logged all properties
* create helper function getPriceImpactPercentageNumber
* 4 decimal points for percentages
* price percentage fn
* only log event on FIRST price fetch
* init commit
* add swap transaction completed event
* respond to cmcewen comments
* add two events
* remove console.logs
* move transaction completed logging to reducer
* simplify and remove unnecessary logic and constants
* respond to cmcewen comments
* respond to cmcewen comments
* respond to vm comment
* chore: upgrade react-router-dom to v6
* migrate Redirect to Navigate
* use Routes instead of Switch
* migrate useHistory to useNavigate
* use To type
* use element
* work around activeClassName
* fix typing for useParams
* deduplicate
* fix Navigate
* add e2e tests
* visit /swap directly
Co-authored-by: Vignesh Mohankumar <me@vig.xyz>
* init commit
* add amplitude ts sdk to package.json
* add more comments and documentation
* respond to vm comments
* respond to cmcewen comments
* fix: remove unused constants
* init commit
* adapt to web
* add optional event properties to trace
* correct telemetry to analytics
* init commit
* change telemetry to analytics in doc
* init commit
* fix: respond to cmcewen comments + initialize analytics in app.tsx + add missing return statement
* add element name constant
* init commit
* correct price_impact calculation
* resolve vm comments
* fixes in response to comments
* respond to vm
* use ALL significant digits for token amounts
* init commit
* logged all properties
* create helper function getPriceImpactPercentageNumber
* 4 decimal points for percentages
* price percentage fn
* only log event on FIRST price fetch
* respond to cmcewen comments
* init commit
* add amplitude ts sdk to package.json
* add more comments and documentation
* respond to vm comments
* respond to cmcewen comments
* fix: remove unused constants
* init commit
* adapt to web
* add optional event properties to trace
* correct telemetry to analytics
* init commit
* change telemetry to analytics in doc
* init commit
* fix: respond to cmcewen comments + initialize analytics in app.tsx + add missing return statement
* add element name constant
* init commit
* correct price_impact calculation
* resolve vm comments
* fixes in response to comments
* respond to vm
* use ALL significant digits for token amounts
* create helper function getPriceImpactPercentageNumber
* 4 decimal points for percentages
* change percentage to basis points units
* Add deprecated_ label to white and black
* Add deprecated_ label to text1 through text5
* Add deprecated_ label for bg0 through bg6
* Add deprecated_ prefix to remaining colors
* Add deprecated_ prefix to direct style references
* Add deprecated_ prefix to all remaining colors
* Update link color
* Fix 'deprecated_white' -> theme.deprecated_white
* Update snapshots
* Update graph link
* Add Gas over ride temp for Polygon
* removal of personal tweaks
* Update index.tsx
* reset to original file
* missing EOL
* Update useClientSideV3Trade.ts
* remove space
* replaceURLChain
* reorder stuff
* don't use usePrevious for previousChainId
* remove the replace param call in promise
* variable names
* comment
* confirm isActive
* wrong place for isActive
* change ret type
* add comments
* check if not previous chain id
* init commit
* add amplitude ts sdk to package.json
* add more comments and documentation
* respond to vm comments
* respond to cmcewen comments
* fix: remove unused constants
* init commit
* adapt to web
* add optional event properties to trace
* correct telemetry to analytics
* change telemetry to analytics in doc
* fix: respond to cmcewen comments + initialize analytics in app.tsx + add missing return statement
* respond to zzmp comments
* fixes
* eliminate unnecessary state
* respond to part of zzmp comments
* respond to zzmp comments round 2
* fixes
* respond to zzmp comments
* made initial changes for pools page displaying w/ unsupported chains
* condensed styling
* added chain validation to CTACards and wrote tests for both CTAcards and Pools page
* linted changes
* switched from snapshot to text matching tests
* switched test to use check for text instead of testid
* feat: Support for Celo
* fix: wrong condition
* combine celo and alfajores lists
* use celo erc20 representation
* fix: refactor infura.ts to networks.ts & add celo to rpc urls
* feature: add celo contract addresses
fix: remove celo from supported gas estimate chains until feature is available
* refactor: useUSDCPrice to useStablecoinPrice
fix: add celo to supported gas estimate chains
* fix: use unique factory address for getting pool address
* fix: darkmode background graident
* fix: removing a comment left behind
* fix: remove bad import
* fix: remove dead link until the Celo is live on info.uniswap.org
* fix: add asset to common bases & minor refactoring
* fix: celo info links point to root info.uniswap.org
* fix: change celo token bridge to portal
* fix: update redux-multicall to latest version
* refactor: for code readability
* fix: celo banner colors & remove unused alternative logo
* fix: change celo token list to hosted version
* fix: update celo banner colors
* fix: move celo to the bottom of the network selector list
* fix: dedup dependencies @uniswap/router-sdk @uniswap/v3-sdk
* fix: refactoring + move Celo above L2s
* fix: update celo contract addresses
* fix: update celo subgraph
* fix: update v3-sdk and smart-order-router versions
* fix: move Celo to the bottom of the network selector list
* fix: downgrade smart-order-router and add casting fix
* fix: downgrade smart-order-router and add casting fix
* fix: resolve Pool dependency
* fix: bridge chain id types
* fix: explorer link test
* fix: use quoter v2 ABI in useClientSideV3Trade fro Celo
* fix: update connection "infura_rpc" to networks
* fix: revert yarn.lock and force install
* fix: dedup router and v3 sdk
* refactor: mv quoter v2 to client side v3 trade
* build: dedup lockfile
* feature: add portal ether to common bases
* fix: add comment for chains that use QuoterV2
* fix: use token as native asset
* fix: supply correct factory address to getPoolAddress call & refactor nativeOnChain method
* feature: adjust celo tokens presetned
* fix: update celo explorer to celoscan
* fix: celo token casting
* fix: celo celo explorer it
* fix: celo chain info should be consistent with block explorer used.
Co-authored-by: Zach Pomerantz <zzmp@uniswap.org>
* fix windows dev environment bugs
* fix NetworkSelector toggle bug
* revert: ⏪ add `prei18n:extract` script back
this change to make the script Windows-compatible will be dealt with in a separate PR
* revert: ⏪ revert prettier endOfLine fix
Will be dealt with in a separate PR
* updates
Co-authored-by: Vignesh Mohankumar <vignesh@vigneshmohankumar.com>
Co-authored-by: Vignesh Mohankumar <me@vig.xyz>
* don't need undo logic
* maybe need to return connector
* make sure the urlChainId doesn't equal existing chainId
* fix network switching
* add back revert logic
* undo changes to switchChain
* move revert logic into the hook
* feat: show injected options in wallet browsers
* initial testing
* more mocking
* mock more
* mobile tests
* updates
* add data test
* finally got the mock to work
* WORKING
* uncomment
* rm console.log
* fix
* check length
* fix tests to use useWeb3React
* rm
* rename tests
* use data-testid
* findByTestId
test -> it
add types
temp
rm exclude
get -> find
* Revert "findByTestId"
This reverts commit 1e1c483ef90596b41f649443be1b191414ab3876.
* rm some test ids
* fix
* fix: set content-type on cached document
* fix: delete old content-types
* fix: avoid immutable headers
* test: content-type
* fix: do not destructure response
* test: serve from cache with vercel
* fix: inject cache marker into body
* fix: serviceworker request path
Always requests the app-shell from the same path as the cache key, in
order to guarantee that the etags will match should the cache be valid.
* fix: avoid returning redirects
* fix: show no price impact eth to weth
Fixed the price estimate values to reflect the correct price estimates depending on whether it is a wrapped trade
* fix: show no price impact eth to weth
Fixed to display the correct price estimates depending on whether it is a wrapped trade (eth -> weth should show no price impact)
* Added ETH->wETH testing
Added a Cypress test to check wrapped value swap has no price impact
* make Cypress test cleaner
* fix: always-fresh service worker cache
* chore: clarify service-worker
* fix: cache in CacheStorage
* feat: set __isDocumentCached
* add back in manifest precaching
* add unit tests (incomplete)
* test: simplify test env
* test: add service-worker cypress test
* test: service-worker document handler
* fix: CachedDocument ctor
* fix: Readable for ReadableStream in jest
* build: clean up module loading
* fix: rename commands->ethereum
* build: simplify package.json deps
* build: clean up cypress usage
* build: clean up yarn.lock
* build: record cypress runs
* build: disable chromeWebSecurity in cypress tests
* build: rm babel
* build: disable sw in ci cypress
* build: nits
* build: update workbox version
* chore: fix merge
* test: cache
* test: cypress-ify the before hook
* test: clear sw before each test
* fix: cy then
* test: cypress shenanigans
* style: lint
* chore: rm todo
* test: fail fast for service worker with dev builds
* docs: update contributing to tests
* fix: clean up tests after merge
- Add fast fail in case of dev server, which lacks ServiceWorker
* fix: inject ethereum
* test: service worker
* test: increase sw timeout
* test: sw state
* test: run cypress in chrome
* feat: add on-demand caching to improve sw startup time
* test: test dynamically
* fix: simplify cached doc
* fix: optional sw
* fix: expose response on cached doc
* fix: stub out sw req
* fix: intercept
Co-authored-by: Christine Legge <christine.legge@uniswap.org>
* fix: fix scroll on page navigation
* fix: scroll to top when navigating in whole app
* fix: refactor to use useHistory hook
* fix: change scrollToTop component to hook
Co-authored-by: Lynn Yu <lynn.yu@uniswap.org>
* fix: use simple toggle instead of toggle with text init commit
* fix: also change toggle in voting page and list toggle used in manage token list
* fix: simplify all toggle components into one configurable toggle
* fix: add ease-in animations for toggle
* fix: remove animation from toggle on initial page load to reduce thrash
Co-authored-by: Lynn Yu <lynn.yu@UNISWAP-MAC-015.local>
Co-authored-by: Lynn Yu <lynn.yu@uniswap.org>
* fix: use simple toggle instead of toggle with text init commit
* fix: also change toggle in voting page and list toggle used in manage token list
* fix: simplify all toggle components into one configurable toggle
* fix: add ease-in animations for toggle
Co-authored-by: Lynn Yu <lynn.yu@UNISWAP-MAC-015.local>
Co-authored-by: Lynn Yu <lynn.yu@uniswap.org>
* fix: add animated loading bars and ensure sorted tokens upon load
* refactor: undo refactor of token selector component in CurrencySearch
* fix: fix styling as per design, still need to respond to other comments in review
* fix: add timeout to token loader of 2 seconds
* fix: add snapshot test and styling changes as per fred rec
* refactor: simplify function in currency list test
* fix: increase loading bars time from 2 seconds to 3 sec
* fix: respond to zach's comments
* fix: fix import errors
Co-authored-by: Lynn Yu <lynn.yu@UNISWAP-MAC-015.local>
* Add 'hide closed positions' to mobile pool view
* Update 'Hide closed positions' mobile font size
* add new toggle from design spec
* change off toggle button color
* Update SimpleToggle.tsx
* update wrapping position for toggle, improve component naming
* change usdcPrice in swap modal to use fixed decimals instead of significant formatting
* change text for fiatValue as well
* change decimal points condition to 1.05
* (m) missed one value
- fix: handle non existing inputCurrency from url
oppening an url swap?inputCurrency=not_existing_address
cause a state where you are not able to change input currency
* feat(widgets): empty token list on network alert
* make it work
* pr review
* split dialog header out of tokenselect
* correctly filter token list case
* find -> some
* pr feedback
* clean up query hooks
* Add on-hover tooltips for tx details
* Change tooltips to use <Trans> macro instead of t
* fix: remove info tooltip on transaction popup
* fix: update getting the nativeCurrencyVariable
* use getNativeCurrency() instead of chainInfo const
Co-authored-by: Christine Legge <christine.legge@uniswap.org>
* feat(analytics): add a GA event on risk block
* Update src/hooks/useAccountRiskCheck.ts
Co-authored-by: Will Hennessy <hennessywill@gmail.com>
Co-authored-by: Will Hennessy <hennessywill@gmail.com>
* feat(compliance): risk screening
* add api endpoint
* hosted app only
* add help center link and click-to-copy email address
* only show on app.uniswap.org and fix spacing nits
* 12px for bottom section
* fix: can burn position even if fetching fees fails.
* Revert "fix: can burn position even if fetching fees fails."
This reverts commit a96f7178e55a264c32a3cf8c1b6562785cbd50d4.
* recover more gracefully from failed fee fetch
Co-authored-by: Noah Zinsmeister <noahwz@gmail.com>
* add widgets info to the repo README
* pr feedback from z
* pr feedback from w and z
* separate README.md and INTERFACE_README.md
* Update WIDGETS_README.md
Co-authored-by: Will Hennessy <hennessywill@gmail.com>
Co-authored-by: Will Hennessy <hennessywill@gmail.com>