11import { Str } from 'expensify-common' ;
22import React , { useMemo } from 'react' ;
33import { View } from 'react-native' ;
4- import type { OnyxEntry } from 'react-native-onyx' ;
54import Icon from '@components/Icon' ;
65import MenuItemWithTopDescription from '@components/MenuItemWithTopDescription' ;
76import OfflineWithFeedback from '@components/OfflineWithFeedback' ;
@@ -19,20 +18,19 @@ import variables from '@styles/variables';
1918import * as Expensicons from '@src/components/Icon/Expensicons' ;
2019import CONST from '@src/CONST' ;
2120import type { ReservationData } from '@src/libs/TripReservationUtils' ;
22- import { getReservationsFromTripReport , getTripReservationCode , getTripReservationIcon } from '@src/libs/TripReservationUtils' ;
21+ import { getReservationsFromTripTransactions , getTripReservationCode , getTripReservationIcon } from '@src/libs/TripReservationUtils' ;
2322import ROUTES from '@src/ROUTES' ;
24- import type { Report } from '@src/types/onyx' ;
2523import type { Reservation , ReservationTimeDetails } from '@src/types/onyx/Transaction' ;
2624import type Transaction from '@src/types/onyx/Transaction' ;
2725
2826type ReservationViewProps = {
2927 reservation : Reservation ;
3028 transactionID : string ;
3129 tripRoomReportID : string ;
32- sequenceIndex : number ;
30+ reservationIndex : number ;
3331} ;
3432
35- function ReservationView ( { reservation, transactionID, tripRoomReportID, sequenceIndex } : ReservationViewProps ) {
33+ function ReservationView ( { reservation, transactionID, tripRoomReportID, reservationIndex } : ReservationViewProps ) {
3634 const theme = useTheme ( ) ;
3735 const styles = useThemeStyles ( ) ;
3836 const StyleUtils = useStyleUtils ( ) ;
@@ -141,18 +139,14 @@ function ReservationView({reservation, transactionID, tripRoomReportID, sequence
141139 iconWidth = { 20 }
142140 iconStyles = { [ StyleUtils . getTripReservationIconContainer ( false ) , styles . mr3 ] }
143141 secondaryIconFill = { theme . icon }
144- onPress = { ( ) =>
145- Navigation . navigate (
146- ROUTES . TRAVEL_TRIP_DETAILS . getRoute ( tripRoomReportID , transactionID , String ( reservation . reservationID ) , sequenceIndex , Navigation . getReportRHPActiveRoute ( ) ) ,
147- )
148- }
142+ onPress = { ( ) => Navigation . navigate ( ROUTES . TRAVEL_TRIP_DETAILS . getRoute ( tripRoomReportID , transactionID , reservationIndex , Navigation . getReportRHPActiveRoute ( ) ) ) }
149143 />
150144 ) ;
151145}
152146
153147type TripDetailsViewProps = {
154148 /** The active tripRoomReportID, used for Onyx subscription */
155- tripRoomReport : OnyxEntry < Report > ;
149+ tripRoomReportID : string ;
156150
157151 /** Whether we should display the horizontal rule below the component */
158152 shouldShowHorizontalRule : boolean ;
@@ -161,15 +155,11 @@ type TripDetailsViewProps = {
161155 tripTransactions : Transaction [ ] ;
162156} ;
163157
164- function TripDetailsView ( { tripRoomReport , shouldShowHorizontalRule, tripTransactions} : TripDetailsViewProps ) {
158+ function TripDetailsView ( { tripRoomReportID , shouldShowHorizontalRule, tripTransactions} : TripDetailsViewProps ) {
165159 const styles = useThemeStyles ( ) ;
166160 const { translate} = useLocalize ( ) ;
167161
168- if ( ! tripRoomReport ) {
169- return null ;
170- }
171-
172- const reservationsData : ReservationData [ ] = getReservationsFromTripReport ( tripRoomReport , tripTransactions ) ;
162+ const reservationsData : ReservationData [ ] = getReservationsFromTripTransactions ( tripTransactions ) ;
173163
174164 return (
175165 < View >
@@ -184,14 +174,14 @@ function TripDetailsView({tripRoomReport, shouldShowHorizontalRule, tripTransact
184174 </ View >
185175 </ View >
186176 < >
187- { reservationsData . map ( ( { reservation, transactionID, sequenceIndex } ) => {
177+ { reservationsData . map ( ( { reservation, transactionID, reservationIndex } ) => {
188178 return (
189179 < OfflineWithFeedback >
190180 < ReservationView
191181 reservation = { reservation }
192182 transactionID = { transactionID }
193- tripRoomReportID = { tripRoomReport . reportID }
194- sequenceIndex = { sequenceIndex }
183+ tripRoomReportID = { tripRoomReportID }
184+ reservationIndex = { reservationIndex }
195185 />
196186 </ OfflineWithFeedback >
197187 ) ;
0 commit comments