@konnectio/core 4.0.56-rc22 → 4.0.56-rc23

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 (44) hide show
  1. package/dist/{ActionField-ZJdtBRXa.js → ActionField-BUeonTqc.js} +1 -1
  2. package/dist/ActionField-BUeonTqc.js.br +9 -0
  3. package/dist/AvailabilitySkeleton-gympaD6B.js +217 -0
  4. package/dist/AvailabilitySkeleton-gympaD6B.js.br +0 -0
  5. package/dist/CheckoutWindow-sws5X9v2.js +710 -0
  6. package/dist/CheckoutWindow-sws5X9v2.js.br +0 -0
  7. package/dist/{DateField.vue_vue_type_style_index_0_lang-KjvE2y5e.js → DateField.vue_vue_type_style_index_0_lang-Ts9271hZ.js} +2003 -1999
  8. package/dist/DateField.vue_vue_type_style_index_0_lang-Ts9271hZ.js.br +0 -0
  9. package/dist/{ErrorMessage-mUpn7ZBU.js → ErrorMessage-GzJ2T5_d.js} +1 -1
  10. package/dist/ErrorMessage-GzJ2T5_d.js.br +0 -0
  11. package/dist/{EventAvailabilityForm-cAOEZVnn.js → EventAvailabilityForm-c0u7rObv.js} +26 -25
  12. package/dist/EventAvailabilityForm-c0u7rObv.js.br +0 -0
  13. package/dist/{Field-Kwm-GcDa.js → Field-hjOjPQhC.js} +1 -1
  14. package/dist/Field-hjOjPQhC.js.br +0 -0
  15. package/dist/{ThankYou-EiAxaHd8.js → ThankYou-d129mmKn.js} +3077 -3563
  16. package/dist/ThankYou-d129mmKn.js.br +0 -0
  17. package/dist/{_-KavQ60qi.js → _-hKpeUU4C.js} +115 -98
  18. package/dist/_-hKpeUU4C.js.br +0 -0
  19. package/dist/availability.js +9 -9
  20. package/dist/availability.js.br +0 -0
  21. package/dist/event.js +61 -61
  22. package/dist/event.js.br +0 -0
  23. package/dist/gift-card-validation.js +20 -20
  24. package/dist/gift-card-validation.js.br +0 -0
  25. package/dist/gift-card.js +305 -291
  26. package/dist/gift-card.js.br +0 -0
  27. package/dist/hotel.js +79 -79
  28. package/dist/hotel.js.br +0 -0
  29. package/dist/polyfill.js +1 -1
  30. package/dist/polyfill.js.br +0 -0
  31. package/dist/style.css +1 -1
  32. package/dist/style.css.br +0 -0
  33. package/package.json +2 -2
  34. package/dist/ActionField-ZJdtBRXa.js.br +0 -4
  35. package/dist/AvailabilitySkeleton-tfEBupNq.js +0 -234
  36. package/dist/AvailabilitySkeleton-tfEBupNq.js.br +0 -0
  37. package/dist/CheckoutWindow-orJD6dJy.js +0 -205
  38. package/dist/CheckoutWindow-orJD6dJy.js.br +0 -0
  39. package/dist/DateField.vue_vue_type_style_index_0_lang-KjvE2y5e.js.br +0 -0
  40. package/dist/ErrorMessage-mUpn7ZBU.js.br +0 -0
  41. package/dist/EventAvailabilityForm-cAOEZVnn.js.br +0 -0
  42. package/dist/Field-Kwm-GcDa.js.br +0 -0
  43. package/dist/ThankYou-EiAxaHd8.js.br +0 -0
  44. package/dist/_-KavQ60qi.js.br +0 -0
