@@ -82,7 +82,12 @@ export const createContext = Effect.fn((
82
82
args . fee . baseToken ,
83
83
)
84
84
85
- const shouldIncludeFees = shouldChargeFees ( args . fee , uiStore . edition , args . sourceChain )
85
+ const shouldIncludeFees = shouldChargeFees (
86
+ args . fee ,
87
+ uiStore . edition ,
88
+ args . sourceChain ,
89
+ args . destinationChain ,
90
+ )
86
91
87
92
const produceBatch = Effect . gen ( function * ( ) {
88
93
if ( shouldIncludeFees ) {
@@ -173,7 +178,12 @@ export const createContext = Effect.fn((
173
178
)
174
179
175
180
const createIntents = ( args : TransferArgs , baseAmount : TokenRawAmount ) : Intent [ ] => {
176
- const shouldIncludeFees = shouldChargeFees ( args . fee , uiStore . edition , args . sourceChain )
181
+ const shouldIncludeFees = shouldChargeFees (
182
+ args . fee ,
183
+ uiStore . edition ,
184
+ args . sourceChain ,
185
+ args . destinationChain ,
186
+ )
177
187
const baseIntent = createBaseIntent ( args , baseAmount )
178
188
179
189
return Match . value ( args . sourceChain . rpc_type ) . pipe (
@@ -241,7 +251,19 @@ const createBaseIntent = (
241
251
} )
242
252
243
253
// Fee strategy: BTC edition only charges fees when going FROM Babylon
244
- const shouldChargeFees = ( fee : FeeIntent , edition : string , sourceChain : Chain ) : boolean => {
254
+ const shouldChargeFees = (
255
+ fee : FeeIntent ,
256
+ edition : string ,
257
+ sourceChain : Chain ,
258
+ destinationChain ?: Chain ,
259
+ ) : boolean => {
260
+ const skip = [ "union.union-1" , "union.union-testnet-10" ]
261
+ if (
262
+ skip . includes ( sourceChain . universal_chain_id )
263
+ || ( destinationChain && skip . includes ( destinationChain . universal_chain_id ) )
264
+ ) {
265
+ return false
266
+ }
245
267
if ( fee . baseAmount === 0n ) {
246
268
return false
247
269
}
0 commit comments