ci(release): publish latest release

parent e79630c6
IPFS hash of the deployment: IPFS hash of the deployment:
- CIDv0: `QmccrxuuPdXnhgCm2377DmcpBZtS36JK2kHNhGcutyYCfC` - CIDv0: `QmSy9dnGZafmGNzzJgdfu97LH9P9HsAZNUTtnfMfAJctRr`
- CIDv1: `bafybeiguflcfu2p2lxehliz5wutxlmqtjfeg7qk4pw2ifw24xbbhjhcf5m` - CIDv1: `bafybeicezboop6s2zwdnk7izhxdkemytiecd3vub4x4564xc2gmio4e3ou`
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,16 +10,15 @@ You can also access the Uniswap Interface from an IPFS gateway. ...@@ -10,16 +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://bafybeiguflcfu2p2lxehliz5wutxlmqtjfeg7qk4pw2ifw24xbbhjhcf5m.ipfs.dweb.link/ - https://bafybeicezboop6s2zwdnk7izhxdkemytiecd3vub4x4564xc2gmio4e3ou.ipfs.dweb.link/
- https://bafybeiguflcfu2p2lxehliz5wutxlmqtjfeg7qk4pw2ifw24xbbhjhcf5m.ipfs.cf-ipfs.com/ - https://bafybeicezboop6s2zwdnk7izhxdkemytiecd3vub4x4564xc2gmio4e3ou.ipfs.cf-ipfs.com/
- [ipfs://QmccrxuuPdXnhgCm2377DmcpBZtS36JK2kHNhGcutyYCfC/](ipfs://QmccrxuuPdXnhgCm2377DmcpBZtS36JK2kHNhGcutyYCfC/) - [ipfs://QmSy9dnGZafmGNzzJgdfu97LH9P9HsAZNUTtnfMfAJctRr/](ipfs://QmSy9dnGZafmGNzzJgdfu97LH9P9HsAZNUTtnfMfAJctRr/)
### 5.27.7 (2024-05-16) ### 5.27.8 (2024-05-16)
### Bug Fixes ### Bug Fixes
* **web:** support multichain input params 272661d * **web:** window.ethereum fallback on mobile [prod] (#8260) 929c164
* **web:** support multichain input params 8620c6c
web/5.27.7 web/5.27.8
\ No newline at end of file \ No newline at end of file
...@@ -126,6 +126,7 @@ describe('useOrderedConnections', () => { ...@@ -126,6 +126,7 @@ describe('useOrderedConnections', () => {
}) })
it('should include the fallback injected provider when no eip6963 injectors are present', async () => { it('should include the fallback injected provider when no eip6963 injectors are present', async () => {
window.ethereum = true as any
mocked(useConnect).mockReturnValue({ mocked(useConnect).mockReturnValue({
connectors: [UNISWAP_MOBILE_CONNECTOR, INJECTED_CONNECTOR, WALLET_CONNECT_CONNECTOR, COINBASE_SDK_CONNECTOR], connectors: [UNISWAP_MOBILE_CONNECTOR, INJECTED_CONNECTOR, WALLET_CONNECT_CONNECTOR, COINBASE_SDK_CONNECTOR],
} as unknown as ReturnType<typeof useConnect>) } as unknown as ReturnType<typeof useConnect>)
...@@ -136,7 +137,20 @@ describe('useOrderedConnections', () => { ...@@ -136,7 +137,20 @@ describe('useOrderedConnections', () => {
{ id: CONNECTION.WALLET_CONNECT_CONNECTOR_ID }, { id: CONNECTION.WALLET_CONNECT_CONNECTOR_ID },
{ id: CONNECTION.COINBASE_SDK_CONNECTOR_ID }, { id: CONNECTION.COINBASE_SDK_CONNECTOR_ID },
] ]
result.current.forEach((connector, index) => {
expect(connector.id).toEqual(expectedConnectors[index].id)
})
expect(result.current.length).toEqual(expectedConnectors.length)
})
it('should include only the fallback injected provider when no eip6963 injectors are present on mobile', async () => {
UserAgentMock.isMobile = true
window.ethereum = true as any
mocked(useConnect).mockReturnValue({
connectors: [UNISWAP_MOBILE_CONNECTOR, INJECTED_CONNECTOR, WALLET_CONNECT_CONNECTOR, COINBASE_SDK_CONNECTOR],
} as unknown as ReturnType<typeof useConnect>)
const { result } = renderHook(() => useOrderedConnections())
const expectedConnectors = [{ id: CONNECTION.INJECTED_CONNECTOR_ID }]
result.current.forEach((connector, index) => { result.current.forEach((connector, index) => {
expect(connector.id).toEqual(expectedConnectors[index].id) expect(connector.id).toEqual(expectedConnectors[index].id)
}) })
......
...@@ -53,9 +53,9 @@ function getInjectedConnectors(connectors: readonly Connector[], excludeUniswapC ...@@ -53,9 +53,9 @@ function getInjectedConnectors(connectors: readonly Connector[], excludeUniswapC
return c.type === CONNECTION.INJECTED_CONNECTOR_TYPE && c.id !== CONNECTION.INJECTED_CONNECTOR_ID return c.type === CONNECTION.INJECTED_CONNECTOR_TYPE && c.id !== CONNECTION.INJECTED_CONNECTOR_ID
}) })
// Special-case: Handle deprecated window.ethereum injection when no eip6963 injectors are present. // Special-case: Return deprecated window.ethereum connector when no eip6963 injectors are present.
const fallbackInjector = getConnectorWithId(connectors, CONNECTION.INJECTED_CONNECTOR_ID, { shouldThrow: true }) const fallbackInjector = getConnectorWithId(connectors, CONNECTION.INJECTED_CONNECTOR_ID, { shouldThrow: true })
if (!injectedConnectors.length && !isMobile) { if (!injectedConnectors.length && Boolean(window.ethereum)) {
return { injectedConnectors: [fallbackInjector], isCoinbaseWalletBrowser } return { injectedConnectors: [fallbackInjector], isCoinbaseWalletBrowser }
} }
......
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