@@ -0,0 +1,710 @@
1
+ import { d as S, o as r, h as m, k as u, l as j, ae as me, af as he, H as J, c as R, ag as ge, a as V, b as i, f as B, w, ac as Q, ad as x, ah as q, p as ee, n as b, a6 as _, i as C, ai as be, aj as we, t as v, N as Se, u as c, g as P, r as oe, T as te, I as ae, ak as ke, al as Ce, j as W, M as U, am as $e, m as Be, an as Ve, D as Pe, G as Te, ao as Ie, v as He, x as Ae } from "./_-hKpeUU4C.js";
2
+ function Ne(e) {
3
+ if (Array.isArray(e)) {
4
+ for (var o = 0, n = Array(e.length); o < e.length; o++)
5
+ n[o] = e[o];
6
+ return n;
7
+ } else
8
+ return Array.from(e);
9
+ }
10
+ var Y = !1;
11
+ if (typeof window < "u") {
12
+ var ne = {
13
+ get passive() {
14
+ Y = !0;
15
+ }
16
+ };
17
+ window.addEventListener("testPassive", null, ne), window.removeEventListener("testPassive", null, ne);
18
+ }
19
+ var D = typeof window < "u" && window.navigator && window.navigator.platform && (/iP(ad|hone|od)/.test(window.navigator.platform) || window.navigator.platform === "MacIntel" && window.navigator.maxTouchPoints > 1), $ = [], M = !1, ie = -1, I = void 0, k = void 0, H = void 0, de = function(o) {
20
+ return $.some(function(n) {
21
+ return !!(n.options.allowTouchMove && n.options.allowTouchMove(o));
22
+ });
23
+ }, O = function(o) {
24
+ var n = o || window.event;
25
+ return de(n.target) || n.touches.length > 1 ? !0 : (n.preventDefault && n.preventDefault(), !1);
26
+ }, qe = function(o) {
27
+ if (H === void 0) {
28
+ var n = !!o && o.reserveScrollBarGap === !0, l = window.innerWidth - document.documentElement.clientWidth;
29
+ if (n && l > 0) {
30
+ var a = parseInt(window.getComputedStyle(document.body).getPropertyValue("padding-right"), 10);
31
+ H = document.body.style.paddingRight, document.body.style.paddingRight = a + l + "px";
32
+ }
33
+ }
34
+ I === void 0 && (I = document.body.style.overflow, document.body.style.overflow = "hidden");
35
+ }, _e = function() {
36
+ H !== void 0 && (document.body.style.paddingRight = H, H = void 0), I !== void 0 && (document.body.style.overflow = I, I = void 0);
37
+ }, De = function() {
38
+ return window.requestAnimationFrame(function() {
39
+ if (k === void 0) {
40
+ k = {
41
+ position: document.body.style.position,
42
+ top: document.body.style.top,
43
+ left: document.body.style.left
44
+ };
45
+ var o = window, n = o.scrollY, l = o.scrollX, a = o.innerHeight;
46
+ document.body.style.position = "fixed", document.body.style.top = -n, document.body.style.left = -l, setTimeout(function() {
47
+ return window.requestAnimationFrame(function() {
48
+ var t = a - window.innerHeight;
49
+ t && n >= a && (document.body.style.top = -(n + t));
50
+ });
51
+ }, 300);
52
+ }
53
+ });
54
+ }, Me = function() {
55
+ if (k !== void 0) {
56
+ var o = -parseInt(document.body.style.top, 10), n = -parseInt(document.body.style.left, 10);
57
+ document.body.style.position = k.position, document.body.style.top = k.top, document.body.style.left = k.left, window.scrollTo(n, o), k = void 0;
58
+ }
59
+ }, Oe = function(o) {
60
+ return o ? o.scrollHeight - o.scrollTop <= o.clientHeight : !1;
61
+ }, Le = function(o, n) {
62
+ var l = o.targetTouches[0].clientY - ie;
63
+ return de(o.target) ? !1 : n && n.scrollTop === 0 && l > 0 || Oe(n) && l < 0 ? O(o) : (o.stopPropagation(), !0);
64
+ }, Ee = function(o, n) {
65
+ if (!o) {
66
+ console.error("disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.");
67
+ return;
68
+ }
69
+ if (!$.some(function(a) {
70
+ return a.targetElement === o;
71
+ })) {
72
+ var l = {
73
+ targetElement: o,
74
+ options: n || {}
75
+ };
76
+ $ = [].concat(Ne($), [l]), D ? De() : qe(n), D && (o.ontouchstart = function(a) {
77
+ a.targetTouches.length === 1 && (ie = a.targetTouches[0].clientY);
78
+ }, o.ontouchmove = function(a) {
79
+ a.targetTouches.length === 1 && Le(a, o);
80
+ }, M || (document.addEventListener("touchmove", O, Y ? { passive: !1 } : void 0), M = !0));
81
+ }
82
+ }, ze = function(o) {
83
+ if (!o) {
84
+ console.error("enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.");
85
+ return;
86
+ }
87
+ $ = $.filter(function(n) {
88
+ return n.targetElement !== o;
89
+ }), D && (o.ontouchstart = null, o.ontouchmove = null, M && $.length === 0 && (document.removeEventListener("touchmove", O, Y ? { passive: !1 } : void 0), M = !1)), D ? Me() : _e();
90
+ }, K = S({
91
+ name: "SidePanelCloseButton",
92
+ emits: ["close"]
93
+ });
94
+ const Fe = /* @__PURE__ */ i(
95
+ "span",
96
+ { class: "vsp-close__x" },
97
+ null,
98
+ -1
99
+ /* HOISTED */
100
+ ), Ge = [
101
+ Fe
102
+ ];
103
+ function Re(e, o, n, l, a, t) {
104
+ return r(), m("div", {
105
+ class: "vsp-close",
106
+ onClick: o[0] || (o[0] = (d) => e.$emit("close"))
107
+ }, [...Ge]);
108
+ }
109
+ K.render = Re;
110
+ K.__file = "src/components/SidePanelCloseButton.vue";
111
+ var X = S({
112
+ name: "VueSidePanel",
113
+ components: {
114
+ SidePanelCloseButton: K
115
+ },
116
+ props: {
117
+ idName: {
118
+ type: String,
119
+ default: "vsp-container"
120
+ },
121
+ hideCloseBtn: {
122
+ type: Boolean,
123
+ default: !1
124
+ },
125
+ noClose: {
126
+ type: Boolean,
127
+ default: !1
128
+ },
129
+ side: {
130
+ type: String,
131
+ validator: (e) => ["top", "right", "bottom", "left"].includes(e),
132
+ default: "right"
133
+ },
134
+ rerender: {
135
+ type: Boolean,
136
+ default: !1
137
+ },
138
+ zIndex: {
139
+ type: [Number, String],
140
+ default: "auto"
141
+ },
142
+ width: {
143
+ type: String,
144
+ default: "auto"
145
+ },
146
+ height: {
147
+ type: String,
148
+ default: "auto"
149
+ },
150
+ lockScroll: {
151
+ type: Boolean,
152
+ default: !1
153
+ },
154
+ lockScrollHtml: {
155
+ type: Boolean,
156
+ default: !0
157
+ },
158
+ modelValue: {
159
+ type: Boolean,
160
+ default: !1,
161
+ required: !0
162
+ },
163
+ overlayColor: {
164
+ type: String,
165
+ default: "black"
166
+ },
167
+ overlayOpacity: {
168
+ type: Number,
169
+ default: 0.5
170
+ },
171
+ overlayDuration: {
172
+ type: Number,
173
+ default: 500
174
+ },
175
+ panelColor: {
176
+ type: String,
177
+ default: "white"
178
+ },
179
+ panelDuration: {
180
+ type: Number,
181
+ default: 300
182
+ },
183
+ transitionName: {
184
+ type: String,
185
+ default: void 0
186
+ },
187
+ headerClass: {
188
+ type: String,
189
+ default: ""
190
+ },
191
+ bodyClass: {
192
+ type: String,
193
+ default: ""
194
+ },
195
+ footerClass: {
196
+ type: String,
197
+ default: ""
198
+ }
199
+ },
200
+ emits: ["update:modelValue", "closed", "opened"],
201
+ setup(e, { emit: o, attrs: n }) {
202
+ let l;
203
+ const a = u(null), t = u(null), d = u(null), p = u(null), s = u(null), f = u(0), h = u(0), A = u(0), L = u(0), E = u(0), z = u(), Z = u(!1), T = async () => {
204
+ window?.innerHeight > 0 && (E.value = window.innerHeight), f.value = d.value ? d.value.clientHeight : 0, A.value = p.value ? p.value.clientHeight : 0, h.value = s.value ? s.value.scrollHeight : 0, L.value = a.value ? a.value.clientHeight : 0;
205
+ }, se = () => o("update:modelValue", !1), F = (y, g) => {
206
+ if (g) {
207
+ setTimeout(() => {
208
+ Ee(y, { reserveScrollBarGap: !0 }), e.lockScrollHtml && (document.documentElement.style.overflow = "hidden");
209
+ }, 0);
210
+ return;
211
+ }
212
+ ze(y), e.lockScrollHtml && document.documentElement.style.removeProperty("overflow");
213
+ }, re = () => Math.max(...Array.from(document.querySelectorAll("body *"), (y) => parseFloat(window.getComputedStyle(y).zIndex)).filter((y) => !Number.isNaN(y)), 0);
214
+ j(() => {
215
+ z.value = e.zIndex === "auto" ? re() : e.zIndex;
216
+ }), me(() => {
217
+ document.getElementById(e.idName) || (l = document.createElement("div"), l.setAttribute("id", e.idName), document.body.appendChild(l));
218
+ }), he(() => {
219
+ const { modelValue: y, lockScroll: g } = e;
220
+ g && a.value && y && F(a.value, !1), l && document.body.removeChild(l), window.removeEventListener("resize", T);
221
+ }), J(() => [p.value, d.value, e.height, e.width, e.side, e.modelValue], () => {
222
+ we(() => T());
223
+ }), J(() => [e.modelValue, a.value], (y, g) => {
224
+ const fe = g ? g[0] : !1, [G, N] = y, ye = G, ve = fe && !G;
225
+ if (N) {
226
+ if (ye && (Z.value = !!document.body.style.overflow), G) {
227
+ e.lockScroll && F(N, !0), T(), window.addEventListener("resize", T);
228
+ return;
229
+ }
230
+ !e.lockScroll || !ve || Z.value || (setTimeout(() => {
231
+ N && F(N, !1);
232
+ }, e.panelDuration), window.removeEventListener("resize", T));
233
+ }
234
+ }, { immediate: !0 });
235
+ const ue = R(() => {
236
+ if (!L.value)
237
+ return;
238
+ const y = h.value + A.value + f.value;
239
+ let g = L.value - A.value - f.value;
240
+ return ["top", "bottom"].includes(e.side) && e.height === "auto" && (g = E.value >= y ? h.value : E.value - A.value - f.value), g;
241
+ }), ce = R(() => ({
242
+ zIndex: z.value,
243
+ animationDuration: `${e.overlayDuration}ms`,
244
+ "--overlay-opacity": e.overlayOpacity,
245
+ opacity: e.modelValue ? e.overlayOpacity : 0,
246
+ backgroundColor: e.overlayColor,
247
+ pointerEvents: e.modelValue ? "all" : "none"
248
+ })), pe = R(() => ({
249
+ width: ["left", "right"].includes(e.side) ? e.width : void 0,
250
+ maxWidth: "100%",
251
+ ...["top", "bottom"].includes(e.side) ? {
252
+ // minHeight: props.height,
253
+ height: e.height,
254
+ maxHeight: "100%"
255
+ } : {},
256
+ zIndex: z.value,
257
+ backgroundColor: e.panelColor,
258
+ animationDuration: `${e.panelDuration}ms`,
259
+ ...Object.assign({}, n.style)
260
+ }));
261
+ return {
262
+ body: s,
263
+ panel: a,
264
+ overlay: t,
265
+ overlayStyles: ce,
266
+ header: p,
267
+ footer: d,
268
+ closePanel: se,
269
+ panelStyles: pe,
270
+ bodyHeight: ue
271
+ };
272
+ }
273
+ });
274
+ function Ue(e, o, n, l, a, t) {
275
+ const d = ge("SidePanelCloseButton");
276
+ return r(), V(be, {
277
+ to: `#${e.idName}`
278
+ }, [
279
+ i(
280
+ "div",
281
+ {
282
+ class: b(["vsp-wrapper", [e.modelValue && "vsp-wrapper--active"]])
283
+ },
284
+ [
285
+ B(ee, {
286
+ name: "overlay",
287
+ persisted: ""
288
+ }, {
289
+ default: w(() => [
290
+ Q(i(
291
+ "div",
292
+ {
293
+ ref: "overlay",
294
+ class: "vsp-overlay",
295
+ style: q(e.overlayStyles),
296
+ onClick: o[0] || (o[0] = () => e.noClose ? void 0 : e.closePanel())
297
+ },
298
+ null,
299
+ 4
300
+ /* STYLE */
301
+ ), [
302
+ [x, e.modelValue]
303
+ ])
304
+ ]),
305
+ _: 1
306
+ /* STABLE */
307
+ }),
308
+ B(ee, {
309
+ name: e.transitionName || `slide-${e.side}`,
310
+ onAfterEnter: o[1] || (o[1] = (p) => e.$emit("opened")),
311
+ onAfterLeave: o[2] || (o[2] = (p) => e.$emit("closed"))
312
+ }, {
313
+ default: w(() => [
314
+ !e.rerender || e.modelValue ? Q((r(), m(
315
+ "div",
316
+ {
317
+ key: 0,
318
+ ref: "panel",
319
+ class: b(["vsp", [`vsp--${e.side}-side`, e.$attrs.class]]),
320
+ style: q(e.panelStyles)
321
+ },
322
+ [
323
+ e.$slots.header ? (r(), m(
324
+ "div",
325
+ {
326
+ key: 0,
327
+ ref: "header",
328
+ class: b([e.headerClass, "vsp__header"])
329
+ },
330
+ [
331
+ _(e.$slots, "header", { close: e.closePanel })
332
+ ],
333
+ 2
334
+ /* CLASS */
335
+ )) : C("v-if", !0),
336
+ i(
337
+ "div",
338
+ {
339
+ ref: "body",
340
+ class: b([e.bodyClass, "vsp__body"]),
341
+ style: q({ height: `${e.bodyHeight}px` })
342
+ },
343
+ [
344
+ _(e.$slots, "default", { close: e.closePanel }),
345
+ e.hideCloseBtn ? C("v-if", !0) : (r(), V(d, {
346
+ key: 0,
347
+ onClose: e.closePanel
348
+ }, null, 8, ["onClose"]))
349
+ ],
350
+ 6
351
+ /* CLASS, STYLE */
352
+ ),
353
+ e.$slots.footer ? (r(), m(
354
+ "div",
355
+ {
356
+ key: 1,
357
+ ref: "footer",
358
+ class: b([e.footerClass, "vsp__footer"])
359
+ },
360
+ [
361
+ _(e.$slots, "footer")
362
+ ],
363
+ 2
364
+ /* CLASS */
365
+ )) : C("v-if", !0)
366
+ ],
367
+ 6
368
+ /* CLASS, STYLE */
369
+ )), [
370
+ [x, e.rerender ? !0 : e.modelValue]
371
+ ]) : C("v-if", !0)
372
+ ]),
373
+ _: 3
374
+ /* FORWARDED */
375
+ }, 8, ["name"])
376
+ ],
377
+ 2
378
+ /* CLASS */
379
+ )
380
+ ], 8, ["to"]);
381
+ }
382
+ X.render = Ue;
383
+ X.__file = "src/components/SidePanel.vue";
384
+ const je = { id: "konnectio-side-panel-header" }, We = { id: "konnectio-side-panel-title" }, Ye = {
385
+ key: 0,
386
+ id: "konnectio-side-panel-subtitle"
387
+ }, Ke = ["innerHTML"], Xe = /* @__PURE__ */ S({
388
+ __name: "Base",
389
+ props: {
390
+ modelValue: { type: Boolean },
391
+ title: {},
392
+ subtitle: {},
393
+ idName: {},
394
+ description: {},
395
+ side: { default: "right" },
396
+ lockScroll: { type: Boolean, default: !0 },
397
+ hideCloseButton: { type: Boolean, default: !0 },
398
+ width: { default: "840px" }
399
+ },
400
+ emits: ["update:modelValue", "opened", "closed"],
401
+ setup(e, { emit: o }) {
402
+ const n = o;
403
+ function l() {
404
+ n("closed");
405
+ }
406
+ function a() {
407
+ n("opened");
408
+ }
409
+ return (t, d) => (r(), V(c(X), {
410
+ modelValue: t.modelValue,
411
+ "lock-scroll": t.lockScroll,
412
+ "hide-close-btn": t.hideCloseButton,
413
+ width: t.width,
414
+ "onUpdate:modelValue": d[1] || (d[1] = (p) => t.$emit("update:modelValue", p)),
415
+ onClosed: l,
416
+ onOpened: a
417
+ }, {
418
+ header: w(() => [
419
+ i("div", je, [
420
+ i("h2", We, [
421
+ i("span", null, v(t.title), 1),
422
+ i("button", {
423
+ id: "konnectio-side-panel-close",
424
+ onClick: d[0] || (d[0] = (p) => t.$emit("update:modelValue", !1))
425
+ }, [
426
+ B(Se, {
427
+ icon: "times",
428
+ type: "fas",
429
+ color: "header"
430
+ })
431
+ ])
432
+ ]),
433
+ t.subtitle ? (r(), m("h4", Ye, [
434
+ i("span", null, v(t.subtitle), 1)
435
+ ])) : C("", !0)
436
+ ])
437
+ ]),
438
+ default: w(() => [
439
+ i("div", null, [
440
+ i("div", {
441
+ class: "konnectio-side-panel-description",
442
+ innerHTML: t.description
443
+ }, null, 8, Ke),
444
+ _(t.$slots, "default", {}, void 0, !0)
445
+ ])
446
+ ]),
447
+ _: 3
448
+ }, 8, ["modelValue", "lock-scroll", "hide-close-btn", "width"]));
449
+ }
450
+ }), Ze = /* @__PURE__ */ P(Xe, [["__scopeId", "data-v-ce9ba7e5"]]), Je = { class: "fresh-booking-phone-input" }, Qe = /* @__PURE__ */ S({
451
+ __name: "PhoneField",
452
+ props: {
453
+ modelValue: {},
454
+ label: {},
455
+ id: {},
456
+ placeholder: {},
457
+ icon: { default: "phone-office" },
458
+ iconColor: {},
459
+ iconType: { default: "fal" },
460
+ required: { type: Boolean, default: !1 },
461
+ readonly: { type: Boolean, default: !1 },
462
+ inputStyle: {}
463
+ },
464
+ emits: ["update:modelValue"],
465
+ setup(e, { emit: o }) {
466
+ const n = o, l = e, a = l.id || oe(), t = u("+45"), d = u("");
467
+ function p() {
468
+ n("update:modelValue", `${t.value} ${d.value}`);
469
+ }
470
+ return j(() => {
471
+ if (l.modelValue) {
472
+ const s = l.modelValue.split(" ");
473
+ t.value = s[0], d.value = s[1];
474
+ }
475
+ }), (s, f) => (r(), V(ae, {
476
+ label: s.label,
477
+ id: c(a),
478
+ type: "phone",
479
+ required: s.required,
480
+ readonly: s.readonly
481
+ }, {
482
+ default: w(() => [
483
+ i("div", Je, [
484
+ B(te, {
485
+ modelValue: t.value,
486
+ "onUpdate:modelValue": f[0] || (f[0] = (h) => t.value = h),
487
+ type: "text",
488
+ id: c(oe)(),
489
+ name: "phone-code",
490
+ autocomplete: "tel-country-code",
491
+ icon: s.icon,
492
+ "icon-color": s.iconColor,
493
+ "icon-type": s.iconType,
494
+ placeholder: "+45",
495
+ required: s.required,
496
+ readonly: s.readonly,
497
+ "input-style": s.inputStyle,
498
+ onInput: f[1] || (f[1] = (h) => p())
499
+ }, null, 8, ["modelValue", "id", "icon", "icon-color", "icon-type", "required", "readonly", "input-style"]),
500
+ B(te, {
501
+ modelValue: d.value,
502
+ "onUpdate:modelValue": f[2] || (f[2] = (h) => d.value = h),
503
+ type: "number",
504
+ name: "phone",
505
+ autocomplete: "tel-national",
506
+ id: c(a),
507
+ placeholder: s.placeholder,
508
+ required: s.required,
509
+ readonly: s.readonly,
510
+ "input-style": s.inputStyle,
511
+ onInput: f[3] || (f[3] = (h) => p())
512
+ }, null, 8, ["modelValue", "id", "placeholder", "required", "readonly", "input-style"])
513
+ ])
514
+ ]),
515
+ _: 1
516
+ }, 8, ["label", "id", "required", "readonly"]));
517
+ }
518
+ }), go = /* @__PURE__ */ P(Qe, [["__scopeId", "data-v-5cd094ab"]]), xe = ["required", "type", "name", "readonly", "disabled", "value", "checked"], eo = ["data-test"], oo = { key: 0 }, to = /* @__PURE__ */ S({
519
+ __name: "Checkbox",
520
+ props: {
521
+ modelValue: { type: [String, Boolean, Number] },
522
+ numeric: { type: Boolean, default: !1 },
523
+ checked: { type: Boolean, default: !1 },
524
+ label: {},
525
+ price: {},
526
+ name: {},
527
+ readonly: { type: Boolean, default: !1 },
528
+ type: { default: "checkbox" },
529
+ required: { type: Boolean, default: !1 },
530
+ inputStyle: {},
531
+ val: {}
532
+ },
533
+ emits: ["update:modelValue"],
534
+ setup(e, { emit: o }) {
535
+ const n = e, l = o;
536
+ function a() {
537
+ n.readonly !== !0 && l(
538
+ "update:modelValue",
539
+ n.type === "radio" ? n.val : n.numeric ? n.modelValue ? 0 : 1 : !n.modelValue
540
+ );
541
+ }
542
+ return (t, d) => (r(), V(ae, {
543
+ required: t.required,
544
+ type: t.type,
545
+ readonly: t.readonly
546
+ }, {
547
+ default: w(() => [
548
+ i("label", {
549
+ class: b([
550
+ "fresh-booking-click-box-container",
551
+ { "is-readonly": t.readonly },
552
+ { "has-label": t.label },
553
+ t.type === "radio" ? "radio" : "checkbox"
554
+ ])
555
+ }, [
556
+ i("input", ke(t.$attrs, {
557
+ required: !!t.required,
558
+ type: t.type,
559
+ name: t.name,
560
+ class: "hidden",
561
+ readonly: !!t.readonly,
562
+ disabled: !!t.readonly,
563
+ value: t.type === "radio" ? t.val : t.modelValue,
564
+ checked: t.type === "radio" ? t.val === t.modelValue : !!t.modelValue,
565
+ onChange: d[0] || (d[0] = (p) => a())
566
+ }), null, 16, xe),
567
+ i("div", {
568
+ class: b([
569
+ "fresh-booking-click-box",
570
+ { checked: t.type === "radio" ? t.val === t.modelValue : !!t.modelValue }
571
+ ]),
572
+ tabindex: "0",
573
+ style: q(t.inputStyle),
574
+ "data-test": t.name,
575
+ onKeyup: d[1] || (d[1] = Ce((p) => a(), ["enter"]))
576
+ }, null, 46, eo),
577
+ t.label ? (r(), m("div", {
578
+ key: 0,
579
+ class: b(["fresh-booking-click-box-label", { "with-price": t.price }])
580
+ }, [
581
+ i("span", null, v(t.label), 1),
582
+ t.price ? (r(), m("span", oo, v(t.price), 1)) : C("", !0)
583
+ ], 2)) : C("", !0)
584
+ ], 2)
585
+ ]),
586
+ _: 1
587
+ }, 8, ["required", "type", "readonly"]));
588
+ }
589
+ }), bo = /* @__PURE__ */ P(to, [["__scopeId", "data-v-a2138dc3"]]), no = {
590
+ href: "https://policies.google.com/privacy",
591
+ target: "_blank"
592
+ }, lo = {
593
+ href: "https://policies.google.com/terms",
594
+ target: "_blank"
595
+ }, ao = /* @__PURE__ */ S({
596
+ __name: "GoogleNotice",
597
+ setup(e) {
598
+ const { t: o } = W();
599
+ return (n, l) => (r(), m("span", null, [
600
+ U(v(c(o)("googleNotice")) + " ", 1),
601
+ i("a", no, v(c(o)("googlePrivacyPolicy")), 1),
602
+ U(" " + v(c(o)("googleAnd")) + " ", 1),
603
+ i("a", lo, v(c(o)("googleTOS")), 1),
604
+ U(" " + v(c(o)("googleApply")) + ". ", 1)
605
+ ]));
606
+ }
607
+ });
608
+ function le(e) {
609
+ const o = e;
610
+ o.__i18n = o.__i18n || [], o.__i18n.push({
611
+ locale: "",
612
+ resource: {
613
+ da: {
614
+ googleNotice: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Denne side er beskyttet af reCAPTCHA og Google's" } },
615
+ googlePrivacyPolicy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Privatlivspolitik" } },
616
+ googleAnd: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "og" } },
617
+ googleTOS: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Servicevilkår" } },
618
+ googleApply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "er gældende" } }
619
+ },
620
+ en: {
621
+ googleNotice: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "This site is protected by reCAPTCHA and the Google" } },
622
+ googlePrivacyPolicy: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Privacy Policy" } },
623
+ googleAnd: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "and" } },
624
+ googleTOS: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "Terms of Service" } },
625
+ googleApply: { t: 0, b: { t: 2, i: [{ t: 3 }], s: "apply" } }
626
+ }
627
+ }
628
+ });
629
+ }
630
+ typeof le == "function" && le(ao);
631
+ const io = { class: "konnectio-terms-side-panel" }, so = ["innerHTML"], ro = /* @__PURE__ */ S({
632
+ __name: "TermsOfService",
633
+ props: {
634
+ description: {}
635
+ },
636
+ setup(e) {
637
+ const { t: o } = W();
638
+ return (n, l) => (r(), V(Ze, {
639
+ title: c(o)("general.termsAndConditions")
640
+ }, {
641
+ default: w(() => [
642
+ i("div", io, [
643
+ i("p", {
644
+ innerHTML: c($e)(n.description)
645
+ }, null, 8, so)
646
+ ])
647
+ ]),
648
+ _: 1
649
+ }, 8, ["title"]));
650
+ }
651
+ }), uo = /* @__PURE__ */ P(ro, [["__scopeId", "data-v-82aaf990"]]), co = { class: "konnectio-accept-terms" }, po = /* @__PURE__ */ S({
652
+ __name: "_",
653
+ props: {
654
+ content: {},
655
+ buttonLabel: {}
656
+ },
657
+ setup(e) {
658
+ const { t: o } = W(), n = u(!1);
659
+ return (l, a) => (r(), m("div", co, [
660
+ B(c(Ve), {
661
+ keypath: "general.termsAndConditionsNotice",
662
+ tag: "span",
663
+ scope: "global"
664
+ }, {
665
+ button: w(() => [
666
+ i("i", null, '"' + v(l.buttonLabel) + '"', 1)
667
+ ]),
668
+ terms: w(() => [
669
+ i("a", {
670
+ class: "konnectio-accept-terms-link",
671
+ target: "_blank",
672
+ onClick: a[0] || (a[0] = Be((t) => n.value = !0, ["prevent"]))
673
+ }, [
674
+ i("span", null, v(c(o)("general.termsAndConditions")), 1)
675
+ ])
676
+ ]),
677
+ _: 1
678
+ }),
679
+ B(uo, {
680
+ modelValue: n.value,
681
+ "onUpdate:modelValue": a[1] || (a[1] = (t) => n.value = t),
682
+ description: l.content
683
+ }, null, 8, ["modelValue", "description"])
684
+ ]));
685
+ }
686
+ }), wo = /* @__PURE__ */ P(po, [["__scopeId", "data-v-c9c826cf"]]), fo = (e) => (He("data-v-340cb9ce"), e = e(), Ae(), e), yo = /* @__PURE__ */ fo(() => /* @__PURE__ */ i("div", { id: "fresh-booking-payment-checkout" }, null, -1)), vo = [
687
+ yo
688
+ ], mo = /* @__PURE__ */ S({
689
+ __name: "CheckoutWindow",
690
+ setup(e) {
691
+ const { paymentGatewayId: o } = Pe(Te());
692
+ return j(() => {
693
+ const n = document.createElement("script"), l = document.createElement("script");
694
+ n.setAttribute("src", "https://checkout.dibspayment.eu/v1/checkout.js?v=1"), l.setAttribute("src", "https://checkout.reepay.com/checkout.js"), document.head.appendChild(n), document.head.appendChild(l);
695
+ }), (n, l) => (r(), m("div", null, [
696
+ i("div", {
697
+ id: "fresh-booking-payment-checkout-wrapper",
698
+ class: b({ reePay: c(o) === c(Ie).ReePay })
699
+ }, vo, 2)
700
+ ]));
701
+ }
702
+ }), So = /* @__PURE__ */ P(mo, [["__scopeId", "data-v-340cb9ce"]]);
703
+ export {
704
+ wo as B,
705
+ bo as C,
706
+ go as P,
707
+ ao as _,
708
+ So as a,
709
+ Ze as b
710
+ };