Skip to content

Commit e00eda9

Browse files
committed
add card rule search
1 parent 0b21f63 commit e00eda9

1 file changed

Lines changed: 9 additions & 0 deletions

File tree

src/components/SpendRules/SpendRulesSection.tsx

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,13 @@ import useLocalize from '@hooks/useLocalize';
1616
import useNetwork from '@hooks/useNetwork';
1717
import useOnyx from '@hooks/useOnyx';
1818
import useResponsiveLayout from '@hooks/useResponsiveLayout';
19+
import useSearchResults from '@hooks/useSearchResults';
1920
import useStyleUtils from '@hooks/useStyleUtils';
2021
import useTheme from '@hooks/useTheme';
2122
import useThemeStyles from '@hooks/useThemeStyles';
2223
import {openPolicyExpensifyCardsPage} from '@libs/actions/Policy/Policy';
2324
import Navigation from '@libs/Navigation/Navigation';
25+
import tokenizedSearch from '@libs/tokenizedSearch';
2426
import variables from '@styles/variables';
2527
import CONST from '@src/CONST';
2628
import ONYXKEYS from '@src/ONYXKEYS';
@@ -45,6 +47,13 @@ function SpendRulesSection({policyID}: SpendRulesSectionProps) {
4547
const [expensifyCardSettings] = useOnyx(`${ONYXKEYS.COLLECTION.PRIVATE_EXPENSIFY_CARD_SETTINGS}${defaultFundID}`);
4648
const {cardRules, isLoadingCardRules} = useExpensifyCardRules(policyID);
4749

50+
const filterCardRules = (cardRule: (typeof cardRules)[number], searchInput: string) => {
51+
const results = tokenizedSearch([cardRule], searchInput, (option) => option.searchTokens);
52+
return results.length > 0;
53+
};
54+
55+
const [inputValue, setInputValue, filteredCardRules] = useSearchResults(cardRules, filterCardRules);
56+
4857
useEffect(() => {
4958
if (!defaultFundID || defaultFundID === CONST.DEFAULT_NUMBER_ID) {
5059
return;

0 commit comments

Comments
 (0)