Skip to content

Commit 3ef0bdd

Browse files
authored
Merge pull request #83450 from callstack-internal/JKobrynski/feat/80091-migrate-keys-to-ram-only-part-2
[Onyx Audit] Migrate keys to RAM-only part 2/2
2 parents ab54d2b + 2d0b623 commit 3ef0bdd

99 files changed

Lines changed: 256 additions & 209 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/DelegateAccessHandler.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ function DelegateAccessHandler() {
2222
const [stashedCredentials = CONST.EMPTY_OBJECT] = useOnyx(ONYXKEYS.STASHED_CREDENTIALS);
2323
const [stashedSession] = useOnyx(ONYXKEYS.STASHED_SESSION);
2424
const [hasLoadedApp] = useOnyx(ONYXKEYS.HAS_LOADED_APP);
25-
const [isLoadingApp] = useOnyx(ONYXKEYS.IS_LOADING_APP);
25+
const [isLoadingApp] = useOnyx(ONYXKEYS.RAM_ONLY_IS_LOADING_APP);
2626
const [sessionAccountID] = useOnyx(ONYXKEYS.SESSION, {selector: accountIDSelector});
2727
const [sessionEmail] = useOnyx(ONYXKEYS.SESSION, {selector: emailSelector});
2828
const {isOffline} = useNetwork();

src/ONYXKEYS.ts

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ const ONYXKEYS = {
3131
DEVICE_ID: 'deviceID',
3232

3333
/** Boolean flag set whenever the sidebar has loaded */
34-
IS_SIDEBAR_LOADED: 'isSidebarLoaded',
34+
RAM_ONLY_IS_SIDEBAR_LOADED: 'isSidebarLoaded',
3535

3636
/** Boolean flag set whenever we are searching for reports in the server */
3737
RAM_ONLY_IS_SEARCHING_FOR_REPORTS: 'isSearchingForReports',
@@ -210,7 +210,7 @@ const ONYXKEYS = {
210210
NVP_PREFERRED_LOCALE: 'nvp_preferredLocale',
211211

212212
/** Whether the app is currently loading a translation */
213-
ARE_TRANSLATIONS_LOADING: 'areTranslationsLoading',
213+
RAM_ONLY_ARE_TRANSLATIONS_LOADING: 'areTranslationsLoading',
214214

215215
/** Whether the user has tried focus mode yet */
216216
NVP_TRY_FOCUS_MODE: 'nvp_tryFocusMode',
@@ -373,13 +373,13 @@ const ONYXKEYS = {
373373
SHARE_BANK_ACCOUNT: 'shareBankAccount',
374374

375375
/** Is report data loading? */
376-
IS_LOADING_REPORT_DATA: 'isLoadingReportData',
376+
RAM_ONLY_IS_LOADING_REPORT_DATA: 'isLoadingReportData',
377377

378378
/** Set when we are loading bank accounts for share page */
379379
IS_LOADING_SHARE_BANK_ACCOUNTS: 'isLoadingShareBankAccounts',
380380

381381
/** Is report data loading? */
382-
IS_LOADING_APP: 'isLoadingApp',
382+
RAM_ONLY_IS_LOADING_APP: 'isLoadingApp',
383383

384384
/** Is loading policy rules preview? */
385385
IS_LOADING_POLICY_CODING_RULES_PREVIEW: 'isLoadingPolicyCodingRulesPreview',
@@ -538,7 +538,7 @@ const ONYXKEYS = {
538538
ASSIGN_CARD: 'assignCard',
539539

540540
/** Stores the information if mobile selection mode is active */
541-
MOBILE_SELECTION_MODE: 'mobileSelectionMode',
541+
RAM_ONLY_MOBILE_SELECTION_MODE: 'mobileSelectionMode',
542542

543543
NVP_PRIVATE_CANCELLATION_DETAILS: 'nvp_private_cancellationDetails',
544544

@@ -793,7 +793,7 @@ const ONYXKEYS = {
793793
NVP_EXPENSIFY_REPORT_PDF_FILENAME: 'nvp_expensify_report_PDFFilename_',
794794

795795
/** Stores the information about the state of issuing a new card */
796-
ISSUE_NEW_EXPENSIFY_CARD: 'issueNewExpensifyCard_',
796+
RAM_ONLY_ISSUE_NEW_EXPENSIFY_CARD: 'issueNewExpensifyCard_',
797797

798798
/** Used for identifying user as admin of a domain */
799799
SHARED_NVP_PRIVATE_ADMIN_ACCESS: 'sharedNVP_private_admin_access_',
@@ -1272,7 +1272,7 @@ type OnyxCollectionValuesMapping = {
12721272
[ONYXKEYS.COLLECTION.LAST_SELECTED_FEED]: OnyxTypes.CompanyCardFeedWithDomainID;
12731273
[ONYXKEYS.COLLECTION.LAST_SELECTED_EXPENSIFY_CARD_FEED]: OnyxTypes.FundID;
12741274
[ONYXKEYS.COLLECTION.NVP_EXPENSIFY_ON_CARD_WAITLIST]: OnyxTypes.CardOnWaitlist;
1275-
[ONYXKEYS.COLLECTION.ISSUE_NEW_EXPENSIFY_CARD]: OnyxTypes.IssueNewCard;
1275+
[ONYXKEYS.COLLECTION.RAM_ONLY_ISSUE_NEW_EXPENSIFY_CARD]: OnyxTypes.IssueNewCard;
12761276
[ONYXKEYS.COLLECTION.SHARED_NVP_PRIVATE_ADMIN_ACCESS]: boolean;
12771277
[ONYXKEYS.COLLECTION.SAML_METADATA]: OnyxTypes.SamlMetadata;
12781278
[ONYXKEYS.COLLECTION.DOMAIN_PENDING_ACTIONS]: OnyxTypes.DomainPendingActions;
@@ -1296,7 +1296,7 @@ type OnyxValuesMapping = {
12961296
[ONYXKEYS.RECENTLY_USED_CURRENCIES]: string[];
12971297
[ONYXKEYS.ACTIVE_CLIENTS]: string[];
12981298
[ONYXKEYS.DEVICE_ID]: string;
1299-
[ONYXKEYS.IS_SIDEBAR_LOADED]: boolean;
1299+
[ONYXKEYS.RAM_ONLY_IS_SIDEBAR_LOADED]: boolean;
13001300
[ONYXKEYS.PERSISTED_REQUESTS]: OnyxTypes.AnyRequest[];
13011301
[ONYXKEYS.PERSISTED_ONGOING_REQUESTS]: OnyxTypes.AnyRequest;
13021302
[ONYXKEYS.CURRENT_DATE]: string;
@@ -1363,7 +1363,7 @@ type OnyxValuesMapping = {
13631363
[ONYXKEYS.ONFIDO_TOKEN]: string;
13641364
[ONYXKEYS.ONFIDO_APPLICANT_ID]: string;
13651365
[ONYXKEYS.NVP_PREFERRED_LOCALE]: OnyxTypes.Locale;
1366-
[ONYXKEYS.ARE_TRANSLATIONS_LOADING]: boolean;
1366+
[ONYXKEYS.RAM_ONLY_ARE_TRANSLATIONS_LOADING]: boolean;
13671367
[ONYXKEYS.NVP_ACTIVE_POLICY_ID]: string;
13681368
[ONYXKEYS.NVP_DISMISSED_REFERRAL_BANNERS]: OnyxTypes.DismissedReferralBanners;
13691369
[ONYXKEYS.NVP_HAS_SEEN_TRACK_TRAINING]: boolean;
@@ -1395,12 +1395,12 @@ type OnyxValuesMapping = {
13951395
[ONYXKEYS.IS_LOADING_PAYMENT_METHODS]: boolean;
13961396
[ONYXKEYS.IS_LOADING_SHARE_BANK_ACCOUNTS]: boolean;
13971397
[ONYXKEYS.IS_LOADING_POLICY_CODING_RULES_PREVIEW]: boolean;
1398+
[ONYXKEYS.RAM_ONLY_IS_LOADING_REPORT_DATA]: boolean;
13981399
[ONYXKEYS.IS_SEARCH_FILTERS_CARD_DATA_LOADED]: boolean;
13991400
[ONYXKEYS.IS_LOADING_SUBSCRIPTION_DATA]: boolean;
14001401
[ONYXKEYS.IS_SEARCH_PAGE_DATA_LOADED]: boolean;
1401-
[ONYXKEYS.IS_LOADING_REPORT_DATA]: boolean;
14021402
[ONYXKEYS.IS_TEST_TOOLS_MODAL_OPEN]: boolean;
1403-
[ONYXKEYS.IS_LOADING_APP]: boolean;
1403+
[ONYXKEYS.RAM_ONLY_IS_LOADING_APP]: boolean;
14041404
[ONYXKEYS.HAS_LOADED_APP]: boolean;
14051405
[ONYXKEYS.WALLET_TRANSFER]: OnyxTypes.WalletTransfer;
14061406
[ONYXKEYS.LAST_ACCESSED_WORKSPACE_POLICY_ID]: string;
@@ -1448,7 +1448,7 @@ type OnyxValuesMapping = {
14481448
[ONYXKEYS.ADD_NEW_COMPANY_CARD]: OnyxTypes.AddNewCompanyCardFeed;
14491449
[ONYXKEYS.ADD_NEW_PERSONAL_CARD]: OnyxTypes.AddNewPersonalCard;
14501450
[ONYXKEYS.ASSIGN_CARD]: OnyxTypes.AssignCard;
1451-
[ONYXKEYS.MOBILE_SELECTION_MODE]: boolean;
1451+
[ONYXKEYS.RAM_ONLY_MOBILE_SELECTION_MODE]: boolean;
14521452
[ONYXKEYS.DUPLICATE_WORKSPACE]: OnyxTypes.DuplicateWorkspace;
14531453
[ONYXKEYS.NVP_FIRST_DAY_FREE_TRIAL]: string;
14541454
[ONYXKEYS.NVP_LAST_DAY_FREE_TRIAL]: string;

src/components/AddPlaidBankAccount.tsx

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -83,19 +83,20 @@ function AddPlaidBankAccount({
8383
const subscribedKeyboardShortcuts = useRef<Array<() => void>>([]);
8484
const previousNetworkState = useRef<boolean | undefined>(undefined);
8585
const [selectedPlaidAccountMask, setSelectedPlaidAccountMask] = useState(defaultSelectedPlaidAccountMask);
86-
const [plaidLinkToken] = useOnyx(ONYXKEYS.PLAID_LINK_TOKEN, {initWithStoredValues: false});
86+
const [plaidLinkToken] = useOnyx(ONYXKEYS.PLAID_LINK_TOKEN);
87+
const [isPlaidTokenReady, setIsPlaidTokenReady] = useState(false);
8788
const [isPlaidDisabled] = useOnyx(ONYXKEYS.IS_PLAID_DISABLED);
8889
const {translate} = useLocalize();
8990
const {isOffline} = useNetwork();
9091

9192
const getPlaidLinkToken = (): string | undefined => {
92-
if (plaidLinkToken) {
93-
return plaidLinkToken;
94-
}
95-
9693
if (receivedRedirectURI && plaidLinkOAuthToken) {
9794
return plaidLinkOAuthToken;
9895
}
96+
97+
if (isPlaidTokenReady && plaidLinkToken) {
98+
return plaidLinkToken;
99+
}
99100
};
100101

101102
/**
@@ -140,9 +141,11 @@ function AddPlaidBankAccount({
140141

141142
// If we're coming from Plaid OAuth flow then we need to reuse the existing plaidLinkToken
142143
if (isAuthenticatedWithPlaid()) {
144+
setIsPlaidTokenReady(true);
143145
return unsubscribeToNavigationShortcuts;
144146
}
145147
openPlaidBankLogin(allowDebit, bankAccountID);
148+
setIsPlaidTokenReady(true);
146149
return unsubscribeToNavigationShortcuts;
147150

148151
// disabling this rule, as we want this to run only on the first render

src/components/LocaleContextProvider.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ const COLLATOR_OPTIONS: Intl.CollatorOptions = {usage: 'sort', sensitivity: 'var
8585

8686
function LocaleContextProvider({children}: LocaleContextProviderProps) {
8787
const currentUserPersonalDetails = useCurrentUserPersonalDetails();
88-
const [areTranslationsLoading = true] = useOnyx(ONYXKEYS.ARE_TRANSLATIONS_LOADING, {initWithStoredValues: false});
88+
const [areTranslationsLoading = true] = useOnyx(ONYXKEYS.RAM_ONLY_ARE_TRANSLATIONS_LOADING);
8989
const [countryCodeByIP = 1] = useOnyx(ONYXKEYS.COUNTRY_CODE);
9090
const [nvpPreferredLocale, nvpPreferredLocaleMetadata] = useOnyx(ONYXKEYS.NVP_PREFERRED_LOCALE);
9191
const [currentLocale, setCurrentLocale] = useState<Locale | undefined>(() => IntlStore.getCurrentLocale());

src/components/MoneyRequestReportView/MoneyRequestReportView.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ function MoneyRequestReportView({report, policy, reportMetadata, shouldDisplayRe
116116
const {isSmallScreenWidth} = useResponsiveLayout();
117117

118118
const reportID = report?.reportID;
119-
const [isLoadingApp] = useOnyx(ONYXKEYS.IS_LOADING_APP);
119+
const [isLoadingApp] = useOnyx(ONYXKEYS.RAM_ONLY_IS_LOADING_APP);
120120
const {reportPendingAction, reportErrors} = getReportOfflinePendingActionAndErrors(report);
121121
const [chatReport] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${getNonEmptyStringOnyxID(report?.chatReportID)}`);
122122

src/components/PriorityModeController.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ const isInFocusModeSelector = (priorityMode: OnyxEntry<ValueOf<typeof CONST.PRIO
3030
export default function PriorityModeController() {
3131
const {orderedReportIDs} = useSidebarOrderedReportsState();
3232
const lhnReportCount = orderedReportIDs.length;
33-
const [isLoadingReportData] = useOnyx(ONYXKEYS.IS_LOADING_REPORT_DATA);
33+
const [isLoadingReportData] = useOnyx(ONYXKEYS.RAM_ONLY_IS_LOADING_REPORT_DATA);
3434
const [isInFocusMode, isInFocusModeMetadata] = useOnyx(ONYXKEYS.NVP_PRIORITY_MODE, {selector: isInFocusModeSelector});
3535
const [hasTriedFocusMode, hasTriedFocusModeMetadata] = useOnyx(ONYXKEYS.NVP_TRY_FOCUS_MODE);
3636
const currentRouteName = useCurrentRouteName();

src/components/ProductTrainingContext/index.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ const ProductTrainingContext = createContext<ProductTrainingContextType>({
4949
});
5050

5151
function ProductTrainingContextProvider({children}: ChildrenProps) {
52-
const [isLoadingApp = true] = useOnyx(ONYXKEYS.IS_LOADING_APP);
52+
const [isLoadingApp = true] = useOnyx(ONYXKEYS.RAM_ONLY_IS_LOADING_APP);
5353
const [tryNewDot] = useOnyx(ONYXKEYS.NVP_TRY_NEW_DOT);
5454
const hasBeenAddedToNudgeMigration = !!tryNewDot?.nudgeMigration?.timestamp;
5555
const [isOnboardingCompleted = true, isOnboardingCompletedMetadata] = useOnyx(ONYXKEYS.NVP_ONBOARDING, {

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ function TransactionGroupListExpanded<TItem extends ListItem>({
6060
const {windowWidth} = useWindowDimensions();
6161
const currentUserDetails = useCurrentUserPersonalDetails();
6262
const {translate} = useLocalize();
63-
const [isMobileSelectionModeEnabled] = useOnyx(ONYXKEYS.MOBILE_SELECTION_MODE);
63+
const [isMobileSelectionModeEnabled] = useOnyx(ONYXKEYS.RAM_ONLY_MOBILE_SELECTION_MODE);
6464
const [introSelected] = useOnyx(ONYXKEYS.NVP_INTRO_SELECTED);
6565
const [betas] = useOnyx(ONYXKEYS.BETAS);
6666
const [visibleColumns] = useOnyx(ONYXKEYS.FORMS.SEARCH_ADVANCED_FILTERS_FORM, {selector: columnsSelector});

src/hooks/useMobileSelectionMode.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ import useOnyx from './useOnyx';
55
import usePrevious from './usePrevious';
66

77
export default function useMobileSelectionMode(onTurnOffSelectionMode = () => {}) {
8-
const [isSelectionModeEnabled = false] = useOnyx(ONYXKEYS.MOBILE_SELECTION_MODE, {initWithStoredValues: false});
8+
const [isSelectionModeEnabled = false] = useOnyx(ONYXKEYS.RAM_ONLY_MOBILE_SELECTION_MODE);
99
const initialSelectionModeValueRef = useRef(isSelectionModeEnabled);
1010
const prevIsSelectionModeEnabled = usePrevious(isSelectionModeEnabled);
1111

src/hooks/useOnboardingFlow.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ import useOnyx from './useOnyx';
1919
*/
2020
function useOnboardingFlowRouter() {
2121
const currentUrl = getCurrentUrl();
22-
const [isLoadingApp = true] = useOnyx(ONYXKEYS.IS_LOADING_APP);
22+
const [isLoadingApp = true] = useOnyx(ONYXKEYS.RAM_ONLY_IS_LOADING_APP);
2323
const [onboardingValues, isOnboardingCompletedMetadata] = useOnyx(ONYXKEYS.NVP_ONBOARDING);
2424
const [sessionEmail] = useOnyx(ONYXKEYS.SESSION, {selector: emailSelector});
2525
const isLoggingInAsNewSessionUser = isLoggingInAsNewUser(currentUrl, sessionEmail);

0 commit comments

Comments
 (0)