@nice2dev/events 1.2.2 → 1.3.0
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.
- package/CHANGELOG.md +376 -0
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +603 -580
- package/package.json +5 -5
package/dist/index.mjs
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { jsxs as s, jsx as e, Fragment as Ge } from "react/jsx-runtime";
|
|
2
|
-
import { NtdMove as
|
|
3
|
-
import { NiceUpload as en, NiceTextInput as
|
|
4
|
-
import { useNiceTranslation as
|
|
5
|
-
import Re, { useState as D, useRef as ye, useCallback as
|
|
6
|
-
function
|
|
2
|
+
import { NtdMove as Mn, NtdHeart as Nt, NtdTrash as De, NtdPlay as Ke, NtdImage as Ln, NtdPlus as an, NtdCheck as je, NtdHelp as sn, NtdClose as $n, NtdSearch as bt, NtdQrCode as kt, NtdMail as Rn, NtdWheelchair as Dn, NtdZoomIn as wt, NtdZoomOut as St, NtdMaximize as Ct, NtdSend as xt, NtdGiftCard as It, NtdStar as Pt, NtdLink as zt, NtdReceipt as At, NtdCoins as Tt, NtdArrowRight as Mt, NtdSkipForward as rn, NtdBarChart as Lt, NtdThumbsUp as cn, NtdClock as En, NtdTrophy as ln, NtdMedal as Je, NtdStop as $t, NtdMusic as Pe, NtdMicrophone as Xe, NtdFileText as Rt, NtdSparkle as On, NtdCamera as Bn, NtdGamepad as Yn, NtdClipboardCheck as Dt } from "@nice2dev/icons";
|
|
3
|
+
import { NiceUpload as en, NiceTextInput as J, NiceCardGroup as Un, NiceEmpty as Et, NiceButton as U, NiceSegmentedControl as Vn, NiceTextArea as on, NiceToggle as Ze, NiceAvatarGroup as bn, NiceAvatar as Ve, NiceBadge as ae, NiceSelect as ze, NiceAmountBreakdown as Ot, NiceTabs as Bt, NiceNumericInput as dn, NiceCollapse as Yt, NiceHtmlEditor as Ut, NiceProgress as Vt } from "@nice2dev/ui";
|
|
4
|
+
import { useNiceTranslation as ee, NiceIcon as re, useControllableState as Ft, clickOnActivationKey as un } from "@nice2dev/ui-core";
|
|
5
|
+
import Re, { useState as D, useRef as ye, useCallback as H, forwardRef as te, useMemo as F, useEffect as Fe } from "react";
|
|
6
|
+
function Xt(a) {
|
|
7
7
|
return a.map((i, r) => ({ item: i, index: r, key: i.order ?? r })).sort((i, r) => i.key - r.key || i.index - r.index).map((i) => i.item);
|
|
8
8
|
}
|
|
9
|
-
function
|
|
9
|
+
function kn(a, i, r) {
|
|
10
10
|
if (i === r)
|
|
11
11
|
return [...a];
|
|
12
12
|
if (i < 0 || i >= a.length)
|
|
@@ -16,16 +16,16 @@ function bn(a, i, r) {
|
|
|
16
16
|
const n = [...a], [t] = n.splice(i, 1);
|
|
17
17
|
return n.splice(r, 0, t), n;
|
|
18
18
|
}
|
|
19
|
-
function
|
|
20
|
-
const { items: i, onReorder: r, disabled: n = !1 } = a, [t, d] = D(null), [o, u] = D(null), [_, c] = D(!1), l = ye(null), m =
|
|
19
|
+
function Fn(a) {
|
|
20
|
+
const { items: i, onReorder: r, disabled: n = !1 } = a, [t, d] = D(null), [o, u] = D(null), [_, c] = D(!1), l = ye(null), m = H((g) => i.findIndex((P) => P.id === g), [i]), h = H(
|
|
21
21
|
(g, P) => {
|
|
22
22
|
const k = m(g), T = m(P);
|
|
23
|
-
k < 0 || T < 0 || k === T || r == null || r(
|
|
23
|
+
k < 0 || T < 0 || k === T || r == null || r(kn([...i], k, T).map((f) => f.id));
|
|
24
24
|
},
|
|
25
25
|
[i, m, r]
|
|
26
|
-
), z =
|
|
26
|
+
), z = H(() => {
|
|
27
27
|
d(null), u(null), c(!1), l.current = null;
|
|
28
|
-
}, []), v =
|
|
28
|
+
}, []), v = H(
|
|
29
29
|
(g, P) => ({
|
|
30
30
|
role: "button",
|
|
31
31
|
// Explicitly off: this is a pointer-driven control, and leaving the
|
|
@@ -66,7 +66,7 @@ function Vn(a) {
|
|
|
66
66
|
return;
|
|
67
67
|
k.preventDefault();
|
|
68
68
|
const p = m(g), A = p + f;
|
|
69
|
-
A < 0 || A >= i.length || r == null || r(
|
|
69
|
+
A < 0 || A >= i.length || r == null || r(kn([...i], p, A).map((y) => y.id));
|
|
70
70
|
},
|
|
71
71
|
...P ? { "aria-label": P } : {}
|
|
72
72
|
}),
|
|
@@ -74,18 +74,17 @@ function Vn(a) {
|
|
|
74
74
|
);
|
|
75
75
|
return { activeId: t, overId: o, getHandleProps: v, dragging: _ };
|
|
76
76
|
}
|
|
77
|
-
const
|
|
78
|
-
const { t: i } =
|
|
77
|
+
const qt = ({ item: a }) => {
|
|
78
|
+
const { t: i } = ee(), [r, n] = D(!1), t = a.thumbnailUrl ?? a.url;
|
|
79
79
|
return a.type === "video" ? /* @__PURE__ */ e("div", { className: "nice-event-media__video-thumb", children: /* @__PURE__ */ e(Ke, { size: 26 }) }) : r || !t ? /* @__PURE__ */ e(
|
|
80
80
|
"div",
|
|
81
81
|
{
|
|
82
82
|
className: "nice-event-media__broken",
|
|
83
83
|
title: i("eventMedia.imageUnavailable", "Image unavailable"),
|
|
84
|
-
children: /* @__PURE__ */ e(
|
|
84
|
+
children: /* @__PURE__ */ e(Ln, { size: 24 })
|
|
85
85
|
}
|
|
86
86
|
) : (
|
|
87
87
|
// onError swaps in the placeholder when the file fails to load — no user interaction
|
|
88
|
-
// eslint-disable-next-line jsx-a11y/no-noninteractive-element-interactions
|
|
89
88
|
/* @__PURE__ */ e(
|
|
90
89
|
"img",
|
|
91
90
|
{
|
|
@@ -97,9 +96,9 @@ const Xt = ({ item: a }) => {
|
|
|
97
96
|
}
|
|
98
97
|
)
|
|
99
98
|
);
|
|
100
|
-
}, Wt = [],
|
|
99
|
+
}, Wt = [], ia = /* @__PURE__ */ te(
|
|
101
100
|
function(i, r) {
|
|
102
|
-
const { t: n } =
|
|
101
|
+
const { t: n } = ee(), {
|
|
103
102
|
items: t = Wt,
|
|
104
103
|
onUpload: d,
|
|
105
104
|
onDelete: o,
|
|
@@ -111,7 +110,7 @@ const Xt = ({ item: a }) => {
|
|
|
111
110
|
onReorder: h,
|
|
112
111
|
className: z,
|
|
113
112
|
style: v
|
|
114
|
-
} = i, [g, P] = D(""), k = F(() =>
|
|
113
|
+
} = i, [g, P] = D(""), k = F(() => Xt(t), [t]), T = F(() => m === "all" ? k : k.filter((M) => M.type === m), [k, m]), f = !!h && m === "all", p = Fn({ items: k, onReorder: h, disabled: !f }), A = (M) => {
|
|
115
114
|
const w = M[0];
|
|
116
115
|
!w || !d || (d(w, g.trim() || void 0), P(""));
|
|
117
116
|
}, y = c === "list";
|
|
@@ -137,7 +136,7 @@ const Xt = ({ item: a }) => {
|
|
|
137
136
|
}
|
|
138
137
|
),
|
|
139
138
|
/* @__PURE__ */ e(
|
|
140
|
-
|
|
139
|
+
J,
|
|
141
140
|
{
|
|
142
141
|
value: g,
|
|
143
142
|
onChange: P,
|
|
@@ -146,7 +145,7 @@ const Xt = ({ item: a }) => {
|
|
|
146
145
|
)
|
|
147
146
|
] }),
|
|
148
147
|
T.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-media__empty", children: n("eventMedia.noMediaYet", "No media yet.") }) : /* @__PURE__ */ e(
|
|
149
|
-
|
|
148
|
+
Un,
|
|
150
149
|
{
|
|
151
150
|
columns: y ? 1 : void 0,
|
|
152
151
|
minColumnWidth: 200,
|
|
@@ -165,8 +164,8 @@ const Xt = ({ item: a }) => {
|
|
|
165
164
|
{
|
|
166
165
|
className: `nice-event-media__card${y ? " nice-event-media__card--row" : ""}${p.activeId === M.id ? " nice-event-media__card--dragging" : ""}`,
|
|
167
166
|
onClick: () => _ == null ? void 0 : _(M),
|
|
168
|
-
onKeyDown: (
|
|
169
|
-
_ &&
|
|
167
|
+
onKeyDown: (x) => {
|
|
168
|
+
_ && x.target === x.currentTarget && (x.key === "Enter" || x.key === " ") && (x.preventDefault(), _(M));
|
|
170
169
|
},
|
|
171
170
|
onPointerEnter: N == null ? void 0 : N.onPointerEnter,
|
|
172
171
|
role: _ ? "button" : void 0,
|
|
@@ -183,11 +182,11 @@ const Xt = ({ item: a }) => {
|
|
|
183
182
|
draggable: N.draggable,
|
|
184
183
|
onPointerDown: N.onPointerDown,
|
|
185
184
|
onKeyDown: N.onKeyDown,
|
|
186
|
-
onClick: (
|
|
187
|
-
children: /* @__PURE__ */ e(
|
|
185
|
+
onClick: (x) => x.stopPropagation(),
|
|
186
|
+
children: /* @__PURE__ */ e(Mn, { size: 14 })
|
|
188
187
|
}
|
|
189
188
|
),
|
|
190
|
-
/* @__PURE__ */ e(
|
|
189
|
+
/* @__PURE__ */ e(qt, { item: M }),
|
|
191
190
|
/* @__PURE__ */ s("div", { className: "nice-event-media__body", children: [
|
|
192
191
|
M.caption && /* @__PURE__ */ e("span", { className: "nice-event-media__caption", children: M.caption }),
|
|
193
192
|
M.uploadedByName && /* @__PURE__ */ e("span", { className: "nice-event-media__uploader", children: M.uploadedByName }),
|
|
@@ -197,12 +196,12 @@ const Xt = ({ item: a }) => {
|
|
|
197
196
|
{
|
|
198
197
|
type: "button",
|
|
199
198
|
className: "nice-event-media__action",
|
|
200
|
-
onClick: (
|
|
201
|
-
|
|
199
|
+
onClick: (x) => {
|
|
200
|
+
x.stopPropagation(), u(M.id);
|
|
202
201
|
},
|
|
203
202
|
"aria-label": n("eventMedia.like", "Like"),
|
|
204
203
|
children: [
|
|
205
|
-
/* @__PURE__ */ e(
|
|
204
|
+
/* @__PURE__ */ e(Nt, { size: 15 }),
|
|
206
205
|
" ",
|
|
207
206
|
M.likes ?? 0
|
|
208
207
|
]
|
|
@@ -213,8 +212,8 @@ const Xt = ({ item: a }) => {
|
|
|
213
212
|
{
|
|
214
213
|
type: "button",
|
|
215
214
|
className: "nice-event-media__action nice-event-media__action--danger",
|
|
216
|
-
onClick: (
|
|
217
|
-
|
|
215
|
+
onClick: (x) => {
|
|
216
|
+
x.stopPropagation(), o(M.id);
|
|
218
217
|
},
|
|
219
218
|
"aria-label": n("eventMedia.delete", "Delete"),
|
|
220
219
|
children: /* @__PURE__ */ e(De, { size: 15 })
|
|
@@ -240,7 +239,7 @@ const Xt = ({ item: a }) => {
|
|
|
240
239
|
action: n,
|
|
241
240
|
className: t
|
|
242
241
|
}) => /* @__PURE__ */ e(
|
|
243
|
-
|
|
242
|
+
Et,
|
|
244
243
|
{
|
|
245
244
|
size: "sm",
|
|
246
245
|
title: a,
|
|
@@ -249,10 +248,10 @@ const Xt = ({ item: a }) => {
|
|
|
249
248
|
action: n,
|
|
250
249
|
className: t
|
|
251
250
|
}
|
|
252
|
-
),
|
|
251
|
+
), Gt = [], aa = /* @__PURE__ */ te(
|
|
253
252
|
function(i, r) {
|
|
254
|
-
const { t: n } =
|
|
255
|
-
items: t =
|
|
253
|
+
const { t: n } = ee(), {
|
|
254
|
+
items: t = Gt,
|
|
256
255
|
layout: d = "grid",
|
|
257
256
|
onReorder: o,
|
|
258
257
|
onItemAdd: u,
|
|
@@ -268,18 +267,18 @@ const Xt = ({ item: a }) => {
|
|
|
268
267
|
size: k = "md",
|
|
269
268
|
className: T,
|
|
270
269
|
style: f
|
|
271
|
-
} = i, [p, A] = D(0), [y, M] = D(null), [w, N] = D(""),
|
|
270
|
+
} = i, [p, A] = D(0), [y, M] = D(null), [w, N] = D(""), x = g || P, B = !!o && !x, X = Fn({ items: t, onReorder: o, disabled: !B }), E = t.length > 0 ? Math.min(p, t.length - 1) : 0, R = t[E], q = (R == null ? void 0 : R.durationMs) ?? z;
|
|
272
271
|
Fe(() => {
|
|
273
272
|
if (!m || !v || t.length < 2)
|
|
274
273
|
return;
|
|
275
274
|
const L = window.setTimeout(
|
|
276
|
-
() => A((
|
|
277
|
-
Math.max(250,
|
|
275
|
+
() => A((j) => (j + 1) % t.length),
|
|
276
|
+
Math.max(250, q)
|
|
278
277
|
);
|
|
279
278
|
return () => window.clearTimeout(L);
|
|
280
|
-
}, [m, v, t.length, E,
|
|
279
|
+
}, [m, v, t.length, E, q]);
|
|
281
280
|
const C = F(
|
|
282
|
-
() => t.reduce((L,
|
|
281
|
+
() => t.reduce((L, j) => L + (j.durationMs ?? z), 0),
|
|
283
282
|
[t, z]
|
|
284
283
|
), b = (L) => {
|
|
285
284
|
c == null || c(L, w), M(null), N("");
|
|
@@ -287,13 +286,13 @@ const Xt = ({ item: a }) => {
|
|
|
287
286
|
return t.length === 0 ? /* @__PURE__ */ e("div", { ref: r, className: `nice-media-collage ${T ?? ""}`, style: f, children: /* @__PURE__ */ e(
|
|
288
287
|
Ne,
|
|
289
288
|
{
|
|
290
|
-
icon: /* @__PURE__ */ e(
|
|
289
|
+
icon: /* @__PURE__ */ e(Ln, { size: 28 }),
|
|
291
290
|
title: n("mediaCollage.nothingInTheCollageYet", "Nothing in the collage yet"),
|
|
292
291
|
description: n(
|
|
293
292
|
"mediaCollage.addPhotosOrVideoTo",
|
|
294
293
|
"Add photos or video to start arranging them."
|
|
295
294
|
),
|
|
296
|
-
action: u && !
|
|
295
|
+
action: u && !x ? /* @__PURE__ */ e(en, { accept: "image/*,video/*", multiple: !0, onFilesSelected: u }) : void 0
|
|
297
296
|
}
|
|
298
297
|
) }) : m ? /* @__PURE__ */ s(
|
|
299
298
|
"div",
|
|
@@ -358,7 +357,7 @@ const Xt = ({ item: a }) => {
|
|
|
358
357
|
children: [
|
|
359
358
|
/* @__PURE__ */ s("div", { className: "nice-media-collage__toolbar", children: [
|
|
360
359
|
/* @__PURE__ */ e(
|
|
361
|
-
|
|
360
|
+
Vn,
|
|
362
361
|
{
|
|
363
362
|
size: "sm",
|
|
364
363
|
value: d,
|
|
@@ -371,7 +370,7 @@ const Xt = ({ item: a }) => {
|
|
|
371
370
|
}
|
|
372
371
|
),
|
|
373
372
|
/* @__PURE__ */ e("span", { className: "nice-media-collage__duration", children: t.length === 1 ? n("mediaCollage.itemsOne", "{items} item · {totalDuration}s").replace("{items}", String(t.length)).replace("{totalDuration}", String(Math.round(C / 1e3))) : n("mediaCollage.itemsMany", "{items} items · {totalDuration}s").replace("{items}", String(t.length)).replace("{totalDuration}", String(Math.round(C / 1e3))) }),
|
|
374
|
-
u && !
|
|
373
|
+
u && !x && /* @__PURE__ */ e(
|
|
375
374
|
en,
|
|
376
375
|
{
|
|
377
376
|
accept: "image/*,video/*",
|
|
@@ -387,21 +386,21 @@ const Xt = ({ item: a }) => {
|
|
|
387
386
|
className: "nice-media-collage__tiles",
|
|
388
387
|
"aria-label": n("mediaCollage.collageOrder", "Collage order"),
|
|
389
388
|
"aria-busy": X.dragging,
|
|
390
|
-
children: t.map((L,
|
|
391
|
-
const
|
|
389
|
+
children: t.map((L, j) => {
|
|
390
|
+
const W = B ? X.getHandleProps(
|
|
392
391
|
L.id,
|
|
393
392
|
n("mediaCollage.moveItem", "Move {name}").replace(
|
|
394
393
|
"{name}",
|
|
395
|
-
L.caption ?? n("mediaCollage.itemN", "item {n}").replace("{n}", String(
|
|
394
|
+
L.caption ?? n("mediaCollage.itemN", "item {n}").replace("{n}", String(j + 1))
|
|
396
395
|
)
|
|
397
396
|
) : null;
|
|
398
397
|
return /* @__PURE__ */ s(
|
|
399
398
|
"li",
|
|
400
399
|
{
|
|
401
400
|
className: `nice-media-collage__tile${X.activeId === L.id ? " nice-media-collage__tile--active" : ""}${X.overId === L.id ? " nice-media-collage__tile--over" : ""}`,
|
|
402
|
-
onPointerEnter:
|
|
401
|
+
onPointerEnter: W == null ? void 0 : W.onPointerEnter,
|
|
403
402
|
children: [
|
|
404
|
-
/* @__PURE__ */ e("span", { className: "nice-media-collage__index", "aria-hidden": "true", children:
|
|
403
|
+
/* @__PURE__ */ e("span", { className: "nice-media-collage__index", "aria-hidden": "true", children: j + 1 }),
|
|
405
404
|
/* @__PURE__ */ e(
|
|
406
405
|
"button",
|
|
407
406
|
{
|
|
@@ -421,7 +420,7 @@ const Xt = ({ item: a }) => {
|
|
|
421
420
|
}
|
|
422
421
|
),
|
|
423
422
|
y === L.id ? /* @__PURE__ */ e(
|
|
424
|
-
|
|
423
|
+
J,
|
|
425
424
|
{
|
|
426
425
|
value: w,
|
|
427
426
|
onChange: N,
|
|
@@ -429,8 +428,8 @@ const Xt = ({ item: a }) => {
|
|
|
429
428
|
autoFocus: !0,
|
|
430
429
|
size: "sm",
|
|
431
430
|
onBlur: () => b(L.id),
|
|
432
|
-
onKeyDown: (
|
|
433
|
-
|
|
431
|
+
onKeyDown: (I) => {
|
|
432
|
+
I.key === "Enter" && b(L.id), I.key === "Escape" && M(null);
|
|
434
433
|
}
|
|
435
434
|
}
|
|
436
435
|
) : /* @__PURE__ */ e(
|
|
@@ -438,7 +437,7 @@ const Xt = ({ item: a }) => {
|
|
|
438
437
|
{
|
|
439
438
|
type: "button",
|
|
440
439
|
className: "nice-media-collage__caption",
|
|
441
|
-
disabled: !c ||
|
|
440
|
+
disabled: !c || x,
|
|
442
441
|
onClick: () => {
|
|
443
442
|
M(L.id), N(L.caption ?? "");
|
|
444
443
|
},
|
|
@@ -446,18 +445,18 @@ const Xt = ({ item: a }) => {
|
|
|
446
445
|
}
|
|
447
446
|
),
|
|
448
447
|
/* @__PURE__ */ s("div", { className: "nice-media-collage__tile-actions", children: [
|
|
449
|
-
|
|
448
|
+
W && /* @__PURE__ */ e(
|
|
450
449
|
"span",
|
|
451
450
|
{
|
|
452
451
|
className: "nice-media-collage__grip",
|
|
453
|
-
role:
|
|
454
|
-
tabIndex:
|
|
455
|
-
"aria-grabbed":
|
|
456
|
-
"aria-label":
|
|
457
|
-
draggable:
|
|
458
|
-
onPointerDown:
|
|
459
|
-
onKeyDown:
|
|
460
|
-
children: /* @__PURE__ */ e(
|
|
452
|
+
role: W.role,
|
|
453
|
+
tabIndex: W.tabIndex,
|
|
454
|
+
"aria-grabbed": W["aria-grabbed"],
|
|
455
|
+
"aria-label": W["aria-label"],
|
|
456
|
+
draggable: W.draggable,
|
|
457
|
+
onPointerDown: W.onPointerDown,
|
|
458
|
+
onKeyDown: W.onKeyDown,
|
|
459
|
+
children: /* @__PURE__ */ e(Mn, { size: 14 })
|
|
461
460
|
}
|
|
462
461
|
),
|
|
463
462
|
_ && !P && /* @__PURE__ */ e(
|
|
@@ -467,7 +466,7 @@ const Xt = ({ item: a }) => {
|
|
|
467
466
|
variant: "ghost",
|
|
468
467
|
ariaLabel: n("mediaCollage.removeItem", "Remove {name}").replace(
|
|
469
468
|
"{name}",
|
|
470
|
-
L.caption ?? n("mediaCollage.itemN", "item {n}").replace("{n}", String(
|
|
469
|
+
L.caption ?? n("mediaCollage.itemN", "item {n}").replace("{n}", String(j + 1))
|
|
471
470
|
),
|
|
472
471
|
disabled: g,
|
|
473
472
|
onClick: () => _(L.id),
|
|
@@ -482,7 +481,7 @@ const Xt = ({ item: a }) => {
|
|
|
482
481
|
})
|
|
483
482
|
}
|
|
484
483
|
),
|
|
485
|
-
u && !
|
|
484
|
+
u && !x && t.length > 0 && /* @__PURE__ */ s("p", { className: "nice-media-collage__hint", children: [
|
|
486
485
|
/* @__PURE__ */ e(an, { size: 12 }),
|
|
487
486
|
" ",
|
|
488
487
|
n(
|
|
@@ -499,7 +498,7 @@ function Be(a) {
|
|
|
499
498
|
const i = a.toLowerCase();
|
|
500
499
|
return ["active", "live", "published", "completed", "confirmed"].includes(i) ? "success" : ["cancelled", "canceled", "rejected", "failed"].includes(i) ? "error" : ["scheduled", "pending", "planning"].includes(i) ? "info" : ["draft", "archived"].includes(i) ? "secondary" : "warning";
|
|
501
500
|
}
|
|
502
|
-
const
|
|
501
|
+
const Kt = {
|
|
503
502
|
micro: [],
|
|
504
503
|
compact: ["details", "location", "budget"],
|
|
505
504
|
normal: ["details", "location", "schedule", "participants", "tasks", "surveys", "budget"],
|
|
@@ -515,10 +514,10 @@ const Gt = {
|
|
|
515
514
|
"documents",
|
|
516
515
|
"settings"
|
|
517
516
|
]
|
|
518
|
-
},
|
|
517
|
+
}, sa = /* @__PURE__ */ te(
|
|
519
518
|
function(i, r) {
|
|
520
|
-
var
|
|
521
|
-
const { t: n } =
|
|
519
|
+
var gn, vn, fn, _n, yn, Nn;
|
|
520
|
+
const { t: n } = ee(), {
|
|
522
521
|
event: t,
|
|
523
522
|
participants: d = [],
|
|
524
523
|
surveys: o = [],
|
|
@@ -541,22 +540,22 @@ const Gt = {
|
|
|
541
540
|
showTasks: M = !0,
|
|
542
541
|
showSurveys: w = !0,
|
|
543
542
|
showVendors: N = !0,
|
|
544
|
-
showBudget:
|
|
543
|
+
showBudget: x = !0,
|
|
545
544
|
showDocuments: B = !0,
|
|
546
545
|
showSettings: X = !0,
|
|
547
546
|
editable: E = !1,
|
|
548
547
|
onSave: R,
|
|
549
|
-
onPublish:
|
|
548
|
+
onPublish: q,
|
|
550
549
|
onShare: C,
|
|
551
550
|
onExport: b,
|
|
552
551
|
onUpdateEvent: L,
|
|
553
|
-
onUpdateLocation:
|
|
554
|
-
onAddSurvey:
|
|
555
|
-
onSurveyRespond:
|
|
552
|
+
onUpdateLocation: j,
|
|
553
|
+
onAddSurvey: W,
|
|
554
|
+
onSurveyRespond: I,
|
|
556
555
|
onAddBilling: V,
|
|
557
556
|
className: G,
|
|
558
|
-
style:
|
|
559
|
-
} = i, [Y, ie] = D(t.title), [
|
|
557
|
+
style: ne
|
|
558
|
+
} = i, [Y, ie] = D(t.title), [Z, be] = D(t.description ?? ""), [oe, he] = D(t.startDate ?? ""), [ke, Ee] = D(t.endDate ?? ""), [we, ge] = D(((gn = t.location) == null ? void 0 : gn.name) ?? ""), [Se, He] = D(((vn = t.location) == null ? void 0 : vn.address) ?? ""), [ve, ue] = D(((fn = t.location) == null ? void 0 : fn.virtualUrl) ?? ""), [le, Te] = D(((_n = t.location) == null ? void 0 : _n.isVirtual) ?? !1), [fe, Me] = D(""), [_e, Qe] = D("single"), [Ce, xe] = D(""), [me, Le] = D(""), [Ie, $] = D(""), [O, K] = D("PLN"), Q = {
|
|
560
559
|
details: f,
|
|
561
560
|
location: p,
|
|
562
561
|
schedule: A,
|
|
@@ -564,49 +563,49 @@ const Gt = {
|
|
|
564
563
|
tasks: M,
|
|
565
564
|
surveys: w,
|
|
566
565
|
vendors: N,
|
|
567
|
-
budget:
|
|
566
|
+
budget: x,
|
|
568
567
|
documents: B,
|
|
569
568
|
settings: X
|
|
570
|
-
}, pe = (z ??
|
|
569
|
+
}, pe = (z ?? Kt[h]).filter((S) => Q[S] !== !1), [Oe, Kn] = D(pe[0] ?? "details"), jn = v ?? Oe, Hn = H(
|
|
571
570
|
(S) => {
|
|
572
571
|
const de = S;
|
|
573
|
-
v === void 0 &&
|
|
572
|
+
v === void 0 && Kn(de), g == null || g(de);
|
|
574
573
|
},
|
|
575
574
|
[v, g]
|
|
576
|
-
),
|
|
575
|
+
), Qn = H(() => {
|
|
577
576
|
L == null || L({
|
|
578
577
|
title: Y,
|
|
579
|
-
description:
|
|
578
|
+
description: Z || void 0,
|
|
580
579
|
startDate: oe || void 0,
|
|
581
580
|
endDate: ke || void 0
|
|
582
581
|
});
|
|
583
|
-
}, [Y,
|
|
584
|
-
|
|
582
|
+
}, [Y, Z, oe, ke, L]), Zn = H(() => {
|
|
583
|
+
j == null || j({
|
|
585
584
|
name: we,
|
|
586
585
|
address: Se || void 0,
|
|
587
586
|
virtualUrl: ve || void 0,
|
|
588
587
|
isVirtual: le
|
|
589
588
|
});
|
|
590
|
-
}, [we, Se, ve, le,
|
|
591
|
-
if (!fe.trim() || !
|
|
589
|
+
}, [we, Se, ve, le, j]), Jn = H(() => {
|
|
590
|
+
if (!fe.trim() || !W)
|
|
592
591
|
return;
|
|
593
592
|
const S = Ce.split(",").map((de) => de.trim()).filter(Boolean);
|
|
594
|
-
|
|
595
|
-
}, [fe, _e, Ce,
|
|
593
|
+
W(fe.trim(), _e, S.length > 0 ? S : void 0), Me(""), xe("");
|
|
594
|
+
}, [fe, _e, Ce, W]), et = H(() => {
|
|
596
595
|
!me.trim() || !V || (V({
|
|
597
596
|
label: me.trim(),
|
|
598
597
|
amount: parseFloat(Ie) || 0,
|
|
599
598
|
currency: O
|
|
600
599
|
}), Le(""), $(""));
|
|
601
|
-
}, [me, Ie, O, V]),
|
|
600
|
+
}, [me, Ie, O, V]), nt = F(
|
|
602
601
|
() => u.map((S) => ({
|
|
603
602
|
label: S.label,
|
|
604
603
|
amount: S.amount
|
|
605
604
|
})),
|
|
606
605
|
[u]
|
|
607
|
-
),
|
|
606
|
+
), tt = F(() => u.reduce((S, de) => S + de.amount, 0), [u]), it = ((yn = u[0]) == null ? void 0 : yn.currency) ?? "PLN", at = /* @__PURE__ */ s("div", { className: "nice-event-planning__form", children: [
|
|
608
607
|
/* @__PURE__ */ e(
|
|
609
|
-
|
|
608
|
+
J,
|
|
610
609
|
{
|
|
611
610
|
label: n("eventPlanning.title", "Title"),
|
|
612
611
|
value: Y,
|
|
@@ -618,7 +617,7 @@ const Gt = {
|
|
|
618
617
|
on,
|
|
619
618
|
{
|
|
620
619
|
label: n("eventPlanning.description", "Description"),
|
|
621
|
-
value:
|
|
620
|
+
value: Z,
|
|
622
621
|
onChange: be,
|
|
623
622
|
readOnly: !E,
|
|
624
623
|
rows: 3
|
|
@@ -656,12 +655,12 @@ const Gt = {
|
|
|
656
655
|
U,
|
|
657
656
|
{
|
|
658
657
|
variant: "primary",
|
|
659
|
-
leftIcon: /* @__PURE__ */ e(
|
|
660
|
-
onClick:
|
|
658
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "check", size: "sm" }),
|
|
659
|
+
onClick: Qn,
|
|
661
660
|
children: n("eventPlanning.saveDetails", "Save details")
|
|
662
661
|
}
|
|
663
662
|
)
|
|
664
|
-
] }),
|
|
663
|
+
] }), st = /* @__PURE__ */ s("div", { className: "nice-event-planning__form", children: [
|
|
665
664
|
/* @__PURE__ */ e(
|
|
666
665
|
Ze,
|
|
667
666
|
{
|
|
@@ -672,7 +671,7 @@ const Gt = {
|
|
|
672
671
|
}
|
|
673
672
|
),
|
|
674
673
|
/* @__PURE__ */ e(
|
|
675
|
-
|
|
674
|
+
J,
|
|
676
675
|
{
|
|
677
676
|
label: n("eventPlanning.venueName", "Venue name"),
|
|
678
677
|
value: we,
|
|
@@ -681,7 +680,7 @@ const Gt = {
|
|
|
681
680
|
}
|
|
682
681
|
),
|
|
683
682
|
le ? /* @__PURE__ */ e(
|
|
684
|
-
|
|
683
|
+
J,
|
|
685
684
|
{
|
|
686
685
|
label: n("eventPlanning.virtualUrl", "Virtual URL"),
|
|
687
686
|
value: ve,
|
|
@@ -689,7 +688,7 @@ const Gt = {
|
|
|
689
688
|
readOnly: !E
|
|
690
689
|
}
|
|
691
690
|
) : /* @__PURE__ */ e(
|
|
692
|
-
|
|
691
|
+
J,
|
|
693
692
|
{
|
|
694
693
|
label: n("eventPlanning.address", "Address"),
|
|
695
694
|
value: Se,
|
|
@@ -701,41 +700,41 @@ const Gt = {
|
|
|
701
700
|
U,
|
|
702
701
|
{
|
|
703
702
|
variant: "primary",
|
|
704
|
-
leftIcon: /* @__PURE__ */ e(
|
|
705
|
-
onClick:
|
|
703
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "check", size: "sm" }),
|
|
704
|
+
onClick: Zn,
|
|
706
705
|
children: n("eventPlanning.saveLocation", "Save location")
|
|
707
706
|
}
|
|
708
707
|
)
|
|
709
|
-
] }),
|
|
710
|
-
/* @__PURE__ */ e(
|
|
708
|
+
] }), rt = /* @__PURE__ */ e("div", { className: "nice-event-planning__participants", children: d.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-planning__empty", children: n("eventPlanning.noParticipantsYet", "No participants yet.") }) : /* @__PURE__ */ s(Ge, { children: [
|
|
709
|
+
/* @__PURE__ */ e(bn, { max: 8, children: d.map((S) => /* @__PURE__ */ e(Ve, { name: S.name, src: S.avatarUrl }, S.id)) }),
|
|
711
710
|
/* @__PURE__ */ e("ul", { className: "nice-event-planning__participant-list", children: d.map((S) => /* @__PURE__ */ s("li", { className: "nice-event-planning__participant", children: [
|
|
712
711
|
/* @__PURE__ */ e(Ve, { name: S.name, src: S.avatarUrl, size: "sm" }),
|
|
713
712
|
/* @__PURE__ */ e("span", { className: "nice-event-planning__participant-name", children: S.name }),
|
|
714
713
|
/* @__PURE__ */ e(ae, { size: "xs", subtle: !0, variant: Be(S.status), children: n(`participantList.status.${S.status}`, S.status) })
|
|
715
714
|
] }, S.id)) })
|
|
716
|
-
] }) }),
|
|
715
|
+
] }) }), ct = /* @__PURE__ */ s("div", { className: "nice-event-planning__form", children: [
|
|
717
716
|
o.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-planning__empty", children: n("eventPlanning.noSurveysYet", "No surveys yet.") }) : o.map((S) => /* @__PURE__ */ s("div", { className: "nice-event-planning__survey", children: [
|
|
718
717
|
/* @__PURE__ */ e("strong", { children: S.question }),
|
|
719
718
|
" ",
|
|
720
719
|
/* @__PURE__ */ e(ae, { size: "xs", outline: !0, variant: "info", children: n(`eventPlanning.surveyType.${S.type}`, S.type) }),
|
|
721
|
-
S.options && /* @__PURE__ */ e("div", { className: "nice-event-planning__survey-options", children: S.options.map((de,
|
|
720
|
+
S.options && /* @__PURE__ */ e("div", { className: "nice-event-planning__survey-options", children: S.options.map((de, yt) => /* @__PURE__ */ e(
|
|
722
721
|
U,
|
|
723
722
|
{
|
|
724
723
|
size: "sm",
|
|
725
724
|
variant: "outline",
|
|
726
|
-
onClick: () =>
|
|
725
|
+
onClick: () => I == null ? void 0 : I(S.id, de),
|
|
727
726
|
children: de
|
|
728
727
|
},
|
|
729
|
-
|
|
728
|
+
yt
|
|
730
729
|
)) }),
|
|
731
730
|
S.responses && /* @__PURE__ */ e("span", { className: "nice-event-planning__muted", children: n("eventPlanning.responses", "{responses} responses").replace(
|
|
732
731
|
"{responses}",
|
|
733
732
|
String(S.responses.length)
|
|
734
733
|
) })
|
|
735
734
|
] }, S.id)),
|
|
736
|
-
E &&
|
|
735
|
+
E && W && /* @__PURE__ */ s("div", { className: "nice-event-planning__form", children: [
|
|
737
736
|
/* @__PURE__ */ e(
|
|
738
|
-
|
|
737
|
+
J,
|
|
739
738
|
{
|
|
740
739
|
label: n("eventPlanning.newSurveyQuestion", "New survey question"),
|
|
741
740
|
value: fe,
|
|
@@ -758,7 +757,7 @@ const Gt = {
|
|
|
758
757
|
}
|
|
759
758
|
),
|
|
760
759
|
/* @__PURE__ */ e(
|
|
761
|
-
|
|
760
|
+
J,
|
|
762
761
|
{
|
|
763
762
|
label: n("eventPlanning.optionsCommaSeparated", "Options (comma-separated)"),
|
|
764
763
|
value: Ce,
|
|
@@ -770,27 +769,27 @@ const Gt = {
|
|
|
770
769
|
U,
|
|
771
770
|
{
|
|
772
771
|
variant: "primary",
|
|
773
|
-
leftIcon: /* @__PURE__ */ e(
|
|
774
|
-
onClick:
|
|
772
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "plus", size: "sm" }),
|
|
773
|
+
onClick: Jn,
|
|
775
774
|
disabled: !fe.trim(),
|
|
776
775
|
children: n("eventPlanning.addSurvey", "Add survey")
|
|
777
776
|
}
|
|
778
777
|
)
|
|
779
778
|
] })
|
|
780
|
-
] }),
|
|
779
|
+
] }), lt = /* @__PURE__ */ s("div", { className: "nice-event-planning__form", children: [
|
|
781
780
|
u.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-planning__empty", children: n("eventPlanning.noBillingItemsYet", "No billing items yet.") }) : /* @__PURE__ */ e(
|
|
782
|
-
|
|
781
|
+
Ot,
|
|
783
782
|
{
|
|
784
783
|
lines: [
|
|
785
|
-
...
|
|
786
|
-
{ label: n("eventPlanning.total", "Total"), amount:
|
|
784
|
+
...nt,
|
|
785
|
+
{ label: n("eventPlanning.total", "Total"), amount: tt, isSummary: !0 }
|
|
787
786
|
],
|
|
788
|
-
currency:
|
|
787
|
+
currency: it
|
|
789
788
|
}
|
|
790
789
|
),
|
|
791
790
|
E && V && /* @__PURE__ */ s("div", { className: "nice-event-planning__row", children: [
|
|
792
791
|
/* @__PURE__ */ e(
|
|
793
|
-
|
|
792
|
+
J,
|
|
794
793
|
{
|
|
795
794
|
label: n("eventPlanning.item", "Item"),
|
|
796
795
|
value: me,
|
|
@@ -799,7 +798,7 @@ const Gt = {
|
|
|
799
798
|
}
|
|
800
799
|
),
|
|
801
800
|
/* @__PURE__ */ e(
|
|
802
|
-
|
|
801
|
+
J,
|
|
803
802
|
{
|
|
804
803
|
label: n("eventPlanning.amount", "Amount"),
|
|
805
804
|
value: Ie,
|
|
@@ -812,7 +811,7 @@ const Gt = {
|
|
|
812
811
|
{
|
|
813
812
|
label: n("eventPlanning.currency", "Currency"),
|
|
814
813
|
value: O,
|
|
815
|
-
onChange: (S) =>
|
|
814
|
+
onChange: (S) => K(S),
|
|
816
815
|
options: ["PLN", "EUR", "USD", "GBP"]
|
|
817
816
|
}
|
|
818
817
|
),
|
|
@@ -820,14 +819,14 @@ const Gt = {
|
|
|
820
819
|
U,
|
|
821
820
|
{
|
|
822
821
|
variant: "primary",
|
|
823
|
-
leftIcon: /* @__PURE__ */ e(
|
|
824
|
-
onClick:
|
|
822
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "plus", size: "sm" }),
|
|
823
|
+
onClick: et,
|
|
825
824
|
disabled: !me.trim(),
|
|
826
825
|
children: n("eventPlanning.add", "Add")
|
|
827
826
|
}
|
|
828
827
|
)
|
|
829
828
|
] })
|
|
830
|
-
] }),
|
|
829
|
+
] }), ot = /* @__PURE__ */ s("div", { className: "nice-event-planning__form", children: [
|
|
831
830
|
/* @__PURE__ */ e(
|
|
832
831
|
Ze,
|
|
833
832
|
{
|
|
@@ -837,7 +836,7 @@ const Gt = {
|
|
|
837
836
|
}
|
|
838
837
|
),
|
|
839
838
|
/* @__PURE__ */ e(
|
|
840
|
-
|
|
839
|
+
J,
|
|
841
840
|
{
|
|
842
841
|
label: n("eventPlanning.maxParticipants", "Max participants"),
|
|
843
842
|
value: t.maxParticipants != null ? String(t.maxParticipants) : "",
|
|
@@ -847,20 +846,20 @@ const Gt = {
|
|
|
847
846
|
}
|
|
848
847
|
),
|
|
849
848
|
/* @__PURE__ */ e("div", { className: "nice-event-planning__muted", children: n("eventPlanning.hostCreated", "Host: {hostName} · Created {createdAt}").replace("{hostName}", String(t.hostName)).replace("{createdAt}", String(new Date(t.createdAt).toLocaleDateString())) })
|
|
850
|
-
] }),
|
|
849
|
+
] }), dt = /* @__PURE__ */ e("div", { className: "nice-event-planning__list", children: _.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-planning__empty", children: n("eventPlanning.noAgendaItemsYet", "No agenda items yet.") }) : /* @__PURE__ */ e("ul", { className: "nice-event-planning__schedule", children: _.map((S) => /* @__PURE__ */ s("li", { className: "nice-event-planning__schedule-item", children: [
|
|
851
850
|
/* @__PURE__ */ s("span", { className: "nice-event-planning__schedule-time", children: [
|
|
852
|
-
/* @__PURE__ */ e(
|
|
851
|
+
/* @__PURE__ */ e(re, { name: "clock", size: "sm" }),
|
|
853
852
|
S.startTime ?? "",
|
|
854
853
|
S.endTime ? `–${S.endTime}` : ""
|
|
855
854
|
] }),
|
|
856
855
|
/* @__PURE__ */ e("span", { className: "nice-event-planning__schedule-title", children: S.title }),
|
|
857
856
|
S.location && /* @__PURE__ */ e("span", { className: "nice-event-planning__muted", children: S.location })
|
|
858
|
-
] }, S.id)) }) }),
|
|
857
|
+
] }, S.id)) }) }), ut = /* @__PURE__ */ e("div", { className: "nice-event-planning__list", children: c.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-planning__empty", children: n("eventPlanning.noTasksYet", "No tasks yet.") }) : /* @__PURE__ */ e("ul", { className: "nice-event-planning__tasks", children: c.map((S) => /* @__PURE__ */ s("li", { className: "nice-event-planning__task", children: [
|
|
859
858
|
/* @__PURE__ */ e(Ze, { label: S.title, checked: S.done ?? !1, disabled: !E }),
|
|
860
859
|
S.assigneeName && /* @__PURE__ */ e(ae, { size: "xs", subtle: !0, variant: "info", children: S.assigneeName }),
|
|
861
860
|
S.dueDate && /* @__PURE__ */ e("span", { className: "nice-event-planning__muted", children: S.dueDate })
|
|
862
|
-
] }, S.id)) }) }),
|
|
863
|
-
/* @__PURE__ */ e(
|
|
861
|
+
] }, S.id)) }) }), mt = /* @__PURE__ */ e("div", { className: "nice-event-planning__list", children: l.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-planning__empty", children: n("eventPlanning.noVendorsYet", "No vendors yet.") }) : /* @__PURE__ */ e("ul", { className: "nice-event-planning__vendors", children: l.map((S) => /* @__PURE__ */ s("li", { className: "nice-event-planning__vendor", children: [
|
|
862
|
+
/* @__PURE__ */ e(re, { name: "briefcase", size: "sm" }),
|
|
864
863
|
/* @__PURE__ */ e("span", { className: "nice-event-planning__vendor-name", children: S.name }),
|
|
865
864
|
S.category && /* @__PURE__ */ e("span", { className: "nice-event-planning__muted", children: S.category }),
|
|
866
865
|
S.status && /* @__PURE__ */ e(ae, { size: "xs", subtle: !0, variant: Be(S.status), children: n(`eventPlanning.vendorStatus.${S.status}`, S.status) }),
|
|
@@ -869,26 +868,26 @@ const Gt = {
|
|
|
869
868
|
" ",
|
|
870
869
|
S.currency ?? ""
|
|
871
870
|
] })
|
|
872
|
-
] }, S.id)) }) }),
|
|
873
|
-
/* @__PURE__ */ e(
|
|
871
|
+
] }, S.id)) }) }), pt = /* @__PURE__ */ e("div", { className: "nice-event-planning__list", children: m.length === 0 ? /* @__PURE__ */ e("p", { className: "nice-event-planning__empty", children: n("eventPlanning.noDocumentsYet", "No documents yet.") }) : /* @__PURE__ */ e("ul", { className: "nice-event-planning__documents", children: m.map((S) => /* @__PURE__ */ s("li", { className: "nice-event-planning__document", children: [
|
|
872
|
+
/* @__PURE__ */ e(re, { name: "file", size: "sm" }),
|
|
874
873
|
/* @__PURE__ */ e("span", { className: "nice-event-planning__document-name", children: S.name }),
|
|
875
874
|
S.fileType && /* @__PURE__ */ e(ae, { size: "xs", outline: !0, variant: "secondary", children: S.fileType }),
|
|
876
875
|
S.sizeKb != null && /* @__PURE__ */ s("span", { className: "nice-event-planning__muted", children: [
|
|
877
876
|
S.sizeKb,
|
|
878
877
|
" KB"
|
|
879
878
|
] })
|
|
880
|
-
] }, S.id)) }) }),
|
|
881
|
-
details:
|
|
882
|
-
location:
|
|
883
|
-
schedule:
|
|
884
|
-
participants:
|
|
885
|
-
tasks:
|
|
886
|
-
surveys:
|
|
887
|
-
vendors:
|
|
888
|
-
budget:
|
|
889
|
-
documents:
|
|
890
|
-
settings:
|
|
891
|
-
},
|
|
879
|
+
] }, S.id)) }) }), ht = {
|
|
880
|
+
details: at,
|
|
881
|
+
location: st,
|
|
882
|
+
schedule: dt,
|
|
883
|
+
participants: rt,
|
|
884
|
+
tasks: ut,
|
|
885
|
+
surveys: ct,
|
|
886
|
+
vendors: mt,
|
|
887
|
+
budget: lt,
|
|
888
|
+
documents: pt,
|
|
889
|
+
settings: ot
|
|
890
|
+
}, gt = {
|
|
892
891
|
details: "file",
|
|
893
892
|
location: "home",
|
|
894
893
|
schedule: "clock",
|
|
@@ -899,7 +898,7 @@ const Gt = {
|
|
|
899
898
|
budget: "dollar",
|
|
900
899
|
documents: "folder",
|
|
901
900
|
settings: "settings"
|
|
902
|
-
},
|
|
901
|
+
}, vt = {
|
|
903
902
|
schedule: _.length || void 0,
|
|
904
903
|
participants: d.length || void 0,
|
|
905
904
|
tasks: c.length || void 0,
|
|
@@ -907,15 +906,15 @@ const Gt = {
|
|
|
907
906
|
vendors: l.length || void 0,
|
|
908
907
|
budget: u.length || void 0,
|
|
909
908
|
documents: m.length || void 0
|
|
910
|
-
},
|
|
909
|
+
}, ft = pe.map((S) => ({
|
|
911
910
|
id: S,
|
|
912
911
|
label: S.charAt(0).toUpperCase() + S.slice(1),
|
|
913
|
-
icon: /* @__PURE__ */ e(
|
|
914
|
-
badge:
|
|
915
|
-
content:
|
|
916
|
-
})),
|
|
912
|
+
icon: /* @__PURE__ */ e(re, { name: gt[S], size: "sm" }),
|
|
913
|
+
badge: vt[S],
|
|
914
|
+
content: ht[S]
|
|
915
|
+
})), _t = /* @__PURE__ */ s("div", { className: "nice-event-planning__toolbar", children: [
|
|
917
916
|
/* @__PURE__ */ s("div", { className: "nice-event-planning__toolbar-title", children: [
|
|
918
|
-
/* @__PURE__ */ e(
|
|
917
|
+
/* @__PURE__ */ e(re, { name: "calendar", size: "md" }),
|
|
919
918
|
/* @__PURE__ */ e("span", { className: "nice-event-planning__title", children: t.title }),
|
|
920
919
|
/* @__PURE__ */ e(ae, { size: "sm", variant: Be(t.status), children: n(`eventPlanning.eventStatus.${t.status}`, t.status) })
|
|
921
920
|
] }),
|
|
@@ -926,18 +925,18 @@ const Gt = {
|
|
|
926
925
|
{
|
|
927
926
|
size: "sm",
|
|
928
927
|
variant: "primary",
|
|
929
|
-
leftIcon: /* @__PURE__ */ e(
|
|
930
|
-
onClick: () => R({ title: Y, description:
|
|
928
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "check", size: "sm" }),
|
|
929
|
+
onClick: () => R({ title: Y, description: Z }),
|
|
931
930
|
children: n("eventPlanning.save", "Save")
|
|
932
931
|
}
|
|
933
932
|
),
|
|
934
|
-
|
|
933
|
+
q && /* @__PURE__ */ e(
|
|
935
934
|
U,
|
|
936
935
|
{
|
|
937
936
|
size: "sm",
|
|
938
937
|
variant: "success",
|
|
939
|
-
leftIcon: /* @__PURE__ */ e(
|
|
940
|
-
onClick:
|
|
938
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "upload", size: "sm" }),
|
|
939
|
+
onClick: q,
|
|
941
940
|
children: n("eventPlanning.publish", "Publish")
|
|
942
941
|
}
|
|
943
942
|
),
|
|
@@ -946,7 +945,7 @@ const Gt = {
|
|
|
946
945
|
{
|
|
947
946
|
size: "sm",
|
|
948
947
|
variant: "ghost",
|
|
949
|
-
leftIcon: /* @__PURE__ */ e(
|
|
948
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "link", size: "sm" }),
|
|
950
949
|
onClick: C,
|
|
951
950
|
children: n("eventPlanning.share", "Share")
|
|
952
951
|
}
|
|
@@ -956,7 +955,7 @@ const Gt = {
|
|
|
956
955
|
{
|
|
957
956
|
size: "sm",
|
|
958
957
|
variant: "ghost",
|
|
959
|
-
leftIcon: /* @__PURE__ */ e(
|
|
958
|
+
leftIcon: /* @__PURE__ */ e(re, { name: "download", size: "sm" }),
|
|
960
959
|
onClick: b,
|
|
961
960
|
children: n("eventPlanning.export", "Export")
|
|
962
961
|
}
|
|
@@ -968,18 +967,18 @@ const Gt = {
|
|
|
968
967
|
{
|
|
969
968
|
ref: r,
|
|
970
969
|
className: `nice-event-planning nice-event-planning--micro ${G ?? ""}`,
|
|
971
|
-
style:
|
|
970
|
+
style: ne,
|
|
972
971
|
children: /* @__PURE__ */ s("div", { className: "nice-event-planning__micro", children: [
|
|
973
|
-
/* @__PURE__ */ e(
|
|
972
|
+
/* @__PURE__ */ e(re, { name: "calendar", size: "md" }),
|
|
974
973
|
/* @__PURE__ */ s("div", { className: "nice-event-planning__micro-body", children: [
|
|
975
974
|
/* @__PURE__ */ e("span", { className: "nice-event-planning__title", children: t.title }),
|
|
976
975
|
/* @__PURE__ */ s("span", { className: "nice-event-planning__muted", children: [
|
|
977
976
|
t.startDate ? new Date(t.startDate).toLocaleString() : n("eventPlanning.noDate", "No date"),
|
|
978
|
-
(
|
|
977
|
+
(Nn = t.location) != null && Nn.name ? ` · ${t.location.name}` : ""
|
|
979
978
|
] })
|
|
980
979
|
] }),
|
|
981
980
|
/* @__PURE__ */ e(ae, { size: "sm", variant: Be(t.status), children: n(`eventPlanning.eventStatus.${t.status}`, t.status) }),
|
|
982
|
-
d.length > 0 && /* @__PURE__ */ e(
|
|
981
|
+
d.length > 0 && /* @__PURE__ */ e(bn, { max: 4, size: "sm", children: d.map((S) => /* @__PURE__ */ e(Ve, { name: S.name, src: S.avatarUrl, size: "sm" }, S.id)) })
|
|
983
982
|
] })
|
|
984
983
|
}
|
|
985
984
|
) : /* @__PURE__ */ s(
|
|
@@ -987,15 +986,15 @@ const Gt = {
|
|
|
987
986
|
{
|
|
988
987
|
ref: r,
|
|
989
988
|
className: `nice-event-planning nice-event-planning--${h} ${G ?? ""}`,
|
|
990
|
-
style:
|
|
989
|
+
style: ne,
|
|
991
990
|
children: [
|
|
992
|
-
|
|
991
|
+
_t,
|
|
993
992
|
/* @__PURE__ */ e(
|
|
994
|
-
|
|
993
|
+
Bt,
|
|
995
994
|
{
|
|
996
|
-
tabs:
|
|
997
|
-
activeTab:
|
|
998
|
-
onChange:
|
|
995
|
+
tabs: ft,
|
|
996
|
+
activeTab: jn,
|
|
997
|
+
onChange: Hn,
|
|
999
998
|
iconOnly: P,
|
|
1000
999
|
centered: k,
|
|
1001
1000
|
countLocation: T
|
|
@@ -1006,7 +1005,7 @@ const Gt = {
|
|
|
1006
1005
|
);
|
|
1007
1006
|
}
|
|
1008
1007
|
);
|
|
1009
|
-
function
|
|
1008
|
+
function jt(a) {
|
|
1010
1009
|
switch (a) {
|
|
1011
1010
|
case "confirmed":
|
|
1012
1011
|
return "success";
|
|
@@ -1029,17 +1028,17 @@ const nn = ({
|
|
|
1029
1028
|
size: d = "md",
|
|
1030
1029
|
className: o
|
|
1031
1030
|
}) => {
|
|
1032
|
-
const { t: u } =
|
|
1031
|
+
const { t: u } = ee();
|
|
1033
1032
|
return /* @__PURE__ */ s("li", { className: `nice-participant-row nice-participant-row--${d} ${o ?? ""}`, children: [
|
|
1034
1033
|
/* @__PURE__ */ e(Ve, { name: a.name, src: a.avatarUrl, size: d }),
|
|
1035
1034
|
/* @__PURE__ */ e("span", { className: "nice-participant-row__name", children: a.name }),
|
|
1036
1035
|
i && a.role && /* @__PURE__ */ e(ae, { size: "xs", outline: !0, variant: "info", children: u(`participantList.role.${a.role}`, a.role) }),
|
|
1037
|
-
r && a.status && /* @__PURE__ */ e(ae, { size: "xs", subtle: !0, variant:
|
|
1036
|
+
r && a.status && /* @__PURE__ */ e(ae, { size: "xs", subtle: !0, variant: jt(a.status), children: u(`participantList.status.${a.status}`, a.status) }),
|
|
1038
1037
|
n && /* @__PURE__ */ e("span", { className: "nice-participant-row__meta", children: n }),
|
|
1039
1038
|
t && /* @__PURE__ */ e("span", { className: "nice-participant-row__trailing", children: t })
|
|
1040
1039
|
] });
|
|
1041
|
-
},
|
|
1042
|
-
function
|
|
1040
|
+
}, Ht = /^[^\s@,;]+@[^\s@,;]+\.[^\s@,;]{2,}$/, wn = /^.*<\s*([^<>\s]+)\s*>$/;
|
|
1041
|
+
function Xn(a) {
|
|
1043
1042
|
var d, o;
|
|
1044
1043
|
const i = [], r = [], n = /* @__PURE__ */ new Set();
|
|
1045
1044
|
let t = 0;
|
|
@@ -1049,11 +1048,11 @@ function Fn(a) {
|
|
|
1049
1048
|
const _ = u.trim();
|
|
1050
1049
|
if (!_)
|
|
1051
1050
|
continue;
|
|
1052
|
-
const c = ((o = (d =
|
|
1051
|
+
const c = ((o = (d = wn.exec(_)) == null ? void 0 : d[1]) == null ? void 0 : o.trim()) ?? _, l = wn.test(_) ? [c] : c.split(/\s+/);
|
|
1053
1052
|
for (const m of l) {
|
|
1054
1053
|
if (!m)
|
|
1055
1054
|
continue;
|
|
1056
|
-
if (!
|
|
1055
|
+
if (!Ht.test(m)) {
|
|
1057
1056
|
r.push(m);
|
|
1058
1057
|
continue;
|
|
1059
1058
|
}
|
|
@@ -1067,7 +1066,7 @@ function Fn(a) {
|
|
|
1067
1066
|
}
|
|
1068
1067
|
return { valid: i, invalid: r, duplicates: t };
|
|
1069
1068
|
}
|
|
1070
|
-
function
|
|
1069
|
+
function Qt(a, i) {
|
|
1071
1070
|
const r = new Set(a.map((t) => t.toLowerCase())), n = [...a];
|
|
1072
1071
|
for (const t of i) {
|
|
1073
1072
|
const d = t.toLowerCase();
|
|
@@ -1075,7 +1074,7 @@ function Ht(a, i) {
|
|
|
1075
1074
|
}
|
|
1076
1075
|
return n;
|
|
1077
1076
|
}
|
|
1078
|
-
function
|
|
1077
|
+
function qn(a = {}) {
|
|
1079
1078
|
const { currentUserId: i, currentUserName: r, requireIdentity: n = !0 } = a, [t, d] = D(""), o = !i, u = r ?? t, _ = !n || u.trim().length > 0;
|
|
1080
1079
|
return {
|
|
1081
1080
|
isAnonymous: o,
|
|
@@ -1085,13 +1084,13 @@ function Xn(a = {}) {
|
|
|
1085
1084
|
actor: { userId: i, userName: u.trim() }
|
|
1086
1085
|
};
|
|
1087
1086
|
}
|
|
1088
|
-
const
|
|
1087
|
+
const Zt = [
|
|
1089
1088
|
{ answer: "yes", label: "Yes", variant: "success", Icon: je },
|
|
1090
1089
|
{ answer: "maybe", label: "Maybe", variant: "warning", Icon: sn },
|
|
1091
|
-
{ answer: "no", label: "No", variant: "error", Icon:
|
|
1092
|
-
],
|
|
1090
|
+
{ answer: "no", label: "No", variant: "error", Icon: $n }
|
|
1091
|
+
], Sn = /* @__PURE__ */ te(
|
|
1093
1092
|
function(i, r) {
|
|
1094
|
-
const { t: n } =
|
|
1093
|
+
const { t: n } = ee(), {
|
|
1095
1094
|
value: t,
|
|
1096
1095
|
onRespond: d,
|
|
1097
1096
|
allowPlusOnes: o = !1,
|
|
@@ -1106,10 +1105,10 @@ const Qt = [
|
|
|
1106
1105
|
size: g = "md",
|
|
1107
1106
|
className: P,
|
|
1108
1107
|
style: k
|
|
1109
|
-
} = i, T =
|
|
1108
|
+
} = i, T = qn({ currentUserId: l, currentUserName: m }), [f, p] = D(_), [A, y] = D(""), M = !h && T.isAnonymous && !T.canAct, w = z || v, N = (x) => {
|
|
1110
1109
|
w || !d || d({
|
|
1111
|
-
answer:
|
|
1112
|
-
plusOnes: o &&
|
|
1110
|
+
answer: x,
|
|
1111
|
+
plusOnes: o && x !== "no" ? f : void 0,
|
|
1113
1112
|
note: c && A.trim() ? A.trim() : void 0,
|
|
1114
1113
|
userId: T.actor.userId,
|
|
1115
1114
|
userName: T.actor.userName || void 0
|
|
@@ -1123,7 +1122,7 @@ const Qt = [
|
|
|
1123
1122
|
style: k,
|
|
1124
1123
|
children: [
|
|
1125
1124
|
!h && T.isAnonymous && /* @__PURE__ */ e(
|
|
1126
|
-
|
|
1125
|
+
J,
|
|
1127
1126
|
{
|
|
1128
1127
|
label: n("rsvpControl.yourName", "Your name"),
|
|
1129
1128
|
value: T.name,
|
|
@@ -1140,18 +1139,18 @@ const Qt = [
|
|
|
1140
1139
|
className: "nice-rsvp-control__answers",
|
|
1141
1140
|
role: "group",
|
|
1142
1141
|
"aria-label": n("rsvpControl.yourReply", "Your reply"),
|
|
1143
|
-
children:
|
|
1142
|
+
children: Zt.map(({ answer: x, label: B, variant: X, Icon: E }) => /* @__PURE__ */ e(
|
|
1144
1143
|
U,
|
|
1145
1144
|
{
|
|
1146
1145
|
size: g,
|
|
1147
|
-
variant: t ===
|
|
1146
|
+
variant: t === x ? X : "outline",
|
|
1148
1147
|
leftIcon: /* @__PURE__ */ e(E, { size: 16 }),
|
|
1149
1148
|
disabled: w || M,
|
|
1150
|
-
"aria-pressed": t ===
|
|
1151
|
-
onClick: () => N(
|
|
1152
|
-
children: n(`rsvpControl.answer.${
|
|
1149
|
+
"aria-pressed": t === x,
|
|
1150
|
+
onClick: () => N(x),
|
|
1151
|
+
children: n(`rsvpControl.answer.${x}`, B)
|
|
1153
1152
|
},
|
|
1154
|
-
|
|
1153
|
+
x
|
|
1155
1154
|
))
|
|
1156
1155
|
}
|
|
1157
1156
|
),
|
|
@@ -1161,7 +1160,7 @@ const Qt = [
|
|
|
1161
1160
|
dn,
|
|
1162
1161
|
{
|
|
1163
1162
|
value: f,
|
|
1164
|
-
onChange: (
|
|
1163
|
+
onChange: (x) => p(Math.max(0, Math.min(u, x ?? 0))),
|
|
1165
1164
|
min: 0,
|
|
1166
1165
|
max: u,
|
|
1167
1166
|
step: 1,
|
|
@@ -1171,7 +1170,7 @@ const Qt = [
|
|
|
1171
1170
|
)
|
|
1172
1171
|
] }),
|
|
1173
1172
|
!h && c && /* @__PURE__ */ e(
|
|
1174
|
-
|
|
1173
|
+
J,
|
|
1175
1174
|
{
|
|
1176
1175
|
label: n("rsvpControl.note", "Note"),
|
|
1177
1176
|
value: A,
|
|
@@ -1186,11 +1185,11 @@ const Qt = [
|
|
|
1186
1185
|
}
|
|
1187
1186
|
);
|
|
1188
1187
|
}
|
|
1189
|
-
),
|
|
1188
|
+
), Jt = {
|
|
1190
1189
|
yes: "confirmed",
|
|
1191
1190
|
maybe: "invited",
|
|
1192
1191
|
no: "declined"
|
|
1193
|
-
},
|
|
1192
|
+
}, Cn = {
|
|
1194
1193
|
confirmed: "yes",
|
|
1195
1194
|
"checked-in": "yes",
|
|
1196
1195
|
declined: "no"
|
|
@@ -1200,9 +1199,9 @@ const Qt = [
|
|
|
1200
1199
|
"invited",
|
|
1201
1200
|
"declined",
|
|
1202
1201
|
"no-show"
|
|
1203
|
-
],
|
|
1204
|
-
const { t: n } =
|
|
1205
|
-
participants: t =
|
|
1202
|
+
], ei = [], ra = /* @__PURE__ */ te(function(i, r) {
|
|
1203
|
+
const { t: n } = ee(), {
|
|
1204
|
+
participants: t = ei,
|
|
1206
1205
|
mode: d = "organizer",
|
|
1207
1206
|
currentUserId: o,
|
|
1208
1207
|
currentUserName: u,
|
|
@@ -1221,50 +1220,50 @@ const Qt = [
|
|
|
1221
1220
|
size: p = "md",
|
|
1222
1221
|
className: A,
|
|
1223
1222
|
style: y
|
|
1224
|
-
} = i, [M, w] = D(""), [N,
|
|
1225
|
-
const
|
|
1223
|
+
} = i, [M, w] = D(""), [N, x] = D("all"), [B, X] = D(""), E = T || f, R = d === "guest", q = F(() => {
|
|
1224
|
+
const I = { total: t.length };
|
|
1226
1225
|
for (const V of Ye)
|
|
1227
|
-
|
|
1226
|
+
I[V] = 0;
|
|
1228
1227
|
for (const V of t)
|
|
1229
|
-
|
|
1230
|
-
return
|
|
1228
|
+
I[V.status] = (I[V.status] ?? 0) + 1;
|
|
1229
|
+
return I;
|
|
1231
1230
|
}, [t]), C = F(() => {
|
|
1232
1231
|
if (R)
|
|
1233
1232
|
return t.filter((V) => V.userId === o || V.id === o);
|
|
1234
|
-
const
|
|
1235
|
-
return t.filter((V) => N !== "all" && V.status !== N ? !1 : !
|
|
1233
|
+
const I = M.trim().toLowerCase();
|
|
1234
|
+
return t.filter((V) => N !== "all" && V.status !== N ? !1 : !I || V.name.toLowerCase().includes(I));
|
|
1236
1235
|
}, [t, R, o, M, N]), b = F(() => {
|
|
1237
1236
|
if (v === "none" || R)
|
|
1238
1237
|
return [{ key: "all", label: "", items: C }];
|
|
1239
|
-
const
|
|
1238
|
+
const I = /* @__PURE__ */ new Map();
|
|
1240
1239
|
for (const G of C) {
|
|
1241
|
-
const
|
|
1242
|
-
Y ? Y.push(G) :
|
|
1240
|
+
const ne = v === "status" ? G.status : G.role, Y = I.get(ne);
|
|
1241
|
+
Y ? Y.push(G) : I.set(ne, [G]);
|
|
1243
1242
|
}
|
|
1244
|
-
return [...
|
|
1245
|
-
}, [C, v, R]), L = F(() =>
|
|
1246
|
-
_ == null || _(
|
|
1247
|
-
},
|
|
1243
|
+
return [...I.keys()].sort((G, ne) => v !== "status" ? G.localeCompare(ne) : Ye.indexOf(G) - Ye.indexOf(ne)).map((G) => ({ key: G, label: G, items: I.get(G) ?? [] }));
|
|
1244
|
+
}, [C, v, R]), L = F(() => Xn(B), [B]), j = (I) => (V) => {
|
|
1245
|
+
_ == null || _(I, Jt[V.answer], V);
|
|
1246
|
+
}, W = () => {
|
|
1248
1247
|
!h || L.valid.length === 0 || (h(L.valid), X(""));
|
|
1249
1248
|
};
|
|
1250
1249
|
if (R) {
|
|
1251
|
-
const
|
|
1252
|
-
return
|
|
1250
|
+
const I = C[0];
|
|
1251
|
+
return I ? /* @__PURE__ */ s(
|
|
1253
1252
|
"div",
|
|
1254
1253
|
{
|
|
1255
1254
|
ref: r,
|
|
1256
1255
|
className: `nice-participant-list nice-participant-list--guest ${A ?? ""}`,
|
|
1257
1256
|
style: y,
|
|
1258
1257
|
children: [
|
|
1259
|
-
/* @__PURE__ */ e("ul", { className: "nice-participant-list__rows", children: /* @__PURE__ */ e(nn, { participant:
|
|
1258
|
+
/* @__PURE__ */ e("ul", { className: "nice-participant-list__rows", children: /* @__PURE__ */ e(nn, { participant: I, size: p }) }),
|
|
1260
1259
|
/* @__PURE__ */ e(
|
|
1261
|
-
|
|
1260
|
+
Sn,
|
|
1262
1261
|
{
|
|
1263
|
-
value:
|
|
1264
|
-
onRespond:
|
|
1262
|
+
value: Cn[I.status],
|
|
1263
|
+
onRespond: j(I.id),
|
|
1265
1264
|
allowPlusOnes: k,
|
|
1266
|
-
currentUserId: o ??
|
|
1267
|
-
currentUserName: u ??
|
|
1265
|
+
currentUserId: o ?? I.userId,
|
|
1266
|
+
currentUserName: u ?? I.name,
|
|
1268
1267
|
disabled: T,
|
|
1269
1268
|
readOnly: f,
|
|
1270
1269
|
size: p
|
|
@@ -1286,27 +1285,27 @@ const Qt = [
|
|
|
1286
1285
|
return /* @__PURE__ */ s("div", { ref: r, className: `nice-participant-list ${A ?? ""}`, style: y, children: [
|
|
1287
1286
|
g && /* @__PURE__ */ s("div", { className: "nice-participant-list__summary", children: [
|
|
1288
1287
|
/* @__PURE__ */ s("span", { className: "nice-participant-list__stat", children: [
|
|
1289
|
-
/* @__PURE__ */ e("strong", { children:
|
|
1288
|
+
/* @__PURE__ */ e("strong", { children: q.confirmed }),
|
|
1290
1289
|
" ",
|
|
1291
1290
|
n("participantList.confirmed", "confirmed")
|
|
1292
1291
|
] }),
|
|
1293
1292
|
/* @__PURE__ */ s("span", { className: "nice-participant-list__stat", children: [
|
|
1294
|
-
/* @__PURE__ */ e("strong", { children:
|
|
1293
|
+
/* @__PURE__ */ e("strong", { children: q.invited }),
|
|
1295
1294
|
" ",
|
|
1296
1295
|
n("participantList.awaitingReply", "awaiting reply")
|
|
1297
1296
|
] }),
|
|
1298
1297
|
/* @__PURE__ */ s("span", { className: "nice-participant-list__stat", children: [
|
|
1299
|
-
/* @__PURE__ */ e("strong", { children:
|
|
1298
|
+
/* @__PURE__ */ e("strong", { children: q.declined }),
|
|
1300
1299
|
" ",
|
|
1301
1300
|
n("participantList.declined", "declined")
|
|
1302
1301
|
] }),
|
|
1303
1302
|
/* @__PURE__ */ s("span", { className: "nice-participant-list__stat", children: [
|
|
1304
|
-
/* @__PURE__ */ e("strong", { children:
|
|
1303
|
+
/* @__PURE__ */ e("strong", { children: q["checked-in"] }),
|
|
1305
1304
|
" ",
|
|
1306
1305
|
n("participantList.checkedIn", "checked in")
|
|
1307
1306
|
] }),
|
|
1308
1307
|
/* @__PURE__ */ s("span", { className: "nice-participant-list__stat nice-participant-list__stat--total", children: [
|
|
1309
|
-
/* @__PURE__ */ e("strong", { children:
|
|
1308
|
+
/* @__PURE__ */ e("strong", { children: q.total }),
|
|
1310
1309
|
" ",
|
|
1311
1310
|
n("participantList.total", "total")
|
|
1312
1311
|
] })
|
|
@@ -1314,12 +1313,12 @@ const Qt = [
|
|
|
1314
1313
|
(P || m || l) && /* @__PURE__ */ s("div", { className: "nice-participant-list__toolbar", children: [
|
|
1315
1314
|
P && /* @__PURE__ */ s(Ge, { children: [
|
|
1316
1315
|
/* @__PURE__ */ e(
|
|
1317
|
-
|
|
1316
|
+
J,
|
|
1318
1317
|
{
|
|
1319
1318
|
value: M,
|
|
1320
1319
|
onChange: w,
|
|
1321
1320
|
placeholder: n("participantList.searchGuests", "Search guests…"),
|
|
1322
|
-
prefix: /* @__PURE__ */ e(
|
|
1321
|
+
prefix: /* @__PURE__ */ e(bt, { size: 15 }),
|
|
1323
1322
|
size: p
|
|
1324
1323
|
}
|
|
1325
1324
|
),
|
|
@@ -1327,13 +1326,13 @@ const Qt = [
|
|
|
1327
1326
|
ze,
|
|
1328
1327
|
{
|
|
1329
1328
|
value: N,
|
|
1330
|
-
onChange: (
|
|
1329
|
+
onChange: (I) => x(I),
|
|
1331
1330
|
size: p,
|
|
1332
1331
|
options: [
|
|
1333
1332
|
{ value: "all", label: n("participantList.allStatuses", "All statuses") },
|
|
1334
|
-
...Ye.map((
|
|
1335
|
-
value:
|
|
1336
|
-
label: n(`participantList.status.${
|
|
1333
|
+
...Ye.map((I) => ({
|
|
1334
|
+
value: I,
|
|
1335
|
+
label: n(`participantList.status.${I}`, I)
|
|
1337
1336
|
}))
|
|
1338
1337
|
]
|
|
1339
1338
|
}
|
|
@@ -1341,7 +1340,7 @@ const Qt = [
|
|
|
1341
1340
|
] }),
|
|
1342
1341
|
m,
|
|
1343
1342
|
l && !m && /* @__PURE__ */ s("span", { className: "nice-participant-list__scan-hint", children: [
|
|
1344
|
-
/* @__PURE__ */ e(
|
|
1343
|
+
/* @__PURE__ */ e(kt, { size: 15 }),
|
|
1345
1344
|
" ",
|
|
1346
1345
|
n("participantList.scannerReady", "Scanner ready")
|
|
1347
1346
|
] })
|
|
@@ -1352,17 +1351,17 @@ const Qt = [
|
|
|
1352
1351
|
title: n("participantList.noGuestsYet", "No guests yet"),
|
|
1353
1352
|
description: t.length > 0 ? n("participantList.noMatch", "No one matches the current filter.") : n("participantList.invitePeopleHint", "Invite people to see them here.")
|
|
1354
1353
|
}
|
|
1355
|
-
) : b.map((
|
|
1356
|
-
|
|
1357
|
-
|
|
1354
|
+
) : b.map((I) => /* @__PURE__ */ s("section", { className: "nice-participant-list__group", children: [
|
|
1355
|
+
I.label && /* @__PURE__ */ s("h4", { className: "nice-participant-list__group-title", children: [
|
|
1356
|
+
I.label,
|
|
1358
1357
|
" ",
|
|
1359
1358
|
/* @__PURE__ */ s("span", { children: [
|
|
1360
1359
|
"(",
|
|
1361
|
-
|
|
1360
|
+
I.items.length,
|
|
1362
1361
|
")"
|
|
1363
1362
|
] })
|
|
1364
1363
|
] }),
|
|
1365
|
-
/* @__PURE__ */ e("ul", { className: "nice-participant-list__rows", children:
|
|
1364
|
+
/* @__PURE__ */ e("ul", { className: "nice-participant-list__rows", children: I.items.map((V) => /* @__PURE__ */ s(
|
|
1366
1365
|
nn,
|
|
1367
1366
|
{
|
|
1368
1367
|
participant: V,
|
|
@@ -1372,11 +1371,11 @@ const Qt = [
|
|
|
1372
1371
|
) }, G.key)),
|
|
1373
1372
|
children: [
|
|
1374
1373
|
_ && /* @__PURE__ */ e(
|
|
1375
|
-
|
|
1374
|
+
Sn,
|
|
1376
1375
|
{
|
|
1377
1376
|
compact: !0,
|
|
1378
|
-
value:
|
|
1379
|
-
onRespond:
|
|
1377
|
+
value: Cn[V.status],
|
|
1378
|
+
onRespond: j(V.id),
|
|
1380
1379
|
currentUserId: V.userId,
|
|
1381
1380
|
currentUserName: V.name,
|
|
1382
1381
|
disabled: E,
|
|
@@ -1398,7 +1397,7 @@ const Qt = [
|
|
|
1398
1397
|
},
|
|
1399
1398
|
V.id
|
|
1400
1399
|
)) })
|
|
1401
|
-
] },
|
|
1400
|
+
] }, I.key)),
|
|
1402
1401
|
h && !f && /* @__PURE__ */ s("div", { className: "nice-participant-list__invite", children: [
|
|
1403
1402
|
/* @__PURE__ */ e(
|
|
1404
1403
|
on,
|
|
@@ -1420,9 +1419,9 @@ const Qt = [
|
|
|
1420
1419
|
{
|
|
1421
1420
|
variant: "primary",
|
|
1422
1421
|
size: p,
|
|
1423
|
-
leftIcon: /* @__PURE__ */ e(
|
|
1422
|
+
leftIcon: /* @__PURE__ */ e(Rn, { size: 15 }),
|
|
1424
1423
|
disabled: T || L.valid.length === 0,
|
|
1425
|
-
onClick:
|
|
1424
|
+
onClick: W,
|
|
1426
1425
|
children: n("participantList.invite", "Invite {valid}").replace(
|
|
1427
1426
|
"{valid}",
|
|
1428
1427
|
L.valid.length > 0 ? `(${L.valid.length})` : ""
|
|
@@ -1441,7 +1440,7 @@ const Qt = [
|
|
|
1441
1440
|
] })
|
|
1442
1441
|
] })
|
|
1443
1442
|
] });
|
|
1444
|
-
}),
|
|
1443
|
+
}), ni = {
|
|
1445
1444
|
// No minor unit at all.
|
|
1446
1445
|
BIF: 0,
|
|
1447
1446
|
CLP: 0,
|
|
@@ -1469,18 +1468,18 @@ const Qt = [
|
|
|
1469
1468
|
OMR: 3,
|
|
1470
1469
|
TND: 3
|
|
1471
1470
|
};
|
|
1472
|
-
function
|
|
1473
|
-
return
|
|
1471
|
+
function mn(a) {
|
|
1472
|
+
return ni[a == null ? void 0 : a.toUpperCase()] ?? 2;
|
|
1474
1473
|
}
|
|
1475
|
-
function
|
|
1476
|
-
return Number.isFinite(a) ? Math.round(a * 10 **
|
|
1474
|
+
function pn(a, i) {
|
|
1475
|
+
return Number.isFinite(a) ? Math.round(a * 10 ** mn(i)) : 0;
|
|
1477
1476
|
}
|
|
1478
|
-
function
|
|
1479
|
-
const r =
|
|
1477
|
+
function qe(a, i) {
|
|
1478
|
+
const r = mn(i);
|
|
1480
1479
|
return r === 0 ? a : a / 10 ** r;
|
|
1481
1480
|
}
|
|
1482
|
-
function
|
|
1483
|
-
const n =
|
|
1481
|
+
function ti(a, i, r) {
|
|
1482
|
+
const n = mn(i), t = qe(a, i);
|
|
1484
1483
|
try {
|
|
1485
1484
|
return new Intl.NumberFormat(r, {
|
|
1486
1485
|
style: "currency",
|
|
@@ -1493,10 +1492,10 @@ function ni(a, i, r) {
|
|
|
1493
1492
|
}
|
|
1494
1493
|
}
|
|
1495
1494
|
function ce(a, i, r) {
|
|
1496
|
-
return
|
|
1495
|
+
return ti(pn(a, i), i, r);
|
|
1497
1496
|
}
|
|
1498
1497
|
const tn = { minX: 0, minY: 0, maxX: 0, maxY: 0 };
|
|
1499
|
-
function
|
|
1498
|
+
function ii(a, i = 0) {
|
|
1500
1499
|
if (a.length === 0)
|
|
1501
1500
|
return { ...tn };
|
|
1502
1501
|
let r = 1 / 0, n = 1 / 0, t = -1 / 0, d = -1 / 0;
|
|
@@ -1504,7 +1503,7 @@ function ti(a, i = 0) {
|
|
|
1504
1503
|
o.x < r && (r = o.x), o.y < n && (n = o.y), o.x > t && (t = o.x), o.y > d && (d = o.y);
|
|
1505
1504
|
return { minX: r - i, minY: n - i, maxX: t + i, maxY: d + i };
|
|
1506
1505
|
}
|
|
1507
|
-
function
|
|
1506
|
+
function xn(a, i) {
|
|
1508
1507
|
return {
|
|
1509
1508
|
minX: Math.min(a.minX, i.minX),
|
|
1510
1509
|
minY: Math.min(a.minY, i.minY),
|
|
@@ -1512,10 +1511,10 @@ function Cn(a, i) {
|
|
|
1512
1511
|
maxY: Math.max(a.maxY, i.maxY)
|
|
1513
1512
|
};
|
|
1514
1513
|
}
|
|
1515
|
-
function
|
|
1514
|
+
function In(a, i) {
|
|
1516
1515
|
return a.minX <= i.maxX && a.maxX >= i.minX && a.minY <= i.maxY && a.maxY >= i.minY;
|
|
1517
1516
|
}
|
|
1518
|
-
function
|
|
1517
|
+
function ai(a, i, r = 0) {
|
|
1519
1518
|
const n = a.zoom || 1, t = -a.pan.x / n - r, d = -a.pan.y / n - r;
|
|
1520
1519
|
return {
|
|
1521
1520
|
minX: t,
|
|
@@ -1524,22 +1523,22 @@ function ii(a, i, r = 0) {
|
|
|
1524
1523
|
maxY: d + i.height / n + r * 2
|
|
1525
1524
|
};
|
|
1526
1525
|
}
|
|
1527
|
-
function
|
|
1526
|
+
function si(a, i = 12) {
|
|
1528
1527
|
const r = [], n = [], t = /* @__PURE__ */ new Map(), d = /* @__PURE__ */ new Map();
|
|
1529
1528
|
let o = null, u = 0;
|
|
1530
1529
|
for (const _ of a.sections ?? []) {
|
|
1531
1530
|
let c = null, l = 0;
|
|
1532
1531
|
(_.rows ?? []).forEach((h, z) => {
|
|
1533
|
-
const v =
|
|
1532
|
+
const v = ri(h.seats ?? []);
|
|
1534
1533
|
if (v.length === 0)
|
|
1535
1534
|
return;
|
|
1536
|
-
const g =
|
|
1535
|
+
const g = ii(v, i);
|
|
1537
1536
|
n.push({ sectionId: _.id, rowIndex: z, label: h.label, seats: v, bounds: g }), v.forEach((P, k) => {
|
|
1538
1537
|
t.set(P.id, P), d.set(P.id, { sectionId: _.id, rowIndex: z, seatIndex: k });
|
|
1539
|
-
}), l += v.length, c = c ?
|
|
1538
|
+
}), l += v.length, c = c ? xn(c, g) : g;
|
|
1540
1539
|
});
|
|
1541
1540
|
const m = c ?? { ...tn };
|
|
1542
|
-
r.push({ section: _, bounds: m, seatCount: l }), u += l, l > 0 && (o = o ?
|
|
1541
|
+
r.push({ section: _, bounds: m, seatCount: l }), u += l, l > 0 && (o = o ? xn(o, m) : m);
|
|
1543
1542
|
}
|
|
1544
1543
|
return {
|
|
1545
1544
|
sections: r,
|
|
@@ -1550,21 +1549,21 @@ function ai(a, i = 12) {
|
|
|
1550
1549
|
locationById: d
|
|
1551
1550
|
};
|
|
1552
1551
|
}
|
|
1553
|
-
function
|
|
1552
|
+
function ri(a) {
|
|
1554
1553
|
return [...a].sort((i, r) => i.number - r.number || i.x - r.x);
|
|
1555
1554
|
}
|
|
1556
|
-
function
|
|
1555
|
+
function ci(a, i) {
|
|
1557
1556
|
return a > i * 4 ? "section" : a > i ? "row" : "seat";
|
|
1558
1557
|
}
|
|
1559
|
-
function
|
|
1560
|
-
const t = a.sections.filter((l) =>
|
|
1561
|
-
(l) => d.has(l.sectionId) &&
|
|
1558
|
+
function li(a, i, r = 2500, n) {
|
|
1559
|
+
const t = a.sections.filter((l) => In(l.bounds, i)), d = new Set(t.map((l) => l.section.id)), o = a.rows.filter(
|
|
1560
|
+
(l) => d.has(l.sectionId) && In(l.bounds, i)
|
|
1562
1561
|
);
|
|
1563
1562
|
let u = 0;
|
|
1564
1563
|
for (const l of o)
|
|
1565
1564
|
for (const m of l.seats)
|
|
1566
1565
|
m.x >= i.minX && m.x <= i.maxX && m.y >= i.minY && m.y <= i.maxY && (u += 1);
|
|
1567
|
-
const _ = n ??
|
|
1566
|
+
const _ = n ?? ci(u, r);
|
|
1568
1567
|
let c = [];
|
|
1569
1568
|
if (_ === "seat") {
|
|
1570
1569
|
c = [];
|
|
@@ -1574,7 +1573,7 @@ function ci(a, i, r = 2500, n) {
|
|
|
1574
1573
|
}
|
|
1575
1574
|
return { tier: _, sections: t, rows: _ === "section" ? [] : o, seats: c, visibleSeatCount: u };
|
|
1576
1575
|
}
|
|
1577
|
-
function
|
|
1576
|
+
function hn(a) {
|
|
1578
1577
|
if (a.accessType)
|
|
1579
1578
|
return a.accessType;
|
|
1580
1579
|
if (a.status === "wheelchair" || a.status === "companion")
|
|
@@ -1584,7 +1583,7 @@ function Ae(a, i) {
|
|
|
1584
1583
|
const r = (i == null ? void 0 : i[a.id]) ?? a.status;
|
|
1585
1584
|
return r === "wheelchair" || r === "companion" ? "available" : r;
|
|
1586
1585
|
}
|
|
1587
|
-
function
|
|
1586
|
+
function Pn(a, i, r) {
|
|
1588
1587
|
var t;
|
|
1589
1588
|
const n = (t = i.priceCategories) == null ? void 0 : t.find((d) => d.id === a.priceCategoryId);
|
|
1590
1589
|
return {
|
|
@@ -1592,17 +1591,17 @@ function In(a, i, r) {
|
|
|
1592
1591
|
currency: r.currency
|
|
1593
1592
|
};
|
|
1594
1593
|
}
|
|
1595
|
-
function
|
|
1594
|
+
function oi(a, i = {}, r) {
|
|
1596
1595
|
return !(Ae(a, r) !== "available" || i.allowedCategories && !i.allowedCategories.includes(a.priceCategoryId));
|
|
1597
1596
|
}
|
|
1598
1597
|
function Wn(a, i = {}, r) {
|
|
1599
1598
|
const n = [];
|
|
1600
1599
|
let t = null;
|
|
1601
1600
|
return a.forEach((d, o) => {
|
|
1602
|
-
|
|
1601
|
+
oi(d, i, r) ? t ? t.seats.push(d) : t = { start: o, seats: [d] } : t && (n.push(t), t = null);
|
|
1603
1602
|
}), t && n.push(t), n;
|
|
1604
1603
|
}
|
|
1605
|
-
function
|
|
1604
|
+
function di(a, i, r = {}, n) {
|
|
1606
1605
|
const t = r.maxSeats ?? 8;
|
|
1607
1606
|
if (a.length > t)
|
|
1608
1607
|
return { ok: !1, reason: "max-seats" };
|
|
@@ -1651,13 +1650,13 @@ function oi(a, i, r = {}, n) {
|
|
|
1651
1650
|
}
|
|
1652
1651
|
return { ok: !0 };
|
|
1653
1652
|
}
|
|
1654
|
-
function
|
|
1653
|
+
function ui(a, i, r, n = {}, t) {
|
|
1655
1654
|
if (a.includes(i))
|
|
1656
1655
|
return { selected: a.filter((u) => u !== i) };
|
|
1657
|
-
const d = [...a, i], o =
|
|
1656
|
+
const d = [...a, i], o = di(d, r, n, t);
|
|
1658
1657
|
return o.ok ? { selected: d } : { rejected: o.reason ?? "not-adjacent" };
|
|
1659
1658
|
}
|
|
1660
|
-
function
|
|
1659
|
+
function mi(a, i, r = {}, n = {}, t) {
|
|
1661
1660
|
if (i <= 0)
|
|
1662
1661
|
return [];
|
|
1663
1662
|
const d = n.categoryId ? { ...r, allowedCategories: [n.categoryId] } : r;
|
|
@@ -1677,7 +1676,7 @@ function ui(a, i, r = {}, n = {}, t) {
|
|
|
1677
1676
|
}
|
|
1678
1677
|
return (o == null ? void 0 : o.ids) ?? [];
|
|
1679
1678
|
}
|
|
1680
|
-
function
|
|
1679
|
+
function pi(a, i, r) {
|
|
1681
1680
|
var l, m, h, z;
|
|
1682
1681
|
const n = a.locationById.get(i);
|
|
1683
1682
|
if (!n)
|
|
@@ -1707,7 +1706,7 @@ function mi(a, i, r) {
|
|
|
1707
1706
|
}
|
|
1708
1707
|
return (_ == null ? void 0 : _.id) ?? null;
|
|
1709
1708
|
}
|
|
1710
|
-
function
|
|
1709
|
+
function hi(a, i, r) {
|
|
1711
1710
|
var _, c, l;
|
|
1712
1711
|
const n = a.sections.filter((m) => m.seatCount > 0);
|
|
1713
1712
|
if (n.length === 0)
|
|
@@ -1716,10 +1715,10 @@ function pi(a, i, r) {
|
|
|
1716
1715
|
return u ? ((l = (c = a.rows.find((m) => m.sectionId === u.section.id)) == null ? void 0 : c.seats[0]) == null ? void 0 : l.id) ?? null : null;
|
|
1717
1716
|
}
|
|
1718
1717
|
const $e = 8;
|
|
1719
|
-
function
|
|
1718
|
+
function gi(a, i) {
|
|
1720
1719
|
return a.seats.length === 0 ? 0 : a.seats.filter((n) => Ae(n, i) === "available").length / a.seats.length;
|
|
1721
1720
|
}
|
|
1722
|
-
const
|
|
1721
|
+
const vi = ({
|
|
1723
1722
|
cull: a,
|
|
1724
1723
|
selectedIds: i,
|
|
1725
1724
|
cursorId: r,
|
|
@@ -1730,7 +1729,7 @@ const gi = ({
|
|
|
1730
1729
|
onSectionClick: u,
|
|
1731
1730
|
describeSeat: _
|
|
1732
1731
|
}) => {
|
|
1733
|
-
const { t: c } =
|
|
1732
|
+
const { t: c } = ee();
|
|
1734
1733
|
return a.tier === "section" ? /* @__PURE__ */ e("g", { className: "nice-seating-chart__sections", children: a.sections.map(({ section: l, bounds: m, seatCount: h }) => /* @__PURE__ */ s("g", { className: "nice-seating-chart__section", children: [
|
|
1735
1734
|
/* @__PURE__ */ e(
|
|
1736
1735
|
"rect",
|
|
@@ -1761,7 +1760,7 @@ const gi = ({
|
|
|
1761
1760
|
}
|
|
1762
1761
|
)
|
|
1763
1762
|
] }, l.id)) }) : a.tier === "row" ? /* @__PURE__ */ e("g", { className: "nice-seating-chart__rows", children: a.rows.map((l) => {
|
|
1764
|
-
const m =
|
|
1763
|
+
const m = gi(l, n);
|
|
1765
1764
|
return /* @__PURE__ */ s("g", { children: [
|
|
1766
1765
|
/* @__PURE__ */ e(
|
|
1767
1766
|
"rect",
|
|
@@ -1794,7 +1793,7 @@ const gi = ({
|
|
|
1794
1793
|
)
|
|
1795
1794
|
] }, `${l.sectionId}-${l.rowIndex}`);
|
|
1796
1795
|
}) }) : /* @__PURE__ */ e("g", { className: "nice-seating-chart__seats", children: a.seats.map((l) => {
|
|
1797
|
-
const m = Ae(l, n), h =
|
|
1796
|
+
const m = Ae(l, n), h = hn(l), z = i.has(l.id), v = r === l.id, g = { row: l.row, number: l.number }, P = [
|
|
1798
1797
|
"nice-seating-chart__seat",
|
|
1799
1798
|
`nice-seating-chart__seat--${m}`,
|
|
1800
1799
|
z ? "nice-seating-chart__seat--selected" : "",
|
|
@@ -1834,7 +1833,7 @@ const gi = ({
|
|
|
1834
1833
|
}
|
|
1835
1834
|
),
|
|
1836
1835
|
h === "wheelchair" && /* @__PURE__ */ e(
|
|
1837
|
-
|
|
1836
|
+
Dn,
|
|
1838
1837
|
{
|
|
1839
1838
|
size: 10,
|
|
1840
1839
|
x: l.x - 5,
|
|
@@ -1860,7 +1859,7 @@ const gi = ({
|
|
|
1860
1859
|
l.id
|
|
1861
1860
|
);
|
|
1862
1861
|
}) });
|
|
1863
|
-
},
|
|
1862
|
+
}, fi = ({
|
|
1864
1863
|
index: a,
|
|
1865
1864
|
selectedIds: i,
|
|
1866
1865
|
statusOverrides: r,
|
|
@@ -1872,7 +1871,7 @@ const gi = ({
|
|
|
1872
1871
|
defaultOpen: _ = !1
|
|
1873
1872
|
}) => {
|
|
1874
1873
|
var f;
|
|
1875
|
-
const { t: c } =
|
|
1874
|
+
const { t: c } = ee(), l = F(
|
|
1876
1875
|
() => a.sections.filter((p) => p.seatCount > 0),
|
|
1877
1876
|
[a.sections]
|
|
1878
1877
|
), [m, h] = D(((f = l[0]) == null ? void 0 : f.section.id) ?? ""), [z, v] = D(0), [g, P] = D(2), k = F(
|
|
@@ -1880,7 +1879,7 @@ const gi = ({
|
|
|
1880
1879
|
[a.rows, m]
|
|
1881
1880
|
), T = k.find((p) => p.rowIndex === z) ?? k[0];
|
|
1882
1881
|
return /* @__PURE__ */ s(
|
|
1883
|
-
|
|
1882
|
+
Yt,
|
|
1884
1883
|
{
|
|
1885
1884
|
trigger: c("seatListPanel.chooseWithoutMap", "Choose seats without the map"),
|
|
1886
1885
|
defaultExpanded: _,
|
|
@@ -1949,7 +1948,7 @@ const gi = ({
|
|
|
1949
1948
|
] })
|
|
1950
1949
|
] }),
|
|
1951
1950
|
T && /* @__PURE__ */ e("ul", { className: "nice-seating-chart__seat-list", children: T.seats.map((p) => {
|
|
1952
|
-
const A = Ae(p, r), y =
|
|
1951
|
+
const A = Ae(p, r), y = hn(p), M = i.has(p.id);
|
|
1953
1952
|
return /* @__PURE__ */ e("li", { children: /* @__PURE__ */ s(
|
|
1954
1953
|
U,
|
|
1955
1954
|
{
|
|
@@ -1961,7 +1960,7 @@ const gi = ({
|
|
|
1961
1960
|
onClick: () => t(p),
|
|
1962
1961
|
children: [
|
|
1963
1962
|
p.number,
|
|
1964
|
-
y && /* @__PURE__ */ e(
|
|
1963
|
+
y && /* @__PURE__ */ e(Dn, { size: 11 })
|
|
1965
1964
|
]
|
|
1966
1965
|
}
|
|
1967
1966
|
) }, p.id);
|
|
@@ -1969,25 +1968,25 @@ const gi = ({
|
|
|
1969
1968
|
]
|
|
1970
1969
|
}
|
|
1971
1970
|
);
|
|
1972
|
-
},
|
|
1973
|
-
function
|
|
1971
|
+
}, _i = { zoom: 1, pan: { x: 0, y: 0 } };
|
|
1972
|
+
function yi(a = {}) {
|
|
1974
1973
|
const {
|
|
1975
1974
|
minZoom: i = 0.1,
|
|
1976
1975
|
maxZoom: r = 10,
|
|
1977
|
-
initial: n =
|
|
1976
|
+
initial: n = _i,
|
|
1978
1977
|
viewport: t,
|
|
1979
1978
|
onViewportChange: d,
|
|
1980
1979
|
disabled: o = !1
|
|
1981
|
-
} = a, [u, _] = D(n), c = t ?? u, [l, m] = D(!1), h = ye(/* @__PURE__ */ new Map()), z = ye(null), v = ye(null), g =
|
|
1980
|
+
} = a, [u, _] = D(n), c = t ?? u, [l, m] = D(!1), h = ye(/* @__PURE__ */ new Map()), z = ye(null), v = ye(null), g = H(
|
|
1982
1981
|
(N) => {
|
|
1983
1982
|
t === void 0 && _(N), d == null || d(N);
|
|
1984
1983
|
},
|
|
1985
1984
|
[t, d]
|
|
1986
|
-
), P =
|
|
1985
|
+
), P = H(
|
|
1987
1986
|
(N) => Math.min(r, Math.max(i, N)),
|
|
1988
1987
|
[i, r]
|
|
1989
|
-
), k =
|
|
1990
|
-
(N,
|
|
1988
|
+
), k = H(
|
|
1989
|
+
(N, x) => {
|
|
1991
1990
|
const B = P(c.zoom * N);
|
|
1992
1991
|
if (B === c.zoom)
|
|
1993
1992
|
return;
|
|
@@ -1995,47 +1994,47 @@ function _i(a = {}) {
|
|
|
1995
1994
|
g({
|
|
1996
1995
|
zoom: B,
|
|
1997
1996
|
pan: {
|
|
1998
|
-
x:
|
|
1999
|
-
y:
|
|
1997
|
+
x: x.x - (x.x - c.pan.x) * X,
|
|
1998
|
+
y: x.y - (x.y - c.pan.y) * X
|
|
2000
1999
|
}
|
|
2001
2000
|
});
|
|
2002
2001
|
},
|
|
2003
2002
|
[g, P, c]
|
|
2004
|
-
), T =
|
|
2005
|
-
(N,
|
|
2006
|
-
const X =
|
|
2003
|
+
), T = H(
|
|
2004
|
+
(N, x, B) => {
|
|
2005
|
+
const X = x ?? (B ? { x: B.width / 2, y: B.height / 2 } : { x: 0, y: 0 });
|
|
2007
2006
|
k(N, X);
|
|
2008
2007
|
},
|
|
2009
2008
|
[k]
|
|
2010
|
-
), f =
|
|
2011
|
-
(N,
|
|
2009
|
+
), f = H(
|
|
2010
|
+
(N, x, B = 24) => {
|
|
2012
2011
|
const X = Math.max(1, N.maxX - N.minX), E = Math.max(1, N.maxY - N.minY), R = P(
|
|
2013
|
-
Math.min((
|
|
2012
|
+
Math.min((x.width - B * 2) / X, (x.height - B * 2) / E)
|
|
2014
2013
|
);
|
|
2015
2014
|
g({
|
|
2016
2015
|
zoom: R,
|
|
2017
2016
|
pan: {
|
|
2018
|
-
x: (
|
|
2019
|
-
y: (
|
|
2017
|
+
x: (x.width - X * R) / 2 - N.minX * R,
|
|
2018
|
+
y: (x.height - E * R) / 2 - N.minY * R
|
|
2020
2019
|
}
|
|
2021
2020
|
});
|
|
2022
2021
|
},
|
|
2023
2022
|
[g, P]
|
|
2024
|
-
), p =
|
|
2023
|
+
), p = H(() => g(n), [g, n]), A = H(
|
|
2025
2024
|
(N) => ({
|
|
2026
2025
|
x: (N.x - c.pan.x) / c.zoom,
|
|
2027
2026
|
y: (N.y - c.pan.y) / c.zoom
|
|
2028
2027
|
}),
|
|
2029
2028
|
[c]
|
|
2030
|
-
), y =
|
|
2029
|
+
), y = H(
|
|
2031
2030
|
(N) => ({
|
|
2032
2031
|
x: N.x * c.zoom + c.pan.x,
|
|
2033
2032
|
y: N.y * c.zoom + c.pan.y
|
|
2034
2033
|
}),
|
|
2035
2034
|
[c]
|
|
2036
2035
|
), M = (N) => {
|
|
2037
|
-
const
|
|
2038
|
-
return { x: N.clientX -
|
|
2036
|
+
const x = N.currentTarget.getBoundingClientRect();
|
|
2037
|
+
return { x: N.clientX - x.left, y: N.clientY - x.top };
|
|
2039
2038
|
};
|
|
2040
2039
|
return {
|
|
2041
2040
|
viewport: c,
|
|
@@ -2043,34 +2042,34 @@ function _i(a = {}) {
|
|
|
2043
2042
|
containerProps: o ? {} : {
|
|
2044
2043
|
onWheel: (N) => {
|
|
2045
2044
|
N.preventDefault();
|
|
2046
|
-
const
|
|
2047
|
-
k(Math.min(2, Math.max(0.5,
|
|
2045
|
+
const x = Math.exp(-N.deltaY * 2e-3);
|
|
2046
|
+
k(Math.min(2, Math.max(0.5, x)), M(N));
|
|
2048
2047
|
},
|
|
2049
2048
|
onPointerDown: (N) => {
|
|
2050
2049
|
var B, X;
|
|
2051
|
-
const
|
|
2052
|
-
if (h.current.set(N.pointerId,
|
|
2050
|
+
const x = M(N);
|
|
2051
|
+
if (h.current.set(N.pointerId, x), (X = (B = N.currentTarget).setPointerCapture) == null || X.call(B, N.pointerId), h.current.size === 2) {
|
|
2053
2052
|
const [E, R] = [...h.current.values()];
|
|
2054
2053
|
z.current = {
|
|
2055
2054
|
distance: Math.hypot(E.x - R.x, E.y - R.y) || 1,
|
|
2056
2055
|
zoom: c.zoom
|
|
2057
2056
|
};
|
|
2058
2057
|
} else
|
|
2059
|
-
v.current =
|
|
2058
|
+
v.current = x, m(!0);
|
|
2060
2059
|
},
|
|
2061
2060
|
onPointerMove: (N) => {
|
|
2062
2061
|
if (!h.current.has(N.pointerId))
|
|
2063
2062
|
return;
|
|
2064
|
-
const
|
|
2065
|
-
if (h.current.set(N.pointerId,
|
|
2066
|
-
const [E, R] = [...h.current.values()],
|
|
2063
|
+
const x = M(N);
|
|
2064
|
+
if (h.current.set(N.pointerId, x), h.current.size === 2 && z.current) {
|
|
2065
|
+
const [E, R] = [...h.current.values()], q = Math.hypot(E.x - R.x, E.y - R.y) || 1, C = P(z.current.zoom * (q / z.current.distance)), b = { x: (E.x + R.x) / 2, y: (E.y + R.y) / 2 };
|
|
2067
2066
|
C !== c.zoom && k(C / c.zoom, b);
|
|
2068
2067
|
return;
|
|
2069
2068
|
}
|
|
2070
2069
|
if (!v.current)
|
|
2071
2070
|
return;
|
|
2072
|
-
const B =
|
|
2073
|
-
v.current =
|
|
2071
|
+
const B = x.x - v.current.x, X = x.y - v.current.y;
|
|
2072
|
+
v.current = x, g({ zoom: c.zoom, pan: { x: c.pan.x + B, y: c.pan.y + X } });
|
|
2074
2073
|
},
|
|
2075
2074
|
onPointerUp: (N) => {
|
|
2076
2075
|
h.current.delete(N.pointerId), h.current.size < 2 && (z.current = null), h.current.size === 0 && (v.current = null, m(!1));
|
|
@@ -2087,24 +2086,24 @@ function _i(a = {}) {
|
|
|
2087
2086
|
panning: l
|
|
2088
2087
|
};
|
|
2089
2088
|
}
|
|
2090
|
-
const
|
|
2089
|
+
const Ni = {
|
|
2091
2090
|
"orphan-seat": "That would leave a single empty seat. Pick a different seat.",
|
|
2092
2091
|
"not-adjacent": "Seats must be next to each other.",
|
|
2093
2092
|
"max-seats": "You have selected as many seats as this order allows.",
|
|
2094
2093
|
"category-not-allowed": "That seat is not part of the selected ticket type.",
|
|
2095
2094
|
unavailable: "That seat is not available."
|
|
2096
|
-
},
|
|
2095
|
+
}, bi = {
|
|
2097
2096
|
id: "empty",
|
|
2098
2097
|
name: "",
|
|
2099
2098
|
venueId: "",
|
|
2100
2099
|
sections: [],
|
|
2101
2100
|
priceCategories: [],
|
|
2102
2101
|
totalSeats: 0
|
|
2103
|
-
},
|
|
2102
|
+
}, ki = /* @__PURE__ */ te(
|
|
2104
2103
|
function(i, r) {
|
|
2105
2104
|
var me, Le, Ie;
|
|
2106
|
-
const { t: n } =
|
|
2107
|
-
chart: t =
|
|
2105
|
+
const { t: n } = ee(), {
|
|
2106
|
+
chart: t = bi,
|
|
2108
2107
|
mode: d = "select",
|
|
2109
2108
|
selection: o = {},
|
|
2110
2109
|
selectedSeatIds: u,
|
|
@@ -2126,22 +2125,22 @@ const yi = {
|
|
|
2126
2125
|
readOnly: M = !1,
|
|
2127
2126
|
className: w,
|
|
2128
2127
|
style: N
|
|
2129
|
-
} = i,
|
|
2128
|
+
} = i, x = ye(null), [B, X] = D({ width: 800, height: 500 }), [E, R] = D(!1), [q, C] = D(_), [b, L] = D(null), [j, W] = D(""), I = u ?? q, V = F(() => new Set(I), [I]), G = d === "select" && !y && !M && o.interactive !== !1, ne = o.maxSeats ?? 8, Y = F(() => si(t), [t]), ie = k ?? B, Z = !!k || E;
|
|
2130
2129
|
Fe(() => {
|
|
2131
|
-
if (k || !
|
|
2130
|
+
if (k || !x.current || typeof ResizeObserver > "u")
|
|
2132
2131
|
return;
|
|
2133
|
-
const $ =
|
|
2134
|
-
const { width:
|
|
2135
|
-
|
|
2132
|
+
const $ = x.current, O = new ResizeObserver(([K]) => {
|
|
2133
|
+
const { width: Q, height: se } = K.contentRect;
|
|
2134
|
+
Q > 0 && se > 0 && (X({ width: Q, height: se }), R(!0));
|
|
2136
2135
|
});
|
|
2137
2136
|
return O.observe($), () => O.disconnect();
|
|
2138
2137
|
}, [k]);
|
|
2139
|
-
const be =
|
|
2138
|
+
const be = yi({ disabled: !p || y }), { fitTo: oe, viewport: he } = be, ke = ye(!1);
|
|
2140
2139
|
Fe(() => {
|
|
2141
|
-
ke.current || !
|
|
2142
|
-
}, [oe, Y, ie,
|
|
2143
|
-
const Ee = F(() =>
|
|
2144
|
-
() =>
|
|
2140
|
+
ke.current || !Z || Y.totalSeats === 0 || ie.width <= 0 || (ke.current = !0, oe(Y.bounds, ie));
|
|
2141
|
+
}, [oe, Y, ie, Z]);
|
|
2142
|
+
const Ee = F(() => ai(he, ie, 40), [he, ie]), we = v !== "auto" ? v : b ? "seat" : void 0, ge = F(
|
|
2143
|
+
() => li(Y, Ee, P, we),
|
|
2145
2144
|
[Y, Ee, P, we]
|
|
2146
2145
|
), Se = ye(null);
|
|
2147
2146
|
Fe(() => {
|
|
@@ -2159,38 +2158,38 @@ const yi = {
|
|
|
2159
2158
|
return new Map((($ = t.sections) == null ? void 0 : $.map((O) => [O.id, O])) ?? []);
|
|
2160
2159
|
},
|
|
2161
2160
|
[t.sections]
|
|
2162
|
-
), ue =
|
|
2161
|
+
), ue = H(
|
|
2163
2162
|
($) => {
|
|
2164
|
-
const O = ve.get($.sectorId),
|
|
2163
|
+
const O = ve.get($.sectorId), K = Ae($, m), Q = hn($), se = [
|
|
2165
2164
|
O ? O.name : "",
|
|
2166
2165
|
n("seatingChart.rowN", "row {row}").replace("{row}", String($.row)),
|
|
2167
2166
|
n("seatingChart.seatN", "seat {number}").replace("{number}", String($.number))
|
|
2168
2167
|
].filter(Boolean);
|
|
2169
2168
|
if (O && o.showPrices !== !1) {
|
|
2170
|
-
const pe =
|
|
2171
|
-
|
|
2169
|
+
const pe = Pn($, t, O);
|
|
2170
|
+
se.push(ce(pe.amount, pe.currency, A));
|
|
2172
2171
|
}
|
|
2173
|
-
return
|
|
2172
|
+
return se.push(n(`seatingChart.status.${K}`, K)), Q === "wheelchair" && se.push(n("seatingChart.wheelchairAccessible", "wheelchair accessible")), Q === "companion" && se.push(n("seatingChart.companionSeat", "companion seat")), se.join(", ");
|
|
2174
2173
|
},
|
|
2175
2174
|
[t, ve, m, o.showPrices, A, n]
|
|
2176
|
-
), le =
|
|
2175
|
+
), le = H(
|
|
2177
2176
|
($) => {
|
|
2178
2177
|
u === void 0 && C($), c == null || c($);
|
|
2179
2178
|
},
|
|
2180
2179
|
[u, c]
|
|
2181
|
-
), Te =
|
|
2180
|
+
), Te = H(
|
|
2182
2181
|
($) => {
|
|
2183
2182
|
if (h == null || h($), !G)
|
|
2184
2183
|
return;
|
|
2185
|
-
const O =
|
|
2184
|
+
const O = ui(I, $.id, Y, o, m);
|
|
2186
2185
|
if ("rejected" in O) {
|
|
2187
|
-
l == null || l({ reason: O.rejected, seatId: $.id }),
|
|
2188
|
-
n(`seatingChart.rejection.${O.rejected}`,
|
|
2186
|
+
l == null || l({ reason: O.rejected, seatId: $.id }), W(
|
|
2187
|
+
n(`seatingChart.rejection.${O.rejected}`, Ni[O.rejected])
|
|
2189
2188
|
);
|
|
2190
2189
|
return;
|
|
2191
2190
|
}
|
|
2192
|
-
le(O.selected),
|
|
2193
|
-
n("seatingChart.seatSelected", "{seat}. {count} of {max} selected.").replace("{seat}", ue($)).replace("{count}", String(O.selected.length)).replace("{max}", String(
|
|
2191
|
+
le(O.selected), W(
|
|
2192
|
+
n("seatingChart.seatSelected", "{seat}. {count} of {max} selected.").replace("{seat}", ue($)).replace("{count}", String(O.selected.length)).replace("{max}", String(ne))
|
|
2194
2193
|
);
|
|
2195
2194
|
},
|
|
2196
2195
|
[
|
|
@@ -2199,22 +2198,22 @@ const yi = {
|
|
|
2199
2198
|
ue,
|
|
2200
2199
|
Y,
|
|
2201
2200
|
G,
|
|
2202
|
-
|
|
2201
|
+
ne,
|
|
2203
2202
|
h,
|
|
2204
2203
|
l,
|
|
2205
2204
|
m,
|
|
2206
|
-
|
|
2205
|
+
I,
|
|
2207
2206
|
o
|
|
2208
2207
|
]
|
|
2209
|
-
), fe =
|
|
2208
|
+
), fe = H(
|
|
2210
2209
|
($, O) => {
|
|
2211
2210
|
if (z) {
|
|
2212
2211
|
z($, O);
|
|
2213
2212
|
return;
|
|
2214
2213
|
}
|
|
2215
|
-
const
|
|
2216
|
-
if (
|
|
2217
|
-
|
|
2214
|
+
const K = mi(Y, $, o, O, m);
|
|
2215
|
+
if (K.length === 0) {
|
|
2216
|
+
W(
|
|
2218
2217
|
n(
|
|
2219
2218
|
"seatingChart.noBlockAvailable",
|
|
2220
2219
|
"No block of {count} seats together is available."
|
|
@@ -2222,40 +2221,46 @@ const yi = {
|
|
|
2222
2221
|
);
|
|
2223
2222
|
return;
|
|
2224
2223
|
}
|
|
2225
|
-
le(
|
|
2224
|
+
le(K), L(K[0]), W(
|
|
2226
2225
|
n("seatingChart.selectedTogether", "Selected {count} seats together.").replace(
|
|
2227
2226
|
"{count}",
|
|
2228
|
-
String(
|
|
2227
|
+
String(K.length)
|
|
2229
2228
|
)
|
|
2230
2229
|
);
|
|
2231
2230
|
},
|
|
2232
2231
|
[le, Y, z, m, o, n]
|
|
2233
|
-
), Me =
|
|
2232
|
+
), Me = H(
|
|
2234
2233
|
($) => {
|
|
2235
2234
|
const O = Y.locationById.get($);
|
|
2236
2235
|
if (!O)
|
|
2237
2236
|
return;
|
|
2238
|
-
const
|
|
2239
|
-
(
|
|
2237
|
+
const K = Y.rows.find(
|
|
2238
|
+
(Q) => Q.sectionId === O.sectionId && Q.rowIndex === O.rowIndex
|
|
2240
2239
|
);
|
|
2241
|
-
|
|
2240
|
+
K && oe(K.bounds, ie, 80);
|
|
2242
2241
|
},
|
|
2243
2242
|
[oe, Y, ie]
|
|
2244
|
-
), _e =
|
|
2243
|
+
), _e = H(
|
|
2245
2244
|
($) => {
|
|
2246
2245
|
if (!$)
|
|
2247
2246
|
return;
|
|
2248
2247
|
L($), Me($);
|
|
2249
2248
|
const O = Y.seatById.get($);
|
|
2250
|
-
O &&
|
|
2249
|
+
O && W(ue(O)), requestAnimationFrame(() => {
|
|
2250
|
+
var Q;
|
|
2251
|
+
const K = [
|
|
2252
|
+
...((Q = x.current) == null ? void 0 : Q.querySelectorAll("[data-seat-id]")) ?? []
|
|
2253
|
+
].find((se) => se.getAttribute("data-seat-id") === $);
|
|
2254
|
+
K == null || K.focus({ preventScroll: !0 });
|
|
2255
|
+
});
|
|
2251
2256
|
},
|
|
2252
2257
|
[ue, Y.seatById, Me]
|
|
2253
2258
|
), Qe = ($) => {
|
|
2254
|
-
var
|
|
2255
|
-
const O = b ?? ((pe = (
|
|
2259
|
+
var se, pe;
|
|
2260
|
+
const O = b ?? ((pe = (se = Y.rows[0]) == null ? void 0 : se.seats[0]) == null ? void 0 : pe.id) ?? null;
|
|
2256
2261
|
if (!O)
|
|
2257
2262
|
return;
|
|
2258
|
-
const
|
|
2263
|
+
const Q = {
|
|
2259
2264
|
ArrowLeft: "left",
|
|
2260
2265
|
ArrowRight: "right",
|
|
2261
2266
|
ArrowUp: "up",
|
|
@@ -2263,12 +2268,12 @@ const yi = {
|
|
|
2263
2268
|
Home: "row-start",
|
|
2264
2269
|
End: "row-end"
|
|
2265
2270
|
}[$.key];
|
|
2266
|
-
if (
|
|
2267
|
-
$.preventDefault(), _e(b ?
|
|
2271
|
+
if (Q) {
|
|
2272
|
+
$.preventDefault(), _e(b ? pi(Y, O, Q) : O);
|
|
2268
2273
|
return;
|
|
2269
2274
|
}
|
|
2270
2275
|
if ($.key === "PageDown" || $.key === "PageUp") {
|
|
2271
|
-
$.preventDefault(), _e(
|
|
2276
|
+
$.preventDefault(), _e(hi(Y, b, $.key === "PageDown" ? "next" : "prev"));
|
|
2272
2277
|
return;
|
|
2273
2278
|
}
|
|
2274
2279
|
if ($.key === "Enter" || $.key === " ") {
|
|
@@ -2277,7 +2282,7 @@ const yi = {
|
|
|
2277
2282
|
Oe && Te(Oe);
|
|
2278
2283
|
return;
|
|
2279
2284
|
}
|
|
2280
|
-
$.key === "Escape" &&
|
|
2285
|
+
$.key === "Escape" && I.length > 0 && ($.preventDefault(), le([]), W(n("seatingChart.selectionCleared", "Selection cleared.")));
|
|
2281
2286
|
};
|
|
2282
2287
|
if (Y.totalSeats === 0)
|
|
2283
2288
|
return /* @__PURE__ */ e("div", { ref: r, className: `nice-seating-chart ${w ?? ""}`, style: N, children: /* @__PURE__ */ e(
|
|
@@ -2290,9 +2295,9 @@ const yi = {
|
|
|
2290
2295
|
)
|
|
2291
2296
|
}
|
|
2292
2297
|
) });
|
|
2293
|
-
const Ce =
|
|
2294
|
-
const
|
|
2295
|
-
return !
|
|
2298
|
+
const Ce = I.reduce(($, O) => {
|
|
2299
|
+
const K = Y.seatById.get(O), Q = K ? ve.get(K.sectorId) : void 0;
|
|
2300
|
+
return !K || !Q ? $ : $ + Pn(K, t, Q).amount;
|
|
2296
2301
|
}, 0), xe = ((Le = (me = t.sections) == null ? void 0 : me[0]) == null ? void 0 : Le.currency) ?? "PLN";
|
|
2297
2302
|
return /* @__PURE__ */ s(
|
|
2298
2303
|
"div",
|
|
@@ -2304,7 +2309,7 @@ const yi = {
|
|
|
2304
2309
|
/* @__PURE__ */ s(
|
|
2305
2310
|
"div",
|
|
2306
2311
|
{
|
|
2307
|
-
ref:
|
|
2312
|
+
ref: x,
|
|
2308
2313
|
className: "nice-seating-chart__canvas-host",
|
|
2309
2314
|
role: "grid",
|
|
2310
2315
|
"aria-label": n("seatingChart.chartLabel", "{name} seating chart").replace(
|
|
@@ -2337,7 +2342,7 @@ const yi = {
|
|
|
2337
2342
|
}
|
|
2338
2343
|
) }),
|
|
2339
2344
|
/* @__PURE__ */ e("g", { transform: `translate(${he.pan.x} ${he.pan.y}) scale(${he.zoom})`, children: /* @__PURE__ */ e(
|
|
2340
|
-
|
|
2345
|
+
vi,
|
|
2341
2346
|
{
|
|
2342
2347
|
cull: ge,
|
|
2343
2348
|
selectedIds: V,
|
|
@@ -2347,8 +2352,8 @@ const yi = {
|
|
|
2347
2352
|
interactive: G,
|
|
2348
2353
|
onSeatClick: Te,
|
|
2349
2354
|
onSectionClick: o.sectionSelect ? ($) => {
|
|
2350
|
-
var
|
|
2351
|
-
const O = (
|
|
2355
|
+
var K;
|
|
2356
|
+
const O = (K = Y.rows.find((Q) => Q.sectionId === $)) == null ? void 0 : K.seats[0];
|
|
2352
2357
|
O && _e(O.id);
|
|
2353
2358
|
} : void 0,
|
|
2354
2359
|
describeSeat: ue
|
|
@@ -2365,7 +2370,7 @@ const yi = {
|
|
|
2365
2370
|
variant: "ghost",
|
|
2366
2371
|
ariaLabel: n("seatingChart.zoomIn", "Zoom in"),
|
|
2367
2372
|
onClick: () => be.zoomBy(1.25, void 0, ie),
|
|
2368
|
-
children: /* @__PURE__ */ e(
|
|
2373
|
+
children: /* @__PURE__ */ e(wt, { size: 16 })
|
|
2369
2374
|
}
|
|
2370
2375
|
),
|
|
2371
2376
|
/* @__PURE__ */ e(
|
|
@@ -2375,7 +2380,7 @@ const yi = {
|
|
|
2375
2380
|
variant: "ghost",
|
|
2376
2381
|
ariaLabel: n("seatingChart.zoomOut", "Zoom out"),
|
|
2377
2382
|
onClick: () => be.zoomBy(0.8, void 0, ie),
|
|
2378
|
-
children: /* @__PURE__ */ e(
|
|
2383
|
+
children: /* @__PURE__ */ e(St, { size: 16 })
|
|
2379
2384
|
}
|
|
2380
2385
|
),
|
|
2381
2386
|
/* @__PURE__ */ e(
|
|
@@ -2385,14 +2390,14 @@ const yi = {
|
|
|
2385
2390
|
variant: "ghost",
|
|
2386
2391
|
ariaLabel: n("seatingChart.fitToView", "Fit to view"),
|
|
2387
2392
|
onClick: () => oe(Y.bounds, ie),
|
|
2388
|
-
children: /* @__PURE__ */ e(
|
|
2393
|
+
children: /* @__PURE__ */ e(Ct, { size: 16 })
|
|
2389
2394
|
}
|
|
2390
2395
|
)
|
|
2391
2396
|
] })
|
|
2392
2397
|
]
|
|
2393
2398
|
}
|
|
2394
2399
|
),
|
|
2395
|
-
/* @__PURE__ */ e("p", { className: "nice-seating-chart__status", role: "status", "aria-live": "polite", children:
|
|
2400
|
+
/* @__PURE__ */ e("p", { className: "nice-seating-chart__status", role: "status", "aria-live": "polite", children: j }),
|
|
2396
2401
|
T && /* @__PURE__ */ s("ul", { className: "nice-seating-chart__legend", children: [
|
|
2397
2402
|
(Ie = t.priceCategories) == null ? void 0 : Ie.map(($) => /* @__PURE__ */ s("li", { className: "nice-seating-chart__legend-item", children: [
|
|
2398
2403
|
/* @__PURE__ */ e(
|
|
@@ -2413,14 +2418,14 @@ const yi = {
|
|
|
2413
2418
|
n("seatingChart.sold", "Sold")
|
|
2414
2419
|
] })
|
|
2415
2420
|
] }),
|
|
2416
|
-
d === "select" &&
|
|
2421
|
+
d === "select" && I.length > 0 && /* @__PURE__ */ e("p", { className: "nice-seating-chart__total", children: I.length === 1 ? n("seatingChart.seatsOne", "{selected} seat · {amount}").replace("{selected}", String(I.length)).replace("{amount}", String(ce(Ce, xe, A))) : n("seatingChart.seatsMany", "{selected} seats · {amount}").replace("{selected}", String(I.length)).replace("{amount}", String(ce(Ce, xe, A))) }),
|
|
2417
2422
|
f && /* @__PURE__ */ e(
|
|
2418
|
-
|
|
2423
|
+
fi,
|
|
2419
2424
|
{
|
|
2420
2425
|
index: Y,
|
|
2421
2426
|
selectedIds: V,
|
|
2422
2427
|
statusOverrides: m,
|
|
2423
|
-
maxSeats:
|
|
2428
|
+
maxSeats: ne,
|
|
2424
2429
|
onSeatToggle: Te,
|
|
2425
2430
|
onBestAvailable: fe,
|
|
2426
2431
|
describeSeat: ue,
|
|
@@ -2432,10 +2437,10 @@ const yi = {
|
|
|
2432
2437
|
}
|
|
2433
2438
|
);
|
|
2434
2439
|
}
|
|
2435
|
-
),
|
|
2440
|
+
), ca = /* @__PURE__ */ te(
|
|
2436
2441
|
function({ showList: i = !0, className: r, ...n }, t) {
|
|
2437
2442
|
return /* @__PURE__ */ e(
|
|
2438
|
-
|
|
2443
|
+
ki,
|
|
2439
2444
|
{
|
|
2440
2445
|
ref: t,
|
|
2441
2446
|
mode: "select",
|
|
@@ -2445,38 +2450,38 @@ const yi = {
|
|
|
2445
2450
|
}
|
|
2446
2451
|
);
|
|
2447
2452
|
}
|
|
2448
|
-
),
|
|
2453
|
+
), Gn = /\{\{\s*([\w.-]+)\s*\}\}/g, wi = {
|
|
2449
2454
|
"&": "&",
|
|
2450
2455
|
"<": "<",
|
|
2451
2456
|
">": ">",
|
|
2452
2457
|
'"': """,
|
|
2453
2458
|
"'": "'"
|
|
2454
2459
|
};
|
|
2455
|
-
function wi(a) {
|
|
2456
|
-
return a.replace(/[&<>"']/g, (i) => ki[i] ?? i);
|
|
2457
|
-
}
|
|
2458
2460
|
function Si(a) {
|
|
2461
|
+
return a.replace(/[&<>"']/g, (i) => wi[i] ?? i);
|
|
2462
|
+
}
|
|
2463
|
+
function Ci(a) {
|
|
2459
2464
|
const i = [], r = /* @__PURE__ */ new Set();
|
|
2460
|
-
for (const n of a.matchAll(
|
|
2465
|
+
for (const n of a.matchAll(Gn)) {
|
|
2461
2466
|
const t = n[1];
|
|
2462
2467
|
r.has(t) || (r.add(t), i.push(t));
|
|
2463
2468
|
}
|
|
2464
2469
|
return i;
|
|
2465
2470
|
}
|
|
2466
|
-
function
|
|
2471
|
+
function xi(a, i = {}, r = {}) {
|
|
2467
2472
|
const { escape: n = !0, missing: t = "keep" } = r;
|
|
2468
|
-
return a.replace(
|
|
2473
|
+
return a.replace(Gn, (d, o) => {
|
|
2469
2474
|
const u = i[o];
|
|
2470
|
-
return u == null ? t === "blank" ? "" : d : n ?
|
|
2475
|
+
return u == null ? t === "blank" ? "" : d : n ? Si(String(u)) : String(u);
|
|
2471
2476
|
});
|
|
2472
2477
|
}
|
|
2473
|
-
function
|
|
2478
|
+
function zn(a) {
|
|
2474
2479
|
return `{{${a}}}`;
|
|
2475
2480
|
}
|
|
2476
|
-
function
|
|
2477
|
-
return
|
|
2481
|
+
function Ii(a, i = {}) {
|
|
2482
|
+
return Ci(a).filter((r) => i[r] === void 0 || i[r] === null);
|
|
2478
2483
|
}
|
|
2479
|
-
const
|
|
2484
|
+
const Pi = { name: "", body: "" }, zi = [
|
|
2480
2485
|
"bold",
|
|
2481
2486
|
"italic",
|
|
2482
2487
|
"underline",
|
|
@@ -2490,8 +2495,8 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2490
2495
|
"alignCenter",
|
|
2491
2496
|
"undo",
|
|
2492
2497
|
"redo"
|
|
2493
|
-
],
|
|
2494
|
-
const { t: n } =
|
|
2498
|
+
], la = /* @__PURE__ */ te(function(i, r) {
|
|
2499
|
+
const { t: n } = ee(), {
|
|
2495
2500
|
template: t,
|
|
2496
2501
|
defaultTemplate: d,
|
|
2497
2502
|
onTemplateChange: o,
|
|
@@ -2501,33 +2506,33 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2501
2506
|
onRecipientsChange: l,
|
|
2502
2507
|
onSend: m,
|
|
2503
2508
|
sending: h = !1,
|
|
2504
|
-
toolbar: z =
|
|
2509
|
+
toolbar: z = zi,
|
|
2505
2510
|
disabled: v = !1,
|
|
2506
2511
|
readOnly: g = !1,
|
|
2507
2512
|
size: P = "md",
|
|
2508
2513
|
className: k,
|
|
2509
2514
|
style: T
|
|
2510
|
-
} = i, [f, p] =
|
|
2515
|
+
} = i, [f, p] = Ft({
|
|
2511
2516
|
value: t,
|
|
2512
2517
|
defaultValue: d,
|
|
2513
|
-
fallbackValue:
|
|
2518
|
+
fallbackValue: Pi,
|
|
2514
2519
|
onChange: o,
|
|
2515
2520
|
componentName: "NiceInvitationDesigner"
|
|
2516
|
-
}), [A, y] = D(""), M = v || g || h, w = F(() =>
|
|
2521
|
+
}), [A, y] = D(""), M = v || g || h, w = F(() => Xn(A), [A]), N = F(() => {
|
|
2517
2522
|
const b = {};
|
|
2518
2523
|
for (const L of u)
|
|
2519
2524
|
L.sample !== void 0 && (b[L.key] = L.sample);
|
|
2520
2525
|
return { ...b, ..._ };
|
|
2521
|
-
}, [u, _]),
|
|
2522
|
-
() =>
|
|
2526
|
+
}, [u, _]), x = F(
|
|
2527
|
+
() => xi(f.body ?? "", N),
|
|
2523
2528
|
[f.body, N]
|
|
2524
2529
|
), B = F(
|
|
2525
|
-
() =>
|
|
2530
|
+
() => Ii(f.body ?? "", N),
|
|
2526
2531
|
[f.body, N]
|
|
2527
2532
|
), X = c.map((b) => b.email), E = (b) => p({ ...f, ...b }), R = (b) => {
|
|
2528
|
-
E({ body: `${f.body ?? ""}${
|
|
2529
|
-
},
|
|
2530
|
-
!l || w.valid.length === 0 || (l(
|
|
2533
|
+
E({ body: `${f.body ?? ""}${zn(b)}` });
|
|
2534
|
+
}, q = () => {
|
|
2535
|
+
!l || w.valid.length === 0 || (l(Qt(X, w.valid)), y(""));
|
|
2531
2536
|
}, C = (b) => {
|
|
2532
2537
|
l == null || l(X.filter((L) => L !== b));
|
|
2533
2538
|
};
|
|
@@ -2540,7 +2545,7 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2540
2545
|
children: [
|
|
2541
2546
|
/* @__PURE__ */ s("section", { className: "nice-invitation-designer__editor", children: [
|
|
2542
2547
|
/* @__PURE__ */ e(
|
|
2543
|
-
|
|
2548
|
+
J,
|
|
2544
2549
|
{
|
|
2545
2550
|
label: n("invitationDesigner.templateName", "Template name"),
|
|
2546
2551
|
value: f.name,
|
|
@@ -2565,7 +2570,7 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2565
2570
|
))
|
|
2566
2571
|
] }),
|
|
2567
2572
|
/* @__PURE__ */ e(
|
|
2568
|
-
|
|
2573
|
+
Ut,
|
|
2569
2574
|
{
|
|
2570
2575
|
value: f.body ?? "",
|
|
2571
2576
|
onChange: (b) => E({ body: b }),
|
|
@@ -2594,13 +2599,13 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2594
2599
|
"div",
|
|
2595
2600
|
{
|
|
2596
2601
|
className: "nice-invitation-designer__preview-body",
|
|
2597
|
-
dangerouslySetInnerHTML: { __html:
|
|
2602
|
+
dangerouslySetInnerHTML: { __html: x }
|
|
2598
2603
|
}
|
|
2599
2604
|
),
|
|
2600
2605
|
B.length > 0 && /* @__PURE__ */ e("p", { className: "nice-invitation-designer__unresolved", children: n(
|
|
2601
2606
|
"invitationDesigner.noPreviewValueFor",
|
|
2602
2607
|
"No preview value for: {unresolved}"
|
|
2603
|
-
).replace("{unresolved}", String(B.map((b) =>
|
|
2608
|
+
).replace("{unresolved}", String(B.map((b) => zn(b)).join(", "))) })
|
|
2604
2609
|
]
|
|
2605
2610
|
}
|
|
2606
2611
|
),
|
|
@@ -2636,9 +2641,9 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2636
2641
|
{
|
|
2637
2642
|
size: P,
|
|
2638
2643
|
variant: "outline",
|
|
2639
|
-
leftIcon: /* @__PURE__ */ e(
|
|
2644
|
+
leftIcon: /* @__PURE__ */ e(Rn, { size: 15 }),
|
|
2640
2645
|
disabled: M || w.valid.length === 0,
|
|
2641
|
-
onClick:
|
|
2646
|
+
onClick: q,
|
|
2642
2647
|
children: w.valid.length > 0 ? n("invitationDesigner.addN", "Add ({count})").replace(
|
|
2643
2648
|
"{count}",
|
|
2644
2649
|
String(w.valid.length)
|
|
@@ -2685,7 +2690,7 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2685
2690
|
{
|
|
2686
2691
|
variant: "primary",
|
|
2687
2692
|
size: P,
|
|
2688
|
-
leftIcon: /* @__PURE__ */ e(
|
|
2693
|
+
leftIcon: /* @__PURE__ */ e(xt, { size: 15 }),
|
|
2689
2694
|
loading: h,
|
|
2690
2695
|
ariaLabel: n("invitationDesigner.sendInvitations", "Send invitations"),
|
|
2691
2696
|
disabled: v || h || c.length === 0,
|
|
@@ -2700,7 +2705,7 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2700
2705
|
]
|
|
2701
2706
|
}
|
|
2702
2707
|
);
|
|
2703
|
-
}),
|
|
2708
|
+
}), Ai = ({
|
|
2704
2709
|
value: a,
|
|
2705
2710
|
max: i,
|
|
2706
2711
|
currency: r,
|
|
@@ -2710,7 +2715,7 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2710
2715
|
}) => {
|
|
2711
2716
|
const o = i > 0 ? i : 1, u = a >= i && i > 0, _ = (c, l) => r ? `${ce(c, r, n)} / ${ce(l, r, n)}` : `${c} / ${l}`;
|
|
2712
2717
|
return /* @__PURE__ */ e(
|
|
2713
|
-
|
|
2718
|
+
Vt,
|
|
2714
2719
|
{
|
|
2715
2720
|
className: d,
|
|
2716
2721
|
value: Math.min(a, o),
|
|
@@ -2722,17 +2727,17 @@ const Ii = { name: "", body: "" }, Pi = [
|
|
|
2722
2727
|
"aria-label": t
|
|
2723
2728
|
}
|
|
2724
2729
|
);
|
|
2725
|
-
},
|
|
2726
|
-
function
|
|
2730
|
+
}, Ti = [];
|
|
2731
|
+
function Mi(a, i) {
|
|
2727
2732
|
if (i === "wishlist")
|
|
2728
2733
|
return { value: a.isPurchased ? 1 : 0, max: 1, complete: !!a.isPurchased };
|
|
2729
2734
|
const r = a.quantityNeeded ?? 1, n = a.quantityContributed ?? 0;
|
|
2730
2735
|
return { value: n, max: r, complete: r > 0 && n >= r };
|
|
2731
2736
|
}
|
|
2732
|
-
const
|
|
2737
|
+
const oa = /* @__PURE__ */ te(
|
|
2733
2738
|
function(i, r) {
|
|
2734
|
-
const { t: n } =
|
|
2735
|
-
items: t =
|
|
2739
|
+
const { t: n } = ee(), {
|
|
2740
|
+
items: t = Ti,
|
|
2736
2741
|
kind: d = "registry",
|
|
2737
2742
|
mode: o = "owner",
|
|
2738
2743
|
currency: u = "PLN",
|
|
@@ -2752,24 +2757,24 @@ const la = /* @__PURE__ */ te(
|
|
|
2752
2757
|
size: A = "md",
|
|
2753
2758
|
className: y,
|
|
2754
2759
|
style: M
|
|
2755
|
-
} = i, w =
|
|
2756
|
-
(
|
|
2757
|
-
) : t, [t, b]),
|
|
2758
|
-
|
|
2759
|
-
},
|
|
2760
|
-
!h || !w.canAct || (h(
|
|
2760
|
+
} = i, w = qn({ currentUserId: l, currentUserName: m }), [N, x] = D(null), [B, X] = D(0), [E, R] = D(""), q = o === "owner", C = f || p, b = d === "wishlist", L = F(() => b ? [...t].sort(
|
|
2761
|
+
(I, V) => Number(I.isPurchased ?? !1) - Number(V.isPurchased ?? !1) || (V.priority ?? 0) - (I.priority ?? 0)
|
|
2762
|
+
) : t, [t, b]), j = () => {
|
|
2763
|
+
x(null), X(0);
|
|
2764
|
+
}, W = (I) => {
|
|
2765
|
+
!h || !w.canAct || (h(I.id, {
|
|
2761
2766
|
amount: B > 0 ? B : void 0,
|
|
2762
2767
|
quantity: B > 0 ? void 0 : 1,
|
|
2763
2768
|
userName: w.actor.userName,
|
|
2764
2769
|
userId: w.actor.userId
|
|
2765
|
-
}),
|
|
2770
|
+
}), j());
|
|
2766
2771
|
};
|
|
2767
2772
|
return t.length === 0 ? /* @__PURE__ */ e("div", { ref: r, className: `nice-gift-registry ${y ?? ""}`, style: M, children: /* @__PURE__ */ e(
|
|
2768
2773
|
Ne,
|
|
2769
2774
|
{
|
|
2770
|
-
icon: /* @__PURE__ */ e(
|
|
2775
|
+
icon: /* @__PURE__ */ e(It, { size: 28 }),
|
|
2771
2776
|
title: b ? n("giftRegistry.emptyWishlist", "Nothing on the wishlist yet") : n("giftRegistry.emptyRegistry", "No gifts on the registry yet"),
|
|
2772
|
-
description:
|
|
2777
|
+
description: q ? n("giftRegistry.emptyOwnerHint", "Add what you would like and share the link.") : n("giftRegistry.emptyGuestHint", "The host has not added anything yet.")
|
|
2773
2778
|
}
|
|
2774
2779
|
) }) : /* @__PURE__ */ s(
|
|
2775
2780
|
"div",
|
|
@@ -2778,8 +2783,8 @@ const la = /* @__PURE__ */ te(
|
|
|
2778
2783
|
className: `nice-gift-registry nice-gift-registry--${d} nice-gift-registry--${T} nice-gift-registry--${A} ${y ?? ""}`,
|
|
2779
2784
|
style: M,
|
|
2780
2785
|
children: [
|
|
2781
|
-
!
|
|
2782
|
-
|
|
2786
|
+
!q && w.isAnonymous && (h || z) && /* @__PURE__ */ e(
|
|
2787
|
+
J,
|
|
2783
2788
|
{
|
|
2784
2789
|
label: n("giftRegistry.yourName", "Your name"),
|
|
2785
2790
|
value: w.name,
|
|
@@ -2790,17 +2795,17 @@ const la = /* @__PURE__ */ te(
|
|
|
2790
2795
|
size: A
|
|
2791
2796
|
}
|
|
2792
2797
|
),
|
|
2793
|
-
/* @__PURE__ */ e(
|
|
2794
|
-
const { value: V, max: G, complete:
|
|
2798
|
+
/* @__PURE__ */ e(Un, { columns: T === "list" ? 1 : void 0, minColumnWidth: 240, gap: 12, children: L.map((I) => {
|
|
2799
|
+
const { value: V, max: G, complete: ne } = Mi(I, d), Y = I.price, ie = I.contributions ?? [];
|
|
2795
2800
|
return /* @__PURE__ */ s(
|
|
2796
2801
|
"div",
|
|
2797
2802
|
{
|
|
2798
|
-
className: `nice-gift-registry__item${
|
|
2803
|
+
className: `nice-gift-registry__item${ne ? " nice-gift-registry__item--complete" : ""}`,
|
|
2799
2804
|
children: [
|
|
2800
|
-
|
|
2805
|
+
I.imageUrl && /* @__PURE__ */ e(
|
|
2801
2806
|
"img",
|
|
2802
2807
|
{
|
|
2803
|
-
src:
|
|
2808
|
+
src: I.imageUrl,
|
|
2804
2809
|
alt: "",
|
|
2805
2810
|
className: "nice-gift-registry__image",
|
|
2806
2811
|
loading: "lazy"
|
|
@@ -2812,29 +2817,29 @@ const la = /* @__PURE__ */ te(
|
|
|
2812
2817
|
{
|
|
2813
2818
|
type: "button",
|
|
2814
2819
|
className: "nice-gift-registry__title",
|
|
2815
|
-
onClick: () => k == null ? void 0 : k(
|
|
2820
|
+
onClick: () => k == null ? void 0 : k(I),
|
|
2816
2821
|
disabled: !k,
|
|
2817
|
-
children:
|
|
2822
|
+
children: I.title
|
|
2818
2823
|
}
|
|
2819
2824
|
),
|
|
2820
|
-
|
|
2825
|
+
I.description && /* @__PURE__ */ e("p", { className: "nice-gift-registry__description", children: I.description }),
|
|
2821
2826
|
/* @__PURE__ */ s("div", { className: "nice-gift-registry__facts", children: [
|
|
2822
2827
|
Y && /* @__PURE__ */ e("span", { className: "nice-gift-registry__price", children: ce(Y.amount, Y.currency || u, _) }),
|
|
2823
|
-
b && (
|
|
2824
|
-
/* @__PURE__ */ e(
|
|
2828
|
+
b && (I.priority ?? 0) > 0 && /* @__PURE__ */ s(ae, { size: "xs", subtle: !0, variant: "warning", children: [
|
|
2829
|
+
/* @__PURE__ */ e(Pt, { size: 11 }),
|
|
2825
2830
|
" ",
|
|
2826
|
-
|
|
2831
|
+
I.priority
|
|
2827
2832
|
] }),
|
|
2828
|
-
|
|
2829
|
-
|
|
2833
|
+
ne && /* @__PURE__ */ e(ae, { size: "xs", subtle: !0, variant: "success", children: b ? n("giftRegistry.bought", "bought") : n("giftRegistry.fullyCovered", "fully covered") }),
|
|
2834
|
+
I.url && /* @__PURE__ */ s(
|
|
2830
2835
|
"a",
|
|
2831
2836
|
{
|
|
2832
2837
|
className: "nice-gift-registry__link",
|
|
2833
|
-
href:
|
|
2838
|
+
href: I.url,
|
|
2834
2839
|
target: "_blank",
|
|
2835
2840
|
rel: "noopener noreferrer",
|
|
2836
2841
|
children: [
|
|
2837
|
-
/* @__PURE__ */ e(
|
|
2842
|
+
/* @__PURE__ */ e(zt, { size: 13 }),
|
|
2838
2843
|
" ",
|
|
2839
2844
|
n("giftRegistry.shop", "Shop")
|
|
2840
2845
|
]
|
|
@@ -2842,71 +2847,71 @@ const la = /* @__PURE__ */ te(
|
|
|
2842
2847
|
)
|
|
2843
2848
|
] }),
|
|
2844
2849
|
!b && /* @__PURE__ */ e(
|
|
2845
|
-
|
|
2850
|
+
Ai,
|
|
2846
2851
|
{
|
|
2847
2852
|
value: V,
|
|
2848
2853
|
max: G,
|
|
2849
|
-
label: n("giftRegistry.covered", "{name}: {value} of {max} covered").replace("{name}",
|
|
2854
|
+
label: n("giftRegistry.covered", "{name}: {value} of {max} covered").replace("{name}", I.title).replace("{value}", String(V)).replace("{max}", String(G))
|
|
2850
2855
|
}
|
|
2851
2856
|
),
|
|
2852
|
-
!c && ie.length > 0 && /* @__PURE__ */ e("ul", { className: "nice-gift-registry__contributors", children: ie.map((
|
|
2853
|
-
/* @__PURE__ */ e("strong", { children:
|
|
2854
|
-
|
|
2855
|
-
|
|
2856
|
-
|
|
2857
|
+
!c && ie.length > 0 && /* @__PURE__ */ e("ul", { className: "nice-gift-registry__contributors", children: ie.map((Z) => /* @__PURE__ */ s("li", { className: "nice-gift-registry__contributor", children: [
|
|
2858
|
+
/* @__PURE__ */ e("strong", { children: Z.contributorName }),
|
|
2859
|
+
Z.amount !== void 0 && ` — ${ce(Z.amount, (Y == null ? void 0 : Y.currency) || u, _)}`,
|
|
2860
|
+
Z.amount === void 0 && Z.quantity ? ` — ${Z.quantity}×` : "",
|
|
2861
|
+
Z.message && /* @__PURE__ */ s("em", { children: [
|
|
2857
2862
|
" “",
|
|
2858
|
-
|
|
2863
|
+
Z.message,
|
|
2859
2864
|
"”"
|
|
2860
2865
|
] })
|
|
2861
|
-
] },
|
|
2866
|
+
] }, Z.id)) }),
|
|
2862
2867
|
/* @__PURE__ */ s("div", { className: "nice-gift-registry__actions", children: [
|
|
2863
|
-
!
|
|
2868
|
+
!q && !ne && z && /* @__PURE__ */ e(
|
|
2864
2869
|
U,
|
|
2865
2870
|
{
|
|
2866
2871
|
size: "sm",
|
|
2867
2872
|
variant: "primary",
|
|
2868
2873
|
disabled: C || !w.canAct,
|
|
2869
2874
|
leftIcon: /* @__PURE__ */ e(je, { size: 14 }),
|
|
2870
|
-
onClick: () => z(
|
|
2875
|
+
onClick: () => z(I.id, { ...w.actor, quantity: 1 }),
|
|
2871
2876
|
children: n("giftRegistry.illTakeThis", "I'll take this")
|
|
2872
2877
|
}
|
|
2873
2878
|
),
|
|
2874
|
-
!
|
|
2879
|
+
!q && ne && v && /* @__PURE__ */ e(
|
|
2875
2880
|
U,
|
|
2876
2881
|
{
|
|
2877
2882
|
size: "sm",
|
|
2878
2883
|
variant: "ghost",
|
|
2879
2884
|
disabled: C,
|
|
2880
|
-
onClick: () => v(
|
|
2885
|
+
onClick: () => v(I.id),
|
|
2881
2886
|
children: n("giftRegistry.release", "Release")
|
|
2882
2887
|
}
|
|
2883
2888
|
),
|
|
2884
|
-
!
|
|
2889
|
+
!q && !ne && !b && h && /* @__PURE__ */ e(
|
|
2885
2890
|
U,
|
|
2886
2891
|
{
|
|
2887
2892
|
size: "sm",
|
|
2888
2893
|
variant: "outline",
|
|
2889
2894
|
disabled: C || !w.canAct,
|
|
2890
|
-
onClick: () =>
|
|
2895
|
+
onClick: () => x(N === I.id ? null : I.id),
|
|
2891
2896
|
children: n("giftRegistry.chipIn", "Chip in")
|
|
2892
2897
|
}
|
|
2893
2898
|
),
|
|
2894
|
-
|
|
2899
|
+
q && P && !p && /* @__PURE__ */ e(
|
|
2895
2900
|
U,
|
|
2896
2901
|
{
|
|
2897
2902
|
size: "sm",
|
|
2898
2903
|
variant: "ghost",
|
|
2899
2904
|
ariaLabel: n("giftRegistry.deleteItem", "Delete {name}").replace(
|
|
2900
2905
|
"{name}",
|
|
2901
|
-
|
|
2906
|
+
I.title
|
|
2902
2907
|
),
|
|
2903
2908
|
disabled: f,
|
|
2904
|
-
onClick: () => P(
|
|
2909
|
+
onClick: () => P(I.id),
|
|
2905
2910
|
children: /* @__PURE__ */ e(De, { size: 14 })
|
|
2906
2911
|
}
|
|
2907
2912
|
)
|
|
2908
2913
|
] }),
|
|
2909
|
-
N ===
|
|
2914
|
+
N === I.id && /* @__PURE__ */ s("div", { className: "nice-gift-registry__pledge", children: [
|
|
2910
2915
|
/* @__PURE__ */ s("label", { className: "nice-gift-registry__pledge-field", children: [
|
|
2911
2916
|
/* @__PURE__ */ e("span", { children: n("giftRegistry.amount", "Amount ({currency})").replace(
|
|
2912
2917
|
"{currency}",
|
|
@@ -2916,7 +2921,7 @@ const la = /* @__PURE__ */ te(
|
|
|
2916
2921
|
dn,
|
|
2917
2922
|
{
|
|
2918
2923
|
value: B,
|
|
2919
|
-
onChange: (
|
|
2924
|
+
onChange: (Z) => X(Math.max(0, Z ?? 0)),
|
|
2920
2925
|
min: 0,
|
|
2921
2926
|
size: "xs",
|
|
2922
2927
|
disabled: C
|
|
@@ -2929,21 +2934,21 @@ const la = /* @__PURE__ */ te(
|
|
|
2929
2934
|
size: "sm",
|
|
2930
2935
|
variant: "primary",
|
|
2931
2936
|
disabled: C || !w.canAct,
|
|
2932
|
-
onClick: () =>
|
|
2937
|
+
onClick: () => W(I),
|
|
2933
2938
|
children: n("giftRegistry.confirm", "Confirm")
|
|
2934
2939
|
}
|
|
2935
2940
|
),
|
|
2936
|
-
/* @__PURE__ */ e(U, { size: "sm", variant: "ghost", onClick:
|
|
2941
|
+
/* @__PURE__ */ e(U, { size: "sm", variant: "ghost", onClick: j, children: n("giftRegistry.cancel", "Cancel") })
|
|
2937
2942
|
] })
|
|
2938
2943
|
] })
|
|
2939
2944
|
]
|
|
2940
2945
|
},
|
|
2941
|
-
|
|
2946
|
+
I.id
|
|
2942
2947
|
);
|
|
2943
2948
|
}) }),
|
|
2944
|
-
|
|
2949
|
+
q && g && !p && /* @__PURE__ */ s("div", { className: "nice-gift-registry__add", children: [
|
|
2945
2950
|
/* @__PURE__ */ e(
|
|
2946
|
-
|
|
2951
|
+
J,
|
|
2947
2952
|
{
|
|
2948
2953
|
label: b ? n("giftRegistry.addAWish", "Add a wish") : n("giftRegistry.addAGift", "Add a gift"),
|
|
2949
2954
|
value: E,
|
|
@@ -2972,7 +2977,7 @@ const la = /* @__PURE__ */ te(
|
|
|
2972
2977
|
);
|
|
2973
2978
|
}
|
|
2974
2979
|
);
|
|
2975
|
-
function
|
|
2980
|
+
function Li(a) {
|
|
2976
2981
|
const i = /* @__PURE__ */ new Map();
|
|
2977
2982
|
for (const r of a) {
|
|
2978
2983
|
const n = (r.currency || "").toUpperCase(), t = i.get(n);
|
|
@@ -2980,7 +2985,7 @@ function Mi(a) {
|
|
|
2980
2985
|
}
|
|
2981
2986
|
return i;
|
|
2982
2987
|
}
|
|
2983
|
-
function
|
|
2988
|
+
function $i(a, i, r) {
|
|
2984
2989
|
var _;
|
|
2985
2990
|
const n = new Set(i.map((c) => c.id)), t = i.map((c) => c.id), d = new Map(t.map((c) => [c, 0])), o = [];
|
|
2986
2991
|
let u = 0;
|
|
@@ -3002,14 +3007,14 @@ function Li(a, i, r) {
|
|
|
3002
3007
|
}
|
|
3003
3008
|
let m = (_ = c.splitAmong) != null && _.length ? c.splitAmong.filter((k) => n.has(k)) : t;
|
|
3004
3009
|
m.length === 0 && (m = t);
|
|
3005
|
-
const h =
|
|
3010
|
+
const h = pn(c.amount, r);
|
|
3006
3011
|
u += h;
|
|
3007
3012
|
const z = m.length, v = Math.floor(h / z), g = h - v * z, P = new Map(m.map((k) => [k, v]));
|
|
3008
3013
|
if (g !== 0)
|
|
3009
3014
|
if (P.has(l))
|
|
3010
3015
|
P.set(l, (P.get(l) ?? 0) + g);
|
|
3011
3016
|
else {
|
|
3012
|
-
const k = [...m].sort(
|
|
3017
|
+
const k = [...m].sort(We), T = g > 0 ? 1 : -1;
|
|
3013
3018
|
for (let f = 0; f < Math.abs(g); f += 1) {
|
|
3014
3019
|
const p = k[f % k.length];
|
|
3015
3020
|
P.set(p, (P.get(p) ?? 0) + T);
|
|
@@ -3021,16 +3026,16 @@ function Li(a, i, r) {
|
|
|
3021
3026
|
}
|
|
3022
3027
|
return { balances: d, issues: o, totalMinor: u };
|
|
3023
3028
|
}
|
|
3024
|
-
function
|
|
3029
|
+
function Ri(a, i, r) {
|
|
3025
3030
|
for (const n of i) {
|
|
3026
3031
|
if ((n.currency || "").toUpperCase() !== r || !a.has(n.fromId) || !a.has(n.toId))
|
|
3027
3032
|
continue;
|
|
3028
|
-
const t =
|
|
3033
|
+
const t = pn(n.amount, r);
|
|
3029
3034
|
a.set(n.fromId, (a.get(n.fromId) ?? 0) + t), a.set(n.toId, (a.get(n.toId) ?? 0) - t);
|
|
3030
3035
|
}
|
|
3031
3036
|
}
|
|
3032
|
-
function
|
|
3033
|
-
const n = new Map(i.map((c) => [c.id, c.name])), t = [...a.entries()].filter(([, c]) => c > 0).map(([c, l]) => ({ id: c, v: l })).sort((c, l) => l.v - c.v ||
|
|
3037
|
+
function Di(a, i, r) {
|
|
3038
|
+
const n = new Map(i.map((c) => [c.id, c.name])), t = [...a.entries()].filter(([, c]) => c > 0).map(([c, l]) => ({ id: c, v: l })).sort((c, l) => l.v - c.v || We(c.id, l.id)), d = [...a.entries()].filter(([, c]) => c < 0).map(([c, l]) => ({ id: c, v: l })).sort((c, l) => c.v - l.v || We(c.id, l.id)), o = [];
|
|
3034
3039
|
let u = 0, _ = 0;
|
|
3035
3040
|
for (; u < d.length && _ < t.length; ) {
|
|
3036
3041
|
const c = Math.min(-d[u].v, t[_].v);
|
|
@@ -3039,38 +3044,38 @@ function Ri(a, i, r) {
|
|
|
3039
3044
|
fromName: n.get(d[u].id) ?? d[u].id,
|
|
3040
3045
|
toId: t[_].id,
|
|
3041
3046
|
toName: n.get(t[_].id) ?? t[_].id,
|
|
3042
|
-
amount:
|
|
3047
|
+
amount: qe(c, r),
|
|
3043
3048
|
currency: r
|
|
3044
3049
|
}), d[u].v += c, t[_].v -= c, d[u].v === 0 && (u += 1), t[_].v === 0 && (_ += 1);
|
|
3045
3050
|
}
|
|
3046
3051
|
return o;
|
|
3047
3052
|
}
|
|
3048
|
-
function
|
|
3049
|
-
const n = [], t = [], d = [...
|
|
3053
|
+
function Ei(a, i, r = []) {
|
|
3054
|
+
const n = [], t = [], d = [...Li(a).entries()].sort(([o], [u]) => We(o, u));
|
|
3050
3055
|
for (const [o, u] of d) {
|
|
3051
|
-
const _ =
|
|
3052
|
-
t.push(..._.issues),
|
|
3056
|
+
const _ = $i(u, i, o);
|
|
3057
|
+
t.push(..._.issues), Ri(_.balances, r, o), n.push({
|
|
3053
3058
|
currency: o,
|
|
3054
|
-
total:
|
|
3059
|
+
total: qe(_.totalMinor, o),
|
|
3055
3060
|
balances: i.map((c) => ({
|
|
3056
3061
|
participantId: c.id,
|
|
3057
3062
|
participantName: c.name,
|
|
3058
|
-
amount:
|
|
3063
|
+
amount: qe(_.balances.get(c.id) ?? 0, o),
|
|
3059
3064
|
currency: o
|
|
3060
3065
|
})),
|
|
3061
|
-
transfers:
|
|
3066
|
+
transfers: Di(_.balances, i, o)
|
|
3062
3067
|
});
|
|
3063
3068
|
}
|
|
3064
3069
|
return { groups: n, issues: t };
|
|
3065
3070
|
}
|
|
3066
|
-
function
|
|
3071
|
+
function We(a, i) {
|
|
3067
3072
|
return a < i ? -1 : a > i ? 1 : 0;
|
|
3068
3073
|
}
|
|
3069
|
-
const
|
|
3074
|
+
const Oi = [], Bi = [], da = /* @__PURE__ */ te(
|
|
3070
3075
|
function(i, r) {
|
|
3071
|
-
const { t: n } =
|
|
3072
|
-
items: t =
|
|
3073
|
-
participants: d =
|
|
3076
|
+
const { t: n } = ee(), {
|
|
3077
|
+
items: t = Oi,
|
|
3078
|
+
participants: d = Bi,
|
|
3074
3079
|
settlements: o = [],
|
|
3075
3080
|
view: u,
|
|
3076
3081
|
defaultView: _ = "expenses",
|
|
@@ -3089,28 +3094,28 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3089
3094
|
} = i, [A, y] = D(_), M = u ?? A, w = P || k, N = F(
|
|
3090
3095
|
() => d.map((C) => ({ id: C.id, name: C.name })),
|
|
3091
3096
|
[d]
|
|
3092
|
-
),
|
|
3097
|
+
), x = F(() => Ei(t, N, o), [t, N, o]), B = F(() => v === "none" ? t : t.map((C, b) => ({ item: C, index: b })).sort((C, b) => {
|
|
3093
3098
|
if (v === "amount")
|
|
3094
3099
|
return b.item.amount - C.item.amount || C.index - b.index;
|
|
3095
|
-
const L = C.item.incurredAt,
|
|
3096
|
-
return L &&
|
|
3097
|
-
}).map((C) => C.item), [t, v]), X =
|
|
3100
|
+
const L = C.item.incurredAt, j = b.item.incurredAt;
|
|
3101
|
+
return L && j ? L.localeCompare(j) || C.index - b.index : L ? -1 : j ? 1 : C.index - b.index;
|
|
3102
|
+
}).map((C) => C.item), [t, v]), X = x.issues.map((C) => `${C.itemId}:${C.reason}`).join("|");
|
|
3098
3103
|
Re.useEffect(() => {
|
|
3099
|
-
z == null || z(
|
|
3104
|
+
z == null || z(x.issues);
|
|
3100
3105
|
}, [X]);
|
|
3101
3106
|
const E = F(
|
|
3102
3107
|
() => new Map(d.map((C) => [C.id, C.avatarUrl])),
|
|
3103
3108
|
[d]
|
|
3104
3109
|
), R = F(
|
|
3105
|
-
() => new Map(
|
|
3106
|
-
[
|
|
3107
|
-
),
|
|
3110
|
+
() => new Map(x.issues.map((C) => [C.itemId, C.reason])),
|
|
3111
|
+
[x.issues]
|
|
3112
|
+
), q = (C) => {
|
|
3108
3113
|
u === void 0 && y(C), c == null || c(C);
|
|
3109
3114
|
};
|
|
3110
3115
|
return t.length === 0 ? /* @__PURE__ */ e("div", { ref: r, className: `nice-expense-split ${f ?? ""}`, style: p, children: /* @__PURE__ */ e(
|
|
3111
3116
|
Ne,
|
|
3112
3117
|
{
|
|
3113
|
-
icon: /* @__PURE__ */ e(
|
|
3118
|
+
icon: /* @__PURE__ */ e(At, { size: 28 }),
|
|
3114
3119
|
title: n("expenseSplit.noExpensesYet", "No expenses yet"),
|
|
3115
3120
|
description: n(
|
|
3116
3121
|
"expenseSplit.addWhatPeoplePaidFor",
|
|
@@ -3125,11 +3130,11 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3125
3130
|
style: p,
|
|
3126
3131
|
children: [
|
|
3127
3132
|
/* @__PURE__ */ e(
|
|
3128
|
-
|
|
3133
|
+
Vn,
|
|
3129
3134
|
{
|
|
3130
3135
|
size: T,
|
|
3131
3136
|
value: M,
|
|
3132
|
-
onChange: (C) =>
|
|
3137
|
+
onChange: (C) => q(C),
|
|
3133
3138
|
options: [
|
|
3134
3139
|
{ value: "expenses", label: n("expenseSplit.expenses", "Expenses") },
|
|
3135
3140
|
{ value: "balances", label: n("expenseSplit.balances", "Balances") },
|
|
@@ -3182,7 +3187,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3182
3187
|
C.id
|
|
3183
3188
|
);
|
|
3184
3189
|
}) }),
|
|
3185
|
-
M === "balances" &&
|
|
3190
|
+
M === "balances" && x.groups.map((C) => /* @__PURE__ */ s("section", { className: "nice-expense-split__group", children: [
|
|
3186
3191
|
/* @__PURE__ */ s("h4", { className: "nice-expense-split__group-title", children: [
|
|
3187
3192
|
C.currency,
|
|
3188
3193
|
/* @__PURE__ */ e("span", { className: "nice-expense-split__group-total", children: n("expenseSplit.total", "{amount} total").replace(
|
|
@@ -3222,17 +3227,17 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3222
3227
|
b.participantId
|
|
3223
3228
|
)) })
|
|
3224
3229
|
] }, C.currency)),
|
|
3225
|
-
M === "settlement" && (
|
|
3230
|
+
M === "settlement" && (x.groups.every((C) => C.transfers.length === 0) ? /* @__PURE__ */ e(
|
|
3226
3231
|
Ne,
|
|
3227
3232
|
{
|
|
3228
|
-
icon: /* @__PURE__ */ e(
|
|
3233
|
+
icon: /* @__PURE__ */ e(Tt, { size: 28 }),
|
|
3229
3234
|
title: n("expenseSplit.allSettledUp", "All settled up"),
|
|
3230
3235
|
description: n(
|
|
3231
3236
|
"expenseSplit.nobodyOwesAnybodyAnything",
|
|
3232
3237
|
"Nobody owes anybody anything."
|
|
3233
3238
|
)
|
|
3234
3239
|
}
|
|
3235
|
-
) :
|
|
3240
|
+
) : x.groups.filter((C) => C.transfers.length > 0).map((C) => /* @__PURE__ */ s("section", { className: "nice-expense-split__group", children: [
|
|
3236
3241
|
/* @__PURE__ */ s("h4", { className: "nice-expense-split__group-title", children: [
|
|
3237
3242
|
C.currency,
|
|
3238
3243
|
/* @__PURE__ */ e("span", { className: "nice-expense-split__group-total", children: C.transfers.length === 1 ? n("expenseSplit.transfersOne", "{transfers} transfer").replace(
|
|
@@ -3249,7 +3254,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3249
3254
|
className: "nice-expense-split__transfer",
|
|
3250
3255
|
children: [
|
|
3251
3256
|
/* @__PURE__ */ e("span", { className: "nice-expense-split__transfer-from", children: b.fromName }),
|
|
3252
|
-
/* @__PURE__ */ e(
|
|
3257
|
+
/* @__PURE__ */ e(Mt, { size: 15 }),
|
|
3253
3258
|
/* @__PURE__ */ e("span", { className: "nice-expense-split__transfer-to", children: b.toName }),
|
|
3254
3259
|
/* @__PURE__ */ e("span", { className: "nice-expense-split__transfer-amount", children: ce(b.amount, b.currency, g) }),
|
|
3255
3260
|
l && !k && /* @__PURE__ */ e(
|
|
@@ -3271,24 +3276,24 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3271
3276
|
}
|
|
3272
3277
|
);
|
|
3273
3278
|
}
|
|
3274
|
-
),
|
|
3275
|
-
upcoming:
|
|
3279
|
+
), Yi = [], Ui = {
|
|
3280
|
+
upcoming: En,
|
|
3276
3281
|
active: Ke,
|
|
3277
3282
|
voting: cn,
|
|
3278
|
-
scored:
|
|
3283
|
+
scored: Lt,
|
|
3279
3284
|
completed: je,
|
|
3280
3285
|
skipped: rn
|
|
3281
|
-
},
|
|
3286
|
+
}, Vi = {
|
|
3282
3287
|
upcoming: "#9ca3af",
|
|
3283
3288
|
active: "#22c55e",
|
|
3284
3289
|
voting: "#eab308",
|
|
3285
3290
|
scored: "#3b82f6",
|
|
3286
3291
|
completed: "#6b7280",
|
|
3287
3292
|
skipped: "#d1d5db"
|
|
3288
|
-
},
|
|
3293
|
+
}, ua = /* @__PURE__ */ te(
|
|
3289
3294
|
function(i, r) {
|
|
3290
|
-
const { t: n } =
|
|
3291
|
-
rounds: t =
|
|
3295
|
+
const { t: n } = ee(), {
|
|
3296
|
+
rounds: t = Yi,
|
|
3292
3297
|
activeRoundId: d,
|
|
3293
3298
|
onSelect: o,
|
|
3294
3299
|
onStart: u,
|
|
@@ -3308,6 +3313,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3308
3313
|
return /* @__PURE__ */ s(
|
|
3309
3314
|
"div",
|
|
3310
3315
|
{
|
|
3316
|
+
onKeyDown: un,
|
|
3311
3317
|
className: `nice-round-list__item ${g ? "nice-round-list__item--active" : ""}`,
|
|
3312
3318
|
onClick: () => o == null ? void 0 : o(v),
|
|
3313
3319
|
role: o ? "button" : void 0,
|
|
@@ -3322,7 +3328,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3322
3328
|
{
|
|
3323
3329
|
className: "nice-round-list__icon",
|
|
3324
3330
|
title: n(`roundCard.status.${v.status}`, v.status),
|
|
3325
|
-
children: Re.createElement(
|
|
3331
|
+
children: Re.createElement(Ui[v.status], { size: 16 })
|
|
3326
3332
|
}
|
|
3327
3333
|
),
|
|
3328
3334
|
/* @__PURE__ */ s("div", { className: "nice-round-list__info", children: [
|
|
@@ -3334,7 +3340,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3334
3340
|
"span",
|
|
3335
3341
|
{
|
|
3336
3342
|
className: "nice-round-list__status",
|
|
3337
|
-
style: { color:
|
|
3343
|
+
style: { color: Vi[v.status] },
|
|
3338
3344
|
children: n(`roundCard.status.${v.status}`, v.status)
|
|
3339
3345
|
}
|
|
3340
3346
|
),
|
|
@@ -3347,10 +3353,18 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3347
3353
|
" ",
|
|
3348
3354
|
v.winnerIds.length
|
|
3349
3355
|
] }),
|
|
3350
|
-
l && /* @__PURE__ */ s(
|
|
3351
|
-
|
|
3352
|
-
|
|
3353
|
-
|
|
3356
|
+
l && /* @__PURE__ */ s(
|
|
3357
|
+
"div",
|
|
3358
|
+
{
|
|
3359
|
+
role: "presentation",
|
|
3360
|
+
className: "nice-round-list__actions",
|
|
3361
|
+
onClick: (P) => P.stopPropagation(),
|
|
3362
|
+
children: [
|
|
3363
|
+
v.status === "upcoming" && u && /* @__PURE__ */ e("button", { onClick: () => u(v.id), children: n("roundList.start", "Start") }),
|
|
3364
|
+
(v.status === "active" || v.status === "voting") && _ && /* @__PURE__ */ e("button", { onClick: () => _(v.id), children: n("roundList.end", "End") })
|
|
3365
|
+
]
|
|
3366
|
+
}
|
|
3367
|
+
)
|
|
3354
3368
|
]
|
|
3355
3369
|
},
|
|
3356
3370
|
v.id
|
|
@@ -3358,13 +3372,13 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3358
3372
|
}) })
|
|
3359
3373
|
] });
|
|
3360
3374
|
}
|
|
3361
|
-
),
|
|
3375
|
+
), Fi = [
|
|
3362
3376
|
"var(--nice-lb-gold, #facc15)",
|
|
3363
3377
|
"var(--nice-lb-silver, #cbd5e1)",
|
|
3364
3378
|
"var(--nice-lb-bronze, #d97706)"
|
|
3365
|
-
],
|
|
3379
|
+
], ma = /* @__PURE__ */ te(
|
|
3366
3380
|
function(i, r) {
|
|
3367
|
-
const { t: n } =
|
|
3381
|
+
const { t: n } = ee(), {
|
|
3368
3382
|
round: t,
|
|
3369
3383
|
timerRunning: d = !1,
|
|
3370
3384
|
remainingSeconds: o,
|
|
@@ -3376,7 +3390,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3376
3390
|
footerActions: h,
|
|
3377
3391
|
className: z,
|
|
3378
3392
|
style: v
|
|
3379
|
-
} = i, [g, P] = D({}), k =
|
|
3393
|
+
} = i, [g, P] = D({}), k = H(
|
|
3380
3394
|
(p) => {
|
|
3381
3395
|
const A = parseFloat(g[p] ?? "");
|
|
3382
3396
|
isNaN(A) || !u || (u(p, A), P((y) => ({ ...y, [p]: "" })));
|
|
@@ -3404,7 +3418,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3404
3418
|
{
|
|
3405
3419
|
className: `nice-round-card__timer ${d ? "nice-round-card__timer--running" : ""}`,
|
|
3406
3420
|
children: [
|
|
3407
|
-
/* @__PURE__ */ e(
|
|
3421
|
+
/* @__PURE__ */ e(En, { size: 14 }),
|
|
3408
3422
|
" ",
|
|
3409
3423
|
o != null ? T(o) : "—"
|
|
3410
3424
|
]
|
|
@@ -3431,7 +3445,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3431
3445
|
Je,
|
|
3432
3446
|
{
|
|
3433
3447
|
size: 14,
|
|
3434
|
-
primaryColor:
|
|
3448
|
+
primaryColor: Fi[A],
|
|
3435
3449
|
"aria-label": n("roundCard.placeN", "Place {n}").replace(
|
|
3436
3450
|
"{n}",
|
|
3437
3451
|
String(A + 1)
|
|
@@ -3474,7 +3488,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3474
3488
|
n("roundCard.startRound", "Start Round")
|
|
3475
3489
|
] }),
|
|
3476
3490
|
(t.status === "active" || t.status === "voting") && c && /* @__PURE__ */ s("button", { onClick: c, children: [
|
|
3477
|
-
/* @__PURE__ */ e(
|
|
3491
|
+
/* @__PURE__ */ e($t, { size: 14 }),
|
|
3478
3492
|
" ",
|
|
3479
3493
|
n("roundCard.endRound", "End Round")
|
|
3480
3494
|
] }),
|
|
@@ -3498,15 +3512,15 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3498
3512
|
}
|
|
3499
3513
|
);
|
|
3500
3514
|
}
|
|
3501
|
-
),
|
|
3515
|
+
), Xi = [], qi = (a) => {
|
|
3502
3516
|
if (!a)
|
|
3503
3517
|
return "";
|
|
3504
3518
|
const i = Math.floor(a / 60), r = a % 60;
|
|
3505
3519
|
return `${i}:${r.toString().padStart(2, "0")}`;
|
|
3506
|
-
},
|
|
3520
|
+
}, pa = /* @__PURE__ */ te(
|
|
3507
3521
|
function(i, r) {
|
|
3508
3522
|
const {
|
|
3509
|
-
songs: n =
|
|
3523
|
+
songs: n = Xi,
|
|
3510
3524
|
onAdd: t,
|
|
3511
3525
|
onRemove: d,
|
|
3512
3526
|
onVote: o,
|
|
@@ -3515,7 +3529,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3515
3529
|
readOnly: c = !1,
|
|
3516
3530
|
className: l,
|
|
3517
3531
|
style: m
|
|
3518
|
-
} = i, { t: h } =
|
|
3532
|
+
} = i, { t: h } = ee(), [z, v] = D(""), g = F(() => {
|
|
3519
3533
|
if (!z.trim())
|
|
3520
3534
|
return n;
|
|
3521
3535
|
const f = z.toLowerCase();
|
|
@@ -3540,7 +3554,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3540
3554
|
] })
|
|
3541
3555
|
] }),
|
|
3542
3556
|
/* @__PURE__ */ e("div", { className: "nice-song-picker__search", children: /* @__PURE__ */ e(
|
|
3543
|
-
|
|
3557
|
+
J,
|
|
3544
3558
|
{
|
|
3545
3559
|
size: "sm",
|
|
3546
3560
|
controlWidth: "100%",
|
|
@@ -3560,7 +3574,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3560
3574
|
/* @__PURE__ */ e("strong", { children: f.title }),
|
|
3561
3575
|
" — ",
|
|
3562
3576
|
/* @__PURE__ */ e("span", { children: f.artist }),
|
|
3563
|
-
f.duration && /* @__PURE__ */ e("span", { className: "nice-song-picker__duration", children:
|
|
3577
|
+
f.duration && /* @__PURE__ */ e("span", { className: "nice-song-picker__duration", children: qi(f.duration) }),
|
|
3564
3578
|
f.addedByName && /* @__PURE__ */ e("div", { className: "nice-song-picker__added-by", children: h("songPicker.addedBy", "Added by {name}").replace(
|
|
3565
3579
|
"{name}",
|
|
3566
3580
|
f.addedByName
|
|
@@ -3611,17 +3625,17 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3611
3625
|
] })
|
|
3612
3626
|
] });
|
|
3613
3627
|
}
|
|
3614
|
-
), Wi = [],
|
|
3628
|
+
), Wi = [], An = {
|
|
3615
3629
|
easy: "Easy",
|
|
3616
3630
|
medium: "Medium",
|
|
3617
3631
|
hard: "Hard",
|
|
3618
3632
|
expert: "Expert"
|
|
3619
|
-
},
|
|
3633
|
+
}, Gi = {
|
|
3620
3634
|
easy: "var(--nice-color-success, #16a34a)",
|
|
3621
3635
|
medium: "var(--nice-color-warning, #d97706)",
|
|
3622
3636
|
hard: "var(--nice-color-error, #dc2626)",
|
|
3623
3637
|
expert: "var(--nice-color-accent, #7c3aed)"
|
|
3624
|
-
}, Ue = "all",
|
|
3638
|
+
}, Ue = "all", ha = /* @__PURE__ */ te(
|
|
3625
3639
|
function(i, r) {
|
|
3626
3640
|
const {
|
|
3627
3641
|
songs: n = Wi,
|
|
@@ -3633,7 +3647,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3633
3647
|
readOnly: c = !1,
|
|
3634
3648
|
className: l,
|
|
3635
3649
|
style: m
|
|
3636
|
-
} = i, { t: h } =
|
|
3650
|
+
} = i, { t: h } = ee(), z = (y) => y in An ? h(`karaokePicker.difficulty.${y}`, An[y]) : y, [v, g] = D(""), [P, k] = D(Ue), T = n.find((y) => y.id === _), f = F(() => {
|
|
3637
3651
|
let y = n;
|
|
3638
3652
|
if (v.trim()) {
|
|
3639
3653
|
const M = v.toLowerCase();
|
|
@@ -3669,7 +3683,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3669
3683
|
] }),
|
|
3670
3684
|
/* @__PURE__ */ s("div", { className: "nice-karaoke-picker__filters", children: [
|
|
3671
3685
|
/* @__PURE__ */ e("div", { className: "nice-karaoke-picker__search", children: /* @__PURE__ */ e(
|
|
3672
|
-
|
|
3686
|
+
J,
|
|
3673
3687
|
{
|
|
3674
3688
|
size: "sm",
|
|
3675
3689
|
controlWidth: "100%",
|
|
@@ -3703,7 +3717,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3703
3717
|
{
|
|
3704
3718
|
className: "nice-karaoke-picker__difficulty",
|
|
3705
3719
|
style: {
|
|
3706
|
-
color:
|
|
3720
|
+
color: Gi[y.difficulty] ?? "var(--nice-text-muted, #94a3b8)"
|
|
3707
3721
|
},
|
|
3708
3722
|
children: [
|
|
3709
3723
|
"[",
|
|
@@ -3718,7 +3732,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3718
3732
|
className: "nice-karaoke-picker__lyrics",
|
|
3719
3733
|
title: h("karaokePicker.lyrics", "Lyrics available"),
|
|
3720
3734
|
"aria-label": h("karaokePicker.lyrics", "Lyrics available"),
|
|
3721
|
-
children: /* @__PURE__ */ e(
|
|
3735
|
+
children: /* @__PURE__ */ e(Rt, { size: 12 })
|
|
3722
3736
|
}
|
|
3723
3737
|
),
|
|
3724
3738
|
y.language && /* @__PURE__ */ s("span", { className: "nice-karaoke-picker__language", children: [
|
|
@@ -3762,22 +3776,22 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3762
3776
|
size: "xs",
|
|
3763
3777
|
onClick: () => o(y.id),
|
|
3764
3778
|
"aria-label": `${h("remove", "Remove")} ${y.title}`,
|
|
3765
|
-
children: /* @__PURE__ */ e(
|
|
3779
|
+
children: /* @__PURE__ */ e($n, { size: 12 })
|
|
3766
3780
|
}
|
|
3767
3781
|
)
|
|
3768
3782
|
] }, y.id))
|
|
3769
3783
|
] })
|
|
3770
3784
|
] });
|
|
3771
3785
|
}
|
|
3772
|
-
),
|
|
3773
|
-
game:
|
|
3786
|
+
), Ki = [], Tn = {
|
|
3787
|
+
game: Yn,
|
|
3774
3788
|
music: Pe,
|
|
3775
3789
|
dance: Pe,
|
|
3776
3790
|
quiz: sn,
|
|
3777
3791
|
karaoke: Xe,
|
|
3778
|
-
photo:
|
|
3779
|
-
custom:
|
|
3780
|
-
},
|
|
3792
|
+
photo: Bn,
|
|
3793
|
+
custom: On
|
|
3794
|
+
}, ji = {
|
|
3781
3795
|
game: "Games",
|
|
3782
3796
|
music: "Music",
|
|
3783
3797
|
dance: "Dance",
|
|
@@ -3785,9 +3799,9 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3785
3799
|
karaoke: "Karaoke",
|
|
3786
3800
|
photo: "Photo",
|
|
3787
3801
|
custom: "Custom"
|
|
3788
|
-
},
|
|
3789
|
-
const { t: n } =
|
|
3790
|
-
attractions: t =
|
|
3802
|
+
}, ga = /* @__PURE__ */ te(function(i, r) {
|
|
3803
|
+
const { t: n } = ee(), {
|
|
3804
|
+
attractions: t = Ki,
|
|
3791
3805
|
onSelect: d,
|
|
3792
3806
|
onDeselect: o,
|
|
3793
3807
|
onVote: u,
|
|
@@ -3806,9 +3820,9 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3806
3820
|
if (g && (w = w.filter((N) => N.category === g)), k.trim()) {
|
|
3807
3821
|
const N = k.toLowerCase();
|
|
3808
3822
|
w = w.filter(
|
|
3809
|
-
(
|
|
3823
|
+
(x) => {
|
|
3810
3824
|
var B;
|
|
3811
|
-
return
|
|
3825
|
+
return x.name.toLowerCase().includes(N) || ((B = x.description) == null ? void 0 : B.toLowerCase().includes(N));
|
|
3812
3826
|
}
|
|
3813
3827
|
);
|
|
3814
3828
|
}
|
|
@@ -3848,9 +3862,9 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3848
3862
|
onClick: () => P(w === g ? "" : w),
|
|
3849
3863
|
className: `nice-attraction-picker__category${w === g ? " nice-attraction-picker__category--active" : ""}`,
|
|
3850
3864
|
children: [
|
|
3851
|
-
Re.createElement(
|
|
3865
|
+
Re.createElement(Tn[w], { size: 14 }),
|
|
3852
3866
|
" ",
|
|
3853
|
-
n(`attractionPicker.category.${w}`,
|
|
3867
|
+
n(`attractionPicker.category.${w}`, ji[w])
|
|
3854
3868
|
]
|
|
3855
3869
|
},
|
|
3856
3870
|
w
|
|
@@ -3861,12 +3875,16 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3861
3875
|
return /* @__PURE__ */ s(
|
|
3862
3876
|
"div",
|
|
3863
3877
|
{
|
|
3878
|
+
role: "button",
|
|
3879
|
+
tabIndex: 0,
|
|
3880
|
+
"aria-pressed": N,
|
|
3881
|
+
onKeyDown: un,
|
|
3864
3882
|
className: `nice-attraction-picker__card${N ? " nice-attraction-picker__card--selected" : ""}${m ? " nice-attraction-picker__card--readonly" : ""}`,
|
|
3865
3883
|
onClick: () => M(w.id),
|
|
3866
3884
|
children: [
|
|
3867
3885
|
w.imageUrl && /* @__PURE__ */ e("img", { src: w.imageUrl, alt: w.name, className: "nice-attraction-picker__image" }),
|
|
3868
3886
|
/* @__PURE__ */ s("div", { className: "nice-attraction-picker__name", children: [
|
|
3869
|
-
/* @__PURE__ */ e("span", { className: "nice-attraction-picker__icon", children: Re.createElement(
|
|
3887
|
+
/* @__PURE__ */ e("span", { className: "nice-attraction-picker__icon", children: Re.createElement(Tn[w.category], { size: 16 }) }),
|
|
3870
3888
|
/* @__PURE__ */ e("strong", { children: w.name })
|
|
3871
3889
|
] }),
|
|
3872
3890
|
w.description && /* @__PURE__ */ e("p", { className: "nice-attraction-picker__description", children: w.description }),
|
|
@@ -3881,8 +3899,8 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3881
3899
|
{
|
|
3882
3900
|
type: "button",
|
|
3883
3901
|
className: "nice-attraction-picker__vote",
|
|
3884
|
-
onClick: (
|
|
3885
|
-
|
|
3902
|
+
onClick: (x) => {
|
|
3903
|
+
x.stopPropagation(), u(w.id);
|
|
3886
3904
|
},
|
|
3887
3905
|
children: n("attractionPicker.vote", "Vote")
|
|
3888
3906
|
}
|
|
@@ -3894,17 +3912,17 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3894
3912
|
);
|
|
3895
3913
|
}) })
|
|
3896
3914
|
] });
|
|
3897
|
-
}),
|
|
3898
|
-
game:
|
|
3915
|
+
}), Hi = [], Qi = {
|
|
3916
|
+
game: Yn,
|
|
3899
3917
|
music: Pe,
|
|
3900
3918
|
dance: Pe,
|
|
3901
3919
|
quiz: sn,
|
|
3902
3920
|
karaoke: Xe,
|
|
3903
|
-
photo:
|
|
3904
|
-
custom:
|
|
3905
|
-
},
|
|
3906
|
-
const { t: n } =
|
|
3907
|
-
attractions: t =
|
|
3921
|
+
photo: Bn,
|
|
3922
|
+
custom: On
|
|
3923
|
+
}, va = /* @__PURE__ */ te(function(i, r) {
|
|
3924
|
+
const { t: n } = ee(), {
|
|
3925
|
+
attractions: t = Hi,
|
|
3908
3926
|
onVote: d,
|
|
3909
3927
|
onUnvote: o,
|
|
3910
3928
|
votedIds: u = [],
|
|
@@ -3984,7 +4002,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
3984
4002
|
},
|
|
3985
4003
|
children: [
|
|
3986
4004
|
/* @__PURE__ */ s("h3", { style: { margin: 0, display: "inline-flex", alignItems: "center", gap: 8 }, children: [
|
|
3987
|
-
/* @__PURE__ */ e(
|
|
4005
|
+
/* @__PURE__ */ e(Dt, { size: 20 }),
|
|
3988
4006
|
c ? n("attractionVoting.votingResults", "Voting Results") : n("attractionVoting.voteForAttractions", "Vote for Attractions")
|
|
3989
4007
|
] }),
|
|
3990
4008
|
!c && g !== void 0 && /* @__PURE__ */ e(
|
|
@@ -4012,6 +4030,11 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
4012
4030
|
return /* @__PURE__ */ s(
|
|
4013
4031
|
"div",
|
|
4014
4032
|
{
|
|
4033
|
+
role: "button",
|
|
4034
|
+
tabIndex: 0,
|
|
4035
|
+
"aria-pressed": y,
|
|
4036
|
+
"aria-disabled": c || void 0,
|
|
4037
|
+
onKeyDown: un,
|
|
4015
4038
|
style: {
|
|
4016
4039
|
display: "flex",
|
|
4017
4040
|
alignItems: "center",
|
|
@@ -4026,7 +4049,7 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
4026
4049
|
onClick: () => T(p.id),
|
|
4027
4050
|
children: [
|
|
4028
4051
|
m && /* @__PURE__ */ e("span", { style: { fontSize: 18, minWidth: 32, textAlign: "center" }, children: f(A) }),
|
|
4029
|
-
/* @__PURE__ */ e("span", { style: { display: "inline-flex", fontSize: 20 }, children: Re.createElement(
|
|
4052
|
+
/* @__PURE__ */ e("span", { style: { display: "inline-flex", fontSize: 20 }, children: Re.createElement(Qi[p.category], { size: 20 }) }),
|
|
4030
4053
|
/* @__PURE__ */ s("div", { style: { flex: 1, minWidth: 0 }, children: [
|
|
4031
4054
|
/* @__PURE__ */ e("div", { style: { fontWeight: 600 }, children: p.name }),
|
|
4032
4055
|
p.description && /* @__PURE__ */ e(
|
|
@@ -4111,20 +4134,20 @@ const Ei = [], Oi = [], oa = /* @__PURE__ */ te(
|
|
|
4111
4134
|
);
|
|
4112
4135
|
});
|
|
4113
4136
|
export {
|
|
4114
|
-
|
|
4115
|
-
|
|
4116
|
-
|
|
4117
|
-
|
|
4118
|
-
|
|
4119
|
-
|
|
4120
|
-
|
|
4121
|
-
|
|
4122
|
-
|
|
4123
|
-
|
|
4124
|
-
|
|
4125
|
-
|
|
4126
|
-
|
|
4127
|
-
|
|
4128
|
-
|
|
4129
|
-
|
|
4137
|
+
ga as NiceAttractionPicker,
|
|
4138
|
+
va as NiceAttractionVoting,
|
|
4139
|
+
ia as NiceEventMedia,
|
|
4140
|
+
sa as NiceEventPlanning,
|
|
4141
|
+
da as NiceExpenseSplit,
|
|
4142
|
+
oa as NiceGiftRegistry,
|
|
4143
|
+
la as NiceInvitationDesigner,
|
|
4144
|
+
ha as NiceKaraokePicker,
|
|
4145
|
+
aa as NiceMediaCollage,
|
|
4146
|
+
ra as NiceParticipantList,
|
|
4147
|
+
ma as NiceRoundCard,
|
|
4148
|
+
ua as NiceRoundList,
|
|
4149
|
+
Sn as NiceRsvpControl,
|
|
4150
|
+
ca as NiceSeatPicker,
|
|
4151
|
+
ki as NiceSeatingChart,
|
|
4152
|
+
pa as NiceSongPicker
|
|
4130
4153
|
};
|