From 10c76cc9309ce24554594e7e5a9f3da0ac9ed2dc Mon Sep 17 00:00:00 2001 From: cdOut <88325488+cdOut@users.noreply.github.com> Date: Mon, 22 Jul 2024 23:29:37 +0200 Subject: [PATCH 1/4] add reportName handling into titleField for ReportDetailsPage --- src/libs/actions/Report.ts | 12 ++++++++++++ src/pages/ReportDetailsPage.tsx | 11 ++++++++--- 2 files changed, 20 insertions(+), 3 deletions(-) diff --git a/src/libs/actions/Report.ts b/src/libs/actions/Report.ts index 20a5de4b598e..14584bc4a5f7 100644 --- a/src/libs/actions/Report.ts +++ b/src/libs/actions/Report.ts @@ -1850,6 +1850,17 @@ function clearReportFieldErrors(reportID: string, reportField: PolicyReportField }); } + const clearReportErrors = (reportID: string, fieldKey: string)=>{ + Onyx.merge(`${ONYXKEYS.COLLECTION.REPORT}${reportID}`, { + pendingFields: { + [fieldKey]: null, + }, + errorFields: { + [fieldKey]: null, + }, + }); + } + function updateReportField(reportID: string, reportField: PolicyReportField, previousReportField: PolicyReportField) { const fieldKey = ReportUtils.getReportFieldKey(reportField.fieldID); const recentlyUsedValues = allRecentlyUsedReportFields?.[fieldKey] ?? []; @@ -3888,6 +3899,7 @@ export { updateReportName, deleteReportField, clearReportFieldErrors, + clearReportErrors, resolveActionableMentionWhisper, resolveActionableReportMentionWhisper, updateRoomVisibility, diff --git a/src/pages/ReportDetailsPage.tsx b/src/pages/ReportDetailsPage.tsx index 978f37c525a7..7dae4d53d314 100644 --- a/src/pages/ReportDetailsPage.tsx +++ b/src/pages/ReportDetailsPage.tsx @@ -633,11 +633,16 @@ function ReportDetailsPage({policies, report, session, personalDetails}: ReportD const nameSectionTitleField = titleField && ( Report.clearReportFieldErrors(report.reportID, titleField)} + onClose={() => { + if(report.errorFields?.reportName){ + Report.clearReportErrors(report.reportID, 'reportName'); + } + Report.clearReportFieldErrors(report.reportID, titleField); + }} > Date: Mon, 22 Jul 2024 23:51:06 +0200 Subject: [PATCH 2/4] fix prettier --- src/libs/actions/Report.ts | 4 ++-- src/pages/ReportDetailsPage.tsx | 6 +++--- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/libs/actions/Report.ts b/src/libs/actions/Report.ts index 14584bc4a5f7..1e2f82b8d8a0 100644 --- a/src/libs/actions/Report.ts +++ b/src/libs/actions/Report.ts @@ -1850,7 +1850,7 @@ function clearReportFieldErrors(reportID: string, reportField: PolicyReportField }); } - const clearReportErrors = (reportID: string, fieldKey: string)=>{ +const clearReportErrors = (reportID: string, fieldKey: string) => { Onyx.merge(`${ONYXKEYS.COLLECTION.REPORT}${reportID}`, { pendingFields: { [fieldKey]: null, @@ -1859,7 +1859,7 @@ function clearReportFieldErrors(reportID: string, reportField: PolicyReportField [fieldKey]: null, }, }); - } +}; function updateReportField(reportID: string, reportField: PolicyReportField, previousReportField: PolicyReportField) { const fieldKey = ReportUtils.getReportFieldKey(reportField.fieldID); diff --git a/src/pages/ReportDetailsPage.tsx b/src/pages/ReportDetailsPage.tsx index 7dae4d53d314..c3148da1c3a2 100644 --- a/src/pages/ReportDetailsPage.tsx +++ b/src/pages/ReportDetailsPage.tsx @@ -633,12 +633,12 @@ function ReportDetailsPage({policies, report, session, personalDetails}: ReportD const nameSectionTitleField = titleField && ( { - if(report.errorFields?.reportName){ + if (report.errorFields?.reportName) { Report.clearReportErrors(report.reportID, 'reportName'); } Report.clearReportFieldErrors(report.reportID, titleField); From c729ac36432b36e51a8381980c3a17d9bcd1a9dc Mon Sep 17 00:00:00 2001 From: cdOut <88325488+cdOut@users.noreply.github.com> Date: Tue, 23 Jul 2024 16:33:41 +0200 Subject: [PATCH 3/4] refactor clearReportFieldErrors to use fieldKey instead --- src/components/ReportActionItem/MoneyReportView.tsx | 2 +- src/libs/actions/Report.ts | 5 ++--- src/pages/ReportDetailsPage.tsx | 4 ++-- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/src/components/ReportActionItem/MoneyReportView.tsx b/src/components/ReportActionItem/MoneyReportView.tsx index 42c9482b3bc7..f7ae06c0f123 100644 --- a/src/components/ReportActionItem/MoneyReportView.tsx +++ b/src/components/ReportActionItem/MoneyReportView.tsx @@ -95,7 +95,7 @@ function MoneyReportView({report, policy, isCombinedReport = false, shouldShowTo errors={report.errorFields?.[fieldKey]} errorRowStyles={styles.ph5} key={`menuItem-${fieldKey}`} - onClose={() => reportActions.clearReportFieldErrors(report.reportID, reportField)} + onClose={() => reportActions.clearReportFieldKeyErrors(report.reportID, fieldKey)} > { if (report.errorFields?.reportName) { - Report.clearReportErrors(report.reportID, 'reportName'); + Report.clearPolicyRoomNameErrors(report.reportID); } - Report.clearReportFieldErrors(report.reportID, titleField); + Report.clearReportFieldKeyErrors(report.reportID, fieldKey); }} > From 530343fa8bd57271a0a5861ec44dbeb006bd076a Mon Sep 17 00:00:00 2001 From: cdOut <88325488+cdOut@users.noreply.github.com> Date: Tue, 23 Jul 2024 16:51:41 +0200 Subject: [PATCH 4/4] remove unused method to clear errors --- src/libs/actions/Report.ts | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/libs/actions/Report.ts b/src/libs/actions/Report.ts index 312062d2c11a..18d62a94915d 100644 --- a/src/libs/actions/Report.ts +++ b/src/libs/actions/Report.ts @@ -1849,17 +1849,6 @@ function clearReportFieldKeyErrors(reportID: string, fieldKey: string) { }); } -const clearReportErrors = (reportID: string, fieldKey: string) => { - Onyx.merge(`${ONYXKEYS.COLLECTION.REPORT}${reportID}`, { - pendingFields: { - [fieldKey]: null, - }, - errorFields: { - [fieldKey]: null, - }, - }); -}; - function updateReportField(reportID: string, reportField: PolicyReportField, previousReportField: PolicyReportField) { const fieldKey = ReportUtils.getReportFieldKey(reportField.fieldID); const recentlyUsedValues = allRecentlyUsedReportFields?.[fieldKey] ?? []; @@ -3898,7 +3887,6 @@ export { updateReportName, deleteReportField, clearReportFieldKeyErrors, - clearReportErrors, resolveActionableMentionWhisper, resolveActionableReportMentionWhisper, updateRoomVisibility,