1"use strict"; 2!function(){try{var e="undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof globalThis?globalThis:"undefined"!=typeof self?self:{},n=(new e.Error).stack;n&&(e._sentryDebugIds=e._sentryDebugIds||{},e._sentryDebugIds[n]="745564bd-e2a0-52a6-aa83-5ed99cd5ac07")}catch(e){}}(); 3(globalThis.rspackChunkowl_frontend||=[]).push([["default-src_lib_reservation_ts"],{95784(e,r,t){t.d(r,{A:()=>B});var a=t(38342),n=t(49914),s=t(49785),o=t(19681),i=t(83245),l=t(41982),d=t(78358);t(52946);var c=t(68973),u=t(87396),p=t(95084),m=t(97484),g=t(80174),v=t(52418),f=t(6807),b=t(76121),y=t(57253),h=t(22283),A=t(45086),C=t(65115),I=t(45451),P=t(74743),N=t(7240),k=t(3804);let F=e=>{let r=S(e),t=JSON.parse(sessionStorage.getItem(r));return null!=t&&(t.expiresAt=m.Ay.parse(t.expiresAt),t.createdAt=m.Ay.parse(t.createdAt),t.ancillaries=t.ancillaries&&Object.entries(t.ancillaries).reduce((e,r)=>{let[t,a]=r;return{...e,[t.toUpperCase()]:a}},{})),t},S=e=>{let r=null!=e.seats?JSON.stringify(e.seats):null;return["ReservationData",e.retailerPartnerNumber,e.marketingCarrierCode,e.arrivalLocation?.code,e.departureLocation?.code,e.fareClass,e.arrivalDate,e.arrivalTime,e.departureDate,e.departureTime,e.returnDepartureDate,e.returnDepartureTime,e.returnArrivalDate,e.returnArrivalTime,e.pax,r].filter(e=>null!=e).join("-")},T=e=>{if(!e)return null;let r=C.A.object.compact(e,!0);return Object.keys(r).length?r:null},D=e=>{let{fiscalCode:r}=e,{taxCode:t}=e;return C.A.object.compact({...e,countryCode:e.country,streetAndNumber:e.address,taxId:r||t||null,type:null},!0)},O=(e,r)=>r?{...e,contact:{...e.contact,email:e.contact.email?.toUpperCase()},passengers:e.passengers.map(e=>({...e,firstName:e.firstName?.toUpperCase(),lastName:e.lastName?.toUpperCase()})),invoiceEmail:e.invoiceEmail?.toUpperCase(),invoice:e.invoice?{...e.invoice,firstName:e.invoice.firstName.toUpperCase(),lastName:e.invoice.lastName.toUpperCase()}:e.invoice}:e,j=(e,r)=>r?e.map(e=>({...e,value:e.value.toUpperCase()})):e,M=["group_name","group_category"],x=e=>e?M.filter(r=>e[r]?.trim()).map(r=>({name:r,value:e[r]})):[],R=(e,r)=>{if(!y.A.hasPrmPassengers(r))return e;let t=y.A.resolvePrmCompanions(r.map(e=>({...e,cards:y.A.getPaxCards(e.cards)})));return e.map((e,r)=>{let a=t[r];if(!a?.cards?.length)return e;let n=new Set((e.cards??[]).map(e=>e.name).filter(Boolean)),s=a.cards.filter(e=>e.name&&!n.has(e.name));return 0===s.length?e:{...e,cards:[...e.cards??[],...s]}})},U=e=>{let{params:r,inbound:t,outbound:a,data:n,offers:s}=e;return C.A.object.compact({retailerBookingNumber:u.Ay.getRetailerBookingNumberFromCustomFields(n.customFields)||r.retailerBookingNumber,arrivalStationCode:a.arrivalStation.code,departureStationCode:a.departureStation.code,currency:r.currency,locale:r.locale,marketingCarrierCode:r.marketingCarrierCode,operatingCarrierCode:c.A.getOperatingCarrier(a)?.code??null,departureTime:a.departureTime,arrivalTime:a.arrivalTime,retailerPartnerNumber:r.retailerPartnerNumber,fareClass:r.fareClass,returnFareClass:n.returnFareClass,returnDepartureTime:t?.departureTime,returnArrivalTime:t?.arrivalTime,termsVersion:n.vacancy?.termsAndConditions?.version,city:n.city,state:n.state,zipCode:n.zipCode,countryCode:n.countryCode,streetAndNumber:n.streetAndNumber,offerId:((e,r)=>{if(!r.connections?.outbounds||!r.connections?.inbounds)return e.offerId;let{getDepartureDate:t}=p.Ay,{getSeparator:a}=I.A,n=r.connections.outbounds,s=r.connections.inbounds;return btoa(n.map((e,r)=>`${t(e)}${a("trip")}${t(s[r])}`).join(a("date")))})(a,r),offers:(0,f.V)([...s||[],...n.offers||[],...n.ancillaryOffers]),purchaser:T(n.purchaser)})},_=e=>{let r=e.match(/^pax-(\d+)-\d+$/i);return r?parseInt(r[1],10):null},w=e=>{let{types:r}=N.A.get(),t=y.A.getTypeByAge(r,e);return t?.code??null},B={buildConfirmParams:(e,r,t,a)=>{let n=O(e,k.A.get().reservation?.forceParamsUppercase?.enabled??!1),s=(0,l.A_)(),o=n.passengers.map(e=>C.A.object.removeKeys(e,["cards"])),d=b.A.getUtmParams(window.location.search),c=((e,r,t)=>{let a,n,s=t?.length?t:[];if(e.creditCardCustomFields&&(s=[...s,...Object.entries(e.creditCardCu
3stomFields).map(e=>{let[r,t]=e;return{name:r,value:t}}).filter(e=>e.value&&""!==String(e.value).trim())]),a=i.A.countryOfResidenceCustomFieldCarriers||[],(n=r?.marketingCarrier?.id)&&a.includes(n)){let r=e.invoice?.country;r&&(s=[...s,{name:"countryOfResidence",value:r}])}return s})(n,t,(e=>{if(!e.connections?.outbounds||!e.connections?.inbounds)return null;let{getSeparator:r}=I.A;return[{name:"weekly_outbounds",value:e.connections.outbounds.join(r("date"))},{name:"weekly_inbounds",value:e.connections.inbounds.join(r("date"))}]})(r)),p=u.Ay.getCheckoutAdditionalCustomFields(n.customFields),m=x(n.customFields);p.length&&(c=[...c,...p]),m.length&&(c=[...c,...m]);let{unifiedContactForm:g,pjtg:f,checkout:y}=k.A.get(),h=n.invoicePhone||n.contact.phone,A=f.enabled?f.sellerPhone??h:null;A&&(c=[...c,{name:"seller_phone",value:A}]),c=j(c,k.A.get().reservation?.forceParamsUppercase?.enabled??!1);let P=u.Ay.assignSeatsToPassengers({passengers:o,seatAncillaries:!0,outboundSegmentsCount:t?.segments.length??null,outbound:t||void 0,inbound:a}),N=g?.enabled||f?.enabled,F=n.contact,S=N?u.Ay.assignContactToLeadPassenger(P,F):P,M=C.A.object.compact({retailerBookingNumber:u.Ay.getRetailerBookingNumberFromCustomFields(n.customFields)||r.retailerBookingNumber,paymentMethod:n.paymentMethod,paymentProvider:n.paymentProvider,passengers:S,description:i.A.adyen.description,email:n.contact.email||null,phone:n.contact.phone,termsAccepted:n.termsAndPrivacy,sendMarketingEmails:(0,v.D)(n.marketing),pax:n.passengers.length,fareClass:n.fareClass,cardHolderName:n.holderName,express:!1,numberOfInstallments:n.numberOfInstallments,providerPlanId:n.providerPlanId,cpf:n.cpf,cardData:n.cardData,paymentMethodData:"pix"===n.paymentMethod?{type:"pix"}:n.paymentMethodData,browserInfo:n.browserInfo,bookingFormId:n.reservationData?.bookingFormId,id:n.reservationData?.id,streetAndNumber:n.streetAndNumber,city:n.city,countryCode:n.countryCode,state:n.state,zipCode:n.zipCode,firstName:n.passengers[0].firstName,lastName:n.passengers[0].lastName,markupFee:y?.apiDrivenFees?0:u.Ay.calculateTotalMRKPFees(n.reservationData?.fees),deviceFingerprint:n.deviceFingerprint,deviceSessionId:n.deviceSessionId,deviceEventUuid:n.deviceEventUuid,deviceId:n.deviceId,amplitudeDeviceId:s.deviceId,sessionId:s.sessionId,userId:s.userId,consent:s.consent,paymentAttemptReference:n.paymentAttemptReference,merchantName:n.merchantName,offerId:t?.offerId,platform:n.platform,shopperReference:n.shopperReference??null,paymentToken:n.paymentToken??null,utmParams:Object.keys(d).length?d:null,customFields:Object.keys(c).length?c:null,shopperDocument:n.shopperDocument,purchaseOrderNumber:n.purchaseOrderNumber||null,totalAmountShownToUser:n.visiblePrice&&n.visiblePrice.fractional,flightNumber:n.flightNumber,storePaymentMethod:n.storePaymentMethod,purchaser:T(n.purchaser),...n.invoice&&D(n.invoice)});return n.invoiceEmail&&(M.email=n.invoiceEmail),n.invoicePhone&&(M.phone=n.invoicePhone),f.enabled&&f.sellerPhone&&(M.phone=f.sellerPhone),M},buildCreateParams:e=>{let{unifiedContactForm:r,pjtg:t,reservation:a}=k.A.get(),n=O(e.data,a?.forceParamsUppercase?.enabled??!1),s=R(u.Ay.passengersSeatsAndTypes({data:n,seatAncillaries:!0,outboundSegmentsCount:e.outbound.segments.length,outbound:e.outbound,inbound:e.inbound}),e.params.passengers),o=r?.enabled||t?.enabled,i=n.contact,l=o?u.Ay.assignContactToLeadPassenger(s,i):s;return{...U({...e,data:n}),passengers:l}},buildQuickCreateParams:e=>{let{unifiedContactForm:r,pjtg:t,termsAndPrivacy:a,checkout:n,reservation:s,paymentProvidersMethods:o}=k.A.get(),i=O(e.data,s?.forceParamsUppercase?.enabled??!1),l=((e,r,t)=>{let a=[],n=[r,t].filter(e=>null!=e);for(let r=0;r<e;r++){let e;for(let t of n){for(let a of t.fares??[])if(a.passengerIds?.[r]){e=a.passengerIds[r];break}if(e)break;for(let a of t.partialFares??[])if(a.passengerIds?.[r]){e=a.passengerIds[r];break}if(e)break;for(let a of t.segments??[]){for(let t of a.fares??[])if(t.passengerIds?.[r]){e=t.passengerIds[r];break}if(e)break}if(e)break;if(t.passengers?.[r]?.id){e=t.passengers[r].id;break}}let t=null;if(e){let r=_(e);null!==r&&(t=w(r))}a.push({id:e,type:t})}return a})(i.passengers.length,e.outbound,e.inbound),c=R(u.Ay.assignIdToPassengers({passengers:i.passengers,data:i,seatAncillaries:!0,outboundSegmentsCount:e.outbound.segments.length,outbound:e.outbound,inbound:e.inbound,passengerIdsAndTypes:l}),e.params.passengers),p=d.A.getBookingAncillariesParams(i.ancillaries,i.passengers.length),m=x(i.customFields),g=
3o?.sepaDirectDebit,v="sepa_direct_debit"===i.paymentMethod&&g?.provider==="sharegroop_direct"&&g?.bankTransferEnabled===!0,f=i.invoicePhone||i.contact.phone,b=t.enabled?t.sellerPhone??f:null,y=j([...e.customFields??[],...m,...b?[{name:"seller_phone",value:b}]:[]],s?.forceParamsUppercase?.enabled??!1),h=r?.enabled||t?.enabled,A=i.contact,I=h?u.Ay.assignContactToLeadPassenger(c,A):c,P=C.A.object.compact({...U(e),countryCode:i.countryCode,reservationHold:"ox"===i.paymentMethod||"hold_reservation"===i.paymentMethod||v,title:"mr",firstName:i.passengers[0].firstName,lastName:i.passengers[0].lastName,email:i.contact.email||null,phone:i.contact.phone,termsAccepted:a.showOnlyOnLastStep?void 0:i.termsAndPrivacy,passengers:I,governmentId:I[0].governmentId,governmentIdType:I[0].governmentIdType,governmentIdIssuingCountry:I[0].governmentIdIssuingCountry,governmentIdIssuingState:I[0].governmentIdIssuingState,governmentIdValidityExpiration:I[0].governmentIdValidityExpiration,gender:i.passengers[0].gender,cards:i.meta.promocode??i.meta.cards,ancillaries:p,fareClass:i.fareClass,returnFareClass:i.returnFareClass,markupFee:n?.apiDrivenFees?0:u.Ay.calculateTotalMRKPFees(i.fees),customFields:y.length?y:null,...i.invoice&&D(i.invoice)});return i.invoiceEmail&&(P.email=i.invoiceEmail),i.invoicePhone&&(P.phone=i.invoicePhone),t.enabled&&t.sellerPhone&&(P.phone=t.sellerPhone),P},buildPayParams:e=>{let r=(0,l.A_)();return{id:e.reservationCode??"",bookingFormId:e.reservationInfo?.bookingFormId,paymentMethod:e.paymentMethod,paymentProvider:e.paymentProvider,passengers:e.reservationInfo?.passengers??[],description:i.A.adyen.description,cardHolderName:e.holderName,cpf:e.cpf,cardData:e.cardData,paymentMethodData:"pix"===e.paymentMethod?{type:"pix"}:e.paymentMethodData,browserInfo:e.browserInfo,streetAndNumber:e.streetAndNumber,city:e.city,countryCode:e.countryCode,state:e.state,zipCode:e.zipCode,deviceFingerprint:e.deviceFingerprint,deviceId:e.deviceId,amplitudeDeviceId:r.deviceId,sessionId:r.sessionId,userId:r.userId,consent:r.consent,storePaymentMethod:e.storePaymentMethod,termsAccepted:e.termsAndPrivacy,platform:e.platform??void 0,purchaseOrderNumber:e.purchaseOrderNumber||null}},setSessionStorage:(e,r)=>{sessionStorage.setItem(S(r),JSON.stringify(e))},getSessionStorage:F,resetSessionStorage:e=>{let r=S(e),t=F(e);sessionStorage.removeItem(r),t&&sessionStorage.removeItem(String(t.id))},adjustTimeZones:(e,r)=>{var t;let i,l=m.Ay.today(),d=null!=(i=e).expiresAt?(0,s.o)((0,o.O)(i.expiresAt),(0,o.O)(i?.createdAt)):10,c=(t=(0,a.z)(l,d),(0,n.p)(t,-30,void 0));return{price:e.price,originalPrice:e.originalPrice,expiresAt:c,createdAt:l,period:d,bookingFormId:e.bookingFormId,id:e.id,fees:r,fullResponse:e.fullResponse}},setCheckoutPath:(e,r)=>{sessionStorage.setItem(e,r)},getCheckoutPath:e=>sessionStorage.getItem(e),cancelViaBeacon:e=>{try{let r=i.A.api.distribusion.url,t=A.A.build([r,"api",`/reservations/${e}/cancel`]),a=JSON.stringify({reservation_id:String(e)}),n=new Blob([a],{type:"application/json"});return navigator.sendBeacon(t,n)}catch(e){return console.error("Failed to cancel reservation via beacon:",e),!1}},getReservationFees:(e,r)=>{if(r){var t=e.fullResponse;if(!t)return[];let r=(0,g.gX)(t,{convertKeys:"LowerCamel",convertValues:{amount:"Price"}});return null===r||"object"!=typeof r||Array.isArray(r)?(h.A.captureMessage("Reservation fullResponse did not transform to a fee-carrying object",{level:"error",tags:{component:"reservation",operation:"extractFeesFromFullResponse",retailerPartnerNumber:P.Ay.get().retailerPartnerNumber?.toString()},extra:{receivedShape:null===r?"null":Array.isArray(r)?"array":typeof r,topLevelKeys:"object"==typeof t&&null!==t?Object.keys(t).join(","):typeof t}}),[]):r.fees||[]}return e.fees||[]},getAncillaryPriceMap:e=>{let r=new Map,t=e?.fullResponse,a=t?.meta?.currency;if(!t?.included||!a)return r;for(let e of t.included){if(e?.type!=="ancillaries")continue;let t=e.attributes?.code,n=e.attributes?.price;t&&null!=n&&r.set(t,{fractional:n,currency:a})}return r},buildUpdateParams:e=>{let{paxCards:r,bookingCards:t,variables:a,form:n}=e,{contact:s,reservationData:o,meta:i,passengers:l}=n,d=r?.map(e=>e.filter(e=>e.name&&e.code))??l.map(e=>{let{cards:r}=e;return r?.filter(e=>Object.values(e).every(Boolean))??[]})??[],c=t??i.cards??[];return a?{...a,cards:c,passengers:a.passengers.map((e,r)=>({...e,cards:d[r]}))}:{id:o.id,email:s.email,cards:c,passengers:d.map(e=>({cards:e}))}}}},49914(e,r,t){var a=t(79197);function n(e,r,t){return(0,a.A)(e,1e3*r,t)}t.d(r,{p:()=>n})}}]); 4//# sourceMappingURL=default-src_lib_reservation_ts.eca1b74db9c10fd8.js.map 5//# debugId=745564bd-e2a0-52a6-aa83-5ed99cd5ac07
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.