Skip to content

Commit e9a410f

Browse files
authored
Merge pull request Expensify#88591 from callstack-internal/perf-send-message-phase-10
refactor: PureReportActionItem, ReimbursementQueuedContent
2 parents 0ace261 + 473da33 commit e9a410f

15 files changed

Lines changed: 279 additions & 187 deletions

src/components/MoneyRequestReportView/MoneyRequestReportActionsList.tsx

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
11
/* eslint-disable rulesdir/prefer-early-return */
22
import {useIsFocused, useRoute} from '@react-navigation/native';
3-
import {isUserValidatedSelector} from '@selectors/Account';
4-
import {tierNameSelector} from '@selectors/UserWallet';
53
import isEmpty from 'lodash/isEmpty';
64
import React, {useCallback, useContext, useEffect, useLayoutEffect, useMemo, useRef, useState} from 'react';
75
import type {LayoutChangeEvent, ListRenderItemInfo, NativeScrollEvent, NativeSyntheticEvent} from 'react-native';
@@ -127,12 +125,6 @@ function MoneyRequestReportActionsList({onLayout}: MoneyRequestReportListProps)
127125

128126
const parentReportAction = useParentReportAction(report);
129127

130-
const [userWalletTierName] = useOnyx(ONYXKEYS.USER_WALLET, {
131-
selector: tierNameSelector,
132-
});
133-
const [isUserValidated] = useOnyx(ONYXKEYS.ACCOUNT, {
134-
selector: isUserValidatedSelector,
135-
});
136128
const [userBillingFundID] = useOnyx(ONYXKEYS.NVP_BILLING_FUND_ID);
137129
const personalDetails = usePersonalDetails();
138130
const [tryNewDot] = useOnyx(ONYXKEYS.NVP_TRY_NEW_DOT);
@@ -586,8 +578,6 @@ function MoneyRequestReportActionsList({onLayout}: MoneyRequestReportListProps)
586578
isFirstVisibleReportAction={firstVisibleReportActionID === reportAction.reportActionID}
587579
shouldHideThreadDividerLine
588580
linkedReportActionID={linkedReportActionID}
589-
userWalletTierName={userWalletTierName}
590-
isUserValidated={isUserValidated}
591581
personalDetails={personalDetails}
592582
userBillingFundID={userBillingFundID}
593583
originalReportID={originalReportID}
@@ -608,8 +598,6 @@ function MoneyRequestReportActionsList({onLayout}: MoneyRequestReportListProps)
608598
unreadMarkerReportActionID,
609599
firstVisibleReportActionID,
610600
linkedReportActionID,
611-
userWalletTierName,
612-
isUserValidated,
613601
personalDetails,
614602
userBillingFundID,
615603
isTryNewDotNVPDismissed,

