From 8ab760815c9ae072b8c2cb2460e31144b193e0b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elisi=C3=A1rio=20Couto?= Date: Wed, 17 Sep 2025 22:11:03 +0100 Subject: [PATCH] fix(frontend): Resolve dual scroll and excessive whitespace issues on transactions page. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Change root layout from h-screen to min-h-screen to prevent height conflicts - Remove overflow-hidden and overflow-y-auto from main container to eliminate competing scroll contexts - Streamline TransactionsTable layout by removing unnecessary overflow wrappers - Add max-w-full constraint to prevent horizontal overflow issues 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude --- frontend/src/components/TransactionsTable.tsx | 164 +++++++++--------- frontend/src/routes/__root.tsx | 12 +- 2 files changed, 87 insertions(+), 89 deletions(-) diff --git a/frontend/src/components/TransactionsTable.tsx b/frontend/src/components/TransactionsTable.tsx index fb1242d..3bdc2c2 100644 --- a/frontend/src/components/TransactionsTable.tsx +++ b/frontend/src/components/TransactionsTable.tsx @@ -438,7 +438,7 @@ export default function TransactionsTable() { } return ( -
+
{/* New FilterBar */} {/* Responsive Table/Cards */} - + {/* Desktop Table View (hidden on mobile) */}
-
- - - {table.getHeaderGroups().map((headerGroup) => ( - - {headerGroup.headers.map((header) => ( - + {table.getHeaderGroups().map((headerGroup) => ( + + {headerGroup.headers.map((header) => ( + + ))} + + ))} + + + {table.getRowModel().rows.length === 0 ? ( + + + + ) : ( + table.getRowModel().rows.map((row) => ( + + {row.getVisibleCells().map((cell) => ( + ))} - ))} - - - {table.getRowModel().rows.length === 0 ? ( - - - - ) : ( - table.getRowModel().rows.map((row) => ( - - {row.getVisibleCells().map((cell) => ( - - ))} - - )) - )} - -
+
+
+ + {header.isPlaceholder + ? null + : flexRender( + header.column.columnDef.header, + header.getContext(), + )} + + {header.column.getCanSort() && ( +
+ + +
+ )} +
+
+
+ +
+

+ No transactions found +

+

+ {hasActiveFilters + ? "Try adjusting your filters to see more results." + : "No transactions are available for the selected criteria."} +

+
-
- - {header.isPlaceholder - ? null - : flexRender( - header.column.columnDef.header, - header.getContext(), - )} - - {header.column.getCanSort() && ( -
- - -
- )} -
- + {flexRender( + cell.column.columnDef.cell, + cell.getContext(), + )} +
-
- -
-

- No transactions found -

-

- {hasActiveFilters - ? "Try adjusting your filters to see more results." - : "No transactions are available for the selected criteria."} -

-
- {flexRender( - cell.column.columnDef.cell, - cell.getContext(), - )} -
-
+ )) + )} + +
{/* Mobile Card View (visible only on mobile) */} diff --git a/frontend/src/routes/__root.tsx b/frontend/src/routes/__root.tsx index 252beaf..d01ebde 100644 --- a/frontend/src/routes/__root.tsx +++ b/frontend/src/routes/__root.tsx @@ -23,7 +23,7 @@ function RootLayout() { }; return ( -
+
{/* Mobile overlay */} @@ -34,18 +34,18 @@ function RootLayout() { /> )} -
+
-
+
{/* PWA Prompts */} -
);