From 635c6fd0ff6c0be143507233ef78e73cbfaf04f2 Mon Sep 17 00:00:00 2001 From: BOHA Date: Mon, 23 Mar 2026 10:57:17 +0100 Subject: [PATCH] fix: table sorting blocked by pointerEvents:none during loading MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Root cause: useListData set loading=true on every refetch, and all 4 admin list pages (offers, orders, invoices, projects) applied pointerEvents:'none' while loading — blocking all clicks including sort column headers. Fix: removed setLoading(true) from refetch (matching PHP behavior) and removed pointerEvents from all list page cards. Opacity fade kept as visual feedback. Co-Authored-By: Claude Opus 4.6 (1M context) --- src/admin/hooks/useListData.ts | 1 - src/admin/pages/Invoices.tsx | 2 +- src/admin/pages/Offers.tsx | 2 +- src/admin/pages/Orders.tsx | 2 +- src/admin/pages/Projects.tsx | 2 +- 5 files changed, 4 insertions(+), 5 deletions(-) diff --git a/src/admin/hooks/useListData.ts b/src/admin/hooks/useListData.ts index c0368e8..aa72390 100644 --- a/src/admin/hooks/useListData.ts +++ b/src/admin/hooks/useListData.ts @@ -41,7 +41,6 @@ export default function useListData( const controller = new AbortController() abortRef.current = controller - setLoading(true) try { const params = new URLSearchParams({ page: String(page), diff --git a/src/admin/pages/Invoices.tsx b/src/admin/pages/Invoices.tsx index 14dcced..f53347a 100644 --- a/src/admin/pages/Invoices.tsx +++ b/src/admin/pages/Invoices.tsx @@ -449,7 +449,7 @@ export default function Invoices() { + style={{ opacity: loading ? 0.6 : 1, transition: 'opacity 0.2s' }}>
diff --git a/src/admin/pages/Orders.tsx b/src/admin/pages/Orders.tsx index 12718bb..fe27527 100644 --- a/src/admin/pages/Orders.tsx +++ b/src/admin/pages/Orders.tsx @@ -137,7 +137,7 @@ export default function Orders() { initial={{ opacity: 0, y: 12 }} animate={{ opacity: 1, y: 0 }} transition={{ duration: 0.25, delay: 0.06 }} - style={{ opacity: loading ? 0.6 : 1, transition: 'opacity 0.2s', pointerEvents: loading ? 'none' : 'auto' }} + style={{ opacity: loading ? 0.6 : 1, transition: 'opacity 0.2s' }} >
diff --git a/src/admin/pages/Projects.tsx b/src/admin/pages/Projects.tsx index c0d5848..80caeef 100644 --- a/src/admin/pages/Projects.tsx +++ b/src/admin/pages/Projects.tsx @@ -143,7 +143,7 @@ export default function Projects() { initial={{ opacity: 0, y: 12 }} animate={{ opacity: 1, y: 0 }} transition={{ duration: 0.25, delay: 0.06 }} - style={{ opacity: loading ? 0.6 : 1, transition: 'opacity 0.2s', pointerEvents: loading ? 'none' : 'auto' }} + style={{ opacity: loading ? 0.6 : 1, transition: 'opacity 0.2s' }} >