@konnectio/core 4.0.55 → 4.0.56-rc10

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 (195) hide show
  1. package/README.md +7 -7
  2. package/dist/{ActionField-89f587d4.js → ActionField-1TedZ-ol.js} +10 -12
  3. package/dist/ActionField-1TedZ-ol.js.br +0 -0
  4. package/dist/AvailabilitySkeleton-IRkVJKVI.js +214 -0
  5. package/dist/AvailabilitySkeleton-IRkVJKVI.js.br +0 -0
  6. package/dist/{CheckoutWindow-df8612e3.js → CheckoutWindow-GzqBHFb5.js} +37 -34
  7. package/dist/CheckoutWindow-GzqBHFb5.js.br +0 -0
  8. package/dist/{DateField.vue_vue_type_style_index_0_lang-bbaed106.js → DateField.vue_vue_type_style_index_0_lang-N7m8Y11B.js} +2664 -2660
  9. package/dist/DateField.vue_vue_type_style_index_0_lang-N7m8Y11B.js.br +0 -0
  10. package/dist/Field-agqP-A21.js +42 -0
  11. package/dist/Field-agqP-A21.js.br +0 -0
  12. package/dist/{SelectField.vue_vue_type_style_index_0_lang-11cea6ba.js → SelectField.vue_vue_type_style_index_0_lang-Throo8e2.js} +10010 -9879
  13. package/dist/SelectField.vue_vue_type_style_index_0_lang-Throo8e2.js.br +0 -0
  14. package/dist/{ThankYou-159b55d6.js → ThankYou-0uAYL16f.js} +2318 -1988
  15. package/dist/ThankYou-0uAYL16f.js.br +0 -0
  16. package/dist/_-K1FuFdRs.js +19 -0
  17. package/dist/{_commonjsHelpers-aeeeeb92.js → _commonjsHelpers-2ufMB8rV.js} +2 -2
  18. package/dist/availability.js +135 -112
  19. package/dist/availability.js.br +0 -0
  20. package/dist/{event-6cd5d9be.js → event-Jiun7WTg.js} +23 -23
  21. package/dist/event-Jiun7WTg.js.br +0 -0
  22. package/dist/event.js +448 -425
  23. package/dist/event.js.br +0 -0
  24. package/dist/gift-card-validation.js +80 -67
  25. package/dist/gift-card-validation.js.br +0 -0
  26. package/dist/gift-card.js +281 -261
  27. package/dist/gift-card.js.br +0 -0
  28. package/dist/hotel-7JmuavEN.js +3108 -0
  29. package/dist/hotel-7JmuavEN.js.br +0 -0
  30. package/dist/hotel.js +12 -3093
  31. package/dist/polyfill.js +3032 -3065
  32. package/dist/polyfill.js.br +0 -0
  33. package/dist/style.css +1 -1
  34. package/dist/style.css.br +0 -0
  35. package/package.json +33 -25
  36. package/dist/ActionField-087c3437.cjs +0 -1
  37. package/dist/ActionField-89f587d4.js.br +0 -0
  38. package/dist/AvailabilitySkeleton-01aab3cb.js +0 -237
  39. package/dist/AvailabilitySkeleton-01aab3cb.js.br +0 -0
  40. package/dist/AvailabilitySkeleton-452df88c.cjs +0 -1
  41. package/dist/CheckoutWindow-1d77f68c.cjs +0 -1
  42. package/dist/CheckoutWindow-df8612e3.js.br +0 -0
  43. package/dist/Container-3af1f7f7.cjs +0 -1
  44. package/dist/Container-9f1ed24c.js +0 -59
  45. package/dist/Container-9f1ed24c.js.br +0 -0
  46. package/dist/DateField.vue_vue_type_style_index_0_lang-b5676dde.cjs +0 -2
  47. package/dist/DateField.vue_vue_type_style_index_0_lang-bbaed106.js.br +0 -0
  48. package/dist/Field-43273ca2.cjs +0 -1
  49. package/dist/Field-92684198.js +0 -42
  50. package/dist/Field-92684198.js.br +0 -0
  51. package/dist/NumberField.vue_vue_type_script_setup_true_lang-a149d388.cjs +0 -1
  52. package/dist/NumberField.vue_vue_type_script_setup_true_lang-ce6f0b17.js +0 -67
  53. package/dist/NumberField.vue_vue_type_script_setup_true_lang-ce6f0b17.js.br +0 -0
  54. package/dist/SelectField.vue_vue_type_style_index_0_lang-11cea6ba.js.br +0 -0
  55. package/dist/SelectField.vue_vue_type_style_index_0_lang-b1435f5a.cjs +0 -856
  56. package/dist/ThankYou-159b55d6.js.br +0 -0
  57. package/dist/ThankYou-c1cbecac.cjs +0 -59
  58. package/dist/_-52440760.js +0 -20
  59. package/dist/_-fbbc271a.cjs +0 -1
  60. package/dist/_commonjsHelpers-6763f629.cjs +0 -1
  61. package/dist/assets/typescript/mixins.d.ts +0 -34
  62. package/dist/availability.cjs +0 -2
  63. package/dist/availability.d.ts +0 -3
  64. package/dist/components/Alert.vue.d.ts +0 -5
  65. package/dist/components/Alert.vue.d.ts.map +0 -1
  66. package/dist/components/Clickable.vue.d.ts +0 -5
  67. package/dist/components/Clickable.vue.d.ts.map +0 -1
  68. package/dist/components/Container.vue.d.ts +0 -5
  69. package/dist/components/Container.vue.d.ts.map +0 -1
  70. package/dist/components/ErrorMessage.vue.d.ts +0 -5
  71. package/dist/components/ErrorMessage.vue.d.ts.map +0 -1
  72. package/dist/components/Gallery.vue.d.ts +0 -4
  73. package/dist/components/Gallery.vue.d.ts.map +0 -1
  74. package/dist/components/GoogleNotice.vue.d.ts +0 -4
  75. package/dist/components/GoogleNotice.vue.d.ts.map +0 -1
  76. package/dist/components/Icon.vue.d.ts +0 -5
  77. package/dist/components/Icon.vue.d.ts.map +0 -1
  78. package/dist/components/Loading.vue.d.ts +0 -5
  79. package/dist/components/Loading.vue.d.ts.map +0 -1
  80. package/dist/components/Spinner.vue.d.ts +0 -4
  81. package/dist/components/Spinner.vue.d.ts.map +0 -1
  82. package/dist/components/forms/EventAvailabilityForm.vue.d.ts +0 -5
  83. package/dist/components/forms/EventAvailabilityForm.vue.d.ts.map +0 -1
  84. package/dist/components/forms/HotelAvailabilityForm.vue.d.ts +0 -5
  85. package/dist/components/forms/HotelAvailabilityForm.vue.d.ts.map +0 -1
  86. package/dist/components/forms/HotelReservationForm.vue.d.ts +0 -4
  87. package/dist/components/forms/HotelReservationForm.vue.d.ts.map +0 -1
  88. package/dist/components/forms/MultiStepForm.vue.d.ts +0 -5
  89. package/dist/components/forms/MultiStepForm.vue.d.ts.map +0 -1
  90. package/dist/components/forms/ReservationForm.vue.d.ts +0 -6
  91. package/dist/components/forms/ReservationForm.vue.d.ts.map +0 -1
  92. package/dist/components/forms/_.vue.d.ts +0 -4
  93. package/dist/components/forms/_.vue.d.ts.map +0 -1
  94. package/dist/components/inputs/Checkbox.vue.d.ts +0 -5
  95. package/dist/components/inputs/Checkbox.vue.d.ts.map +0 -1
  96. package/dist/components/inputs/CheckboxField.vue.d.ts +0 -5
  97. package/dist/components/inputs/CheckboxField.vue.d.ts.map +0 -1
  98. package/dist/components/inputs/DateField.vue.d.ts +0 -5
  99. package/dist/components/inputs/DateField.vue.d.ts.map +0 -1
  100. package/dist/components/inputs/InputField.vue.d.ts +0 -5
  101. package/dist/components/inputs/InputField.vue.d.ts.map +0 -1
  102. package/dist/components/inputs/MediaSelector.vue.d.ts +0 -5
  103. package/dist/components/inputs/MediaSelector.vue.d.ts.map +0 -1
  104. package/dist/components/inputs/NumberField.vue.d.ts +0 -5
  105. package/dist/components/inputs/NumberField.vue.d.ts.map +0 -1
  106. package/dist/components/inputs/SelectField.vue.d.ts +0 -5
  107. package/dist/components/inputs/SelectField.vue.d.ts.map +0 -1
  108. package/dist/components/inputs/TextField.vue.d.ts +0 -5
  109. package/dist/components/inputs/TextField.vue.d.ts.map +0 -1
  110. package/dist/components/inputs/TimeField.vue.d.ts +0 -5
  111. package/dist/components/inputs/TimeField.vue.d.ts.map +0 -1
  112. package/dist/components/inputs/grouped/ActionField.vue.d.ts +0 -5
  113. package/dist/components/inputs/grouped/ActionField.vue.d.ts.map +0 -1
  114. package/dist/components/inputs/grouped/CountryField.vue.d.ts +0 -5
  115. package/dist/components/inputs/grouped/CountryField.vue.d.ts.map +0 -1
  116. package/dist/components/inputs/grouped/NameField.vue.d.ts +0 -5
  117. package/dist/components/inputs/grouped/NameField.vue.d.ts.map +0 -1
  118. package/dist/components/inputs/grouped/PhoneField.vue.d.ts +0 -5
  119. package/dist/components/inputs/grouped/PhoneField.vue.d.ts.map +0 -1
  120. package/dist/components/inputs/grouped/RoomConfigField.vue.d.ts +0 -5
  121. package/dist/components/inputs/grouped/RoomConfigField.vue.d.ts.map +0 -1
  122. package/dist/components/listings/Base.vue.d.ts +0 -6
  123. package/dist/components/listings/Base.vue.d.ts.map +0 -1
  124. package/dist/components/listings/Event.vue.d.ts +0 -5
  125. package/dist/components/listings/Event.vue.d.ts.map +0 -1
  126. package/dist/components/listings/Hotel.vue.d.ts +0 -5
  127. package/dist/components/listings/Hotel.vue.d.ts.map +0 -1
  128. package/dist/components/listings/Template.vue.d.ts +0 -5
  129. package/dist/components/listings/Template.vue.d.ts.map +0 -1
  130. package/dist/components/side-panels/Base.vue.d.ts +0 -6
  131. package/dist/components/side-panels/Base.vue.d.ts.map +0 -1
  132. package/dist/components/side-panels/ListingInfo.vue.d.ts +0 -5
  133. package/dist/components/side-panels/ListingInfo.vue.d.ts.map +0 -1
  134. package/dist/components/side-panels/Template.vue.d.ts +0 -5
  135. package/dist/components/side-panels/Template.vue.d.ts.map +0 -1
  136. package/dist/components/side-panels/TermsOfService.vue.d.ts +0 -5
  137. package/dist/components/side-panels/TermsOfService.vue.d.ts.map +0 -1
  138. package/dist/components/skeletons/AvailabilitySkeleton.vue.d.ts +0 -5
  139. package/dist/components/skeletons/AvailabilitySkeleton.vue.d.ts.map +0 -1
  140. package/dist/components/skeletons/Field.vue.d.ts +0 -5
  141. package/dist/components/skeletons/Field.vue.d.ts.map +0 -1
  142. package/dist/components/skeletons/GiftCardSkeleton.vue.d.ts +0 -5
  143. package/dist/components/skeletons/GiftCardSkeleton.vue.d.ts.map +0 -1
  144. package/dist/components/skeletons/HotelSkeleton.vue.d.ts +0 -5
  145. package/dist/components/skeletons/HotelSkeleton.vue.d.ts.map +0 -1
  146. package/dist/components/skeletons/Listing.vue.d.ts +0 -5
  147. package/dist/components/skeletons/Listing.vue.d.ts.map +0 -1
  148. package/dist/components/skeletons/Sidebar.vue.d.ts +0 -5
  149. package/dist/components/skeletons/Sidebar.vue.d.ts.map +0 -1
  150. package/dist/components/skeletons/_.vue.d.ts +0 -5
  151. package/dist/components/skeletons/_.vue.d.ts.map +0 -1
  152. package/dist/components/views/CheckoutWindow.vue.d.ts +0 -5
  153. package/dist/components/views/CheckoutWindow.vue.d.ts.map +0 -1
  154. package/dist/components/views/TermsOfService.vue.d.ts +0 -5
  155. package/dist/components/views/TermsOfService.vue.d.ts.map +0 -1
  156. package/dist/components/views/ThankYou.vue.d.ts +0 -5
  157. package/dist/components/views/ThankYou.vue.d.ts.map +0 -1
  158. package/dist/entries/availability.d.ts +0 -5
  159. package/dist/entries/event.d.ts +0 -2
  160. package/dist/entries/gift-card-validation.d.ts +0 -2
  161. package/dist/entries/gift-card.d.ts +0 -1
  162. package/dist/entries/hotel.d.ts +0 -0
  163. package/dist/entries/navigation.d.ts +0 -1
  164. package/dist/entries/polyfill.d.ts +0 -0
  165. package/dist/event-6cd5d9be.js.br +0 -0
  166. package/dist/event-dfc9ed16.cjs +0 -1
  167. package/dist/event.cjs +0 -1
  168. package/dist/event.d.ts +0 -3
  169. package/dist/gift-card-validation.cjs +0 -1
  170. package/dist/gift-card-validation.d.ts +0 -3
  171. package/dist/gift-card.cjs +0 -1
  172. package/dist/gift-card.d.ts +0 -1
  173. package/dist/hotel.cjs +0 -19
  174. package/dist/hotel.d.ts +0 -1
  175. package/dist/hotel.js.br +0 -0
  176. package/dist/layouts/Availability.vue.d.ts +0 -25
  177. package/dist/layouts/Event.vue.d.ts +0 -18
  178. package/dist/layouts/GiftCard.vue.d.ts +0 -32
  179. package/dist/layouts/GiftCardValidation.vue.d.ts +0 -18
  180. package/dist/layouts/Hotel.vue.d.ts +0 -36
  181. package/dist/layouts/_.vue.d.ts +0 -39
  182. package/dist/navigation.cjs +0 -1
  183. package/dist/navigation.d.ts +0 -1
  184. package/dist/plugins/i18n.d.ts +0 -5
  185. package/dist/polyfill.cjs +0 -4
  186. package/dist/polyfill.d.ts +0 -1
  187. package/dist/store/alert.d.ts +0 -28
  188. package/dist/store/applyGiftCard.d.ts +0 -28
  189. package/dist/store/availability.d.ts +0 -40
  190. package/dist/store/event.d.ts +0 -683
  191. package/dist/store/giftCard.d.ts +0 -83
  192. package/dist/store/payment.d.ts +0 -139
  193. package/dist/store/tracking.d.ts +0 -57
  194. package/dist/store/utilities.d.ts +0 -365
  195. package/dist/types/index.d.ts +0 -968
