ci(release): publish latest release

parent 4490370a
IPFS hash of the deployment:
- CIDv0: `QmR1FhjPj6guoB8B8Qq5g3H6MrcfPXPeM8GsTBQZprHsxQ`
- CIDv1: `bafybeibhtmbqzvasqpaerlcxgwm5gxaomyjsrq3fxs5mg564vmtgcweqau`
- CIDv0: `Qmaeh4NVwkRpuix9zou6KYZF8nXxPrjMZyKyqApeeJBYtQ`
- CIDv1: `bafybeifw5nnks3pmgjd5anjc4lx25edidvwaf7qkwhwwpjw6xhhiisruqe`
The latest release is always mirrored at [app.uniswap.org](https://app.uniswap.org).
......@@ -10,63 +10,9 @@ You can also access the Uniswap Interface from an IPFS gateway.
Your Uniswap settings are never remembered across different URLs.
IPFS gateways:
- https://bafybeibhtmbqzvasqpaerlcxgwm5gxaomyjsrq3fxs5mg564vmtgcweqau.ipfs.dweb.link/
- [ipfs://QmR1FhjPj6guoB8B8Qq5g3H6MrcfPXPeM8GsTBQZprHsxQ/](ipfs://QmR1FhjPj6guoB8B8Qq5g3H6MrcfPXPeM8GsTBQZprHsxQ/)
- https://bafybeifw5nnks3pmgjd5anjc4lx25edidvwaf7qkwhwwpjw6xhhiisruqe.ipfs.dweb.link/
- [ipfs://Qmaeh4NVwkRpuix9zou6KYZF8nXxPrjMZyKyqApeeJBYtQ/](ipfs://Qmaeh4NVwkRpuix9zou6KYZF8nXxPrjMZyKyqApeeJBYtQ/)
## 5.103.0 (2025-07-09)
### Features
* **web:** sol chain id (#20695) 8cff970
* **web:** SolanaWalletProvider (#21164) 96864e0
* **web:** WalletConnector Meta and Services (#21165) 300d887
### Bug Fixes
* **web:** approval for v2 migrations (#21396) 813c1de
* **web:** auto-checksum LP creation hook addresses (#21358) cfd5f31
* **web:** Check for undefined approval amount - staging (#21530) e895410
* **web:** fix bug with creating a new custom in range position for v3 (#21560) f763021
* **web:** fix button layout on mweb new position screen (#21307) 790baf7
* **web:** fix issue with custom range and creating a pool (#21402) ee04c77
* **web:** fix merging of dynamic and regular fee tiers (#21395) 67cf972
* **web:** force non x quotes for permit2 tests (#21425) 78b8841
* **web:** i18n not working for transactions (#21447) ca940cc
* **web:** language not translating (#21452) 7813f0c
* **web:** mock png asset imports for playwright (#21415) 3f27389
* **web:** overflow text when creating a new LP position in spanish (#21337) 3864dfc
* **web:** prevent incrementing or decrementing past the tick limits (#21441) a775910
* **web:** race condition reverting language change (#21292) 0ced7f1
* **web:** revert scroll lock performance (#21039) (#21414) 1f687a6
* **web:** reward apr not translated (#21450) c237f07
* **web:** transactions table type translations (#21449) c728fb2
* **web:** update decimals for fee tier display (#21365) 9ba591d
* **web:** Warn instead of error for known bug (#21499) c3633e4
### Continuous Integration
* **web:** update sitemaps d1df877
### Tests
* **web:** a few flakey tests (#21427) 05d8da0
* **web:** check if wrap is ready (#21426) 3b8aa86
* **web:** for tests (#21466) 1e54b9e
### Code Refactoring
* **web:** align send transactiontype enum with uniswap transaction type (#21219) 01fa235
* **web:** migrate Bridge enum val (#21061) 474657a
* **web:** migrate PERMIT enum value to match Uniswap's transactionType (#21053) 59f7814
* **web:** migrate SendTransactionInfo to SendTokenTransactionInfo Uniswap type (#21223) 99293a9
* **web:** migrate v3tov4 enum value to uniswap enum (#21109) 01a3b2d
* **web:** move v3tov4 info type to uniswap (#21110) cc29edc
* **web:** update LP Incentives Claim Rewards enum to use Uniswap TransactionType enum (#21225) ce16f52
* **web:** use uniswap BridgeTransactionInfo type (#21217) 6ba5fce
### 5.103.1 (2025-07-10)
web/5.103.0
\ No newline at end of file
web/5.103.1
\ No newline at end of file
......@@ -6,6 +6,7 @@ test.describe('Swap Settings', () => {
await page.goto('/swap')
await page.getByTestId(TestID.SwapSettings).click()
await expect(page.getByText('Max slippage')).toBeVisible()
await expect(page.getByText('Default')).toBeVisible()
await page.getByTestId(TestID.SwapSettings).click()
await expect(page.getByText('Max slippage')).not.toBeVisible()
})
......@@ -15,6 +16,7 @@ test.describe('Swap Settings', () => {
await page.goto('/swap')
await page.getByTestId(TestID.SwapSettings).click()
await expect(page.getByText('Max slippage')).toBeVisible()
await expect(page.getByText('Default')).toBeVisible()
await expect(page.getByTestId(TestID.MobileWebSettingsMenu).first()).toBeVisible()
})
})
import { initialTransactionSettingsState } from 'uniswap/src/features/transactions/components/settings/stores/transactionSettingsStore/createTransactionSettingsStore'
import { isDefaultTradeRouteOptions } from 'uniswap/src/features/transactions/swap/components/SwapFormSettings/settingsConfigurations/TradeRoutingPreference/isDefaultTradeRouteOptions'
describe('createTransactionSettingsStore', () => {
describe('initialTransactionSettingsState', () => {
it('should have default values that pass isDefaultTradeRouteOptions validation', () => {
const { selectedProtocols, isV4HookPoolsEnabled } = initialTransactionSettingsState
const isDefault = isDefaultTradeRouteOptions({
selectedProtocols,
isV4HookPoolsEnabled,
})
expect(isDefault).toBe(true)
})
it('should fail validation if isV4HookPoolsEnabled is false', () => {
const { selectedProtocols } = initialTransactionSettingsState
const isDefault = isDefaultTradeRouteOptions({
selectedProtocols,
isV4HookPoolsEnabled: false,
})
expect(isDefault).toBe(false)
})
})
})
......@@ -14,7 +14,7 @@ export const initialTransactionSettingsState: TransactionSettingsState = {
customDeadline: undefined,
selectedProtocols: DEFAULT_PROTOCOL_OPTIONS,
slippageWarningModalSeen: false,
isV4HookPoolsEnabled: false,
isV4HookPoolsEnabled: true,
}
export type TransactionSettingsStoreState = TransactionSettingsState & {
......
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