@konnectio/core 4.0.1 → 4.0.2

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 (122) hide show
  1. package/dist/ActionField-138c1747.mjs +104 -0
  2. package/dist/ActionField-138c1747.mjs.br +0 -0
  3. package/dist/ActionField-2b6751b4.js +2 -0
  4. package/dist/ActionField-2b6751b4.js.br +0 -0
  5. package/dist/Clickable-26efd8d0.mjs +3497 -0
  6. package/dist/Clickable-26efd8d0.mjs.br +0 -0
  7. package/dist/Clickable-6b252cca.js +763 -0
  8. package/dist/Clickable-6b252cca.js.br +0 -0
  9. package/dist/HotelAvailabilityForm-56badafa.js +2 -0
  10. package/dist/HotelAvailabilityForm-56badafa.js.br +0 -0
  11. package/dist/HotelAvailabilityForm-a550be2e.mjs +100 -0
  12. package/dist/HotelAvailabilityForm-a550be2e.mjs.br +0 -0
  13. package/dist/NumberField.vue_vue_type_style_index_0_lang-778e8361.mjs +5918 -0
  14. package/dist/NumberField.vue_vue_type_style_index_0_lang-778e8361.mjs.br +0 -0
  15. package/dist/NumberField.vue_vue_type_style_index_0_lang-de20cf9f.js +56 -0
  16. package/dist/NumberField.vue_vue_type_style_index_0_lang-de20cf9f.js.br +0 -0
  17. package/dist/ReCaptchaVuePlugin-59863bbf.mjs +377 -0
  18. package/dist/ReCaptchaVuePlugin-59863bbf.mjs.br +0 -0
  19. package/dist/ReCaptchaVuePlugin-809f1dcc.js +2 -0
  20. package/dist/ReCaptchaVuePlugin-809f1dcc.js.br +0 -0
  21. package/dist/SelectField.vue_vue_type_style_index_0_lang-aa7a93a7.js +57 -0
  22. package/dist/SelectField.vue_vue_type_style_index_0_lang-aa7a93a7.js.br +0 -0
  23. package/dist/SelectField.vue_vue_type_style_index_0_lang-b4fb229d.mjs +10110 -0
  24. package/dist/SelectField.vue_vue_type_style_index_0_lang-b4fb229d.mjs.br +0 -0
  25. package/dist/ThankYou-103d0395.js +16 -0
  26. package/dist/ThankYou-103d0395.js.br +0 -0
  27. package/dist/ThankYou-95c1eef3.mjs +8520 -0
  28. package/dist/ThankYou-95c1eef3.mjs.br +0 -0
  29. package/dist/_commonjsHelpers-10dfc225.mjs +9 -0
  30. package/dist/_commonjsHelpers-87b0abe8.js +2 -0
  31. package/dist/applyGiftCard-2eac2416.js +2 -0
  32. package/dist/applyGiftCard-2eac2416.js.br +0 -0
  33. package/dist/applyGiftCard-fb6fb8f4.mjs +118 -0
  34. package/dist/applyGiftCard-fb6fb8f4.mjs.br +0 -0
  35. package/dist/availability.cjs.js +2 -0
  36. package/dist/availability.cjs.js.br +0 -0
  37. package/dist/availability.es.js +186 -0
  38. package/dist/availability.es.js.br +0 -0
  39. package/dist/event-b7b4870b.js +2 -0
  40. package/dist/event-b7b4870b.js.br +0 -0
  41. package/dist/event-d697bdb9.mjs +329 -0
  42. package/dist/event-d697bdb9.mjs.br +0 -0
  43. package/dist/event.cjs.js +2 -0
  44. package/dist/event.cjs.js.br +0 -0
  45. package/dist/event.es.js +648 -0
  46. package/dist/event.es.js.br +0 -0
  47. package/dist/gift-card-validation.cjs.js +2 -0
  48. package/dist/gift-card-validation.cjs.js.br +9 -0
  49. package/dist/gift-card-validation.es.js +173 -0
  50. package/dist/gift-card-validation.es.js.br +0 -0
  51. package/dist/gift-card.cjs.js +2 -0
  52. package/dist/gift-card.cjs.js.br +0 -0
  53. package/dist/gift-card.es.js +587 -0
  54. package/dist/gift-card.es.js.br +0 -0
  55. package/dist/hotel.cjs.js +20 -0
  56. package/dist/hotel.cjs.js.br +0 -0
  57. package/dist/hotel.es.js +2395 -0
  58. package/dist/hotel.es.js.br +0 -0
  59. package/dist/index-76459611.mjs +656 -0
  60. package/dist/index-76459611.mjs.br +0 -0
  61. package/dist/index-95820cc1.js +2 -0
  62. package/dist/index-95820cc1.js.br +0 -0
  63. package/dist/navigation.cjs.js +2 -0
  64. package/dist/navigation.cjs.js.br +0 -0
  65. package/dist/navigation.es.js +60 -0
  66. package/dist/navigation.es.js.br +0 -0
  67. package/dist/payment-215f120d.js +3 -0
  68. package/dist/payment-215f120d.js.br +0 -0
  69. package/dist/payment-31263275.mjs +8149 -0
  70. package/dist/payment-31263275.mjs.br +0 -0
  71. package/dist/polyfill.cjs.js +5 -0
  72. package/dist/polyfill.cjs.js.br +0 -0
  73. package/dist/polyfill.es.js +6766 -0
  74. package/dist/polyfill.es.js.br +0 -0
  75. package/dist/style.css +1 -0
  76. package/dist/style.css.br +0 -0
  77. package/package.json +3 -1
  78. package/dist/admin.js +0 -2
  79. package/dist/admin.js.br +0 -0
  80. package/dist/assets/ActionField-d1b315e3.js +0 -2
  81. package/dist/assets/ActionField-d1b315e3.js.br +0 -0
  82. package/dist/assets/Alert-2cd22061.js +0 -2
  83. package/dist/assets/Alert-2cd22061.js.br +0 -0
  84. package/dist/assets/Clickable-19c9ecdc.js +0 -2
  85. package/dist/assets/Clickable-19c9ecdc.js.br +0 -0
  86. package/dist/assets/GoogleNotice-83805aa2.js +0 -2
  87. package/dist/assets/GoogleNotice-83805aa2.js.br +0 -0
  88. package/dist/assets/HotelAvailabilityForm-53fa6ecb.js +0 -2
  89. package/dist/assets/HotelAvailabilityForm-53fa6ecb.js.br +0 -0
  90. package/dist/assets/Icon-6c933148.js +0 -2
  91. package/dist/assets/Icon-6c933148.js.br +0 -0
  92. package/dist/assets/NumberField.vue_vue_type_style_index_0_lang-9b1b90b2.js +0 -2
  93. package/dist/assets/NumberField.vue_vue_type_style_index_0_lang-9b1b90b2.js.br +0 -0
  94. package/dist/assets/SelectField.vue_vue_type_style_index_0_lang-c5d2bf7d.js +0 -2
  95. package/dist/assets/SelectField.vue_vue_type_style_index_0_lang-c5d2bf7d.js.br +0 -0
  96. package/dist/assets/ThankYou-29820212.js +0 -5
  97. package/dist/assets/ThankYou-29820212.js.br +0 -0
  98. package/dist/assets/applyGiftCard-39571f2e.js +0 -2
  99. package/dist/assets/applyGiftCard-39571f2e.js.br +0 -0
  100. package/dist/assets/event-79c562c0.js +0 -2
  101. package/dist/assets/event-79c562c0.js.br +0 -0
  102. package/dist/assets/payment-a3a9b5dd.js +0 -2
  103. package/dist/assets/payment-a3a9b5dd.js.br +0 -0
  104. package/dist/assets/style.css +0 -1
  105. package/dist/assets/style.css.br +0 -0
  106. package/dist/assets/vendor-65ee0d78.js +0 -889
  107. package/dist/assets/vendor-65ee0d78.js.br +0 -0
  108. package/dist/availability.js +0 -2
  109. package/dist/availability.js.br +0 -0
  110. package/dist/event.js +0 -2
  111. package/dist/event.js.br +0 -0
  112. package/dist/gift-card-validation.js +0 -2
  113. package/dist/gift-card-validation.js.br +0 -0
  114. package/dist/gift-card.js +0 -2
  115. package/dist/gift-card.js.br +0 -0
  116. package/dist/hotel.js +0 -2
  117. package/dist/hotel.js.br +0 -0
  118. package/dist/manifest.json +0 -231
  119. package/dist/manifest.json.br +0 -0
  120. package/dist/navigation.js +0 -2
  121. package/dist/navigation.js.br +0 -0
  122. package/dist/polyfill.js +0 -2
