From 473aed326e9a2676132244b27f06390b5b5241b0 Mon Sep 17 00:00:00 2001 From: Aaron Cook Date: Tue, 21 Jan 2025 14:16:49 +0100 Subject: [PATCH] fix(Swaps): deprecate `executedSurplusFee` (#4763) * fix(Swaps): deprecate `executedSurplusFee` * fix(Swaps): use `executedFeeToken` instead of `sellToken` * fix(Swaps): use `TokenInfo` in builders * fix: add properties * Update SDK * Remove unnecessary TODO * Fix type --- apps/web/package.json | 2 +- .../swap/components/SwapOrder/rows/SurplusFee.tsx | 11 +++++------ .../src/features/swap/helpers/swapOrderBuilder.ts | 14 +++++++++++--- yarn.lock | 10 +++++----- 4 files changed, 22 insertions(+), 15 deletions(-) diff --git a/apps/web/package.json b/apps/web/package.json index ee56a90fd2..30a76a8333 100644 --- a/apps/web/package.json +++ b/apps/web/package.json @@ -55,7 +55,7 @@ "@safe-global/protocol-kit": "^4.1.3", "@safe-global/safe-apps-sdk": "^9.1.0", "@safe-global/safe-client-gateway-sdk": "v1.60.1", - "@safe-global/safe-gateway-typescript-sdk": "3.22.7-beta.2", + "@safe-global/safe-gateway-typescript-sdk": "3.22.7", "@safe-global/safe-modules-deployments": "^2.2.1", "@safe-global/store": "workspace:^", "@sentry/react": "^7.91.0", diff --git a/apps/web/src/features/swap/components/SwapOrder/rows/SurplusFee.tsx b/apps/web/src/features/swap/components/SwapOrder/rows/SurplusFee.tsx index 91e566f0c1..fd3aa11ae4 100644 --- a/apps/web/src/features/swap/components/SwapOrder/rows/SurplusFee.tsx +++ b/apps/web/src/features/swap/components/SwapOrder/rows/SurplusFee.tsx @@ -1,4 +1,4 @@ -import type { Order } from '@safe-global/safe-gateway-typescript-sdk' +import type { TwapOrder } from '@safe-global/safe-gateway-typescript-sdk' import { getOrderFeeBps } from '@/features/swap/helpers/utils' import { DataRow } from '@/components/common/Table/DataRow' import { formatVisualAmount } from '@/utils/formatters' @@ -7,13 +7,12 @@ import { HelpIconTooltip } from '@/features/swap/components/HelpIconTooltip' export const SurplusFee = ({ order, }: { - order: Pick + order: Pick }) => { const bps = getOrderFeeBps(order) - const { executedSurplusFee, sellToken } = order - let token = sellToken + const { executedFee, executedFeeToken } = order - if (executedSurplusFee === null || typeof executedSurplusFee === 'undefined' || executedSurplusFee === '0') { + if (executedFee === null || executedFee === '0') { return null } @@ -34,7 +33,7 @@ export const SurplusFee = ({ } key="widget_fee" > - {formatVisualAmount(BigInt(executedSurplusFee), token.decimals)} {token.symbol} + {formatVisualAmount(BigInt(executedFee), executedFeeToken.decimals)} {executedFeeToken.symbol} ) } diff --git a/apps/web/src/features/swap/helpers/swapOrderBuilder.ts b/apps/web/src/features/swap/helpers/swapOrderBuilder.ts index 9750383b02..30d751e1d6 100644 --- a/apps/web/src/features/swap/helpers/swapOrderBuilder.ts +++ b/apps/web/src/features/swap/helpers/swapOrderBuilder.ts @@ -47,6 +47,8 @@ export function orderTokenBuilder(): IBuilder { } export function swapOrderBuilder(): IBuilder { + const sellToken = orderTokenBuilder().build() + const executedFee = faker.string.numeric() return Builder.new().with({ type: 'SwapOrder' as TransactionInfoType.SWAP_ORDER, uid: faker.string.uuid(), @@ -58,16 +60,20 @@ export function swapOrderBuilder(): IBuilder { buyAmount: faker.string.numeric(), executedSellAmount: faker.string.numeric(), executedBuyAmount: faker.string.numeric(), - sellToken: orderTokenBuilder().build(), + sellToken, buyToken: orderTokenBuilder().build(), explorerUrl: 'https://explorer.cow.fi/orders/0x03a5d561ad2452d719a0d075573f4bed68217c696b52f151122c30e3e4426f1b05e6b5eb1d0e6aabab082057d5bb91f2ee6d11be66223d88', - executedSurplusFee: faker.string.numeric(), + executedSurplusFee: executedFee, + executedFee, + executedFeeToken: sellToken, fullAppData: appDataBuilder().build(), }) } export function twapOrderBuilder(): IBuilder { + const sellToken = orderTokenBuilder().build() + const executedFee = faker.string.numeric() return Builder.new().with({ type: 'TwapOrder' as TransactionInfoType.TWAP_ORDER, status: faker.helpers.arrayElement(['presignaturePending', 'open', 'cancelled', 'fulfilled', 'expired']), @@ -80,7 +86,9 @@ export function twapOrderBuilder(): IBuilder { executedBuyAmount: faker.string.numeric(), sellToken: orderTokenBuilder().build(), buyToken: orderTokenBuilder().build(), - executedSurplusFee: faker.string.numeric(), + executedSurplusFee: executedFee, + executedFee, + executedFeeToken: sellToken, fullAppData: appDataBuilder().build(), numberOfParts: faker.number.int({ min: 1, max: 10 }).toString(), /** @description The amount of sellToken to sell in each part */ diff --git a/yarn.lock b/yarn.lock index 2e55d3dd0b..bc345d4782 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7775,10 +7775,10 @@ __metadata: languageName: node linkType: hard -"@safe-global/safe-gateway-typescript-sdk@npm:3.22.7-beta.2": - version: 3.22.7-beta.2 - resolution: "@safe-global/safe-gateway-typescript-sdk@npm:3.22.7-beta.2" - checksum: 10/3b882860fd6abcc682f1ff7aa17760aeb352ab15309e108f74ca9e6464bc2cae8d99c6da5980b70ea94d0d45ea9b1092e92c26cef01ab5f9d56ed9fbefbcd811 +"@safe-global/safe-gateway-typescript-sdk@npm:3.22.7": + version: 3.22.7 + resolution: "@safe-global/safe-gateway-typescript-sdk@npm:3.22.7" + checksum: 10/0b16b943be3f268ceb17b962053b152046f0c9126c764fcbc7ddf3b34974396e75d3c29d2515b993c35cec9d583282b28b20d8f065582de425350d73d1f7e237 languageName: node linkType: hard @@ -7877,7 +7877,7 @@ __metadata: "@safe-global/safe-apps-sdk": "npm:^9.1.0" "@safe-global/safe-client-gateway-sdk": "npm:v1.60.1" "@safe-global/safe-core-sdk-types": "npm:^5.0.1" - "@safe-global/safe-gateway-typescript-sdk": "npm:3.22.7-beta.2" + "@safe-global/safe-gateway-typescript-sdk": "npm:3.22.7" "@safe-global/safe-modules-deployments": "npm:^2.2.1" "@safe-global/store": "workspace:^" "@safe-global/test": "workspace:^"