@revolugo/elements 6.8.2-rc.0 → 6.8.3-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (171) hide show
  1. package/README.md +1 -1
  2. package/dist/css/fonts.css +1 -1
  3. package/dist/css/{revolugo.webcomponentwrapper.DRCKFwuk.css → revolugo.webcomponentwrapper.DGADlvX0.css} +2 -2
  4. package/dist/index.es.min.js +2081 -2223
  5. package/dist/index.es.min.js.map +1 -1
  6. package/dist/index.min.js +6 -6
  7. package/dist/index.min.js.map +1 -1
  8. package/dist/revolugo.banktransferdetails.C9OqrvmN.min.js +23 -0
  9. package/dist/revolugo.bookingdetailssidebar.V97LTM8j.min.js +23 -0
  10. package/dist/revolugo.bookingmanager.BZERpaf3.min.js +23 -0
  11. package/dist/revolugo.cancellationpoliciesbadge.CUKJ9TsD.min.js +23 -0
  12. package/dist/revolugo.cancellationpolicieslist.C3PJPST4.min.js +23 -0
  13. package/dist/revolugo.creditcardform.D-8j5GCw.min.js +23 -0
  14. package/dist/revolugo.creditcardpayment.DU-WYlhZ.min.js +23 -0
  15. package/dist/revolugo.currencypickerbtn.B7Y3Ok11.min.js +23 -0
  16. package/dist/{revolugo.fastbookingflow.ChNa4jgv.min.js → revolugo.fastbookingflow.BoQVk0eU.min.js} +9 -10
  17. package/dist/revolugo.fullbookingflow.DoXfBawU.min.js +23 -0
  18. package/dist/revolugo.hoteldescriptionview.B-0OAOlZ.min.js +23 -0
  19. package/dist/revolugo.hotelofferlist.CZtxadW_.min.js +23 -0
  20. package/dist/revolugo.hoteloffersearchmenu.BZ2z-tDx.min.js +199 -0
  21. package/dist/revolugo.hoteloffersmap.CKwOA3mF.min.js +23 -0
  22. package/dist/revolugo.hoteloffersview.Bxf47jSF.min.js +18 -0
  23. package/dist/revolugo.hotelroomofferlist.PzbhafeA.min.js +23 -0
  24. package/dist/revolugo.hotelroomoffersbookingflow.BXolY5lJ.min.js +23 -0
  25. package/dist/revolugo.hotelroomoffersearchmenu.BAqeXS0Y.min.js +23 -0
  26. package/dist/revolugo.hotelroomoffersview.Ch8BiNJ_.min.js +23 -0
  27. package/dist/revolugo.index.CVHWSVdZ.min.js +67 -0
  28. package/dist/{revolugo.index.wc.7I5uexuc.min.js → revolugo.index.wc.DxOdmA3C.min.js} +12167 -12364
  29. package/dist/revolugo.langpickerbtn.B5MAr-qc.min.js +28 -0
  30. package/dist/revolugo.min.js +1 -1
  31. package/dist/revolugo.prebookform.9dLTmLrv.min.js +23 -0
  32. package/dist/revolugo.roominglisteditor.CA09WMcG.min.js +23 -0
  33. package/dist/{revolugo.storybooktoolbar.DY_mbXuP.min.js → revolugo.storybooktoolbar.CkwMUZCe.min.js} +212 -227
  34. package/dist/revolugo.termsandconditions.CLIxEOxi.min.js +22 -0
  35. package/dist/revolugo.webcomponentwrapper.Dt-VzVVw.min.js +60489 -0
  36. package/package.json +5 -5
  37. package/dist/css/revolugo.bdaterangepicker.CHUExWGL.css +0 -1
  38. package/dist/css/revolugo.bhoteloffersfilterbar.BcnNI4uS.css +0 -1
  39. package/dist/css/revolugo.bhotelroomsdetails.ZHH0C1yQ.css +0 -1
  40. package/dist/css/revolugo.bhotelsearchbar.Bl5_UFe8.css +0 -1
  41. package/dist/css/revolugo.bimagecarousel.BvgD1yrr.css +0 -1
  42. package/dist/css/revolugo.bookingdetailssidebar.CNP_D5F3.css +0 -1
  43. package/dist/css/revolugo.bstarrating.Dxd1LjMb.css +0 -1
  44. package/dist/css/revolugo.btag.g-q3eChG.css +0 -1
  45. package/dist/css/revolugo.cancellationpoliciesbadge.CwgZ0PpX.css +0 -1
  46. package/dist/css/revolugo.creditcardform.DWne0Lnv.css +0 -1
  47. package/dist/css/revolugo.creditcardpayment.D2PE5FCt.css +0 -1
  48. package/dist/css/revolugo.currencypicker.DO0IrmRK.css +0 -1
  49. package/dist/css/revolugo.fullbookingflow.Bm8JAQF7.css +0 -1
  50. package/dist/css/revolugo.hoteldescriptionview.DWuzEuGF.css +0 -1
  51. package/dist/css/revolugo.hotelofferlist.BkctzTMI.css +0 -1
  52. package/dist/css/revolugo.hoteloffersmap.2oSkomDb.css +0 -1
  53. package/dist/css/revolugo.hoteloffersview.Bo2dQWYt.css +0 -1
  54. package/dist/css/revolugo.hotelroomofferlist.DpLXIpgU.css +0 -1
  55. package/dist/css/revolugo.hotelroomoffersbookingflow.LHa5iHB7.css +0 -1
  56. package/dist/css/revolugo.index.DQ3Yd6SO.css +0 -1
  57. package/dist/css/revolugo.langpickerbtn.D2iA6mCb.css +0 -1
  58. package/dist/css/revolugo.position.7fn84IQ5.css +0 -1
  59. package/dist/css/revolugo.prebookform.DmCR7hLv.css +0 -1
  60. package/dist/css/revolugo.termsandconditions.DCvNJQQL.css +0 -1
  61. package/dist/css/revolugo.vautocomplete.CuVjyvcC.css +0 -1
  62. package/dist/css/revolugo.vbadge.BQrRJ9S0.css +0 -1
  63. package/dist/css/revolugo.vbtn.BU0YQ6en.css +0 -1
  64. package/dist/css/revolugo.vcard.B8jNYFn_.css +0 -1
  65. package/dist/css/revolugo.vcheckboxbtn.BQ05xI0T.css +0 -1
  66. package/dist/css/revolugo.vdialog.DwTSAOeg.css +0 -1
  67. package/dist/css/revolugo.vdivider.CTbbZwnv.css +0 -1
  68. package/dist/css/revolugo.vexpansionpanels.RsCANmDP.css +0 -1
  69. package/dist/css/revolugo.vinput.BPiFMorL.css +0 -1
  70. package/dist/css/revolugo.vlabel.BvKaKg7Y.css +0 -1
  71. package/dist/css/revolugo.vlist.BkGS0yqt.css +0 -1
  72. package/dist/css/revolugo.vmenu.DvKwEp1j.css +0 -1
  73. package/dist/css/revolugo.vselect.C5CKHFYB.css +0 -1
  74. package/dist/css/revolugo.vsheet.Dmcoj8cr.css +0 -1
  75. package/dist/css/revolugo.vskeletonloader.BlK8uFkX.css +0 -1
  76. package/dist/css/revolugo.vsnackbar.Cj7AcupY.css +0 -1
  77. package/dist/css/revolugo.vtextarea.HYL6WUNS.css +0 -1
  78. package/dist/css/revolugo.vtextfield.BIH_AWWP.css +0 -1
  79. package/dist/css/revolugo.vtoolbar.BZert82L.css +0 -1
  80. package/dist/css/revolugo.vtooltip.O8QDYs1J.css +0 -1
  81. package/dist/css/revolugo.vwindowitem.CWBhiE_Y.css +0 -1
  82. package/dist/revolugo._basefor.CodrYJxd.min.js +0 -15
  83. package/dist/revolugo.banktransferdetails.BdulCgI5.min.js +0 -373
  84. package/dist/revolugo.bdaterangepicker.XZNoMSi5.min.js +0 -8435
  85. package/dist/revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.D9Qs1dZa.min.js +0 -61
  86. package/dist/revolugo.bhoteloffersfilterbar.Bryijtf6.min.js +0 -4685
  87. package/dist/revolugo.bhotelroomsdetails.orWBBD_o.min.js +0 -1013
  88. package/dist/revolugo.bhotelsearchbar.DxxqZWkN.min.js +0 -947
  89. package/dist/revolugo.bimagecarousel.DIPN99VA.min.js +0 -598
  90. package/dist/revolugo.bookingdetailssidebar.CD4SMOkC.min.js +0 -24
  91. package/dist/revolugo.bookingdetailssidebar.JOU68R1_.min.js +0 -880
  92. package/dist/revolugo.bookingmanager.B5cM9Mi5.min.js +0 -1789
  93. package/dist/revolugo.bpricesummaryskeleton.YKfKKB5n.min.js +0 -79
  94. package/dist/revolugo.bstarrating.vue_vue_type_script_setup_true_lang.2z9RUthr.min.js +0 -623
  95. package/dist/revolugo.btag.DjjDRtQ7.min.js +0 -387
  96. package/dist/revolugo.cancellationpoliciesbadge.D8ou6oFl.min.js +0 -225
  97. package/dist/revolugo.cancellationpoliciesbadge.jgFCG7yZ.min.js +0 -24
  98. package/dist/revolugo.cancellationpolicieslist.CZImqgN3.min.js +0 -24
  99. package/dist/revolugo.cancellationpolicieslist.D097ASNF.min.js +0 -176
  100. package/dist/revolugo.case-transformers.Dr1oSJkZ.min.js +0 -123
  101. package/dist/revolugo.common.D-l8b0V5.min.js +0 -10
  102. package/dist/revolugo.creditcardform.DNOMVOgZ.min.js +0 -2161
  103. package/dist/revolugo.creditcardform.DvHcDx2P.min.js +0 -24
  104. package/dist/revolugo.creditcardpayment.BLP3RXk4.min.js +0 -893
  105. package/dist/revolugo.creditcardpayment.D3lPKmx1.min.js +0 -24
  106. package/dist/revolugo.currencypicker.CzzS1Adp.min.js +0 -330
  107. package/dist/revolugo.currencypickerbtn.ChUEouGw.min.js +0 -163
  108. package/dist/revolugo.currencypickerbtn.DWnyc54P.min.js +0 -24
  109. package/dist/revolugo.dialog-attach.O2HXPGzj.min.js +0 -28
  110. package/dist/revolugo.dialog-transition.C6S7Ci1s.min.js +0 -114
  111. package/dist/revolugo.forwardrefs.-bfQnFea.min.js +0 -71
  112. package/dist/revolugo.fullbookingflow.ByKmNqgi.min.js +0 -451
  113. package/dist/revolugo.hoteldescriptionview.CbtxEPGG.min.js +0 -3091
  114. package/dist/revolugo.hoteldescriptionview.D3JTbFxn.min.js +0 -24
  115. package/dist/revolugo.hotelofferitemlayout.tBOOIdeT.min.js +0 -259
  116. package/dist/revolugo.hotelofferlist.BVySEYbq.min.js +0 -5744
  117. package/dist/revolugo.hotelofferlist.puK2FNBR.min.js +0 -24
  118. package/dist/revolugo.hotelofferrequestcreator.CbCau_4i.min.js +0 -230
  119. package/dist/revolugo.hoteloffersearchmenu.iiAtyddA.min.js +0 -46
  120. package/dist/revolugo.hoteloffersmap.BRVm5s6N.min.js +0 -8394
  121. package/dist/revolugo.hoteloffersmap.DqKpfjbt.min.js +0 -24
  122. package/dist/revolugo.hoteloffersview.3LJ-m6BY.min.js +0 -620
  123. package/dist/revolugo.hoteloffersview.DsGyT5s7.min.js +0 -19
  124. package/dist/revolugo.hotelroomofferlist.DdMr5qEZ.min.js +0 -24
  125. package/dist/revolugo.hotelroomofferlist.M-3bowQa.min.js +0 -2934
  126. package/dist/revolugo.hotelroomofferrequestcreator.props.CUwZUDcm.min.js +0 -171
  127. package/dist/revolugo.hotelroomoffersbookingflow.Bef_aJFl.min.js +0 -1306
  128. package/dist/revolugo.hotelroomoffersearchmenu.D9Zn_Gjy.min.js +0 -25
  129. package/dist/revolugo.hotelroomoffersearchmenu.Fkf-MQ_8.min.js +0 -232
  130. package/dist/revolugo.hotelroomoffersview.BSth8Xsz.min.js +0 -305
  131. package/dist/revolugo.hotelroomoffersview.oxTgBMSk.min.js +0 -24
  132. package/dist/revolugo.index.D0uSQdJV.min.js +0 -13
  133. package/dist/revolugo.index.gIPq0z7C.min.js +0 -1037
  134. package/dist/revolugo.langpicker.CLdiic9k.min.js +0 -107
  135. package/dist/revolugo.langpickerbtn.BIHQAnjv.min.js +0 -24
  136. package/dist/revolugo.langpickerbtn.DF-m4pCF.min.js +0 -178
  137. package/dist/revolugo.position.hqKd4K_h.min.js +0 -322
  138. package/dist/revolugo.prebookform.B8aMLMuG.min.js +0 -1531
  139. package/dist/revolugo.prebookform.CxK0iSDo.min.js +0 -24
  140. package/dist/revolugo.roominglisteditor.D7WzDtw6.min.js +0 -24
  141. package/dist/revolugo.roominglisteditor.Do-pe811.min.js +0 -391
  142. package/dist/revolugo.rounded.Dnxang6X.min.js +0 -68
  143. package/dist/revolugo.ssrboot.ByGq44eI.min.js +0 -18
  144. package/dist/revolugo.termsandconditions.DXNFR45_.min.js +0 -423
  145. package/dist/revolugo.termsandconditions.DfGTVPYa.min.js +0 -23
  146. package/dist/revolugo.use-breakpoint-service.CJltQiSH.min.js +0 -106
  147. package/dist/revolugo.vautocomplete.BjPSa1jg.min.js +0 -466
  148. package/dist/revolugo.vbadge.D1RCkHoZ.min.js +0 -118
  149. package/dist/revolugo.vbtn.CQ9EDLRJ.min.js +0 -417
  150. package/dist/revolugo.vcard.DNU4i52n.min.js +0 -329
  151. package/dist/revolugo.vcheckboxbtn.De-k8-O3.min.js +0 -491
  152. package/dist/revolugo.vdialog.CjEajxIC.min.js +0 -139
  153. package/dist/revolugo.vdivider.Cp9bHPnI.min.js +0 -77
  154. package/dist/revolugo.vexpansionpanels.L2ZpX4zd.min.js +0 -276
  155. package/dist/revolugo.vform.Bw9rddZZ.min.js +0 -50
  156. package/dist/revolugo.vinput.P34xrpIC.min.js +0 -477
  157. package/dist/revolugo.vlabel.CLHrAz78.min.js +0 -51
  158. package/dist/revolugo.vlist.hRQlcp5M.min.js +0 -1348
  159. package/dist/revolugo.vmenu.BRFw3Jzk.min.js +0 -152
  160. package/dist/revolugo.vselect.u2C25NCe.min.js +0 -688
  161. package/dist/revolugo.vsheet.8UeU7qQn.min.js +0 -72
  162. package/dist/revolugo.vskeletonloader.Dk0enVo6.min.js +0 -137
  163. package/dist/revolugo.vsnackbar.18JqJsZ2.min.js +0 -202
  164. package/dist/revolugo.vspacer.CPbtu_-W.min.js +0 -7
  165. package/dist/revolugo.vtextarea.Cjuqcka5.min.js +0 -2102
  166. package/dist/revolugo.vtextfield.BUNcwTRK.min.js +0 -509
  167. package/dist/revolugo.vtoolbar.CvbAGFXR.min.js +0 -188
  168. package/dist/revolugo.vtooltip.CsXJFD-V.min.js +0 -395
  169. package/dist/revolugo.vwindowitem.DGRfRU3q.min.js +0 -329
  170. package/dist/revolugo.watch-list.D0FxBTWy.min.js +0 -16
  171. package/dist/revolugo.webcomponentwrapper.DFYGhYzz.min.js +0 -2148
