From f8497ad7307315f489256ddd5f29d746145b79b8 Mon Sep 17 00:00:00 2001 From: infinite-persistence Date: Thu, 29 Jul 2021 19:53:28 +0800 Subject: [PATCH] Homepage: show Reposts w/o dups + enable for SIMPLE_SITE ## Issue 5894 Examine re-enabling reposts on odysee homepage ## Changes to `ClaimTilesDiscover` - Add 'remove_duplicates' by default. - Port `forceShowReposts` from `ClaimListsDiscover`. This allows reposts to be shown regardless of the "Hide Reposts" setting, which is locked to "true" for Odysee. --- ui/component/claimTilesDiscover/view.jsx | 7 ++++++- ui/page/home/view.jsx | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/ui/component/claimTilesDiscover/view.jsx b/ui/component/claimTilesDiscover/view.jsx index c915aa275..fdfd7af7c 100644 --- a/ui/component/claimTilesDiscover/view.jsx +++ b/ui/component/claimTilesDiscover/view.jsx @@ -90,6 +90,7 @@ type Props = { doClaimSearch: ({}) => void, showNsfw: boolean, hideReposts: boolean, + forceShowReposts?: boolean, history: { action: string, push: (string) => void, replace: (string) => void }, claimSearchByQuery: { [string]: Array }, fetchingClaimSearchByQuery: { [string]: boolean }, @@ -125,6 +126,7 @@ function ClaimTilesDiscover(props: Props) { claimsByUri, showNsfw, hideReposts, + forceShowReposts = false, // Below are options to pass that are forwarded to claim_search tags, channelIds, @@ -186,6 +188,8 @@ function ClaimTilesDiscover(props: Props) { stream_types?: Array, has_source?: boolean, has_no_source?: boolean, + reposted_claim_id?: string, + remove_duplicates?: boolean, } = { page_size: pageSize, claim_type: claimType || undefined, @@ -199,6 +203,7 @@ function ClaimTilesDiscover(props: Props) { not_channel_ids: mutedAndBlockedChannelIds, order_by: orderBy || ['trending_group', 'trending_mixed'], stream_types: streamTypesParam, + remove_duplicates: true, }; if (ENABLE_NO_SOURCE_CLAIMS && hasNoSource) { @@ -220,7 +225,7 @@ function ClaimTilesDiscover(props: Props) { } // https://github.com/lbryio/lbry-desktop/issues/3774 - if (hideReposts) { + if (hideReposts && !options.reposted_claim_id && !forceShowReposts) { if (Array.isArray(options.claim_type)) { options.claim_type = options.claim_type.filter((claimType) => claimType !== 'repost'); } else { diff --git a/ui/page/home/view.jsx b/ui/page/home/view.jsx index 19ac2e43b..e0dab34d8 100644 --- a/ui/page/home/view.jsx +++ b/ui/page/home/view.jsx @@ -57,6 +57,7 @@ function HomePage(props: Props) { const claimTiles = (