diff --git a/src/components/FullscreenLoadingIndicator.tsx b/src/components/FullscreenLoadingIndicator.tsx index 96c01ce13efc..34063f4d74f7 100644 --- a/src/components/FullscreenLoadingIndicator.tsx +++ b/src/components/FullscreenLoadingIndicator.tsx @@ -24,7 +24,7 @@ type FullScreenLoadingIndicatorProps = { /** Size of the icon */ iconSize?: FullScreenLoadingIndicatorIconSize; - /** Whether the "Go Back" button appears after a timeout. */ + /** Whether the "Go Back" button appears after a timeout. Defaults to true, pass false on screens where going back is dead or harmful (e.g. cold deep-link auth/transition screens). */ shouldUseGoBackButton?: boolean; /** The ID of the test to be used for testing */ @@ -37,7 +37,7 @@ type FullScreenLoadingIndicatorProps = { function FullScreenLoadingIndicator({ style, iconSize = CONST.ACTIVITY_INDICATOR_SIZE.LARGE, - shouldUseGoBackButton = false, + shouldUseGoBackButton = true, testID = '', extraLoadingContext, }: FullScreenLoadingIndicatorProps) { diff --git a/src/libs/Navigation/AppNavigator/DelegatorConnectGate.tsx b/src/libs/Navigation/AppNavigator/DelegatorConnectGate.tsx index 3ec92b9d6975..178b1327794a 100644 --- a/src/libs/Navigation/AppNavigator/DelegatorConnectGate.tsx +++ b/src/libs/Navigation/AppNavigator/DelegatorConnectGate.tsx @@ -63,7 +63,8 @@ function DelegatorConnectGuard({children}: {children: React.ReactNode}) { } return ( - }> + // No "Go Back" button: this gate runs on a cold delegate connect, so there is usually no history to pop back to. + }> {children} ); diff --git a/src/pages/AvatarCropPage.tsx b/src/pages/AvatarCropPage.tsx index 94812d173e27..e56a0389221d 100644 --- a/src/pages/AvatarCropPage.tsx +++ b/src/pages/AvatarCropPage.tsx @@ -42,7 +42,7 @@ function AvatarCropPage() { ); if (isLoadingDraft || !draft?.uri) { - return ; + return ; } const onSave = (image: File | CustomRNImageManipulatorResult) => { diff --git a/src/pages/LogInWithShortLivedAuthTokenPage.tsx b/src/pages/LogInWithShortLivedAuthTokenPage.tsx index 0cea23a6ff87..34a2a53e8b36 100644 --- a/src/pages/LogInWithShortLivedAuthTokenPage.tsx +++ b/src/pages/LogInWithShortLivedAuthTokenPage.tsx @@ -78,7 +78,8 @@ function LogInWithShortLivedAuthTokenPage({route}: LogInWithShortLivedAuthTokenP }, [route]); if (account?.isLoading) { - return ; + // No "Go Back" button: this is a deep-link entry point, so there is usually no history to pop back to. + return ; } return ; diff --git a/src/pages/LogOutPreviousUserPage.tsx b/src/pages/LogOutPreviousUserPage.tsx index 42b560a4fb33..379c802784d5 100644 --- a/src/pages/LogOutPreviousUserPage.tsx +++ b/src/pages/LogOutPreviousUserPage.tsx @@ -94,7 +94,8 @@ function LogOutPreviousUserPage({route}: LogOutPreviousUserPageProps) { // eslint-disable-next-line react-hooks/exhaustive-deps }, [initialURL, isAccountLoading]); - return ; + // No "Go Back" button: going back would pop /transition into the outgoing user's session mid sign-out. + return ; } export default LogOutPreviousUserPage; diff --git a/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx b/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx index b4e636d23299..d2c2cf569ea1 100644 --- a/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx +++ b/src/pages/ReimbursementAccount/EnterSignerInfo/index.tsx @@ -111,7 +111,7 @@ function EnterSignerInfo({route}: EnterSignerInfoProps) { }, [isEditing, moveTo, pageIndex, prevPage]); if (isRedirecting) { - return ; + return ; } return ( diff --git a/src/pages/Search/SearchChangeApproverPage.tsx b/src/pages/Search/SearchChangeApproverPage.tsx index 6d1905bfbf85..427127989dd7 100644 --- a/src/pages/Search/SearchChangeApproverPage.tsx +++ b/src/pages/Search/SearchChangeApproverPage.tsx @@ -280,7 +280,7 @@ function SearchChangeApproverPage() { ); if (!isOffline && isLoadingBulkChangeApproverPage) { - return ; + return ; } return ( diff --git a/src/pages/UnlinkLoginPage.tsx b/src/pages/UnlinkLoginPage.tsx index 370f973f0a60..e5c40aea34b3 100644 --- a/src/pages/UnlinkLoginPage.tsx +++ b/src/pages/UnlinkLoginPage.tsx @@ -62,7 +62,8 @@ function UnlinkLoginPage({route}: UnlinkLoginPageProps) { }; }, [prevIsLoading, account?.isLoading]); - return ; + // No "Go Back" button: this is a deep-link entry point, so there is usually no history to pop back to. + return ; } export default UnlinkLoginPage; diff --git a/src/pages/ValidateLoginPage/index.tsx b/src/pages/ValidateLoginPage/index.tsx index 765c10ec2023..d13cceed2581 100644 --- a/src/pages/ValidateLoginPage/index.tsx +++ b/src/pages/ValidateLoginPage/index.tsx @@ -49,7 +49,8 @@ function ValidateLoginPage({ }); }, [session?.autoAuthState]); - return ; + // No "Go Back" button: this is a deep-link entry point, so there is usually no history to pop back to. + return ; } export default ValidateLoginPage; diff --git a/src/pages/ValidateLoginPage/index.web.tsx b/src/pages/ValidateLoginPage/index.web.tsx index d3db76113b9b..f553d79f0288 100644 --- a/src/pages/ValidateLoginPage/index.web.tsx +++ b/src/pages/ValidateLoginPage/index.web.tsx @@ -177,7 +177,11 @@ function ValidateLoginPage({ /> )} {((!effectiveAutoAuthState ? shouldStartSignInWithValidateCode : autoAuthStateWithDefault === CONST.AUTO_AUTH_STATE.SIGNING_IN) || isCompletingDirectSignIn) && ( - + )} ); diff --git a/src/pages/inbox/report/withReportOrNotFound.tsx b/src/pages/inbox/report/withReportOrNotFound.tsx index 474c52a4114a..f2e6d6e6e433 100644 --- a/src/pages/inbox/report/withReportOrNotFound.tsx +++ b/src/pages/inbox/report/withReportOrNotFound.tsx @@ -140,7 +140,7 @@ export default function (shouldRequireReportID = true): ; + return ; } if (shouldShowNotFoundPage) { diff --git a/src/pages/iou/request/step/IOURequestStepConfirmation.tsx b/src/pages/iou/request/step/IOURequestStepConfirmation.tsx index 0d0f5a75b9e6..4f2e647f9e2c 100644 --- a/src/pages/iou/request/step/IOURequestStepConfirmation.tsx +++ b/src/pages/iou/request/step/IOURequestStepConfirmation.tsx @@ -840,7 +840,7 @@ function IOURequestStepConfirmation({ ) : ( - + ); } diff --git a/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx b/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx index 39e6c6235211..268f4e6925ac 100644 --- a/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx +++ b/src/pages/iou/request/step/withFullTransactionOrNotFound.tsx @@ -118,7 +118,7 @@ function WithFullTransactionOrNotFoundImpl ) : ( - + ); } return ( diff --git a/src/pages/settings/Agents/AddAgentPage.tsx b/src/pages/settings/Agents/AddAgentPage.tsx index ffb869f343f4..be4a32c6e077 100644 --- a/src/pages/settings/Agents/AddAgentPage.tsx +++ b/src/pages/settings/Agents/AddAgentPage.tsx @@ -236,7 +236,7 @@ function AddAgentPage({route}: AddAgentPageProps) { const [template, templateMetadata] = useOnyx(ONYXKEYS.NEW_AGENT_TEMPLATE); if (isLoadingOnyxValue(templateMetadata)) { - return ; + return ; } return ( diff --git a/src/pages/settings/Profile/PersonalDetails/PrivatePersonalDetailsPage.tsx b/src/pages/settings/Profile/PersonalDetails/PrivatePersonalDetailsPage.tsx index 1e15532ce8db..6a02556b3d40 100644 --- a/src/pages/settings/Profile/PersonalDetails/PrivatePersonalDetailsPage.tsx +++ b/src/pages/settings/Profile/PersonalDetails/PrivatePersonalDetailsPage.tsx @@ -226,7 +226,7 @@ function PrivatePersonalDetailsPage() { }; if (isLoadingApp) { - return ; + return ; } return ( diff --git a/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx b/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx index 83c8135c303c..27afdea7abb7 100644 --- a/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx +++ b/src/pages/settings/Wallet/PersonalCards/AddNewCardPage.tsx @@ -46,7 +46,7 @@ function AddPersonalNewCardPage() { }, []); if (isAddCardFeedLoading) { - return ; + return ; } let CurrentStep: React.JSX.Element; diff --git a/src/pages/workspace/AccessOrNotFoundWrapper.tsx b/src/pages/workspace/AccessOrNotFoundWrapper.tsx index 8386442e52c5..24a778ad1451 100644 --- a/src/pages/workspace/AccessOrNotFoundWrapper.tsx +++ b/src/pages/workspace/AccessOrNotFoundWrapper.tsx @@ -261,7 +261,7 @@ function AccessOrNotFoundWrapper({ // The feature linked to this page is disabled, so the redirect effect above will navigate to the More Features page. // Render a loader instead of the page's children so the disabled page is never shown for a frame (avoids a visible flash). if (shouldRedirectToMoreFeatures) { - return ; + return ; } if (shouldShowNotFoundPage) { return ( diff --git a/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx b/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx index e7ba2841b80c..9edd2798958a 100644 --- a/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx +++ b/src/pages/workspace/expensifyCard/WorkspaceExpensifyCardPage.tsx @@ -70,7 +70,7 @@ function WorkspaceExpensifyCardPage({route}: WorkspaceExpensifyCardPageProps) { ); } if (isLoading) { - return ; + return ; } if (paymentBankAccountID) { return ( diff --git a/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx b/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx index 2d073abdc913..d681c17753d2 100644 --- a/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx +++ b/src/pages/workspace/receiptPartners/WorkspaceReceiptPartnersPage.tsx @@ -294,10 +294,7 @@ function WorkspaceReceiptPartnersPage({route}: WorkspaceReceiptPartnersPageProps policyFeature={CONST.POLICY.POLICY_FEATURE.MORE_FEATURES} > {isLoading ? ( - + ) : ( {isCardSettingsLoading ? ( - + ) : (