package/dist/hotel.js CHANGED
@@ -1,3094 +1,13 @@
1
- import { k as Y, F as ie, aF as so, s as J, c as fe, aa as ht, ab as re, m as E, n as A, X as ao, q as s, w as H, D as Ve, A as v, H as x, M as oe, Z as Je, aG as lo, v as C, a4 as W, a3 as z, x as w, a6 as ze, aH as de, p as I, K as X, L as ne, f as q, B as Ee, Q as ft, R as mt, _ as Z, r as pe, aI as gt, o as qe, a2 as _e, C as ue, aA as uo, a1 as co, y as be, I as vt, l as Xe, T as te, aD as po, G as ho, a7 as fo, N as Ze, J as U, P as mo, al as yt, aJ as go, V as vo, U as yo, W as _o, a9 as bo } from "./SelectField.vue_vue_type_style_index_0_lang-11cea6ba.js";
2
- import { R as ko, B as Ue, a as Eo, S as To, M as Io, T as Co, x as $o } from "./ThankYou-159b55d6.js";
3
- import { C as So } from "./Container-9f1ed24c.js";
4
- import { A as Vo, H as xo } from "./AvailabilitySkeleton-01aab3cb.js";
5
- import { _ as _t } from "./NumberField.vue_vue_type_script_setup_true_lang-ce6f0b17.js";
6
- import { _ as Lo } from "./DateField.vue_vue_type_style_index_0_lang-bbaed106.js";
7
- import { C as We, P as Po, a as wo } from "./CheckoutWindow-df8612e3.js";
8
- import { E as Q } from "./_-52440760.js";
9
- import { c as bt, a as kt } from "./_commonjsHelpers-aeeeeb92.js";
10
- import "./ActionField-89f587d4.js";
11
- import "./Field-92684198.js";
12
- const Ho = { key: 0 }, Oo = { key: 1 }, xe = /* @__PURE__ */ Y({
13
- __name: "HotelReservationForm",
14
- props: {
15
- showGiftCard: { type: Boolean, default: !1 },
16
- showTermsNotice: { type: Boolean, default: !1 }
17
- },
18
- setup(o) {
19
- const { t: e } = ie(), t = so(), {
20
- hideArrivalDepartureInputs: n,
21
- disableArrivalUserSelection: d,
22
- disableDepartureUserSelection: r,
23
- arrivalDefault: h,
24
- departureDefault: c,
25
- currency: a
26
- } = J(fe()), {
27
- arrivalDate: u,
28
- departureDate: m
29
- } = J(ht()), {
30
- arrivalTime: g,
31
- departureTime: k,
32
- roomDisplay: l,
33
- templateID: _,
34
- totalPrice: b,
35
- areListingsLoading: f,
36
- getSelectedPackageRoom: i,
37
- selectedPackage: p,
38
- discountVouchers: y
39
- } = J(re()), { removeRoom: $ } = re();
40
- function T(S) {
41
- return S.reduce((M, { totalPrice: O }) => M + O, 0);
42
- }
43
- return (S, L) => (E(), A(ko, {
44
- "total-price": s(b),
45
- "show-gift-card": S.showGiftCard,
46
- "show-terms-notice": S.showTermsNotice,
47
- "is-sidebar-loading": s(f),
48
- notice: s(e)("hotel.reservationNotice")
49
- }, ao({
50
- form: H(() => [
51
- Ve(S.$slots, "form")
52
- ]),
53
- "reservation-summary": H(() => [
54
- v("li", null, [
55
- v("span", null, x(s(e)("booking.reservation.arrival")), 1),
56
- v("b", null, x(s(n) ? s(oe)(s(u)) : `${s(oe)(s(u))}, ${s(d) ? s(h) : s(g)}`), 1)
57
- ]),
58
- v("li", null, [
59
- v("span", null, x(s(e)("booking.reservation.departure")), 1),
60
- v("b", null, x(s(n) ? s(oe)(s(m)) : `${s(oe)(s(m))}, ${s(r) ? s(c) : s(k)}`), 1)
61
- ]),
62
- v("li", null, [
63
- v("span", null, x(s(e)("booking.reservation.nights")), 1),
64
- v("b", null, x(s(Je)(s(u), s(m))) + " " + x(s(lo)(s(Je)(s(u), s(m)) === 1 ? s(e)("booking.reservation.night") : s(e)("booking.reservation.nights"))), 1)
65
- ]),
66
- s(y) ? (E(!0), C(z, { key: 0 }, W(s(y), (M) => (E(), C("li", {
67
- key: M.id
68
- }, [
69
- v("span", null, x(`${s(e)("general.discountCode")} (${M.value})`), 1),
70
- v("b", null, x(M.key), 1)
71
- ]))), 128)) : w("", !0)
72
- ]),
73
- "price-summary": H(() => [
74
- isNaN(s(_)) && s(l).length > 0 ? (E(!0), C(z, { key: 0 }, W(s(l), ({
75
- roomGroupID: M,
76
- title: O,
77
- variants: N
78
- }) => (E(), C("div", { key: M }, [
79
- v("h6", null, [
80
- v("span", null, x(O), 1)
81
- ]),
82
- (E(!0), C(z, null, W(N, (B, K) => (E(), C("div", { key: K }, [
83
- (E(!0), C(z, null, W(B.rooms, (F, Te) => (E(), C("ul", { key: Te }, [
84
- v("li", null, [
85
- v("span", null, [
86
- v("span", null, [
87
- ze(x(s(de)(B.name)) + " ( ", 1),
88
- I(X, {
89
- icon: "male",
90
- type: "fas",
91
- color: "font"
92
- }),
93
- v("span", null, x(F.adultsCount), 1),
94
- F.childrenCount > 0 ? (E(), C(z, { key: 0 }, [
95
- I(X, {
96
- icon: "child",
97
- type: "fas",
98
- color: "font"
99
- }),
100
- v("span", null, x(F.childrenCount), 1)
101
- ], 64)) : w("", !0),
102
- ze(") ")
103
- ])
104
- ]),
105
- v("b", null, [
106
- v("span", null, x(s(ne)(F.totalPrice, s(a))), 1),
107
- w("", !0)
108
- ])
109
- ]),
110
- T(F.roomAddons) > 0 ? (E(), C("li", Ho, [
111
- v("span", null, x(s(e)("booking.reservation.addons")), 1),
112
- v("b", null, x(s(ne)(T(F.roomAddons), s(a))), 1)
113
- ])) : w("", !0)
114
- ]))), 128))
115
- ]))), 128))
116
- ]))), 128)) : w("", !0),
117
- s(i) && s(p) ? (E(), C("div", Oo, [
118
- v("h6", null, [
119
- v("span", null, x(s(de)(s(p).name)), 1)
120
- ]),
121
- v("div", null, [
122
- v("ul", null, [
123
- v("li", null, [
124
- v("span", null, [
125
- v("span", null, x(s(de)(s(i).title)), 1)
126
- ]),
127
- v("b", null, [
128
- v("span", null, x(s(ne)(s(i).extraPrice, s(a))), 1)
129
- ])
130
- ])
131
- ])
132
- ])
133
- ])) : w("", !0)
134
- ]),
135
- navigation: H(() => [
136
- Ve(S.$slots, "navigation")
137
- ]),
138
- _: 2
139
- }, [
140
- s(t).addons ? {
141
- name: "addons",
142
- fn: H(() => [
143
- Ve(S.$slots, "addons")
144
- ]),
145
- key: "0"
146
- } : void 0
147
- ]), 1032, ["total-price", "show-gift-card", "show-terms-notice", "is-sidebar-loading", "notice"]));
148
- }
149
- }), Do = (o) => (ft("data-v-69fe83d8"), o = o(), mt(), o), Ro = { class: "konnectio-room-config-option" }, Mo = { key: 0 }, Ao = { class: "konnectio-selected-room-config" }, Bo = { class: "konnectio-selected-room-config-people" }, zo = { key: 0 }, Wo = { class: "konnectio-selected-room-config-price" }, Fo = /* @__PURE__ */ Do(() => /* @__PURE__ */ v("span", null, null, -1)), No = /* @__PURE__ */ Y({
150
- __name: "RoomConfigField",
151
- props: {
152
- modelValue: {},
153
- options: {},
154
- required: { type: Boolean, default: !1 },
155
- readonly: { type: Boolean, default: !1 },
156
- label: {}
157
- },
158
- emits: ["update:modelValue"],
159
- setup(o, { emit: e }) {
160
- const { t } = ie(), { currency: n } = J(fe()), d = e, r = o;
161
- function h(a) {
162
- d("update:modelValue", a);
163
- }
164
- const c = q({
165
- get: () => r.modelValue,
166
- set: (a) => h(a)
167
- });
168
- return (a, u) => (E(), A(Ee, {
169
- modelValue: c.value,
170
- "onUpdate:modelValue": u[0] || (u[0] = (m) => c.value = m),
171
- label: a.label,
172
- placeholder: "Select guest configuration",
173
- labelKey: "label",
174
- valueKey: "value",
175
- "icon-placement": "label",
176
- options: a.options,
177
- readonly: a.readonly,
178
- required: a.required,
179
- searchable: !1
180
- }, {
181
- option: H(({ data: m }) => [
182
- v("span", Ro, [
183
- v("div", null, [
184
- I(X, {
185
- icon: "male",
186
- type: "fas",
187
- color: "font"
188
- }),
189
- v("span", null, x(`${m.adults}`), 1),
190
- m.children > 0 ? (E(), C("span", Mo, [
191
- I(X, {
192
- icon: "child",
193
- type: "fas",
194
- color: "font"
195
- }),
196
- v("span", null, x(`${m.children}`), 1)
197
- ])) : w("", !0)
198
- ]),
199
- v("span", null, x(`(${s(ne)(m.price, s(n))})`), 1)
200
- ])
201
- ]),
202
- "selected-option": H(({ data: m }) => [
203
- v("div", Ao, [
204
- v("div", Bo, [
205
- v("div", null, [
206
- w("", !0),
207
- v("span", null, x(`${m.adults} ${m.adults === 1 ? s(t)("general.adult") : s(t)("general.adults")}`), 1)
208
- ]),
209
- m.children > 0 ? (E(), C("div", zo, [
210
- w("", !0),
211
- v("span", null, x(`& ${m.children} ${m.children === 1 ? s(t)("general.child") : s(t)("general.children")}`), 1)
212
- ])) : w("", !0)
213
- ]),
214
- v("div", Wo, [
215
- Fo,
216
- ze(" " + x(`(${s(ne)(m.price, s(n))})`), 1)
217
- ])
218
- ])
219
- ]),
220
- _: 1
221
- }, 8, ["modelValue", "label", "options", "readonly", "required"]));
222
- }
223
- });
224
- const qo = /* @__PURE__ */ Z(No, [["__scopeId", "data-v-69fe83d8"]]), Uo = { class: "konnectio-availability-listing-selection" }, Go = { key: 1 }, jo = { class: "fresh-booking-listing-config-body" }, Yo = { class: "fresh-booking-listing-units-body" };
225
- const Ko = /* @__PURE__ */ Y({
226
- __name: "Hotel",
227
- props: {
228
- room: {},
229
- layout: {}
230
- },
231
- setup(o) {
232
- const { t: e } = ie(), t = o, n = pe([]);
233
- function d(T) {
234
- n.value[T].config.push({
235
- id: NaN,
236
- units: 0,
237
- addons: []
238
- });
239
- }
240
- const r = q(() => t.room.rates.map((T) => ({
241
- label: T.name,
242
- value: T.id
243
- }))), h = q(() => n.value.flatMap((T) => T.id));
244
- q(() => r.value.filter((T) => !h.value.includes(T.value)));
245
- const { hideAvailableRoomAmount: c, currency: a } = J(fe()), { roomSelect: u } = J(re()), { viewItem: m, addToCart: g, removeFromCart: k } = gt(), l = (T, S) => t.room.rates.find((L) => L.id === T)?.occupantRates.find((L) => L.index === S), _ = q(() => t.room.rates.reduce(
246
- (T, S) => T < S.rackRate ? T : S.rackRate,
247
- 1 / 0
248
- )), b = q(() => t.room.rates.every((T) => T.isBreakfastIncluded === !0)), f = (T, S) => l(T, S) ? l(T, S)?.rooms : null, i = (T) => t.room.rates.length > 0 ? t.room.rates.find((S) => S.id === T)?.occupantRates.map((S) => ({
249
- value: S.index,
250
- price: S.totalPrice,
251
- adults: S.adultsCount,
252
- children: S.childrenCount,
253
- hasBreakfast: S.hasBreakfast
254
- })) || [] : [], p = q(() => t.room.rates.length > 1);
255
- function y() {
256
- p.value ? n.value.push({
257
- id: void 0,
258
- config: [{
259
- id: t.room.rates[0].occupantRateIndex || NaN,
260
- units: 0,
261
- addons: []
262
- }]
263
- }) : n.value.push({
264
- id: t.room.rates[0].id,
265
- config: [{
266
- id: t.room.rates[0].occupantRateIndex || NaN,
267
- units: 0,
268
- addons: []
269
- }]
270
- });
271
- }
272
- qe(() => {
273
- y();
274
- });
275
- const $ = q(() => JSON.parse(JSON.stringify(n.value)));
276
- return _e($, (T, S) => {
277
- S.length > 0 && T.forEach((L, M) => {
278
- L.config.forEach((O, N) => {
279
- const B = O.units, K = S[M].config[N].units;
280
- B !== K && (B > K ? (n.value[M].config[N].addons.push({}), g({
281
- id: t.room.id,
282
- name: t.room.title,
283
- value: t.room.rates[M].rackRate
284
- })) : (n.value[M].config[N].addons.pop(), k({
285
- id: t.room.id,
286
- name: t.room.title,
287
- value: t.room.rates[M].rackRate
288
- })));
289
- });
290
- });
291
- }, { deep: !0 }), _e(n, () => {
292
- u.value[t.room.id] = n.value;
293
- }, { deep: !0 }), (T, S) => (E(), A(Ue, {
294
- "listing-id": T.room.id,
295
- gallery: T.room.images,
296
- name: T.room.title,
297
- description: T.room.description,
298
- layout: T.layout,
299
- facilities: T.room.facilities,
300
- "prices-from": _.value,
301
- "includes-breakfast": b.value
302
- }, {
303
- action: H(() => [
304
- v("div", Uo, [
305
- (E(!0), C(z, null, W(n.value, (L, M) => (E(), C("div", {
306
- key: L.id,
307
- class: "freshbooking-hotel-room"
308
- }, [
309
- p.value ? (E(), A(Ee, {
310
- key: 0,
311
- modelValue: L.id,
312
- "onUpdate:modelValue": (O) => L.id = O,
313
- label: s(e)("hotel.roomVariant"),
314
- placeholder: s(e)("hotel.chooseARoomVariant"),
315
- options: r.value,
316
- searchable: !1
317
- }, null, 8, ["modelValue", "onUpdate:modelValue", "label", "placeholder", "options"])) : w("", !0),
318
- L.id ? (E(), C("div", Go, [
319
- (E(!0), C(z, null, W(T.room.rates, ({
320
- id: O,
321
- maximumOccupants: N
322
- }) => (E(), C("div", { key: O }, [
323
- L.id === O ? (E(!0), C(z, { key: 0 }, W(L.config, (B, K) => (E(), C("div", {
324
- key: K,
325
- class: "booking-availability-listing-action-selective"
326
- }, [
327
- v("ul", jo, [
328
- I(qo, {
329
- modelValue: B.id,
330
- "onUpdate:modelValue": (F) => B.id = F,
331
- icon: "male",
332
- "icon-type": "fas",
333
- label: s(e)("general.guests"),
334
- description: `${s(e)("general.maximumGuests")}: ${N}`,
335
- options: i(O),
336
- readonly: !(i(O).length > 1)
337
- }, null, 8, ["modelValue", "onUpdate:modelValue", "label", "description", "options", "readonly"])
338
- ]),
339
- v("ul", Yo, [
340
- I(_t, {
341
- modelValue: B.units,
342
- "onUpdate:modelValue": (F) => B.units = F,
343
- description: s(c) ? void 0 : `${s(e)("booking.availability.availableUnits")}: ${f(L.id, B.id)}`,
344
- icon: "house",
345
- "icon-type": "fas",
346
- "icon-placement": "label",
347
- label: s(e)("booking.availability.units"),
348
- minValue: 0,
349
- "max-value": f(O, B.id) || 1 / 0
350
- }, null, 8, ["modelValue", "onUpdate:modelValue", "description", "label", "max-value"])
351
- ]),
352
- w("", !0)
353
- ]))), 128)) : w("", !0)
354
- ]))), 128))
355
- ])) : w("", !0)
356
- ]))), 128))
357
- ])
358
- ]),
359
- _: 1
360
- }, 8, ["listing-id", "gallery", "name", "description", "layout", "facilities", "prices-from", "includes-breakfast"]));
361
- }
362
- });
363
- const Qo = /* @__PURE__ */ Z(Ko, [["__scopeId", "data-v-79268706"]]), Jo = { class: "konnectio-template-side-panel" }, Xo = {
364
- key: 0,
365
- class: "konnectio-template-side-panel-featured"
366
- }, Zo = ["src"], en = { class: "konnectio-template-side-panel-listings" }, tn = /* @__PURE__ */ Y({
367
- __name: "Template",
368
- props: {
369
- title: {},
370
- description: {},
371
- templateId: {},
372
- featured: {},
373
- roomGroups: {},
374
- callback: { type: Function }
375
- },
376
- setup(o) {
377
- const { t: e } = ie(), { templateID: t, roomGroupID: n } = J(re()), { currency: d } = J(fe()), { clearRoomSelection: r } = re(), h = o;
378
- function c(a) {
379
- t.value = h.templateId, n.value = a, r(), h.callback(2);
380
- }
381
- return (a, u) => (E(), A(Eo, {
382
- title: a.title,
383
- description: a.description,
384
- subtitle: s(e)("booking.availability.selectATemplateRoom")
385
- }, {
386
- default: H(() => [
387
- v("div", Jo, [
388
- a.featured ? (E(), C("div", Xo, [
389
- v("img", { src: a.featured }, null, 8, Zo)
390
- ])) : w("", !0),
391
- v("div", en, [
392
- (E(!0), C(z, null, W(a.roomGroups, ({
393
- id: m,
394
- title: g,
395
- description: k,
396
- images: l,
397
- facilities: _,
398
- extraPrice: b
399
- }) => (E(), A(Ue, {
400
- key: m,
401
- "listing-id": m,
402
- name: g,
403
- description: k,
404
- facilities: _,
405
- gallery: l,
406
- "includes-breakfast": !1,
407
- "hide-info-button": !0
408
- }, {
409
- action: H(() => [
410
- v("div", null, [
411
- I(ue, {
412
- onClickEvent: (f) => c(m),
413
- label: `${s(e)("booking.availability.selectThisRoom")} (${s(ne)(b, s(d))})`,
414
- "full-width": ""
415
- }, null, 8, ["onClickEvent", "label"])
416
- ])
417
- ]),
418
- _: 2
419
- }, 1032, ["listing-id", "name", "description", "facilities", "gallery"]))), 128))
420
- ])
421
- ])
422
- ]),
423
- _: 1
424
- }, 8, ["title", "description", "subtitle"]));
425
- }
426
- });
427
- const on = /* @__PURE__ */ Z(tn, [["__scopeId", "data-v-2a5b1c09"]]), nn = ["innerHTML"], rn = /* @__PURE__ */ Y({
428
- __name: "Template",
429
- props: {
430
- id: {},
431
- weekendFee: {},
432
- description: {},
433
- name: {},
434
- image: {},
435
- roomGroups: {},
436
- callback: { type: Function }
437
- },
438
- setup(o) {
439
- const { t: e } = ie(), t = o, n = q(() => t.roomGroups.reduce(
440
- (a, u) => a < u.extraPrice ? a : u.extraPrice,
441
- 1 / 0
442
- )), d = q(() => [{
443
- large: t.image.url,
444
- medium: t.image.url,
445
- thumb: t.image.url,
446
- url: t.image.url
447
- }]), r = pe(!1);
448
- function h() {
449
- r.value = !0;
450
- }
451
- function c(a) {
452
- t.callback(a), r.value = !1;
453
- }
454
- return (a, u) => (E(), A(Ue, {
455
- "listing-id": a.id,
456
- name: a.name,
457
- description: a.description,
458
- gallery: d.value,
459
- layout: s(co).Template,
460
- "includes-breakfast": !1,
461
- "hide-info-button": !0,
462
- "prices-from": n.value
463
- }, {
464
- description: H(() => [
465
- a.description ? (E(), C("p", {
466
- key: 0,
467
- innerHTML: s(uo)(a.description)
468
- }, null, 8, nn)) : w("", !0)
469
- ]),
470
- action: H(() => [
471
- v("div", null, [
472
- I(ue, {
473
- onClickEvent: h,
474
- label: s(e)("booking.availability.selectPackage"),
475
- "full-width": ""
476
- }, null, 8, ["label"])
477
- ])
478
- ]),
479
- default: H(() => [
480
- I(on, {
481
- modelValue: r.value,
482
- "onUpdate:modelValue": u[0] || (u[0] = (m) => r.value = m),
483
- title: a.name,
484
- featured: d.value[0].url,
485
- "template-id": a.id,
486
- roomGroups: a.roomGroups,
487
- callback: c
488
- }, null, 8, ["modelValue", "title", "featured", "template-id", "roomGroups"])
489
- ]),
490
- _: 1
491
- }, 8, ["listing-id", "name", "description", "gallery", "layout", "prices-from"]));
492
- }
493
- });
494
- const sn = /* @__PURE__ */ Z(rn, [["__scopeId", "data-v-288e6d76"]]), et = /* @__PURE__ */ Y({
495
- __name: "TimeField",
496
- props: {
497
- modelValue: {},
498
- label: {},
499
- id: {},
500
- name: {},
501
- placeholder: {},
502
- icon: {},
503
- iconColor: {},
504
- iconType: {},
505
- primaryColor: {},
506
- secondaryColor: {},
507
- weekendColor: {},
508
- highlightedColor: {},
509
- required: { type: Boolean },
510
- readonly: { type: Boolean },
511
- disabled: { type: Boolean },
512
- inline: { type: Boolean },
513
- range: { type: Boolean },
514
- enableTimePicker: { type: Boolean },
515
- inputStyle: {}
516
- },
517
- emits: ["update:modelValue"],
518
- setup(o, { emit: e }) {
519
- const t = e, n = o;
520
- function d(h) {
521
- t("update:modelValue", h);
522
- }
523
- const r = pe(n.modelValue);
524
- return _e(r, (h) => {
525
- d(h);
526
- }), (h, c) => (E(), A(Lo, {
527
- modelValue: r.value,
528
- "onUpdate:modelValue": c[0] || (c[0] = (a) => r.value = a),
529
- type: "time",
530
- label: h.label,
531
- id: h.id,
532
- name: h.name,
533
- icon: h.icon,
534
- "icon-type": h.iconType,
535
- "icon-color": h.iconColor,
536
- "auto-apply": !0,
537
- required: h.required,
538
- readonly: h.readonly
539
- }, null, 8, ["modelValue", "label", "id", "name", "icon", "icon-type", "icon-color", "required", "readonly"]));
540
- }
541
- });
542
- const an = { style: { display: "flex", "align-items": "baseline" } }, ln = /* @__PURE__ */ Y({
543
- __name: "CountryField",
544
- props: {
545
- modelValue: {},
546
- options: {},
547
- required: { type: Boolean, default: !1 },
548
- readonly: { type: Boolean, default: !1 },
549
- label: {},
550
- placeholder: {}
551
- },
552
- emits: ["update:modelValue"],
553
- setup(o, { emit: e }) {
554
- const { t } = ie(), n = e, d = o;
555
- function r(c) {
556
- n("update:modelValue", c);
557
- }
558
- const h = q({
559
- get: () => d.modelValue,
560
- set: (c) => r(c)
561
- });
562
- return (c, a) => (E(), A(Ee, {
563
- modelValue: h.value,
564
- "onUpdate:modelValue": a[0] || (a[0] = (u) => h.value = u),
565
- label: c.label,
566
- placeholder: s(t)("booking.reservation.countryPlaceholder"),
567
- labelKey: "name",
568
- valueKey: "id",
569
- options: c.options,
570
- required: c.required
571
- }, {
572
- option: H(({ data: u }) => [
573
- v("i", {
574
- class: be(["konnectio-flag-icon", u.iso])
575
- }, null, 2),
576
- v("span", null, x(u.name), 1)
577
- ]),
578
- "selected-option": H(({ data: u }) => [
579
- v("div", an, [
580
- v("i", {
581
- class: be(["konnectio-flag-icon", u.iso])
582
- }, null, 2),
583
- v("span", null, x(u.name), 1)
584
- ])
585
- ]),
586
- _: 1
587
- }, 8, ["modelValue", "label", "placeholder", "options", "required"]));
588
- }
589
- });
590
- const un = /* @__PURE__ */ Z(ln, [["__scopeId", "data-v-1462612d"]]), dn = { class: "konnectio-radio-checkboxes" }, cn = /* @__PURE__ */ Y({
591
- __name: "CheckboxField",
592
- props: {
593
- modelValue: {},
594
- label: {},
595
- name: {},
596
- checkboxes: {}
597
- },
598
- emits: ["update:modelValue"],
599
- setup(o, { emit: e }) {
600
- const t = e, n = o;
601
- function d(h) {
602
- t("update:modelValue", h);
603
- }
604
- const r = q({
605
- get: () => n.modelValue,
606
- set: (h) => d(h)
607
- });
608
- return (h, c) => (E(), A(vt, {
609
- label: h.label,
610
- type: "multi-radio"
611
- }, {
612
- default: H(() => [
613
- v("ul", dn, [
614
- (E(!0), C(z, null, W(h.checkboxes, ({ label: a, value: u }, m) => (E(), C("li", { key: m }, [
615
- I(We, {
616
- modelValue: r.value,
617
- "onUpdate:modelValue": c[0] || (c[0] = (g) => r.value = g),
618
- label: a,
619
- name: h.name,
620
- type: "radio",
621
- val: u
622
- }, null, 8, ["modelValue", "label", "name", "val"])
623
- ]))), 128))
624
- ])
625
- ]),
626
- _: 1
627
- }, 8, ["label"]));
628
- }
629
- });
630
- const pn = /* @__PURE__ */ Z(cn, [["__scopeId", "data-v-d8d42a8a"]]), hn = /* @__PURE__ */ Y({
631
- __name: "NameField",
632
- props: {
633
- modelValue: {},
634
- title: {},
635
- label: {},
636
- id: {},
637
- placeholder: {},
638
- icon: {},
639
- iconColor: {},
640
- iconType: { default: "fal" },
641
- required: { type: Boolean, default: !1 },
642
- readonly: { type: Boolean, default: !1 },
643
- type: { default: "text" },
644
- autocomplete: { type: Boolean, default: !1 },
645
- disabled: { type: Boolean, default: !1 },
646
- limit: { default: 1 / 0 },
647
- inputStyle: {},
648
- excludeTitle: { type: Boolean, default: !1 }
649
- },
650
- emits: ["update:modelValue", "update:title"],
651
- setup(o, { emit: e }) {
652
- const t = o, n = e, d = t.id || Xe(), r = pe(""), h = pe(2);
653
- function c() {
654
- n("update:modelValue", r.value);
655
- }
656
- _e(h, (u) => {
657
- n("update:title", u);
658
- });
659
- const { t: a } = ie();
660
- return qe(() => {
661
- t.modelValue && (r.value = t.modelValue), t.title && (h.value = t.title);
662
- }), (u, m) => (E(), A(vt, {
663
- label: u.label,
664
- id: s(d),
665
- required: u.required,
666
- type: "fresh-booking-name-field",
667
- readonly: u.readonly,
668
- limit: u.limit
669
- }, {
670
- default: H(() => [
671
- v("div", {
672
- class: be([
673
- "fresh-booking-name-input",
674
- { "no-title": u.excludeTitle }
675
- ])
676
- }, [
677
- u.excludeTitle ? w("", !0) : (E(), A(Ee, {
678
- key: 0,
679
- modelValue: h.value,
680
- "onUpdate:modelValue": m[0] || (m[0] = (g) => h.value = g),
681
- id: s(Xe)(),
682
- icon: u.icon,
683
- "icon-color": u.iconColor,
684
- "icon-type": u.iconType,
685
- options: [
686
- {
687
- label: s(a)("booking.reservation.noNameTitle"),
688
- value: 1
689
- },
690
- {
691
- label: s(a)("booking.reservation.nameTitleMr"),
692
- value: 2
693
- },
694
- {
695
- label: s(a)("booking.reservation.nameTitleMs"),
696
- value: 3
697
- },
698
- {
699
- label: s(a)("booking.reservation.nameTitleMrs"),
700
- value: 4
701
- },
702
- {
703
- label: s(a)("booking.reservation.nameTitleDr"),
704
- value: 5
705
- }
706
- ],
707
- readonly: u.readonly,
708
- "hide-button": "",
709
- "input-style": u.inputStyle,
710
- searchable: !1
711
- }, null, 8, ["modelValue", "id", "icon", "icon-color", "icon-type", "options", "readonly", "input-style"])),
712
- I(te, {
713
- modelValue: r.value,
714
- "onUpdate:modelValue": m[1] || (m[1] = (g) => r.value = g),
715
- type: "text",
716
- name: "name",
717
- autocomplete: "name",
718
- id: s(d),
719
- icon: u.excludeTitle ? u.icon : void 0,
720
- "icon-color": u.iconColor,
721
- "icon-type": u.iconType,
722
- placeholder: u.placeholder,
723
- required: u.required,
724
- readonly: u.readonly,
725
- limit: u.limit,
726
- onInput: m[2] || (m[2] = (g) => c()),
727
- "input-style": u.inputStyle
728
- }, null, 8, ["modelValue", "id", "icon", "icon-color", "icon-type", "placeholder", "required", "readonly", "limit", "input-style"])
729
- ], 2)
730
- ]),
731
- _: 1
732
- }, 8, ["label", "id", "required", "readonly", "limit"]));
733
- }
734
- });
735
- const fn = /* @__PURE__ */ Z(hn, [["__scopeId", "data-v-78b0b319"]]), mn = { class: "hotel-listing" }, gn = { class: "hotel-listing-content-gallery" }, vn = { class: "hotel-listing-content-thumbs" }, yn = { class: "hotel-listing-content" }, _n = { class: "hotel-listing-content-header" }, bn = { class: "hotel-listing-content-title" }, kn = { class: "hotel-listing-content-body" }, En = { class: "hotel-listing-content-facilities" }, Tn = /* @__PURE__ */ Y({
736
- __name: "Listing",
737
- setup(o) {
738
- return (e, t) => (E(), C("div", mn, [
739
- v("div", gn, [
740
- I(Q, {
741
- width: "280px",
742
- height: "153px"
743
- }),
744
- v("div", vn, [
745
- (E(), C(z, null, W(3, (n) => I(Q, {
746
- key: n,
747
- width: "84px",
748
- height: "44px"
749
- })), 64))
750
- ])
751
- ]),
752
- v("div", yn, [
753
- v("div", _n, [
754
- v("div", bn, [
755
- I(Q, {
756
- height: "30px",
757
- width: "60%"
758
- }),
759
- I(Q, {
760
- height: "30px",
761
- width: "30px",
762
- "border-radius": "100%"
763
- })
764
- ]),
765
- I(Q, {
766
- height: "15px",
767
- width: "25%"
768
- })
769
- ]),
770
- v("div", kn, [
771
- I(Q, { height: "15px" }),
772
- I(Q, { height: "15px" }),
773
- I(Q, { height: "15px" }),
774
- I(Q, { height: "15px" }),
775
- I(Q, {
776
- height: "15px",
777
- width: "90%"
778
- })
779
- ]),
780
- v("div", En, [
781
- (E(), C(z, null, W(5, (n) => I(Q, {
782
- key: n,
783
- height: "25px",
784
- width: "25px",
785
- "border-radius": "6px"
786
- })), 64))
787
- ])
788
- ])
789
- ]));
790
- }
791
- });
792
- const ce = /* @__PURE__ */ Z(Tn, [["__scopeId", "data-v-a5347d60"]]), In = { class: "hotel-skeleton" }, Cn = { class: "hotel-skeleton-content" }, $n = { class: "hotel-skeleton-sidebar" }, Sn = /* @__PURE__ */ Y({
793
- __name: "HotelSkeleton",
794
- setup(o) {
795
- return (e, t) => (E(), C("div", In, [
796
- v("div", Cn, [
797
- I(Vo),
798
- I(ce),
799
- I(ce),
800
- I(ce)
801
- ]),
802
- v("div", $n, [
803
- I(To)
804
- ])
805
- ]));
806
- }
807
- });
808
- const Vn = /* @__PURE__ */ Z(Sn, [["__scopeId", "data-v-5fa1400b"]]), xn = (o) => (ft("data-v-62335f79"), o = o(), mt(), o), Ln = { id: "booking-availability-container" }, Pn = { id: "booking-availability-controls" };
809
- const wn = { key: 1 }, Hn = { key: 0 }, On = {
810
- key: 0,
811
- id: "booking-availability-packages"
812
- }, Dn = {
813
- key: 0,
814
- class: "konnectio-hotel-availability-title"
815
- }, Rn = { id: "booking-availability-packages-wrapper" }, Mn = { key: 1 }, An = {
816
- key: 0,
817
- class: "konnectio-hotel-availability-title"
818
- }, Bn = { id: "booking-availability-listings" }, zn = {
819
- key: 2,
820
- id: "booking-availability-no-listings",
821
- class: "fresh-booking-panel"
822
- }, Wn = {
823
- key: 1,
824
- id: "booking-availability-no-listings"
825
- }, Fn = {
826
- key: 2,
827
- id: "reservation-availability-next-dates"
828
- }, Nn = { class: "konnectio-hotel-availability-title" }, qn = { class: "reservation-special-offers-grid" }, Un = ["title"];
829
- const Gn = {
830
- key: 2,
831
- class: "konnectio-listing-loading"
832
- }, jn = { class: "fresh-booking-panel" }, Yn = {
833
- key: 0,
834
- id: "konnectio-hotel-addons"
1
+ import "./SelectField.vue_vue_type_style_index_0_lang-Throo8e2.js";
2
+ import "./ThankYou-0uAYL16f.js";
3
+ import { C as s } from "./hotel-7JmuavEN.js";
4
+ import "./_commonjsHelpers-2ufMB8rV.js";
5
+ import "./ActionField-1TedZ-ol.js";
6
+ import "./CheckoutWindow-GzqBHFb5.js";
7
+ import "./_-K1FuFdRs.js";
8
+ import "./AvailabilitySkeleton-IRkVJKVI.js";
9
+ import "./DateField.vue_vue_type_style_index_0_lang-N7m8Y11B.js";
10
+ import "./Field-agqP-A21.js";
11
+ export {
12
+ s as default
835
13
  };
836
- const Kn = { class: "fresh-booking-event-addons-price" }, Qn = { key: 1 }, Jn = /* @__PURE__ */ xn(() => /* @__PURE__ */ v("br", null, null, -1)), Xn = ["onClick"], Zn = { class: "fresh-booking-panel" }, ei = { key: 0 }, ti = { key: 1 }, oi = { class: "fresh-booking-split-inputs" }, ni = ["onClick"], ii = /* @__PURE__ */ Y({
837
- name: "HotelLayout",
838
- __name: "Hotel",
839
- props: {
840
- accessToken: {},
841
- headerLayout: { default: po.Minimal },
842
- onlyShow: { default: "everything" },
843
- styling: {}
844
- },
845
- setup(o) {
846
- const { t: e } = ie(), {
847
- templateID: t,
848
- countries: n,
849
- areListingsLoading: d,
850
- isPaymentLoading: r,
851
- isReservationFormFilled: h,
852
- travelingFor: c,
853
- arrivalTime: a,
854
- departureTime: u,
855
- name: m,
856
- nameTitle: g,
857
- email: k,
858
- phone: l,
859
- firmName: _,
860
- postal: b,
861
- city: f,
862
- address: i,
863
- country: p,
864
- remark: y,
865
- allergies: $,
866
- newsMails: T,
867
- roomSelect: S,
868
- roomDisplay: L,
869
- hasValidRoomSelection: M,
870
- availabilityData: O,
871
- selectionHasNoAddons: N
872
- } = J(re()), {
873
- arrivalDate: B,
874
- departureDate: K
875
- } = J(ht()), {
876
- currency: F,
877
- disableNewsletterSignup: Te,
878
- arrivalEarliest: Ke,
879
- arrivalLatest: Lt,
880
- departureEarliest: Pt,
881
- departureLatest: wt,
882
- enableTracking: Ht,
883
- arrivalDefault: Ot,
884
- departureDefault: Dt,
885
- hideArrivalDepartureInputs: Rt,
886
- disableArrivalUserSelection: Ie,
887
- disableNamePrefix: Mt,
888
- disableDepartureUserSelection: Ce,
889
- disableTravelingFor: At,
890
- disableTravelingForBleasure: Bt,
891
- disableCompanyField: zt,
892
- hasPaymentGateway: Wt
893
- } = J(fe()), { beginCheckout: Ft } = gt(), {
894
- initialize: Nt,
895
- resetTemplate: qt,
896
- resetDiscountVoucher: Ut,
897
- createReservation: Gt
898
- } = re(), jt = pe(!0), Yt = q(() => {
899
- const D = [
900
- {
901
- label: e("booking.reservation.business"),
902
- value: "Business"
903
- },
904
- {
905
- label: e("booking.reservation.pleasure"),
906
- value: "Pleasure"
907
- }
908
- ];
909
- return Bt.value || D.push({
910
- label: e("booking.reservation.bleasure"),
911
- value: "Bleasure"
912
- }), D;
913
- }), Kt = q(() => {
914
- const D = O.value.roomGroups.slice();
915
- D.forEach((j) => {
916
- j.pricesFrom = j.rates.reduce(
917
- (R, V) => R < V.rackRate ? R : V.rackRate,
918
- 1 / 0
919
- );
920
- });
921
- function P(j, R) {
922
- return jt.value === !0 ? j.pricesFrom > R.pricesFrom ? -1 : 1 : j.pricesFrom > R.pricesFrom ? 1 : -1;
923
- }
924
- return D.sort(P);
925
- }), Qt = q(() => [[
926
- parseInt(Ke.value.split(":")[0]),
927
- parseInt(Lt.value.split(":")[0])
928
- ]]), Jt = q(() => [[
929
- parseInt(Pt.value.split(":")[0]),
930
- parseInt(wt.value.split(":")[0])
931
- ]]);
932
- function Qe(D) {
933
- N.value ? D(2) : D(), Ut();
934
- }
935
- function Xt(D, P) {
936
- K.value = new Date(P), B.value = new Date(D), location.reload();
937
- }
938
- async function Zt(D) {
939
- await Gt(D);
940
- }
941
- function eo(D) {
942
- Ht.value && Ft(), N.value ? D(2) : D();
943
- }
944
- function to() {
945
- a.value === "" && (a.value = Ot.value), u.value === "" && (u.value = Dt.value);
946
- }
947
- return qe(() => {
948
- Nt(), to();
949
- }), (D, P) => (E(), A(So, { styling: D.styling }, {
950
- default: H(() => [
951
- (E(), A(ho, null, {
952
- default: H(() => [
953
- I(mo, {
954
- id: "fresh-booking-hotel-module",
955
- "access-token": D.accessToken,
956
- type: "hotel"
957
- }, {
958
- default: H(() => [
959
- I(Io, {
960
- layout: D.headerLayout,
961
- onReset: s(qt)
962
- }, {
963
- availability: H(({ next: j }) => [
964
- I(xe, null, {
965
- form: H(() => [
966
- v("div", Ln, [
967
- v("div", Pn, [
968
- I(xo, { booking: !0 })
969
- ]),
970
- w("", !0),
971
- s(d) ? (E(), C("div", Gn, [
972
- I(ce),
973
- I(ce),
974
- I(ce)
975
- ])) : (E(), C("div", wn, [
976
- s(O).roomGroups.length > 0 || s(O).templates.length > 0 ? (E(), C("div", Hn, [
977
- s(O).templates.length > 0 && D.onlyShow !== "rooms" ? (E(), C("div", On, [
978
- D.onlyShow !== "packages" ? (E(), C("h2", Dn, [
979
- I(X, {
980
- icon: "box",
981
- type: "fal",
982
- color: "header"
983
- }),
984
- v("span", null, x(s(e)("booking.availability.packagesTitle")), 1)
985
- ])) : w("", !0),
986
- v("ul", Rn, [
987
- (E(!0), C(z, null, W(s(O).templates, ({
988
- id: R,
989
- name: V,
990
- templateRoomGroups: ae,
991
- image: le,
992
- description: G
993
- }) => (E(), A(sn, {
994
- key: R,
995
- id: R,
996
- description: G,
997
- name: V,
998
- image: le,
999
- "room-groups": ae,
1000
- callback: j
1001
- }, null, 8, ["id", "description", "name", "image", "room-groups", "callback"]))), 128))
1002
- ])
1003
- ])) : w("", !0),
1004
- s(O).roomGroups.length > 0 && D.onlyShow !== "packages" ? (E(), C("div", Mn, [
1005
- s(O).templates.length > 0 && D.onlyShow !== "rooms" ? (E(), C("h2", An, [
1006
- I(X, {
1007
- icon: "house",
1008
- type: "fal",
1009
- color: "header"
1010
- }),
1011
- v("span", null, x(s(e)("booking.availability.roomsTitle")), 1)
1012
- ])) : w("", !0),
1013
- v("ul", Bn, [
1014
- (E(!0), C(z, null, W(Kt.value, (R, V) => (E(), A(Qo, {
1015
- room: R,
1016
- key: V
1017
- }, null, 8, ["room"]))), 128))
1018
- ])
1019
- ])) : w("", !0),
1020
- (s(O).templates.length === 0 && D.onlyShow !== "rooms" || s(O).roomGroups.length === 0 && D.onlyShow !== "packages") && (D.onlyShow === "rooms" || D.onlyShow === "packages") ? (E(), C("div", zn, [
1021
- v("span", null, x(s(e)("booking.availability.nothingAvailable")), 1)
1022
- ])) : w("", !0)
1023
- ])) : s(O).nextAvailableDates.length === 0 ? (E(), C("div", Wn, [
1024
- v("span", null, x(s(e)("booking.availability.nothingAvailable")), 1)
1025
- ])) : (E(), C("div", Fn, [
1026
- v("h2", Nn, [
1027
- I(X, {
1028
- icon: "calendar-circle-exclamation",
1029
- type: "fal",
1030
- color: "header"
1031
- }),
1032
- v("span", null, x(s(e)("booking.availability.nextAvailableDates")), 1)
1033
- ]),
1034
- v("ul", qn, [
1035
- (E(!0), C(z, null, W(s(O).nextAvailableDates, (R, V) => (E(), C("li", { key: V }, [
1036
- v("h3", {
1037
- title: `${s(oe)(R.fromDate)} - ${s(oe)(R.toDate)}`
1038
- }, [
1039
- v("span", null, x(`${s(oe)(R.fromDate)} - ${s(oe)(R.toDate)}`), 1)
1040
- ], 8, Un),
1041
- v("ul", null, [
1042
- w("", !0),
1043
- v("li", null, [
1044
- I(X, {
1045
- icon: "money-bill",
1046
- type: "fal",
1047
- color: "header"
1048
- }),
1049
- v("span", null, x(s(e)("booking.availability.pricesFrom")) + ": " + x(s(ne)(R.priceStartFrom, s(F))), 1)
1050
- ])
1051
- ]),
1052
- I(ue, {
1053
- label: s(e)("booking.availability.selectDates"),
1054
- "full-width": "",
1055
- onClickEvent: (ae) => Xt(R.fromDate, R.toDate)
1056
- }, null, 8, ["label", "onClickEvent"])
1057
- ]))), 128))
1058
- ])
1059
- ]))
1060
- ]))
1061
- ])
1062
- ]),
1063
- navigation: H(() => [
1064
- I(ue, {
1065
- label: s(N) ? s(e)("booking.availability.nextButton") : s(e)("general.chooseAddons"),
1066
- disabled: !s(M),
1067
- "is-loading": !1,
1068
- "full-width": "",
1069
- onClickEvent: (R) => eo(j)
1070
- }, null, 8, ["label", "disabled", "onClickEvent"])
1071
- ]),
1072
- _: 2
1073
- }, 1024)
1074
- ]),
1075
- addons: H(({ next: j, prev: R }) => [
1076
- I(xe, null, {
1077
- form: H(() => [
1078
- v("form", jn, [
1079
- v("h2", null, [
1080
- v("span", null, x(s(e)("booking.reservation.addons")), 1)
1081
- ]),
1082
- v("div", null, [
1083
- isNaN(s(t)) ? (E(), C("div", Yn, [
1084
- (E(!0), C(z, null, W(s(L), (V) => (E(), C("ul", {
1085
- key: V.roomGroupID
1086
- }, [
1087
- (E(!0), C(z, null, W(V.variants, (ae, le) => (E(), C("li", {
1088
- key: ae.ratePlanID
1089
- }, [
1090
- v("h4", null, [
1091
- v("span", null, x(s(de)(V.title)), 1)
1092
- ]),
1093
- (E(!0), C(z, null, W(ae.rooms, (G, oo) => (E(), C("table", {
1094
- key: oo,
1095
- class: "fresh-booking-table"
1096
- }, [
1097
- v("thead", null, [
1098
- v("tr", null, [
1099
- v("th", null, [
1100
- v("span", null, x(s(de)(ae.name)), 1)
1101
- ]),
1102
- w("", !0),
1103
- v("th", Kn, [
1104
- v("b", null, [
1105
- I(X, {
1106
- icon: "male",
1107
- type: "fas",
1108
- color: "font"
1109
- }),
1110
- v("span", null, x(G.adultsCount), 1),
1111
- G.childrenCount > 0 ? (E(), A(X, {
1112
- key: 0,
1113
- icon: "child",
1114
- type: "fas",
1115
- color: "font"
1116
- })) : w("", !0),
1117
- G.childrenCount > 0 ? (E(), C("span", Qn, x(G.childrenCount), 1)) : w("", !0)
1118
- ])
1119
- ])
1120
- ])
1121
- ]),
1122
- v("tbody", null, [
1123
- (E(!0), C(z, null, W(V.addons, ({
1124
- quantityStrategy: $e,
1125
- maximumNumber: no,
1126
- id: he,
1127
- name: io,
1128
- price: ro
1129
- }) => (E(), C("tr", { key: he }, [
1130
- v("td", null, [
1131
- v("b", null, x(s(de)(io)), 1),
1132
- Jn,
1133
- v("span", null, x(s(ne)(ro, s(F))) + " " + x(s(fo)($e)), 1)
1134
- ]),
1135
- v("td", null, [
1136
- $e === 1 || $e === 12 ? (E(), A(_t, {
1137
- key: 0,
1138
- modelValue: s(S)[V.roomGroupID][le].config[G.configIdx].addons[G.roomIdx][he],
1139
- "onUpdate:modelValue": (Se) => s(S)[V.roomGroupID][le].config[G.configIdx].addons[G.roomIdx][he] = Se,
1140
- small: !0,
1141
- "min-value": 0,
1142
- "max-value": no || 1 / 0
1143
- }, null, 8, ["modelValue", "onUpdate:modelValue", "max-value"])) : (E(), A(We, {
1144
- key: 1,
1145
- modelValue: s(S)[V.roomGroupID][le].config[G.configIdx].addons[G.roomIdx][he],
1146
- "onUpdate:modelValue": (Se) => s(S)[V.roomGroupID][le].config[G.configIdx].addons[G.roomIdx][he] = Se,
1147
- numeric: !0
1148
- }, null, 8, ["modelValue", "onUpdate:modelValue"]))
1149
- ])
1150
- ]))), 128))
1151
- ])
1152
- ]))), 128))
1153
- ]))), 128))
1154
- ]))), 128))
1155
- ])) : w("", !0)
1156
- ])
1157
- ])
1158
- ]),
1159
- navigation: H(() => [
1160
- I(ue, {
1161
- label: s(e)("general.startReservation"),
1162
- "full-width": "",
1163
- onClickEvent: j
1164
- }, null, 8, ["label", "onClickEvent"]),
1165
- v("button", {
1166
- class: "konnectio-abort-reservation link",
1167
- onClick: Ze((V) => Qe(R), ["prevent"])
1168
- }, [
1169
- v("span", null, x(s(e)("general.goAStepBack")), 1)
1170
- ], 8, Xn)
1171
- ]),
1172
- _: 2
1173
- }, 1024)
1174
- ]),
1175
- reservation: H(({ next: j, prev: R }) => [
1176
- I(xe, {
1177
- "show-terms-notice": !0,
1178
- "show-gift-card": !0
1179
- }, {
1180
- form: H(() => [
1181
- v("form", Zn, [
1182
- v("h2", null, [
1183
- v("span", null, x(s(e)("booking.reservation.detailsTitle")), 1)
1184
- ]),
1185
- !s(Rt) && !(s(Ie) && s(Ce)) ? (E(), C("ul", {
1186
- key: 0,
1187
- class: be({ "fresh-booking-split-inputs": !s(Ie) && !s(Ce) })
1188
- }, [
1189
- s(Ie) ? w("", !0) : (E(), C("li", ei, [
1190
- I(et, {
1191
- modelValue: s(a),
1192
- "onUpdate:modelValue": P[1] || (P[1] = (V) => U(a) ? a.value = V : null),
1193
- label: s(e)("booking.reservation.arrivalTime"),
1194
- icon: "hourglass-start",
1195
- "hour-range": Qt.value,
1196
- required: ""
1197
- }, null, 8, ["modelValue", "label", "hour-range"])
1198
- ])),
1199
- s(Ce) ? w("", !0) : (E(), C("li", ti, [
1200
- I(et, {
1201
- modelValue: s(u),
1202
- "onUpdate:modelValue": P[2] || (P[2] = (V) => U(u) ? u.value = V : null),
1203
- label: s(e)("booking.reservation.departureTime"),
1204
- icon: "hourglass-end",
1205
- "hour-range": Jt.value,
1206
- required: ""
1207
- }, null, 8, ["modelValue", "label", "hour-range"])
1208
- ]))
1209
- ], 2)) : w("", !0),
1210
- I(fn, {
1211
- modelValue: s(m),
1212
- "onUpdate:modelValue": P[3] || (P[3] = (V) => U(m) ? m.value = V : null),
1213
- title: s(g),
1214
- "onUpdate:title": P[4] || (P[4] = (V) => U(g) ? g.value = V : null),
1215
- "exclude-title": s(Mt),
1216
- label: s(e)("booking.reservation.name"),
1217
- icon: "user-alt",
1218
- placeholder: s(e)("booking.reservation.namePlaceholder"),
1219
- required: ""
1220
- }, null, 8, ["modelValue", "title", "exclude-title", "label", "placeholder"]),
1221
- I(te, {
1222
- modelValue: s(k),
1223
- "onUpdate:modelValue": P[5] || (P[5] = (V) => U(k) ? k.value = V : null),
1224
- type: "email",
1225
- name: "email",
1226
- autocomplete: "email",
1227
- label: s(e)("booking.reservation.email"),
1228
- icon: "at",
1229
- placeholder: s(e)("booking.reservation.emailPlaceholder"),
1230
- required: ""
1231
- }, null, 8, ["modelValue", "label", "placeholder"]),
1232
- s(Te) ? w("", !0) : (E(), A(We, {
1233
- key: 1,
1234
- modelValue: s(T),
1235
- "onUpdate:modelValue": P[6] || (P[6] = (V) => U(T) ? T.value = V : null),
1236
- type: "checkbox",
1237
- name: "newsletter",
1238
- label: s(e)("booking.reservation.newsletterSignUp")
1239
- }, null, 8, ["modelValue", "label"])),
1240
- s(zt) ? w("", !0) : (E(), A(te, {
1241
- key: 2,
1242
- modelValue: s(_),
1243
- "onUpdate:modelValue": P[7] || (P[7] = (V) => U(_) ? _.value = V : null),
1244
- type: "text",
1245
- name: "firm",
1246
- autocomplete: "firm",
1247
- label: `${s(e)("booking.reservation.companyName")} (${s(e)("booking.reservation.optional")})`,
1248
- icon: "id-card",
1249
- placeholder: s(e)("booking.reservation.companyNamePlaceholder")
1250
- }, null, 8, ["modelValue", "label", "placeholder"])),
1251
- I(Po, {
1252
- modelValue: s(l),
1253
- "onUpdate:modelValue": P[8] || (P[8] = (V) => U(l) ? l.value = V : null),
1254
- icon: "phone-office",
1255
- label: s(e)("booking.reservation.phone"),
1256
- placeholder: s(e)("booking.reservation.phonePlaceholder"),
1257
- required: ""
1258
- }, null, 8, ["modelValue", "label", "placeholder"]),
1259
- I(un, {
1260
- modelValue: s(p),
1261
- "onUpdate:modelValue": P[9] || (P[9] = (V) => U(p) ? p.value = V : null),
1262
- label: s(e)("booking.reservation.country"),
1263
- placeholder: s(e)("booking.reservation.countryPlaceholder"),
1264
- options: s(n),
1265
- required: ""
1266
- }, null, 8, ["modelValue", "label", "placeholder", "options"]),
1267
- I(te, {
1268
- modelValue: s(i),
1269
- "onUpdate:modelValue": P[10] || (P[10] = (V) => U(i) ? i.value = V : null),
1270
- type: "textarea",
1271
- name: "address",
1272
- autocomplete: "street-address",
1273
- label: s(e)("booking.reservation.streetAddress"),
1274
- icon: "map-marked",
1275
- placeholder: s(e)("booking.reservation.streetAddressPlaceholder"),
1276
- required: ""
1277
- }, null, 8, ["modelValue", "label", "placeholder"]),
1278
- v("ul", oi, [
1279
- v("li", null, [
1280
- I(te, {
1281
- modelValue: s(b),
1282
- "onUpdate:modelValue": P[11] || (P[11] = (V) => U(b) ? b.value = V : null),
1283
- type: "text",
1284
- name: "postal",
1285
- autocomplete: "postal-code",
1286
- label: s(e)("booking.reservation.postal"),
1287
- icon: "mailbox",
1288
- placeholder: s(e)("booking.reservation.postalPlaceholder"),
1289
- required: ""
1290
- }, null, 8, ["modelValue", "label", "placeholder"])
1291
- ]),
1292
- v("li", null, [
1293
- I(te, {
1294
- modelValue: s(f),
1295
- "onUpdate:modelValue": P[12] || (P[12] = (V) => U(f) ? f.value = V : null),
1296
- type: "text",
1297
- name: "city",
1298
- autocomplete: "address-level2",
1299
- label: s(e)("booking.reservation.city"),
1300
- icon: "city",
1301
- placeholder: s(e)("booking.reservation.cityPlaceholder"),
1302
- required: ""
1303
- }, null, 8, ["modelValue", "label", "placeholder"])
1304
- ])
1305
- ]),
1306
- I(te, {
1307
- modelValue: s(y),
1308
- "onUpdate:modelValue": P[13] || (P[13] = (V) => U(y) ? y.value = V : null),
1309
- type: "textarea",
1310
- label: `${s(e)("booking.reservation.remark")} (${s(e)("booking.reservation.optional")})`,
1311
- icon: "info-circle",
1312
- placeholder: s(e)("booking.reservation.remarkPlaceholder")
1313
- }, null, 8, ["modelValue", "label", "placeholder"]),
1314
- I(te, {
1315
- modelValue: s($),
1316
- "onUpdate:modelValue": P[14] || (P[14] = (V) => U($) ? $.value = V : null),
1317
- type: "textarea",
1318
- label: `${s(e)("booking.reservation.allergies")} (${s(e)("booking.reservation.optional")})`,
1319
- icon: "allergies",
1320
- placeholder: s(e)("booking.reservation.allergiesPlaceholder")
1321
- }, null, 8, ["modelValue", "label", "placeholder"]),
1322
- s(At) ? w("", !0) : (E(), A(pn, {
1323
- key: 3,
1324
- modelValue: s(c),
1325
- "onUpdate:modelValue": P[15] || (P[15] = (V) => U(c) ? c.value = V : null),
1326
- label: `${s(e)("booking.reservation.purposeOfStay")} (${s(e)("booking.reservation.optional")})`,
1327
- name: "travelingFor",
1328
- checkboxes: Yt.value
1329
- }, null, 8, ["modelValue", "label", "checkboxes"]))
1330
- ])
1331
- ]),
1332
- navigation: H(() => [
1333
- v("div", null, [
1334
- I(ue, {
1335
- label: s(Wt) ? s(e)("booking.reservation.nextButton") : s(e)("general.confirmReservation"),
1336
- disabled: !s(h),
1337
- "is-loading": s(r),
1338
- "full-width": "",
1339
- onClickEvent: (V) => Zt(j)
1340
- }, null, 8, ["label", "disabled", "is-loading", "onClickEvent"]),
1341
- v("button", {
1342
- class: "konnectio-abort-reservation link",
1343
- onClick: Ze((V) => Qe(R), ["prevent"])
1344
- }, [
1345
- v("span", null, x(s(e)("general.goAStepBack")), 1)
1346
- ], 8, ni)
1347
- ])
1348
- ]),
1349
- _: 2
1350
- }, 1024)
1351
- ]),
1352
- payment: H(() => [
1353
- I(wo)
1354
- ]),
1355
- confirmation: H(() => [
1356
- I(Co, {
1357
- message: s(e)("booking.confirmation.thankYou")
1358
- }, null, 8, ["message"])
1359
- ]),
1360
- _: 1
1361
- }, 8, ["layout", "onReset"])
1362
- ]),
1363
- _: 1
1364
- }, 8, ["access-token"])
1365
- ]),
1366
- fallback: H(() => [
1367
- I(Vn)
1368
- ]),
1369
- _: 1
1370
- }))
1371
- ]),
1372
- _: 1
1373
- }, 8, ["styling"]));
1374
- }
1375
- });
1376
- const ri = /* @__PURE__ */ Z(ii, [["__scopeId", "data-v-62335f79"]]);
1377
- var Et = { exports: {} }, Le = { exports: {} }, Pe = { exports: {} }, tt;
1378
- function Ge() {
1379
- return tt || (tt = 1, function(o) {
1380
- (function(e, t) {
1381
- o.exports ? o.exports = t() : e.EvEmitter = t();
1382
- })(typeof window < "u" ? window : bt, function() {
1383
- function e() {
1384
- }
1385
- var t = e.prototype;
1386
- return t.on = function(n, d) {
1387
- if (!(!n || !d)) {
1388
- var r = this._events = this._events || {}, h = r[n] = r[n] || [];
1389
- return h.indexOf(d) == -1 && h.push(d), this;
1390
- }
1391
- }, t.once = function(n, d) {
1392
- if (!(!n || !d)) {
1393
- this.on(n, d);
1394
- var r = this._onceEvents = this._onceEvents || {}, h = r[n] = r[n] || {};
1395
- return h[d] = !0, this;
1396
- }
1397
- }, t.off = function(n, d) {
1398
- var r = this._events && this._events[n];
1399
- if (!(!r || !r.length)) {
1400
- var h = r.indexOf(d);
1401
- return h != -1 && r.splice(h, 1), this;
1402
- }
1403
- }, t.emitEvent = function(n, d) {
1404
- var r = this._events && this._events[n];
1405
- if (!(!r || !r.length)) {
1406
- r = r.slice(0), d = d || [];
1407
- for (var h = this._onceEvents && this._onceEvents[n], c = 0; c < r.length; c++) {
1408
- var a = r[c], u = h && h[a];
1409
- u && (this.off(n, a), delete h[a]), a.apply(this, d);
1410
- }
1411
- return this;
1412
- }
1413
- }, t.allOff = function() {
1414
- delete this._events, delete this._onceEvents;
1415
- }, e;
1416
- });
1417
- }(Pe)), Pe.exports;
1418
- }
1419
- var we = { exports: {} };
1420
- /*!
1421
- * getSize v2.0.3
1422
- * measure size of elements
1423
- * MIT license
1424
- */
1425
- var ot;
1426
- function je() {
1427
- return ot || (ot = 1, function(o) {
1428
- (function(e, t) {
1429
- o.exports ? o.exports = t() : e.getSize = t();
1430
- })(window, function() {
1431
- function t(l) {
1432
- var _ = parseFloat(l), b = l.indexOf("%") == -1 && !isNaN(_);
1433
- return b && _;
1434
- }
1435
- function n() {
1436
- }
1437
- var d = typeof console > "u" ? n : function(l) {
1438
- console.error(l);
1439
- }, r = [
1440
- "paddingLeft",
1441
- "paddingRight",
1442
- "paddingTop",
1443
- "paddingBottom",
1444
- "marginLeft",
1445
- "marginRight",
1446
- "marginTop",
1447
- "marginBottom",
1448
- "borderLeftWidth",
1449
- "borderRightWidth",
1450
- "borderTopWidth",
1451
- "borderBottomWidth"
1452
- ], h = r.length;
1453
- function c() {
1454
- for (var l = {
1455
- width: 0,
1456
- height: 0,
1457
- innerWidth: 0,
1458
- innerHeight: 0,
1459
- outerWidth: 0,
1460
- outerHeight: 0
1461
- }, _ = 0; _ < h; _++) {
1462
- var b = r[_];
1463
- l[b] = 0;
1464
- }
1465
- return l;
1466
- }
1467
- function a(l) {
1468
- var _ = getComputedStyle(l);
1469
- return _ || d("Style returned " + _ + ". Are you running this code in a hidden iframe on Firefox? See https://bit.ly/getsizebug1"), _;
1470
- }
1471
- var u = !1, m;
1472
- function g() {
1473
- if (!u) {
1474
- u = !0;
1475
- var l = document.createElement("div");
1476
- l.style.width = "200px", l.style.padding = "1px 2px 3px 4px", l.style.borderStyle = "solid", l.style.borderWidth = "1px 2px 3px 4px", l.style.boxSizing = "border-box";
1477
- var _ = document.body || document.documentElement;
1478
- _.appendChild(l);
1479
- var b = a(l);
1480
- m = Math.round(t(b.width)) == 200, k.isBoxSizeOuter = m, _.removeChild(l);
1481
- }
1482
- }
1483
- function k(l) {
1484
- if (g(), typeof l == "string" && (l = document.querySelector(l)), !(!l || typeof l != "object" || !l.nodeType)) {
1485
- var _ = a(l);
1486
- if (_.display == "none")
1487
- return c();
1488
- var b = {};
1489
- b.width = l.offsetWidth, b.height = l.offsetHeight;
1490
- for (var f = b.isBorderBox = _.boxSizing == "border-box", i = 0; i < h; i++) {
1491
- var p = r[i], y = _[p], $ = parseFloat(y);
1492
- b[p] = isNaN($) ? 0 : $;
1493
- }
1494
- var T = b.paddingLeft + b.paddingRight, S = b.paddingTop + b.paddingBottom, L = b.marginLeft + b.marginRight, M = b.marginTop + b.marginBottom, O = b.borderLeftWidth + b.borderRightWidth, N = b.borderTopWidth + b.borderBottomWidth, B = f && m, K = t(_.width);
1495
- K !== !1 && (b.width = K + // add padding and border unless it's already including it
1496
- (B ? 0 : T + O));
1497
- var F = t(_.height);
1498
- return F !== !1 && (b.height = F + // add padding and border unless it's already including it
1499
- (B ? 0 : S + N)), b.innerWidth = b.width - (T + O), b.innerHeight = b.height - (S + N), b.outerWidth = b.width + L, b.outerHeight = b.height + M, b;
1500
- }
1501
- }
1502
- return k;
1503
- });
1504
- }(we)), we.exports;
1505
- }
1506
- var He = { exports: {} }, Oe = { exports: {} }, nt;
1507
- function si() {
1508
- return nt || (nt = 1, function(o) {
1509
- (function(e, t) {
1510
- o.exports ? o.exports = t() : e.matchesSelector = t();
1511
- })(window, function() {
1512
- var t = function() {
1513
- var n = window.Element.prototype;
1514
- if (n.matches)
1515
- return "matches";
1516
- if (n.matchesSelector)
1517
- return "matchesSelector";
1518
- for (var d = ["webkit", "moz", "ms", "o"], r = 0; r < d.length; r++) {
1519
- var h = d[r], c = h + "MatchesSelector";
1520
- if (n[c])
1521
- return c;
1522
- }
1523
- }();
1524
- return function(d, r) {
1525
- return d[t](r);
1526
- };
1527
- });
1528
- }(Oe)), Oe.exports;
1529
- }
1530
- var it;
1531
- function ai() {
1532
- return it || (it = 1, function(o) {
1533
- (function(e, t) {
1534
- o.exports ? o.exports = t(
1535
- e,
1536
- si()
1537
- ) : e.fizzyUIUtils = t(
1538
- e,
1539
- e.matchesSelector
1540
- );
1541
- })(window, function(t, n) {
1542
- var d = {};
1543
- d.extend = function(c, a) {
1544
- for (var u in a)
1545
- c[u] = a[u];
1546
- return c;
1547
- }, d.modulo = function(c, a) {
1548
- return (c % a + a) % a;
1549
- };
1550
- var r = Array.prototype.slice;
1551
- d.makeArray = function(c) {
1552
- if (Array.isArray(c))
1553
- return c;
1554
- if (c == null)
1555
- return [];
1556
- var a = typeof c == "object" && typeof c.length == "number";
1557
- return a ? r.call(c) : [c];
1558
- }, d.removeFrom = function(c, a) {
1559
- var u = c.indexOf(a);
1560
- u != -1 && c.splice(u, 1);
1561
- }, d.getParent = function(c, a) {
1562
- for (; c.parentNode && c != document.body; )
1563
- if (c = c.parentNode, n(c, a))
1564
- return c;
1565
- }, d.getQueryElement = function(c) {
1566
- return typeof c == "string" ? document.querySelector(c) : c;
1567
- }, d.handleEvent = function(c) {
1568
- var a = "on" + c.type;
1569
- this[a] && this[a](c);
1570
- }, d.filterFindElements = function(c, a) {
1571
- c = d.makeArray(c);
1572
- var u = [];
1573
- return c.forEach(function(m) {
1574
- if (m instanceof HTMLElement) {
1575
- if (!a) {
1576
- u.push(m);
1577
- return;
1578
- }
1579
- n(m, a) && u.push(m);
1580
- for (var g = m.querySelectorAll(a), k = 0; k < g.length; k++)
1581
- u.push(g[k]);
1582
- }
1583
- }), u;
1584
- }, d.debounceMethod = function(c, a, u) {
1585
- u = u || 100;
1586
- var m = c.prototype[a], g = a + "Timeout";
1587
- c.prototype[a] = function() {
1588
- var k = this[g];
1589
- clearTimeout(k);
1590
- var l = arguments, _ = this;
1591
- this[g] = setTimeout(function() {
1592
- m.apply(_, l), delete _[g];
1593
- }, u);
1594
- };
1595
- }, d.docReady = function(c) {
1596
- var a = document.readyState;
1597
- a == "complete" || a == "interactive" ? setTimeout(c) : document.addEventListener("DOMContentLoaded", c);
1598
- }, d.toDashed = function(c) {
1599
- return c.replace(/(.)([A-Z])/g, function(a, u, m) {
1600
- return u + "-" + m;
1601
- }).toLowerCase();
1602
- };
1603
- var h = t.console;
1604
- return d.htmlInit = function(c, a) {
1605
- d.docReady(function() {
1606
- var u = d.toDashed(a), m = "data-" + u, g = document.querySelectorAll("[" + m + "]"), k = document.querySelectorAll(".js-" + u), l = d.makeArray(g).concat(d.makeArray(k)), _ = m + "-options", b = t.jQuery;
1607
- l.forEach(function(f) {
1608
- var i = f.getAttribute(m) || f.getAttribute(_), p;
1609
- try {
1610
- p = i && JSON.parse(i);
1611
- } catch ($) {
1612
- h && h.error("Error parsing " + m + " on " + f.className + ": " + $);
1613
- return;
1614
- }
1615
- var y = new c(f, p);
1616
- b && b.data(f, a, y);
1617
- });
1618
- });
1619
- }, d;
1620
- });
1621
- }(He)), He.exports;
1622
- }
1623
- var De = { exports: {} }, rt;
1624
- function li() {
1625
- return rt || (rt = 1, function(o) {
1626
- (function(e, t) {
1627
- o.exports ? o.exports = t(
1628
- Ge(),
1629
- je()
1630
- ) : (e.Outlayer = {}, e.Outlayer.Item = t(
1631
- e.EvEmitter,
1632
- e.getSize
1633
- ));
1634
- })(window, function(t, n) {
1635
- function d(f) {
1636
- for (var i in f)
1637
- return !1;
1638
- return i = null, !0;
1639
- }
1640
- var r = document.documentElement.style, h = typeof r.transition == "string" ? "transition" : "WebkitTransition", c = typeof r.transform == "string" ? "transform" : "WebkitTransform", a = {
1641
- WebkitTransition: "webkitTransitionEnd",
1642
- transition: "transitionend"
1643
- }[h], u = {
1644
- transform: c,
1645
- transition: h,
1646
- transitionDuration: h + "Duration",
1647
- transitionProperty: h + "Property",
1648
- transitionDelay: h + "Delay"
1649
- };
1650
- function m(f, i) {
1651
- f && (this.element = f, this.layout = i, this.position = {
1652
- x: 0,
1653
- y: 0
1654
- }, this._create());
1655
- }
1656
- var g = m.prototype = Object.create(t.prototype);
1657
- g.constructor = m, g._create = function() {
1658
- this._transn = {
1659
- ingProperties: {},
1660
- clean: {},
1661
- onEnd: {}
1662
- }, this.css({
1663
- position: "absolute"
1664
- });
1665
- }, g.handleEvent = function(f) {
1666
- var i = "on" + f.type;
1667
- this[i] && this[i](f);
1668
- }, g.getSize = function() {
1669
- this.size = n(this.element);
1670
- }, g.css = function(f) {
1671
- var i = this.element.style;
1672
- for (var p in f) {
1673
- var y = u[p] || p;
1674
- i[y] = f[p];
1675
- }
1676
- }, g.getPosition = function() {
1677
- var f = getComputedStyle(this.element), i = this.layout._getOption("originLeft"), p = this.layout._getOption("originTop"), y = f[i ? "left" : "right"], $ = f[p ? "top" : "bottom"], T = parseFloat(y), S = parseFloat($), L = this.layout.size;
1678
- y.indexOf("%") != -1 && (T = T / 100 * L.width), $.indexOf("%") != -1 && (S = S / 100 * L.height), T = isNaN(T) ? 0 : T, S = isNaN(S) ? 0 : S, T -= i ? L.paddingLeft : L.paddingRight, S -= p ? L.paddingTop : L.paddingBottom, this.position.x = T, this.position.y = S;
1679
- }, g.layoutPosition = function() {
1680
- var f = this.layout.size, i = {}, p = this.layout._getOption("originLeft"), y = this.layout._getOption("originTop"), $ = p ? "paddingLeft" : "paddingRight", T = p ? "left" : "right", S = p ? "right" : "left", L = this.position.x + f[$];
1681
- i[T] = this.getXValue(L), i[S] = "";
1682
- var M = y ? "paddingTop" : "paddingBottom", O = y ? "top" : "bottom", N = y ? "bottom" : "top", B = this.position.y + f[M];
1683
- i[O] = this.getYValue(B), i[N] = "", this.css(i), this.emitEvent("layout", [this]);
1684
- }, g.getXValue = function(f) {
1685
- var i = this.layout._getOption("horizontal");
1686
- return this.layout.options.percentPosition && !i ? f / this.layout.size.width * 100 + "%" : f + "px";
1687
- }, g.getYValue = function(f) {
1688
- var i = this.layout._getOption("horizontal");
1689
- return this.layout.options.percentPosition && i ? f / this.layout.size.height * 100 + "%" : f + "px";
1690
- }, g._transitionTo = function(f, i) {
1691
- this.getPosition();
1692
- var p = this.position.x, y = this.position.y, $ = f == this.position.x && i == this.position.y;
1693
- if (this.setPosition(f, i), $ && !this.isTransitioning) {
1694
- this.layoutPosition();
1695
- return;
1696
- }
1697
- var T = f - p, S = i - y, L = {};
1698
- L.transform = this.getTranslate(T, S), this.transition({
1699
- to: L,
1700
- onTransitionEnd: {
1701
- transform: this.layoutPosition
1702
- },
1703
- isCleaning: !0
1704
- });
1705
- }, g.getTranslate = function(f, i) {
1706
- var p = this.layout._getOption("originLeft"), y = this.layout._getOption("originTop");
1707
- return f = p ? f : -f, i = y ? i : -i, "translate3d(" + f + "px, " + i + "px, 0)";
1708
- }, g.goTo = function(f, i) {
1709
- this.setPosition(f, i), this.layoutPosition();
1710
- }, g.moveTo = g._transitionTo, g.setPosition = function(f, i) {
1711
- this.position.x = parseFloat(f), this.position.y = parseFloat(i);
1712
- }, g._nonTransition = function(f) {
1713
- this.css(f.to), f.isCleaning && this._removeStyles(f.to);
1714
- for (var i in f.onTransitionEnd)
1715
- f.onTransitionEnd[i].call(this);
1716
- }, g.transition = function(f) {
1717
- if (!parseFloat(this.layout.options.transitionDuration)) {
1718
- this._nonTransition(f);
1719
- return;
1720
- }
1721
- var i = this._transn;
1722
- for (var p in f.onTransitionEnd)
1723
- i.onEnd[p] = f.onTransitionEnd[p];
1724
- for (p in f.to)
1725
- i.ingProperties[p] = !0, f.isCleaning && (i.clean[p] = !0);
1726
- f.from && (this.css(f.from), this.element.offsetHeight), this.enableTransition(f.to), this.css(f.to), this.isTransitioning = !0;
1727
- };
1728
- function k(f) {
1729
- return f.replace(/([A-Z])/g, function(i) {
1730
- return "-" + i.toLowerCase();
1731
- });
1732
- }
1733
- var l = "opacity," + k(c);
1734
- g.enableTransition = function() {
1735
- if (!this.isTransitioning) {
1736
- var f = this.layout.options.transitionDuration;
1737
- f = typeof f == "number" ? f + "ms" : f, this.css({
1738
- transitionProperty: l,
1739
- transitionDuration: f,
1740
- transitionDelay: this.staggerDelay || 0
1741
- }), this.element.addEventListener(a, this, !1);
1742
- }
1743
- }, g.onwebkitTransitionEnd = function(f) {
1744
- this.ontransitionend(f);
1745
- }, g.onotransitionend = function(f) {
1746
- this.ontransitionend(f);
1747
- };
1748
- var _ = {
1749
- "-webkit-transform": "transform"
1750
- };
1751
- g.ontransitionend = function(f) {
1752
- if (f.target === this.element) {
1753
- var i = this._transn, p = _[f.propertyName] || f.propertyName;
1754
- if (delete i.ingProperties[p], d(i.ingProperties) && this.disableTransition(), p in i.clean && (this.element.style[f.propertyName] = "", delete i.clean[p]), p in i.onEnd) {
1755
- var y = i.onEnd[p];
1756
- y.call(this), delete i.onEnd[p];
1757
- }
1758
- this.emitEvent("transitionEnd", [this]);
1759
- }
1760
- }, g.disableTransition = function() {
1761
- this.removeTransitionStyles(), this.element.removeEventListener(a, this, !1), this.isTransitioning = !1;
1762
- }, g._removeStyles = function(f) {
1763
- var i = {};
1764
- for (var p in f)
1765
- i[p] = "";
1766
- this.css(i);
1767
- };
1768
- var b = {
1769
- transitionProperty: "",
1770
- transitionDuration: "",
1771
- transitionDelay: ""
1772
- };
1773
- return g.removeTransitionStyles = function() {
1774
- this.css(b);
1775
- }, g.stagger = function(f) {
1776
- f = isNaN(f) ? 0 : f, this.staggerDelay = f + "ms";
1777
- }, g.removeElem = function() {
1778
- this.element.parentNode.removeChild(this.element), this.css({ display: "" }), this.emitEvent("remove", [this]);
1779
- }, g.remove = function() {
1780
- if (!h || !parseFloat(this.layout.options.transitionDuration)) {
1781
- this.removeElem();
1782
- return;
1783
- }
1784
- this.once("transitionEnd", function() {
1785
- this.removeElem();
1786
- }), this.hide();
1787
- }, g.reveal = function() {
1788
- delete this.isHidden, this.css({ display: "" });
1789
- var f = this.layout.options, i = {}, p = this.getHideRevealTransitionEndProperty("visibleStyle");
1790
- i[p] = this.onRevealTransitionEnd, this.transition({
1791
- from: f.hiddenStyle,
1792
- to: f.visibleStyle,
1793
- isCleaning: !0,
1794
- onTransitionEnd: i
1795
- });
1796
- }, g.onRevealTransitionEnd = function() {
1797
- this.isHidden || this.emitEvent("reveal");
1798
- }, g.getHideRevealTransitionEndProperty = function(f) {
1799
- var i = this.layout.options[f];
1800
- if (i.opacity)
1801
- return "opacity";
1802
- for (var p in i)
1803
- return p;
1804
- }, g.hide = function() {
1805
- this.isHidden = !0, this.css({ display: "" });
1806
- var f = this.layout.options, i = {}, p = this.getHideRevealTransitionEndProperty("hiddenStyle");
1807
- i[p] = this.onHideTransitionEnd, this.transition({
1808
- from: f.visibleStyle,
1809
- to: f.hiddenStyle,
1810
- // keep hidden stuff hidden
1811
- isCleaning: !0,
1812
- onTransitionEnd: i
1813
- });
1814
- }, g.onHideTransitionEnd = function() {
1815
- this.isHidden && (this.css({ display: "none" }), this.emitEvent("hide"));
1816
- }, g.destroy = function() {
1817
- this.css({
1818
- position: "",
1819
- left: "",
1820
- right: "",
1821
- top: "",
1822
- bottom: "",
1823
- transition: "",
1824
- transform: ""
1825
- });
1826
- }, m;
1827
- });
1828
- }(De)), De.exports;
1829
- }
1830
- /*!
1831
- * Outlayer v2.1.1
1832
- * the brains and guts of a layout library
1833
- * MIT license
1834
- */
1835
- var st;
1836
- function ui() {
1837
- return st || (st = 1, function(o) {
1838
- (function(e, t) {
1839
- o.exports ? o.exports = t(
1840
- e,
1841
- Ge(),
1842
- je(),
1843
- ai(),
1844
- li()
1845
- ) : e.Outlayer = t(
1846
- e,
1847
- e.EvEmitter,
1848
- e.getSize,
1849
- e.fizzyUIUtils,
1850
- e.Outlayer.Item
1851
- );
1852
- })(window, function(t, n, d, r, h) {
1853
- var c = t.console, a = t.jQuery, u = function() {
1854
- }, m = 0, g = {};
1855
- function k(i, p) {
1856
- var y = r.getQueryElement(i);
1857
- if (!y) {
1858
- c && c.error("Bad element for " + this.constructor.namespace + ": " + (y || i));
1859
- return;
1860
- }
1861
- this.element = y, a && (this.$element = a(this.element)), this.options = r.extend({}, this.constructor.defaults), this.option(p);
1862
- var $ = ++m;
1863
- this.element.outlayerGUID = $, g[$] = this, this._create();
1864
- var T = this._getOption("initLayout");
1865
- T && this.layout();
1866
- }
1867
- k.namespace = "outlayer", k.Item = h, k.defaults = {
1868
- containerStyle: {
1869
- position: "relative"
1870
- },
1871
- initLayout: !0,
1872
- originLeft: !0,
1873
- originTop: !0,
1874
- resize: !0,
1875
- resizeContainer: !0,
1876
- // item options
1877
- transitionDuration: "0.4s",
1878
- hiddenStyle: {
1879
- opacity: 0,
1880
- transform: "scale(0.001)"
1881
- },
1882
- visibleStyle: {
1883
- opacity: 1,
1884
- transform: "scale(1)"
1885
- }
1886
- };
1887
- var l = k.prototype;
1888
- r.extend(l, n.prototype), l.option = function(i) {
1889
- r.extend(this.options, i);
1890
- }, l._getOption = function(i) {
1891
- var p = this.constructor.compatOptions[i];
1892
- return p && this.options[p] !== void 0 ? this.options[p] : this.options[i];
1893
- }, k.compatOptions = {
1894
- // currentName: oldName
1895
- initLayout: "isInitLayout",
1896
- horizontal: "isHorizontal",
1897
- layoutInstant: "isLayoutInstant",
1898
- originLeft: "isOriginLeft",
1899
- originTop: "isOriginTop",
1900
- resize: "isResizeBound",
1901
- resizeContainer: "isResizingContainer"
1902
- }, l._create = function() {
1903
- this.reloadItems(), this.stamps = [], this.stamp(this.options.stamp), r.extend(this.element.style, this.options.containerStyle);
1904
- var i = this._getOption("resize");
1905
- i && this.bindResize();
1906
- }, l.reloadItems = function() {
1907
- this.items = this._itemize(this.element.children);
1908
- }, l._itemize = function(i) {
1909
- for (var p = this._filterFindItemElements(i), y = this.constructor.Item, $ = [], T = 0; T < p.length; T++) {
1910
- var S = p[T], L = new y(S, this);
1911
- $.push(L);
1912
- }
1913
- return $;
1914
- }, l._filterFindItemElements = function(i) {
1915
- return r.filterFindElements(i, this.options.itemSelector);
1916
- }, l.getItemElements = function() {
1917
- return this.items.map(function(i) {
1918
- return i.element;
1919
- });
1920
- }, l.layout = function() {
1921
- this._resetLayout(), this._manageStamps();
1922
- var i = this._getOption("layoutInstant"), p = i !== void 0 ? i : !this._isLayoutInited;
1923
- this.layoutItems(this.items, p), this._isLayoutInited = !0;
1924
- }, l._init = l.layout, l._resetLayout = function() {
1925
- this.getSize();
1926
- }, l.getSize = function() {
1927
- this.size = d(this.element);
1928
- }, l._getMeasurement = function(i, p) {
1929
- var y = this.options[i], $;
1930
- y ? (typeof y == "string" ? $ = this.element.querySelector(y) : y instanceof HTMLElement && ($ = y), this[i] = $ ? d($)[p] : y) : this[i] = 0;
1931
- }, l.layoutItems = function(i, p) {
1932
- i = this._getItemsForLayout(i), this._layoutItems(i, p), this._postLayout();
1933
- }, l._getItemsForLayout = function(i) {
1934
- return i.filter(function(p) {
1935
- return !p.isIgnored;
1936
- });
1937
- }, l._layoutItems = function(i, p) {
1938
- if (this._emitCompleteOnItems("layout", i), !(!i || !i.length)) {
1939
- var y = [];
1940
- i.forEach(function($) {
1941
- var T = this._getItemLayoutPosition($);
1942
- T.item = $, T.isInstant = p || $.isLayoutInstant, y.push(T);
1943
- }, this), this._processLayoutQueue(y);
1944
- }
1945
- }, l._getItemLayoutPosition = function() {
1946
- return {
1947
- x: 0,
1948
- y: 0
1949
- };
1950
- }, l._processLayoutQueue = function(i) {
1951
- this.updateStagger(), i.forEach(function(p, y) {
1952
- this._positionItem(p.item, p.x, p.y, p.isInstant, y);
1953
- }, this);
1954
- }, l.updateStagger = function() {
1955
- var i = this.options.stagger;
1956
- if (i == null) {
1957
- this.stagger = 0;
1958
- return;
1959
- }
1960
- return this.stagger = f(i), this.stagger;
1961
- }, l._positionItem = function(i, p, y, $, T) {
1962
- $ ? i.goTo(p, y) : (i.stagger(T * this.stagger), i.moveTo(p, y));
1963
- }, l._postLayout = function() {
1964
- this.resizeContainer();
1965
- }, l.resizeContainer = function() {
1966
- var i = this._getOption("resizeContainer");
1967
- if (i) {
1968
- var p = this._getContainerSize();
1969
- p && (this._setContainerMeasure(p.width, !0), this._setContainerMeasure(p.height, !1));
1970
- }
1971
- }, l._getContainerSize = u, l._setContainerMeasure = function(i, p) {
1972
- if (i !== void 0) {
1973
- var y = this.size;
1974
- y.isBorderBox && (i += p ? y.paddingLeft + y.paddingRight + y.borderLeftWidth + y.borderRightWidth : y.paddingBottom + y.paddingTop + y.borderTopWidth + y.borderBottomWidth), i = Math.max(i, 0), this.element.style[p ? "width" : "height"] = i + "px";
1975
- }
1976
- }, l._emitCompleteOnItems = function(i, p) {
1977
- var y = this;
1978
- function $() {
1979
- y.dispatchEvent(i + "Complete", null, [p]);
1980
- }
1981
- var T = p.length;
1982
- if (!p || !T) {
1983
- $();
1984
- return;
1985
- }
1986
- var S = 0;
1987
- function L() {
1988
- S++, S == T && $();
1989
- }
1990
- p.forEach(function(M) {
1991
- M.once(i, L);
1992
- });
1993
- }, l.dispatchEvent = function(i, p, y) {
1994
- var $ = p ? [p].concat(y) : y;
1995
- if (this.emitEvent(i, $), a)
1996
- if (this.$element = this.$element || a(this.element), p) {
1997
- var T = a.Event(p);
1998
- T.type = i, this.$element.trigger(T, y);
1999
- } else
2000
- this.$element.trigger(i, y);
2001
- }, l.ignore = function(i) {
2002
- var p = this.getItem(i);
2003
- p && (p.isIgnored = !0);
2004
- }, l.unignore = function(i) {
2005
- var p = this.getItem(i);
2006
- p && delete p.isIgnored;
2007
- }, l.stamp = function(i) {
2008
- i = this._find(i), i && (this.stamps = this.stamps.concat(i), i.forEach(this.ignore, this));
2009
- }, l.unstamp = function(i) {
2010
- i = this._find(i), i && i.forEach(function(p) {
2011
- r.removeFrom(this.stamps, p), this.unignore(p);
2012
- }, this);
2013
- }, l._find = function(i) {
2014
- if (i)
2015
- return typeof i == "string" && (i = this.element.querySelectorAll(i)), i = r.makeArray(i), i;
2016
- }, l._manageStamps = function() {
2017
- !this.stamps || !this.stamps.length || (this._getBoundingRect(), this.stamps.forEach(this._manageStamp, this));
2018
- }, l._getBoundingRect = function() {
2019
- var i = this.element.getBoundingClientRect(), p = this.size;
2020
- this._boundingRect = {
2021
- left: i.left + p.paddingLeft + p.borderLeftWidth,
2022
- top: i.top + p.paddingTop + p.borderTopWidth,
2023
- right: i.right - (p.paddingRight + p.borderRightWidth),
2024
- bottom: i.bottom - (p.paddingBottom + p.borderBottomWidth)
2025
- };
2026
- }, l._manageStamp = u, l._getElementOffset = function(i) {
2027
- var p = i.getBoundingClientRect(), y = this._boundingRect, $ = d(i), T = {
2028
- left: p.left - y.left - $.marginLeft,
2029
- top: p.top - y.top - $.marginTop,
2030
- right: y.right - p.right - $.marginRight,
2031
- bottom: y.bottom - p.bottom - $.marginBottom
2032
- };
2033
- return T;
2034
- }, l.handleEvent = r.handleEvent, l.bindResize = function() {
2035
- t.addEventListener("resize", this), this.isResizeBound = !0;
2036
- }, l.unbindResize = function() {
2037
- t.removeEventListener("resize", this), this.isResizeBound = !1;
2038
- }, l.onresize = function() {
2039
- this.resize();
2040
- }, r.debounceMethod(k, "onresize", 100), l.resize = function() {
2041
- !this.isResizeBound || !this.needsResizeLayout() || this.layout();
2042
- }, l.needsResizeLayout = function() {
2043
- var i = d(this.element), p = this.size && i;
2044
- return p && i.innerWidth !== this.size.innerWidth;
2045
- }, l.addItems = function(i) {
2046
- var p = this._itemize(i);
2047
- return p.length && (this.items = this.items.concat(p)), p;
2048
- }, l.appended = function(i) {
2049
- var p = this.addItems(i);
2050
- p.length && (this.layoutItems(p, !0), this.reveal(p));
2051
- }, l.prepended = function(i) {
2052
- var p = this._itemize(i);
2053
- if (p.length) {
2054
- var y = this.items.slice(0);
2055
- this.items = p.concat(y), this._resetLayout(), this._manageStamps(), this.layoutItems(p, !0), this.reveal(p), this.layoutItems(y);
2056
- }
2057
- }, l.reveal = function(i) {
2058
- if (this._emitCompleteOnItems("reveal", i), !(!i || !i.length)) {
2059
- var p = this.updateStagger();
2060
- i.forEach(function(y, $) {
2061
- y.stagger($ * p), y.reveal();
2062
- });
2063
- }
2064
- }, l.hide = function(i) {
2065
- if (this._emitCompleteOnItems("hide", i), !(!i || !i.length)) {
2066
- var p = this.updateStagger();
2067
- i.forEach(function(y, $) {
2068
- y.stagger($ * p), y.hide();
2069
- });
2070
- }
2071
- }, l.revealItemElements = function(i) {
2072
- var p = this.getItems(i);
2073
- this.reveal(p);
2074
- }, l.hideItemElements = function(i) {
2075
- var p = this.getItems(i);
2076
- this.hide(p);
2077
- }, l.getItem = function(i) {
2078
- for (var p = 0; p < this.items.length; p++) {
2079
- var y = this.items[p];
2080
- if (y.element == i)
2081
- return y;
2082
- }
2083
- }, l.getItems = function(i) {
2084
- i = r.makeArray(i);
2085
- var p = [];
2086
- return i.forEach(function(y) {
2087
- var $ = this.getItem(y);
2088
- $ && p.push($);
2089
- }, this), p;
2090
- }, l.remove = function(i) {
2091
- var p = this.getItems(i);
2092
- this._emitCompleteOnItems("remove", p), !(!p || !p.length) && p.forEach(function(y) {
2093
- y.remove(), r.removeFrom(this.items, y);
2094
- }, this);
2095
- }, l.destroy = function() {
2096
- var i = this.element.style;
2097
- i.height = "", i.position = "", i.width = "", this.items.forEach(function(y) {
2098
- y.destroy();
2099
- }), this.unbindResize();
2100
- var p = this.element.outlayerGUID;
2101
- delete g[p], delete this.element.outlayerGUID, a && a.removeData(this.element, this.constructor.namespace);
2102
- }, k.data = function(i) {
2103
- i = r.getQueryElement(i);
2104
- var p = i && i.outlayerGUID;
2105
- return p && g[p];
2106
- }, k.create = function(i, p) {
2107
- var y = _(k);
2108
- return y.defaults = r.extend({}, k.defaults), r.extend(y.defaults, p), y.compatOptions = r.extend({}, k.compatOptions), y.namespace = i, y.data = k.data, y.Item = _(h), r.htmlInit(y, i), a && a.bridget && a.bridget(i, y), y;
2109
- };
2110
- function _(i) {
2111
- function p() {
2112
- i.apply(this, arguments);
2113
- }
2114
- return p.prototype = Object.create(i.prototype), p.prototype.constructor = p, p;
2115
- }
2116
- var b = {
2117
- ms: 1,
2118
- s: 1e3
2119
- };
2120
- function f(i) {
2121
- if (typeof i == "number")
2122
- return i;
2123
- var p = i.match(/(^\d*\.?\d*)(\w*)/), y = p && p[1], $ = p && p[2];
2124
- if (!y.length)
2125
- return 0;
2126
- y = parseFloat(y);
2127
- var T = b[$] || 1;
2128
- return y * T;
2129
- }
2130
- return k.Item = h, k;
2131
- });
2132
- }(Le)), Le.exports;
2133
- }
2134
- /*!
2135
- * Masonry v4.2.2
2136
- * Cascading grid layout library
2137
- * https://masonry.desandro.com
2138
- * MIT License
2139
- * by David DeSandro
2140
- */
2141
- (function(o) {
2142
- (function(e, t) {
2143
- o.exports ? o.exports = t(
2144
- ui(),
2145
- je()
2146
- ) : e.Masonry = t(
2147
- e.Outlayer,
2148
- e.getSize
2149
- );
2150
- })(window, function(t, n) {
2151
- var d = t.create("masonry");
2152
- d.compatOptions.fitWidth = "isFitWidth";
2153
- var r = d.prototype;
2154
- return r._resetLayout = function() {
2155
- this.getSize(), this._getMeasurement("columnWidth", "outerWidth"), this._getMeasurement("gutter", "outerWidth"), this.measureColumns(), this.colYs = [];
2156
- for (var h = 0; h < this.cols; h++)
2157
- this.colYs.push(0);
2158
- this.maxY = 0, this.horizontalColIndex = 0;
2159
- }, r.measureColumns = function() {
2160
- if (this.getContainerWidth(), !this.columnWidth) {
2161
- var h = this.items[0], c = h && h.element;
2162
- this.columnWidth = c && n(c).outerWidth || // if first elem has no width, default to size of container
2163
- this.containerWidth;
2164
- }
2165
- var a = this.columnWidth += this.gutter, u = this.containerWidth + this.gutter, m = u / a, g = a - u % a, k = g && g < 1 ? "round" : "floor";
2166
- m = Math[k](m), this.cols = Math.max(m, 1);
2167
- }, r.getContainerWidth = function() {
2168
- var h = this._getOption("fitWidth"), c = h ? this.element.parentNode : this.element, a = n(c);
2169
- this.containerWidth = a && a.innerWidth;
2170
- }, r._getItemLayoutPosition = function(h) {
2171
- h.getSize();
2172
- var c = h.size.outerWidth % this.columnWidth, a = c && c < 1 ? "round" : "ceil", u = Math[a](h.size.outerWidth / this.columnWidth);
2173
- u = Math.min(u, this.cols);
2174
- for (var m = this.options.horizontalOrder ? "_getHorizontalColPosition" : "_getTopColPosition", g = this[m](u, h), k = {
2175
- x: this.columnWidth * g.col,
2176
- y: g.y
2177
- }, l = g.y + h.size.outerHeight, _ = u + g.col, b = g.col; b < _; b++)
2178
- this.colYs[b] = l;
2179
- return k;
2180
- }, r._getTopColPosition = function(h) {
2181
- var c = this._getTopColGroup(h), a = Math.min.apply(Math, c);
2182
- return {
2183
- col: c.indexOf(a),
2184
- y: a
2185
- };
2186
- }, r._getTopColGroup = function(h) {
2187
- if (h < 2)
2188
- return this.colYs;
2189
- for (var c = [], a = this.cols + 1 - h, u = 0; u < a; u++)
2190
- c[u] = this._getColGroupY(u, h);
2191
- return c;
2192
- }, r._getColGroupY = function(h, c) {
2193
- if (c < 2)
2194
- return this.colYs[h];
2195
- var a = this.colYs.slice(h, h + c);
2196
- return Math.max.apply(Math, a);
2197
- }, r._getHorizontalColPosition = function(h, c) {
2198
- var a = this.horizontalColIndex % this.cols, u = h > 1 && a + h > this.cols;
2199
- a = u ? 0 : a;
2200
- var m = c.size.outerWidth && c.size.outerHeight;
2201
- return this.horizontalColIndex = m ? a + h : this.horizontalColIndex, {
2202
- col: a,
2203
- y: this._getColGroupY(a, h)
2204
- };
2205
- }, r._manageStamp = function(h) {
2206
- var c = n(h), a = this._getElementOffset(h), u = this._getOption("originLeft"), m = u ? a.left : a.right, g = m + c.outerWidth, k = Math.floor(m / this.columnWidth);
2207
- k = Math.max(0, k);
2208
- var l = Math.floor(g / this.columnWidth);
2209
- l -= g % this.columnWidth ? 0 : 1, l = Math.min(this.cols - 1, l);
2210
- for (var _ = this._getOption("originTop"), b = (_ ? a.top : a.bottom) + c.outerHeight, f = k; f <= l; f++)
2211
- this.colYs[f] = Math.max(b, this.colYs[f]);
2212
- }, r._getContainerSize = function() {
2213
- this.maxY = Math.max.apply(Math, this.colYs);
2214
- var h = {
2215
- height: this.maxY
2216
- };
2217
- return this._getOption("fitWidth") && (h.width = this._getContainerFitWidth()), h;
2218
- }, r._getContainerFitWidth = function() {
2219
- for (var h = 0, c = this.cols; --c && this.colYs[c] === 0; )
2220
- h++;
2221
- return (this.cols - h) * this.columnWidth - this.gutter;
2222
- }, r.needsResizeLayout = function() {
2223
- var h = this.containerWidth;
2224
- return this.getContainerWidth(), h != this.containerWidth;
2225
- }, d;
2226
- });
2227
- })(Et);
2228
- var di = Et.exports;
2229
- const at = /* @__PURE__ */ kt(di);
2230
- var Tt = { exports: {} };
2231
- /*!
2232
- * imagesLoaded v4.1.4
2233
- * JavaScript is all like "You images are done yet or what?"
2234
- * MIT License
2235
- */
2236
- (function(o) {
2237
- (function(e, t) {
2238
- o.exports ? o.exports = t(
2239
- e,
2240
- Ge()
2241
- ) : e.imagesLoaded = t(
2242
- e,
2243
- e.EvEmitter
2244
- );
2245
- })(
2246
- typeof window < "u" ? window : bt,
2247
- // -------------------------- factory -------------------------- //
2248
- function(t, n) {
2249
- var d = t.jQuery, r = t.console;
2250
- function h(l, _) {
2251
- for (var b in _)
2252
- l[b] = _[b];
2253
- return l;
2254
- }
2255
- var c = Array.prototype.slice;
2256
- function a(l) {
2257
- if (Array.isArray(l))
2258
- return l;
2259
- var _ = typeof l == "object" && typeof l.length == "number";
2260
- return _ ? c.call(l) : [l];
2261
- }
2262
- function u(l, _, b) {
2263
- if (!(this instanceof u))
2264
- return new u(l, _, b);
2265
- var f = l;
2266
- if (typeof l == "string" && (f = document.querySelectorAll(l)), !f) {
2267
- r.error("Bad element for imagesLoaded " + (f || l));
2268
- return;
2269
- }
2270
- this.elements = a(f), this.options = h({}, this.options), typeof _ == "function" ? b = _ : h(this.options, _), b && this.on("always", b), this.getImages(), d && (this.jqDeferred = new d.Deferred()), setTimeout(this.check.bind(this));
2271
- }
2272
- u.prototype = Object.create(n.prototype), u.prototype.options = {}, u.prototype.getImages = function() {
2273
- this.images = [], this.elements.forEach(this.addElementImages, this);
2274
- }, u.prototype.addElementImages = function(l) {
2275
- l.nodeName == "IMG" && this.addImage(l), this.options.background === !0 && this.addElementBackgroundImages(l);
2276
- var _ = l.nodeType;
2277
- if (!(!_ || !m[_])) {
2278
- for (var b = l.querySelectorAll("img"), f = 0; f < b.length; f++) {
2279
- var i = b[f];
2280
- this.addImage(i);
2281
- }
2282
- if (typeof this.options.background == "string") {
2283
- var p = l.querySelectorAll(this.options.background);
2284
- for (f = 0; f < p.length; f++) {
2285
- var y = p[f];
2286
- this.addElementBackgroundImages(y);
2287
- }
2288
- }
2289
- }
2290
- };
2291
- var m = {
2292
- 1: !0,
2293
- 9: !0,
2294
- 11: !0
2295
- };
2296
- u.prototype.addElementBackgroundImages = function(l) {
2297
- var _ = getComputedStyle(l);
2298
- if (_)
2299
- for (var b = /url\((['"])?(.*?)\1\)/gi, f = b.exec(_.backgroundImage); f !== null; ) {
2300
- var i = f && f[2];
2301
- i && this.addBackground(i, l), f = b.exec(_.backgroundImage);
2302
- }
2303
- }, u.prototype.addImage = function(l) {
2304
- var _ = new g(l);
2305
- this.images.push(_);
2306
- }, u.prototype.addBackground = function(l, _) {
2307
- var b = new k(l, _);
2308
- this.images.push(b);
2309
- }, u.prototype.check = function() {
2310
- var l = this;
2311
- if (this.progressedCount = 0, this.hasAnyBroken = !1, !this.images.length) {
2312
- this.complete();
2313
- return;
2314
- }
2315
- function _(b, f, i) {
2316
- setTimeout(function() {
2317
- l.progress(b, f, i);
2318
- });
2319
- }
2320
- this.images.forEach(function(b) {
2321
- b.once("progress", _), b.check();
2322
- });
2323
- }, u.prototype.progress = function(l, _, b) {
2324
- this.progressedCount++, this.hasAnyBroken = this.hasAnyBroken || !l.isLoaded, this.emitEvent("progress", [this, l, _]), this.jqDeferred && this.jqDeferred.notify && this.jqDeferred.notify(this, l), this.progressedCount == this.images.length && this.complete(), this.options.debug && r && r.log("progress: " + b, l, _);
2325
- }, u.prototype.complete = function() {
2326
- var l = this.hasAnyBroken ? "fail" : "done";
2327
- if (this.isComplete = !0, this.emitEvent(l, [this]), this.emitEvent("always", [this]), this.jqDeferred) {
2328
- var _ = this.hasAnyBroken ? "reject" : "resolve";
2329
- this.jqDeferred[_](this);
2330
- }
2331
- };
2332
- function g(l) {
2333
- this.img = l;
2334
- }
2335
- g.prototype = Object.create(n.prototype), g.prototype.check = function() {
2336
- var l = this.getIsImageComplete();
2337
- if (l) {
2338
- this.confirm(this.img.naturalWidth !== 0, "naturalWidth");
2339
- return;
2340
- }
2341
- 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;
2342
- }, g.prototype.getIsImageComplete = function() {
2343
- return this.img.complete && this.img.naturalWidth;
2344
- }, g.prototype.confirm = function(l, _) {
2345
- this.isLoaded = l, this.emitEvent("progress", [this, this.img, _]);
2346
- }, g.prototype.handleEvent = function(l) {
2347
- var _ = "on" + l.type;
2348
- this[_] && this[_](l);
2349
- }, g.prototype.onload = function() {
2350
- this.confirm(!0, "onload"), this.unbindEvents();
2351
- }, g.prototype.onerror = function() {
2352
- this.confirm(!1, "onerror"), this.unbindEvents();
2353
- }, g.prototype.unbindEvents = function() {
2354
- this.proxyImage.removeEventListener("load", this), this.proxyImage.removeEventListener("error", this), this.img.removeEventListener("load", this), this.img.removeEventListener("error", this);
2355
- };
2356
- function k(l, _) {
2357
- this.url = l, this.element = _, this.img = new Image();
2358
- }
2359
- return k.prototype = Object.create(g.prototype), k.prototype.check = function() {
2360
- this.img.addEventListener("load", this), this.img.addEventListener("error", this), this.img.src = this.url;
2361
- var l = this.getIsImageComplete();
2362
- l && (this.confirm(this.img.naturalWidth !== 0, "naturalWidth"), this.unbindEvents());
2363
- }, k.prototype.unbindEvents = function() {
2364
- this.img.removeEventListener("load", this), this.img.removeEventListener("error", this);
2365
- }, k.prototype.confirm = function(l, _) {
2366
- this.isLoaded = l, this.emitEvent("progress", [this, this.element, _]);
2367
- }, u.makeJQueryPlugin = function(l) {
2368
- l = l || t.jQuery, l && (d = l, d.fn.imagesLoaded = function(_, b) {
2369
- var f = new u(this, _, b);
2370
- return f.jqDeferred.promise(d(this));
2371
- });
2372
- }, u.makeJQueryPlugin(), u;
2373
- }
2374
- );
2375
- })(Tt);
2376
- var ci = Tt.exports;
2377
- const pi = /* @__PURE__ */ kt(ci);
2378
- function hi(o) {
2379
- return { all: o = o || /* @__PURE__ */ new Map(), on: function(e, t) {
2380
- var n = o.get(e);
2381
- n ? n.push(t) : o.set(e, [t]);
2382
- }, off: function(e, t) {
2383
- var n = o.get(e);
2384
- n && (t ? n.splice(n.indexOf(t) >>> 0, 1) : o.set(e, []));
2385
- }, emit: function(e, t) {
2386
- var n = o.get(e);
2387
- n && n.slice().map(function(d) {
2388
- d(t);
2389
- }), (n = o.get("*")) && n.slice().map(function(d) {
2390
- d(e, t);
2391
- });
2392
- } };
2393
- }
2394
- const me = {
2395
- "column-width": "columnWidth",
2396
- "transition-duration": "transitionDuration",
2397
- "item-selector": "itemSelector",
2398
- "origin-left": "originLeft",
2399
- "origin-top": "originTop",
2400
- "fit-width": "fitWidth",
2401
- stamp: "stamp",
2402
- gutter: "gutter",
2403
- "percent-position": "percentPosition",
2404
- "horizontal-order": "horizontalOrder",
2405
- stagger: "stagger",
2406
- "destroy-delay": "destroyDelay"
2407
- }, ge = "vuemasonry.itemAdded", Re = "vuemasonry.itemRemoved", Me = "vuemasonry.imageLoaded", Ae = "vuemasonry.destroy", fi = function(o) {
2408
- return (o + "").toLowerCase() === "true";
2409
- }, mi = function(o) {
2410
- return isNaN(o) ? o : parseInt(o);
2411
- }, gi = function(o) {
2412
- const e = {};
2413
- return Array.prototype.slice.call(o).forEach(function(n) {
2414
- Object.keys(me).indexOf(n.name) > -1 && (n.name.indexOf("origin") > -1 ? e[me[n.name]] = fi(n.value) : n.name === "column-width" || n.name === "gutter" ? e[me[n.name]] = mi(n.value) : e[me[n.name]] = n.value);
2415
- }), e;
2416
- }, It = {};
2417
- It.install = function(o, e) {
2418
- const t = hi(), n = "VueMasonry", d = o;
2419
- d.directive("masonry", {
2420
- props: ["transitionDuration", " itemSelector", "destroyDelay"],
2421
- mounted: function(r, h) {
2422
- if (!at)
2423
- throw new Error("Masonry plugin is not defined. Please check it's connected and parsed correctly.");
2424
- const c = gi(r.attributes), a = new at(r, c), u = h.value || n, m = c.destroyDelay ? parseInt(c.destroyDelay, 10) : void 0, g = function() {
2425
- a.reloadItems(), a.layout();
2426
- };
2427
- yt(() => {
2428
- g();
2429
- });
2430
- const k = function(_) {
2431
- g();
2432
- }, l = function(_) {
2433
- t["off"](`${ge}__${u}`, k), t["off"](`${Re}__${u}`, k), t["off"](`${Me}__${u}`, k), t["off"](`${Ae}__${u}`, l);
2434
- const b = m && !Number.isNaN(m) ? m : 0;
2435
- setTimeout(function() {
2436
- a.destroy();
2437
- }, b);
2438
- };
2439
- t["on"](`${ge}__${u}`, k), t["on"](`${Re}__${u}`, k), t["on"](`${Me}__${u}`, k), t["on"](`${Ae}__${u}`, l);
2440
- },
2441
- unbind: function(r, h) {
2442
- const c = h.value || n;
2443
- t["emit"](`${Ae}__${c}`);
2444
- }
2445
- }), d.directive("masonryTile", {
2446
- mounted: function(r, h) {
2447
- const c = h.value || n;
2448
- t["emit"](`${ge}__${c}`, {
2449
- element: r
2450
- }), new pi(r, function() {
2451
- t["emit"](`${Me}__${c}`, {
2452
- element: r
2453
- });
2454
- });
2455
- },
2456
- unbind: function(r, h) {
2457
- const c = h.value || n;
2458
- t["emit"](`${Re}__${c}`, {
2459
- element: r
2460
- });
2461
- }
2462
- });
2463
- {
2464
- const r = function(h) {
2465
- const c = h || n;
2466
- t["emit"](`${ge}__${c}`);
2467
- };
2468
- o.config.globalProperties.$redrawVueMasonry = r, o.provide("redrawVueMasonry", r);
2469
- }
2470
- };
2471
- function Fe(o, e = {}, t) {
2472
- for (const n in o) {
2473
- const d = o[n], r = t ? `${t}:${n}` : n;
2474
- typeof d == "object" && d !== null ? Fe(d, e, r) : typeof d == "function" && (e[r] = d);
2475
- }
2476
- return e;
2477
- }
2478
- const vi = { run: (o) => o() }, yi = () => vi, Ct = typeof console.createTask < "u" ? console.createTask : yi;
2479
- function _i(o, e) {
2480
- const t = e.shift(), n = Ct(t);
2481
- return o.reduce(
2482
- (d, r) => d.then(() => n.run(() => r(...e))),
2483
- Promise.resolve()
2484
- );
2485
- }
2486
- function bi(o, e) {
2487
- const t = e.shift(), n = Ct(t);
2488
- return Promise.all(o.map((d) => n.run(() => d(...e))));
2489
- }
2490
- function Be(o, e) {
2491
- for (const t of [...o])
2492
- t(e);
2493
- }
2494
- class ki {
2495
- constructor() {
2496
- this._hooks = {}, this._before = void 0, this._after = void 0, this._deprecatedMessages = void 0, this._deprecatedHooks = {}, this.hook = this.hook.bind(this), this.callHook = this.callHook.bind(this), this.callHookWith = this.callHookWith.bind(this);
2497
- }
2498
- hook(e, t, n = {}) {
2499
- if (!e || typeof t != "function")
2500
- return () => {
2501
- };
2502
- const d = e;
2503
- let r;
2504
- for (; this._deprecatedHooks[e]; )
2505
- r = this._deprecatedHooks[e], e = r.to;
2506
- if (r && !n.allowDeprecated) {
2507
- let h = r.message;
2508
- h || (h = `${d} hook has been deprecated` + (r.to ? `, please use ${r.to}` : "")), this._deprecatedMessages || (this._deprecatedMessages = /* @__PURE__ */ new Set()), this._deprecatedMessages.has(h) || (console.warn(h), this._deprecatedMessages.add(h));
2509
- }
2510
- if (!t.name)
2511
- try {
2512
- Object.defineProperty(t, "name", {
2513
- get: () => "_" + e.replace(/\W+/g, "_") + "_hook_cb",
2514
- configurable: !0
2515
- });
2516
- } catch {
2517
- }
2518
- return this._hooks[e] = this._hooks[e] || [], this._hooks[e].push(t), () => {
2519
- t && (this.removeHook(e, t), t = void 0);
2520
- };
2521
- }
2522
- hookOnce(e, t) {
2523
- let n, d = (...r) => (typeof n == "function" && n(), n = void 0, d = void 0, t(...r));
2524
- return n = this.hook(e, d), n;
2525
- }
2526
- removeHook(e, t) {
2527
- if (this._hooks[e]) {
2528
- const n = this._hooks[e].indexOf(t);
2529
- n !== -1 && this._hooks[e].splice(n, 1), this._hooks[e].length === 0 && delete this._hooks[e];
2530
- }
2531
- }
2532
- deprecateHook(e, t) {
2533
- this._deprecatedHooks[e] = typeof t == "string" ? { to: t } : t;
2534
- const n = this._hooks[e] || [];
2535
- delete this._hooks[e];
2536
- for (const d of n)
2537
- this.hook(e, d);
2538
- }
2539
- deprecateHooks(e) {
2540
- Object.assign(this._deprecatedHooks, e);
2541
- for (const t in e)
2542
- this.deprecateHook(t, e[t]);
2543
- }
2544
- addHooks(e) {
2545
- const t = Fe(e), n = Object.keys(t).map(
2546
- (d) => this.hook(d, t[d])
2547
- );
2548
- return () => {
2549
- for (const d of n.splice(0, n.length))
2550
- d();
2551
- };
2552
- }
2553
- removeHooks(e) {
2554
- const t = Fe(e);
2555
- for (const n in t)
2556
- this.removeHook(n, t[n]);
2557
- }
2558
- removeAllHooks() {
2559
- for (const e in this._hooks)
2560
- delete this._hooks[e];
2561
- }
2562
- callHook(e, ...t) {
2563
- return t.unshift(e), this.callHookWith(_i, e, ...t);
2564
- }
2565
- callHookParallel(e, ...t) {
2566
- return t.unshift(e), this.callHookWith(bi, e, ...t);
2567
- }
2568
- callHookWith(e, t, ...n) {
2569
- const d = this._before || this._after ? { name: t, args: n, context: {} } : void 0;
2570
- this._before && Be(this._before, d);
2571
- const r = e(
2572
- t in this._hooks ? [...this._hooks[t]] : [],
2573
- n
2574
- );
2575
- return r instanceof Promise ? r.finally(() => {
2576
- this._after && d && Be(this._after, d);
2577
- }) : (this._after && d && Be(this._after, d), r);
2578
- }
2579
- beforeEach(e) {
2580
- return this._before = this._before || [], this._before.push(e), () => {
2581
- if (this._before !== void 0) {
2582
- const t = this._before.indexOf(e);
2583
- t !== -1 && this._before.splice(t, 1);
2584
- }
2585
- };
2586
- }
2587
- afterEach(e) {
2588
- return this._after = this._after || [], this._after.push(e), () => {
2589
- if (this._after !== void 0) {
2590
- const t = this._after.indexOf(e);
2591
- t !== -1 && this._after.splice(t, 1);
2592
- }
2593
- };
2594
- }
2595
- }
2596
- function Ei() {
2597
- return new ki();
2598
- }
2599
- function Ti(o) {
2600
- return Array.isArray(o) ? o : [o];
2601
- }
2602
- const Ii = ["title", "titleTemplate", "script", "style", "noscript"], ve = [
2603
- "base",
2604
- "meta",
2605
- "link",
2606
- "style",
2607
- "script",
2608
- "noscript"
2609
- ], Ci = [
2610
- "title",
2611
- "titleTemplate",
2612
- "templateParams",
2613
- "base",
2614
- "htmlAttrs",
2615
- "bodyAttrs",
2616
- "meta",
2617
- "link",
2618
- "style",
2619
- "script",
2620
- "noscript"
2621
- ], $i = ["base", "title", "titleTemplate", "bodyAttrs", "htmlAttrs", "templateParams"], $t = ["tagPosition", "tagPriority", "tagDuplicateStrategy", "children", "innerHTML", "textContent", "processTemplateParams"], Si = typeof window < "u";
2622
- function Ye(o) {
2623
- let e = 9;
2624
- for (let t = 0; t < o.length; )
2625
- e = Math.imul(e ^ o.charCodeAt(t++), 9 ** 9);
2626
- return ((e ^ e >>> 9) + 65536).toString(16).substring(1, 8).toLowerCase();
2627
- }
2628
- function lt(o) {
2629
- return o._h || Ye(o._d ? o._d : `${o.tag}:${o.textContent || o.innerHTML || ""}:${Object.entries(o.props).map(([e, t]) => `${e}:${String(t)}`).join(",")}`);
2630
- }
2631
- function St(o, e) {
2632
- const { props: t, tag: n } = o;
2633
- if ($i.includes(n))
2634
- return n;
2635
- if (n === "link" && t.rel === "canonical")
2636
- return "canonical";
2637
- if (t.charset)
2638
- return "charset";
2639
- const d = ["id"];
2640
- n === "meta" && d.push("name", "property", "http-equiv");
2641
- for (const r of d)
2642
- if (typeof t[r] < "u") {
2643
- const h = String(t[r]);
2644
- return e && !e(h) ? !1 : `${n}:${r}:${h}`;
2645
- }
2646
- return !1;
2647
- }
2648
- function ut(o, e) {
2649
- return o == null ? e || null : typeof o == "function" ? o(e) : o;
2650
- }
2651
- async function Vi(o, e, t) {
2652
- const n = {
2653
- tag: o,
2654
- props: await Vt(
2655
- // explicitly check for an object
2656
- // @ts-expect-error untyped
2657
- typeof e == "object" && typeof e != "function" && !(e instanceof Promise) ? { ...e } : { [["script", "noscript", "style"].includes(o) ? "innerHTML" : "textContent"]: e },
2658
- ["templateParams", "titleTemplate"].includes(o)
2659
- )
2660
- };
2661
- return $t.forEach((d) => {
2662
- const r = typeof n.props[d] < "u" ? n.props[d] : t[d];
2663
- typeof r < "u" && ((!["innerHTML", "textContent", "children"].includes(d) || Ii.includes(n.tag)) && (n[d === "children" ? "innerHTML" : d] = r), delete n.props[d]);
2664
- }), n.props.body && (n.tagPosition = "bodyClose", delete n.props.body), n.tag === "script" && typeof n.innerHTML == "object" && (n.innerHTML = JSON.stringify(n.innerHTML), n.props.type = n.props.type || "application/json"), Array.isArray(n.props.content) ? n.props.content.map((d) => ({ ...n, props: { ...n.props, content: d } })) : n;
2665
- }
2666
- function xi(o) {
2667
- return typeof o == "object" && !Array.isArray(o) && (o = Object.keys(o).filter((e) => o[e])), (Array.isArray(o) ? o.join(" ") : o).split(" ").filter((e) => e.trim()).filter(Boolean).join(" ");
2668
- }
2669
- async function Vt(o, e) {
2670
- for (const t of Object.keys(o)) {
2671
- if (t === "class") {
2672
- o[t] = xi(o[t]);
2673
- continue;
2674
- }
2675
- if (o[t] instanceof Promise && (o[t] = await o[t]), !e && !$t.includes(t)) {
2676
- const n = String(o[t]), d = t.startsWith("data-");
2677
- n === "true" || n === "" ? o[t] = d ? "true" : !0 : o[t] || (d && n === "false" ? o[t] = "false" : delete o[t]);
2678
- }
2679
- }
2680
- return o;
2681
- }
2682
- const Li = 10;
2683
- async function Pi(o) {
2684
- const e = [];
2685
- return Object.entries(o.resolvedInput).filter(([t, n]) => typeof n < "u" && Ci.includes(t)).forEach(([t, n]) => {
2686
- const d = Ti(n);
2687
- e.push(...d.map((r) => Vi(t, r, o)).flat());
2688
- }), (await Promise.all(e)).flat().filter(Boolean).map((t, n) => (t._e = o._i, o.mode && (t._m = o.mode), t._p = (o._i << Li) + n, t));
2689
- }
2690
- const dt = {
2691
- // tags
2692
- base: -10,
2693
- title: 10
2694
- }, ct = {
2695
- // relative scores to their default values
2696
- critical: -80,
2697
- high: -10,
2698
- low: 20
2699
- };
2700
- function ke(o) {
2701
- let e = 100;
2702
- const t = o.tagPriority;
2703
- return typeof t == "number" ? t : (o.tag === "meta" ? (o.props["http-equiv"] === "content-security-policy" && (e = -30), o.props.charset && (e = -20), o.props.name === "viewport" && (e = -15)) : o.tag === "link" && o.props.rel === "preconnect" ? e = 20 : o.tag in dt && (e = dt[o.tag]), typeof t == "string" && t in ct ? e + ct[t] : e);
2704
- }
2705
- const wi = [{ prefix: "before:", offset: -1 }, { prefix: "after:", offset: 1 }], xt = ["onload", "onerror", "onabort", "onprogress", "onloadstart"], ee = "%separator";
2706
- function ye(o, e, t) {
2707
- if (typeof o != "string" || !o.includes("%"))
2708
- return o;
2709
- function n(h) {
2710
- let c;
2711
- return ["s", "pageTitle"].includes(h) ? c = e.pageTitle : h.includes(".") ? c = h.split(".").reduce((a, u) => a && a[u] || void 0, e) : c = e[h], typeof c < "u" ? (c || "").replace(/"/g, '\\"') : !1;
2712
- }
2713
- let d = o;
2714
- try {
2715
- d = decodeURI(o);
2716
- } catch {
2717
- }
2718
- return (d.match(/%(\w+\.+\w+)|%(\w+)/g) || []).sort().reverse().forEach((h) => {
2719
- const c = n(h.slice(1));
2720
- typeof c == "string" && (o = o.replace(new RegExp(`\\${h}(\\W|$)`, "g"), (a, u) => `${c}${u}`).trim());
2721
- }), o.includes(ee) && (o.endsWith(ee) && (o = o.slice(0, -ee.length).trim()), o.startsWith(ee) && (o = o.slice(ee.length).trim()), o = o.replace(new RegExp(`\\${ee}\\s*\\${ee}`, "g"), ee), o = ye(o, { separator: t }, t)), o;
2722
- }
2723
- async function Hi(o) {
2724
- const e = {
2725
- tag: o.tagName.toLowerCase(),
2726
- props: await Vt(
2727
- o.getAttributeNames().reduce((t, n) => ({ ...t, [n]: o.getAttribute(n) }), {})
2728
- ),
2729
- innerHTML: o.innerHTML
2730
- };
2731
- return e._d = St(e), e;
2732
- }
2733
- async function Oi(o, e = {}) {
2734
- const t = e.document || o.resolvedOptions.document;
2735
- if (!t)
2736
- return;
2737
- const n = { shouldRender: o.dirty, tags: [] };
2738
- if (await o.hooks.callHook("dom:beforeRender", n), !n.shouldRender)
2739
- return;
2740
- const d = (await o.resolveTags()).map((m) => ({
2741
- tag: m,
2742
- id: ve.includes(m.tag) ? lt(m) : m.tag,
2743
- shouldRender: !0
2744
- }));
2745
- let r = o._dom;
2746
- if (!r) {
2747
- r = {
2748
- elMap: { htmlAttrs: t.documentElement, bodyAttrs: t.body }
2749
- };
2750
- for (const m of ["body", "head"]) {
2751
- const g = t?.[m]?.children;
2752
- for (const k of [...g].filter((l) => ve.includes(l.tagName.toLowerCase())))
2753
- r.elMap[k.getAttribute("data-hid") || lt(await Hi(k))] = k;
2754
- }
2755
- }
2756
- r.pendingSideEffects = { ...r.sideEffects || {} }, r.sideEffects = {};
2757
- function h(m, g, k) {
2758
- const l = `${m}:${g}`;
2759
- r.sideEffects[l] = k, delete r.pendingSideEffects[l];
2760
- }
2761
- function c({ id: m, $el: g, tag: k }) {
2762
- const l = k.tag.endsWith("Attrs");
2763
- r.elMap[m] = g, l || (["textContent", "innerHTML"].forEach((_) => {
2764
- k[_] && k[_] !== g[_] && (g[_] = k[_]);
2765
- }), h(m, "el", () => {
2766
- r.elMap[m].remove(), delete r.elMap[m];
2767
- })), Object.entries(k.props).forEach(([_, b]) => {
2768
- const f = `attr:${_}`;
2769
- if (_ === "class")
2770
- for (const i of (b || "").split(" ").filter(Boolean))
2771
- l && h(m, `${f}:${i}`, () => g.classList.remove(i)), !g.classList.contains(i) && g.classList.add(i);
2772
- else
2773
- g.getAttribute(_) !== b && g.setAttribute(_, b === !0 ? "" : String(b)), l && h(m, f, () => g.removeAttribute(_));
2774
- });
2775
- }
2776
- const a = [], u = {
2777
- bodyClose: void 0,
2778
- bodyOpen: void 0,
2779
- head: void 0
2780
- };
2781
- for (const m of d) {
2782
- const { tag: g, shouldRender: k, id: l } = m;
2783
- if (k) {
2784
- if (g.tag === "title") {
2785
- t.title = g.textContent;
2786
- continue;
2787
- }
2788
- m.$el = m.$el || r.elMap[l], m.$el ? c(m) : ve.includes(g.tag) && a.push(m);
2789
- }
2790
- }
2791
- for (const m of a) {
2792
- const g = m.tag.tagPosition || "head";
2793
- m.$el = t.createElement(m.tag.tag), c(m), u[g] = u[g] || t.createDocumentFragment(), u[g].appendChild(m.$el);
2794
- }
2795
- for (const m of d)
2796
- await o.hooks.callHook("dom:renderTag", m, t, h);
2797
- u.head && t.head.appendChild(u.head), u.bodyOpen && t.body.insertBefore(u.bodyOpen, t.body.firstChild), u.bodyClose && t.body.appendChild(u.bodyClose), Object.values(r.pendingSideEffects).forEach((m) => m()), o._dom = r, o.dirty = !1, await o.hooks.callHook("dom:rendered", { renders: d });
2798
- }
2799
- async function Di(o, e = {}) {
2800
- const t = e.delayFn || ((n) => setTimeout(n, 10));
2801
- return o._domUpdatePromise = o._domUpdatePromise || new Promise((n) => t(async () => {
2802
- await Oi(o, e), delete o._domUpdatePromise, n();
2803
- }));
2804
- }
2805
- // @__NO_SIDE_EFFECTS__
2806
- function Ri(o) {
2807
- return (e) => {
2808
- const t = e.resolvedOptions.document?.head.querySelector('script[id="unhead:payload"]')?.innerHTML || !1;
2809
- return t && e.push(JSON.parse(t)), {
2810
- mode: "client",
2811
- hooks: {
2812
- "entries:updated": function(n) {
2813
- Di(n, o);
2814
- }
2815
- }
2816
- };
2817
- };
2818
- }
2819
- const Mi = ["templateParams", "htmlAttrs", "bodyAttrs"], Ai = {
2820
- hooks: {
2821
- "tag:normalise": function({ tag: o }) {
2822
- ["hid", "vmid", "key"].forEach((n) => {
2823
- o.props[n] && (o.key = o.props[n], delete o.props[n]);
2824
- });
2825
- const t = St(o) || (o.key ? `${o.tag}:${o.key}` : !1);
2826
- t && (o._d = t);
2827
- },
2828
- "tags:resolve": function(o) {
2829
- const e = {};
2830
- o.tags.forEach((n) => {
2831
- const d = (n.key ? `${n.tag}:${n.key}` : n._d) || n._p, r = e[d];
2832
- if (r) {
2833
- let c = n?.tagDuplicateStrategy;
2834
- if (!c && Mi.includes(n.tag) && (c = "merge"), c === "merge") {
2835
- const a = r.props;
2836
- ["class", "style"].forEach((u) => {
2837
- a[u] && (n.props[u] ? (u === "style" && !a[u].endsWith(";") && (a[u] += ";"), n.props[u] = `${a[u]} ${n.props[u]}`) : n.props[u] = a[u]);
2838
- }), e[d].props = {
2839
- ...a,
2840
- ...n.props
2841
- };
2842
- return;
2843
- } else if (n._e === r._e) {
2844
- r._duped = r._duped || [], n._d = `${r._d}:${r._duped.length + 1}`, r._duped.push(n);
2845
- return;
2846
- } else if (ke(n) > ke(r))
2847
- return;
2848
- }
2849
- const h = Object.keys(n.props).length + (n.innerHTML ? 1 : 0) + (n.textContent ? 1 : 0);
2850
- if (ve.includes(n.tag) && h === 0) {
2851
- delete e[d];
2852
- return;
2853
- }
2854
- e[d] = n;
2855
- });
2856
- const t = [];
2857
- Object.values(e).forEach((n) => {
2858
- const d = n._duped;
2859
- delete n._duped, t.push(n), d && t.push(...d);
2860
- }), o.tags = t, o.tags = o.tags.filter((n) => !(n.tag === "meta" && (n.props.name || n.props.property) && !n.props.content));
2861
- }
2862
- }
2863
- }, Bi = {
2864
- mode: "server",
2865
- hooks: {
2866
- "tags:resolve": function(o) {
2867
- const e = {};
2868
- o.tags.filter((t) => ["titleTemplate", "templateParams", "title"].includes(t.tag) && t._m === "server").forEach((t) => {
2869
- e[t.tag] = t.tag.startsWith("title") ? t.textContent : t.props;
2870
- }), Object.keys(e).length && o.tags.push({
2871
- tag: "script",
2872
- innerHTML: JSON.stringify(e),
2873
- props: { id: "unhead:payload", type: "application/json" }
2874
- });
2875
- }
2876
- }
2877
- }, zi = ["script", "link", "bodyAttrs"];
2878
- function Wi(o) {
2879
- const e = {}, t = {};
2880
- return Object.entries(o.props).forEach(([n, d]) => {
2881
- n.startsWith("on") && typeof d == "function" ? (xt.includes(n) && (e[n] = `this.dataset.${n} = true`), t[n] = d) : e[n] = d;
2882
- }), { props: e, eventHandlers: t };
2883
- }
2884
- const Fi = (o) => ({
2885
- hooks: {
2886
- "tags:resolve": function(e) {
2887
- for (const t of e.tags)
2888
- if (zi.includes(t.tag)) {
2889
- const { props: n, eventHandlers: d } = Wi(t);
2890
- t.props = n, Object.keys(d).length && ((t.props.src || t.props.href) && (t.key = t.key || Ye(t.props.src || t.props.href)), t._eventHandlers = d);
2891
- }
2892
- },
2893
- "dom:renderTag": function(e, t, n) {
2894
- if (!e.tag._eventHandlers)
2895
- return;
2896
- const d = e.tag.tag === "bodyAttrs" ? t.defaultView : e.$el;
2897
- Object.entries(e.tag._eventHandlers).forEach(([r, h]) => {
2898
- const c = `${e.tag._d || e.tag._p}:${r}`, a = r.slice(2).toLowerCase(), u = `data-h-${a}`;
2899
- if (n(e.id, c, () => {
2900
- }), e.$el.hasAttribute(u))
2901
- return;
2902
- e.$el.setAttribute(u, "");
2903
- let m;
2904
- const g = (k) => {
2905
- h(k), m?.disconnect();
2906
- };
2907
- r in e.$el.dataset ? g(new Event(r.replace("on", ""))) : xt.includes(r) && typeof MutationObserver < "u" ? (m = new MutationObserver((k) => {
2908
- k.some((_) => _.attributeName === `data-${r}`) && (g(new Event(r.replace("on", ""))), m?.disconnect());
2909
- }), m.observe(e.$el, {
2910
- attributes: !0
2911
- })) : d.addEventListener(a, g), n(e.id, c, () => {
2912
- m?.disconnect(), d.removeEventListener(a, g), e.$el.removeAttribute(u);
2913
- });
2914
- });
2915
- }
2916
- }
2917
- }), Ni = ["link", "style", "script", "noscript"], qi = {
2918
- hooks: {
2919
- "tag:normalise": ({ tag: o }) => {
2920
- o.key && Ni.includes(o.tag) && (o.props["data-hid"] = o._h = Ye(o.key));
2921
- }
2922
- }
2923
- }, Ui = {
2924
- hooks: {
2925
- "tags:resolve": (o) => {
2926
- const e = (t) => o.tags.find((n) => n._d === t)?._p;
2927
- for (const { prefix: t, offset: n } of wi)
2928
- for (const d of o.tags.filter((r) => typeof r.tagPriority == "string" && r.tagPriority.startsWith(t))) {
2929
- const r = e(
2930
- d.tagPriority.replace(t, "")
2931
- );
2932
- typeof r < "u" && (d._p = r + n);
2933
- }
2934
- o.tags.sort((t, n) => t._p - n._p).sort((t, n) => ke(t) - ke(n));
2935
- }
2936
- }
2937
- }, Gi = {
2938
- meta: "content",
2939
- link: "href",
2940
- htmlAttrs: "lang"
2941
- }, ji = (o) => ({
2942
- hooks: {
2943
- "tags:resolve": (e) => {
2944
- const { tags: t } = e, n = t.find((c) => c.tag === "title")?.textContent, d = t.findIndex((c) => c.tag === "templateParams"), r = d !== -1 ? t[d].props : {}, h = r.separator || "|";
2945
- delete r.separator, r.pageTitle = ye(r.pageTitle || n || "", r, h);
2946
- for (const c of t.filter((a) => a.processTemplateParams !== !1)) {
2947
- const a = Gi[c.tag];
2948
- a && typeof c.props[a] == "string" ? c.props[a] = ye(c.props[a], r, h) : (c.processTemplateParams === !0 || ["titleTemplate", "title"].includes(c.tag)) && ["innerHTML", "textContent"].forEach((u) => {
2949
- typeof c[u] == "string" && (c[u] = ye(c[u], r, h));
2950
- });
2951
- }
2952
- o._templateParams = r, o._separator = h, e.tags = t.filter((c) => c.tag !== "templateParams");
2953
- }
2954
- }
2955
- }), Yi = {
2956
- hooks: {
2957
- "tags:resolve": (o) => {
2958
- const { tags: e } = o;
2959
- let t = e.findIndex((d) => d.tag === "titleTemplate");
2960
- const n = e.findIndex((d) => d.tag === "title");
2961
- if (n !== -1 && t !== -1) {
2962
- const d = ut(
2963
- e[t].textContent,
2964
- e[n].textContent
2965
- );
2966
- d !== null ? e[n].textContent = d || e[n].textContent : delete e[n];
2967
- } else if (t !== -1) {
2968
- const d = ut(
2969
- e[t].textContent
2970
- );
2971
- d !== null && (e[t].textContent = d, e[t].tag = "title", t = -1);
2972
- }
2973
- t !== -1 && delete e[t], o.tags = e.filter(Boolean);
2974
- }
2975
- }
2976
- }, Ki = {
2977
- hooks: {
2978
- "tags:afterResolve": function(o) {
2979
- for (const e of o.tags)
2980
- typeof e.innerHTML == "string" && (e.innerHTML && ["application/ld+json", "application/json"].includes(e.props.type) ? e.innerHTML = e.innerHTML.replace(/</g, "\\u003C") : e.innerHTML = e.innerHTML.replace(new RegExp(`</${e.tag}`, "g"), `<\\/${e.tag}`));
2981
- }
2982
- }
2983
- };
2984
- // @__NO_SIDE_EFFECTS__
2985
- function Qi(o = {}) {
2986
- const e = Ji(o);
2987
- return e.use(/* @__PURE__ */ Ri()), e;
2988
- }
2989
- function pt(o, e) {
2990
- return !o || o === "server" && e || o === "client" && !e;
2991
- }
2992
- function Ji(o = {}) {
2993
- const e = Ei();
2994
- e.addHooks(o.hooks || {}), o.document = o.document || (Si ? document : void 0);
2995
- const t = !o.document, n = () => {
2996
- c.dirty = !0, e.callHook("entries:updated", c);
2997
- };
2998
- let d = 0, r = [];
2999
- const h = [], c = {
3000
- plugins: h,
3001
- dirty: !1,
3002
- resolvedOptions: o,
3003
- hooks: e,
3004
- headEntries() {
3005
- return r;
3006
- },
3007
- use(a) {
3008
- const u = typeof a == "function" ? a(c) : a;
3009
- (!u.key || !h.some((m) => m.key === u.key)) && (h.push(u), pt(u.mode, t) && e.addHooks(u.hooks || {}));
3010
- },
3011
- push(a, u) {
3012
- delete u?.head;
3013
- const m = {
3014
- _i: d++,
3015
- input: a,
3016
- ...u
3017
- };
3018
- return pt(m.mode, t) && (r.push(m), n()), {
3019
- dispose() {
3020
- r = r.filter((g) => g._i !== m._i), e.callHook("entries:updated", c), n();
3021
- },
3022
- // a patch is the same as creating a new entry, just a nice DX
3023
- patch(g) {
3024
- r = r.map((k) => (k._i === m._i && (k.input = m.input = g), k)), n();
3025
- }
3026
- };
3027
- },
3028
- async resolveTags() {
3029
- const a = { tags: [], entries: [...r] };
3030
- await e.callHook("entries:resolve", a);
3031
- for (const u of a.entries) {
3032
- const m = u.resolvedInput || u.input;
3033
- if (u.resolvedInput = await (u.transform ? u.transform(m) : m), u.resolvedInput)
3034
- for (const g of await Pi(u)) {
3035
- const k = { tag: g, entry: u, resolvedOptions: c.resolvedOptions };
3036
- await e.callHook("tag:normalise", k), a.tags.push(k.tag);
3037
- }
3038
- }
3039
- return await e.callHook("tags:beforeResolve", a), await e.callHook("tags:resolve", a), await e.callHook("tags:afterResolve", a), a.tags;
3040
- },
3041
- ssr: t
3042
- };
3043
- return [
3044
- Ai,
3045
- Bi,
3046
- Fi,
3047
- qi,
3048
- Ui,
3049
- ji,
3050
- Yi,
3051
- Ki,
3052
- ...o?.plugins || []
3053
- ].forEach((a) => c.use(a)), c.hooks.callHook("init", c), c;
3054
- }
3055
- const Xi = go.startsWith("3");
3056
- function Zi(o) {
3057
- return typeof o == "function" ? o() : s(o);
3058
- }
3059
- function Ne(o, e = "") {
3060
- if (o instanceof Promise)
3061
- return o;
3062
- const t = Zi(o);
3063
- return !o || !t ? t : Array.isArray(t) ? t.map((n) => Ne(n, e)) : typeof t == "object" ? Object.fromEntries(
3064
- Object.entries(t).map(([n, d]) => n === "titleTemplate" || n.startsWith("on") ? [n, s(d)] : [n, Ne(d, n)])
3065
- ) : t;
3066
- }
3067
- const er = {
3068
- hooks: {
3069
- "entries:resolve": function(o) {
3070
- for (const e of o.entries)
3071
- e.resolvedInput = Ne(e.input);
3072
- }
3073
- }
3074
- }, tr = "usehead";
3075
- function or(o) {
3076
- return {
3077
- install(t) {
3078
- Xi && (t.config.globalProperties.$unhead = o, t.config.globalProperties.$head = o, t.provide(tr, o));
3079
- }
3080
- }.install;
3081
- }
3082
- function nr(o = {}) {
3083
- o.domDelayFn = o.domDelayFn || ((t) => yt(() => setTimeout(() => t(), 0)));
3084
- const e = /* @__PURE__ */ Qi(o);
3085
- return e.use(er), e.install = or(e), e;
3086
- }
3087
- const ir = vo(), rr = nr(), se = yo({ components: { Hotel: ri } });
3088
- se.use(rr);
3089
- se.use(ir);
3090
- se.use(It);
3091
- se.use(_o);
3092
- se.use($o);
3093
- se.use(bo, { bootstrap: !0 });
3094
- se.mount("#konnectio-hotel-app");