From b38f0ba424a006eeba5d89dbf55f0ee1a5488536 Mon Sep 17 00:00:00 2001 From: Steam Deck User <0xlomonoshka@gmail.com> Date: Mon, 18 Dec 2023 11:56:27 +0400 Subject: [PATCH] convert addresslike to string --- package.json | 2 +- src/Unit/Exchange/generateSwapCalldata.ts | 13 ++++++++----- src/utils/addressLikeToString.ts | 2 +- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/package.json b/package.json index d308744..fccdd62 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@orionprotocol/sdk", - "version": "0.20.34-rc-2", + "version": "0.20.34-rc-3", "description": "Orion Protocol SDK", "main": "./lib/index.cjs", "module": "./lib/index.js", diff --git a/src/Unit/Exchange/generateSwapCalldata.ts b/src/Unit/Exchange/generateSwapCalldata.ts index fa807b6..5527478 100644 --- a/src/Unit/Exchange/generateSwapCalldata.ts +++ b/src/Unit/Exchange/generateSwapCalldata.ts @@ -107,8 +107,8 @@ export async function generateSwapCalldata({ initiatorAddress, receiverAddress, path: arrayLikePath, - matcher = ZeroAddress, - feeToken = ZeroAddress, + matcher: matcherAddressLike = ZeroAddress, + feeToken: feeTokenAddressLike = ZeroAddress, fee = 0, exchangeContractAddress, wethAddress: wethAddressLike, @@ -123,6 +123,8 @@ export async function generateSwapCalldata({ const wethAddress = await addressLikeToString(wethAddressLike); const curveRegistryAddress = await addressLikeToString(curveRegistryAddressLike); const swapExecutorContractAddress = await addressLikeToString(swapExecutorContractAddressLike); + const feeToken = await addressLikeToString(feeTokenAddressLike); + const matcher = await addressLikeToString(matcherAddressLike); let path = SafeArray.from(arrayLikePath); const { assetIn: srcToken } = path.first(); @@ -333,13 +335,14 @@ async function processMultiFactorySwaps( } async function payFeeToMatcher( - matcher: AddressLike, - feeToken: AddressLike, + matcher: string, + feeToken: string, feeAmount: BigNumberish, calls: BytesLike[], swapDescription: LibValidator.SwapDescriptionStruct, ) { - if (feeAmount !== 0n && feeToken === swapDescription.dstToken) { + + if (BigInt(feeAmount) !== 0n && feeToken === swapDescription.dstToken) { const feePaymentCall = generateFeePaymentCall(matcher, feeToken, feeAmount) calls.push(feePaymentCall) } diff --git a/src/utils/addressLikeToString.ts b/src/utils/addressLikeToString.ts index 974c505..86fd132 100644 --- a/src/utils/addressLikeToString.ts +++ b/src/utils/addressLikeToString.ts @@ -5,5 +5,5 @@ export async function addressLikeToString(address: AddressLike): Promise if (typeof address !== 'string') { address = await address.getAddress() } - return address + return address.toLowerCase() } \ No newline at end of file