// Asksuite Pixel 1.0.0 | MIT License !function(o,c,e,a){function n(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function i(t){for(var e=1;ee.length)&&(t=e.length);for(var r=0,n=Array(t);rNumber(t.quantity)?r:Number(t.quantity);return{currency:(5<(null==t||null==(e=t.currencyCode)?void 0:e.length)?a:t.currencyCode)||a,price:Number(Number(c.stringToNumber(t.price)).toFixed(3)),quantity:r||1}}).filter(function(e){return e.price})).length?{eventName:"Purchase",data:{products:e,dataLayer:n}}:(console.log("event dont be sended because products is empty"),null)):null}},{key:"formatItemToDataLayer",value:function(e){var t=((o.AskPixelObject||{}).options||{}).itemFormat,r=((o.AskPixelObject||{}).options||{}).enableOrderPlacedEvent,n=((o.AskPixelObject||{}).options||{}).enableAvvioConvertEvent,a=((o.AskPixelObject||{}).options||{}).enableEventBuyEvent,c=((o.AskPixelObject||{}).options||{}).enableConversionEvent,i=((o.AskPixelObject||{}).options||{}).useOnlyEcommerceValue;return e&&("the-europe-hotel"===t?this.formatItemToDataLayer__EuropeHotel(e):c&&"conversion"===e[1]?this.formatItemToDataLayer__ConversionEvent(e):r&&"orderPlaced"===e.event||n&&"convert"===e.avvioApp||a&&"EventBuy"===e.event?this.formatItemToDataLayer__TransactionProducts(e):i?this.formatItemToDataLayer__UseEcommerceTotalValue(e):"flipto.confirmation.load"===e.event?this.formatItemToDataLayer__fliptoEvent(e):"gtm.purchase"===e.event?this.formatItemToDataLayer__GTMPurchase(e):"ga4_purchase"===e.event?this.formatItemToDataLayer__GA4Purchase(e):"purchase"===e.event?this.formatItemToDataLayer__Purchase(e):"reserva"===e.event?this.formatItemToDataLayer__Reserva(e):this.isWuBookPurchase(e)?this.formatItemToDataLayer__Wubook(e):this.isHSystemV2(e)?this.formatItemToDataLayer__HSystemV2(e):this.isEventPurchase(e)?this.formatItemToDataLayer__EventPurchase(e):this.isWitBookingPurchase(e)?this.formatItemToDataLayer__WitBooking(e):this.purchaseAsObject(e)?this.formatItemToDataLayer__PurchaseAsObject(e):e)}},{key:"isWitBookingPurchase",value:function(e){return"Wit_Purchase"===(null==e?void 0:e.event)&&"Confirmation"===(null==e?void 0:e.content_subcategory)}},{key:"isEventPurchase",value:function(e){var e=Object.values(e);return Array.isArray(e)&&3<=e.length&&"event"===e[0]&&"purchase"===e[1]&&!(null==(e=e[2])||!e.transaction_id)}},{key:"purchaseAsObject",value:function(e){var e=Object.values(e),t=e.some(function(e){return"purchase"===e}),r=e.some(function(e){return 0<(null==e?void 0:e.value)});return Array.isArray(e)&&t&&r}},{key:"isWuBookPurchase",value:function(e){var t;return null!=e&&e.hasOwnProperty("affiliation")?!!(null!=e&&null!=(t=e.affiliation)&&null!=(t=t.toLowerCase())&&t.includes("wubook")&&null!=e&&e.transaction_id&&null!=e&&e.value):(t=Object.values(e),Array.isArray(t)&&t.some(function(e){return null==e?void 0:e.hasOwnProperty("affiliation")})&&t.some(function(e){return null==e||null==(e=e.affiliation)||null==(e=e.toLowerCase())?void 0:e.includes("wubook")}))}},{key:"isHSystemV2",value:function(e){return e&&e.ecommerce&&e.ecommerce.purchase&&e.ecommerce.purchase.actionField&&e.ecommerce.purchase.actionField.transaction_id&&Array.isArray(e.ecommerce.purchase.items)&&location.origin.includes("hsystem")&&location.pathname.includes("Success_V2")}},{key:"formatItemToDataLayer__EuropeHotel",value:function(e){return t.formatItemToDataLayer__TransactionProducts(e)}},{key:"formatItemToDataLayer__TransactionProducts",value:function(e){return e.transactionId&&e.transactionTotal&&e.transactionProducts&&Array.isArray(e.transactionProducts)?{eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{currencyCode:e.currency,purchase:{actionField:{id:e.transactionId,revenue:e.transactionTotal,tax:null,currency:e.currency},products:e.transactionProducts.map(function(e){return{name:e.name||e.productName,price:e.price,category:e.category,quantity:e.quantity}})}}}:e}},{key:"formatItemToDataLayer__fliptoEvent",value:function(e){var t;return e.hasOwnProperty("flipto")&&(t=e.flipto).confirmation&&t.amount?{source:"flipto-event",eventDetails:{category:"flipto",action:"confirmation",event:e},ecommerce:{currencyCode:t.currency,purchase:{actionField:{id:t.confirmation,revenue:t.amount,tax:null,currency:t.currency},products:[{name:"",price:t.amount,category:"",quantity:1}]}}}:e}},{key:"formatItemToDataLayer__GTMPurchase",value:function(e){var t;return"gtm.purchase"===e.event&&(t=!e.paymentData.hasOwnProperty("paymentSituation")||"aprovado"===(null==(t=e.paymentData)?void 0:t.paymentSituation),e.transaction_id)&&e.paymentData.amountPaid&&e.paymentData.code&&t?{source:"gtm.purchase",eventDetails:{category:"gtm.purchase",action:"confirmation",event:e},ecommerce:{purchase:{actionField:{id:e.transaction_id,tax:null},products:e.purchase.items.map(function(e){return{name:e.item_name||"",price:e.price,category:"",quantity:1,currency:e.currency||""}})}}}:e}},{key:"formatItemToDataLayer__GA4Purchase",value:function(e){var t,r;return"ga4_purchase"===e.event&&(r=null==e?void 0:e.ecommerce).value&&r.transaction_id?{source:"ga4_purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:null==(t=r.items[0])?void 0:t.confirm_id,tax:r.tax,currency:r.currency},products:r.items.map(function(e){return{name:e.item_name||"",price:e.price,category:"",quantity:e.quantity,currency:e.currency||""}})}}}:e}},{key:"formatItemToDataLayer__Purchase",value:function(e){var t,r;return"purchase"!==e.event?e:null!=e&&e.price_eur&&null!=e&&e.cart?this.dataLayerPurchaseSynergyHotusa(e):(r=(null==e?void 0:e.ecommerce.purchase)||(null==e?void 0:e.ecommerce))&&r.value&&r.transaction_id?{source:"purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:"".concat(r.transaction_id," - ").concat((null==(t=r.items[0])?void 0:t.item_id)||(null==(t=r.items[0])?void 0:t.id)),tax:r.tax,currency:r.currency},products:r.items.map(function(e){return{name:e.item_name||e.name||"",price:e.price,category:"",quantity:e.quantity,currency:r.currency||""}})}}}:e}},{key:"dataLayerPurchaseSynergyHotusa",value:function(e){var r=[],t=(Object.entries(null==e?void 0:e.cart).forEach(function(e){var e=l(e,2),e=(e[0],e[1]),t=null==e||null==(t=e.price)?void 0:t.replace(/[^\d.,]/g,"");r.push({name:(null==e?void 0:e.name)||"",price:parseFloat(t),category:(null==e?void 0:e.code)||"",quantity:1,currency:(null==e?void 0:e.currency)||""})}),(null==(t=r[0])?void 0:t.currency)||"");return{source:"purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:null==e?void 0:e.tracking_id,tax:null,currency:t},products:r}}}}},{key:"formatItemToDataLayer__Reserva",value:function(e){var t,r;return"reserva"===e.event&&(r=e.reserva,t=e.valor)&&r?{source:"purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:r,tax:null,currency:null},products:[{name:"",price:t.replace(/\./g,""),category:"",quantity:e.quantidade,currency:""}]}}}:e}},{key:"formatItemToDataLayer__PurchaseAsObject",value:function(e){var t,r,n=Object.values(e).find(function(e){return 0<(null==e?void 0:e.value)});return n&&null!=n&&n.value?(t=n.value,{source:"purchase_as_object",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:(null==n?void 0:n.transaction_id)||"no_transaction_id",tax:null,currency:r=(null==n?void 0:n.currency)||"",coupon:(null==n?void 0:n.coupon)||""},products:[{name:"",price:t,category:"",quantity:e.quantidade,currency:r}]}}}):e}},{key:"formatItemToDataLayer__Wubook",value:function(e){var t,r=Object.values(e),r=null!=e&&e.affiliation?e:r.find(function(e){return null==e||null==(e=e.affiliation)||null==(e=e.toLowerCase())?void 0:e.includes("wubook")});return r&&null!=r&&r.transaction_id&&null!=r&&r.value?(t=r.value,{source:"purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:r.transaction_id,tax:null,currency:(null==r?void 0:r.currency)||""},products:[{name:"",price:t,category:"",quantity:e.quantidade,currency:""}]}}}):e}},{key:"formatItemToDataLayer__UseEcommerceTotalValue",value:function(e){var t,r;return e&&e.ecommerce&&e.ecommerce.purchase&&Array.isArray(e.ecommerce.purchase.products)&&e.ecommerce.purchase.actionField?(r=Number(Number(e.ecommerce.purchase.actionField.revenue).toFixed(3)),t=Number(Number(e.ecommerce.purchase.actionField.tax).toFixed(3)),r=Number((r+t).toFixed(3)),i(i({},e),{},{ecommerce:i(i({},e.ecommerce),{},{purchase:i(i({},e.ecommerce.purchase),{},{products:[{name:"",price:r,category:"",quantity:1,currency:""}]})})})):e}},{key:"formatItemToDataLayer__ConversionEvent",value:function(e){var t=e[2];return t&&t.value&&t.transaction_id?{source:"conversion-event",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{currencyCode:t.currency,purchase:{actionField:{id:t.transaction_id,revenue:t.value,tax:null},products:[{price:t.value,quantity:1}]}}}:e}},{key:"formatItemToDataLayer__HSystemV2",value:function(e){var t=e.ecommerce.purchase.actionField.transaction_id,r=e.ecommerce.purchase.actionField.tax,n=e.ecommerce.currency,a=e.ecommerce.purchase.actionField.value,c="",i="";return Array.isArray(e.ecommerce.purchase.items)&&e.ecommerce.purchase.items.length&&(c=e.ecommerce.purchase.items[0].item_name||"",i=e.ecommerce.purchase.items[0].item_category||""),{source:"purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:t,tax:r,currency:n},products:[{name:c,price:a,category:i,quantity:e.quantidade,currency:n}]}}}}},{key:"formatItemToDataLayer__EventPurchase",value:function(e){Object.values(e);var t=e[2],r=t.value,n=t.transaction_id,a=(null==t?void 0:t.currency)||"",t=null!=t&&t.items?t.items.map(function(e){var t=null!=e&&e.item_name?null==e?void 0:e.item_name:"",r=null!=e&&e.price?null==e?void 0:e.price:"",n=null!=e&&e.quantity?null==e?void 0:e.quantity:"";return{name:t,price:r,category:null!=e&&e.item_category?null==e?void 0:e.item_category:"",quantity:n,currency:a}}):[{name:"",price:r,category:"",quantity:e.quantidade,currency:""}];return{source:"purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:n,tax:null,currency:a},products:t}}}}},{key:"formatItemToDataLayer__WitBooking",value:function(t){var e;return{source:"purchase",eventDetails:{category:"Ecommerce",action:"Purchase"},ecommerce:{purchase:{actionField:{id:null==t||null==(e=t.ecommerce)?void 0:e.transaction_id,tax:null==t||null==(e=t.ecommerce)?void 0:e.tax,currency:null==t||null==(e=t.ecommerce)?void 0:e.currency},products:null==t||null==(e=t.ecommerce)?void 0:e.items.map(function(e){return{name:null==e?void 0:e.item_category4,price:null==e?void 0:e.item_room_amount,category:null==e?void 0:e.item_category,quantity:null==e?void 0:e.quantity,currency:null==t||null==(e=t.ecommerce)?void 0:e.currency}})}}}}},{key:"resolveCurrency",value:function(e){var t,r=e.ecommerce.currencyCode||e.ecommerce.currencyCode||(e.ecommerce.purchase.actionField||{}).currencyCode||(e.ecommerce.purchase.actionField||{}).currency||((o.AskPixelObject||{}).options||{}).currency;return(r=5<(null==(t=r=!r&&P.isOmnibees()?P.scrapCurrency():r)?void 0:t.length)&&null!=e&&null!=(t=e.currencyCode)&&t.length&&(null==e||null==(t=e.currencyCode)?void 0:t.length)<=5?e.currencyCode:r)||"BRL"}},{key:"stringToNumber",value:function(e){return String(e).replace(/[^\d,.-]/g,"").replace(/,/g,".").replace(/[.](?=.*[.])/g,"")}},{key:"shouldIgnoreReservationByCoupon",value:function(e){return!(!e.data.dataLayer.ecommerce.purchase.actionField||!e.data.dataLayer.ecommerce.purchase.actionField.coupon)&&(((o.AskPixelObject||{}).options||{}).ignoreReservationsWithCoupon||[]).map(function(e){return String(e).toLowerCase()}).includes(String(e.data.dataLayer.ecommerce.purchase.actionField.coupon).toLowerCase())}},{key:"shouldIgnoreReservationByActionField",value:function(e){return!!e.data.dataLayer.ecommerce.purchase.actionField&&!(!((o.AskPixelObject||{}).options||{}).ignoreReservationsWithoutId||e.data.dataLayer.ecommerce.purchase.actionField.id)}},{key:"processDataLayer",value:function(e){return e&&(null!=((o.AskPixelObject||{}).options||{}).quantityToForce&&this.processDataLayer__forceQuantity(e),this.actionFieldToProduct(e))}},{key:"actionFieldToProduct",value:function(e){var t,r=null==e||null==(r=e.ecommerce)||null==(r=r.purchase)||null==(r=r.actionField)?void 0:r.revenue;return!r||0t.value?-1:e.value