diff --git a/ui/page/channelsFollowingDiscover/view.jsx b/ui/page/channelsFollowingDiscover/view.jsx index aa5875599..981b6eaae 100644 --- a/ui/page/channelsFollowingDiscover/view.jsx +++ b/ui/page/channelsFollowingDiscover/view.jsx @@ -29,79 +29,79 @@ type ChannelsFollowingItem = { function ChannelsFollowingDiscover(props: Props) { const { followedTags, subscribedChannels, blockedChannels, homepageData } = props; const { PRIMARY_CONTENT_CHANNEL_IDS } = homepageData; - let rowData: Array = []; + // let rowData: Array = []; const notChannels = subscribedChannels .map(({ uri }) => uri) .concat(blockedChannels) .map(uri => uri.split('#')[1]); - rowData.push({ - title: 'Top Channels Of All Time', - link: `/$/${PAGES.DISCOVER}?claim_type=channel&${CS.ORDER_BY_KEY}=${CS.ORDER_BY_TOP}&${CS.FRESH_KEY}=${CS.FRESH_ALL}`, - options: { - pageSize: 12, - claimType: 'channel', - orderBy: ['effective_amount'], - }, - }); - - rowData.push({ - title: 'Latest From @lbrycast', - link: `/@lbrycast:4`, - options: { - orderBy: ['release_time'], - pageSize: 8, - channelIds: ['4c29f8b013adea4d5cca1861fb2161d5089613ea'], - }, - }); - - rowData.push({ - title: 'Trending Channels', - link: `/$/${PAGES.DISCOVER}?claim_type=channel`, - options: { - pageSize: 8, - claimType: 'channel', - orderBy: ['trending_group', 'trending_mixed'], - }, - }); - - if (followedTags.length > 0 && followedTags.length < 5) { - const followedRows = followedTags.map((tag: Tag) => ({ - title: `Trending Channels for #${toCapitalCase(tag.name)}`, - link: `/$/${PAGES.DISCOVER}?t=${tag.name}&claim_type=channel`, + const getRowData = () => { + const rData = []; + rData.push({ + title: 'Top Channels Of All Time', + link: `/$/${PAGES.DISCOVER}?claim_type=channel&${CS.ORDER_BY_KEY}=${CS.ORDER_BY_TOP}&${CS.FRESH_KEY}=${CS.FRESH_ALL}`, options: { + pageSize: 12, claimType: 'channel', - pageSize: 4, - tags: [tag.name], - }, - })); - rowData.push(...followedRows); - } - - if (followedTags.length > 4) { - rowData.push({ - title: 'Trending For Your Tags', - link: `/$/${PAGES.TAGS_FOLLOWING}?claim_type=channel`, - options: { - claimType: 'channel', - tags: followedTags.map(tag => tag.name), - }, - }); - } - - const rowDataWithGenericOptions = rowData.map(row => { - return { - ...row, - options: { - ...row.options, + orderBy: ['effective_amount'], notChannels, }, - }; - }); + }); + + rData.push({ + title: 'Latest From @lbrycast', + link: `/@lbrycast:4`, + options: { + orderBy: ['release_time'], + pageSize: 8, + channelIds: ['4c29f8b013adea4d5cca1861fb2161d5089613ea'], + notChannels, + }, + }); + + rData.push({ + title: 'Trending Channels', + link: `/$/${PAGES.DISCOVER}?claim_type=channel`, + options: { + pageSize: 8, + claimType: 'channel', + orderBy: ['trending_group', 'trending_mixed'], + notChannels, + }, + }); + + if (followedTags.length > 0 && followedTags.length < 5) { + const followedRows = followedTags.map((tag: Tag) => ({ + title: `Trending Channels for #${toCapitalCase(tag.name)}`, + link: `/$/${PAGES.DISCOVER}?t=${tag.name}&claim_type=channel`, + options: { + claimType: 'channel', + pageSize: 4, + tags: [tag.name], + notChannels, + }, + })); + rData.push(...followedRows); + } + + if (followedTags.length > 4) { + rData.push({ + title: 'Trending For Your Tags', + link: `/$/${PAGES.TAGS_FOLLOWING}?claim_type=channel`, + options: { + claimType: 'channel', + tags: followedTags.map(tag => tag.name), + notChannels, + }, + }); + } + return rData; + }; + const [rowData] = React.useState(getRowData() || []); return ( - {rowDataWithGenericOptions.map(({ title, link, help, options = {} }) => ( + {rowData.map(({ title, link, help, options = {} }) => (

{link ? ( @@ -117,7 +117,7 @@ function ChannelsFollowingDiscover(props: Props) { )} {help}

- + { /* This does infinite claim_search if apis are down */ }
))} @@ -125,6 +125,7 @@ function ChannelsFollowingDiscover(props: Props) { {__('More Channels')} {/* odysee: claimIds = PRIMARY_CONTENT_CHANNEL_IDS if simplesite CLD */} + +
); }