@innosolutions/inno-calendar 1.0.43 → 1.0.45
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/dist/{agenda-widget-berMFJOV.js → agenda-widget-55kGr5r1.js} +575 -538
- package/dist/agenda-widget-55kGr5r1.js.map +1 -0
- package/dist/agenda-widget-BoBAv_EB.cjs +2 -0
- package/dist/agenda-widget-BoBAv_EB.cjs.map +1 -0
- package/dist/components/header/calendar-header.d.ts.map +1 -1
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.mjs +2 -2
- package/dist/components/inno-calendar.d.ts.map +1 -1
- package/dist/components/views/day-view.d.ts.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +3 -3
- package/dist/presets/index.cjs +1 -1
- package/dist/presets/index.mjs +1 -1
- package/dist/{tailwind-calendar-ayfrJLXl.js → tailwind-calendar-C3pTnlko.js} +2 -2
- package/dist/{tailwind-calendar-ayfrJLXl.js.map → tailwind-calendar-C3pTnlko.js.map} +1 -1
- package/dist/{tailwind-calendar-BvRVRpnC.cjs → tailwind-calendar-e6gekmW5.cjs} +2 -2
- package/dist/{tailwind-calendar-BvRVRpnC.cjs.map → tailwind-calendar-e6gekmW5.cjs.map} +1 -1
- package/dist/week-view-DYhRfubT.cjs +11 -0
- package/dist/week-view-DYhRfubT.cjs.map +1 -0
- package/dist/{week-view-BvwBOdd6.js → week-view-DbktCaJh.js} +659 -665
- package/dist/week-view-DbktCaJh.js.map +1 -0
- package/package.json +1 -1
- package/dist/agenda-widget-6s0aP1-t.cjs +0 -2
- package/dist/agenda-widget-6s0aP1-t.cjs.map +0 -1
- package/dist/agenda-widget-berMFJOV.js.map +0 -1
- package/dist/week-view-BvwBOdd6.js.map +0 -1
- package/dist/week-view-COv7gU-n.cjs +0 -11
- package/dist/week-view-COv7gU-n.cjs.map +0 -1
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { jsx as e, jsxs as n, Fragment as ne } from "react/jsx-runtime";
|
|
2
2
|
import { o as Oe, c as qe, C as Je, I as Xe, j as Qe } from "./use-calendar-DR2emWYC.js";
|
|
3
|
-
import { useCallback as oe, useState as se, useEffect as
|
|
4
|
-
import { c as
|
|
5
|
-
import { P as
|
|
3
|
+
import { useCallback as oe, useState as se, useEffect as me, forwardRef as xe, useRef as Ne, useMemo as $, useLayoutEffect as Ze, useImperativeHandle as et } from "react";
|
|
4
|
+
import { c as m } from "./index-DtaLkIY8.js";
|
|
5
|
+
import { P as Pe, i as _e, h as Re, m as Q, q as tt, r as rt, B as ae, s as nt, t as Ce, k as Z, n as ee, l as te, d as ot, C as st, M as De, A as at, W as it, c as lt, u as ct } from "./week-view-DbktCaJh.js";
|
|
6
6
|
import { D as dt, S as ut } from "./slot-selection-context-D2eu2o-7.js";
|
|
7
|
-
import { isToday as q, startOfDay as
|
|
7
|
+
import { isToday as q, startOfDay as pe, endOfDay as Ve, getYearMonths as ht, generateMonthGrid as mt, getEventsForDay as ft, addDays as Ue, formatDateISO as gt } from "./utils.mjs";
|
|
8
8
|
function xt({ view: t, className: r = "" }) {
|
|
9
9
|
return /* @__PURE__ */ e(
|
|
10
10
|
"div",
|
|
@@ -43,17 +43,17 @@ function Ur(t) {
|
|
|
43
43
|
preferences: f,
|
|
44
44
|
locale: c,
|
|
45
45
|
slots: x,
|
|
46
|
-
renderEvent:
|
|
46
|
+
renderEvent: b,
|
|
47
47
|
onViewChange: p,
|
|
48
48
|
onDateChange: M,
|
|
49
49
|
onEventClick: A,
|
|
50
50
|
onSlotSelect: z,
|
|
51
|
-
onFiltersChange:
|
|
51
|
+
onFiltersChange: D,
|
|
52
52
|
className: S,
|
|
53
|
-
children:
|
|
54
|
-
} = t,
|
|
55
|
-
if (
|
|
56
|
-
return /* @__PURE__ */ e("div", { className: S, style: { position: "relative" }, children:
|
|
53
|
+
children: H
|
|
54
|
+
} = t, v = Oe();
|
|
55
|
+
if (v)
|
|
56
|
+
return /* @__PURE__ */ e("div", { className: S, style: { position: "relative" }, children: H ?? /* @__PURE__ */ e(Me, { view: v.view, className: S }) });
|
|
57
57
|
const T = qe({
|
|
58
58
|
events: r,
|
|
59
59
|
resources: o,
|
|
@@ -67,9 +67,9 @@ function Ur(t) {
|
|
|
67
67
|
onDateChange: M,
|
|
68
68
|
onEventClick: A,
|
|
69
69
|
onSlotSelect: z,
|
|
70
|
-
onFiltersChange:
|
|
70
|
+
onFiltersChange: D
|
|
71
71
|
});
|
|
72
|
-
return /* @__PURE__ */ e(Je, { value: T, children: /* @__PURE__ */ e("div", { className: S, style: { position: "relative" }, children:
|
|
72
|
+
return /* @__PURE__ */ e(Je, { value: T, children: /* @__PURE__ */ e("div", { className: S, style: { position: "relative" }, children: H ?? /* @__PURE__ */ e(Me, { view: T.view, className: S }) }) });
|
|
73
73
|
}
|
|
74
74
|
function pt({ className: t }) {
|
|
75
75
|
return /* @__PURE__ */ n(
|
|
@@ -112,7 +112,7 @@ function Ye({ className: t }) {
|
|
|
112
112
|
}
|
|
113
113
|
);
|
|
114
114
|
}
|
|
115
|
-
function
|
|
115
|
+
function ge({ className: t }) {
|
|
116
116
|
return /* @__PURE__ */ n(
|
|
117
117
|
"svg",
|
|
118
118
|
{
|
|
@@ -150,7 +150,7 @@ function vt({ className: t }) {
|
|
|
150
150
|
}
|
|
151
151
|
);
|
|
152
152
|
}
|
|
153
|
-
function
|
|
153
|
+
function ue({ className: t }) {
|
|
154
154
|
return /* @__PURE__ */ e(
|
|
155
155
|
"svg",
|
|
156
156
|
{
|
|
@@ -295,7 +295,7 @@ function le({ className: t }) {
|
|
|
295
295
|
strokeWidth: "2",
|
|
296
296
|
strokeLinecap: "round",
|
|
297
297
|
strokeLinejoin: "round",
|
|
298
|
-
className:
|
|
298
|
+
className: m("animate-spin", t),
|
|
299
299
|
children: /* @__PURE__ */ e("path", { d: "M21 12a9 9 0 1 1-6.219-8.56" })
|
|
300
300
|
}
|
|
301
301
|
);
|
|
@@ -325,7 +325,7 @@ const Dt = {
|
|
|
325
325
|
acceptAllEvents: "Accept all events",
|
|
326
326
|
deleteConfirmTitle: "Delete Event",
|
|
327
327
|
deleteConfirmDescription: "Are you sure you want to delete this event? This action cannot be undone."
|
|
328
|
-
},
|
|
328
|
+
}, he = xe(
|
|
329
329
|
({ onClick: t, label: r, children: o, className: s, variant: a = "ghost", ...i }, g) => /* @__PURE__ */ n(Z, { children: [
|
|
330
330
|
/* @__PURE__ */ e(ee, { asChild: !0, children: /* @__PURE__ */ e(
|
|
331
331
|
"button",
|
|
@@ -333,7 +333,7 @@ const Dt = {
|
|
|
333
333
|
type: "button",
|
|
334
334
|
ref: g,
|
|
335
335
|
onClick: t,
|
|
336
|
-
className:
|
|
336
|
+
className: m(
|
|
337
337
|
"h-8 w-8 rounded-full flex items-center justify-center transition-colors",
|
|
338
338
|
a === "ghost" && "hover:bg-zinc-100 dark:hover:bg-zinc-800 text-zinc-600 dark:text-zinc-400",
|
|
339
339
|
a === "destructive" && "hover:bg-red-50 dark:hover:bg-red-950/30 text-zinc-600 dark:text-zinc-400 hover:text-red-600",
|
|
@@ -347,13 +347,13 @@ const Dt = {
|
|
|
347
347
|
/* @__PURE__ */ e(te, { side: "bottom", className: "text-xs", children: r })
|
|
348
348
|
] })
|
|
349
349
|
);
|
|
350
|
-
|
|
350
|
+
he.displayName = "IconButton";
|
|
351
351
|
function Mt({ src: t, alt: r, initials: o, className: s, isClient: a }) {
|
|
352
352
|
const [i, g] = se(!1);
|
|
353
353
|
return /* @__PURE__ */ e(
|
|
354
354
|
"div",
|
|
355
355
|
{
|
|
356
|
-
className:
|
|
356
|
+
className: m(
|
|
357
357
|
"relative h-7 w-7 rounded-full overflow-hidden shrink-0",
|
|
358
358
|
s
|
|
359
359
|
),
|
|
@@ -368,7 +368,7 @@ function Mt({ src: t, alt: r, initials: o, className: s, isClient: a }) {
|
|
|
368
368
|
) : /* @__PURE__ */ e(
|
|
369
369
|
"div",
|
|
370
370
|
{
|
|
371
|
-
className:
|
|
371
|
+
className: m(
|
|
372
372
|
"h-full w-full flex items-center justify-center text-[10px] font-medium",
|
|
373
373
|
a ? "bg-amber-100 dark:bg-amber-900/30 text-amber-700 dark:text-amber-300" : "bg-zinc-200 dark:bg-zinc-700 text-zinc-700 dark:text-zinc-300"
|
|
374
374
|
),
|
|
@@ -383,11 +383,11 @@ function Se({
|
|
|
383
383
|
isEventCanceled: r = !1,
|
|
384
384
|
labels: o
|
|
385
385
|
}) {
|
|
386
|
-
const s = t.name || "Unknown", a = s.split(" ").map((M) => M[0]).join("").toUpperCase().slice(0, 2), i = t.isOrganizer ?? !1, g = t.isConfirmed, f = g === !0, c = g === !1, x = t.isClient ?? !1,
|
|
386
|
+
const s = t.name || "Unknown", a = s.split(" ").map((M) => M[0]).join("").toUpperCase().slice(0, 2), i = t.isOrganizer ?? !1, g = t.isConfirmed, f = g === !0, c = g === !1, x = t.isClient ?? !1, b = t.profilePicture || t.avatar, p = r;
|
|
387
387
|
return /* @__PURE__ */ n(
|
|
388
388
|
"div",
|
|
389
389
|
{
|
|
390
|
-
className:
|
|
390
|
+
className: m(
|
|
391
391
|
"flex items-center gap-3 py-0",
|
|
392
392
|
p && "opacity-60"
|
|
393
393
|
),
|
|
@@ -396,20 +396,20 @@ function Se({
|
|
|
396
396
|
/* @__PURE__ */ e(
|
|
397
397
|
Mt,
|
|
398
398
|
{
|
|
399
|
-
src:
|
|
399
|
+
src: b,
|
|
400
400
|
alt: s,
|
|
401
401
|
initials: a,
|
|
402
402
|
isClient: x,
|
|
403
|
-
className:
|
|
403
|
+
className: m(p && "grayscale")
|
|
404
404
|
}
|
|
405
405
|
),
|
|
406
|
-
p || c ? /* @__PURE__ */ e("div", { className: "absolute -bottom-0.5 -right-0.5 h-3.5 w-3.5 rounded-full bg-white dark:bg-zinc-900 flex items-center justify-center", children: /* @__PURE__ */ e("div", { className: "h-3 w-3 rounded-full bg-red-100 dark:bg-red-900/50 flex items-center justify-center", children: /* @__PURE__ */ e(
|
|
406
|
+
p || c ? /* @__PURE__ */ e("div", { className: "absolute -bottom-0.5 -right-0.5 h-3.5 w-3.5 rounded-full bg-white dark:bg-zinc-900 flex items-center justify-center", children: /* @__PURE__ */ e("div", { className: "h-3 w-3 rounded-full bg-red-100 dark:bg-red-900/50 flex items-center justify-center", children: /* @__PURE__ */ e(ge, { className: "h-2 w-2 text-red-600 dark:text-red-400 stroke-[3]" }) }) }) : f ? /* @__PURE__ */ e("div", { className: "absolute -bottom-0.5 -right-0.5 h-3.5 w-3.5 rounded-full bg-white dark:bg-zinc-900 flex items-center justify-center", children: /* @__PURE__ */ e("div", { className: "h-3 w-3 rounded-full bg-green-100 dark:bg-green-900/50 flex items-center justify-center", children: /* @__PURE__ */ e(ue, { className: "h-2 w-2 text-green-600 dark:text-green-400 stroke-[3]" }) }) }) : null
|
|
407
407
|
] }),
|
|
408
408
|
/* @__PURE__ */ n("div", { className: "!h-fit min-w-0 gap-0", children: [
|
|
409
409
|
/* @__PURE__ */ e("div", { className: "gap-0", children: /* @__PURE__ */ e(
|
|
410
410
|
"span",
|
|
411
411
|
{
|
|
412
|
-
className:
|
|
412
|
+
className: m(
|
|
413
413
|
"text-sm text-zinc-900 dark:text-zinc-100 truncate",
|
|
414
414
|
p && "line-through text-zinc-500 dark:text-zinc-500"
|
|
415
415
|
),
|
|
@@ -429,13 +429,13 @@ function St({
|
|
|
429
429
|
title: o,
|
|
430
430
|
children: s
|
|
431
431
|
}) {
|
|
432
|
-
return
|
|
432
|
+
return me(() => {
|
|
433
433
|
if (!t) return;
|
|
434
434
|
const a = (i) => {
|
|
435
435
|
i.key === "Escape" && r(!1);
|
|
436
436
|
};
|
|
437
437
|
return document.addEventListener("keydown", a), () => document.removeEventListener("keydown", a);
|
|
438
|
-
}, [t, r]),
|
|
438
|
+
}, [t, r]), me(() => (t ? document.body.style.overflow = "hidden" : document.body.style.overflow = "", () => {
|
|
439
439
|
document.body.style.overflow = "";
|
|
440
440
|
}), [t]), t ? /* @__PURE__ */ n("div", { className: "fixed inset-0 z-50", children: [
|
|
441
441
|
/* @__PURE__ */ e(
|
|
@@ -513,7 +513,7 @@ function zt(t, r) {
|
|
|
513
513
|
day: "numeric"
|
|
514
514
|
});
|
|
515
515
|
}
|
|
516
|
-
function
|
|
516
|
+
function Ht(t, r) {
|
|
517
517
|
const o = {
|
|
518
518
|
hour: "2-digit",
|
|
519
519
|
minute: "2-digit",
|
|
@@ -521,7 +521,7 @@ function Lt(t, r) {
|
|
|
521
521
|
};
|
|
522
522
|
return `${t.toLocaleTimeString(void 0, o)} – ${r.toLocaleTimeString(void 0, o)}`;
|
|
523
523
|
}
|
|
524
|
-
function
|
|
524
|
+
function Lt(t) {
|
|
525
525
|
return t.toLocaleDateString(void 0, {
|
|
526
526
|
day: "2-digit",
|
|
527
527
|
month: "short",
|
|
@@ -532,7 +532,7 @@ function Ht(t) {
|
|
|
532
532
|
}
|
|
533
533
|
function Tt(t) {
|
|
534
534
|
const [r, o] = se(() => typeof window < "u" ? window.matchMedia(t).matches : !1);
|
|
535
|
-
return
|
|
535
|
+
return me(() => {
|
|
536
536
|
if (typeof window > "u") return;
|
|
537
537
|
const s = window.matchMedia(t), a = (i) => o(i.matches);
|
|
538
538
|
return s.addEventListener("change", a), () => s.removeEventListener("change", a);
|
|
@@ -549,39 +549,39 @@ function Ee({
|
|
|
549
549
|
onAccept: f,
|
|
550
550
|
onDecline: c,
|
|
551
551
|
onConfirmMeeting: x,
|
|
552
|
-
canEdit:
|
|
552
|
+
canEdit: b = !0,
|
|
553
553
|
canDelete: p = !1,
|
|
554
554
|
canCancel: M = !0,
|
|
555
555
|
isCurrentUserParticipant: A = !1,
|
|
556
556
|
isCurrentUserClient: z = !1,
|
|
557
|
-
currentUserAcceptStatus:
|
|
557
|
+
currentUserAcceptStatus: D,
|
|
558
558
|
isAcceptLoading: S = !1,
|
|
559
|
-
isDeclineLoading:
|
|
560
|
-
isConfirmLoading:
|
|
559
|
+
isDeclineLoading: H = !1,
|
|
560
|
+
isConfirmLoading: v = !1,
|
|
561
561
|
isDeleteLoading: T = !1,
|
|
562
|
-
renderParticipant:
|
|
562
|
+
renderParticipant: C,
|
|
563
563
|
renderHeaderActions: F,
|
|
564
564
|
renderCancelReason: R,
|
|
565
565
|
renderDeleteConfirmation: V,
|
|
566
|
-
formatDate:
|
|
567
|
-
formatTimeRange: O =
|
|
566
|
+
formatDate: B = zt,
|
|
567
|
+
formatTimeRange: O = Ht
|
|
568
568
|
}) {
|
|
569
|
-
const [
|
|
569
|
+
const [j, _] = se(!1), U = !(t.isCanceled || t.meetingTookPlace), d = t.isRecurring ?? !1, l = t.participantDetails, u = t.participantsNames || [], w = l && l.length > 0, k = D === !0, y = D === !1, L = A && !z && U, E = w ? l.filter((W) => W.isConfirmed).length : t.isAccepted ? u.length : 0, P = w ? l.length : u.length, Y = t.scheduleTypeColor || t.hexColor || "#039BE5", K = oe(() => t.startDate ? B(t.startDate) : r.noDateProvided, [t.startDate, B, r.noDateProvided]), J = oe(() => t.startDate && t.endDate ? O(t.startDate, t.endDate) : null, [t.startDate, t.endDate, O]), ie = () => {
|
|
570
570
|
s(), a?.(t);
|
|
571
|
-
},
|
|
571
|
+
}, h = () => {
|
|
572
572
|
s(), g?.(t);
|
|
573
573
|
}, N = () => {
|
|
574
|
-
|
|
575
|
-
},
|
|
576
|
-
i?.(t),
|
|
574
|
+
_(!0);
|
|
575
|
+
}, I = () => {
|
|
576
|
+
i?.(t), _(!1);
|
|
577
577
|
};
|
|
578
578
|
return o ? /* @__PURE__ */ e("div", { className: "flex h-48 items-center justify-center", children: /* @__PURE__ */ e(le, { className: "h-6 w-6 text-zinc-400" }) }) : /* @__PURE__ */ n(Q, { delayDuration: 300, children: [
|
|
579
579
|
/* @__PURE__ */ n("div", { className: "flex flex-col gap-0.5 p-3", children: [
|
|
580
580
|
/* @__PURE__ */ e("div", { className: "flex items-start justify-end gap-0.5", children: F ? F({ onClose: s }) : /* @__PURE__ */ n(ne, { children: [
|
|
581
|
-
U &&
|
|
582
|
-
U && M && g && /* @__PURE__ */ e(
|
|
581
|
+
U && b && a && /* @__PURE__ */ e(he, { onClick: ie, label: r.edit, children: /* @__PURE__ */ e(pt, { className: "h-[18px] w-[18px]" }) }),
|
|
582
|
+
U && M && g && /* @__PURE__ */ e(he, { onClick: h, label: r.cancel, children: /* @__PURE__ */ e(vt, { className: "h-[18px] w-[18px]" }) }),
|
|
583
583
|
p && i && /* @__PURE__ */ e(
|
|
584
|
-
|
|
584
|
+
he,
|
|
585
585
|
{
|
|
586
586
|
onClick: N,
|
|
587
587
|
label: r.delete,
|
|
@@ -589,7 +589,7 @@ function Ee({
|
|
|
589
589
|
children: /* @__PURE__ */ e(Ye, { className: "h-[18px] w-[18px]" })
|
|
590
590
|
}
|
|
591
591
|
),
|
|
592
|
-
/* @__PURE__ */ e(
|
|
592
|
+
/* @__PURE__ */ e(he, { onClick: s, label: r.close, children: /* @__PURE__ */ e(ge, { className: "h-[18px] w-[18px]" }) })
|
|
593
593
|
] }) }),
|
|
594
594
|
/* @__PURE__ */ e("div", { children: /* @__PURE__ */ n("div", { className: "flex items-start gap-2", children: [
|
|
595
595
|
/* @__PURE__ */ e(
|
|
@@ -604,7 +604,7 @@ function Ee({
|
|
|
604
604
|
/* @__PURE__ */ e(
|
|
605
605
|
"h2",
|
|
606
606
|
{
|
|
607
|
-
className:
|
|
607
|
+
className: m(
|
|
608
608
|
"text-[22px] font-normal text-zinc-900 dark:text-zinc-100 leading-tight",
|
|
609
609
|
t.isCanceled && "line-through opacity-60"
|
|
610
610
|
),
|
|
@@ -616,7 +616,7 @@ function Ee({
|
|
|
616
616
|
r.completed
|
|
617
617
|
] }),
|
|
618
618
|
t.isCanceled && /* @__PURE__ */ n("span", { className: "inline-flex items-center gap-1 px-2 py-0.5 rounded-full bg-red-100 dark:bg-red-900/30 text-red-700 dark:text-red-400 text-xs font-medium", children: [
|
|
619
|
-
/* @__PURE__ */ e(
|
|
619
|
+
/* @__PURE__ */ e(ge, { className: "h-3 w-3" }),
|
|
620
620
|
r.canceled
|
|
621
621
|
] })
|
|
622
622
|
] }),
|
|
@@ -627,7 +627,7 @@ function Ee({
|
|
|
627
627
|
/* @__PURE__ */ e("span", { children: J() })
|
|
628
628
|
] })
|
|
629
629
|
] }),
|
|
630
|
-
|
|
630
|
+
d && t.recurrenceSummary && /* @__PURE__ */ e("div", { className: "text-sm text-zinc-500 dark:text-zinc-500", children: t.recurrenceSummary })
|
|
631
631
|
] })
|
|
632
632
|
] }) }),
|
|
633
633
|
t.isCanceled && /* @__PURE__ */ e("div", { className: "mx-4 p-3 rounded-lg bg-red-50 dark:bg-red-950/30", children: R ? R(t) : /* @__PURE__ */ e("div", { className: "flex items-start gap-0", children: /* @__PURE__ */ n("div", { className: "flex-1 min-w-0", children: [
|
|
@@ -640,7 +640,7 @@ function Ee({
|
|
|
640
640
|
t.canceledDate && /* @__PURE__ */ n("div", { className: "mt-1.5 text-xs text-red-500/70 dark:text-red-400/60", children: [
|
|
641
641
|
r.canceledOn,
|
|
642
642
|
" ",
|
|
643
|
-
|
|
643
|
+
Lt(t.canceledDate)
|
|
644
644
|
] })
|
|
645
645
|
] }) }) }),
|
|
646
646
|
/* @__PURE__ */ n("div", { className: "space-y-0.5", children: [
|
|
@@ -648,16 +648,16 @@ function Ee({
|
|
|
648
648
|
/* @__PURE__ */ e(kt, { className: "h-5 w-5 text-zinc-400 mt-0.5 shrink-0" }),
|
|
649
649
|
/* @__PURE__ */ e("span", { className: "text-sm text-zinc-700 dark:text-zinc-300", children: t.address })
|
|
650
650
|
] }),
|
|
651
|
-
(
|
|
651
|
+
(w || u.length > 0) && /* @__PURE__ */ n("div", { className: "flex items-start gap-2 py-0", children: [
|
|
652
652
|
/* @__PURE__ */ e(yt, { className: "h-5 w-5 text-zinc-400 mt-0.5 shrink-0" }),
|
|
653
653
|
/* @__PURE__ */ n("div", { className: "flex-1", children: [
|
|
654
654
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-0", children: [
|
|
655
655
|
/* @__PURE__ */ n("span", { className: "text-sm text-zinc-900 dark:text-zinc-100 font-medium", children: [
|
|
656
|
-
|
|
656
|
+
P,
|
|
657
657
|
" ",
|
|
658
|
-
|
|
658
|
+
P !== 1 ? r.guests : r.guest
|
|
659
659
|
] }),
|
|
660
|
-
|
|
660
|
+
P > 0 && /* @__PURE__ */ n("span", { className: "text-xs text-zinc-500", children: [
|
|
661
661
|
"(",
|
|
662
662
|
E,
|
|
663
663
|
" ",
|
|
@@ -666,38 +666,38 @@ function Ee({
|
|
|
666
666
|
] })
|
|
667
667
|
] }),
|
|
668
668
|
/* @__PURE__ */ n("div", { className: "mt-2 space-y-2", children: [
|
|
669
|
-
|
|
670
|
-
(
|
|
669
|
+
w ? l.slice(0, 6).map(
|
|
670
|
+
(W, G) => C ? C(W, G) : /* @__PURE__ */ e(
|
|
671
671
|
Se,
|
|
672
672
|
{
|
|
673
|
-
participant:
|
|
673
|
+
participant: W,
|
|
674
674
|
isEventCanceled: t.isCanceled,
|
|
675
675
|
labels: r
|
|
676
676
|
},
|
|
677
|
-
|
|
677
|
+
W.id
|
|
678
678
|
)
|
|
679
|
-
) :
|
|
680
|
-
const
|
|
679
|
+
) : u.slice(0, 6).map((W, G) => {
|
|
680
|
+
const fe = {
|
|
681
681
|
id: String(G),
|
|
682
|
-
name:
|
|
682
|
+
name: W,
|
|
683
683
|
email: "",
|
|
684
684
|
isConfirmed: t.isAccepted,
|
|
685
685
|
isOrganizer: G === 0,
|
|
686
686
|
isClient: !1
|
|
687
687
|
};
|
|
688
|
-
return
|
|
688
|
+
return C ? C(fe, G) : /* @__PURE__ */ e(
|
|
689
689
|
Se,
|
|
690
690
|
{
|
|
691
|
-
participant:
|
|
691
|
+
participant: fe,
|
|
692
692
|
isEventCanceled: t.isCanceled,
|
|
693
693
|
labels: r
|
|
694
694
|
},
|
|
695
|
-
|
|
695
|
+
W
|
|
696
696
|
);
|
|
697
697
|
}),
|
|
698
|
-
|
|
698
|
+
P > 6 && /* @__PURE__ */ n("div", { className: "text-xs text-zinc-500 py-1.5 pl-10", children: [
|
|
699
699
|
"+",
|
|
700
|
-
|
|
700
|
+
P - 6,
|
|
701
701
|
" ",
|
|
702
702
|
r.more
|
|
703
703
|
] })
|
|
@@ -710,27 +710,27 @@ function Ee({
|
|
|
710
710
|
] }),
|
|
711
711
|
/* @__PURE__ */ n("div", { className: "flex items-start gap-2", children: [
|
|
712
712
|
/* @__PURE__ */ e(Nt, { className: "h-5 w-5 text-zinc-400 mt-0.5 shrink-0" }),
|
|
713
|
-
/* @__PURE__ */ e("div", { className: "text-sm text-zinc-700 dark:text-zinc-300", children:
|
|
713
|
+
/* @__PURE__ */ e("div", { className: "text-sm text-zinc-700 dark:text-zinc-300", children: w && l.find((W) => W.isOrganizer)?.name || u[0] || "Calendar" })
|
|
714
714
|
] })
|
|
715
715
|
] }),
|
|
716
|
-
|
|
717
|
-
|
|
716
|
+
L && f && c && /* @__PURE__ */ e("div", { className: "border-t border-zinc-100 dark:border-zinc-800 mt-3 py-3", children: /* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
717
|
+
d ? /* @__PURE__ */ n(tt, { children: [
|
|
718
718
|
/* @__PURE__ */ e(rt, { asChild: !0, children: /* @__PURE__ */ n("div", { className: "flex", children: [
|
|
719
719
|
/* @__PURE__ */ e(
|
|
720
720
|
ae,
|
|
721
721
|
{
|
|
722
722
|
size: "sm",
|
|
723
723
|
variant: "outline",
|
|
724
|
-
className:
|
|
724
|
+
className: m(
|
|
725
725
|
"rounded-r-none gap-1.5 h-8 !border-none !bg-green-100 text-green-800 hover:!bg-green-200",
|
|
726
726
|
k && "!bg-green-700 !text-white hover:!bg-green-700"
|
|
727
727
|
),
|
|
728
|
-
onClick: (
|
|
729
|
-
|
|
728
|
+
onClick: (W) => {
|
|
729
|
+
W.stopPropagation(), k || f(t);
|
|
730
730
|
},
|
|
731
731
|
disabled: S,
|
|
732
732
|
children: S ? /* @__PURE__ */ e(le, { className: "h-3.5 w-3.5" }) : /* @__PURE__ */ n(ne, { children: [
|
|
733
|
-
k && /* @__PURE__ */ e(
|
|
733
|
+
k && /* @__PURE__ */ e(ue, { className: "h-3.5 w-3.5" }),
|
|
734
734
|
r.going
|
|
735
735
|
] })
|
|
736
736
|
}
|
|
@@ -740,7 +740,7 @@ function Ee({
|
|
|
740
740
|
{
|
|
741
741
|
size: "sm",
|
|
742
742
|
variant: "outline",
|
|
743
|
-
className:
|
|
743
|
+
className: m(
|
|
744
744
|
"rounded-l-none px-1.5 h-8 !border-none !bg-green-100 text-green-800 hover:!bg-green-200",
|
|
745
745
|
k && "!bg-green-700 !text-white hover:!bg-green-700"
|
|
746
746
|
),
|
|
@@ -752,19 +752,19 @@ function Ee({
|
|
|
752
752
|
/* @__PURE__ */ n(
|
|
753
753
|
Ce,
|
|
754
754
|
{
|
|
755
|
-
className:
|
|
755
|
+
className: m(
|
|
756
756
|
"gap-1.5 h-8 !border-none !bg-green-50 text-green-800 hover:!bg-green-100",
|
|
757
757
|
k && "!bg-green-700 !text-white hover:!bg-green-700"
|
|
758
758
|
),
|
|
759
759
|
onClick: () => f(t),
|
|
760
760
|
children: [
|
|
761
|
-
/* @__PURE__ */ e(
|
|
761
|
+
/* @__PURE__ */ e(ue, { className: "h-3.5 w-3.5 mr-2 text-green-600" }),
|
|
762
762
|
r.acceptThisEvent
|
|
763
763
|
]
|
|
764
764
|
}
|
|
765
765
|
),
|
|
766
766
|
/* @__PURE__ */ n(Ce, { onClick: () => f(t), children: [
|
|
767
|
-
/* @__PURE__ */ e(
|
|
767
|
+
/* @__PURE__ */ e(ue, { className: "h-3.5 w-3.5 mr-2 text-green-600" }),
|
|
768
768
|
r.acceptAllEvents
|
|
769
769
|
] })
|
|
770
770
|
] })
|
|
@@ -773,7 +773,7 @@ function Ee({
|
|
|
773
773
|
{
|
|
774
774
|
size: "sm",
|
|
775
775
|
variant: "outline",
|
|
776
|
-
className:
|
|
776
|
+
className: m(
|
|
777
777
|
"gap-1.5 h-8 !border-none !bg-green-100 text-green-800 hover:!bg-green-200",
|
|
778
778
|
k && "!bg-green-700 !text-white hover:!bg-green-700"
|
|
779
779
|
),
|
|
@@ -782,7 +782,7 @@ function Ee({
|
|
|
782
782
|
},
|
|
783
783
|
disabled: S,
|
|
784
784
|
children: S ? /* @__PURE__ */ e(le, { className: "h-3.5 w-3.5" }) : /* @__PURE__ */ n(ne, { children: [
|
|
785
|
-
k && /* @__PURE__ */ e(
|
|
785
|
+
k && /* @__PURE__ */ e(ue, { className: "h-3.5 w-3.5" }),
|
|
786
786
|
r.going
|
|
787
787
|
] })
|
|
788
788
|
}
|
|
@@ -792,16 +792,16 @@ function Ee({
|
|
|
792
792
|
{
|
|
793
793
|
size: "sm",
|
|
794
794
|
variant: "outline",
|
|
795
|
-
className:
|
|
795
|
+
className: m(
|
|
796
796
|
"gap-1.5 h-8 !border-none !bg-rose-100 text-rose-800 hover:!bg-rose-200",
|
|
797
|
-
|
|
797
|
+
y && "!bg-rose-700 !text-white hover:!bg-rose-700"
|
|
798
798
|
),
|
|
799
799
|
onClick: () => {
|
|
800
|
-
|
|
800
|
+
y || c(t);
|
|
801
801
|
},
|
|
802
|
-
disabled:
|
|
803
|
-
children:
|
|
804
|
-
|
|
802
|
+
disabled: H,
|
|
803
|
+
children: H ? /* @__PURE__ */ e(le, { className: "h-3.5 w-3.5" }) : /* @__PURE__ */ n(ne, { children: [
|
|
804
|
+
y && /* @__PURE__ */ e(ge, { className: "h-3.5 w-3.5" }),
|
|
805
805
|
r.notGoing
|
|
806
806
|
] })
|
|
807
807
|
}
|
|
@@ -814,28 +814,28 @@ function Ee({
|
|
|
814
814
|
variant: "outline",
|
|
815
815
|
className: "w-full h-9 hover:!bg-green-100 hover:text-green-700 text-green-700 !bg-green-100 !border-none dark:text-green-400 dark:hover:bg-green-950/30",
|
|
816
816
|
onClick: () => x(t),
|
|
817
|
-
disabled:
|
|
817
|
+
disabled: v,
|
|
818
818
|
children: [
|
|
819
|
-
|
|
819
|
+
v && /* @__PURE__ */ e(le, { className: "h-4 w-4 mr-2" }),
|
|
820
820
|
r.confirmMeeting
|
|
821
821
|
]
|
|
822
822
|
}
|
|
823
823
|
) })
|
|
824
824
|
] }),
|
|
825
|
-
V ?
|
|
826
|
-
onConfirm:
|
|
827
|
-
onCancel: () =>
|
|
825
|
+
V ? j && V({
|
|
826
|
+
onConfirm: I,
|
|
827
|
+
onCancel: () => _(!1),
|
|
828
828
|
isLoading: T
|
|
829
829
|
}) : /* @__PURE__ */ e(
|
|
830
830
|
Et,
|
|
831
831
|
{
|
|
832
|
-
open:
|
|
833
|
-
onOpenChange:
|
|
832
|
+
open: j,
|
|
833
|
+
onOpenChange: _,
|
|
834
834
|
title: r.deleteConfirmTitle,
|
|
835
835
|
description: r.deleteConfirmDescription,
|
|
836
836
|
cancelLabel: r.cancel,
|
|
837
837
|
confirmLabel: r.delete,
|
|
838
|
-
onConfirm:
|
|
838
|
+
onConfirm: I,
|
|
839
839
|
isLoading: T
|
|
840
840
|
}
|
|
841
841
|
)
|
|
@@ -852,68 +852,68 @@ function Yr({
|
|
|
852
852
|
onDelete: f,
|
|
853
853
|
onCancel: c,
|
|
854
854
|
onAccept: x,
|
|
855
|
-
onDecline:
|
|
855
|
+
onDecline: b,
|
|
856
856
|
onConfirmMeeting: p,
|
|
857
857
|
canEdit: M = !0,
|
|
858
858
|
canDelete: A = !1,
|
|
859
859
|
canCancel: z = !0,
|
|
860
|
-
isCurrentUserParticipant:
|
|
860
|
+
isCurrentUserParticipant: D,
|
|
861
861
|
isCurrentUserClient: S,
|
|
862
|
-
currentUserAcceptStatus:
|
|
863
|
-
isAcceptLoading:
|
|
862
|
+
currentUserAcceptStatus: H,
|
|
863
|
+
isAcceptLoading: v,
|
|
864
864
|
isDeclineLoading: T,
|
|
865
|
-
isConfirmLoading:
|
|
865
|
+
isConfirmLoading: C,
|
|
866
866
|
isDeleteLoading: F,
|
|
867
867
|
renderParticipant: R,
|
|
868
868
|
renderHeaderActions: V,
|
|
869
|
-
renderCancelReason:
|
|
869
|
+
renderCancelReason: B,
|
|
870
870
|
renderDeleteConfirmation: O,
|
|
871
|
-
formatDate:
|
|
872
|
-
formatTimeRange:
|
|
871
|
+
formatDate: j,
|
|
872
|
+
formatTimeRange: _,
|
|
873
873
|
className: U,
|
|
874
|
-
width:
|
|
874
|
+
width: d = 360
|
|
875
875
|
}) {
|
|
876
|
-
const l = Tt("(min-width: 768px)"),
|
|
876
|
+
const l = Tt("(min-width: 768px)"), u = { ...Dt, ...i }, w = oe(() => {
|
|
877
877
|
s?.(!1);
|
|
878
878
|
}, [s]), k = {
|
|
879
879
|
event: t,
|
|
880
|
-
labels:
|
|
880
|
+
labels: u,
|
|
881
881
|
isLoading: a,
|
|
882
|
-
onClose:
|
|
882
|
+
onClose: w,
|
|
883
883
|
onEdit: g,
|
|
884
884
|
onDelete: f,
|
|
885
885
|
onCancel: c,
|
|
886
886
|
onAccept: x,
|
|
887
|
-
onDecline:
|
|
887
|
+
onDecline: b,
|
|
888
888
|
onConfirmMeeting: p,
|
|
889
889
|
canEdit: M,
|
|
890
890
|
canDelete: A,
|
|
891
891
|
canCancel: z,
|
|
892
|
-
isCurrentUserParticipant:
|
|
892
|
+
isCurrentUserParticipant: D,
|
|
893
893
|
isCurrentUserClient: S,
|
|
894
|
-
currentUserAcceptStatus:
|
|
895
|
-
isAcceptLoading:
|
|
894
|
+
currentUserAcceptStatus: H,
|
|
895
|
+
isAcceptLoading: v,
|
|
896
896
|
isDeclineLoading: T,
|
|
897
|
-
isConfirmLoading:
|
|
897
|
+
isConfirmLoading: C,
|
|
898
898
|
isDeleteLoading: F,
|
|
899
899
|
renderParticipant: R,
|
|
900
900
|
renderHeaderActions: V,
|
|
901
|
-
renderCancelReason:
|
|
901
|
+
renderCancelReason: B,
|
|
902
902
|
renderDeleteConfirmation: O,
|
|
903
|
-
formatDate:
|
|
904
|
-
formatTimeRange:
|
|
903
|
+
formatDate: j,
|
|
904
|
+
formatTimeRange: _
|
|
905
905
|
};
|
|
906
|
-
return l ? /* @__PURE__ */ n(
|
|
906
|
+
return l ? /* @__PURE__ */ n(Pe, { open: o ?? !1, onOpenChange: s ?? (() => {
|
|
907
907
|
}), children: [
|
|
908
|
-
/* @__PURE__ */ e(
|
|
908
|
+
/* @__PURE__ */ e(_e, { asChild: !0, children: r }),
|
|
909
909
|
/* @__PURE__ */ e(
|
|
910
910
|
Re,
|
|
911
911
|
{
|
|
912
|
-
className:
|
|
912
|
+
className: m(
|
|
913
913
|
"p-0 shadow-lg !rounded-2xl bg-white dark:bg-zinc-900 overflow-hidden border z-50",
|
|
914
914
|
U
|
|
915
915
|
),
|
|
916
|
-
style: { width:
|
|
916
|
+
style: { width: d },
|
|
917
917
|
align: "center",
|
|
918
918
|
side: "bottom",
|
|
919
919
|
sideOffset: 4,
|
|
@@ -934,7 +934,7 @@ function Yr({
|
|
|
934
934
|
)
|
|
935
935
|
] });
|
|
936
936
|
}
|
|
937
|
-
const
|
|
937
|
+
const ve = 44, ze = 4, It = 56, He = 8, we = 80, ce = 140, Le = 100, Te = 2, jt = 8, Wt = 18;
|
|
938
938
|
function At(t) {
|
|
939
939
|
return t.split(" ").map((r) => r[0]).join("").toUpperCase().slice(0, 2);
|
|
940
940
|
}
|
|
@@ -976,11 +976,11 @@ function Ie(t) {
|
|
|
976
976
|
}
|
|
977
977
|
return o;
|
|
978
978
|
}
|
|
979
|
-
function
|
|
979
|
+
function Pt({ src: t, alt: r, fallback: o, className: s }) {
|
|
980
980
|
return /* @__PURE__ */ e(
|
|
981
981
|
"div",
|
|
982
982
|
{
|
|
983
|
-
className:
|
|
983
|
+
className: m(
|
|
984
984
|
"relative flex shrink-0 overflow-hidden rounded-sm border bg-muted",
|
|
985
985
|
s
|
|
986
986
|
),
|
|
@@ -995,9 +995,9 @@ function _t({ src: t, alt: r, fallback: o, className: s }) {
|
|
|
995
995
|
}
|
|
996
996
|
);
|
|
997
997
|
}
|
|
998
|
-
const
|
|
999
|
-
function
|
|
1000
|
-
daysToShow: t =
|
|
998
|
+
const _t = 7;
|
|
999
|
+
function de({
|
|
1000
|
+
daysToShow: t = _t,
|
|
1001
1001
|
events: r,
|
|
1002
1002
|
users: o = [],
|
|
1003
1003
|
selectedDate: s,
|
|
@@ -1007,110 +1007,110 @@ function we({
|
|
|
1007
1007
|
className: f,
|
|
1008
1008
|
getEventUserId: c,
|
|
1009
1009
|
renderPopover: x,
|
|
1010
|
-
slots:
|
|
1010
|
+
slots: b,
|
|
1011
1011
|
classNames: p
|
|
1012
1012
|
}) {
|
|
1013
|
-
const M = Ne(null), A = s ?? /* @__PURE__ */ new Date(), z = !0,
|
|
1013
|
+
const M = Ne(null), A = s ?? /* @__PURE__ */ new Date(), z = !0, D = g?.from ?? jt, S = g?.to ?? Wt, H = S - D, v = $(() => {
|
|
1014
1014
|
const l = new Date(A);
|
|
1015
1015
|
if (t === 1 || t === 3)
|
|
1016
1016
|
return l.setHours(0, 0, 0, 0), l;
|
|
1017
|
-
const
|
|
1018
|
-
return l.setDate(l.getDate() +
|
|
1019
|
-
}, [A, t]), T =
|
|
1020
|
-
() => Ft(
|
|
1021
|
-
[
|
|
1022
|
-
),
|
|
1023
|
-
() => Bt(T,
|
|
1024
|
-
[z, T,
|
|
1017
|
+
const u = l.getDay(), w = u === 0 ? -6 : 1 - u;
|
|
1018
|
+
return l.setDate(l.getDate() + w), l.setHours(0, 0, 0, 0), l;
|
|
1019
|
+
}, [A, t]), T = $(
|
|
1020
|
+
() => Ft(v, t),
|
|
1021
|
+
[v, t]
|
|
1022
|
+
), C = $(
|
|
1023
|
+
() => Bt(T, D, S),
|
|
1024
|
+
[z, T, D, S]
|
|
1025
1025
|
), R = c ?? ((l) => {
|
|
1026
|
-
const
|
|
1027
|
-
if (
|
|
1028
|
-
if (
|
|
1029
|
-
return String(
|
|
1026
|
+
const u = l.data;
|
|
1027
|
+
if (u?.userId) return String(u.userId);
|
|
1028
|
+
if (u?.user && typeof u.user == "object" && u.user.id)
|
|
1029
|
+
return String(u.user.id);
|
|
1030
1030
|
if (l.user?.id) return l.user.id;
|
|
1031
1031
|
if (l.participants?.[0]?.id) return l.participants[0].id;
|
|
1032
|
-
}), V =
|
|
1032
|
+
}), V = $(() => {
|
|
1033
1033
|
const l = /* @__PURE__ */ new Map();
|
|
1034
|
-
for (const
|
|
1035
|
-
l.set(
|
|
1036
|
-
id:
|
|
1037
|
-
name:
|
|
1038
|
-
avatar:
|
|
1039
|
-
email:
|
|
1034
|
+
for (const u of o)
|
|
1035
|
+
l.set(u.id, {
|
|
1036
|
+
id: u.id,
|
|
1037
|
+
name: u.name,
|
|
1038
|
+
avatar: u.avatar ?? void 0,
|
|
1039
|
+
email: u.email
|
|
1040
1040
|
});
|
|
1041
|
-
for (const
|
|
1042
|
-
const k =
|
|
1041
|
+
for (const u of r) {
|
|
1042
|
+
const k = u.data?.user;
|
|
1043
1043
|
k?.id && !l.has(k.id) && l.set(k.id, {
|
|
1044
1044
|
id: k.id,
|
|
1045
1045
|
name: k.name ?? "",
|
|
1046
1046
|
avatar: k.avatar ?? void 0,
|
|
1047
1047
|
email: k.email
|
|
1048
|
-
}),
|
|
1049
|
-
id:
|
|
1050
|
-
name:
|
|
1051
|
-
avatar:
|
|
1052
|
-
email:
|
|
1048
|
+
}), u.user?.id && !l.has(u.user.id) && l.set(u.user.id, {
|
|
1049
|
+
id: u.user.id,
|
|
1050
|
+
name: u.user.name,
|
|
1051
|
+
avatar: u.user.avatar ?? void 0,
|
|
1052
|
+
email: u.user.email
|
|
1053
1053
|
});
|
|
1054
|
-
for (const
|
|
1055
|
-
|
|
1056
|
-
id:
|
|
1057
|
-
name:
|
|
1058
|
-
avatar:
|
|
1059
|
-
email:
|
|
1054
|
+
for (const y of u.participants || [])
|
|
1055
|
+
y.id && !l.has(y.id) && l.set(y.id, {
|
|
1056
|
+
id: y.id,
|
|
1057
|
+
name: y.name,
|
|
1058
|
+
avatar: y.avatar ?? void 0,
|
|
1059
|
+
email: y.email
|
|
1060
1060
|
});
|
|
1061
1061
|
}
|
|
1062
1062
|
return Array.from(l.values());
|
|
1063
|
-
}, [o, r]),
|
|
1064
|
-
const l = [],
|
|
1065
|
-
for (const
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
for (const
|
|
1069
|
-
const
|
|
1070
|
-
(
|
|
1063
|
+
}, [o, r]), B = $(() => {
|
|
1064
|
+
const l = [], u = /* @__PURE__ */ new Map();
|
|
1065
|
+
for (const y of V)
|
|
1066
|
+
u.set(y.id, []);
|
|
1067
|
+
u.set("unassigned", []);
|
|
1068
|
+
for (const y of r) {
|
|
1069
|
+
const L = R(y) ?? "unassigned";
|
|
1070
|
+
(u.get(L) ?? u.get("unassigned")).push(y);
|
|
1071
1071
|
}
|
|
1072
|
-
const
|
|
1073
|
-
const
|
|
1074
|
-
for (const E of
|
|
1075
|
-
const
|
|
1072
|
+
const w = (y) => {
|
|
1073
|
+
const L = [];
|
|
1074
|
+
for (const E of y) {
|
|
1075
|
+
const P = E.startDate.getHours() + E.startDate.getMinutes() / 60, Y = E.endDate.getHours() + E.endDate.getMinutes() / 60;
|
|
1076
1076
|
for (let K = 0; K < T.length; K++) {
|
|
1077
|
-
const J = T[K], ie =
|
|
1078
|
-
if (E.startDate <=
|
|
1079
|
-
let N =
|
|
1080
|
-
if (E.startDate >= ie && (N = Math.max(
|
|
1081
|
-
|
|
1077
|
+
const J = T[K], ie = pe(J), h = Ve(J);
|
|
1078
|
+
if (E.startDate <= h && E.endDate >= ie) {
|
|
1079
|
+
let N = D, I = S;
|
|
1080
|
+
if (E.startDate >= ie && (N = Math.max(D, P)), E.endDate <= h && (I = Math.min(S, Y)), N = Math.max(
|
|
1081
|
+
D,
|
|
1082
1082
|
Math.min(S, N)
|
|
1083
|
-
),
|
|
1084
|
-
|
|
1085
|
-
Math.min(S,
|
|
1086
|
-
),
|
|
1087
|
-
const
|
|
1088
|
-
|
|
1083
|
+
), I = Math.max(
|
|
1084
|
+
D,
|
|
1085
|
+
Math.min(S, I)
|
|
1086
|
+
), I > N) {
|
|
1087
|
+
const W = K * H + Math.floor(N - D), G = K * H + Math.ceil(I - D);
|
|
1088
|
+
L.push({
|
|
1089
1089
|
event: E,
|
|
1090
|
-
startCol:
|
|
1091
|
-
spanCols: Math.max(1, G -
|
|
1090
|
+
startCol: W,
|
|
1091
|
+
spanCols: Math.max(1, G - W)
|
|
1092
1092
|
});
|
|
1093
1093
|
}
|
|
1094
1094
|
}
|
|
1095
1095
|
}
|
|
1096
1096
|
}
|
|
1097
|
-
return
|
|
1097
|
+
return L;
|
|
1098
1098
|
};
|
|
1099
|
-
for (const
|
|
1100
|
-
const
|
|
1099
|
+
for (const y of V) {
|
|
1100
|
+
const L = u.get(y.id) ?? [], E = w(L), P = Ie(E), Y = P.reduce(
|
|
1101
1101
|
(K, J) => Math.max(K, J.stackIndex + 1),
|
|
1102
1102
|
0
|
|
1103
1103
|
);
|
|
1104
1104
|
l.push({
|
|
1105
|
-
user:
|
|
1106
|
-
events:
|
|
1105
|
+
user: y,
|
|
1106
|
+
events: P,
|
|
1107
1107
|
maxStack: Math.max(Y, 1)
|
|
1108
1108
|
});
|
|
1109
1109
|
}
|
|
1110
|
-
const k =
|
|
1110
|
+
const k = u.get("unassigned") ?? [];
|
|
1111
1111
|
if (k.length > 0) {
|
|
1112
|
-
const
|
|
1113
|
-
(
|
|
1112
|
+
const y = w(k), L = Ie(y), E = L.reduce(
|
|
1113
|
+
(P, Y) => Math.max(P, Y.stackIndex + 1),
|
|
1114
1114
|
0
|
|
1115
1115
|
);
|
|
1116
1116
|
l.push({
|
|
@@ -1120,87 +1120,87 @@ function we({
|
|
|
1120
1120
|
avatar: void 0,
|
|
1121
1121
|
email: void 0
|
|
1122
1122
|
},
|
|
1123
|
-
events:
|
|
1123
|
+
events: L,
|
|
1124
1124
|
maxStack: Math.max(E, 1)
|
|
1125
1125
|
});
|
|
1126
1126
|
}
|
|
1127
|
-
return l.filter((
|
|
1127
|
+
return l.filter((y) => y.events.length > 0);
|
|
1128
1128
|
}, [
|
|
1129
1129
|
V,
|
|
1130
1130
|
r,
|
|
1131
1131
|
T,
|
|
1132
1132
|
z,
|
|
1133
|
-
|
|
1134
|
-
|
|
1133
|
+
H,
|
|
1134
|
+
D,
|
|
1135
1135
|
S,
|
|
1136
1136
|
R
|
|
1137
|
-
]), O =
|
|
1137
|
+
]), O = $(() => {
|
|
1138
1138
|
const l = /* @__PURE__ */ new Map();
|
|
1139
|
-
for (const
|
|
1140
|
-
for (const
|
|
1141
|
-
if (
|
|
1142
|
-
const k = l.get(
|
|
1143
|
-
l.set(
|
|
1139
|
+
for (const u of B)
|
|
1140
|
+
for (const w of u.events)
|
|
1141
|
+
if (w.spanCols === 1) {
|
|
1142
|
+
const k = l.get(w.startCol) ?? 0;
|
|
1143
|
+
l.set(w.startCol, k + 1);
|
|
1144
1144
|
}
|
|
1145
1145
|
return l;
|
|
1146
|
-
}, [
|
|
1147
|
-
const l =
|
|
1146
|
+
}, [B]), j = $(() => {
|
|
1147
|
+
const l = C.length, u = we, w = [];
|
|
1148
1148
|
for (let k = 0; k < l; k++) {
|
|
1149
|
-
const
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
) :
|
|
1149
|
+
const y = O.get(k) ?? 0;
|
|
1150
|
+
y > Te ? w.push(
|
|
1151
|
+
Le + (y - Te) * 20
|
|
1152
|
+
) : y > 0 ? w.push(Math.max(u, Le)) : w.push(u);
|
|
1153
1153
|
}
|
|
1154
|
-
return
|
|
1154
|
+
return w;
|
|
1155
1155
|
}, [
|
|
1156
1156
|
z,
|
|
1157
|
-
|
|
1157
|
+
C.length,
|
|
1158
1158
|
T.length,
|
|
1159
1159
|
O
|
|
1160
|
-
]),
|
|
1160
|
+
]), _ = (l) => Math.max(
|
|
1161
1161
|
It,
|
|
1162
|
-
l * (
|
|
1163
|
-
), U = ce +
|
|
1162
|
+
l * (ve + ze) + He * 2
|
|
1163
|
+
), U = ce + j.reduce((l, u) => l + u, 0), d = $(() => {
|
|
1164
1164
|
const l = [0];
|
|
1165
|
-
for (let
|
|
1166
|
-
l.push(l[
|
|
1165
|
+
for (let u = 0; u < j.length; u++)
|
|
1166
|
+
l.push(l[u] + j[u]);
|
|
1167
1167
|
return l;
|
|
1168
|
-
}, [
|
|
1168
|
+
}, [j]);
|
|
1169
1169
|
return Ze(() => {
|
|
1170
1170
|
const l = M.current;
|
|
1171
1171
|
if (!l) return;
|
|
1172
|
-
const
|
|
1173
|
-
let
|
|
1174
|
-
const
|
|
1172
|
+
const u = () => {
|
|
1173
|
+
let w = -1;
|
|
1174
|
+
const y = (/* @__PURE__ */ new Date()).getHours();
|
|
1175
1175
|
{
|
|
1176
|
-
for (let
|
|
1177
|
-
const E =
|
|
1178
|
-
if (E && q(E.date) && E.hour <=
|
|
1179
|
-
|
|
1176
|
+
for (let L = 0; L < C.length; L++) {
|
|
1177
|
+
const E = C[L];
|
|
1178
|
+
if (E && q(E.date) && E.hour <= y && E.hour + 1 > y) {
|
|
1179
|
+
w = L;
|
|
1180
1180
|
break;
|
|
1181
1181
|
}
|
|
1182
1182
|
}
|
|
1183
|
-
if (
|
|
1184
|
-
for (let
|
|
1185
|
-
const E =
|
|
1183
|
+
if (w === -1)
|
|
1184
|
+
for (let L = 0; L < C.length; L++) {
|
|
1185
|
+
const E = C[L];
|
|
1186
1186
|
if (E && q(E.date)) {
|
|
1187
|
-
|
|
1187
|
+
w = L;
|
|
1188
1188
|
break;
|
|
1189
1189
|
}
|
|
1190
1190
|
}
|
|
1191
1191
|
}
|
|
1192
|
-
if (
|
|
1193
|
-
const
|
|
1192
|
+
if (w !== -1) {
|
|
1193
|
+
const L = (d[w] ?? 0) + ce, E = l.clientWidth, P = Math.max(0, L - E / 3);
|
|
1194
1194
|
l.scrollTo({
|
|
1195
|
-
left:
|
|
1195
|
+
left: P,
|
|
1196
1196
|
behavior: "instant"
|
|
1197
1197
|
});
|
|
1198
1198
|
}
|
|
1199
1199
|
};
|
|
1200
1200
|
requestAnimationFrame(() => {
|
|
1201
|
-
requestAnimationFrame(
|
|
1201
|
+
requestAnimationFrame(u);
|
|
1202
1202
|
});
|
|
1203
|
-
}, [A,
|
|
1203
|
+
}, [A, C, T, d, z]), /* @__PURE__ */ e("div", { className: m("flex h-full flex-col", f), children: /* @__PURE__ */ e("div", { className: "ic-timeline-scroll-container flex-1", ref: M, children: /* @__PURE__ */ n("div", { className: "relative", style: { minWidth: U }, children: [
|
|
1204
1204
|
// Hour mode: Day headers + Hour sub-headers - sticky wrapper with flex child (sticky + flex breaks sticky)
|
|
1205
1205
|
/* @__PURE__ */ e("div", { className: "ic-timeline-header sticky top-0 z-20 border-b bg-background", children: /* @__PURE__ */ n("div", { className: "flex flex-col", children: [
|
|
1206
1206
|
t > 1 && /* @__PURE__ */ n("div", { className: "flex border-b", children: [
|
|
@@ -1212,16 +1212,16 @@ function we({
|
|
|
1212
1212
|
children: /* @__PURE__ */ e("span", { className: "text-[10px] font-medium uppercase text-muted-foreground", children: "Resources" })
|
|
1213
1213
|
}
|
|
1214
1214
|
),
|
|
1215
|
-
T.map((l,
|
|
1216
|
-
const
|
|
1215
|
+
T.map((l, u) => {
|
|
1216
|
+
const w = q(l), k = u * H, y = j.slice(k, k + H).reduce((L, E) => L + E, 0);
|
|
1217
1217
|
return /* @__PURE__ */ e(
|
|
1218
1218
|
"div",
|
|
1219
1219
|
{
|
|
1220
|
-
className:
|
|
1220
|
+
className: m(
|
|
1221
1221
|
"flex shrink-0 items-center justify-center border-r py-1.5 font-medium",
|
|
1222
|
-
|
|
1222
|
+
w ? "bg-primary/10 text-primary" : "bg-muted/30"
|
|
1223
1223
|
),
|
|
1224
|
-
style: { width:
|
|
1224
|
+
style: { width: y },
|
|
1225
1225
|
children: /* @__PURE__ */ e("span", { className: "text-xs", children: Ot(l) })
|
|
1226
1226
|
},
|
|
1227
1227
|
`day-${l.toISOString()}`
|
|
@@ -1232,7 +1232,7 @@ function we({
|
|
|
1232
1232
|
/* @__PURE__ */ e(
|
|
1233
1233
|
"div",
|
|
1234
1234
|
{
|
|
1235
|
-
className:
|
|
1235
|
+
className: m(
|
|
1236
1236
|
"flex shrink-0 items-center border-r bg-background px-2 py-2",
|
|
1237
1237
|
t > 1 && "sticky left-0 z-10"
|
|
1238
1238
|
),
|
|
@@ -1240,17 +1240,17 @@ function we({
|
|
|
1240
1240
|
children: t === 1 && /* @__PURE__ */ e("span", { className: "text-[10px] font-medium uppercase text-muted-foreground", children: "Resources" })
|
|
1241
1241
|
}
|
|
1242
1242
|
),
|
|
1243
|
-
|
|
1244
|
-
const
|
|
1243
|
+
C.map((l, u) => {
|
|
1244
|
+
const w = l.hour === D, k = q(l.date), y = j[u] ?? we;
|
|
1245
1245
|
return /* @__PURE__ */ e(
|
|
1246
1246
|
"div",
|
|
1247
1247
|
{
|
|
1248
|
-
className:
|
|
1248
|
+
className: m(
|
|
1249
1249
|
"flex shrink-0 items-center justify-center py-1.5 text-[10px] text-muted-foreground",
|
|
1250
|
-
|
|
1250
|
+
w && u > 0 ? "border-l-2 border-l-border" : "border-r border-r-border/50",
|
|
1251
1251
|
k && "bg-primary/5"
|
|
1252
1252
|
),
|
|
1253
|
-
style: { width:
|
|
1253
|
+
style: { width: y },
|
|
1254
1254
|
children: $t(l.hour)
|
|
1255
1255
|
},
|
|
1256
1256
|
`hour-${l.dayIndex}-${l.hour}`
|
|
@@ -1258,16 +1258,16 @@ function we({
|
|
|
1258
1258
|
})
|
|
1259
1259
|
] })
|
|
1260
1260
|
] }) }),
|
|
1261
|
-
|
|
1262
|
-
const
|
|
1261
|
+
B.map((l) => {
|
|
1262
|
+
const u = _(l.maxStack);
|
|
1263
1263
|
return /* @__PURE__ */ n(
|
|
1264
1264
|
"div",
|
|
1265
1265
|
{
|
|
1266
|
-
className:
|
|
1266
|
+
className: m(
|
|
1267
1267
|
"relative flex border-b",
|
|
1268
1268
|
p?.resourceRow
|
|
1269
1269
|
),
|
|
1270
|
-
style: { height:
|
|
1270
|
+
style: { height: u },
|
|
1271
1271
|
children: [
|
|
1272
1272
|
/* @__PURE__ */ e(
|
|
1273
1273
|
"div",
|
|
@@ -1277,13 +1277,13 @@ function we({
|
|
|
1277
1277
|
children: /* @__PURE__ */ n(
|
|
1278
1278
|
"div",
|
|
1279
1279
|
{
|
|
1280
|
-
className:
|
|
1280
|
+
className: m(
|
|
1281
1281
|
"flex h-full items-center gap-2 sm:gap-3 border-r bg-background px-2 sm:px-4",
|
|
1282
1282
|
p?.resourceHeader
|
|
1283
1283
|
),
|
|
1284
1284
|
children: [
|
|
1285
1285
|
/* @__PURE__ */ e(
|
|
1286
|
-
|
|
1286
|
+
Pt,
|
|
1287
1287
|
{
|
|
1288
1288
|
className: "size-7",
|
|
1289
1289
|
src: l.user.avatar,
|
|
@@ -1299,23 +1299,23 @@ function we({
|
|
|
1299
1299
|
),
|
|
1300
1300
|
/* @__PURE__ */ n("div", { className: "relative flex", children: [
|
|
1301
1301
|
// Hour mode cells
|
|
1302
|
-
|
|
1303
|
-
const
|
|
1302
|
+
C.map((w, k) => {
|
|
1303
|
+
const y = w.hour === D && k > 0, L = j[k] ?? we;
|
|
1304
1304
|
return /* @__PURE__ */ e(
|
|
1305
1305
|
"div",
|
|
1306
1306
|
{
|
|
1307
|
-
className:
|
|
1307
|
+
className: m(
|
|
1308
1308
|
"shrink-0",
|
|
1309
|
-
|
|
1310
|
-
q(
|
|
1309
|
+
y ? "border-l-2 border-l-border" : "border-r border-r-border/50",
|
|
1310
|
+
q(w.date) && "bg-primary/5"
|
|
1311
1311
|
),
|
|
1312
|
-
style: { width:
|
|
1312
|
+
style: { width: L }
|
|
1313
1313
|
},
|
|
1314
|
-
`cell-${
|
|
1314
|
+
`cell-${w.dayIndex}-${w.hour}`
|
|
1315
1315
|
);
|
|
1316
1316
|
}),
|
|
1317
|
-
l.events.map((
|
|
1318
|
-
const k = (
|
|
1317
|
+
l.events.map((w) => {
|
|
1318
|
+
const k = (d[w.startCol] ?? 0) + 2, y = d[w.startCol + w.spanCols] ?? d[d.length - 1] ?? 0, L = d[w.startCol] ?? 0, E = y - L - 4, P = He + w.stackIndex * (ve + ze);
|
|
1319
1319
|
return /* @__PURE__ */ e(
|
|
1320
1320
|
"div",
|
|
1321
1321
|
{
|
|
@@ -1324,24 +1324,24 @@ function we({
|
|
|
1324
1324
|
left: k,
|
|
1325
1325
|
width: Math.max(E, 0),
|
|
1326
1326
|
// No forced minimum - columns are guaranteed wide enough
|
|
1327
|
-
top:
|
|
1328
|
-
height:
|
|
1327
|
+
top: P,
|
|
1328
|
+
height: ve
|
|
1329
1329
|
},
|
|
1330
1330
|
children: /* @__PURE__ */ e(
|
|
1331
1331
|
ot,
|
|
1332
1332
|
{
|
|
1333
|
-
event:
|
|
1333
|
+
event: w.event,
|
|
1334
1334
|
variant: "compact",
|
|
1335
1335
|
onClick: i,
|
|
1336
1336
|
renderPopover: x,
|
|
1337
|
-
className:
|
|
1337
|
+
className: m(
|
|
1338
1338
|
"h-full w-full",
|
|
1339
1339
|
p?.eventCardCompact
|
|
1340
1340
|
)
|
|
1341
1341
|
}
|
|
1342
1342
|
)
|
|
1343
1343
|
},
|
|
1344
|
-
|
|
1344
|
+
w.event.id
|
|
1345
1345
|
);
|
|
1346
1346
|
})
|
|
1347
1347
|
] })
|
|
@@ -1350,7 +1350,7 @@ function we({
|
|
|
1350
1350
|
l.user.id
|
|
1351
1351
|
);
|
|
1352
1352
|
}),
|
|
1353
|
-
|
|
1353
|
+
B.length === 0 && /* @__PURE__ */ e("div", { className: "flex items-center justify-center py-20 text-muted-foreground", children: "No users or events to display" })
|
|
1354
1354
|
] }) }) });
|
|
1355
1355
|
}
|
|
1356
1356
|
const Rt = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], Vt = [
|
|
@@ -1378,7 +1378,7 @@ function Ut({ day: t, date: r, events: o, isCurrentMonth: s, onDayClick: a }) {
|
|
|
1378
1378
|
{
|
|
1379
1379
|
type: "button",
|
|
1380
1380
|
onClick: () => a?.(r),
|
|
1381
|
-
className:
|
|
1381
|
+
className: m(
|
|
1382
1382
|
"flex h-9 sm:h-11 flex-1 flex-col items-center justify-start gap-0.5 rounded-md pt-0.5 sm:pt-1",
|
|
1383
1383
|
"hover:bg-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
|
|
1384
1384
|
"transition-colors",
|
|
@@ -1388,7 +1388,7 @@ function Ut({ day: t, date: r, events: o, isCurrentMonth: s, onDayClick: a }) {
|
|
|
1388
1388
|
/* @__PURE__ */ e(
|
|
1389
1389
|
"div",
|
|
1390
1390
|
{
|
|
1391
|
-
className:
|
|
1391
|
+
className: m(
|
|
1392
1392
|
"flex size-5 sm:size-6 items-center justify-center rounded-full text-[10px] sm:text-xs font-medium",
|
|
1393
1393
|
i && "bg-primary font-semibold text-primary-foreground"
|
|
1394
1394
|
),
|
|
@@ -1426,14 +1426,14 @@ function Yt({
|
|
|
1426
1426
|
onMonthClick: o,
|
|
1427
1427
|
onDayClick: s
|
|
1428
1428
|
}) {
|
|
1429
|
-
const a =
|
|
1429
|
+
const a = $(() => mt(t, 0), [t]);
|
|
1430
1430
|
return /* @__PURE__ */ n("div", { className: "flex flex-col", children: [
|
|
1431
1431
|
/* @__PURE__ */ e(
|
|
1432
1432
|
"button",
|
|
1433
1433
|
{
|
|
1434
1434
|
type: "button",
|
|
1435
1435
|
onClick: () => o?.(t),
|
|
1436
|
-
className:
|
|
1436
|
+
className: m(
|
|
1437
1437
|
"w-full rounded-t-lg border px-2 sm:px-3 py-1.5 sm:py-2 text-xs sm:text-sm font-semibold",
|
|
1438
1438
|
"hover:bg-accent focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
|
|
1439
1439
|
"transition-colors"
|
|
@@ -1472,8 +1472,8 @@ function Gt({
|
|
|
1472
1472
|
slots: i,
|
|
1473
1473
|
classNames: g
|
|
1474
1474
|
}) {
|
|
1475
|
-
const f =
|
|
1476
|
-
return /* @__PURE__ */ n("div", { className:
|
|
1475
|
+
const f = $(() => ht(r), [r]);
|
|
1476
|
+
return /* @__PURE__ */ n("div", { className: m("flex flex-col h-full", a), children: [
|
|
1477
1477
|
/* @__PURE__ */ e("div", { className: "flex items-center justify-center border-b px-4 py-3", children: /* @__PURE__ */ e("h2", { className: "text-lg font-semibold", children: r }) }),
|
|
1478
1478
|
/* @__PURE__ */ e("div", { className: "flex-1 overflow-auto p-4", children: /* @__PURE__ */ e("div", { className: "grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4", children: f.map((c) => /* @__PURE__ */ e(
|
|
1479
1479
|
Yt,
|
|
@@ -1507,54 +1507,54 @@ function qt({
|
|
|
1507
1507
|
showMoreMode: f,
|
|
1508
1508
|
showMoreEventsInPopover: c = !1,
|
|
1509
1509
|
isLoading: x = !1,
|
|
1510
|
-
slots:
|
|
1510
|
+
slots: b,
|
|
1511
1511
|
classNames: p,
|
|
1512
1512
|
settingsContent: M,
|
|
1513
1513
|
filterContent: A,
|
|
1514
1514
|
headerActions: z,
|
|
1515
|
-
renderPopover:
|
|
1515
|
+
renderPopover: D,
|
|
1516
1516
|
calendarRef: S
|
|
1517
1517
|
}) {
|
|
1518
|
-
const
|
|
1519
|
-
view:
|
|
1518
|
+
const H = f ?? (c ? "popover" : "expand"), {
|
|
1519
|
+
view: v,
|
|
1520
1520
|
setView: T,
|
|
1521
|
-
selectedDate:
|
|
1521
|
+
selectedDate: C,
|
|
1522
1522
|
setSelectedDate: F,
|
|
1523
1523
|
slotDuration: R,
|
|
1524
1524
|
filteredEvents: V,
|
|
1525
|
-
users:
|
|
1525
|
+
users: B,
|
|
1526
1526
|
visibleHours: O,
|
|
1527
|
-
workingHours:
|
|
1528
|
-
badgeVariant:
|
|
1527
|
+
workingHours: j,
|
|
1528
|
+
badgeVariant: _,
|
|
1529
1529
|
showWorkingHoursOnly: U
|
|
1530
|
-
} = Qe(),
|
|
1531
|
-
if (!U || !
|
|
1530
|
+
} = Qe(), d = $(() => {
|
|
1531
|
+
if (!U || !j)
|
|
1532
1532
|
return {
|
|
1533
1533
|
startHour: O.start,
|
|
1534
1534
|
endHour: O.end
|
|
1535
1535
|
};
|
|
1536
|
-
let
|
|
1537
|
-
for (const
|
|
1538
|
-
const
|
|
1539
|
-
!
|
|
1536
|
+
let h = 24, N = 0;
|
|
1537
|
+
for (const I of Object.keys(j)) {
|
|
1538
|
+
const W = j[Number(I)];
|
|
1539
|
+
!W || W.enabled === !1 || (W.from < h && (h = W.from), W.to > N && (N = W.to));
|
|
1540
1540
|
}
|
|
1541
|
-
return
|
|
1541
|
+
return h >= N ? {
|
|
1542
1542
|
startHour: O.start,
|
|
1543
1543
|
endHour: O.end
|
|
1544
|
-
} : { startHour:
|
|
1545
|
-
}, [U,
|
|
1544
|
+
} : { startHour: h, endHour: N };
|
|
1545
|
+
}, [U, j, O]), l = d, u = Ne(null);
|
|
1546
1546
|
et(
|
|
1547
1547
|
S,
|
|
1548
1548
|
() => ({
|
|
1549
1549
|
scrollToToday: () => {
|
|
1550
|
-
const
|
|
1551
|
-
F(
|
|
1550
|
+
const h = /* @__PURE__ */ new Date();
|
|
1551
|
+
F(h, v), requestAnimationFrame(() => {
|
|
1552
1552
|
requestAnimationFrame(() => {
|
|
1553
|
-
const N =
|
|
1553
|
+
const N = u.current?.querySelector(
|
|
1554
1554
|
".ic-timeline-scroll-container, [class*='overflow-auto']"
|
|
1555
1555
|
);
|
|
1556
1556
|
if (!N) return;
|
|
1557
|
-
const G = (
|
|
1557
|
+
const G = (h.getHours() - d.startHour) * 96;
|
|
1558
1558
|
G > 0 && N.scrollTo({
|
|
1559
1559
|
top: Math.max(0, G - 100),
|
|
1560
1560
|
// Offset to show some context
|
|
@@ -1564,73 +1564,73 @@ function qt({
|
|
|
1564
1564
|
});
|
|
1565
1565
|
},
|
|
1566
1566
|
scrollToWorkingHours: () => {
|
|
1567
|
-
let
|
|
1568
|
-
if (
|
|
1569
|
-
for (const N of Object.keys(
|
|
1570
|
-
const
|
|
1571
|
-
|
|
1567
|
+
let h = 8;
|
|
1568
|
+
if (j)
|
|
1569
|
+
for (const N of Object.keys(j)) {
|
|
1570
|
+
const I = j[Number(N)];
|
|
1571
|
+
I?.enabled && I.from < h && (h = Math.max(I.from - 1, 0));
|
|
1572
1572
|
}
|
|
1573
1573
|
requestAnimationFrame(() => {
|
|
1574
1574
|
requestAnimationFrame(() => {
|
|
1575
|
-
const N =
|
|
1575
|
+
const N = u.current?.querySelector(
|
|
1576
1576
|
".ic-timeline-scroll-container, [class*='overflow-auto']"
|
|
1577
1577
|
);
|
|
1578
1578
|
if (!N) return;
|
|
1579
|
-
const
|
|
1579
|
+
const W = (h - d.startHour) * 96;
|
|
1580
1580
|
N.scrollTo({
|
|
1581
|
-
top: Math.max(0,
|
|
1581
|
+
top: Math.max(0, W),
|
|
1582
1582
|
behavior: "smooth"
|
|
1583
1583
|
});
|
|
1584
1584
|
});
|
|
1585
1585
|
});
|
|
1586
1586
|
},
|
|
1587
|
-
getViewRect: () =>
|
|
1587
|
+
getViewRect: () => u.current?.getBoundingClientRect() ?? null
|
|
1588
1588
|
}),
|
|
1589
|
-
[F,
|
|
1589
|
+
[F, v, d, j]
|
|
1590
1590
|
);
|
|
1591
|
-
const
|
|
1592
|
-
(
|
|
1591
|
+
const w = $(() => Kt(v), [v]), k = oe(
|
|
1592
|
+
(h) => {
|
|
1593
1593
|
if (o) {
|
|
1594
|
-
o(
|
|
1594
|
+
o(h);
|
|
1595
1595
|
return;
|
|
1596
1596
|
}
|
|
1597
1597
|
if (r) {
|
|
1598
|
-
const N =
|
|
1599
|
-
r(
|
|
1598
|
+
const N = h.startDate.getHours();
|
|
1599
|
+
r(h.startDate, N);
|
|
1600
1600
|
}
|
|
1601
1601
|
},
|
|
1602
1602
|
[o, r]
|
|
1603
|
-
),
|
|
1604
|
-
(
|
|
1605
|
-
T("day"), F(
|
|
1603
|
+
), y = oe(
|
|
1604
|
+
(h) => {
|
|
1605
|
+
T("day"), F(h, "day");
|
|
1606
1606
|
},
|
|
1607
1607
|
[F, T]
|
|
1608
|
-
),
|
|
1609
|
-
(
|
|
1610
|
-
T("month"), F(
|
|
1608
|
+
), L = oe(
|
|
1609
|
+
(h) => {
|
|
1610
|
+
T("month"), F(h, "month");
|
|
1611
1611
|
},
|
|
1612
1612
|
[F, T]
|
|
1613
1613
|
), E = oe(
|
|
1614
|
-
(
|
|
1615
|
-
t?.(
|
|
1614
|
+
(h) => {
|
|
1615
|
+
t?.(h);
|
|
1616
1616
|
},
|
|
1617
1617
|
[t]
|
|
1618
|
-
),
|
|
1619
|
-
const
|
|
1620
|
-
switch (
|
|
1618
|
+
), P = () => {
|
|
1619
|
+
const h = V, N = E, I = D;
|
|
1620
|
+
switch (v) {
|
|
1621
1621
|
case "day":
|
|
1622
1622
|
return /* @__PURE__ */ e(
|
|
1623
1623
|
lt,
|
|
1624
1624
|
{
|
|
1625
|
-
events:
|
|
1626
|
-
date:
|
|
1625
|
+
events: h,
|
|
1626
|
+
date: C,
|
|
1627
1627
|
visibleHours: l,
|
|
1628
|
-
workingHours:
|
|
1628
|
+
workingHours: j,
|
|
1629
1629
|
slotDuration: R,
|
|
1630
|
-
badgeVariant:
|
|
1630
|
+
badgeVariant: _,
|
|
1631
1631
|
onEventClick: N,
|
|
1632
|
-
renderPopover:
|
|
1633
|
-
...
|
|
1632
|
+
renderPopover: I,
|
|
1633
|
+
...b && { slots: b },
|
|
1634
1634
|
...p && { classNames: p }
|
|
1635
1635
|
}
|
|
1636
1636
|
);
|
|
@@ -1638,15 +1638,15 @@ function qt({
|
|
|
1638
1638
|
return /* @__PURE__ */ e(
|
|
1639
1639
|
it,
|
|
1640
1640
|
{
|
|
1641
|
-
events:
|
|
1642
|
-
date:
|
|
1641
|
+
events: h,
|
|
1642
|
+
date: C,
|
|
1643
1643
|
visibleHours: l,
|
|
1644
|
-
workingHours:
|
|
1644
|
+
workingHours: j,
|
|
1645
1645
|
slotDuration: R,
|
|
1646
|
-
badgeVariant:
|
|
1646
|
+
badgeVariant: _,
|
|
1647
1647
|
onEventClick: N,
|
|
1648
|
-
renderPopover:
|
|
1649
|
-
...
|
|
1648
|
+
renderPopover: I,
|
|
1649
|
+
...b && { slots: b },
|
|
1650
1650
|
...p && { classNames: p }
|
|
1651
1651
|
}
|
|
1652
1652
|
);
|
|
@@ -1654,14 +1654,14 @@ function qt({
|
|
|
1654
1654
|
return /* @__PURE__ */ e(
|
|
1655
1655
|
De,
|
|
1656
1656
|
{
|
|
1657
|
-
events:
|
|
1658
|
-
date:
|
|
1659
|
-
badgeVariant:
|
|
1657
|
+
events: h,
|
|
1658
|
+
date: C,
|
|
1659
|
+
badgeVariant: _,
|
|
1660
1660
|
onEventClick: N,
|
|
1661
|
-
onDayClick:
|
|
1662
|
-
renderPopover:
|
|
1663
|
-
showMoreMode:
|
|
1664
|
-
...
|
|
1661
|
+
onDayClick: y,
|
|
1662
|
+
renderPopover: I,
|
|
1663
|
+
showMoreMode: H,
|
|
1664
|
+
...b && { slots: b },
|
|
1665
1665
|
...p && { classNames: p }
|
|
1666
1666
|
}
|
|
1667
1667
|
);
|
|
@@ -1669,11 +1669,11 @@ function qt({
|
|
|
1669
1669
|
return /* @__PURE__ */ e(
|
|
1670
1670
|
Gt,
|
|
1671
1671
|
{
|
|
1672
|
-
events:
|
|
1673
|
-
year:
|
|
1674
|
-
onMonthClick:
|
|
1675
|
-
onDayClick:
|
|
1676
|
-
...
|
|
1672
|
+
events: h,
|
|
1673
|
+
year: C.getFullYear(),
|
|
1674
|
+
onMonthClick: L,
|
|
1675
|
+
onDayClick: y,
|
|
1676
|
+
...b && { slots: b },
|
|
1677
1677
|
...p && { classNames: p }
|
|
1678
1678
|
}
|
|
1679
1679
|
);
|
|
@@ -1681,66 +1681,103 @@ function qt({
|
|
|
1681
1681
|
return /* @__PURE__ */ e(
|
|
1682
1682
|
at,
|
|
1683
1683
|
{
|
|
1684
|
-
events:
|
|
1685
|
-
date:
|
|
1684
|
+
events: h,
|
|
1685
|
+
date: C,
|
|
1686
|
+
onEventClick: N,
|
|
1687
|
+
renderPopover: I,
|
|
1688
|
+
...b && { slots: b },
|
|
1689
|
+
...p && { classNames: p }
|
|
1690
|
+
}
|
|
1691
|
+
);
|
|
1692
|
+
// Resource views — delegate to TimelineView with matching day count
|
|
1693
|
+
case "resource-day":
|
|
1694
|
+
return /* @__PURE__ */ e(
|
|
1695
|
+
de,
|
|
1696
|
+
{
|
|
1697
|
+
daysToShow: 1,
|
|
1698
|
+
events: h,
|
|
1699
|
+
users: B,
|
|
1700
|
+
selectedDate: C,
|
|
1701
|
+
visibleHours: {
|
|
1702
|
+
from: d.startHour,
|
|
1703
|
+
to: d.endHour
|
|
1704
|
+
},
|
|
1705
|
+
onEventClick: N,
|
|
1706
|
+
renderPopover: I,
|
|
1707
|
+
...b && { slots: b },
|
|
1708
|
+
...p && { classNames: p }
|
|
1709
|
+
}
|
|
1710
|
+
);
|
|
1711
|
+
case "resource-week":
|
|
1712
|
+
return /* @__PURE__ */ e(
|
|
1713
|
+
de,
|
|
1714
|
+
{
|
|
1715
|
+
daysToShow: 7,
|
|
1716
|
+
events: h,
|
|
1717
|
+
users: B,
|
|
1718
|
+
selectedDate: C,
|
|
1719
|
+
visibleHours: {
|
|
1720
|
+
from: d.startHour,
|
|
1721
|
+
to: d.endHour
|
|
1722
|
+
},
|
|
1686
1723
|
onEventClick: N,
|
|
1687
|
-
renderPopover:
|
|
1688
|
-
...
|
|
1724
|
+
renderPopover: I,
|
|
1725
|
+
...b && { slots: b },
|
|
1689
1726
|
...p && { classNames: p }
|
|
1690
1727
|
}
|
|
1691
1728
|
);
|
|
1692
1729
|
// Timeline views
|
|
1693
1730
|
case "timeline-day":
|
|
1694
1731
|
return /* @__PURE__ */ e(
|
|
1695
|
-
|
|
1732
|
+
de,
|
|
1696
1733
|
{
|
|
1697
1734
|
daysToShow: 1,
|
|
1698
|
-
events:
|
|
1699
|
-
users:
|
|
1700
|
-
selectedDate:
|
|
1735
|
+
events: h,
|
|
1736
|
+
users: B,
|
|
1737
|
+
selectedDate: C,
|
|
1701
1738
|
visibleHours: {
|
|
1702
|
-
from:
|
|
1703
|
-
to:
|
|
1739
|
+
from: d.startHour,
|
|
1740
|
+
to: d.endHour
|
|
1704
1741
|
},
|
|
1705
1742
|
onEventClick: N,
|
|
1706
|
-
renderPopover:
|
|
1707
|
-
...
|
|
1743
|
+
renderPopover: I,
|
|
1744
|
+
...b && { slots: b },
|
|
1708
1745
|
...p && { classNames: p }
|
|
1709
1746
|
}
|
|
1710
1747
|
);
|
|
1711
1748
|
case "timeline-3day":
|
|
1712
1749
|
return /* @__PURE__ */ e(
|
|
1713
|
-
|
|
1750
|
+
de,
|
|
1714
1751
|
{
|
|
1715
1752
|
daysToShow: 3,
|
|
1716
|
-
events:
|
|
1717
|
-
users:
|
|
1718
|
-
selectedDate:
|
|
1753
|
+
events: h,
|
|
1754
|
+
users: B,
|
|
1755
|
+
selectedDate: C,
|
|
1719
1756
|
visibleHours: {
|
|
1720
|
-
from:
|
|
1721
|
-
to:
|
|
1757
|
+
from: d.startHour,
|
|
1758
|
+
to: d.endHour
|
|
1722
1759
|
},
|
|
1723
1760
|
onEventClick: N,
|
|
1724
|
-
renderPopover:
|
|
1725
|
-
...
|
|
1761
|
+
renderPopover: I,
|
|
1762
|
+
...b && { slots: b },
|
|
1726
1763
|
...p && { classNames: p }
|
|
1727
1764
|
}
|
|
1728
1765
|
);
|
|
1729
1766
|
case "timeline-week":
|
|
1730
1767
|
return /* @__PURE__ */ e(
|
|
1731
|
-
|
|
1768
|
+
de,
|
|
1732
1769
|
{
|
|
1733
1770
|
daysToShow: 7,
|
|
1734
|
-
events:
|
|
1735
|
-
users:
|
|
1736
|
-
selectedDate:
|
|
1771
|
+
events: h,
|
|
1772
|
+
users: B,
|
|
1773
|
+
selectedDate: C,
|
|
1737
1774
|
visibleHours: {
|
|
1738
|
-
from:
|
|
1739
|
-
to:
|
|
1775
|
+
from: d.startHour,
|
|
1776
|
+
to: d.endHour
|
|
1740
1777
|
},
|
|
1741
1778
|
onEventClick: N,
|
|
1742
|
-
renderPopover:
|
|
1743
|
-
...
|
|
1779
|
+
renderPopover: I,
|
|
1780
|
+
...b && { slots: b },
|
|
1744
1781
|
...p && { classNames: p }
|
|
1745
1782
|
}
|
|
1746
1783
|
);
|
|
@@ -1748,41 +1785,41 @@ function qt({
|
|
|
1748
1785
|
return /* @__PURE__ */ e(
|
|
1749
1786
|
De,
|
|
1750
1787
|
{
|
|
1751
|
-
events:
|
|
1752
|
-
date:
|
|
1753
|
-
badgeVariant:
|
|
1788
|
+
events: h,
|
|
1789
|
+
date: C,
|
|
1790
|
+
badgeVariant: _,
|
|
1754
1791
|
onEventClick: N,
|
|
1755
|
-
onDayClick:
|
|
1756
|
-
...
|
|
1792
|
+
onDayClick: y,
|
|
1793
|
+
...b && { slots: b },
|
|
1757
1794
|
...p && { classNames: p }
|
|
1758
1795
|
}
|
|
1759
1796
|
);
|
|
1760
1797
|
}
|
|
1761
1798
|
}, Y = Ne(null), [K, J] = se(!1);
|
|
1762
|
-
|
|
1763
|
-
|
|
1764
|
-
}),
|
|
1765
|
-
const
|
|
1766
|
-
if (!
|
|
1799
|
+
me(() => {
|
|
1800
|
+
u.current = Y.current;
|
|
1801
|
+
}), me(() => {
|
|
1802
|
+
const h = Y.current;
|
|
1803
|
+
if (!h) return;
|
|
1767
1804
|
const N = () => {
|
|
1768
|
-
const { scrollLeft: G, scrollWidth:
|
|
1769
|
-
J(G + Ke <
|
|
1805
|
+
const { scrollLeft: G, scrollWidth: fe, clientWidth: Ke } = h;
|
|
1806
|
+
J(G + Ke < fe - 4);
|
|
1770
1807
|
};
|
|
1771
|
-
N(),
|
|
1772
|
-
const
|
|
1773
|
-
|
|
1774
|
-
const
|
|
1775
|
-
return
|
|
1776
|
-
|
|
1808
|
+
N(), h.addEventListener("scroll", N, { passive: !0 });
|
|
1809
|
+
const I = new ResizeObserver(N);
|
|
1810
|
+
I.observe(h);
|
|
1811
|
+
const W = new MutationObserver(N);
|
|
1812
|
+
return W.observe(h, { childList: !0, subtree: !0 }), () => {
|
|
1813
|
+
h.removeEventListener("scroll", N), I.disconnect(), W.disconnect();
|
|
1777
1814
|
};
|
|
1778
|
-
}, [
|
|
1815
|
+
}, [v]);
|
|
1779
1816
|
const ie = oe(() => {
|
|
1780
1817
|
Y.current?.scrollBy({ left: 300, behavior: "smooth" });
|
|
1781
1818
|
}, []);
|
|
1782
1819
|
return /* @__PURE__ */ e(
|
|
1783
1820
|
ut,
|
|
1784
1821
|
{
|
|
1785
|
-
mode:
|
|
1822
|
+
mode: w,
|
|
1786
1823
|
onSelect: k,
|
|
1787
1824
|
minDurationMinutes: g,
|
|
1788
1825
|
slotDurationMinutes: R,
|
|
@@ -1790,7 +1827,7 @@ function qt({
|
|
|
1790
1827
|
children: /* @__PURE__ */ n(
|
|
1791
1828
|
"div",
|
|
1792
1829
|
{
|
|
1793
|
-
className:
|
|
1830
|
+
className: m(
|
|
1794
1831
|
"inno-calendar-root flex flex-col h-full p-4",
|
|
1795
1832
|
p?.root,
|
|
1796
1833
|
a
|
|
@@ -1799,18 +1836,18 @@ function qt({
|
|
|
1799
1836
|
i && /* @__PURE__ */ e(
|
|
1800
1837
|
st,
|
|
1801
1838
|
{
|
|
1802
|
-
currentDate:
|
|
1803
|
-
view:
|
|
1839
|
+
currentDate: C,
|
|
1840
|
+
view: v,
|
|
1804
1841
|
events: V,
|
|
1805
1842
|
onViewChange: T,
|
|
1806
|
-
onNavigateToday: () => F(/* @__PURE__ */ new Date(),
|
|
1843
|
+
onNavigateToday: () => F(/* @__PURE__ */ new Date(), v),
|
|
1807
1844
|
onNavigatePrev: () => {
|
|
1808
|
-
const
|
|
1809
|
-
|
|
1845
|
+
const h = new Date(C);
|
|
1846
|
+
v === "day" || v === "timeline-day" || v === "resource-day" ? h.setDate(h.getDate() - 1) : v === "timeline-3day" ? h.setDate(h.getDate() - 3) : v === "week" || v === "timeline-week" || v === "resource-week" ? h.setDate(h.getDate() - 7) : v === "month" ? h.setMonth(h.getMonth() - 1) : v === "year" ? h.setFullYear(h.getFullYear() - 1) : h.setDate(h.getDate() - 7), F(h, v);
|
|
1810
1847
|
},
|
|
1811
1848
|
onNavigateNext: () => {
|
|
1812
|
-
const
|
|
1813
|
-
|
|
1849
|
+
const h = new Date(C);
|
|
1850
|
+
v === "day" || v === "timeline-day" || v === "resource-day" ? h.setDate(h.getDate() + 1) : v === "timeline-3day" ? h.setDate(h.getDate() + 3) : v === "week" || v === "timeline-week" || v === "resource-week" ? h.setDate(h.getDate() + 7) : v === "month" ? h.setMonth(h.getMonth() + 1) : v === "year" ? h.setFullYear(h.getFullYear() + 1) : h.setDate(h.getDate() + 7), F(h, v);
|
|
1814
1851
|
},
|
|
1815
1852
|
availableViews: [
|
|
1816
1853
|
"day",
|
|
@@ -1832,11 +1869,11 @@ function qt({
|
|
|
1832
1869
|
"div",
|
|
1833
1870
|
{
|
|
1834
1871
|
ref: Y,
|
|
1835
|
-
className:
|
|
1872
|
+
className: m(
|
|
1836
1873
|
"h-full border rounded-lg bg-white overflow-x-auto",
|
|
1837
1874
|
p?.viewContainer
|
|
1838
1875
|
),
|
|
1839
|
-
children:
|
|
1876
|
+
children: P()
|
|
1840
1877
|
}
|
|
1841
1878
|
),
|
|
1842
1879
|
x && /* @__PURE__ */ e("div", { className: "inno-calendar-loading-overlay", children: /* @__PURE__ */ e("div", { className: "inno-calendar-spinner" }) }),
|
|
@@ -1886,28 +1923,28 @@ function Jt({
|
|
|
1886
1923
|
initialParticipantIds: f,
|
|
1887
1924
|
initialWorkingHoursView: c,
|
|
1888
1925
|
initialSearchQuery: x,
|
|
1889
|
-
preferencesConfig:
|
|
1926
|
+
preferencesConfig: b,
|
|
1890
1927
|
onEventClick: p,
|
|
1891
1928
|
onSlotClick: M,
|
|
1892
1929
|
onSlotSelect: A,
|
|
1893
1930
|
onAddEvent: z,
|
|
1894
|
-
onEventDrop:
|
|
1931
|
+
onEventDrop: D,
|
|
1895
1932
|
onDateChange: S,
|
|
1896
|
-
onViewChange:
|
|
1897
|
-
className:
|
|
1933
|
+
onViewChange: H,
|
|
1934
|
+
className: v,
|
|
1898
1935
|
showHeader: T = !0,
|
|
1899
|
-
minSelectionMinutes:
|
|
1936
|
+
minSelectionMinutes: C = 30,
|
|
1900
1937
|
showMoreMode: F,
|
|
1901
1938
|
showMoreEventsInPopover: R = !1,
|
|
1902
1939
|
isLoading: V = !1,
|
|
1903
|
-
renderPopover:
|
|
1940
|
+
renderPopover: B,
|
|
1904
1941
|
slots: O,
|
|
1905
|
-
classNames:
|
|
1906
|
-
settingsContent:
|
|
1942
|
+
classNames: j,
|
|
1943
|
+
settingsContent: _,
|
|
1907
1944
|
filterContent: U,
|
|
1908
|
-
headerActions:
|
|
1945
|
+
headerActions: d
|
|
1909
1946
|
}, l) {
|
|
1910
|
-
return /* @__PURE__ */ e(dt, { ...
|
|
1947
|
+
return /* @__PURE__ */ e(dt, { ...D && { onEventDrop: D }, children: /* @__PURE__ */ e(
|
|
1911
1948
|
Xe,
|
|
1912
1949
|
{
|
|
1913
1950
|
initialEvents: t,
|
|
@@ -1920,9 +1957,9 @@ function Jt({
|
|
|
1920
1957
|
...f && { initialParticipantIds: f },
|
|
1921
1958
|
...c && { initialWorkingHoursView: c },
|
|
1922
1959
|
...x && { initialSearchQuery: x },
|
|
1923
|
-
...
|
|
1960
|
+
...b && { preferencesConfig: b },
|
|
1924
1961
|
...S && { onDateChange: S },
|
|
1925
|
-
...
|
|
1962
|
+
...H && { onViewChange: H },
|
|
1926
1963
|
children: /* @__PURE__ */ e(
|
|
1927
1964
|
qt,
|
|
1928
1965
|
{
|
|
@@ -1930,30 +1967,30 @@ function Jt({
|
|
|
1930
1967
|
...M && { onSlotClick: M },
|
|
1931
1968
|
...A && { onSlotSelect: A },
|
|
1932
1969
|
...z && { onAddEvent: z },
|
|
1933
|
-
|
|
1934
|
-
className:
|
|
1970
|
+
...B && { renderPopover: B },
|
|
1971
|
+
className: v,
|
|
1935
1972
|
showHeader: T,
|
|
1936
|
-
minSelectionMinutes:
|
|
1973
|
+
minSelectionMinutes: C,
|
|
1937
1974
|
...F && { showMoreMode: F },
|
|
1938
1975
|
showMoreEventsInPopover: R,
|
|
1939
1976
|
isLoading: V,
|
|
1940
1977
|
...O && { slots: O },
|
|
1941
|
-
...
|
|
1942
|
-
settingsContent:
|
|
1978
|
+
...j && { classNames: j },
|
|
1979
|
+
settingsContent: _,
|
|
1943
1980
|
filterContent: U,
|
|
1944
|
-
headerActions:
|
|
1981
|
+
headerActions: d,
|
|
1945
1982
|
calendarRef: l
|
|
1946
1983
|
}
|
|
1947
1984
|
)
|
|
1948
1985
|
}
|
|
1949
1986
|
) });
|
|
1950
1987
|
}
|
|
1951
|
-
const Gr =
|
|
1988
|
+
const Gr = xe(Jt), re = xe(
|
|
1952
1989
|
({ className: t, children: r, ...o }, s) => /* @__PURE__ */ e(
|
|
1953
1990
|
"select",
|
|
1954
1991
|
{
|
|
1955
1992
|
ref: s,
|
|
1956
|
-
className:
|
|
1993
|
+
className: m(
|
|
1957
1994
|
"flex h-9 w-full rounded-md border border-input bg-background px-3 py-1 text-sm shadow-sm",
|
|
1958
1995
|
"ring-offset-background",
|
|
1959
1996
|
"focus:outline-none focus:ring-1 focus:ring-ring",
|
|
@@ -1967,11 +2004,11 @@ const Gr = ge(Jt), re = ge(
|
|
|
1967
2004
|
)
|
|
1968
2005
|
);
|
|
1969
2006
|
re.displayName = "Select";
|
|
1970
|
-
const X =
|
|
2007
|
+
const X = xe(({ className: t, ...r }, o) => /* @__PURE__ */ e(
|
|
1971
2008
|
"label",
|
|
1972
2009
|
{
|
|
1973
2010
|
ref: o,
|
|
1974
|
-
className:
|
|
2011
|
+
className: m(
|
|
1975
2012
|
"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",
|
|
1976
2013
|
t
|
|
1977
2014
|
),
|
|
@@ -2042,7 +2079,7 @@ function Kr({
|
|
|
2042
2079
|
}, g = (f) => {
|
|
2043
2080
|
o || r(Number(f.target.value));
|
|
2044
2081
|
};
|
|
2045
|
-
return /* @__PURE__ */ n("div", { className:
|
|
2082
|
+
return /* @__PURE__ */ n("div", { className: m("flex flex-col gap-3", s), children: [
|
|
2046
2083
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
2047
2084
|
/* @__PURE__ */ e(X, { className: "text-sm font-semibold", children: i.title }),
|
|
2048
2085
|
o ? /* @__PURE__ */ e(Q, { delayDuration: 100, children: /* @__PURE__ */ n(Z, { children: [
|
|
@@ -2133,7 +2170,7 @@ function qr({
|
|
|
2133
2170
|
}, g = (c) => i.options?.[c] ?? c, f = (c) => {
|
|
2134
2171
|
o || r(c.target.value);
|
|
2135
2172
|
};
|
|
2136
|
-
return /* @__PURE__ */ n("div", { className:
|
|
2173
|
+
return /* @__PURE__ */ n("div", { className: m("flex flex-col gap-3", s), children: [
|
|
2137
2174
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
2138
2175
|
/* @__PURE__ */ e(X, { className: "text-sm font-semibold", children: i.title }),
|
|
2139
2176
|
o ? /* @__PURE__ */ e(Q, { delayDuration: 100, children: /* @__PURE__ */ n(Z, { children: [
|
|
@@ -2221,14 +2258,14 @@ function Jr({
|
|
|
2221
2258
|
...a
|
|
2222
2259
|
}, g = sr(), f = (x) => {
|
|
2223
2260
|
if (o) return;
|
|
2224
|
-
const
|
|
2225
|
-
|
|
2261
|
+
const b = Number(x.target.value);
|
|
2262
|
+
b < t.endHour && r({ ...t, startHour: b });
|
|
2226
2263
|
}, c = (x) => {
|
|
2227
2264
|
if (o) return;
|
|
2228
|
-
const
|
|
2229
|
-
|
|
2265
|
+
const b = Number(x.target.value);
|
|
2266
|
+
b > t.startHour && r({ ...t, endHour: b });
|
|
2230
2267
|
};
|
|
2231
|
-
return /* @__PURE__ */ n("div", { className:
|
|
2268
|
+
return /* @__PURE__ */ n("div", { className: m("flex flex-col gap-3", s), children: [
|
|
2232
2269
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
2233
2270
|
/* @__PURE__ */ e(X, { className: "text-sm font-semibold", children: i.title }),
|
|
2234
2271
|
o ? /* @__PURE__ */ e(Q, { delayDuration: 100, children: /* @__PURE__ */ n(Z, { children: [
|
|
@@ -2393,7 +2430,7 @@ function ur({ dayLabel: t, config: r, onChange: o, disabled: s, hourOptions: a }
|
|
|
2393
2430
|
"aria-label": `Enable ${t}`,
|
|
2394
2431
|
onClick: i,
|
|
2395
2432
|
disabled: s,
|
|
2396
|
-
className:
|
|
2433
|
+
className: m(
|
|
2397
2434
|
"flex size-5 shrink-0 items-center justify-center rounded border transition-colors",
|
|
2398
2435
|
r.enabled ? "border-primary bg-primary text-primary-foreground" : "border-input bg-background",
|
|
2399
2436
|
s && "cursor-not-allowed opacity-50"
|
|
@@ -2401,7 +2438,7 @@ function ur({ dayLabel: t, config: r, onChange: o, disabled: s, hourOptions: a }
|
|
|
2401
2438
|
children: r.enabled && /* @__PURE__ */ e(lr, { className: "size-3" })
|
|
2402
2439
|
}
|
|
2403
2440
|
),
|
|
2404
|
-
/* @__PURE__ */ e("span", { className:
|
|
2441
|
+
/* @__PURE__ */ e("span", { className: m("w-10 text-sm", !r.enabled && "text-muted-foreground"), children: t }),
|
|
2405
2442
|
/* @__PURE__ */ e(
|
|
2406
2443
|
re,
|
|
2407
2444
|
{
|
|
@@ -2441,7 +2478,7 @@ function Xr({
|
|
|
2441
2478
|
}, g = dr(), f = (c, x) => {
|
|
2442
2479
|
o || r({ ...t, [c]: x });
|
|
2443
2480
|
};
|
|
2444
|
-
return /* @__PURE__ */ n("div", { className:
|
|
2481
|
+
return /* @__PURE__ */ n("div", { className: m("flex flex-col gap-3", s), children: [
|
|
2445
2482
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
2446
2483
|
/* @__PURE__ */ e(X, { className: "text-sm font-semibold", children: i.title }),
|
|
2447
2484
|
o ? /* @__PURE__ */ e(Q, { delayDuration: 100, children: /* @__PURE__ */ n(Z, { children: [
|
|
@@ -2546,7 +2583,7 @@ function fr({ src: t, alt: r, fallback: o, className: s }) {
|
|
|
2546
2583
|
return !t || a ? /* @__PURE__ */ e(
|
|
2547
2584
|
"div",
|
|
2548
2585
|
{
|
|
2549
|
-
className:
|
|
2586
|
+
className: m(
|
|
2550
2587
|
"flex items-center justify-center bg-zinc-200 text-zinc-600 font-medium text-sm",
|
|
2551
2588
|
s
|
|
2552
2589
|
),
|
|
@@ -2557,13 +2594,13 @@ function fr({ src: t, alt: r, fallback: o, className: s }) {
|
|
|
2557
2594
|
{
|
|
2558
2595
|
src: t,
|
|
2559
2596
|
alt: r || "",
|
|
2560
|
-
className:
|
|
2597
|
+
className: m("object-cover", s),
|
|
2561
2598
|
onError: () => i(!0)
|
|
2562
2599
|
}
|
|
2563
2600
|
);
|
|
2564
2601
|
}
|
|
2565
2602
|
function Ae({ value: t, onChange: r, placeholder: o, className: s }) {
|
|
2566
|
-
return /* @__PURE__ */ n("div", { className:
|
|
2603
|
+
return /* @__PURE__ */ n("div", { className: m("relative", s), children: [
|
|
2567
2604
|
/* @__PURE__ */ e(hr, { className: "absolute left-3 top-1/2 h-4 w-4 -translate-y-1/2 text-muted-foreground" }),
|
|
2568
2605
|
/* @__PURE__ */ e(
|
|
2569
2606
|
"input",
|
|
@@ -2606,44 +2643,44 @@ function Zr({
|
|
|
2606
2643
|
className: f,
|
|
2607
2644
|
scheduleTypesLoading: c = !1,
|
|
2608
2645
|
usersLoading: x = !1,
|
|
2609
|
-
labels:
|
|
2646
|
+
labels: b,
|
|
2610
2647
|
getScheduleTypeName: p
|
|
2611
2648
|
}) {
|
|
2612
|
-
const M = { ...gr, ...
|
|
2613
|
-
|
|
2614
|
-
p?.(
|
|
2615
|
-
]) : t, [t, A, p]),
|
|
2616
|
-
const
|
|
2617
|
-
s(
|
|
2649
|
+
const M = { ...gr, ...b }, [A, z] = se(""), [D, S] = se(""), H = $(() => A.trim() ? Fe(t, A, (d) => [
|
|
2650
|
+
d.name,
|
|
2651
|
+
p?.(d) || d.name
|
|
2652
|
+
]) : t, [t, A, p]), v = $(() => D.trim() ? Fe(r, D, (d) => [d.name, d.email || ""]) : r, [r, D]), T = H.length > 0 && H.every((d) => o.includes(d.id)), C = v.length > 0 && v.every((d) => a.includes(d.id)), F = o.length + a.length, R = (d, l) => {
|
|
2653
|
+
const u = l ? [...o, d] : o.filter((w) => w !== d);
|
|
2654
|
+
s(u);
|
|
2618
2655
|
}, V = () => {
|
|
2619
2656
|
if (T) {
|
|
2620
|
-
const
|
|
2621
|
-
s(o.filter((l) => !
|
|
2657
|
+
const d = new Set(H.map((l) => l.id));
|
|
2658
|
+
s(o.filter((l) => !d.has(l)));
|
|
2622
2659
|
} else {
|
|
2623
|
-
const
|
|
2660
|
+
const d = /* @__PURE__ */ new Set([
|
|
2624
2661
|
...o,
|
|
2625
|
-
...
|
|
2662
|
+
...H.map((l) => l.id)
|
|
2626
2663
|
]);
|
|
2627
|
-
s(Array.from(
|
|
2664
|
+
s(Array.from(d));
|
|
2628
2665
|
}
|
|
2629
|
-
},
|
|
2630
|
-
const
|
|
2631
|
-
i(
|
|
2666
|
+
}, B = (d, l) => {
|
|
2667
|
+
const u = l ? [...a, d] : a.filter((w) => w !== d);
|
|
2668
|
+
i(u);
|
|
2632
2669
|
}, O = () => {
|
|
2633
|
-
if (
|
|
2634
|
-
const
|
|
2635
|
-
i(a.filter((l) => !
|
|
2670
|
+
if (C) {
|
|
2671
|
+
const d = new Set(v.map((l) => l.id));
|
|
2672
|
+
i(a.filter((l) => !d.has(l)));
|
|
2636
2673
|
} else {
|
|
2637
|
-
const
|
|
2638
|
-
i(Array.from(
|
|
2674
|
+
const d = /* @__PURE__ */ new Set([...a, ...v.map((l) => l.id)]);
|
|
2675
|
+
i(Array.from(d));
|
|
2639
2676
|
}
|
|
2640
|
-
},
|
|
2677
|
+
}, j = () => {
|
|
2641
2678
|
s([]), i([]), g?.();
|
|
2642
|
-
},
|
|
2679
|
+
}, _ = (d) => p ? p(d) : d.name, U = (d) => d.colorHex || d.color || "#069AD7";
|
|
2643
2680
|
return /* @__PURE__ */ n(
|
|
2644
2681
|
"div",
|
|
2645
2682
|
{
|
|
2646
|
-
className:
|
|
2683
|
+
className: m(
|
|
2647
2684
|
"flex min-w-72 max-w-72 flex-col rounded-lg border bg-white shadow-sm",
|
|
2648
2685
|
f
|
|
2649
2686
|
),
|
|
@@ -2657,7 +2694,7 @@ function Zr({
|
|
|
2657
2694
|
"button",
|
|
2658
2695
|
{
|
|
2659
2696
|
type: "button",
|
|
2660
|
-
onClick:
|
|
2697
|
+
onClick: j,
|
|
2661
2698
|
className: "flex h-auto items-center gap-1 rounded-md px-2 py-1 text-xs font-medium text-destructive transition-colors hover:bg-destructive/10",
|
|
2662
2699
|
children: [
|
|
2663
2700
|
/* @__PURE__ */ e(mr, { className: "h-3.5 w-3.5" }),
|
|
@@ -2691,7 +2728,7 @@ function Zr({
|
|
|
2691
2728
|
/* @__PURE__ */ n("div", { className: "flex max-h-[220px] flex-col gap-2 overflow-y-auto px-4 pb-2 scrollbar-thin", children: [
|
|
2692
2729
|
c ? (
|
|
2693
2730
|
// Loading skeletons
|
|
2694
|
-
Array.from({ length: 4 }).map((
|
|
2731
|
+
Array.from({ length: 4 }).map((d, l) => /* @__PURE__ */ n(
|
|
2695
2732
|
"div",
|
|
2696
2733
|
{
|
|
2697
2734
|
className: "flex animate-pulse items-center gap-2 rounded-md border border-border/60 bg-muted/40 p-2",
|
|
@@ -2702,14 +2739,14 @@ function Zr({
|
|
|
2702
2739
|
},
|
|
2703
2740
|
`skeleton-${l}`
|
|
2704
2741
|
))
|
|
2705
|
-
) :
|
|
2706
|
-
const l = o.includes(
|
|
2742
|
+
) : H.map((d) => {
|
|
2743
|
+
const l = o.includes(d.id), u = U(d);
|
|
2707
2744
|
return /* @__PURE__ */ n(
|
|
2708
2745
|
ye,
|
|
2709
2746
|
{
|
|
2710
2747
|
checked: l,
|
|
2711
|
-
onCheckedChange: (
|
|
2712
|
-
className:
|
|
2748
|
+
onCheckedChange: (w) => R(d.id, w),
|
|
2749
|
+
className: m(
|
|
2713
2750
|
"relative flex w-full cursor-pointer items-center justify-between gap-3 rounded-md border border-border bg-white px-3 py-2 transition-colors hover:border-primary/50",
|
|
2714
2751
|
l && "border-primary bg-primary/5"
|
|
2715
2752
|
),
|
|
@@ -2718,31 +2755,31 @@ function Zr({
|
|
|
2718
2755
|
/* @__PURE__ */ e(
|
|
2719
2756
|
"span",
|
|
2720
2757
|
{
|
|
2721
|
-
className:
|
|
2758
|
+
className: m(
|
|
2722
2759
|
"flex h-4 w-4 items-center justify-center rounded border border-border text-xs transition-colors",
|
|
2723
2760
|
l && "border-primary bg-primary text-primary-foreground"
|
|
2724
2761
|
),
|
|
2725
2762
|
children: l && /* @__PURE__ */ e(be, { className: "h-3 w-3" })
|
|
2726
2763
|
}
|
|
2727
2764
|
),
|
|
2728
|
-
/* @__PURE__ */ e("span", { className: "text-sm font-medium text-foreground", children:
|
|
2765
|
+
/* @__PURE__ */ e("span", { className: "text-sm font-medium text-foreground", children: _(d) })
|
|
2729
2766
|
] }),
|
|
2730
2767
|
/* @__PURE__ */ e(
|
|
2731
2768
|
"div",
|
|
2732
2769
|
{
|
|
2733
2770
|
className: "h-4 w-4 rounded-full border",
|
|
2734
2771
|
style: {
|
|
2735
|
-
backgroundColor:
|
|
2736
|
-
borderColor:
|
|
2772
|
+
backgroundColor: u,
|
|
2773
|
+
borderColor: u
|
|
2737
2774
|
}
|
|
2738
2775
|
}
|
|
2739
2776
|
)
|
|
2740
2777
|
]
|
|
2741
2778
|
},
|
|
2742
|
-
|
|
2779
|
+
d.id
|
|
2743
2780
|
);
|
|
2744
2781
|
}),
|
|
2745
|
-
!c &&
|
|
2782
|
+
!c && H.length === 0 && /* @__PURE__ */ e("p", { className: "px-2 py-1 text-xs text-muted-foreground", children: M.noScheduleTypes })
|
|
2746
2783
|
] })
|
|
2747
2784
|
] }),
|
|
2748
2785
|
/* @__PURE__ */ e("div", { className: "h-px w-full bg-border/60" }),
|
|
@@ -2752,20 +2789,20 @@ function Zr({
|
|
|
2752
2789
|
/* @__PURE__ */ e(
|
|
2753
2790
|
ye,
|
|
2754
2791
|
{
|
|
2755
|
-
checked:
|
|
2792
|
+
checked: C,
|
|
2756
2793
|
onCheckedChange: () => O(),
|
|
2757
|
-
className:
|
|
2794
|
+
className: m(
|
|
2758
2795
|
"flex h-5 w-5 items-center justify-center rounded border border-border bg-white transition-colors hover:border-primary/50",
|
|
2759
|
-
|
|
2796
|
+
C && "border-primary bg-primary text-primary-foreground"
|
|
2760
2797
|
),
|
|
2761
|
-
children:
|
|
2798
|
+
children: C && /* @__PURE__ */ e(be, { className: "h-3.5 w-3.5" })
|
|
2762
2799
|
}
|
|
2763
2800
|
)
|
|
2764
2801
|
] }),
|
|
2765
2802
|
/* @__PURE__ */ e("div", { className: "px-4 pb-3", children: /* @__PURE__ */ e(
|
|
2766
2803
|
Ae,
|
|
2767
2804
|
{
|
|
2768
|
-
value:
|
|
2805
|
+
value: D,
|
|
2769
2806
|
onChange: S,
|
|
2770
2807
|
placeholder: M.searchParticipants
|
|
2771
2808
|
}
|
|
@@ -2773,7 +2810,7 @@ function Zr({
|
|
|
2773
2810
|
/* @__PURE__ */ n("div", { className: "flex max-h-[400px] flex-col gap-2 overflow-y-auto px-4 pb-4 scrollbar-thin", children: [
|
|
2774
2811
|
x ? (
|
|
2775
2812
|
// Loading skeletons
|
|
2776
|
-
Array.from({ length: 4 }).map((
|
|
2813
|
+
Array.from({ length: 4 }).map((d, l) => /* @__PURE__ */ n(
|
|
2777
2814
|
"div",
|
|
2778
2815
|
{
|
|
2779
2816
|
className: "flex animate-pulse items-center gap-3 rounded-md border border-border/60 bg-muted/40 p-3",
|
|
@@ -2788,14 +2825,14 @@ function Zr({
|
|
|
2788
2825
|
},
|
|
2789
2826
|
`p-skeleton-${l}`
|
|
2790
2827
|
))
|
|
2791
|
-
) :
|
|
2792
|
-
const l = a.includes(
|
|
2828
|
+
) : v.map((d) => {
|
|
2829
|
+
const l = a.includes(d.id);
|
|
2793
2830
|
return /* @__PURE__ */ n(
|
|
2794
2831
|
ye,
|
|
2795
2832
|
{
|
|
2796
2833
|
checked: l,
|
|
2797
|
-
onCheckedChange: (
|
|
2798
|
-
className:
|
|
2834
|
+
onCheckedChange: (u) => B(d.id, u),
|
|
2835
|
+
className: m(
|
|
2799
2836
|
"relative flex w-full cursor-pointer items-start gap-2 rounded-lg border border-border bg-white p-2 transition-colors hover:border-primary/50",
|
|
2800
2837
|
l && "border-primary bg-zinc-50"
|
|
2801
2838
|
),
|
|
@@ -2803,7 +2840,7 @@ function Zr({
|
|
|
2803
2840
|
/* @__PURE__ */ e(
|
|
2804
2841
|
"span",
|
|
2805
2842
|
{
|
|
2806
|
-
className:
|
|
2843
|
+
className: m(
|
|
2807
2844
|
"flex h-4 w-4 flex-shrink-0 items-center justify-center rounded border border-border transition-colors",
|
|
2808
2845
|
l && "border-primary bg-primary text-primary-foreground"
|
|
2809
2846
|
),
|
|
@@ -2814,30 +2851,30 @@ function Zr({
|
|
|
2814
2851
|
/* @__PURE__ */ e(
|
|
2815
2852
|
fr,
|
|
2816
2853
|
{
|
|
2817
|
-
src:
|
|
2818
|
-
alt:
|
|
2819
|
-
fallback:
|
|
2854
|
+
src: d.avatar ?? null,
|
|
2855
|
+
alt: d.name,
|
|
2856
|
+
fallback: d.name?.[0]?.toUpperCase() ?? "?",
|
|
2820
2857
|
className: "h-10 w-10 rounded-lg"
|
|
2821
2858
|
}
|
|
2822
2859
|
),
|
|
2823
2860
|
/* @__PURE__ */ n("div", { className: "flex max-w-[140px] flex-col gap-0.5 overflow-hidden", children: [
|
|
2824
|
-
/* @__PURE__ */ e("span", { className: "line-clamp-1 text-sm font-medium text-foreground", children:
|
|
2861
|
+
/* @__PURE__ */ e("span", { className: "line-clamp-1 text-sm font-medium text-foreground", children: d.name }),
|
|
2825
2862
|
/* @__PURE__ */ e(
|
|
2826
2863
|
"span",
|
|
2827
2864
|
{
|
|
2828
2865
|
className: "truncate text-[11px] text-muted-foreground",
|
|
2829
|
-
title:
|
|
2830
|
-
children:
|
|
2866
|
+
title: d.email,
|
|
2867
|
+
children: d.email
|
|
2831
2868
|
}
|
|
2832
2869
|
)
|
|
2833
2870
|
] })
|
|
2834
2871
|
] })
|
|
2835
2872
|
]
|
|
2836
2873
|
},
|
|
2837
|
-
|
|
2874
|
+
d.id
|
|
2838
2875
|
);
|
|
2839
2876
|
}),
|
|
2840
|
-
!x &&
|
|
2877
|
+
!x && v.length === 0 && /* @__PURE__ */ e("p", { className: "px-4 text-xs text-muted-foreground", children: M.noParticipants })
|
|
2841
2878
|
] })
|
|
2842
2879
|
] })
|
|
2843
2880
|
]
|
|
@@ -2876,7 +2913,7 @@ function en({
|
|
|
2876
2913
|
const g = (c) => {
|
|
2877
2914
|
o(c.target.value);
|
|
2878
2915
|
}, f = t.find((c) => String(c.id) === r);
|
|
2879
|
-
return /* @__PURE__ */ n("div", { className:
|
|
2916
|
+
return /* @__PURE__ */ n("div", { className: m("flex flex-col gap-1", a), children: [
|
|
2880
2917
|
i && /* @__PURE__ */ e(X, { className: "text-xs text-muted-foreground", children: i }),
|
|
2881
2918
|
/* @__PURE__ */ n("div", { className: "relative", children: [
|
|
2882
2919
|
f ? /* @__PURE__ */ e(
|
|
@@ -2935,7 +2972,7 @@ function tn({
|
|
|
2935
2972
|
const g = (f) => {
|
|
2936
2973
|
o(f.target.value);
|
|
2937
2974
|
};
|
|
2938
|
-
return /* @__PURE__ */ n("div", { className:
|
|
2975
|
+
return /* @__PURE__ */ n("div", { className: m("flex flex-col gap-1", a), children: [
|
|
2939
2976
|
i && /* @__PURE__ */ e(X, { className: "text-xs text-muted-foreground", children: i }),
|
|
2940
2977
|
/* @__PURE__ */ n("div", { className: "relative", children: [
|
|
2941
2978
|
/* @__PURE__ */ e(pr, { className: "pointer-events-none absolute left-2.5 top-1/2 size-4 -translate-y-1/2 text-muted-foreground" }),
|
|
@@ -3094,11 +3131,11 @@ function Mr(t, r) {
|
|
|
3094
3131
|
}).sort((s, a) => s.date.getTime() - a.date.getTime());
|
|
3095
3132
|
}
|
|
3096
3133
|
function Sr(t) {
|
|
3097
|
-
const r =
|
|
3134
|
+
const r = pe(/* @__PURE__ */ new Date()), o = Ve(/* @__PURE__ */ new Date());
|
|
3098
3135
|
return t.filter((s) => s.startDate >= r && s.startDate <= o).length;
|
|
3099
3136
|
}
|
|
3100
3137
|
function ke({ className: t }) {
|
|
3101
|
-
return /* @__PURE__ */ e("div", { className:
|
|
3138
|
+
return /* @__PURE__ */ e("div", { className: m("animate-pulse rounded-md bg-muted", t) });
|
|
3102
3139
|
}
|
|
3103
3140
|
function Er({ event: t, onClick: r }) {
|
|
3104
3141
|
return /* @__PURE__ */ n(
|
|
@@ -3106,7 +3143,7 @@ function Er({ event: t, onClick: r }) {
|
|
|
3106
3143
|
{
|
|
3107
3144
|
type: "button",
|
|
3108
3145
|
onClick: () => r?.(t),
|
|
3109
|
-
className:
|
|
3146
|
+
className: m(
|
|
3110
3147
|
"w-full text-left rounded-lg transition-colors",
|
|
3111
3148
|
"hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
3112
3149
|
"flex items-start gap-3 p-2"
|
|
@@ -3131,7 +3168,7 @@ function Er({ event: t, onClick: r }) {
|
|
|
3131
3168
|
function zr({ group: t, onEventClick: r }) {
|
|
3132
3169
|
return /* @__PURE__ */ n("div", { className: "space-y-1", children: [
|
|
3133
3170
|
/* @__PURE__ */ n("div", { className: "flex items-center justify-between px-2 py-1.5", children: [
|
|
3134
|
-
/* @__PURE__ */ e("h3", { className:
|
|
3171
|
+
/* @__PURE__ */ e("h3", { className: m("text-xs font-semibold", q(t.date) && "text-primary"), children: Dr(t.date) }),
|
|
3135
3172
|
t.hasMore && /* @__PURE__ */ n("span", { className: "text-[10px] text-muted-foreground", children: [
|
|
3136
3173
|
"+",
|
|
3137
3174
|
t.events.length,
|
|
@@ -3150,22 +3187,22 @@ function rn({
|
|
|
3150
3187
|
onEventClick: i,
|
|
3151
3188
|
onNavigateToAgenda: g
|
|
3152
3189
|
}) {
|
|
3153
|
-
const [f, c] = se(!1), x =
|
|
3154
|
-
const z =
|
|
3155
|
-
return t.filter((S) => S.endDate >= z && S.startDate <
|
|
3156
|
-
}, [t, s]),
|
|
3190
|
+
const [f, c] = se(!1), x = $(() => {
|
|
3191
|
+
const z = pe(/* @__PURE__ */ new Date()), D = Ue(z, s);
|
|
3192
|
+
return t.filter((S) => S.endDate >= z && S.startDate < D);
|
|
3193
|
+
}, [t, s]), b = $(
|
|
3157
3194
|
() => Mr(x, a),
|
|
3158
3195
|
[x, a]
|
|
3159
|
-
), p =
|
|
3196
|
+
), p = $(() => Sr(t), [t]), M = (z) => {
|
|
3160
3197
|
c(!1), i?.(z);
|
|
3161
3198
|
}, A = () => {
|
|
3162
3199
|
c(!1), g?.();
|
|
3163
3200
|
};
|
|
3164
|
-
return /* @__PURE__ */ n(
|
|
3201
|
+
return /* @__PURE__ */ n(Pe, { open: f, onOpenChange: c, children: [
|
|
3165
3202
|
/* @__PURE__ */ n(
|
|
3166
|
-
|
|
3203
|
+
_e,
|
|
3167
3204
|
{
|
|
3168
|
-
className:
|
|
3205
|
+
className: m(
|
|
3169
3206
|
"relative rounded-xl hover:text-zinc-700 hover:!bg-zinc-300 !bg-zinc-200 text-zinc-600 shadow-none !px-2.5 p-2 max-h-10",
|
|
3170
3207
|
o
|
|
3171
3208
|
),
|
|
@@ -3201,13 +3238,13 @@ function rn({
|
|
|
3201
3238
|
}
|
|
3202
3239
|
)
|
|
3203
3240
|
] }),
|
|
3204
|
-
/* @__PURE__ */ e("div", { className: "max-h-80 overflow-y-auto p-2", children: r ? /* @__PURE__ */ e("div", { className: "space-y-2 p-2", children: Array.from({ length: 3 }).map((z,
|
|
3241
|
+
/* @__PURE__ */ e("div", { className: "max-h-80 overflow-y-auto p-2", children: r ? /* @__PURE__ */ e("div", { className: "space-y-2 p-2", children: Array.from({ length: 3 }).map((z, D) => /* @__PURE__ */ n("div", { className: "flex space-x-3", children: [
|
|
3205
3242
|
/* @__PURE__ */ e(ke, { className: "h-2 w-2 rounded-full mt-2" }),
|
|
3206
3243
|
/* @__PURE__ */ n("div", { className: "flex-1 space-y-2", children: [
|
|
3207
3244
|
/* @__PURE__ */ e(ke, { className: "h-4 w-full" }),
|
|
3208
3245
|
/* @__PURE__ */ e(ke, { className: "h-3 w-3/4" })
|
|
3209
3246
|
] })
|
|
3210
|
-
] },
|
|
3247
|
+
] }, D)) }) : b.length === 0 ? /* @__PURE__ */ n("div", { className: "flex flex-col items-center justify-center py-8 text-center", children: [
|
|
3211
3248
|
/* @__PURE__ */ e(wr, { className: "mb-2 h-8 w-8 text-muted-foreground/50" }),
|
|
3212
3249
|
/* @__PURE__ */ e("p", { className: "text-sm text-muted-foreground", children: "No upcoming events" }),
|
|
3213
3250
|
/* @__PURE__ */ n("p", { className: "text-xs text-muted-foreground/70", children: [
|
|
@@ -3215,7 +3252,7 @@ function rn({
|
|
|
3215
3252
|
s,
|
|
3216
3253
|
" days"
|
|
3217
3254
|
] })
|
|
3218
|
-
] }) : /* @__PURE__ */ e("div", { className: "space-y-3 divide-y", children:
|
|
3255
|
+
] }) : /* @__PURE__ */ e("div", { className: "space-y-3 divide-y", children: b.map((z) => /* @__PURE__ */ e(
|
|
3219
3256
|
zr,
|
|
3220
3257
|
{
|
|
3221
3258
|
group: z,
|
|
@@ -3226,7 +3263,7 @@ function rn({
|
|
|
3226
3263
|
] })
|
|
3227
3264
|
] });
|
|
3228
3265
|
}
|
|
3229
|
-
function
|
|
3266
|
+
function Hr({ className: t }) {
|
|
3230
3267
|
return /* @__PURE__ */ n(
|
|
3231
3268
|
"svg",
|
|
3232
3269
|
{
|
|
@@ -3269,7 +3306,7 @@ function Ge({ className: t }) {
|
|
|
3269
3306
|
}
|
|
3270
3307
|
);
|
|
3271
3308
|
}
|
|
3272
|
-
function
|
|
3309
|
+
function Lr(t) {
|
|
3273
3310
|
const r = /* @__PURE__ */ new Date();
|
|
3274
3311
|
return r.setDate(r.getDate() + 1), t.getFullYear() === r.getFullYear() && t.getMonth() === r.getMonth() && t.getDate() === r.getDate();
|
|
3275
3312
|
}
|
|
@@ -3289,7 +3326,7 @@ function Ir(t) {
|
|
|
3289
3326
|
return `${r} - ${o}`;
|
|
3290
3327
|
}
|
|
3291
3328
|
function jr(t) {
|
|
3292
|
-
return q(t) ? "Today" :
|
|
3329
|
+
return q(t) ? "Today" : Lr(t) ? "Tomorrow" : Tr(t);
|
|
3293
3330
|
}
|
|
3294
3331
|
function Wr(t, r) {
|
|
3295
3332
|
const o = /* @__PURE__ */ new Map();
|
|
@@ -3315,7 +3352,7 @@ function Ar({ event: t, onClick: r, compact: o }) {
|
|
|
3315
3352
|
{
|
|
3316
3353
|
type: "button",
|
|
3317
3354
|
onClick: () => r?.(t),
|
|
3318
|
-
className:
|
|
3355
|
+
className: m(
|
|
3319
3356
|
"w-full text-left rounded-lg transition-colors",
|
|
3320
3357
|
"hover:bg-accent focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
3321
3358
|
"flex items-start gap-3",
|
|
@@ -3325,18 +3362,18 @@ function Ar({ event: t, onClick: r, compact: o }) {
|
|
|
3325
3362
|
/* @__PURE__ */ e(
|
|
3326
3363
|
"div",
|
|
3327
3364
|
{
|
|
3328
|
-
className:
|
|
3365
|
+
className: m("shrink-0 rounded-full mt-1", o ? "size-2" : "size-2.5"),
|
|
3329
3366
|
style: { backgroundColor: t.color ?? "#3b82f6" }
|
|
3330
3367
|
}
|
|
3331
3368
|
),
|
|
3332
3369
|
/* @__PURE__ */ n("div", { className: "min-w-0 flex-1", children: [
|
|
3333
|
-
/* @__PURE__ */ e("p", { className:
|
|
3334
|
-
/* @__PURE__ */ e("p", { className:
|
|
3370
|
+
/* @__PURE__ */ e("p", { className: m("font-medium truncate", o ? "text-xs" : "text-sm"), children: t.title }),
|
|
3371
|
+
/* @__PURE__ */ e("p", { className: m("text-muted-foreground truncate", o ? "text-[10px]" : "text-xs"), children: Ir(t) })
|
|
3335
3372
|
] }),
|
|
3336
3373
|
r && /* @__PURE__ */ e(
|
|
3337
3374
|
Ge,
|
|
3338
3375
|
{
|
|
3339
|
-
className:
|
|
3376
|
+
className: m("shrink-0 text-muted-foreground/50", o ? "size-3" : "size-4")
|
|
3340
3377
|
}
|
|
3341
3378
|
)
|
|
3342
3379
|
]
|
|
@@ -3350,11 +3387,11 @@ function Fr({
|
|
|
3350
3387
|
compact: s
|
|
3351
3388
|
}) {
|
|
3352
3389
|
return /* @__PURE__ */ n("div", { className: "space-y-1", children: [
|
|
3353
|
-
/* @__PURE__ */ n("div", { className:
|
|
3390
|
+
/* @__PURE__ */ n("div", { className: m("flex items-center justify-between px-2", s ? "py-1" : "py-1.5"), children: [
|
|
3354
3391
|
/* @__PURE__ */ e(
|
|
3355
3392
|
"h3",
|
|
3356
3393
|
{
|
|
3357
|
-
className:
|
|
3394
|
+
className: m(
|
|
3358
3395
|
"font-semibold",
|
|
3359
3396
|
s ? "text-xs" : "text-sm",
|
|
3360
3397
|
q(t.date) && "text-primary"
|
|
@@ -3367,7 +3404,7 @@ function Fr({
|
|
|
3367
3404
|
{
|
|
3368
3405
|
type: "button",
|
|
3369
3406
|
onClick: () => o(t.date),
|
|
3370
|
-
className:
|
|
3407
|
+
className: m("text-primary hover:underline", s ? "text-[10px]" : "text-xs"),
|
|
3371
3408
|
children: "+more"
|
|
3372
3409
|
}
|
|
3373
3410
|
)
|
|
@@ -3387,57 +3424,57 @@ function nn({
|
|
|
3387
3424
|
showHeader: c = !0,
|
|
3388
3425
|
compact: x = !1
|
|
3389
3426
|
}) {
|
|
3390
|
-
const
|
|
3391
|
-
const
|
|
3392
|
-
return
|
|
3393
|
-
}, [A, r, M]),
|
|
3427
|
+
const b = Oe(), p = b?.filteredEvents, M = b?.currentDate ?? /* @__PURE__ */ new Date(), A = t ?? p ?? [], z = $(() => {
|
|
3428
|
+
const H = pe(M), v = new Date(H);
|
|
3429
|
+
return v.setDate(v.getDate() + r), A.filter((T) => T.endDate >= H && T.startDate < v);
|
|
3430
|
+
}, [A, r, M]), D = $(
|
|
3394
3431
|
() => Wr(z, o),
|
|
3395
3432
|
[z, o]
|
|
3396
3433
|
), S = z.length;
|
|
3397
|
-
return
|
|
3434
|
+
return D.length === 0 ? /* @__PURE__ */ n("div", { className: m("rounded-lg border bg-card", i), children: [
|
|
3398
3435
|
c && /* @__PURE__ */ e(
|
|
3399
3436
|
"div",
|
|
3400
3437
|
{
|
|
3401
|
-
className:
|
|
3438
|
+
className: m(
|
|
3402
3439
|
"border-b px-4 flex items-center justify-between",
|
|
3403
3440
|
x ? "py-2" : "py-3"
|
|
3404
3441
|
),
|
|
3405
|
-
children: /* @__PURE__ */ e("h2", { className:
|
|
3442
|
+
children: /* @__PURE__ */ e("h2", { className: m("font-semibold", x ? "text-sm" : "text-base"), children: f })
|
|
3406
3443
|
}
|
|
3407
3444
|
),
|
|
3408
3445
|
/* @__PURE__ */ e(
|
|
3409
3446
|
"div",
|
|
3410
3447
|
{
|
|
3411
|
-
className:
|
|
3448
|
+
className: m(
|
|
3412
3449
|
"flex flex-col items-center justify-center text-center",
|
|
3413
3450
|
x ? "py-6 px-4" : "py-10 px-6"
|
|
3414
3451
|
),
|
|
3415
3452
|
children: g ?? /* @__PURE__ */ n(ne, { children: [
|
|
3416
3453
|
/* @__PURE__ */ e(
|
|
3417
|
-
|
|
3454
|
+
Hr,
|
|
3418
3455
|
{
|
|
3419
|
-
className:
|
|
3456
|
+
className: m("text-muted-foreground/50 mb-2", x ? "size-8" : "size-10")
|
|
3420
3457
|
}
|
|
3421
3458
|
),
|
|
3422
|
-
/* @__PURE__ */ e("p", { className:
|
|
3459
|
+
/* @__PURE__ */ e("p", { className: m("text-muted-foreground", x ? "text-xs" : "text-sm"), children: "No upcoming events" })
|
|
3423
3460
|
] })
|
|
3424
3461
|
}
|
|
3425
3462
|
)
|
|
3426
|
-
] }) : /* @__PURE__ */ n("div", { className:
|
|
3463
|
+
] }) : /* @__PURE__ */ n("div", { className: m("rounded-lg border bg-card overflow-hidden", i), children: [
|
|
3427
3464
|
c && /* @__PURE__ */ n(
|
|
3428
3465
|
"div",
|
|
3429
3466
|
{
|
|
3430
|
-
className:
|
|
3467
|
+
className: m(
|
|
3431
3468
|
"border-b px-4 flex items-center justify-between",
|
|
3432
3469
|
x ? "py-2" : "py-3"
|
|
3433
3470
|
),
|
|
3434
3471
|
children: [
|
|
3435
3472
|
/* @__PURE__ */ n("div", { className: "flex items-center gap-2", children: [
|
|
3436
|
-
/* @__PURE__ */ e("h2", { className:
|
|
3473
|
+
/* @__PURE__ */ e("h2", { className: m("font-semibold", x ? "text-sm" : "text-base"), children: f }),
|
|
3437
3474
|
/* @__PURE__ */ e(
|
|
3438
3475
|
"span",
|
|
3439
3476
|
{
|
|
3440
|
-
className:
|
|
3477
|
+
className: m(
|
|
3441
3478
|
"text-muted-foreground bg-muted rounded-full px-2",
|
|
3442
3479
|
x ? "text-[10px] py-0" : "text-xs py-0.5"
|
|
3443
3480
|
),
|
|
@@ -3450,7 +3487,7 @@ function nn({
|
|
|
3450
3487
|
{
|
|
3451
3488
|
type: "button",
|
|
3452
3489
|
onClick: () => a(),
|
|
3453
|
-
className:
|
|
3490
|
+
className: m(
|
|
3454
3491
|
"text-primary hover:underline flex items-center gap-0.5",
|
|
3455
3492
|
x ? "text-xs" : "text-sm"
|
|
3456
3493
|
),
|
|
@@ -3466,19 +3503,19 @@ function nn({
|
|
|
3466
3503
|
/* @__PURE__ */ e(
|
|
3467
3504
|
"div",
|
|
3468
3505
|
{
|
|
3469
|
-
className:
|
|
3506
|
+
className: m(
|
|
3470
3507
|
"divide-y overflow-auto",
|
|
3471
3508
|
x ? "p-2 max-h-[280px]" : "p-3 max-h-[400px]"
|
|
3472
3509
|
),
|
|
3473
|
-
children:
|
|
3510
|
+
children: D.map((H) => /* @__PURE__ */ e(
|
|
3474
3511
|
Fr,
|
|
3475
3512
|
{
|
|
3476
|
-
group:
|
|
3513
|
+
group: H,
|
|
3477
3514
|
onEventClick: s,
|
|
3478
|
-
onViewMore: a ? (
|
|
3515
|
+
onViewMore: a ? (v) => a(v) : void 0,
|
|
3479
3516
|
compact: x
|
|
3480
3517
|
},
|
|
3481
|
-
|
|
3518
|
+
H.dateKey
|
|
3482
3519
|
))
|
|
3483
3520
|
}
|
|
3484
3521
|
)
|
|
@@ -3492,7 +3529,7 @@ export {
|
|
|
3492
3529
|
Yr as E,
|
|
3493
3530
|
Gr as I,
|
|
3494
3531
|
en as S,
|
|
3495
|
-
|
|
3532
|
+
de as T,
|
|
3496
3533
|
tn as U,
|
|
3497
3534
|
Jr as V,
|
|
3498
3535
|
Xr as W,
|
|
@@ -3501,4 +3538,4 @@ export {
|
|
|
3501
3538
|
Zr as b,
|
|
3502
3539
|
Kr as c
|
|
3503
3540
|
};
|
|
3504
|
-
//# sourceMappingURL=agenda-widget-
|
|
3541
|
+
//# sourceMappingURL=agenda-widget-55kGr5r1.js.map
|