diff --git a/src/CONST/index.ts b/src/CONST/index.ts
index 874f84690514..b52f7bc9bb79 100755
--- a/src/CONST/index.ts
+++ b/src/CONST/index.ts
@@ -703,7 +703,6 @@ const CONST = {
TRACK_FLOWS: 'trackFlows',
EXPENSIFY_CARD_EU_UK: 'expensifyCardEuUk',
EUR_BILLING: 'eurBilling',
- MANUAL_DISTANCE: 'manualDistance',
NO_OPTIMISTIC_TRANSACTION_THREADS: 'noOptimisticTransactionThreads',
UBER_FOR_BUSINESS: 'uberForBusiness',
CUSTOM_REPORT_NAMES: 'newExpensifyCustomReportNames',
diff --git a/src/components/MoneyRequestConfirmationListFooter.tsx b/src/components/MoneyRequestConfirmationListFooter.tsx
index 7203ffbde49b..29974e5742a0 100644
--- a/src/components/MoneyRequestConfirmationListFooter.tsx
+++ b/src/components/MoneyRequestConfirmationListFooter.tsx
@@ -9,7 +9,6 @@ import type {ValueOf} from 'type-fest';
import useLocalize from '@hooks/useLocalize';
import useNetwork from '@hooks/useNetwork';
import useOnyx from '@hooks/useOnyx';
-import usePermissions from '@hooks/usePermissions';
import usePrevious from '@hooks/usePrevious';
import useThemeStyles from '@hooks/useThemeStyles';
import {convertToDisplayString} from '@libs/CurrencyUtils';
@@ -274,8 +273,6 @@ function MoneyRequestConfirmationListFooter({
const styles = useThemeStyles();
const {translate, toLocaleDigit, localeCompare} = useLocalize();
const {isOffline} = useNetwork();
- const {isBetaEnabled} = usePermissions();
- const isManualDistanceEnabled = isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE);
const [allPolicies] = useOnyx(ONYXKEYS.COLLECTION.POLICY, {canBeMissing: true});
const [allReports] = useOnyx(ONYXKEYS.COLLECTION.REPORT, {canBeMissing: true});
@@ -505,7 +502,7 @@ function MoneyRequestConfirmationListFooter({
item: (
),
shouldShow: isDistanceRequest,
diff --git a/src/libs/TransactionUtils/index.ts b/src/libs/TransactionUtils/index.ts
index 43ae81a05a4c..caf0040b38a6 100644
--- a/src/libs/TransactionUtils/index.ts
+++ b/src/libs/TransactionUtils/index.ts
@@ -216,22 +216,16 @@ function isCorporateCardTransaction(transaction: OnyxEntry): boolea
return isCardTransaction(transaction) && transaction?.comment?.liabilityType === CONST.TRANSACTION.LIABILITY_TYPE.RESTRICT;
}
-function getRequestType(transaction: OnyxEntry, isManualDistanceEnabled?: boolean): IOURequestType {
- if (isManualDistanceEnabled) {
- if (isManualDistanceRequest(transaction)) {
- return CONST.IOU.REQUEST_TYPE.DISTANCE_MANUAL;
- }
- if (isMapDistanceRequest(transaction)) {
- return CONST.IOU.REQUEST_TYPE.DISTANCE_MAP;
- }
+function getRequestType(transaction: OnyxEntry): IOURequestType {
+ if (isManualDistanceRequest(transaction)) {
+ return CONST.IOU.REQUEST_TYPE.DISTANCE_MANUAL;
}
- if (isDistanceRequest(transaction)) {
- return CONST.IOU.REQUEST_TYPE.DISTANCE;
+ if (isMapDistanceRequest(transaction)) {
+ return CONST.IOU.REQUEST_TYPE.DISTANCE_MAP;
}
if (isScanRequest(transaction)) {
return CONST.IOU.REQUEST_TYPE.SCAN;
}
-
if (isPerDiemRequest(transaction)) {
return CONST.IOU.REQUEST_TYPE.PER_DIEM;
}
diff --git a/src/libs/actions/QuickActionNavigation.ts b/src/libs/actions/QuickActionNavigation.ts
index de8adae1eda6..4f9ecab58b92 100644
--- a/src/libs/actions/QuickActionNavigation.ts
+++ b/src/libs/actions/QuickActionNavigation.ts
@@ -11,15 +11,10 @@ type NavigateToQuickActionParams = {
isValidReport: boolean;
quickAction: QuickAction;
selectOption: (onSelected: () => void, shouldRestrictAction: boolean) => void;
- isManualDistanceTrackingEnabled?: boolean;
lastDistanceExpenseType?: DistanceExpenseType;
};
-function getQuickActionRequestType(
- action: QuickActionName | undefined,
- lastDistanceExpenseType?: DistanceExpenseType,
- isManualDistanceTrackingEnabled?: boolean,
-): IOURequestType | undefined {
+function getQuickActionRequestType(action: QuickActionName | undefined, lastDistanceExpenseType?: DistanceExpenseType): IOURequestType | undefined {
if (!action) {
return;
}
@@ -30,11 +25,7 @@ function getQuickActionRequestType(
} else if ([CONST.QUICK_ACTIONS.REQUEST_SCAN, CONST.QUICK_ACTIONS.SPLIT_SCAN, CONST.QUICK_ACTIONS.TRACK_SCAN].some((a) => a === action)) {
requestType = CONST.IOU.REQUEST_TYPE.SCAN;
} else if ([CONST.QUICK_ACTIONS.REQUEST_DISTANCE, CONST.QUICK_ACTIONS.SPLIT_DISTANCE, CONST.QUICK_ACTIONS.TRACK_DISTANCE].some((a) => a === action)) {
- if (isManualDistanceTrackingEnabled) {
- requestType = lastDistanceExpenseType ?? CONST.IOU.REQUEST_TYPE.DISTANCE_MAP;
- } else {
- requestType = CONST.IOU.REQUEST_TYPE.DISTANCE;
- }
+ requestType = lastDistanceExpenseType ?? CONST.IOU.REQUEST_TYPE.DISTANCE_MAP;
} else if (action === CONST.QUICK_ACTIONS.PER_DIEM) {
requestType = CONST.IOU.REQUEST_TYPE.PER_DIEM;
}
@@ -43,9 +34,9 @@ function getQuickActionRequestType(
}
function navigateToQuickAction(params: NavigateToQuickActionParams) {
- const {isValidReport, quickAction, selectOption, isManualDistanceTrackingEnabled, lastDistanceExpenseType} = params;
+ const {isValidReport, quickAction, selectOption, lastDistanceExpenseType} = params;
const reportID = isValidReport && quickAction?.chatReportID ? quickAction?.chatReportID : generateReportID();
- const requestType = getQuickActionRequestType(quickAction?.action, lastDistanceExpenseType, isManualDistanceTrackingEnabled);
+ const requestType = getQuickActionRequestType(quickAction?.action, lastDistanceExpenseType);
switch (quickAction?.action) {
case CONST.QUICK_ACTIONS.REQUEST_MANUAL:
@@ -69,18 +60,10 @@ function navigateToQuickAction(params: NavigateToQuickActionParams) {
selectOption(() => startMoneyRequest(CONST.IOU.TYPE.TRACK, reportID, requestType, true), false);
break;
case CONST.QUICK_ACTIONS.REQUEST_DISTANCE:
- if (isManualDistanceTrackingEnabled) {
- selectOption(() => startDistanceRequest(CONST.IOU.TYPE.SUBMIT, reportID, requestType, true), false);
- return;
- }
- selectOption(() => startMoneyRequest(CONST.IOU.TYPE.SUBMIT, reportID, requestType, true), true);
+ selectOption(() => startDistanceRequest(CONST.IOU.TYPE.SUBMIT, reportID, requestType, true), false);
break;
case CONST.QUICK_ACTIONS.TRACK_DISTANCE:
- if (isManualDistanceTrackingEnabled) {
- selectOption(() => startDistanceRequest(CONST.IOU.TYPE.TRACK, reportID, requestType, true), false);
- return;
- }
- selectOption(() => startMoneyRequest(CONST.IOU.TYPE.TRACK, reportID, requestType, true), false);
+ selectOption(() => startDistanceRequest(CONST.IOU.TYPE.TRACK, reportID, requestType, true), false);
break;
default:
}
diff --git a/src/pages/TransactionReceiptPage.tsx b/src/pages/TransactionReceiptPage.tsx
index 4172fb9ffe09..9b757958ac38 100644
--- a/src/pages/TransactionReceiptPage.tsx
+++ b/src/pages/TransactionReceiptPage.tsx
@@ -1,7 +1,6 @@
import React, {useEffect} from 'react';
import AttachmentModal from '@components/AttachmentModal';
import useOnyx from '@hooks/useOnyx';
-import usePermissions from '@hooks/usePermissions';
import {navigateToStartStepIfScanFileCannotBeRead} from '@libs/actions/IOU';
import {openReport} from '@libs/actions/Report';
import getReceiptFilenameFromTransaction from '@libs/getReceiptFilenameFromTransaction';
@@ -30,7 +29,6 @@ function TransactionReceipt({route}: TransactionReceiptProps) {
const [transactionMain] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION}${transactionID}`, {canBeMissing: true});
const [transactionDraft] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION_DRAFT}${transactionID}`, {canBeMissing: true});
const [reportMetadata = CONST.DEFAULT_REPORT_METADATA] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT_METADATA}${reportID}`, {canBeMissing: true});
- const {isBetaEnabled} = usePermissions();
const mergeTransactionID = 'mergeTransactionID' in route.params ? route.params.mergeTransactionID : undefined;
const isFromReviewDuplicates = 'isFromReviewDuplicates' in route.params ? route.params.isFromReviewDuplicates === 'true' : undefined;
@@ -79,7 +77,7 @@ function TransactionReceipt({route}: TransactionReceiptProps) {
return;
}
- const requestType = getRequestType(transaction, isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE));
+ const requestType = getRequestType(transaction);
const receiptFilename = getReceiptFilenameFromTransaction(transaction);
const receiptType = transaction?.receipt?.type;
navigateToStartStepIfScanFileCannotBeRead(
diff --git a/src/pages/home/report/ReportActionCompose/AttachmentPickerWithMenuItems.tsx b/src/pages/home/report/ReportActionCompose/AttachmentPickerWithMenuItems.tsx
index 31c558e60fb8..4f3552faf5ea 100644
--- a/src/pages/home/report/ReportActionCompose/AttachmentPickerWithMenuItems.tsx
+++ b/src/pages/home/report/ReportActionCompose/AttachmentPickerWithMenuItems.tsx
@@ -14,7 +14,6 @@ import Tooltip from '@components/Tooltip/PopoverAnchorTooltip';
import useEnvironment from '@hooks/useEnvironment';
import useLocalize from '@hooks/useLocalize';
import useOnyx from '@hooks/useOnyx';
-import usePermissions from '@hooks/usePermissions';
import usePrevious from '@hooks/usePrevious';
import useReportIsArchived from '@hooks/useReportIsArchived';
import useResponsiveLayout from '@hooks/useResponsiveLayout';
@@ -131,12 +130,9 @@ function AttachmentPickerWithMenuItems({
const [policy] = useOnyx(`${ONYXKEYS.COLLECTION.POLICY}${report?.policyID}`, {canBeMissing: true});
const [lastDistanceExpenseType] = useOnyx(ONYXKEYS.NVP_LAST_DISTANCE_EXPENSE_TYPE, {canBeMissing: true});
const {isProduction} = useEnvironment();
- const {isBetaEnabled} = usePermissions();
const {setIsLoaderVisible} = useFullScreenLoader();
const isReportArchived = useReportIsArchived(report?.reportID);
- const isManualDistanceTrackingEnabled = isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE);
-
const selectOption = useCallback(
(onSelected: () => void, shouldRestrictAction: boolean) => {
if (shouldRestrictAction && policy && shouldRestrictUserBillableActions(policy.id)) {
@@ -172,17 +168,12 @@ function AttachmentPickerWithMenuItems({
shouldCallAfterModalHide: shouldUseNarrowLayout,
onSelected: () => selectOption(() => startMoneyRequest(CONST.IOU.TYPE.SUBMIT, report?.reportID ?? String(CONST.DEFAULT_NUMBER_ID)), true),
},
- ...(isManualDistanceTrackingEnabled
- ? [
- {
- icon: Expensicons.Location,
- text: translate('quickAction.recordDistance'),
- shouldCallAfterModalHide: shouldUseNarrowLayout,
- onSelected: () =>
- selectOption(() => startDistanceRequest(CONST.IOU.TYPE.SUBMIT, report?.reportID ?? String(CONST.DEFAULT_NUMBER_ID), lastDistanceExpenseType), true),
- },
- ]
- : []),
+ {
+ icon: Expensicons.Location,
+ text: translate('quickAction.recordDistance'),
+ shouldCallAfterModalHide: shouldUseNarrowLayout,
+ onSelected: () => selectOption(() => startDistanceRequest(CONST.IOU.TYPE.SUBMIT, report?.reportID ?? String(CONST.DEFAULT_NUMBER_ID), lastDistanceExpenseType), true),
+ },
],
[CONST.IOU.TYPE.PAY]: [
{
@@ -207,17 +198,12 @@ function AttachmentPickerWithMenuItems({
shouldCallAfterModalHide: shouldUseNarrowLayout,
onSelected: () => selectOption(() => startMoneyRequest(CONST.IOU.TYPE.TRACK, report?.reportID ?? String(CONST.DEFAULT_NUMBER_ID)), true),
},
- ...(isManualDistanceTrackingEnabled
- ? [
- {
- icon: Expensicons.Location,
- text: translate('iou.trackDistance'),
- shouldCallAfterModalHide: shouldUseNarrowLayout,
- onSelected: () =>
- selectOption(() => startDistanceRequest(CONST.IOU.TYPE.TRACK, report?.reportID ?? String(CONST.DEFAULT_NUMBER_ID), lastDistanceExpenseType), true),
- },
- ]
- : []),
+ {
+ icon: Expensicons.Location,
+ text: translate('iou.trackDistance'),
+ shouldCallAfterModalHide: shouldUseNarrowLayout,
+ onSelected: () => selectOption(() => startDistanceRequest(CONST.IOU.TYPE.TRACK, report?.reportID ?? String(CONST.DEFAULT_NUMBER_ID), lastDistanceExpenseType), true),
+ },
],
[CONST.IOU.TYPE.INVOICE]: [
{
@@ -241,7 +227,6 @@ function AttachmentPickerWithMenuItems({
selectOption,
isDelegateAccessRestricted,
showDelegateNoAccessModal,
- isManualDistanceTrackingEnabled,
isReportArchived,
lastDistanceExpenseType,
]);
diff --git a/src/pages/home/sidebar/FloatingActionButtonAndPopover.tsx b/src/pages/home/sidebar/FloatingActionButtonAndPopover.tsx
index 75b60d616df0..15da6a90cfb8 100644
--- a/src/pages/home/sidebar/FloatingActionButtonAndPopover.tsx
+++ b/src/pages/home/sidebar/FloatingActionButtonAndPopover.tsx
@@ -135,7 +135,6 @@ function FloatingActionButtonAndPopover({onHideCreateMenu, onShowCreateMenu, ref
const {isOffline} = useNetwork();
const {isBetaEnabled} = usePermissions();
const isBlockedFromSpotnanaTravel = isBetaEnabled(CONST.BETAS.PREVENT_SPOTNANA_TRAVEL);
- const isManualDistanceTrackingEnabled = isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE);
const [primaryLogin] = useOnyx(ONYXKEYS.ACCOUNT, {selector: accountPrimaryLoginSelector, canBeMissing: true});
const primaryContactMethod = primaryLogin ?? session?.email ?? '';
const [travelSettings] = useOnyx(ONYXKEYS.NVP_TRAVEL_SETTINGS, {canBeMissing: true});
@@ -353,7 +352,7 @@ function FloatingActionButtonAndPopover({onHideCreateMenu, onShowCreateMenu, ref
showDelegateNoAccessModal();
return;
}
- navigateToQuickAction({isValidReport, quickAction, selectOption, isManualDistanceTrackingEnabled, lastDistanceExpenseType});
+ navigateToQuickAction({isValidReport, quickAction, selectOption, lastDistanceExpenseType});
});
};
return [
@@ -413,7 +412,6 @@ function FloatingActionButtonAndPopover({onHideCreateMenu, onShowCreateMenu, ref
isDelegateAccessRestricted,
showDelegateNoAccessModal,
isReportArchived,
- isManualDistanceTrackingEnabled,
lastDistanceExpenseType,
allTransactionDrafts,
]);
@@ -438,31 +436,27 @@ function FloatingActionButtonAndPopover({onHideCreateMenu, onShowCreateMenu, ref
const menuItems = [
...expenseMenuItems,
- ...(isManualDistanceTrackingEnabled
- ? [
- {
- icon: Expensicons.Location,
- text: translate('iou.trackDistance'),
- shouldCallAfterModalHide: shouldUseNarrowLayout,
- onSelected: () => {
- interceptAnonymousUser(() => {
- if (shouldRedirectToExpensifyClassic) {
- setModalVisible(true);
- return;
- }
- // Start the flow to start tracking a distance request
- startDistanceRequest(
- CONST.IOU.TYPE.CREATE,
- // When starting to create an expense from the global FAB, there is not an existing report yet. A random optimistic reportID is generated and used
- // for all of the routes in the creation flow.
- generateReportID(),
- lastDistanceExpenseType,
- );
- });
- },
- },
- ]
- : []),
+ {
+ icon: Expensicons.Location,
+ text: translate('iou.trackDistance'),
+ shouldCallAfterModalHide: shouldUseNarrowLayout,
+ onSelected: () => {
+ interceptAnonymousUser(() => {
+ if (shouldRedirectToExpensifyClassic) {
+ setModalVisible(true);
+ return;
+ }
+ // Start the flow to start tracking a distance request
+ startDistanceRequest(
+ CONST.IOU.TYPE.CREATE,
+ // When starting to create an expense from the global FAB, there is not an existing report yet. A random optimistic reportID is generated and used
+ // for all of the routes in the creation flow.
+ generateReportID(),
+ lastDistanceExpenseType,
+ );
+ });
+ },
+ },
...(shouldShowCreateReportOption
? [
{
diff --git a/src/pages/iou/request/IOURequestStartPage.tsx b/src/pages/iou/request/IOURequestStartPage.tsx
index ef1dd5fcf6f0..8f7f2439b3d1 100644
--- a/src/pages/iou/request/IOURequestStartPage.tsx
+++ b/src/pages/iou/request/IOURequestStartPage.tsx
@@ -179,7 +179,6 @@ function IOURequestStartPage({
}, [headerWithBackBtnContainerElement, tabBarContainerElement, activeTabContainerElement]);
const {isBetaEnabled} = usePermissions();
- const manualDistanceTrackingEnabled = isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE);
const setTestReceiptAndNavigateRef = useRef<() => void>(() => {});
const {shouldShowProductTrainingTooltip, renderProductTrainingTooltip} = useProductTrainingContext(
CONST.PRODUCT_TRAINING_TOOLTIP_NAMES.SCAN_TEST_TOOLTIP,
@@ -266,7 +265,7 @@ function IOURequestStartPage({
)}
- {(!manualDistanceTrackingEnabled || iouType === CONST.IOU.TYPE.SPLIT) && (
+ {iouType === CONST.IOU.TYPE.SPLIT && (
{() => (
diff --git a/src/pages/iou/request/step/IOURequestStepAmount.tsx b/src/pages/iou/request/step/IOURequestStepAmount.tsx
index f2b8ad744581..f103eba08fcf 100644
--- a/src/pages/iou/request/step/IOURequestStepAmount.tsx
+++ b/src/pages/iou/request/step/IOURequestStepAmount.tsx
@@ -77,7 +77,7 @@ function IOURequestStepAmount({
const textInput = useRef(null);
const focusTimeoutRef = useRef(null);
const isSaveButtonPressed = useRef(false);
- const iouRequestType = getRequestType(transaction, isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE));
+ const iouRequestType = getRequestType(transaction);
const policyID = report?.policyID;
const isReportArchived = useReportIsArchived(report?.reportID);
diff --git a/src/pages/iou/request/step/IOURequestStepConfirmation.tsx b/src/pages/iou/request/step/IOURequestStepConfirmation.tsx
index 9d38098efd46..6963fbd3c9a8 100644
--- a/src/pages/iou/request/step/IOURequestStepConfirmation.tsx
+++ b/src/pages/iou/request/step/IOURequestStepConfirmation.tsx
@@ -186,7 +186,7 @@ function IOURequestStepConfirmation({
const [isDraggingOver, setIsDraggingOver] = useState(false);
const [receiptFiles, setReceiptFiles] = useState>({});
- const requestType = getRequestType(transaction, isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE));
+ const requestType = getRequestType(transaction);
const isDistanceRequest = isDistanceRequestTransactionUtils(transaction);
const isManualDistanceRequest = isManualDistanceRequestTransactionUtils(transaction);
const isPerDiemRequest = requestType === CONST.IOU.REQUEST_TYPE.PER_DIEM;
diff --git a/src/pages/iou/request/step/IOURequestStepDistance.tsx b/src/pages/iou/request/step/IOURequestStepDistance.tsx
index a39a2118c33e..f5fc78f29a37 100644
--- a/src/pages/iou/request/step/IOURequestStepDistance.tsx
+++ b/src/pages/iou/request/step/IOURequestStepDistance.tsx
@@ -19,7 +19,6 @@ import useFetchRoute from '@hooks/useFetchRoute';
import useLocalize from '@hooks/useLocalize';
import useNetwork from '@hooks/useNetwork';
import useOnyx from '@hooks/useOnyx';
-import usePermissions from '@hooks/usePermissions';
import usePolicy from '@hooks/usePolicy';
import usePrevious from '@hooks/usePrevious';
import useShowNotFoundPageInIOUStep from '@hooks/useShowNotFoundPageInIOUStep';
@@ -82,7 +81,6 @@ function IOURequestStepDistance({
const styles = useThemeStyles();
const {isOffline} = useNetwork();
const {translate} = useLocalize();
- const {isBetaEnabled} = usePermissions();
const [allReports] = useOnyx(ONYXKEYS.COLLECTION.REPORT, {canBeMissing: false});
const [reportNameValuePairs] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT_NAME_VALUE_PAIRS}${report?.reportID}`, {canBeMissing: true});
const [transactionBackup] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION_BACKUP}${transactionID}`, {canBeMissing: true});
@@ -142,7 +140,7 @@ function IOURequestStepDistance({
const transactionWasSaved = useRef(false);
const isCreatingNewRequest = !(backTo || isEditing);
const [recentWaypoints, {status: recentWaypointsStatus}] = useOnyx(ONYXKEYS.NVP_RECENT_WAYPOINTS, {canBeMissing: true});
- const iouRequestType = getRequestType(transaction, isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE));
+ const iouRequestType = getRequestType(transaction);
const customUnitRateID = getRateID(transaction);
// eslint-disable-next-line rulesdir/no-negated-variables
const shouldShowNotFoundPage = useShowNotFoundPageInIOUStep(action, iouType, reportActionID, report, transaction);
diff --git a/src/pages/iou/request/step/IOURequestStepDistanceMap.tsx b/src/pages/iou/request/step/IOURequestStepDistanceMap.tsx
index 58970a78dbb3..f095f69c13e9 100644
--- a/src/pages/iou/request/step/IOURequestStepDistanceMap.tsx
+++ b/src/pages/iou/request/step/IOURequestStepDistanceMap.tsx
@@ -19,7 +19,6 @@ import useFetchRoute from '@hooks/useFetchRoute';
import useLocalize from '@hooks/useLocalize';
import useNetwork from '@hooks/useNetwork';
import useOnyx from '@hooks/useOnyx';
-import usePermissions from '@hooks/usePermissions';
import usePolicy from '@hooks/usePolicy';
import usePrevious from '@hooks/usePrevious';
import useShowNotFoundPageInIOUStep from '@hooks/useShowNotFoundPageInIOUStep';
@@ -82,7 +81,6 @@ function IOURequestStepDistanceMap({
const styles = useThemeStyles();
const {isOffline} = useNetwork();
const {translate} = useLocalize();
- const {isBetaEnabled} = usePermissions();
const [allReports] = useOnyx(ONYXKEYS.COLLECTION.REPORT, {canBeMissing: false});
const [reportNameValuePairs] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT_NAME_VALUE_PAIRS}${report?.reportID}`, {canBeMissing: true});
const [transactionBackup] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION_BACKUP}${transactionID}`, {canBeMissing: true});
@@ -142,7 +140,7 @@ function IOURequestStepDistanceMap({
const transactionWasSaved = useRef(false);
const isCreatingNewRequest = !(backTo || isEditing);
const [recentWaypoints, {status: recentWaypointsStatus}] = useOnyx(ONYXKEYS.NVP_RECENT_WAYPOINTS, {canBeMissing: true});
- const iouRequestType = getRequestType(transaction, isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE));
+ const iouRequestType = getRequestType(transaction);
const customUnitRateID = getRateID(transaction);
// eslint-disable-next-line rulesdir/no-negated-variables
const shouldShowNotFoundPage = useShowNotFoundPageInIOUStep(action, iouType, reportActionID, report, transaction);
diff --git a/src/pages/iou/request/step/IOURequestStepParticipants.tsx b/src/pages/iou/request/step/IOURequestStepParticipants.tsx
index 0348bfb13163..175d96cdc430 100644
--- a/src/pages/iou/request/step/IOURequestStepParticipants.tsx
+++ b/src/pages/iou/request/step/IOURequestStepParticipants.tsx
@@ -5,7 +5,6 @@ import type {OnyxCollection, OnyxEntry} from 'react-native-onyx';
import FormHelpMessage from '@components/FormHelpMessage';
import useLocalize from '@hooks/useLocalize';
import useOnyx from '@hooks/useOnyx';
-import usePermissions from '@hooks/usePermissions';
import useThemeStyles from '@hooks/useThemeStyles';
import {setTransactionReport} from '@libs/actions/Transaction';
import {READ_COMMANDS} from '@libs/API/types';
@@ -74,7 +73,6 @@ function IOURequestStepParticipants({
const {translate} = useLocalize();
const styles = useThemeStyles();
const isFocused = useIsFocused();
- const {isBetaEnabled} = usePermissions();
const [skipConfirmation] = useOnyx(`${ONYXKEYS.COLLECTION.SKIP_CONFIRMATION}${initialTransactionID}`, {canBeMissing: true});
const [optimisticTransactions] = useOnyx(ONYXKEYS.COLLECTION.TRANSACTION_DRAFT, {
selector: (items) => Object.values(items ?? {}),
@@ -93,7 +91,7 @@ function IOURequestStepParticipants({
// We need to set selectedReportID if user has navigated back from confirmation page and navigates to confirmation page with already selected participant
const selectedReportID = useRef(participants?.length === 1 ? (participants.at(0)?.reportID ?? reportID) : reportID);
const numberOfParticipants = useRef(participants?.length ?? 0);
- const iouRequestType = getRequestType(initialTransaction, isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE));
+ const iouRequestType = getRequestType(initialTransaction);
const isSplitRequest = iouType === CONST.IOU.TYPE.SPLIT;
const isMovingTransactionFromTrackExpense = isMovingTransactionFromTrackExpenseIOUUtils(action);
const headerTitle = useMemo(() => {
diff --git a/src/pages/media/AttachmentModalScreen/routes/TransactionReceiptModalContent.tsx b/src/pages/media/AttachmentModalScreen/routes/TransactionReceiptModalContent.tsx
index 6331cbff1cf8..d60c6c3bcbcd 100644
--- a/src/pages/media/AttachmentModalScreen/routes/TransactionReceiptModalContent.tsx
+++ b/src/pages/media/AttachmentModalScreen/routes/TransactionReceiptModalContent.tsx
@@ -1,6 +1,5 @@
import React, {useEffect, useMemo, useState} from 'react';
import useOnyx from '@hooks/useOnyx';
-import usePermissions from '@hooks/usePermissions';
import {navigateToStartStepIfScanFileCannotBeRead} from '@libs/actions/IOU';
import {openReport} from '@libs/actions/Report';
import getReceiptFilenameFromTransaction from '@libs/getReceiptFilenameFromTransaction';
@@ -20,7 +19,6 @@ import type SCREENS from '@src/SCREENS';
function TransactionReceiptModalContent({navigation, route}: AttachmentModalScreenProps) {
const {reportID = '', transactionID = '', action, iouType, readonly: readonlyProp, isFromReviewDuplicates: isFromReviewDuplicatesProp} = route.params;
- const {isBetaEnabled} = usePermissions();
const [report] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${reportID}`, {canBeMissing: true});
const [transactionMain] = useOnyx(`${ONYXKEYS.COLLECTION.TRANSACTION}${transactionID}`, {canBeMissing: true});
@@ -60,7 +58,7 @@ function TransactionReceiptModalContent({navigation, route}: AttachmentModalScre
return;
}
- const requestType = getRequestType(transaction, isBetaEnabled(CONST.BETAS.MANUAL_DISTANCE));
+ const requestType = getRequestType(transaction);
const receiptFilename = getReceiptFilenameFromTransaction(transaction);
const receiptType = transaction?.receipt?.type;
navigateToStartStepIfScanFileCannotBeRead(
diff --git a/tests/unit/QuickActionNavigationTest.ts b/tests/unit/QuickActionNavigationTest.ts
index bab2c1c5d89d..64f17ac2484d 100644
--- a/tests/unit/QuickActionNavigationTest.ts
+++ b/tests/unit/QuickActionNavigationTest.ts
@@ -29,6 +29,7 @@ describe('IOU Utils', () => {
onSelected();
},
});
+
// Then we should start manual submit request flow
expect(startMoneyRequest).toHaveBeenCalledWith(CONST.IOU.TYPE.SUBMIT, reportID, CONST.IOU.REQUEST_TYPE.MANUAL, true);
});
@@ -42,6 +43,7 @@ describe('IOU Utils', () => {
onSelected();
},
});
+
// Then we should start scan split request flow
expect(startMoneyRequest).toHaveBeenCalledWith(CONST.IOU.TYPE.SPLIT, reportID, CONST.IOU.REQUEST_TYPE.SCAN, true);
});
@@ -55,35 +57,36 @@ describe('IOU Utils', () => {
onSelected();
},
});
+
// Then we should start distance track request flow
- expect(startMoneyRequest).toHaveBeenCalledWith(CONST.IOU.TYPE.TRACK, reportID, CONST.IOU.REQUEST_TYPE.DISTANCE, true);
+ expect(startDistanceRequest).toHaveBeenCalledWith(CONST.IOU.TYPE.TRACK, reportID, CONST.IOU.REQUEST_TYPE.DISTANCE_MAP, true);
});
- it('should be navigated to Map distance Expense if isManualDistanceTrackingEnabled beta', () => {
- // When the quick action is REQUEST_DISTANCE and isManualDistanceTrackingEnabled
+ it('should be navigated to Map distance Expense by default', () => {
+ // When the quick action is REQUEST_DISTANCE
navigateToQuickAction({
isValidReport: true,
quickAction: {action: CONST.QUICK_ACTIONS.REQUEST_DISTANCE, chatReportID: reportID},
selectOption: (onSelected: () => void) => {
onSelected();
},
- isManualDistanceTrackingEnabled: true,
});
+
// Then we should start map distance request flow
expect(startDistanceRequest).toHaveBeenCalledWith(CONST.IOU.TYPE.SUBMIT, reportID, CONST.IOU.REQUEST_TYPE.DISTANCE_MAP, true);
});
- it('should be navigated to request distance Expense if isManualDistanceTrackingEnabled beta depending on lastDistanceExpenseType', () => {
- // When the quick action is REQUEST_DISTANCE and isManualDistanceTrackingEnabled
+ it('should be navigated to request distance Expense depending on lastDistanceExpenseType', () => {
+ // When the quick action is REQUEST_DISTANCE
navigateToQuickAction({
isValidReport: true,
quickAction: {action: CONST.QUICK_ACTIONS.REQUEST_DISTANCE, chatReportID: reportID},
selectOption: (onSelected: () => void) => {
onSelected();
},
- isManualDistanceTrackingEnabled: true,
lastDistanceExpenseType: CONST.IOU.REQUEST_TYPE.DISTANCE_MANUAL,
});
+
// Then we should start manual distance request flow
expect(startDistanceRequest).toHaveBeenCalledWith(CONST.IOU.TYPE.SUBMIT, reportID, CONST.IOU.REQUEST_TYPE.DISTANCE_MANUAL, true);
});
@@ -97,6 +100,7 @@ describe('IOU Utils', () => {
onSelected();
},
});
+
// Then we should start per diem request flow
expect(startMoneyRequest).toHaveBeenCalledWith(CONST.IOU.TYPE.SUBMIT, reportID, CONST.IOU.REQUEST_TYPE.PER_DIEM, true);
});
diff --git a/tests/unit/usePermissionsTest.tsx b/tests/unit/usePermissionsTest.tsx
index 445250839a81..775d1efbde74 100644
--- a/tests/unit/usePermissionsTest.tsx
+++ b/tests/unit/usePermissionsTest.tsx
@@ -78,7 +78,7 @@ describe('usePermissions', () => {
it('should handle explicit only and exclusion betas correctly', async () => {
// Given: A beta configuration with both explicit only and exclusion betas
- const explicitOnlyBeta = CONST.BETAS.MANUAL_DISTANCE;
+ const explicitOnlyBeta = CONST.BETAS.CUSTOM_REPORT_NAMES;
const exclusionBeta = CONST.BETAS.PREVENT_SPOTNANA_TRAVEL;
const betaConfiguration = {
explicitOnly: [explicitOnlyBeta],