@revolugo/elements 6.8.2-beta.0 → 6.8.2-beta.10

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 (105) hide show
  1. package/dist/css/revolugo.bhoteloffersfilterbar.PIn4y3L4.css +1 -0
  2. package/dist/index.es.min.js +955 -950
  3. package/dist/index.es.min.js.map +1 -1
  4. package/dist/index.min.js +6 -6
  5. package/dist/index.min.js.map +1 -1
  6. package/dist/revolugo._baseiteratee.MzUQeAWT.min.js +247 -0
  7. package/dist/{revolugo.banktransferdetails.Wlqp4FTo.min.js → revolugo.banktransferdetails.BX7OeQZV.min.js} +9 -9
  8. package/dist/{revolugo.bdaterangepicker.LM4-g1ZZ.min.js → revolugo.bdaterangepicker.CD21jpXB.min.js} +6 -6
  9. package/dist/revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.CHRvRFko.min.js +149 -0
  10. package/dist/revolugo.bhoteloffersfilterbar.DaG82sI1.min.js +4826 -0
  11. package/dist/{revolugo.bhotelroomsdetails.CIrHX2gV.min.js → revolugo.bhotelroomsdetails.BLqYw-sq.min.js} +25 -25
  12. package/dist/{revolugo.bhotelsearchbar.C13oDjtG.min.js → revolugo.bhotelsearchbar.BNSMxrNp.min.js} +16 -16
  13. package/dist/{revolugo.bimagecarousel.7CkcgWwo.min.js → revolugo.bimagecarousel.Bbu1M-_U.min.js} +31 -31
  14. package/dist/{revolugo.bookingdetailssidebar.DXxWIXgM.min.js → revolugo.bookingdetailssidebar.BvK3BXHf.min.js} +11 -11
  15. package/dist/{revolugo.bookingdetailssidebar.CUUn4s4-.min.js → revolugo.bookingdetailssidebar.CokqW6fy.min.js} +4 -4
  16. package/dist/{revolugo.bookingmanager.XzKdmEGC.min.js → revolugo.bookingmanager.Cb3omaKY.min.js} +20 -20
  17. package/dist/{revolugo.bpricesummaryskeleton.Pw1KklrO.min.js → revolugo.bpricesummaryskeleton.C8B8KuR2.min.js} +4 -4
  18. package/dist/{revolugo.bstarrating.vue_vue_type_script_setup_true_lang.QK7fmKOX.min.js → revolugo.bstarrating.vue_vue_type_script_setup_true_lang.CIoChEf4.min.js} +8 -8
  19. package/dist/{revolugo.btag.BlnXqK92.min.js → revolugo.btag.BGoOCm1Z.min.js} +24 -24
  20. package/dist/{revolugo.cancellationpoliciesbadge.B55YrKSM.min.js → revolugo.cancellationpoliciesbadge.Clx08Izl.min.js} +4 -4
  21. package/dist/{revolugo.cancellationpoliciesbadge.BeG5kBuD.min.js → revolugo.cancellationpoliciesbadge.CzdZk9wC.min.js} +14 -14
  22. package/dist/{revolugo.cancellationpolicieslist.DAK9-C1m.min.js → revolugo.cancellationpolicieslist.D_blsTpt.min.js} +4 -4
  23. package/dist/{revolugo.cancellationpolicieslist.vBYt57IZ.min.js → revolugo.cancellationpolicieslist.DkdBqk_D.min.js} +4 -4
  24. package/dist/{revolugo.case-transformers.CaS4ky3X.min.js → revolugo.case-transformers.yF9LmSh2.min.js} +6 -6
  25. package/dist/{revolugo.creditcardform.BXRZJQF_.min.js → revolugo.creditcardform.DLGGNiOj.min.js} +30 -30
  26. package/dist/{revolugo.creditcardform.D-fRTOrm.min.js → revolugo.creditcardform.dhkDslgQ.min.js} +4 -4
  27. package/dist/{revolugo.creditcardpayment.Bsql13Mx.min.js → revolugo.creditcardpayment.BI07MXqq.min.js} +4 -4
  28. package/dist/{revolugo.creditcardpayment.CRromYFa.min.js → revolugo.creditcardpayment.Dk1qZNdM.min.js} +37 -36
  29. package/dist/{revolugo.currencypicker.CsT_8v5-.min.js → revolugo.currencypicker.Dg7-2SvP.min.js} +6 -6
  30. package/dist/{revolugo.currencypickerbtn.Aj3BIx0O.min.js → revolugo.currencypickerbtn.B1hFei3f.min.js} +17 -17
  31. package/dist/{revolugo.currencypickerbtn.DzlyztKv.min.js → revolugo.currencypickerbtn.C4BppGp4.min.js} +4 -4
  32. package/dist/{revolugo.defaultsdeep.x4Fmvtqd.min.js → revolugo.defaultsdeep._CHFDoDm.min.js} +29 -29
  33. package/dist/{revolugo.dialog-attach.Co46EBCo.min.js → revolugo.dialog-attach.CkEej6wS.min.js} +2 -2
  34. package/dist/{revolugo.dialog-transition.0tZlTOrr.min.js → revolugo.dialog-transition.uNfpHJql.min.js} +5 -5
  35. package/dist/{revolugo.fastbookingflow.4VeLCGPk.min.js → revolugo.fastbookingflow.B6XARfWY.min.js} +4 -4
  36. package/dist/{revolugo.fullbookingflow.DAq8AAkm.min.js → revolugo.fullbookingflow.BZLx73dx.min.js} +17 -17
  37. package/dist/revolugo.hotel-offer-request.DW3cTCiu.min.js +98 -0
  38. package/dist/{revolugo.hoteldescriptionview.AQBQyXPB.min.js → revolugo.hoteldescriptionview.BCzUzk_E.min.js} +4 -4
  39. package/dist/{revolugo.hoteldescriptionview.E3zF9kIE.min.js → revolugo.hoteldescriptionview.yCtPdRFO.min.js} +20 -20
  40. package/dist/{revolugo.hotelofferitemlayout.5S0g-y3x.min.js → revolugo.hotelofferitemlayout.DO-TA9ts.min.js} +6 -6
  41. package/dist/{revolugo.hotelofferlist.DuMKQigB.min.js → revolugo.hotelofferlist.CBRnlb3a.min.js} +4 -4
  42. package/dist/{revolugo.hotelofferlist.Bu6FD5xa.min.js → revolugo.hotelofferlist.CannqNZQ.min.js} +37 -37
  43. package/dist/{revolugo.hotelofferrequestcreator.CfAv9XnZ.min.js → revolugo.hotelofferrequestcreator.Ccc9h3wS.min.js} +16 -15
  44. package/dist/revolugo.hoteloffersearchmenu.CX6iHCJ-.min.js +47 -0
  45. package/dist/{revolugo.hoteloffersmap.TeFeFBWz.min.js → revolugo.hoteloffersmap.61vs2XAi.min.js} +29 -29
  46. package/dist/{revolugo.hoteloffersmap.DzTHDAHc.min.js → revolugo.hoteloffersmap.BGAjS-vH.min.js} +4 -4
  47. package/dist/{revolugo.hoteloffersview.Cu1O149f.min.js → revolugo.hoteloffersview.CWq5dZCG.min.js} +4 -4
  48. package/dist/{revolugo.hoteloffersview.EuoGAY9l.min.js → revolugo.hoteloffersview.DNumSw2r.min.js} +42 -41
  49. package/dist/{revolugo.hotelroomofferlist.BJqvvAma.min.js → revolugo.hotelroomofferlist.5_UL7OSw.min.js} +24 -24
  50. package/dist/{revolugo.hotelroomofferlist.DK_BQbGq.min.js → revolugo.hotelroomofferlist.cmfjmRwH.min.js} +4 -4
  51. package/dist/{revolugo.hotelroomofferrequestcreator.props.Ccv-RhW2.min.js → revolugo.hotelroomofferrequestcreator.props.C4FwM136.min.js} +2 -2
  52. package/dist/{revolugo.hotelroomoffersbookingflow.DXXUhSNA.min.js → revolugo.hotelroomoffersbookingflow.BQD6GxXC.min.js} +45 -45
  53. package/dist/{revolugo.hotelroomoffersearchmenu.CoLuLIMc.min.js → revolugo.hotelroomoffersearchmenu.5tW36-zQ.min.js} +7 -7
  54. package/dist/{revolugo.hotelroomoffersearchmenu.4yTsOswX.min.js → revolugo.hotelroomoffersearchmenu.DtfalJtl.min.js} +5 -5
  55. package/dist/{revolugo.hotelroomoffersview.Bz5IYKc_.min.js → revolugo.hotelroomoffersview.BDcWZXrg.min.js} +12 -12
  56. package/dist/{revolugo.hotelroomoffersview.Bt9PEOK9.min.js → revolugo.hotelroomoffersview.z6aOfmaM.min.js} +4 -4
  57. package/dist/{revolugo.index.D74NQ89L.min.js → revolugo.index.Cl_q_UjY.min.js} +99 -99
  58. package/dist/{revolugo.index.wc.bYWqzpa9.min.js → revolugo.index.wc.BmozE9Vv.min.js} +10712 -11261
  59. package/dist/{revolugo.langpicker.C1EJvnOl.min.js → revolugo.langpicker.vHHfpOMW.min.js} +8 -8
  60. package/dist/{revolugo.langpickerbtn.C7tqnw1r.min.js → revolugo.langpickerbtn.DBxEuVPS.min.js} +9 -9
  61. package/dist/{revolugo.langpickerbtn.Ixx1UaN0.min.js → revolugo.langpickerbtn.DqM5hWXl.min.js} +4 -4
  62. package/dist/revolugo.min.js +1 -1
  63. package/dist/{revolugo.position.Dh9P2x6G.min.js → revolugo.position.DtKVN8Dm.min.js} +35 -35
  64. package/dist/{revolugo.prebookform.DZe8r8L5.min.js → revolugo.prebookform.B__ne_5e.min.js} +20 -20
  65. package/dist/{revolugo.prebookform.CLrYWsEI.min.js → revolugo.prebookform.DNGu-Yse.min.js} +4 -4
  66. package/dist/{revolugo.roominglisteditor.CXO-5pa_.min.js → revolugo.roominglisteditor.B2aeWLHf.min.js} +4 -4
  67. package/dist/{revolugo.roominglisteditor.DrtcIDro.min.js → revolugo.roominglisteditor.B80_0zLe.min.js} +11 -11
  68. package/dist/{revolugo.rounded.B5lCsIO9.min.js → revolugo.rounded.BXIsUmTy.min.js} +2 -2
  69. package/dist/{revolugo.ssrboot.C0z_e7XY.min.js → revolugo.ssrboot.BIjLx7yH.min.js} +2 -2
  70. package/dist/{revolugo.storybooktoolbar.SCyQu-ny.min.js → revolugo.storybooktoolbar.Dkb9K5kX.min.js} +110 -106
  71. package/dist/{revolugo.termsandconditions.CmukXjqj.min.js → revolugo.termsandconditions.BALwQNzD.min.js} +4 -4
  72. package/dist/{revolugo.termsandconditions.CSw8Xh23.min.js → revolugo.termsandconditions.DE2JCEFT.min.js} +4 -4
  73. package/dist/{revolugo.use-breakpoint-service.Dw3a-dJy.min.js → revolugo.use-breakpoint-service.B7ZCEdsL.min.js} +14 -14
  74. package/dist/{revolugo.vautocomplete.BFtq5sO7.min.js → revolugo.vautocomplete.Wzbe0OaU.min.js} +102 -102
  75. package/dist/{revolugo.vbadge.BOSot4-b.min.js → revolugo.vbadge.DSCygmIX.min.js} +17 -17
  76. package/dist/{revolugo.vbtn.Cza72F9l.min.js → revolugo.vbtn.DznliZzR.min.js} +51 -51
  77. package/dist/{revolugo.vcard.BSYS4EA_.min.js → revolugo.vcard.h_EXlxhg.min.js} +15 -15
  78. package/dist/{revolugo.vcheckboxbtn.JRn2QIIO.min.js → revolugo.vcheckboxbtn.DUhHPAp0.min.js} +76 -76
  79. package/dist/{revolugo.vdialog.BuVoy1kx.min.js → revolugo.vdialog.Bt220-tR.min.js} +25 -25
  80. package/dist/{revolugo.vdivider.Cu5FddvH.min.js → revolugo.vdivider.C-iQpm6s.min.js} +3 -3
  81. package/dist/{revolugo.vexpansionpanels.DRWQoRqv.min.js → revolugo.vexpansionpanels.HBdcYsbX.min.js} +32 -32
  82. package/dist/{revolugo.vform.CrnbE-uW.min.js → revolugo.vform.D-Xypuf6.min.js} +4 -4
  83. package/dist/{revolugo.vinput.DkajuwSz.min.js → revolugo.vinput.Svg6lkwC.min.js} +55 -55
  84. package/dist/{revolugo.vlabel.7WIO1jsu.min.js → revolugo.vlabel.Bhm6Zd00.min.js} +3 -3
  85. package/dist/{revolugo.vlist.DnEUr3NP.min.js → revolugo.vlist.DMMPJbxQ.min.js} +97 -97
  86. package/dist/{revolugo.vmenu.DwlJhNjf.min.js → revolugo.vmenu.-0zeBGoy.min.js} +24 -24
  87. package/dist/{revolugo.vselect.BjWXKuR5.min.js → revolugo.vselect.Bo-j_DVa.min.js} +71 -71
  88. package/dist/{revolugo.vsheet.CFHcDuin.min.js → revolugo.vsheet.QeecLFsP.min.js} +8 -8
  89. package/dist/{revolugo.vskeletonloader.Dc9OKBJf.min.js → revolugo.vskeletonloader.EgTyxJfJ.min.js} +6 -6
  90. package/dist/{revolugo.vsnackbar.BVKj6AMI.min.js → revolugo.vsnackbar.B_Wq8MGf.min.js} +34 -34
  91. package/dist/revolugo.vspacer.BdpvYtXu.min.js +7 -0
  92. package/dist/{revolugo.vtextarea.C5zyz0TO.min.js → revolugo.vtextarea.DDc8gnKI.min.js} +61 -61
  93. package/dist/{revolugo.vtextfield.vgSHKzqU.min.js → revolugo.vtextfield.BchqqdJO.min.js} +69 -69
  94. package/dist/{revolugo.vtoolbar.DoJvdCrr.min.js → revolugo.vtoolbar.DTHYPxEN.min.js} +20 -20
  95. package/dist/{revolugo.vtooltip.BM8L9U_D.min.js → revolugo.vtooltip.D5Wd79J1.min.js} +50 -50
  96. package/dist/{revolugo.vwindowitem.CFcKwvRo.min.js → revolugo.vwindowitem.BllQGIpD.min.js} +34 -34
  97. package/dist/{revolugo.watch-list.BitKjhcw.min.js → revolugo.watch-list.By-bpBU3.min.js} +2 -2
  98. package/dist/{revolugo.webcomponentwrapper.D4MvwGCF.min.js → revolugo.webcomponentwrapper.eF3pik3C.min.js} +263 -263
  99. package/package.json +3 -3
  100. package/dist/css/revolugo.bhoteloffersfilterbar.1tLwDxXe.css +0 -1
  101. package/dist/revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.h_U_D6QC.min.js +0 -61
  102. package/dist/revolugo.bhoteloffersfilterbar.B634G2s-.min.js +0 -4689
  103. package/dist/revolugo.hoteloffersearchmenu.C6_HA-G2.min.js +0 -46
  104. package/dist/revolugo.index.CfWiJy_P.min.js +0 -13
  105. package/dist/revolugo.vspacer.DnTRCwot.min.js +0 -7
