From ecede69535a7eb6151e2fa8789679ac59bddcc01 Mon Sep 17 00:00:00 2001 From: jackburrus Date: Wed, 12 Feb 2025 11:39:43 -0700 Subject: [PATCH 1/3] add token price to query key Co-authored-by: Danny Delott --- .../ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts b/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts index 8d993342e..230c1dca0 100644 --- a/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts +++ b/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts @@ -44,6 +44,7 @@ export function usePreviewOpenLong({ }); const appConfig = useAppConfigForConnectedChain(); + const baseToken = getBaseToken({ appConfig, hyperdriveAddress, @@ -66,14 +67,14 @@ export function usePreviewOpenLong({ const { fiatPrice: zapTokenPrice } = useTokenFiatPrice({ // This hook should only be enabled if the token is a zap token. // For testing purposes we are grabbing the token price from mainnet. - chainId: 1, + chainId: 707, tokenAddress, enabled: isZapToken, }); const { fiatPrice: baseTokenPrice } = useTokenFiatPrice({ // For testing purposes on zaps we are grabbing the token price from mainnet. - chainId: isZapToken ? 1 : baseToken.chainId, + chainId: isZapToken ? 707 : baseToken.chainId, tokenAddress: baseToken.address, enabled: true, }); @@ -84,6 +85,7 @@ export function usePreviewOpenLong({ chainId: chainId, query: { enabled: queryEnabled }, }); + const { data, status, fetchStatus } = useQuery({ queryKey: makeQueryKey("previewOpenLong", { chainId, @@ -92,6 +94,8 @@ export function usePreviewOpenLong({ asBase, blockNumber: blockNumber?.toString(), tokenAddress, + baseTokenPrice: baseTokenPrice?.toString(), + zapTokenPrice: zapTokenPrice?.toString(), }), enabled: queryEnabled, queryFn: queryEnabled @@ -101,7 +105,7 @@ export function usePreviewOpenLong({ if (isZapToken) { const zapToken = getToken({ appConfig, - chainId: 1, + chainId, tokenAddress, }); const fiatValueOfZapAmount = From 3c6028bd1646fcf640147f8f146b2b910fa926a0 Mon Sep 17 00:00:00 2001 From: jackburrus Date: Wed, 12 Feb 2025 11:55:34 -0700 Subject: [PATCH 2/3] update token fiat price on stats --- .../longs/OpenLongPreview/OpenLongStats.tsx | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/apps/hyperdrive-trading/src/ui/hyperdrive/longs/OpenLongPreview/OpenLongStats.tsx b/apps/hyperdrive-trading/src/ui/hyperdrive/longs/OpenLongPreview/OpenLongStats.tsx index ae67d6edc..c826f32f8 100644 --- a/apps/hyperdrive-trading/src/ui/hyperdrive/longs/OpenLongPreview/OpenLongStats.tsx +++ b/apps/hyperdrive-trading/src/ui/hyperdrive/longs/OpenLongPreview/OpenLongStats.tsx @@ -57,7 +57,7 @@ export function OpenLongStats({ const { fiatPrice: zapTokenPrice } = useTokenFiatPrice({ // This hook should only be enabled if the token is a zap token. // For testing purposes we are grabbing the token price from mainnet. - chainId: 1, + chainId: 707, tokenAddress: activeToken.address, enabled: isZapToken, }); @@ -70,7 +70,7 @@ export function OpenLongStats({ const { fiatPrice: baseTokenPrice } = useTokenFiatPrice({ // For testing purposes on zaps we are grabbing the token price from mainnet. - chainId: isZapToken ? 1 : hyperdrive.chainId, + chainId: isZapToken ? 707 : hyperdrive.chainId, tokenAddress: baseToken.address, }); const { fixedApr } = useFixedRate({ @@ -79,7 +79,10 @@ export function OpenLongStats({ }); if (isZapToken && zapTokenPrice && baseTokenPrice) { - const fiatValueOfZapAmount = fixed(zapTokenPrice).mul(amountPaid, 6); + const fiatValueOfZapAmount = fixed(zapTokenPrice).mul( + amountPaid, + activeToken.decimals, + ); const zapAmountInBase = fiatValueOfZapAmount.div(baseTokenPrice); const slipageAmount = parseFixed("0.005"); finalAmountPaid = parseFixed("1") @@ -98,6 +101,7 @@ export function OpenLongStats({ const yieldAtMaturity = bondAmount - amountPaidInBase; const termLengthMS = Number(hyperdrive.poolConfig.positionDuration * 1000n); const numDays = convertMillisecondsToDays(termLengthMS); + return (
Date: Wed, 12 Feb 2025 12:54:58 -0700 Subject: [PATCH 3/3] remove enabled --- .../src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts b/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts index 230c1dca0..ca1be3ab7 100644 --- a/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts +++ b/apps/hyperdrive-trading/src/ui/hyperdrive/longs/hooks/usePreviewOpenLong.ts @@ -76,7 +76,6 @@ export function usePreviewOpenLong({ // For testing purposes on zaps we are grabbing the token price from mainnet. chainId: isZapToken ? 707 : baseToken.chainId, tokenAddress: baseToken.address, - enabled: true, }); const queryEnabled = amountIn !== undefined && !!readHyperdrive;