From 46496079962b16f1c66f4591e30b0afa60e067e6 Mon Sep 17 00:00:00 2001 From: Miguel Lezama Date: Sat, 4 Oct 2025 15:32:33 +0300 Subject: [PATCH] Forms: Fix loading state to show spinner immediately Prevents empty state flash by showing loading spinner when data hasn't resolved yet. Related: https://github.com/Automattic/jetpack/pull/45339 --- .../packages/forms/changelog/optimize-inbox-loading-state | 4 ++++ .../packages/forms/src/dashboard/hooks/use-inbox-data.ts | 6 ++++-- 2 files changed, 8 insertions(+), 2 deletions(-) create mode 100644 projects/packages/forms/changelog/optimize-inbox-loading-state diff --git a/projects/packages/forms/changelog/optimize-inbox-loading-state b/projects/packages/forms/changelog/optimize-inbox-loading-state new file mode 100644 index 0000000000000..e4435bc9b61dd --- /dev/null +++ b/projects/packages/forms/changelog/optimize-inbox-loading-state @@ -0,0 +1,4 @@ +Significance: patch +Type: changed + +Forms: improve loading state to show spinner immediately when data hasn't loaded. diff --git a/projects/packages/forms/src/dashboard/hooks/use-inbox-data.ts b/projects/packages/forms/src/dashboard/hooks/use-inbox-data.ts index 4e821d57204bc..6d85c5636ee36 100644 --- a/projects/packages/forms/src/dashboard/hooks/use-inbox-data.ts +++ b/projects/packages/forms/src/dashboard/hooks/use-inbox-data.ts @@ -82,7 +82,7 @@ export default function useInboxData(): UseInboxDataReturn { const { records: rawRecords, - isResolving: isLoadingRecordsData, + hasResolved, totalItems, totalPages, } = useEntityRecords( 'postType', 'feedback', { @@ -131,12 +131,14 @@ export default function useInboxData(): UseInboxDataReturn { [ countsQueryParams ] ); + const isLoadingData = ! rawRecords?.length && ! hasResolved; + return { totalItemsInbox, totalItemsSpam, totalItemsTrash, records, - isLoadingData: isLoadingRecordsData, + isLoadingData, totalItems, totalPages, selectedResponsesCount,