ci(release): publish latest release

parent 7058b40c
IPFS hash of the deployment: IPFS hash of the deployment:
- CIDv0: `QmUnNYjRF1siz1YhXyqh2UEoB5AJiTyiYihJCvPVm3FCdJ` - CIDv0: `QmWjdKVdC9JtozeVwHk1mC1NqZQFVaE67FUbiimYKFKXga`
- CIDv1: `bafybeic7xtznmrazhjjf2wlmdwzng2qfw3th6skmbj6bjc4i452fvjevsu` - CIDv1: `bafybeid4ybefcxjobfsidxoodakcycwsqpigag7lo6nwiyshjqv3i3ai34`
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,47 +10,10 @@ You can also access the Uniswap Interface from an IPFS gateway. ...@@ -10,47 +10,10 @@ 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://bafybeic7xtznmrazhjjf2wlmdwzng2qfw3th6skmbj6bjc4i452fvjevsu.ipfs.dweb.link/ - https://bafybeid4ybefcxjobfsidxoodakcycwsqpigag7lo6nwiyshjqv3i3ai34.ipfs.dweb.link/
- https://bafybeic7xtznmrazhjjf2wlmdwzng2qfw3th6skmbj6bjc4i452fvjevsu.ipfs.cf-ipfs.com/ - https://bafybeid4ybefcxjobfsidxoodakcycwsqpigag7lo6nwiyshjqv3i3ai34.ipfs.cf-ipfs.com/
- [ipfs://QmUnNYjRF1siz1YhXyqh2UEoB5AJiTyiYihJCvPVm3FCdJ/](ipfs://QmUnNYjRF1siz1YhXyqh2UEoB5AJiTyiYihJCvPVm3FCdJ/) - [ipfs://QmWjdKVdC9JtozeVwHk1mC1NqZQFVaE67FUbiimYKFKXga/](ipfs://QmWjdKVdC9JtozeVwHk1mC1NqZQFVaE67FUbiimYKFKXga/)
## 5.22.0 (2024-04-02) ### 5.22.1 (2024-04-02)
### Features
* **web:** add orderType to uniswapX POST order (#7071) 296a280
* **web:** add warning when pool is out of sync (#7074) 0b4142b
* **web:** alerts for adding liquidity to blast (#7090) 4bb5949
* **web:** blast (#6853) 2e14697
* **web:** Condense SuggestionRow and Remove VE (#6961) ff0aea0
* **web:** fix orderType to backend types (#7093) 516b4a9
* **web:** only search for tokens on the connected chain (#7062) f21bd47
* **web:** rm deprecated providers usage (#6891) c27e170
* **web:** share gql types + query with mobile (#6898) 4f047c7
* **web:** show user added tokens in currency list when using gql tokens (#7095) c21d5bd
* **web:** support parsing X v2 encoded orders (#7157) bbc7791
* **web:** unregister the service worker (#7155) 563c75b
### Bug Fixes
* **web:** auto bade not centered (#7166) 1b11359
* **web:** avoid stacking nested AnimatedDropdowns (#7097) cdee8c0
* **web:** bump redux version to 8 (#7121) b0c0e4e
* **web:** clean up sentry integration (#6945) 7073673
* **web:** fix failing type error on main (#7187) cec328f
* **web:** fix platform checks for mweb breaking uniwallet deeplinking (#7076) a4c6b86
* **web:** fix prepare not generating graphql breaking vercel build (#7049) d6b7e02
* **web:** remove circular dependencies in unit test code (#7057) 769c0b4
* **web:** responsive swap header (#7117) cce2323
* **web:** universal search e2e test (#7153) f767f6b
* **web:** update limit price signage (#7150) 2b303a9
* **web:** use chainId when getting token list currency (#7184) 93e5c4c
### Tests
* **web:** update SwapEventTimestampTracker to not use mocks (#7056) b1c7c61
web/5.22.0 web/5.22.1
\ No newline at end of file \ No newline at end of file
...@@ -5,6 +5,7 @@ import PrefetchBalancesWrapper from 'components/PrefetchBalancesWrapper/Prefetch ...@@ -5,6 +5,7 @@ import PrefetchBalancesWrapper from 'components/PrefetchBalancesWrapper/Prefetch
import Row from 'components/Row' import Row from 'components/Row'
import styled from 'styled-components' import styled from 'styled-components'
import { ClickableStyle, ThemedText } from 'theme/components' import { ClickableStyle, ThemedText } from 'theme/components'
import { Text } from 'ui/src'
const CurrencySymbolContainer = styled.span` const CurrencySymbolContainer = styled.span`
display: inline-block; display: inline-block;
...@@ -34,7 +35,7 @@ export function LimitPriceInputLabel({ ...@@ -34,7 +35,7 @@ export function LimitPriceInputLabel({
) )
} }
return ( return (
<ThemedText.LabelSmall style={{ userSelect: 'none' }}> <Text variant="body3" userSelect="none" color="$neutral2">
<Row align="center"> <Row align="center">
<Trans>When 1</Trans>{' '} <Trans>When 1</Trans>{' '}
<CurrencySymbolContainer> <CurrencySymbolContainer>
...@@ -47,6 +48,6 @@ export function LimitPriceInputLabel({ ...@@ -47,6 +48,6 @@ export function LimitPriceInputLabel({
</CurrencySymbolContainer>{' '} </CurrencySymbolContainer>{' '}
<Trans>is worth</Trans> <Trans>is worth</Trans>
</Row> </Row>
</ThemedText.LabelSmall> </Text>
) )
} }
...@@ -147,6 +147,7 @@ const InputRow = styled.div` ...@@ -147,6 +147,7 @@ const InputRow = styled.div`
${flexRowNoWrap}; ${flexRowNoWrap};
align-items: center; align-items: center;
justify-content: space-between; justify-content: space-between;
margin-top: 4px;
` `
const LabelRow = styled.div` const LabelRow = styled.div`
...@@ -304,7 +305,7 @@ const SwapCurrencyInputPanel = forwardRef<HTMLInputElement, SwapCurrencyInputPan ...@@ -304,7 +305,7 @@ const SwapCurrencyInputPanel = forwardRef<HTMLInputElement, SwapCurrencyInputPan
)} )}
<Container hideInput={hideInput}> <Container hideInput={hideInput}>
<Text variant="subheading2" userSelect="none" color="$neutral2"> <Text variant="body3" userSelect="none" color="$neutral2">
{label} {label}
</Text> </Text>
<InputRow style={hideInput ? { padding: '0', borderRadius: '8px' } : {}}> <InputRow style={hideInput ? { padding: '0', borderRadius: '8px' } : {}}>
......
...@@ -647,6 +647,7 @@ exports[`PoolDetailsStatsButton renders both buttons correctly 1`] = ` ...@@ -647,6 +647,7 @@ exports[`PoolDetailsStatsButton renders both buttons correctly 1`] = `
-webkit-justify-content: space-between; -webkit-justify-content: space-between;
-ms-flex-pack: justify; -ms-flex-pack: justify;
justify-content: space-between; justify-content: space-between;
margin-top: 4px;
} }
.c42 { .c42 {
...@@ -1201,7 +1202,7 @@ exports[`PoolDetailsStatsButton renders both buttons correctly 1`] = ` ...@@ -1201,7 +1202,7 @@ exports[`PoolDetailsStatsButton renders both buttons correctly 1`] = `
class="c27" class="c27"
> >
<span <span
class="font_subHeading _fontFamily-299667014 _display-inline _boxSizing-border-box _wordWrap-break-word _whiteSpace-pre-wrap _mt-0px _mr-0px _mb-0px _ml-0px _color-843135005 _fontSize-16px _lineHeight-24px _fontWeight-400 _userSelect-none" class="font_body _fontFamily-299667014 _display-inline _boxSizing-border-box _wordWrap-break-word _whiteSpace-pre-wrap _mt-0px _mr-0px _mb-0px _ml-0px _color-843135005 _fontSize-14px _lineHeight-20px _fontWeight-400 _userSelect-none"
> >
You pay You pay
</span> </span>
...@@ -1330,7 +1331,7 @@ exports[`PoolDetailsStatsButton renders both buttons correctly 1`] = ` ...@@ -1330,7 +1331,7 @@ exports[`PoolDetailsStatsButton renders both buttons correctly 1`] = `
class="c27" class="c27"
> >
<span <span
class="font_subHeading _fontFamily-299667014 _display-inline _boxSizing-border-box _wordWrap-break-word _whiteSpace-pre-wrap _mt-0px _mr-0px _mb-0px _ml-0px _color-843135005 _fontSize-16px _lineHeight-24px _fontWeight-400 _userSelect-none" class="font_body _fontFamily-299667014 _display-inline _boxSizing-border-box _wordWrap-break-word _whiteSpace-pre-wrap _mt-0px _mr-0px _mb-0px _ml-0px _color-843135005 _fontSize-14px _lineHeight-20px _fontWeight-400 _userSelect-none"
> >
You receive You receive
</span> </span>
......
...@@ -18,6 +18,7 @@ import { SendInputError } from 'state/send/hooks' ...@@ -18,6 +18,7 @@ import { SendInputError } from 'state/send/hooks'
import { useSendContext } from 'state/send/SendContext' import { useSendContext } from 'state/send/SendContext'
import styled, { css } from 'styled-components' import styled, { css } from 'styled-components'
import { ClickableStyle, ThemedText } from 'theme/components' import { ClickableStyle, ThemedText } from 'theme/components'
import { Text } from 'ui/src'
import { NumberType, useFormatter } from 'utils/formatNumbers' import { NumberType, useFormatter } from 'utils/formatNumbers'
import { maxAmountSpend } from 'utils/maxAmountSpend' import { maxAmountSpend } from 'utils/maxAmountSpend'
...@@ -335,9 +336,9 @@ export default function SendCurrencyInputForm({ ...@@ -335,9 +336,9 @@ export default function SendCurrencyInputForm({
<Wrapper $disabled={disabled}> <Wrapper $disabled={disabled}>
<InputWrapper> <InputWrapper>
<InputLabelContainer> <InputLabelContainer>
<ThemedText.SubHeaderSmall color="neutral2"> <Text variant="body3" userSelect="none" color="$neutral2">
<Trans>You&apos;re sending</Trans> <Trans>You&apos;re sending</Trans>
</ThemedText.SubHeaderSmall> </Text>
</InputLabelContainer> </InputLabelContainer>
<NumericalInputWrapper> <NumericalInputWrapper>
{inputInFiat && ( {inputInFiat && (
......
...@@ -16,7 +16,7 @@ import { useSendContext } from 'state/send/SendContext' ...@@ -16,7 +16,7 @@ import { useSendContext } from 'state/send/SendContext'
import styled, { css, keyframes } from 'styled-components' import styled, { css, keyframes } from 'styled-components'
import { ClickableStyle, ThemedText } from 'theme/components' import { ClickableStyle, ThemedText } from 'theme/components'
import { AnimationType } from 'theme/components/FadePresence' import { AnimationType } from 'theme/components/FadePresence'
import { Icons, UniconV2 } from 'ui/src' import { Icons, Text, UniconV2 } from 'ui/src'
import { FeatureFlags } from 'uniswap/src/features/experiments/flags' import { FeatureFlags } from 'uniswap/src/features/experiments/flags'
import { useFeatureFlag } from 'uniswap/src/features/experiments/hooks' import { useFeatureFlag } from 'uniswap/src/features/experiments/hooks'
import { import {
...@@ -309,9 +309,9 @@ export function SendRecipientForm({ disabled }: { disabled?: boolean }) { ...@@ -309,9 +309,9 @@ export function SendRecipientForm({ disabled }: { disabled?: boolean }) {
<RecipientWrapper $disabled={disabled}> <RecipientWrapper $disabled={disabled}>
{showInputField ? ( {showInputField ? (
<> <>
<ThemedText.SubHeaderSmall lineHeight="24px"> <Text variant="body3" userSelect="none" color="$neutral2">
<Trans>To</Trans> <Trans>To</Trans>
</ThemedText.SubHeaderSmall> </Text>
<StyledRecipientInputRow justify="space-between"> <StyledRecipientInputRow justify="space-between">
<Row ref={inputWrapperNode}> <Row ref={inputWrapperNode}>
<StyledRecipientInput <StyledRecipientInput
......
// Jest Snapshot v1, https://goo.gl/fbAQLP // Jest Snapshot v1, https://goo.gl/fbAQLP
exports[`SendCurrencyInputform should render correctly with no verified recipient 1`] = ` exports[`SendCurrencyInputform should render correctly with no verified recipient 1`] = `
.c3 { .c2 {
box-sizing: border-box; box-sizing: border-box;
margin: 0; margin: 0;
min-width: 0; min-width: 0;
} }
.c4 { .c3 {
width: 100%; width: 100%;
display: -webkit-box; display: -webkit-box;
display: -webkit-flex; display: -webkit-flex;
...@@ -24,7 +24,7 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien ...@@ -24,7 +24,7 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien
justify-content: space-between; justify-content: space-between;
} }
.c6 { .c5 {
width: 100%; width: 100%;
display: -webkit-box; display: -webkit-box;
display: -webkit-flex; display: -webkit-flex;
...@@ -41,14 +41,6 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien ...@@ -41,14 +41,6 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien
justify-content: flex-start; justify-content: flex-start;
} }
.c2 {
color: #7D7D7D;
-webkit-letter-spacing: -0.01em;
-moz-letter-spacing: -0.01em;
-ms-letter-spacing: -0.01em;
letter-spacing: -0.01em;
}
.c0 { .c0 {
display: -webkit-box; display: -webkit-box;
display: -webkit-flex; display: -webkit-flex;
...@@ -73,11 +65,11 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien ...@@ -73,11 +65,11 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien
pointer-events: initial; pointer-events: initial;
} }
.c5 { .c4 {
color: #7D7D7D; color: #7D7D7D;
} }
.c7 { .c6 {
background: none; background: none;
width: 100%; width: 100%;
color: #222222; color: #222222;
...@@ -88,19 +80,19 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien ...@@ -88,19 +80,19 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien
line-height: 24px; line-height: 24px;
} }
.c7::-webkit-input-placeholder { .c6::-webkit-input-placeholder {
color: #CECECE; color: #CECECE;
} }
.c7::-moz-placeholder { .c6::-moz-placeholder {
color: #CECECE; color: #CECECE;
} }
.c7:-ms-input-placeholder { .c6:-ms-input-placeholder {
color: #CECECE; color: #CECECE;
} }
.c7::placeholder { .c6::placeholder {
color: #CECECE; color: #CECECE;
} }
...@@ -113,22 +105,22 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien ...@@ -113,22 +105,22 @@ exports[`SendCurrencyInputform should render correctly with no verified recipien
<div <div
class="c0 c1" class="c0 c1"
> >
<div <span
class="c2 css-fy6j1c" class="font_body _fontFamily-299667014 _display-inline _boxSizing-border-box _wordWrap-break-word _whiteSpace-pre-wrap _mt-0px _mr-0px _mb-0px _ml-0px _color-843135005 _fontSize-14px _lineHeight-20px _fontWeight-400 _userSelect-none"
> >
To To
</div> </span>
<div <div
class="c3 c4 c5" class="c2 c3 c4"
> >
<div <div
class="c3 c6" class="c2 c5"
> >
<input <input
autocapitalize="off" autocapitalize="off"
autocomplete="off" autocomplete="off"
autocorrect="off" autocorrect="off"
class="c7" class="c6"
pattern="^(0x[a-fA-F0-9]{40})$" pattern="^(0x[a-fA-F0-9]{40})$"
placeholder="Wallet address or ENS name" placeholder="Wallet address or ENS name"
spellcheck="false" spellcheck="false"
...@@ -672,13 +664,13 @@ exports[`SendCurrencyInputform should render correctly with verified recipient 1 ...@@ -672,13 +664,13 @@ exports[`SendCurrencyInputform should render correctly with verified recipient 1
`; `;
exports[`SendCurrencyInputform should render placeholder values 1`] = ` exports[`SendCurrencyInputform should render placeholder values 1`] = `
.c3 { .c2 {
box-sizing: border-box; box-sizing: border-box;
margin: 0; margin: 0;
min-width: 0; min-width: 0;
} }
.c4 { .c3 {
width: 100%; width: 100%;
display: -webkit-box; display: -webkit-box;
display: -webkit-flex; display: -webkit-flex;
...@@ -695,7 +687,7 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = ` ...@@ -695,7 +687,7 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = `
justify-content: space-between; justify-content: space-between;
} }
.c6 { .c5 {
width: 100%; width: 100%;
display: -webkit-box; display: -webkit-box;
display: -webkit-flex; display: -webkit-flex;
...@@ -712,14 +704,6 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = ` ...@@ -712,14 +704,6 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = `
justify-content: flex-start; justify-content: flex-start;
} }
.c2 {
color: #7D7D7D;
-webkit-letter-spacing: -0.01em;
-moz-letter-spacing: -0.01em;
-ms-letter-spacing: -0.01em;
letter-spacing: -0.01em;
}
.c0 { .c0 {
display: -webkit-box; display: -webkit-box;
display: -webkit-flex; display: -webkit-flex;
...@@ -744,11 +728,11 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = ` ...@@ -744,11 +728,11 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = `
pointer-events: initial; pointer-events: initial;
} }
.c5 { .c4 {
color: #7D7D7D; color: #7D7D7D;
} }
.c7 { .c6 {
background: none; background: none;
width: 100%; width: 100%;
color: #222222; color: #222222;
...@@ -759,19 +743,19 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = ` ...@@ -759,19 +743,19 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = `
line-height: 24px; line-height: 24px;
} }
.c7::-webkit-input-placeholder { .c6::-webkit-input-placeholder {
color: #CECECE; color: #CECECE;
} }
.c7::-moz-placeholder { .c6::-moz-placeholder {
color: #CECECE; color: #CECECE;
} }
.c7:-ms-input-placeholder { .c6:-ms-input-placeholder {
color: #CECECE; color: #CECECE;
} }
.c7::placeholder { .c6::placeholder {
color: #CECECE; color: #CECECE;
} }
...@@ -784,22 +768,22 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = ` ...@@ -784,22 +768,22 @@ exports[`SendCurrencyInputform should render placeholder values 1`] = `
<div <div
class="c0 c1" class="c0 c1"
> >
<div <span
class="c2 css-fy6j1c" class="font_body _fontFamily-299667014 _display-inline _boxSizing-border-box _wordWrap-break-word _whiteSpace-pre-wrap _mt-0px _mr-0px _mb-0px _ml-0px _color-843135005 _fontSize-14px _lineHeight-20px _fontWeight-400 _userSelect-none"
> >
To To
</div> </span>
<div <div
class="c3 c4 c5" class="c2 c3 c4"
> >
<div <div
class="c3 c6" class="c2 c5"
> >
<input <input
autocapitalize="off" autocapitalize="off"
autocomplete="off" autocomplete="off"
autocorrect="off" autocorrect="off"
class="c7" class="c6"
pattern="^(0x[a-fA-F0-9]{40})$" pattern="^(0x[a-fA-F0-9]{40})$"
placeholder="Wallet address or ENS name" placeholder="Wallet address or ENS name"
spellcheck="false" spellcheck="false"
......
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