From 1886a68e050fa76275b6d8cdb22169b122805c2f Mon Sep 17 00:00:00 2001 From: "Tom (plebeius.eth)" Date: Tue, 4 Feb 2025 12:48:00 +0100 Subject: [PATCH] fix offline icon --- src/hooks/use-default-subplebbits-tags.ts | 2 -- src/views/home/boards-list/boards-list.tsx | 13 +++++++------ src/views/home/home.module.css | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/hooks/use-default-subplebbits-tags.ts b/src/hooks/use-default-subplebbits-tags.ts index 3d47768b..4d8b5fb8 100644 --- a/src/hooks/use-default-subplebbits-tags.ts +++ b/src/hooks/use-default-subplebbits-tags.ts @@ -1,6 +1,5 @@ import { useMemo } from 'react'; -// Add this helper function to collect unique tags from subplebbits const getUniqueTags = (multisub: any) => { const allTags = new Set(); Object.values(multisub).forEach((sub: any) => { @@ -11,7 +10,6 @@ const getUniqueTags = (multisub: any) => { return Array.from(allTags).sort(); }; -// Export tags as a derived value where it's needed export const useDefaultSubplebbitTags = (subplebbits: any) => { return useMemo(() => getUniqueTags(subplebbits), [subplebbits]); }; diff --git a/src/views/home/boards-list/boards-list.tsx b/src/views/home/boards-list/boards-list.tsx index 719f4654..1d3cb2c3 100644 --- a/src/views/home/boards-list/boards-list.tsx +++ b/src/views/home/boards-list/boards-list.tsx @@ -1,19 +1,20 @@ +import { useState, useEffect } from 'react'; import { Link, useLocation } from 'react-router-dom'; import { useTranslation } from 'react-i18next'; import Plebbit from '@plebbit/plebbit-js/dist/browser/index.js'; -import { Subplebbit } from '@plebbit/plebbit-react-hooks'; +import { Subplebbit, useSubplebbit } from '@plebbit/plebbit-react-hooks'; import { useDefaultSubplebbitTags } from '../../../hooks/use-default-subplebbits-tags'; import useIsSubplebbitOffline from '../../../hooks/use-is-subplebbit-offline'; import styles from '../home.module.css'; import { nsfwTags } from '../home'; -import { useState, useEffect } from 'react'; const Board = ({ subplebbit }: { subplebbit: Subplebbit; useCatalog?: boolean }) => { const { t } = useTranslation(); const { address, title, tags } = subplebbit || {}; const nsfwTag = tags?.find((tag: string) => nsfwTags.includes(tag)); - const { isOffline, isOnlineStatusLoading, offlineIconClass, offlineTitle } = useIsSubplebbitOffline(subplebbit); + const subplebbitData = useSubplebbit({ subplebbitAddress: address }); + const { isOffline, isOnlineStatusLoading, offlineIconClass, offlineTitle } = useIsSubplebbitOffline(subplebbitData); const displayAddress = address === 'all' ? 'all' : Plebbit.getShortAddress(address); const showOfflineIcon = address !== 'all' && (isOffline || isOnlineStatusLoading); @@ -22,8 +23,8 @@ const Board = ({ subplebbit }: { subplebbit: Subplebbit; useCatalog?: boolean })

- {displayAddress} {showOfflineIcon && } + {displayAddress} {nsfwTag && ({t(nsfwTag)})}

@@ -33,10 +34,10 @@ const Board = ({ subplebbit }: { subplebbit: Subplebbit; useCatalog?: boolean })

{tags.map((tag: string, index: number) => ( - <> + {tag === 'multiboard' ? {tag} : {tag}} {index < tags.length - 1 && ', '} - + ))}

diff --git a/src/views/home/home.module.css b/src/views/home/home.module.css index 1100060b..d124fc51 100644 --- a/src/views/home/home.module.css +++ b/src/views/home/home.module.css @@ -37,7 +37,7 @@ .offlineIcon { display: inline-block; vertical-align: text-top; - margin-left: 2px; + margin-right: 2px; width: 13px; height: 13px; background-repeat: no-repeat;