@@ -0,0 +1,2395 @@
1
+ import { defineComponent as Z, computed as Y, openBlock as b, createBlock as W, withCtx as M, createElementVNode as c, createVNode as L, toDisplayString as S, createElementBlock as T, createCommentVNode as O, resolveDirective as Te, withDirectives as oe, Fragment as w, renderList as U, ref as ie, onMounted as we, watch as qe, unref as t, normalizeClass as de, resolveComponent as Gt, Suspense as Yt, createTextVNode as ke, withModifiers as jt, normalizeStyle as Qt, isRef as F, createSlots as Xt, pushScopeId as Kt, popScopeId as Jt, nextTick as Zt, createApp as eo } from "vue";
2
+ import { o as to, s as ne, k as Ue, u as ce, j as K, x as Je, I as oo, b as io, _ as no, y as Ze, B as ro, n as Q, f as et, z as ao, r as so, d as lo, c as uo, a as co, i as ho } from "./NumberField.vue_vue_type_style_index_0_lang-778e8361.mjs";
3
+ import { s as po, e as tt, C as ue, P as fo, S as mo, i as go } from "./index-76459611.mjs";
4
+ import { _ as vo, u as Ae, G as yo, B as bo, M as _o, R as ko, C as Eo, T as Co, W as Io, z as To, V as So, x as Vo } from "./ThankYou-95c1eef3.mjs";
5
+ import { u as xo } from "./ReCaptchaVuePlugin-59863bbf.mjs";
6
+ import { _ as zo, a as Lo } from "./payment-31263275.mjs";
7
+ import { H as $o } from "./HotelAvailabilityForm-a550be2e.mjs";
8
+ import { I as N, _ as he, C as Ee, L as ot } from "./Clickable-26efd8d0.mjs";
9
+ import { _ as Bo } from "./applyGiftCard-fb6fb8f4.mjs";
10
+ import { _ as Se, T as J } from "./SelectField.vue_vue_type_style_index_0_lang-b4fb229d.mjs";
11
+ import { c as ct, g as ht } from "./_commonjsHelpers-10dfc225.mjs";
12
+ import "./ActionField-138c1747.mjs";
13
+ const Ro = to("tracking", () => {
14
+ const {
15
+ enableTracking: _,
16
+ googleApiKey: l
17
+ } = ne(Ue());
18
+ function n() {
19
+ console.log("Tracking"), console.log(l), po({
20
+ config: {
21
+ id: l.value,
22
+ params: {
23
+ send_page_view: !1
24
+ }
25
+ },
26
+ enabled: _.value
27
+ });
28
+ }
29
+ function v({ id: r, name: f, value: k, label: y, category: C = "general" }) {
30
+ return {
31
+ items: [{
32
+ id: r,
33
+ name: f
34
+ }],
35
+ event_label: y,
36
+ event_category: C,
37
+ value: k
38
+ };
39
+ }
40
+ function p(r, f) {
41
+ tt(r, v(f));
42
+ }
43
+ function u(r) {
44
+ p("add_to_cart", {
45
+ ...r,
46
+ label: "Added to cart",
47
+ category: "ecommerce"
48
+ });
49
+ }
50
+ function d(r) {
51
+ p("remove_from_cart", {
52
+ ...r,
53
+ label: "Removed to cart",
54
+ category: "ecommerce"
55
+ });
56
+ }
57
+ function a(r) {
58
+ tt("view_item", {
59
+ items: [{
60
+ name: r
61
+ //: getRoomName(props.listingId)
62
+ }]
63
+ });
64
+ }
65
+ return {
66
+ setup: n,
67
+ viewItem: a,
68
+ addToCart: u,
69
+ removeFromCart: d
70
+ };
71
+ }), Po = { style: { display: "flex", "align-items": "baseline" } }, Oo = { key: 0 }, Do = { style: { display: "flex", "align-items": "baseline" } }, Wo = { key: 0 }, Fo = /* @__PURE__ */ Z({
72
+ __name: "RoomConfigField",
73
+ props: {
74
+ modelValue: {},
75
+ options: {},
76
+ required: { type: Boolean, default: !1 },
77
+ readonly: { type: Boolean, default: !1 },
78
+ label: {}
79
+ },
80
+ emits: ["update:modelValue"],
81
+ setup(_, { emit: l }) {
82
+ const n = _;
83
+ ce();
84
+ function v(u) {
85
+ l("update:modelValue", u);
86
+ }
87
+ const p = Y({
88
+ get: () => n.modelValue,
89
+ set: (u) => v(u)
90
+ });
91
+ return (u, d) => (b(), W(Se, {
92
+ modelValue: p.value,
93
+ "onUpdate:modelValue": d[0] || (d[0] = (a) => p.value = a),
94
+ label: u.label,
95
+ placeholder: "Select guest configuration",
96
+ labelKey: "label",
97
+ valueKey: "value",
98
+ options: u.options,
99
+ required: u.required
100
+ }, {
101
+ option: M(({ data: a }) => [
102
+ c("div", Po, [
103
+ c("div", null, [
104
+ L(N, {
105
+ icon: "male",
106
+ type: "fas"
107
+ }),
108
+ c("span", null, S(`${a.adults}`), 1)
109
+ ]),
110
+ a.children > 0 ? (b(), T("div", Oo, [
111
+ L(N, {
112
+ icon: "child",
113
+ type: "fas"
114
+ }),
115
+ c("span", null, S(`${a.children}`), 1)
116
+ ])) : O("", !0),
117
+ c("div", null, S(`(${a.price})`), 1)
118
+ ])
119
+ ]),
120
+ "selected-option": M(({ data: a }) => [
121
+ c("div", Do, [
122
+ c("div", null, [
123
+ L(N, {
124
+ icon: "male",
125
+ type: "fas"
126
+ }),
127
+ c("span", null, S(`${a.adults}`), 1)
128
+ ]),
129
+ a.children > 0 ? (b(), T("div", Wo, [
130
+ L(N, {
131
+ icon: "child",
132
+ type: "fas"
133
+ }),
134
+ c("span", null, S(`${a.children}`), 1)
135
+ ])) : O("", !0)
136
+ ])
137
+ ]),
138
+ _: 1
139
+ }, 8, ["modelValue", "label", "options", "required"]));
140
+ }
141
+ }), Mo = {
142
+ key: 0,
143
+ class: "fresh-booking-modal-facilities"
144
+ }, No = {
145
+ class: "fresh-booking-modal-facilities-masonry",
146
+ "transition-duration": "0s",
147
+ "destroy-delay": 0,
148
+ "percent-position": !0,
149
+ "column-width": ".grid-sizer",
150
+ "item-selector": ".fresh-booking-modal-facility"
151
+ }, Ao = { class: "grid-sizer" }, wo = /* @__PURE__ */ Z({
152
+ __name: "Info",
153
+ props: {
154
+ title: {},
155
+ description: {},
156
+ facilities: {},
157
+ styling: {}
158
+ },
159
+ setup(_) {
160
+ return (l, n) => {
161
+ const v = Te("masonry-tile"), p = Te("masonry");
162
+ return b(), W(vo, {
163
+ title: l.title,
164
+ description: l.description,
165
+ styling: l.styling
166
+ }, {
167
+ default: M(() => [
168
+ l.facilities && l.facilities.length !== 0 ? (b(), T("div", Mo, [
169
+ oe((b(), T("ul", No, [
170
+ oe(c("div", Ao, null, 512), [
171
+ [v]
172
+ ]),
173
+ (b(!0), T(w, null, U(l.facilities, ({ name: u, subFacilities: d }, a) => oe((b(), T("li", {
174
+ key: a,
175
+ class: "fresh-booking-modal-facility"
176
+ }, [
177
+ c("h6", null, [
178
+ c("span", null, S(u), 1)
179
+ ]),
180
+ c("ul", null, [
181
+ (b(!0), T(w, null, U(d, ({ name: r }, f) => (b(), T("li", { key: f }, S(r), 1))), 128))
182
+ ])
183
+ ])), [
184
+ [v]
185
+ ])), 128))
186
+ ])), [
187
+ [p]
188
+ ])
189
+ ])) : O("", !0)
190
+ ]),
191
+ _: 1
192
+ }, 8, ["title", "description", "styling"]);
193
+ };
194
+ }
195
+ });
196
+ const qo = /* @__PURE__ */ he(wo, [["__scopeId", "data-v-f4a8289d"]]), Uo = { class: "freshbooking-hotel-room" }, Ho = {
197
+ key: 0,
198
+ class: "booking-availability-listing-action-selective"
199
+ }, Go = { class: "fresh-booking-listing-config-header" }, Yo = { class: "fresh-booking-inline-spacing" }, jo = { class: "fresh-booking-inline-spacing" }, Qo = { class: "fresh-booking-listing-units-header" }, Xo = { class: "fresh-booking-inline-spacing" }, Ko = {
200
+ key: 0,
201
+ class: "fresh-booking-inline-spacing"
202
+ }, Jo = { class: "fresh-booking-listing-price-header" }, Zo = { class: "fresh-booking-listing-config-body" }, ei = { class: "fresh-booking-listing-units-body" }, ti = { class: "fresh-booking-listing-price-body" }, oi = { key: 0 }, ii = { key: 1 }, ni = /* @__PURE__ */ Z({
203
+ __name: "Test",
204
+ props: {
205
+ room: {},
206
+ layout: {},
207
+ styling: {}
208
+ },
209
+ setup(_) {
210
+ const l = _, { t: n } = ce(), { hideAvailableRoomAmount: v, currency: p } = ne(Ue()), { finalSelection: u } = ne(Ae()), { viewItem: d } = Ro(), a = ie({}), r = ie({}), f = ie(void 0), k = (E) => l.room.rates.find(($) => $.id === E).occupantRates.find(
211
+ ($) => $.index === r.value[$.ratePlanID]
212
+ ), y = Y(() => l.room.rates.map((E) => ({
213
+ label: E.name,
214
+ value: E.id
215
+ }))), C = Y(() => l.room.rates.reduce(
216
+ (E, $) => E < $.rackRate ? E : $.rackRate,
217
+ 1 / 0
218
+ )), i = Y(() => l.room.rates.every((E) => E.isBreakfastIncluded === !0)), g = (E) => k(E) ? k(E).totalPrice * a.value[k(E).ratePlanID] : null, m = (E) => k(E) ? k(E).rooms : null, s = (E) => l.room.rates.length > 0 ? l.room.rates.find(($) => $.id === E).occupantRates.map(($) => ({
219
+ value: $.index,
220
+ price: $.totalPrice,
221
+ adults: $.adultsCount,
222
+ children: $.childrenCount,
223
+ hasBreakfast: $.hasBreakfast
224
+ })) : [], e = Y(() => l.room.rates.length > 1), o = Y(() => {
225
+ const E = {};
226
+ for (const $ in r.value)
227
+ E[$] = {
228
+ units: a.value[$],
229
+ config: r.value[$],
230
+ addons: {}
231
+ };
232
+ return E;
233
+ }), { open: h, close: I } = yo({
234
+ component: qo,
235
+ attrs: {
236
+ title: l.room.title,
237
+ description: l.room.description,
238
+ facilities: l.room.facilities,
239
+ styling: l.styling,
240
+ onConfirm() {
241
+ I();
242
+ }
243
+ }
244
+ });
245
+ function x() {
246
+ h(), d(l.room.title);
247
+ }
248
+ function R() {
249
+ e.value || (f.value = l.room.rates[0].id, r.value = {
250
+ [f.value]: l.room.rates[0].occupantRateIndex
251
+ });
252
+ }
253
+ return we(() => {
254
+ R();
255
+ }), qe(o, (E, $) => {
256
+ console.log(E, $), u.value[l.room.id] = o;
257
+ }), (E, $) => (b(), W(bo, {
258
+ "listing-id": E.room.id,
259
+ gallery: E.room.images,
260
+ name: E.room.title,
261
+ description: E.room.description,
262
+ layout: E.layout,
263
+ styling: E.styling,
264
+ facilities: E.room.facilities,
265
+ "prices-from": C.value,
266
+ "includes-breakfast": i.value,
267
+ currency: t(p),
268
+ callback: x,
269
+ style: {
270
+ "--inputBackground": "transparent"
271
+ }
272
+ }, {
273
+ action: M(() => [
274
+ c("div", Uo, [
275
+ e.value ? (b(), W(Se, {
276
+ key: 0,
277
+ modelValue: f.value,
278
+ "onUpdate:modelValue": $[0] || ($[0] = (D) => f.value = D),
279
+ label: "Room variant",
280
+ placeholder: "Choose a room variant",
281
+ options: y.value
282
+ }, null, 8, ["modelValue", "options"])) : O("", !0),
283
+ c("div", null, [
284
+ (b(!0), T(w, null, U(E.room.rates, ({
285
+ id: D,
286
+ maximumAdults: q
287
+ }) => (b(), T("div", { key: D }, [
288
+ f.value === D ? (b(), T("div", Ho, [
289
+ c("div", Go, [
290
+ c("b", Yo, [
291
+ c("span", null, S(t(n)("availability.adults")), 1),
292
+ c("span", jo, [
293
+ L(N, {
294
+ icon: "male",
295
+ type: "fas",
296
+ "icon-color": E.styling.headerColor
297
+ }, null, 8, ["icon-color"]),
298
+ c("span", null, S(`Max: ${q}`), 1)
299
+ ])
300
+ ])
301
+ ]),
302
+ c("div", Qo, [
303
+ c("b", Xo, [
304
+ c("span", null, S(t(n)("booking.availability.units")), 1),
305
+ t(v) ? O("", !0) : (b(), T("span", Ko, [
306
+ L(N, {
307
+ icon: "house",
308
+ type: "fas",
309
+ "icon-color": E.styling.headerColor
310
+ }, null, 8, ["icon-color"]),
311
+ c("span", null, S(m(D)), 1)
312
+ ]))
313
+ ])
314
+ ]),
315
+ c("div", Jo, [
316
+ c("b", null, S(t(n)("booking.availability.price")), 1)
317
+ ]),
318
+ c("ul", Zo, [
319
+ (b(), W(Fo, {
320
+ key: 0,
321
+ modelValue: r.value[D],
322
+ "onUpdate:modelValue": (A) => r.value[D] = A,
323
+ options: s(D)
324
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "options"]))
325
+ ]),
326
+ c("ul", ei, [
327
+ L(Bo, {
328
+ modelValue: a.value[D],
329
+ "onUpdate:modelValue": (A) => a.value[D] = A,
330
+ minValue: 0
331
+ }, null, 8, ["modelValue", "onUpdate:modelValue"])
332
+ ]),
333
+ c("ul", ti, [
334
+ g(D) === null ? (b(), T("span", oi, "-")) : (b(), T("span", ii, S(t(K)(g(D), t(p))), 1))
335
+ ])
336
+ ])) : O("", !0)
337
+ ]))), 128))
338
+ ])
339
+ ])
340
+ ]),
341
+ _: 1
342
+ }, 8, ["listing-id", "gallery", "name", "description", "layout", "styling", "facilities", "prices-from", "includes-breakfast", "currency"]));
343
+ }
344
+ });
345
+ const ri = /* @__PURE__ */ he(ni, [["__scopeId", "data-v-0dada669"]]), it = /* @__PURE__ */ Z({
346
+ __name: "TimeField",
347
+ props: {
348
+ modelValue: {},
349
+ label: {},
350
+ id: {},
351
+ name: {},
352
+ placeholder: {},
353
+ icon: {},
354
+ iconColor: {},
355
+ iconType: {},
356
+ primaryColor: {},
357
+ secondaryColor: {},
358
+ weekendColor: {},
359
+ highlightedColor: {},
360
+ required: { type: Boolean },
361
+ readonly: { type: Boolean },
362
+ disabled: { type: Boolean },
363
+ inline: { type: Boolean },
364
+ range: { type: Boolean },
365
+ enableTimePicker: { type: Boolean },
366
+ inputStyle: {}
367
+ },
368
+ emits: ["update:modelValue"],
369
+ setup(_, { emit: l }) {
370
+ const n = _;
371
+ function v(u) {
372
+ l("update:modelValue", u);
373
+ }
374
+ const p = ie(n.modelValue);
375
+ return qe(p, (u) => {
376
+ v(u);
377
+ }), (u, d) => (b(), W(zo, {
378
+ modelValue: p.value,
379
+ "onUpdate:modelValue": d[0] || (d[0] = (a) => p.value = a),
380
+ type: "time",
381
+ label: u.label,
382
+ id: u.id,
383
+ name: u.name,
384
+ icon: u.icon,
385
+ "icon-type": u.iconType,
386
+ "icon-color": u.iconColor,
387
+ "auto-apply": !0,
388
+ required: u.required,
389
+ readonly: u.readonly
390
+ }, null, 8, ["modelValue", "label", "id", "name", "icon", "icon-type", "icon-color", "required", "readonly"]));
391
+ }
392
+ });
393
+ const ai = { style: { display: "flex", "align-items": "baseline" } }, si = /* @__PURE__ */ Z({
394
+ __name: "CountryField",
395
+ props: {
396
+ modelValue: {},
397
+ options: {},
398
+ required: { type: Boolean, default: !1 },
399
+ readonly: { type: Boolean, default: !1 },
400
+ label: {},
401
+ placeholder: {}
402
+ },
403
+ emits: ["update:modelValue"],
404
+ setup(_, { emit: l }) {
405
+ const n = _, { t: v } = ce();
406
+ function p(d) {
407
+ l("update:modelValue", d);
408
+ }
409
+ const u = Y({
410
+ get: () => n.modelValue,
411
+ set: (d) => p(d)
412
+ });
413
+ return (d, a) => (b(), W(Se, {
414
+ modelValue: u.value,
415
+ "onUpdate:modelValue": a[0] || (a[0] = (r) => u.value = r),
416
+ label: d.label,
417
+ placeholder: t(v)("booking.reservation.countryPlaceholder"),
418
+ labelKey: "name",
419
+ valueKey: "id",
420
+ options: d.options,
421
+ required: d.required
422
+ }, {
423
+ option: M(({ data: r }) => [
424
+ c("i", {
425
+ class: de(["fresh-booking-flag", r.iso])
426
+ }, null, 2),
427
+ c("span", null, S(r.name), 1)
428
+ ]),
429
+ "selected-option": M(({ data: r }) => [
430
+ c("div", ai, [
431
+ c("i", {
432
+ class: de(["fresh-booking-flag", r.iso])
433
+ }, null, 2),
434
+ c("span", null, S(r.name), 1)
435
+ ])
436
+ ]),
437
+ _: 1
438
+ }, 8, ["modelValue", "label", "placeholder", "options", "required"]));
439
+ }
440
+ });
441
+ const li = /* @__PURE__ */ he(si, [["__scopeId", "data-v-19fc0955"]]), ui = /* @__PURE__ */ Z({
442
+ __name: "NameField",
443
+ props: {
444
+ modelValue: {},
445
+ title: {},
446
+ label: {},
447
+ id: {},
448
+ placeholder: {},
449
+ icon: {},
450
+ iconColor: {},
451
+ iconType: { default: "fal" },
452
+ required: { type: Boolean, default: !1 },
453
+ readonly: { type: Boolean, default: !1 },
454
+ type: { default: "text" },
455
+ autocomplete: { type: Boolean, default: !1 },
456
+ disabled: { type: Boolean, default: !1 },
457
+ limit: { default: 1 / 0 },
458
+ inputStyle: {},
459
+ excludeTitle: { type: Boolean, default: !1 }
460
+ },
461
+ emits: ["update:modelValue", "update:title"],
462
+ setup(_, { emit: l }) {
463
+ const n = _, v = n.id || Je(), p = ie(""), u = ie(2);
464
+ function d() {
465
+ l("update:modelValue", p.value);
466
+ }
467
+ qe(u, (r) => {
468
+ l("update:title", r);
469
+ });
470
+ const { t: a } = ce();
471
+ return we(() => {
472
+ n.modelValue && (p.value = n.modelValue), n.title && (u.value = n.title);
473
+ }), (r, f) => (b(), W(oo, {
474
+ label: r.label,
475
+ id: t(v),
476
+ required: r.required,
477
+ type: "fresh-booking-name-field",
478
+ readonly: r.readonly,
479
+ limit: r.limit
480
+ }, {
481
+ default: M(() => [
482
+ c("div", {
483
+ class: de([
484
+ "fresh-booking-name-input",
485
+ { "no-title": r.excludeTitle }
486
+ ])
487
+ }, [
488
+ r.excludeTitle ? O("", !0) : (b(), W(Se, {
489
+ key: 0,
490
+ modelValue: u.value,
491
+ "onUpdate:modelValue": f[0] || (f[0] = (k) => u.value = k),
492
+ id: t(Je)(),
493
+ icon: r.icon,
494
+ "icon-color": r.iconColor,
495
+ "icon-type": r.iconType,
496
+ options: [
497
+ {
498
+ label: t(a)("booking.reservation.noNameTitle"),
499
+ value: 1
500
+ },
501
+ {
502
+ label: t(a)("booking.reservation.nameTitleMr"),
503
+ value: 2
504
+ },
505
+ {
506
+ label: t(a)("booking.reservation.nameTitleMs"),
507
+ value: 3
508
+ },
509
+ {
510
+ label: t(a)("booking.reservation.nameTitleMrs"),
511
+ value: 4
512
+ },
513
+ {
514
+ label: t(a)("booking.reservation.nameTitleDr"),
515
+ value: 5
516
+ }
517
+ ],
518
+ readonly: r.readonly,
519
+ "hide-button": "",
520
+ "input-style": r.inputStyle
521
+ }, null, 8, ["modelValue", "id", "icon", "icon-color", "icon-type", "options", "readonly", "input-style"])),
522
+ L(J, {
523
+ modelValue: p.value,
524
+ "onUpdate:modelValue": f[1] || (f[1] = (k) => p.value = k),
525
+ type: "text",
526
+ name: "name",
527
+ autocomplete: "name",
528
+ id: t(v),
529
+ icon: r.excludeTitle ? r.icon : void 0,
530
+ "icon-color": r.iconColor,
531
+ "icon-type": r.iconType,
532
+ placeholder: r.placeholder,
533
+ required: r.required,
534
+ readonly: r.readonly,
535
+ limit: r.limit,
536
+ onInput: f[2] || (f[2] = (k) => d()),
537
+ "input-style": r.inputStyle
538
+ }, null, 8, ["modelValue", "id", "icon", "icon-color", "icon-type", "placeholder", "required", "readonly", "limit", "input-style"])
539
+ ], 2)
540
+ ]),
541
+ _: 1
542
+ }, 8, ["label", "id", "required", "readonly", "limit"]));
543
+ }
544
+ });
545
+ const di = /* @__PURE__ */ he(ui, [["__scopeId", "data-v-ca61082e"]]), ci = (_) => (Kt("data-v-7ea826ef"), _ = _(), Jt(), _), hi = { id: "booking-availability-container" }, pi = { id: "booking-availability-controls" }, fi = {
546
+ key: 0,
547
+ "sticky-container": ""
548
+ }, mi = { key: 0 }, gi = {
549
+ key: 0,
550
+ id: "booking-availability-packages"
551
+ }, vi = ["title"], yi = ["innerHTML"], bi = {
552
+ key: 1,
553
+ id: "reservation-template-rooms"
554
+ }, _i = ["innerHTML"], ki = { key: 1 }, Ei = { key: 0 }, Ci = { id: "booking-availability-listings" }, Ii = {
555
+ key: 1,
556
+ id: "booking-availability-no-listings"
557
+ }, Ti = {
558
+ key: 1,
559
+ id: "booking-availability-no-listings"
560
+ }, Si = {
561
+ key: 2,
562
+ id: "reservation-availability-next-dates"
563
+ }, Vi = { class: "reservation-special-offers-grid" }, xi = ["title"], zi = {
564
+ class: "booking-module-footer",
565
+ "sticky-side": "bottom"
566
+ }, Li = {
567
+ key: 0,
568
+ class: "booking-module-footer-wrapper"
569
+ }, $i = { class: "fresh-booking-footer-table-split" }, Bi = {
570
+ key: 0,
571
+ class: "fresh-booking-footer-summery"
572
+ }, Ri = { class: "fresh-booking-footer-summery-details" }, Pi = { class: "fresh-booking-footer-summery-price" }, Oi = ["onClick"], Di = {
573
+ key: 1,
574
+ class: "booking-module-footer-no-selection"
575
+ }, Wi = { class: "booking-module-footer-action" }, Fi = { class: "booking-module-footer-price" }, Mi = {
576
+ key: 1,
577
+ class: "booking-module-footer-wrapper right"
578
+ }, Ni = { key: 0 }, Ai = { key: 1 }, wi = { class: "fresh-booking-split-inputs" }, qi = { key: 3 }, Ui = { class: "fresh-booking-label" }, Hi = { class: "fresh-booking-checkbox-spacing" }, Gi = ["title"], Yi = { key: 1 }, ji = { class: "booking-reservation-resume-recept-item" }, Qi = { key: 1 }, Xi = { class: "fresh-booking-checkbox-spacing" }, Ki = /* @__PURE__ */ ci(() => /* @__PURE__ */ c("span", null, "Loading...", -1)), Ji = /* @__PURE__ */ Z({
579
+ __name: "Hotel",
580
+ props: {
581
+ accessToken: {},
582
+ accentColor: {},
583
+ buttonBackground: {},
584
+ buttonBorder: {},
585
+ buttonBorderRadius: {},
586
+ buttonColor: {},
587
+ buttonFontFamily: {},
588
+ buttonFontSize: {},
589
+ buttonFontWeight: {},
590
+ buttonIconColor: {},
591
+ buttonTextTransform: {},
592
+ dangerColor: {},
593
+ fontColor: {},
594
+ fontFamily: {},
595
+ fontSize: {},
596
+ grayColor: {},
597
+ headerColor: {},
598
+ headerLayout: {},
599
+ hideListingGroupTitles: {},
600
+ inputBackground: {},
601
+ inputBorder: {},
602
+ inputBorderRadius: {},
603
+ inputFontColor: {},
604
+ labelFontWeight: {},
605
+ labelPadding: {},
606
+ layout: {},
607
+ linkColor: {},
608
+ loadingColor: {},
609
+ packagesTitleMaxLines: {},
610
+ panelBackground: {},
611
+ panelBorder: {},
612
+ panelBorderRadius: {},
613
+ panelPadding: {},
614
+ successColor: {}
615
+ },
616
+ setup(_) {
617
+ const l = _, { t: n } = ce(), {
618
+ finalSelection: v,
619
+ templateID: p,
620
+ roomGroupID: u,
621
+ slideshow: d,
622
+ title: a,
623
+ totalPrice: r,
624
+ countries: f,
625
+ isMetaDataAvailable: k,
626
+ isAvailabilityDataAvailable: y,
627
+ isPaymentLoading: C,
628
+ isReservationFormFilled: i,
629
+ selectedPackage: g,
630
+ travelingFor: m,
631
+ arrivalTime: s,
632
+ departureTime: e,
633
+ name: o,
634
+ nameTitle: h,
635
+ email: I,
636
+ phone: x,
637
+ firmName: R,
638
+ postal: E,
639
+ city: $,
640
+ address: D,
641
+ country: q,
642
+ remark: A,
643
+ allergies: ee,
644
+ newsMails: te,
645
+ fetchAddons: Ve,
646
+ //canStartReservation,
647
+ getSelectedPackageRoom: pe,
648
+ availabilityData: G
649
+ } = ne(Ae()), {
650
+ arrivalDate: re,
651
+ departureDate: ae
652
+ } = ne(Lo()), {
653
+ currency: j,
654
+ isRecaptchaEnabled: gt,
655
+ disableNewsletterSignup: vt,
656
+ arrivalEarliest: yt,
657
+ arrivalLatest: bt,
658
+ departureEarliest: _t,
659
+ departureLatest: kt,
660
+ enableTracking: Et,
661
+ arrivalDefault: Ye,
662
+ departureDefault: je,
663
+ enablePackages: Ct,
664
+ hideArrivalDepartureInputs: xe,
665
+ disableArrivalUserSelection: fe,
666
+ disableNamePrefix: It,
667
+ disableDepartureUserSelection: me,
668
+ disableTravelingFor: Tt,
669
+ disableCompanyField: St
670
+ } = ne(Ue()), { display: Vt } = io(), {
671
+ initialize: xt,
672
+ //resetBookingSelection,
673
+ resetAddonSelection: zt,
674
+ createReservation: Qe,
675
+ //getRoomName,
676
+ getSingleListing: ge,
677
+ //calculateRoomPrice,
678
+ removeRoom: Lt
679
+ } = Ae(), $t = Y(() => [[
680
+ parseInt(yt.value.split(":")[0]),
681
+ parseInt(bt.value.split(":")[0])
682
+ ]]), Bt = Y(() => [[
683
+ parseInt(_t.value.split(":")[0]),
684
+ parseInt(kt.value.split(":")[0])
685
+ ]]), Rt = {
686
+ "--accentColor": l.accentColor,
687
+ "--buttonBackground": l.buttonBackground,
688
+ "--buttonBorder": l.buttonBorder,
689
+ "--buttonBorderRadius": l.buttonBorderRadius,
690
+ "--buttonColor": l.buttonColor,
691
+ "--buttonFontFamily": l.buttonFontFamily,
692
+ "--buttonFontSize": l.buttonFontSize,
693
+ "--buttonFontWeight": l.buttonFontWeight,
694
+ "--buttonTextTransform": l.buttonTextTransform,
695
+ "--dangerColor": l.dangerColor,
696
+ "--fontColor": l.fontColor,
697
+ "--fontFamily": l.fontFamily,
698
+ "--fontSize": l.fontSize,
699
+ "--grayColor": l.grayColor,
700
+ "--headerColor": l.headerColor,
701
+ "--inputBackground": l.inputBackground,
702
+ "--inputBorder": l.inputBorder,
703
+ "--inputBorderRadius": l.inputBorderRadius,
704
+ "--inputFontColor": l.inputFontColor,
705
+ "--labelFontWeight": l.labelFontWeight,
706
+ "--labelPadding": l.labelPadding,
707
+ "--linkColor": l.linkColor,
708
+ "--loadingColor": l.loadingColor,
709
+ "--panelBackground": l.panelBackground,
710
+ "--panelBorder": l.panelBorder,
711
+ "--panelBorderRadius": l.panelBorderRadius,
712
+ "--panelPadding": l.panelPadding,
713
+ "--successColor": l.successColor
714
+ }, ze = {
715
+ fontColor: l.fontColor,
716
+ fontFamily: l.fontFamily,
717
+ fontSize: l.fontSize,
718
+ headerColor: l.headerColor,
719
+ panelPadding: l.panelPadding
720
+ };
721
+ function Pt(B) {
722
+ p.value = B;
723
+ }
724
+ function Ot() {
725
+ p.value = NaN;
726
+ }
727
+ function Dt(B) {
728
+ zt(), B();
729
+ }
730
+ function Wt(B, z) {
731
+ re.value = new Date(B), ae.value = new Date(z), location.reload();
732
+ }
733
+ async function Ft(B) {
734
+ const z = xo();
735
+ if (gt && z) {
736
+ await z.recaptchaLoaded();
737
+ const Le = await z.executeRecaptcha("create_reservation");
738
+ (await so.get(`/?rest_route=/freshcase-octopus/v1/recaptcha/${Le}`)).data.success ? await Qe(B) : Vt({
739
+ message: n("alert.error.robot"),
740
+ type: "error"
741
+ });
742
+ } else
743
+ await Qe(B);
744
+ }
745
+ function Mt(B) {
746
+ B();
747
+ }
748
+ function Nt() {
749
+ s.value === "" && (s.value = Ye.value), e.value === "" && (e.value = je.value);
750
+ }
751
+ return we(() => {
752
+ xt(), Nt();
753
+ }), (B, z) => {
754
+ const Le = Gt("HotelListing"), $e = Te("snip"), At = Te("sticky");
755
+ return b(), W(Yt, null, {
756
+ default: M(() => [
757
+ L(no, {
758
+ id: "fresh-booking-hotel-module",
759
+ class: "fresh-booking-app",
760
+ "access-token": B.accessToken,
761
+ type: "hotel",
762
+ style: Rt
763
+ }, {
764
+ default: M(() => [
765
+ t(k) ? (b(), W(_o, {
766
+ key: 0,
767
+ title: t(a),
768
+ slideshow: t(d),
769
+ layout: B.headerLayout
770
+ }, {
771
+ availability: M(({ next: ve }) => [
772
+ c("div", hi, [
773
+ c("div", pi, [
774
+ L($o, { booking: !0 })
775
+ ]),
776
+ t(y) ? (b(), T("div", fi, [
777
+ t(G).roomGroups.length > 0 ? (b(), T("div", mi, [
778
+ t(G).templates.length > 0 && t(Ct) ? (b(), T("div", gi, [
779
+ c("h2", null, [
780
+ L(N, {
781
+ icon: "box",
782
+ type: "fal",
783
+ "icon-color": B.headerColor
784
+ }, null, 8, ["icon-color"]),
785
+ c("span", null, S(isNaN(t(p)) ? t(n)("booking.availability.packagesTitle") : t(g)?.name), 1)
786
+ ]),
787
+ isNaN(t(p)) ? (b(), T("ul", {
788
+ key: 0,
789
+ class: de([
790
+ "reservation-special-offers-grid",
791
+ { "full-width": t(G).templates.length === 1 },
792
+ { "half-width": t(G).templates.length === 2 }
793
+ ])
794
+ }, [
795
+ (b(!0), T(w, null, U(t(G).templates, ({
796
+ id: P,
797
+ name: V,
798
+ templateRoomGroups: se,
799
+ imageUrl: le,
800
+ description: X
801
+ }) => (b(), T("li", { key: P }, [
802
+ oe((b(), T("h3", { title: V }, [
803
+ c("span", null, S(V), 1)
804
+ ], 8, vi)), [
805
+ [$e, { lines: parseInt(B.packagesTitleMaxLines) || 1 }]
806
+ ]),
807
+ O("", !0),
808
+ c("p", {
809
+ innerHTML: t(Ze)(X)
810
+ }, null, 8, yi),
811
+ O("", !0),
812
+ L(Ee, {
813
+ type: "button",
814
+ label: t(n)("booking.availability.viewOptions"),
815
+ "full-width": "",
816
+ onClickEvent: (ye) => Pt(P)
817
+ }, null, 8, ["label", "onClickEvent"])
818
+ ]))), 128))
819
+ ], 2)) : t(g) ? (b(), T("div", bi, [
820
+ c("p", {
821
+ innerHTML: t(Ze)(t(g).description)
822
+ }, null, 8, _i),
823
+ c("ul", null, [
824
+ (b(!0), T(w, null, U(t(g).templateRoomGroups, ({ roomGroupID: P }, V) => (b(), W(Le, {
825
+ description: t(ge)(P).description,
826
+ name: t(ge)(P).name,
827
+ styling: ze,
828
+ layout: t(ro).Template,
829
+ "listing-id": P,
830
+ "occupant-rates": t(ge)(P).occupantRates,
831
+ available: t(ge)(P).available,
832
+ trackingEnabled: t(Et),
833
+ key: V,
834
+ onNext: ve
835
+ }, null, 8, ["description", "name", "layout", "listing-id", "occupant-rates", "available", "trackingEnabled", "onNext"]))), 128))
836
+ ])
837
+ ])) : O("", !0)
838
+ ])) : O("", !0),
839
+ isNaN(t(p)) ? (b(), T("div", ki, [
840
+ t(G).roomGroups.length > 0 ? (b(), T("div", Ei, [
841
+ c("h2", null, [
842
+ L(N, {
843
+ icon: "house",
844
+ type: "fal",
845
+ "icon-color": B.headerColor
846
+ }, null, 8, ["icon-color"]),
847
+ c("span", null, S(t(n)("booking.availability.roomsTitle")), 1)
848
+ ]),
849
+ c("ul", Ci, [
850
+ (b(!0), T(w, null, U(t(G).roomGroups, (P, V) => (b(), W(ri, {
851
+ room: P,
852
+ styling: ze,
853
+ layout: B.layout,
854
+ key: V
855
+ }, null, 8, ["room", "layout"]))), 128))
856
+ ])
857
+ ])) : (b(), T("div", Ii, [
858
+ c("span", null, S(t(n)("booking.availability.nothingAvailable")), 1)
859
+ ]))
860
+ ])) : O("", !0)
861
+ ])) : t(G).nextAvailableDates.length === 0 ? (b(), T("div", Ti, [
862
+ c("span", null, S(t(n)("booking.availability.nothingAvailable")), 1)
863
+ ])) : (b(), T("div", Si, [
864
+ c("h2", null, [
865
+ L(N, {
866
+ icon: "calendar-circle-exclamation",
867
+ type: "fal",
868
+ "icon-color": B.headerColor
869
+ }, null, 8, ["icon-color"]),
870
+ c("span", null, S(t(n)("booking.availability.nextAvailableDates")), 1)
871
+ ]),
872
+ c("ul", Vi, [
873
+ (b(!0), T(w, null, U(t(G).nextAvailableDates, (P, V) => (b(), T("li", { key: V }, [
874
+ c("h3", {
875
+ title: `${t(Q)(P.fromDate)} - ${t(Q)(P.toDate)}`
876
+ }, [
877
+ oe((b(), T("span", null, [
878
+ ke(S(`${t(Q)(P.fromDate)} - ${t(Q)(P.toDate)}`), 1)
879
+ ])), [
880
+ [$e, { lines: 1 }]
881
+ ])
882
+ ], 8, xi),
883
+ c("ul", null, [
884
+ c("li", null, [
885
+ L(N, {
886
+ icon: "house",
887
+ type: "fal",
888
+ "icon-color": B.headerColor
889
+ }, null, 8, ["icon-color"]),
890
+ c("span", null, S(t(n)("booking.availability.units")) + ": " + S(P.roomCount), 1)
891
+ ]),
892
+ c("li", null, [
893
+ L(N, {
894
+ icon: "money-bill",
895
+ type: "fal",
896
+ "icon-color": B.headerColor
897
+ }, null, 8, ["icon-color"]),
898
+ c("span", null, S(t(n)("booking.availability.pricesFrom")) + ": " + S(t(K)(P.priceStartFrom, t(j))), 1)
899
+ ])
900
+ ]),
901
+ L(Ee, {
902
+ label: t(n)("booking.availability.selectDates"),
903
+ "full-width": "",
904
+ onClickEvent: (se) => Wt(P.fromDate, P.toDate)
905
+ }, null, 8, ["label", "onClickEvent"])
906
+ ]))), 128))
907
+ ])
908
+ ])),
909
+ oe((b(), T("div", zi, [
910
+ isNaN(t(p)) ? (b(), T("table", Li, [
911
+ c("tbody", null, [
912
+ c("tr", $i, [
913
+ c("td", null, [
914
+ t(Ve).length > 0 ? (b(), T("ul", Bi, [
915
+ (b(!0), T(w, null, U(t(Ve), ({
916
+ name: P,
917
+ index: V,
918
+ adultsCount: se,
919
+ childrenCount: le,
920
+ totalPrice: X,
921
+ roomGroupID: ye,
922
+ ratePlanID: be
923
+ }, _e) => (b(), T("li", { key: _e }, [
924
+ c("div", Ri, [
925
+ c("span", null, S(`${P} (#${V})`), 1),
926
+ c("span", null, [
927
+ ke("( "),
928
+ L(N, {
929
+ icon: "male",
930
+ type: "fas",
931
+ "icon-color": B.headerColor
932
+ }, null, 8, ["icon-color"]),
933
+ c("span", null, S(se), 1),
934
+ ke(") "),
935
+ le > 0 ? (b(), T(w, { key: 0 }, [
936
+ L(N, {
937
+ icon: "child",
938
+ type: "fas",
939
+ "icon-color": B.headerColor
940
+ }, null, 8, ["icon-color"]),
941
+ c("span", null, S(le), 1),
942
+ ke(") ")
943
+ ], 64)) : O("", !0)
944
+ ])
945
+ ]),
946
+ c("div", Pi, [
947
+ c("template", null, [
948
+ c("span", null, S(t(K)(X, t(j))), 1)
949
+ ]),
950
+ c("span", {
951
+ class: "fresh-booking-footer-summery-remove",
952
+ onClick: jt((Xe) => t(Lt)(ye, be), ["prevent"])
953
+ }, [
954
+ L(N, {
955
+ icon: "times",
956
+ type: "fas",
957
+ "icon-color": "#ff0000"
958
+ })
959
+ ], 8, Oi)
960
+ ])
961
+ ]))), 128))
962
+ ])) : (b(), T("div", Di, [
963
+ c("span", null, S(t(n)("booking.availability.nothingSelected")), 1)
964
+ ]))
965
+ ]),
966
+ c("td", Wi, [
967
+ L(Ee, {
968
+ label: t(n)("booking.availability.nextButton"),
969
+ styling: "success",
970
+ disabled: !1,
971
+ "full-width": "",
972
+ onClickEvent: (P) => Mt(ve),
973
+ style: Qt({
974
+ background: B.successColor
975
+ })
976
+ }, null, 8, ["label", "onClickEvent", "style"]),
977
+ c("div", Fi, [
978
+ c("b", null, S(t(n)("booking.availability.totalPrice")) + ":", 1),
979
+ c("span", null, S(t(K)(t(r), t(j))), 1)
980
+ ])
981
+ ])
982
+ ])
983
+ ])
984
+ ])) : (b(), T("div", Mi, [
985
+ L(Ee, {
986
+ label: t(n)("booking.reservation.prevButton"),
987
+ secondary: "",
988
+ onClickEvent: z[0] || (z[0] = (P) => Ot())
989
+ }, null, 8, ["label"])
990
+ ]))
991
+ ])), [
992
+ [At]
993
+ ])
994
+ ])) : (b(), W(ot, { key: 1 }))
995
+ ])
996
+ ]),
997
+ reservation: M(({ next: ve, prev: P }) => [
998
+ L(ko, {
999
+ remark: t(A),
1000
+ "onUpdate:remark": z[17] || (z[17] = (V) => F(A) ? A.value = V : null),
1001
+ "is-filled": t(i),
1002
+ currency: t(j),
1003
+ "button-icon-color": B.buttonIconColor,
1004
+ "total-price": t(r),
1005
+ "is-loading": t(C),
1006
+ notice: t(n)("hotel.reservationNotice"),
1007
+ styling: ze,
1008
+ onPrev: (V) => Dt(P),
1009
+ onNext: (V) => Ft(ve)
1010
+ }, Xt({
1011
+ form: M(() => [
1012
+ !t(xe) && !(t(fe) && t(me)) ? (b(), T("ul", {
1013
+ key: 0,
1014
+ class: de({ "fresh-booking-split-inputs": !t(fe) && !t(me) })
1015
+ }, [
1016
+ t(fe) ? O("", !0) : (b(), T("li", Ni, [
1017
+ L(it, {
1018
+ modelValue: t(s),
1019
+ "onUpdate:modelValue": z[1] || (z[1] = (V) => F(s) ? s.value = V : null),
1020
+ label: t(n)("booking.reservation.arrivalTime"),
1021
+ icon: "hourglass-start",
1022
+ "hour-range": $t.value,
1023
+ required: ""
1024
+ }, null, 8, ["modelValue", "label", "hour-range"])
1025
+ ])),
1026
+ t(me) ? O("", !0) : (b(), T("li", Ai, [
1027
+ L(it, {
1028
+ modelValue: t(e),
1029
+ "onUpdate:modelValue": z[2] || (z[2] = (V) => F(e) ? e.value = V : null),
1030
+ label: t(n)("booking.reservation.departureTime"),
1031
+ icon: "hourglass-end",
1032
+ "hour-range": Bt.value,
1033
+ required: ""
1034
+ }, null, 8, ["modelValue", "label", "hour-range"])
1035
+ ]))
1036
+ ], 2)) : O("", !0),
1037
+ L(di, {
1038
+ modelValue: t(o),
1039
+ "onUpdate:modelValue": z[3] || (z[3] = (V) => F(o) ? o.value = V : null),
1040
+ title: t(h),
1041
+ "onUpdate:title": z[4] || (z[4] = (V) => F(h) ? h.value = V : null),
1042
+ "exclude-title": t(It),
1043
+ label: t(n)("booking.reservation.name"),
1044
+ icon: "user-alt",
1045
+ placeholder: t(n)("booking.reservation.namePlaceholder"),
1046
+ required: ""
1047
+ }, null, 8, ["modelValue", "title", "exclude-title", "label", "placeholder"]),
1048
+ L(J, {
1049
+ modelValue: t(I),
1050
+ "onUpdate:modelValue": z[5] || (z[5] = (V) => F(I) ? I.value = V : null),
1051
+ type: "email",
1052
+ name: "email",
1053
+ autocomplete: "email",
1054
+ label: t(n)("booking.reservation.email"),
1055
+ icon: "at",
1056
+ placeholder: t(n)("booking.reservation.emailPlaceholder"),
1057
+ required: ""
1058
+ }, null, 8, ["modelValue", "label", "placeholder"]),
1059
+ t(vt) ? O("", !0) : (b(), W(ue, {
1060
+ key: 1,
1061
+ modelValue: t(te),
1062
+ "onUpdate:modelValue": z[6] || (z[6] = (V) => F(te) ? te.value = V : null),
1063
+ type: "checkbox",
1064
+ name: "newsletter",
1065
+ label: t(n)("booking.reservation.newsletterSignUp")
1066
+ }, null, 8, ["modelValue", "label"])),
1067
+ t(St) ? O("", !0) : (b(), W(J, {
1068
+ key: 2,
1069
+ modelValue: t(R),
1070
+ "onUpdate:modelValue": z[7] || (z[7] = (V) => F(R) ? R.value = V : null),
1071
+ type: "text",
1072
+ name: "firm",
1073
+ autocomplete: "firm",
1074
+ label: `${t(n)("booking.reservation.companyName")} (${t(n)("booking.reservation.optional")})`,
1075
+ icon: "id-card",
1076
+ placeholder: t(n)("booking.reservation.companyNamePlaceholder")
1077
+ }, null, 8, ["modelValue", "label", "placeholder"])),
1078
+ L(fo, {
1079
+ modelValue: t(x),
1080
+ "onUpdate:modelValue": z[8] || (z[8] = (V) => F(x) ? x.value = V : null),
1081
+ icon: "phone-office",
1082
+ label: t(n)("booking.reservation.phone"),
1083
+ placeholder: t(n)("booking.reservation.phonePlaceholder"),
1084
+ required: ""
1085
+ }, null, 8, ["modelValue", "label", "placeholder"]),
1086
+ L(li, {
1087
+ modelValue: t(q),
1088
+ "onUpdate:modelValue": z[9] || (z[9] = (V) => F(q) ? q.value = V : null),
1089
+ label: t(n)("booking.reservation.country"),
1090
+ placeholder: t(n)("booking.reservation.countryPlaceholder"),
1091
+ options: t(f),
1092
+ required: ""
1093
+ }, null, 8, ["modelValue", "label", "placeholder", "options"]),
1094
+ L(J, {
1095
+ modelValue: t(D),
1096
+ "onUpdate:modelValue": z[10] || (z[10] = (V) => F(D) ? D.value = V : null),
1097
+ type: "textarea",
1098
+ name: "address",
1099
+ autocomplete: "street-address",
1100
+ label: t(n)("booking.reservation.streetAddress"),
1101
+ icon: "map-marked",
1102
+ placeholder: t(n)("booking.reservation.streetAddressPlaceholder"),
1103
+ required: ""
1104
+ }, null, 8, ["modelValue", "label", "placeholder"]),
1105
+ c("ul", wi, [
1106
+ c("li", null, [
1107
+ L(J, {
1108
+ modelValue: t(E),
1109
+ "onUpdate:modelValue": z[11] || (z[11] = (V) => F(E) ? E.value = V : null),
1110
+ type: "number",
1111
+ name: "postal",
1112
+ autocomplete: "postal-code",
1113
+ label: t(n)("booking.reservation.postal"),
1114
+ icon: "mailbox",
1115
+ placeholder: t(n)("booking.reservation.postalPlaceholder"),
1116
+ required: ""
1117
+ }, null, 8, ["modelValue", "label", "placeholder"])
1118
+ ]),
1119
+ c("li", null, [
1120
+ L(J, {
1121
+ modelValue: t($),
1122
+ "onUpdate:modelValue": z[12] || (z[12] = (V) => F($) ? $.value = V : null),
1123
+ type: "text",
1124
+ name: "city",
1125
+ autocomplete: "address-level2",
1126
+ label: t(n)("booking.reservation.city"),
1127
+ icon: "city",
1128
+ placeholder: t(n)("booking.reservation.cityPlaceholder"),
1129
+ required: ""
1130
+ }, null, 8, ["modelValue", "label", "placeholder"])
1131
+ ])
1132
+ ]),
1133
+ L(J, {
1134
+ modelValue: t(ee),
1135
+ "onUpdate:modelValue": z[13] || (z[13] = (V) => F(ee) ? ee.value = V : null),
1136
+ type: "textarea",
1137
+ label: `${t(n)("booking.reservation.allergies")} (${t(n)("booking.reservation.optional")})`,
1138
+ icon: "allergies",
1139
+ placeholder: t(n)("booking.reservation.allergiesPlaceholder")
1140
+ }, null, 8, ["modelValue", "label", "placeholder"]),
1141
+ t(Tt) ? O("", !0) : (b(), T("div", qi, [
1142
+ c("label", Ui, [
1143
+ c("span", null, S(t(n)("booking.reservation.purposeOfStay")) + " (" + S(t(n)("booking.reservation.optional")) + ")", 1)
1144
+ ]),
1145
+ c("ul", Hi, [
1146
+ c("li", null, [
1147
+ L(ue, {
1148
+ modelValue: t(m),
1149
+ "onUpdate:modelValue": z[14] || (z[14] = (V) => F(m) ? m.value = V : null),
1150
+ type: "radio",
1151
+ name: "travelingFor",
1152
+ label: t(n)("booking.reservation.business"),
1153
+ val: "Business"
1154
+ }, null, 8, ["modelValue", "label"])
1155
+ ]),
1156
+ c("li", null, [
1157
+ L(ue, {
1158
+ modelValue: t(m),
1159
+ "onUpdate:modelValue": z[15] || (z[15] = (V) => F(m) ? m.value = V : null),
1160
+ type: "radio",
1161
+ name: "travelingFor",
1162
+ label: t(n)("booking.reservation.pleasure"),
1163
+ val: "Pleasure"
1164
+ }, null, 8, ["modelValue", "label"])
1165
+ ]),
1166
+ c("li", null, [
1167
+ L(ue, {
1168
+ modelValue: t(m),
1169
+ "onUpdate:modelValue": z[16] || (z[16] = (V) => F(m) ? m.value = V : null),
1170
+ type: "radio",
1171
+ name: "travelingFor",
1172
+ label: t(n)("booking.reservation.bleasure"),
1173
+ val: "Bleasure"
1174
+ }, null, 8, ["modelValue", "label"])
1175
+ ])
1176
+ ])
1177
+ ]))
1178
+ ]),
1179
+ resume: M(() => [
1180
+ c("li", null, [
1181
+ c("span", null, S(t(n)("booking.reservation.arrival")), 1),
1182
+ c("b", null, S(t(xe) ? t(Q)(t(re)) : `${t(Q)(t(re))}, ${t(fe) ? t(Ye) : t(s)}`), 1)
1183
+ ]),
1184
+ c("li", null, [
1185
+ c("span", null, S(t(n)("booking.reservation.departure")), 1),
1186
+ c("b", null, S(t(xe) ? t(Q)(t(ae)) : `${t(Q)(t(ae))}, ${t(me) ? t(je) : t(e)}`), 1)
1187
+ ]),
1188
+ c("li", null, [
1189
+ c("span", null, S(t(n)("booking.reservation.nights")), 1),
1190
+ c("b", null, S(t(et)(t(re), t(ae))) + " " + S(t(ao)(t(et)(t(re), t(ae)) === 1 ? t(n)("booking.reservation.night") : t(n)("booking.reservation.nights"))), 1)
1191
+ ]),
1192
+ !isNaN(t(p)) && !isNaN(t(u)) && t(pe) ? (b(), T(w, { key: 0 }, [
1193
+ c("li", null, [
1194
+ c("span", null, S(t(n)("booking.reservation.roomName")), 1),
1195
+ c("b", {
1196
+ title: t(pe).roomGroupName
1197
+ }, S(t(pe).roomGroupName), 9, Gi)
1198
+ ]),
1199
+ c("li", null, [
1200
+ c("span", null, S(t(n)("booking.availability.basePrice")), 1),
1201
+ c("b", null, S(t(K)(t(pe).extraPrice, t(j))), 1)
1202
+ ])
1203
+ ], 64)) : O("", !0),
1204
+ !isNaN(t(p)) && !isNaN(t(u)) && t(g) ? (b(), T("li", Yi, [
1205
+ c("span", null, S(t(n)("general.weekendFee")), 1),
1206
+ c("b", null, S(t(K)(t(g).weekendFee, t(j))), 1)
1207
+ ])) : O("", !0)
1208
+ ]),
1209
+ _: 2
1210
+ }, [
1211
+ void 0,
1212
+ isNaN(t(p)) ? {
1213
+ name: "addons",
1214
+ fn: M(() => [
1215
+ (b(!0), T(w, { key: 0 }, U(t(Ve), ({
1216
+ name: V,
1217
+ index: se,
1218
+ adultsCount: le,
1219
+ childrenCount: X,
1220
+ addons: ye,
1221
+ roomGroupID: be,
1222
+ ratePlanID: _e
1223
+ }, Xe) => (b(), T("li", { key: Xe }, [
1224
+ c("div", null, [
1225
+ c("div", ji, [
1226
+ c("b", null, S(`${V} (#${se})`), 1),
1227
+ c("b", null, [
1228
+ L(N, {
1229
+ icon: "male",
1230
+ type: "fas",
1231
+ "icon-color": B.headerColor
1232
+ }, null, 8, ["icon-color"]),
1233
+ c("span", null, S(le), 1),
1234
+ X > 0 ? (b(), W(N, {
1235
+ key: 0,
1236
+ icon: "child",
1237
+ type: "fas",
1238
+ "icon-color": B.headerColor
1239
+ }, null, 8, ["icon-color"])) : O("", !0),
1240
+ X > 0 ? (b(), T("span", Qi, S(X), 1)) : O("", !0)
1241
+ ])
1242
+ ]),
1243
+ c("ul", Xi, [
1244
+ (b(!0), T(w, null, U(ye, ({
1245
+ name: wt,
1246
+ price: qt,
1247
+ id: Ke
1248
+ }, Ut) => (b(), T("li", { key: Ut }, [
1249
+ L(ue, {
1250
+ modelValue: t(v)[be][_e].addons[Ke],
1251
+ "onUpdate:modelValue": (Ht) => t(v)[be][_e].addons[Ke] = Ht,
1252
+ label: wt,
1253
+ price: `${t(K)(qt, t(j))} ${t(n)("general.perAdultPerNight")}`
1254
+ }, null, 8, ["modelValue", "onUpdate:modelValue", "label", "price"])
1255
+ ]))), 128))
1256
+ ])
1257
+ ])
1258
+ ]))), 128))
1259
+ ]),
1260
+ key: "1"
1261
+ } : void 0
1262
+ ]), 1032, ["remark", "is-filled", "currency", "button-icon-color", "total-price", "is-loading", "notice", "onPrev", "onNext"])
1263
+ ]),
1264
+ payment: M(() => [
1265
+ L(Eo)
1266
+ ]),
1267
+ confirmation: M(() => [
1268
+ L(Co, {
1269
+ message: t(n)("booking.confirmation.thankYou"),
1270
+ currency: t(j)
1271
+ }, null, 8, ["message", "currency"])
1272
+ ]),
1273
+ _: 1
1274
+ }, 8, ["title", "slideshow", "layout"])) : (b(), W(ot, { key: 1 })),
1275
+ L(t(Io))
1276
+ ]),
1277
+ _: 1
1278
+ }, 8, ["access-token"])
1279
+ ]),
1280
+ fallback: M(() => [
1281
+ Ki
1282
+ ]),
1283
+ _: 1
1284
+ });
1285
+ };
1286
+ }
1287
+ });
1288
+ const Zi = /* @__PURE__ */ he(Ji, [["__scopeId", "data-v-7ea826ef"]]);
1289
+ var pt = { exports: {} }, Be = { exports: {} }, Re = { exports: {} }, nt;
1290
+ function He() {
1291
+ return nt || (nt = 1, function(_) {
1292
+ (function(l, n) {
1293
+ _.exports ? _.exports = n() : l.EvEmitter = n();
1294
+ })(typeof window < "u" ? window : ct, function() {
1295
+ function l() {
1296
+ }
1297
+ var n = l.prototype;
1298
+ return n.on = function(v, p) {
1299
+ if (!(!v || !p)) {
1300
+ var u = this._events = this._events || {}, d = u[v] = u[v] || [];
1301
+ return d.indexOf(p) == -1 && d.push(p), this;
1302
+ }
1303
+ }, n.once = function(v, p) {
1304
+ if (!(!v || !p)) {
1305
+ this.on(v, p);
1306
+ var u = this._onceEvents = this._onceEvents || {}, d = u[v] = u[v] || {};
1307
+ return d[p] = !0, this;
1308
+ }
1309
+ }, n.off = function(v, p) {
1310
+ var u = this._events && this._events[v];
1311
+ if (!(!u || !u.length)) {
1312
+ var d = u.indexOf(p);
1313
+ return d != -1 && u.splice(d, 1), this;
1314
+ }
1315
+ }, n.emitEvent = function(v, p) {
1316
+ var u = this._events && this._events[v];
1317
+ if (!(!u || !u.length)) {
1318
+ u = u.slice(0), p = p || [];
1319
+ for (var d = this._onceEvents && this._onceEvents[v], a = 0; a < u.length; a++) {
1320
+ var r = u[a], f = d && d[r];
1321
+ f && (this.off(v, r), delete d[r]), r.apply(this, p);
1322
+ }
1323
+ return this;
1324
+ }
1325
+ }, n.allOff = function() {
1326
+ delete this._events, delete this._onceEvents;
1327
+ }, l;
1328
+ });
1329
+ }(Re)), Re.exports;
1330
+ }
1331
+ var Pe = { exports: {} };
1332
+ /*!
1333
+ * getSize v2.0.3
1334
+ * measure size of elements
1335
+ * MIT license
1336
+ */
1337
+ var rt;
1338
+ function Ge() {
1339
+ return rt || (rt = 1, function(_) {
1340
+ (function(l, n) {
1341
+ _.exports ? _.exports = n() : l.getSize = n();
1342
+ })(window, function() {
1343
+ function n(i) {
1344
+ var g = parseFloat(i), m = i.indexOf("%") == -1 && !isNaN(g);
1345
+ return m && g;
1346
+ }
1347
+ function v() {
1348
+ }
1349
+ var p = typeof console > "u" ? v : function(i) {
1350
+ console.error(i);
1351
+ }, u = [
1352
+ "paddingLeft",
1353
+ "paddingRight",
1354
+ "paddingTop",
1355
+ "paddingBottom",
1356
+ "marginLeft",
1357
+ "marginRight",
1358
+ "marginTop",
1359
+ "marginBottom",
1360
+ "borderLeftWidth",
1361
+ "borderRightWidth",
1362
+ "borderTopWidth",
1363
+ "borderBottomWidth"
1364
+ ], d = u.length;
1365
+ function a() {
1366
+ for (var i = {
1367
+ width: 0,
1368
+ height: 0,
1369
+ innerWidth: 0,
1370
+ innerHeight: 0,
1371
+ outerWidth: 0,
1372
+ outerHeight: 0
1373
+ }, g = 0; g < d; g++) {
1374
+ var m = u[g];
1375
+ i[m] = 0;
1376
+ }
1377
+ return i;
1378
+ }
1379
+ function r(i) {
1380
+ var g = getComputedStyle(i);
1381
+ return g || p("Style returned " + g + ". Are you running this code in a hidden iframe on Firefox? See https://bit.ly/getsizebug1"), g;
1382
+ }
1383
+ var f = !1, k;
1384
+ function y() {
1385
+ if (!f) {
1386
+ f = !0;
1387
+ var i = document.createElement("div");
1388
+ i.style.width = "200px", i.style.padding = "1px 2px 3px 4px", i.style.borderStyle = "solid", i.style.borderWidth = "1px 2px 3px 4px", i.style.boxSizing = "border-box";
1389
+ var g = document.body || document.documentElement;
1390
+ g.appendChild(i);
1391
+ var m = r(i);
1392
+ k = Math.round(n(m.width)) == 200, C.isBoxSizeOuter = k, g.removeChild(i);
1393
+ }
1394
+ }
1395
+ function C(i) {
1396
+ if (y(), typeof i == "string" && (i = document.querySelector(i)), !(!i || typeof i != "object" || !i.nodeType)) {
1397
+ var g = r(i);
1398
+ if (g.display == "none")
1399
+ return a();
1400
+ var m = {};
1401
+ m.width = i.offsetWidth, m.height = i.offsetHeight;
1402
+ for (var s = m.isBorderBox = g.boxSizing == "border-box", e = 0; e < d; e++) {
1403
+ var o = u[e], h = g[o], I = parseFloat(h);
1404
+ m[o] = isNaN(I) ? 0 : I;
1405
+ }
1406
+ var x = m.paddingLeft + m.paddingRight, R = m.paddingTop + m.paddingBottom, E = m.marginLeft + m.marginRight, $ = m.marginTop + m.marginBottom, D = m.borderLeftWidth + m.borderRightWidth, q = m.borderTopWidth + m.borderBottomWidth, A = s && k, ee = n(g.width);
1407
+ ee !== !1 && (m.width = ee + // add padding and border unless it's already including it
1408
+ (A ? 0 : x + D));
1409
+ var te = n(g.height);
1410
+ return te !== !1 && (m.height = te + // add padding and border unless it's already including it
1411
+ (A ? 0 : R + q)), m.innerWidth = m.width - (x + D), m.innerHeight = m.height - (R + q), m.outerWidth = m.width + E, m.outerHeight = m.height + $, m;
1412
+ }
1413
+ }
1414
+ return C;
1415
+ });
1416
+ }(Pe)), Pe.exports;
1417
+ }
1418
+ var Oe = { exports: {} }, De = { exports: {} }, at;
1419
+ function en() {
1420
+ return at || (at = 1, function(_) {
1421
+ (function(l, n) {
1422
+ _.exports ? _.exports = n() : l.matchesSelector = n();
1423
+ })(window, function() {
1424
+ var n = function() {
1425
+ var v = window.Element.prototype;
1426
+ if (v.matches)
1427
+ return "matches";
1428
+ if (v.matchesSelector)
1429
+ return "matchesSelector";
1430
+ for (var p = ["webkit", "moz", "ms", "o"], u = 0; u < p.length; u++) {
1431
+ var d = p[u], a = d + "MatchesSelector";
1432
+ if (v[a])
1433
+ return a;
1434
+ }
1435
+ }();
1436
+ return function(p, u) {
1437
+ return p[n](u);
1438
+ };
1439
+ });
1440
+ }(De)), De.exports;
1441
+ }
1442
+ var st;
1443
+ function tn() {
1444
+ return st || (st = 1, function(_) {
1445
+ (function(l, n) {
1446
+ _.exports ? _.exports = n(
1447
+ l,
1448
+ en()
1449
+ ) : l.fizzyUIUtils = n(
1450
+ l,
1451
+ l.matchesSelector
1452
+ );
1453
+ })(window, function(n, v) {
1454
+ var p = {};
1455
+ p.extend = function(a, r) {
1456
+ for (var f in r)
1457
+ a[f] = r[f];
1458
+ return a;
1459
+ }, p.modulo = function(a, r) {
1460
+ return (a % r + r) % r;
1461
+ };
1462
+ var u = Array.prototype.slice;
1463
+ p.makeArray = function(a) {
1464
+ if (Array.isArray(a))
1465
+ return a;
1466
+ if (a == null)
1467
+ return [];
1468
+ var r = typeof a == "object" && typeof a.length == "number";
1469
+ return r ? u.call(a) : [a];
1470
+ }, p.removeFrom = function(a, r) {
1471
+ var f = a.indexOf(r);
1472
+ f != -1 && a.splice(f, 1);
1473
+ }, p.getParent = function(a, r) {
1474
+ for (; a.parentNode && a != document.body; )
1475
+ if (a = a.parentNode, v(a, r))
1476
+ return a;
1477
+ }, p.getQueryElement = function(a) {
1478
+ return typeof a == "string" ? document.querySelector(a) : a;
1479
+ }, p.handleEvent = function(a) {
1480
+ var r = "on" + a.type;
1481
+ this[r] && this[r](a);
1482
+ }, p.filterFindElements = function(a, r) {
1483
+ a = p.makeArray(a);
1484
+ var f = [];
1485
+ return a.forEach(function(k) {
1486
+ if (k instanceof HTMLElement) {
1487
+ if (!r) {
1488
+ f.push(k);
1489
+ return;
1490
+ }
1491
+ v(k, r) && f.push(k);
1492
+ for (var y = k.querySelectorAll(r), C = 0; C < y.length; C++)
1493
+ f.push(y[C]);
1494
+ }
1495
+ }), f;
1496
+ }, p.debounceMethod = function(a, r, f) {
1497
+ f = f || 100;
1498
+ var k = a.prototype[r], y = r + "Timeout";
1499
+ a.prototype[r] = function() {
1500
+ var C = this[y];
1501
+ clearTimeout(C);
1502
+ var i = arguments, g = this;
1503
+ this[y] = setTimeout(function() {
1504
+ k.apply(g, i), delete g[y];
1505
+ }, f);
1506
+ };
1507
+ }, p.docReady = function(a) {
1508
+ var r = document.readyState;
1509
+ r == "complete" || r == "interactive" ? setTimeout(a) : document.addEventListener("DOMContentLoaded", a);
1510
+ }, p.toDashed = function(a) {
1511
+ return a.replace(/(.)([A-Z])/g, function(r, f, k) {
1512
+ return f + "-" + k;
1513
+ }).toLowerCase();
1514
+ };
1515
+ var d = n.console;
1516
+ return p.htmlInit = function(a, r) {
1517
+ p.docReady(function() {
1518
+ var f = p.toDashed(r), k = "data-" + f, y = document.querySelectorAll("[" + k + "]"), C = document.querySelectorAll(".js-" + f), i = p.makeArray(y).concat(p.makeArray(C)), g = k + "-options", m = n.jQuery;
1519
+ i.forEach(function(s) {
1520
+ var e = s.getAttribute(k) || s.getAttribute(g), o;
1521
+ try {
1522
+ o = e && JSON.parse(e);
1523
+ } catch (I) {
1524
+ d && d.error("Error parsing " + k + " on " + s.className + ": " + I);
1525
+ return;
1526
+ }
1527
+ var h = new a(s, o);
1528
+ m && m.data(s, r, h);
1529
+ });
1530
+ });
1531
+ }, p;
1532
+ });
1533
+ }(Oe)), Oe.exports;
1534
+ }
1535
+ var We = { exports: {} }, lt;
1536
+ function on() {
1537
+ return lt || (lt = 1, function(_) {
1538
+ (function(l, n) {
1539
+ _.exports ? _.exports = n(
1540
+ He(),
1541
+ Ge()
1542
+ ) : (l.Outlayer = {}, l.Outlayer.Item = n(
1543
+ l.EvEmitter,
1544
+ l.getSize
1545
+ ));
1546
+ })(window, function(n, v) {
1547
+ function p(s) {
1548
+ for (var e in s)
1549
+ return !1;
1550
+ return e = null, !0;
1551
+ }
1552
+ var u = document.documentElement.style, d = typeof u.transition == "string" ? "transition" : "WebkitTransition", a = typeof u.transform == "string" ? "transform" : "WebkitTransform", r = {
1553
+ WebkitTransition: "webkitTransitionEnd",
1554
+ transition: "transitionend"
1555
+ }[d], f = {
1556
+ transform: a,
1557
+ transition: d,
1558
+ transitionDuration: d + "Duration",
1559
+ transitionProperty: d + "Property",
1560
+ transitionDelay: d + "Delay"
1561
+ };
1562
+ function k(s, e) {
1563
+ s && (this.element = s, this.layout = e, this.position = {
1564
+ x: 0,
1565
+ y: 0
1566
+ }, this._create());
1567
+ }
1568
+ var y = k.prototype = Object.create(n.prototype);
1569
+ y.constructor = k, y._create = function() {
1570
+ this._transn = {
1571
+ ingProperties: {},
1572
+ clean: {},
1573
+ onEnd: {}
1574
+ }, this.css({
1575
+ position: "absolute"
1576
+ });
1577
+ }, y.handleEvent = function(s) {
1578
+ var e = "on" + s.type;
1579
+ this[e] && this[e](s);
1580
+ }, y.getSize = function() {
1581
+ this.size = v(this.element);
1582
+ }, y.css = function(s) {
1583
+ var e = this.element.style;
1584
+ for (var o in s) {
1585
+ var h = f[o] || o;
1586
+ e[h] = s[o];
1587
+ }
1588
+ }, y.getPosition = function() {
1589
+ var s = getComputedStyle(this.element), e = this.layout._getOption("originLeft"), o = this.layout._getOption("originTop"), h = s[e ? "left" : "right"], I = s[o ? "top" : "bottom"], x = parseFloat(h), R = parseFloat(I), E = this.layout.size;
1590
+ h.indexOf("%") != -1 && (x = x / 100 * E.width), I.indexOf("%") != -1 && (R = R / 100 * E.height), x = isNaN(x) ? 0 : x, R = isNaN(R) ? 0 : R, x -= e ? E.paddingLeft : E.paddingRight, R -= o ? E.paddingTop : E.paddingBottom, this.position.x = x, this.position.y = R;
1591
+ }, y.layoutPosition = function() {
1592
+ var s = this.layout.size, e = {}, o = this.layout._getOption("originLeft"), h = this.layout._getOption("originTop"), I = o ? "paddingLeft" : "paddingRight", x = o ? "left" : "right", R = o ? "right" : "left", E = this.position.x + s[I];
1593
+ e[x] = this.getXValue(E), e[R] = "";
1594
+ var $ = h ? "paddingTop" : "paddingBottom", D = h ? "top" : "bottom", q = h ? "bottom" : "top", A = this.position.y + s[$];
1595
+ e[D] = this.getYValue(A), e[q] = "", this.css(e), this.emitEvent("layout", [this]);
1596
+ }, y.getXValue = function(s) {
1597
+ var e = this.layout._getOption("horizontal");
1598
+ return this.layout.options.percentPosition && !e ? s / this.layout.size.width * 100 + "%" : s + "px";
1599
+ }, y.getYValue = function(s) {
1600
+ var e = this.layout._getOption("horizontal");
1601
+ return this.layout.options.percentPosition && e ? s / this.layout.size.height * 100 + "%" : s + "px";
1602
+ }, y._transitionTo = function(s, e) {
1603
+ this.getPosition();
1604
+ var o = this.position.x, h = this.position.y, I = s == this.position.x && e == this.position.y;
1605
+ if (this.setPosition(s, e), I && !this.isTransitioning) {
1606
+ this.layoutPosition();
1607
+ return;
1608
+ }
1609
+ var x = s - o, R = e - h, E = {};
1610
+ E.transform = this.getTranslate(x, R), this.transition({
1611
+ to: E,
1612
+ onTransitionEnd: {
1613
+ transform: this.layoutPosition
1614
+ },
1615
+ isCleaning: !0
1616
+ });
1617
+ }, y.getTranslate = function(s, e) {
1618
+ var o = this.layout._getOption("originLeft"), h = this.layout._getOption("originTop");
1619
+ return s = o ? s : -s, e = h ? e : -e, "translate3d(" + s + "px, " + e + "px, 0)";
1620
+ }, y.goTo = function(s, e) {
1621
+ this.setPosition(s, e), this.layoutPosition();
1622
+ }, y.moveTo = y._transitionTo, y.setPosition = function(s, e) {
1623
+ this.position.x = parseFloat(s), this.position.y = parseFloat(e);
1624
+ }, y._nonTransition = function(s) {
1625
+ this.css(s.to), s.isCleaning && this._removeStyles(s.to);
1626
+ for (var e in s.onTransitionEnd)
1627
+ s.onTransitionEnd[e].call(this);
1628
+ }, y.transition = function(s) {
1629
+ if (!parseFloat(this.layout.options.transitionDuration)) {
1630
+ this._nonTransition(s);
1631
+ return;
1632
+ }
1633
+ var e = this._transn;
1634
+ for (var o in s.onTransitionEnd)
1635
+ e.onEnd[o] = s.onTransitionEnd[o];
1636
+ for (o in s.to)
1637
+ e.ingProperties[o] = !0, s.isCleaning && (e.clean[o] = !0);
1638
+ s.from && (this.css(s.from), this.element.offsetHeight), this.enableTransition(s.to), this.css(s.to), this.isTransitioning = !0;
1639
+ };
1640
+ function C(s) {
1641
+ return s.replace(/([A-Z])/g, function(e) {
1642
+ return "-" + e.toLowerCase();
1643
+ });
1644
+ }
1645
+ var i = "opacity," + C(a);
1646
+ y.enableTransition = function() {
1647
+ if (!this.isTransitioning) {
1648
+ var s = this.layout.options.transitionDuration;
1649
+ s = typeof s == "number" ? s + "ms" : s, this.css({
1650
+ transitionProperty: i,
1651
+ transitionDuration: s,
1652
+ transitionDelay: this.staggerDelay || 0
1653
+ }), this.element.addEventListener(r, this, !1);
1654
+ }
1655
+ }, y.onwebkitTransitionEnd = function(s) {
1656
+ this.ontransitionend(s);
1657
+ }, y.onotransitionend = function(s) {
1658
+ this.ontransitionend(s);
1659
+ };
1660
+ var g = {
1661
+ "-webkit-transform": "transform"
1662
+ };
1663
+ y.ontransitionend = function(s) {
1664
+ if (s.target === this.element) {
1665
+ var e = this._transn, o = g[s.propertyName] || s.propertyName;
1666
+ if (delete e.ingProperties[o], p(e.ingProperties) && this.disableTransition(), o in e.clean && (this.element.style[s.propertyName] = "", delete e.clean[o]), o in e.onEnd) {
1667
+ var h = e.onEnd[o];
1668
+ h.call(this), delete e.onEnd[o];
1669
+ }
1670
+ this.emitEvent("transitionEnd", [this]);
1671
+ }
1672
+ }, y.disableTransition = function() {
1673
+ this.removeTransitionStyles(), this.element.removeEventListener(r, this, !1), this.isTransitioning = !1;
1674
+ }, y._removeStyles = function(s) {
1675
+ var e = {};
1676
+ for (var o in s)
1677
+ e[o] = "";
1678
+ this.css(e);
1679
+ };
1680
+ var m = {
1681
+ transitionProperty: "",
1682
+ transitionDuration: "",
1683
+ transitionDelay: ""
1684
+ };
1685
+ return y.removeTransitionStyles = function() {
1686
+ this.css(m);
1687
+ }, y.stagger = function(s) {
1688
+ s = isNaN(s) ? 0 : s, this.staggerDelay = s + "ms";
1689
+ }, y.removeElem = function() {
1690
+ this.element.parentNode.removeChild(this.element), this.css({ display: "" }), this.emitEvent("remove", [this]);
1691
+ }, y.remove = function() {
1692
+ if (!d || !parseFloat(this.layout.options.transitionDuration)) {
1693
+ this.removeElem();
1694
+ return;
1695
+ }
1696
+ this.once("transitionEnd", function() {
1697
+ this.removeElem();
1698
+ }), this.hide();
1699
+ }, y.reveal = function() {
1700
+ delete this.isHidden, this.css({ display: "" });
1701
+ var s = this.layout.options, e = {}, o = this.getHideRevealTransitionEndProperty("visibleStyle");
1702
+ e[o] = this.onRevealTransitionEnd, this.transition({
1703
+ from: s.hiddenStyle,
1704
+ to: s.visibleStyle,
1705
+ isCleaning: !0,
1706
+ onTransitionEnd: e
1707
+ });
1708
+ }, y.onRevealTransitionEnd = function() {
1709
+ this.isHidden || this.emitEvent("reveal");
1710
+ }, y.getHideRevealTransitionEndProperty = function(s) {
1711
+ var e = this.layout.options[s];
1712
+ if (e.opacity)
1713
+ return "opacity";
1714
+ for (var o in e)
1715
+ return o;
1716
+ }, y.hide = function() {
1717
+ this.isHidden = !0, this.css({ display: "" });
1718
+ var s = this.layout.options, e = {}, o = this.getHideRevealTransitionEndProperty("hiddenStyle");
1719
+ e[o] = this.onHideTransitionEnd, this.transition({
1720
+ from: s.visibleStyle,
1721
+ to: s.hiddenStyle,
1722
+ // keep hidden stuff hidden
1723
+ isCleaning: !0,
1724
+ onTransitionEnd: e
1725
+ });
1726
+ }, y.onHideTransitionEnd = function() {
1727
+ this.isHidden && (this.css({ display: "none" }), this.emitEvent("hide"));
1728
+ }, y.destroy = function() {
1729
+ this.css({
1730
+ position: "",
1731
+ left: "",
1732
+ right: "",
1733
+ top: "",
1734
+ bottom: "",
1735
+ transition: "",
1736
+ transform: ""
1737
+ });
1738
+ }, k;
1739
+ });
1740
+ }(We)), We.exports;
1741
+ }
1742
+ /*!
1743
+ * Outlayer v2.1.1
1744
+ * the brains and guts of a layout library
1745
+ * MIT license
1746
+ */
1747
+ var ut;
1748
+ function nn() {
1749
+ return ut || (ut = 1, function(_) {
1750
+ (function(l, n) {
1751
+ _.exports ? _.exports = n(
1752
+ l,
1753
+ He(),
1754
+ Ge(),
1755
+ tn(),
1756
+ on()
1757
+ ) : l.Outlayer = n(
1758
+ l,
1759
+ l.EvEmitter,
1760
+ l.getSize,
1761
+ l.fizzyUIUtils,
1762
+ l.Outlayer.Item
1763
+ );
1764
+ })(window, function(n, v, p, u, d) {
1765
+ var a = n.console, r = n.jQuery, f = function() {
1766
+ }, k = 0, y = {};
1767
+ function C(e, o) {
1768
+ var h = u.getQueryElement(e);
1769
+ if (!h) {
1770
+ a && a.error("Bad element for " + this.constructor.namespace + ": " + (h || e));
1771
+ return;
1772
+ }
1773
+ this.element = h, r && (this.$element = r(this.element)), this.options = u.extend({}, this.constructor.defaults), this.option(o);
1774
+ var I = ++k;
1775
+ this.element.outlayerGUID = I, y[I] = this, this._create();
1776
+ var x = this._getOption("initLayout");
1777
+ x && this.layout();
1778
+ }
1779
+ C.namespace = "outlayer", C.Item = d, C.defaults = {
1780
+ containerStyle: {
1781
+ position: "relative"
1782
+ },
1783
+ initLayout: !0,
1784
+ originLeft: !0,
1785
+ originTop: !0,
1786
+ resize: !0,
1787
+ resizeContainer: !0,
1788
+ // item options
1789
+ transitionDuration: "0.4s",
1790
+ hiddenStyle: {
1791
+ opacity: 0,
1792
+ transform: "scale(0.001)"
1793
+ },
1794
+ visibleStyle: {
1795
+ opacity: 1,
1796
+ transform: "scale(1)"
1797
+ }
1798
+ };
1799
+ var i = C.prototype;
1800
+ u.extend(i, v.prototype), i.option = function(e) {
1801
+ u.extend(this.options, e);
1802
+ }, i._getOption = function(e) {
1803
+ var o = this.constructor.compatOptions[e];
1804
+ return o && this.options[o] !== void 0 ? this.options[o] : this.options[e];
1805
+ }, C.compatOptions = {
1806
+ // currentName: oldName
1807
+ initLayout: "isInitLayout",
1808
+ horizontal: "isHorizontal",
1809
+ layoutInstant: "isLayoutInstant",
1810
+ originLeft: "isOriginLeft",
1811
+ originTop: "isOriginTop",
1812
+ resize: "isResizeBound",
1813
+ resizeContainer: "isResizingContainer"
1814
+ }, i._create = function() {
1815
+ this.reloadItems(), this.stamps = [], this.stamp(this.options.stamp), u.extend(this.element.style, this.options.containerStyle);
1816
+ var e = this._getOption("resize");
1817
+ e && this.bindResize();
1818
+ }, i.reloadItems = function() {
1819
+ this.items = this._itemize(this.element.children);
1820
+ }, i._itemize = function(e) {
1821
+ for (var o = this._filterFindItemElements(e), h = this.constructor.Item, I = [], x = 0; x < o.length; x++) {
1822
+ var R = o[x], E = new h(R, this);
1823
+ I.push(E);
1824
+ }
1825
+ return I;
1826
+ }, i._filterFindItemElements = function(e) {
1827
+ return u.filterFindElements(e, this.options.itemSelector);
1828
+ }, i.getItemElements = function() {
1829
+ return this.items.map(function(e) {
1830
+ return e.element;
1831
+ });
1832
+ }, i.layout = function() {
1833
+ this._resetLayout(), this._manageStamps();
1834
+ var e = this._getOption("layoutInstant"), o = e !== void 0 ? e : !this._isLayoutInited;
1835
+ this.layoutItems(this.items, o), this._isLayoutInited = !0;
1836
+ }, i._init = i.layout, i._resetLayout = function() {
1837
+ this.getSize();
1838
+ }, i.getSize = function() {
1839
+ this.size = p(this.element);
1840
+ }, i._getMeasurement = function(e, o) {
1841
+ var h = this.options[e], I;
1842
+ h ? (typeof h == "string" ? I = this.element.querySelector(h) : h instanceof HTMLElement && (I = h), this[e] = I ? p(I)[o] : h) : this[e] = 0;
1843
+ }, i.layoutItems = function(e, o) {
1844
+ e = this._getItemsForLayout(e), this._layoutItems(e, o), this._postLayout();
1845
+ }, i._getItemsForLayout = function(e) {
1846
+ return e.filter(function(o) {
1847
+ return !o.isIgnored;
1848
+ });
1849
+ }, i._layoutItems = function(e, o) {
1850
+ if (this._emitCompleteOnItems("layout", e), !(!e || !e.length)) {
1851
+ var h = [];
1852
+ e.forEach(function(I) {
1853
+ var x = this._getItemLayoutPosition(I);
1854
+ x.item = I, x.isInstant = o || I.isLayoutInstant, h.push(x);
1855
+ }, this), this._processLayoutQueue(h);
1856
+ }
1857
+ }, i._getItemLayoutPosition = function() {
1858
+ return {
1859
+ x: 0,
1860
+ y: 0
1861
+ };
1862
+ }, i._processLayoutQueue = function(e) {
1863
+ this.updateStagger(), e.forEach(function(o, h) {
1864
+ this._positionItem(o.item, o.x, o.y, o.isInstant, h);
1865
+ }, this);
1866
+ }, i.updateStagger = function() {
1867
+ var e = this.options.stagger;
1868
+ if (e == null) {
1869
+ this.stagger = 0;
1870
+ return;
1871
+ }
1872
+ return this.stagger = s(e), this.stagger;
1873
+ }, i._positionItem = function(e, o, h, I, x) {
1874
+ I ? e.goTo(o, h) : (e.stagger(x * this.stagger), e.moveTo(o, h));
1875
+ }, i._postLayout = function() {
1876
+ this.resizeContainer();
1877
+ }, i.resizeContainer = function() {
1878
+ var e = this._getOption("resizeContainer");
1879
+ if (e) {
1880
+ var o = this._getContainerSize();
1881
+ o && (this._setContainerMeasure(o.width, !0), this._setContainerMeasure(o.height, !1));
1882
+ }
1883
+ }, i._getContainerSize = f, i._setContainerMeasure = function(e, o) {
1884
+ if (e !== void 0) {
1885
+ var h = this.size;
1886
+ h.isBorderBox && (e += o ? h.paddingLeft + h.paddingRight + h.borderLeftWidth + h.borderRightWidth : h.paddingBottom + h.paddingTop + h.borderTopWidth + h.borderBottomWidth), e = Math.max(e, 0), this.element.style[o ? "width" : "height"] = e + "px";
1887
+ }
1888
+ }, i._emitCompleteOnItems = function(e, o) {
1889
+ var h = this;
1890
+ function I() {
1891
+ h.dispatchEvent(e + "Complete", null, [o]);
1892
+ }
1893
+ var x = o.length;
1894
+ if (!o || !x) {
1895
+ I();
1896
+ return;
1897
+ }
1898
+ var R = 0;
1899
+ function E() {
1900
+ R++, R == x && I();
1901
+ }
1902
+ o.forEach(function($) {
1903
+ $.once(e, E);
1904
+ });
1905
+ }, i.dispatchEvent = function(e, o, h) {
1906
+ var I = o ? [o].concat(h) : h;
1907
+ if (this.emitEvent(e, I), r)
1908
+ if (this.$element = this.$element || r(this.element), o) {
1909
+ var x = r.Event(o);
1910
+ x.type = e, this.$element.trigger(x, h);
1911
+ } else
1912
+ this.$element.trigger(e, h);
1913
+ }, i.ignore = function(e) {
1914
+ var o = this.getItem(e);
1915
+ o && (o.isIgnored = !0);
1916
+ }, i.unignore = function(e) {
1917
+ var o = this.getItem(e);
1918
+ o && delete o.isIgnored;
1919
+ }, i.stamp = function(e) {
1920
+ e = this._find(e), e && (this.stamps = this.stamps.concat(e), e.forEach(this.ignore, this));
1921
+ }, i.unstamp = function(e) {
1922
+ e = this._find(e), e && e.forEach(function(o) {
1923
+ u.removeFrom(this.stamps, o), this.unignore(o);
1924
+ }, this);
1925
+ }, i._find = function(e) {
1926
+ if (e)
1927
+ return typeof e == "string" && (e = this.element.querySelectorAll(e)), e = u.makeArray(e), e;
1928
+ }, i._manageStamps = function() {
1929
+ !this.stamps || !this.stamps.length || (this._getBoundingRect(), this.stamps.forEach(this._manageStamp, this));
1930
+ }, i._getBoundingRect = function() {
1931
+ var e = this.element.getBoundingClientRect(), o = this.size;
1932
+ this._boundingRect = {
1933
+ left: e.left + o.paddingLeft + o.borderLeftWidth,
1934
+ top: e.top + o.paddingTop + o.borderTopWidth,
1935
+ right: e.right - (o.paddingRight + o.borderRightWidth),
1936
+ bottom: e.bottom - (o.paddingBottom + o.borderBottomWidth)
1937
+ };
1938
+ }, i._manageStamp = f, i._getElementOffset = function(e) {
1939
+ var o = e.getBoundingClientRect(), h = this._boundingRect, I = p(e), x = {
1940
+ left: o.left - h.left - I.marginLeft,
1941
+ top: o.top - h.top - I.marginTop,
1942
+ right: h.right - o.right - I.marginRight,
1943
+ bottom: h.bottom - o.bottom - I.marginBottom
1944
+ };
1945
+ return x;
1946
+ }, i.handleEvent = u.handleEvent, i.bindResize = function() {
1947
+ n.addEventListener("resize", this), this.isResizeBound = !0;
1948
+ }, i.unbindResize = function() {
1949
+ n.removeEventListener("resize", this), this.isResizeBound = !1;
1950
+ }, i.onresize = function() {
1951
+ this.resize();
1952
+ }, u.debounceMethod(C, "onresize", 100), i.resize = function() {
1953
+ !this.isResizeBound || !this.needsResizeLayout() || this.layout();
1954
+ }, i.needsResizeLayout = function() {
1955
+ var e = p(this.element), o = this.size && e;
1956
+ return o && e.innerWidth !== this.size.innerWidth;
1957
+ }, i.addItems = function(e) {
1958
+ var o = this._itemize(e);
1959
+ return o.length && (this.items = this.items.concat(o)), o;
1960
+ }, i.appended = function(e) {
1961
+ var o = this.addItems(e);
1962
+ o.length && (this.layoutItems(o, !0), this.reveal(o));
1963
+ }, i.prepended = function(e) {
1964
+ var o = this._itemize(e);
1965
+ if (o.length) {
1966
+ var h = this.items.slice(0);
1967
+ this.items = o.concat(h), this._resetLayout(), this._manageStamps(), this.layoutItems(o, !0), this.reveal(o), this.layoutItems(h);
1968
+ }
1969
+ }, i.reveal = function(e) {
1970
+ if (this._emitCompleteOnItems("reveal", e), !(!e || !e.length)) {
1971
+ var o = this.updateStagger();
1972
+ e.forEach(function(h, I) {
1973
+ h.stagger(I * o), h.reveal();
1974
+ });
1975
+ }
1976
+ }, i.hide = function(e) {
1977
+ if (this._emitCompleteOnItems("hide", e), !(!e || !e.length)) {
1978
+ var o = this.updateStagger();
1979
+ e.forEach(function(h, I) {
1980
+ h.stagger(I * o), h.hide();
1981
+ });
1982
+ }
1983
+ }, i.revealItemElements = function(e) {
1984
+ var o = this.getItems(e);
1985
+ this.reveal(o);
1986
+ }, i.hideItemElements = function(e) {
1987
+ var o = this.getItems(e);
1988
+ this.hide(o);
1989
+ }, i.getItem = function(e) {
1990
+ for (var o = 0; o < this.items.length; o++) {
1991
+ var h = this.items[o];
1992
+ if (h.element == e)
1993
+ return h;
1994
+ }
1995
+ }, i.getItems = function(e) {
1996
+ e = u.makeArray(e);
1997
+ var o = [];
1998
+ return e.forEach(function(h) {
1999
+ var I = this.getItem(h);
2000
+ I && o.push(I);
2001
+ }, this), o;
2002
+ }, i.remove = function(e) {
2003
+ var o = this.getItems(e);
2004
+ this._emitCompleteOnItems("remove", o), !(!o || !o.length) && o.forEach(function(h) {
2005
+ h.remove(), u.removeFrom(this.items, h);
2006
+ }, this);
2007
+ }, i.destroy = function() {
2008
+ var e = this.element.style;
2009
+ e.height = "", e.position = "", e.width = "", this.items.forEach(function(h) {
2010
+ h.destroy();
2011
+ }), this.unbindResize();
2012
+ var o = this.element.outlayerGUID;
2013
+ delete y[o], delete this.element.outlayerGUID, r && r.removeData(this.element, this.constructor.namespace);
2014
+ }, C.data = function(e) {
2015
+ e = u.getQueryElement(e);
2016
+ var o = e && e.outlayerGUID;
2017
+ return o && y[o];
2018
+ }, C.create = function(e, o) {
2019
+ var h = g(C);
2020
+ return h.defaults = u.extend({}, C.defaults), u.extend(h.defaults, o), h.compatOptions = u.extend({}, C.compatOptions), h.namespace = e, h.data = C.data, h.Item = g(d), u.htmlInit(h, e), r && r.bridget && r.bridget(e, h), h;
2021
+ };
2022
+ function g(e) {
2023
+ function o() {
2024
+ e.apply(this, arguments);
2025
+ }
2026
+ return o.prototype = Object.create(e.prototype), o.prototype.constructor = o, o;
2027
+ }
2028
+ var m = {
2029
+ ms: 1,
2030
+ s: 1e3
2031
+ };
2032
+ function s(e) {
2033
+ if (typeof e == "number")
2034
+ return e;
2035
+ var o = e.match(/(^\d*\.?\d*)(\w*)/), h = o && o[1], I = o && o[2];
2036
+ if (!h.length)
2037
+ return 0;
2038
+ h = parseFloat(h);
2039
+ var x = m[I] || 1;
2040
+ return h * x;
2041
+ }
2042
+ return C.Item = d, C;
2043
+ });
2044
+ }(Be)), Be.exports;
2045
+ }
2046
+ /*!
2047
+ * Masonry v4.2.2
2048
+ * Cascading grid layout library
2049
+ * https://masonry.desandro.com
2050
+ * MIT License
2051
+ * by David DeSandro
2052
+ */
2053
+ (function(_) {
2054
+ (function(l, n) {
2055
+ _.exports ? _.exports = n(
2056
+ nn(),
2057
+ Ge()
2058
+ ) : l.Masonry = n(
2059
+ l.Outlayer,
2060
+ l.getSize
2061
+ );
2062
+ })(window, function(n, v) {
2063
+ var p = n.create("masonry");
2064
+ p.compatOptions.fitWidth = "isFitWidth";
2065
+ var u = p.prototype;
2066
+ return u._resetLayout = function() {
2067
+ this.getSize(), this._getMeasurement("columnWidth", "outerWidth"), this._getMeasurement("gutter", "outerWidth"), this.measureColumns(), this.colYs = [];
2068
+ for (var d = 0; d < this.cols; d++)
2069
+ this.colYs.push(0);
2070
+ this.maxY = 0, this.horizontalColIndex = 0;
2071
+ }, u.measureColumns = function() {
2072
+ if (this.getContainerWidth(), !this.columnWidth) {
2073
+ var d = this.items[0], a = d && d.element;
2074
+ this.columnWidth = a && v(a).outerWidth || // if first elem has no width, default to size of container
2075
+ this.containerWidth;
2076
+ }
2077
+ var r = this.columnWidth += this.gutter, f = this.containerWidth + this.gutter, k = f / r, y = r - f % r, C = y && y < 1 ? "round" : "floor";
2078
+ k = Math[C](k), this.cols = Math.max(k, 1);
2079
+ }, u.getContainerWidth = function() {
2080
+ var d = this._getOption("fitWidth"), a = d ? this.element.parentNode : this.element, r = v(a);
2081
+ this.containerWidth = r && r.innerWidth;
2082
+ }, u._getItemLayoutPosition = function(d) {
2083
+ d.getSize();
2084
+ var a = d.size.outerWidth % this.columnWidth, r = a && a < 1 ? "round" : "ceil", f = Math[r](d.size.outerWidth / this.columnWidth);
2085
+ f = Math.min(f, this.cols);
2086
+ for (var k = this.options.horizontalOrder ? "_getHorizontalColPosition" : "_getTopColPosition", y = this[k](f, d), C = {
2087
+ x: this.columnWidth * y.col,
2088
+ y: y.y
2089
+ }, i = y.y + d.size.outerHeight, g = f + y.col, m = y.col; m < g; m++)
2090
+ this.colYs[m] = i;
2091
+ return C;
2092
+ }, u._getTopColPosition = function(d) {
2093
+ var a = this._getTopColGroup(d), r = Math.min.apply(Math, a);
2094
+ return {
2095
+ col: a.indexOf(r),
2096
+ y: r
2097
+ };
2098
+ }, u._getTopColGroup = function(d) {
2099
+ if (d < 2)
2100
+ return this.colYs;
2101
+ for (var a = [], r = this.cols + 1 - d, f = 0; f < r; f++)
2102
+ a[f] = this._getColGroupY(f, d);
2103
+ return a;
2104
+ }, u._getColGroupY = function(d, a) {
2105
+ if (a < 2)
2106
+ return this.colYs[d];
2107
+ var r = this.colYs.slice(d, d + a);
2108
+ return Math.max.apply(Math, r);
2109
+ }, u._getHorizontalColPosition = function(d, a) {
2110
+ var r = this.horizontalColIndex % this.cols, f = d > 1 && r + d > this.cols;
2111
+ r = f ? 0 : r;
2112
+ var k = a.size.outerWidth && a.size.outerHeight;
2113
+ return this.horizontalColIndex = k ? r + d : this.horizontalColIndex, {
2114
+ col: r,
2115
+ y: this._getColGroupY(r, d)
2116
+ };
2117
+ }, u._manageStamp = function(d) {
2118
+ var a = v(d), r = this._getElementOffset(d), f = this._getOption("originLeft"), k = f ? r.left : r.right, y = k + a.outerWidth, C = Math.floor(k / this.columnWidth);
2119
+ C = Math.max(0, C);
2120
+ var i = Math.floor(y / this.columnWidth);
2121
+ i -= y % this.columnWidth ? 0 : 1, i = Math.min(this.cols - 1, i);
2122
+ for (var g = this._getOption("originTop"), m = (g ? r.top : r.bottom) + a.outerHeight, s = C; s <= i; s++)
2123
+ this.colYs[s] = Math.max(m, this.colYs[s]);
2124
+ }, u._getContainerSize = function() {
2125
+ this.maxY = Math.max.apply(Math, this.colYs);
2126
+ var d = {
2127
+ height: this.maxY
2128
+ };
2129
+ return this._getOption("fitWidth") && (d.width = this._getContainerFitWidth()), d;
2130
+ }, u._getContainerFitWidth = function() {
2131
+ for (var d = 0, a = this.cols; --a && this.colYs[a] === 0; )
2132
+ d++;
2133
+ return (this.cols - d) * this.columnWidth - this.gutter;
2134
+ }, u.needsResizeLayout = function() {
2135
+ var d = this.containerWidth;
2136
+ return this.getContainerWidth(), d != this.containerWidth;
2137
+ }, p;
2138
+ });
2139
+ })(pt);
2140
+ var rn = pt.exports;
2141
+ const dt = /* @__PURE__ */ ht(rn);
2142
+ var ft = { exports: {} };
2143
+ /*!
2144
+ * imagesLoaded v4.1.4
2145
+ * JavaScript is all like "You images are done yet or what?"
2146
+ * MIT License
2147
+ */
2148
+ (function(_) {
2149
+ (function(l, n) {
2150
+ _.exports ? _.exports = n(
2151
+ l,
2152
+ He()
2153
+ ) : l.imagesLoaded = n(
2154
+ l,
2155
+ l.EvEmitter
2156
+ );
2157
+ })(
2158
+ typeof window < "u" ? window : ct,
2159
+ // -------------------------- factory -------------------------- //
2160
+ function(n, v) {
2161
+ var p = n.jQuery, u = n.console;
2162
+ function d(i, g) {
2163
+ for (var m in g)
2164
+ i[m] = g[m];
2165
+ return i;
2166
+ }
2167
+ var a = Array.prototype.slice;
2168
+ function r(i) {
2169
+ if (Array.isArray(i))
2170
+ return i;
2171
+ var g = typeof i == "object" && typeof i.length == "number";
2172
+ return g ? a.call(i) : [i];
2173
+ }
2174
+ function f(i, g, m) {
2175
+ if (!(this instanceof f))
2176
+ return new f(i, g, m);
2177
+ var s = i;
2178
+ if (typeof i == "string" && (s = document.querySelectorAll(i)), !s) {
2179
+ u.error("Bad element for imagesLoaded " + (s || i));
2180
+ return;
2181
+ }
2182
+ this.elements = r(s), this.options = d({}, this.options), typeof g == "function" ? m = g : d(this.options, g), m && this.on("always", m), this.getImages(), p && (this.jqDeferred = new p.Deferred()), setTimeout(this.check.bind(this));
2183
+ }
2184
+ f.prototype = Object.create(v.prototype), f.prototype.options = {}, f.prototype.getImages = function() {
2185
+ this.images = [], this.elements.forEach(this.addElementImages, this);
2186
+ }, f.prototype.addElementImages = function(i) {
2187
+ i.nodeName == "IMG" && this.addImage(i), this.options.background === !0 && this.addElementBackgroundImages(i);
2188
+ var g = i.nodeType;
2189
+ if (!(!g || !k[g])) {
2190
+ for (var m = i.querySelectorAll("img"), s = 0; s < m.length; s++) {
2191
+ var e = m[s];
2192
+ this.addImage(e);
2193
+ }
2194
+ if (typeof this.options.background == "string") {
2195
+ var o = i.querySelectorAll(this.options.background);
2196
+ for (s = 0; s < o.length; s++) {
2197
+ var h = o[s];
2198
+ this.addElementBackgroundImages(h);
2199
+ }
2200
+ }
2201
+ }
2202
+ };
2203
+ var k = {
2204
+ 1: !0,
2205
+ 9: !0,
2206
+ 11: !0
2207
+ };
2208
+ f.prototype.addElementBackgroundImages = function(i) {
2209
+ var g = getComputedStyle(i);
2210
+ if (g)
2211
+ for (var m = /url\((['"])?(.*?)\1\)/gi, s = m.exec(g.backgroundImage); s !== null; ) {
2212
+ var e = s && s[2];
2213
+ e && this.addBackground(e, i), s = m.exec(g.backgroundImage);
2214
+ }
2215
+ }, f.prototype.addImage = function(i) {
2216
+ var g = new y(i);
2217
+ this.images.push(g);
2218
+ }, f.prototype.addBackground = function(i, g) {
2219
+ var m = new C(i, g);
2220
+ this.images.push(m);
2221
+ }, f.prototype.check = function() {
2222
+ var i = this;
2223
+ if (this.progressedCount = 0, this.hasAnyBroken = !1, !this.images.length) {
2224
+ this.complete();
2225
+ return;
2226
+ }
2227
+ function g(m, s, e) {
2228
+ setTimeout(function() {
2229
+ i.progress(m, s, e);
2230
+ });
2231
+ }
2232
+ this.images.forEach(function(m) {
2233
+ m.once("progress", g), m.check();
2234
+ });
2235
+ }, f.prototype.progress = function(i, g, m) {
2236
+ this.progressedCount++, this.hasAnyBroken = this.hasAnyBroken || !i.isLoaded, this.emitEvent("progress", [this, i, g]), this.jqDeferred && this.jqDeferred.notify && this.jqDeferred.notify(this, i), this.progressedCount == this.images.length && this.complete(), this.options.debug && u && u.log("progress: " + m, i, g);
2237
+ }, f.prototype.complete = function() {
2238
+ var i = this.hasAnyBroken ? "fail" : "done";
2239
+ if (this.isComplete = !0, this.emitEvent(i, [this]), this.emitEvent("always", [this]), this.jqDeferred) {
2240
+ var g = this.hasAnyBroken ? "reject" : "resolve";
2241
+ this.jqDeferred[g](this);
2242
+ }
2243
+ };
2244
+ function y(i) {
2245
+ this.img = i;
2246
+ }
2247
+ y.prototype = Object.create(v.prototype), y.prototype.check = function() {
2248
+ var i = this.getIsImageComplete();
2249
+ if (i) {
2250
+ this.confirm(this.img.naturalWidth !== 0, "naturalWidth");
2251
+ return;
2252
+ }
2253
+ this.proxyImage = new Image(), this.proxyImage.addEventListener("load", this), this.proxyImage.addEventListener("error", this), this.img.addEventListener("load", this), this.img.addEventListener("error", this), this.proxyImage.src = this.img.src;
2254
+ }, y.prototype.getIsImageComplete = function() {
2255
+ return this.img.complete && this.img.naturalWidth;
2256
+ }, y.prototype.confirm = function(i, g) {
2257
+ this.isLoaded = i, this.emitEvent("progress", [this, this.img, g]);
2258
+ }, y.prototype.handleEvent = function(i) {
2259
+ var g = "on" + i.type;
2260
+ this[g] && this[g](i);
2261
+ }, y.prototype.onload = function() {
2262
+ this.confirm(!0, "onload"), this.unbindEvents();
2263
+ }, y.prototype.onerror = function() {
2264
+ this.confirm(!1, "onerror"), this.unbindEvents();
2265
+ }, y.prototype.unbindEvents = function() {
2266
+ this.proxyImage.removeEventListener("load", this), this.proxyImage.removeEventListener("error", this), this.img.removeEventListener("load", this), this.img.removeEventListener("error", this);
2267
+ };
2268
+ function C(i, g) {
2269
+ this.url = i, this.element = g, this.img = new Image();
2270
+ }
2271
+ return C.prototype = Object.create(y.prototype), C.prototype.check = function() {
2272
+ this.img.addEventListener("load", this), this.img.addEventListener("error", this), this.img.src = this.url;
2273
+ var i = this.getIsImageComplete();
2274
+ i && (this.confirm(this.img.naturalWidth !== 0, "naturalWidth"), this.unbindEvents());
2275
+ }, C.prototype.unbindEvents = function() {
2276
+ this.img.removeEventListener("load", this), this.img.removeEventListener("error", this);
2277
+ }, C.prototype.confirm = function(i, g) {
2278
+ this.isLoaded = i, this.emitEvent("progress", [this, this.element, g]);
2279
+ }, f.makeJQueryPlugin = function(i) {
2280
+ i = i || n.jQuery, i && (p = i, p.fn.imagesLoaded = function(g, m) {
2281
+ var s = new f(this, g, m);
2282
+ return s.jqDeferred.promise(p(this));
2283
+ });
2284
+ }, f.makeJQueryPlugin(), f;
2285
+ }
2286
+ );
2287
+ })(ft);
2288
+ var an = ft.exports;
2289
+ const sn = /* @__PURE__ */ ht(an);
2290
+ function ln(_) {
2291
+ return { all: _ = _ || /* @__PURE__ */ new Map(), on: function(l, n) {
2292
+ var v = _.get(l);
2293
+ v ? v.push(n) : _.set(l, [n]);
2294
+ }, off: function(l, n) {
2295
+ var v = _.get(l);
2296
+ v && (n ? v.splice(v.indexOf(n) >>> 0, 1) : _.set(l, []));
2297
+ }, emit: function(l, n) {
2298
+ var v = _.get(l);
2299
+ v && v.slice().map(function(p) {
2300
+ p(n);
2301
+ }), (v = _.get("*")) && v.slice().map(function(p) {
2302
+ p(l, n);
2303
+ });
2304
+ } };
2305
+ }
2306
+ const Ce = {
2307
+ "column-width": "columnWidth",
2308
+ "transition-duration": "transitionDuration",
2309
+ "item-selector": "itemSelector",
2310
+ "origin-left": "originLeft",
2311
+ "origin-top": "originTop",
2312
+ "fit-width": "fitWidth",
2313
+ stamp: "stamp",
2314
+ gutter: "gutter",
2315
+ "percent-position": "percentPosition",
2316
+ "horizontal-order": "horizontalOrder",
2317
+ stagger: "stagger",
2318
+ "destroy-delay": "destroyDelay"
2319
+ }, Ie = "vuemasonry.itemAdded", Fe = "vuemasonry.itemRemoved", Me = "vuemasonry.imageLoaded", Ne = "vuemasonry.destroy", un = function(_) {
2320
+ return (_ + "").toLowerCase() === "true";
2321
+ }, dn = function(_) {
2322
+ return isNaN(_) ? _ : parseInt(_);
2323
+ }, cn = function(_) {
2324
+ const l = {};
2325
+ return Array.prototype.slice.call(_).forEach(function(v) {
2326
+ Object.keys(Ce).indexOf(v.name) > -1 && (v.name.indexOf("origin") > -1 ? l[Ce[v.name]] = un(v.value) : v.name === "column-width" || v.name === "gutter" ? l[Ce[v.name]] = dn(v.value) : l[Ce[v.name]] = v.value);
2327
+ }), l;
2328
+ }, mt = {};
2329
+ mt.install = function(_, l) {
2330
+ const n = ln(), v = "VueMasonry", p = _;
2331
+ p.directive("masonry", {
2332
+ props: ["transitionDuration", " itemSelector", "destroyDelay"],
2333
+ mounted: function(u, d) {
2334
+ if (!dt)
2335
+ throw new Error("Masonry plugin is not defined. Please check it's connected and parsed correctly.");
2336
+ const a = cn(u.attributes), r = new dt(u, a), f = d.value || v, k = a.destroyDelay ? parseInt(a.destroyDelay, 10) : void 0, y = function() {
2337
+ r.reloadItems(), r.layout();
2338
+ };
2339
+ Zt(() => {
2340
+ y();
2341
+ });
2342
+ const C = function(g) {
2343
+ y();
2344
+ }, i = function(g) {
2345
+ n["off"](`${Ie}__${f}`, C), n["off"](`${Fe}__${f}`, C), n["off"](`${Me}__${f}`, C), n["off"](`${Ne}__${f}`, i);
2346
+ const m = k && !Number.isNaN(k) ? k : 0;
2347
+ setTimeout(function() {
2348
+ r.destroy();
2349
+ }, m);
2350
+ };
2351
+ n["on"](`${Ie}__${f}`, C), n["on"](`${Fe}__${f}`, C), n["on"](`${Me}__${f}`, C), n["on"](`${Ne}__${f}`, i);
2352
+ },
2353
+ unbind: function(u, d) {
2354
+ const a = d.value || v;
2355
+ n["emit"](`${Ne}__${a}`);
2356
+ }
2357
+ }), p.directive("masonryTile", {
2358
+ mounted: function(u, d) {
2359
+ const a = d.value || v;
2360
+ n["emit"](`${Ie}__${a}`, {
2361
+ element: u
2362
+ }), new sn(u, function() {
2363
+ n["emit"](`${Me}__${a}`, {
2364
+ element: u
2365
+ });
2366
+ });
2367
+ },
2368
+ unbind: function(u, d) {
2369
+ const a = d.value || v;
2370
+ n["emit"](`${Fe}__${a}`, {
2371
+ element: u
2372
+ });
2373
+ }
2374
+ });
2375
+ {
2376
+ const u = function(d) {
2377
+ const a = d || v;
2378
+ n["emit"](`${Ie}__${a}`);
2379
+ };
2380
+ _.config.globalProperties.$redrawVueMasonry = u, _.provide("redrawVueMasonry", u);
2381
+ }
2382
+ };
2383
+ process.env.NODE_ENV === "production" && lo.flare.light();
2384
+ const hn = uo(), pn = To(), H = eo({ components: { Hotel: Zi } });
2385
+ H.use(co.flareVue);
2386
+ H.use(hn);
2387
+ H.use(pn);
2388
+ H.use(mt);
2389
+ H.use(mo);
2390
+ H.use(So);
2391
+ H.use(ho);
2392
+ H.use(Vo);
2393
+ H.use(go, { bootstrap: !1 });
2394
+ H.mount("#fresh-booking-hotel-app");
2395
+ //# sourceMappingURL=hotel.es.js.map