@revolugo/elements 6.8.2-beta.21 → 6.8.2-beta.3

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 (123) hide show
  1. package/dist/css/revolugo.bhoteloffersfilterbar.1tLwDxXe.css +1 -0
  2. package/dist/css/revolugo.cancellationpoliciesbadge.CwgZ0PpX.css +1 -0
  3. package/dist/css/revolugo.index.DQ3Yd6SO.css +1 -0
  4. package/dist/css/revolugo.position.7fn84IQ5.css +1 -0
  5. package/dist/css/{revolugo.vslidegroup.ECiLCEE9.css → revolugo.vtooltip.O8QDYs1J.css} +1 -1
  6. package/dist/index.es.min.js +950 -955
  7. package/dist/index.es.min.js.map +1 -1
  8. package/dist/index.min.js +6 -6
  9. package/dist/index.min.js.map +1 -1
  10. package/dist/{revolugo.banktransferdetails.B6Q2z-jl.min.js → revolugo.banktransferdetails.B2ekby51.min.js} +9 -9
  11. package/dist/{revolugo.bdaterangepicker.DHh-hIJ0.min.js → revolugo.bdaterangepicker.CTD21Xkh.min.js} +11 -12
  12. package/dist/revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.DFgVEyLr.min.js +61 -0
  13. package/dist/revolugo.bhoteloffersfilterbar.C677v5nL.min.js +4689 -0
  14. package/dist/{revolugo.bhotelroomsdetails.BZMXBHqw.min.js → revolugo.bhotelroomsdetails.B_oUGHlu.min.js} +29 -30
  15. package/dist/{revolugo.bhotelsearchbar.Db7f-Myf.min.js → revolugo.bhotelsearchbar.CZZ7nrV4.min.js} +16 -16
  16. package/dist/{revolugo.bimagecarousel.BYWPajeF.min.js → revolugo.bimagecarousel.B0c13uQA.min.js} +44 -43
  17. package/dist/{revolugo.bookingdetailssidebar.BZUVjXtx.min.js → revolugo.bookingdetailssidebar.BGsPcF2v.min.js} +4 -4
  18. package/dist/{revolugo.bookingdetailssidebar.DpvhWAPj.min.js → revolugo.bookingdetailssidebar.Bs3FC4cg.min.js} +17 -17
  19. package/dist/{revolugo.bookingmanager.BT8ClOH2.min.js → revolugo.bookingmanager.CrXALVnI.min.js} +27 -27
  20. package/dist/{revolugo.bpricesummaryskeleton.BkE3yRYV.min.js → revolugo.bpricesummaryskeleton.8052AuK3.min.js} +4 -4
  21. package/dist/{revolugo.bstarrating.vue_vue_type_script_setup_true_lang.Br3WDc64.min.js → revolugo.bstarrating.vue_vue_type_script_setup_true_lang.DxGtfGu-.min.js} +8 -8
  22. package/dist/{revolugo.btag.BtFT2zF9.min.js → revolugo.btag.BWSoB2pK.min.js} +48 -50
  23. package/dist/revolugo.cancellationpoliciesbadge.B19weMQp.min.js +225 -0
  24. package/dist/revolugo.cancellationpoliciesbadge.CvnUmIqX.min.js +24 -0
  25. package/dist/revolugo.cancellationpolicieslist.BsjkpRRW.min.js +24 -0
  26. package/dist/{revolugo.cancellationpolicieslist.beDOpVS9.min.js → revolugo.cancellationpolicieslist.CurBz21i.min.js} +98 -70
  27. package/dist/{revolugo.case-transformers.C-f7xgel.min.js → revolugo.case-transformers.Oo4YCZeL.min.js} +6 -6
  28. package/dist/{revolugo.creditcardform.WRd9OuX1.min.js → revolugo.creditcardform.D35ZslX6.min.js} +4 -4
  29. package/dist/{revolugo.creditcardform.DqHW63kH.min.js → revolugo.creditcardform.Zgq-wqLH.min.js} +30 -30
  30. package/dist/{revolugo.creditcardpayment.BhHvBmry.min.js → revolugo.creditcardpayment.B3gGpWtL.min.js} +40 -42
  31. package/dist/{revolugo.creditcardpayment.BleH4opZ.min.js → revolugo.creditcardpayment.BpY-gafO.min.js} +4 -4
  32. package/dist/{revolugo.currencypicker.BtpR0LRe.min.js → revolugo.currencypicker.BgqkzwCT.min.js} +6 -6
  33. package/dist/{revolugo.currencypickerbtn.CZqCxE40.min.js → revolugo.currencypickerbtn.0iqvXHCJ.min.js} +17 -17
  34. package/dist/{revolugo.currencypickerbtn.Z1iqCIYs.min.js → revolugo.currencypickerbtn.CL_hu26M.min.js} +4 -4
  35. package/dist/{revolugo.defaultsdeep.fiInWebG.min.js → revolugo.defaultsdeep.CCR2LAoW.min.js} +29 -29
  36. package/dist/{revolugo.dialog-attach.yO2_AaMd.min.js → revolugo.dialog-attach.t7JTHXax.min.js} +2 -2
  37. package/dist/{revolugo.dialog-transition.DRmctE5w.min.js → revolugo.dialog-transition.Cot8jmLN.min.js} +5 -5
  38. package/dist/{revolugo.fastbookingflow.YMrVcoWr.min.js → revolugo.fastbookingflow.D5i5QakB.min.js} +4 -4
  39. package/dist/{revolugo.fullbookingflow.BuCdZ5tE.min.js → revolugo.fullbookingflow.B3R9Mi6f.min.js} +17 -17
  40. package/dist/{revolugo.hoteldescriptionview.C4lTU31k.min.js → revolugo.hoteldescriptionview.0om5ATP0.min.js} +4 -4
  41. package/dist/{revolugo.hoteldescriptionview.QB3gyKjW.min.js → revolugo.hoteldescriptionview.mr1BBzFi.min.js} +22 -23
  42. package/dist/{revolugo.hotelofferitemlayout.D88eNxZ3.min.js → revolugo.hotelofferitemlayout.CpMoPSRH.min.js} +6 -6
  43. package/dist/{revolugo.hotelofferlist.DVfyqIL_.min.js → revolugo.hotelofferlist.Bb-RsXSl.min.js} +4 -4
  44. package/dist/{revolugo.hotelofferlist.DKLNMTAo.min.js → revolugo.hotelofferlist.DRdkrfqu.min.js} +41 -40
  45. package/dist/{revolugo.hotelofferrequestcreator.CPPp4mk1.min.js → revolugo.hotelofferrequestcreator.f8olJbDW.min.js} +15 -16
  46. package/dist/revolugo.hoteloffersearchmenu.CLH7PdDD.min.js +46 -0
  47. package/dist/{revolugo.hoteloffersmap.C5CoYWJo.min.js → revolugo.hoteloffersmap.BjjBIhE9.min.js} +29 -29
  48. package/dist/{revolugo.hoteloffersmap.CVu6tY8O.min.js → revolugo.hoteloffersmap.BleGDfiI.min.js} +4 -4
  49. package/dist/{revolugo.hoteloffersview.B1ENOlfQ.min.js → revolugo.hoteloffersview.DyWUZJ-a.min.js} +42 -44
  50. package/dist/{revolugo.hoteloffersview.D3AJN4Ry.min.js → revolugo.hoteloffersview.M1WJegEH.min.js} +4 -4
  51. package/dist/{revolugo.hotelroomofferlist.BJpypDEo.min.js → revolugo.hotelroomofferlist.7bwYQgtE.min.js} +4 -4
  52. package/dist/{revolugo.hotelroomofferlist.B4vKtIAv.min.js → revolugo.hotelroomofferlist.Dr11epuR.min.js} +118 -119
  53. package/dist/{revolugo.hotelroomofferrequestcreator.props.BotOUSjS.min.js → revolugo.hotelroomofferrequestcreator.props.DUhujwnh.min.js} +2 -2
  54. package/dist/{revolugo.hotelroomoffersbookingflow.QXwuQxNt.min.js → revolugo.hotelroomoffersbookingflow.CKjKX7Kc.min.js} +54 -54
  55. package/dist/{revolugo.hotelroomoffersearchmenu.jKg3GHhh.min.js → revolugo.hotelroomoffersearchmenu.9fzTS1um.min.js} +7 -7
  56. package/dist/{revolugo.hotelroomoffersearchmenu.C6XT7O0N.min.js → revolugo.hotelroomoffersearchmenu.CT-i5FLW.min.js} +5 -5
  57. package/dist/{revolugo.hotelroomoffersview.B8EPiviG.min.js → revolugo.hotelroomoffersview.D2XUHzuN.min.js} +12 -12
  58. package/dist/{revolugo.hotelroomoffersview.Cml6dUd_.min.js → revolugo.hotelroomoffersview.iTt3yxQK.min.js} +4 -4
  59. package/dist/revolugo.index.CDltx0TU.min.js +1037 -0
  60. package/dist/revolugo.index.D5-DO18f.min.js +13 -0
  61. package/dist/{revolugo.index.wc.CiMMOIKO.min.js → revolugo.index.wc.CNPB8R3P.min.js} +15137 -14588
  62. package/dist/{revolugo.langpicker.BPdYOoqh.min.js → revolugo.langpicker.Df8h8dCw.min.js} +8 -8
  63. package/dist/{revolugo.langpickerbtn.toIVNsWj.min.js → revolugo.langpickerbtn.CIKlUC4J.min.js} +18 -19
  64. package/dist/{revolugo.langpickerbtn.B_lcAwH7.min.js → revolugo.langpickerbtn.CMIJmkLf.min.js} +4 -4
  65. package/dist/revolugo.min.js +1 -1
  66. package/dist/revolugo.position.BFDPs3FP.min.js +322 -0
  67. package/dist/{revolugo.prebookform.CnbytE-a.min.js → revolugo.prebookform.CDoJAivN.min.js} +4 -4
  68. package/dist/{revolugo.prebookform.mTgAZy4b.min.js → revolugo.prebookform.DhCYUQX2.min.js} +20 -20
  69. package/dist/{revolugo.roominglisteditor.BndDYwgL.min.js → revolugo.roominglisteditor.Dgtcs_-O.min.js} +11 -11
  70. package/dist/{revolugo.roominglisteditor.BqFx12Zl.min.js → revolugo.roominglisteditor.DvUmxfal.min.js} +4 -4
  71. package/dist/{revolugo.rounded.DLc3W4P_.min.js → revolugo.rounded.Dulx85qq.min.js} +2 -2
  72. package/dist/{revolugo.ssrboot.6UmkB4Il.min.js → revolugo.ssrboot.CTe1vadS.min.js} +2 -2
  73. package/dist/{revolugo.storybooktoolbar.lPXk2DH4.min.js → revolugo.storybooktoolbar.D182Uwjq.min.js} +106 -110
  74. package/dist/{revolugo.termsandconditions.C318-sIl.min.js → revolugo.termsandconditions.BSpX2Wim.min.js} +4 -4
  75. package/dist/{revolugo.termsandconditions.J28x2pls.min.js → revolugo.termsandconditions.DvldqW3w.min.js} +4 -4
  76. package/dist/revolugo.use-breakpoint-service.CEx6DRka.min.js +106 -0
  77. package/dist/{revolugo.vautocomplete.CfEbI9wx.min.js → revolugo.vautocomplete.DNxDeH8S.min.js} +103 -104
  78. package/dist/{revolugo.vbadge.qQh-Sv8w.min.js → revolugo.vbadge.DqpIeIfj.min.js} +14 -14
  79. package/dist/{revolugo.vbtn.CJwuvbOT.min.js → revolugo.vbtn.DsvUpshD.min.js} +65 -65
  80. package/dist/{revolugo.vcard.C8hpUlD-.min.js → revolugo.vcard.D1VwO30r.min.js} +35 -35
  81. package/dist/{revolugo.vcheckboxbtn.Z5a_U9n0.min.js → revolugo.vcheckboxbtn.BnbOlneq.min.js} +86 -86
  82. package/dist/{revolugo.vdialog.CEfREygA.min.js → revolugo.vdialog.rsw4VlQE.min.js} +25 -25
  83. package/dist/{revolugo.vdivider.DYybqMVI.min.js → revolugo.vdivider.Cq5RMY7t.min.js} +3 -3
  84. package/dist/{revolugo.vexpansionpanels.DqoxBVet.min.js → revolugo.vexpansionpanels.Cy-T-RLA.min.js} +40 -41
  85. package/dist/{revolugo.vform.Bh7TJUxd.min.js → revolugo.vform.CO-9AfdO.min.js} +4 -4
  86. package/dist/{revolugo.vinput.CWfOSxlF.min.js → revolugo.vinput.DEbpex7C.min.js} +73 -74
  87. package/dist/{revolugo.vlabel.D8JC3_DX.min.js → revolugo.vlabel.CBGmCU1C.min.js} +3 -3
  88. package/dist/{revolugo.vlist.cF1CYOBP.min.js → revolugo.vlist.BzvP4Aad.min.js} +115 -115
  89. package/dist/{revolugo.vmenu.B-rlxBKf.min.js → revolugo.vmenu.CIfiL0Ib.min.js} +24 -24
  90. package/dist/{revolugo.vselect.D17E4jI-.min.js → revolugo.vselect.CDieig82.min.js} +75 -76
  91. package/dist/{revolugo.vsheet.Div5lkVz.min.js → revolugo.vsheet.AqixfoVv.min.js} +10 -10
  92. package/dist/{revolugo.vskeletonloader.BMUIcPKO.min.js → revolugo.vskeletonloader.BUxAIEgD.min.js} +6 -6
  93. package/dist/{revolugo.vsnackbar.CgopB6r6.min.js → revolugo.vsnackbar.D5nwTNfd.min.js} +50 -49
  94. package/dist/revolugo.vspacer.Dv72HR_2.min.js +7 -0
  95. package/dist/{revolugo.vtextarea.BOKhw7Iq.min.js → revolugo.vtextarea.ByrL6SoY.min.js} +61 -61
  96. package/dist/{revolugo.vtextfield.Bf1HO6ah.min.js → revolugo.vtextfield.Br_yyf1t.min.js} +89 -88
  97. package/dist/{revolugo.vtoolbar.HAOPyr0Z.min.js → revolugo.vtoolbar.VPqzB-yU.min.js} +20 -20
  98. package/dist/revolugo.vtooltip.CI_oDjbQ.min.js +395 -0
  99. package/dist/{revolugo.vwindowitem.D5OeWBiN.min.js → revolugo.vwindowitem.IF1zLcjR.min.js} +34 -34
  100. package/dist/{revolugo.watch-list.BFsimHQY.min.js → revolugo.watch-list.BD0XoO1O.min.js} +2 -2
  101. package/dist/{revolugo.webcomponentwrapper.B9-sm0Ry.min.js → revolugo.webcomponentwrapper.Ci87Oown.min.js} +229 -229
  102. package/package.json +1 -1
  103. package/dist/css/revolugo.bhoteloffersfilterbar.PIn4y3L4.css +0 -1
  104. package/dist/css/revolugo.cancellationpoliciesbadge.CzUQOfdk.css +0 -1
  105. package/dist/css/revolugo.index.4hIg6F8J.css +0 -1
  106. package/dist/css/revolugo.vicon.eIkh7vVK.css +0 -1
  107. package/dist/css/revolugo.vtooltip.BHXJTQ4V.css +0 -1
  108. package/dist/revolugo._baseiteratee.B8DzmtV9.min.js +0 -247
  109. package/dist/revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.D63OH2He.min.js +0 -149
  110. package/dist/revolugo.bhoteloffersfilterbar.BicCxI8N.min.js +0 -4828
  111. package/dist/revolugo.cancellationpoliciesbadge.CJzm7bEA.min.js +0 -207
  112. package/dist/revolugo.cancellationpoliciesbadge.DlPBMRPR.min.js +0 -28
  113. package/dist/revolugo.cancellationpolicieslist.BUvqjY8w.min.js +0 -25
  114. package/dist/revolugo.cancellationpolicieslist.props.s6oWxIxG.min.js +0 -21
  115. package/dist/revolugo.hotel-offer-request.DA93cyGO.min.js +0 -98
  116. package/dist/revolugo.hoteloffersearchmenu.CrmGRkpc.min.js +0 -47
  117. package/dist/revolugo.index.CxQvHaJF.min.js +0 -1255
  118. package/dist/revolugo.pathify.CC3sbpgo.min.js +0 -58
  119. package/dist/revolugo.use-breakpoint-service.BRfZckKl.min.js +0 -52
  120. package/dist/revolugo.vicon.BnJaIb_1.min.js +0 -106
  121. package/dist/revolugo.vslidegroup.aRAg8EmQ.min.js +0 -333
  122. package/dist/revolugo.vspacer.DfGL0s5_.min.js +0 -7
  123. package/dist/revolugo.vtooltip.DWbHmmwC.min.js +0 -90
