@mirai/core 0.3.427 → 0.4.1

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.
Files changed (240) hide show
  1. package/build/Core.constants.js +12 -12
  2. package/build/Core.constants.js.map +1 -1
  3. package/build/components/Booking/Booking.js +8 -6
  4. package/build/components/Booking/Booking.js.map +1 -1
  5. package/build/components/Booking/partials/Booking.Information.js +1 -1
  6. package/build/components/Booking/partials/Booking.Information.js.map +1 -1
  7. package/build/components/Booking/partials/Booking.Modal.js +1 -1
  8. package/build/components/Booking/partials/Booking.Modal.js.map +1 -1
  9. package/build/components/Checkout/Checkout.js +3 -3
  10. package/build/components/Checkout/Checkout.js.map +1 -1
  11. package/build/components/Checkout/helpers/index.js +0 -11
  12. package/build/components/Checkout/helpers/index.js.map +1 -1
  13. package/build/components/Checkout/partials/Checkout.Form.js +5 -3
  14. package/build/components/Checkout/partials/Checkout.Form.js.map +1 -1
  15. package/build/components/Finder/Finder.js +15 -11
  16. package/build/components/Finder/Finder.js.map +1 -1
  17. package/build/components/Finder/helpers/index.js +0 -11
  18. package/build/components/Finder/helpers/index.js.map +1 -1
  19. package/build/components/Rates/Rates.js +12 -13
  20. package/build/components/Rates/Rates.js.map +1 -1
  21. package/build/components/Rates/components/Item/components/ModalUrl/ModalUrl.js +1 -0
  22. package/build/components/Rates/components/Item/components/ModalUrl/ModalUrl.js.map +1 -1
  23. package/build/components/Rates/helpers/index.js +0 -22
  24. package/build/components/Rates/helpers/index.js.map +1 -1
  25. package/build/components/Session/Session.Login.Modal.js +4 -1
  26. package/build/components/Session/Session.Login.Modal.js.map +1 -1
  27. package/build/components/Session/helpers/index.js +0 -11
  28. package/build/components/Session/helpers/index.js.map +1 -1
  29. package/build/components/__shared__/BookingTerms/BookingTerms.js +1 -1
  30. package/build/components/__shared__/BookingTerms/BookingTerms.js.map +1 -1
  31. package/build/components/helpers/constants.js +1 -0
  32. package/build/components/helpers/constants.js.map +1 -1
  33. package/build/contexts/PerformanceManager/PerformanceManager.constants.js +10 -0
  34. package/build/contexts/PerformanceManager/PerformanceManager.constants.js.map +1 -0
  35. package/build/contexts/PerformanceManager/PerformanceManager.events.js +55 -0
  36. package/build/contexts/PerformanceManager/PerformanceManager.events.js.map +1 -0
  37. package/build/contexts/PerformanceManager/PerformanceManager.js +201 -0
  38. package/build/contexts/PerformanceManager/PerformanceManager.js.map +1 -0
  39. package/build/contexts/PerformanceManager/PerformanceManager.scripts.js +137 -0
  40. package/build/contexts/PerformanceManager/PerformanceManager.scripts.js.map +1 -0
  41. package/build/contexts/PerformanceManager/helpers/dataLayerPush.js.map +1 -0
  42. package/build/contexts/PerformanceManager/helpers/getConsentMode.js +39 -0
  43. package/build/contexts/PerformanceManager/helpers/getConsentMode.js.map +1 -0
  44. package/build/contexts/{PerfomanceManager/helpers/getPerfomanceLabel.js → PerformanceManager/helpers/getPerformanceLabel.js} +5 -5
  45. package/build/contexts/PerformanceManager/helpers/getPerformanceLabel.js.map +1 -0
  46. package/build/contexts/{PerfomanceManager → PerformanceManager}/helpers/index.js +8 -8
  47. package/build/contexts/PerformanceManager/helpers/index.js.map +1 -0
  48. package/build/contexts/PerformanceManager/index.js +17 -0
  49. package/build/contexts/PerformanceManager/index.js.map +1 -0
  50. package/build/contexts/PerformanceManager/providers/affilired/bookingResponse.js +44 -0
  51. package/build/contexts/PerformanceManager/providers/affilired/bookingResponse.js.map +1 -0
  52. package/build/contexts/PerformanceManager/providers/affilired/index.js.map +1 -0
  53. package/build/contexts/PerformanceManager/providers/analytics/bookingCancel.js +51 -0
  54. package/build/contexts/PerformanceManager/providers/analytics/bookingCancel.js.map +1 -0
  55. package/build/contexts/PerformanceManager/providers/analytics/bookingResponse.js +121 -0
  56. package/build/contexts/PerformanceManager/providers/analytics/bookingResponse.js.map +1 -0
  57. package/build/contexts/PerformanceManager/providers/analytics/checkoutForm.js +46 -0
  58. package/build/contexts/PerformanceManager/providers/analytics/checkoutForm.js.map +1 -0
  59. package/build/contexts/PerformanceManager/providers/analytics/checkoutResponse.js +56 -0
  60. package/build/contexts/PerformanceManager/providers/analytics/checkoutResponse.js.map +1 -0
  61. package/build/contexts/PerformanceManager/providers/analytics/finderReady.js +41 -0
  62. package/build/contexts/PerformanceManager/providers/analytics/finderReady.js.map +1 -0
  63. package/build/contexts/PerformanceManager/providers/analytics/helpers/index.js +39 -0
  64. package/build/contexts/PerformanceManager/providers/analytics/helpers/index.js.map +1 -0
  65. package/build/contexts/PerformanceManager/providers/analytics/helpers/parseCommon.js +38 -0
  66. package/build/contexts/PerformanceManager/providers/analytics/helpers/parseCommon.js.map +1 -0
  67. package/build/contexts/PerformanceManager/providers/analytics/helpers/parseItems.js +72 -0
  68. package/build/contexts/PerformanceManager/providers/analytics/helpers/parseItems.js.map +1 -0
  69. package/build/contexts/PerformanceManager/providers/analytics/helpers/parseRate.js +40 -0
  70. package/build/contexts/PerformanceManager/providers/analytics/helpers/parseRate.js.map +1 -0
  71. package/build/contexts/{PerfomanceManager → PerformanceManager}/providers/analytics/index.js +2 -2
  72. package/build/contexts/PerformanceManager/providers/analytics/index.js.map +1 -0
  73. package/build/contexts/PerformanceManager/providers/analytics/logged.js +36 -0
  74. package/build/contexts/PerformanceManager/providers/analytics/logged.js.map +1 -0
  75. package/build/contexts/PerformanceManager/providers/analytics/ratesAddToCart.js +90 -0
  76. package/build/contexts/PerformanceManager/providers/analytics/ratesAddToCart.js.map +1 -0
  77. package/build/contexts/PerformanceManager/providers/analytics/ratesResponse.js +115 -0
  78. package/build/contexts/PerformanceManager/providers/analytics/ratesResponse.js.map +1 -0
  79. package/build/contexts/PerformanceManager/providers/bing/bookingResponse.js +30 -0
  80. package/build/contexts/PerformanceManager/providers/bing/bookingResponse.js.map +1 -0
  81. package/build/contexts/PerformanceManager/providers/bing/index.js.map +1 -0
  82. package/build/contexts/PerformanceManager/providers/facebook/bookingResponse.js +73 -0
  83. package/build/contexts/PerformanceManager/providers/facebook/bookingResponse.js.map +1 -0
  84. package/build/contexts/PerformanceManager/providers/facebook/checkoutResponse.js +78 -0
  85. package/build/contexts/PerformanceManager/providers/facebook/checkoutResponse.js.map +1 -0
  86. package/build/contexts/PerformanceManager/providers/facebook/helpers/getCookies.js +13 -0
  87. package/build/contexts/PerformanceManager/providers/facebook/helpers/getCookies.js.map +1 -0
  88. package/build/contexts/PerformanceManager/providers/facebook/helpers/index.js +39 -0
  89. package/build/contexts/PerformanceManager/providers/facebook/helpers/index.js.map +1 -0
  90. package/build/contexts/PerformanceManager/providers/facebook/helpers/parseCustomData.js +30 -0
  91. package/build/contexts/PerformanceManager/providers/facebook/helpers/parseCustomData.js.map +1 -0
  92. package/build/contexts/PerformanceManager/providers/facebook/helpers/parseUserData.js +29 -0
  93. package/build/contexts/PerformanceManager/providers/facebook/helpers/parseUserData.js.map +1 -0
  94. package/build/contexts/PerformanceManager/providers/facebook/helpers/sendData.js +15 -0
  95. package/build/contexts/PerformanceManager/providers/facebook/helpers/sendData.js.map +1 -0
  96. package/build/contexts/PerformanceManager/providers/facebook/index.js.map +1 -0
  97. package/build/contexts/PerformanceManager/providers/facebook/ratesAddToCart.js +67 -0
  98. package/build/contexts/PerformanceManager/providers/facebook/ratesAddToCart.js.map +1 -0
  99. package/build/contexts/PerformanceManager/providers/facebook/ratesResponse.js +77 -0
  100. package/build/contexts/PerformanceManager/providers/facebook/ratesResponse.js.map +1 -0
  101. package/build/contexts/PerformanceManager/providers/googleAds/bookingResponse.js +62 -0
  102. package/build/contexts/PerformanceManager/providers/googleAds/bookingResponse.js.map +1 -0
  103. package/build/contexts/PerformanceManager/providers/googleAds/index.js.map +1 -0
  104. package/build/contexts/PerformanceManager/providers/gtm/bookingCancel.js +88 -0
  105. package/build/contexts/PerformanceManager/providers/gtm/bookingCancel.js.map +1 -0
  106. package/build/contexts/PerformanceManager/providers/gtm/bookingResponse.js +190 -0
  107. package/build/contexts/PerformanceManager/providers/gtm/bookingResponse.js.map +1 -0
  108. package/build/contexts/PerformanceManager/providers/gtm/checkoutResponse.js +180 -0
  109. package/build/contexts/PerformanceManager/providers/gtm/checkoutResponse.js.map +1 -0
  110. package/build/contexts/PerformanceManager/providers/gtm/finderReady.js +39 -0
  111. package/build/contexts/PerformanceManager/providers/gtm/finderReady.js.map +1 -0
  112. package/build/contexts/PerformanceManager/providers/gtm/helpers/index.js +17 -0
  113. package/build/contexts/PerformanceManager/providers/gtm/helpers/index.js.map +1 -0
  114. package/build/contexts/PerformanceManager/providers/gtm/helpers/parseRate.js +29 -0
  115. package/build/contexts/PerformanceManager/providers/gtm/helpers/parseRate.js.map +1 -0
  116. package/build/contexts/PerformanceManager/providers/gtm/index.js.map +1 -0
  117. package/build/contexts/PerformanceManager/providers/gtm/ratesResponse.js +203 -0
  118. package/build/contexts/PerformanceManager/providers/gtm/ratesResponse.js.map +1 -0
  119. package/build/contexts/PerformanceManager/providers/helpers/SHA256.js +90 -0
  120. package/build/contexts/PerformanceManager/providers/helpers/SHA256.js.map +1 -0
  121. package/build/contexts/PerformanceManager/providers/helpers/getFirstOccupationOption.js +22 -0
  122. package/build/contexts/PerformanceManager/providers/helpers/getFirstOccupationOption.js.map +1 -0
  123. package/build/contexts/PerformanceManager/providers/helpers/getRatesPriceRange.js +27 -0
  124. package/build/contexts/PerformanceManager/providers/helpers/getRatesPriceRange.js.map +1 -0
  125. package/build/contexts/PerformanceManager/providers/helpers/getRoomPriceRange.js +64 -0
  126. package/build/contexts/PerformanceManager/providers/helpers/getRoomPriceRange.js.map +1 -0
  127. package/build/contexts/PerformanceManager/providers/helpers/getRoomsPriceRange.js +13 -0
  128. package/build/contexts/PerformanceManager/providers/helpers/getRoomsPriceRange.js.map +1 -0
  129. package/build/contexts/PerformanceManager/providers/helpers/index.js +61 -0
  130. package/build/contexts/PerformanceManager/providers/helpers/index.js.map +1 -0
  131. package/build/contexts/PerformanceManager/providers/helpers/legacy.js +15 -0
  132. package/build/contexts/PerformanceManager/providers/helpers/legacy.js.map +1 -0
  133. package/build/contexts/PerformanceManager/providers/index.js.map +1 -0
  134. package/build/contexts/PerformanceManager/providers/mirai/bookingResponse.js +71 -0
  135. package/build/contexts/PerformanceManager/providers/mirai/bookingResponse.js.map +1 -0
  136. package/build/contexts/PerformanceManager/providers/mirai/index.js +11 -0
  137. package/build/contexts/PerformanceManager/providers/mirai/index.js.map +1 -0
  138. package/build/contexts/index.js +4 -4
  139. package/build/contexts/index.js.map +1 -1
  140. package/build/helpers/consolidateStore.js +4 -25
  141. package/build/helpers/consolidateStore.js.map +1 -1
  142. package/build/helpers/getLocale.js +1 -0
  143. package/build/helpers/getLocale.js.map +1 -1
  144. package/build/helpers/getPerformance.js +50 -0
  145. package/build/helpers/getPerformance.js.map +1 -0
  146. package/build/helpers/index.js +11 -0
  147. package/build/helpers/index.js.map +1 -1
  148. package/build/helpers/loadScript.js +3 -2
  149. package/build/helpers/loadScript.js.map +1 -1
  150. package/build/index.js +1 -1
  151. package/build/index.js.map +1 -1
  152. package/package.json +1 -1
  153. package/public/index.html +1 -1
  154. package/build/components/Checkout/helpers/trackForm.js +0 -29
  155. package/build/components/Checkout/helpers/trackForm.js.map +0 -1
  156. package/build/components/Finder/helpers/track.js +0 -25
  157. package/build/components/Finder/helpers/track.js.map +0 -1
  158. package/build/components/Rates/helpers/trackDataSource.js +0 -56
  159. package/build/components/Rates/helpers/trackDataSource.js.map +0 -1
  160. package/build/components/Rates/helpers/trackSelectItem.js +0 -103
  161. package/build/components/Rates/helpers/trackSelectItem.js.map +0 -1
  162. package/build/components/Session/helpers/trackLogin.js +0 -26
  163. package/build/components/Session/helpers/trackLogin.js.map +0 -1
  164. package/build/contexts/PerfomanceManager/PerfomanceManager.events.js +0 -57
  165. package/build/contexts/PerfomanceManager/PerfomanceManager.events.js.map +0 -1
  166. package/build/contexts/PerfomanceManager/PerfomanceManager.js +0 -125
  167. package/build/contexts/PerfomanceManager/PerfomanceManager.js.map +0 -1
  168. package/build/contexts/PerfomanceManager/PerfomanceManager.scripts.js +0 -111
  169. package/build/contexts/PerfomanceManager/PerfomanceManager.scripts.js.map +0 -1
  170. package/build/contexts/PerfomanceManager/helpers/dataLayerPush.js.map +0 -1
  171. package/build/contexts/PerfomanceManager/helpers/getPerfomanceLabel.js.map +0 -1
  172. package/build/contexts/PerfomanceManager/helpers/googleTagManager.js +0 -23
  173. package/build/contexts/PerfomanceManager/helpers/googleTagManager.js.map +0 -1
  174. package/build/contexts/PerfomanceManager/helpers/index.js.map +0 -1
  175. package/build/contexts/PerfomanceManager/index.js +0 -17
  176. package/build/contexts/PerfomanceManager/index.js.map +0 -1
  177. package/build/contexts/PerfomanceManager/providers/affilired/bookingResponse.js +0 -14
  178. package/build/contexts/PerfomanceManager/providers/affilired/bookingResponse.js.map +0 -1
  179. package/build/contexts/PerfomanceManager/providers/affilired/index.js.map +0 -1
  180. package/build/contexts/PerfomanceManager/providers/analytics/bookingCancel.js +0 -14
  181. package/build/contexts/PerfomanceManager/providers/analytics/bookingCancel.js.map +0 -1
  182. package/build/contexts/PerfomanceManager/providers/analytics/bookingResponse.js +0 -14
  183. package/build/contexts/PerfomanceManager/providers/analytics/bookingResponse.js.map +0 -1
  184. package/build/contexts/PerfomanceManager/providers/analytics/checkoutForm.js +0 -14
  185. package/build/contexts/PerfomanceManager/providers/analytics/checkoutForm.js.map +0 -1
  186. package/build/contexts/PerfomanceManager/providers/analytics/checkoutResponse.js +0 -14
  187. package/build/contexts/PerfomanceManager/providers/analytics/checkoutResponse.js.map +0 -1
  188. package/build/contexts/PerfomanceManager/providers/analytics/finderReady.js +0 -14
  189. package/build/contexts/PerfomanceManager/providers/analytics/finderReady.js.map +0 -1
  190. package/build/contexts/PerfomanceManager/providers/analytics/index.js.map +0 -1
  191. package/build/contexts/PerfomanceManager/providers/analytics/login.js +0 -14
  192. package/build/contexts/PerfomanceManager/providers/analytics/login.js.map +0 -1
  193. package/build/contexts/PerfomanceManager/providers/analytics/ratesAddToCart.js +0 -14
  194. package/build/contexts/PerfomanceManager/providers/analytics/ratesAddToCart.js.map +0 -1
  195. package/build/contexts/PerfomanceManager/providers/analytics/ratesResponse.js +0 -14
  196. package/build/contexts/PerfomanceManager/providers/analytics/ratesResponse.js.map +0 -1
  197. package/build/contexts/PerfomanceManager/providers/bing/bookingResponse.js +0 -14
  198. package/build/contexts/PerfomanceManager/providers/bing/bookingResponse.js.map +0 -1
  199. package/build/contexts/PerfomanceManager/providers/bing/index.js.map +0 -1
  200. package/build/contexts/PerfomanceManager/providers/facebook/bookingResponse.js +0 -14
  201. package/build/contexts/PerfomanceManager/providers/facebook/bookingResponse.js.map +0 -1
  202. package/build/contexts/PerfomanceManager/providers/facebook/checkoutResponse.js +0 -14
  203. package/build/contexts/PerfomanceManager/providers/facebook/checkoutResponse.js.map +0 -1
  204. package/build/contexts/PerfomanceManager/providers/facebook/index.js.map +0 -1
  205. package/build/contexts/PerfomanceManager/providers/facebook/ratesAddToCart.js +0 -14
  206. package/build/contexts/PerfomanceManager/providers/facebook/ratesAddToCart.js.map +0 -1
  207. package/build/contexts/PerfomanceManager/providers/facebook/ratesResponse.js +0 -14
  208. package/build/contexts/PerfomanceManager/providers/facebook/ratesResponse.js.map +0 -1
  209. package/build/contexts/PerfomanceManager/providers/googleAds/bookingResponse.js +0 -14
  210. package/build/contexts/PerfomanceManager/providers/googleAds/bookingResponse.js.map +0 -1
  211. package/build/contexts/PerfomanceManager/providers/googleAds/index.js.map +0 -1
  212. package/build/contexts/PerfomanceManager/providers/gtm/bookingCancel.js +0 -14
  213. package/build/contexts/PerfomanceManager/providers/gtm/bookingCancel.js.map +0 -1
  214. package/build/contexts/PerfomanceManager/providers/gtm/bookingResponse.js +0 -14
  215. package/build/contexts/PerfomanceManager/providers/gtm/bookingResponse.js.map +0 -1
  216. package/build/contexts/PerfomanceManager/providers/gtm/checkoutResponse.js +0 -14
  217. package/build/contexts/PerfomanceManager/providers/gtm/checkoutResponse.js.map +0 -1
  218. package/build/contexts/PerfomanceManager/providers/gtm/finderReady.js +0 -14
  219. package/build/contexts/PerfomanceManager/providers/gtm/finderReady.js.map +0 -1
  220. package/build/contexts/PerfomanceManager/providers/gtm/index.js.map +0 -1
  221. package/build/contexts/PerfomanceManager/providers/gtm/ratesResponse.js +0 -205
  222. package/build/contexts/PerfomanceManager/providers/gtm/ratesResponse.js.map +0 -1
  223. package/build/contexts/PerfomanceManager/providers/index.js.map +0 -1
  224. package/build/contexts/PerfomanceManager/providers/mirai/bookingResponse.js +0 -14
  225. package/build/contexts/PerfomanceManager/providers/mirai/bookingResponse.js.map +0 -1
  226. package/build/contexts/PerfomanceManager/providers/mirai/checkoutResponse.js +0 -14
  227. package/build/contexts/PerfomanceManager/providers/mirai/checkoutResponse.js.map +0 -1
  228. package/build/contexts/PerfomanceManager/providers/mirai/finderReady.js +0 -14
  229. package/build/contexts/PerfomanceManager/providers/mirai/finderReady.js.map +0 -1
  230. package/build/contexts/PerfomanceManager/providers/mirai/index.js +0 -17
  231. package/build/contexts/PerfomanceManager/providers/mirai/index.js.map +0 -1
  232. package/build/contexts/PerfomanceManager/providers/mirai/ratesResponse.js +0 -14
  233. package/build/contexts/PerfomanceManager/providers/mirai/ratesResponse.js.map +0 -1
  234. /package/build/contexts/{PerfomanceManager → PerformanceManager}/helpers/dataLayerPush.js +0 -0
  235. /package/build/contexts/{PerfomanceManager → PerformanceManager}/providers/affilired/index.js +0 -0
  236. /package/build/contexts/{PerfomanceManager → PerformanceManager}/providers/bing/index.js +0 -0
  237. /package/build/contexts/{PerfomanceManager → PerformanceManager}/providers/facebook/index.js +0 -0
  238. /package/build/contexts/{PerfomanceManager → PerformanceManager}/providers/googleAds/index.js +0 -0
  239. /package/build/contexts/{PerfomanceManager → PerformanceManager}/providers/gtm/index.js +0 -0
  240. /package/build/contexts/{PerfomanceManager → PerformanceManager}/providers/index.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PerformanceManager.js","names":["_dataSources","require","_services","_ui","_react","_helpers","_PerformanceManager","_PerformanceManager2","_PerformanceManager3","_helpers2","_Core","_helpers3","PerformanceManager","device","useDevice","track","trackRender","useMetrics","value","components","performance","store","useStore","consentMode","setConsentMode","useState","getConsentMode","ready","setReady","hotel","finder","place","id","instanceId","locale","session","type","useEffect","metrics","ServiceFeatures","get","bannedMetrics","Object","entries","filter","_ref","map","_ref2","key","handleMetrics","_ref3","props","window","IS_PLAYWRIGHT","location","host","event","toUpperCase","trim","metric","split","includes","KPI_EVENTS","method","hotelId","mobile","Event","subscribe","COMPONENTS_EVENT","METRICS","unsubscribe","undefined","interval","setInterval","nextConsentMode","loadScripts","clearInterval","handleEvent","EVENT","CORE_READY","config","isHotel","getPerformance","setTimeout","publish","PERFORMANCE_READY","_ref4","availableProviders","arguments","length","CONSENT_MODE_REQUIRED","EVENTS","_ref5","provider","parseInt","forEach","_ref6","callback","find","_ref7","data","label","concat","getPerformanceLabel","then","console","log","keys","propConsentMode","loadedComponents","scripts","instances","propInstances","init","once","SCRIPTS","some","item","push","index","domain","Promise","all","loadScript","exports"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.jsx"],"sourcesContent":["import { Event, useMetrics, useStore } from '@mirai/data-sources';\nimport { ServiceFeatures } from '@mirai/services';\nimport { useDevice } from '@mirai/ui';\nimport { useEffect, useState } from 'react';\n\nimport { getConsentMode, getPerformanceLabel } from './helpers';\nimport { CONSENT_MODE_REQUIRED, KPI_EVENTS } from './PerformanceManager.constants';\nimport { EVENTS } from './PerformanceManager.events';\nimport { SCRIPTS } from './PerformanceManager.scripts';\nimport { EVENT as COMPONENTS_EVENT } from '../../components/helpers';\nimport { EVENT } from '../../Core.constants';\nimport { getPerformance, loadScript } from '../../helpers';\n\nconst PerformanceManager = () => {\n const device = useDevice();\n const { track, trackRender } = useMetrics();\n const {\n value: { components = {}, performance = [], ...store },\n } = useStore();\n\n const [consentMode, setConsentMode] = useState(getConsentMode());\n const [ready, setReady] = useState(false);\n\n const { hotel, finder: { place } = {}, id: instanceId, locale, session, type } = store;\n\n useEffect(() => {\n const metrics = ServiceFeatures.get('metrics', hotel.id) || {};\n const bannedMetrics = Object.entries(metrics)\n .filter(([, value]) => value === false)\n .map(([key]) => key);\n\n const handleMetrics = ({ id, ...props }) => {\n if (!id || window.IS_PLAYWRIGHT || window.location.host === 'monalisa.mirai.com') return;\n const event = id.toUpperCase().trim();\n const [metric] = event.split(':');\n\n if (bannedMetrics.includes(metric) && !KPI_EVENTS.includes(event)) return;\n const method = event.includes('RENDER') ? trackRender : track;\n\n method(event, {\n ...props,\n hotelId: hotel.id,\n instanceId,\n locale,\n mobile: device.mobile,\n session,\n type,\n });\n };\n\n Event.subscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n\n return () => Event.unsubscribe(COMPONENTS_EVENT.METRICS, handleMetrics);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, []);\n\n useEffect(() => {\n if (consentMode !== undefined) return;\n\n const interval = setInterval(() => {\n const nextConsentMode = getConsentMode();\n\n if (nextConsentMode !== undefined) {\n if (nextConsentMode) loadScripts(performance, nextConsentMode);\n setConsentMode(nextConsentMode);\n }\n }, 1000);\n\n return () => clearInterval(interval);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [consentMode]);\n\n useEffect(() => {\n const handleEvent = () => loadScripts(performance);\n\n Event.subscribe(EVENT.CORE_READY, handleEvent);\n\n return () => Event.unsubscribe(EVENT.CORE_READY, handleEvent);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [performance]);\n\n useEffect(() => {\n const {\n config,\n finder: { place: { id: [hotelId] = [], isHotel } = {} },\n } = store;\n\n if (place && ready) loadScripts(getPerformance(config, isHotel ? hotelId : undefined));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [place]);\n\n useEffect(() => {\n // ! TODO: why we should delay the event...\n if (ready) setTimeout(() => Event.publish(EVENT.PERFORMANCE_READY, 10));\n }, [ready]);\n\n useEffect(() => {\n if (!ready) return;\n\n const handleEvent = ({ event, ...value }) => {\n const availableProviders = performance\n .map(({ type } = {}) => type)\n .filter(({ type } = {}) => consentMode === true || !CONSENT_MODE_REQUIRED.includes(type));\n\n Object.entries(EVENTS[event])\n .filter(([provider]) => availableProviders.includes(parseInt(provider)))\n .forEach(([provider, callback = () => {}]) => {\n const config = performance.find(({ type }) => type === parseInt(provider));\n const data = callback({ ...value, ...config, device, store });\n\n const label = `⚡️ ${getPerformanceLabel(provider)} ${event}`;\n // eslint-disable-next-line no-console\n data.then ? data.then((value) => console.log(label, value)) : console.log(label, data);\n });\n };\n\n Object.keys(EVENTS).forEach((event) => Event.subscribe(event, handleEvent));\n\n return () => Object.keys(EVENTS).forEach((event) => Event.unsubscribe(event, handleEvent));\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [consentMode, device, ready, store]);\n\n const loadScripts = async (performance = [], propConsentMode = consentMode) => {\n const loadedComponents = Object.keys(components);\n\n // ! TODO: Load all instances scripts or just the first one.\n const scripts = [];\n performance\n .filter(({ type } = {}) => propConsentMode === true || !CONSENT_MODE_REQUIRED.includes(type))\n .forEach(({ type, instances: propInstances = [] } = {}) => {\n const { components = [], init = () => {}, once = false } = SCRIPTS[type] || {};\n\n if (components.length === 0 || components.some((item) => loadedComponents.includes(item))) {\n const instances = once ? [propInstances[0]] : propInstances;\n scripts.push(\n ...instances.map((config = {}, index) => ({\n domain: `performance-${getPerformanceLabel(type)}`,\n id: index + 1,\n ...init({ ...config, hotel, loadedComponents }),\n })),\n );\n }\n });\n setReady(false);\n\n await Promise.all(scripts.map((config) => loadScript(config)));\n\n setReady(true);\n };\n\n return null;\n};\n\nexport { PerformanceManager };\n"],"mappings":"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"}
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.SCRIPTS = void 0;
7
+ var _helpers = require("./helpers");
8
+ var _Core = require("../../Core.constants");
9
+ var _helpers2 = require("../../helpers");
10
+ const SCRIPTS = exports.SCRIPTS = {
11
+ [_Core.PERFORMANCE.AFFILIRED]: {
12
+ components: ['booking'],
13
+ init: () => ({
14
+ src: 'https://scripts.affilired.com/v2/tracking.php'
15
+ }),
16
+ once: true
17
+ },
18
+ [_Core.PERFORMANCE.ANALYTICS]: {
19
+ init: function () {
20
+ let {
21
+ idAnalytics
22
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
23
+ return {
24
+ src: "https://www.googletagmanager.com/gtag/js?id=".concat(idAnalytics),
25
+ onLoad: () => {
26
+ window.gtag = function () {
27
+ window.dataLayer.push(arguments);
28
+ };
29
+ window.gtag('js', new Date());
30
+ window.gtag('config', idAnalytics, {
31
+ linker: {
32
+ accept_incoming: true
33
+ }
34
+ });
35
+ }
36
+ };
37
+ }
38
+ },
39
+ [_Core.PERFORMANCE.BING]: {
40
+ components: ['booking'],
41
+ init: _ref => {
42
+ let {
43
+ idBing
44
+ } = _ref;
45
+ return {
46
+ src: '//bat.bing.com/bat.js',
47
+ onLoad: () => {
48
+ // eslint-disable-next-line no-undef
49
+ window.uetq = new UET({
50
+ ti: idBing,
51
+ q: window.uetq || []
52
+ });
53
+ window.uetq.push('pageLoad');
54
+ }
55
+ };
56
+ }
57
+ },
58
+ [_Core.PERFORMANCE.COMPARE]: {
59
+ components: ['rates', 'checkout'],
60
+ init: () => ({
61
+ src: 'https://static.hotelmonitor.info/CmprmInit-min.js',
62
+ onLoad: () => {
63
+ window.Mirai.urlParameters = (0, _helpers2.fetchUrlParams)(location.search);
64
+ document.addEventListener('CmprmInitLoaded', window.CmprmInit.InitMirai, false);
65
+ }
66
+ }),
67
+ once: true
68
+ },
69
+ [_Core.PERFORMANCE.GOOGLE_ADS]: {
70
+ init: function () {
71
+ let {
72
+ cookiePrefix,
73
+ idAdwords,
74
+ loadedComponents = []
75
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
76
+ return {
77
+ src: "https://www.googletagmanager.com/gtag/js?id=".concat(idAdwords),
78
+ onLoad: () => {
79
+ window.gtag = function () {
80
+ window.dataLayer.push(arguments);
81
+ };
82
+ window.gtag('config', "AD-".concat(idAdwords), {
83
+ conversion_cookie_prefix: cookiePrefix,
84
+ allow_enhanced_conversions: loadedComponents.includes('booking')
85
+ });
86
+ }
87
+ };
88
+ }
89
+ },
90
+ [_Core.PERFORMANCE.GTM]: {
91
+ components: ['finder', 'rates', 'checkout', 'booking'],
92
+ init: function () {
93
+ let {
94
+ idGTM: id
95
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
96
+ return {
97
+ src: "https://www.googletagmanager.com/gtm.js?id=".concat(id),
98
+ onLoad: () => {
99
+ window.dataLayer = window.dataLayer || [];
100
+ (0, _helpers.dataLayerPush)({
101
+ event: 'gtm.js',
102
+ 'gtm.start': new Date().getTime()
103
+ });
104
+ }
105
+ };
106
+ }
107
+ },
108
+ [_Core.PERFORMANCE.FACEBOOK]: {
109
+ components: ['rates', 'checkout', 'booking']
110
+ },
111
+ [_Core.PERFORMANCE.MIRAI]: {
112
+ components: ['finder', 'rates', 'checkout', 'booking'],
113
+ init: function () {
114
+ let {
115
+ hotel: {
116
+ id
117
+ } = {}
118
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
119
+ return {
120
+ src: "https://metas.mirai.com/connectivity/gtag/b2c?hotelId=".concat(id)
121
+ };
122
+ },
123
+ once: true
124
+ },
125
+ [_Core.PERFORMANCE.THE_HOTEL_NETWORK]: {
126
+ components: ['finder', 'rates', 'checkout', 'booking'],
127
+ init: _ref2 => {
128
+ let {
129
+ id = '7'
130
+ } = _ref2;
131
+ return {
132
+ src: "https://www.thehotelsnetwork.com/js/hotel_price_widget.js?partnership_id=".concat(id)
133
+ };
134
+ }
135
+ }
136
+ };
137
+ //# sourceMappingURL=PerformanceManager.scripts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PerformanceManager.scripts.js","names":["_helpers","require","_Core","_helpers2","SCRIPTS","exports","PERFORMANCE","AFFILIRED","components","init","src","once","ANALYTICS","idAnalytics","arguments","length","undefined","concat","onLoad","window","gtag","dataLayer","push","Date","linker","accept_incoming","BING","_ref","idBing","uetq","UET","ti","q","COMPARE","Mirai","urlParameters","fetchUrlParams","location","search","document","addEventListener","CmprmInit","InitMirai","GOOGLE_ADS","cookiePrefix","idAdwords","loadedComponents","conversion_cookie_prefix","allow_enhanced_conversions","includes","GTM","idGTM","id","dataLayerPush","event","getTime","FACEBOOK","MIRAI","hotel","THE_HOTEL_NETWORK","_ref2"],"sources":["../../../src/contexts/PerformanceManager/PerformanceManager.scripts.js"],"sourcesContent":["import { dataLayerPush } from './helpers';\nimport { PERFORMANCE } from '../../Core.constants';\nimport { fetchUrlParams } from '../../helpers';\n\nconst SCRIPTS = {\n [PERFORMANCE.AFFILIRED]: {\n components: ['booking'],\n init: () => ({\n src: 'https://scripts.affilired.com/v2/tracking.php',\n }),\n once: true,\n },\n\n [PERFORMANCE.ANALYTICS]: {\n init: ({ idAnalytics } = {}) => ({\n src: `https://www.googletagmanager.com/gtag/js?id=${idAnalytics}`,\n onLoad: () => {\n window.gtag = function () {\n window.dataLayer.push(arguments);\n };\n window.gtag('js', new Date());\n window.gtag('config', idAnalytics, { linker: { accept_incoming: true } });\n },\n }),\n },\n\n [PERFORMANCE.BING]: {\n components: ['booking'],\n init: ({ idBing }) => ({\n src: '//bat.bing.com/bat.js',\n onLoad: () => {\n // eslint-disable-next-line no-undef\n window.uetq = new UET({ ti: idBing, q: window.uetq || [] });\n window.uetq.push('pageLoad');\n },\n }),\n },\n\n [PERFORMANCE.COMPARE]: {\n components: ['rates', 'checkout'],\n init: () => ({\n src: 'https://static.hotelmonitor.info/CmprmInit-min.js',\n onLoad: () => {\n window.Mirai.urlParameters = fetchUrlParams(location.search);\n document.addEventListener('CmprmInitLoaded', window.CmprmInit.InitMirai, false);\n },\n }),\n once: true,\n },\n\n [PERFORMANCE.GOOGLE_ADS]: {\n init: ({ cookiePrefix, idAdwords, loadedComponents = [] } = {}) => ({\n src: `https://www.googletagmanager.com/gtag/js?id=${idAdwords}`,\n onLoad: () => {\n window.gtag = function () {\n window.dataLayer.push(arguments);\n };\n window.gtag('config', `AD-${idAdwords}`, {\n conversion_cookie_prefix: cookiePrefix,\n allow_enhanced_conversions: loadedComponents.includes('booking'),\n });\n },\n }),\n },\n\n [PERFORMANCE.GTM]: {\n components: ['finder', 'rates', 'checkout', 'booking'],\n init: ({ idGTM: id } = {}) => ({\n src: `https://www.googletagmanager.com/gtm.js?id=${id}`,\n onLoad: () => {\n window.dataLayer = window.dataLayer || [];\n dataLayerPush({ event: 'gtm.js', 'gtm.start': new Date().getTime() });\n },\n }),\n },\n\n [PERFORMANCE.FACEBOOK]: {\n components: ['rates', 'checkout', 'booking'],\n },\n\n [PERFORMANCE.MIRAI]: {\n components: ['finder', 'rates', 'checkout', 'booking'],\n init: ({ hotel: { id } = {} } = {}) => ({\n src: `https://metas.mirai.com/connectivity/gtag/b2c?hotelId=${id}`,\n }),\n once: true,\n },\n\n [PERFORMANCE.THE_HOTEL_NETWORK]: {\n components: ['finder', 'rates', 'checkout', 'booking'],\n init: ({ id = '7' }) => ({\n src: `https://www.thehotelsnetwork.com/js/hotel_price_widget.js?partnership_id=${id}`,\n }),\n },\n};\n\nexport { SCRIPTS };\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dataLayerPush.js","names":["dataLayerPush","event","props","arguments","length","undefined","window","dataLayer","push","exports"],"sources":["../../../../src/contexts/PerformanceManager/helpers/dataLayerPush.js"],"sourcesContent":["export const dataLayerPush = ({ event, ...props } = {}) => {\n // ! TODO: Should sanitize all properties\n window.dataLayer.push({ event, ...props });\n};\n"],"mappings":";;;;;;AAAO,MAAMA,aAAa,GAAG,SAAAA,CAAA,EAA8B;EAAA,IAA7B;IAAEC,KAAK;IAAE,GAAGC;EAAM,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACpD;EACAG,MAAM,CAACC,SAAS,CAACC,IAAI,CAAC;IAAEP,KAAK;IAAE,GAAGC;EAAM,CAAC,CAAC;AAC5C,CAAC;AAACO,OAAA,CAAAT,aAAA,GAAAA,aAAA"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getConsentMode = void 0;
7
+ const getConsentMode = () => {
8
+ let granted;
9
+ const consentManagement = (window.dataLayer || []).filter(item => item[0] === 'consent' && item[1] === 'update').map(item => item[2]).pop() || {};
10
+ if (Object.values(consentManagement).length) {
11
+ granted = Object.values(consentManagement).filter(value => value === 'granted').length >= 1;
12
+ }
13
+ if (!granted) {
14
+ const {
15
+ ics: {
16
+ entries: {
17
+ ad_personalization,
18
+ ad_storage,
19
+ ad_user_data,
20
+ analytics_storage
21
+ } = {}
22
+ } = {}
23
+ } = window.google_tag_data || {};
24
+ if (ad_personalization || ad_storage || ad_user_data || analytics_storage) {
25
+ granted = Object.values({
26
+ ad_personalization,
27
+ ad_storage,
28
+ ad_user_data,
29
+ analytics_storage
30
+ }).filter(function () {
31
+ let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
32
+ return value.update !== undefined || value.default !== undefined;
33
+ }).length >= 1;
34
+ }
35
+ }
36
+ return granted;
37
+ };
38
+ exports.getConsentMode = getConsentMode;
39
+ //# sourceMappingURL=getConsentMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getConsentMode.js","names":["getConsentMode","granted","consentManagement","window","dataLayer","filter","item","map","pop","Object","values","length","value","ics","entries","ad_personalization","ad_storage","ad_user_data","analytics_storage","google_tag_data","arguments","undefined","update","default","exports"],"sources":["../../../../src/contexts/PerformanceManager/helpers/getConsentMode.js"],"sourcesContent":["export const getConsentMode = () => {\n let granted;\n\n const consentManagement =\n (window.dataLayer || [])\n .filter((item) => item[0] === 'consent' && item[1] === 'update')\n .map((item) => item[2])\n .pop() || {};\n\n if (Object.values(consentManagement).length) {\n granted = Object.values(consentManagement).filter((value) => value === 'granted').length >= 1;\n }\n\n if (!granted) {\n const { ics: { entries: { ad_personalization, ad_storage, ad_user_data, analytics_storage } = {} } = {} } =\n window.google_tag_data || {};\n\n if (ad_personalization || ad_storage || ad_user_data || analytics_storage) {\n granted =\n Object.values({ ad_personalization, ad_storage, ad_user_data, analytics_storage }).filter(\n (value = {}) => value.update !== undefined || value.default !== undefined,\n ).length >= 1;\n }\n }\n\n return granted;\n};\n"],"mappings":";;;;;;AAAO,MAAMA,cAAc,GAAGA,CAAA,KAAM;EAClC,IAAIC,OAAO;EAEX,MAAMC,iBAAiB,GACrB,CAACC,MAAM,CAACC,SAAS,IAAI,EAAE,EACpBC,MAAM,CAAEC,IAAI,IAAKA,IAAI,CAAC,CAAC,CAAC,KAAK,SAAS,IAAIA,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAC/DC,GAAG,CAAED,IAAI,IAAKA,IAAI,CAAC,CAAC,CAAC,CAAC,CACtBE,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC;EAEhB,IAAIC,MAAM,CAACC,MAAM,CAACR,iBAAiB,CAAC,CAACS,MAAM,EAAE;IAC3CV,OAAO,GAAGQ,MAAM,CAACC,MAAM,CAACR,iBAAiB,CAAC,CAACG,MAAM,CAAEO,KAAK,IAAKA,KAAK,KAAK,SAAS,CAAC,CAACD,MAAM,IAAI,CAAC;EAC/F;EAEA,IAAI,CAACV,OAAO,EAAE;IACZ,MAAM;MAAEY,GAAG,EAAE;QAAEC,OAAO,EAAE;UAAEC,kBAAkB;UAAEC,UAAU;UAAEC,YAAY;UAAEC;QAAkB,CAAC,GAAG,CAAC;MAAE,CAAC,GAAG,CAAC;IAAE,CAAC,GACvGf,MAAM,CAACgB,eAAe,IAAI,CAAC,CAAC;IAE9B,IAAIJ,kBAAkB,IAAIC,UAAU,IAAIC,YAAY,IAAIC,iBAAiB,EAAE;MACzEjB,OAAO,GACLQ,MAAM,CAACC,MAAM,CAAC;QAAEK,kBAAkB;QAAEC,UAAU;QAAEC,YAAY;QAAEC;MAAkB,CAAC,CAAC,CAACb,MAAM,CACvF;QAAA,IAACO,KAAK,GAAAQ,SAAA,CAAAT,MAAA,QAAAS,SAAA,QAAAC,SAAA,GAAAD,SAAA,MAAG,CAAC,CAAC;QAAA,OAAKR,KAAK,CAACU,MAAM,KAAKD,SAAS,IAAIT,KAAK,CAACW,OAAO,KAAKF,SAAS;MAAA,CAC3E,CAAC,CAACV,MAAM,IAAI,CAAC;IACjB;EACF;EAEA,OAAOV,OAAO;AAChB,CAAC;AAACuB,OAAA,CAAAxB,cAAA,GAAAA,cAAA"}
@@ -3,14 +3,14 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.getPerfomanceLabel = void 0;
6
+ exports.getPerformanceLabel = void 0;
7
7
  var _Core = require("../../../Core.constants");
8
- const getPerfomanceLabel = value => {
8
+ const getPerformanceLabel = value => {
9
9
  var _Object$entries$find;
10
- return (_Object$entries$find = Object.entries(_Core.PERFOMANCE).find(_ref => {
10
+ return (_Object$entries$find = Object.entries(_Core.PERFORMANCE).find(_ref => {
11
11
  let [, val] = _ref;
12
12
  return val === parseInt(value);
13
13
  })) === null || _Object$entries$find === void 0 ? void 0 : _Object$entries$find[0];
14
14
  };
15
- exports.getPerfomanceLabel = getPerfomanceLabel;
16
- //# sourceMappingURL=getPerfomanceLabel.js.map
15
+ exports.getPerformanceLabel = getPerformanceLabel;
16
+ //# sourceMappingURL=getPerformanceLabel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getPerformanceLabel.js","names":["_Core","require","getPerformanceLabel","value","_Object$entries$find","Object","entries","PERFORMANCE","find","_ref","val","parseInt","exports"],"sources":["../../../../src/contexts/PerformanceManager/helpers/getPerformanceLabel.js"],"sourcesContent":["import { PERFORMANCE } from '../../../Core.constants';\n\nexport const getPerformanceLabel = (value) =>\n Object.entries(PERFORMANCE).find(([, val]) => val === parseInt(value))?.[0];\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AAEO,MAAMC,mBAAmB,GAAIC,KAAK;EAAA,IAAAC,oBAAA;EAAA,QAAAA,oBAAA,GACvCC,MAAM,CAACC,OAAO,CAACC,iBAAW,CAAC,CAACC,IAAI,CAACC,IAAA;IAAA,IAAC,GAAGC,GAAG,CAAC,GAAAD,IAAA;IAAA,OAAKC,GAAG,KAAKC,QAAQ,CAACR,KAAK,CAAC;EAAA,EAAC,cAAAC,oBAAA,uBAAtEA,oBAAA,CAAyE,CAAC,CAAC;AAAA;AAACQ,OAAA,CAAAV,mBAAA,GAAAA,mBAAA"}
@@ -14,25 +14,25 @@ Object.keys(_dataLayerPush).forEach(function (key) {
14
14
  }
15
15
  });
16
16
  });
17
- var _getPerfomanceLabel = require("./getPerfomanceLabel");
18
- Object.keys(_getPerfomanceLabel).forEach(function (key) {
17
+ var _getConsentMode = require("./getConsentMode");
18
+ Object.keys(_getConsentMode).forEach(function (key) {
19
19
  if (key === "default" || key === "__esModule") return;
20
- if (key in exports && exports[key] === _getPerfomanceLabel[key]) return;
20
+ if (key in exports && exports[key] === _getConsentMode[key]) return;
21
21
  Object.defineProperty(exports, key, {
22
22
  enumerable: true,
23
23
  get: function () {
24
- return _getPerfomanceLabel[key];
24
+ return _getConsentMode[key];
25
25
  }
26
26
  });
27
27
  });
28
- var _googleTagManager = require("./googleTagManager");
29
- Object.keys(_googleTagManager).forEach(function (key) {
28
+ var _getPerformanceLabel = require("./getPerformanceLabel");
29
+ Object.keys(_getPerformanceLabel).forEach(function (key) {
30
30
  if (key === "default" || key === "__esModule") return;
31
- if (key in exports && exports[key] === _googleTagManager[key]) return;
31
+ if (key in exports && exports[key] === _getPerformanceLabel[key]) return;
32
32
  Object.defineProperty(exports, key, {
33
33
  enumerable: true,
34
34
  get: function () {
35
- return _googleTagManager[key];
35
+ return _getPerformanceLabel[key];
36
36
  }
37
37
  });
38
38
  });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_dataLayerPush","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get","_getConsentMode","_getPerformanceLabel"],"sources":["../../../../src/contexts/PerformanceManager/helpers/index.js"],"sourcesContent":["export * from './dataLayerPush';\nexport * from './getConsentMode';\nexport * from './getPerformanceLabel';\n"],"mappings":";;;;;AAAA,IAAAA,cAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,cAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,cAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,cAAA,CAAAK,GAAA;IAAA;EAAA;AAAA;AACA,IAAAK,eAAA,GAAAT,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAO,eAAA,EAAAN,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAK,eAAA,CAAAL,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAC,eAAA,CAAAL,GAAA;IAAA;EAAA;AAAA;AACA,IAAAM,oBAAA,GAAAV,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAQ,oBAAA,EAAAP,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAM,oBAAA,CAAAN,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAE,oBAAA,CAAAN,GAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _PerformanceManager = require("./PerformanceManager");
7
+ Object.keys(_PerformanceManager).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _PerformanceManager[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _PerformanceManager[key];
14
+ }
15
+ });
16
+ });
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_PerformanceManager","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["../../../src/contexts/PerformanceManager/index.js"],"sourcesContent":["export * from './PerformanceManager';\n"],"mappings":";;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,mBAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,mBAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,mBAAA,CAAAK,GAAA;IAAA;EAAA;AAAA"}
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.bookingResponse = void 0;
7
+ var _legacy = require("../helpers/legacy");
8
+ const bookingResponse = function () {
9
+ let {
10
+ instances: [{
11
+ idAffilired
12
+ } = {}] = [],
13
+ response: {
14
+ tracking = {}
15
+ } = {},
16
+ store: {
17
+ hotel: {
18
+ id: hotelId
19
+ } = {}
20
+ } = {}
21
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
22
+ if (!window.recV3) return {};
23
+
24
+ // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------
25
+ const {
26
+ bookingValues: {
27
+ checkout
28
+ } = {},
29
+ hotelInfo: {
30
+ currency: hotelCurrency = {},
31
+ propertyName
32
+ } = {},
33
+ idReservation,
34
+ totalPriceWithoutTaxes
35
+ } = tracking;
36
+ const htname = '';
37
+ const pixel = 0;
38
+ const payoutCodes = '';
39
+ const offlineCode = '';
40
+ window.recV3((0, _legacy.formatPrice)(totalPriceWithoutTaxes, hotelCurrency), "".concat(idReservation, " ").concat(propertyName), idAffilired, hotelId, htname, pixel, payoutCodes, offlineCode, checkout, hotelCurrency.currency);
41
+ return {};
42
+ };
43
+ exports.bookingResponse = bookingResponse;
44
+ //# sourceMappingURL=bookingResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookingResponse.js","names":["_legacy","require","bookingResponse","instances","idAffilired","response","tracking","store","hotel","id","hotelId","arguments","length","undefined","window","recV3","bookingValues","checkout","hotelInfo","currency","hotelCurrency","propertyName","idReservation","totalPriceWithoutTaxes","htname","pixel","payoutCodes","offlineCode","formatPrice","concat","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/affilired/bookingResponse.js"],"sourcesContent":["import { formatPrice } from '../helpers/legacy';\n\nexport const bookingResponse = ({\n instances: [{ idAffilired } = {}] = [],\n response: { tracking = {} } = {},\n store: { hotel: { id: hotelId } = {} } = {},\n} = {}) => {\n if (!window.recV3) return {};\n\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const {\n bookingValues: { checkout } = {},\n hotelInfo: { currency: hotelCurrency = {}, propertyName } = {},\n idReservation,\n totalPriceWithoutTaxes,\n } = tracking;\n\n const htname = '';\n const pixel = 0;\n const payoutCodes = '';\n const offlineCode = '';\n\n window.recV3(\n formatPrice(totalPriceWithoutTaxes, hotelCurrency),\n `${idReservation} ${propertyName}`,\n idAffilired,\n hotelId,\n htname,\n pixel,\n payoutCodes,\n offlineCode,\n checkout,\n hotelCurrency.currency,\n );\n\n return {};\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AAEO,MAAMC,eAAe,GAAG,SAAAA,CAAA,EAIpB;EAAA,IAJqB;IAC9BC,SAAS,EAAE,CAAC;MAAEC;IAAY,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE;IACtCC,QAAQ,EAAE;MAAEC,QAAQ,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC,CAAC;IAChCC,KAAK,EAAE;MAAEC,KAAK,EAAE;QAAEC,EAAE,EAAEC;MAAQ,CAAC,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC;EAC5C,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ,IAAI,CAACG,MAAM,CAACC,KAAK,EAAE,OAAO,CAAC,CAAC;;EAE5B;EACA,MAAM;IACJC,aAAa,EAAE;MAAEC;IAAS,CAAC,GAAG,CAAC,CAAC;IAChCC,SAAS,EAAE;MAAEC,QAAQ,EAAEC,aAAa,GAAG,CAAC,CAAC;MAAEC;IAAa,CAAC,GAAG,CAAC,CAAC;IAC9DC,aAAa;IACbC;EACF,CAAC,GAAGjB,QAAQ;EAEZ,MAAMkB,MAAM,GAAG,EAAE;EACjB,MAAMC,KAAK,GAAG,CAAC;EACf,MAAMC,WAAW,GAAG,EAAE;EACtB,MAAMC,WAAW,GAAG,EAAE;EAEtBb,MAAM,CAACC,KAAK,CACV,IAAAa,mBAAW,EAACL,sBAAsB,EAAEH,aAAa,CAAC,KAAAS,MAAA,CAC/CP,aAAa,OAAAO,MAAA,CAAIR,YAAY,GAChCjB,WAAW,EACXM,OAAO,EACPc,MAAM,EACNC,KAAK,EACLC,WAAW,EACXC,WAAW,EACXV,QAAQ,EACRG,aAAa,CAACD,QAChB,CAAC;EAED,OAAO,CAAC,CAAC;AACX,CAAC;AAACW,OAAA,CAAA5B,eAAA,GAAAA,eAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":["_bookingResponse","require","ProviderAffilired","exports","bookingResponse"],"sources":["../../../../../src/contexts/PerformanceManager/providers/affilired/index.js"],"sourcesContent":["import { bookingResponse } from './bookingResponse';\n\nexport const ProviderAffilired = {\n bookingResponse,\n};\n"],"mappings":";;;;;;AAAA,IAAAA,gBAAA,GAAAC,OAAA;AAEO,MAAMC,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG;EAC/BE,eAAe,EAAfA;AACF,CAAC"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.bookingCancel = void 0;
7
+ var _helpers = require("./helpers");
8
+ var _legacy = require("../helpers/legacy");
9
+ const bookingCancel = function () {
10
+ let {
11
+ instances = [],
12
+ response: {
13
+ tracking = {}
14
+ } = {},
15
+ store: {
16
+ finder = {}
17
+ } = {}
18
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
19
+ // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------
20
+ const {
21
+ hotelInfo = {},
22
+ idReservation,
23
+ reservedExtras = {},
24
+ reservedRooms = [],
25
+ totalPriceWithoutTaxes
26
+ } = tracking;
27
+ const {
28
+ currency: hotelCurrency = {}
29
+ } = hotelInfo;
30
+ const value = {
31
+ currency: hotelCurrency.code,
32
+ items: (0, _helpers.parseItems)({
33
+ finder,
34
+ hotelInfo,
35
+ reservedExtras,
36
+ reservedRooms
37
+ }),
38
+ send_to: instances.map(function () {
39
+ let {
40
+ idAnalytics
41
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
42
+ return idAnalytics;
43
+ }),
44
+ transaction_id: idReservation,
45
+ value: (0, _legacy.formatPrice)(totalPriceWithoutTaxes, hotelCurrency)
46
+ };
47
+ window.gtag('event', 'refund', value);
48
+ return value;
49
+ };
50
+ exports.bookingCancel = bookingCancel;
51
+ //# sourceMappingURL=bookingCancel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookingCancel.js","names":["_helpers","require","_legacy","bookingCancel","instances","response","tracking","store","finder","arguments","length","undefined","hotelInfo","idReservation","reservedExtras","reservedRooms","totalPriceWithoutTaxes","currency","hotelCurrency","value","code","items","parseItems","send_to","map","idAnalytics","transaction_id","formatPrice","window","gtag","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/analytics/bookingCancel.js"],"sourcesContent":["import { parseItems } from './helpers';\nimport { formatPrice } from '../helpers/legacy';\n\nexport const bookingCancel = ({\n instances = [],\n response: { tracking = {} } = {},\n store: { finder = {} } = {},\n} = {}) => {\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const { hotelInfo = {}, idReservation, reservedExtras = {}, reservedRooms = [], totalPriceWithoutTaxes } = tracking;\n\n const { currency: hotelCurrency = {} } = hotelInfo;\n\n const value = {\n currency: hotelCurrency.code,\n items: parseItems({ finder, hotelInfo, reservedExtras, reservedRooms }),\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n transaction_id: idReservation,\n value: formatPrice(totalPriceWithoutTaxes, hotelCurrency),\n };\n\n window.gtag('event', 'refund', value);\n\n return value;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AACA,IAAAC,OAAA,GAAAD,OAAA;AAEO,MAAME,aAAa,GAAG,SAAAA,CAAA,EAIlB;EAAA,IAJmB;IAC5BC,SAAS,GAAG,EAAE;IACdC,QAAQ,EAAE;MAAEC,QAAQ,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC,CAAC;IAChCC,KAAK,EAAE;MAAEC,MAAM,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC;EAC5B,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ;EACA,MAAM;IAAEG,SAAS,GAAG,CAAC,CAAC;IAAEC,aAAa;IAAEC,cAAc,GAAG,CAAC,CAAC;IAAEC,aAAa,GAAG,EAAE;IAAEC;EAAuB,CAAC,GAAGV,QAAQ;EAEnH,MAAM;IAAEW,QAAQ,EAAEC,aAAa,GAAG,CAAC;EAAE,CAAC,GAAGN,SAAS;EAElD,MAAMO,KAAK,GAAG;IACZF,QAAQ,EAAEC,aAAa,CAACE,IAAI;IAC5BC,KAAK,EAAE,IAAAC,mBAAU,EAAC;MAAEd,MAAM;MAAEI,SAAS;MAAEE,cAAc;MAAEC;IAAc,CAAC,CAAC;IACvEQ,OAAO,EAAEnB,SAAS,CAACoB,GAAG,CAAC;MAAA,IAAC;QAAEC;MAAY,CAAC,GAAAhB,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKgB,WAAW;IAAA,EAAC;IAC7DC,cAAc,EAAEb,aAAa;IAC7BM,KAAK,EAAE,IAAAQ,mBAAW,EAACX,sBAAsB,EAAEE,aAAa;EAC1D,CAAC;EAEDU,MAAM,CAACC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAEV,KAAK,CAAC;EAErC,OAAOA,KAAK;AACd,CAAC;AAACW,OAAA,CAAA3B,aAAA,GAAAA,aAAA"}
@@ -0,0 +1,121 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.bookingResponse = void 0;
7
+ var _legacy = require("../helpers/legacy");
8
+ const bookingResponse = function () {
9
+ let {
10
+ device: {
11
+ mobile
12
+ } = {},
13
+ instances = [],
14
+ response: {
15
+ tracking = {}
16
+ } = {}
17
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
18
+ // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------
19
+ const {
20
+ bookingValues: {
21
+ checkin,
22
+ checkout,
23
+ hotelId,
24
+ occupation,
25
+ coupon = '',
26
+ nights
27
+ } = {},
28
+ hotelInfo = {},
29
+ idReservation,
30
+ pendingPayment,
31
+ reservedExtras = {},
32
+ reservedRooms = [],
33
+ totalPriceCommission,
34
+ totalPriceWithoutTaxes,
35
+ totalTaxes
36
+ } = tracking;
37
+ const {
38
+ currency: hotelCurrency = {},
39
+ propertyName
40
+ } = hotelInfo;
41
+ const commonProps = {
42
+ affiliation: propertyName,
43
+ coupon,
44
+ currency: hotelCurrency.code,
45
+ item_brand: propertyName
46
+ };
47
+ const rooms = reservedRooms.map(_ref => {
48
+ let {
49
+ averagePriceWithoutTaxes,
50
+ defaultBoardDescription,
51
+ numRoomsToReserve,
52
+ rateId,
53
+ rateName,
54
+ roomTypeName
55
+ } = _ref;
56
+ return {
57
+ ...commonProps,
58
+ item_category: 'Habitación',
59
+ item_category2: rateName,
60
+ item_category3: defaultBoardDescription,
61
+ item_name: roomTypeName,
62
+ price: (0, _legacy.formatPrice)(averagePriceWithoutTaxes, hotelCurrency),
63
+ quantity: numRoomsToReserve * nights,
64
+ item_id: "".concat(rateId)
65
+ };
66
+ });
67
+ const extras = Object.keys(reservedExtras).map(key => reservedExtras[key]).map(_ref2 => {
68
+ let {
69
+ id,
70
+ name,
71
+ multiplierPrice,
72
+ priceWithoutTaxes,
73
+ type
74
+ } = _ref2;
75
+ return {
76
+ ...commonProps,
77
+ item_category: 'Extra',
78
+ item_category2: type,
79
+ item_name: name,
80
+ price: (0, _legacy.formatPrice)(priceWithoutTaxes, hotelCurrency),
81
+ quantity: multiplierPrice,
82
+ item_id: "".concat(id)
83
+ };
84
+ });
85
+ const value = {
86
+ affiliation: propertyName,
87
+ coupon,
88
+ currency: hotelCurrency.code,
89
+ items: [...rooms, ...extras],
90
+ shipping: totalPriceCommission,
91
+ tax: (0, _legacy.formatPrice)(totalTaxes, hotelCurrency),
92
+ transaction_id: "Reservation code ".concat(idReservation),
93
+ value: (0, _legacy.formatPrice)(totalPriceWithoutTaxes, hotelCurrency),
94
+ send_to: instances.map(function () {
95
+ let {
96
+ idAnalytics
97
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
98
+ return idAnalytics;
99
+ })
100
+ };
101
+ window.gtag('event', pendingPayment ? 'BTP' : 'purchase', value);
102
+ window.gtag('event', 'data_search_info', {
103
+ checkin,
104
+ checkout,
105
+ device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',
106
+ hotelId,
107
+ coupon,
108
+ non_interaction: true,
109
+ occupation,
110
+ send_to: instances.map(function () {
111
+ let {
112
+ idAnalytics
113
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
114
+ return idAnalytics;
115
+ }),
116
+ step: 'CONFIRMATION'
117
+ });
118
+ return value;
119
+ };
120
+ exports.bookingResponse = bookingResponse;
121
+ //# sourceMappingURL=bookingResponse.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bookingResponse.js","names":["_legacy","require","bookingResponse","device","mobile","instances","response","tracking","arguments","length","undefined","bookingValues","checkin","checkout","hotelId","occupation","coupon","nights","hotelInfo","idReservation","pendingPayment","reservedExtras","reservedRooms","totalPriceCommission","totalPriceWithoutTaxes","totalTaxes","currency","hotelCurrency","propertyName","commonProps","affiliation","code","item_brand","rooms","map","_ref","averagePriceWithoutTaxes","defaultBoardDescription","numRoomsToReserve","rateId","rateName","roomTypeName","item_category","item_category2","item_category3","item_name","price","formatPrice","quantity","item_id","concat","extras","Object","keys","key","_ref2","id","name","multiplierPrice","priceWithoutTaxes","type","value","items","shipping","tax","transaction_id","send_to","idAnalytics","window","gtag","non_interaction","step","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/analytics/bookingResponse.js"],"sourcesContent":["import { formatPrice } from '../helpers/legacy';\n\nexport const bookingResponse = ({ device: { mobile } = {}, instances = [], response: { tracking = {} } = {} } = {}) => {\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const {\n bookingValues: { checkin, checkout, hotelId, occupation, coupon = '', nights } = {},\n hotelInfo = {},\n idReservation,\n pendingPayment,\n reservedExtras = {},\n reservedRooms = [],\n totalPriceCommission,\n totalPriceWithoutTaxes,\n totalTaxes,\n } = tracking;\n\n const { currency: hotelCurrency = {}, propertyName } = hotelInfo;\n\n const commonProps = {\n affiliation: propertyName,\n coupon,\n currency: hotelCurrency.code,\n item_brand: propertyName,\n };\n\n const rooms = reservedRooms.map(\n ({ averagePriceWithoutTaxes, defaultBoardDescription, numRoomsToReserve, rateId, rateName, roomTypeName }) => ({\n ...commonProps,\n item_category: 'Habitación',\n item_category2: rateName,\n item_category3: defaultBoardDescription,\n item_name: roomTypeName,\n price: formatPrice(averagePriceWithoutTaxes, hotelCurrency),\n quantity: numRoomsToReserve * nights,\n item_id: `${rateId}`,\n }),\n );\n\n const extras = Object.keys(reservedExtras)\n .map((key) => reservedExtras[key])\n .map(({ id, name, multiplierPrice, priceWithoutTaxes, type }) => ({\n ...commonProps,\n item_category: 'Extra',\n item_category2: type,\n item_name: name,\n price: formatPrice(priceWithoutTaxes, hotelCurrency),\n quantity: multiplierPrice,\n item_id: `${id}`,\n }));\n\n const value = {\n affiliation: propertyName,\n coupon,\n currency: hotelCurrency.code,\n items: [...rooms, ...extras],\n shipping: totalPriceCommission,\n tax: formatPrice(totalTaxes, hotelCurrency),\n transaction_id: `Reservation code ${idReservation}`,\n value: formatPrice(totalPriceWithoutTaxes, hotelCurrency),\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n };\n\n window.gtag('event', pendingPayment ? 'BTP' : 'purchase', value);\n window.gtag('event', 'data_search_info', {\n checkin,\n checkout,\n device: mobile ? 'MOBILE' : 'DESKTOP_TABLET',\n hotelId,\n coupon,\n non_interaction: true,\n occupation,\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n step: 'CONFIRMATION',\n });\n\n return value;\n};\n"],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.checkoutForm = void 0;
7
+ var _helpers = require("./helpers");
8
+ const checkoutForm = function () {
9
+ let {
10
+ instances = [],
11
+ response: {
12
+ tracking = {}
13
+ } = {},
14
+ store: {
15
+ finder = {}
16
+ } = {}
17
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
18
+ // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------
19
+ const {
20
+ hotelInfo = {},
21
+ reservedExtras = {},
22
+ reservedRooms = []
23
+ } = tracking;
24
+ const {
25
+ promocode = ''
26
+ } = finder;
27
+ const value = {
28
+ coupon: promocode,
29
+ items: (0, _helpers.parseItems)({
30
+ finder,
31
+ hotelInfo,
32
+ reservedExtras,
33
+ reservedRooms
34
+ }),
35
+ send_to: instances.map(function () {
36
+ let {
37
+ idAnalytics
38
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
39
+ return idAnalytics;
40
+ })
41
+ };
42
+ window.gtag('event', 'add_payment_info', value);
43
+ return value;
44
+ };
45
+ exports.checkoutForm = checkoutForm;
46
+ //# sourceMappingURL=checkoutForm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkoutForm.js","names":["_helpers","require","checkoutForm","instances","response","tracking","store","finder","arguments","length","undefined","hotelInfo","reservedExtras","reservedRooms","promocode","value","coupon","items","parseItems","send_to","map","idAnalytics","window","gtag","exports"],"sources":["../../../../../src/contexts/PerformanceManager/providers/analytics/checkoutForm.js"],"sourcesContent":["import { parseItems } from './helpers';\n\nexport const checkoutForm = ({\n instances = [],\n response: { tracking = {} } = {},\n store: { finder = {} } = {},\n} = {}) => {\n // ! -- TODO: use of tracking should be a temporary approach ---------------------------------------------------------\n const { hotelInfo = {}, reservedExtras = {}, reservedRooms = [] } = tracking;\n const { promocode = '' } = finder;\n\n const value = {\n coupon: promocode,\n items: parseItems({ finder, hotelInfo, reservedExtras, reservedRooms }),\n send_to: instances.map(({ idAnalytics } = {}) => idAnalytics),\n };\n\n window.gtag('event', 'add_payment_info', value);\n\n return value;\n};\n"],"mappings":";;;;;;AAAA,IAAAA,QAAA,GAAAC,OAAA;AAEO,MAAMC,YAAY,GAAG,SAAAA,CAAA,EAIjB;EAAA,IAJkB;IAC3BC,SAAS,GAAG,EAAE;IACdC,QAAQ,EAAE;MAAEC,QAAQ,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC,CAAC;IAChCC,KAAK,EAAE;MAAEC,MAAM,GAAG,CAAC;IAAE,CAAC,GAAG,CAAC;EAC5B,CAAC,GAAAC,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;EACJ;EACA,MAAM;IAAEG,SAAS,GAAG,CAAC,CAAC;IAAEC,cAAc,GAAG,CAAC,CAAC;IAAEC,aAAa,GAAG;EAAG,CAAC,GAAGR,QAAQ;EAC5E,MAAM;IAAES,SAAS,GAAG;EAAG,CAAC,GAAGP,MAAM;EAEjC,MAAMQ,KAAK,GAAG;IACZC,MAAM,EAAEF,SAAS;IACjBG,KAAK,EAAE,IAAAC,mBAAU,EAAC;MAAEX,MAAM;MAAEI,SAAS;MAAEC,cAAc;MAAEC;IAAc,CAAC,CAAC;IACvEM,OAAO,EAAEhB,SAAS,CAACiB,GAAG,CAAC;MAAA,IAAC;QAAEC;MAAY,CAAC,GAAAb,SAAA,CAAAC,MAAA,QAAAD,SAAA,QAAAE,SAAA,GAAAF,SAAA,MAAG,CAAC,CAAC;MAAA,OAAKa,WAAW;IAAA;EAC9D,CAAC;EAEDC,MAAM,CAACC,IAAI,CAAC,OAAO,EAAE,kBAAkB,EAAER,KAAK,CAAC;EAE/C,OAAOA,KAAK;AACd,CAAC;AAACS,OAAA,CAAAtB,YAAA,GAAAA,YAAA"}