Skip to content
Open
Show file tree
Hide file tree
Changes from 10 commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
fc8fe40
feat: add near provider
anxolin Nov 4, 2025
061e268
chore: fix dependency mismatch
anxolin Nov 4, 2025
f5602e2
chore: remove excessive log
shoom3301 Nov 5, 2025
4b0b6b5
fix(explorer): detect near bridge provider
shoom3301 Nov 5, 2025
b64c3fa
chore: fix build
shoom3301 Nov 5, 2025
be8d895
feat(bridge): add feature-flags for bridge providers
shoom3301 Nov 6, 2025
1833297
Merge pull request #6475 from cowprotocol/add-near-provider-fix-statu…
shoom3301 Nov 6, 2025
04a6b3c
Merge branch 'develop' into add-near-provider
shoom3301 Nov 6, 2025
e73913d
chore: update SDK
shoom3301 Nov 6, 2025
d2eee95
chore: update SDK
shoom3301 Nov 6, 2025
c822c8d
Merge branch 'develop' of https://github.com/cowprotocol/cowswap into…
shoom3301 Nov 6, 2025
569a1d6
chore: temporary remove new networks
shoom3301 Nov 6, 2025
efe62d9
chore: temporary remove new networks
shoom3301 Nov 6, 2025
775d027
chore: fix imports
shoom3301 Nov 6, 2025
b148777
chore: remove patch
shoom3301 Nov 6, 2025
d895c28
chore: remove patch
shoom3301 Nov 6, 2025
0b09210
chore: remove patch
shoom3301 Nov 6, 2025
e533132
chore: remove patch
shoom3301 Nov 6, 2025
dd81e96
chore: update sdk
shoom3301 Nov 6, 2025
d53dbae
Merge branch 'develop' of https://github.com/cowprotocol/cowswap into…
shoom3301 Nov 7, 2025
379ab42
chore: revert new chains
shoom3301 Nov 7, 2025
0b9b2f5
chore: update sdk
shoom3301 Nov 7, 2025
999cd60
Merge remote-tracking branch 'origin/add-near-provider' into add-near…
shoom3301 Nov 7, 2025
73ef069
chore: revert revert new chains
shoom3301 Nov 7, 2025
54f3e79
fix: support intermediate and dest token diff decimals
shoom3301 Nov 7, 2025
b4fc3b2
chore: fix typings
shoom3301 Nov 10, 2025
9374b10
Merge branch 'develop' into add-near-provider
shoom3301 Nov 10, 2025
b3fb189
chore: fix surplusAmount logic
shoom3301 Nov 10, 2025
7c3cb15
chore: add tests
shoom3301 Nov 10, 2025
3413761
chore: fix operator
shoom3301 Nov 10, 2025
db4015f
Merge branch 'develop' of https://github.com/cowprotocol/cowswap into…
shoom3301 Nov 11, 2025
9b76807
fix: fix total costs calculations
shoom3301 Nov 11, 2025
8866fbf
fix: fix custom recipient for ReceiverAccountBridgeProvider
shoom3301 Nov 11, 2025
5a7a641
refactor: add address to token logo data
shoom3301 Nov 12, 2025
22ba543
fix: add tooltip for bridgeReceiverOverride
shoom3301 Nov 12, 2025
6ae3d95
chore: update sdk
shoom3301 Nov 12, 2025
f361e77
chore: fix issues
shoom3301 Nov 12, 2025
804014e
Merge branch 'develop' of https://github.com/cowprotocol/cowswap into…
shoom3301 Nov 12, 2025
5c890fc
chore: update en
shoom3301 Nov 12, 2025
9881aea
fix: adjust displayed amounts in bridge details
shoom3301 Nov 12, 2025
568d93d
chore: update sdk
shoom3301 Nov 12, 2025
f31c3a9
chore: update sdk
shoom3301 Nov 12, 2025
7563ae1
feat: add info about no intermediate tokens
shoom3301 Nov 13, 2025
9f27b05
chore: revert fast fix
shoom3301 Nov 13, 2025
d827166
fix: fix intermediate != destination token amounts
shoom3301 Nov 13, 2025
1f6b39a
chore: update SDK
shoom3301 Nov 13, 2025
531a85e
chore: fix build
shoom3301 Nov 13, 2025
ef47556
chore: fix tests
shoom3301 Nov 13, 2025
5caba8c
chore: fix build
shoom3301 Nov 13, 2025
353134c
chore: update sdk
shoom3301 Nov 13, 2025
b950962
fix(explorer): do not show zero fillTimeInSeconds
shoom3301 Nov 13, 2025
3561642
fix(explorer): fix fillTimeInSeconds display
shoom3301 Nov 13, 2025
adf99f3
fix: fix SameBuyAndSellToken error handling
shoom3301 Nov 13, 2025
2b67d43
chore: update sdk
shoom3301 Nov 13, 2025
42cab4c
fix: hide receive info tooltip for bridging
shoom3301 Nov 13, 2025
6c57d3e
fix: disable permits for ReceiverAccountBridgeProvider
shoom3301 Nov 13, 2025
5e79198
fix: hide ReceiveAmount for near provider
shoom3301 Nov 13, 2025
76ae8d3
fix: fix bridge buyAmount
shoom3301 Nov 13, 2025
14cd4ca
chore: update sdk
shoom3301 Nov 13, 2025
f088644
fix: do not override quote error when another one started
shoom3301 Nov 13, 2025
9b365e3
chore: fix price impact calculations
shoom3301 Nov 14, 2025
a6ba5de
fix: enable permits for near bridge provider
shoom3301 Nov 14, 2025
cf8f4b2
chore: update sdk
shoom3301 Nov 14, 2025
75a51b2
fix: reset appData hooks when sell token changes
shoom3301 Nov 14, 2025
66577c7
chore: update sdk
shoom3301 Nov 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { useEffect } from 'react'

