@tripla/gtm-converter 0.0.16 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -101,6 +101,7 @@ var DynamicAttributesMap = {
101
101
  '$search_type': 'request.type',
102
102
  '$number_of_adults': 'request.number_of_adults',
103
103
  '$number_of_children': 'request.number_of_children',
104
+ '$number_of_rooms': 'request.number_of_rooms',
104
105
  '$room_search_filters': 'request.room_search_filters',
105
106
  '$room_id': 'room_type_code',
106
107
  // Inside array
@@ -139,6 +140,7 @@ var DynamicAttributesMap = {
139
140
  '$checkout_date': 'response.bookingDetails.checkout_date',
140
141
  '$number_of_adults': 'response.bookingDetails.adults',
141
142
  '$number_of_children': 'response.bookingDetails.children',
143
+ '$number_of_rooms': 'response.bookingDetails.room.length',
142
144
  '$number_of_nights': 'response.bookingDetails.nights',
143
145
  '$transaction_tax_amount': 'response.bookingDetails.tax',
144
146
  '$transaction_price_without_tax': 'response.bookingDetails.total_price_without_tax',
@@ -196,6 +198,7 @@ var DynamicAttributesMap = {
196
198
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
197
199
  '$number_of_adults': 'response.bookingDetails.adults',
198
200
  '$number_of_children': 'response.bookingDetails.children',
201
+ '$number_of_rooms': 'response.bookingDetails.room.length',
199
202
  '$number_of_nights': 'response.bookingDetails.nights',
200
203
  '$transaction_tax_amount': 'response.bookingDetails.tax',
201
204
  '$transaction_price_without_tax': 'response.bookingDetails.total_price_without_tax',
@@ -249,6 +252,7 @@ var DynamicAttributesMap = {
249
252
  '$booking_date': 'response.bookingDetails.booking_date',
250
253
  '$number_of_adults': 'response.bookingDetails.adults',
251
254
  '$number_of_children': 'response.bookingDetails.children',
255
+ '$number_of_rooms': 'response.bookingDetails.room.length',
252
256
  '$number_of_nights': 'response.bookingDetails.nights',
253
257
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
254
258
  '$coupon_id': 'response.bookingDetails.coupon_promotion.id',
@@ -284,8 +288,7 @@ var DynamicAttributesMap = {
284
288
  '$question_id': 'id',
285
289
  '$question_title': 'question',
286
290
  '$question_type': 'question_type',
287
- '$question_answer': 'answer',
288
- '$currency_code': 'meta.currency_code'
291
+ '$question_answer': 'answer'
289
292
  },
290
293
  reservation_update: {
291
294
  '$sent_at': 'meta.sent_at',
@@ -326,6 +329,7 @@ var DynamicAttributesMap = {
326
329
  '$checkout_date': 'response.bookingDetails.checkout_date',
327
330
  '$number_of_adults': 'response.bookingDetails.adults',
328
331
  '$number_of_children': 'response.bookingDetails.children',
332
+ '$number_of_rooms': 'response.bookingDetails.room.length',
329
333
  '$number_of_nights': 'response.bookingDetails.nights',
330
334
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
331
335
  '$transaction_id': 'response.bookingDetails.reservation_number',
@@ -402,9 +406,6 @@ function mapGtmData(dynamicAttrMap, keyName, data, key) {
402
406
  // If the value is static, just return it
403
407
  if (!String(keyName).startsWith('$')) return keyName;
404
408
 
405
- // Special values
406
- if (keyName === '$number_of_rooms') return 1;
407
-
408
409
  // If the value can be mapped dynamically
409
410
  if (dynamicAttrMap[keyName]) {
410
411
  var _get2;
@@ -95,6 +95,7 @@ var DynamicAttributesMap = {
95
95
  '$search_type': 'request.type',
96
96
  '$number_of_adults': 'request.number_of_adults',
97
97
  '$number_of_children': 'request.number_of_children',
98
+ '$number_of_rooms': 'request.number_of_rooms',
98
99
  '$room_search_filters': 'request.room_search_filters',
99
100
  '$room_id': 'room_type_code',
100
101
  // Inside array
@@ -133,6 +134,7 @@ var DynamicAttributesMap = {
133
134
  '$checkout_date': 'response.bookingDetails.checkout_date',
134
135
  '$number_of_adults': 'response.bookingDetails.adults',
135
136
  '$number_of_children': 'response.bookingDetails.children',
137
+ '$number_of_rooms': 'response.bookingDetails.room.length',
136
138
  '$number_of_nights': 'response.bookingDetails.nights',
137
139
  '$transaction_tax_amount': 'response.bookingDetails.tax',
138
140
  '$transaction_price_without_tax': 'response.bookingDetails.total_price_without_tax',
@@ -190,6 +192,7 @@ var DynamicAttributesMap = {
190
192
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
191
193
  '$number_of_adults': 'response.bookingDetails.adults',
192
194
  '$number_of_children': 'response.bookingDetails.children',
195
+ '$number_of_rooms': 'response.bookingDetails.room.length',
193
196
  '$number_of_nights': 'response.bookingDetails.nights',
194
197
  '$transaction_tax_amount': 'response.bookingDetails.tax',
195
198
  '$transaction_price_without_tax': 'response.bookingDetails.total_price_without_tax',
@@ -243,6 +246,7 @@ var DynamicAttributesMap = {
243
246
  '$booking_date': 'response.bookingDetails.booking_date',
244
247
  '$number_of_adults': 'response.bookingDetails.adults',
245
248
  '$number_of_children': 'response.bookingDetails.children',
249
+ '$number_of_rooms': 'response.bookingDetails.room.length',
246
250
  '$number_of_nights': 'response.bookingDetails.nights',
247
251
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
248
252
  '$coupon_id': 'response.bookingDetails.coupon_promotion.id',
@@ -278,8 +282,7 @@ var DynamicAttributesMap = {
278
282
  '$question_id': 'id',
279
283
  '$question_title': 'question',
280
284
  '$question_type': 'question_type',
281
- '$question_answer': 'answer',
282
- '$currency_code': 'meta.currency_code'
285
+ '$question_answer': 'answer'
283
286
  },
284
287
  reservation_update: {
285
288
  '$sent_at': 'meta.sent_at',
@@ -320,6 +323,7 @@ var DynamicAttributesMap = {
320
323
  '$checkout_date': 'response.bookingDetails.checkout_date',
321
324
  '$number_of_adults': 'response.bookingDetails.adults',
322
325
  '$number_of_children': 'response.bookingDetails.children',
326
+ '$number_of_rooms': 'response.bookingDetails.room.length',
323
327
  '$number_of_nights': 'response.bookingDetails.nights',
324
328
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
325
329
  '$transaction_id': 'response.bookingDetails.reservation_number',
@@ -396,9 +400,6 @@ function mapGtmData(dynamicAttrMap, keyName, data, key) {
396
400
  // If the value is static, just return it
397
401
  if (!String(keyName).startsWith('$')) return keyName;
398
402
 
399
- // Special values
400
- if (keyName === '$number_of_rooms') return 1;
401
-
402
403
  // If the value can be mapped dynamically
403
404
  if (dynamicAttrMap[keyName]) {
404
405
  var _get2;
@@ -1 +1 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).triplaGtmConverter={})}(this,(function(e){"use strict";function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,n=Array(t);o<t;o++)n[o]=e[o];return n}function o(e,o){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,o){if(e){if("string"==typeof e)return t(e,o);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,o):void 0}}(e))||o&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,_=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return _=e.done,e},e:function(e){s=!0,i=e},f:function(){try{_||null==n.return||n.return()}finally{if(s)throw i}}}}var n=function(e){return null==e},r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},a="__lodash_hash_undefined__",i=1/0,_="[object Function]",s="[object GeneratorFunction]",u="[object Symbol]",c=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,m=/^\w*$/,l=/^\./,p=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,d=/\\(\\)?/g,h=/^\[object .+?Constructor\]$/,$="object"==typeof r&&r&&r.Object===Object&&r,f="object"==typeof self&&self&&self.Object===Object&&self,b=$||f||Function("return this")();var g,y=Array.prototype,k=Function.prototype,v=Object.prototype,D=b["__core-js_shared__"],w=(g=/[^.]+$/.exec(D&&D.keys&&D.keys.IE_PROTO||""))?"Symbol(src)_1."+g:"",q=k.toString,x=v.hasOwnProperty,j=v.toString,S=RegExp("^"+q.call(x).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),z=b.Symbol,O=y.splice,A=W(b,"Map"),C=W(Object,"create"),P=z?z.prototype:void 0,R=P?P.toString:void 0;function E(e){var t=-1,o=e?e.length:0;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function T(e){var t=-1,o=e?e.length:0;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function F(e){var t=-1,o=e?e.length:0;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function G(e,t){for(var o,n,r=e.length;r--;)if((o=e[r][0])===(n=t)||o!=o&&n!=n)return r;return-1}function I(e,t){var o;t=function(e,t){if(K(e))return!1;var o=typeof e;if("number"==o||"symbol"==o||"boolean"==o||null==e||N(e))return!0;return m.test(e)||!c.test(e)||null!=t&&e in Object(t)}(t,e)?[t]:K(o=t)?o:B(o);for(var n=0,r=t.length;null!=e&&n<r;)e=e[H(t[n++])];return n&&n==r?e:void 0}function M(e){if(!L(e)||(t=e,w&&w in t))return!1;var t,o=function(e){var t=L(e)?j.call(e):"";return t==_||t==s}(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?S:h;return o.test(function(e){if(null!=e){try{return q.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}function U(e,t){var o,n,r=e.__data__;return("string"==(n=typeof(o=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==o:null===o)?r["string"==typeof t?"string":"hash"]:r.map}function W(e,t){var o=function(e,t){return null==e?void 0:e[t]}(e,t);return M(o)?o:void 0}E.prototype.clear=function(){this.__data__=C?C(null):{}},E.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},E.prototype.get=function(e){var t=this.__data__;if(C){var o=t[e];return o===a?void 0:o}return x.call(t,e)?t[e]:void 0},E.prototype.has=function(e){var t=this.__data__;return C?void 0!==t[e]:x.call(t,e)},E.prototype.set=function(e,t){return this.__data__[e]=C&&void 0===t?a:t,this},T.prototype.clear=function(){this.__data__=[]},T.prototype.delete=function(e){var t=this.__data__,o=G(t,e);return!(o<0)&&(o==t.length-1?t.pop():O.call(t,o,1),!0)},T.prototype.get=function(e){var t=this.__data__,o=G(t,e);return o<0?void 0:t[o][1]},T.prototype.has=function(e){return G(this.__data__,e)>-1},T.prototype.set=function(e,t){var o=this.__data__,n=G(o,e);return n<0?o.push([e,t]):o[n][1]=t,this},F.prototype.clear=function(){this.__data__={hash:new E,map:new(A||T),string:new E}},F.prototype.delete=function(e){return U(this,e).delete(e)},F.prototype.get=function(e){return U(this,e).get(e)},F.prototype.has=function(e){return U(this,e).has(e)},F.prototype.set=function(e,t){return U(this,e).set(e,t),this};var B=J((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(N(e))return R?R.call(e):"";var t=e+"";return"0"==t&&1/e==-i?"-0":t}(t);var o=[];return l.test(e)&&o.push(""),e.replace(p,(function(e,t,n,r){o.push(n?r.replace(d,"$1"):t||e)})),o}));function H(e){if("string"==typeof e||N(e))return e;var t=e+"";return"0"==t&&1/e==-i?"-0":t}function J(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var o=function(){var n=arguments,r=t?t.apply(this,n):n[0],a=o.cache;if(a.has(r))return a.get(r);var i=e.apply(this,n);return o.cache=a.set(r,i),i};return o.cache=new(J.Cache||F),o}J.Cache=F;var K=Array.isArray;function L(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function N(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&j.call(e)==u}var Q=function(e,t,o){var n=null==e?void 0:I(e,t);return void 0===n?o:n},V={search_result:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",search_result:"response.roomData.rooms",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$checkin_date:"response.roomData.search_params.checkin_date",$checkout_date:"response.roomData.search_params.checkout_date",$day_use:"request.is_day_use",$search_type:"request.type",$number_of_adults:"request.number_of_adults",$number_of_children:"request.number_of_children",$room_search_filters:"request.room_search_filters",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$transaction_price_without_tax:"total_price",$brr:"has_brr"},guest_detail:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_nights:"response.bookingDetails.nights",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_total_price:"response.bookingDetails.total_price",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",room_booking_detail:"response.bookingDetails.room",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$room_size:"room_size",$brr:"has_brr",$transaction_total_price_per_room:"total_price",additional_question_detail:"response.additional_questions",$question_id:"id",$question_title:"question",$question_type:"question_type"},payment_detail:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$guest_booking:"meta.guest_booking",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_nights:"response.bookingDetails.nights",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_total_price:"response.bookingDetails.total_price",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",room_booking_detail:"response.bookingDetails.room",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$brr:"has_brr",$transaction_total_price_per_room:"total_price",$currency_code:"meta.currency_code"},confirmation:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$guest_booking:"meta.guest_booking",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$booking_date:"response.bookingDetails.booking_date",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_nights:"response.bookingDetails.nights",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",$transaction_id:"response.bookingDetails.reservation_number",$transaction_method:"response.bookingDetails.payment_method",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_total_price:"response.bookingDetails.total_price",room_booking_detail:"response.bookingDetails.room",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children",$brr:"has_brr",$transaction_total_price_per_room:"total_price",additional_question_detail:"response.bookingDetails.additional_questions",$question_id:"id",$question_title:"question",$question_type:"question_type",$question_answer:"answer",$currency_code:"meta.currency_code"},reservation_update:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$search_id:"meta.search_id",$new_checkin_date:"request.checkin",$new_checkout_date:"request.checkout",$new_number_of_adults:"request.new_number_of_adults",$new_number_of_children:"request.new_number_of_children",$new_number_of_rooms:"request.new_number_of_rooms",$transaction_id:"request.reservation_number"},reservation_cancel:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$search_id:"meta.search_id",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_nights:"response.bookingDetails.nights",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",$transaction_id:"response.bookingDetails.reservation_number",$transaction_method:"response.bookingDetails.payment_method",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_refund_amount:"response.bookingDetails.refund_amount",$transaction_cancellation_fee:"response.bookingDetails.cancellation_fee",$transaction_total_price:"response.bookingDetails.total_price",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",$booking_cancellation_reason:"request.cancelReason",room_booking_detail:"response.bookingDetails.room",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children"}};function X(e,t,r,a){if(Array.isArray(t)&&t.length>0){var i,_=t[0],s=null==_?void 0:_.type,u=Q(r,e[s]);return"search_result"===s?function(e,t,r,a,i){var _,s=[],u=1,c="rooms"===a?"room_plan":"rooms",m=o(r);try{for(m.s();!(_=m.n()).done;){var l,p=_.value,d=o(p[c]);try{for(d.s();!(l=d.n()).done;){var h=l.value,$={};for(var f in t){var b=t[f],g=e[b];if("$room_size"===b)$[f]=Y("rooms"===a?p.room_size:h.room_size);else if("$promotion_id"===b)$[f]=(h.membership_promotions||[]).map((function(e){return e.id})).join(",");else if("$promotion_name"===b)$[f]=(h.membership_promotions||[]).map((function(e){return e.name})).join(",");else if("$order"===b)$[f]=u;else{var y=Q(p,g,null);n(y)&&(y=Q(h,g,null)),n(y)&&(y=X(e,b,i)),$[f]=y}}s.push($),u++}}catch(e){d.e(e)}finally{d.f()}}}catch(e){m.e(e)}finally{m.f()}return s}(e,_,u,null==r||null===(i=r.request)||void 0===i?void 0:i.type,r):function(e,t,o,r,a){var i=[];for(var _ in o){var s=o[_],u={};for(var c in t){var m=t[c],l=X(e,m,s);n(l)&&(l=X(e,m,a)),u[c]=l}i.push(u)}return i}(e,_,u,0,r)}if(!String(t).startsWith("$"))return t;if("$number_of_rooms"===t)return 1;if(e[t]){var c,m=e[t];return"$room_size"===t?Y(Q(r,m,null)):null!==(c=Q(r,m,null))&&void 0!==c?c:null}}function Y(e){return n(null==e?void 0:e.value)?"":"".concat(e.value," ").concat(e.unit)}e.Page={Confirmation:"confirmation",GuestDetail:"guest_detail",PaymentDetail:"payment_detail",ReservationCancel:"reservation_cancel",ReservationUpdate:"reservation_update",SearchResult:"search_result"},e.generateGtmPayload=function(e){var t,n=e.type,r=e.data,a=[],i=o(e.gtmSettings);try{for(i.s();!(t=i.n()).done;){var _=t.value,s={},u=null==_?void 0:_.object;for(var c in u)s[c]=X(V[n],u[c],r,c);a.push(s)}}catch(e){i.e(e)}finally{i.f()}return a},Object.defineProperty(e,"__esModule",{value:!0})}));
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e=e||self).triplaGtmConverter={})}(this,(function(e){"use strict";function t(e,t){(null==t||t>e.length)&&(t=e.length);for(var o=0,n=Array(t);o<t;o++)n[o]=e[o];return n}function o(e,o){var n="undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(!n){if(Array.isArray(e)||(n=function(e,o){if(e){if("string"==typeof e)return t(e,o);var n={}.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?t(e,o):void 0}}(e))||o&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,_=!0,s=!1;return{s:function(){n=n.call(e)},n:function(){var e=n.next();return _=e.done,e},e:function(e){s=!0,i=e},f:function(){try{_||null==n.return||n.return()}finally{if(s)throw i}}}}var n=function(e){return null==e},r="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{},a="__lodash_hash_undefined__",i="[object Function]",_="[object GeneratorFunction]",s=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,u=/^\w*$/,c=/^\./,m=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,l=/\\(\\)?/g,p=/^\[object .+?Constructor\]$/,d="object"==typeof r&&r&&r.Object===Object&&r,h="object"==typeof self&&self&&self.Object===Object&&self,$=d||h||Function("return this")();var f,b=Array.prototype,g=Function.prototype,y=Object.prototype,k=$["__core-js_shared__"],v=(f=/[^.]+$/.exec(k&&k.keys&&k.keys.IE_PROTO||""))?"Symbol(src)_1."+f:"",D=g.toString,w=y.hasOwnProperty,q=y.toString,x=RegExp("^"+D.call(w).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),j=$.Symbol,S=b.splice,z=M($,"Map"),O=M(Object,"create"),A=j?j.prototype:void 0,C=A?A.toString:void 0;function P(e){var t=-1,o=e?e.length:0;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function R(e){var t=-1,o=e?e.length:0;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function E(e){var t=-1,o=e?e.length:0;for(this.clear();++t<o;){var n=e[t];this.set(n[0],n[1])}}function T(e,t){for(var o,n,r=e.length;r--;)if((o=e[r][0])===(n=t)||o!=o&&n!=n)return r;return-1}function F(e,t){var o;t=function(e,t){if(H(e))return!1;var o=typeof e;if("number"==o||"symbol"==o||"boolean"==o||null==e||K(e))return!0;return u.test(e)||!s.test(e)||null!=t&&e in Object(t)}(t,e)?[t]:H(o=t)?o:U(o);for(var n=0,r=t.length;null!=e&&n<r;)e=e[W(t[n++])];return n&&n==r?e:void 0}function G(e){if(!J(e)||(t=e,v&&v in t))return!1;var t,o=function(e){var t=J(e)?q.call(e):"";return t==i||t==_}(e)||function(e){var t=!1;if(null!=e&&"function"!=typeof e.toString)try{t=!!(e+"")}catch(e){}return t}(e)?x:p;return o.test(function(e){if(null!=e){try{return D.call(e)}catch(e){}try{return e+""}catch(e){}}return""}(e))}function I(e,t){var o,n,r=e.__data__;return("string"==(n=typeof(o=t))||"number"==n||"symbol"==n||"boolean"==n?"__proto__"!==o:null===o)?r["string"==typeof t?"string":"hash"]:r.map}function M(e,t){var o=function(e,t){return null==e?void 0:e[t]}(e,t);return G(o)?o:void 0}P.prototype.clear=function(){this.__data__=O?O(null):{}},P.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},P.prototype.get=function(e){var t=this.__data__;if(O){var o=t[e];return o===a?void 0:o}return w.call(t,e)?t[e]:void 0},P.prototype.has=function(e){var t=this.__data__;return O?void 0!==t[e]:w.call(t,e)},P.prototype.set=function(e,t){return this.__data__[e]=O&&void 0===t?a:t,this},R.prototype.clear=function(){this.__data__=[]},R.prototype.delete=function(e){var t=this.__data__,o=T(t,e);return!(o<0)&&(o==t.length-1?t.pop():S.call(t,o,1),!0)},R.prototype.get=function(e){var t=this.__data__,o=T(t,e);return o<0?void 0:t[o][1]},R.prototype.has=function(e){return T(this.__data__,e)>-1},R.prototype.set=function(e,t){var o=this.__data__,n=T(o,e);return n<0?o.push([e,t]):o[n][1]=t,this},E.prototype.clear=function(){this.__data__={hash:new P,map:new(z||R),string:new P}},E.prototype.delete=function(e){return I(this,e).delete(e)},E.prototype.get=function(e){return I(this,e).get(e)},E.prototype.has=function(e){return I(this,e).has(e)},E.prototype.set=function(e,t){return I(this,e).set(e,t),this};var U=B((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(K(e))return C?C.call(e):"";var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}(t);var o=[];return c.test(e)&&o.push(""),e.replace(m,(function(e,t,n,r){o.push(n?r.replace(l,"$1"):t||e)})),o}));function W(e){if("string"==typeof e||K(e))return e;var t=e+"";return"0"==t&&1/e==-1/0?"-0":t}function B(e,t){if("function"!=typeof e||t&&"function"!=typeof t)throw new TypeError("Expected a function");var o=function(){var n=arguments,r=t?t.apply(this,n):n[0],a=o.cache;if(a.has(r))return a.get(r);var i=e.apply(this,n);return o.cache=a.set(r,i),i};return o.cache=new(B.Cache||E),o}B.Cache=E;var H=Array.isArray;function J(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function K(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&"[object Symbol]"==q.call(e)}var L=function(e,t,o){var n=null==e?void 0:F(e,t);return void 0===n?o:n},N={search_result:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",search_result:"response.roomData.rooms",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$checkin_date:"response.roomData.search_params.checkin_date",$checkout_date:"response.roomData.search_params.checkout_date",$day_use:"request.is_day_use",$search_type:"request.type",$number_of_adults:"request.number_of_adults",$number_of_children:"request.number_of_children",$number_of_rooms:"request.number_of_rooms",$room_search_filters:"request.room_search_filters",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$transaction_price_without_tax:"total_price",$brr:"has_brr"},guest_detail:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_rooms:"response.bookingDetails.room.length",$number_of_nights:"response.bookingDetails.nights",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_total_price:"response.bookingDetails.total_price",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",room_booking_detail:"response.bookingDetails.room",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$room_size:"room_size",$brr:"has_brr",$transaction_total_price_per_room:"total_price",additional_question_detail:"response.additional_questions",$question_id:"id",$question_title:"question",$question_type:"question_type"},payment_detail:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$guest_booking:"meta.guest_booking",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_rooms:"response.bookingDetails.room.length",$number_of_nights:"response.bookingDetails.nights",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_total_price:"response.bookingDetails.total_price",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",room_booking_detail:"response.bookingDetails.room",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$brr:"has_brr",$transaction_total_price_per_room:"total_price",$currency_code:"meta.currency_code"},confirmation:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$utm_source:"meta.utm_source",$utm_campaign:"meta.utm_campaign",$utm_medium:"meta.utm_medium",$search_id:"meta.search_id",$guest_booking:"meta.guest_booking",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$booking_date:"response.bookingDetails.booking_date",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_rooms:"response.bookingDetails.room.length",$number_of_nights:"response.bookingDetails.nights",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",$transaction_id:"response.bookingDetails.reservation_number",$transaction_method:"response.bookingDetails.payment_method",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_total_price:"response.bookingDetails.total_price",room_booking_detail:"response.bookingDetails.room",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children",$brr:"has_brr",$transaction_total_price_per_room:"total_price",additional_question_detail:"response.bookingDetails.additional_questions",$question_id:"id",$question_title:"question",$question_type:"question_type",$question_answer:"answer"},reservation_update:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$search_id:"meta.search_id",$new_checkin_date:"request.checkin",$new_checkout_date:"request.checkout",$new_number_of_adults:"request.new_number_of_adults",$new_number_of_children:"request.new_number_of_children",$new_number_of_rooms:"request.new_number_of_rooms",$transaction_id:"request.reservation_number"},reservation_cancel:{$sent_at:"meta.sent_at",$tripla_internal_id:"meta.tripla_internal_id",$membership_id:"meta.hashed_membership_id",$user_id:"meta.user_id",$language:"meta.language",$cookie_id:"meta.cookie_id",$page_category:"meta.page_category",$current_url:"meta.current_url",$hotel_id:"meta.hotel_id",$hotel_name:"meta.hotel_name",$brand_name:"meta.brand_name",$hotel_prefecture:"meta.hotel_prefecture",$search_id:"meta.search_id",$checkin_date:"response.bookingDetails.checkin_date",$checkout_date:"response.bookingDetails.checkout_date",$number_of_adults:"response.bookingDetails.adults",$number_of_children:"response.bookingDetails.children",$number_of_rooms:"response.bookingDetails.room.length",$number_of_nights:"response.bookingDetails.nights",$number_of_days_to_checkin:"response.bookingDetails.number_of_days_to_checkin",$transaction_id:"response.bookingDetails.reservation_number",$transaction_method:"response.bookingDetails.payment_method",$transaction_tax_amount:"response.bookingDetails.tax",$transaction_price_without_tax:"response.bookingDetails.total_price_without_tax",$transaction_refund_amount:"response.bookingDetails.refund_amount",$transaction_cancellation_fee:"response.bookingDetails.cancellation_fee",$transaction_total_price:"response.bookingDetails.total_price",$coupon_id:"response.bookingDetails.coupon_promotion.id",$coupon_code:"response.bookingDetails.coupon_promotion.coupon_code",$booking_cancellation_reason:"request.cancelReason",room_booking_detail:"response.bookingDetails.room",$room_id:"room_type_code",$room_name:"room_type_name",$room_type:"room_type_name",$room_size:"room_size",$plan_id:"room_plan_code",$plan_name:"room_plan_name",$number_of_adults_per_room:"adults",$number_of_children_per_room:"children"}};function Q(e,t,r,a){if(Array.isArray(t)&&t.length>0){var i,_=t[0],s=null==_?void 0:_.type,u=L(r,e[s]);return"search_result"===s?function(e,t,r,a,i){var _,s=[],u=1,c="rooms"===a?"room_plan":"rooms",m=o(r);try{for(m.s();!(_=m.n()).done;){var l,p=_.value,d=o(p[c]);try{for(d.s();!(l=d.n()).done;){var h=l.value,$={};for(var f in t){var b=t[f],g=e[b];if("$room_size"===b)$[f]=V("rooms"===a?p.room_size:h.room_size);else if("$promotion_id"===b)$[f]=(h.membership_promotions||[]).map((function(e){return e.id})).join(",");else if("$promotion_name"===b)$[f]=(h.membership_promotions||[]).map((function(e){return e.name})).join(",");else if("$order"===b)$[f]=u;else{var y=L(p,g,null);n(y)&&(y=L(h,g,null)),n(y)&&(y=Q(e,b,i)),$[f]=y}}s.push($),u++}}catch(e){d.e(e)}finally{d.f()}}}catch(e){m.e(e)}finally{m.f()}return s}(e,_,u,null==r||null===(i=r.request)||void 0===i?void 0:i.type,r):function(e,t,o,r,a){var i=[];for(var _ in o){var s=o[_],u={};for(var c in t){var m=t[c],l=Q(e,m,s);n(l)&&(l=Q(e,m,a)),u[c]=l}i.push(u)}return i}(e,_,u,0,r)}if(!String(t).startsWith("$"))return t;if(e[t]){var c,m=e[t];return"$room_size"===t?V(L(r,m,null)):null!==(c=L(r,m,null))&&void 0!==c?c:null}}function V(e){return n(null==e?void 0:e.value)?"":"".concat(e.value," ").concat(e.unit)}e.Page={Confirmation:"confirmation",GuestDetail:"guest_detail",PaymentDetail:"payment_detail",ReservationCancel:"reservation_cancel",ReservationUpdate:"reservation_update",SearchResult:"search_result"},e.generateGtmPayload=function(e){var t,n=e.type,r=e.data,a=[],i=o(e.gtmSettings);try{for(i.s();!(t=i.n()).done;){var _=t.value,s={},u=null==_?void 0:_.object;for(var c in u)s[c]=Q(N[n],u[c],r,c);a.push(s)}}catch(e){i.e(e)}finally{i.f()}return a},Object.defineProperty(e,"__esModule",{value:!0})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tripla/gtm-converter",
3
- "version": "0.0.16",
3
+ "version": "0.1.0",
4
4
  "private": false,
5
5
  "main": "dist/tripla-gtm-converter.cjs.js",
6
6
  "module": "dist/tripla-gtm-converter.esm.js",