From 2d73474452e5bcc829f20bb6f75df79616d41730 Mon Sep 17 00:00:00 2001 From: Juanma Hidalgo Date: Fri, 24 Jan 2025 14:29:48 +0100 Subject: [PATCH] fix: ENS filter by owner error and remove limit for prices query --- src/ports/nfts/ensQueries.ts | 8 ++++---- src/ports/nfts/queries.ts | 2 +- src/ports/prices/queries.ts | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/ports/nfts/ensQueries.ts b/src/ports/nfts/ensQueries.ts index 94642db..44b4a7a 100644 --- a/src/ports/nfts/ensQueries.ts +++ b/src/ports/nfts/ensQueries.ts @@ -11,7 +11,7 @@ function geENSWhereStatement(nftFilters: GetNFTsFilters): SQLStatement { } const ownerEthereumAddress = nftFilters.owner ? `${nftFilters.owner.toLocaleLowerCase()}-ETHEREUM` : null - const FILTER_BY_OWNER = nftFilters.owner ? SQL` owner_id = ${ownerEthereumAddress}` : null + const FILTER_BY_OWNER = nftFilters.owner ? SQL` nft.owner_id = ${ownerEthereumAddress}` : null const FILTER_BY_TOKEN_ID = nftFilters.tokenId ? SQL` token_id = ${nftFilters.tokenId} ` : null const FILTER_BY_SEARCH = nftFilters.search ? SQL` search_text % ${nftFilters.search} ` : null @@ -31,7 +31,7 @@ function geENSWhereStatement(nftFilters: GetNFTsFilters): SQLStatement { ]) } -export function getENSs(nftFilters: GetNFTsFilters): SQLStatement { +export function getENSs(nftFilters: GetNFTsFilters, uncapped = false): SQLStatement { const { sortBy, isOnSale, ids } = nftFilters return SQL` WITH filtered_ens_nfts AS ( @@ -106,8 +106,8 @@ export function getENSs(nftFilters: GetNFTsFilters): SQLStatement { ` .append(isOnSale ? SQL`LEFT JOIN valid_orders orders ON orders.nft_id = nft.id` : SQL``) .append(geENSWhereStatement(nftFilters)) - .append(getNFTsSortBy(sortBy)) - .append(getNFTLimitAndOffsetStatement(nftFilters)) + .append(sortBy ? getNFTsSortBy(sortBy) : SQL``) + .append(uncapped ? SQL`` : getNFTLimitAndOffsetStatement(nftFilters)) ) ) ) diff --git a/src/ports/nfts/queries.ts b/src/ports/nfts/queries.ts index 36cce21..ccee576 100644 --- a/src/ports/nfts/queries.ts +++ b/src/ports/nfts/queries.ts @@ -376,7 +376,7 @@ export function getNFTsQuery(nftFilters: GetNFTsFilters & { rentalAssetsIds?: st if (nftFilters.isLand || nftFilters.category === NFTCategory.PARCEL || nftFilters.category === NFTCategory.ESTATE) { return nftFilters.isOnSale ? getLandsOnSaleQuery(nftFilters) : getAllLANDsQuery(nftFilters) } else if (nftFilters.category === NFTCategory.ENS) { - return getENSs(nftFilters) + return getENSs(nftFilters, uncapped) } else if (nftFilters.sortBy === NFTSortBy.RECENTLY_LISTED) { return getRecentlyListedNFTsQuery(nftFilters) } diff --git a/src/ports/prices/queries.ts b/src/ports/prices/queries.ts index 90c3ce6..f34c8dd 100644 --- a/src/ports/prices/queries.ts +++ b/src/ports/prices/queries.ts @@ -11,7 +11,7 @@ export function getPricesQuery(filters: PriceFilters) { ...fromPriceFiltersToNFTFilters(filters), isOnSale: true } - return SQL`SELECT price FROM (`.append(getNFTsQuery({ ...nftFilters, sortBy: undefined })).append(SQL`) as nfts`) + return SQL`SELECT price FROM (`.append(getNFTsQuery({ ...nftFilters, sortBy: undefined }, true)).append(SQL`) as nfts`) } const catalogFilters = {