diff --git a/app/(dashboard)/e/[sector]/[slug]/loading.tsx b/app/(dashboard)/e/[sector]/[slug]/loading.tsx index c4aaff45..60115268 100644 --- a/app/(dashboard)/e/[sector]/[slug]/loading.tsx +++ b/app/(dashboard)/e/[sector]/[slug]/loading.tsx @@ -114,8 +114,8 @@ function FullScreenWorkspaceSkeleton() { -
-
diff --git a/components/extensions/general/InvoiceInboxWorkspace.tsx b/components/extensions/general/InvoiceInboxWorkspace.tsx index 07fabe37..51c33ed1 100644 --- a/components/extensions/general/InvoiceInboxWorkspace.tsx +++ b/components/extensions/general/InvoiceInboxWorkspace.tsx @@ -165,8 +165,8 @@ function WorkspaceSkeleton() { -
-
@@ -910,13 +910,13 @@ export default function InvoiceInboxWorkspace(_props: WorkspaceComponentProps) { )} - {items.length === 0 ? ( + {!hasAnyItem ? ( // On desktop the preview pane is always visible alongside this // column, so showing the onboarding card here would duplicate it. - // On mobile the layout is a master-detail toggle and the user is - // stuck on the list view until they pick a row: without a card - // here they'd have no way to reach the explainer at all. So: - // compact card on mobile only, quiet empty state on desktop. + // Below xl the panes stack into one feed, so the sibling preview + // and fields panes are hidden when the inbox is empty (see their + // classNames): this list is the only onboarding surface there. + // So: compact card on mobile only, quiet empty state on desktop. showOnboarding ? ( <>
@@ -965,9 +965,15 @@ export default function InvoiceInboxWorkspace(_props: WorkspaceComponentProps) { )} - {/* Document preview (hero) */} + {/* Document preview (hero). When the inbox is empty there is nothing + to preview and no row can be selected, so below xl (stacked feed) + this pane is hidden: the list's compact onboarding card is the + single onboarding surface, avoiding a duplicated card. */}
{selected ? ( @@ -999,9 +1005,14 @@ export default function InvoiceInboxWorkspace(_props: WorkspaceComponentProps) { {/* Fields rail. Below xl it stacks below the preview as part of the single vertical feed (top border for separation). At xl+ it's the - third pane with a left border. */} + third pane with a left border. With an empty inbox no row can be + selected, so below xl it is hidden to keep the stacked empty state + to just the list column. */}