Skip to content

Commit 0afbe9c

Browse files
authored
Merge pull request Expensify#81485 from NJ-2020/fix/81080
fix: company cards page (skeleton loader + error state)
2 parents 4c3e83e + 8f4f127 commit 0afbe9c

2 files changed

Lines changed: 8 additions & 5 deletions

File tree

src/pages/workspace/companyCards/WorkspaceCompanyCardsPage.tsx

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -75,12 +75,12 @@ function WorkspaceCompanyCardsPage({route}: WorkspaceCompanyCardsPageProps) {
7575
}, [loadPolicyCompanyCardsPage, isOffline]);
7676

7777
const loadPolicyCompanyCardsFeed = useCallback(() => {
78-
if (isLoading || !bankName || isFeedPending) {
78+
if (isLoading || !bankName || isFeedPending || isOffline) {
7979
return;
8080
}
8181

8282
openPolicyCompanyCardsFeed(domainOrWorkspaceAccountID, policyID, bankName, translate);
83-
}, [bankName, domainOrWorkspaceAccountID, isFeedPending, isLoading, policyID, translate]);
83+
}, [bankName, domainOrWorkspaceAccountID, isFeedPending, isLoading, policyID, translate, isOffline]);
8484

8585
useEffect(() => {
8686
loadPolicyCompanyCardsFeed();

src/pages/workspace/companyCards/WorkspaceCompanyCardsTable/index.tsx

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -115,9 +115,12 @@ function WorkspaceCompanyCardsTable({
115115
feedErrorReloadAction = onReloadFeed;
116116
}
117117

118-
const isLoadingFeed = (!feedName && isInitiallyLoadingFeeds) || !isPolicyLoaded || isLoadingOnyxValue(lastSelectedFeedMetadata) || !!selectedFeedStatus?.isLoading;
119-
const isLoadingCards = (companyCardEntries ?? []).length === 0 ? isLoadingOnyxValue(cardListMetadata) : false;
120-
const isLoadingPage = !isOffline && (isLoadingFeed || isLoadingOnyxValue(personalDetailsMetadata) || areWorkspaceCardFeedsLoading);
118+
// If we already have fetched cards, then do not show skeleton loader (let the remaining updates refresh in the background), else show it
119+
const hasCards = (companyCardEntries ?? []).length > 0;
120+
const isLoadingFeed = !hasCards && ((!feedName && isInitiallyLoadingFeeds) || !isPolicyLoaded || isLoadingOnyxValue(lastSelectedFeedMetadata) || !!selectedFeedStatus?.isLoading);
121+
const isLoadingCards = !hasCards ? isLoadingOnyxValue(cardListMetadata) : false;
122+
const isLoadingPage = !isOffline && !hasCards && (isLoadingFeed || isLoadingOnyxValue(personalDetailsMetadata) || areWorkspaceCardFeedsLoading);
123+
121124
const isLoading = isLoadingPage || isLoadingFeed;
122125

123126
const showCards = !isInitiallyLoadingFeeds && !isFeedPending && !isNoFeed && !isLoading && !hasFeedErrors;

0 commit comments

Comments
 (0)