ci(release): publish latest release

parent f6bc948a
IPFS hash of the deployment: IPFS hash of the deployment:
- CIDv0: `QmSyV4dNhjeqsxaKHkFZyqyLKGaqBUkgr5fb1FDZN24yY5` - CIDv0: `QmQHEMPoqZQfpohtZc8Hr7pbyDqNemG73Hk1nPXBkGUBPH`
- CIDv1: `bafybeice3zkknbq42szpbonaebytodvjc7rddzz3v5rc4hd6wjts6t2usi` - CIDv1: `bafybeia424ltwwetxbd2mydhblgldh6dg5iporjoopqisd45ng47hfwj7q`
The latest release is always mirrored at [app.uniswap.org](https://app.uniswap.org). The latest release is always mirrored at [app.uniswap.org](https://app.uniswap.org).
...@@ -10,21 +10,15 @@ You can also access the Uniswap Interface from an IPFS gateway. ...@@ -10,21 +10,15 @@ You can also access the Uniswap Interface from an IPFS gateway.
Your Uniswap settings are never remembered across different URLs. Your Uniswap settings are never remembered across different URLs.
IPFS gateways: IPFS gateways:
- https://bafybeice3zkknbq42szpbonaebytodvjc7rddzz3v5rc4hd6wjts6t2usi.ipfs.dweb.link/ - https://bafybeia424ltwwetxbd2mydhblgldh6dg5iporjoopqisd45ng47hfwj7q.ipfs.dweb.link/
- https://bafybeice3zkknbq42szpbonaebytodvjc7rddzz3v5rc4hd6wjts6t2usi.ipfs.cf-ipfs.com/ - https://bafybeia424ltwwetxbd2mydhblgldh6dg5iporjoopqisd45ng47hfwj7q.ipfs.cf-ipfs.com/
- [ipfs://QmSyV4dNhjeqsxaKHkFZyqyLKGaqBUkgr5fb1FDZN24yY5/](ipfs://QmSyV4dNhjeqsxaKHkFZyqyLKGaqBUkgr5fb1FDZN24yY5/) - [ipfs://QmQHEMPoqZQfpohtZc8Hr7pbyDqNemG73Hk1nPXBkGUBPH/](ipfs://QmQHEMPoqZQfpohtZc8Hr7pbyDqNemG73Hk1nPXBkGUBPH/)
## 5.14.0 (2024-02-27) ### 5.14.1 (2024-02-27)
### Features
* **web:** add disclaimer to limits review modal (#6597) f1cb196
### Bug Fixes ### Bug Fixes
* **web:** fix expiry line item (#6596) 7225ae9 * **web:** analytics fix for limits [hotfix for prod] (#6602) f1133af
* **web:** use page chain for liquidity chart (#6582) 4e89b28
web/5.14.0 web/5.14.1
\ No newline at end of file \ No newline at end of file
...@@ -59,17 +59,9 @@ export default function SwapHeader({ compact, syncTabToUrl }: { compact: boolean ...@@ -59,17 +59,9 @@ export default function SwapHeader({ compact, syncTabToUrl }: { compact: boolean
setCurrentTab(SwapTab.Swap) setCurrentTab(SwapTab.Swap)
} }
const onClickTab = (tab: SwapTab) => (e: React.KeyboardEvent<HTMLHeadingElement | HTMLButtonElement>) => {
if (e.key === 'Enter' || e.key === 'Space') {
e.preventDefault()
setCurrentTab(tab)
}
sendAnalyticsEvent('Swap Tab Clicked', { tab })
}
const onTab = useCallback( const onTab = useCallback(
(tab: SwapTab) => { (tab: SwapTab) => {
sendAnalyticsEvent('Swap Tab Clicked', { tab })
if (syncTabToUrl) { if (syncTabToUrl) {
navigate(`/${tab}`, { replace: true }) navigate(`/${tab}`, { replace: true })
} else { } else {
...@@ -90,7 +82,6 @@ export default function SwapHeader({ compact, syncTabToUrl }: { compact: boolean ...@@ -90,7 +82,6 @@ export default function SwapHeader({ compact, syncTabToUrl }: { compact: boolean
onClick={() => { onClick={() => {
onTab(SwapTab.Swap) onTab(SwapTab.Swap)
}} }}
onKeyDown={onClickTab(SwapTab.Swap)}
> >
<Trans>Swap</Trans> <Trans>Swap</Trans>
</SwapHeaderTabButton> </SwapHeaderTabButton>
......
...@@ -421,8 +421,10 @@ function SubmitOrderButton({ ...@@ -421,8 +421,10 @@ function SubmitOrderButton({
export function LimitFormWrapper(props: LimitFormProps) { export function LimitFormWrapper(props: LimitFormProps) {
return ( return (
<Trace page="limit-page">
<LimitContextProvider> <LimitContextProvider>
<LimitForm {...props} /> <LimitForm {...props} />
</LimitContextProvider> </LimitContextProvider>
</Trace>
) )
} }
...@@ -16,6 +16,7 @@ import { CurrencyState, useSwapAndLimitContext } from 'state/swap/SwapContext' ...@@ -16,6 +16,7 @@ import { CurrencyState, useSwapAndLimitContext } from 'state/swap/SwapContext'
import { didUserReject } from 'utils/swapErrorToUserReadableMessage' import { didUserReject } from 'utils/swapErrorToUserReadableMessage'
import { useIsSmartContractAddress } from 'utils/transfer' import { useIsSmartContractAddress } from 'utils/transfer'
import { Trace } from 'analytics'
import { NewAddressSpeedBumpModal } from './NewAddressSpeedBump' import { NewAddressSpeedBumpModal } from './NewAddressSpeedBump'
import SendCurrencyInputForm from './SendCurrencyInputForm' import SendCurrencyInputForm from './SendCurrencyInputForm'
import { SendRecipientForm } from './SendRecipientForm' import { SendRecipientForm } from './SendRecipientForm'
...@@ -245,8 +246,10 @@ function SendFormInner({ disableTokenInputs = false, onCurrencyChange }: SendFor ...@@ -245,8 +246,10 @@ function SendFormInner({ disableTokenInputs = false, onCurrencyChange }: SendFor
export function SendForm(props: SendFormProps) { export function SendForm(props: SendFormProps) {
return ( return (
<Trace page="send-page">
<SendContextProvider> <SendContextProvider>
<SendFormInner {...props} /> <SendFormInner {...props} />
</SendContextProvider> </SendContextProvider>
</Trace>
) )
} }
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment