@@ -7,7 +7,7 @@ import type {OnyxCollection, OnyxEntry} from 'react-native-onyx';
77import Onyx from 'react-native-onyx' ;
88import type { SetNonNullable } from 'type-fest' ;
99import { FallbackAvatar } from '@components/Icon/Expensicons' ;
10- import type { LocaleContextProps } from '@components/LocaleContextProvider' ;
10+ import type { LocaleContextProps , LocalizedTranslate } from '@components/LocaleContextProvider' ;
1111import { getEnabledCategoriesCount } from '@libs/CategoryUtils' ;
1212import filterArrayByMatch from '@libs/filterArrayByMatch' ;
1313import { isReportMessageAttachment } from '@libs/isReportMessageAttachment' ;
@@ -477,7 +477,8 @@ function getAlternateText(
477477 const isGroupChat = reportUtilsIsGroupChat ( report ) ;
478478 const isExpenseThread = isMoneyRequest ( report ) ;
479479 const formattedLastMessageText =
480- formatReportLastMessageText ( Parser . htmlToText ( option . lastMessageText ?? '' ) ) || getLastMessageTextForReport ( { report, lastActorDetails, isReportArchived} ) ;
480+ // eslint-disable-next-line @typescript-eslint/no-deprecated
481+ formatReportLastMessageText ( Parser . htmlToText ( option . lastMessageText ?? '' ) ) || getLastMessageTextForReport ( { translate : translateLocal , report, lastActorDetails, isReportArchived} ) ;
481482 const reportPrefix = getReportSubtitlePrefix ( report ) ;
482483 const formattedLastMessageTextWithPrefix = reportPrefix + formattedLastMessageText ;
483484
@@ -598,6 +599,7 @@ function getLastActorDisplayNameFromLastVisibleActions(report: OnyxEntry<Report>
598599 * Get the last message text from the report directly or from other sources for special cases.
599600 */
600601function getLastMessageTextForReport ( {
602+ translate,
601603 report,
602604 lastActorDetails,
603605 movedFromReport,
@@ -607,6 +609,7 @@ function getLastMessageTextForReport({
607609 policyForMovingExpensesID,
608610 reportMetadata,
609611} : {
612+ translate : LocalizedTranslate ;
610613 report : OnyxEntry < Report > ;
611614 lastActorDetails : Partial < PersonalDetails > | null ;
612615 movedFromReport ?: OnyxEntry < Report > ;
@@ -632,21 +635,18 @@ function getLastMessageTextForReport({
632635 case CONST . REPORT . ARCHIVE_REASON . ACCOUNT_CLOSED :
633636 case CONST . REPORT . ARCHIVE_REASON . REMOVED_FROM_POLICY :
634637 case CONST . REPORT . ARCHIVE_REASON . POLICY_DELETED : {
635- // eslint-disable-next-line @typescript-eslint/no-deprecated
636- lastMessageTextFromReport = translateLocal ( `reportArchiveReasons.${ archiveReason } ` , {
638+ lastMessageTextFromReport = translate ( `reportArchiveReasons.${ archiveReason } ` , {
637639 displayName : formatPhoneNumberPhoneUtils ( getDisplayNameOrDefault ( lastActorDetails ) ) ,
638640 policyName : getPolicyName ( { report, policy} ) ,
639641 } ) ;
640642 break ;
641643 }
642644 case CONST . REPORT . ARCHIVE_REASON . BOOKING_END_DATE_HAS_PASSED : {
643- // eslint-disable-next-line @typescript-eslint/no-deprecated
644- lastMessageTextFromReport = translateLocal ( `reportArchiveReasons.${ archiveReason } ` ) ;
645+ lastMessageTextFromReport = translate ( `reportArchiveReasons.${ archiveReason } ` ) ;
645646 break ;
646647 }
647648 default : {
648- // eslint-disable-next-line @typescript-eslint/no-deprecated
649- lastMessageTextFromReport = translateLocal ( `reportArchiveReasons.default` ) ;
649+ lastMessageTextFromReport = translate ( `reportArchiveReasons.default` ) ;
650650 }
651651 }
652652 } else if ( isMoneyRequestAction ( lastReportAction ) ) {
@@ -685,14 +685,11 @@ function getLastMessageTextForReport({
685685 } else if ( isDeletedParentAction ( lastReportAction ) && reportUtilsIsChatReport ( report ) ) {
686686 lastMessageTextFromReport = getDeletedParentActionMessageForChatReport ( lastReportAction ) ;
687687 } else if ( isPendingRemove ( lastReportAction ) && report ?. reportID && isThreadParentMessage ( lastReportAction , report . reportID ) ) {
688- // eslint-disable-next-line @typescript-eslint/no-deprecated
689- lastMessageTextFromReport = translateLocal ( 'parentReportAction.hiddenMessage' ) ;
688+ lastMessageTextFromReport = translate ( 'parentReportAction.hiddenMessage' ) ;
690689 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . MARKED_REIMBURSED ) ) {
691- // eslint-disable-next-line @typescript-eslint/no-deprecated
692690 lastMessageTextFromReport = getMarkedReimbursedMessage ( lastReportAction ) ;
693691 } else if ( isReportMessageAttachment ( { text : report ?. lastMessageText ?? '' , html : report ?. lastMessageHtml , type : '' } ) ) {
694- // eslint-disable-next-line @typescript-eslint/no-deprecated
695- lastMessageTextFromReport = `[${ translateLocal ( 'common.attachment' ) } ]` ;
692+ lastMessageTextFromReport = `[${ translate ( 'common.attachment' ) } ]` ;
696693 } else if ( isModifiedExpenseAction ( lastReportAction ) ) {
697694 const properSchemaForModifiedExpenseMessage = getForReportAction ( {
698695 reportAction : lastReportAction ,
@@ -705,11 +702,9 @@ function getLastMessageTextForReport({
705702 } else if ( isMovedTransactionAction ( lastReportAction ) ) {
706703 lastMessageTextFromReport = Parser . htmlToText ( getMovedTransactionMessage ( lastReportAction ) ) ;
707704 } else if ( isTaskAction ( lastReportAction ) ) {
708- // eslint-disable-next-line @typescript-eslint/no-deprecated
709- lastMessageTextFromReport = formatReportLastMessageText ( getTaskReportActionMessage ( translateLocal , lastReportAction ) . text ) ;
705+ lastMessageTextFromReport = formatReportLastMessageText ( getTaskReportActionMessage ( translate , lastReportAction ) . text ) ;
710706 } else if ( isCreatedTaskReportAction ( lastReportAction ) ) {
711- // eslint-disable-next-line @typescript-eslint/no-deprecated
712- lastMessageTextFromReport = getTaskCreatedMessage ( translateLocal , lastReportAction , getReportOrDraftReport ( lastReportAction ?. childReportID ) ) ;
707+ lastMessageTextFromReport = getTaskCreatedMessage ( translate , lastReportAction , getReportOrDraftReport ( lastReportAction ?. childReportID ) ) ;
713708 } else if (
714709 isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . SUBMITTED ) ||
715710 isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . SUBMITTED_AND_CLOSED ) ||
@@ -720,38 +715,29 @@ function getLastMessageTextForReport({
720715 const isPendingAdd = lastReportAction . pendingAction === CONST . RED_BRICK_ROAD_PENDING_ACTION . ADD ;
721716
722717 if ( wasSubmittedViaHarvesting ) {
723- // eslint-disable-next-line @typescript-eslint/no-deprecated
724- lastMessageTextFromReport = Parser . htmlToText ( translateLocal ( 'iou.automaticallySubmitted' ) ) ;
718+ lastMessageTextFromReport = Parser . htmlToText ( translate ( 'iou.automaticallySubmitted' ) ) ;
725719 } else if ( hasPendingDEWSubmit ( reportMetadata , isDEWPolicy ) && isPendingAdd ) {
726- // eslint-disable-next-line @typescript-eslint/no-deprecated
727- lastMessageTextFromReport = translateLocal ( 'iou.queuedToSubmitViaDEW' ) ;
720+ lastMessageTextFromReport = translate ( 'iou.queuedToSubmitViaDEW' ) ;
728721 } else {
729- // eslint-disable-next-line @typescript-eslint/no-deprecated
730- lastMessageTextFromReport = translateLocal ( 'iou.submitted' , { memo : getOriginalMessage ( lastReportAction ) ?. message } ) ;
722+ lastMessageTextFromReport = translate ( 'iou.submitted' , { memo : getOriginalMessage ( lastReportAction ) ?. message } ) ;
731723 }
732724 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . APPROVED ) ) {
733725 const { automaticAction} = getOriginalMessage ( lastReportAction ) ?? { } ;
734726 if ( automaticAction ) {
735- // eslint-disable-next-line @typescript-eslint/no-deprecated
736- lastMessageTextFromReport = Parser . htmlToText ( translateLocal ( 'iou.automaticallyApproved' ) ) ;
727+ lastMessageTextFromReport = Parser . htmlToText ( translate ( 'iou.automaticallyApproved' ) ) ;
737728 } else {
738- // eslint-disable-next-line @typescript-eslint/no-deprecated
739- lastMessageTextFromReport = translateLocal ( 'iou.approvedMessage' ) ;
729+ lastMessageTextFromReport = translate ( 'iou.approvedMessage' ) ;
740730 }
741731 } else if ( isDynamicExternalWorkflowSubmitFailedAction ( lastReportAction ) ) {
742- // eslint-disable-next-line @typescript-eslint/no-deprecated
743- lastMessageTextFromReport = getOriginalMessage ( lastReportAction ) ?. message ?? translateLocal ( 'iou.error.genericCreateFailureMessage' ) ;
732+ lastMessageTextFromReport = getOriginalMessage ( lastReportAction ) ?. message ?? translate ( 'iou.error.genericCreateFailureMessage' ) ;
744733 } else if ( isUnapprovedAction ( lastReportAction ) ) {
745- // eslint-disable-next-line @typescript-eslint/no-deprecated
746- lastMessageTextFromReport = translateLocal ( 'iou.unapproved' ) ;
734+ lastMessageTextFromReport = translate ( 'iou.unapproved' ) ;
747735 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . FORWARDED ) ) {
748736 const { automaticAction} = getOriginalMessage ( lastReportAction ) ?? { } ;
749737 if ( automaticAction ) {
750- // eslint-disable-next-line @typescript-eslint/no-deprecated
751- lastMessageTextFromReport = Parser . htmlToText ( translateLocal ( 'iou.automaticallyForwarded' ) ) ;
738+ lastMessageTextFromReport = Parser . htmlToText ( translate ( 'iou.automaticallyForwarded' ) ) ;
752739 } else {
753- // eslint-disable-next-line @typescript-eslint/no-deprecated
754- lastMessageTextFromReport = translateLocal ( 'iou.forwarded' ) ;
740+ lastMessageTextFromReport = translate ( 'iou.forwarded' ) ;
755741 }
756742 } else if ( lastReportAction ?. actionName === CONST . REPORT . ACTIONS . TYPE . REJECTED ) {
757743 lastMessageTextFromReport = getRejectedReportMessage ( ) ;
@@ -764,61 +750,45 @@ function getLastMessageTextForReport({
764750 } else if ( isActionableAddPaymentCard ( lastReportAction ) ) {
765751 lastMessageTextFromReport = getReportActionMessageText ( lastReportAction ) ;
766752 } else if ( lastReportAction ?. actionName === CONST . REPORT . ACTIONS . TYPE . EXPORTED_TO_INTEGRATION ) {
767- // eslint-disable-next-line @typescript-eslint/no-deprecated
768- lastMessageTextFromReport = getExportIntegrationLastMessageText ( translateLocal , lastReportAction ) ;
753+ lastMessageTextFromReport = getExportIntegrationLastMessageText ( translate , lastReportAction ) ;
769754 } else if ( lastReportAction ?. actionName === CONST . REPORT . ACTIONS . TYPE . RECEIPT_SCAN_FAILED ) {
770- // eslint-disable-next-line @typescript-eslint/no-deprecated
771- lastMessageTextFromReport = translateLocal ( 'iou.receiptScanningFailed' ) ;
755+ lastMessageTextFromReport = translate ( 'iou.receiptScanningFailed' ) ;
772756 } else if ( lastReportAction ?. actionName && isOldDotReportAction ( lastReportAction ) ) {
773- // eslint-disable-next-line @typescript-eslint/no-deprecated
774- lastMessageTextFromReport = getMessageOfOldDotReportAction ( translateLocal , lastReportAction , false ) ;
757+ lastMessageTextFromReport = getMessageOfOldDotReportAction ( translate , lastReportAction , false ) ;
775758 } else if ( isActionableJoinRequest ( lastReportAction ) ) {
776- // eslint-disable-next-line @typescript-eslint/no-deprecated
777- lastMessageTextFromReport = getJoinRequestMessage ( translateLocal , lastReportAction ) ;
759+ lastMessageTextFromReport = getJoinRequestMessage ( translate , lastReportAction ) ;
778760 } else if ( lastReportAction ?. actionName === CONST . REPORT . ACTIONS . TYPE . ROOM_CHANGE_LOG . LEAVE_ROOM ) {
779- // eslint-disable-next-line @typescript-eslint/no-deprecated
780- lastMessageTextFromReport = translateLocal ( 'report.actions.type.leftTheChat' ) ;
761+ lastMessageTextFromReport = translate ( 'report.actions.type.leftTheChat' ) ;
781762 } else if ( lastReportAction ?. actionName === CONST . REPORT . ACTIONS . TYPE . RESOLVED_DUPLICATES ) {
782- // eslint-disable-next-line @typescript-eslint/no-deprecated
783- lastMessageTextFromReport = translateLocal ( 'violations.resolvedDuplicates' ) ;
763+ lastMessageTextFromReport = translate ( 'violations.resolvedDuplicates' ) ;
784764 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . ROOM_CHANGE_LOG . UPDATE_ROOM_DESCRIPTION ) ) {
785- // eslint-disable-next-line @typescript-eslint/no-deprecated
786- lastMessageTextFromReport = Parser . htmlToText ( getUpdateRoomDescriptionMessage ( translateLocal , lastReportAction ) ) ;
765+ lastMessageTextFromReport = Parser . htmlToText ( getUpdateRoomDescriptionMessage ( translate , lastReportAction ) ) ;
787766 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . ROOM_CHANGE_LOG . UPDATE_ROOM_AVATAR ) ) {
788- // eslint-disable-next-line @typescript-eslint/no-deprecated
789- lastMessageTextFromReport = getRoomAvatarUpdatedMessage ( translateLocal , lastReportAction ) ;
767+ lastMessageTextFromReport = getRoomAvatarUpdatedMessage ( translate , lastReportAction ) ;
790768 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . RETRACTED ) ) {
791- // eslint-disable-next-line @typescript-eslint/no-deprecated
792- lastMessageTextFromReport = translateLocal ( 'iou.retracted' ) ;
769+ lastMessageTextFromReport = translate ( 'iou.retracted' ) ;
793770 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . REOPENED ) ) {
794- // eslint-disable-next-line @typescript-eslint/no-deprecated
795- lastMessageTextFromReport = translateLocal ( 'iou.reopened' ) ;
771+ lastMessageTextFromReport = translate ( 'iou.reopened' ) ;
796772 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . CHANGE_POLICY ) ) {
797773 lastMessageTextFromReport = getPolicyChangeMessage ( lastReportAction ) ;
798774 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . TRAVEL_UPDATE ) ) {
799- // eslint-disable-next-line @typescript-eslint/no-deprecated
800- lastMessageTextFromReport = getTravelUpdateMessage ( translateLocal , lastReportAction ) ;
775+ lastMessageTextFromReport = getTravelUpdateMessage ( translate , lastReportAction ) ;
801776 } else if ( isInviteOrRemovedAction ( lastReportAction ) ) {
802- // eslint-disable-next-line @typescript-eslint/no-deprecated
803- lastMessageTextFromReport = getRoomChangeLogMessage ( translateLocal , lastReportAction ) ;
777+ lastMessageTextFromReport = getRoomChangeLogMessage ( translate , lastReportAction ) ;
804778 } else if ( isRenamedAction ( lastReportAction ) ) {
805- // eslint-disable-next-line @typescript-eslint/no-deprecated
806- lastMessageTextFromReport = getRenamedAction ( translateLocal , lastReportAction , isExpenseReport ( report ) ) ;
779+ lastMessageTextFromReport = getRenamedAction ( translate , lastReportAction , isExpenseReport ( report ) ) ;
807780 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . DELETED_TRANSACTION ) ) {
808781 lastMessageTextFromReport = getDeletedTransactionMessage ( lastReportAction ) ;
809782 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . TAKE_CONTROL ) || isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . REROUTE ) ) {
810- // eslint-disable-next-line @typescript-eslint/no-deprecated
811- lastMessageTextFromReport = Parser . htmlToText ( getChangedApproverActionMessage ( translateLocal , lastReportAction ) ) ;
783+ lastMessageTextFromReport = Parser . htmlToText ( getChangedApproverActionMessage ( translate , lastReportAction ) ) ;
812784 } else if ( isMovedAction ( lastReportAction ) ) {
813785 lastMessageTextFromReport = Parser . htmlToText ( getMovedActionMessage ( lastReportAction , report ) ) ;
814786 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . UNREPORTED_TRANSACTION ) ) {
815787 lastMessageTextFromReport = Parser . htmlToText ( getUnreportedTransactionMessage ( lastReportAction ) ) ;
816788 } else if ( isActionableMentionWhisper ( lastReportAction ) ) {
817- // eslint-disable-next-line @typescript-eslint/no-deprecated
818- lastMessageTextFromReport = Parser . htmlToText ( getActionableMentionWhisperMessage ( translateLocal , lastReportAction ) ) ;
789+ lastMessageTextFromReport = Parser . htmlToText ( getActionableMentionWhisperMessage ( translate , lastReportAction ) ) ;
819790 } else if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . DYNAMIC_EXTERNAL_WORKFLOW_ROUTED ) ) {
820- // eslint-disable-next-line @typescript-eslint/no-deprecated
821- lastMessageTextFromReport = getDynamicExternalWorkflowRoutedMessage ( lastReportAction , translateLocal ) ;
791+ lastMessageTextFromReport = getDynamicExternalWorkflowRoutedMessage ( lastReportAction , translate ) ;
822792 }
823793 if ( isActionOfType ( lastReportAction , CONST . REPORT . ACTIONS . TYPE . POLICY_CHANGE_LOG . UPDATE_MAX_EXPENSE_AMOUNT ) ) {
824794 // eslint-disable-next-line @typescript-eslint/no-deprecated
@@ -964,7 +934,8 @@ function createOption(
964934
965935 // If displaying chat preview line is needed, let's overwrite the default alternate text
966936 const lastActorDetails = personalDetails ?. [ report ?. lastActorAccountID ?? String ( CONST . DEFAULT_NUMBER_ID ) ] ?? { } ;
967- result . lastMessageText = getLastMessageTextForReport ( { report, lastActorDetails, isReportArchived : ! ! result . private_isArchived } ) ;
937+ // eslint-disable-next-line @typescript-eslint/no-deprecated
938+ result . lastMessageText = getLastMessageTextForReport ( { translate : translateLocal , report, lastActorDetails, isReportArchived : ! ! result . private_isArchived } ) ;
968939 result . alternateText =
969940 showPersonalDetails && personalDetail ?. login
970941 ? personalDetail . login
0 commit comments