@@ -219,7 +219,7 @@ function WorkspaceMemberDetailsPage({personalDetails, policy, route}: WorkspaceM
219
219
return < NotFoundPage /> ;
220
220
}
221
221
222
- const shouldShowCardsSection = ( ! ! policy ?. areExpensifyCardsEnabled && ! ! paymentAccountID ) ?? ( ! ! policy ?. areCompanyCardsEnabled && hasMultipleFeeds ) ;
222
+ const shouldShowCardsSection = ( ! ! policy ?. areExpensifyCardsEnabled && ! ! paymentAccountID ) || ( ! ! policy ?. areCompanyCardsEnabled && hasMultipleFeeds ) ;
223
223
224
224
return (
225
225
< AccessOrNotFoundWrapper
@@ -315,25 +315,38 @@ function WorkspaceMemberDetailsPage({personalDetails, policy, route}: WorkspaceM
315
315
{ translate ( 'walletPage.assignedCards' ) }
316
316
</ Text >
317
317
</ View >
318
- { ( memberCards as MemberCard [ ] ) . map ( ( memberCard ) => (
319
- < MenuItem
320
- key = { memberCard . cardID }
321
- title = { memberCard . nameValuePairs ?. cardTitle ?? memberCard ?. cardName }
322
- badgeText = {
323
- memberCard . bank === CONST . EXPENSIFY_CARD . BANK
324
- ? CurrencyUtils . convertToDisplayString ( memberCard . nameValuePairs ?. unapprovedExpenseLimit )
325
- : ''
326
- }
327
- icon = { CardUtils . getCardFeedIcon ( memberCard . bank as CompanyCardFeed ) }
328
- displayInDefaultIconColor
329
- iconStyles = { styles . cardIcon }
330
- contentFit = "contain"
331
- iconWidth = { variables . iconSizeExtraLarge }
332
- iconHeight = { variables . iconSizeExtraLarge }
333
- onPress = { ( ) => navigateToDetails ( memberCard ) }
334
- shouldShowRightIcon
335
- />
336
- ) ) }
318
+ { ( memberCards as MemberCard [ ] ) . map ( ( memberCard ) => {
319
+ const isCardDeleted = memberCard . pendingAction === CONST . RED_BRICK_ROAD_PENDING_ACTION . DELETE ;
320
+ return (
321
+ < OfflineWithFeedback
322
+ key = { `${ memberCard . nameValuePairs ?. cardTitle } _${ memberCard . cardID } ` }
323
+ errorRowStyles = { styles . ph5 }
324
+ errors = { memberCard . errors }
325
+ pendingAction = { memberCard . pendingAction }
326
+ >
327
+ < MenuItem
328
+ key = { memberCard . cardID }
329
+ title = { memberCard . nameValuePairs ?. cardTitle ?? memberCard ?. cardName }
330
+ badgeText = {
331
+ memberCard . bank === CONST . EXPENSIFY_CARD . BANK
332
+ ? CurrencyUtils . convertToDisplayString ( memberCard . nameValuePairs ?. unapprovedExpenseLimit )
333
+ : ''
334
+ }
335
+ icon = { CardUtils . getCardFeedIcon ( memberCard . bank as CompanyCardFeed ) }
336
+ displayInDefaultIconColor
337
+ iconStyles = { styles . cardIcon }
338
+ contentFit = "contain"
339
+ iconWidth = { variables . iconSizeExtraLarge }
340
+ iconHeight = { variables . iconSizeExtraLarge }
341
+ onPress = { ( ) => navigateToDetails ( memberCard ) }
342
+ shouldRemoveHoverBackground = { isCardDeleted }
343
+ disabled = { isCardDeleted }
344
+ shouldShowRightIcon = { ! isCardDeleted }
345
+ style = { [ isCardDeleted ? styles . offlineFeedback . deleted : { } ] }
346
+ />
347
+ </ OfflineWithFeedback >
348
+ ) ;
349
+ } ) }
337
350
< MenuItem
338
351
title = { translate ( 'workspace.expensifyCard.newCard' ) }
339
352
icon = { Expensicons . Plus }
0 commit comments