src/components/Search/SearchList/ListItem/ChatListItem.tsx

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,6 @@ function ChatListItem<TItem extends ListItem>({
2222
onFocus,
2323
onLongPressRow,
2424
shouldSyncFocus,
25-
userWalletTierName,
26-
isUserValidated,
2725
personalDetails,
2826
userBillingFundID,
2927
}: ChatListItemProps<TItem>) {
@@ -84,8 +82,6 @@ function ChatListItem<TItem extends ListItem>({
8482
shouldDisplayContextMenu={false}
8583
shouldShowDraftMessage={false}
8684
shouldShowBorder
87-
userWalletTierName={userWalletTierName}
88-
isUserValidated={isUserValidated}
8985
personalDetails={personalDetails}
9086
userBillingFundID={userBillingFundID}
9187
/>

src/components/Search/SearchList/ListItem/types.ts

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -53,12 +53,6 @@ type ChatListItemProps<TItem extends ListItem> = ListItemProps<TItem> & {
5353
/** The report data */
5454
report?: Report;
5555

56-
/** The user wallet tierName */
57-
userWalletTierName: string | undefined;
58-
59-
/** Whether the user is validated */
60-
isUserValidated: boolean | undefined;
61-
6256
/** Personal details list */
6357
personalDetails: OnyxEntry<PersonalDetailsList>;
6458

src/components/Search/SearchList/index.tsx

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
11
import {useFocusEffect, useRoute} from '@react-navigation/native';
2-
import {isUserValidatedSelector} from '@selectors/Account';
3-
import {tierNameSelector} from '@selectors/UserWallet';
42
import type {FlashListProps, FlashListRef, ViewToken} from '@shopify/flash-list';
53
import React, {useCallback, useContext, useImperativeHandle, useLayoutEffect, useMemo, useRef, useState} from 'react';
64
import type {ForwardedRef} from 'react';
@@ -305,8 +303,6 @@ function SearchList({
305303
const hasItemsBeingRemoved = prevDataLength && prevDataLength > data.length;
306304
const personalDetails = usePersonalDetails();
307305

308-
const [userWalletTierName] = useOnyx(ONYXKEYS.USER_WALLET, {selector: tierNameSelector});
309-
const [isUserValidated] = useOnyx(ONYXKEYS.ACCOUNT, {selector: isUserValidatedSelector});
310306
const [userBillingFundID] = useOnyx(ONYXKEYS.NVP_BILLING_FUND_ID);
311307
const [lastPaymentMethod] = useOnyx(ONYXKEYS.NVP_LAST_PAYMENT_METHOD);
312308
const [personalPolicyID] = useOnyx(ONYXKEYS.PERSONAL_POLICY_ID);
@@ -462,8 +458,6 @@ function SearchList({
462458
personalPolicyID={personalPolicyID}
463459
userBillingGracePeriodEnds={userBillingGracePeriodEnds}
464460
ownerBillingGracePeriodEnd={ownerBillingGracePeriodEnd}
465-
userWalletTierName={userWalletTierName}
466-
isUserValidated={isUserValidated}
467461
personalDetails={personalDetails}
468462
userBillingFundID={userBillingFundID}
469463
isOffline={isOffline}
@@ -496,8 +490,6 @@ function SearchList({
496490
hash,
497491
columns,
498492
policies,
499-
userWalletTierName,
500-
isUserValidated,
501493
personalDetails,
502494
userBillingFundID,
503495
isOffline,

src/pages/Debug/ReportAction/DebugReportActionCreatePage.tsx

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import {isUserValidatedSelector} from '@selectors/Account';
2-
import {tierNameSelector} from '@selectors/UserWallet';
31
import React, {useCallback, useState} from 'react';
42
import {View} from 'react-native';
53
import type {OnyxEntry} from 'react-native-onyx';
@@ -50,8 +48,6 @@ function DebugReportActionCreatePage({
5048
const styles = useThemeStyles();
5149
const [session] = useOnyx(ONYXKEYS.SESSION);
5250
const [personalDetailsList] = useOnyx(ONYXKEYS.PERSONAL_DETAILS_LIST);
53-
const [userWalletTierName] = useOnyx(ONYXKEYS.USER_WALLET, {selector: tierNameSelector});
54-
const [isUserValidated] = useOnyx(ONYXKEYS.ACCOUNT, {selector: isUserValidatedSelector});
5551
const [draftReportAction, setDraftReportAction] = useState<string>(() => getInitialReportAction(reportID, session, personalDetailsList));
5652
const [userBillingFundID] = useOnyx(ONYXKEYS.NVP_BILLING_FUND_ID);
5753
const [tryNewDot] = useOnyx(ONYXKEYS.NVP_TRY_NEW_DOT);
@@ -122,8 +118,6 @@ function DebugReportActionCreatePage({
122118
index={0}
123119
isFirstVisibleReportAction={false}
124120
shouldDisplayContextMenu={false}
125-
userWalletTierName={userWalletTierName}
126-
isUserValidated={isUserValidated}
127121
personalDetails={personalDetailsList}
128122
userBillingFundID={userBillingFundID}
129123
isTryNewDotNVPDismissed={isTryNewDotNVPDismissed}

src/pages/Debug/ReportAction/DebugReportActionPreview.tsx

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import {isUserValidatedSelector} from '@selectors/Account';
2-
import {tierNameSelector} from '@selectors/UserWallet';
31
import React from 'react';
42
import type {OnyxEntry} from 'react-native-onyx';
53
import {usePersonalDetails} from '@components/OnyxListItemProvider';
@@ -18,8 +16,6 @@ type DebugReportActionPreviewProps = {
1816
};
1917

2018
function DebugReportActionPreview({reportAction, reportID}: DebugReportActionPreviewProps) {
21-
const [userWalletTierName] = useOnyx(ONYXKEYS.USER_WALLET, {selector: tierNameSelector});
22-
const [isUserValidated] = useOnyx(ONYXKEYS.ACCOUNT, {selector: isUserValidatedSelector});
2319
const personalDetails = usePersonalDetails();
2420
const [userBillingFundID] = useOnyx(ONYXKEYS.NVP_BILLING_FUND_ID);
2521
const [report] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${reportID}`);
@@ -37,8 +33,6 @@ function DebugReportActionPreview({reportAction, reportID}: DebugReportActionPre
3733
index={0}
3834
isFirstVisibleReportAction={false}
3935
shouldDisplayContextMenu={false}
40-
userWalletTierName={userWalletTierName}
41-
isUserValidated={isUserValidated}
4236
personalDetails={personalDetails}
4337
userBillingFundID={userBillingFundID}
4438
isTryNewDotNVPDismissed={isTryNewDotNVPDismissed}

src/pages/TransactionDuplicate/DuplicateTransactionItem.tsx

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
import {isUserValidatedSelector} from '@selectors/Account';
2-
import {tierNameSelector} from '@selectors/UserWallet';
31
import React, {useMemo} from 'react';
42
import {View} from 'react-native';
53
import type {OnyxEntry} from 'react-native-onyx';
@@ -25,8 +23,6 @@ const linkedTransactionRouteErrorSelector = (transaction: OnyxEntry<Transaction>
2523

2624
function DuplicateTransactionItem({transaction, index, onPreviewPressed}: DuplicateTransactionItemProps) {
2725
const styles = useThemeStyles();
28-
const [userWalletTierName] = useOnyx(ONYXKEYS.USER_WALLET, {selector: tierNameSelector});
29-
const [isUserValidated] = useOnyx(ONYXKEYS.ACCOUNT, {selector: isUserValidatedSelector});
3026
const personalDetails = usePersonalDetails();
3127

3228
const [userBillingFundID] = useOnyx(ONYXKEYS.NVP_BILLING_FUND_ID);
@@ -75,8 +71,6 @@ function DuplicateTransactionItem({transaction, index, onPreviewPressed}: Duplic
7571
shouldDisplayNewMarker={false}
7672
isFirstVisibleReportAction={false}
7773
shouldDisplayContextMenu={false}
78-
userWalletTierName={userWalletTierName}
79-
isUserValidated={isUserValidated}
8074
personalDetails={personalDetails}
8175
draftMessage={matchingDraftMessage}
8276
linkedTransactionRouteError={linkedTransactionRouteError}

0 commit comments

Comments
 (0)