diff --git a/src/components/Asset/AssetContent/index.tsx b/src/components/Asset/AssetContent/index.tsx index b651d0704..101586b41 100644 --- a/src/components/Asset/AssetContent/index.tsx +++ b/src/components/Asset/AssetContent/index.tsx @@ -79,7 +79,11 @@ export default function AssetContent({ )} - + diff --git a/src/components/Asset/RelatedAssets/index.tsx b/src/components/Asset/RelatedAssets/index.tsx index 23d600879..e779339d4 100644 --- a/src/components/Asset/RelatedAssets/index.tsx +++ b/src/components/Asset/RelatedAssets/index.tsx @@ -1,19 +1,21 @@ import React, { ReactElement, useEffect, useState } from 'react' -import { generateBaseQuery, getFilterTerm } from '@utils/aquarius' +import { generateBaseQuery } from '@utils/aquarius' import { useUserPreferences } from '@context/UserPreferences' import { SortTermOptions } from '../../../@types/aquarius/SearchQuery' import SectionQueryResult from '../../Home/SectionQueryResult' export default function RelatedAssets({ tags, - id + dtAddress, + owner }: { tags: string[] - id: string + dtAddress: string + owner: string }): ReactElement { const { chainIds } = useUserPreferences() - const [queryRelatedAssets, setQueryRelatedAssets] = useState() + const modifiedTags = tags.toString().split(',').join(' OR ') useEffect(() => { const baseParamsSales = { @@ -22,19 +24,35 @@ export default function RelatedAssets({ size: 3 }, nestedQuery: { - must_not: { - match: { - id + must_not: [ + { + query_string: { + query: `${dtAddress.toLowerCase()}`, + fields: ['datatokens.address'] + } } - } + ], + must: [ + { + query_string: { + query: modifiedTags, + fields: ['metadata.tags'] + } + }, + { + query_string: { + query: `${owner.toLowerCase()}`, + fields: ['nft.owner'] + } + } + ] }, - filters: [getFilterTerm('metadata.tags', tags)], sortOptions: { sortBy: SortTermOptions.Orders } as SortOptions } as BaseQueryParams setQueryRelatedAssets(generateBaseQuery(baseParamsSales)) - }, [chainIds]) + }, [chainIds, dtAddress, tags]) return (