@@ -1,4689 +0,0 @@
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.bYWqzpa9.min.js";
2
- import { C as za } from "./revolugo.cancellationpoliciesbadge.BeG5kBuD.min.js";
3
- import { H as Ua } from "./revolugo.hotelofferitemlayout.5S0g-y3x.min.js";
4
- import { B as xa, a as qa } from "./revolugo.bhotelroomsdetails.CIrHX2gV.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.D4MvwGCF.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.D74NQ89L.min.js";
7
- import { a as j, b as ni } from "./revolugo.vbtn.Cza72F9l.min.js";
8
- import { B as ui, r as ci } from "./revolugo.hotelroomofferlist.BJqvvAma.min.js";
9
- import { B as di, _ as fi } from "./revolugo.bstarrating.vue_vue_type_script_setup_true_lang.QK7fmKOX.min.js";
10
- import { B as mt } from "./revolugo.btag.BlnXqK92.min.js";
11
- import { B as mi, H as pi } from "./revolugo.hoteldescriptionview.E3zF9kIE.min.js";
12
- import { B as hi, m as vi, V as bi } from "./revolugo.bimagecarousel.7CkcgWwo.min.js";
13
- import { a as gi, p as zt, u as yi, g as ne } from "./revolugo.use-breakpoint-service.Dw3a-dJy.min.js";
14
- import { H as wi } from "./revolugo.hotelroomoffersview.Bz5IYKc_.min.js";
15
- import { V as Ut } from "./revolugo.vtooltip.BM8L9U_D.min.js";
16
- import { V as Bi } from "./revolugo.vdialog.BuVoy1kx.min.js";
17
- import { V as Ie, a as tt, b as at, c as ki } from "./revolugo.vcard.BSYS4EA_.min.js";
18
- import { V as Mi } from "./revolugo.vautocomplete.BFtq5sO7.min.js";
19
- import { V as We, a as pt, b as Si } from "./revolugo.vlist.DnEUr3NP.min.js";
20
- import { _ as xt } from "./revolugo.bformattedamount.vue_vue_type_script_setup_true_lang.h_U_D6QC.min.js";
21
- import { u as Ri, V as ht, m as Vi, a as Ci } from "./revolugo.vinput.DkajuwSz.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.B5lCsIO9.min.js";
23
- import { V as Oi } from "./revolugo.vlabel.7WIO1jsu.min.js";
24
- import { V as vt } from "./revolugo.vtextfield.vgSHKzqU.min.js";
25
- import { V as Ae } from "./revolugo.vdivider.Cu5FddvH.min.js";
26
- import { o as _i } from "./revolugo.index.CfWiJy_P.min.js";
27
- import { V as xe } from "./revolugo.vbadge.BOSot4-b.min.js";
28
- import { V as qe } from "./revolugo.vmenu.DwlJhNjf.min.js";
29
- import { d as Pi } from "./revolugo.dialog-attach.Co46EBCo.min.js";
30
- import { u as Ii } from "./revolugo.ssrboot.C0z_e7XY.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.B634G2s-.min.js.map