mirror of
https://github.com/bitsocialnet/5chan.git
synced 2026-08-03 07:41:04 +02:00
@@ -216,5 +216,8 @@
|
||||
"links": "الروابط",
|
||||
"avatar": "الصورة الرمزية",
|
||||
"token_address_whitelist": "عنوان الرمز (فقط على الـ <1>قائمة البيضاء</1>)",
|
||||
"token_id": "تعريف الرمز"
|
||||
"token_id": "تعريف الرمز",
|
||||
"nsfw_boards": "المجالس المخلة بالأدب",
|
||||
"hide_gore_boards": "إخفاء لوحات الجور",
|
||||
"hide_adult_boards": "إخفاء لوحات الكبار"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "লিঙ্কগুলি",
|
||||
"avatar": "অবতার",
|
||||
"token_address_whitelist": "টোকেন ঠিকানা (<1>সাফল্যবান</1> কেবল)",
|
||||
"token_id": "টোকেন আইডি"
|
||||
"token_id": "টোকেন আইডি",
|
||||
"nsfw_boards": "এনএসএফডব্লিউ বোর্ডস",
|
||||
"hide_gore_boards": "গর বোর্ডস লুকান",
|
||||
"hide_adult_boards": "পুরুষ বোর্ডস লুকান"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "Odkazy",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Tokenová adresa (<1>jen bílý seznam</1>)",
|
||||
"token_id": "Token ID"
|
||||
"token_id": "Token ID",
|
||||
"nsfw_boards": "NSFW desky",
|
||||
"hide_gore_boards": "Skrýt gore desky",
|
||||
"hide_adult_boards": "Skrýt dospělé desky"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "Links",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Tokenadresse (<1>kun hvidliste</1>)",
|
||||
"token_id": "Token ID"
|
||||
"token_id": "Token ID",
|
||||
"nsfw_boards": "NSFW boards",
|
||||
"hide_gore_boards": "Skjul Gore Boards",
|
||||
"hide_adult_boards": "Skjul Voksne Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "Links",
|
||||
"avatar": "Avatar",
|
||||
"token_address_whitelist": "Tokenadresse (<1>nur Weiße Liste</1>)",
|
||||
"token_id": "Token-ID"
|
||||
"token_id": "Token-ID",
|
||||
"nsfw_boards": "NSFW-Boards",
|
||||
"hide_gore_boards": "Gore-Boards ausblenden",
|
||||
"hide_adult_boards": "Erwachsenen-Boards ausblenden"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "Σύνδεσμοι",
|
||||
"avatar": "εικόνα προφίλ",
|
||||
"token_address_whitelist": "Διεύθυνση του token (<1>μόνο λευκή λίστα</1>)",
|
||||
"token_id": "Token ID"
|
||||
"token_id": "Token ID",
|
||||
"nsfw_boards": "Πινακίδες NSFW",
|
||||
"hide_gore_boards": "Απόκρυψη των Gore Boards",
|
||||
"hide_adult_boards": "Απόκρυψη των Adult Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "links",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Token address (<1>whitelist</1> only)",
|
||||
"token_id": "token id"
|
||||
"token_id": "token id",
|
||||
"nsfw_boards": "NSFW Boards",
|
||||
"hide_gore_boards": "Hide Gore Boards",
|
||||
"hide_adult_boards": "Hide Adult Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "enlaces",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Dirección del token (<1>solo lista blanca</1>)",
|
||||
"token_id": "ID de token"
|
||||
"token_id": "ID de token",
|
||||
"nsfw_boards": "Tableros NSFW",
|
||||
"hide_gore_boards": "Ocultar tableros de gore",
|
||||
"hide_adult_boards": "Ocultar tableros para adultos"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "لینکها",
|
||||
"avatar": "آواتار",
|
||||
"token_address_whitelist": "آدرس توکن (<1>فقط سفیدپوشان</1>)",
|
||||
"token_id": "شناسه توکن"
|
||||
"token_id": "شناسه توکن",
|
||||
"nsfw_boards": "بوردهای NSFW",
|
||||
"hide_gore_boards": "پنهان کردن تخته های گور",
|
||||
"hide_adult_boards": "پنهان کردن تخته های بزرگسالان"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "linkit",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Token-osoite (<1>vain valkoinen lista</1>)",
|
||||
"token_id": "Token-id"
|
||||
"token_id": "Token-id",
|
||||
"nsfw_boards": "NSFW-laudat",
|
||||
"hide_gore_boards": "Piilota Gore-laudat",
|
||||
"hide_adult_boards": "Piilota Aikuisten lautat"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "mga link",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Address ng token (<1>whitelist</1> lang)",
|
||||
"token_id": "Token ID"
|
||||
"token_id": "Token ID",
|
||||
"nsfw_boards": "Mga NSFW Boards",
|
||||
"hide_gore_boards": "Itago ang mga Gore Boards",
|
||||
"hide_adult_boards": "Itago ang mga Adult Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "liens",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Adresse du token (<1>liste blanche</1> seulement)",
|
||||
"token_id": "Identifiant de jeton"
|
||||
"token_id": "Identifiant de jeton",
|
||||
"nsfw_boards": "Planches NSFW",
|
||||
"hide_gore_boards": "Masquer les tableaux Gore",
|
||||
"hide_adult_boards": "Masquer les tableaux pour adultes"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "קישורים",
|
||||
"avatar": "אוואטר",
|
||||
"token_address_whitelist": "כתובת הטוקן (<1>רק רשימה לבנה</1>)",
|
||||
"token_id": "מזהה טוקן"
|
||||
"token_id": "מזהה טוקן",
|
||||
"nsfw_boards": "גלריות NSFW",
|
||||
"hide_gore_boards": "הסתר לוחות Gore",
|
||||
"hide_adult_boards": "הסתר לוחות המבוגרים"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "लिंक",
|
||||
"avatar": "अवतार",
|
||||
"token_address_whitelist": "टोकन पता (<1>केवल सफेद सूची</1>)",
|
||||
"token_id": "टोकन आईडी"
|
||||
"token_id": "टोकन आईडी",
|
||||
"nsfw_boards": "एनएसएफडब्ल्यू बोर्ड्स",
|
||||
"hide_gore_boards": "गोर बोर्ड्स छिपाएं",
|
||||
"hide_adult_boards": "वयस्क बोर्ड्स छिपाएं"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "linkek",
|
||||
"avatar": "avatár",
|
||||
"token_address_whitelist": "Token cím (<1>csak fehérlista</1>)",
|
||||
"token_id": "Token azonosító"
|
||||
"token_id": "Token azonosító",
|
||||
"nsfw_boards": "NSFW táblák",
|
||||
"hide_gore_boards": "Gore táblák elrejtése",
|
||||
"hide_adult_boards": "Felnőtt táblák elrejtése"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "tautan",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Alamat token (<1>hanya daftar putih</1>)",
|
||||
"token_id": "ID token"
|
||||
"token_id": "ID token",
|
||||
"nsfw_boards": "Papan NSFW",
|
||||
"hide_gore_boards": "Sembunyikan Papan Gore",
|
||||
"hide_adult_boards": "Sembunyikan Papan Dewasa"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "link",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Indirizzo del token (solo se sulla <1>whitelist</1>)",
|
||||
"token_id": "token id"
|
||||
"token_id": "token id",
|
||||
"nsfw_boards": "Bache NSFW",
|
||||
"hide_gore_boards": "Nascondi tavole Gore",
|
||||
"hide_adult_boards": "Nascondi tavole per adulti"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "リンク",
|
||||
"avatar": "アバター",
|
||||
"token_address_whitelist": "トークンアドレス(<1>ホワイトリスト</1>のみ)",
|
||||
"token_id": "トークンID"
|
||||
"token_id": "トークンID",
|
||||
"nsfw_boards": "NSFWボード",
|
||||
"hide_gore_boards": "ゴアボードを非表示にする",
|
||||
"hide_adult_boards": "アダルトボードを非表示にする"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "링크",
|
||||
"avatar": "아바타",
|
||||
"token_address_whitelist": "토큰 주소 (<1>화이트리스트</1>만)",
|
||||
"token_id": "토큰 ID"
|
||||
"token_id": "토큰 ID",
|
||||
"nsfw_boards": "NSFW 게시판",
|
||||
"hide_gore_boards": "고어 게시판 숨기기",
|
||||
"hide_adult_boards": "성인 게시판 숨기기"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "लिंक",
|
||||
"avatar": "अवतार",
|
||||
"token_address_whitelist": "टोकन पत्ता (<1>केवळ सफेद सूची</1>)",
|
||||
"token_id": "टोकन आयडी"
|
||||
"token_id": "टोकन आयडी",
|
||||
"nsfw_boards": "NSFW बोर्ड्स",
|
||||
"hide_gore_boards": "गोर बोर्ड्स लपवा",
|
||||
"hide_adult_boards": "वयस्क बोर्ड्स लपवा"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "links",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Tokenadres (<1>alleen whitelist</1>)",
|
||||
"token_id": "Token-ID"
|
||||
"token_id": "Token-ID",
|
||||
"nsfw_boards": "NSFW-boards",
|
||||
"hide_gore_boards": "Gore Boards verbergen",
|
||||
"hide_adult_boards": "Volwassenen Boards verbergen"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "lenker",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Tokenadresse (<1>kun hvitelisten</1>)",
|
||||
"token_id": "Token ID"
|
||||
"token_id": "Token ID",
|
||||
"nsfw_boards": "NSFW-boards",
|
||||
"hide_gore_boards": "Skjul Gore Boards",
|
||||
"hide_adult_boards": "Skjul voksne Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "linki",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Adres tokenu (<1>tylko biała lista</1>)",
|
||||
"token_id": "Identyfikator tokena"
|
||||
"token_id": "Identyfikator tokena",
|
||||
"nsfw_boards": "Deski NSFW",
|
||||
"hide_gore_boards": "Ukryj Gore Boards",
|
||||
"hide_adult_boards": "Ukryj Adult Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "links",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Endereço do token (<1>apenas lista branca</1>)",
|
||||
"token_id": "ID do token"
|
||||
"token_id": "ID do token",
|
||||
"nsfw_boards": "Quadros NSFW",
|
||||
"hide_gore_boards": "Ocultar Quadros Gore",
|
||||
"hide_adult_boards": "Ocultar Quadros para Adultos"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "linkuri",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Adresa tokenului (<1>doar lista albă</1>)",
|
||||
"token_id": "ID token"
|
||||
"token_id": "ID token",
|
||||
"nsfw_boards": "Plăci NSFW",
|
||||
"hide_gore_boards": "Ascundeți tablourile Gore",
|
||||
"hide_adult_boards": "Ascundeți tablourile pentru adulți"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "ссылки",
|
||||
"avatar": "аватар",
|
||||
"token_address_whitelist": "Адрес токена (<1>только белый список</1>)",
|
||||
"token_id": "Идентификатор токена"
|
||||
"token_id": "Идентификатор токена",
|
||||
"nsfw_boards": "NSFW доски",
|
||||
"hide_gore_boards": "Скрыть доски Gore",
|
||||
"hide_adult_boards": "Скрыть доски для взрослых"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "lidhje",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Adresa e tokenit (<1>vetëm lista e bardhë</1>)",
|
||||
"token_id": "ID e tokenit"
|
||||
"token_id": "ID e tokenit",
|
||||
"nsfw_boards": "Bordet NSFW",
|
||||
"hide_gore_boards": "Fshihet Gore Boards",
|
||||
"hide_adult_boards": "Fshihet Adult Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "länkar",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Tokenadress (<1>endast vitlista</1>)",
|
||||
"token_id": "Token ID"
|
||||
"token_id": "Token ID",
|
||||
"nsfw_boards": "NSFW-boards",
|
||||
"hide_gore_boards": "Dölj Gore Boards",
|
||||
"hide_adult_boards": "Dölj vuxna Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "లింక్లు",
|
||||
"avatar": "అవతార్",
|
||||
"token_address_whitelist": "టోకెన్ చిరునామా (<1>కేవలం వెలుపల్లి</1>)",
|
||||
"token_id": "టోకెన్ ఐడి"
|
||||
"token_id": "టోకెన్ ఐడి",
|
||||
"nsfw_boards": "NSFW బోర్డ్లు",
|
||||
"hide_gore_boards": "గోర్ బోర్డ్స్ దాచు",
|
||||
"hide_adult_boards": "పురుషులు బోర్డ్లు దాచు"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "ลิงก์",
|
||||
"avatar": "อวตาร์",
|
||||
"token_address_whitelist": "ที่อยู่โทเค็น (<1>รายชื่อที่ได้รับอนุญาตเท่านั้น</1>)",
|
||||
"token_id": "รหัสโทเค็น"
|
||||
"token_id": "รหัสโทเค็น",
|
||||
"nsfw_boards": "กระดาน NSFW",
|
||||
"hide_gore_boards": "ซ่อนกระดาน Gore",
|
||||
"hide_adult_boards": "ซ่อนกระดานสำหรับผู้ใหญ่"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "bağlantılar",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Token adresi (<1>yalnızca beyaz liste</1>)",
|
||||
"token_id": "Token kimliği"
|
||||
"token_id": "Token kimliği",
|
||||
"nsfw_boards": "NSFW Panoları",
|
||||
"hide_gore_boards": "Gore Panolarını Gizle",
|
||||
"hide_adult_boards": "Yetişkin Panolarını Gizle"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "посилання",
|
||||
"avatar": "аватар",
|
||||
"token_address_whitelist": "Адреса токена (<1>тільки білий список</1>)",
|
||||
"token_id": "Ідентифікатор токена"
|
||||
"token_id": "Ідентифікатор токена",
|
||||
"nsfw_boards": "NSFW дошки",
|
||||
"hide_gore_boards": "Сховати дошки Gore",
|
||||
"hide_adult_boards": "Сховати дошки для дорослих"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "لنکس",
|
||||
"avatar": "اوتار",
|
||||
"token_address_whitelist": "ٹوکن کا پتا (<1>صرف سفید فہرست</1>)",
|
||||
"token_id": "ٹوکن شناخت"
|
||||
"token_id": "ٹوکن شناخت",
|
||||
"nsfw_boards": "این ایس ایف ڈبلیو بورڈس",
|
||||
"hide_gore_boards": "گور بورڈز چھپائیں",
|
||||
"hide_adult_boards": "بالغ بورڈز چھپائیں"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "liên kết",
|
||||
"avatar": "avatar",
|
||||
"token_address_whitelist": "Địa chỉ token (<1>chỉ danh sách trắng</1>)",
|
||||
"token_id": "ID token"
|
||||
"token_id": "ID token",
|
||||
"nsfw_boards": "Các bảng NSFW",
|
||||
"hide_gore_boards": "Ẩn Gore Boards",
|
||||
"hide_adult_boards": "Ẩn Adult Boards"
|
||||
}
|
||||
@@ -216,5 +216,8 @@
|
||||
"links": "链接",
|
||||
"avatar": "头像",
|
||||
"token_address_whitelist": "代币地址(<1>仅限白名单</1>)",
|
||||
"token_id": "令牌ID"
|
||||
"token_id": "令牌ID",
|
||||
"nsfw_boards": "NSFW板块",
|
||||
"hide_gore_boards": "隐藏Gore板块",
|
||||
"hide_adult_boards": "隐藏成人板块"
|
||||
}
|
||||
@@ -128,15 +128,20 @@ const PostInfo = ({ openReplyModal, post, postReplyCount = 0, roles, isHidden }:
|
||||
)}
|
||||
{!(isDescription || isRules) && (
|
||||
<span className={styles.postNumLink}>
|
||||
<Link to={`/p/${subplebbitAddress}/c/${cid}`} className={styles.linkToPost} title={t('link_to_post')} onClick={(e) => !cid && e.preventDefault()}>
|
||||
c/
|
||||
</Link>
|
||||
{!cid ? (
|
||||
<span className={styles.pendingCid}>{state === 'failed' || stateString === 'Failed' ? 'Failed' : 'Pending'}</span>
|
||||
{cid ? (
|
||||
<>
|
||||
<Link to={`/p/${subplebbitAddress}/c/${cid}`} className={styles.linkToPost} title={t('link_to_post')} onClick={(e) => !cid && e.preventDefault()}>
|
||||
c/
|
||||
</Link>
|
||||
<span className={styles.replyToPost} title={t('reply_to_post')} onMouseDown={() => openReplyModal && openReplyModal(cid)}>
|
||||
{shortCid}
|
||||
</span>
|
||||
</>
|
||||
) : (
|
||||
<span className={styles.replyToPost} title={t('reply_to_post')} onMouseDown={() => openReplyModal && openReplyModal(cid)}>
|
||||
{shortCid}
|
||||
</span>
|
||||
<>
|
||||
<span style={{ cursor: 'pointer' }}>c/</span>
|
||||
<span className={styles.pendingCid}>{state === 'failed' || stateString === 'Failed' ? 'Failed' : 'Pending'}</span>
|
||||
</>
|
||||
)}
|
||||
</span>
|
||||
)}
|
||||
@@ -230,8 +235,9 @@ const PostMessage = ({ post }: PostProps) => {
|
||||
|
||||
const displayContent = content && !isInPostView && content.length > 1000 ? content?.slice(0, 1000) + '(...)' : content;
|
||||
|
||||
const quotelinkReply = useComment({ commentCid: parentCid });
|
||||
const isReply = parentCid;
|
||||
const isReplyingToReply = postCid !== parentCid;
|
||||
const isReplyingToReply = (postCid && postCid !== parentCid) || quotelinkReply?.postCid !== parentCid;
|
||||
|
||||
const stateString = useStateString(post);
|
||||
|
||||
@@ -239,8 +245,6 @@ const PostMessage = ({ post }: PostProps) => {
|
||||
<div className={`${styles.stateString} ${styles.ellipsis}`}>{stateString !== 'Failed' ? <LoadingEllipsis string={stateString} /> : stateString}</div>
|
||||
);
|
||||
|
||||
const quotelinkReply = useComment({ commentCid: parentCid });
|
||||
|
||||
return (
|
||||
<blockquote className={styles.postMessage}>
|
||||
{isReply && !(removed || deleted) && state !== 'failed' && isReplyingToReply && <ReplyQuotePreview isQuotelinkReply={true} quotelinkReply={quotelinkReply} />}
|
||||
@@ -345,7 +349,7 @@ const Reply = ({ openReplyModal, postReplyCount, reply, roles }: PostProps) => {
|
||||
|
||||
const PostDesktop = ({ openReplyModal, post, roles, showAllReplies, showReplies = true }: PostProps) => {
|
||||
const { t } = useTranslation();
|
||||
const { author, cid, content, link, pinned, postCid, replyCount, subplebbitAddress } = post || {};
|
||||
const { author, cid, content, link, pinned, postCid, subplebbitAddress } = post || {};
|
||||
const { isDescription, isRules } = post || {}; // custom properties, not from api
|
||||
const params = useParams();
|
||||
const location = useLocation();
|
||||
@@ -358,6 +362,7 @@ const PostDesktop = ({ openReplyModal, post, roles, showAllReplies, showReplies
|
||||
const replies = useReplies(post);
|
||||
const visiblelinksCount = useCountLinksInReplies(post, 5);
|
||||
const totalLinksCount = useCountLinksInReplies(post);
|
||||
const replyCount = replies?.length;
|
||||
const repliesCount = pinned ? replyCount : replyCount - 5;
|
||||
const linksCount = pinned ? totalLinksCount : totalLinksCount - visiblelinksCount;
|
||||
const { showOmittedReplies, setShowOmittedReplies } = useShowOmittedReplies();
|
||||
@@ -392,7 +397,7 @@ const PostDesktop = ({ openReplyModal, post, roles, showAllReplies, showReplies
|
||||
{!isHidden && !content && <div className={styles.spacer} />}
|
||||
{!isHidden && content && <PostMessage post={post} />}
|
||||
</div>
|
||||
{!isHidden && !isDescription && !isRules && !isInPendingPostView && (repliesCount > 5 || (pinned && repliesCount > 0)) && !isInPostPageView && (
|
||||
{!isHidden && !isDescription && !isRules && !isInPendingPostView && (replyCount > 5 || (pinned && repliesCount > 0)) && !isInPostPageView && (
|
||||
<span className={styles.summary}>
|
||||
<span
|
||||
className={`${showOmittedReplies[cid] ? styles.hideOmittedReplies : styles.showOmittedReplies} ${styles.omittedRepliesButtonWrapper}`}
|
||||
|
||||
@@ -192,7 +192,7 @@ const PostMenuDesktop = ({ post }: { post: Comment }) => {
|
||||
subplebbitAddress={subplebbitAddress}
|
||||
onClose={handleClose}
|
||||
/>
|
||||
<BlockUserButton address={author?.address} />
|
||||
{!isDescription && !isRules && <BlockUserButton address={author?.address} />}
|
||||
{(isInAllView || isInSubscriptionsView) && <BlockBoardButton address={subplebbitAddress} />}
|
||||
</div>
|
||||
</FloatingFocusManager>,
|
||||
|
||||
@@ -145,8 +145,8 @@ const PostMenuMobile = ({ post }: { post: Comment }) => {
|
||||
<div className={styles.postMenu} ref={refs.setFloating} style={floatingStyles} aria-labelledby={headingId} {...getFloatingProps()}>
|
||||
{cid && subplebbitAddress && <CopyLinkButton cid={cid} subplebbitAddress={subplebbitAddress} onClose={handleClose} />}
|
||||
{cid && subplebbitAddress && <HidePostButton cid={cid} isReply={parentCid} postCid={post.postCid} onClose={handleClose} />}
|
||||
{cid && subplebbitAddress && <BlockUserButton address={author?.address} />}
|
||||
{cid && subplebbitAddress && !isInBoardView && <BlockBoardButton address={subplebbitAddress} />}
|
||||
{cid && subplebbitAddress && !isDescription && !isRules && <BlockUserButton address={author?.address} />}
|
||||
{cid && subplebbitAddress && !isInBoardView && !isDescription && !isRules && <BlockBoardButton address={subplebbitAddress} />}
|
||||
{link && isValidURL(link) && (type === 'image' || type === 'gif' || thumbnail) && url && <ImageSearchButtons url={url} onClose={handleClose} />}
|
||||
<ViewOnButtons cid={cid} isDescription={isDescription} isRules={isRules} subplebbitAddress={subplebbitAddress} onClose={handleClose} />
|
||||
</div>
|
||||
|
||||
@@ -118,15 +118,20 @@ const PostInfoAndMedia = ({ openReplyModal, post, postReplyCount = 0, roles }: P
|
||||
<Tooltip children={<span>{getFormattedDate(timestamp)}</span>} content={getFormattedTimeAgo(timestamp)} />{' '}
|
||||
{!(isDescription || isRules) && (
|
||||
<span className={styles.postNumLink}>
|
||||
<Link to={`/p/${subplebbitAddress}/c/${cid}`} className={styles.linkToPost} title={t('link_to_post')} onClick={(e) => !cid && e.preventDefault()}>
|
||||
c/
|
||||
</Link>
|
||||
{!cid ? (
|
||||
<span className={styles.pendingCid}>{state === 'failed' || stateString === 'Failed' ? 'Failed' : 'Pending'}</span>
|
||||
{cid ? (
|
||||
<>
|
||||
<Link to={`/p/${subplebbitAddress}/c/${cid}`} className={styles.linkToPost} title={t('link_to_post')} onClick={(e) => !cid && e.preventDefault()}>
|
||||
c/
|
||||
</Link>
|
||||
<span className={styles.replyToPost} title={t('reply_to_post')} onMouseDown={() => openReplyModal && openReplyModal(cid)}>
|
||||
{shortCid}
|
||||
</span>
|
||||
</>
|
||||
) : (
|
||||
<span className={styles.replyToPost} title={t('reply_to_post')} onMouseDown={() => openReplyModal && openReplyModal(cid)}>
|
||||
{shortCid}
|
||||
</span>
|
||||
<>
|
||||
<span style={{ cursor: 'pointer' }}>c/</span>
|
||||
<span className={styles.pendingCid}>{state === 'failed' || stateString === 'Failed' ? 'Failed' : 'Pending'}</span>
|
||||
</>
|
||||
)}
|
||||
</span>
|
||||
)}
|
||||
@@ -165,8 +170,9 @@ const PostMessageMobile = ({ post }: PostProps) => {
|
||||
|
||||
const displayContent = content && !isInPostView && content.length > 1000 ? content?.slice(0, 1000) : content;
|
||||
|
||||
const quotelinkReply = useComment({ commentCid: parentCid });
|
||||
const isReply = parentCid;
|
||||
const isReplyingToReply = postCid !== parentCid;
|
||||
const isReplyingToReply = (postCid && postCid !== parentCid) || quotelinkReply?.postCid !== parentCid;
|
||||
|
||||
const stateString = useStateString(post);
|
||||
|
||||
@@ -174,8 +180,6 @@ const PostMessageMobile = ({ post }: PostProps) => {
|
||||
<div className={`${styles.stateString} ${styles.ellipsis}`}>{stateString !== 'Failed' ? <LoadingEllipsis string={stateString} /> : stateString}</div>
|
||||
);
|
||||
|
||||
const quotelinkReply = useComment({ commentCid: parentCid });
|
||||
|
||||
return (
|
||||
content && (
|
||||
<blockquote className={`${styles.postMessage} ${!isReply && styles.clampLines}`}>
|
||||
|
||||
@@ -1,9 +1,11 @@
|
||||
.avatar {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
border: 1px solid #aaa;
|
||||
background-color: var(--avatar-background-color, white);
|
||||
margin-left: 10px;
|
||||
border-radius: 32px;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
.avatarPreview {
|
||||
@@ -11,8 +13,8 @@
|
||||
}
|
||||
|
||||
.avatar img {
|
||||
width: 70px;
|
||||
height: 70px;
|
||||
width: 64px;
|
||||
height: 64px;
|
||||
}
|
||||
|
||||
.emptyAvatar {
|
||||
@@ -22,7 +24,6 @@
|
||||
text-align: center;
|
||||
height: 100%;
|
||||
color: var(--avatar-text-color);
|
||||
cursor: pointer;
|
||||
}
|
||||
|
||||
.avatarSettingsForm {
|
||||
|
||||
@@ -12,9 +12,8 @@ const useReplies = (comment: Comment) => {
|
||||
// filter against the original comment's CID and all CIDs in flattened replies
|
||||
const filter = useCallback(
|
||||
(accountComment: Comment) => {
|
||||
const parentCid = accountComment.parentCid || 'n/a';
|
||||
const isCidInDocument = !!document.querySelector(`[data-cid="${parentCid}"]`);
|
||||
return parentCid === (comment?.cid || 'n/a') || replyCids.has(parentCid) || isCidInDocument;
|
||||
const parentCid = accountComment.parentCid;
|
||||
return parentCid === (comment?.cid || 'n/a') || replyCids.has(parentCid);
|
||||
},
|
||||
[comment?.cid, replyCids],
|
||||
);
|
||||
|
||||
@@ -30,14 +30,14 @@ const FiltersModal = ({ closeModal }: { closeModal: () => void }) => {
|
||||
)}
|
||||
{isInAllView && (
|
||||
<div className={styles.nsfwLabels}>
|
||||
<div className={styles.categoryTitle}>NSFW Boards</div>
|
||||
<div className={styles.categoryTitle}>{t('nsfw_boards')}</div>
|
||||
<label>
|
||||
<input type='checkbox' checked={!showGoreBoards} onChange={(e) => setShowGoreBoards(!e.target.checked)} />
|
||||
Hide Gore Boards
|
||||
{t('hide_gore_boards')}
|
||||
</label>
|
||||
<label>
|
||||
<input type='checkbox' checked={!showAdultBoards} onChange={(e) => setShowAdultBoards(!e.target.checked)} />
|
||||
Hide Adult Boards
|
||||
{t('hide_adult_boards')}
|
||||
</label>
|
||||
</div>
|
||||
)}
|
||||
|
||||
Reference in New Issue
Block a user