Skip to content

Commit 9dad968

Browse files
authored
Merge pull request Expensify#64379 from FitseTLT/fix-clear-error-on-unreported-expense-selection
Fix - Expense - In add Unreported expense page, error is not cleared after selecting an expense
2 parents 0526a17 + c9641ce commit 9dad968

1 file changed

Lines changed: 14 additions & 7 deletions

File tree

src/pages/AddUnreportedExpense.tsx

Lines changed: 14 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ function AddUnreportedExpense({route}: AddUnreportedExpensePageType) {
3636
const [errorMessage, setErrorMessage] = useState<string>('');
3737
const [offset, setOffset] = useState(0);
3838
const {isOffline} = useNetwork();
39+
const [selectedIds, setSelectedIds] = useState(new Set<string>());
3940

4041
const {reportID, backToReport} = route.params;
4142
const [report] = useOnyx(`${ONYXKEYS.COLLECTION.REPORT}${reportID}`, {canBeMissing: true});
@@ -136,8 +137,6 @@ function AddUnreportedExpense({route}: AddUnreportedExpensePageType) {
136137
);
137138
}
138139

139-
const selectedIds = new Set<string>();
140-
141140
return (
142141
<ScreenWrapper
143142
shouldEnableKeyboardAvoidingView={false}
@@ -154,11 +153,19 @@ function AddUnreportedExpense({route}: AddUnreportedExpensePageType) {
154153
<SelectionList<Transaction & ListItem>
155154
ref={selectionListRef}
156155
onSelectRow={(item) => {
157-
if (selectedIds.has(item.transactionID)) {
158-
selectedIds.delete(item.transactionID);
159-
} else {
160-
selectedIds.add(item.transactionID);
161-
}
156+
setSelectedIds((prevIds) => {
157+
const newIds = new Set(prevIds);
158+
if (newIds.has(item.transactionID)) {
159+
newIds.delete(item.transactionID);
160+
} else {
161+
newIds.add(item.transactionID);
162+
if (errorMessage) {
163+
setErrorMessage('');
164+
}
165+
}
166+
167+
return newIds;
168+
});
162169
}}
163170
shouldShowTextInput={false}
164171
canSelectMultiple

0 commit comments

Comments
 (0)