+ {
+ const actionBarMessage =
+ toActionBarMessage(message);
+ const remove =
+ actionBarMessage.reactions?.some(
+ (reaction) =>
+ reaction.emoji === emoji &&
+ reaction.reactedByCurrentUser,
+ ) ?? false;
+ return onToggleReaction(
+ actionBarMessage,
+ emoji,
+ remove,
+ );
+ }
+ : undefined
+ }
+ onReply={
+ canReply
+ ? () => handleSelectReplyTarget(message)
+ : undefined
+ }
+ reactions={message.reactions ?? []}
+ />
+
+ ) : null}
-
+
- {skeletonRows.map((row) => (
+ {skeletonRows.map((row, index) => (
{message.authorLabel}
++ {message.fullTimestampLabel} +
{message.isSelected ? ( Inbox item ) : null} -- {message.fullTimestampLabel} -
- {canReply || onToggleReaction ? ( -
-
- ) : null}
- {
- const actionBarMessage =
- toActionBarMessage(message);
- const remove =
- actionBarMessage.reactions?.some(
- (reaction) =>
- reaction.emoji === emoji &&
- reaction.reactedByCurrentUser,
- ) ?? false;
- return onToggleReaction(
- actionBarMessage,
- emoji,
- remove,
- );
- }
- : undefined
- }
- onReply={
- canReply
- ? () => handleSelectReplyTarget(message)
- : undefined
- }
- reactions={message.reactions ?? []}
- />
-
-
-
+
))}
diff --git a/desktop/src/shared/ui/ViewLoadingFallback.tsx b/desktop/src/shared/ui/ViewLoadingFallback.tsx
index 64dbc4f2c8..29243f7a9d 100644
--- a/desktop/src/shared/ui/ViewLoadingFallback.tsx
+++ b/desktop/src/shared/ui/ViewLoadingFallback.tsx
@@ -45,13 +45,16 @@ function LoadingHeaderSkeleton() {
function MessageRowsSkeleton() {
return (
<>
- {["first", "second", "third", "fourth", "fifth"].map((row) => (
+ {["first", "second", "third", "fourth", "fifth"].map((row, index) => (
-
-
-
+
+
+
+
+
+
-
-
-
-
-
+
+
))}
+
+
+
+
+
+