Skip to content

Commit 3876e7e

Browse files
fix: cards filter with old ui
1 parent 3caba34 commit 3876e7e

2 files changed

Lines changed: 22 additions & 26 deletions

File tree

src/components/SelectionList/Search/CardListItem.tsx

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,9 @@ import {Str} from 'expensify-common';
22
import React, {useCallback} from 'react';
33
import {View} from 'react-native';
44
import Avatar from '@components/Avatar';
5+
import Checkbox from '@components/Checkbox';
56
import Icon from '@components/Icon';
67
import {FallbackAvatar} from '@components/Icon/Expensicons';
7-
import PressableWithFeedback from '@components/Pressable/PressableWithFeedback';
8-
import SelectCircle from '@components/SelectCircle';
98
import BaseListItem from '@components/SelectionList/BaseListItem';
109
import type {BaseListItemProps, ListItem} from '@components/SelectionList/types';
1110
import TextWithTooltip from '@components/TextWithTooltip';
@@ -50,7 +49,7 @@ function CardListItem<TItem extends ListItem>({
5049

5150
const ownersAvatar = {
5251
source: item.cardOwnerPersonalDetails?.avatar ?? FallbackAvatar,
53-
id: item.cardOwnerPersonalDetails?.accountID ?? -1,
52+
id: item.cardOwnerPersonalDetails?.accountID ?? CONST.DEFAULT_NUMBER_ID,
5453
type: CONST.ICON_TYPE_AVATAR,
5554
name: item.cardOwnerPersonalDetails?.displayName ?? '',
5655
fallbackIcon: item.cardOwnerPersonalDetails?.fallbackIcon,
@@ -85,7 +84,7 @@ function CardListItem<TItem extends ListItem>({
8584
<View>
8685
<UserDetailsTooltip
8786
shouldRender={showTooltip}
88-
accountID={Number(item.cardOwnerPersonalDetails?.accountID ?? -1)}
87+
accountID={Number(item.cardOwnerPersonalDetails?.accountID ?? CONST.DEFAULT_NUMBER_ID)}
8988
icon={ownersAvatar}
9089
fallbackUserDetails={{
9190
displayName: item.cardOwnerPersonalDetails?.displayName,
@@ -144,18 +143,14 @@ function CardListItem<TItem extends ListItem>({
144143
</View>
145144
</View>
146145
{!!canSelectMultiple && !item.isDisabled && (
147-
<PressableWithFeedback
148-
onPress={handleCheckboxPress}
149-
disabled={isDisabled}
150-
role={CONST.ROLE.BUTTON}
146+
<Checkbox
147+
shouldSelectOnPressEnter
148+
isChecked={item.isSelected ?? false}
151149
accessibilityLabel={item.text ?? ''}
152-
style={[styles.ml2, styles.optionSelectCircle]}
153-
>
154-
<SelectCircle
155-
isChecked={item.isSelected ?? false}
156-
selectCircleStyles={styles.ml0}
157-
/>
158-
</PressableWithFeedback>
150+
onPress={handleCheckboxPress}
151+
disabled={!!isDisabled}
152+
style={styles.ml3}
153+
/>
159154
)}
160155
</>
161156
</BaseListItem>

src/pages/Search/SearchAdvancedFiltersPage/SearchFiltersCardPage.tsx

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
import React, {useCallback, useEffect, useMemo, useState} from 'react';
22
import {View} from 'react-native';
33
import {useOnyx} from 'react-native-onyx';
4-
import Button from '@components/Button';
54
import HeaderWithBackButton from '@components/HeaderWithBackButton';
65
import {usePersonalDetails} from '@components/OnyxProvider';
76
import ScreenWrapper from '@components/ScreenWrapper';
7+
import SearchFilterPageFooterButtons from '@components/Search/SearchFilterPageFooterButtons';
88
import SelectionList from '@components/SelectionList';
99
import CardListItem from '@components/SelectionList/Search/CardListItem';
1010
import useDebouncedState from '@hooks/useDebouncedState';
@@ -25,10 +25,10 @@ function SearchFiltersCardPage() {
2525
const {translate} = useLocalize();
2626
const illustrations = useThemeIllustrations();
2727

28-
const [userCardList, userCardListMetadata] = useOnyx(ONYXKEYS.CARD_LIST);
29-
const [workspaceCardFeeds, workspaceCardFeedsMetadata] = useOnyx(ONYXKEYS.COLLECTION.WORKSPACE_CARDS_LIST);
28+
const [userCardList, userCardListMetadata] = useOnyx(ONYXKEYS.CARD_LIST, {canBeMissing: true});
29+
const [workspaceCardFeeds, workspaceCardFeedsMetadata] = useOnyx(ONYXKEYS.COLLECTION.WORKSPACE_CARDS_LIST, {canBeMissing: true});
3030
const [searchTerm, debouncedSearchTerm, setSearchTerm] = useDebouncedState('');
31-
const [searchAdvancedFiltersForm, searchAdvancedFiltersFormMetadata] = useOnyx(ONYXKEYS.FORMS.SEARCH_ADVANCED_FILTERS_FORM);
31+
const [searchAdvancedFiltersForm, searchAdvancedFiltersFormMetadata] = useOnyx(ONYXKEYS.FORMS.SEARCH_ADVANCED_FILTERS_FORM, {canBeMissing: true});
3232
const personalDetails = usePersonalDetails();
3333

3434
const [selectedCards, setSelectedCards] = useState<string[]>([]);
@@ -147,17 +147,18 @@ function SearchFiltersCardPage() {
147147

148148
const headerMessage = debouncedSearchTerm.trim() && sections.every((section) => !section.data.length) ? translate('common.noResultsFound') : '';
149149

150+
const resetChanges = useCallback(() => {
151+
setSelectedCards([]);
152+
}, [setSelectedCards]);
153+
150154
const footerContent = useMemo(
151155
() => (
152-
<Button
153-
success
154-
text={translate('common.save')}
155-
pressOnEnter
156-
onPress={handleConfirmSelection}
157-
large
156+
<SearchFilterPageFooterButtons
157+
applyChanges={handleConfirmSelection}
158+
resetChanges={resetChanges}
158159
/>
159160
),
160-
[translate, handleConfirmSelection],
161+
[resetChanges, handleConfirmSelection],
161162
);
162163

163164
return (

0 commit comments

Comments
 (0)