Skip to content

Commit c5a1f96

Browse files
authored
Merge pull request #41051 from Expensify/yuwen-dismissed
2 parents 12042db + f7bbab4 commit c5a1f96

File tree

6 files changed

+33
-1
lines changed

6 files changed

+33
-1
lines changed

src/CONST.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -654,6 +654,7 @@ const CONST = {
654654
CREATED: 'CREATED',
655655
DELEGATE_SUBMIT: 'DELEGATESUBMIT', // OldDot Action
656656
DELETED_ACCOUNT: 'DELETEDACCOUNT', // OldDot Action
657+
DISMISSED_VIOLATION: 'DISMISSEDVIOLATION',
657658
DONATION: 'DONATION', // OldDot Action
658659
EXPORTED_TO_CSV: 'EXPORTEDTOCSV', // OldDot Action
659660
EXPORTED_TO_INTEGRATION: 'EXPORTEDTOINTEGRATION', // OldDot Action

src/languages/en.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2921,6 +2921,11 @@ export default {
29212921
taxRateChanged: 'Tax rate was modified',
29222922
taxRequired: 'Missing tax rate',
29232923
},
2924+
violationDismissal: {
2925+
rter: {
2926+
manual: 'marked this receipt as cash.',
2927+
},
2928+
},
29242929
videoPlayer: {
29252930
play: 'Play',
29262931
pause: 'Pause',

src/languages/es.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3423,6 +3423,11 @@ export default {
34233423
taxRateChanged: 'La tasa de impuesto fue modificada',
34243424
taxRequired: 'Falta la tasa de impuesto',
34253425
},
3426+
violationDismissal: {
3427+
rter: {
3428+
manual: 'marcó el recibo como pagado en efectivo.',
3429+
},
3430+
},
34263431
videoPlayer: {
34273432
play: 'Reproducir',
34283433
pause: 'Pausar',

src/libs/ReportActionsUtils.ts

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,14 @@ import type {OnyxCollection, OnyxEntry, OnyxUpdate} from 'react-native-onyx';
55
import Onyx from 'react-native-onyx';
66
import type {ValueOf} from 'type-fest';
77
import CONST from '@src/CONST';
8+
import type {TranslationPaths} from '@src/languages/types';
89
import ONYXKEYS from '@src/ONYXKEYS';
910
import type {
1011
ActionName,
1112
ChangeLog,
1213
IOUMessage,
1314
OriginalMessageActionableMentionWhisper,
15+
OriginalMessageDismissedViolation,
1416
OriginalMessageIOU,
1517
OriginalMessageJoinPolicyChangeLog,
1618
OriginalMessageReimbursementDequeued,
@@ -1108,6 +1110,12 @@ function getReportActionMessageText(reportAction: OnyxEntry<ReportAction> | Empt
11081110
return reportAction?.message?.reduce((acc, curr) => `${acc}${curr?.text}`, '') ?? '';
11091111
}
11101112

1113+
function getDismissedViolationMessageText(originalMessage: OriginalMessageDismissedViolation['originalMessage']): string {
1114+
const reason = originalMessage.reason;
1115+
const violationName = originalMessage.violationName;
1116+
return Localize.translateLocal(`violationDismissal.${violationName}.${reason}` as TranslationPaths);
1117+
}
1118+
11111119
/**
11121120
* Check if the linked transaction is on hold
11131121
*/
@@ -1117,6 +1125,7 @@ function isLinkedTransactionHeld(reportActionID: string, reportID: string): bool
11171125

11181126
export {
11191127
extractLinksFromMessageHtml,
1128+
getDismissedViolationMessageText,
11201129
getOneTransactionThreadReportID,
11211130
getIOUReportIDFromReportActionPreview,
11221131
getLastClosedReportAction,

src/pages/home/report/ReportActionItem.tsx

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -612,6 +612,8 @@ function ReportActionItem({
612612
children = <ReportActionItemBasicMessage message={action.message?.[0]?.text ?? ''} />;
613613
} else if (action.actionName === CONST.REPORT.ACTIONS.TYPE.UNHOLD) {
614614
children = <ReportActionItemBasicMessage message={translate('iou.unheldExpense')} />;
615+
} else if (action.actionName === CONST.REPORT.ACTIONS.TYPE.DISMISSED_VIOLATION) {
616+
children = <ReportActionItemBasicMessage message={ReportActionsUtils.getDismissedViolationMessageText(action.originalMessage)} />;
615617
} else {
616618
const hasBeenFlagged =
617619
![CONST.MODERATION.MODERATOR_DECISION_APPROVED, CONST.MODERATION.MODERATOR_DECISION_PENDING].some((item) => item === moderationDecision) &&

src/types/onyx/OriginalMessage.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -311,6 +311,14 @@ type OriginalMessageMoved = {
311311
};
312312
};
313313

314+
type OriginalMessageDismissedViolation = {
315+
actionName: typeof CONST.REPORT.ACTIONS.TYPE.DISMISSED_VIOLATION;
316+
originalMessage: {
317+
reason: string;
318+
violationName: string;
319+
};
320+
};
321+
314322
type OriginalMessage =
315323
| OriginalMessageApproved
316324
| OriginalMessageIOU
@@ -334,7 +342,8 @@ type OriginalMessage =
334342
| OriginalMessageReimbursementDequeued
335343
| OriginalMessageMoved
336344
| OriginalMessageMarkedReimbursed
337-
| OriginalMessageActionableTrackedExpenseWhisper;
345+
| OriginalMessageActionableTrackedExpenseWhisper
346+
| OriginalMessageDismissedViolation;
338347

339348
export default OriginalMessage;
340349
export type {
@@ -360,4 +369,5 @@ export type {
360369
DecisionName,
361370
PaymentMethodType,
362371
OriginalMessageActionableTrackedExpenseWhisper,
372+
OriginalMessageDismissedViolation,
363373
};

0 commit comments

Comments
 (0)