@@ -1,2934 +0,0 @@
1
- import { ae as bt, C as x, bn as K, D as b, d as J, u as X, i as f, g as I, e as v, t as C, J as $, a as o, f as T, F as B, o as i, N as se, M as U, ap as ne, b as ie, c as S, w as a, j as z, r as L, Z as it, _ as lt, a2 as mt, bo as le, aE as re, b2 as ue, y as G, bp as ct, H as gt, I as yt, n as ce, h as de, v as Z, G as me, E as fe, bq as Pt, k as ht, l as _t, s as be, x as Rt, br as pe, K as ke, bs as Ot, bt as ve, a6 as Nt, ai as he, ab as at, aQ as ge, a9 as ye, bu as Re } from "./revolugo.index.wc.7I5uexuc.min.js";
2
- import { s as Oe, u as Ce, p as Be } from "./revolugo.use-breakpoint-service.CJltQiSH.min.js";
3
- import { u as pt, h as Se } from "./revolugo.hotelroomofferrequestcreator.props.CUwZUDcm.min.js";
4
- import { C as Ie } from "./revolugo.cancellationpoliciesbadge.D8ou6oFl.min.js";
5
- import { B as Ut, a as we } from "./revolugo.bpricesummaryskeleton.YKfKKB5n.min.js";
6
- import { _ as tt, V, a as O, u as rt, l as jt, B as St, d as Pe, q as _e, s as He, b as Te, g as Ve, e as Ee } from "./revolugo.webcomponentwrapper.DFYGhYzz.min.js";
7
- import { V as ot } from "./revolugo.vskeletonloader.Dk0enVo6.min.js";
8
- import { a as Ft, B as Gt } from "./revolugo.bhotelroomsdetails.orWBBD_o.min.js";
9
- import { _ as ft, f as Ae } from "./revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.D9Qs1dZa.min.js";
10
- import { B as dt } from "./revolugo.btag.DjjDRtQ7.min.js";
11
- import { a as $e, d as Le, V as st, n as De, e as qe } from "./revolugo.index.gIPq0z7C.min.js";
12
- import { u as ze, V as Ht, m as Me } from "./revolugo.vinput.P34xrpIC.min.js";
13
- import { b as Tt, c as Ne, V as Ue } from "./revolugo.vcheckboxbtn.De-k8-O3.min.js";
14
- import { d as je, L as Fe, V as Ge } from "./revolugo.position.hqKd4K_h.min.js";
15
- import { V as It, a as nt, m as We } from "./revolugo.vbtn.CQ9EDLRJ.min.js";
16
- import { V as Ye } from "./revolugo.vselect.u2C25NCe.min.js";
17
- import { V as xe } from "./revolugo.vlist.hRQlcp5M.min.js";
18
- import { C as Ke } from "./revolugo.cancellationpolicieslist.D097ASNF.min.js";
19
- import { V as Q } from "./revolugo.vdivider.Cp9bHPnI.min.js";
20
- import { k as Ze, C as Qe } from "./revolugo.case-transformers.Dr1oSJkZ.min.js";
21
- /* empty css */
22
- import { f as Je } from "./revolugo.forwardrefs.-bfQnFea.min.js";
23
- import { V as Vt, m as Xe, a as Et, b as to } from "./revolugo.vwindowitem.DGRfRU3q.min.js";
24
- import { b as At, m as eo } from "./revolugo.vtooltip.CsXJFD-V.min.js";
25
- function ae(t) {
26
- try {
27
- if (typeof document < "u") {
28
- window.REVOLUGO_ELEMENTS_STYLES = window.REVOLUGO_ELEMENTS_STYLES || {
29
- sheets: [],
30
- components: []
31
- };
32
- const e = import.meta.url, n = e.slice(0, e.lastIndexOf("/") + 1) + t;
33
- window.REVOLUGO_ELEMENTS_STYLES.sheets.push(n);
34
- for (const s of REVOLUGO_ELEMENTS_STYLES.components)
35
- s(n);
36
- if (t.indexOf("fonts") >= 0) {
37
- const s = document.createElement("link");
38
- s.rel = "stylesheet", linK.href = n, document.head.appendChild(s);
39
- }
40
- }
41
- } catch (e) {
42
- console.error("[revolugo-elements] ", e);
43
- }
44
- }
45
- function oo(t) {
46
- return (t && t.split(",") || []).map(
47
- (e) => Number.parseInt(e)
48
- );
49
- }
50
- const ao = 4;
51
- function so(t, e) {
52
- return t + oo(e).reduce((n, s) => s >= ao ? n + 1 : n, 0);
53
- }
54
- function no(t, e) {
55
- return e === void 0 ? Array.from({ length: t }, (n, s) => s) : Array.from({ length: e - t }, (n, s) => t + s);
56
- }
57
- function io() {
58
- const t = bt(), e = x(K.Idle), n = b(
59
- () => e.value === K.BookingPoliciesFetched
60
- ), s = b(
61
- () => e.value === K.Unavailable
62
- ), r = b(
63
- () => e.value === K.FetchingBookingPolicies
64
- );
65
- async function k({
66
- addBreakfast: d,
67
- hotelId: l,
68
- hotelRoomOfferId: m
69
- }) {
70
- e.value = K.FetchingBookingPolicies;
71
- try {
72
- await t.createBookingPolicies({
73
- addBreakfast: d,
74
- hotelId: l,
75
- hotelRoomOfferId: m
76
- }), e.value = K.Unavailable, setTimeout(() => {
77
- e.value = K.Idle;
78
- }, 1.5 * 1e3);
79
- } catch {
80
- e.value = K.Unavailable;
81
- }
82
- }
83
- return {
84
- bookingState: e,
85
- createBookingPolicy: k,
86
- isBookingPoliciesSuccessful: n,
87
- isBookingPoliciesUnavailable: s,
88
- isFetchingBookingPolicies: r
89
- };
90
- }
91
- function lo(t, e, n) {
92
- if (!t)
93
- return e;
94
- const s = n || ((r) => r);
95
- if (typeof t == "string")
96
- try {
97
- return s(JSON.parse(t));
98
- } catch {
99
- return e;
100
- }
101
- return s(t);
102
- }
103
- function ro({
104
- cb: t,
105
- fallbackValue: e,
106
- prop: n
107
- }) {
108
- return b(
109
- () => lo(n.value, e, t)
110
- );
111
- }
112
- const uo = { class: "text-right" }, co = {
113
- key: 0,
114
- class: "text-grey-darken-3"
115
- }, mo = { class: "text-h6 text-grey-darken-3 font-weight-black" }, fo = {
116
- key: 1,
117
- class: "my-0 text-caption text-grey-darken-3 d-block"
118
- }, bo = { class: "text-caption d-block" }, Wt = /* @__PURE__ */ J({
119
- __name: "BPriceSummary",
120
- props: {
121
- adultCount: { default: 0 },
122
- hasBolderTextPrice: { type: Boolean, default: void 0 },
123
- isTaxIncluded: { type: Boolean, default: void 0 },
124
- isStartingPrice: { type: Boolean, default: void 0 },
125
- nightCount: { default: 1 },
126
- price: {},
127
- roomCount: { default: 1 },
128
- roundMode: { default: void 0 },
129
- taxIncludedPrice: { default: void 0 }
130
- },
131
- setup(t) {
132
- const e = t, { t: n } = X(), s = b(() => e.nightCount <= 0 || e.roomCount <= 0 ? e.price : e.price / e.roomCount / e.nightCount);
133
- return (r, k) => (i(), f("div", uo, [
134
- r.isStartingPrice ? (i(), f("small", co, C($(n)("BPriceSummary.from")) + "  ", 1)) : I("", !0),
135
- v("b", mo, [
136
- o(ft, {
137
- amount: s.value,
138
- "round-mode": r.roundMode
139
- }, null, 8, ["amount", "round-mode"])
140
- ]),
141
- (r.roomCount > 1 || r.nightCount > 1 || r.taxIncludedPrice !== r.price) && r.isTaxIncluded ? (i(), f("span", fo, [
142
- v("b", null, [
143
- o(ft, {
144
- amount: r.taxIncludedPrice,
145
- "round-mode": r.roundMode
146
- }, null, 8, ["amount", "round-mode"])
147
- ]),
148
- T(" " + C($(n)("BPriceSummary.total")) + " " + C($(n)("BPriceSummary.summary", {
149
- rooms: $(n)("BPriceSummary.rooms", { n: r.roomCount })
150
- })), 1)
151
- ])) : I("", !0),
152
- v("span", bo, [
153
- r.taxIncludedPrice || r.price ? (i(), f(B, { key: 0 }, [
154
- r.isTaxIncluded ? (i(), f(B, { key: 0 }, [
155
- T(C($(n)("BPriceSummary.taxIncluded")), 1)
156
- ], 64)) : (i(), f(B, { key: 1 }, [
157
- T(C($(n)("BPriceSummary.taxNotIncluded")), 1)
158
- ], 64))
159
- ], 64)) : I("", !0)
160
- ])
161
- ]));
162
- }
163
- });
164
- function $t(t) {
165
- const e = t;
166
- e.__i18n = e.__i18n || [], e.__i18n.push({
167
- locale: "",
168
- resource: {
169
- "en-US": {
170
- BPriceSummary: {
171
- adults: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adult" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adults" }] }] } },
172
- from: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "from" } },
173
- or: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "or" } },
174
- rooms: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "room" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " room" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " rooms" }] }] } },
175
- nights: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "night" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " night" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " nights" }] }] } },
176
- summary: { t: 0, b: { t: 2, i: [{ t: 3, v: "for " }, { t: 4, k: "rooms" }] } },
177
- taxIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Includes taxes & fees" } },
178
- taxNotIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Taxes & fees not included" } },
179
- tooltipMessage: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "price per room per night" } },
180
- total: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "total" } }
181
- }
182
- },
183
- "fr-FR": {
184
- BPriceSummary: {
185
- adults: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adulte" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adultes" }] }] } },
186
- from: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "à partir de" } },
187
- or: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "ou" } },
188
- rooms: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "chambre" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " chambre" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " chambres" }] }] } },
189
- nights: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "nuit" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " nuit" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " nuits" }] }] } },
190
- summary: { t: 0, b: { t: 2, i: [{ t: 3, v: "pour " }, { t: 4, k: "rooms" }] } },
191
- taxIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Taxes et frais compris" } },
192
- taxNotIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Taxes et frais non compris" } },
193
- tooltipMessage: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "prix par chambre par nuit" } },
194
- total: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "au total" } }
195
- }
196
- },
197
- "de-DE": {
198
- BPriceSummary: {
199
- adults: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " Erwachsener" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " Erwachsene" }] }] } },
200
- from: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "ab" } },
201
- or: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "oder" } },
202
- rooms: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Zimmer" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " Zimmer" }] }] } },
203
- nights: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Nacht" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " Nächte" }] }] } },
204
- summary: { t: 0, b: { t: 2, i: [{ t: 3, v: "für " }, { t: 4, k: "rooms" }] } },
205
- taxIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Inklusive Steuern & Gebühren" } },
206
- taxNotIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Steuern & Gebühren nicht inbegriffen" } },
207
- tooltipMessage: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preis pro Zimmer pro Nacht" } },
208
- total: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "gesamt" } }
209
- }
210
- },
211
- "es-ES": {
212
- BPriceSummary: {
213
- adults: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adulto" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adultos" }] }] } },
214
- from: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "desde" } },
215
- or: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "o" } },
216
- rooms: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "habitación" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " habitación" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " habitaciones" }] }] } },
217
- nights: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "noche" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " noche" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " noches" }] }] } },
218
- summary: { t: 0, b: { t: 2, i: [{ t: 3, v: "para " }, { t: 4, k: "rooms" }] } },
219
- taxIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Impuestos y tasas incluidos" } },
220
- taxNotIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Impuestos y tasas no incluidos" } },
221
- tooltipMessage: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "precio por habitación y noche" } },
222
- total: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "total" } }
223
- }
224
- },
225
- "it-IT": {
226
- BPriceSummary: {
227
- adults: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adulto" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adulti" }] }] } },
228
- from: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "da" } },
229
- or: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "o" } },
230
- rooms: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "camera" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " camera" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " camere" }] }] } },
231
- nights: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "notte" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " notte" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " notti" }] }] } },
232
- summary: { t: 0, b: { t: 2, i: [{ t: 3, v: "per " }, { t: 4, k: "rooms" }] } },
233
- taxIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Tasse e commissioni incluse" } },
234
- taxNotIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Tasse e commissioni non incluse" } },
235
- tooltipMessage: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "prezzo per camera a notte" } },
236
- total: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "totale" } }
237
- }
238
- },
239
- "nl-NL": {
240
- BPriceSummary: {
241
- adults: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " volwassene" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " volwassenen" }] }] } },
242
- from: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "vanaf" } },
243
- or: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "of" } },
244
- rooms: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "kamer" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " kamer" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " kamers" }] }] } },
245
- nights: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "nacht" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " nacht" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " nachten" }] }] } },
246
- summary: { t: 0, b: { t: 2, i: [{ t: 3, v: "voor " }, { t: 4, k: "rooms" }] } },
247
- taxIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Inclusief belastingen & toeslagen" } },
248
- taxNotIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Belastingen & toeslagen niet inbegrepen" } },
249
- tooltipMessage: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "prijs per kamer per nacht" } },
250
- total: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "totaal" } }
251
- }
252
- },
253
- "pt-PT": {
254
- BPriceSummary: {
255
- adults: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adulto" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " adultos" }] }] } },
256
- from: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "a partir de" } },
257
- or: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "ou" } },
258
- rooms: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "quarto" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " quarto" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " quartos" }] }] } },
259
- nights: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "noite" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " noite" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " noites" }] }] } },
260
- summary: { t: 0, b: { t: 2, i: [{ t: 3, v: "para " }, { t: 4, k: "rooms" }] } },
261
- taxIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Inclui taxas e impostos" } },
262
- taxNotIncluded: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Taxas e impostos não incluídos" } },
263
- tooltipMessage: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "preço por quarto por noite" } },
264
- total: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "total" } }
265
- }
266
- }
267
- }
268
- });
269
- }
270
- typeof $t == "function" && $t(Wt);
271
- const Ct = /* @__PURE__ */ tt(Wt, [["__scopeId", "data-v-2324f5ca"]]);
272
- function po(t, e) {
273
- return e ? t.adultCount === e.adultCount && t.checkInDate === e.checkInDate && t.checkOutDate === e.checkOutDate && t.children === e.children && t.hotelId === e.hotelId && t.roomCount === e.roomCount && t.sourceMarket === e.sourceMarket : !1;
274
- }
275
- function ko(t) {
276
- const e = pt(), n = Oe(
277
- t.checkInDate,
278
- t.checkOutDate
279
- ), s = x({
280
- adultCount: t.adultCount,
281
- checkInDate: n[0],
282
- checkOutDate: n[1],
283
- children: t.children ?? null,
284
- hotelId: t.hotelId,
285
- roomCount: t.roomCount,
286
- sourceMarket: t.sourceMarket
287
- }), r = b(
288
- () => e.hotelRoomOfferRequest(t.hotelId)
289
- ), k = se(
290
- async function() {
291
- const m = s.value, c = r.value;
292
- t.hotelRoomOfferRequestId && t.hotelRoomOfferRequestId !== (c == null ? void 0 : c.id) ? (await e.retrieveHotelRoomOfferRequest({
293
- hotelId: m.hotelId,
294
- hotelRoomOfferRequestId: t.hotelRoomOfferRequestId
295
- }), (!c || c.hasError) && await e.createHotelRoomOfferRequest(m)) : (!c || !c.id || c.hasError || !po(m, c)) && await e.createHotelRoomOfferRequest(m);
296
- },
297
- 300
298
- );
299
- U(
300
- () => {
301
- const l = r.value;
302
- return l ? [
303
- l.adultCount,
304
- l.checkInDate,
305
- l.checkOutDate,
306
- l.children,
307
- l.roomCount,
308
- l.sourceMarket
309
- ].join(",") : "";
310
- },
311
- () => {
312
- const l = r.value;
313
- !l || !l.adultCount || !l.checkInDate || !l.checkOutDate || !l.roomCount || !l.sourceMarket || (s.value = {
314
- adultCount: l.adultCount,
315
- checkInDate: l.checkInDate,
316
- checkOutDate: l.checkOutDate,
317
- children: l.children ?? null,
318
- hotelId: l.hotelId,
319
- roomCount: l.roomCount,
320
- sourceMarket: l.sourceMarket
321
- });
322
- }
323
- ), U(
324
- () => t.adultCount,
325
- (l) => {
326
- s.value = {
327
- ...s.value,
328
- adultCount: l
329
- };
330
- }
331
- ), U(
332
- () => t.checkInDate,
333
- (l) => {
334
- s.value = {
335
- ...s.value,
336
- checkInDate: l
337
- };
338
- }
339
- ), U(
340
- () => t.checkOutDate,
341
- (l) => {
342
- s.value = {
343
- ...s.value,
344
- checkOutDate: l
345
- };
346
- }
347
- ), U(
348
- () => t.children,
349
- (l) => {
350
- s.value = {
351
- ...s.value,
352
- children: l ?? null
353
- };
354
- }
355
- ), U(
356
- () => t.hotelId,
357
- (l, m) => {
358
- m && e.deleteHotelRoomOfferRequest(m), s.value = {
359
- ...s.value,
360
- hotelId: l
361
- }, k();
362
- }
363
- ), U(
364
- () => t.roomCount,
365
- (l) => {
366
- s.value = {
367
- ...s.value,
368
- roomCount: l
369
- };
370
- }
371
- ), U(
372
- () => t.sourceMarket,
373
- (l) => {
374
- s.value = {
375
- ...s.value,
376
- sourceMarket: l
377
- };
378
- }
379
- );
380
- const d = () => {
381
- e.resetHotelRoomOfferRequest(t.hotelId), k();
382
- };
383
- return U(
384
- () => s.value,
385
- () => {
386
- k();
387
- },
388
- { deep: !0, immediate: !0 }
389
- ), U(
390
- () => ne(),
391
- () => {
392
- d();
393
- },
394
- { immediate: !0 }
395
- ), {
396
- hotelRoomOfferRequest: r,
397
- hotelRoomOfferRequestInternal: s
398
- };
399
- }
400
- const vo = J({
401
- components: {
402
- BPriceSummarySkeleton: Ut
403
- },
404
- mixins: [ie],
405
- name: "HotelRoomOfferLayout",
406
- props: {
407
- boilerplate: { type: Boolean }
408
- },
409
- setup() {
410
- const { t } = X();
411
- return {
412
- t
413
- };
414
- }
415
- }), ho = { class: "d-flex justify-end" };
416
- function go(t, e, n, s, r, k) {
417
- const d = L("BPriceSummarySkeleton");
418
- return i(), S(V, {
419
- class: "px-2 py-3 pa-sm-4 px-md-3",
420
- "no-gutters": ""
421
- }, {
422
- default: a(() => [
423
- o(O, {
424
- "align-self": "start",
425
- cols: "12",
426
- lg: "6",
427
- md: "7",
428
- sm: "7"
429
- }, {
430
- default: a(() => [
431
- o(V, { "no-gutters": "" }, {
432
- default: a(() => [
433
- o(O, { cols: "12" }, {
434
- default: a(() => [
435
- z(t.$slots, "room-details", {}, () => [
436
- o(ot, {
437
- boilerplate: t.boilerplate,
438
- class: "mt-1",
439
- height: "14px",
440
- tile: "",
441
- type: "text",
442
- width: "180px"
443
- }, null, 8, ["boilerplate"]),
444
- o(ot, {
445
- boilerplate: t.boilerplate,
446
- height: "12px",
447
- tile: "",
448
- type: "text",
449
- width: "120px"
450
- }, null, 8, ["boilerplate"])
451
- ])
452
- ]),
453
- _: 3
454
- }),
455
- o(O, {
456
- "align-self": "start",
457
- class: "text-left d-flex flex-column mt-2",
458
- cols: "12",
459
- style: { gap: "0.3em" }
460
- }, {
461
- default: a(() => [
462
- z(t.$slots, "breakfast-option-badge"),
463
- z(t.$slots, "cancellation-policies")
464
- ]),
465
- _: 3
466
- }),
467
- o(O, { cols: "12" }, {
468
- default: a(() => [
469
- z(t.$slots, "breakfast-option-switch")
470
- ]),
471
- _: 3
472
- })
473
- ]),
474
- _: 3
475
- })
476
- ]),
477
- _: 3
478
- }),
479
- o(O, {
480
- "align-self": "end",
481
- class: "text-right mt-sm-0 mt-2",
482
- lg: "6",
483
- md: "5",
484
- sm: "5"
485
- }, {
486
- default: a(() => [
487
- z(t.$slots, "package-type"),
488
- z(t.$slots, "price-summary", {}, () => [
489
- o(d, {
490
- boilerplate: t.boilerplate,
491
- class: "mt-2"
492
- }, null, 8, ["boilerplate"])
493
- ]),
494
- v("div", ho, [
495
- z(t.$slots, "action", {}, () => [
496
- o(ot, {
497
- class: "mt-2",
498
- boilerplate: t.boilerplate,
499
- height: "28px",
500
- tile: "",
501
- type: "image",
502
- width: t.$isCurrentBreakpointBelow("sm") ? "100%" : "130px"
503
- }, null, 8, ["boilerplate", "width"])
504
- ])
505
- ])
506
- ]),
507
- _: 3
508
- })
509
- ]),
510
- _: 3
511
- });
512
- }
513
- const kt = /* @__PURE__ */ tt(vo, [["render", go]]), yo = {
514
- isLoading: { type: Boolean },
515
- modelValue: {
516
- type: Boolean
517
- },
518
- price: {
519
- required: !0,
520
- type: Number
521
- }
522
- }, Yt = J({
523
- components: {
524
- BTag: dt
525
- },
526
- computed: {
527
- formattedPrice() {
528
- return Ae({
529
- amount: this.price,
530
- currency: this.config.currency,
531
- locale: this.$i18n.locale
532
- });
533
- }
534
- },
535
- data() {
536
- return {
537
- valueLocal: this.modelValue
538
- };
539
- },
540
- name: "BBreakfastSwitch",
541
- props: yo,
542
- setup() {
543
- const { t } = X();
544
- return {
545
- t
546
- };
547
- },
548
- watch: {
549
- valueLocal(t) {
550
- this.$emit("update:modelValue", t);
551
- }
552
- }
553
- });
554
- function Lt(t) {
555
- const e = t;
556
- e.__i18n = e.__i18n || [], e.__i18n.push({
557
- locale: "",
558
- resource: {
559
- "en-US": {
560
- BBreakfastSwitch: {
561
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Breakfast" } },
562
- price: { t: 0, b: { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " / guest / night" }] } }
563
- }
564
- },
565
- "fr-FR": {
566
- BBreakfastSwitch: {
567
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Petit-déjeuner" } },
568
- price: { t: 0, b: { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " / client / nuit" }] } }
569
- }
570
- },
571
- "de-DE": {
572
- BBreakfastSwitch: {
573
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Frühstück" } },
574
- price: { t: 0, b: { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " / Gast / Nacht" }] } }
575
- }
576
- },
577
- "es-ES": {
578
- BBreakfastSwitch: {
579
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Desayuno" } },
580
- price: { t: 0, b: { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " / huésped / noche" }] } }
581
- }
582
- },
583
- "it-IT": {
584
- BBreakfastSwitch: {
585
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Colazione" } },
586
- price: { t: 0, b: { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " / ospite / notte" }] } }
587
- }
588
- },
589
- "nl-NL": {
590
- BBreakfastSwitch: {
591
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ontbijt" } },
592
- price: { t: 0, b: { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " / gast / nacht" }] } }
593
- }
594
- },
595
- "pt-PT": {
596
- BBreakfastSwitch: {
597
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Pequeno-almoço" } },
598
- price: { t: 0, b: { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " / hóspede / noite" }] } }
599
- }
600
- }
601
- }
602
- });
603
- }
604
- const Ro = lt({
605
- indeterminate: Boolean,
606
- inset: Boolean,
607
- flat: Boolean,
608
- loading: {
609
- type: [Boolean, String],
610
- default: !1
611
- },
612
- ...Me(),
613
- ...Ne()
614
- }, "VSwitch"), Oo = it()({
615
- name: "VSwitch",
616
- inheritAttrs: !1,
617
- props: Ro(),
618
- emits: {
619
- "update:focused": (t) => !0,
620
- "update:modelValue": (t) => !0,
621
- "update:indeterminate": (t) => !0
622
- },
623
- setup(t, e) {
624
- let {
625
- attrs: n,
626
- slots: s
627
- } = e;
628
- const r = mt(t, "indeterminate"), k = mt(t, "modelValue"), {
629
- loaderClasses: d
630
- } = je(t), {
631
- isFocused: l,
632
- focus: m,
633
- blur: c
634
- } = ze(t), P = x(), A = le && window.matchMedia("(forced-colors: active)").matches, R = b(() => typeof t.loading == "string" && t.loading !== "" ? t.loading : t.color), h = re(), E = b(() => t.id || `switch-${h}`);
635
- function g() {
636
- r.value && (r.value = !1);
637
- }
638
- function j(W) {
639
- var M, D;
640
- W.stopPropagation(), W.preventDefault(), (D = (M = P.value) == null ? void 0 : M.input) == null || D.click();
641
- }
642
- return rt(() => {
643
- const [W, M] = ue(n), D = Ht.filterProps(t), Y = Tt.filterProps(t);
644
- return o(Ht, G({
645
- class: ["v-switch", {
646
- "v-switch--flat": t.flat
647
- }, {
648
- "v-switch--inset": t.inset
649
- }, {
650
- "v-switch--indeterminate": r.value
651
- }, d.value, t.class]
652
- }, W, D, {
653
- modelValue: k.value,
654
- "onUpdate:modelValue": (p) => k.value = p,
655
- id: E.value,
656
- focused: l.value,
657
- style: t.style
658
- }), {
659
- ...s,
660
- default: (p) => {
661
- let {
662
- id: y,
663
- messagesId: _,
664
- isDisabled: F,
665
- isReadonly: et,
666
- isValid: N
667
- } = p;
668
- const u = {
669
- model: k,
670
- isValid: N
671
- };
672
- return o(Tt, G({
673
- ref: P
674
- }, Y, {
675
- modelValue: k.value,
676
- "onUpdate:modelValue": [(H) => k.value = H, g],
677
- id: y.value,
678
- "aria-describedby": _.value,
679
- type: "checkbox",
680
- "aria-checked": r.value ? "mixed" : void 0,
681
- disabled: F.value,
682
- readonly: et.value,
683
- onFocus: m,
684
- onBlur: c
685
- }, M), {
686
- ...s,
687
- default: (H) => {
688
- let {
689
- backgroundColorClasses: w,
690
- backgroundColorStyles: q
691
- } = H;
692
- return o("div", {
693
- class: ["v-switch__track", A ? void 0 : w.value],
694
- style: q.value,
695
- onClick: j
696
- }, [s["track-true"] && o("div", {
697
- key: "prepend",
698
- class: "v-switch__track-true"
699
- }, [s["track-true"](u)]), s["track-false"] && o("div", {
700
- key: "append",
701
- class: "v-switch__track-false"
702
- }, [s["track-false"](u)])]);
703
- },
704
- input: (H) => {
705
- let {
706
- inputNode: w,
707
- icon: q,
708
- backgroundColorClasses: ut,
709
- backgroundColorStyles: oe
710
- } = H;
711
- return o(B, null, [w, o("div", {
712
- class: ["v-switch__thumb", {
713
- "v-switch__thumb--filled": q || t.loading
714
- }, t.inset || A ? void 0 : ut.value],
715
- style: t.inset ? void 0 : oe.value
716
- }, [s.thumb ? o($e, {
717
- defaults: {
718
- VIcon: {
719
- icon: q,
720
- size: "x-small"
721
- }
722
- }
723
- }, {
724
- default: () => [s.thumb({
725
- ...u,
726
- icon: q
727
- })]
728
- }) : o(Le, null, {
729
- default: () => [t.loading ? o(Fe, {
730
- name: "v-switch",
731
- active: !0,
732
- color: N.value === !1 ? void 0 : R.value
733
- }, {
734
- default: (vt) => s.loader ? s.loader(vt) : o(It, {
735
- active: vt.isActive,
736
- color: vt.color,
737
- indeterminate: !0,
738
- size: "16",
739
- width: "2"
740
- }, null)
741
- }) : q && o(st, {
742
- key: String(q),
743
- icon: q,
744
- size: "x-small"
745
- }, null)]
746
- })])]);
747
- }
748
- });
749
- }
750
- });
751
- }), {};
752
- }
753
- }), Co = { class: "text-caption ml-n3" }, Bo = { class: "mr-2" }, So = ["innerHTML"];
754
- function Io(t, e, n, s, r, k) {
755
- return i(), S(Oo, {
756
- modelValue: t.valueLocal,
757
- "onUpdate:modelValue": e[0] || (e[0] = (d) => t.valueLocal = d),
758
- class: "ma-0 pa-0 breakfast-switch d-inline-block",
759
- density: "compact",
760
- size: "small",
761
- color: "primary",
762
- loading: t.isLoading && "success"
763
- }, {
764
- label: a(() => [
765
- v("div", Co, [
766
- o(st, {
767
- size: "12",
768
- class: "ml-4 mr-2"
769
- }, {
770
- default: a(() => e[1] || (e[1] = [
771
- T(" fas fa-coffee ")
772
- ])),
773
- _: 1,
774
- __: [1]
775
- }),
776
- e[2] || (e[2] = T(" ")),
777
- v("span", Bo, C(t.t("BBreakfastSwitch.title")), 1),
778
- v("span", {
779
- innerHTML: t.t("BBreakfastSwitch.price", { n: t.formattedPrice }).replace(
780
- /\s/gu,
781
- " "
782
- )
783
- }, null, 8, So)
784
- ])
785
- ]),
786
- _: 1
787
- }, 8, ["modelValue", "loading"]);
788
- }
789
- typeof Lt == "function" && Lt(Yt);
790
- const xt = /* @__PURE__ */ tt(Yt, [["render", Io], ["__scopeId", "data-v-9a8c9349"]]), wo = {
791
- breakfastCount: {
792
- type: Number
793
- },
794
- breakfastOption: {
795
- required: !0,
796
- type: String
797
- },
798
- breakfastUnitPrice: {
799
- type: Number
800
- },
801
- cancellationPolicies: {
802
- required: !0,
803
- type: Array
804
- },
805
- count: { type: Number },
806
- currency: {
807
- required: !0,
808
- type: String
809
- },
810
- gone: { type: Boolean },
811
- hotelId: { required: !0, type: String },
812
- hotelRooms: {
813
- required: !0,
814
- type: Array
815
- },
816
- id: { required: !0, type: String },
817
- isLoading: { type: Boolean },
818
- modelValue: { type: Number },
819
- packageType: { type: String },
820
- price: { required: !0, type: Number },
821
- sourceMarket: {
822
- required: !0,
823
- type: String
824
- },
825
- tags: { type: Array },
826
- taxIncludedPrice: { required: !0, type: Number },
827
- type: { type: String }
828
- }, Po = { key: 0 }, _o = {
829
- class: "align-self-center d-flex flex-wrap",
830
- style: { gap: "0.3em" }
831
- }, Ho = {
832
- class: "align-self-center d-inline-flex flex-wrap",
833
- style: { gap: "0.3em" }
834
- }, To = { class: "text-caption" }, Vo = { key: 0 }, Eo = { key: 1 }, Kt = /* @__PURE__ */ J({
835
- __name: "HotelRoomOfferItem",
836
- props: wo,
837
- emits: ["breakfast-change", "update:modelValue", "booking-policy-failed"],
838
- setup(t, { emit: e }) {
839
- const n = t, { t: s } = X(), { eventBus: r } = me(), k = e, d = x(
840
- n.breakfastCount && n.breakfastCount > 0 || !1
841
- );
842
- U(d, (u) => {
843
- k("breakfast-change", {
844
- addBreakfast: u,
845
- hotelId: n.hotelId,
846
- id: n.id
847
- });
848
- });
849
- const l = pt(), m = bt(), c = b(
850
- () => l.hotelRoomOfferRequest(n.hotelId)
851
- ), P = b(() => {
852
- var u;
853
- return (u = c.value) == null ? void 0 : u.adultCount;
854
- }), A = b(() => {
855
- var u;
856
- return (u = c.value) == null ? void 0 : u.checkInDate;
857
- }), R = b(
858
- () => n.count ? no(n.count + 1) : []
859
- ), h = b(
860
- () => m.hotelTimezone(n.hotelId)
861
- ), E = b(
862
- () => l.nightCount(n.hotelId)
863
- ), g = b(() => {
864
- switch (n.packageType) {
865
- case ct.Cheapest:
866
- return "red";
867
- case ct.BestMatch:
868
- case ct.MatchingRoomCount:
869
- return "purple";
870
- case ct.Regular:
871
- case void 0:
872
- default:
873
- return "";
874
- }
875
- }), j = b(
876
- () => n.hotelRooms.reduce((u, H) => u + (H.count || 0), 0)
877
- ), W = b({
878
- get() {
879
- return n.modelValue;
880
- },
881
- set(u) {
882
- k("update:modelValue", u);
883
- }
884
- }), M = b(
885
- () => {
886
- var u;
887
- return ((u = n.tags) == null ? void 0 : u.filter((H) => H.name.length > 30)) || [];
888
- }
889
- ), D = b(
890
- () => {
891
- var u;
892
- return ((u = n.tags) == null ? void 0 : u.filter((H) => H.name.length < 30)) || [];
893
- }
894
- ), {
895
- bookingState: Y,
896
- createBookingPolicy: p,
897
- isBookingPoliciesSuccessful: y,
898
- isBookingPoliciesUnavailable: _,
899
- isFetchingBookingPolicies: F
900
- } = io();
901
- U(Y, (u) => {
902
- u === K.Unavailable && k("booking-policy-failed", n.id);
903
- });
904
- async function et() {
905
- const u = {
906
- ...n,
907
- currency: n.currency
908
- };
909
- r.$emit(fe.HotelRoomOffersBtnClick, u), await p({
910
- addBreakfast: d.value,
911
- hotelId: n.hotelId,
912
- hotelRoomOfferId: n.id
913
- });
914
- }
915
- const N = x(null);
916
- return Ce(N), (u, H) => (i(), f("div", {
917
- class: "position-relative",
918
- ref_key: "root",
919
- ref: N
920
- }, [
921
- o(kt, { key: "is-available" }, {
922
- "room-details": a(() => [
923
- o(Gt, {
924
- "hotel-rooms": u.hotelRooms
925
- }, null, 8, ["hotel-rooms"])
926
- ]),
927
- "package-type": a(() => [
928
- u.type === "PACKAGE" && u.packageType !== "REGULAR" ? (i(), S(dt, {
929
- key: 0,
930
- class: "mb-3",
931
- color: g.value,
932
- variant: "outlined"
933
- }, {
934
- description: a(() => [
935
- T(C($(s)(
936
- `HotelRoomOfferItem.packageTypes.${u.packageType}.description`,
937
- { n: P.value }
938
- )), 1)
939
- ]),
940
- default: a(() => [
941
- T(C($(s)(`HotelRoomOfferItem.packageTypes.${u.packageType}.title`, {
942
- n: P.value
943
- })) + " ", 1)
944
- ]),
945
- _: 1
946
- }, 8, ["color"])) : I("", !0)
947
- ]),
948
- "cancellation-policies": a(() => [
949
- o(Ie, {
950
- class: "mt-2",
951
- "cancellation-policies": u.cancellationPolicies,
952
- "check-in-date": A.value,
953
- timezone: h.value
954
- }, null, 8, ["cancellation-policies", "check-in-date", "timezone"])
955
- ]),
956
- "breakfast-option-badge": a(() => [
957
- o(Ft, {
958
- "breakfast-option": u.breakfastCount && u.breakfastCount > 0 ? "INCLUDED" : u.breakfastOption,
959
- breakfastCount: u.breakfastCount ?? void 0
960
- }, null, 8, ["breakfast-option", "breakfastCount"])
961
- ]),
962
- "breakfast-option-switch": a(() => [
963
- u.type !== "HOTEL_ROOM" && u.breakfastOption === "OPTIONAL" ? (i(), f("div", Po, [
964
- o(xt, {
965
- modelValue: d.value,
966
- "onUpdate:modelValue": H[0] || (H[0] = (w) => d.value = w),
967
- class: "mt-3 pl-1",
968
- "is-loading": u.isLoading,
969
- price: u.breakfastUnitPrice ?? 0
970
- }, null, 8, ["modelValue", "is-loading", "price"])
971
- ])) : I("", !0)
972
- ]),
973
- "big-tags": a(() => [
974
- v("div", _o, [
975
- (i(!0), f(B, null, Z(M.value, (w, q) => (i(), S(dt, {
976
- key: q,
977
- color: w.bg,
978
- "pre-icon": `fa-${w.faIcon}`,
979
- "text-color": w.color,
980
- "tooltip-content": w.description
981
- }, {
982
- default: a(() => [
983
- T(C(w.name), 1)
984
- ]),
985
- _: 2
986
- }, 1032, ["color", "pre-icon", "text-color", "tooltip-content"]))), 128))
987
- ])
988
- ]),
989
- tags: a(() => [
990
- v("div", Ho, [
991
- (i(!0), f(B, null, Z(D.value, (w, q) => (i(), S(dt, {
992
- key: q,
993
- color: w.bg,
994
- "pre-icon": `fa-${w.faIcon}`,
995
- "text-color": w.color,
996
- "tooltip-content": w.description
997
- }, {
998
- default: a(() => [
999
- T(C(w.name), 1)
1000
- ]),
1001
- _: 2
1002
- }, 1032, ["color", "pre-icon", "text-color", "tooltip-content"]))), 128))
1003
- ])
1004
- ]),
1005
- "price-summary": a(() => [
1006
- u.type === "HOTEL_ROOM" ? (i(), f(B, { key: 0 }, [
1007
- o(V, {
1008
- class: "mt-md-8",
1009
- "no-gutters": ""
1010
- }, {
1011
- default: a(() => [
1012
- o(O, null, {
1013
- default: a(() => [
1014
- o(Ct, {
1015
- "adult-count": 1,
1016
- class: "text-right",
1017
- "is-tax-included": !1,
1018
- "night-count": 0,
1019
- price: u.price,
1020
- "room-count": 0
1021
- }, null, 8, ["price"])
1022
- ]),
1023
- _: 1
1024
- })
1025
- ]),
1026
- _: 1
1027
- }),
1028
- o(V, {
1029
- align: "end",
1030
- "no-gutters": ""
1031
- }, {
1032
- default: a(() => [
1033
- o(O, {
1034
- align: "end",
1035
- class: "d-flex justify-end"
1036
- }, {
1037
- default: a(() => [
1038
- v("div", null, [
1039
- o(Ye, {
1040
- modelValue: W.value,
1041
- "onUpdate:modelValue": H[1] || (H[1] = (w) => W.value = w),
1042
- class: "item-count mt-2",
1043
- density: "compact",
1044
- "hide-details": "",
1045
- items: R.value,
1046
- "menu-props": {
1047
- minWidth: "125px"
1048
- },
1049
- variant: "outlined"
1050
- }, {
1051
- item: a(({ item: w, props: q }) => [
1052
- o(xe, ce(de(q)), {
1053
- title: a(() => [
1054
- v("span", To, [
1055
- T(C(w.raw) + " ", 1),
1056
- w.raw ? (i(), f(B, { key: 0 }, [
1057
- H[2] || (H[2] = T(" (")),
1058
- o(ft, {
1059
- amount: w.raw * u.price
1060
- }, null, 8, ["amount"]),
1061
- H[3] || (H[3] = T(") "))
1062
- ], 64)) : I("", !0)
1063
- ])
1064
- ]),
1065
- _: 2
1066
- }, 1040)
1067
- ]),
1068
- _: 1
1069
- }, 8, ["modelValue", "items"])
1070
- ])
1071
- ]),
1072
- _: 1
1073
- })
1074
- ]),
1075
- _: 1
1076
- })
1077
- ], 64)) : (i(), S(Ct, {
1078
- key: 1,
1079
- "adult-count": P.value,
1080
- class: "text-right",
1081
- "is-tax-included": "",
1082
- "night-count": E.value ?? 0,
1083
- price: u.price,
1084
- "room-count": j.value,
1085
- "round-mode": "ceil",
1086
- "tax-included-price": u.taxIncludedPrice
1087
- }, null, 8, ["adult-count", "night-count", "price", "room-count", "tax-included-price"]))
1088
- ]),
1089
- action: a(() => [
1090
- u.type === "PACKAGE" ? (i(), S(nt, {
1091
- key: 0,
1092
- class: "text-none font-weight-bold book-btn w-100 w-sm-auto",
1093
- color: $(y) ? "success" : "primary",
1094
- disabled: $(F) || $(_) || u.isLoading,
1095
- elevation: "0",
1096
- loading: $(F),
1097
- size: "small",
1098
- onClick: et
1099
- }, {
1100
- default: a(() => [
1101
- $(y) ? I("", !0) : (i(), f("span", Vo, C($(s)("HotelRoomOfferItem.book")), 1)),
1102
- gt(o(st, { class: "position-absolute" }, {
1103
- default: a(() => H[4] || (H[4] = [
1104
- T(" fas fa-check ")
1105
- ])),
1106
- _: 1,
1107
- __: [4]
1108
- }, 512), [
1109
- [yt, $(y)]
1110
- ])
1111
- ]),
1112
- _: 1
1113
- }, 8, ["color", "disabled", "loading"])) : (i(), f("span", Eo))
1114
- ]),
1115
- _: 1
1116
- }),
1117
- u.isLoading ? (i(), S(jt, {
1118
- key: 0,
1119
- absolute: "",
1120
- class: "mx-n4",
1121
- scrim: "grey-lighten-4",
1122
- opacity: "0.75"
1123
- }, {
1124
- default: a(() => [
1125
- o(It, {
1126
- color: "primary",
1127
- indeterminate: "",
1128
- size: "64"
1129
- })
1130
- ]),
1131
- _: 1
1132
- })) : I("", !0),
1133
- $(_) || u.gone ? (i(), S(St, {
1134
- key: 1,
1135
- "margin-top": 16
1136
- }, {
1137
- title: a(() => [
1138
- T(C($(s)("HotelRoomOfferItem.unavailable.title")), 1)
1139
- ]),
1140
- description: a(() => [
1141
- T(C($(s)("HotelRoomOfferItem.unavailable.description")), 1)
1142
- ]),
1143
- _: 1
1144
- })) : I("", !0)
1145
- ], 512));
1146
- }
1147
- });
1148
- function Dt(t) {
1149
- const e = t;
1150
- e.__i18n = e.__i18n || [], e.__i18n.push({
1151
- locale: "",
1152
- resource: {
1153
- "en-US": {
1154
- HotelRoomOfferItem: {
1155
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Book this selection" } },
1156
- packageTypes: {
1157
- BEST_MATCH: {
1158
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Recommended selection for " }, { t: 4, k: "n" }, { t: 3, v: " guest" }] }, { t: 2, i: [{ t: 3, v: "Recommended selection for " }, { t: 4, k: "n" }, { t: 3, v: " guests" }] }] } },
1159
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Recommended option" } }
1160
- },
1161
- CHEAPEST: {
1162
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Cheapest selection that sleeps " }, { t: 4, k: "n" }, { t: 3, v: " guest" }] }, { t: 2, i: [{ t: 3, v: "Cheapest selection that sleeps " }, { t: 4, k: "n" }, { t: 3, v: " guests" }] }] } },
1163
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cheapest option available !" } }
1164
- },
1165
- MATCHING_ROOM_COUNT: {
1166
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Matching all your requirements for " }, { t: 4, k: "n" }, { t: 3, v: " guest" }] }, { t: 2, i: [{ t: 3, v: "Matching all your requirements for " }, { t: 4, k: "n" }, { t: 3, v: " guests" }] }] } },
1167
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Matching all your requirements" } }
1168
- }
1169
- },
1170
- unavailable: {
1171
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "This offer is no longer available" } },
1172
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Please consider an alternative offer" } }
1173
- }
1174
- }
1175
- },
1176
- "fr-FR": {
1177
- HotelRoomOfferItem: {
1178
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Réserver cette sélection" } },
1179
- packageTypes: {
1180
- BEST_MATCH: {
1181
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Sélection recommandée pour " }, { t: 4, k: "n" }, { t: 3, v: " personne" }] }, { t: 2, i: [{ t: 3, v: "Sélection recomandé la moins chère pouvant accueillir " }, { t: 4, k: "n" }, { t: 3, v: " personnes" }] }] } },
1182
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sélection recommandée" } }
1183
- },
1184
- CHEAPEST: {
1185
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Sélection la moins chère pouvant accueillir " }, { t: 4, k: "n" }, { t: 3, v: " personne" }] }, { t: 2, i: [{ t: 3, v: "Sélection la moins chère pouvant accueillir " }, { t: 4, k: "n" }, { t: 3, v: " personnes" }] }] } },
1186
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prix le plus bas disponible !" } }
1187
- },
1188
- MATCHING_ROOM_COUNT: {
1189
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Adapté à vos demandes pour " }, { t: 4, k: "n" }, { t: 3, v: " personne" }] }, { t: 2, i: [{ t: 3, v: "Adapté à vos demandes pour " }, { t: 4, k: "n" }, { t: 3, v: " personnes" }] }] } },
1190
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Adapté à vos demandes" } }
1191
- }
1192
- },
1193
- unavailable: {
1194
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cette offre n'est plus disponible" } },
1195
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Essayez de réserver une autre offre" } }
1196
- }
1197
- }
1198
- },
1199
- "de-DE": {
1200
- HotelRoomOfferItem: {
1201
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Diese Auswahl buchen" } },
1202
- packageTypes: {
1203
- BEST_MATCH: {
1204
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Empfohlene Auswahl für " }, { t: 4, k: "n" }, { t: 3, v: " Gast" }] }, { t: 2, i: [{ t: 3, v: "Empfohlene Auswahl für " }, { t: 4, k: "n" }, { t: 3, v: " Gäste" }] }] } },
1205
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Empfohlene Option" } }
1206
- },
1207
- CHEAPEST: {
1208
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Günstigste Auswahl für " }, { t: 4, k: "n" }, { t: 3, v: " Gast" }] }, { t: 2, i: [{ t: 3, v: "Günstigste Auswahl für " }, { t: 4, k: "n" }, { t: 3, v: " Gäste" }] }] } },
1209
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Günstigste verfügbare Option!" } }
1210
- },
1211
- MATCHING_ROOM_COUNT: {
1212
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Entspricht all Ihren Anforderungen für " }, { t: 4, k: "n" }, { t: 3, v: " Gast" }] }, { t: 2, i: [{ t: 3, v: "Entspricht all Ihren Anforderungen für " }, { t: 4, k: "n" }, { t: 3, v: " Gäste" }] }] } },
1213
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Entspricht all Ihren Anforderungen" } }
1214
- }
1215
- },
1216
- unavailable: {
1217
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Dieses Angebot ist nicht mehr verfügbar" } },
1218
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Bitte berücksichtigen Sie ein alternatives Angebot" } }
1219
- }
1220
- }
1221
- },
1222
- "es-ES": {
1223
- HotelRoomOfferItem: {
1224
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reservar esta selección" } },
1225
- packageTypes: {
1226
- BEST_MATCH: {
1227
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Selección recomendada para " }, { t: 4, k: "n" }, { t: 3, v: " huésped" }] }, { t: 2, i: [{ t: 3, v: "Selección recomendada para " }, { t: 4, k: "n" }, { t: 3, v: " huéspedes" }] }] } },
1228
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Opción recomendada" } }
1229
- },
1230
- CHEAPEST: {
1231
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Selección más económica para " }, { t: 4, k: "n" }, { t: 3, v: " huésped" }] }, { t: 2, i: [{ t: 3, v: "Selección más económica para " }, { t: 4, k: "n" }, { t: 3, v: " huéspedes" }] }] } },
1232
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "¡Opción más económica disponible!" } }
1233
- },
1234
- MATCHING_ROOM_COUNT: {
1235
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Coincide con todos sus requisitos para " }, { t: 4, k: "n" }, { t: 3, v: " huésped" }] }, { t: 2, i: [{ t: 3, v: "Coincide con todos sus requisitos para " }, { t: 4, k: "n" }, { t: 3, v: " huéspedes" }] }] } },
1236
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Coincide con todos sus requisitos" } }
1237
- }
1238
- },
1239
- unavailable: {
1240
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Esta oferta ya no está disponible" } },
1241
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Considere una oferta alternativa" } }
1242
- }
1243
- }
1244
- },
1245
- "it-IT": {
1246
- HotelRoomOfferItem: {
1247
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prenota questa selezione" } },
1248
- packageTypes: {
1249
- BEST_MATCH: {
1250
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Selezione consigliata per " }, { t: 4, k: "n" }, { t: 3, v: " ospite" }] }, { t: 2, i: [{ t: 3, v: "Selezione consigliata per " }, { t: 4, k: "n" }, { t: 3, v: " ospiti" }] }] } },
1251
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Opzione consigliata" } }
1252
- },
1253
- CHEAPEST: {
1254
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Selezione più economica per " }, { t: 4, k: "n" }, { t: 3, v: " ospite" }] }, { t: 2, i: [{ t: 3, v: "Selezione più economica per " }, { t: 4, k: "n" }, { t: 3, v: " ospiti" }] }] } },
1255
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Opzione più economica disponibile!" } }
1256
- },
1257
- MATCHING_ROOM_COUNT: {
1258
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Corrisponde a tutte le tue esigenze per " }, { t: 4, k: "n" }, { t: 3, v: " ospite" }] }, { t: 2, i: [{ t: 3, v: "Corrisponde a tutte le tue esigenze per " }, { t: 4, k: "n" }, { t: 3, v: " ospiti" }] }] } },
1259
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Corrisponde a tutte le tue esigenze" } }
1260
- }
1261
- },
1262
- unavailable: {
1263
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Questa offerta non è più disponibile" } },
1264
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Considera un'offerta alternativa" } }
1265
- }
1266
- }
1267
- },
1268
- "nl-NL": {
1269
- HotelRoomOfferItem: {
1270
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Boek deze selectie" } },
1271
- packageTypes: {
1272
- BEST_MATCH: {
1273
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Aanbevolen selectie voor " }, { t: 4, k: "n" }, { t: 3, v: " gast" }] }, { t: 2, i: [{ t: 3, v: "Aanbevolen selectie voor " }, { t: 4, k: "n" }, { t: 3, v: " gasten" }] }] } },
1274
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aanbevolen optie" } }
1275
- },
1276
- CHEAPEST: {
1277
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Goedkoopste selectie die geschikt is voor " }, { t: 4, k: "n" }, { t: 3, v: " gast" }] }, { t: 2, i: [{ t: 3, v: "Goedkoopste selectie die geschikt is voor " }, { t: 4, k: "n" }, { t: 3, v: " gasten" }] }] } },
1278
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Goedkoopste optie beschikbaar!" } }
1279
- },
1280
- MATCHING_ROOM_COUNT: {
1281
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Voldoet aan al uw eisen voor " }, { t: 4, k: "n" }, { t: 3, v: " gast" }] }, { t: 2, i: [{ t: 3, v: "Voldoet aan al uw eisen voor " }, { t: 4, k: "n" }, { t: 3, v: " gasten" }] }] } },
1282
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Voldoet aan al uw eisen" } }
1283
- }
1284
- },
1285
- unavailable: {
1286
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Deze aanbieding is niet langer beschikbaar" } },
1287
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Overweeg een alternatieve aanbieding" } }
1288
- }
1289
- }
1290
- },
1291
- "pt-PT": {
1292
- HotelRoomOfferItem: {
1293
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reservar esta seleção" } },
1294
- packageTypes: {
1295
- BEST_MATCH: {
1296
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Seleção recomendada para " }, { t: 4, k: "n" }, { t: 3, v: " hóspede" }] }, { t: 2, i: [{ t: 3, v: "Seleção recomendada para " }, { t: 4, k: "n" }, { t: 3, v: " hóspedes" }] }] } },
1297
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Opção recomendada" } }
1298
- },
1299
- CHEAPEST: {
1300
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Seleção mais barata que acomoda " }, { t: 4, k: "n" }, { t: 3, v: " hóspede" }] }, { t: 2, i: [{ t: 3, v: "Seleção mais barata que acomoda " }, { t: 4, k: "n" }, { t: 3, v: " hóspedes" }] }] } },
1301
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Opção mais barata disponível!" } }
1302
- },
1303
- MATCHING_ROOM_COUNT: {
1304
- description: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Corresponde a todos os seus requisitos para " }, { t: 4, k: "n" }, { t: 3, v: " hóspede" }] }, { t: 2, i: [{ t: 3, v: "Corresponde a todos os seus requisitos para " }, { t: 4, k: "n" }, { t: 3, v: " hóspedes" }] }] } },
1305
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Corresponde a todos os seus requisitos" } }
1306
- }
1307
- },
1308
- unavailable: {
1309
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Esta oferta já não está disponível" } },
1310
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Considere uma oferta alternativa" } }
1311
- }
1312
- }
1313
- }
1314
- }
1315
- });
1316
- }
1317
- typeof Dt == "function" && Dt(Kt);
1318
- const Zt = /* @__PURE__ */ tt(Kt, [["__scopeId", "data-v-9997e24c"]]), Ao = J({
1319
- components: {
1320
- BHotelRoomsDetailsSkeleton: we,
1321
- BPriceSummarySkeleton: Ut
1322
- },
1323
- name: "BBasketSummaryLayout",
1324
- setup() {
1325
- const { t } = X();
1326
- return {
1327
- t
1328
- };
1329
- }
1330
- }), $o = { class: "text-subtitle-1 font-weight-black text-primary d-flex justify-end" }, Lo = { class: "text-caption d-flex justify-end py-2" }, Do = { class: "mt-3 d-flex justify-start align-center" }, qo = { class: "pt-4" };
1331
- function zo(t, e, n, s, r, k) {
1332
- const d = L("BHotelRoomsDetailsSkeleton"), l = L("BPriceSummarySkeleton");
1333
- return i(), S(V, { class: "px-2" }, {
1334
- default: a(() => [
1335
- o(O, null, {
1336
- default: a(() => [
1337
- o(V, null, {
1338
- default: a(() => [
1339
- o(O, null, {
1340
- default: a(() => [
1341
- v("div", $o, [
1342
- z(t.$slots, "title", {}, () => [
1343
- o(ot, {
1344
- height: "18px",
1345
- tile: "",
1346
- type: "heading",
1347
- width: "200px"
1348
- })
1349
- ])
1350
- ])
1351
- ]),
1352
- _: 3
1353
- })
1354
- ]),
1355
- _: 3
1356
- }),
1357
- o(V, null, {
1358
- default: a(() => [
1359
- o(O, null, {
1360
- default: a(() => [
1361
- v("div", Lo, [
1362
- z(t.$slots, "adult-count", {}, () => [
1363
- o(ot, {
1364
- tile: "",
1365
- type: "text",
1366
- width: "150px"
1367
- })
1368
- ])
1369
- ]),
1370
- v("div", Do, [
1371
- z(t.$slots, "secondary-title", {}, () => [
1372
- o(ot, {
1373
- height: "18px",
1374
- tile: "",
1375
- type: "heading",
1376
- width: "150px"
1377
- })
1378
- ])
1379
- ])
1380
- ]),
1381
- _: 3
1382
- })
1383
- ]),
1384
- _: 3
1385
- }),
1386
- z(t.$slots, "hotel-rooms", {}, () => [
1387
- v("div", qo, [
1388
- (i(), f(B, null, Z(2, (m) => (i(), f(B, {
1389
- key: `item-skeleton-${m}`
1390
- }, [
1391
- v("div", null, [
1392
- o(V, { align: "center" }, {
1393
- default: a(() => [
1394
- o(O, { cols: "auto" }, {
1395
- default: a(() => [
1396
- o(d)
1397
- ]),
1398
- _: 1
1399
- })
1400
- ]),
1401
- _: 1
1402
- })
1403
- ]),
1404
- o(Q)
1405
- ], 64))), 64))
1406
- ])
1407
- ]),
1408
- o(V, null, {
1409
- default: a(() => [
1410
- o(O, null, {
1411
- default: a(() => [
1412
- z(t.$slots, "breakfast-option")
1413
- ]),
1414
- _: 3
1415
- })
1416
- ]),
1417
- _: 3
1418
- }),
1419
- o(V, { class: "mt-1" }, {
1420
- default: a(() => [
1421
- o(O, null, {
1422
- default: a(() => [
1423
- o(Q)
1424
- ]),
1425
- _: 1
1426
- })
1427
- ]),
1428
- _: 1
1429
- }),
1430
- o(V, { "no-gutters": "" }, {
1431
- default: a(() => [
1432
- o(O, null, {
1433
- default: a(() => [
1434
- z(t.$slots, "price-summary", {}, () => [
1435
- o(l)
1436
- ])
1437
- ]),
1438
- _: 3
1439
- })
1440
- ]),
1441
- _: 3
1442
- }),
1443
- o(V, null, {
1444
- default: a(() => [
1445
- o(O, { class: "py-0" }, {
1446
- default: a(() => [
1447
- z(t.$slots, "errors")
1448
- ]),
1449
- _: 3
1450
- })
1451
- ]),
1452
- _: 3
1453
- }),
1454
- o(V, null, {
1455
- default: a(() => [
1456
- o(O, { class: "pb-0" }, {
1457
- default: a(() => [
1458
- z(t.$slots, "button", {}, () => [
1459
- o(ot, {
1460
- height: "38px",
1461
- tile: "",
1462
- type: "heading",
1463
- width: "100%"
1464
- })
1465
- ])
1466
- ]),
1467
- _: 3
1468
- })
1469
- ]),
1470
- _: 3
1471
- }),
1472
- o(V, null, {
1473
- default: a(() => [
1474
- o(O, null, {
1475
- default: a(() => [
1476
- z(t.$slots, "cancellation-policies", {}, () => [
1477
- o(ot, {
1478
- tile: "",
1479
- type: "paragraph",
1480
- width: "100%"
1481
- })
1482
- ])
1483
- ]),
1484
- _: 3
1485
- })
1486
- ]),
1487
- _: 3
1488
- })
1489
- ]),
1490
- _: 3
1491
- })
1492
- ]),
1493
- _: 3
1494
- });
1495
- }
1496
- const Mo = /* @__PURE__ */ tt(Ao, [["render", zo]]), Qt = J({
1497
- components: {
1498
- BBasketSummaryLayout: Mo,
1499
- BBreakfastOptionBadge: Ft,
1500
- BBreakfastSwitch: xt,
1501
- BFormattedAmount: ft,
1502
- BHotelRoomsDetails: Gt,
1503
- BPriceSummary: Ct,
1504
- CancellationPoliciesList: Ke
1505
- },
1506
- emits: ["breakfast-change", "delete-room", "submit"],
1507
- name: "BBasketSummary",
1508
- props: {
1509
- adultCount: { required: !0, type: Number },
1510
- checkInDate: { required: !0, type: String },
1511
- checkOutDate: { required: !0, type: String },
1512
- children: { type: String },
1513
- currency: { required: !0, type: String },
1514
- hotelRoomOffer: { required: !0, type: Object },
1515
- hotelTimezone: { type: String },
1516
- isLoading: { type: Boolean },
1517
- isSubmitting: { type: Boolean },
1518
- isSuccessful: { type: Boolean }
1519
- },
1520
- setup(t, { emit: e }) {
1521
- var h, E;
1522
- const n = x(
1523
- ((h = t.hotelRoomOffer) == null ? void 0 : h.breakfastCount) && ((E = t.hotelRoomOffer) == null ? void 0 : E.breakfastCount) > 0 || !1
1524
- ), s = b(
1525
- () => {
1526
- var g;
1527
- return (g = t.hotelRoomOffer) == null ? void 0 : g.breakfastOption;
1528
- }
1529
- ), r = b(
1530
- () => so(t.adultCount, t.children)
1531
- ), k = b(
1532
- () => t.hotelRoomOffer.breakfastOption === Pt.Included
1533
- ), d = b(
1534
- () => t.hotelRoomOffer.breakfastOption === Pt.Optional
1535
- ), l = b(
1536
- () => t.hotelRoomOffer.taxIncludedPrice - t.hotelRoomOffer.price > 0
1537
- ), m = b(() => !t.hotelRoomOffer || !t.checkOutDate || !t.checkInDate ? 0 : ht(t.checkOutDate).diff(ht(t.checkInDate), "day")), c = b(
1538
- () => {
1539
- var g;
1540
- return _t((g = t.hotelRoomOffer) == null ? void 0 : g.hotelRooms, "count");
1541
- }
1542
- ), P = b(
1543
- () => {
1544
- var g;
1545
- return Ze(
1546
- be({
1547
- bookingDatetime: ht().format(),
1548
- cancellationPolicies: (g = t.hotelRoomOffer) == null ? void 0 : g.cancellationPolicies,
1549
- checkInDate: t.checkInDate,
1550
- timezone: t.hotelTimezone
1551
- }),
1552
- Qe.Camel
1553
- );
1554
- }
1555
- ), A = b(
1556
- () => {
1557
- var g;
1558
- return _t(
1559
- (g = t.hotelRoomOffer) == null ? void 0 : g.hotelRooms,
1560
- (j) => j.count * j.occupancy
1561
- );
1562
- }
1563
- );
1564
- U(n, (g) => {
1565
- e("breakfast-change", g);
1566
- });
1567
- const { t: R } = X();
1568
- return {
1569
- addBreakfast: n,
1570
- breakfastOption: s,
1571
- guestCount: r,
1572
- isBreakfastIncluded: k,
1573
- isBreakfastOptionnal: d,
1574
- isTaxIncluded: l,
1575
- nightCount: m,
1576
- roomCount: c,
1577
- sanitizedCancellationPolicies: P,
1578
- t: R,
1579
- totalOccupancy: A
1580
- };
1581
- }
1582
- });
1583
- function qt(t) {
1584
- const e = t;
1585
- e.__i18n = e.__i18n || [], e.__i18n.push({
1586
- locale: "",
1587
- resource: {
1588
- "en-US": {
1589
- BBasketSummary: {
1590
- addBreakfast: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Add breakfast(s)" }, { t: 2, i: [{ t: 3, v: "Add " }, { t: 4, k: "n" }, { t: 3, v: " breakfast" }] }, { t: 2, i: [{ t: 3, v: "Add " }, { t: 4, k: "n" }, { t: 3, v: " breakfasts" }] }] } },
1591
- addBreakfastHTML: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Add breakfast(s)" }, { t: 2, i: [{ t: 3, v: "Add <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> breakfast" }] }, { t: 2, i: [{ t: 3, v: "Add <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> breakfasts" }] }] } },
1592
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Book Now" } },
1593
- breakfastIncluded: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Breakfast Included for " }, { t: 4, k: "value" }, { t: 3, v: " guest" }] }, { t: 2, i: [{ t: 3, v: "Breakfast Included for " }, { t: 4, k: "value" }, { t: 3, v: " guests" }] }] } },
1594
- includeBreakfast: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Add Breakfast:" } },
1595
- nightCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " night" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " nights" }] }] } },
1596
- noSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "You haven't selected any rooms yet" } },
1597
- occupancyWarning: { t: 0, b: { t: 2, i: [{ t: 3, v: "Your room selection does not accommodate " }, { t: 4, k: "guestCount" }, { t: 3, v: " guest(s) as per your request." }] } },
1598
- priceDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Price Details" } },
1599
- roomCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " room" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " rooms" }] }] } },
1600
- selectBreakfastCount: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Select breakfast count" } },
1601
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Your booking details" } },
1602
- totalOccupancy: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Your reservation is suitable for <b>" }, { t: 4, k: "n" }, { t: 3, v: " adult</b>" }] }, { t: 2, i: [{ t: 3, v: "Your reservation is suitable for <b>" }, { t: 4, k: "n" }, { t: 3, v: " adults</b>" }] }] } },
1603
- yourSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Your selection:" } }
1604
- }
1605
- },
1606
- "fr-FR": {
1607
- BBasketSummary: {
1608
- addBreakfast: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Ajouter des petits-déjeuners" }, { t: 2, i: [{ t: 3, v: "Ajouter " }, { t: 4, k: "n" }, { t: 3, v: " petit-déjeuner" }] }, { t: 2, i: [{ t: 3, v: "Ajouter " }, { t: 4, k: "n" }, { t: 3, v: " petits-déjeuners" }] }] } },
1609
- addBreakfastHTML: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Ajouter des petits-déjeuners" }, { t: 2, i: [{ t: 3, v: "Ajouter " }, { t: 4, k: "n" }, { t: 3, v: " petit-déjeuner" }] }, { t: 2, i: [{ t: 3, v: "Ajouter " }, { t: 4, k: "n" }, { t: 3, v: " petits-déjeuners" }] }] } },
1610
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Réserver" } },
1611
- breakfastIncluded: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Petit déjeuner inclus pour " }, { t: 4, k: "value" }, { t: 3, v: " personne" }] }, { t: 2, i: [{ t: 3, v: "Petit déjeuner inclus pour " }, { t: 4, k: "value" }, { t: 3, v: " personnes" }] }] } },
1612
- includeBreakfast: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ajouter le petit déjeuner :" } },
1613
- nightCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " nuit" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " nuits" }] }] } },
1614
- noSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Vous n'avez pas sélectionné de chambres" } },
1615
- occupancyWarning: { t: 0, b: { t: 2, i: [{ t: 3, v: "Votre sélection de chambre(s) ne permet pas de loger " }, { t: 4, k: "guestCount" }, { t: 3, v: " personnes(s) conformément à votre demande." }] } },
1616
- priceDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Détails sur le prix" } },
1617
- roomCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " hébergement" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " hébergements" }] }] } },
1618
- selectBreakfastCount: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sélectionnez le nombre de petits-déjeuners" } },
1619
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Vos informations de réservation" } },
1620
- totalOccupancy: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Votre réservation peut accueillir <b>" }, { t: 4, k: "n" }, { t: 3, v: " personne</b>" }] }, { t: 2, i: [{ t: 3, v: "Votre réservation peut accueillir <b>" }, { t: 4, k: "n" }, { t: 3, v: " personnes</b>" }] }] } },
1621
- yourSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Vous avez choisi :" } }
1622
- }
1623
- },
1624
- "de-DE": {
1625
- BBasketSummary: {
1626
- addBreakfast: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Frühstück hinzufügen" }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " Frühstück hinzufügen" }] }, { t: 2, i: [{ t: 4, k: "n" }, { t: 3, v: " Frühstücke hinzufügen" }] }] } },
1627
- addBreakfastHTML: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Frühstück hinzufügen" }, { t: 2, i: [{ t: 3, v: "<b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> Frühstück hinzufügen" }] }, { t: 2, i: [{ t: 3, v: "<b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> Frühstücke hinzufügen" }] }] } },
1628
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Jetzt buchen" } },
1629
- breakfastIncluded: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Frühstück für " }, { t: 4, k: "value" }, { t: 3, v: " Gast inbegriffen" }] }, { t: 2, i: [{ t: 3, v: "Frühstück für " }, { t: 4, k: "value" }, { t: 3, v: " Gäste inbegriffen" }] }] } },
1630
- includeBreakfast: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Frühstück hinzufügen:" } },
1631
- nightCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " Nacht" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " Nächte" }] }] } },
1632
- noSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sie haben noch keine Zimmer ausgewählt" } },
1633
- occupancyWarning: { t: 0, b: { t: 2, i: [{ t: 3, v: "Ihre Zimmerauswahl bietet nicht genügend Platz für " }, { t: 4, k: "guestCount" }, { t: 3, v: " Gast/Gäste gemäß Ihrer Anfrage." }] } },
1634
- priceDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preisdetails" } },
1635
- roomCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " Zimmer" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " Zimmer" }] }] } },
1636
- selectBreakfastCount: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Anzahl der Frühstücke auswählen" } },
1637
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ihre Buchungsdetails" } },
1638
- totalOccupancy: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Ihre Reservierung ist geeignet für <b>" }, { t: 4, k: "n" }, { t: 3, v: " Erwachsenen</b>" }] }, { t: 2, i: [{ t: 3, v: "Ihre Reservierung ist geeignet für <b>" }, { t: 4, k: "n" }, { t: 3, v: " Erwachsene</b>" }] }] } },
1639
- yourSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ihre Auswahl:" } }
1640
- }
1641
- },
1642
- "es-ES": {
1643
- BBasketSummary: {
1644
- addBreakfast: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Añadir desayuno(s)" }, { t: 2, i: [{ t: 3, v: "Añadir " }, { t: 4, k: "n" }, { t: 3, v: " desayuno" }] }, { t: 2, i: [{ t: 3, v: "Añadir " }, { t: 4, k: "n" }, { t: 3, v: " desayunos" }] }] } },
1645
- addBreakfastHTML: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Añadir desayuno(s)" }, { t: 2, i: [{ t: 3, v: "Añadir <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> desayuno" }] }, { t: 2, i: [{ t: 3, v: "Añadir <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> desayunos" }] }] } },
1646
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reservar ahora" } },
1647
- breakfastIncluded: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Desayuno incluido para " }, { t: 4, k: "value" }, { t: 3, v: " huésped" }] }, { t: 2, i: [{ t: 3, v: "Desayuno incluido para " }, { t: 4, k: "value" }, { t: 3, v: " huéspedes" }] }] } },
1648
- includeBreakfast: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Añadir desayuno:" } },
1649
- nightCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " noche" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " noches" }] }] } },
1650
- noSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aún no has seleccionado ninguna habitación" } },
1651
- occupancyWarning: { t: 0, b: { t: 2, i: [{ t: 3, v: "Su selección de habitación no admite " }, { t: 4, k: "guestCount" }, { t: 3, v: " huésped(es) según su solicitud." }] } },
1652
- priceDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Detalles del precio" } },
1653
- roomCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " habitación" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " habitaciones" }] }] } },
1654
- selectBreakfastCount: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Seleccionar número de desayunos" } },
1655
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Detalles de su reserva" } },
1656
- totalOccupancy: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Su reserva es adecuada para <b>" }, { t: 4, k: "n" }, { t: 3, v: " adulto</b>" }] }, { t: 2, i: [{ t: 3, v: "Su reserva es adecuada para <b>" }, { t: 4, k: "n" }, { t: 3, v: " adultos</b>" }] }] } },
1657
- yourSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Su selección:" } }
1658
- }
1659
- },
1660
- "it-IT": {
1661
- BBasketSummary: {
1662
- addBreakfast: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Aggiungi colazione/i" }, { t: 2, i: [{ t: 3, v: "Aggiungi " }, { t: 4, k: "n" }, { t: 3, v: " colazione" }] }, { t: 2, i: [{ t: 3, v: "Aggiungi " }, { t: 4, k: "n" }, { t: 3, v: " colazioni" }] }] } },
1663
- addBreakfastHTML: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Aggiungi colazione/i" }, { t: 2, i: [{ t: 3, v: "Aggiungi <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> colazione" }] }, { t: 2, i: [{ t: 3, v: "Aggiungi <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> colazioni" }] }] } },
1664
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prenota ora" } },
1665
- breakfastIncluded: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Colazione inclusa per " }, { t: 4, k: "value" }, { t: 3, v: " ospite" }] }, { t: 2, i: [{ t: 3, v: "Colazione inclusa per " }, { t: 4, k: "value" }, { t: 3, v: " ospiti" }] }] } },
1666
- includeBreakfast: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aggiungi colazione:" } },
1667
- nightCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " notte" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " notti" }] }] } },
1668
- noSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Non hai ancora selezionato nessuna camera" } },
1669
- occupancyWarning: { t: 0, b: { t: 2, i: [{ t: 3, v: "La tua selezione di camere non può ospitare " }, { t: 4, k: "guestCount" }, { t: 3, v: " ospite/i come da tua richiesta." }] } },
1670
- priceDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Dettagli prezzo" } },
1671
- roomCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " camera" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " camere" }] }] } },
1672
- selectBreakfastCount: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Seleziona il numero di colazioni" } },
1673
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Dettagli della tua prenotazione" } },
1674
- totalOccupancy: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "La tua prenotazione è adatta per <b>" }, { t: 4, k: "n" }, { t: 3, v: " adulto</b>" }] }, { t: 2, i: [{ t: 3, v: "La tua prenotazione è adatta per <b>" }, { t: 4, k: "n" }, { t: 3, v: " adulti</b>" }] }] } },
1675
- yourSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "La tua selezione:" } }
1676
- }
1677
- },
1678
- "nl-NL": {
1679
- BBasketSummary: {
1680
- addBreakfast: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Voeg ontbijt(en) toe" }, { t: 2, i: [{ t: 3, v: "Voeg " }, { t: 4, k: "n" }, { t: 3, v: " ontbijt toe" }] }, { t: 2, i: [{ t: 3, v: "Voeg " }, { t: 4, k: "n" }, { t: 3, v: " ontbijten toe" }] }] } },
1681
- addBreakfastHTML: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Voeg ontbijt(en) toe" }, { t: 2, i: [{ t: 3, v: "Voeg <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> ontbijt toe" }] }, { t: 2, i: [{ t: 3, v: "Voeg <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> ontbijten toe" }] }] } },
1682
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Boek nu" } },
1683
- breakfastIncluded: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Ontbijt inbegrepen voor " }, { t: 4, k: "value" }, { t: 3, v: " gast" }] }, { t: 2, i: [{ t: 3, v: "Ontbijt inbegrepen voor " }, { t: 4, k: "value" }, { t: 3, v: " gasten" }] }] } },
1684
- includeBreakfast: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Voeg ontbijt toe:" } },
1685
- nightCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " nacht" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " nachten" }] }] } },
1686
- noSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "U heeft nog geen kamers geselecteerd" } },
1687
- occupancyWarning: { t: 0, b: { t: 2, i: [{ t: 3, v: "Uw kamerselectie is niet geschikt voor " }, { t: 4, k: "guestCount" }, { t: 3, v: " gast(en) zoals aangegeven." }] } },
1688
- priceDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prijsdetails" } },
1689
- roomCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " kamer" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " kamers" }] }] } },
1690
- selectBreakfastCount: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Selecteer aantal ontbijten" } },
1691
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Uw boekingsgegevens" } },
1692
- totalOccupancy: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Uw reservering is geschikt voor <b>" }, { t: 4, k: "n" }, { t: 3, v: " volwassene</b>" }] }, { t: 2, i: [{ t: 3, v: "Uw reservering is geschikt voor <b>" }, { t: 4, k: "n" }, { t: 3, v: " volwassenen</b>" }] }] } },
1693
- yourSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Uw selectie:" } }
1694
- }
1695
- },
1696
- "pt-PT": {
1697
- BBasketSummary: {
1698
- addBreakfast: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Adicionar pequeno-almoço(s)" }, { t: 2, i: [{ t: 3, v: "Adicionar " }, { t: 4, k: "n" }, { t: 3, v: " pequeno-almoço" }] }, { t: 2, i: [{ t: 3, v: "Adicionar " }, { t: 4, k: "n" }, { t: 3, v: " pequenos-almoços" }] }] } },
1699
- addBreakfastHTML: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Adicionar pequeno-almoço(s)" }, { t: 2, i: [{ t: 3, v: "Adicionar <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> pequeno-almoço" }] }, { t: 2, i: [{ t: 3, v: "Adicionar <b>" }, { t: 4, k: "n" }, { t: 3, v: "</b> pequenos-almoços" }] }] } },
1700
- book: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reservar agora" } },
1701
- breakfastIncluded: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "Pequeno-almoço incluído para " }, { t: 4, k: "value" }, { t: 3, v: " hóspede" }] }, { t: 2, i: [{ t: 3, v: "Pequeno-almoço incluído para " }, { t: 4, k: "value" }, { t: 3, v: " hóspedes" }] }] } },
1702
- includeBreakfast: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Adicionar pequeno-almoço:" } },
1703
- nightCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " noite" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " noites" }] }] } },
1704
- noSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ainda não selecionou nenhum quarto" } },
1705
- occupancyWarning: { t: 0, b: { t: 2, i: [{ t: 3, v: "A sua seleção de quartos não acomoda " }, { t: 4, k: "guestCount" }, { t: 3, v: " hóspede(s) conforme o seu pedido." }] } },
1706
- priceDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Detalhes do preço" } },
1707
- roomCount: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " quarto" }] }, { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: " quartos" }] }] } },
1708
- selectBreakfastCount: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Selecionar número de pequenos-almoços" } },
1709
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Os seus detalhes de reserva" } },
1710
- totalOccupancy: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3, v: "A sua reserva é adequada para <b>" }, { t: 4, k: "n" }, { t: 3, v: " adulto</b>" }] }, { t: 2, i: [{ t: 3, v: "A sua reserva é adequada para <b>" }, { t: 4, k: "n" }, { t: 3, v: " adultos</b>" }] }] } },
1711
- yourSelection: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "A sua seleção:" } }
1712
- }
1713
- }
1714
- }
1715
- });
1716
- }
1717
- const No = { key: 0 }, Uo = ["innerHTML"], jo = { class: "font-weight-bold pb-2" }, Fo = { class: "mt-4 font-weight-bold" }, Go = { class: "text-caption mb-0 text-left font-weight-bold" }, Wo = { class: "text-caption" }, Yo = {
1718
- key: 0,
1719
- class: "text-caption pl-2"
1720
- }, xo = { class: "text-caption" }, Ko = { class: "text-caption font-weight-bold text-center my-0 text-red rounded" }, Zo = { key: 0 }, Qo = { key: 1 };
1721
- function Jo(t, e, n, s, r, k) {
1722
- const d = L("BBasketSummaryLayout"), l = L("BHotelRoomsDetails"), m = L("BBreakfastOptionBadge"), c = L("BBreakfastSwitch"), P = L("BFormattedAmount"), A = L("BPriceSummary"), R = L("CancellationPoliciesList");
1723
- return i(), f("div", null, [
1724
- t.isLoading ? (i(), S(jt, {
1725
- key: 0,
1726
- absolute: "",
1727
- class: "mx-n3",
1728
- scrim: "grey-lighten-4",
1729
- opacity: "0.75"
1730
- }, {
1731
- default: a(() => [
1732
- o(It, {
1733
- color: "primary",
1734
- indeterminate: "",
1735
- size: "64"
1736
- })
1737
- ]),
1738
- _: 1
1739
- })) : I("", !0),
1740
- t.hotelRoomOffer ? (i(), S(d, { key: "filled-up" }, {
1741
- title: a(() => [
1742
- v("span", null, C(t.t("BBasketSummary.title")), 1)
1743
- ]),
1744
- "adult-count": a(() => [
1745
- v("span", {
1746
- innerHTML: t.t("BBasketSummary.totalOccupancy", { n: t.totalOccupancy })
1747
- }, null, 8, Uo)
1748
- ]),
1749
- "secondary-title": a(() => [
1750
- v("span", jo, C(t.t("BBasketSummary.yourSelection")), 1)
1751
- ]),
1752
- "hotel-rooms": a(() => [
1753
- (i(!0), f(B, null, Z(t.hotelRoomOffer.hotelRooms, (h, E) => (i(), f("div", {
1754
- key: `room-${E}`
1755
- }, [
1756
- o(V, null, {
1757
- default: a(() => [
1758
- o(O, {
1759
- class: "d-flex justify-space-between",
1760
- cols: "12"
1761
- }, {
1762
- default: a(() => [
1763
- o(l, {
1764
- class: Rt({
1765
- "mt-n4": E >= 1
1766
- }),
1767
- "hotel-rooms": [h]
1768
- }, null, 8, ["class", "hotel-rooms"]),
1769
- o(nt, {
1770
- class: Rt({
1771
- "mt-n4": E >= 1
1772
- }),
1773
- color: "red",
1774
- icon: "",
1775
- variant: "text",
1776
- size: "small",
1777
- onClick: (g) => t.$emit("delete-room", h)
1778
- }, {
1779
- default: a(() => [
1780
- o(st, null, {
1781
- default: a(() => e[7] || (e[7] = [
1782
- T("fas fa-times")
1783
- ])),
1784
- _: 1,
1785
- __: [7]
1786
- })
1787
- ]),
1788
- _: 2
1789
- }, 1032, ["class", "onClick"])
1790
- ]),
1791
- _: 2
1792
- }, 1024)
1793
- ]),
1794
- _: 2
1795
- }, 1024)
1796
- ]))), 128))
1797
- ]),
1798
- "breakfast-option": a(() => [
1799
- t.breakfastOption ? (i(), f(B, { key: 0 }, [
1800
- o(V, { "no-gutters": "" }, {
1801
- default: a(() => [
1802
- o(O, null, {
1803
- default: a(() => [
1804
- o(m, {
1805
- "breakfast-count": t.hotelRoomOffer.breakfastCount,
1806
- "breakfast-option": t.hotelRoomOffer.breakfastCount && t.hotelRoomOffer.breakfastCount > 0 ? "INCLUDED" : t.breakfastOption,
1807
- class: "mr-n1"
1808
- }, null, 8, ["breakfast-count", "breakfast-option"])
1809
- ]),
1810
- _: 1
1811
- })
1812
- ]),
1813
- _: 1
1814
- }),
1815
- t.isBreakfastOptionnal ? (i(), S(V, {
1816
- key: 0,
1817
- class: "mt-2",
1818
- "no-gutters": ""
1819
- }, {
1820
- default: a(() => [
1821
- o(O, { class: "mb-2 mt-xl-0" }, {
1822
- default: a(() => [
1823
- o(c, {
1824
- modelValue: t.addBreakfast,
1825
- "onUpdate:modelValue": e[0] || (e[0] = (h) => t.addBreakfast = h),
1826
- loading: t.isLoading && "success",
1827
- price: t.hotelRoomOffer.breakfastUnitPrice
1828
- }, null, 8, ["modelValue", "loading", "price"])
1829
- ]),
1830
- _: 1
1831
- })
1832
- ]),
1833
- _: 1
1834
- })) : I("", !0)
1835
- ], 64)) : I("", !0)
1836
- ]),
1837
- "price-summary": a(() => [
1838
- v("p", Fo, C(t.t("BBasketSummary.priceDetails")), 1),
1839
- o(V, {
1840
- "no-gutters": "",
1841
- class: "mt-1"
1842
- }, {
1843
- default: a(() => [
1844
- o(O, null, {
1845
- default: a(() => [
1846
- v("p", Go, C(t.t("BBasketSummary.roomCount", {
1847
- n: t.roomCount,
1848
- value: t.roomCount
1849
- })) + " x " + C(t.t("BBasketSummary.nightCount", {
1850
- n: t.nightCount,
1851
- value: t.nightCount
1852
- })), 1)
1853
- ]),
1854
- _: 1
1855
- }),
1856
- o(O, { class: "text-right" }, {
1857
- default: a(() => [
1858
- v("span", Wo, [
1859
- o(P, {
1860
- amount: t.hotelRoomOffer.price
1861
- }, null, 8, ["amount"])
1862
- ])
1863
- ]),
1864
- _: 1
1865
- })
1866
- ]),
1867
- _: 1
1868
- }),
1869
- o(V, {
1870
- "no-gutters": "",
1871
- class: "mt-n2"
1872
- }, {
1873
- default: a(() => [
1874
- o(O, null, {
1875
- default: a(() => [
1876
- t.hotelRoomOffer.breakfastCount ? (i(), f("small", Yo, C(t.t("BBasketSummary.breakfastIncluded", {
1877
- n: t.hotelRoomOffer.breakfastCount,
1878
- value: t.hotelRoomOffer.breakfastCount
1879
- })), 1)) : I("", !0)
1880
- ]),
1881
- _: 1
1882
- })
1883
- ]),
1884
- _: 1
1885
- }),
1886
- t.hotelRoomOffer.taxIncludedPrice - t.hotelRoomOffer.price > 0 ? (i(), S(V, {
1887
- key: 0,
1888
- "no-gutters": "",
1889
- class: "mt-2 color-black"
1890
- }, {
1891
- default: a(() => [
1892
- o(O, null, {
1893
- default: a(() => e[8] || (e[8] = [
1894
- v("small", { class: "text-caption text-left font-weight-bold" }, " Taxes & fees ", -1)
1895
- ])),
1896
- _: 1,
1897
- __: [8]
1898
- }),
1899
- o(O, { class: "text-right" }, {
1900
- default: a(() => [
1901
- v("span", xo, [
1902
- o(P, {
1903
- amount: t.hotelRoomOffer.taxIncludedPrice - t.hotelRoomOffer.price
1904
- }, null, 8, ["amount"])
1905
- ])
1906
- ]),
1907
- _: 1
1908
- })
1909
- ]),
1910
- _: 1
1911
- })) : I("", !0),
1912
- o(V, { class: "mt-0" }, {
1913
- default: a(() => [
1914
- o(O, null, {
1915
- default: a(() => e[9] || (e[9] = [
1916
- v("b", null, " Total ", -1)
1917
- ])),
1918
- _: 1,
1919
- __: [9]
1920
- }),
1921
- o(O, null, {
1922
- default: a(() => [
1923
- o(A, {
1924
- "is-tax-included": t.isTaxIncluded,
1925
- "night-count": 0,
1926
- price: t.hotelRoomOffer.price,
1927
- "tax-included-price": t.hotelRoomOffer.taxIncludedPrice,
1928
- "room-count": t.roomCount
1929
- }, null, 8, ["is-tax-included", "price", "tax-included-price", "room-count"])
1930
- ]),
1931
- _: 1
1932
- })
1933
- ]),
1934
- _: 1
1935
- })
1936
- ]),
1937
- errors: a(() => [
1938
- t.totalOccupancy && t.totalOccupancy < t.guestCount ? (i(), S(Ue, {
1939
- key: 0,
1940
- class: "mb-0",
1941
- color: "red",
1942
- density: "compact",
1943
- variant: "outlined"
1944
- }, {
1945
- default: a(() => [
1946
- v("p", Ko, C(t.t("BBasketSummary.occupancyWarning", {
1947
- guestCount: t.guestCount
1948
- })), 1)
1949
- ]),
1950
- _: 1
1951
- })) : I("", !0)
1952
- ]),
1953
- button: a(() => [
1954
- o(nt, {
1955
- block: "",
1956
- class: "text-none font-weight-bold",
1957
- color: t.isSuccessful ? "success" : "primary",
1958
- disabled: !t.hotelRoomOffer,
1959
- loading: t.isSubmitting,
1960
- onClick: e[1] || (e[1] = (h) => t.$emit("submit"))
1961
- }, {
1962
- default: a(() => [
1963
- t.isSuccessful ? I("", !0) : (i(), f("span", Zo, C(t.t("BBasketSummary.book")), 1)),
1964
- gt(o(st, { class: "position-absolute" }, {
1965
- default: a(() => e[10] || (e[10] = [
1966
- T(" fas fa-check ")
1967
- ])),
1968
- _: 1,
1969
- __: [10]
1970
- }, 512), [
1971
- [yt, t.isSuccessful]
1972
- ])
1973
- ]),
1974
- _: 1
1975
- }, 8, ["color", "disabled", "loading"])
1976
- ]),
1977
- "cancellation-policies": a(() => [
1978
- t.hotelRoomOffer && t.hotelRoomOffer.cancellationPolicies.length ? (i(), S(R, {
1979
- key: 0,
1980
- "cancellation-policies": t.sanitizedCancellationPolicies,
1981
- "check-in-date": t.checkInDate,
1982
- class: "text-caption",
1983
- timezone: t.hotelTimezone
1984
- }, null, 8, ["cancellation-policies", "check-in-date", "timezone"])) : (i(), f("span", Qo))
1985
- ]),
1986
- _: 1
1987
- })) : (i(), S(d, { key: "empty" }, {
1988
- title: a(() => [
1989
- v("span", null, C(t.t("BBasketSummary.title")), 1)
1990
- ]),
1991
- "adult-count": a(() => [
1992
- T(C(t.t("BBasketSummary.noSelection")), 1)
1993
- ]),
1994
- "secondary-title": a(() => e[2] || (e[2] = [
1995
- v("span", null, null, -1)
1996
- ])),
1997
- "hotel-rooms": a(() => e[3] || (e[3] = [
1998
- v("span", null, null, -1)
1999
- ])),
2000
- "price-summary": a(() => e[4] || (e[4] = [
2001
- v("span", null, null, -1)
2002
- ])),
2003
- button: a(() => [
2004
- o(nt, {
2005
- block: "",
2006
- class: "text-none font-weight-bold",
2007
- disabled: ""
2008
- }, {
2009
- default: a(() => [
2010
- t.isSuccessful ? I("", !0) : (i(), f("span", No, C(t.t("BBasketSummary.book")), 1)),
2011
- gt(o(st, { class: "position-absolute" }, {
2012
- default: a(() => e[5] || (e[5] = [
2013
- T(" fas fa-check ")
2014
- ])),
2015
- _: 1,
2016
- __: [5]
2017
- }, 512), [
2018
- [yt, t.isSuccessful]
2019
- ])
2020
- ]),
2021
- _: 1
2022
- })
2023
- ]),
2024
- "cancellation-policies": a(() => e[6] || (e[6] = [
2025
- v("span", null, null, -1)
2026
- ])),
2027
- _: 1
2028
- }))
2029
- ]);
2030
- }
2031
- typeof qt == "function" && qt(Qt);
2032
- const Xo = /* @__PURE__ */ tt(Qt, [["render", Jo]]), ta = {
2033
- hotelId: {
2034
- required: !0,
2035
- type: String
2036
- }
2037
- }, ea = J({
2038
- components: {
2039
- BBasketSummary: Xo,
2040
- HotelRoomOfferItem: Zt,
2041
- HotelRoomOfferItemLayout: kt
2042
- },
2043
- computed: {
2044
- ...ke(pt, bt),
2045
- adultCount() {
2046
- var t;
2047
- return (t = this.hotelRoomOfferRequest) == null ? void 0 : t.adultCount;
2048
- },
2049
- currency() {
2050
- return window.RevolugoElements.config.currency;
2051
- },
2052
- hotelRoomOfferRequest() {
2053
- return this.$store.get(
2054
- "hotelRoomOfferRequest/hotelRoomOfferRequest",
2055
- this.hotelId
2056
- );
2057
- },
2058
- hotelRoomOffers() {
2059
- var t, e;
2060
- return ((e = (t = this.$store.get(
2061
- "hotelRoomOffers/hotelRoomOffers",
2062
- this.hotelId
2063
- )) == null ? void 0 : t.offers) == null ? void 0 : e.filter(
2064
- (n) => n.type === Ot.HotelRoom
2065
- )) || null;
2066
- },
2067
- hotelTimezone() {
2068
- return this.$store.get("hotelRoomOffers/hotelTimezone", this.hotelId);
2069
- }
2070
- },
2071
- data() {
2072
- return {
2073
- addBreakfast: !1,
2074
- basketContent: [],
2075
- isLoading: !1,
2076
- newCreatedPackage: void 0
2077
- };
2078
- },
2079
- methods: {
2080
- async createHotelRoomOfferPackage() {
2081
- var e;
2082
- this.isLoading = !0;
2083
- const t = this.basketContent.map((n) => ({
2084
- count: n.count,
2085
- hotelRoomOfferId: n.hotelRoomOfferId
2086
- })).filter((n) => n.count > 0);
2087
- try {
2088
- this.newCreatedPackage = await ((e = this.bookingApiClient) == null ? void 0 : e.hotelRoomOffers.create({
2089
- hotelRoomOffersCreateApi: {
2090
- addBreakfast: this.addBreakfast,
2091
- currency: this.currency,
2092
- hotelRoomOffers: t
2093
- }
2094
- }));
2095
- } catch (n) {
2096
- throw this.isLoading = !1, n;
2097
- }
2098
- this.isLoading = !1;
2099
- },
2100
- onBasketUpdate(t, e) {
2101
- const n = {
2102
- count: e,
2103
- hotelRoomId: t.hotelRooms[0].id,
2104
- hotelRoomOfferId: t.id
2105
- }, s = this.basketContent.findIndex(
2106
- (r) => r.hotelRoomOfferId === n.hotelRoomOfferId
2107
- );
2108
- s === -1 ? e === 0 ? [
2109
- ...this.basketContent.slice(0, s),
2110
- ...this.basketContent.slice(s + 1)
2111
- ] : this.basketContent.splice(s, 1) : this.basketContent.push(n);
2112
- },
2113
- onBreakfastChange(t) {
2114
- this.addBreakfast = t;
2115
- },
2116
- onDeleteRoom(t) {
2117
- const e = this.basketContent.findIndex(
2118
- (n) => n.hotelRoomId === t.id
2119
- );
2120
- this.basketContent[e].count = 0;
2121
- },
2122
- async onSubmit() {
2123
- var t;
2124
- (t = this.newCreatedPackage) != null && t.hotelRoomOffer.id && (this.isLoading = !0, await this.createBookingPolicy({
2125
- addBreakfast: this.addBreakfast,
2126
- hotelId: this.hotelId,
2127
- hotelRoomOfferId: this.newCreatedPackage.hotelRoomOffer.id
2128
- }), await this.createHotelRoomOfferPackage(), this.isLoading = !1);
2129
- }
2130
- },
2131
- mixins: [pe, Be()],
2132
- name: "HotelRoomOfferBasket",
2133
- props: ta,
2134
- setup() {
2135
- const { t } = X();
2136
- return {
2137
- t
2138
- };
2139
- },
2140
- watch: {
2141
- async addBreakfast(t, e) {
2142
- t !== e && await this.createHotelRoomOfferPackage();
2143
- },
2144
- basketContent: {
2145
- deep: !0,
2146
- handler(t) {
2147
- t.reduce(
2148
- (n, s) => n + s.count,
2149
- 0
2150
- ) === 0 ? this.newCreatedPackage = void 0 : this.createHotelRoomOfferPackage();
2151
- },
2152
- immediate: !1
2153
- },
2154
- hotelRoomOffers: {
2155
- handler(t) {
2156
- t && (this.basketContent = t.map((e) => ({
2157
- count: 0,
2158
- hotelRoomId: e.hotelRooms[0].id,
2159
- hotelRoomOfferId: e.id
2160
- })));
2161
- },
2162
- immediate: !0
2163
- }
2164
- }
2165
- });
2166
- function oa(t, e, n, s, r, k) {
2167
- const d = L("HotelRoomOfferItem"), l = L("BBasketSummary");
2168
- return i(), S(V, { "no-gutters": "" }, {
2169
- default: a(() => [
2170
- o(O, {
2171
- cols: "12",
2172
- md: "8"
2173
- }, {
2174
- default: a(() => [
2175
- t.hotelRoomOffers.length && t.basketContent.length ? (i(!0), f(B, { key: 0 }, Z(t.hotelRoomOffers, (m, c) => (i(), f(B, null, [
2176
- c > 0 ? (i(), S(Q, { key: 0 })) : I("", !0),
2177
- o(d, G({
2178
- modelValue: t.basketContent[c].count,
2179
- "onUpdate:modelValue": (P) => t.basketContent[c].count = P
2180
- }, { ref_for: !0 }, m), null, 16, ["modelValue", "onUpdate:modelValue"])
2181
- ], 64))), 256)) : I("", !0)
2182
- ]),
2183
- _: 1
2184
- }),
2185
- o(Q, {
2186
- class: "d-none d-md-block",
2187
- vertical: ""
2188
- }),
2189
- o(O, {
2190
- class: "mt-3",
2191
- cols: "12",
2192
- md: "4"
2193
- }, {
2194
- default: a(() => [
2195
- o(Q, { class: "d-block d-md-none my-2" }),
2196
- o(l, G(t.newCreatedPackage, {
2197
- "adult-count": t.adultCount,
2198
- "hotel-timezone": t.hotelTimezone,
2199
- "is-loading": t.isLoading,
2200
- "is-submitting": t.isFetchingBookingPolicies,
2201
- "is-successful": t.isBookingPoliciesSuccessful,
2202
- onBreakfastChange: t.onBreakfastChange,
2203
- onDeleteRoom: t.onDeleteRoom,
2204
- onSubmit: t.onSubmit
2205
- }), null, 16, ["adult-count", "hotel-timezone", "is-loading", "is-submitting", "is-successful", "onBreakfastChange", "onDeleteRoom", "onSubmit"])
2206
- ]),
2207
- _: 1
2208
- })
2209
- ]),
2210
- _: 1
2211
- });
2212
- }
2213
- const aa = /* @__PURE__ */ tt(ea, [["render", oa], ["__scopeId", "data-v-ee0e3c98"]]), sa = {
2214
- boilerplateSkeleton: {
2215
- type: Boolean
2216
- },
2217
- itemCount: {
2218
- default: 3,
2219
- type: Number
2220
- },
2221
- type: {
2222
- type: String
2223
- }
2224
- }, Jt = J({
2225
- components: {
2226
- BErrorOverlay: St,
2227
- HotelRoomOfferItemLayout: kt
2228
- },
2229
- name: "HotelRoomOfferListEmpty",
2230
- props: sa,
2231
- setup() {
2232
- const { t } = X();
2233
- return {
2234
- t
2235
- };
2236
- }
2237
- });
2238
- function zt(t) {
2239
- const e = t;
2240
- e.__i18n = e.__i18n || [], e.__i18n.push({
2241
- locale: "",
2242
- resource: {
2243
- "en-US": {
2244
- HotelRoomOfferListEmpty: {
2245
- internalError: {
2246
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Something went wrong..." } },
2247
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Please try again later" } }
2248
- },
2249
- missingHotelRoomOfferRequest: {
2250
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Choose your dates" } },
2251
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Please, select the check-in and check-out dates for your accommodation search" } }
2252
- },
2253
- noResults: {
2254
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "No accommodation offers found..." } },
2255
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Please try with different check-in / check-out dates" } }
2256
- }
2257
- }
2258
- },
2259
- "fr-FR": {
2260
- HotelRoomOfferListEmpty: {
2261
- internalError: {
2262
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Il y a eu un problème..." } },
2263
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Réessayez plus tard" } }
2264
- },
2265
- missingHotelRoomOfferRequest: {
2266
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Choisissez vos dates" } },
2267
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Veuillez sélectionner les dates souhaitées" } }
2268
- },
2269
- noResults: {
2270
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aucune offre d'hébergement trouvée..." } },
2271
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Veuillez essayer avec des dates différentes" } }
2272
- }
2273
- }
2274
- },
2275
- "de-DE": {
2276
- HotelRoomOfferListEmpty: {
2277
- internalError: {
2278
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Etwas ist schief gelaufen..." } },
2279
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Bitte versuchen Sie es später noch einmal" } }
2280
- },
2281
- missingHotelRoomOfferRequest: {
2282
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Wählen Sie Ihre Daten" } },
2283
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Bitte wählen Sie das Check-in- und Check-out-Datum für Ihre Unterkunftssuche aus" } }
2284
- },
2285
- noResults: {
2286
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Keine Unterkunftsangebote gefunden..." } },
2287
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Bitte versuchen Sie es mit anderen Check-in-/Check-out-Daten" } }
2288
- }
2289
- }
2290
- },
2291
- "es-ES": {
2292
- HotelRoomOfferListEmpty: {
2293
- internalError: {
2294
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Algo salió mal..." } },
2295
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Por favor, inténtalo de nuevo más tarde" } }
2296
- },
2297
- missingHotelRoomOfferRequest: {
2298
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Elige tus fechas" } },
2299
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Por favor, selecciona las fechas de entrada y salida para tu búsqueda de alojamiento" } }
2300
- },
2301
- noResults: {
2302
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "No se encontraron ofertas de alojamiento..." } },
2303
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Por favor, intenta con diferentes fechas de entrada y salida" } }
2304
- }
2305
- }
2306
- },
2307
- "it-IT": {
2308
- HotelRoomOfferListEmpty: {
2309
- internalError: {
2310
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Qualcosa è andato storto..." } },
2311
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Riprova più tardi" } }
2312
- },
2313
- missingHotelRoomOfferRequest: {
2314
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Scegli le tue date" } },
2315
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Seleziona le date di check-in e check-out per la tua ricerca di alloggio" } }
2316
- },
2317
- noResults: {
2318
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Nessuna offerta di alloggio trovata..." } },
2319
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prova con date di check-in/check-out diverse" } }
2320
- }
2321
- }
2322
- },
2323
- "nl-NL": {
2324
- HotelRoomOfferListEmpty: {
2325
- internalError: {
2326
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Er is iets misgegaan..." } },
2327
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Probeer het later opnieuw" } }
2328
- },
2329
- missingHotelRoomOfferRequest: {
2330
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Kies uw data" } },
2331
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Selecteer de in- en uitcheckdatum voor uw zoekopdracht naar een accommodatie" } }
2332
- },
2333
- noResults: {
2334
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Geen accommodatie aanbiedingen gevonden..." } },
2335
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Probeer het met andere in- / uitcheckdatums" } }
2336
- }
2337
- }
2338
- },
2339
- "pt-PT": {
2340
- HotelRoomOfferListEmpty: {
2341
- internalError: {
2342
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Algo correu mal..." } },
2343
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Por favor, tente novamente mais tarde" } }
2344
- },
2345
- missingHotelRoomOfferRequest: {
2346
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Escolha as suas datas" } },
2347
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Por favor, selecione as datas de check-in e check-out para a sua pesquisa de alojamento" } }
2348
- },
2349
- noResults: {
2350
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Não foram encontradas ofertas de alojamento..." } },
2351
- description: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Por favor, tente com datas de check-in/check-out diferentes" } }
2352
- }
2353
- }
2354
- }
2355
- }
2356
- });
2357
- }
2358
- function na(t, e, n, s, r, k) {
2359
- const d = L("HotelRoomOfferItemLayout"), l = L("BErrorOverlay");
2360
- return i(), f("div", null, [
2361
- (i(!0), f(B, null, Z(t.itemCount, (m) => (i(), f(B, { key: m }, [
2362
- m > 1 ? (i(), S(Q, { key: 0 })) : I("", !0),
2363
- o(d, {
2364
- boilerplate: t.boilerplateSkeleton,
2365
- class: Rt({ "mt-0": m === 1, "mb-0": m === 3 })
2366
- }, null, 8, ["boilerplate", "class"])
2367
- ], 64))), 128)),
2368
- t.type ? (i(), S(l, { key: 0 }, {
2369
- title: a(() => [
2370
- T(C(t.t(`HotelRoomOfferListEmpty.${t.type}.title`)), 1)
2371
- ]),
2372
- description: a(() => [
2373
- T(C(t.t(`HotelRoomOfferListEmpty.${t.type}.description`)), 1)
2374
- ]),
2375
- _: 1
2376
- })) : I("", !0)
2377
- ]);
2378
- }
2379
- typeof zt == "function" && zt(Jt);
2380
- const ia = /* @__PURE__ */ tt(Jt, [["render", na]]), la = {
2381
- OnlyMatchingRoomCount: !1
2382
- }, ra = {
2383
- ...Se,
2384
- features: {
2385
- default: () => la,
2386
- type: [Object, String]
2387
- },
2388
- limit: {
2389
- default: () => 0,
2390
- type: Number
2391
- }
2392
- }, Xt = J({
2393
- components: {
2394
- BErrorOverlay: St,
2395
- HotelRoomOfferBasket: aa,
2396
- HotelRoomOfferItem: Zt,
2397
- HotelRoomOfferItemLayout: kt,
2398
- HotelRoomOfferListEmpty: ia
2399
- },
2400
- name: "HotelRoomOfferList",
2401
- props: ra,
2402
- // eslint-disable-next-line max-lines-per-function
2403
- setup(t) {
2404
- const { t: e } = X(), n = bt(), s = pt(), r = x(null), k = x(["packageHotelRoomOffers", "hotelRoomHotelRoomOffers"]), d = ro({
2405
- fallbackValue: {
2406
- OnlyMatchingRoomCount: !1
2407
- },
2408
- prop: b(() => t.features)
2409
- }), l = (p) => p.hotelRooms.reduce((y, _) => y + _.count, 0), m = b(() => s.hotelRoomOfferRequest(t.hotelId)), c = b(
2410
- () => n.hotelRoomOffers(t.hotelId)
2411
- ), P = b(
2412
- () => {
2413
- var p, y;
2414
- return !!((p = m.value) != null && p.hasError || (y = c.value) != null && y.hasError);
2415
- }
2416
- ), A = b(
2417
- () => {
2418
- var p, y;
2419
- return ((y = (p = c.value) == null ? void 0 : p.offers) == null ? void 0 : y.filter(
2420
- (_) => _.type === Ot.HotelRoom
2421
- )) || [];
2422
- }
2423
- ), R = b(() => {
2424
- var y, _;
2425
- const p = (_ = (y = c.value) == null ? void 0 : y.offers) == null ? void 0 : _.filter(
2426
- (F) => F.type === Ot.Package
2427
- ).filter((F) => {
2428
- var et, N;
2429
- return (et = d.value) != null && et.OnlyMatchingRoomCount ? l(F) === ((N = m.value) == null ? void 0 : N.roomCount) : !0;
2430
- });
2431
- return (p == null ? void 0 : p.slice(0, t.limit || p.length)) || [];
2432
- }), h = b(
2433
- () => {
2434
- var p, y;
2435
- return !!((p = c.value) != null && p.isPolling) && !!((y = R.value) != null && y.length);
2436
- }
2437
- ), E = b(
2438
- () => {
2439
- var p, y, _, F;
2440
- return !((p = m.value) != null && p.id) || (!!((y = m.value) != null && y.isFetching) || !!((_ = c.value) != null && _.isPolling)) && !((F = R.value) != null && F.length);
2441
- }
2442
- ), g = async ({
2443
- addBreakfast: p,
2444
- hotelId: y,
2445
- id: _
2446
- }) => {
2447
- await n.reifyHotelRoomOffer({
2448
- addBreakfast: p,
2449
- hotelId: y,
2450
- id: _
2451
- });
2452
- }, j = async (p) => {
2453
- var y;
2454
- if (!((y = m.value) != null && y.id)) {
2455
- n.resetHotelRoomOffers({
2456
- hotelId: t.hotelId
2457
- });
2458
- return;
2459
- }
2460
- await n.retrieveHotelRoomOffers({
2461
- hotelId: t.hotelId,
2462
- hotelRoomOfferRequestId: m.value.id,
2463
- inProgressHotelRoomOfferIds: p
2464
- });
2465
- };
2466
- async function W(p) {
2467
- await j([p]);
2468
- }
2469
- U(
2470
- () => {
2471
- var p;
2472
- return (p = m.value) == null ? void 0 : p.id;
2473
- },
2474
- async () => {
2475
- await j();
2476
- },
2477
- { immediate: !0 }
2478
- );
2479
- const { bookingApiClient: M, config: D } = ve();
2480
- U(
2481
- () => [M.value, D.value.currency, D.value.lang],
2482
- async () => {
2483
- await j();
2484
- },
2485
- { immediate: !0 }
2486
- );
2487
- const Y = ko({
2488
- adultCount: t.adultCount,
2489
- checkInDate: t.checkInDate,
2490
- checkOutDate: t.checkOutDate,
2491
- children: t.children,
2492
- hotelId: t.hotelId,
2493
- roomCount: t.roomCount,
2494
- sourceMarket: t.sourceMarket
2495
- });
2496
- return {
2497
- hasError: P,
2498
- hotelRoomHotelRoomOffers: A,
2499
- isLoading: h,
2500
- onBreakfastChange: g,
2501
- packageHotelRoomOffers: R,
2502
- showSkeleton: E,
2503
- t: e,
2504
- tab: r,
2505
- tabItems: k,
2506
- ...Y,
2507
- onBookingPolicyFailed: W
2508
- };
2509
- }
2510
- });
2511
- function Mt(t) {
2512
- const e = t;
2513
- e.__i18n = e.__i18n || [], e.__i18n.push({
2514
- locale: "",
2515
- resource: {
2516
- "en-US": {
2517
- HotelRoomOfferList: {
2518
- hotelRoomHotelRoomOffers: {
2519
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "All Available Rooms" } }
2520
- },
2521
- packageHotelRoomOffers: {
2522
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Recommended Offers" } }
2523
- }
2524
- }
2525
- },
2526
- "fr-FR": {
2527
- HotelRoomOfferList: {
2528
- hotelRoomHotelRoomOffers: {
2529
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Toutes Les Chambres Disponibles" } }
2530
- },
2531
- packageHotelRoomOffers: {
2532
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Offres recommandées" } }
2533
- }
2534
- }
2535
- },
2536
- "de-DE": {
2537
- HotelRoomOfferList: {
2538
- hotelRoomHotelRoomOffers: {
2539
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Alle verfügbaren Zimmer" } }
2540
- },
2541
- packageHotelRoomOffers: {
2542
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Empfohlene Angebote" } }
2543
- }
2544
- }
2545
- },
2546
- "es-ES": {
2547
- HotelRoomOfferList: {
2548
- hotelRoomHotelRoomOffers: {
2549
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Todas las habitaciones disponibles" } }
2550
- },
2551
- packageHotelRoomOffers: {
2552
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ofertas recomendadas" } }
2553
- }
2554
- }
2555
- },
2556
- "it-IT": {
2557
- HotelRoomOfferList: {
2558
- hotelRoomHotelRoomOffers: {
2559
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Tutte le camere disponibili" } }
2560
- },
2561
- packageHotelRoomOffers: {
2562
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Offerte consigliate" } }
2563
- }
2564
- }
2565
- },
2566
- "nl-NL": {
2567
- HotelRoomOfferList: {
2568
- hotelRoomHotelRoomOffers: {
2569
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Alle Beschikbare Kamers" } }
2570
- },
2571
- packageHotelRoomOffers: {
2572
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aanbevolen Aanbiedingen" } }
2573
- }
2574
- }
2575
- },
2576
- "pt-PT": {
2577
- HotelRoomOfferList: {
2578
- hotelRoomHotelRoomOffers: {
2579
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Todos os Quartos Disponíveis" } }
2580
- },
2581
- packageHotelRoomOffers: {
2582
- title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ofertas Recomendadas" } }
2583
- }
2584
- }
2585
- }
2586
- }
2587
- });
2588
- }
2589
- const wt = Symbol.for("vuetify:v-tabs"), ua = lt({
2590
- fixed: Boolean,
2591
- sliderColor: String,
2592
- hideSlider: Boolean,
2593
- direction: {
2594
- type: String,
2595
- default: "horizontal"
2596
- },
2597
- ...Nt(We({
2598
- selectedClass: "v-tab--selected",
2599
- variant: "text"
2600
- }), ["active", "block", "flat", "location", "position", "symbol"])
2601
- }, "VTab"), te = it()({
2602
- name: "VTab",
2603
- props: ua(),
2604
- setup(t, e) {
2605
- let {
2606
- slots: n,
2607
- attrs: s
2608
- } = e;
2609
- const {
2610
- textColorClasses: r,
2611
- textColorStyles: k
2612
- } = Pe(t, "sliderColor"), d = x(), l = x(), m = b(() => t.direction === "horizontal"), c = b(() => {
2613
- var A, R;
2614
- return ((R = (A = d.value) == null ? void 0 : A.group) == null ? void 0 : R.isSelected.value) ?? !1;
2615
- });
2616
- function P(A) {
2617
- var h, E;
2618
- let {
2619
- value: R
2620
- } = A;
2621
- if (R) {
2622
- const g = (E = (h = d.value) == null ? void 0 : h.$el.parentElement) == null ? void 0 : E.querySelector(".v-tab--selected .v-tab__slider"), j = l.value;
2623
- if (!g || !j) return;
2624
- const W = getComputedStyle(g).color, M = g.getBoundingClientRect(), D = j.getBoundingClientRect(), Y = m.value ? "x" : "y", p = m.value ? "X" : "Y", y = m.value ? "right" : "bottom", _ = m.value ? "width" : "height", F = M[Y], et = D[Y], N = F > et ? M[y] - D[y] : M[Y] - D[Y], u = Math.sign(N) > 0 ? m.value ? "right" : "bottom" : Math.sign(N) < 0 ? m.value ? "left" : "top" : "center", w = (Math.abs(N) + (Math.sign(N) < 0 ? M[_] : D[_])) / Math.max(M[_], D[_]) || 0, q = M[_] / D[_] || 0, ut = 1.5;
2625
- _e(j, {
2626
- backgroundColor: [W, "currentcolor"],
2627
- transform: [`translate${p}(${N}px) scale${p}(${q})`, `translate${p}(${N / ut}px) scale${p}(${(w - 1) / ut + 1})`, "none"],
2628
- transformOrigin: Array(3).fill(u)
2629
- }, {
2630
- duration: 225,
2631
- easing: He
2632
- });
2633
- }
2634
- }
2635
- return rt(() => {
2636
- const A = nt.filterProps(t);
2637
- return o(nt, G({
2638
- symbol: wt,
2639
- ref: d,
2640
- class: ["v-tab", t.class],
2641
- style: t.style,
2642
- tabindex: c.value ? 0 : -1,
2643
- role: "tab",
2644
- "aria-selected": String(c.value),
2645
- active: !1
2646
- }, A, s, {
2647
- block: t.fixed,
2648
- maxWidth: t.fixed ? 300 : void 0,
2649
- "onGroup:selected": P
2650
- }), {
2651
- ...n,
2652
- default: () => {
2653
- var R;
2654
- return o(B, null, [((R = n.default) == null ? void 0 : R.call(n)) ?? t.text, !t.hideSlider && o("div", {
2655
- ref: l,
2656
- class: ["v-tab__slider", r.value],
2657
- style: k.value
2658
- }, null)]);
2659
- }
2660
- });
2661
- }), Je({}, d);
2662
- }
2663
- }), ca = lt({
2664
- ...Nt(Xe(), ["continuous", "nextIcon", "prevIcon", "showArrows", "touch", "mandatory"])
2665
- }, "VTabsWindow"), ee = it()({
2666
- name: "VTabsWindow",
2667
- props: ca(),
2668
- emits: {
2669
- "update:modelValue": (t) => !0
2670
- },
2671
- setup(t, e) {
2672
- let {
2673
- slots: n
2674
- } = e;
2675
- const s = he(wt, null), r = mt(t, "modelValue"), k = b({
2676
- get() {
2677
- var d;
2678
- return r.value != null || !s ? r.value : (d = s.items.value.find((l) => s.selected.value.includes(l.id))) == null ? void 0 : d.value;
2679
- },
2680
- set(d) {
2681
- r.value = d;
2682
- }
2683
- });
2684
- return rt(() => {
2685
- const d = Vt.filterProps(t);
2686
- return o(Vt, G({
2687
- _as: "VTabsWindow"
2688
- }, d, {
2689
- modelValue: k.value,
2690
- "onUpdate:modelValue": (l) => k.value = l,
2691
- class: ["v-tabs-window", t.class],
2692
- style: t.style,
2693
- mandatory: !1,
2694
- touch: !1
2695
- }), n);
2696
- }), {};
2697
- }
2698
- }), da = lt({
2699
- ...to()
2700
- }, "VTabsWindowItem"), Bt = it()({
2701
- name: "VTabsWindowItem",
2702
- props: da(),
2703
- setup(t, e) {
2704
- let {
2705
- slots: n
2706
- } = e;
2707
- return rt(() => {
2708
- const s = Et.filterProps(t);
2709
- return o(Et, G({
2710
- _as: "VTabsWindowItem"
2711
- }, s, {
2712
- class: ["v-tabs-window-item", t.class],
2713
- style: t.style
2714
- }), n);
2715
- }), {};
2716
- }
2717
- });
2718
- function ma(t) {
2719
- return t ? t.map((e) => Re(e) ? e : {
2720
- text: e,
2721
- value: e
2722
- }) : [];
2723
- }
2724
- const fa = lt({
2725
- alignTabs: {
2726
- type: String,
2727
- default: "start"
2728
- },
2729
- color: String,
2730
- fixedTabs: Boolean,
2731
- items: {
2732
- type: Array,
2733
- default: () => []
2734
- },
2735
- stacked: Boolean,
2736
- bgColor: String,
2737
- grow: Boolean,
2738
- height: {
2739
- type: [Number, String],
2740
- default: void 0
2741
- },
2742
- hideSlider: Boolean,
2743
- sliderColor: String,
2744
- ...eo({
2745
- mandatory: "force",
2746
- selectedClass: "v-tab-item--selected"
2747
- }),
2748
- ...qe(),
2749
- ...Ee()
2750
- }, "VTabs"), ba = it()({
2751
- name: "VTabs",
2752
- props: fa(),
2753
- emits: {
2754
- "update:modelValue": (t) => !0
2755
- },
2756
- setup(t, e) {
2757
- let {
2758
- attrs: n,
2759
- slots: s
2760
- } = e;
2761
- const r = mt(t, "modelValue"), k = b(() => ma(t.items)), {
2762
- densityClasses: d
2763
- } = De(t), {
2764
- backgroundColorClasses: l,
2765
- backgroundColorStyles: m
2766
- } = Te(at(t, "bgColor")), {
2767
- scopeId: c
2768
- } = Ve();
2769
- return ge({
2770
- VTab: {
2771
- color: at(t, "color"),
2772
- direction: at(t, "direction"),
2773
- stacked: at(t, "stacked"),
2774
- fixed: at(t, "fixedTabs"),
2775
- sliderColor: at(t, "sliderColor"),
2776
- hideSlider: at(t, "hideSlider")
2777
- }
2778
- }), rt(() => {
2779
- const P = At.filterProps(t), A = !!(s.window || t.items.length > 0);
2780
- return o(B, null, [o(At, G(P, {
2781
- modelValue: r.value,
2782
- "onUpdate:modelValue": (R) => r.value = R,
2783
- class: ["v-tabs", `v-tabs--${t.direction}`, `v-tabs--align-tabs-${t.alignTabs}`, {
2784
- "v-tabs--fixed-tabs": t.fixedTabs,
2785
- "v-tabs--grow": t.grow,
2786
- "v-tabs--stacked": t.stacked
2787
- }, d.value, l.value, t.class],
2788
- style: [{
2789
- "--v-tabs-height": ye(t.height)
2790
- }, m.value, t.style],
2791
- role: "tablist",
2792
- symbol: wt
2793
- }, c, n), {
2794
- default: () => {
2795
- var R;
2796
- return [((R = s.default) == null ? void 0 : R.call(s)) ?? k.value.map((h) => {
2797
- var E;
2798
- return ((E = s.tab) == null ? void 0 : E.call(s, {
2799
- item: h
2800
- })) ?? o(te, G(h, {
2801
- key: h.text,
2802
- value: h.value
2803
- }), {
2804
- default: s[`tab.${h.value}`] ? () => {
2805
- var g;
2806
- return (g = s[`tab.${h.value}`]) == null ? void 0 : g.call(s, {
2807
- item: h
2808
- });
2809
- } : void 0
2810
- });
2811
- })];
2812
- }
2813
- }), A && o(ee, G({
2814
- modelValue: r.value,
2815
- "onUpdate:modelValue": (R) => r.value = R,
2816
- key: "tabs-window"
2817
- }, c), {
2818
- default: () => {
2819
- var R;
2820
- return [k.value.map((h) => {
2821
- var E;
2822
- return ((E = s.item) == null ? void 0 : E.call(s, {
2823
- item: h
2824
- })) ?? o(Bt, {
2825
- value: h.value
2826
- }, {
2827
- default: () => {
2828
- var g;
2829
- return (g = s[`item.${h.value}`]) == null ? void 0 : g.call(s, {
2830
- item: h
2831
- });
2832
- }
2833
- });
2834
- }), (R = s.window) == null ? void 0 : R.call(s)];
2835
- }
2836
- })]);
2837
- }), {};
2838
- }
2839
- }), pa = { class: "bg-white" }, ka = { key: 0 };
2840
- function va(t, e, n, s, r, k) {
2841
- const d = L("HotelRoomOfferListEmpty"), l = L("HotelRoomOfferItem"), m = L("HotelRoomOfferBasket");
2842
- return i(), f("div", pa, [
2843
- t.isBookingApiClientDefined ? (i(), f(B, { key: 1 }, [
2844
- t.hasError ? (i(), S(d, {
2845
- key: "error",
2846
- boilerplate: "",
2847
- type: "internalError"
2848
- })) : t.showSkeleton ? (i(), S(d, { key: "skeleton" })) : t.packageHotelRoomOffers && t.packageHotelRoomOffers.length ? (i(), f(B, { key: 2 }, [
2849
- t.hotelRoomHotelRoomOffers.length ? I("", !0) : (i(), f("div", ka)),
2850
- t.isLoading ? (i(), S(Ge, {
2851
- key: 1,
2852
- class: "loader position-absolute",
2853
- color: "secondary",
2854
- indeterminate: ""
2855
- })) : I("", !0),
2856
- t.hotelRoomHotelRoomOffers && t.hotelRoomHotelRoomOffers.length ? (i(), f(B, { key: 2 }, [
2857
- o(ba, {
2858
- color: "primary",
2859
- density: "compact",
2860
- modelValue: t.tab,
2861
- "onUpdate:modelValue": e[0] || (e[0] = (c) => t.tab = c),
2862
- grow: ""
2863
- }, {
2864
- default: a(() => [
2865
- (i(!0), f(B, null, Z(t.tabItems, (c) => (i(), f(B, { key: c }, [
2866
- o(te, null, {
2867
- default: a(() => [
2868
- T(C(t.t(`HotelRoomOfferList.${c}.title`)), 1)
2869
- ]),
2870
- _: 2
2871
- }, 1024),
2872
- o(Q, { vertical: "" })
2873
- ], 64))), 128))
2874
- ]),
2875
- _: 1
2876
- }, 8, ["modelValue"]),
2877
- o(ee, {
2878
- modelValue: t.tab,
2879
- "onUpdate:modelValue": e[1] || (e[1] = (c) => t.tab = c),
2880
- class: "overflow-visible"
2881
- }, {
2882
- default: a(() => [
2883
- o(Bt, { class: "pt-3" }, {
2884
- default: a(() => [
2885
- (i(!0), f(B, null, Z(t.packageHotelRoomOffers, (c, P) => (i(), f(B, {
2886
- key: c.id
2887
- }, [
2888
- P > 0 ? (i(), S(Q, { key: 0 })) : I("", !0),
2889
- o(l, G({ ref_for: !0 }, c, {
2890
- onBreakfastChange: t.onBreakfastChange,
2891
- onBookingPolicyFailed: t.onBookingPolicyFailed
2892
- }), null, 16, ["onBreakfastChange", "onBookingPolicyFailed"])
2893
- ], 64))), 128))
2894
- ]),
2895
- _: 1
2896
- }),
2897
- o(Bt, { class: "pt-3 pb-5" }, {
2898
- default: a(() => [
2899
- o(m, { "hotel-id": t.hotelId }, null, 8, ["hotel-id"])
2900
- ]),
2901
- _: 1
2902
- })
2903
- ]),
2904
- _: 1
2905
- }, 8, ["modelValue"])
2906
- ], 64)) : (i(!0), f(B, { key: 3 }, Z(t.packageHotelRoomOffers, (c, P) => (i(), f(B, {
2907
- key: c.id
2908
- }, [
2909
- P > 0 ? (i(), S(Q, { key: 0 })) : I("", !0),
2910
- o(l, G({ ref_for: !0 }, c, {
2911
- onBreakfastChange: t.onBreakfastChange,
2912
- onBookingPolicyFailed: t.onBookingPolicyFailed
2913
- }), null, 16, ["onBreakfastChange", "onBookingPolicyFailed"])
2914
- ], 64))), 128))
2915
- ], 64)) : !t.packageHotelRoomOffers || !t.packageHotelRoomOffers.length ? (i(), S(d, {
2916
- key: "skeleton",
2917
- boilerplate: "",
2918
- type: "noResults"
2919
- })) : I("", !0)
2920
- ], 64)) : (i(), f(B, { key: 0 }, [], 64))
2921
- ]);
2922
- }
2923
- typeof Mt == "function" && Mt(Xt);
2924
- const Ua = /* @__PURE__ */ tt(Xt, [["render", va], ["__scopeId", "data-v-e71fbea6"]]);
2925
- ae("css/revolugo.hotelroomofferlist.DpLXIpgU.css");
2926
- export {
2927
- Ct as B,
2928
- Ua as H,
2929
- la as a,
2930
- ra as h,
2931
- no as r,
2932
- ro as u
2933
- };
2934
- //# sourceMappingURL=revolugo.hotelroomofferlist.M-3bowQa.min.js.map