From 1ceebb8bf4138427e27f9fa5f160e9166bdb7b5f Mon Sep 17 00:00:00 2001 From: BrickheadJohnny Date: Tue, 17 Sep 2024 15:25:33 +0200 Subject: [PATCH] fix `validateNftChain` --- src/pages/api/nft/collectors/[chain]/[address].ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pages/api/nft/collectors/[chain]/[address].ts b/src/pages/api/nft/collectors/[chain]/[address].ts index 8b62e9993a..54dfec1df1 100644 --- a/src/pages/api/nft/collectors/[chain]/[address].ts +++ b/src/pages/api/nft/collectors/[chain]/[address].ts @@ -1,3 +1,4 @@ +import { CONTRACT_CALL_SUPPORTED_CHAINS } from "components/[guild]/RolePlatforms/components/AddRoleRewardModal/components/AddContractCallPanel/components/CreateNftForm/hooks/useCreateNft" import { env } from "env" import { NextApiHandler } from "next" import { topCollectorsSupportedChains } from "pages/[guild]/collect/[chain]/[address]" @@ -34,9 +35,11 @@ export const alchemyApiUrl: Record< SEPOLIA: `https://eth-sepolia.g.alchemy.com/nft/v3/${env.SEPOLIA_ALCHEMY_KEY}/getOwnersForContract`, } +// TODO: just use Zod. export const validateNftChain = (value: string | string[]): Chain => { const valueAsString = value?.toString()?.toUpperCase() - if (!value || !Object.keys(alchemyApiUrl).includes(valueAsString)) return null + if (!value || !CONTRACT_CALL_SUPPORTED_CHAINS.includes(valueAsString as any)) + return null return valueAsString as Chain } export const validateNftAddress = (value: string | string[]): `0x${string}` => {