@@ -0,0 +1,4689 @@
1
+ import { an as ae, ao as da, ap as fa, d as ee, D as v, C as X, M as ke, R as Oe, u as ie, c as z, o as R, w as o, a, f as D, y as Z, z as ma, b as Ve, K as _t, r as oe, A as Pt, L as st, U as pa, m as ha, k as va, V as Ne, E as Ge, q as ba, e as x, g as W, t as I, J as we, H as Ye, I as It, j as ga, i as K, v as Re, F as re, aq as ya, x as fe, Y as $e, ar as wa, O as Ba, as as ka, N as Ma, at as Sa, n as Ra, h as Va, S as Et, au as Ca, av as $a, _ as Ce, aw as ot, ax as ze, ab as te, a5 as ce, a7 as Tt, ay as Je, ak as Fa, Z as _e, ai as Lt, az as Oa, a9 as ve, aA as _a, a2 as et, aB as rt, aC as nt, ac as Pa, aD as Dt, aE as Ia, aF as At, $ as ut, aG as G, ad as ge, aH as ye, aI as ct, aJ as dt, aK as ft, aL as Le, W as Ht, aM as Ea, aN as De, a8 as Ta, aO as La, aP as Da, aQ as Aa, aR as Ha, aS as Na } from "./revolugo.index.wc.CNPB8R3P.min.js";
2
+ import { C as za } from "./revolugo.cancellationpoliciesbadge.B19weMQp.min.js";
3
+ import { H as Ua } from "./revolugo.hotelofferitemlayout.CpMoPSRH.min.js";
4
+ import { B as xa, a as qa } from "./revolugo.bhotelroomsdetails.B_oUGHlu.min.js";
5
+ import { _ as le, B as ja, c as Ga, d as Ka, u as Pe, m as Ue, b as He, a as Q, V as he, e as Nt, f as Ya, g as Wa, t as Xa, h as Za, i as Qa, j as Ja, k as ei } from "./revolugo.webcomponentwrapper.Ci87Oown.min.js";
6
+ import { V as de, c as ti, R as ai, d as ii, m as li, e as si, f as oi, a as ri } from "./revolugo.index.CDltx0TU.min.js";
7
+ import { a as j, b as ni } from "./revolugo.vbtn.DsvUpshD.min.js";
8
+ import { B as ui, r as ci } from "./revolugo.hotelroomofferlist.Dr11epuR.min.js";
9
+ import { B as di, _ as fi } from "./revolugo.bstarrating.vue_vue_type_script_setup_true_lang.DxGtfGu-.min.js";
10
+ import { B as mt } from "./revolugo.btag.BWSoB2pK.min.js";
11
+ import { B as mi, H as pi } from "./revolugo.hoteldescriptionview.mr1BBzFi.min.js";
12
+ import { B as hi, m as vi, V as bi } from "./revolugo.bimagecarousel.B0c13uQA.min.js";
13
+ import { a as gi, p as zt, u as yi, g as ne } from "./revolugo.use-breakpoint-service.CEx6DRka.min.js";
14
+ import { H as wi } from "./revolugo.hotelroomoffersview.D2XUHzuN.min.js";
15
+ import { V as Ut } from "./revolugo.vtooltip.CI_oDjbQ.min.js";
16
+ import { V as Bi } from "./revolugo.vdialog.rsw4VlQE.min.js";
17
+ import { V as Ie, a as tt, b as at, c as ki } from "./revolugo.vcard.D1VwO30r.min.js";
18
+ import { V as Mi } from "./revolugo.vautocomplete.DNxDeH8S.min.js";
19
+ import { V as We, a as pt, b as Si } from "./revolugo.vlist.BzvP4Aad.min.js";
20
+ import { _ as xt } from "./revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.DFgVEyLr.min.js";
21
+ import { u as Ri, V as ht, m as Vi, a as Ci } from "./revolugo.vinput.DEbpex7C.min.js";
22
+ import { m as qt, a as jt, u as Gt, b as Kt, c as $i, d as Fi } from "./revolugo.rounded.Dulx85qq.min.js";
23
+ import { V as Oi } from "./revolugo.vlabel.CBGmCU1C.min.js";
24
+ import { V as vt } from "./revolugo.vtextfield.Br_yyf1t.min.js";
25
+ import { V as Ae } from "./revolugo.vdivider.Cq5RMY7t.min.js";
26
+ import { o as _i } from "./revolugo.index.D5-DO18f.min.js";
27
+ import { V as xe } from "./revolugo.vbadge.DqpIeIfj.min.js";
28
+ import { V as qe } from "./revolugo.vmenu.CIfiL0Ib.min.js";
29
+ import { d as Pi } from "./revolugo.dialog-attach.t7JTHXax.min.js";
30
+ import { u as Ii } from "./revolugo.ssrboot.CTe1vadS.min.js";
31
+ function ca(e) {
32
+ try {
33
+ if (typeof document < "u") {
34
+ window.REVOLUGO_ELEMENTS_STYLES = window.REVOLUGO_ELEMENTS_STYLES || {
35
+ sheets: [],
36
+ components: []
37
+ };
38
+ const t = import.meta.url, l = t.slice(0, t.lastIndexOf("/") + 1) + e;
39
+ window.REVOLUGO_ELEMENTS_STYLES.sheets.push(l);
40
+ for (const n of REVOLUGO_ELEMENTS_STYLES.components)
41
+ n(l);
42
+ if (e.indexOf("fonts") >= 0) {
43
+ const n = document.createElement("link");
44
+ n.rel = "stylesheet", linK.href = l, document.head.appendChild(n);
45
+ }
46
+ }
47
+ } catch (t) {
48
+ console.error("[revolugo-elements] ", t);
49
+ }
50
+ }
51
+ const zs = 50;
52
+ function Fe(e, t = ae.Info) {
53
+ switch (t) {
54
+ case ae.Trace: {
55
+ console.debug(`[TRACE] ${e}`);
56
+ break;
57
+ }
58
+ case ae.Debug: {
59
+ console.debug(`[DEBUG] ${e}`);
60
+ break;
61
+ }
62
+ case ae.Info: {
63
+ console.info(`[INFO] ${e}`);
64
+ break;
65
+ }
66
+ case ae.Warn: {
67
+ console.warn(`[WARN] ${e}`);
68
+ break;
69
+ }
70
+ case ae.Error: {
71
+ console.error(`[ERROR] ${e}`);
72
+ break;
73
+ }
74
+ default: {
75
+ console.log(`[${ae[t]}] ${e}`);
76
+ break;
77
+ }
78
+ }
79
+ }
80
+ const bt = {
81
+ trace: (e) => Fe(e, ae.Trace),
82
+ debug: (e) => Fe(e, ae.Debug),
83
+ info: (e) => Fe(e, ae.Info),
84
+ warn: (e) => Fe(e, ae.Warn),
85
+ error: (e) => Fe(e, ae.Error)
86
+ }, Ei = da("hotelImages", {
87
+ actions: {
88
+ async retrieveHotelImages({
89
+ hotelId: e,
90
+ locale: t
91
+ }) {
92
+ var l;
93
+ try {
94
+ if ((l = this.hotels[e]) != null && l.hotelImages)
95
+ return;
96
+ this.hotels[e] = { hotelImages: [], isLoading: !0 };
97
+ const n = fa();
98
+ if (!n)
99
+ return;
100
+ const i = await n.hotelImages.retrieve({
101
+ id: e,
102
+ lang: t
103
+ });
104
+ this.hotels[e] = { hotelImages: i, isLoading: !1 };
105
+ } catch (n) {
106
+ console.error("Cannot retrieve hotel images:", n);
107
+ }
108
+ }
109
+ },
110
+ getters: {
111
+ hotel: (e) => (t) => e.hotels[t]
112
+ },
113
+ state: () => ({
114
+ hotels: {}
115
+ })
116
+ });
117
+ function Ti(e) {
118
+ return /^([+-]?\d*\.?\d+([Ee][+-]?\d+)?|[+-]?\d*\.?\d+)(px|em|rem|vw|vh|vmin|vmax|%|cm|mm|in|pt|pc|ch|ex|q)$/u.test(
119
+ e
120
+ );
121
+ }
122
+ function Xe(e) {
123
+ if (e)
124
+ return typeof e == "number" ? `${e}px` : typeof e == "string" && (Ti(e) || e.startsWith("var")) ? e : Number.isNaN(e) ? "100%" : `${e}px`;
125
+ }
126
+ const Us = ee({
127
+ data() {
128
+ return {
129
+ parsedHeight: Xe(this.height)
130
+ };
131
+ },
132
+ watch: {
133
+ height: {
134
+ handler(e) {
135
+ this.parsedHeight = Xe(e);
136
+ },
137
+ immediate: !0
138
+ }
139
+ }
140
+ }), xs = (e) => v(() => Xe(e.value));
141
+ function Li(e) {
142
+ const t = gi(e), l = X(void 0);
143
+ return ke(e, () => {
144
+ Oe(() => {
145
+ var n;
146
+ l.value = ((n = t.value) == null ? void 0 : n.querySelector(".v-application")) ?? void 0;
147
+ });
148
+ }), {
149
+ $dialogAttach: l
150
+ };
151
+ }
152
+ var pe = /* @__PURE__ */ ((e) => (e.DialogFullscreen = "DialogFullscreen", e.HotelDescriptionViewDialog = "HotelDescriptionViewDialog", e.HotelRoomOfferList = "HotelRoomOfferList", e.HotelRoomOffersViewDialog = "HotelRoomOffersViewDialog", e.RoomsDetails = "RoomsDetails", e))(pe || {});
153
+ const Di = {
154
+ DialogFullscreen: !0,
155
+ HotelDescriptionViewDialog: !1,
156
+ HotelRoomOfferList: !1,
157
+ HotelRoomOffersViewDialog: !1,
158
+ RoomsDetails: !0
159
+ }, Ai = ee({
160
+ name: "BBtnCloseDialog",
161
+ setup() {
162
+ const { t: e } = ie();
163
+ return {
164
+ t: e
165
+ };
166
+ }
167
+ });
168
+ function Hi(e, t, l, n, i, r) {
169
+ return R(), z(j, Z(e.$attrs, {
170
+ class: "close-btn",
171
+ dark: "",
172
+ icon: "",
173
+ variant: "flat"
174
+ }), {
175
+ default: o(() => [
176
+ a(de, null, {
177
+ default: o(() => t[0] || (t[0] = [
178
+ D("fas fa-times")
179
+ ])),
180
+ _: 1,
181
+ __: [0]
182
+ })
183
+ ]),
184
+ _: 1
185
+ }, 16);
186
+ }
187
+ const Ni = /* @__PURE__ */ le(Ai, [["render", Hi]]), zi = {
188
+ adultCount: {
189
+ type: Number
190
+ },
191
+ checkInDate: {
192
+ type: String
193
+ },
194
+ compact: {
195
+ type: Boolean
196
+ },
197
+ features: {
198
+ default: () => Di,
199
+ type: Object
200
+ },
201
+ hideAction: {
202
+ default: !1,
203
+ type: Boolean
204
+ },
205
+ hotelOffer: {
206
+ required: !0,
207
+ type: Object
208
+ },
209
+ imageCountLimit: {
210
+ type: Number
211
+ },
212
+ isNoLongerAvail: {
213
+ default: !1,
214
+ type: Boolean
215
+ },
216
+ nightCount: {
217
+ type: Number
218
+ },
219
+ singleOffer: {
220
+ default: !1,
221
+ type: Boolean
222
+ }
223
+ }, Ui = {
224
+ clickable: {
225
+ default: !1,
226
+ type: Boolean
227
+ },
228
+ height: { type: String },
229
+ imageUrls: { required: !0, type: Array },
230
+ isLoading: { default: !1, type: Boolean },
231
+ lazy: {
232
+ default: 0,
233
+ type: Number
234
+ },
235
+ limit: {
236
+ default: 80,
237
+ type: Number
238
+ },
239
+ rounded: { type: Boolean },
240
+ showThumbnails: { type: Boolean },
241
+ slide: { type: Number },
242
+ thumbnailUrls: { type: Array },
243
+ thumbnailsHeight: {
244
+ type: [String, Number]
245
+ },
246
+ width: { type: String }
247
+ }, xi = {
248
+ ...ma(Ui, "imageUrls"),
249
+ hotelOffer: {
250
+ required: !0,
251
+ type: Object
252
+ },
253
+ imageCountLimit: {
254
+ type: Number
255
+ }
256
+ }, qi = ee({
257
+ components: {
258
+ BImageCarousel: hi
259
+ },
260
+ computed: {
261
+ ..._t(Ei),
262
+ carouselStyle() {
263
+ return {
264
+ borderBottomLeftRadius: "0px",
265
+ borderTopLeftRadius: "0px",
266
+ borderTopRightRadius: "0px"
267
+ };
268
+ },
269
+ hotel() {
270
+ return this.$store.get("hotelImages/hotel", this.hotelId);
271
+ },
272
+ hotelId() {
273
+ var e;
274
+ return (e = this.hotelOffer) == null ? void 0 : e.id;
275
+ },
276
+ imageUrls() {
277
+ return vi(this.hotel.hotelImages || []);
278
+ }
279
+ },
280
+ created() {
281
+ this.dispatch("hotelImages/retrieveHotelImages", {
282
+ hotelId: this.hotelId,
283
+ locale: this.$i18n.locale
284
+ });
285
+ },
286
+ mixins: [Ve, zt()],
287
+ name: "HotelOfferItem",
288
+ props: xi,
289
+ setup() {
290
+ const { t: e } = ie();
291
+ return {
292
+ t: e
293
+ };
294
+ }
295
+ });
296
+ function ji(e, t, l, n, i, r) {
297
+ var d, m, g;
298
+ const s = oe("BImageCarousel");
299
+ return R(), z(s, {
300
+ clickable: "",
301
+ height: e.height,
302
+ "image-urls": ((m = (d = e.imageUrls) == null ? void 0 : d.lowres) == null ? void 0 : m.slice(0, e.imageCountLimit)) || [],
303
+ "is-loading": !((g = e.hotel) != null && g.hotelImages) || e.hotel.isLoading,
304
+ lazy: 2,
305
+ limit: 15,
306
+ rounded: "",
307
+ style: Pt(e.carouselStyle),
308
+ width: e.width
309
+ }, null, 8, ["height", "image-urls", "is-loading", "style", "width"]);
310
+ }
311
+ const Gi = /* @__PURE__ */ le(qi, [["render", ji]]), Ki = {
312
+ key: 1,
313
+ class: "hotel-name text-subtitle-1 font-weight-black mr-1 text-primary cursor-pointer"
314
+ }, Yi = {
315
+ key: 0,
316
+ class: "text-grey-darken-2 text-caption mt-n1 d-block"
317
+ }, Wi = { key: 0 }, Xi = { class: "footer bg-white" }, Zi = {
318
+ class: "mt-2",
319
+ style: { cursor: "auto" }
320
+ }, Yt = /* @__PURE__ */ ee({
321
+ __name: "HotelOfferItem",
322
+ props: zi,
323
+ setup(e) {
324
+ const t = e, { t: l } = ie(), n = X(!1), i = X(!1), r = X(!1), s = st(), { adultCount: d, checkInDate: m, nightCount: g } = pa(
325
+ st()
326
+ ), c = v(
327
+ () => t.adultCount || d.value
328
+ ), b = v(
329
+ () => {
330
+ var f, E;
331
+ return ((E = (f = t.hotelOffer) == null ? void 0 : f.tags) == null ? void 0 : E.filter((S) => S.name.length > 30)) || [];
332
+ }
333
+ ), B = v(
334
+ () => t.checkInDate || m.value
335
+ ), u = v(() => {
336
+ if (t.features[pe.HotelRoomOffersViewDialog])
337
+ return "hotel-room-offers-view";
338
+ if (t.features[pe.HotelDescriptionViewDialog])
339
+ return "hotel-description-view";
340
+ }), h = v(
341
+ () => t.hotelOffer.distance ? Math.round(t.hotelOffer.distance / 1e3 * 100) / 100 : 0
342
+ ), p = v(() => t.hotelOffer.id), O = v(() => s.$state), y = v(
343
+ () => t.hotelOffer.hotelRoomOffers[0]
344
+ ), P = v(
345
+ () => ha({
346
+ bookingDatetime: va().format(),
347
+ cancellationPolicies: y.value.cancellationPolicies,
348
+ checkInDate: B.value,
349
+ timezone: t.hotelOffer.timezone
350
+ }) === 0
351
+ ), L = v(
352
+ () => t.nightCount || g.value
353
+ ), U = v(
354
+ () => {
355
+ var f;
356
+ return ((f = y.value) == null ? void 0 : f.hotelRooms.reduce(
357
+ (E, S) => E + (S.count || 0),
358
+ 0
359
+ )) || 0;
360
+ }
361
+ ), A = v(
362
+ () => {
363
+ var f, E;
364
+ return ((E = (f = t.hotelOffer) == null ? void 0 : f.tags) == null ? void 0 : E.filter((S) => S.name.length <= 30)) || [];
365
+ }
366
+ ), w = v(() => {
367
+ var f;
368
+ return (f = t.hotelOffer) == null ? void 0 : f.venues;
369
+ });
370
+ function $() {
371
+ window.RevolugoElements.eventBus.$emit(
372
+ Ge.HotelOffersItemClick,
373
+ t.hotelOffer
374
+ ), t.features[pe.HotelRoomOfferList] ? i.value ? (i.value = !1, setTimeout(() => {
375
+ n.value = !1;
376
+ }, 500)) : (n.value = !0, Oe(() => {
377
+ i.value = !0;
378
+ })) : (t.features[pe.HotelDescriptionViewDialog] || t.features[pe.HotelRoomOffersViewDialog]) && (r.value = !0);
379
+ }
380
+ function F() {
381
+ window.RevolugoElements.eventBus.$emit(
382
+ Ge.HotelOffersItemClick,
383
+ t.hotelOffer
384
+ ), r.value = !0, t.features[pe.HotelRoomOffersViewDialog] && (i.value = !1, n.value = !1);
385
+ }
386
+ Ne(() => {
387
+ t.features[pe.HotelRoomOffersViewDialog] && window.RevolugoElements.eventBus.$on(Ge.BookingPolicyCreated, () => {
388
+ setTimeout(() => {
389
+ r.value = !1;
390
+ }, 350);
391
+ });
392
+ });
393
+ const V = v(
394
+ () => {
395
+ var f;
396
+ return (f = y.value) == null ? void 0 : f.hotelRooms;
397
+ }
398
+ ), C = X(null), { $breakpointService: M } = yi(C), { $dialogAttach: k } = Li(C);
399
+ return (f, E) => (R(), z(Ua, {
400
+ ref_key: "root",
401
+ ref: C,
402
+ class: "hover-card",
403
+ compact: f.compact,
404
+ "is-rooms-details-visible": f.features.RoomsDetails,
405
+ "onClick:hotelOfferItem": $
406
+ }, ba({
407
+ "hotel-description-view-dialog": o(() => [
408
+ u.value ? (R(), z(Bi, {
409
+ key: 0,
410
+ modelValue: r.value,
411
+ "onUpdate:modelValue": E[1] || (E[1] = (S) => r.value = S),
412
+ attach: we(k),
413
+ class: "z-index-over-map",
414
+ fullscreen: f.features.DialogFullscreen,
415
+ light: "",
416
+ transition: "slide-x-reverse-transition"
417
+ }, {
418
+ default: o(() => [
419
+ a(Ga, { "at-root": "" }, {
420
+ default: o(() => [
421
+ a(Ie, {
422
+ class: fe(["overflow-y-auto", {
423
+ rounded: !f.features.DialogFullscreen,
424
+ "hotel-dialog-card": !f.features.DialogFullscreen
425
+ }]),
426
+ tile: ""
427
+ }, {
428
+ default: o(() => [
429
+ a(tt, null, {
430
+ default: o(() => [
431
+ u.value === "hotel-room-offers-view" ? (R(), z(wi, Z({
432
+ key: 0,
433
+ class: "pt-2 pa-md-6",
434
+ "hotel-id": p.value
435
+ }, O.value), null, 16, ["hotel-id"])) : u.value === "hotel-description-view" ? (R(), z(pi, Z({
436
+ key: 1,
437
+ class: "pt-2 pa-md-6",
438
+ "hotel-id": p.value
439
+ }, O.value), null, 16, ["hotel-id"])) : W("", !0)
440
+ ]),
441
+ _: 1
442
+ })
443
+ ]),
444
+ _: 1
445
+ }, 8, ["class"])
446
+ ]),
447
+ _: 1
448
+ }),
449
+ a(Ni, {
450
+ class: fe(f.features.DialogFullscreen ? "close-btn-fullscreen" : ""),
451
+ onClick: E[0] || (E[0] = (S) => r.value = !1)
452
+ }, null, 8, ["class"])
453
+ ]),
454
+ _: 1
455
+ }, 8, ["modelValue", "attach", "fullscreen"])) : W("", !0)
456
+ ]),
457
+ carousel: o(() => [
458
+ a(bi, {
459
+ height: f.features.RoomsDetails ? "175px" : "140px",
460
+ width: !we(M).xs && !f.compact ? "175px" : "100%"
461
+ }, {
462
+ default: o(() => [
463
+ a(Gi, {
464
+ height: f.features.RoomsDetails ? "175px" : "140px",
465
+ "hotel-offer": f.hotelOffer,
466
+ "image-count-limit": f.imageCountLimit,
467
+ width: !we(M).xs && !f.compact ? "175px" : "100%"
468
+ }, null, 8, ["height", "hotel-offer", "image-count-limit", "width"])
469
+ ]),
470
+ _: 1
471
+ }, 8, ["height", "width"])
472
+ ]),
473
+ heading: o(() => {
474
+ var S;
475
+ return [
476
+ u.value && f.features.HotelRoomOfferList ? (R(), z(Ut, {
477
+ key: 0,
478
+ attach: (S = f.$el) == null ? void 0 : S.parent,
479
+ location: "bottom"
480
+ }, {
481
+ activator: o(({ props: q }) => [
482
+ x("span", Z({ class: "hotel-name text-subtitle-1 font-weight-black mr-1 text-primary cursor-pointer" }, q, {
483
+ onClick: ya(F, ["stop"])
484
+ }), I(f.hotelOffer.name), 17)
485
+ ]),
486
+ default: o(() => [
487
+ D(I(we(l)("HotelOfferItem.openDialogTooltip", {
488
+ value: h.value
489
+ })) + " ", 1)
490
+ ]),
491
+ _: 1
492
+ }, 8, ["attach"])) : (R(), K("span", Ki, I(f.hotelOffer.name), 1)),
493
+ a(fi, {
494
+ count: f.hotelOffer.rating
495
+ }, null, 8, ["count"])
496
+ ];
497
+ }),
498
+ "review-rating": o(() => [
499
+ a(di, {
500
+ features: {
501
+ ReviewRatingDetails: !1
502
+ },
503
+ hotel: f.hotelOffer,
504
+ "tooltip-position": "bottom"
505
+ }, null, 8, ["hotel"])
506
+ ]),
507
+ distance: o(() => [
508
+ isNaN(h.value) ? W("", !0) : (R(), K("span", Yi, I(we(l)("HotelOfferItem.distance", { value: h.value })), 1)),
509
+ w.value ? (R(), z(mi, {
510
+ key: 1,
511
+ class: "my-n1",
512
+ "venue-travel-times": w.value
513
+ }, null, 8, ["venue-travel-times"])) : W("", !0)
514
+ ]),
515
+ "big-tags": o(() => [
516
+ (R(!0), K(re, null, Re(b.value, (S, q) => (R(), K("div", {
517
+ key: q,
518
+ class: "align-self-center d-inline-flex flex-wrap",
519
+ style: { gap: "0.3em" }
520
+ }, [
521
+ a(mt, {
522
+ color: S.bg,
523
+ "pre-icon": `fas fa-${S.faIcon}`,
524
+ "text-color": S.color,
525
+ "tooltip-content": S.description ?? void 0
526
+ }, {
527
+ default: o(() => [
528
+ D(I(S.name), 1)
529
+ ]),
530
+ _: 2
531
+ }, 1032, ["color", "pre-icon", "text-color", "tooltip-content"])
532
+ ]))), 128))
533
+ ]),
534
+ tags: o(() => [
535
+ (R(!0), K(re, null, Re(A.value, (S, q) => (R(), K("div", {
536
+ key: q,
537
+ class: "align-self-center d-inline-flex flex-wrap",
538
+ style: { gap: "0.3em" }
539
+ }, [
540
+ a(mt, {
541
+ color: S.bg,
542
+ "pre-icon": `fas fa-${S.faIcon}`,
543
+ "text-color": S.color,
544
+ "tooltip-content": S.description ?? void 0
545
+ }, {
546
+ default: o(() => [
547
+ D(I(S.name), 1)
548
+ ]),
549
+ _: 2
550
+ }, 1032, ["color", "pre-icon", "text-color", "tooltip-content"])
551
+ ]))), 128))
552
+ ]),
553
+ "breakfast-option-badge": o(() => [
554
+ y.value.breakfastOption === "INCLUDED" ? (R(), z(qa, {
555
+ key: 0,
556
+ "breakfast-option": y.value.breakfastOption
557
+ }, null, 8, ["breakfast-option"])) : W("", !0)
558
+ ]),
559
+ "package-details": o(() => [
560
+ a(xa, { "hotel-rooms": V.value }, null, 8, ["hotel-rooms"])
561
+ ]),
562
+ "price-summary": o(() => [
563
+ y.value.price ? (R(), K("div", Wi, [
564
+ a(ui, {
565
+ "adult-count": c.value,
566
+ "is-starting-price": "",
567
+ "is-tax-included": "",
568
+ "night-count": L.value,
569
+ price: y.value.price,
570
+ "room-count": U.value,
571
+ "round-mode": "round",
572
+ "tax-included-price": y.value.taxIncludedPrice
573
+ }, null, 8, ["adult-count", "night-count", "price", "room-count", "tax-included-price"])
574
+ ])) : W("", !0)
575
+ ]),
576
+ footer: o(() => [
577
+ x("div", Xi, [
578
+ f.isNoLongerAvail ? (R(), z(ja, { key: 0 }, {
579
+ title: o(() => [
580
+ D(I(we(l)("HotelOfferItem.noLongerAvailable")), 1)
581
+ ]),
582
+ _: 1
583
+ })) : n.value ? (R(), z(ti, { key: 1 }, {
584
+ default: o(() => [
585
+ Ye(x("div", Zi, [
586
+ n.value ? ga(f.$slots, "default", { key: 0 }, void 0, !0) : W("", !0)
587
+ ], 512), [
588
+ [It, f.features.HotelRoomOfferList && i.value]
589
+ ])
590
+ ]),
591
+ _: 3
592
+ })) : W("", !0)
593
+ ])
594
+ ]),
595
+ _: 2
596
+ }, [
597
+ P.value ? {
598
+ name: "cancellation-policies-badge",
599
+ fn: o(() => [
600
+ a(za, {
601
+ "cancellation-policies": y.value.cancellationPolicies,
602
+ "check-in-date": B.value,
603
+ timezone: f.hotelOffer.timezone
604
+ }, null, 8, ["cancellation-policies", "check-in-date", "timezone"])
605
+ ]),
606
+ key: "0"
607
+ } : void 0
608
+ ]), 1032, ["compact", "is-rooms-details-visible"]));
609
+ }
610
+ });
611
+ function gt(e) {
612
+ const t = e;
613
+ t.__i18n = t.__i18n || [], t.__i18n.push({
614
+ locale: "",
615
+ resource: {
616
+ "en-US": {
617
+ HotelOfferItem: {
618
+ distance: { t: 0, b: { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: "km from venue" }] } },
619
+ noLongerAvailable: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Hotel Offer No Longer available" } },
620
+ offerTag: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Best value" }, { t: 2, i: [{ t: 3 }], s: "Best value for your group" }] } },
621
+ openDialogTooltip: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Click here to open hotel details" } },
622
+ seeRooms: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "See availability" } },
623
+ showDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Show details" } }
624
+ }
625
+ },
626
+ "fr-FR": {
627
+ HotelOfferItem: {
628
+ distance: { t: 0, b: { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: "km du lieu" }] } },
629
+ noLongerAvailable: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cette offre n'est plus disponible" } },
630
+ offerTag: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Meilleur offre" }, { t: 2, i: [{ t: 3 }], s: "Meilleur offre pour votre groupe" }] } },
631
+ openDialogTooltip: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cliquer pour voir les détails" } },
632
+ seeRooms: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Voir les disponibilités" } },
633
+ showDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Afficher les détails" } }
634
+ }
635
+ },
636
+ "de-DE": {
637
+ HotelOfferItem: {
638
+ distance: { t: 0, b: { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: "km vom Veranstaltungsort" }] } },
639
+ noLongerAvailable: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Hotelangebot nicht mehr verfügbar" } },
640
+ offerTag: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Bestes Preis-Leistungs-Verhältnis" }, { t: 2, i: [{ t: 3 }], s: "Bestes Preis-Leistungs-Verhältnis für Ihre Gruppe" }] } },
641
+ openDialogTooltip: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Hier klicken, um Hoteldetails zu öffnen" } },
642
+ seeRooms: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Verfügbarkeit prüfen" } },
643
+ showDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Details anzeigen" } }
644
+ }
645
+ },
646
+ "es-ES": {
647
+ HotelOfferItem: {
648
+ distance: { t: 0, b: { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: "km del lugar" }] } },
649
+ noLongerAvailable: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "La oferta del hotel ya no está disponible" } },
650
+ offerTag: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Mejor precio" }, { t: 2, i: [{ t: 3 }], s: "Mejor precio para tu grupo" }] } },
651
+ openDialogTooltip: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Haz clic aquí para abrir los detalles del hotel" } },
652
+ seeRooms: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ver disponibilidad" } },
653
+ showDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Mostrar detalles" } }
654
+ }
655
+ },
656
+ "it-IT": {
657
+ HotelOfferItem: {
658
+ distance: { t: 0, b: { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: "km dalla sede" }] } },
659
+ noLongerAvailable: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Offerta Hotel non più disponibile" } },
660
+ offerTag: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Miglior rapporto qualità/prezzo" }, { t: 2, i: [{ t: 3 }], s: "Miglior rapporto qualità/prezzo per il tuo gruppo" }] } },
661
+ openDialogTooltip: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Clicca qui per aprire i dettagli dell'hotel" } },
662
+ seeRooms: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Vedi disponibilità" } },
663
+ showDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Mostra dettagli" } }
664
+ }
665
+ },
666
+ "nl-NL": {
667
+ HotelOfferItem: {
668
+ distance: { t: 0, b: { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: "km van de locatie" }] } },
669
+ noLongerAvailable: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Hotelaanbieding niet meer beschikbaar" } },
670
+ offerTag: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Beste waarde" }, { t: 2, i: [{ t: 3 }], s: "Beste waarde voor uw groep" }] } },
671
+ openDialogTooltip: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Klik hier om hoteldetails te openen" } },
672
+ seeRooms: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Bekijk beschikbaarheid" } },
673
+ showDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Toon details" } }
674
+ }
675
+ },
676
+ "pt-PT": {
677
+ HotelOfferItem: {
678
+ distance: { t: 0, b: { t: 2, i: [{ t: 4, k: "value" }, { t: 3, v: "km do local" }] } },
679
+ noLongerAvailable: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Oferta de Hotel Indisponível" } },
680
+ offerTag: { t: 0, b: { t: 1, c: [{ t: 2, i: [{ t: 3 }], s: "Melhor preço" }, { t: 2, i: [{ t: 3 }], s: "Melhor preço para o seu grupo" }] } },
681
+ openDialogTooltip: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Clique aqui para abrir os detalhes do hotel" } },
682
+ seeRooms: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ver disponibilidade" } },
683
+ showDetails: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Mostrar detalhes" } }
684
+ }
685
+ }
686
+ }
687
+ });
688
+ }
689
+ typeof gt == "function" && gt(Yt);
690
+ const qs = /* @__PURE__ */ le(Yt, [["__scopeId", "data-v-9620c51d"]]);
691
+ function Qi(e, t, l, n) {
692
+ function i(r) {
693
+ return r instanceof l ? r : new l(function(s) {
694
+ s(r);
695
+ });
696
+ }
697
+ return new (l || (l = Promise))(function(r, s) {
698
+ function d(c) {
699
+ try {
700
+ g(n.next(c));
701
+ } catch (b) {
702
+ s(b);
703
+ }
704
+ }
705
+ function m(c) {
706
+ try {
707
+ g(n.throw(c));
708
+ } catch (b) {
709
+ s(b);
710
+ }
711
+ }
712
+ function g(c) {
713
+ c.done ? r(c.value) : i(c.value).then(d, m);
714
+ }
715
+ g((n = n.apply(e, [])).next());
716
+ });
717
+ }
718
+ function Ji(e) {
719
+ return e && e.__esModule && Object.prototype.hasOwnProperty.call(e, "default") ? e.default : e;
720
+ }
721
+ var Ke, yt;
722
+ function el() {
723
+ return yt || (yt = 1, Ke = function e(t, l) {
724
+ if (t === l) return !0;
725
+ if (t && l && typeof t == "object" && typeof l == "object") {
726
+ if (t.constructor !== l.constructor) return !1;
727
+ var n, i, r;
728
+ if (Array.isArray(t)) {
729
+ if (n = t.length, n != l.length) return !1;
730
+ for (i = n; i-- !== 0; )
731
+ if (!e(t[i], l[i])) return !1;
732
+ return !0;
733
+ }
734
+ if (t.constructor === RegExp) return t.source === l.source && t.flags === l.flags;
735
+ if (t.valueOf !== Object.prototype.valueOf) return t.valueOf() === l.valueOf();
736
+ if (t.toString !== Object.prototype.toString) return t.toString() === l.toString();
737
+ if (r = Object.keys(t), n = r.length, n !== Object.keys(l).length) return !1;
738
+ for (i = n; i-- !== 0; )
739
+ if (!Object.prototype.hasOwnProperty.call(l, r[i])) return !1;
740
+ for (i = n; i-- !== 0; ) {
741
+ var s = r[i];
742
+ if (!e(t[s], l[s])) return !1;
743
+ }
744
+ return !0;
745
+ }
746
+ return t !== t && l !== l;
747
+ }), Ke;
748
+ }
749
+ var tl = el(), al = /* @__PURE__ */ Ji(tl);
750
+ const wt = "__googleMapsScriptId";
751
+ var Se;
752
+ (function(e) {
753
+ e[e.INITIALIZED = 0] = "INITIALIZED", e[e.LOADING = 1] = "LOADING", e[e.SUCCESS = 2] = "SUCCESS", e[e.FAILURE = 3] = "FAILURE";
754
+ })(Se || (Se = {}));
755
+ class Be {
756
+ /**
757
+ * Creates an instance of Loader using [[LoaderOptions]]. No defaults are set
758
+ * using this library, instead the defaults are set by the Google Maps
759
+ * JavaScript API server.
760
+ *
761
+ * ```
762
+ * const loader = Loader({apiKey, version: 'weekly', libraries: ['places']});
763
+ * ```
764
+ */
765
+ constructor({ apiKey: t, authReferrerPolicy: l, channel: n, client: i, id: r = wt, language: s, libraries: d = [], mapIds: m, nonce: g, region: c, retries: b = 3, url: B = "https://maps.googleapis.com/maps/api/js", version: u }) {
766
+ if (this.callbacks = [], this.done = !1, this.loading = !1, this.errors = [], this.apiKey = t, this.authReferrerPolicy = l, this.channel = n, this.client = i, this.id = r || wt, this.language = s, this.libraries = d, this.mapIds = m, this.nonce = g, this.region = c, this.retries = b, this.url = B, this.version = u, Be.instance) {
767
+ if (!al(this.options, Be.instance.options))
768
+ throw new Error(`Loader must not be called again with different options. ${JSON.stringify(this.options)} !== ${JSON.stringify(Be.instance.options)}`);
769
+ return Be.instance;
770
+ }
771
+ Be.instance = this;
772
+ }
773
+ get options() {
774
+ return {
775
+ version: this.version,
776
+ apiKey: this.apiKey,
777
+ channel: this.channel,
778
+ client: this.client,
779
+ id: this.id,
780
+ libraries: this.libraries,
781
+ language: this.language,
782
+ region: this.region,
783
+ mapIds: this.mapIds,
784
+ nonce: this.nonce,
785
+ url: this.url,
786
+ authReferrerPolicy: this.authReferrerPolicy
787
+ };
788
+ }
789
+ get status() {
790
+ return this.errors.length ? Se.FAILURE : this.done ? Se.SUCCESS : this.loading ? Se.LOADING : Se.INITIALIZED;
791
+ }
792
+ get failed() {
793
+ return this.done && !this.loading && this.errors.length >= this.retries + 1;
794
+ }
795
+ /**
796
+ * CreateUrl returns the Google Maps JavaScript API script url given the [[LoaderOptions]].
797
+ *
798
+ * @ignore
799
+ * @deprecated
800
+ */
801
+ createUrl() {
802
+ let t = this.url;
803
+ return t += "?callback=__googleMapsCallback&loading=async", this.apiKey && (t += `&key=${this.apiKey}`), this.channel && (t += `&channel=${this.channel}`), this.client && (t += `&client=${this.client}`), this.libraries.length > 0 && (t += `&libraries=${this.libraries.join(",")}`), this.language && (t += `&language=${this.language}`), this.region && (t += `&region=${this.region}`), this.version && (t += `&v=${this.version}`), this.mapIds && (t += `&map_ids=${this.mapIds.join(",")}`), this.authReferrerPolicy && (t += `&auth_referrer_policy=${this.authReferrerPolicy}`), t;
804
+ }
805
+ deleteScript() {
806
+ const t = document.getElementById(this.id);
807
+ t && t.remove();
808
+ }
809
+ /**
810
+ * Load the Google Maps JavaScript API script and return a Promise.
811
+ * @deprecated, use importLibrary() instead.
812
+ */
813
+ load() {
814
+ return this.loadPromise();
815
+ }
816
+ /**
817
+ * Load the Google Maps JavaScript API script and return a Promise.
818
+ *
819
+ * @ignore
820
+ * @deprecated, use importLibrary() instead.
821
+ */
822
+ loadPromise() {
823
+ return new Promise((t, l) => {
824
+ this.loadCallback((n) => {
825
+ n ? l(n.error) : t(window.google);
826
+ });
827
+ });
828
+ }
829
+ importLibrary(t) {
830
+ return this.execute(), google.maps.importLibrary(t);
831
+ }
832
+ /**
833
+ * Load the Google Maps JavaScript API script with a callback.
834
+ * @deprecated, use importLibrary() instead.
835
+ */
836
+ loadCallback(t) {
837
+ this.callbacks.push(t), this.execute();
838
+ }
839
+ /**
840
+ * Set the script on document.
841
+ */
842
+ setScript() {
843
+ var t, l;
844
+ if (document.getElementById(this.id)) {
845
+ this.callback();
846
+ return;
847
+ }
848
+ const n = {
849
+ key: this.apiKey,
850
+ channel: this.channel,
851
+ client: this.client,
852
+ libraries: this.libraries.length && this.libraries,
853
+ v: this.version,
854
+ mapIds: this.mapIds,
855
+ language: this.language,
856
+ region: this.region,
857
+ authReferrerPolicy: this.authReferrerPolicy
858
+ };
859
+ Object.keys(n).forEach(
860
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
861
+ (r) => !n[r] && delete n[r]
862
+ ), !((l = (t = window == null ? void 0 : window.google) === null || t === void 0 ? void 0 : t.maps) === null || l === void 0) && l.importLibrary || ((r) => {
863
+ let s, d, m, g = "The Google Maps JavaScript API", c = "google", b = "importLibrary", B = "__ib__", u = document, h = window;
864
+ h = h[c] || (h[c] = {});
865
+ const p = h.maps || (h.maps = {}), O = /* @__PURE__ */ new Set(), y = new URLSearchParams(), P = () => (
866
+ // @ts-ignore
867
+ s || (s = new Promise((L, U) => Qi(this, void 0, void 0, function* () {
868
+ var A;
869
+ yield d = u.createElement("script"), d.id = this.id, y.set("libraries", [...O] + "");
870
+ for (m in r)
871
+ y.set(m.replace(/[A-Z]/g, (w) => "_" + w[0].toLowerCase()), r[m]);
872
+ y.set("callback", c + ".maps." + B), d.src = this.url + "?" + y, p[B] = L, d.onerror = () => s = U(Error(g + " could not load.")), d.nonce = this.nonce || ((A = u.querySelector("script[nonce]")) === null || A === void 0 ? void 0 : A.nonce) || "", u.head.append(d);
873
+ })))
874
+ );
875
+ p[b] ? console.warn(g + " only loads once. Ignoring:", r) : p[b] = (L, ...U) => O.add(L) && P().then(() => p[b](L, ...U));
876
+ })(n);
877
+ const i = this.libraries.map((r) => this.importLibrary(r));
878
+ i.length || i.push(this.importLibrary("core")), Promise.all(i).then(() => this.callback(), (r) => {
879
+ const s = new ErrorEvent("error", { error: r });
880
+ this.loadErrorCallback(s);
881
+ });
882
+ }
883
+ /**
884
+ * Reset the loader state.
885
+ */
886
+ reset() {
887
+ this.deleteScript(), this.done = !1, this.loading = !1, this.errors = [], this.onerrorEvent = null;
888
+ }
889
+ resetIfRetryingFailed() {
890
+ this.failed && this.reset();
891
+ }
892
+ loadErrorCallback(t) {
893
+ if (this.errors.push(t), this.errors.length <= this.retries) {
894
+ const l = this.errors.length * Math.pow(2, this.errors.length);
895
+ console.error(`Failed to load Google Maps script, retrying in ${l} ms.`), setTimeout(() => {
896
+ this.deleteScript(), this.setScript();
897
+ }, l);
898
+ } else
899
+ this.onerrorEvent = t, this.callback();
900
+ }
901
+ callback() {
902
+ this.done = !0, this.loading = !1, this.callbacks.forEach((t) => {
903
+ t(this.onerrorEvent);
904
+ }), this.callbacks = [];
905
+ }
906
+ execute() {
907
+ if (this.resetIfRetryingFailed(), !this.loading)
908
+ if (this.done)
909
+ this.callback();
910
+ else {
911
+ if (window.google && window.google.maps && window.google.maps.version) {
912
+ console.warn("Google Maps already loaded outside @googlemaps/js-api-loader. This may result in undesirable behavior as options and script parameters may not match."), this.callback();
913
+ return;
914
+ }
915
+ this.loading = !0, this.setScript();
916
+ }
917
+ }
918
+ }
919
+ const il = (e) => {
920
+ switch (e) {
921
+ case $e.Production:
922
+ return "AIzaSyDipOKl8MebRQ5FFK_LgUn6YXiSW45KeEU";
923
+ case $e.Sandbox:
924
+ case $e.Staging:
925
+ case $e.CiCd:
926
+ case $e.Local:
927
+ default:
928
+ return "AIzaSyDrGcYsSX4u-28bi3vFlQ_D5Lz92GHupP8";
929
+ }
930
+ }, ll = {
931
+ isFlat: {
932
+ default: !0,
933
+ type: Boolean
934
+ },
935
+ locationContext: {
936
+ default: null,
937
+ type: Object
938
+ },
939
+ modelValue: {
940
+ default: null,
941
+ type: Object
942
+ },
943
+ outlined: {
944
+ default: !1,
945
+ type: Boolean
946
+ },
947
+ withDetails: {
948
+ default: !1,
949
+ type: Boolean
950
+ }
951
+ };
952
+ function sl(e) {
953
+ switch (e) {
954
+ case "accounting":
955
+ return "fas fa-calculator";
956
+ case "airport":
957
+ return "fas fa-plane";
958
+ case "amusement_park":
959
+ return "fas fa-funnel-dollar";
960
+ case "aquarium":
961
+ return "fas fa-fish";
962
+ case "art_gallery":
963
+ return "fas fa-paint-brush";
964
+ case "atm":
965
+ return "fas fa-money";
966
+ case "bakery":
967
+ return "fas fa-bread-slice";
968
+ case "bank":
969
+ return "fas fa-university";
970
+ case "bar":
971
+ return "fas fa-cocktail";
972
+ case "beauty_salon":
973
+ return "fas fa-cut";
974
+ case "bicycle_store":
975
+ return "fas fa-bicycle";
976
+ case "book_store":
977
+ return "fas fa-book";
978
+ case "bowling_alley":
979
+ return "fas fa-bowling-ball";
980
+ case "bus_station":
981
+ return "fas fa-bus";
982
+ case "cafe":
983
+ return "fas fa-coffee";
984
+ case "campground":
985
+ return "fas fa-campground";
986
+ case "car_dealer":
987
+ return "fas fa-car";
988
+ case "car_rental":
989
+ return "fas fa-car";
990
+ case "car_repair":
991
+ return "fas fa-wrench";
992
+ case "car_wash":
993
+ return "fas fa-car-wash";
994
+ case "casino":
995
+ return "fas fa-dice";
996
+ case "cemetery":
997
+ return "fas fa-cross";
998
+ case "church":
999
+ return "fas fa-church";
1000
+ case "city_hall":
1001
+ return "fas fa-city";
1002
+ case "clothing_store":
1003
+ return "fas fa-tshirt";
1004
+ case "convenience_store":
1005
+ return "fas fa-shopping-basket";
1006
+ case "courthouse":
1007
+ return "fas fa-balance-scale";
1008
+ case "dentist":
1009
+ return "fas fa-tooth";
1010
+ case "department_store":
1011
+ return "fas fa-store";
1012
+ case "doctor":
1013
+ return "fas fa-user-md";
1014
+ case "drugstore":
1015
+ return "fas fa-prescription-bottle-alt";
1016
+ case "electrician":
1017
+ return "fas fa-bolt";
1018
+ case "electronics_store":
1019
+ return "fas fa-tv";
1020
+ case "embassy":
1021
+ return "fas fa-flag";
1022
+ case "fire_station":
1023
+ return "fas fa-fire-extinguisher";
1024
+ case "florist":
1025
+ return "fas fa-seedling";
1026
+ case "funeral_home":
1027
+ return "fas fa-cross";
1028
+ case "furniture_store":
1029
+ return "fas fa-chair";
1030
+ case "gas_station":
1031
+ return "fas fa-gas-pump";
1032
+ case "gym":
1033
+ return "fas fa-dumbbell";
1034
+ case "hair_care":
1035
+ return "fas fa-cut";
1036
+ case "hardware_store":
1037
+ return "fas fa-tools";
1038
+ case "hindu_temple":
1039
+ return "fas fa-om";
1040
+ case "home_goods_store":
1041
+ return "fas fa-home";
1042
+ case "hospital":
1043
+ return "fas fa-hospital";
1044
+ case "insurance_agency":
1045
+ return "fas fa-shield-alt";
1046
+ case "jewelry_store":
1047
+ return "fas fa-gem";
1048
+ case "laundry":
1049
+ return "fas fa-tshirt";
1050
+ case "lawyer":
1051
+ return "fas fa-balance-scale";
1052
+ case "library":
1053
+ return "fas fa-book-open";
1054
+ case "light_rail_station":
1055
+ return "fas fa-train";
1056
+ case "liquor_store":
1057
+ return "fas fa-wine-bottle";
1058
+ case "local_government_office":
1059
+ return "fas fa-landmark";
1060
+ case "locksmith":
1061
+ return "fas fa-lock";
1062
+ case "lodging":
1063
+ return "fas fa-hotel";
1064
+ case "meal_delivery":
1065
+ return "fas fa-truck";
1066
+ case "meal_takeaway":
1067
+ return "fas fa-box";
1068
+ case "mosque":
1069
+ return "fas fa-mosque";
1070
+ case "movie_rental":
1071
+ return "fas fa-film";
1072
+ case "movie_theater":
1073
+ return "fas fa-film";
1074
+ case "moving_company":
1075
+ return "fas fa-truck";
1076
+ case "museum":
1077
+ return "fas fa-university";
1078
+ case "night_club":
1079
+ return "fas fa-glass-martini-alt";
1080
+ case "painter":
1081
+ return "fas fa-paint-roller";
1082
+ case "park":
1083
+ return "fas fa-tree";
1084
+ case "parking":
1085
+ return "fas fa-parking";
1086
+ case "pet_store":
1087
+ return "fas fa-paw";
1088
+ case "pharmacy":
1089
+ return "fas fa-prescription-bottle-alt";
1090
+ case "physiotherapist":
1091
+ return "fas fa-briefcase-medical";
1092
+ case "plumber":
1093
+ return "fas fa-wrench";
1094
+ case "police":
1095
+ return "fas fa-police";
1096
+ case "post_office":
1097
+ return "fas fa-mail-bulk";
1098
+ case "primary_school":
1099
+ return "fas fa-school";
1100
+ case "real_estate_agency":
1101
+ return "fas fa-building";
1102
+ case "restaurant":
1103
+ return "fas fa-utensils";
1104
+ case "roofing_contractor":
1105
+ return "fas fa-tools";
1106
+ case "rv_park":
1107
+ return "fas fa-campground";
1108
+ case "school":
1109
+ return "fas fa-graduation-cap";
1110
+ case "secondary_school":
1111
+ return "fas fa-school";
1112
+ case "shoe_store":
1113
+ return "fas fa-shoe-prints";
1114
+ case "shopping_mall":
1115
+ return "fas fa-shopping-mall";
1116
+ case "spa":
1117
+ return "fas fa-spa";
1118
+ case "stadium":
1119
+ return "fas fa-stadium";
1120
+ case "storage":
1121
+ return "fas fa-warehouse";
1122
+ case "store":
1123
+ return "fas fa-store";
1124
+ case "subway_station":
1125
+ return "fas fa-subway";
1126
+ case "supermarket":
1127
+ return "fas fa-shopping-cart";
1128
+ case "synagogue":
1129
+ return "fas fa-synagogue";
1130
+ case "taxi_stand":
1131
+ return "fas fa-taxi";
1132
+ case "tourist_attraction":
1133
+ return "fas fa-map-marked-alt";
1134
+ case "train_station":
1135
+ return "fas fa-train";
1136
+ case "transit_station":
1137
+ return "fas fa-bus";
1138
+ case "travel_agency":
1139
+ return "fas fa-map-marked-alt";
1140
+ case "university":
1141
+ return "fas fa-graduation-cap";
1142
+ case "veterinary_care":
1143
+ return "fas fa-paw";
1144
+ case "zoo":
1145
+ return "fas fa-paw";
1146
+ case void 0:
1147
+ default:
1148
+ return "fas fa-location-dot";
1149
+ }
1150
+ }
1151
+ const Wt = /* @__PURE__ */ ee({
1152
+ __name: "BSearchLocationInput",
1153
+ props: /* @__PURE__ */ wa(ll, {
1154
+ modelValue: {},
1155
+ modelModifiers: {}
1156
+ }),
1157
+ emits: ["update:modelValue"],
1158
+ setup(e) {
1159
+ function t(u) {
1160
+ return sl(u == null ? void 0 : u[0]);
1161
+ }
1162
+ const { t: l } = ie(), { config: n } = Ba(), i = ka(e, "modelValue"), r = X(""), s = X([]), d = X(!1), m = X(!1), g = v(() => il(n.value.apiEnvironment)), c = e;
1163
+ function b() {
1164
+ return new Promise((u) => {
1165
+ new Be({
1166
+ apiKey: g.value,
1167
+ libraries: ["places"],
1168
+ version: "quarterly"
1169
+ }).importLibrary("places").then(({ PlacesService: p }) => {
1170
+ const O = new p(document.createElement("div"));
1171
+ if (r.value || u([]), c.locationContext) {
1172
+ const y = {
1173
+ location: {
1174
+ lat: c.locationContext.latitude,
1175
+ lng: c.locationContext.longitude
1176
+ },
1177
+ query: r.value,
1178
+ radius: 1e4
1179
+ };
1180
+ O.textSearch(y, (P) => {
1181
+ u(P ?? []);
1182
+ });
1183
+ } else {
1184
+ const y = {
1185
+ fields: ["name", "geometry", "types", "formatted_address"],
1186
+ query: r.value
1187
+ };
1188
+ O.findPlaceFromQuery(y, (P) => {
1189
+ u(P ?? []);
1190
+ });
1191
+ }
1192
+ }).catch((p) => {
1193
+ bt.error(p), u([]);
1194
+ });
1195
+ });
1196
+ }
1197
+ const B = Ma(async () => {
1198
+ try {
1199
+ d.value = !0;
1200
+ const u = await b();
1201
+ return s.value = u.filter((h) => {
1202
+ var p;
1203
+ return !!((p = h.geometry) != null && p.location);
1204
+ }).map((h) => ({
1205
+ icon: t(h.types),
1206
+ latitude: h.geometry.location.lat(),
1207
+ longitude: h.geometry.location.lng(),
1208
+ raw: h,
1209
+ subtitle: h.formatted_address ?? "",
1210
+ title: Sa([h.name]).join(" ")
1211
+ })), d.value = !1, s.value;
1212
+ } catch (u) {
1213
+ return bt.error(u), d.value = !1, [];
1214
+ }
1215
+ }, 500);
1216
+ return ke(r, async (u) => {
1217
+ if (!u) {
1218
+ s.value = [];
1219
+ return;
1220
+ }
1221
+ await B();
1222
+ }), Ne(() => {
1223
+ Oe(() => {
1224
+ var u, h;
1225
+ r.value = ((h = (u = i.value) == null ? void 0 : u.raw) == null ? void 0 : h.name) || "";
1226
+ }).catch((u) => {
1227
+ console.error(u);
1228
+ });
1229
+ }), (u, h) => (R(), z(Mi, {
1230
+ class: fe(["search-location-input", { focused: m.value }]),
1231
+ density: "compact",
1232
+ flat: u.isFlat,
1233
+ "hide-details": !u.withDetails,
1234
+ "hide-no-data": "",
1235
+ "item-title": "title",
1236
+ items: s.value,
1237
+ placeholder: we(l)("BSearchLocationInput.placeholder"),
1238
+ loading: d.value,
1239
+ "no-filter": "",
1240
+ outlined: u.outlined,
1241
+ "return-object": "",
1242
+ modelValue: i.value,
1243
+ "onUpdate:modelValue": h[0] || (h[0] = (p) => i.value = p),
1244
+ search: r.value,
1245
+ "onUpdate:search": h[1] || (h[1] = (p) => r.value = p),
1246
+ focused: m.value,
1247
+ "onUpdate:focused": h[2] || (h[2] = (p) => m.value = p),
1248
+ variant: u.outlined ? void 0 : "solo",
1249
+ color: "primary",
1250
+ "menu-props": {
1251
+ contentClass: "elevation-1"
1252
+ },
1253
+ "list-props": {
1254
+ elevation: 0,
1255
+ class: "mt-1"
1256
+ }
1257
+ }, {
1258
+ "prepend-inner": o(() => [
1259
+ a(de, { size: "15" }, {
1260
+ default: o(() => h[3] || (h[3] = [
1261
+ D("fas fa-solid fa-magnifying-glass")
1262
+ ])),
1263
+ _: 1,
1264
+ __: [3]
1265
+ })
1266
+ ]),
1267
+ item: o(({ item: p, props: O }) => [
1268
+ a(We, Ra(Va(O)), {
1269
+ prepend: o(() => [
1270
+ a(de, {
1271
+ color: "primary",
1272
+ size: "25"
1273
+ }, {
1274
+ default: o(() => [
1275
+ D(I(p.raw.icon), 1)
1276
+ ]),
1277
+ _: 2
1278
+ }, 1024)
1279
+ ]),
1280
+ _: 2
1281
+ }, 1040)
1282
+ ]),
1283
+ _: 1
1284
+ }, 8, ["flat", "hide-details", "items", "placeholder", "loading", "outlined", "modelValue", "search", "focused", "variant", "class"]));
1285
+ }
1286
+ });
1287
+ function Bt(e) {
1288
+ const t = e;
1289
+ t.__i18n = t.__i18n || [], t.__i18n.push({
1290
+ locale: "",
1291
+ resource: {
1292
+ "en-US": {
1293
+ BSearchLocationInput: {
1294
+ label: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Location" } },
1295
+ placeholder: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Search for a location" } },
1296
+ noDataText: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "No locations found" } }
1297
+ }
1298
+ },
1299
+ "fr-FR": {
1300
+ BSearchLocationInput: {
1301
+ label: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Adresse" } },
1302
+ placeholder: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Entrer une adresse" } },
1303
+ noDataText: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aucun résultat trouvé" } }
1304
+ }
1305
+ },
1306
+ "de-DE": {
1307
+ BSearchLocationInput: {
1308
+ label: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ort" } },
1309
+ placeholder: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Suche nach einem Ort" } },
1310
+ noDataText: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Keine Orte gefunden" } }
1311
+ }
1312
+ },
1313
+ "es-ES": {
1314
+ BSearchLocationInput: {
1315
+ label: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ubicación" } },
1316
+ placeholder: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Buscar una ubicación" } },
1317
+ noDataText: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "No se encontraron ubicaciones" } }
1318
+ }
1319
+ },
1320
+ "it-IT": {
1321
+ BSearchLocationInput: {
1322
+ label: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Luogo" } },
1323
+ placeholder: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cerca una località" } },
1324
+ noDataText: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Nessuna località trovata" } }
1325
+ }
1326
+ },
1327
+ "nl-NL": {
1328
+ BSearchLocationInput: {
1329
+ label: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Locatie" } },
1330
+ placeholder: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Zoek naar een locatie" } },
1331
+ noDataText: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Geen locaties gevonden" } }
1332
+ }
1333
+ },
1334
+ "pt-PT": {
1335
+ BSearchLocationInput: {
1336
+ label: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Localização" } },
1337
+ placeholder: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Pesquisar por uma localização" } },
1338
+ noDataText: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Nenhuma localização encontrada" } }
1339
+ }
1340
+ }
1341
+ }
1342
+ });
1343
+ }
1344
+ typeof Bt == "function" && Bt(Wt);
1345
+ const js = /* @__PURE__ */ le(Wt, [["__scopeId", "data-v-17cff640"]]), ol = 25, Ze = {
1346
+ currency: {
1347
+ required: !0,
1348
+ type: String
1349
+ },
1350
+ disabled: {
1351
+ default: !1,
1352
+ type: Boolean
1353
+ },
1354
+ isLoading: {
1355
+ default: !1,
1356
+ type: Boolean
1357
+ },
1358
+ modelValue: {
1359
+ type: Array
1360
+ },
1361
+ priceMax: {
1362
+ default: 10,
1363
+ type: Number
1364
+ },
1365
+ priceMin: {
1366
+ default: 5,
1367
+ type: Number
1368
+ },
1369
+ stepCount: {
1370
+ default: ol,
1371
+ type: Number
1372
+ }
1373
+ }, kt = (e, t) => {
1374
+ const n = t - e, i = n / 40, s = 10 ** (Math.floor(Math.log10(i)) - 1), d = Math.round(i / s) * s, m = Math.max(d, n / 40);
1375
+ return Math.floor(m);
1376
+ }, rl = ee({
1377
+ components: { BFormattedAmount: xt },
1378
+ computed: {
1379
+ currencySymbol() {
1380
+ return $a(this.currency);
1381
+ },
1382
+ getChartBarHeight() {
1383
+ return (e) => `${Math.log(e + 1) / Math.log(Math.max(...this.priceHistogram || [])) * 40}px`;
1384
+ },
1385
+ validPriceRange() {
1386
+ return Ca([this.priceMin, this.priceMax], (e) => e);
1387
+ }
1388
+ },
1389
+ created() {
1390
+ this.$watch(
1391
+ () => [this.priceMin, this.priceMax],
1392
+ () => {
1393
+ this.step = kt(this.priceMin, this.priceMax);
1394
+ }
1395
+ );
1396
+ },
1397
+ data() {
1398
+ return {
1399
+ inputMax: this.modelValue && Math.max(...this.modelValue) || this.priceMax,
1400
+ inputMin: this.modelValue && Math.min(...this.modelValue) || this.priceMin,
1401
+ modelMax: this.modelValue && Math.max(...this.modelValue) || this.priceMax,
1402
+ modelMin: this.modelValue && Math.min(...this.modelValue) || this.priceMin,
1403
+ rangeSliderModel: [
1404
+ this.modelValue && Math.min(...this.modelValue) || this.priceMin,
1405
+ this.modelValue && Math.max(...this.modelValue) || this.priceMax
1406
+ ],
1407
+ step: kt(this.priceMin, this.priceMax)
1408
+ };
1409
+ },
1410
+ methods: {
1411
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1412
+ onInputMaxBlur(e) {
1413
+ var t;
1414
+ this.modelMax = Math.max(
1415
+ Math.min(this.validPriceRange[1], Math.ceil((t = e.target) == null ? void 0 : t.value)),
1416
+ this.validPriceRange[0]
1417
+ ), this.inputMax = this.modelMax, this.rangeSliderModel = [this.modelMin, this.modelMax], this.$emit("update:modelValue", [this.modelMin, this.modelMax]);
1418
+ },
1419
+ onInputMaxClear() {
1420
+ this.inputMax = this.validPriceRange[1], this.modelMax = this.inputMax, this.rangeSliderModel = [this.modelMin, this.modelMax], this.$emit("update:modelValue", [this.modelMin, this.modelMax]);
1421
+ },
1422
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
1423
+ onInputMinBlur(e) {
1424
+ var t;
1425
+ this.modelMin = Math.min(
1426
+ Math.max(this.validPriceRange[0], Math.ceil((t = e.target) == null ? void 0 : t.value)),
1427
+ this.validPriceRange[1]
1428
+ ), this.inputMin = this.modelMin, this.rangeSliderModel = [this.modelMin, this.modelMax], this.$emit("update:modelValue", [this.modelMin, this.modelMax]);
1429
+ },
1430
+ onInputMinClear() {
1431
+ this.inputMin = this.validPriceRange[0], this.modelMin = this.inputMin, this.rangeSliderModel = [this.modelMin, this.modelMax], this.$emit("update:modelValue", [this.modelMin, this.modelMax]);
1432
+ },
1433
+ onSliderEnd() {
1434
+ this.modelMin = this.rangeSliderModel[0], this.modelMax = this.rangeSliderModel[1], this.$emit("update:modelValue", [this.modelMin, this.modelMax]);
1435
+ }
1436
+ },
1437
+ mixins: [Ve],
1438
+ name: "BFilterByPrice",
1439
+ props: Ze,
1440
+ setup() {
1441
+ const { t: e } = ie(), t = Et(), l = v(
1442
+ () => t.hotelOffersCurrency
1443
+ ), n = v(() => t.priceHistogram);
1444
+ return {
1445
+ hotelOffersCurrency: l,
1446
+ priceHistogram: n,
1447
+ t: e
1448
+ };
1449
+ },
1450
+ watch: {
1451
+ modelValue: {
1452
+ deep: !0,
1453
+ handler(e) {
1454
+ e && (this.modelMin = e[0] || this.priceMin, this.modelMax = e[1] || this.priceMax, this.inputMin = this.modelMin, this.inputMax = this.modelMax, this.rangeSliderModel = [this.modelMin, this.modelMax]);
1455
+ },
1456
+ immediate: !0
1457
+ },
1458
+ rangeSliderModel(e) {
1459
+ e && (this.inputMin = e[0], this.inputMax = e[1]);
1460
+ }
1461
+ }
1462
+ }), it = Symbol.for("vuetify:v-slider");
1463
+ function Qe(e, t, l) {
1464
+ const n = l === "vertical", i = t.getBoundingClientRect(), r = "touches" in e ? e.touches[0] : e;
1465
+ return n ? r.clientY - (i.top + i.height / 2) : r.clientX - (i.left + i.width / 2);
1466
+ }
1467
+ function nl(e, t) {
1468
+ return "touches" in e && e.touches.length ? e.touches[0][t] : "changedTouches" in e && e.changedTouches.length ? e.changedTouches[0][t] : e[t];
1469
+ }
1470
+ const ul = Ce({
1471
+ disabled: {
1472
+ type: Boolean,
1473
+ default: null
1474
+ },
1475
+ error: Boolean,
1476
+ readonly: {
1477
+ type: Boolean,
1478
+ default: null
1479
+ },
1480
+ max: {
1481
+ type: [Number, String],
1482
+ default: 100
1483
+ },
1484
+ min: {
1485
+ type: [Number, String],
1486
+ default: 0
1487
+ },
1488
+ step: {
1489
+ type: [Number, String],
1490
+ default: 0
1491
+ },
1492
+ thumbColor: String,
1493
+ thumbLabel: {
1494
+ type: [Boolean, String],
1495
+ default: void 0,
1496
+ validator: (e) => typeof e == "boolean" || e === "always"
1497
+ },
1498
+ thumbSize: {
1499
+ type: [Number, String],
1500
+ default: 20
1501
+ },
1502
+ showTicks: {
1503
+ type: [Boolean, String],
1504
+ default: !1,
1505
+ validator: (e) => typeof e == "boolean" || e === "always"
1506
+ },
1507
+ ticks: {
1508
+ type: [Array, Object]
1509
+ },
1510
+ tickSize: {
1511
+ type: [Number, String],
1512
+ default: 2
1513
+ },
1514
+ color: String,
1515
+ trackColor: String,
1516
+ trackFillColor: String,
1517
+ trackSize: {
1518
+ type: [Number, String],
1519
+ default: 4
1520
+ },
1521
+ direction: {
1522
+ type: String,
1523
+ default: "horizontal",
1524
+ validator: (e) => ["vertical", "horizontal"].includes(e)
1525
+ },
1526
+ reverse: Boolean,
1527
+ ...jt(),
1528
+ ...qt({
1529
+ elevation: 2
1530
+ }),
1531
+ ripple: {
1532
+ type: Boolean,
1533
+ default: !0
1534
+ }
1535
+ }, "Slider"), cl = (e) => {
1536
+ const t = v(() => parseFloat(e.min)), l = v(() => parseFloat(e.max)), n = v(() => Number(e.step) > 0 ? parseFloat(e.step) : 0), i = v(() => Math.max(ot(n.value), ot(t.value)));
1537
+ function r(s) {
1538
+ if (s = parseFloat(s), n.value <= 0) return s;
1539
+ const d = Je(s, t.value, l.value), m = t.value % n.value, g = Math.round((d - m) / n.value) * n.value + m;
1540
+ return parseFloat(Math.min(g, l.value).toFixed(i.value));
1541
+ }
1542
+ return {
1543
+ min: t,
1544
+ max: l,
1545
+ step: n,
1546
+ decimals: i,
1547
+ roundValue: r
1548
+ };
1549
+ }, dl = (e) => {
1550
+ let {
1551
+ props: t,
1552
+ steps: l,
1553
+ onSliderStart: n,
1554
+ onSliderMove: i,
1555
+ onSliderEnd: r,
1556
+ getActiveThumb: s
1557
+ } = e;
1558
+ const {
1559
+ isRtl: d
1560
+ } = ze(), m = te(t, "reverse"), g = v(() => t.direction === "vertical"), c = v(() => g.value !== m.value), {
1561
+ min: b,
1562
+ max: B,
1563
+ step: u,
1564
+ decimals: h,
1565
+ roundValue: p
1566
+ } = l, O = v(() => parseInt(t.thumbSize, 10)), y = v(() => parseInt(t.tickSize, 10)), P = v(() => parseInt(t.trackSize, 10)), L = v(() => (B.value - b.value) / u.value), U = te(t, "disabled"), A = v(() => t.error || t.disabled ? void 0 : t.thumbColor ?? t.color), w = v(() => t.error || t.disabled ? void 0 : t.trackColor ?? t.color), $ = v(() => t.error || t.disabled ? void 0 : t.trackFillColor ?? t.color), F = ce(!1), V = ce(0), C = X(), M = X();
1567
+ function k(_) {
1568
+ var lt;
1569
+ const N = (lt = C.value) == null ? void 0 : lt.$el;
1570
+ if (!N) return;
1571
+ const be = t.direction === "vertical", la = be ? "top" : "left", sa = be ? "height" : "width", oa = be ? "clientY" : "clientX", {
1572
+ [la]: ra,
1573
+ [sa]: na
1574
+ } = N.getBoundingClientRect(), ua = nl(_, oa);
1575
+ let je = Math.min(Math.max((ua - ra - V.value) / na, 0), 1) || 0;
1576
+ return (be ? c.value : c.value !== d.value) && (je = 1 - je), p(b.value + je * (B.value - b.value));
1577
+ }
1578
+ const f = (_) => {
1579
+ const N = k(_);
1580
+ N != null && r({
1581
+ value: N
1582
+ }), F.value = !1, V.value = 0;
1583
+ }, E = (_) => {
1584
+ const N = k(_);
1585
+ M.value = s(_), M.value && (F.value = !0, M.value.contains(_.target) ? V.value = Qe(_, M.value, t.direction) : (V.value = 0, N != null && i({
1586
+ value: N
1587
+ })), N != null && n({
1588
+ value: N
1589
+ }), Oe(() => {
1590
+ var be;
1591
+ return (be = M.value) == null ? void 0 : be.focus();
1592
+ }));
1593
+ }, S = {
1594
+ passive: !0,
1595
+ capture: !0
1596
+ };
1597
+ function q(_) {
1598
+ const N = k(_);
1599
+ N != null && i({
1600
+ value: N
1601
+ });
1602
+ }
1603
+ function Y(_) {
1604
+ _.stopPropagation(), _.preventDefault(), f(_), window.removeEventListener("mousemove", q, S), window.removeEventListener("mouseup", Y);
1605
+ }
1606
+ function J(_) {
1607
+ var N;
1608
+ f(_), window.removeEventListener("touchmove", q, S), (N = _.target) == null || N.removeEventListener("touchend", J);
1609
+ }
1610
+ function se(_) {
1611
+ var N;
1612
+ E(_), window.addEventListener("touchmove", q, S), (N = _.target) == null || N.addEventListener("touchend", J, {
1613
+ passive: !1
1614
+ });
1615
+ }
1616
+ function T(_) {
1617
+ _.button === 0 && (_.preventDefault(), E(_), window.addEventListener("mousemove", q, S), window.addEventListener("mouseup", Y, {
1618
+ passive: !1
1619
+ }));
1620
+ }
1621
+ const H = (_) => {
1622
+ const N = (_ - b.value) / (B.value - b.value) * 100;
1623
+ return Je(isNaN(N) ? 0 : N, 0, 100);
1624
+ }, ue = te(t, "showTicks"), me = v(() => ue.value ? t.ticks ? Array.isArray(t.ticks) ? t.ticks.map((_) => ({
1625
+ value: _,
1626
+ position: H(_),
1627
+ label: _.toString()
1628
+ })) : Object.keys(t.ticks).map((_) => ({
1629
+ value: parseFloat(_),
1630
+ position: H(parseFloat(_)),
1631
+ label: t.ticks[_]
1632
+ })) : L.value !== 1 / 0 ? Tt(L.value + 1).map((_) => {
1633
+ const N = b.value + _ * u.value;
1634
+ return {
1635
+ value: N,
1636
+ position: H(N)
1637
+ };
1638
+ }) : [] : []), Ee = v(() => me.value.some((_) => {
1639
+ let {
1640
+ label: N
1641
+ } = _;
1642
+ return !!N;
1643
+ })), Te = {
1644
+ activeThumbRef: M,
1645
+ color: te(t, "color"),
1646
+ decimals: h,
1647
+ disabled: U,
1648
+ direction: te(t, "direction"),
1649
+ elevation: te(t, "elevation"),
1650
+ hasLabels: Ee,
1651
+ isReversed: m,
1652
+ indexFromEnd: c,
1653
+ min: b,
1654
+ max: B,
1655
+ mousePressed: F,
1656
+ numTicks: L,
1657
+ onSliderMousedown: T,
1658
+ onSliderTouchstart: se,
1659
+ parsedTicks: me,
1660
+ parseMouseMove: k,
1661
+ position: H,
1662
+ readonly: te(t, "readonly"),
1663
+ rounded: te(t, "rounded"),
1664
+ roundValue: p,
1665
+ showTicks: ue,
1666
+ startOffset: V,
1667
+ step: u,
1668
+ thumbSize: O,
1669
+ thumbColor: A,
1670
+ thumbLabel: te(t, "thumbLabel"),
1671
+ ticks: te(t, "ticks"),
1672
+ tickSize: y,
1673
+ trackColor: w,
1674
+ trackContainerRef: C,
1675
+ trackFillColor: $,
1676
+ trackSize: P,
1677
+ vertical: g
1678
+ };
1679
+ return Fa(it, Te), Te;
1680
+ }, fl = Ce({
1681
+ focused: Boolean,
1682
+ max: {
1683
+ type: Number,
1684
+ required: !0
1685
+ },
1686
+ min: {
1687
+ type: Number,
1688
+ required: !0
1689
+ },
1690
+ modelValue: {
1691
+ type: Number,
1692
+ required: !0
1693
+ },
1694
+ position: {
1695
+ type: Number,
1696
+ required: !0
1697
+ },
1698
+ ripple: {
1699
+ type: [Boolean, Object],
1700
+ default: !0
1701
+ },
1702
+ name: String,
1703
+ ...Ue()
1704
+ }, "VSliderThumb"), Mt = _e()({
1705
+ name: "VSliderThumb",
1706
+ directives: {
1707
+ Ripple: ai
1708
+ },
1709
+ props: fl(),
1710
+ emits: {
1711
+ "update:modelValue": (e) => !0
1712
+ },
1713
+ setup(e, t) {
1714
+ let {
1715
+ slots: l,
1716
+ emit: n
1717
+ } = t;
1718
+ const i = Lt(it), {
1719
+ isRtl: r,
1720
+ rtlClasses: s
1721
+ } = ze();
1722
+ if (!i) throw new Error("[Vuetify] v-slider-thumb must be used inside v-slider or v-range-slider");
1723
+ const {
1724
+ thumbColor: d,
1725
+ step: m,
1726
+ disabled: g,
1727
+ thumbSize: c,
1728
+ thumbLabel: b,
1729
+ direction: B,
1730
+ isReversed: u,
1731
+ vertical: h,
1732
+ readonly: p,
1733
+ elevation: O,
1734
+ mousePressed: y,
1735
+ decimals: P,
1736
+ indexFromEnd: L
1737
+ } = i, U = v(() => g.value ? void 0 : O.value), {
1738
+ elevationClasses: A
1739
+ } = Gt(U), {
1740
+ textColorClasses: w,
1741
+ textColorStyles: $
1742
+ } = Ka(d), {
1743
+ pageup: F,
1744
+ pagedown: V,
1745
+ end: C,
1746
+ home: M,
1747
+ left: k,
1748
+ right: f,
1749
+ down: E,
1750
+ up: S
1751
+ } = Oa, q = [F, V, C, M, k, f, E, S], Y = v(() => m.value ? [1, 2, 3] : [1, 5, 10]);
1752
+ function J(T, H) {
1753
+ if (!q.includes(T.key)) return;
1754
+ T.preventDefault();
1755
+ const ue = m.value || 0.1, me = (e.max - e.min) / ue;
1756
+ if ([k, f, E, S].includes(T.key)) {
1757
+ const Te = (h.value ? [r.value ? k : f, u.value ? E : S] : L.value !== r.value ? [k, S] : [f, S]).includes(T.key) ? 1 : -1, _ = T.shiftKey ? 2 : T.ctrlKey ? 1 : 0;
1758
+ H = H + Te * ue * Y.value[_];
1759
+ } else if (T.key === M)
1760
+ H = e.min;
1761
+ else if (T.key === C)
1762
+ H = e.max;
1763
+ else {
1764
+ const Ee = T.key === V ? 1 : -1;
1765
+ H = H - Ee * ue * (me > 100 ? me / 10 : 10);
1766
+ }
1767
+ return Math.max(e.min, Math.min(e.max, H));
1768
+ }
1769
+ function se(T) {
1770
+ const H = J(T, e.modelValue);
1771
+ H != null && n("update:modelValue", H);
1772
+ }
1773
+ return Pe(() => {
1774
+ const T = ve(L.value ? 100 - e.position : e.position, "%");
1775
+ return a("div", {
1776
+ class: ["v-slider-thumb", {
1777
+ "v-slider-thumb--focused": e.focused,
1778
+ "v-slider-thumb--pressed": e.focused && y.value
1779
+ }, e.class, s.value],
1780
+ style: [{
1781
+ "--v-slider-thumb-position": T,
1782
+ "--v-slider-thumb-size": ve(c.value)
1783
+ }, e.style],
1784
+ role: "slider",
1785
+ tabindex: g.value ? -1 : 0,
1786
+ "aria-label": e.name,
1787
+ "aria-valuemin": e.min,
1788
+ "aria-valuemax": e.max,
1789
+ "aria-valuenow": e.modelValue,
1790
+ "aria-readonly": !!p.value,
1791
+ "aria-orientation": B.value,
1792
+ onKeydown: p.value ? void 0 : se
1793
+ }, [a("div", {
1794
+ class: ["v-slider-thumb__surface", w.value, A.value],
1795
+ style: {
1796
+ ...$.value
1797
+ }
1798
+ }, null), Ye(a("div", {
1799
+ class: ["v-slider-thumb__ripple", w.value],
1800
+ style: $.value
1801
+ }, null), [[_a("ripple"), e.ripple, null, {
1802
+ circle: !0,
1803
+ center: !0
1804
+ }]]), a(ii, {
1805
+ origin: "bottom center"
1806
+ }, {
1807
+ default: () => {
1808
+ var H;
1809
+ return [Ye(a("div", {
1810
+ class: "v-slider-thumb__label-container"
1811
+ }, [a("div", {
1812
+ class: ["v-slider-thumb__label"]
1813
+ }, [a("div", null, [((H = l["thumb-label"]) == null ? void 0 : H.call(l, {
1814
+ modelValue: e.modelValue
1815
+ })) ?? e.modelValue.toFixed(m.value ? P.value : 1)])])]), [[It, b.value && e.focused || b.value === "always"]])];
1816
+ }
1817
+ })]);
1818
+ }), {};
1819
+ }
1820
+ }), ml = Ce({
1821
+ start: {
1822
+ type: Number,
1823
+ required: !0
1824
+ },
1825
+ stop: {
1826
+ type: Number,
1827
+ required: !0
1828
+ },
1829
+ ...Ue()
1830
+ }, "VSliderTrack"), pl = _e()({
1831
+ name: "VSliderTrack",
1832
+ props: ml(),
1833
+ emits: {},
1834
+ setup(e, t) {
1835
+ let {
1836
+ slots: l
1837
+ } = t;
1838
+ const n = Lt(it);
1839
+ if (!n) throw new Error("[Vuetify] v-slider-track must be inside v-slider or v-range-slider");
1840
+ const {
1841
+ color: i,
1842
+ parsedTicks: r,
1843
+ rounded: s,
1844
+ showTicks: d,
1845
+ tickSize: m,
1846
+ trackColor: g,
1847
+ trackFillColor: c,
1848
+ trackSize: b,
1849
+ vertical: B,
1850
+ min: u,
1851
+ max: h,
1852
+ indexFromEnd: p
1853
+ } = n, {
1854
+ roundedClasses: O
1855
+ } = Kt(s), {
1856
+ backgroundColorClasses: y,
1857
+ backgroundColorStyles: P
1858
+ } = He(c), {
1859
+ backgroundColorClasses: L,
1860
+ backgroundColorStyles: U
1861
+ } = He(g), A = v(() => `inset-${B.value ? "block" : "inline"}-${p.value ? "end" : "start"}`), w = v(() => B.value ? "height" : "width"), $ = v(() => ({
1862
+ [A.value]: "0%",
1863
+ [w.value]: "100%"
1864
+ })), F = v(() => e.stop - e.start), V = v(() => ({
1865
+ [A.value]: ve(e.start, "%"),
1866
+ [w.value]: ve(F.value, "%")
1867
+ })), C = v(() => d.value ? (B.value ? r.value.slice().reverse() : r.value).map((k, f) => {
1868
+ var S;
1869
+ const E = k.value !== u.value && k.value !== h.value ? ve(k.position, "%") : void 0;
1870
+ return a("div", {
1871
+ key: k.value,
1872
+ class: ["v-slider-track__tick", {
1873
+ "v-slider-track__tick--filled": k.position >= e.start && k.position <= e.stop,
1874
+ "v-slider-track__tick--first": k.value === u.value,
1875
+ "v-slider-track__tick--last": k.value === h.value
1876
+ }],
1877
+ style: {
1878
+ [A.value]: E
1879
+ }
1880
+ }, [(k.label || l["tick-label"]) && a("div", {
1881
+ class: "v-slider-track__tick-label"
1882
+ }, [((S = l["tick-label"]) == null ? void 0 : S.call(l, {
1883
+ tick: k,
1884
+ index: f
1885
+ })) ?? k.label])]);
1886
+ }) : []);
1887
+ return Pe(() => a("div", {
1888
+ class: ["v-slider-track", O.value, e.class],
1889
+ style: [{
1890
+ "--v-slider-track-size": ve(b.value),
1891
+ "--v-slider-tick-size": ve(m.value)
1892
+ }, e.style]
1893
+ }, [a("div", {
1894
+ class: ["v-slider-track__background", L.value, {
1895
+ "v-slider-track__background--opacity": !!i.value || !c.value
1896
+ }],
1897
+ style: {
1898
+ ...$.value,
1899
+ ...U.value
1900
+ }
1901
+ }, null), a("div", {
1902
+ class: ["v-slider-track__fill", y.value],
1903
+ style: {
1904
+ ...V.value,
1905
+ ...P.value
1906
+ }
1907
+ }, null), d.value && a("div", {
1908
+ class: ["v-slider-track__ticks", {
1909
+ "v-slider-track__ticks--always-show": d.value === "always"
1910
+ }]
1911
+ }, [C.value])])), {};
1912
+ }
1913
+ }), hl = Ce({
1914
+ ...Ci(),
1915
+ ...Vi(),
1916
+ ...ul(),
1917
+ strict: Boolean,
1918
+ modelValue: {
1919
+ type: Array,
1920
+ default: () => [0, 0]
1921
+ }
1922
+ }, "VRangeSlider"), vl = _e()({
1923
+ name: "VRangeSlider",
1924
+ props: hl(),
1925
+ emits: {
1926
+ "update:focused": (e) => !0,
1927
+ "update:modelValue": (e) => !0,
1928
+ end: (e) => !0,
1929
+ start: (e) => !0
1930
+ },
1931
+ setup(e, t) {
1932
+ let {
1933
+ slots: l,
1934
+ emit: n
1935
+ } = t;
1936
+ const i = X(), r = X(), s = X(), {
1937
+ rtlClasses: d
1938
+ } = ze();
1939
+ function m(C) {
1940
+ if (!i.value || !r.value) return;
1941
+ const M = Qe(C, i.value.$el, e.direction), k = Qe(C, r.value.$el, e.direction), f = Math.abs(M), E = Math.abs(k);
1942
+ return f < E || f === E && M < 0 ? i.value.$el : r.value.$el;
1943
+ }
1944
+ const g = cl(e), c = et(e, "modelValue", void 0, (C) => C != null && C.length ? C.map((M) => g.roundValue(M)) : [0, 0]), {
1945
+ activeThumbRef: b,
1946
+ hasLabels: B,
1947
+ max: u,
1948
+ min: h,
1949
+ mousePressed: p,
1950
+ onSliderMousedown: O,
1951
+ onSliderTouchstart: y,
1952
+ position: P,
1953
+ trackContainerRef: L,
1954
+ readonly: U
1955
+ } = dl({
1956
+ props: e,
1957
+ steps: g,
1958
+ onSliderStart: () => {
1959
+ n("start", c.value);
1960
+ },
1961
+ onSliderEnd: (C) => {
1962
+ var f;
1963
+ let {
1964
+ value: M
1965
+ } = C;
1966
+ const k = b.value === ((f = i.value) == null ? void 0 : f.$el) ? [M, c.value[1]] : [c.value[0], M];
1967
+ !e.strict && k[0] < k[1] && (c.value = k), n("end", c.value);
1968
+ },
1969
+ onSliderMove: (C) => {
1970
+ var E, S, q, Y;
1971
+ let {
1972
+ value: M
1973
+ } = C;
1974
+ const [k, f] = c.value;
1975
+ !e.strict && k === f && k !== h.value && (b.value = M > k ? (E = r.value) == null ? void 0 : E.$el : (S = i.value) == null ? void 0 : S.$el, (q = b.value) == null || q.focus()), b.value === ((Y = i.value) == null ? void 0 : Y.$el) ? c.value = [Math.min(M, f), f] : c.value = [k, Math.max(k, M)];
1976
+ },
1977
+ getActiveThumb: m
1978
+ }), {
1979
+ isFocused: A,
1980
+ focus: w,
1981
+ blur: $
1982
+ } = Ri(e), F = v(() => P(c.value[0])), V = v(() => P(c.value[1]));
1983
+ return Pe(() => {
1984
+ const C = ht.filterProps(e), M = !!(e.label || l.label || l.prepend);
1985
+ return a(ht, Z({
1986
+ class: ["v-slider", "v-range-slider", {
1987
+ "v-slider--has-labels": !!l["tick-label"] || B.value,
1988
+ "v-slider--focused": A.value,
1989
+ "v-slider--pressed": p.value,
1990
+ "v-slider--disabled": e.disabled
1991
+ }, d.value, e.class],
1992
+ style: e.style,
1993
+ ref: s
1994
+ }, C, {
1995
+ focused: A.value
1996
+ }), {
1997
+ ...l,
1998
+ prepend: M ? (k) => {
1999
+ var f, E;
2000
+ return a(re, null, [((f = l.label) == null ? void 0 : f.call(l, k)) ?? (e.label ? a(Oi, {
2001
+ class: "v-slider__label",
2002
+ text: e.label
2003
+ }, null) : void 0), (E = l.prepend) == null ? void 0 : E.call(l, k)]);
2004
+ } : void 0,
2005
+ default: (k) => {
2006
+ var S, q;
2007
+ let {
2008
+ id: f,
2009
+ messagesId: E
2010
+ } = k;
2011
+ return a("div", {
2012
+ class: "v-slider__container",
2013
+ onMousedown: U.value ? void 0 : O,
2014
+ onTouchstartPassive: U.value ? void 0 : y
2015
+ }, [a("input", {
2016
+ id: `${f.value}_start`,
2017
+ name: e.name || f.value,
2018
+ disabled: !!e.disabled,
2019
+ readonly: !!e.readonly,
2020
+ tabindex: "-1",
2021
+ value: c.value[0]
2022
+ }, null), a("input", {
2023
+ id: `${f.value}_stop`,
2024
+ name: e.name || f.value,
2025
+ disabled: !!e.disabled,
2026
+ readonly: !!e.readonly,
2027
+ tabindex: "-1",
2028
+ value: c.value[1]
2029
+ }, null), a(pl, {
2030
+ ref: L,
2031
+ start: F.value,
2032
+ stop: V.value
2033
+ }, {
2034
+ "tick-label": l["tick-label"]
2035
+ }), a(Mt, {
2036
+ ref: i,
2037
+ "aria-describedby": E.value,
2038
+ focused: A && b.value === ((S = i.value) == null ? void 0 : S.$el),
2039
+ modelValue: c.value[0],
2040
+ "onUpdate:modelValue": (Y) => c.value = [Y, c.value[1]],
2041
+ onFocus: (Y) => {
2042
+ var J, se, T, H;
2043
+ w(), b.value = (J = i.value) == null ? void 0 : J.$el, u.value !== h.value && c.value[0] === c.value[1] && c.value[1] === h.value && Y.relatedTarget !== ((se = r.value) == null ? void 0 : se.$el) && ((T = i.value) == null || T.$el.blur(), (H = r.value) == null || H.$el.focus());
2044
+ },
2045
+ onBlur: () => {
2046
+ $(), b.value = void 0;
2047
+ },
2048
+ min: h.value,
2049
+ max: c.value[1],
2050
+ position: F.value,
2051
+ ripple: e.ripple
2052
+ }, {
2053
+ "thumb-label": l["thumb-label"]
2054
+ }), a(Mt, {
2055
+ ref: r,
2056
+ "aria-describedby": E.value,
2057
+ focused: A && b.value === ((q = r.value) == null ? void 0 : q.$el),
2058
+ modelValue: c.value[1],
2059
+ "onUpdate:modelValue": (Y) => c.value = [c.value[0], Y],
2060
+ onFocus: (Y) => {
2061
+ var J, se, T, H;
2062
+ w(), b.value = (J = r.value) == null ? void 0 : J.$el, u.value !== h.value && c.value[0] === c.value[1] && c.value[0] === u.value && Y.relatedTarget !== ((se = i.value) == null ? void 0 : se.$el) && ((T = r.value) == null || T.$el.blur(), (H = i.value) == null || H.$el.focus());
2063
+ },
2064
+ onBlur: () => {
2065
+ $(), b.value = void 0;
2066
+ },
2067
+ min: c.value[0],
2068
+ max: u.value,
2069
+ position: V.value,
2070
+ ripple: e.ripple
2071
+ }, {
2072
+ "thumb-label": l["thumb-label"]
2073
+ })]);
2074
+ }
2075
+ });
2076
+ }), {};
2077
+ }
2078
+ }), bl = { style: { "max-width": "400px" } }, gl = {
2079
+ key: 0,
2080
+ class: "chart"
2081
+ }, yl = {
2082
+ key: 1,
2083
+ class: "chart"
2084
+ };
2085
+ function wl(e, t, l, n, i, r) {
2086
+ return R(), K("div", bl, [
2087
+ a(he, { "no-gutters": "" }, {
2088
+ default: o(() => [
2089
+ a(Q, null, {
2090
+ default: o(() => [
2091
+ a(tt, {
2092
+ class: fe(["filter-price-slider pa-0", e.disabled && "cursor-not-allowed"])
2093
+ }, {
2094
+ default: o(() => [
2095
+ e.isLoading ? (R(), K("ul", gl, [
2096
+ (R(!0), K(re, null, Re(Array.from(
2097
+ { length: 30 },
2098
+ () => Math.random() * 35 + 5
2099
+ ), (s, d) => (R(), K("li", { key: d }, t[3] || (t[3] = [
2100
+ x("span", { class: "loader" }, null, -1)
2101
+ ])))), 128))
2102
+ ])) : (R(), K("ul", yl, [
2103
+ (R(!0), K(re, null, Re(e.priceHistogram, (s, d) => (R(), K("li", { key: d }, [
2104
+ x("span", {
2105
+ style: Pt({ height: e.getChartBarHeight(s), width: "95%" })
2106
+ }, null, 4)
2107
+ ]))), 128))
2108
+ ])),
2109
+ a(vl, {
2110
+ ref: "range-slider",
2111
+ modelValue: e.rangeSliderModel,
2112
+ "onUpdate:modelValue": t[0] || (t[0] = (s) => e.rangeSliderModel = s),
2113
+ disabled: e.disabled || e.isLoading,
2114
+ max: e.validPriceRange[1],
2115
+ min: e.validPriceRange[0],
2116
+ readonly: e.disabled || e.isLoading,
2117
+ step: e.step,
2118
+ "thumb-label": !1,
2119
+ style: {
2120
+ marginInline: "0px",
2121
+ marginTop: "-17px"
2122
+ },
2123
+ "track-color": "#e2e2e2",
2124
+ "track-size": "3",
2125
+ "thumb-size": "13",
2126
+ color: "primary",
2127
+ "hide-details": "",
2128
+ onEnd: e.onSliderEnd
2129
+ }, null, 8, ["modelValue", "disabled", "max", "min", "readonly", "step", "onEnd"])
2130
+ ]),
2131
+ _: 1
2132
+ }, 8, ["class"])
2133
+ ]),
2134
+ _: 1
2135
+ })
2136
+ ]),
2137
+ _: 1
2138
+ }),
2139
+ a(he, { "no-gutters": "" }, {
2140
+ default: o(() => [
2141
+ a(Q, null, {
2142
+ default: o(() => [
2143
+ a(vt, {
2144
+ ref: "price-min",
2145
+ modelValue: e.inputMin,
2146
+ "onUpdate:modelValue": t[1] || (t[1] = (s) => e.inputMin = s),
2147
+ "append-inner-icon": e.$isCurrentBreakpointBelow("sm") ? null : "fas fa-circle-xmark",
2148
+ density: "compact",
2149
+ disabled: e.disabled || e.isLoading,
2150
+ label: "Min",
2151
+ max: e.inputMax,
2152
+ min: e.validPriceRange[0],
2153
+ variant: "outlined",
2154
+ prefix: e.currencySymbol,
2155
+ step: e.step,
2156
+ "hide-details": "",
2157
+ type: "number",
2158
+ onBlur: e.onInputMinBlur,
2159
+ "onClick:append": e.onInputMinClear
2160
+ }, null, 8, ["modelValue", "append-inner-icon", "disabled", "max", "min", "prefix", "step", "onBlur", "onClick:append"])
2161
+ ]),
2162
+ _: 1
2163
+ }),
2164
+ a(Q, {
2165
+ class: "d-flex align-center",
2166
+ cols: "2"
2167
+ }, {
2168
+ default: o(() => [
2169
+ a(Ae)
2170
+ ]),
2171
+ _: 1
2172
+ }),
2173
+ a(Q, null, {
2174
+ default: o(() => [
2175
+ a(vt, {
2176
+ ref: "price-max",
2177
+ modelValue: e.inputMax,
2178
+ "onUpdate:modelValue": t[2] || (t[2] = (s) => e.inputMax = s),
2179
+ "append-inner-icon": e.$isCurrentBreakpointBelow("sm") ? null : "fas fa-circle-xmark",
2180
+ density: "compact",
2181
+ disabled: e.disabled || e.isLoading,
2182
+ label: "Max",
2183
+ max: e.validPriceRange[1],
2184
+ min: e.inputMin,
2185
+ variant: "outlined",
2186
+ prefix: e.currencySymbol,
2187
+ step: e.step,
2188
+ "hide-details": "",
2189
+ type: "number",
2190
+ onBlur: e.onInputMaxBlur,
2191
+ "onClick:append": e.onInputMaxClear
2192
+ }, null, 8, ["modelValue", "append-inner-icon", "disabled", "max", "min", "prefix", "step", "onBlur", "onClick:append"])
2193
+ ]),
2194
+ _: 1
2195
+ })
2196
+ ]),
2197
+ _: 1
2198
+ })
2199
+ ]);
2200
+ }
2201
+ const Xt = /* @__PURE__ */ le(rl, [["render", wl], ["__scopeId", "data-v-cf4bcaf3"]]), Zt = ee({
2202
+ components: {
2203
+ BFilterByPrice: Xt,
2204
+ BFormattedAmount: xt
2205
+ },
2206
+ computed: {
2207
+ configCurrency() {
2208
+ return this.config.currency ?? nt.EUR.code;
2209
+ },
2210
+ currencies() {
2211
+ return Object.values(nt);
2212
+ },
2213
+ currencySymbol() {
2214
+ var e;
2215
+ return (e = this.currencies.find(
2216
+ (t) => t.code === this.configCurrency
2217
+ )) == null ? void 0 : e.symbol;
2218
+ },
2219
+ formattedPriceMax() {
2220
+ var e;
2221
+ return rt({
2222
+ amount: ((e = this.model) == null ? void 0 : e[1]) || this.priceMax,
2223
+ currency: this.config.currency,
2224
+ locale: this.$i18n.locale
2225
+ });
2226
+ },
2227
+ formattedPriceMin() {
2228
+ var e;
2229
+ return rt({
2230
+ amount: ((e = this.model) == null ? void 0 : e[0]) || this.priceMin,
2231
+ currency: this.config.currency,
2232
+ locale: this.$i18n.locale
2233
+ });
2234
+ },
2235
+ formattedPriceRange() {
2236
+ return `${this.formattedPriceMin} - ${this.formattedPriceMax}`;
2237
+ }
2238
+ },
2239
+ data() {
2240
+ return {
2241
+ isMenuOpen: !1,
2242
+ model: this.filter
2243
+ };
2244
+ },
2245
+ methods: {
2246
+ onApply() {
2247
+ this.$emit("update:filter", this.model), this.isMenuOpen = !1;
2248
+ },
2249
+ onCancel() {
2250
+ this.model = this.filter, this.isMenuOpen = !1;
2251
+ },
2252
+ onReset() {
2253
+ this.isMenuOpen = !1, this.$emit("reset");
2254
+ }
2255
+ },
2256
+ mixins: [Ve],
2257
+ name: "BFilterByPriceMenu",
2258
+ props: {
2259
+ ..._i(Ze, ["modelValue"]),
2260
+ filter: Ze.modelValue
2261
+ },
2262
+ setup() {
2263
+ const { t: e } = ie();
2264
+ return {
2265
+ t: e
2266
+ };
2267
+ },
2268
+ watch: {
2269
+ filter: {
2270
+ deep: !0,
2271
+ handler(e) {
2272
+ this.model = e;
2273
+ },
2274
+ immediate: !0
2275
+ }
2276
+ }
2277
+ });
2278
+ function St(e) {
2279
+ const t = e;
2280
+ t.__i18n = t.__i18n || [], t.__i18n.push({
2281
+ locale: "",
2282
+ resource: {
2283
+ "en-US": {
2284
+ BFilterByPriceMenu: {
2285
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Apply" } },
2286
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancel" } },
2287
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reset" } },
2288
+ cta: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Price" } },
2289
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "What's your budget ?" } }
2290
+ }
2291
+ },
2292
+ "fr-FR": {
2293
+ BFilterByPriceMenu: {
2294
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Appliquer" } },
2295
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuler" } },
2296
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Réinitialiser" } },
2297
+ cta: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prix" } },
2298
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Quel est votre budget ?" } }
2299
+ }
2300
+ },
2301
+ "de-DE": {
2302
+ BFilterByPriceMenu: {
2303
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Anwenden" } },
2304
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Abbrechen" } },
2305
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Zurücksetzen" } },
2306
+ cta: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preis" } },
2307
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Was ist Ihr Budget?" } }
2308
+ }
2309
+ },
2310
+ "es-ES": {
2311
+ BFilterByPriceMenu: {
2312
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
2313
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
2314
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Restablecer" } },
2315
+ cta: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Precio" } },
2316
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "¿Cuál es tu presupuesto?" } }
2317
+ }
2318
+ },
2319
+ "it-IT": {
2320
+ BFilterByPriceMenu: {
2321
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Applica" } },
2322
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annulla" } },
2323
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ripristina" } },
2324
+ cta: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prezzo" } },
2325
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Qual è il tuo budget?" } }
2326
+ }
2327
+ },
2328
+ "nl-NL": {
2329
+ BFilterByPriceMenu: {
2330
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Toepassen" } },
2331
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuleren" } },
2332
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reset" } },
2333
+ cta: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prijs" } },
2334
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Wat is uw budget?" } }
2335
+ }
2336
+ },
2337
+ "pt-PT": {
2338
+ BFilterByPriceMenu: {
2339
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
2340
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
2341
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Repor" } },
2342
+ cta: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preço" } },
2343
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Qual é o seu orçamento?" } }
2344
+ }
2345
+ }
2346
+ }
2347
+ });
2348
+ }
2349
+ const Bl = { class: "text-center px-10 pt-4" }, kl = { class: "font-weight-bold" };
2350
+ function Ml(e, t, l, n, i, r) {
2351
+ var d;
2352
+ const s = oe("BFilterByPrice");
2353
+ return R(), z(qe, Z(e.$attrs, {
2354
+ modelValue: e.isMenuOpen,
2355
+ "onUpdate:modelValue": t[1] || (t[1] = (m) => e.isMenuOpen = m),
2356
+ attach: (d = e.$parent) == null ? void 0 : d.$el,
2357
+ persistent: !1,
2358
+ "close-on-content-click": !1,
2359
+ "max-width": "400px",
2360
+ "open-on-click": "",
2361
+ location: "bottom"
2362
+ }), {
2363
+ activator: o(({ props: m }) => [
2364
+ a(xe, {
2365
+ color: "grey",
2366
+ icon: "fas fa-times",
2367
+ style: { cursor: "pointer" },
2368
+ "model-value": !!e.formattedPriceRange,
2369
+ onClick: e.onReset
2370
+ }, {
2371
+ default: o(() => {
2372
+ var g;
2373
+ return [
2374
+ a(Ut, {
2375
+ attach: (g = e.$el) == null ? void 0 : g.parent,
2376
+ location: "bottom",
2377
+ color: "grey-darken-3"
2378
+ }, {
2379
+ activator: o(({ props: c }) => [
2380
+ a(j, Z({
2381
+ class: "text-white",
2382
+ color: "grey",
2383
+ elevation: 0,
2384
+ variant: "outlined",
2385
+ size: "small"
2386
+ }, {
2387
+ ...m,
2388
+ ...c
2389
+ }), {
2390
+ default: o(() => [
2391
+ x("span", null, [
2392
+ x("b", null, I(e.currencySymbol), 1)
2393
+ ])
2394
+ ]),
2395
+ _: 2
2396
+ }, 1040)
2397
+ ]),
2398
+ default: o(() => [
2399
+ e.priceMin !== 0 && e.priceMax !== 0 ? (R(), K(re, { key: 0 }, [
2400
+ D(I(e.formattedPriceRange), 1)
2401
+ ], 64)) : W("", !0)
2402
+ ]),
2403
+ _: 2
2404
+ }, 1032, ["attach"])
2405
+ ];
2406
+ }),
2407
+ _: 2
2408
+ }, 1032, ["model-value", "onClick"])
2409
+ ]),
2410
+ default: o(() => [
2411
+ a(Ie, { elevation: "1" }, {
2412
+ default: o(() => [
2413
+ x("div", Bl, [
2414
+ x("p", kl, I(e.t("BFilterByPriceMenu.title")), 1),
2415
+ a(s, Z({
2416
+ modelValue: e.model,
2417
+ "onUpdate:modelValue": t[0] || (t[0] = (m) => e.model = m)
2418
+ }, e.$props), null, 16, ["modelValue"])
2419
+ ]),
2420
+ a(at, { class: "justify-end mt-2" }, {
2421
+ default: o(() => [
2422
+ a(j, {
2423
+ class: "text-right",
2424
+ color: "primary",
2425
+ elevation: "0",
2426
+ size: "small",
2427
+ variant: "text",
2428
+ onClick: e.onCancel
2429
+ }, {
2430
+ default: o(() => [
2431
+ D(I(e.t("BFilterByPriceMenu.cancel")), 1)
2432
+ ]),
2433
+ _: 1
2434
+ }, 8, ["onClick"]),
2435
+ a(j, {
2436
+ class: "text-right",
2437
+ color: "error",
2438
+ elevation: "0",
2439
+ loading: e.isLoading,
2440
+ size: "small",
2441
+ variant: "text",
2442
+ onClick: e.onReset
2443
+ }, {
2444
+ default: o(() => [
2445
+ D(I(e.t("BFilterByPriceMenu.reset")), 1)
2446
+ ]),
2447
+ _: 1
2448
+ }, 8, ["loading", "onClick"]),
2449
+ a(j, {
2450
+ class: "text-right",
2451
+ color: "success",
2452
+ elevation: "0",
2453
+ loading: e.isLoading,
2454
+ size: "small",
2455
+ onClick: e.onApply
2456
+ }, {
2457
+ default: o(() => [
2458
+ D(I(e.t("BFilterByPriceMenu.apply")), 1)
2459
+ ]),
2460
+ _: 1
2461
+ }, 8, ["loading", "onClick"])
2462
+ ]),
2463
+ _: 1
2464
+ })
2465
+ ]),
2466
+ _: 1
2467
+ })
2468
+ ]),
2469
+ _: 1
2470
+ }, 16, ["modelValue", "attach"]);
2471
+ }
2472
+ typeof St == "function" && St(Zt);
2473
+ const Sl = /* @__PURE__ */ le(Zt, [["render", Ml], ["__scopeId", "data-v-d1c52a28"]]), Rl = {
2474
+ disabled: { type: Boolean },
2475
+ modelValue: {
2476
+ type: [Number, void 0]
2477
+ }
2478
+ }, Vl = ee({
2479
+ computed: {
2480
+ model: {
2481
+ get() {
2482
+ return this.modelValue;
2483
+ },
2484
+ set(e) {
2485
+ this.$emit("update:modelValue", e);
2486
+ }
2487
+ },
2488
+ reviewRatingItems() {
2489
+ return [
2490
+ {
2491
+ label: "3+",
2492
+ value: 3
2493
+ },
2494
+ {
2495
+ label: "3.5+",
2496
+ value: 3.5
2497
+ },
2498
+ {
2499
+ label: "4+",
2500
+ value: 4
2501
+ },
2502
+ {
2503
+ label: "4.5+",
2504
+ value: 4.5
2505
+ }
2506
+ ];
2507
+ }
2508
+ },
2509
+ name: "BFilterByReview",
2510
+ props: Rl,
2511
+ setup() {
2512
+ const { t: e } = ie();
2513
+ return {
2514
+ t: e
2515
+ };
2516
+ }
2517
+ });
2518
+ function Cl(e, t, l, n, i, r) {
2519
+ return R(), z(ni, {
2520
+ modelValue: e.model,
2521
+ "onUpdate:modelValue": t[0] || (t[0] = (s) => e.model = s),
2522
+ class: "d-flex flex-row justify-center"
2523
+ }, {
2524
+ default: o(() => [
2525
+ (R(!0), K(re, null, Re(e.reviewRatingItems, (s, d) => (R(), z(j, {
2526
+ key: d,
2527
+ class: fe(["px-0", e.disabled && "cursor-not-allowed"]),
2528
+ color: "primary",
2529
+ disabled: e.disabled,
2530
+ variant: "outlined",
2531
+ size: "small",
2532
+ value: s.value
2533
+ }, {
2534
+ default: o(() => [
2535
+ D(I(s.label), 1)
2536
+ ]),
2537
+ _: 2
2538
+ }, 1032, ["class", "disabled", "value"]))), 128))
2539
+ ]),
2540
+ _: 1
2541
+ }, 8, ["modelValue"]);
2542
+ }
2543
+ const Qt = /* @__PURE__ */ le(Vl, [["render", Cl]]), $l = {
2544
+ modelValue: {
2545
+ type: [Number, void 0]
2546
+ }
2547
+ }, Fl = {
2548
+ filter: { ...$l.modelValue },
2549
+ isLoading: {
2550
+ default: !1,
2551
+ type: Boolean
2552
+ }
2553
+ }, Jt = ee({
2554
+ components: { BFilterByReview: Qt },
2555
+ data() {
2556
+ return {
2557
+ isMenuOpen: !1,
2558
+ model: this.filter
2559
+ };
2560
+ },
2561
+ methods: {
2562
+ closeMenu() {
2563
+ this.isMenuOpen = !1;
2564
+ },
2565
+ onApply() {
2566
+ this.closeMenu(), this.$emit("update:filter", this.model);
2567
+ },
2568
+ onCancel() {
2569
+ this.model = this.filter, this.closeMenu();
2570
+ },
2571
+ onReset() {
2572
+ this.closeMenu(), this.$emit("reset");
2573
+ }
2574
+ },
2575
+ mixins: [Ve],
2576
+ name: "BFilterByReviewMenu",
2577
+ props: Fl,
2578
+ setup() {
2579
+ const { t: e } = ie();
2580
+ return {
2581
+ t: e
2582
+ };
2583
+ },
2584
+ watch: {
2585
+ filter: {
2586
+ handler(e) {
2587
+ this.model = e;
2588
+ },
2589
+ immediate: !0
2590
+ }
2591
+ }
2592
+ });
2593
+ function Rt(e) {
2594
+ const t = e;
2595
+ t.__i18n = t.__i18n || [], t.__i18n.push({
2596
+ locale: "",
2597
+ resource: {
2598
+ "en-US": {
2599
+ BFilterByReviewMenu: {
2600
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Apply" } },
2601
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancel" } },
2602
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reset" } },
2603
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Review" } }
2604
+ }
2605
+ },
2606
+ "fr-FR": {
2607
+ BFilterByReviewMenu: {
2608
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Appliquer" } },
2609
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuler" } },
2610
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Réinitialiser" } },
2611
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Notes" } }
2612
+ }
2613
+ },
2614
+ "de-DE": {
2615
+ BFilterByReviewMenu: {
2616
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Anwenden" } },
2617
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Abbrechen" } },
2618
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Zurücksetzen" } },
2619
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Bewertung" } }
2620
+ }
2621
+ },
2622
+ "es-ES": {
2623
+ BFilterByReviewMenu: {
2624
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
2625
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
2626
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Restablecer" } },
2627
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reseña" } }
2628
+ }
2629
+ },
2630
+ "it-IT": {
2631
+ BFilterByReviewMenu: {
2632
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Applica" } },
2633
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annulla" } },
2634
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ripristina" } },
2635
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Recensione" } }
2636
+ }
2637
+ },
2638
+ "nl-NL": {
2639
+ BFilterByReviewMenu: {
2640
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Toepassen" } },
2641
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuleren" } },
2642
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reset" } },
2643
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Review" } }
2644
+ }
2645
+ },
2646
+ "pt-PT": {
2647
+ BFilterByReviewMenu: {
2648
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
2649
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
2650
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Repor" } },
2651
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Avaliação" } }
2652
+ }
2653
+ }
2654
+ }
2655
+ });
2656
+ }
2657
+ const Ol = { class: "text-center px-10 py-4" }, _l = { class: "font-weight-bold" };
2658
+ function Pl(e, t, l, n, i, r) {
2659
+ var d;
2660
+ const s = oe("BFilterByReview");
2661
+ return R(), z(qe, Z(e.$attrs, {
2662
+ modelValue: e.isMenuOpen,
2663
+ "onUpdate:modelValue": t[1] || (t[1] = (m) => e.isMenuOpen = m),
2664
+ attach: (d = e.$parent) == null ? void 0 : d.$el,
2665
+ location: "bottom",
2666
+ "close-on-content-click": !1,
2667
+ "content-class": "pa-0",
2668
+ "open-on-click": ""
2669
+ }), {
2670
+ activator: o(({ props: m }) => [
2671
+ a(xe, {
2672
+ color: "grey",
2673
+ icon: "fas fa-times",
2674
+ style: { cursor: "pointer" },
2675
+ "model-value": !!e.filter,
2676
+ onClick: e.onReset
2677
+ }, {
2678
+ default: o(() => [
2679
+ a(j, Z(m, {
2680
+ class: "text-white",
2681
+ color: "grey",
2682
+ elevation: 0,
2683
+ variant: "outlined",
2684
+ size: "small"
2685
+ }), {
2686
+ default: o(() => [
2687
+ x("span", null, [
2688
+ x("b", null, I(e.filter) + "+", 1)
2689
+ ])
2690
+ ]),
2691
+ _: 2
2692
+ }, 1040)
2693
+ ]),
2694
+ _: 2
2695
+ }, 1032, ["model-value", "onClick"])
2696
+ ]),
2697
+ default: o(() => [
2698
+ a(Ie, { elevation: "1" }, {
2699
+ default: o(() => [
2700
+ x("div", Ol, [
2701
+ x("p", _l, I(e.t("BFilterByReviewMenu.title")), 1),
2702
+ a(s, {
2703
+ modelValue: e.model,
2704
+ "onUpdate:modelValue": t[0] || (t[0] = (m) => e.model = m),
2705
+ disabled: e.isLoading
2706
+ }, null, 8, ["modelValue", "disabled"])
2707
+ ]),
2708
+ a(at, { class: "justify-end pa-2" }, {
2709
+ default: o(() => [
2710
+ a(j, {
2711
+ class: "text-right",
2712
+ color: "primary",
2713
+ elevation: "0",
2714
+ size: "small",
2715
+ variant: "text",
2716
+ onClick: e.closeMenu
2717
+ }, {
2718
+ default: o(() => [
2719
+ D(I(e.t("BFilterByReviewMenu.cancel")), 1)
2720
+ ]),
2721
+ _: 1
2722
+ }, 8, ["onClick"]),
2723
+ a(j, {
2724
+ class: "text-right",
2725
+ color: "error",
2726
+ elevation: "0",
2727
+ size: "small",
2728
+ variant: "text",
2729
+ onClick: e.onReset
2730
+ }, {
2731
+ default: o(() => [
2732
+ D(I(e.t("BFilterByReviewMenu.reset")), 1)
2733
+ ]),
2734
+ _: 1
2735
+ }, 8, ["onClick"]),
2736
+ a(j, {
2737
+ class: "text-right",
2738
+ color: "success",
2739
+ elevation: "0",
2740
+ size: "small",
2741
+ onClick: e.onApply
2742
+ }, {
2743
+ default: o(() => [
2744
+ D(I(e.t("BFilterByReviewMenu.apply")), 1)
2745
+ ]),
2746
+ _: 1
2747
+ }, 8, ["onClick"])
2748
+ ]),
2749
+ _: 1
2750
+ })
2751
+ ]),
2752
+ _: 1
2753
+ })
2754
+ ]),
2755
+ _: 1
2756
+ }, 16, ["modelValue", "attach"]);
2757
+ }
2758
+ typeof Rt == "function" && Rt(Jt);
2759
+ const Il = /* @__PURE__ */ le(Jt, [["render", Pl], ["__scopeId", "data-v-40e4e735"]]), El = {
2760
+ disabled: { type: Boolean },
2761
+ modelValue: {
2762
+ type: [Number, String]
2763
+ }
2764
+ }, Tl = ee({
2765
+ computed: {
2766
+ color() {
2767
+ return this.disabled ? "grey lighten-1" : "orange";
2768
+ },
2769
+ model: {
2770
+ get() {
2771
+ var e;
2772
+ return Number((e = this.modelValue) == null ? void 0 : e.split(",")[0]);
2773
+ },
2774
+ set(e) {
2775
+ const t = ci(e, 6).join(",");
2776
+ this.$emit("update:modelValue", t);
2777
+ }
2778
+ }
2779
+ },
2780
+ name: "BFilterByStar",
2781
+ props: El,
2782
+ setup() {
2783
+ const { t: e } = ie();
2784
+ return {
2785
+ t: e
2786
+ };
2787
+ }
2788
+ }), Ll = Ce({
2789
+ name: String,
2790
+ itemAriaLabel: {
2791
+ type: String,
2792
+ default: "$vuetify.rating.ariaLabel.item"
2793
+ },
2794
+ activeColor: String,
2795
+ color: String,
2796
+ clearable: Boolean,
2797
+ disabled: Boolean,
2798
+ emptyIcon: {
2799
+ type: ut,
2800
+ default: "$ratingEmpty"
2801
+ },
2802
+ fullIcon: {
2803
+ type: ut,
2804
+ default: "$ratingFull"
2805
+ },
2806
+ halfIncrements: Boolean,
2807
+ hover: Boolean,
2808
+ length: {
2809
+ type: [Number, String],
2810
+ default: 5
2811
+ },
2812
+ readonly: Boolean,
2813
+ modelValue: {
2814
+ type: [Number, String],
2815
+ default: 0
2816
+ },
2817
+ itemLabels: Array,
2818
+ itemLabelPosition: {
2819
+ type: String,
2820
+ default: "top",
2821
+ validator: (e) => ["top", "bottom"].includes(e)
2822
+ },
2823
+ ripple: Boolean,
2824
+ ...Ue(),
2825
+ ...si(),
2826
+ ...li(),
2827
+ ...Nt(),
2828
+ ...At()
2829
+ }, "VRating"), Dl = _e()({
2830
+ name: "VRating",
2831
+ props: Ll(),
2832
+ emits: {
2833
+ "update:modelValue": (e) => !0
2834
+ },
2835
+ setup(e, t) {
2836
+ let {
2837
+ slots: l
2838
+ } = t;
2839
+ const {
2840
+ t: n
2841
+ } = Pa(), {
2842
+ themeClasses: i
2843
+ } = Dt(e), r = et(e, "modelValue"), s = v(() => Je(parseFloat(r.value), 0, Number(e.length))), d = v(() => Tt(Number(e.length), 1)), m = v(() => d.value.flatMap((p) => e.halfIncrements ? [p - 0.5, p] : [p])), g = ce(-1), c = v(() => m.value.map((p) => {
2844
+ const O = e.hover && g.value > -1, y = s.value >= p, P = g.value >= p, U = (O ? P : y) ? e.fullIcon : e.emptyIcon, A = e.activeColor ?? e.color, w = y || P ? A : e.color;
2845
+ return {
2846
+ isFilled: y,
2847
+ isHovered: P,
2848
+ icon: U,
2849
+ color: w
2850
+ };
2851
+ })), b = v(() => [0, ...m.value].map((p) => {
2852
+ function O() {
2853
+ g.value = p;
2854
+ }
2855
+ function y() {
2856
+ g.value = -1;
2857
+ }
2858
+ function P() {
2859
+ e.disabled || e.readonly || (r.value = s.value === p && e.clearable ? 0 : p);
2860
+ }
2861
+ return {
2862
+ onMouseenter: e.hover ? O : void 0,
2863
+ onMouseleave: e.hover ? y : void 0,
2864
+ onClick: P
2865
+ };
2866
+ })), B = v(() => e.name ?? `v-rating-${Ia()}`);
2867
+ function u(p) {
2868
+ var F, V;
2869
+ let {
2870
+ value: O,
2871
+ index: y,
2872
+ showStar: P = !0
2873
+ } = p;
2874
+ const {
2875
+ onMouseenter: L,
2876
+ onMouseleave: U,
2877
+ onClick: A
2878
+ } = b.value[y + 1], w = `${B.value}-${String(O).replace(".", "-")}`, $ = {
2879
+ color: (F = c.value[y]) == null ? void 0 : F.color,
2880
+ density: e.density,
2881
+ disabled: e.disabled,
2882
+ icon: (V = c.value[y]) == null ? void 0 : V.icon,
2883
+ ripple: e.ripple,
2884
+ size: e.size,
2885
+ variant: "plain"
2886
+ };
2887
+ return a(re, null, [a("label", {
2888
+ for: w,
2889
+ class: {
2890
+ "v-rating__item--half": e.halfIncrements && O % 1 > 0,
2891
+ "v-rating__item--full": e.halfIncrements && O % 1 === 0
2892
+ },
2893
+ onMouseenter: L,
2894
+ onMouseleave: U,
2895
+ onClick: A
2896
+ }, [a("span", {
2897
+ class: "v-rating__hidden"
2898
+ }, [n(e.itemAriaLabel, O, e.length)]), P ? l.item ? l.item({
2899
+ ...c.value[y],
2900
+ props: $,
2901
+ value: O,
2902
+ index: y,
2903
+ rating: s.value
2904
+ }) : a(j, Z({
2905
+ "aria-label": n(e.itemAriaLabel, O, e.length)
2906
+ }, $), null) : void 0]), a("input", {
2907
+ class: "v-rating__hidden",
2908
+ name: B.value,
2909
+ id: w,
2910
+ type: "radio",
2911
+ value: O,
2912
+ checked: s.value === O,
2913
+ tabindex: -1,
2914
+ readonly: e.readonly,
2915
+ disabled: e.disabled
2916
+ }, null)]);
2917
+ }
2918
+ function h(p) {
2919
+ return l["item-label"] ? l["item-label"](p) : p.label ? a("span", null, [p.label]) : a("span", null, [D(" ")]);
2920
+ }
2921
+ return Pe(() => {
2922
+ var O;
2923
+ const p = !!((O = e.itemLabels) != null && O.length) || l["item-label"];
2924
+ return a(e.tag, {
2925
+ class: ["v-rating", {
2926
+ "v-rating--hover": e.hover,
2927
+ "v-rating--readonly": e.readonly
2928
+ }, i.value, e.class],
2929
+ style: e.style
2930
+ }, {
2931
+ default: () => [a(u, {
2932
+ value: 0,
2933
+ index: -1,
2934
+ showStar: !1
2935
+ }, null), d.value.map((y, P) => {
2936
+ var L, U;
2937
+ return a("div", {
2938
+ class: "v-rating__wrapper"
2939
+ }, [p && e.itemLabelPosition === "top" ? h({
2940
+ value: y,
2941
+ index: P,
2942
+ label: (L = e.itemLabels) == null ? void 0 : L[P]
2943
+ }) : void 0, a("div", {
2944
+ class: "v-rating__item"
2945
+ }, [e.halfIncrements ? a(re, null, [a(u, {
2946
+ value: y - 0.5,
2947
+ index: P * 2
2948
+ }, null), a(u, {
2949
+ value: y,
2950
+ index: P * 2 + 1
2951
+ }, null)]) : a(u, {
2952
+ value: y,
2953
+ index: P
2954
+ }, null)]), p && e.itemLabelPosition === "bottom" ? h({
2955
+ value: y,
2956
+ index: P,
2957
+ label: (U = e.itemLabels) == null ? void 0 : U[P]
2958
+ }) : void 0]);
2959
+ })]
2960
+ });
2961
+ }), {};
2962
+ }
2963
+ });
2964
+ function Al(e, t, l, n, i, r) {
2965
+ return R(), z(Dl, {
2966
+ modelValue: e.model,
2967
+ "onUpdate:modelValue": t[0] || (t[0] = (s) => e.model = s),
2968
+ color: e.color,
2969
+ class: fe(e.disabled && "cursor-not-allowed"),
2970
+ "active-color": e.color,
2971
+ density: "compact",
2972
+ disabled: e.disabled,
2973
+ "empty-icon": "$ratingEmpty",
2974
+ hover: "",
2975
+ readonly: e.disabled,
2976
+ size: "24"
2977
+ }, null, 8, ["modelValue", "color", "class", "active-color", "disabled", "readonly"]);
2978
+ }
2979
+ const ea = /* @__PURE__ */ le(Tl, [["render", Al]]), Hl = {
2980
+ modelValue: {
2981
+ type: [Number, String]
2982
+ }
2983
+ }, Nl = {
2984
+ filter: { ...Hl.modelValue },
2985
+ isLoading: {
2986
+ default: !1,
2987
+ type: Boolean
2988
+ }
2989
+ }, ta = ee({
2990
+ components: { BFilterByStar: ea },
2991
+ data() {
2992
+ return {
2993
+ isMenuOpen: !1,
2994
+ model: this.filter
2995
+ };
2996
+ },
2997
+ methods: {
2998
+ closeMenu() {
2999
+ this.isMenuOpen = !1;
3000
+ },
3001
+ onApply() {
3002
+ this.closeMenu(), this.$emit("update:filter", this.model);
3003
+ },
3004
+ onCancel() {
3005
+ this.model = this.filter, this.isMenuOpen = !1;
3006
+ },
3007
+ onReset() {
3008
+ this.closeMenu(), this.$emit("reset");
3009
+ }
3010
+ },
3011
+ mixins: [Ve],
3012
+ name: "BFilterByStarMenu",
3013
+ props: Nl,
3014
+ setup() {
3015
+ const { t: e } = ie();
3016
+ return {
3017
+ t: e
3018
+ };
3019
+ },
3020
+ watch: {
3021
+ filter: {
3022
+ handler(e) {
3023
+ this.model = e;
3024
+ },
3025
+ immediate: !0
3026
+ }
3027
+ }
3028
+ });
3029
+ function Vt(e) {
3030
+ const t = e;
3031
+ t.__i18n = t.__i18n || [], t.__i18n.push({
3032
+ locale: "",
3033
+ resource: {
3034
+ "en-US": {
3035
+ BFilterByStarMenu: {
3036
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Apply" } },
3037
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancel" } },
3038
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reset" } },
3039
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Star Rating" } }
3040
+ }
3041
+ },
3042
+ "fr-FR": {
3043
+ BFilterByStarMenu: {
3044
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Appliquer" } },
3045
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuler" } },
3046
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Réinitialiser" } },
3047
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Étoiles" } }
3048
+ }
3049
+ },
3050
+ "de-DE": {
3051
+ BFilterByStarMenu: {
3052
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Anwenden" } },
3053
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Abbrechen" } },
3054
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Zurücksetzen" } },
3055
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sternebewertung" } }
3056
+ }
3057
+ },
3058
+ "es-ES": {
3059
+ BFilterByStarMenu: {
3060
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
3061
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
3062
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Restablecer" } },
3063
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Puntuación de estrellas" } }
3064
+ }
3065
+ },
3066
+ "it-IT": {
3067
+ BFilterByStarMenu: {
3068
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Applica" } },
3069
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annulla" } },
3070
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ripristina" } },
3071
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Valutazione stelle" } }
3072
+ }
3073
+ },
3074
+ "nl-NL": {
3075
+ BFilterByStarMenu: {
3076
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Toepassen" } },
3077
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuleren" } },
3078
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Resetten" } },
3079
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sterrenbeoordeling" } }
3080
+ }
3081
+ },
3082
+ "pt-PT": {
3083
+ BFilterByStarMenu: {
3084
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
3085
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
3086
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Repor" } },
3087
+ title: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Classificação por estrelas" } }
3088
+ }
3089
+ }
3090
+ }
3091
+ });
3092
+ }
3093
+ const zl = { class: "text-center px-8 py-4" }, Ul = { class: "font-weight-bold" };
3094
+ function xl(e, t, l, n, i, r) {
3095
+ var d;
3096
+ const s = oe("BFilterByStar");
3097
+ return R(), z(qe, Z(e.$attrs, {
3098
+ modelValue: e.isMenuOpen,
3099
+ "onUpdate:modelValue": t[1] || (t[1] = (m) => e.isMenuOpen = m),
3100
+ attach: (d = e.$parent) == null ? void 0 : d.$el,
3101
+ "close-on-content-click": !1,
3102
+ "content-class": "pa-0",
3103
+ location: "bottom",
3104
+ "open-on-click": ""
3105
+ }), {
3106
+ activator: o(({ props: m }) => [
3107
+ a(xe, {
3108
+ color: "grey",
3109
+ icon: "fas fa-times",
3110
+ style: { cursor: "pointer" },
3111
+ "model-value": !!e.model,
3112
+ onClick: e.onReset
3113
+ }, {
3114
+ default: o(() => [
3115
+ a(j, Z(m, {
3116
+ class: "text-white",
3117
+ color: "grey",
3118
+ elevation: 0,
3119
+ variant: "outlined",
3120
+ size: "small"
3121
+ }), {
3122
+ default: o(() => {
3123
+ var g;
3124
+ return [
3125
+ x("span", null, [
3126
+ x("span", null, I((g = e.filter) == null ? void 0 : g.split(",")[0]), 1),
3127
+ e.model ? (R(), z(de, {
3128
+ key: 0,
3129
+ id: "star-icon"
3130
+ }, {
3131
+ default: o(() => t[2] || (t[2] = [
3132
+ D(" fas fa-solid fa-star ")
3133
+ ])),
3134
+ _: 1,
3135
+ __: [2]
3136
+ })) : W("", !0)
3137
+ ])
3138
+ ];
3139
+ }),
3140
+ _: 2
3141
+ }, 1040)
3142
+ ]),
3143
+ _: 2
3144
+ }, 1032, ["model-value", "onClick"])
3145
+ ]),
3146
+ default: o(() => [
3147
+ a(Ie, { elevation: "1" }, {
3148
+ default: o(() => [
3149
+ x("div", zl, [
3150
+ x("p", Ul, I(e.t("BFilterByStarMenu.title")), 1),
3151
+ a(s, {
3152
+ modelValue: e.model,
3153
+ "onUpdate:modelValue": t[0] || (t[0] = (m) => e.model = m)
3154
+ }, null, 8, ["modelValue"])
3155
+ ]),
3156
+ a(at, { class: "justify-end pa-2" }, {
3157
+ default: o(() => [
3158
+ a(j, {
3159
+ class: "text-right",
3160
+ color: "primary",
3161
+ elevation: "0",
3162
+ size: "small",
3163
+ variant: "text",
3164
+ onClick: e.onCancel
3165
+ }, {
3166
+ default: o(() => [
3167
+ D(I(e.t("BFilterByStarMenu.cancel")), 1)
3168
+ ]),
3169
+ _: 1
3170
+ }, 8, ["onClick"]),
3171
+ a(j, {
3172
+ class: "text-right",
3173
+ color: "error",
3174
+ elevation: "0",
3175
+ size: "small",
3176
+ variant: "text",
3177
+ onClick: e.onReset
3178
+ }, {
3179
+ default: o(() => [
3180
+ D(I(e.t("BFilterByStarMenu.reset")), 1)
3181
+ ]),
3182
+ _: 1
3183
+ }, 8, ["onClick"]),
3184
+ a(j, {
3185
+ class: "text-right",
3186
+ color: "success",
3187
+ elevation: "0",
3188
+ size: "small",
3189
+ onClick: e.onApply
3190
+ }, {
3191
+ default: o(() => [
3192
+ D(I(e.t("BFilterByStarMenu.apply")), 1)
3193
+ ]),
3194
+ _: 1
3195
+ }, 8, ["onClick"])
3196
+ ]),
3197
+ _: 1
3198
+ })
3199
+ ]),
3200
+ _: 1
3201
+ })
3202
+ ]),
3203
+ _: 1
3204
+ }, 16, ["modelValue", "attach"]);
3205
+ }
3206
+ typeof Vt == "function" && Vt(ta);
3207
+ const ql = /* @__PURE__ */ le(ta, [["render", xl], ["__scopeId", "data-v-9c4a154f"]]), jl = {
3208
+ attach: {
3209
+ default: !0,
3210
+ type: [Boolean, Element]
3211
+ },
3212
+ modelValue: {
3213
+ required: !0,
3214
+ type: Object
3215
+ }
3216
+ }, aa = ee({
3217
+ computed: {
3218
+ model: {
3219
+ get() {
3220
+ const e = this.items.findIndex(
3221
+ (t) => t.value === this.modelValue.value && t.direction === this.modelValue.direction
3222
+ );
3223
+ return e === -1 ? 0 : e;
3224
+ },
3225
+ set(e) {
3226
+ this.$emit("update:modelValue", this.items[e], G.SortBy);
3227
+ }
3228
+ }
3229
+ },
3230
+ data() {
3231
+ return {
3232
+ isMenuOpen: !1,
3233
+ items: [
3234
+ {
3235
+ direction: ye.Asc,
3236
+ value: ge.TopPicks
3237
+ },
3238
+ {
3239
+ direction: ye.Asc,
3240
+ value: ge.Distance
3241
+ },
3242
+ {
3243
+ direction: ye.Asc,
3244
+ value: ge.Price
3245
+ },
3246
+ {
3247
+ direction: ye.Desc,
3248
+ value: ge.Price
3249
+ },
3250
+ {
3251
+ direction: ye.Asc,
3252
+ value: ge.Rating
3253
+ },
3254
+ {
3255
+ direction: ye.Desc,
3256
+ value: ge.Rating
3257
+ },
3258
+ {
3259
+ direction: ye.Desc,
3260
+ value: ge.ReviewRating
3261
+ }
3262
+ ]
3263
+ };
3264
+ },
3265
+ methods: {
3266
+ onItemClick(e) {
3267
+ this.$emit("update:modelValue", e, G.SortBy);
3268
+ }
3269
+ },
3270
+ name: "BSortByMenu",
3271
+ props: jl,
3272
+ setup() {
3273
+ const { t: e } = ie();
3274
+ return {
3275
+ t: e
3276
+ };
3277
+ }
3278
+ });
3279
+ function Ct(e) {
3280
+ const t = e;
3281
+ t.__i18n = t.__i18n || [], t.__i18n.push({
3282
+ locale: "",
3283
+ resource: {
3284
+ "en-US": {
3285
+ BSortByMenu: {
3286
+ prefix: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sort by : " } },
3287
+ options: {
3288
+ top_picks: {
3289
+ asc: {
3290
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3291
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-heart" } }
3292
+ },
3293
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Our Top Picks" } }
3294
+ },
3295
+ price: {
3296
+ asc: {
3297
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(lowest first)" } },
3298
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-up" } }
3299
+ },
3300
+ desc: {
3301
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(highest first)" } },
3302
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-down" } }
3303
+ },
3304
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Price" } }
3305
+ },
3306
+ distance: {
3307
+ asc: {
3308
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3309
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-person-walking" } }
3310
+ },
3311
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Closest" } }
3312
+ },
3313
+ rating: {
3314
+ asc: {
3315
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(low to high)" } },
3316
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } }
3317
+ },
3318
+ desc: {
3319
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(high to low)" } },
3320
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } },
3321
+ style: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "mirror" } }
3322
+ },
3323
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Stars" } }
3324
+ },
3325
+ review_rating: {
3326
+ desc: {
3327
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3328
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-thumbs-up" } }
3329
+ },
3330
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Best Reviewed" } }
3331
+ }
3332
+ }
3333
+ }
3334
+ },
3335
+ "fr-FR": {
3336
+ BSortByMenu: {
3337
+ prefix: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Trié par : " } },
3338
+ options: {
3339
+ top_picks: {
3340
+ asc: {
3341
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3342
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-heart" } }
3343
+ },
3344
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Nos préférés" } }
3345
+ },
3346
+ price: {
3347
+ asc: {
3348
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(du moins cher au plus cher)" } },
3349
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-up" } }
3350
+ },
3351
+ desc: {
3352
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(du plus cher au moins cher)" } },
3353
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-down" } }
3354
+ },
3355
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Tarif" } }
3356
+ },
3357
+ distance: {
3358
+ asc: {
3359
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3360
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-person-walking" } }
3361
+ },
3362
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Proche" } }
3363
+ },
3364
+ rating: {
3365
+ asc: {
3366
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(croissant)" } },
3367
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } }
3368
+ },
3369
+ desc: {
3370
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(décroissant)" } },
3371
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } },
3372
+ style: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "mirror" } }
3373
+ },
3374
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Nombre d'étoiles" } }
3375
+ },
3376
+ review_rating: {
3377
+ desc: {
3378
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3379
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-thumbs-up" } }
3380
+ },
3381
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Meilleure note" } }
3382
+ }
3383
+ }
3384
+ }
3385
+ },
3386
+ "de-DE": {
3387
+ BSortByMenu: {
3388
+ prefix: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sortieren nach: " } },
3389
+ options: {
3390
+ top_picks: {
3391
+ asc: {
3392
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3393
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-heart" } }
3394
+ },
3395
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Unsere Top-Empfehlungen" } }
3396
+ },
3397
+ price: {
3398
+ asc: {
3399
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(niedrigster zuerst)" } },
3400
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-up" } }
3401
+ },
3402
+ desc: {
3403
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(höchster zuerst)" } },
3404
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-down" } }
3405
+ },
3406
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preis" } }
3407
+ },
3408
+ distance: {
3409
+ asc: {
3410
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3411
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-person-walking" } }
3412
+ },
3413
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Am nächsten" } }
3414
+ },
3415
+ rating: {
3416
+ asc: {
3417
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(niedrig bis hoch)" } },
3418
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } }
3419
+ },
3420
+ desc: {
3421
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(hoch bis niedrig)" } },
3422
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } },
3423
+ style: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "mirror" } }
3424
+ },
3425
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sterne" } }
3426
+ },
3427
+ review_rating: {
3428
+ desc: {
3429
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3430
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-thumbs-up" } }
3431
+ },
3432
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Am besten bewertet" } }
3433
+ }
3434
+ }
3435
+ }
3436
+ },
3437
+ "es-ES": {
3438
+ BSortByMenu: {
3439
+ prefix: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ordenar por: " } },
3440
+ options: {
3441
+ top_picks: {
3442
+ asc: {
3443
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3444
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-heart" } }
3445
+ },
3446
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Nuestras recomendaciones" } }
3447
+ },
3448
+ price: {
3449
+ asc: {
3450
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(más bajo primero)" } },
3451
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-up" } }
3452
+ },
3453
+ desc: {
3454
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(más alto primero)" } },
3455
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-down" } }
3456
+ },
3457
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Precio" } }
3458
+ },
3459
+ distance: {
3460
+ asc: {
3461
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3462
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-person-walking" } }
3463
+ },
3464
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Más cercano" } }
3465
+ },
3466
+ rating: {
3467
+ asc: {
3468
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(de menor a mayor)" } },
3469
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } }
3470
+ },
3471
+ desc: {
3472
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(de mayor a menor)" } },
3473
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } },
3474
+ style: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "mirror" } }
3475
+ },
3476
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Estrellas" } }
3477
+ },
3478
+ review_rating: {
3479
+ desc: {
3480
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3481
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-thumbs-up" } }
3482
+ },
3483
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Mejor valorados" } }
3484
+ }
3485
+ }
3486
+ }
3487
+ },
3488
+ "it-IT": {
3489
+ BSortByMenu: {
3490
+ prefix: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ordina per: " } },
3491
+ options: {
3492
+ top_picks: {
3493
+ asc: {
3494
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3495
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-heart" } }
3496
+ },
3497
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "I nostri preferiti" } }
3498
+ },
3499
+ price: {
3500
+ asc: {
3501
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(più basso)" } },
3502
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-up" } }
3503
+ },
3504
+ desc: {
3505
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(più alto)" } },
3506
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-down" } }
3507
+ },
3508
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prezzo" } }
3509
+ },
3510
+ distance: {
3511
+ asc: {
3512
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3513
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-person-walking" } }
3514
+ },
3515
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Più vicino" } }
3516
+ },
3517
+ rating: {
3518
+ asc: {
3519
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(dal più basso al più alto)" } },
3520
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } }
3521
+ },
3522
+ desc: {
3523
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(dal più alto al più basso)" } },
3524
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } },
3525
+ style: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "mirror" } }
3526
+ },
3527
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Stelle" } }
3528
+ },
3529
+ review_rating: {
3530
+ desc: {
3531
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3532
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-thumbs-up" } }
3533
+ },
3534
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Migliori recensioni" } }
3535
+ }
3536
+ }
3537
+ }
3538
+ },
3539
+ "nl-NL": {
3540
+ BSortByMenu: {
3541
+ prefix: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sorteren op: " } },
3542
+ options: {
3543
+ top_picks: {
3544
+ asc: {
3545
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3546
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-heart" } }
3547
+ },
3548
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Onze favorieten" } }
3549
+ },
3550
+ price: {
3551
+ asc: {
3552
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(laagste eerst)" } },
3553
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-up" } }
3554
+ },
3555
+ desc: {
3556
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(hoogste eerst)" } },
3557
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-down" } }
3558
+ },
3559
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prijs" } }
3560
+ },
3561
+ distance: {
3562
+ asc: {
3563
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3564
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-person-walking" } }
3565
+ },
3566
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Dichtstbijzijnd" } }
3567
+ },
3568
+ rating: {
3569
+ asc: {
3570
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(laag naar hoog)" } },
3571
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } }
3572
+ },
3573
+ desc: {
3574
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(hoog naar laag)" } },
3575
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } },
3576
+ style: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "mirror" } }
3577
+ },
3578
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sterren" } }
3579
+ },
3580
+ review_rating: {
3581
+ desc: {
3582
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3583
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-thumbs-up" } }
3584
+ },
3585
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Best beoordeeld" } }
3586
+ }
3587
+ }
3588
+ }
3589
+ },
3590
+ "pt-PT": {
3591
+ BSortByMenu: {
3592
+ prefix: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ordenar por: " } },
3593
+ options: {
3594
+ top_picks: {
3595
+ asc: {
3596
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3597
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-heart" } }
3598
+ },
3599
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "As nossas escolhas" } }
3600
+ },
3601
+ price: {
3602
+ asc: {
3603
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(o mais baixo primeiro)" } },
3604
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-up" } }
3605
+ },
3606
+ desc: {
3607
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(o mais alto primeiro)" } },
3608
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-arrow-trend-down" } }
3609
+ },
3610
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preço" } }
3611
+ },
3612
+ distance: {
3613
+ asc: {
3614
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3615
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-person-walking" } }
3616
+ },
3617
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Mais perto" } }
3618
+ },
3619
+ rating: {
3620
+ asc: {
3621
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(baixo para alto)" } },
3622
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } }
3623
+ },
3624
+ desc: {
3625
+ wording: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "(alto para baixo)" } },
3626
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-star-half-stroke" } },
3627
+ style: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "mirror" } }
3628
+ },
3629
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Estrelas" } }
3630
+ },
3631
+ review_rating: {
3632
+ desc: {
3633
+ wording: { t: 0, b: { static: "", t: 2, i: [] } },
3634
+ icon: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "fas fa-solid fa-thumbs-up" } }
3635
+ },
3636
+ name: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Melhor avaliado" } }
3637
+ }
3638
+ }
3639
+ }
3640
+ }
3641
+ }
3642
+ });
3643
+ }
3644
+ const Gl = { class: "px-4 font-weight-bold" }, Kl = { class: "text-grey-darken-3" };
3645
+ function Yl(e, t, l, n, i, r) {
3646
+ return R(), z(qe, {
3647
+ modelValue: e.isMenuOpen,
3648
+ "onUpdate:modelValue": t[1] || (t[1] = (s) => e.isMenuOpen = s),
3649
+ attach: e.attach,
3650
+ eager: "",
3651
+ transition: "scroll-y-transition"
3652
+ }, {
3653
+ activator: o(({ props: s }) => [
3654
+ a(j, Z(s, {
3655
+ color: "secondary",
3656
+ elevation: 0,
3657
+ size: "small"
3658
+ }), {
3659
+ default: o(() => [
3660
+ x("span", null, [
3661
+ e.t(
3662
+ `BSortByMenu.options.${e.items[e.model].value}.${e.modelValue.direction}.icon`
3663
+ ).length ? (R(), z(de, {
3664
+ key: 0,
3665
+ class: fe([
3666
+ "mr-1",
3667
+ e.t(
3668
+ `BSortByMenu.options.${e.items[e.model].value}.${e.modelValue.direction}.style`
3669
+ )
3670
+ ]),
3671
+ size: "12"
3672
+ }, {
3673
+ default: o(() => [
3674
+ D(I(e.t(
3675
+ `BSortByMenu.options.${e.items[e.model].value}.${e.modelValue.direction}.icon`
3676
+ )), 1)
3677
+ ]),
3678
+ _: 1
3679
+ }, 8, ["class"])) : W("", !0),
3680
+ D(" " + I(e.t(`BSortByMenu.options.${e.items[e.model].value}.name`)) + " ", 1),
3681
+ a(de, { size: "10" }, {
3682
+ default: o(() => t[2] || (t[2] = [
3683
+ D("fas fa-chevron-down")
3684
+ ])),
3685
+ _: 1,
3686
+ __: [2]
3687
+ })
3688
+ ])
3689
+ ]),
3690
+ _: 2
3691
+ }, 1040)
3692
+ ]),
3693
+ default: o(() => [
3694
+ a(Si, null, {
3695
+ default: o(() => [
3696
+ a(We, {
3697
+ modelValue: e.model,
3698
+ "onUpdate:modelValue": t[0] || (t[0] = (s) => e.model = s),
3699
+ class: "b-sort-by-list bg-white pa-0",
3700
+ mandatory: ""
3701
+ }, {
3702
+ default: o(() => [
3703
+ a(pt, { class: "pt-2" }, {
3704
+ default: o(() => [
3705
+ x("small", Gl, I(e.t("BSortByMenu.prefix")), 1)
3706
+ ]),
3707
+ _: 1
3708
+ }),
3709
+ (R(!0), K(re, null, Re(e.items, (s, d) => (R(), z(We, {
3710
+ key: d,
3711
+ class: "px-3",
3712
+ onClick: (m) => e.onItemClick(s)
3713
+ }, {
3714
+ default: o(() => [
3715
+ a(pt, null, {
3716
+ default: o(() => [
3717
+ x("small", Kl, [
3718
+ e.t(`BSortByMenu.options.${s.value}.${s.direction}.icon`).length ? (R(), z(de, {
3719
+ key: 0,
3720
+ class: fe([
3721
+ "text-grey-darken-3",
3722
+ e.t(`BSortByMenu.options.${s.value}.${s.direction}.style`)
3723
+ ]),
3724
+ size: "14",
3725
+ style: { "min-width": "24px" }
3726
+ }, {
3727
+ default: o(() => [
3728
+ D(I(e.t(`BSortByMenu.options.${s.value}.${s.direction}.icon`)), 1)
3729
+ ]),
3730
+ _: 2
3731
+ }, 1032, ["class"])) : W("", !0),
3732
+ D(" " + I(e.t(`BSortByMenu.options.${s.value}.name`)) + " " + I(e.t(`BSortByMenu.options.${s.value}.${s.direction}.wording`)), 1)
3733
+ ])
3734
+ ]),
3735
+ _: 2
3736
+ }, 1024)
3737
+ ]),
3738
+ _: 2
3739
+ }, 1032, ["onClick"]))), 128))
3740
+ ]),
3741
+ _: 1
3742
+ }, 8, ["modelValue"])
3743
+ ]),
3744
+ _: 1
3745
+ })
3746
+ ]),
3747
+ _: 1
3748
+ }, 8, ["modelValue", "attach"]);
3749
+ }
3750
+ typeof Ct == "function" && Ct(aa);
3751
+ const Wl = /* @__PURE__ */ le(aa, [["render", Yl], ["__scopeId", "data-v-aede7be3"]]), Xl = {
3752
+ isLoading: {
3753
+ default: !1,
3754
+ type: Boolean
3755
+ },
3756
+ small: {
3757
+ default: !0,
3758
+ type: Boolean
3759
+ },
3760
+ withSort: {
3761
+ default: !0,
3762
+ type: Boolean
3763
+ }
3764
+ }, ia = ee({
3765
+ components: {
3766
+ BFilterByPrice: Xt,
3767
+ BFilterByPriceMenu: Sl,
3768
+ BFilterByReview: Qt,
3769
+ BFilterByReviewMenu: Il,
3770
+ BFilterByStar: ea,
3771
+ BFilterByStarMenu: ql,
3772
+ BSortByMenu: Wl
3773
+ },
3774
+ computed: {
3775
+ ..._t(Et),
3776
+ activeFiltersNumber: ne("hotelOffers/activeFiltersNumber"),
3777
+ areFiltersActive: ne("hotelOffers/areFiltersActive"),
3778
+ filters: ne("hotelOffers/filters"),
3779
+ hotelOfferRequest: ne("hotelOfferRequest"),
3780
+ isPriceFilterActive: ne("hotelOffers/isPriceFilterActive"),
3781
+ isResetButtonVisible() {
3782
+ var e, t;
3783
+ return ((e = this.filters[G.SortBy]) == null ? void 0 : e.value) !== ((t = Le[G.SortBy]) == null ? void 0 : t.value) || this.isStarRatingFilterActive || this.isReviewRatingFilterActive || this.isPriceFilterActive;
3784
+ },
3785
+ isReviewRatingFilterActive: ne(
3786
+ "hotelOffers/isReviewRatingFilterActive"
3787
+ ),
3788
+ isStarRatingFilterActive: ne(
3789
+ "hotelOffers/isStarRatingFilterActive"
3790
+ ),
3791
+ priceHistogramStepCount: ne("hotelOffers/priceHistogramStepCount"),
3792
+ priceMax: ne("hotelOffers/getPriceMax"),
3793
+ priceMin: ne("hotelOffers/getPriceMin"),
3794
+ sortByModel: {
3795
+ get() {
3796
+ return this.filters[G.SortBy];
3797
+ },
3798
+ async set(e) {
3799
+ await this.dispatch("hotelOffers/saveFilters", {
3800
+ ...this.filters,
3801
+ [G.SortBy]: e
3802
+ });
3803
+ }
3804
+ }
3805
+ },
3806
+ data() {
3807
+ return {
3808
+ FilterName: G,
3809
+ filterByPriceModel: ft,
3810
+ filterByReviewRatingModel: dt,
3811
+ filterByStarRatingModel: ct,
3812
+ priceUpdatedByUser: !1
3813
+ };
3814
+ },
3815
+ methods: {
3816
+ onCancel() {
3817
+ this.syncFilters(), this.isDialogOpen = !1;
3818
+ },
3819
+ onResetFilters() {
3820
+ this.filterByPriceModel = Le[G.Price], this.filterByStarRatingModel = Le[G.Rating], this.filterByReviewRatingModel = Le[G.ReviewRating];
3821
+ },
3822
+ async onSaveFilters() {
3823
+ await this.dispatch("hotelOffers/saveFilters", {
3824
+ ...this.filters,
3825
+ [G.Rating]: this.filterByStarRatingModel,
3826
+ [G.ReviewRating]: this.filterByReviewRatingModel,
3827
+ [G.Price]: [
3828
+ this.filterByPriceModel[0] === this.priceMin ? 0 : this.filterByPriceModel[0],
3829
+ this.filterByPriceModel[1] === this.priceMax ? 0 : this.filterByPriceModel[1]
3830
+ ]
3831
+ }), this.isDialogOpen = !1;
3832
+ },
3833
+ async resetPriceFilter() {
3834
+ await this.dispatch("hotelOffers/saveFilters", {
3835
+ ...this.filters,
3836
+ [G.Price]: ft
3837
+ });
3838
+ },
3839
+ async resetReviewRatingFilter() {
3840
+ await this.dispatch("hotelOffers/saveFilters", {
3841
+ ...this.filters,
3842
+ [G.ReviewRating]: dt
3843
+ });
3844
+ },
3845
+ async resetStarRatingFilter() {
3846
+ await this.dispatch("hotelOffers/saveFilters", {
3847
+ ...this.filters,
3848
+ [G.Rating]: ct
3849
+ });
3850
+ },
3851
+ syncFilters() {
3852
+ this.filterByPriceModel = this.filters[G.Price], this.filterByStarRatingModel = this.filters[G.Rating], this.filterByReviewRatingModel = this.filters[G.ReviewRating];
3853
+ }
3854
+ },
3855
+ mixins: [Ve, Pi, zt()],
3856
+ name: "BHotelOffersFiltersBar",
3857
+ props: Xl,
3858
+ setup() {
3859
+ const { t: e } = ie();
3860
+ return {
3861
+ isDialogOpen: X(!1),
3862
+ t: e
3863
+ };
3864
+ },
3865
+ watch: {
3866
+ filters: {
3867
+ deep: !0,
3868
+ handler() {
3869
+ this.syncFilters();
3870
+ },
3871
+ immediate: !0
3872
+ }
3873
+ }
3874
+ });
3875
+ function $t(e) {
3876
+ const t = e;
3877
+ t.__i18n = t.__i18n || [], t.__i18n.push({
3878
+ locale: "",
3879
+ resource: {
3880
+ "en-US": {
3881
+ BHotelFiltersMenu: {
3882
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Apply" } },
3883
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancel" } },
3884
+ filters: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filters" } },
3885
+ filterBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filter by" } },
3886
+ price: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Price per room per night" } },
3887
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reset" } },
3888
+ review: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Guest Rating" } },
3889
+ sortBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sort by" } },
3890
+ star: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Star Rating" } }
3891
+ }
3892
+ },
3893
+ "fr-FR": {
3894
+ BHotelFiltersMenu: {
3895
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Appliquer" } },
3896
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuler" } },
3897
+ filters: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtres" } },
3898
+ filterBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtrer par" } },
3899
+ price: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prix par chambre par nuit" } },
3900
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Réinitialiser" } },
3901
+ review: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Notes" } },
3902
+ sortBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Trier par" } },
3903
+ star: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Étoiles" } }
3904
+ }
3905
+ },
3906
+ "de-DE": {
3907
+ BHotelFiltersMenu: {
3908
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Anwenden" } },
3909
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Abbrechen" } },
3910
+ filters: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filter" } },
3911
+ filterBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtern nach" } },
3912
+ price: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preis pro Zimmer pro Nacht" } },
3913
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Zurücksetzen" } },
3914
+ review: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Gästebewertung" } },
3915
+ sortBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sortieren nach" } },
3916
+ star: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sternebewertung" } }
3917
+ }
3918
+ },
3919
+ "es-ES": {
3920
+ BHotelFiltersMenu: {
3921
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
3922
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
3923
+ filters: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtros" } },
3924
+ filterBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtrar por" } },
3925
+ price: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Precio por habitación por noche" } },
3926
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Restablecer" } },
3927
+ review: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Valoración de los huéspedes" } },
3928
+ sortBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ordenar por" } },
3929
+ star: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Clasificación por estrellas" } }
3930
+ }
3931
+ },
3932
+ "it-IT": {
3933
+ BHotelFiltersMenu: {
3934
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Applica" } },
3935
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annulla" } },
3936
+ filters: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtri" } },
3937
+ filterBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtra per" } },
3938
+ price: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prezzo per camera a notte" } },
3939
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ripristina" } },
3940
+ review: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Valutazione degli ospiti" } },
3941
+ sortBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ordina per" } },
3942
+ star: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Classificazione stelle" } }
3943
+ }
3944
+ },
3945
+ "nl-NL": {
3946
+ BHotelFiltersMenu: {
3947
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Toepassen" } },
3948
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Annuleren" } },
3949
+ filters: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filters" } },
3950
+ filterBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filteren op" } },
3951
+ price: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Prijs per kamer per nacht" } },
3952
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Reset" } },
3953
+ review: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Beoordeling" } },
3954
+ sortBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sorteren op" } },
3955
+ star: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Sterrenclassificatie" } }
3956
+ }
3957
+ },
3958
+ "pt-PT": {
3959
+ BHotelFiltersMenu: {
3960
+ apply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Aplicar" } },
3961
+ cancel: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Cancelar" } },
3962
+ filters: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtros" } },
3963
+ filterBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Filtrar por" } },
3964
+ price: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Preço por quarto por noite" } },
3965
+ reset: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Repor" } },
3966
+ review: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Avaliação dos hóspedes" } },
3967
+ sortBy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Ordenar por" } },
3968
+ star: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Classificação de estrelas" } }
3969
+ }
3970
+ }
3971
+ }
3972
+ });
3973
+ }
3974
+ function Zl(e) {
3975
+ let {
3976
+ rootEl: t,
3977
+ isSticky: l,
3978
+ layoutItemStyles: n
3979
+ } = e;
3980
+ const i = ce(!1), r = ce(0), s = v(() => {
3981
+ const g = typeof i.value == "boolean" ? "top" : i.value;
3982
+ return [l.value ? {
3983
+ top: "auto",
3984
+ bottom: "auto",
3985
+ height: void 0
3986
+ } : void 0, i.value ? {
3987
+ [g]: ve(r.value)
3988
+ } : {
3989
+ top: n.value.top
3990
+ }];
3991
+ });
3992
+ Ne(() => {
3993
+ ke(l, (g) => {
3994
+ g ? window.addEventListener("scroll", m, {
3995
+ passive: !0
3996
+ }) : window.removeEventListener("scroll", m);
3997
+ }, {
3998
+ immediate: !0
3999
+ });
4000
+ }), Ht(() => {
4001
+ window.removeEventListener("scroll", m);
4002
+ });
4003
+ let d = 0;
4004
+ function m() {
4005
+ const g = d > window.scrollY ? "up" : "down", c = t.value.getBoundingClientRect(), b = parseFloat(n.value.top ?? 0), B = window.scrollY - Math.max(0, r.value - b), u = c.height + Math.max(r.value, b) - window.scrollY - window.innerHeight, h = parseFloat(getComputedStyle(t.value).getPropertyValue("--v-body-scroll-y")) || 0;
4006
+ c.height < window.innerHeight - b ? (i.value = "top", r.value = b) : g === "up" && i.value === "bottom" || g === "down" && i.value === "top" ? (r.value = window.scrollY + c.top - h, i.value = !0) : g === "down" && u <= 0 ? (r.value = 0, i.value = "bottom") : g === "up" && B <= 0 && (h ? i.value !== "top" && (r.value = -B + h + b, i.value = "top") : (r.value = c.top + B, i.value = "top")), d = window.scrollY;
4007
+ }
4008
+ return {
4009
+ isStuck: i,
4010
+ stickyStyles: s
4011
+ };
4012
+ }
4013
+ const Ql = 100, Jl = 20;
4014
+ function Ft(e) {
4015
+ return (e < 0 ? -1 : 1) * Math.sqrt(Math.abs(e)) * 1.41421356237;
4016
+ }
4017
+ function Ot(e) {
4018
+ if (e.length < 2)
4019
+ return 0;
4020
+ if (e.length === 2)
4021
+ return e[1].t === e[0].t ? 0 : (e[1].d - e[0].d) / (e[1].t - e[0].t);
4022
+ let t = 0;
4023
+ for (let l = e.length - 1; l > 0; l--) {
4024
+ if (e[l].t === e[l - 1].t)
4025
+ continue;
4026
+ const n = Ft(t), i = (e[l].d - e[l - 1].d) / (e[l].t - e[l - 1].t);
4027
+ t += (i - n) * Math.abs(i), l === e.length - 1 && (t *= 0.5);
4028
+ }
4029
+ return Ft(t) * 1e3;
4030
+ }
4031
+ function es() {
4032
+ const e = {};
4033
+ function t(i) {
4034
+ Array.from(i.changedTouches).forEach((r) => {
4035
+ (e[r.identifier] ?? (e[r.identifier] = new Ea(Jl))).push([i.timeStamp, r]);
4036
+ });
4037
+ }
4038
+ function l(i) {
4039
+ Array.from(i.changedTouches).forEach((r) => {
4040
+ delete e[r.identifier];
4041
+ });
4042
+ }
4043
+ function n(i) {
4044
+ var g;
4045
+ const r = (g = e[i]) == null ? void 0 : g.values().reverse();
4046
+ if (!r)
4047
+ throw new Error(`No samples for touch id ${i}`);
4048
+ const s = r[0], d = [], m = [];
4049
+ for (const c of r) {
4050
+ if (s[0] - c[0] > Ql) break;
4051
+ d.push({
4052
+ t: c[0],
4053
+ d: c[1].clientX
4054
+ }), m.push({
4055
+ t: c[0],
4056
+ d: c[1].clientY
4057
+ });
4058
+ }
4059
+ return {
4060
+ x: Ot(d),
4061
+ y: Ot(m),
4062
+ get direction() {
4063
+ const {
4064
+ x: c,
4065
+ y: b
4066
+ } = this, [B, u] = [Math.abs(c), Math.abs(b)];
4067
+ return B > u && c >= 0 ? "right" : B > u && c <= 0 ? "left" : u > B && b >= 0 ? "down" : u > B && b <= 0 ? "up" : ts();
4068
+ }
4069
+ };
4070
+ }
4071
+ return {
4072
+ addMovement: t,
4073
+ endTouch: l,
4074
+ getVelocity: n
4075
+ };
4076
+ }
4077
+ function ts() {
4078
+ throw new Error();
4079
+ }
4080
+ function as(e) {
4081
+ let {
4082
+ el: t,
4083
+ isActive: l,
4084
+ isTemporary: n,
4085
+ width: i,
4086
+ touchless: r,
4087
+ position: s
4088
+ } = e;
4089
+ Ne(() => {
4090
+ window.addEventListener("touchstart", P, {
4091
+ passive: !0
4092
+ }), window.addEventListener("touchmove", L, {
4093
+ passive: !1
4094
+ }), window.addEventListener("touchend", U, {
4095
+ passive: !0
4096
+ });
4097
+ }), Ht(() => {
4098
+ window.removeEventListener("touchstart", P), window.removeEventListener("touchmove", L), window.removeEventListener("touchend", U);
4099
+ });
4100
+ const d = v(() => ["left", "right"].includes(s.value)), {
4101
+ addMovement: m,
4102
+ endTouch: g,
4103
+ getVelocity: c
4104
+ } = es();
4105
+ let b = !1;
4106
+ const B = ce(!1), u = ce(0), h = ce(0);
4107
+ let p;
4108
+ function O(w, $) {
4109
+ return (s.value === "left" ? w : s.value === "right" ? document.documentElement.clientWidth - w : s.value === "top" ? w : s.value === "bottom" ? document.documentElement.clientHeight - w : Me()) - ($ ? i.value : 0);
4110
+ }
4111
+ function y(w) {
4112
+ let $ = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : !0;
4113
+ const F = s.value === "left" ? (w - h.value) / i.value : s.value === "right" ? (document.documentElement.clientWidth - w - h.value) / i.value : s.value === "top" ? (w - h.value) / i.value : s.value === "bottom" ? (document.documentElement.clientHeight - w - h.value) / i.value : Me();
4114
+ return $ ? Math.max(0, Math.min(1, F)) : F;
4115
+ }
4116
+ function P(w) {
4117
+ if (r.value) return;
4118
+ const $ = w.changedTouches[0].clientX, F = w.changedTouches[0].clientY, V = 25, C = s.value === "left" ? $ < V : s.value === "right" ? $ > document.documentElement.clientWidth - V : s.value === "top" ? F < V : s.value === "bottom" ? F > document.documentElement.clientHeight - V : Me(), M = l.value && (s.value === "left" ? $ < i.value : s.value === "right" ? $ > document.documentElement.clientWidth - i.value : s.value === "top" ? F < i.value : s.value === "bottom" ? F > document.documentElement.clientHeight - i.value : Me());
4119
+ (C || M || l.value && n.value) && (p = [$, F], h.value = O(d.value ? $ : F, l.value), u.value = y(d.value ? $ : F), b = h.value > -20 && h.value < 80, g(w), m(w));
4120
+ }
4121
+ function L(w) {
4122
+ const $ = w.changedTouches[0].clientX, F = w.changedTouches[0].clientY;
4123
+ if (b) {
4124
+ if (!w.cancelable) {
4125
+ b = !1;
4126
+ return;
4127
+ }
4128
+ const C = Math.abs($ - p[0]), M = Math.abs(F - p[1]);
4129
+ (d.value ? C > M && C > 3 : M > C && M > 3) ? (B.value = !0, b = !1) : (d.value ? M : C) > 3 && (b = !1);
4130
+ }
4131
+ if (!B.value) return;
4132
+ w.preventDefault(), m(w);
4133
+ const V = y(d.value ? $ : F, !1);
4134
+ u.value = Math.max(0, Math.min(1, V)), V > 1 ? h.value = O(d.value ? $ : F, !0) : V < 0 && (h.value = O(d.value ? $ : F, !1));
4135
+ }
4136
+ function U(w) {
4137
+ if (b = !1, !B.value) return;
4138
+ m(w), B.value = !1;
4139
+ const $ = c(w.changedTouches[0].identifier), F = Math.abs($.x), V = Math.abs($.y);
4140
+ (d.value ? F > V && F > 400 : V > F && V > 3) ? l.value = $.direction === ({
4141
+ left: "right",
4142
+ right: "left",
4143
+ top: "down",
4144
+ bottom: "up"
4145
+ }[s.value] || Me()) : l.value = u.value > 0.5;
4146
+ }
4147
+ const A = v(() => B.value ? {
4148
+ transform: s.value === "left" ? `translateX(calc(-100% + ${u.value * i.value}px))` : s.value === "right" ? `translateX(calc(100% - ${u.value * i.value}px))` : s.value === "top" ? `translateY(calc(-100% + ${u.value * i.value}px))` : s.value === "bottom" ? `translateY(calc(100% - ${u.value * i.value}px))` : Me(),
4149
+ transition: "none"
4150
+ } : void 0);
4151
+ return De(B, () => {
4152
+ var F, V;
4153
+ const w = ((F = t.value) == null ? void 0 : F.style.transform) ?? null, $ = ((V = t.value) == null ? void 0 : V.style.transition) ?? null;
4154
+ Ta(() => {
4155
+ var C, M, k, f;
4156
+ (M = t.value) == null || M.style.setProperty("transform", ((C = A.value) == null ? void 0 : C.transform) || "none"), (f = t.value) == null || f.style.setProperty("transition", ((k = A.value) == null ? void 0 : k.transition) || null);
4157
+ }), La(() => {
4158
+ var C, M;
4159
+ (C = t.value) == null || C.style.setProperty("transform", w), (M = t.value) == null || M.style.setProperty("transition", $);
4160
+ });
4161
+ }), {
4162
+ isDragging: B,
4163
+ dragProgress: u,
4164
+ dragStyles: A
4165
+ };
4166
+ }
4167
+ function Me() {
4168
+ throw new Error();
4169
+ }
4170
+ const is = ["start", "end", "left", "right", "top", "bottom"], ls = Ce({
4171
+ color: String,
4172
+ disableResizeWatcher: Boolean,
4173
+ disableRouteWatcher: Boolean,
4174
+ expandOnHover: Boolean,
4175
+ floating: Boolean,
4176
+ modelValue: {
4177
+ type: Boolean,
4178
+ default: null
4179
+ },
4180
+ permanent: Boolean,
4181
+ rail: {
4182
+ type: Boolean,
4183
+ default: null
4184
+ },
4185
+ railWidth: {
4186
+ type: [Number, String],
4187
+ default: 56
4188
+ },
4189
+ scrim: {
4190
+ type: [Boolean, String],
4191
+ default: !0
4192
+ },
4193
+ image: String,
4194
+ temporary: Boolean,
4195
+ persistent: Boolean,
4196
+ touchless: Boolean,
4197
+ width: {
4198
+ type: [Number, String],
4199
+ default: 256
4200
+ },
4201
+ location: {
4202
+ type: String,
4203
+ default: "start",
4204
+ validator: (e) => is.includes(e)
4205
+ },
4206
+ sticky: Boolean,
4207
+ ...Fi(),
4208
+ ...Ue(),
4209
+ ...ei(),
4210
+ ...Na({
4211
+ mobile: null
4212
+ }),
4213
+ ...qt(),
4214
+ ...Ja(),
4215
+ ...jt(),
4216
+ ...Nt({
4217
+ tag: "nav"
4218
+ }),
4219
+ ...At()
4220
+ }, "VNavigationDrawer"), ss = _e()({
4221
+ name: "VNavigationDrawer",
4222
+ props: ls(),
4223
+ emits: {
4224
+ "update:modelValue": (e) => !0,
4225
+ "update:rail": (e) => !0
4226
+ },
4227
+ setup(e, t) {
4228
+ let {
4229
+ attrs: l,
4230
+ emit: n,
4231
+ slots: i
4232
+ } = t;
4233
+ const {
4234
+ isRtl: r
4235
+ } = ze(), {
4236
+ themeClasses: s
4237
+ } = Dt(e), {
4238
+ borderClasses: d
4239
+ } = $i(e), {
4240
+ backgroundColorClasses: m,
4241
+ backgroundColorStyles: g
4242
+ } = He(te(e, "color")), {
4243
+ elevationClasses: c
4244
+ } = Gt(e), {
4245
+ displayClasses: b,
4246
+ mobile: B
4247
+ } = Da(e), {
4248
+ roundedClasses: u
4249
+ } = Kt(e), h = Ya(), p = et(e, "modelValue", null, (T) => !!T), {
4250
+ ssrBootStyles: O
4251
+ } = Ii(), {
4252
+ scopeId: y
4253
+ } = Wa(), P = X(), L = ce(!1), {
4254
+ runOpenDelay: U,
4255
+ runCloseDelay: A
4256
+ } = Qa(e, (T) => {
4257
+ L.value = T;
4258
+ }), w = v(() => e.rail && e.expandOnHover && L.value ? Number(e.width) : Number(e.rail ? e.railWidth : e.width)), $ = v(() => Xa(e.location, r.value)), F = v(() => e.persistent), V = v(() => !e.permanent && (B.value || e.temporary)), C = v(() => e.sticky && !V.value && $.value !== "bottom");
4259
+ De(() => e.expandOnHover && e.rail != null, () => {
4260
+ ke(L, (T) => n("update:rail", !T));
4261
+ }), De(() => !e.disableResizeWatcher, () => {
4262
+ ke(V, (T) => !e.permanent && Oe(() => p.value = !T));
4263
+ }), De(() => !e.disableRouteWatcher && !!h, () => {
4264
+ ke(h.currentRoute, () => V.value && (p.value = !1));
4265
+ }), ke(() => e.permanent, (T) => {
4266
+ T && (p.value = !0);
4267
+ }), e.modelValue == null && !V.value && (p.value = e.permanent || !B.value);
4268
+ const {
4269
+ isDragging: M,
4270
+ dragProgress: k
4271
+ } = as({
4272
+ el: P,
4273
+ isActive: p,
4274
+ isTemporary: V,
4275
+ width: w,
4276
+ touchless: te(e, "touchless"),
4277
+ position: $
4278
+ }), f = v(() => {
4279
+ const T = V.value ? 0 : e.rail && e.expandOnHover ? Number(e.railWidth) : w.value;
4280
+ return M.value ? T * k.value : T;
4281
+ }), {
4282
+ layoutItemStyles: E,
4283
+ layoutItemScrimStyles: S
4284
+ } = Za({
4285
+ id: e.name,
4286
+ order: v(() => parseInt(e.order, 10)),
4287
+ position: $,
4288
+ layoutSize: f,
4289
+ elementSize: w,
4290
+ active: v(() => p.value || M.value),
4291
+ disableTransitions: v(() => M.value),
4292
+ absolute: v(() => (
4293
+ // eslint-disable-next-line @typescript-eslint/no-use-before-define
4294
+ e.absolute || C.value && typeof q.value != "string"
4295
+ ))
4296
+ }), {
4297
+ isStuck: q,
4298
+ stickyStyles: Y
4299
+ } = Zl({
4300
+ rootEl: P,
4301
+ isSticky: C,
4302
+ layoutItemStyles: E
4303
+ }), J = He(v(() => typeof e.scrim == "string" ? e.scrim : null)), se = v(() => ({
4304
+ ...M.value ? {
4305
+ opacity: k.value * 0.2,
4306
+ transition: "none"
4307
+ } : void 0,
4308
+ ...S.value
4309
+ }));
4310
+ return Aa({
4311
+ VList: {
4312
+ bgColor: "transparent"
4313
+ }
4314
+ }), Pe(() => {
4315
+ const T = i.image || e.image;
4316
+ return a(re, null, [a(e.tag, Z({
4317
+ ref: P,
4318
+ onMouseenter: U,
4319
+ onMouseleave: A,
4320
+ class: ["v-navigation-drawer", `v-navigation-drawer--${$.value}`, {
4321
+ "v-navigation-drawer--expand-on-hover": e.expandOnHover,
4322
+ "v-navigation-drawer--floating": e.floating,
4323
+ "v-navigation-drawer--is-hovering": L.value,
4324
+ "v-navigation-drawer--rail": e.rail,
4325
+ "v-navigation-drawer--temporary": V.value,
4326
+ "v-navigation-drawer--persistent": F.value,
4327
+ "v-navigation-drawer--active": p.value,
4328
+ "v-navigation-drawer--sticky": C.value
4329
+ }, s.value, m.value, d.value, b.value, c.value, u.value, e.class],
4330
+ style: [g.value, E.value, O.value, Y.value, e.style]
4331
+ }, y, l), {
4332
+ default: () => {
4333
+ var H, ue, me;
4334
+ return [T && a("div", {
4335
+ key: "image",
4336
+ class: "v-navigation-drawer__img"
4337
+ }, [i.image ? a(ri, {
4338
+ key: "image-defaults",
4339
+ disabled: !e.image,
4340
+ defaults: {
4341
+ VImg: {
4342
+ alt: "",
4343
+ cover: !0,
4344
+ height: "inherit",
4345
+ src: e.image
4346
+ }
4347
+ }
4348
+ }, i.image) : a(oi, {
4349
+ key: "image-img",
4350
+ alt: "",
4351
+ cover: !0,
4352
+ height: "inherit",
4353
+ src: e.image
4354
+ }, null)]), i.prepend && a("div", {
4355
+ class: "v-navigation-drawer__prepend"
4356
+ }, [(H = i.prepend) == null ? void 0 : H.call(i)]), a("div", {
4357
+ class: "v-navigation-drawer__content"
4358
+ }, [(ue = i.default) == null ? void 0 : ue.call(i)]), i.append && a("div", {
4359
+ class: "v-navigation-drawer__append"
4360
+ }, [(me = i.append) == null ? void 0 : me.call(i)])];
4361
+ }
4362
+ }), a(Ha, {
4363
+ name: "fade-transition"
4364
+ }, {
4365
+ default: () => [V.value && (M.value || p.value) && !!e.scrim && a("div", Z({
4366
+ class: ["v-navigation-drawer__scrim", J.backgroundColorClasses.value],
4367
+ style: [se.value, J.backgroundColorStyles.value],
4368
+ onClick: () => {
4369
+ F.value || (p.value = !1);
4370
+ }
4371
+ }, y), null)]
4372
+ })]);
4373
+ }), {
4374
+ isStuck: q
4375
+ };
4376
+ }
4377
+ }), os = { class: "" }, rs = { class: "font-weight-bold" }, ns = { class: "font-weight-bold" }, us = { class: "font-weight-bold" };
4378
+ function cs(e, t, l, n, i, r) {
4379
+ const s = oe("BFilterByPrice"), d = oe("BFilterByStar"), m = oe("BFilterByReview"), g = oe("BFilterByPriceMenu"), c = oe("BFilterByStarMenu"), b = oe("BFilterByReviewMenu"), B = oe("BSortByMenu");
4380
+ return R(), K("div", null, [
4381
+ a(ss, {
4382
+ modelValue: e.isDialogOpen,
4383
+ "onUpdate:modelValue": t[3] || (t[3] = (u) => e.isDialogOpen = u),
4384
+ temporary: "",
4385
+ width: e.isDialogOpen ? e.$isCurrentBreakpointBelow("sm") ? "100%" : "auto" : void 0
4386
+ }, {
4387
+ default: o(() => [
4388
+ a(Ie, {
4389
+ elevation: "0",
4390
+ light: ""
4391
+ }, {
4392
+ default: o(() => [
4393
+ a(ki, {
4394
+ class: "py-1",
4395
+ style: { "background-color": "#fff", "z-index": "1", position: "fixed", top: "0", width: "100%" }
4396
+ }, {
4397
+ default: o(() => [
4398
+ a(he, { "no-gutters": "" }, {
4399
+ default: o(() => [
4400
+ a(Q, { cols: "auto" }, {
4401
+ default: o(() => [
4402
+ a(j, {
4403
+ icon: "",
4404
+ variant: "text",
4405
+ onClick: e.onCancel,
4406
+ size: "small"
4407
+ }, {
4408
+ default: o(() => [
4409
+ a(de, null, {
4410
+ default: o(() => t[9] || (t[9] = [
4411
+ D(" fas fa-arrow-left ")
4412
+ ])),
4413
+ _: 1,
4414
+ __: [9]
4415
+ })
4416
+ ]),
4417
+ _: 1
4418
+ }, 8, ["onClick"]),
4419
+ x("small", os, I(e.t("BHotelFiltersMenu.filterBy")), 1)
4420
+ ]),
4421
+ _: 1
4422
+ }),
4423
+ a(Q, {
4424
+ class: "flex align-center justify-end",
4425
+ align: "end"
4426
+ }, {
4427
+ default: o(() => [
4428
+ a(j, {
4429
+ class: "mr-2",
4430
+ color: "primary",
4431
+ size: "small",
4432
+ variant: "text",
4433
+ onClick: e.onCancel
4434
+ }, {
4435
+ default: o(() => [
4436
+ D(I(e.t("BHotelFiltersMenu.cancel")), 1)
4437
+ ]),
4438
+ _: 1
4439
+ }, 8, ["onClick"]),
4440
+ a(j, {
4441
+ class: "mr-2",
4442
+ color: "error",
4443
+ size: "small",
4444
+ variant: "text",
4445
+ onClick: e.onResetFilters
4446
+ }, {
4447
+ default: o(() => [
4448
+ D(I(e.t("BHotelFiltersMenu.reset")), 1)
4449
+ ]),
4450
+ _: 1
4451
+ }, 8, ["onClick"]),
4452
+ a(j, {
4453
+ color: "success",
4454
+ elevation: "0",
4455
+ size: "small",
4456
+ onClick: e.onSaveFilters
4457
+ }, {
4458
+ default: o(() => [
4459
+ D(I(e.t("BHotelFiltersMenu.apply")), 1)
4460
+ ]),
4461
+ _: 1
4462
+ }, 8, ["onClick"])
4463
+ ]),
4464
+ _: 1
4465
+ })
4466
+ ]),
4467
+ _: 1
4468
+ })
4469
+ ]),
4470
+ _: 1
4471
+ }),
4472
+ a(Ae, { class: "mt-12" }),
4473
+ a(tt, null, {
4474
+ default: o(() => [
4475
+ a(he, null, {
4476
+ default: o(() => [
4477
+ a(Q, {
4478
+ align: "center",
4479
+ class: "px-8",
4480
+ cols: "12"
4481
+ }, {
4482
+ default: o(() => [
4483
+ x("p", rs, I(e.t("BHotelFiltersMenu.price")), 1),
4484
+ a(s, {
4485
+ modelValue: e.filterByPriceModel,
4486
+ "onUpdate:modelValue": t[0] || (t[0] = (u) => e.filterByPriceModel = u),
4487
+ currency: e.config.currency,
4488
+ "is-loading": e.isLoading,
4489
+ "price-max": e.priceMax,
4490
+ "price-min": e.priceMin,
4491
+ "step-count": e.priceHistogramStepCount
4492
+ }, null, 8, ["modelValue", "currency", "is-loading", "price-max", "price-min", "step-count"])
4493
+ ]),
4494
+ _: 1
4495
+ })
4496
+ ]),
4497
+ _: 1
4498
+ }),
4499
+ a(Ae, { class: "my-6 mx-12" }),
4500
+ a(he, null, {
4501
+ default: o(() => [
4502
+ a(Q, {
4503
+ align: "center",
4504
+ cols: "12"
4505
+ }, {
4506
+ default: o(() => [
4507
+ x("p", ns, I(e.t("BHotelFiltersMenu.star")), 1),
4508
+ a(d, {
4509
+ modelValue: e.filterByStarRatingModel,
4510
+ "onUpdate:modelValue": t[1] || (t[1] = (u) => e.filterByStarRatingModel = u)
4511
+ }, null, 8, ["modelValue"])
4512
+ ]),
4513
+ _: 1
4514
+ })
4515
+ ]),
4516
+ _: 1
4517
+ }),
4518
+ a(Ae, { class: "my-6 mx-12" }),
4519
+ a(he, null, {
4520
+ default: o(() => [
4521
+ a(Q, {
4522
+ align: "center",
4523
+ class: "py-4",
4524
+ cols: "12"
4525
+ }, {
4526
+ default: o(() => [
4527
+ x("p", us, I(e.t("BHotelFiltersMenu.review")), 1),
4528
+ a(m, {
4529
+ modelValue: e.filterByReviewRatingModel,
4530
+ "onUpdate:modelValue": t[2] || (t[2] = (u) => e.filterByReviewRatingModel = u)
4531
+ }, null, 8, ["modelValue"])
4532
+ ]),
4533
+ _: 1
4534
+ })
4535
+ ]),
4536
+ _: 1
4537
+ })
4538
+ ]),
4539
+ _: 1
4540
+ })
4541
+ ]),
4542
+ _: 1
4543
+ })
4544
+ ]),
4545
+ _: 1
4546
+ }, 8, ["modelValue", "width"]),
4547
+ a(he, {
4548
+ class: "pa-2",
4549
+ justify: "space-between"
4550
+ }, {
4551
+ default: o(() => [
4552
+ a(Q, { cols: "auto" }, {
4553
+ default: o(() => [
4554
+ a(he, { dense: "" }, {
4555
+ default: o(() => [
4556
+ a(Q, null, {
4557
+ default: o(() => [
4558
+ a(xe, {
4559
+ class: fe({
4560
+ "no-badge": e.activeFiltersNumber === 0
4561
+ }),
4562
+ bordered: "",
4563
+ color: "secondary",
4564
+ content: e.activeFiltersNumber > 0 ? e.activeFiltersNumber : void 0,
4565
+ icon: e.activeFiltersNumber > 0 ? void 0 : "fas fa-x",
4566
+ style: { cursor: "pointer" }
4567
+ }, {
4568
+ default: o(() => [
4569
+ a(j, {
4570
+ "data-attr": "hotel-offers-filter-bar-filters",
4571
+ color: "secondary",
4572
+ elevation: 0,
4573
+ size: "small",
4574
+ onClick: t[4] || (t[4] = (u) => e.isDialogOpen = !0)
4575
+ }, {
4576
+ default: o(() => [
4577
+ a(de, {
4578
+ class: "mr-1",
4579
+ size: "14"
4580
+ }, {
4581
+ default: o(() => t[10] || (t[10] = [
4582
+ D(" fas fa-sliders ")
4583
+ ])),
4584
+ _: 1,
4585
+ __: [10]
4586
+ }),
4587
+ D(I(e.t("BHotelFiltersMenu.filters")), 1)
4588
+ ]),
4589
+ _: 1
4590
+ })
4591
+ ]),
4592
+ _: 1
4593
+ }, 8, ["class", "content", "icon"])
4594
+ ]),
4595
+ _: 1
4596
+ }),
4597
+ e.isPriceFilterActive ? (R(), z(Q, {
4598
+ key: 0,
4599
+ class: "mx-1"
4600
+ }, {
4601
+ default: o(() => [
4602
+ a(g, {
4603
+ filter: e.filterByPriceModel,
4604
+ "onUpdate:filter": [
4605
+ t[5] || (t[5] = (u) => e.filterByPriceModel = u),
4606
+ e.onSaveFilters
4607
+ ],
4608
+ currency: e.config.currency,
4609
+ "is-loading": e.isLoading,
4610
+ "price-max": e.priceMax,
4611
+ "price-min": e.priceMin,
4612
+ "step-count": e.priceHistogramStepCount,
4613
+ onReset: e.resetPriceFilter
4614
+ }, null, 8, ["filter", "currency", "is-loading", "price-max", "price-min", "step-count", "onUpdate:filter", "onReset"])
4615
+ ]),
4616
+ _: 1
4617
+ })) : W("", !0),
4618
+ e.isStarRatingFilterActive ? (R(), z(Q, {
4619
+ key: 1,
4620
+ class: "mx-1"
4621
+ }, {
4622
+ default: o(() => [
4623
+ a(c, {
4624
+ filter: e.filterByStarRatingModel,
4625
+ "onUpdate:filter": [
4626
+ t[6] || (t[6] = (u) => e.filterByStarRatingModel = u),
4627
+ e.onSaveFilters
4628
+ ],
4629
+ onReset: e.resetStarRatingFilter
4630
+ }, null, 8, ["filter", "onUpdate:filter", "onReset"])
4631
+ ]),
4632
+ _: 1
4633
+ })) : W("", !0),
4634
+ e.isReviewRatingFilterActive ? (R(), z(Q, {
4635
+ key: 2,
4636
+ class: "mx-1"
4637
+ }, {
4638
+ default: o(() => [
4639
+ a(b, {
4640
+ filter: e.filterByReviewRatingModel,
4641
+ "onUpdate:filter": [
4642
+ t[7] || (t[7] = (u) => e.filterByReviewRatingModel = u),
4643
+ e.onSaveFilters
4644
+ ],
4645
+ onReset: e.resetReviewRatingFilter
4646
+ }, null, 8, ["filter", "onUpdate:filter", "onReset"])
4647
+ ]),
4648
+ _: 1
4649
+ })) : W("", !0)
4650
+ ]),
4651
+ _: 1
4652
+ })
4653
+ ]),
4654
+ _: 1
4655
+ }),
4656
+ e.withSort ? (R(), z(Q, {
4657
+ key: 0,
4658
+ cols: "auto"
4659
+ }, {
4660
+ default: o(() => [
4661
+ a(B, {
4662
+ modelValue: e.sortByModel,
4663
+ "onUpdate:modelValue": t[8] || (t[8] = (u) => e.sortByModel = u),
4664
+ attach: e.$el,
4665
+ "filter-key": e.FilterName.SortBy,
4666
+ left: ""
4667
+ }, null, 8, ["modelValue", "attach", "filter-key"])
4668
+ ]),
4669
+ _: 1
4670
+ })) : W("", !0)
4671
+ ]),
4672
+ _: 1
4673
+ })
4674
+ ]);
4675
+ }
4676
+ typeof $t == "function" && $t(ia);
4677
+ const Gs = /* @__PURE__ */ le(ia, [["render", cs], ["__scopeId", "data-v-1b9a456b"]]);
4678
+ ca("css/revolugo.bhoteloffersfilterbar.1tLwDxXe.css");
4679
+ export {
4680
+ js as B,
4681
+ zs as D,
4682
+ Di as H,
4683
+ pe as a,
4684
+ qs as b,
4685
+ Gs as c,
4686
+ Us as p,
4687
+ xs as u
4688
+ };
4689
+ //# sourceMappingURL=revolugo.bhoteloffersfilterbar.C677v5nL.min.js.map