@tripla/gtm-converter 0.0.14 → 0.0.16

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.
@@ -7,70 +7,66 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  var _isNil = _interopDefault(require('lodash.isnil'));
8
8
  var _get = _interopDefault(require('lodash.get'));
9
9
 
10
- function _unsupportedIterableToArray(o, minLen) {
11
- if (!o) return;
12
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
13
- var n = Object.prototype.toString.call(o).slice(8, -1);
14
- if (n === "Object" && o.constructor) n = o.constructor.name;
15
- if (n === "Map" || n === "Set") return Array.from(o);
16
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
10
+ function _arrayLikeToArray(r, a) {
11
+ (null == a || a > r.length) && (a = r.length);
12
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
13
+ return n;
17
14
  }
18
- function _arrayLikeToArray(arr, len) {
19
- if (len == null || len > arr.length) len = arr.length;
20
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
21
- return arr2;
22
- }
23
- function _createForOfIteratorHelper(o, allowArrayLike) {
24
- var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
25
- if (!it) {
26
- if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
27
- if (it) o = it;
28
- var i = 0;
29
- var F = function () {};
15
+ function _createForOfIteratorHelper(r, e) {
16
+ var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
17
+ if (!t) {
18
+ if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
19
+ t && (r = t);
20
+ var n = 0,
21
+ F = function () {};
30
22
  return {
31
23
  s: F,
32
24
  n: function () {
33
- if (i >= o.length) return {
34
- done: true
35
- };
36
- return {
37
- done: false,
38
- value: o[i++]
25
+ return n >= r.length ? {
26
+ done: !0
27
+ } : {
28
+ done: !1,
29
+ value: r[n++]
39
30
  };
40
31
  },
41
- e: function (e) {
42
- throw e;
32
+ e: function (r) {
33
+ throw r;
43
34
  },
44
35
  f: F
45
36
  };
46
37
  }
47
38
  throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
48
39
  }
49
- var normalCompletion = true,
50
- didErr = false,
51
- err;
40
+ var o,
41
+ a = !0,
42
+ u = !1;
52
43
  return {
53
44
  s: function () {
54
- it = it.call(o);
45
+ t = t.call(r);
55
46
  },
56
47
  n: function () {
57
- var step = it.next();
58
- normalCompletion = step.done;
59
- return step;
48
+ var r = t.next();
49
+ return a = r.done, r;
60
50
  },
61
- e: function (e) {
62
- didErr = true;
63
- err = e;
51
+ e: function (r) {
52
+ u = !0, o = r;
64
53
  },
65
54
  f: function () {
66
55
  try {
67
- if (!normalCompletion && it.return != null) it.return();
56
+ a || null == t.return || t.return();
68
57
  } finally {
69
- if (didErr) throw err;
58
+ if (u) throw o;
70
59
  }
71
60
  }
72
61
  };
73
62
  }
63
+ function _unsupportedIterableToArray(r, a) {
64
+ if (r) {
65
+ if ("string" == typeof r) return _arrayLikeToArray(r, a);
66
+ var t = {}.toString.call(r).slice(8, -1);
67
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
68
+ }
69
+ }
74
70
 
75
71
  var Page = {
76
72
  Confirmation: 'confirmation',
@@ -122,7 +118,6 @@ var DynamicAttributesMap = {
122
118
  // Inside array
123
119
  '$brr': 'has_brr' // Inside array
124
120
  },
125
-
126
121
  guest_detail: {
127
122
  '$sent_at': 'meta.sent_at',
128
123
  '$tripla_internal_id': 'meta.tripla_internal_id',
@@ -195,6 +190,7 @@ var DynamicAttributesMap = {
195
190
  '$utm_campaign': 'meta.utm_campaign',
196
191
  '$utm_medium': 'meta.utm_medium',
197
192
  '$search_id': 'meta.search_id',
193
+ '$guest_booking': 'meta.guest_booking',
198
194
  '$checkin_date': 'response.bookingDetails.checkin_date',
199
195
  '$checkout_date': 'response.bookingDetails.checkout_date',
200
196
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
@@ -226,9 +222,10 @@ var DynamicAttributesMap = {
226
222
  // Inside array
227
223
  '$brr': 'has_brr',
228
224
  // Inside array
229
- '$transaction_total_price_per_room': 'total_price' // Inside array
225
+ '$transaction_total_price_per_room': 'total_price',
226
+ // Inside array
227
+ '$currency_code': 'meta.currency_code'
230
228
  },
231
-
232
229
  confirmation: {
233
230
  '$sent_at': 'meta.sent_at',
234
231
  '$tripla_internal_id': 'meta.tripla_internal_id',
@@ -246,6 +243,7 @@ var DynamicAttributesMap = {
246
243
  '$utm_campaign': 'meta.utm_campaign',
247
244
  '$utm_medium': 'meta.utm_medium',
248
245
  '$search_id': 'meta.search_id',
246
+ '$guest_booking': 'meta.guest_booking',
249
247
  '$checkin_date': 'response.bookingDetails.checkin_date',
250
248
  '$checkout_date': 'response.bookingDetails.checkout_date',
251
249
  '$booking_date': 'response.bookingDetails.booking_date',
@@ -286,7 +284,8 @@ var DynamicAttributesMap = {
286
284
  '$question_id': 'id',
287
285
  '$question_title': 'question',
288
286
  '$question_type': 'question_type',
289
- '$question_answer': 'answer'
287
+ '$question_answer': 'answer',
288
+ '$currency_code': 'meta.currency_code'
290
289
  },
291
290
  reservation_update: {
292
291
  '$sent_at': 'meta.sent_at',
@@ -358,7 +357,6 @@ var DynamicAttributesMap = {
358
357
  '$number_of_children_per_room': 'children' // Inside array
359
358
  }
360
359
  };
361
-
362
360
  var generateGtmPayload = function generateGtmPayload(_ref) {
363
361
  var type = _ref.type,
364
362
  data = _ref.data,
@@ -406,7 +404,6 @@ function mapGtmData(dynamicAttrMap, keyName, data, key) {
406
404
 
407
405
  // Special values
408
406
  if (keyName === '$number_of_rooms') return 1;
409
- if (keyName === '$currency_code') return 'JPY';
410
407
 
411
408
  // If the value can be mapped dynamically
412
409
  if (dynamicAttrMap[keyName]) {
@@ -1,70 +1,66 @@
1
1
  import _isNil from 'lodash.isnil';
2
2
  import _get from 'lodash.get';
3
3
 
4
- function _unsupportedIterableToArray(o, minLen) {
5
- if (!o) return;
6
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
7
- var n = Object.prototype.toString.call(o).slice(8, -1);
8
- if (n === "Object" && o.constructor) n = o.constructor.name;
9
- if (n === "Map" || n === "Set") return Array.from(o);
10
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
4
+ function _arrayLikeToArray(r, a) {
5
+ (null == a || a > r.length) && (a = r.length);
6
+ for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e];
7
+ return n;
11
8
  }
12
- function _arrayLikeToArray(arr, len) {
13
- if (len == null || len > arr.length) len = arr.length;
14
- for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];
15
- return arr2;
16
- }
17
- function _createForOfIteratorHelper(o, allowArrayLike) {
18
- var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];
19
- if (!it) {
20
- if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {
21
- if (it) o = it;
22
- var i = 0;
23
- var F = function () {};
9
+ function _createForOfIteratorHelper(r, e) {
10
+ var t = "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];
11
+ if (!t) {
12
+ if (Array.isArray(r) || (t = _unsupportedIterableToArray(r)) || e && r && "number" == typeof r.length) {
13
+ t && (r = t);
14
+ var n = 0,
15
+ F = function () {};
24
16
  return {
25
17
  s: F,
26
18
  n: function () {
27
- if (i >= o.length) return {
28
- done: true
29
- };
30
- return {
31
- done: false,
32
- value: o[i++]
19
+ return n >= r.length ? {
20
+ done: !0
21
+ } : {
22
+ done: !1,
23
+ value: r[n++]
33
24
  };
34
25
  },
35
- e: function (e) {
36
- throw e;
26
+ e: function (r) {
27
+ throw r;
37
28
  },
38
29
  f: F
39
30
  };
40
31
  }
41
32
  throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
42
33
  }
43
- var normalCompletion = true,
44
- didErr = false,
45
- err;
34
+ var o,
35
+ a = !0,
36
+ u = !1;
46
37
  return {
47
38
  s: function () {
48
- it = it.call(o);
39
+ t = t.call(r);
49
40
  },
50
41
  n: function () {
51
- var step = it.next();
52
- normalCompletion = step.done;
53
- return step;
42
+ var r = t.next();
43
+ return a = r.done, r;
54
44
  },
55
- e: function (e) {
56
- didErr = true;
57
- err = e;
45
+ e: function (r) {
46
+ u = !0, o = r;
58
47
  },
59
48
  f: function () {
60
49
  try {
61
- if (!normalCompletion && it.return != null) it.return();
50
+ a || null == t.return || t.return();
62
51
  } finally {
63
- if (didErr) throw err;
52
+ if (u) throw o;
64
53
  }
65
54
  }
66
55
  };
67
56
  }
57
+ function _unsupportedIterableToArray(r, a) {
58
+ if (r) {
59
+ if ("string" == typeof r) return _arrayLikeToArray(r, a);
60
+ var t = {}.toString.call(r).slice(8, -1);
61
+ return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0;
62
+ }
63
+ }
68
64
 
69
65
  var Page = {
70
66
  Confirmation: 'confirmation',
@@ -116,7 +112,6 @@ var DynamicAttributesMap = {
116
112
  // Inside array
117
113
  '$brr': 'has_brr' // Inside array
118
114
  },
119
-
120
115
  guest_detail: {
121
116
  '$sent_at': 'meta.sent_at',
122
117
  '$tripla_internal_id': 'meta.tripla_internal_id',
@@ -189,6 +184,7 @@ var DynamicAttributesMap = {
189
184
  '$utm_campaign': 'meta.utm_campaign',
190
185
  '$utm_medium': 'meta.utm_medium',
191
186
  '$search_id': 'meta.search_id',
187
+ '$guest_booking': 'meta.guest_booking',
192
188
  '$checkin_date': 'response.bookingDetails.checkin_date',
193
189
  '$checkout_date': 'response.bookingDetails.checkout_date',
194
190
  '$number_of_days_to_checkin': 'response.bookingDetails.number_of_days_to_checkin',
@@ -220,9 +216,10 @@ var DynamicAttributesMap = {
220
216
  // Inside array
221
217
  '$brr': 'has_brr',
222
218
  // Inside array
223
- '$transaction_total_price_per_room': 'total_price' // Inside array
219
+ '$transaction_total_price_per_room': 'total_price',
220
+ // Inside array
221
+ '$currency_code': 'meta.currency_code'
224
222
  },
225
-
226
223
  confirmation: {
227
224
  '$sent_at': 'meta.sent_at',
228
225
  '$tripla_internal_id': 'meta.tripla_internal_id',
@@ -240,6 +237,7 @@ var DynamicAttributesMap = {
240
237
  '$utm_campaign': 'meta.utm_campaign',
241
238
  '$utm_medium': 'meta.utm_medium',
242
239
  '$search_id': 'meta.search_id',
240
+ '$guest_booking': 'meta.guest_booking',
243
241
  '$checkin_date': 'response.bookingDetails.checkin_date',
244
242
  '$checkout_date': 'response.bookingDetails.checkout_date',
245
243
  '$booking_date': 'response.bookingDetails.booking_date',
@@ -280,7 +278,8 @@ var DynamicAttributesMap = {
280
278
  '$question_id': 'id',
281
279
  '$question_title': 'question',
282
280
  '$question_type': 'question_type',
283
- '$question_answer': 'answer'
281
+ '$question_answer': 'answer',
282
+ '$currency_code': 'meta.currency_code'
284
283
  },
285
284
  reservation_update: {
286
285
  '$sent_at': 'meta.sent_at',
@@ -352,7 +351,6 @@ var DynamicAttributesMap = {
352
351
  '$number_of_children_per_room': 'children' // Inside array
353
352
  }
354
353
  };
355
-
356
354
  var generateGtmPayload = function generateGtmPayload(_ref) {
357
355
  var type = _ref.type,
358
356
  data = _ref.data,
@@ -400,7 +398,6 @@ function mapGtmData(dynamicAttrMap, keyName, data, key) {
400
398
 
401
399
  // Special values
402
400
  if (keyName === '$number_of_rooms') return 1;
403
- if (keyName === '$currency_code') return 'JPY';
404
401
 
405
402
  // If the value can be mapped dynamically
406
403
  if (dynamicAttrMap[keyName]) {
@@ -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=new 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=Object.prototype.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)\]/,l=/^\w*$/,m=/^\./,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,j=v.hasOwnProperty,x=v.toString,S=RegExp("^"+q.call(j).replace(/[\\^$.*+?()[\]{}|]/g,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),z=b.Symbol,O=y.splice,A=J(b,"Map"),P=J(Object,"create"),C=z?z.prototype:void 0,R=C?C.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(H(e))return!1;var o=typeof e;if("number"==o||"symbol"==o||"boolean"==o||null==e||L(e))return!0;return l.test(e)||!c.test(e)||null!=t&&e in Object(t)}(t,e)?[t]:H(o=t)?o:W(o);for(var n=0,r=t.length;null!=e&&n<r;)e=e[Y(t[n++])];return n&&n==r?e:void 0}function M(e){if(!K(e)||(t=e,w&&w in t))return!1;var t,o=function(e){var t=K(e)?x.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 J(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__=P?P(null):{}},E.prototype.delete=function(e){return this.has(e)&&delete this.__data__[e]},E.prototype.get=function(e){var t=this.__data__;if(P){var o=t[e];return o===a?void 0:o}return j.call(t,e)?t[e]:void 0},E.prototype.has=function(e){var t=this.__data__;return P?void 0!==t[e]:j.call(t,e)},E.prototype.set=function(e,t){return this.__data__[e]=P&&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 W=B((function(e){var t;e=null==(t=e)?"":function(e){if("string"==typeof e)return e;if(L(e))return R?R.call(e):"";var t=e+"";return"0"==t&&1/e==-i?"-0":t}(t);var o=[];return m.test(e)&&o.push(""),e.replace(p,(function(e,t,n,r){o.push(n?r.replace(d,"$1"):t||e)})),o}));function Y(e){if("string"==typeof e||L(e))return e;var t=e+"";return"0"==t&&1/e==-i?"-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||F),o}B.Cache=F;var H=Array.isArray;function K(e){var t=typeof e;return!!e&&("object"==t||"function"==t)}function L(e){return"symbol"==typeof e||function(e){return!!e&&"object"==typeof e}(e)&&x.call(e)==u}var N=function(e,t,o){var n=null==e?void 0:I(e,t);return void 0===n?o:n},Q={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",$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"},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",$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"},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 V(e,t,r,a){if(Array.isArray(t)&&t.length>0){var i,_=t[0],s=null==_?void 0:_.type,u=N(r,e[s]);return"search_result"===s?function(e,t,r,a,i){var _,s=[],u=1,c="rooms"===a?"room_plan":"rooms",l=o(r);try{for(l.s();!(_=l.n()).done;){var m,p=_.value,d=o(p[c]);try{for(d.s();!(m=d.n()).done;){var h=m.value,$={};for(var f in t){var b=t[f],g=e[b];if("$room_size"===b)$[f]=X("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=N(p,g,null);n(y)&&(y=N(h,g,null)),n(y)&&(y=V(e,b,i)),$[f]=y}}s.push($),u++}}catch(e){d.e(e)}finally{d.f()}}}catch(e){l.e(e)}finally{l.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 l=t[c],m=V(e,l,s);n(m)&&(m=V(e,l,a)),u[c]=m}i.push(u)}return i}(e,_,u,0,r)}if(!String(t).startsWith("$"))return t;if("$number_of_rooms"===t)return 1;if("$currency_code"===t)return"JPY";if(e[t]){var c,l=e[t];return"$room_size"===t?X(N(r,l,null)):null!==(c=N(r,l,null))&&void 0!==c?c:null}}function X(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]=V(Q[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=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})}));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tripla/gtm-converter",
3
- "version": "0.0.14",
3
+ "version": "0.0.16",
4
4
  "private": false,
5
5
  "main": "dist/tripla-gtm-converter.cjs.js",
6
6
  "module": "dist/tripla-gtm-converter.esm.js",