+
+
+
+ {reply.author.displayName
+ ? reply.author.displayName.length > 20
+ ?
+
+ {reply.author.displayName.slice(0, 20) + " (...)"}
+
+
+ :
+ {reply.author.displayName}
+ :
+ Anonymous}
+
+ handleAddressClick(reply.author.shortAddress)}
+ >
+ (u/
+ {reply.author?.shortAddress ?
+ (
+
+ {reply.author?.shortAddress}
+
+ ) : (
+
+ {account?.author?.address.slice(0, 8) + "(...)"}
+
+ )
+ }
+ )
+
+
+
+
+ p/
+
+ {thread.subplebbitAddress.includes(".eth") ?
+ (thread.subplebbitAddress) :
+ (
+ {thread.subplebbitAddress.slice(0, 10) + "(...)"}
+
+ )}
+
+
+
+
+ {getDate(reply.timestamp)}
+ c/
+ {reply.shortCid ? (
+ {
+ if (e.button === 2) return;
+ e.preventDefault();
+ setIsReplyOpen(true);
+ setSelectedShortCid(reply.shortCid);
+ setSelectedParentCid(reply.cid);
+ setSelectedAddress(thread.subplebbitAddress);
+ }} title="Reply to this post">{reply.shortCid}
+
+ ) : (
+ Pending
+ )}
+
+
+ {reply.link ? (
+
+ {replyMediaInfo?.url ? (
+ replyMediaInfo.type === "webpage" ? (
+
+
+ {reply.thumbnailUrl ? (
+
e.target.src = fallbackImgUrl} />
+ ) : null}
+ {replyMediaInfo.type}
+
+
+ ) : replyMediaInfo.type === "image" ? (
+
+
+
e.target.src = fallbackImgUrl} />
+ {replyMediaInfo.type}
+
+
+ ) : replyMediaInfo.type === "video" ? (
+
+
+ ) : replyMediaInfo.type === "audio" ? (
+
+
+ ) : null
+ ) : null}
+
+ ) : null}
+ {reply.content ? (
+ reply.content?.length > 500 ?
+
+
+ {}} key={`mob-r-pm-${index}`} className="quotelink" onClick={(event) => handleQuoteClick(reply, shortParentCid, thread.shortCid, event)}>
+ {`c/${shortParentCid}`}{shortParentCid === thread.shortCid ? " (OP)" : null}
+
+
+ (...)
+
+ Comment too long.
+ setSelectedThread(thread.cid)} className="ttl-link">Click here
+ to view.
+
+
+ :
+ {}} key={`mob-r-pm-${index}`} className="quotelink" onClick={(event) => handleQuoteClick(reply, shortParentCid, thread.shortCid, event)}>
+ {`c/${shortParentCid}`}{shortParentCid === thread.shortCid ? " (OP)" : null}
+
+
+
)
+ : null}
+ {reply.replyCount > 0 ? (
+
+ {reply.replies?.pages?.topAll.comments
+ .sort((a, b) => a.timestamp - b.timestamp)
+ .map((reply, index) => (
+
+ {}}
+ onClick={(event) => handleQuoteClick(reply, reply.shortCid, event)} className="quote-link">
+ c/{reply.shortCid}
+
+
+ ))}
+
+ ) : null}
+