import { useFeatureFlags, useSetIsBridgingEnabled } from '@cowprotocol/common-hooks'
import { useSetIsBridgingEnabled } from '@cowprotocol/common-hooks'
import { AccountType } from '@cowprotocol/types'
import { useAccountType, useWalletInfo } from '@cowprotocol/wallet'

Expand All @@ -10,15 +10,14 @@ import { Routes } from '../constants/routes'

export function BridgingEnabledUpdater(): null {
const { account } = useWalletInfo()
const { isBridgingEnabled } = useFeatureFlags()
const tradeTypeInfo = useTradeTypeInfo()
const accountType = useAccountType()
const setIsBridgingEnabled = useSetIsBridgingEnabled()

const isSwapRoute = tradeTypeInfo?.route === Routes.SWAP

const isWalletCompatible = Boolean(account ? accountType !== AccountType.SMART_CONTRACT : true)
const shouldEnableBridging = isBridgingEnabled && isWalletCompatible && isSwapRoute
const shouldEnableBridging = isWalletCompatible && isSwapRoute

useEffect(() => {
setIsBridgingEnabled(shouldEnableBridging)
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
import { useSetAtom } from 'jotai'
import { useEffect } from 'react'

import { useFeatureFlags } from '@cowprotocol/common-hooks'
import { DefaultBridgeProvider } from '@cowprotocol/sdk-bridging'

import { bridgeProvidersAtom } from './bridgeProvidersAtom'

import {
acrossBridgeProvider,
bridgingSdk,
bungeeBridgeProvider,
nearIntentsBridgeProvider,
} from '../../tradingSdk/bridgingSdk'

function toggleProvider(providers: Set<DefaultBridgeProvider>, provider: DefaultBridgeProvider, flag: boolean): void {
if (flag) {
providers.add(provider)
} else {
providers.delete(provider)
}
}

export function BridgeProvidersUpdater(): null {
const setBridgeProviders = useSetAtom(bridgeProvidersAtom)
const { isNearIntentsBridgeProviderEnabled, isAcrossBridgeProviderEnabled, isBungeeBridgeProviderEnabled } =
useFeatureFlags()

useEffect(() => {
// Skip updating till all flags are loaded
if (
[isNearIntentsBridgeProviderEnabled, isAcrossBridgeProviderEnabled, isBungeeBridgeProviderEnabled].some(
(v) => typeof v !== 'boolean',
)
) {
return
}

setBridgeProviders((providers) => {
const newProviders = new Set(providers)

toggleProvider(newProviders, bungeeBridgeProvider, isBungeeBridgeProviderEnabled)
toggleProvider(newProviders, nearIntentsBridgeProvider, isNearIntentsBridgeProviderEnabled)
toggleProvider(newProviders, acrossBridgeProvider, isAcrossBridgeProviderEnabled)

bridgingSdk.setAvailableProviders([...newProviders].map((p) => p.info.dappId))

return newProviders
})
}, [
isNearIntentsBridgeProviderEnabled,
isAcrossBridgeProviderEnabled,
isBungeeBridgeProviderEnabled,
setBridgeProviders,
])

return null
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { atom } from 'jotai'

import { isProd } from '@cowprotocol/common-utils'
import { DefaultBridgeProvider } from '@cowprotocol/sdk-bridging'

import { bridgeProviders } from 'tradingSdk/bridgingSdk'
import { bungeeBridgeProvider } from 'tradingSdk/bridgingSdk'

export const bridgeProvidersAtom = atom(isProd ? [bridgeProviders[0]] : bridgeProviders)
export const bridgeProvidersAtom = atom(new Set<DefaultBridgeProvider>([bungeeBridgeProvider]))
1 change: 1 addition & 0 deletions apps/cowswap-frontend/src/entities/bridgeProvider/index.ts
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
export { useBridgeSupportedNetworks, useBridgeSupportedNetwork } from './useBridgeSupportedNetworks'
export { useBridgeSupportedTokens } from './useBridgeSupportedTokens'
export { BridgeProvidersUpdater } from './BridgeProvidersUpdater'

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
import { useAtomValue } from 'jotai'

import { bridgeProvidersAtom } from './bridgeProvidersAtom'

export function useBridgeProvidersIds(): string[] {
const providers = useAtomValue(bridgeProvidersAtom)

return [...providers].map((p) => p.info.dappId)
}

This file was deleted.

Loading
Loading