From 65532f18f5ac58417b80a57b71934cebdb3c8a7e Mon Sep 17 00:00:00 2001 From: ragnep Date: Mon, 23 Mar 2026 15:51:11 +0200 Subject: [PATCH 1/2] wip Signed-off-by: ragnep --- components/waves/layout/WavesLayout.tsx | 15 +- components/waves/public/LoggedOutSkeleton.tsx | 173 ++++++++++++++++++ components/waves/public/PublicWaveShell.tsx | 164 ++--------------- .../waves/public/usePublicWaveShellState.ts | 2 + 4 files changed, 198 insertions(+), 156 deletions(-) create mode 100644 components/waves/public/LoggedOutSkeleton.tsx diff --git a/components/waves/layout/WavesLayout.tsx b/components/waves/layout/WavesLayout.tsx index 6f3c7548a2..ce3fbbc313 100644 --- a/components/waves/layout/WavesLayout.tsx +++ b/components/waves/layout/WavesLayout.tsx @@ -54,6 +54,10 @@ function getNotAuthenticatedContent({ readonly isApp: boolean; readonly publicWaveShellState: PublicWaveShellState; }): ReactNode { + if (isApp) { + return ; + } + if (activeWaveId === null || publicWaveShellState.status === "unavailable") { return ; } @@ -64,14 +68,6 @@ function getNotAuthenticatedContent({ ); - if (isApp) { - return ( -
- {publicShell} -
- ); - } - return (
+ {PREVIEW_ROWS.map((row) => ( +
+
+ +
+
+
+
+
+ +
+ {row.lines.map((lineWidth) => ( +
+ ))} +
+ + {row.hasAttachment && ( +
+ )} + + {row.reactions > 0 && ( +
+ {REACTION_KEYS.slice(0, row.reactions).map((reactionKey) => ( +
+ ))} +
+ )} +
+
+ ))} + + ); +} + +function PlaceholderSkeleton() { + return ( +
+
+
+ + +
+
+ +
+
+
+
+
+
+
+
+ +
+
+
+
+
+
+ +
+
+
+ +
+
+
+
+
+ ); +} + +export default function LoggedOutSkeleton() { + return ( +