Skip to content

Commit bfd3be7

Browse files
authored
Filter out null-ish values from ERC721 and ERC1155 getNFTs() arrays (#8311)
1 parent 46b9d2d commit bfd3be7

File tree

3 files changed

+23
-6
lines changed

3 files changed

+23
-6
lines changed

.changeset/good-regions-dig.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
"thirdweb": patch
3+
---
4+
5+
filter out null-ish values from `ERC721.getNFTs()` and `ERC1155.getNFTs()` arrays

packages/thirdweb/src/extensions/erc1155/read/getNFTs.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -52,12 +52,18 @@ export async function getNFTs(
5252
const { useIndexer = true } = options;
5353
if (useIndexer) {
5454
try {
55-
return await getNFTsFromInsight(options);
55+
return await getNFTsFromInsight(options).then((nfts) =>
56+
nfts.filter((nft) => nft?.id !== undefined && nft?.id !== null),
57+
);
5658
} catch {
57-
return await getNFTsFromRPC(options);
59+
return await getNFTsFromRPC(options).then((nfts) =>
60+
nfts.filter((nft) => nft?.id !== undefined && nft?.id !== null),
61+
);
5862
}
5963
}
60-
return await getNFTsFromRPC(options);
64+
return await getNFTsFromRPC(options).then((nfts) =>
65+
nfts.filter((nft) => nft?.id !== undefined && nft?.id !== null),
66+
);
6167
}
6268

6369
async function getNFTsFromInsight(

packages/thirdweb/src/extensions/erc721/read/getNFTs.ts

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,18 @@ export async function getNFTs(
7171
const { useIndexer = true } = options;
7272
if (useIndexer) {
7373
try {
74-
return await getNFTsFromInsight(options);
74+
return await getNFTsFromInsight(options).then((nfts) =>
75+
nfts.filter((nft) => nft?.id !== undefined && nft?.id !== null),
76+
);
7577
} catch {
76-
return await getNFTsFromRPC(options);
78+
return await getNFTsFromRPC(options).then((nfts) =>
79+
nfts.filter((nft) => nft?.id !== undefined && nft?.id !== null),
80+
);
7781
}
7882
}
79-
return await getNFTsFromRPC(options);
83+
return await getNFTsFromRPC(options).then((nfts) =>
84+
nfts.filter((nft) => nft?.id !== undefined && nft?.id !== null),
85+
);
8086
}
8187

8288
/**

0 commit comments

Comments
 (0)