From 66aaaf394b67987b05d4e8b5de1c2652785210ff Mon Sep 17 00:00:00 2001 From: "DylanDylann (via MelvinBot)" Date: Thu, 5 Mar 2026 17:36:18 +0000 Subject: [PATCH 1/2] Fix double amount conversion when selecting recent searches MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When selecting a recent search containing an amount filter (e.g. amount:6), the amount was being converted to backend format twice (6 → 600 → 60000). This happened because submitSearch in SearchRouter.tsx always ran amount conversion via getQueryWithUpdatedValues, even for stored queries that were already in backend format. Pass shouldSkipAmountConversion=true for non-findItem selections (recent and saved searches) to match the existing pattern in SearchPageHeaderInput. Co-authored-by: DylanDylann --- src/components/Search/SearchRouter/SearchRouter.tsx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/components/Search/SearchRouter/SearchRouter.tsx b/src/components/Search/SearchRouter/SearchRouter.tsx index df0d7c85c858..90b508ed2afe 100644 --- a/src/components/Search/SearchRouter/SearchRouter.tsx +++ b/src/components/Search/SearchRouter/SearchRouter.tsx @@ -217,9 +217,9 @@ function SearchRouter({onRouterClose, shouldHideInputCaret, isSearchRouterDispla ); const submitSearch = useCallback( - (queryString: SearchQueryString) => { + (queryString: SearchQueryString, shouldSkipAmountConversion = false) => { const queryWithSubstitutions = getQueryWithSubstitutions(queryString, autocompleteSubstitutions); - const updatedQuery = getQueryWithUpdatedValues(queryWithSubstitutions); + const updatedQuery = getQueryWithUpdatedValues(queryWithSubstitutions, shouldSkipAmountConversion); if (!updatedQuery) { return; } @@ -282,7 +282,7 @@ function SearchRouter({onRouterClose, shouldHideInputCaret, isSearchRouterDispla } setFocusAndScrollToRight(); } else { - submitSearch(item.searchQuery); + submitSearch(item.searchQuery, item.keyForList !== 'findItem'); } } else { backHistory(() => { From 9c680d527592e8e52dd6e2fe8de99276c184e0f5 Mon Sep 17 00:00:00 2001 From: "DylanDylann (via MelvinBot)" Date: Fri, 6 Mar 2026 06:18:51 +0000 Subject: [PATCH 2/2] Extract findItem string to CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.FIND_ITEM Co-authored-by: DylanDylann --- src/CONST/index.ts | 1 + .../Search/SearchPageHeader/SearchPageHeaderInput.tsx | 4 ++-- src/components/Search/SearchRouter/SearchRouter.tsx | 4 ++-- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/CONST/index.ts b/src/CONST/index.ts index 9baeee7f738f..d23ce9a0ab7a 100644 --- a/src/CONST/index.ts +++ b/src/CONST/index.ts @@ -7554,6 +7554,7 @@ const CONST = { CONTEXTUAL_SUGGESTION: 'contextualSuggestion', AUTOCOMPLETE_SUGGESTION: 'autocompleteSuggestion', SEARCH: 'searchItem', + FIND_ITEM: 'findItem', }, SEARCH_USER_FRIENDLY_KEYS: { TYPE: 'type', diff --git a/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx b/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx index e1f9c769077b..51961f5aac5d 100644 --- a/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx +++ b/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx @@ -236,7 +236,7 @@ function SearchPageHeaderInput({queryJSON, searchRouterListVisible, hideSearchRo setAutocompleteSubstitutions(substitutions); } } else if (item.searchItemType === CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.SEARCH) { - submitSearch(item.searchQuery, item.keyForList !== 'findItem'); + submitSearch(item.searchQuery, item.keyForList !== CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.FIND_ITEM); } } else if (item?.reportID) { Navigation.navigate(ROUTES.REPORT_WITH_ID.getRoute(item?.reportID)); @@ -255,7 +255,7 @@ function SearchPageHeaderInput({queryJSON, searchRouterListVisible, hideSearchRo singleIcon: expensifyIcons.MagnifyingGlass, searchQuery: textInputValue, itemStyle: styles.activeComponentBG, - keyForList: 'findItem', + keyForList: CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.FIND_ITEM, searchItemType: CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.SEARCH, } : undefined, diff --git a/src/components/Search/SearchRouter/SearchRouter.tsx b/src/components/Search/SearchRouter/SearchRouter.tsx index 90b508ed2afe..1a1d99910069 100644 --- a/src/components/Search/SearchRouter/SearchRouter.tsx +++ b/src/components/Search/SearchRouter/SearchRouter.tsx @@ -182,7 +182,7 @@ function SearchRouter({onRouterClose, shouldHideInputCaret, isSearchRouterDispla singleIcon: expensifyIcons.MagnifyingGlass, searchQuery: textInputValue, itemStyle: styles.activeComponentBG, - keyForList: 'findItem', + keyForList: CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.FIND_ITEM, searchItemType: CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.SEARCH, } : undefined; @@ -282,7 +282,7 @@ function SearchRouter({onRouterClose, shouldHideInputCaret, isSearchRouterDispla } setFocusAndScrollToRight(); } else { - submitSearch(item.searchQuery, item.keyForList !== 'findItem'); + submitSearch(item.searchQuery, item.keyForList !== CONST.SEARCH.SEARCH_ROUTER_ITEM_TYPE.FIND_ITEM); } } else { backHistory(() => {