@innosolutions/inno-calendar 1.0.59 → 1.0.61
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/AGENT.md +1783 -1721
- package/README.md +279 -235
- package/dist/agenda-widget-D6E-NQK-.cjs +2 -0
- package/dist/agenda-widget-D6E-NQK-.cjs.map +1 -0
- package/dist/{agenda-widget-wrZfO67A.js → agenda-widget-DVj4CEZE.js} +1297 -1279
- package/dist/agenda-widget-DVj4CEZE.js.map +1 -0
- package/dist/components/event/event-card.d.ts.map +1 -1
- package/dist/components/index.cjs +1 -1
- package/dist/components/index.mjs +2 -2
- package/dist/components/primitives/scroll-navigator.d.ts +3 -1
- package/dist/components/primitives/scroll-navigator.d.ts.map +1 -1
- package/dist/components/views/timeline-view.d.ts +1 -1
- package/dist/components/views/timeline-view.d.ts.map +1 -1
- package/dist/core/context/inno-calendar-provider.d.ts.map +1 -1
- package/dist/core/context/slot-selection-context.d.ts +2 -0
- package/dist/core/context/slot-selection-context.d.ts.map +1 -1
- package/dist/core/index.cjs +1 -1
- package/dist/core/index.mjs +115 -114
- package/dist/core/types.d.ts +6 -18
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/utils/event-utils.d.ts.map +1 -1
- package/dist/core/utils/index.d.ts +1 -0
- package/dist/core/utils/index.d.ts.map +1 -1
- package/dist/core/utils/react-node-utils.d.ts +14 -0
- package/dist/core/utils/react-node-utils.d.ts.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +207 -206
- package/dist/position-utils-BQpbtF6N.cjs +2 -0
- package/dist/position-utils-BQpbtF6N.cjs.map +1 -0
- package/dist/position-utils-DMVQFywD.js +936 -0
- package/dist/position-utils-DMVQFywD.js.map +1 -0
- package/dist/presets/index.cjs +1 -1
- package/dist/presets/index.mjs +1 -1
- package/dist/slot-selection-context-CRstOosL.js +604 -0
- package/dist/slot-selection-context-CRstOosL.js.map +1 -0
- package/dist/slot-selection-context-DBCZI2Dn.cjs +2 -0
- package/dist/slot-selection-context-DBCZI2Dn.cjs.map +1 -0
- package/dist/styles/index.css +1 -1
- package/dist/{tailwind-calendar-CVuxWXLY.js → tailwind-calendar-CNhXkxzW.js} +80 -80
- package/dist/{tailwind-calendar-CVuxWXLY.js.map → tailwind-calendar-CNhXkxzW.js.map} +1 -1
- package/dist/tailwind-calendar-VRvPJQwa.cjs +2 -0
- package/dist/{tailwind-calendar-DoG6s3PJ.cjs.map → tailwind-calendar-VRvPJQwa.cjs.map} +1 -1
- package/dist/{use-calendar-Clo9DFK4.js → use-calendar-D8XaVe44.js} +69 -69
- package/dist/{use-calendar-Clo9DFK4.js.map → use-calendar-D8XaVe44.js.map} +1 -1
- package/dist/use-calendar-DkT1_V3j.cjs +2 -0
- package/dist/{use-calendar-BEuelmSu.cjs.map → use-calendar-DkT1_V3j.cjs.map} +1 -1
- package/dist/{use-slot-selection-BCZKnZSM.js → use-slot-selection-CWRk_17s.js} +32 -32
- package/dist/{use-slot-selection-BCZKnZSM.js.map → use-slot-selection-CWRk_17s.js.map} +1 -1
- package/dist/use-slot-selection-Dj_tWg1O.cjs +2 -0
- package/dist/{use-slot-selection-Bwqwjiaq.cjs.map → use-slot-selection-Dj_tWg1O.cjs.map} +1 -1
- package/dist/utils.cjs +1 -1
- package/dist/utils.cjs.map +1 -1
- package/dist/utils.mjs +117 -920
- package/dist/utils.mjs.map +1 -1
- package/dist/week-view-C1Vu2ErD.cjs +11 -0
- package/dist/week-view-C1Vu2ErD.cjs.map +1 -0
- package/dist/{week-view-C1FxF_nk.js → week-view-DY167Wok.js} +1084 -1043
- package/dist/week-view-DY167Wok.js.map +1 -0
- package/package.json +138 -138
- package/dist/agenda-widget-BxZU4eGL.cjs +0 -2
- package/dist/agenda-widget-BxZU4eGL.cjs.map +0 -1
- package/dist/agenda-widget-wrZfO67A.js.map +0 -1
- package/dist/slot-selection-context-BwghpxKA.js +0 -597
- package/dist/slot-selection-context-BwghpxKA.js.map +0 -1
- package/dist/slot-selection-context-CHSaOPWP.cjs +0 -2
- package/dist/slot-selection-context-CHSaOPWP.cjs.map +0 -1
- package/dist/tailwind-calendar-DoG6s3PJ.cjs +0 -2
- package/dist/use-calendar-BEuelmSu.cjs +0 -2
- package/dist/use-slot-selection-Bwqwjiaq.cjs +0 -2
- package/dist/week-view-Bzpbti1B.cjs +0 -11
- package/dist/week-view-Bzpbti1B.cjs.map +0 -1
- package/dist/week-view-C1FxF_nk.js.map +0 -1
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
import { jsxs as o, jsx as e, Fragment as
|
|
2
|
-
import * as
|
|
3
|
-
import { forwardRef as
|
|
4
|
-
import { c as
|
|
5
|
-
import * as
|
|
6
|
-
import {
|
|
7
|
-
import { j as
|
|
1
|
+
import { jsxs as o, jsx as e, Fragment as Be } from "react/jsx-runtime";
|
|
2
|
+
import * as X from "react";
|
|
3
|
+
import { forwardRef as je, createElement as $e, useState as Z, useEffect as ke, useCallback as L, useRef as re, useMemo as q, useLayoutEffect as Fe } from "react";
|
|
4
|
+
import { c as s, a as Dt } from "./index-DtaLkIY8.js";
|
|
5
|
+
import * as K from "@radix-ui/react-dropdown-menu";
|
|
6
|
+
import { U as Y, aI as Ct, a7 as St, ad as Mt, ao as Tt, az as ce, x as ze, av as ie, a8 as Ve, aK as it, v as lt, ah as dt, aB as ct, V as Ae, Z as zt, aQ as Xe, ai as At } from "./position-utils-DMVQFywD.js";
|
|
7
|
+
import { j as Ge, k as ut, l as Ue } from "./slot-selection-context-CRstOosL.js";
|
|
8
8
|
import * as V from "@radix-ui/react-dialog";
|
|
9
9
|
import * as ge from "@radix-ui/react-popover";
|
|
10
10
|
import * as De from "@radix-ui/react-tooltip";
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
11
|
+
const mt = (...t) => t.filter((n, r, a) => !!n && n.trim() !== "" && a.indexOf(n) === r).join(" ").trim();
|
|
12
|
+
const Et = (t) => t.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
|
|
13
|
+
const Lt = (t) => t.replace(
|
|
14
14
|
/^([A-Z])|[\s-_]+(\w)/g,
|
|
15
15
|
(n, r, a) => a ? a.toUpperCase() : r.toLowerCase()
|
|
16
16
|
);
|
|
17
|
-
const
|
|
18
|
-
const n =
|
|
17
|
+
const Ye = (t) => {
|
|
18
|
+
const n = Lt(t);
|
|
19
19
|
return n.charAt(0).toUpperCase() + n.slice(1);
|
|
20
20
|
};
|
|
21
21
|
var Wt = {
|
|
@@ -29,81 +29,81 @@ var Wt = {
|
|
|
29
29
|
strokeLinecap: "round",
|
|
30
30
|
strokeLinejoin: "round"
|
|
31
31
|
};
|
|
32
|
-
const
|
|
32
|
+
const Rt = (t) => {
|
|
33
33
|
for (const n in t)
|
|
34
34
|
if (n.startsWith("aria-") || n === "role" || n === "title")
|
|
35
35
|
return !0;
|
|
36
36
|
return !1;
|
|
37
37
|
};
|
|
38
|
-
const
|
|
38
|
+
const _t = je(
|
|
39
39
|
({
|
|
40
40
|
color: t = "currentColor",
|
|
41
41
|
size: n = 24,
|
|
42
42
|
strokeWidth: r = 2,
|
|
43
43
|
absoluteStrokeWidth: a,
|
|
44
44
|
className: d = "",
|
|
45
|
-
children:
|
|
46
|
-
iconNode:
|
|
45
|
+
children: p,
|
|
46
|
+
iconNode: i,
|
|
47
47
|
...y
|
|
48
|
-
},
|
|
48
|
+
}, C) => $e(
|
|
49
49
|
"svg",
|
|
50
50
|
{
|
|
51
|
-
ref:
|
|
51
|
+
ref: C,
|
|
52
52
|
...Wt,
|
|
53
53
|
width: n,
|
|
54
54
|
height: n,
|
|
55
55
|
stroke: t,
|
|
56
56
|
strokeWidth: a ? Number(r) * 24 / Number(n) : r,
|
|
57
|
-
className:
|
|
58
|
-
...!
|
|
57
|
+
className: mt("lucide", d),
|
|
58
|
+
...!p && !Rt(y) && { "aria-hidden": "true" },
|
|
59
59
|
...y
|
|
60
60
|
},
|
|
61
61
|
[
|
|
62
|
-
...
|
|
63
|
-
...Array.isArray(
|
|
62
|
+
...i.map(([l, b]) => $e(l, b)),
|
|
63
|
+
...Array.isArray(p) ? p : [p]
|
|
64
64
|
]
|
|
65
65
|
)
|
|
66
66
|
);
|
|
67
|
-
const
|
|
68
|
-
const r =
|
|
69
|
-
({ className: a, ...d },
|
|
70
|
-
ref:
|
|
67
|
+
const We = (t, n) => {
|
|
68
|
+
const r = je(
|
|
69
|
+
({ className: a, ...d }, p) => $e(_t, {
|
|
70
|
+
ref: p,
|
|
71
71
|
iconNode: n,
|
|
72
|
-
className:
|
|
73
|
-
`lucide-${
|
|
72
|
+
className: mt(
|
|
73
|
+
`lucide-${Et(Ye(t))}`,
|
|
74
74
|
`lucide-${t}`,
|
|
75
75
|
a
|
|
76
76
|
),
|
|
77
77
|
...d
|
|
78
78
|
})
|
|
79
79
|
);
|
|
80
|
-
return r.displayName =
|
|
80
|
+
return r.displayName = Ye(t), r;
|
|
81
81
|
};
|
|
82
|
-
const
|
|
83
|
-
const
|
|
84
|
-
const
|
|
85
|
-
const
|
|
82
|
+
const It = [["path", { d: "M20 6 9 17l-5-5", key: "1gmf2c" }]], Bt = We("check", It);
|
|
83
|
+
const $t = [["path", { d: "m9 18 6-6-6-6", key: "mthhwq" }]], Ht = We("chevron-right", $t);
|
|
84
|
+
const Ot = [["circle", { cx: "12", cy: "12", r: "10", key: "1mglay" }]], Pt = We("circle", Ot);
|
|
85
|
+
const jt = [
|
|
86
86
|
["path", { d: "M18 6 6 18", key: "1bl5f8" }],
|
|
87
87
|
["path", { d: "m6 6 12 12", key: "d8bk6v" }]
|
|
88
|
-
],
|
|
88
|
+
], ht = We("x", jt), Ft = V.Root, Vt = V.Trigger, Gt = V.Portal, Gn = V.Close, pt = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
89
89
|
V.Overlay,
|
|
90
90
|
{
|
|
91
91
|
ref: r,
|
|
92
|
-
className:
|
|
92
|
+
className: s(
|
|
93
93
|
"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
94
94
|
t
|
|
95
95
|
),
|
|
96
96
|
...n
|
|
97
97
|
}
|
|
98
98
|
));
|
|
99
|
-
|
|
100
|
-
const
|
|
101
|
-
/* @__PURE__ */ e(
|
|
99
|
+
pt.displayName = V.Overlay.displayName;
|
|
100
|
+
const ft = X.forwardRef(({ className: t, children: n, ...r }, a) => /* @__PURE__ */ o(Gt, { children: [
|
|
101
|
+
/* @__PURE__ */ e(pt, {}),
|
|
102
102
|
/* @__PURE__ */ o(
|
|
103
103
|
V.Content,
|
|
104
104
|
{
|
|
105
105
|
ref: a,
|
|
106
|
-
className:
|
|
106
|
+
className: s(
|
|
107
107
|
"fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] rounded-lg",
|
|
108
108
|
t
|
|
109
109
|
),
|
|
@@ -111,50 +111,50 @@ const pt = Y.forwardRef(({ className: t, children: n, ...r }, a) => /* @__PURE__
|
|
|
111
111
|
children: [
|
|
112
112
|
n,
|
|
113
113
|
/* @__PURE__ */ o(V.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground", children: [
|
|
114
|
-
/* @__PURE__ */ e(
|
|
114
|
+
/* @__PURE__ */ e(ht, { className: "size-4" }),
|
|
115
115
|
/* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
|
|
116
116
|
] })
|
|
117
117
|
]
|
|
118
118
|
}
|
|
119
119
|
)
|
|
120
120
|
] }));
|
|
121
|
-
|
|
122
|
-
const
|
|
121
|
+
ft.displayName = V.Content.displayName;
|
|
122
|
+
const Ut = ({
|
|
123
123
|
className: t,
|
|
124
124
|
...n
|
|
125
125
|
}) => /* @__PURE__ */ e(
|
|
126
126
|
"div",
|
|
127
127
|
{
|
|
128
|
-
className:
|
|
128
|
+
className: s("flex flex-col space-y-1.5 text-center sm:text-left", t),
|
|
129
129
|
...n
|
|
130
130
|
}
|
|
131
131
|
);
|
|
132
|
-
|
|
133
|
-
const
|
|
132
|
+
Ut.displayName = "DialogHeader";
|
|
133
|
+
const qt = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
134
134
|
V.Title,
|
|
135
135
|
{
|
|
136
136
|
ref: r,
|
|
137
|
-
className:
|
|
137
|
+
className: s("text-lg font-semibold leading-none tracking-tight", t),
|
|
138
138
|
...n
|
|
139
139
|
}
|
|
140
140
|
));
|
|
141
|
-
|
|
142
|
-
const
|
|
141
|
+
qt.displayName = V.Title.displayName;
|
|
142
|
+
const Kt = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
143
143
|
V.Description,
|
|
144
144
|
{
|
|
145
145
|
ref: r,
|
|
146
|
-
className:
|
|
146
|
+
className: s("text-sm text-muted-foreground", t),
|
|
147
147
|
...n
|
|
148
148
|
}
|
|
149
149
|
));
|
|
150
|
-
|
|
151
|
-
const ue = ge.Root, me = ge.Trigger,
|
|
150
|
+
Kt.displayName = V.Description.displayName;
|
|
151
|
+
const ue = ge.Root, me = ge.Trigger, Un = ge.Anchor, le = X.forwardRef(({ className: t, align: n = "center", sideOffset: r = 4, ...a }, d) => /* @__PURE__ */ e(ge.Portal, { children: /* @__PURE__ */ e(
|
|
152
152
|
ge.Content,
|
|
153
153
|
{
|
|
154
154
|
ref: d,
|
|
155
155
|
align: n,
|
|
156
156
|
sideOffset: r,
|
|
157
|
-
className:
|
|
157
|
+
className: s(
|
|
158
158
|
"z-50 w-72 rounded-xl border bg-white text-popover-foreground outline-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
159
159
|
t
|
|
160
160
|
),
|
|
@@ -162,10 +162,10 @@ const ue = ge.Root, me = ge.Trigger, Gn = ge.Anchor, le = Y.forwardRef(({ classN
|
|
|
162
162
|
}
|
|
163
163
|
) }));
|
|
164
164
|
le.displayName = ge.Content.displayName;
|
|
165
|
-
const
|
|
165
|
+
const Xt = V.Root, Yt = V.Trigger, qn = V.Close, Jt = V.Portal, gt = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
166
166
|
V.Overlay,
|
|
167
167
|
{
|
|
168
|
-
className:
|
|
168
|
+
className: s(
|
|
169
169
|
"fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0",
|
|
170
170
|
t
|
|
171
171
|
),
|
|
@@ -173,14 +173,14 @@ const Kt = V.Root, Xt = V.Trigger, Un = V.Close, Yt = V.Portal, ft = Y.forwardRe
|
|
|
173
173
|
ref: r
|
|
174
174
|
}
|
|
175
175
|
));
|
|
176
|
-
|
|
177
|
-
const
|
|
178
|
-
/* @__PURE__ */ e(
|
|
176
|
+
gt.displayName = V.Overlay.displayName;
|
|
177
|
+
const xt = X.forwardRef(({ className: t, children: n, ...r }, a) => /* @__PURE__ */ o(Jt, { children: [
|
|
178
|
+
/* @__PURE__ */ e(gt, {}),
|
|
179
179
|
/* @__PURE__ */ o(
|
|
180
180
|
V.Content,
|
|
181
181
|
{
|
|
182
182
|
ref: a,
|
|
183
|
-
className:
|
|
183
|
+
className: s(
|
|
184
184
|
"fixed z-50 gap-4 bg-background p-6 shadow-lg transition ease-in-out data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:duration-300 data-[state=open]:duration-500",
|
|
185
185
|
// Right-side slide
|
|
186
186
|
"inset-y-0 right-0 h-full w-3/4 border-l sm:max-w-sm data-[state=closed]:slide-out-to-right data-[state=open]:slide-in-from-right",
|
|
@@ -190,56 +190,56 @@ const gt = Y.forwardRef(({ className: t, children: n, ...r }, a) => /* @__PURE__
|
|
|
190
190
|
children: [
|
|
191
191
|
n,
|
|
192
192
|
/* @__PURE__ */ o(V.Close, { className: "absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-secondary", children: [
|
|
193
|
-
/* @__PURE__ */ e(
|
|
193
|
+
/* @__PURE__ */ e(ht, { className: "size-4" }),
|
|
194
194
|
/* @__PURE__ */ e("span", { className: "sr-only", children: "Close" })
|
|
195
195
|
] })
|
|
196
196
|
]
|
|
197
197
|
}
|
|
198
198
|
)
|
|
199
199
|
] }));
|
|
200
|
-
|
|
201
|
-
const
|
|
200
|
+
xt.displayName = "SheetContent";
|
|
201
|
+
const Zt = ({
|
|
202
202
|
className: t,
|
|
203
203
|
...n
|
|
204
204
|
}) => /* @__PURE__ */ e(
|
|
205
205
|
"div",
|
|
206
206
|
{
|
|
207
|
-
className:
|
|
207
|
+
className: s("flex flex-col space-y-2 text-center sm:text-left", t),
|
|
208
208
|
...n
|
|
209
209
|
}
|
|
210
210
|
);
|
|
211
|
-
|
|
212
|
-
const
|
|
211
|
+
Zt.displayName = "SheetHeader";
|
|
212
|
+
const Qt = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
213
213
|
V.Title,
|
|
214
214
|
{
|
|
215
215
|
ref: r,
|
|
216
|
-
className:
|
|
216
|
+
className: s("text-lg font-semibold text-foreground", t),
|
|
217
217
|
...n
|
|
218
218
|
}
|
|
219
219
|
));
|
|
220
|
-
|
|
221
|
-
const
|
|
220
|
+
Qt.displayName = V.Title.displayName;
|
|
221
|
+
const en = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
222
222
|
V.Description,
|
|
223
223
|
{
|
|
224
224
|
ref: r,
|
|
225
|
-
className:
|
|
225
|
+
className: s("text-sm text-muted-foreground", t),
|
|
226
226
|
...n
|
|
227
227
|
}
|
|
228
228
|
));
|
|
229
|
-
|
|
230
|
-
const
|
|
229
|
+
en.displayName = V.Description.displayName;
|
|
230
|
+
const Kn = De.Provider, ae = De.Root, se = De.Trigger, oe = X.forwardRef(({ className: t, sideOffset: n = 4, ...r }, a) => /* @__PURE__ */ e(
|
|
231
231
|
De.Content,
|
|
232
232
|
{
|
|
233
233
|
ref: a,
|
|
234
234
|
sideOffset: n,
|
|
235
|
-
className:
|
|
235
|
+
className: s(
|
|
236
236
|
"z-50 overflow-hidden rounded-md border bg-popover px-3 py-1.5 text-sm text-popover-foreground shadow-md animate-in fade-in-0 zoom-in-95 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
237
237
|
t
|
|
238
238
|
),
|
|
239
239
|
...r
|
|
240
240
|
}
|
|
241
241
|
));
|
|
242
|
-
|
|
242
|
+
oe.displayName = De.Content.displayName;
|
|
243
243
|
function de(t) {
|
|
244
244
|
return {
|
|
245
245
|
blue: {
|
|
@@ -324,7 +324,7 @@ function de(t) {
|
|
|
324
324
|
}
|
|
325
325
|
}[t ?? "blue"];
|
|
326
326
|
}
|
|
327
|
-
function
|
|
327
|
+
function yt(t) {
|
|
328
328
|
const n = new Date(t);
|
|
329
329
|
return n.setHours(0, 0, 0, 0), n;
|
|
330
330
|
}
|
|
@@ -334,129 +334,129 @@ function Ee({
|
|
|
334
334
|
badgeVariant: r = "colored",
|
|
335
335
|
onClick: a,
|
|
336
336
|
className: d,
|
|
337
|
-
showTime:
|
|
338
|
-
showDescription:
|
|
337
|
+
showTime: p = !0,
|
|
338
|
+
showDescription: i = !1,
|
|
339
339
|
showParticipants: y = !1,
|
|
340
|
-
style:
|
|
340
|
+
style: C,
|
|
341
341
|
disablePopover: l = !1,
|
|
342
342
|
renderPopover: b,
|
|
343
343
|
enableDrag: v = !1,
|
|
344
344
|
enablePageTransition: u = !1,
|
|
345
345
|
pageTransitionDuration: x = 400,
|
|
346
|
-
eventDetailMode:
|
|
346
|
+
eventDetailMode: f = "popover",
|
|
347
347
|
renderEventDetail: N
|
|
348
348
|
}) {
|
|
349
|
-
const g = de(t.color), [
|
|
349
|
+
const g = de(t.color), [W, S] = Z(!1), [T, I] = Z(!1), [G, F] = Z(!1), [O, A] = Z(null), E = re(null), $ = Ge(), P = ut();
|
|
350
350
|
ke(() => {
|
|
351
|
-
if (!l &&
|
|
352
|
-
const
|
|
353
|
-
|
|
351
|
+
if (!l && P?.focusEventId && P.focusEventId === t.id) {
|
|
352
|
+
const U = setTimeout(() => {
|
|
353
|
+
S(!0), P.clearFocusEventId();
|
|
354
354
|
}, 300);
|
|
355
|
-
return () => clearTimeout(
|
|
355
|
+
return () => clearTimeout(U);
|
|
356
356
|
}
|
|
357
|
-
}, [
|
|
358
|
-
const
|
|
357
|
+
}, [P?.focusEventId, t.id, l]);
|
|
358
|
+
const k = t.endDate < yt(/* @__PURE__ */ new Date()), h = t.isCanceled ?? !1, R = v && $ && !h && !k, _ = t.data, B = _?.meetingTookPlace ?? t.meetingTookPlace ?? !1, w = h ? /* @__PURE__ */ e(nn, { className: "h-3 w-3 text-zinc-800 dark:text-zinc-200" }) : B ? /* @__PURE__ */ e(tn, { className: s("h-3 w-3", g.text) }) : null, c = _?.productName, m = _?.extendedProps, M = _?.nrParticipant, D = _?.siteName, H = _?.siteCity, Q = !!D || !!H, z = L(() => {
|
|
359
359
|
if (!T) {
|
|
360
360
|
if (l && a) {
|
|
361
361
|
a(t);
|
|
362
362
|
return;
|
|
363
363
|
}
|
|
364
364
|
if (u && E.current) {
|
|
365
|
-
const
|
|
366
|
-
|
|
367
|
-
} else l ||
|
|
365
|
+
const U = E.current.getBoundingClientRect();
|
|
366
|
+
A(U), F(!0);
|
|
367
|
+
} else l || S(!0);
|
|
368
368
|
}
|
|
369
369
|
}, [T, l, a, t, u]);
|
|
370
|
-
|
|
371
|
-
|
|
370
|
+
L(() => {
|
|
371
|
+
F(!1), A(null), l || S(!0);
|
|
372
372
|
}, [l]);
|
|
373
|
-
const
|
|
374
|
-
|
|
375
|
-
}, []),
|
|
376
|
-
(
|
|
377
|
-
R && (
|
|
373
|
+
const j = L(() => {
|
|
374
|
+
S(!1);
|
|
375
|
+
}, []), te = L(
|
|
376
|
+
(U) => {
|
|
377
|
+
R && (U.dataTransfer.effectAllowed = "move", U.dataTransfer.setData("text/plain", t.id), I(!0), $?.startDrag?.(t));
|
|
378
378
|
},
|
|
379
|
-
[R, t,
|
|
380
|
-
),
|
|
381
|
-
|
|
382
|
-
}, [
|
|
383
|
-
switch (
|
|
379
|
+
[R, t, $]
|
|
380
|
+
), J = L(() => {
|
|
381
|
+
I(!1), $?.isDragging && $.endDrag?.();
|
|
382
|
+
}, [$]), ee = N ? N({ event: t, onClose: j }) : b ? b({ event: t, onClose: j }) : /* @__PURE__ */ e(Ke, { event: t, onClose: j }), xe = (U) => {
|
|
383
|
+
switch (f) {
|
|
384
384
|
case "dialog":
|
|
385
|
-
return /* @__PURE__ */ o(
|
|
386
|
-
/* @__PURE__ */ e(
|
|
387
|
-
/* @__PURE__ */ e(
|
|
385
|
+
return /* @__PURE__ */ o(Ft, { open: W, onOpenChange: S, children: [
|
|
386
|
+
/* @__PURE__ */ e(Vt, { asChild: !0, children: U }),
|
|
387
|
+
/* @__PURE__ */ e(ft, { className: "sm:max-w-md", children: ee })
|
|
388
388
|
] });
|
|
389
389
|
case "sheet":
|
|
390
|
-
return /* @__PURE__ */ o(
|
|
391
|
-
/* @__PURE__ */ e(
|
|
392
|
-
/* @__PURE__ */ e(
|
|
390
|
+
return /* @__PURE__ */ o(Xt, { open: W, onOpenChange: S, children: [
|
|
391
|
+
/* @__PURE__ */ e(Yt, { asChild: !0, children: U }),
|
|
392
|
+
/* @__PURE__ */ e(xt, { children: ee })
|
|
393
393
|
] });
|
|
394
394
|
case "custom":
|
|
395
|
-
return
|
|
395
|
+
return U;
|
|
396
396
|
default:
|
|
397
|
-
return /* @__PURE__ */ o(ue, { open:
|
|
398
|
-
/* @__PURE__ */ e(me, { asChild: !0, children:
|
|
397
|
+
return /* @__PURE__ */ o(ue, { open: W, onOpenChange: S, children: [
|
|
398
|
+
/* @__PURE__ */ e(me, { asChild: !0, children: U }),
|
|
399
399
|
/* @__PURE__ */ e(le, { className: "w-80", children: ee })
|
|
400
400
|
] });
|
|
401
401
|
}
|
|
402
402
|
};
|
|
403
403
|
if (n === "dot") {
|
|
404
|
-
const
|
|
404
|
+
const U = /* @__PURE__ */ e(
|
|
405
405
|
"button",
|
|
406
406
|
{
|
|
407
407
|
type: "button",
|
|
408
|
-
onClick:
|
|
409
|
-
className:
|
|
408
|
+
onClick: z,
|
|
409
|
+
className: s(
|
|
410
410
|
"size-2 rounded-full cursor-pointer transition-opacity",
|
|
411
411
|
g.dot,
|
|
412
412
|
t.isCanceled && "opacity-50",
|
|
413
413
|
d
|
|
414
414
|
),
|
|
415
|
-
style:
|
|
416
|
-
"aria-label": t.title
|
|
415
|
+
style: C,
|
|
416
|
+
"aria-label": Ct(t.title)
|
|
417
417
|
}
|
|
418
418
|
);
|
|
419
419
|
return l ? /* @__PURE__ */ o(ae, { children: [
|
|
420
|
-
/* @__PURE__ */ e(
|
|
421
|
-
/* @__PURE__ */ e(
|
|
420
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: U }),
|
|
421
|
+
/* @__PURE__ */ e(oe, { children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-0.5", children: [
|
|
422
422
|
/* @__PURE__ */ e("div", { className: "font-medium", children: t.title }),
|
|
423
|
-
/* @__PURE__ */ e("div", { className: "text-xs opacity-80", children:
|
|
423
|
+
/* @__PURE__ */ e("div", { className: "text-xs opacity-80", children: Y(t) })
|
|
424
424
|
] }) })
|
|
425
425
|
] }) : xe(
|
|
426
426
|
/* @__PURE__ */ o(ae, { children: [
|
|
427
|
-
/* @__PURE__ */ e(
|
|
428
|
-
/* @__PURE__ */ e(
|
|
427
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: U }),
|
|
428
|
+
/* @__PURE__ */ e(oe, { children: /* @__PURE__ */ e("div", { className: "font-medium", children: t.title }) })
|
|
429
429
|
] })
|
|
430
430
|
);
|
|
431
431
|
}
|
|
432
432
|
if (n === "compact") {
|
|
433
|
-
const
|
|
433
|
+
const U = /* @__PURE__ */ o(
|
|
434
434
|
"div",
|
|
435
435
|
{
|
|
436
436
|
role: "button",
|
|
437
437
|
tabIndex: 0,
|
|
438
438
|
draggable: !!R,
|
|
439
|
-
onDragStart:
|
|
440
|
-
onDragEnd:
|
|
441
|
-
onClick: l ?
|
|
439
|
+
onDragStart: te,
|
|
440
|
+
onDragEnd: J,
|
|
441
|
+
onClick: l ? z : void 0,
|
|
442
442
|
onKeyDown: (be) => {
|
|
443
|
-
(be.key === "Enter" || be.key === " ") && (be.preventDefault(),
|
|
443
|
+
(be.key === "Enter" || be.key === " ") && (be.preventDefault(), z());
|
|
444
444
|
},
|
|
445
|
-
className:
|
|
445
|
+
className: s(
|
|
446
446
|
"group flex w-full relative items-center shadow-[0_0_1px_rgba(0,0,0,0.3)] gap-0 rounded px-1.5 py-1 text-left text-xs transition-colors hover:opacity-80",
|
|
447
447
|
R ? "cursor-grab active:cursor-grabbing" : "cursor-pointer",
|
|
448
448
|
T && "opacity-50",
|
|
449
449
|
// Cancelled events get gray background with strikethrough
|
|
450
|
-
|
|
450
|
+
h ? "bg-zinc-100 dark:bg-zinc-800 text-zinc-500 dark:text-zinc-400 line-through" : [
|
|
451
451
|
r === "colored" && [g.bg, g.text],
|
|
452
452
|
r === "mixed" && [g.bg, g.text],
|
|
453
453
|
r === "dot" && "bg-muted/50"
|
|
454
454
|
],
|
|
455
455
|
d
|
|
456
456
|
),
|
|
457
|
-
style:
|
|
457
|
+
style: C,
|
|
458
458
|
children: [
|
|
459
|
-
["dot", "mixed"].includes(r) && !
|
|
459
|
+
["dot", "mixed"].includes(r) && !h && /* @__PURE__ */ e(
|
|
460
460
|
"svg",
|
|
461
461
|
{
|
|
462
462
|
width: "8",
|
|
@@ -488,11 +488,11 @@ function Ee({
|
|
|
488
488
|
/* @__PURE__ */ e(
|
|
489
489
|
"div",
|
|
490
490
|
{
|
|
491
|
-
className:
|
|
491
|
+
className: s(
|
|
492
492
|
"w-fit mt-0.5 text-[10px] px-1 py-0.5 border border-dashed rounded-full font-medium",
|
|
493
493
|
g.border
|
|
494
494
|
),
|
|
495
|
-
children:
|
|
495
|
+
children: Y(t)
|
|
496
496
|
}
|
|
497
497
|
)
|
|
498
498
|
] }) }),
|
|
@@ -501,24 +501,24 @@ function Ee({
|
|
|
501
501
|
}
|
|
502
502
|
);
|
|
503
503
|
return l ? /* @__PURE__ */ o(ae, { children: [
|
|
504
|
-
/* @__PURE__ */ e(
|
|
505
|
-
/* @__PURE__ */ e(
|
|
504
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: U }),
|
|
505
|
+
/* @__PURE__ */ e(oe, { children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-0.5", children: [
|
|
506
506
|
/* @__PURE__ */ e("div", { className: "font-medium", children: t.title }),
|
|
507
|
-
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children:
|
|
507
|
+
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children: Y(t) })
|
|
508
508
|
] }) })
|
|
509
|
-
] }) : xe(
|
|
509
|
+
] }) : xe(U);
|
|
510
510
|
}
|
|
511
511
|
const ye = /* @__PURE__ */ o(
|
|
512
512
|
"button",
|
|
513
513
|
{
|
|
514
514
|
type: "button",
|
|
515
|
-
onClick:
|
|
516
|
-
className:
|
|
515
|
+
onClick: z,
|
|
516
|
+
className: s(
|
|
517
517
|
"group relative flex w-full flex-col gap-1 rounded-md border-l-[3px] px-2 py-1.5 text-left transition-all",
|
|
518
518
|
"shadow-[0_1px_3px_rgba(0,0,0,0.08)] hover:shadow-[0_2px_6px_rgba(0,0,0,0.12)]",
|
|
519
519
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring",
|
|
520
520
|
// Cancelled events get gray background with strikethrough
|
|
521
|
-
|
|
521
|
+
h ? "bg-zinc-100 dark:bg-zinc-800 border-l-zinc-400 dark:border-l-zinc-600 text-zinc-500 dark:text-zinc-400 line-through" : [
|
|
522
522
|
r === "colored" && [
|
|
523
523
|
g.bg,
|
|
524
524
|
g.accentBorder,
|
|
@@ -533,11 +533,11 @@ function Ee({
|
|
|
533
533
|
],
|
|
534
534
|
d
|
|
535
535
|
),
|
|
536
|
-
style:
|
|
536
|
+
style: C,
|
|
537
537
|
children: [
|
|
538
538
|
/* @__PURE__ */ o("div", { className: "flex items-start justify-between gap-1", children: [
|
|
539
539
|
/* @__PURE__ */ o("div", { className: "flex items-center gap-1.5 min-w-0", children: [
|
|
540
|
-
["dot", "mixed"].includes(r) && !
|
|
540
|
+
["dot", "mixed"].includes(r) && !h && /* @__PURE__ */ e(
|
|
541
541
|
"svg",
|
|
542
542
|
{
|
|
543
543
|
width: "8",
|
|
@@ -552,10 +552,10 @@ function Ee({
|
|
|
552
552
|
/* @__PURE__ */ e(
|
|
553
553
|
"span",
|
|
554
554
|
{
|
|
555
|
-
className:
|
|
555
|
+
className: s(
|
|
556
556
|
"text-sm font-medium truncate",
|
|
557
|
-
!
|
|
558
|
-
|
|
557
|
+
!h && r !== "dot" && g.text,
|
|
558
|
+
h && "line-through"
|
|
559
559
|
),
|
|
560
560
|
children: t.title
|
|
561
561
|
}
|
|
@@ -564,40 +564,44 @@ function Ee({
|
|
|
564
564
|
w
|
|
565
565
|
] }),
|
|
566
566
|
c && /* @__PURE__ */ e("p", { className: "text-xs text-muted-foreground truncate", children: c }),
|
|
567
|
-
m && m.length > 0 && /* @__PURE__ */ e("div", { className: "flex flex-col", children: m.map((
|
|
568
|
-
|
|
569
|
-
/* @__PURE__ */ e(
|
|
567
|
+
m && m.length > 0 && /* @__PURE__ */ e("div", { className: "flex flex-col text-xs text-muted-foreground", children: m.map((U, be) => /* @__PURE__ */ e("div", { children: U }, be)) }),
|
|
568
|
+
M != null && M > 0 && /* @__PURE__ */ o("div", { className: "flex items-center gap-1 text-xs text-muted-foreground", children: [
|
|
569
|
+
/* @__PURE__ */ e(He, { className: "h-3 w-3 shrink-0" }),
|
|
570
570
|
/* @__PURE__ */ o("span", { children: [
|
|
571
|
-
|
|
571
|
+
M,
|
|
572
572
|
" participant",
|
|
573
|
-
|
|
573
|
+
M !== 1 ? "s" : ""
|
|
574
574
|
] })
|
|
575
575
|
] }),
|
|
576
|
-
|
|
577
|
-
/* @__PURE__ */ e(
|
|
578
|
-
/* @__PURE__ */ e("span", { children:
|
|
576
|
+
p && /* @__PURE__ */ o("div", { className: "flex items-center gap-1 text-xs text-muted-foreground", children: [
|
|
577
|
+
/* @__PURE__ */ e(qe, { className: "h-3 w-3 shrink-0" }),
|
|
578
|
+
/* @__PURE__ */ e("span", { children: Y(t) })
|
|
579
579
|
] }),
|
|
580
|
-
|
|
581
|
-
/* @__PURE__ */ e(
|
|
582
|
-
/* @__PURE__ */
|
|
580
|
+
Q && /* @__PURE__ */ o("div", { className: "flex items-center gap-1 text-xs text-muted-foreground", children: [
|
|
581
|
+
/* @__PURE__ */ e(bt, { className: "h-3 w-3 shrink-0" }),
|
|
582
|
+
/* @__PURE__ */ o("span", { className: "truncate", children: [
|
|
583
|
+
D,
|
|
584
|
+
D && H ? ", " : "",
|
|
585
|
+
H
|
|
586
|
+
] })
|
|
583
587
|
] }),
|
|
584
|
-
|
|
588
|
+
i && t.description && /* @__PURE__ */ e("p", { className: "text-xs text-muted-foreground line-clamp-2", children: t.description }),
|
|
585
589
|
y && t.participants && t.participants.length > 0 && /* @__PURE__ */ o("div", { className: "flex items-center gap-1 text-xs text-muted-foreground", children: [
|
|
586
|
-
/* @__PURE__ */ e(
|
|
587
|
-
/* @__PURE__ */ e("span", { className: "truncate", children: t.participants.map((
|
|
590
|
+
/* @__PURE__ */ e(He, { className: "h-3 w-3 shrink-0" }),
|
|
591
|
+
/* @__PURE__ */ e("span", { className: "truncate", children: t.participants.map((U) => U.name).join(", ") })
|
|
588
592
|
] })
|
|
589
593
|
]
|
|
590
594
|
}
|
|
591
595
|
);
|
|
592
596
|
return l ? /* @__PURE__ */ o(ae, { children: [
|
|
593
|
-
/* @__PURE__ */ e(
|
|
594
|
-
/* @__PURE__ */ e(
|
|
597
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: ye }),
|
|
598
|
+
/* @__PURE__ */ e(oe, { children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-0.5", children: [
|
|
595
599
|
/* @__PURE__ */ e("div", { className: "font-medium", children: t.title }),
|
|
596
|
-
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children:
|
|
600
|
+
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children: Y(t) })
|
|
597
601
|
] }) })
|
|
598
602
|
] }) : xe(ye);
|
|
599
603
|
}
|
|
600
|
-
function
|
|
604
|
+
function qe({ className: t }) {
|
|
601
605
|
return /* @__PURE__ */ o(
|
|
602
606
|
"svg",
|
|
603
607
|
{
|
|
@@ -616,7 +620,7 @@ function Ue({ className: t }) {
|
|
|
616
620
|
}
|
|
617
621
|
);
|
|
618
622
|
}
|
|
619
|
-
function
|
|
623
|
+
function tn({ className: t }) {
|
|
620
624
|
return /* @__PURE__ */ e(
|
|
621
625
|
"svg",
|
|
622
626
|
{
|
|
@@ -632,7 +636,7 @@ function en({ className: t }) {
|
|
|
632
636
|
}
|
|
633
637
|
);
|
|
634
638
|
}
|
|
635
|
-
function
|
|
639
|
+
function nn({ className: t }) {
|
|
636
640
|
return /* @__PURE__ */ o(
|
|
637
641
|
"svg",
|
|
638
642
|
{
|
|
@@ -651,7 +655,7 @@ function tn({ className: t }) {
|
|
|
651
655
|
}
|
|
652
656
|
);
|
|
653
657
|
}
|
|
654
|
-
function
|
|
658
|
+
function He({ className: t }) {
|
|
655
659
|
return /* @__PURE__ */ o(
|
|
656
660
|
"svg",
|
|
657
661
|
{
|
|
@@ -672,7 +676,7 @@ function $e({ className: t }) {
|
|
|
672
676
|
}
|
|
673
677
|
);
|
|
674
678
|
}
|
|
675
|
-
function
|
|
679
|
+
function bt({ className: t }) {
|
|
676
680
|
return /* @__PURE__ */ o(
|
|
677
681
|
"svg",
|
|
678
682
|
{
|
|
@@ -691,19 +695,19 @@ function yt({ className: t }) {
|
|
|
691
695
|
}
|
|
692
696
|
);
|
|
693
697
|
}
|
|
694
|
-
function
|
|
698
|
+
function Ke({
|
|
695
699
|
event: t,
|
|
696
700
|
onClose: n
|
|
697
701
|
}) {
|
|
698
702
|
const r = de(t.color), a = t.isCanceled ?? !1;
|
|
699
703
|
return /* @__PURE__ */ o("div", { className: "space-y-3", children: [
|
|
700
704
|
/* @__PURE__ */ o("div", { className: "flex items-start gap-3", children: [
|
|
701
|
-
/* @__PURE__ */ e("div", { className:
|
|
705
|
+
/* @__PURE__ */ e("div", { className: s("size-4 rounded shrink-0 mt-0.5", r.dot) }),
|
|
702
706
|
/* @__PURE__ */ o("div", { className: "flex-1 min-w-0", children: [
|
|
703
707
|
/* @__PURE__ */ e(
|
|
704
708
|
"h3",
|
|
705
709
|
{
|
|
706
|
-
className:
|
|
710
|
+
className: s(
|
|
707
711
|
"font-semibold text-lg",
|
|
708
712
|
a && "line-through opacity-50"
|
|
709
713
|
),
|
|
@@ -711,8 +715,8 @@ function qe({
|
|
|
711
715
|
}
|
|
712
716
|
),
|
|
713
717
|
/* @__PURE__ */ o("div", { className: "flex items-center gap-1 text-sm text-muted-foreground mt-1", children: [
|
|
714
|
-
/* @__PURE__ */ e(
|
|
715
|
-
/* @__PURE__ */ e("span", { className: "tabular-nums", children:
|
|
718
|
+
/* @__PURE__ */ e(qe, { className: "h-4 w-4 shrink-0" }),
|
|
719
|
+
/* @__PURE__ */ e("span", { className: "tabular-nums", children: Y(t) })
|
|
716
720
|
] })
|
|
717
721
|
] })
|
|
718
722
|
] }),
|
|
@@ -733,80 +737,81 @@ function qe({
|
|
|
733
737
|
) })
|
|
734
738
|
] });
|
|
735
739
|
}
|
|
736
|
-
function
|
|
740
|
+
function wt({
|
|
737
741
|
event: t,
|
|
738
742
|
position: n,
|
|
739
743
|
hourHeight: r = 96,
|
|
740
744
|
badgeVariant: a = "colored",
|
|
741
745
|
onClick: d,
|
|
742
|
-
className:
|
|
743
|
-
disablePopover:
|
|
746
|
+
className: p,
|
|
747
|
+
disablePopover: i = !1,
|
|
744
748
|
renderPopover: y,
|
|
745
|
-
enableDrag:
|
|
749
|
+
enableDrag: C = !0
|
|
746
750
|
}) {
|
|
747
|
-
const l = de(t.color), [b, v] =
|
|
751
|
+
const l = de(t.color), [b, v] = Z(!1), [u, x] = Z(!1), f = Ge(), N = ut();
|
|
748
752
|
ke(() => {
|
|
749
|
-
if (!
|
|
750
|
-
const
|
|
753
|
+
if (!i && N?.focusEventId && N.focusEventId === t.id) {
|
|
754
|
+
const z = setTimeout(() => {
|
|
751
755
|
v(!0), N.clearFocusEventId();
|
|
752
756
|
}, 300);
|
|
753
|
-
return () => clearTimeout(
|
|
757
|
+
return () => clearTimeout(z);
|
|
754
758
|
}
|
|
755
|
-
}, [N?.focusEventId, t.id,
|
|
756
|
-
const g = (t.endDate.getTime() - t.startDate.getTime()) / (1e3 * 60),
|
|
757
|
-
u || (
|
|
758
|
-
}, [u,
|
|
759
|
+
}, [N?.focusEventId, t.id, i]);
|
|
760
|
+
const g = (t.endDate.getTime() - t.startDate.getTime()) / (1e3 * 60), W = g / 60 * r - 8, S = t.endDate < yt(/* @__PURE__ */ new Date()), T = t.isCanceled ?? !1, I = C && f && !T && !S, G = g <= 20, F = g < 35, O = g > 20, A = g >= 45, E = t.data, $ = E?.productName, P = E?.extendedProps, k = E?.nrParticipant, h = E?.siteName, R = E?.siteCity, _ = !!h || !!R, B = a === "dot", w = L(() => {
|
|
761
|
+
u || (i && d ? d(t) : i || v(!0));
|
|
762
|
+
}, [u, i, d, t]), c = L(() => {
|
|
759
763
|
v(!1);
|
|
760
|
-
}, []),
|
|
761
|
-
(
|
|
762
|
-
if (!
|
|
763
|
-
|
|
764
|
-
const
|
|
765
|
-
|
|
766
|
-
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
), x(!0),
|
|
764
|
+
}, []), m = L(
|
|
765
|
+
(z) => {
|
|
766
|
+
if (!I) return;
|
|
767
|
+
z.dataTransfer.effectAllowed = "move", z.dataTransfer.setData("text/plain", t.id);
|
|
768
|
+
const j = z.currentTarget, te = j.getBoundingClientRect();
|
|
769
|
+
z.dataTransfer.setDragImage(
|
|
770
|
+
j,
|
|
771
|
+
z.clientX - te.left,
|
|
772
|
+
z.clientY - te.top
|
|
773
|
+
), x(!0), f?.startDrag?.(t);
|
|
770
774
|
},
|
|
771
|
-
[
|
|
772
|
-
),
|
|
773
|
-
x(!1),
|
|
774
|
-
}, [
|
|
775
|
-
(
|
|
776
|
-
(
|
|
775
|
+
[I, t, f]
|
|
776
|
+
), M = L(() => {
|
|
777
|
+
x(!1), f?.isDragging && f.endDrag?.();
|
|
778
|
+
}, [f]), D = L(
|
|
779
|
+
(z) => {
|
|
780
|
+
(z.key === "Enter" || z.key === " ") && (z.preventDefault(), w());
|
|
777
781
|
},
|
|
778
|
-
[
|
|
779
|
-
),
|
|
782
|
+
[w]
|
|
783
|
+
), H = /* @__PURE__ */ e(
|
|
780
784
|
"div",
|
|
781
785
|
{
|
|
782
786
|
role: "button",
|
|
783
787
|
tabIndex: 0,
|
|
784
|
-
draggable: !!
|
|
785
|
-
onDragStart:
|
|
786
|
-
onDragEnd:
|
|
787
|
-
onKeyDown:
|
|
788
|
-
onClick: u ? void 0 :
|
|
789
|
-
className:
|
|
790
|
-
"group flex w-full select-none
|
|
788
|
+
draggable: !!I,
|
|
789
|
+
onDragStart: m,
|
|
790
|
+
onDragEnd: M,
|
|
791
|
+
onKeyDown: D,
|
|
792
|
+
onClick: u ? void 0 : w,
|
|
793
|
+
className: s(
|
|
794
|
+
"group flex w-full select-none overflow-hidden rounded-md border-l-[3px] text-xs text-left",
|
|
791
795
|
"shadow-[0_1px_3px_rgba(0,0,0,0.08)] hover:shadow-[0_2px_6px_rgba(0,0,0,0.12)]",
|
|
792
796
|
"focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
|
|
793
797
|
"transition-all",
|
|
794
|
-
|
|
798
|
+
I ? "cursor-grab active:cursor-grabbing" : "cursor-pointer",
|
|
795
799
|
u && "opacity-50",
|
|
796
800
|
// Cancelled events get gray background with strikethrough
|
|
797
801
|
T ? "bg-zinc-100 dark:bg-zinc-800 border-l-zinc-400 dark:border-l-zinc-600 text-zinc-500 dark:text-zinc-400 line-through" : [
|
|
798
802
|
// Colored/mixed variants
|
|
799
|
-
!
|
|
803
|
+
!B && [l.bg, l.accentBorder, l.text],
|
|
800
804
|
// Dot variant - neutral background
|
|
801
|
-
|
|
805
|
+
B && "bg-neutral-50 dark:bg-neutral-900 border-l-neutral-400 dark:border-l-neutral-600"
|
|
802
806
|
],
|
|
803
|
-
//
|
|
804
|
-
|
|
805
|
-
|
|
807
|
+
// Very short events: single-row inline layout
|
|
808
|
+
G ? "flex-row items-center gap-1.5 px-2 py-0" : F ? "flex-col gap-0.5 px-2 py-0 justify-center" : "flex-col gap-0.5 px-2 py-1.5",
|
|
809
|
+
p
|
|
806
810
|
),
|
|
807
|
-
style: { height: `${Math.max(
|
|
808
|
-
children:
|
|
809
|
-
/*
|
|
811
|
+
style: { height: `${Math.max(W, 20)}px` },
|
|
812
|
+
children: G ? (
|
|
813
|
+
/* Single-row layout for very short events (≤20min) */
|
|
814
|
+
/* @__PURE__ */ o(Be, { children: [
|
|
810
815
|
["mixed", "dot"].includes(a) && !T && /* @__PURE__ */ e(
|
|
811
816
|
"svg",
|
|
812
817
|
{
|
|
@@ -819,96 +824,132 @@ function bt({
|
|
|
819
824
|
children: /* @__PURE__ */ e("circle", { cx: "4", cy: "4", r: "4", className: l.dotFill })
|
|
820
825
|
}
|
|
821
826
|
),
|
|
822
|
-
/* @__PURE__ */ e(
|
|
823
|
-
"
|
|
827
|
+
/* @__PURE__ */ e(
|
|
828
|
+
"span",
|
|
824
829
|
{
|
|
825
|
-
className:
|
|
826
|
-
"font-semibold truncate leading-
|
|
827
|
-
!T &&
|
|
830
|
+
className: s(
|
|
831
|
+
"font-semibold truncate leading-none text-[11px]",
|
|
832
|
+
!T && B && "text-foreground"
|
|
828
833
|
),
|
|
829
834
|
children: t.title
|
|
830
835
|
}
|
|
831
|
-
)
|
|
832
|
-
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
836
|
-
|
|
837
|
-
|
|
838
|
-
|
|
839
|
-
|
|
840
|
-
|
|
841
|
-
|
|
842
|
-
|
|
843
|
-
|
|
844
|
-
|
|
845
|
-
|
|
846
|
-
|
|
847
|
-
|
|
848
|
-
|
|
849
|
-
),
|
|
850
|
-
children: O
|
|
851
|
-
},
|
|
852
|
-
$
|
|
853
|
-
)) }),
|
|
854
|
-
H != null && H > 0 && /* @__PURE__ */ o(
|
|
855
|
-
"div",
|
|
856
|
-
{
|
|
857
|
-
className: i(
|
|
858
|
-
"flex items-center gap-1 text-[11px] leading-tight",
|
|
859
|
-
A ? "text-muted-foreground" : "opacity-80"
|
|
860
|
-
),
|
|
861
|
-
children: [
|
|
862
|
-
/* @__PURE__ */ e($e, { className: "h-3 w-3 shrink-0" }),
|
|
863
|
-
/* @__PURE__ */ o("span", { children: [
|
|
864
|
-
H,
|
|
865
|
-
" participant",
|
|
866
|
-
H !== 1 ? "s" : ""
|
|
867
|
-
] })
|
|
868
|
-
]
|
|
869
|
-
}
|
|
870
|
-
),
|
|
871
|
-
j && /* @__PURE__ */ o(
|
|
872
|
-
"div",
|
|
873
|
-
{
|
|
874
|
-
className: i(
|
|
875
|
-
"flex items-center gap-1 text-[11px] tabular-nums leading-tight",
|
|
876
|
-
A ? "text-muted-foreground" : "opacity-90"
|
|
877
|
-
),
|
|
878
|
-
children: [
|
|
879
|
-
/* @__PURE__ */ e(Ue, { className: "h-3 w-3 shrink-0" }),
|
|
880
|
-
/* @__PURE__ */ e("span", { children: J(t) })
|
|
881
|
-
]
|
|
882
|
-
}
|
|
883
|
-
),
|
|
884
|
-
B && R && /* @__PURE__ */ o(
|
|
885
|
-
"div",
|
|
886
|
-
{
|
|
887
|
-
className: i(
|
|
888
|
-
"flex items-center gap-1 text-[11px] truncate leading-tight",
|
|
889
|
-
A ? "text-muted-foreground" : "opacity-80"
|
|
836
|
+
),
|
|
837
|
+
/* @__PURE__ */ e("span", { className: "shrink-0 text-[10px] leading-none opacity-75 tabular-nums", children: Y(t) })
|
|
838
|
+
] })
|
|
839
|
+
) : (
|
|
840
|
+
/* Standard stacked layout for events > 20min */
|
|
841
|
+
/* @__PURE__ */ o(Be, { children: [
|
|
842
|
+
/* @__PURE__ */ o("div", { className: "flex items-start gap-1.5 min-w-0", children: [
|
|
843
|
+
["mixed", "dot"].includes(a) && !T && /* @__PURE__ */ e(
|
|
844
|
+
"svg",
|
|
845
|
+
{
|
|
846
|
+
width: "8",
|
|
847
|
+
height: "8",
|
|
848
|
+
viewBox: "0 0 8 8",
|
|
849
|
+
className: "event-dot shrink-0",
|
|
850
|
+
"aria-hidden": "true",
|
|
851
|
+
focusable: "false",
|
|
852
|
+
children: /* @__PURE__ */ e("circle", { cx: "4", cy: "4", r: "4", className: l.dotFill })
|
|
853
|
+
}
|
|
890
854
|
),
|
|
891
|
-
children:
|
|
892
|
-
|
|
893
|
-
|
|
894
|
-
|
|
895
|
-
|
|
896
|
-
|
|
897
|
-
|
|
855
|
+
/* @__PURE__ */ e("div", { className: "flex-1 min-w-0 overflow-hidden", children: /* @__PURE__ */ e(
|
|
856
|
+
"p",
|
|
857
|
+
{
|
|
858
|
+
className: s(
|
|
859
|
+
"font-semibold truncate leading-tight",
|
|
860
|
+
!T && B && "text-foreground"
|
|
861
|
+
),
|
|
862
|
+
children: t.title
|
|
863
|
+
}
|
|
864
|
+
) })
|
|
865
|
+
] }),
|
|
866
|
+
A && $ && /* @__PURE__ */ e(
|
|
867
|
+
"p",
|
|
868
|
+
{
|
|
869
|
+
className: s(
|
|
870
|
+
"text-[11px] truncate leading-tight",
|
|
871
|
+
B ? "text-muted-foreground" : "opacity-80"
|
|
872
|
+
),
|
|
873
|
+
children: $
|
|
874
|
+
}
|
|
875
|
+
),
|
|
876
|
+
A && P && P.length > 0 && /* @__PURE__ */ e(
|
|
877
|
+
"div",
|
|
878
|
+
{
|
|
879
|
+
className: s(
|
|
880
|
+
"flex flex-col text-[11px] leading-tight",
|
|
881
|
+
B ? "text-muted-foreground" : "opacity-80"
|
|
882
|
+
),
|
|
883
|
+
children: P.map((z, j) => /* @__PURE__ */ e("div", { children: z }, j))
|
|
884
|
+
}
|
|
885
|
+
),
|
|
886
|
+
k != null && k > 0 && /* @__PURE__ */ o(
|
|
887
|
+
"div",
|
|
888
|
+
{
|
|
889
|
+
className: s(
|
|
890
|
+
"flex items-center gap-1 text-[11px] leading-tight",
|
|
891
|
+
B ? "text-muted-foreground" : "opacity-80"
|
|
892
|
+
),
|
|
893
|
+
children: [
|
|
894
|
+
/* @__PURE__ */ e(He, { className: "h-3 w-3 shrink-0" }),
|
|
895
|
+
/* @__PURE__ */ o("span", { children: [
|
|
896
|
+
k,
|
|
897
|
+
" participant",
|
|
898
|
+
k !== 1 ? "s" : ""
|
|
899
|
+
] })
|
|
900
|
+
]
|
|
901
|
+
}
|
|
902
|
+
),
|
|
903
|
+
O && /* @__PURE__ */ o(
|
|
904
|
+
"div",
|
|
905
|
+
{
|
|
906
|
+
className: s(
|
|
907
|
+
"flex items-center gap-1 text-[11px] tabular-nums leading-tight",
|
|
908
|
+
B ? "text-muted-foreground" : "opacity-90"
|
|
909
|
+
),
|
|
910
|
+
children: [
|
|
911
|
+
/* @__PURE__ */ e(qe, { className: "h-3 w-3 shrink-0" }),
|
|
912
|
+
/* @__PURE__ */ e("span", { children: Y(t) })
|
|
913
|
+
]
|
|
914
|
+
}
|
|
915
|
+
),
|
|
916
|
+
A && _ && /* @__PURE__ */ o(
|
|
917
|
+
"div",
|
|
918
|
+
{
|
|
919
|
+
className: s(
|
|
920
|
+
"flex items-center gap-1 text-[11px] truncate leading-tight",
|
|
921
|
+
B ? "text-muted-foreground" : "opacity-80"
|
|
922
|
+
),
|
|
923
|
+
children: [
|
|
924
|
+
/* @__PURE__ */ e(bt, { className: "h-3 w-3 shrink-0" }),
|
|
925
|
+
/* @__PURE__ */ o("span", { className: "truncate", children: [
|
|
926
|
+
h,
|
|
927
|
+
h && R ? ", " : "",
|
|
928
|
+
R
|
|
929
|
+
] })
|
|
930
|
+
]
|
|
931
|
+
}
|
|
932
|
+
)
|
|
933
|
+
] })
|
|
934
|
+
)
|
|
898
935
|
}
|
|
899
|
-
),
|
|
936
|
+
), Q = /* @__PURE__ */ e(oe, { children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-0.5", children: [
|
|
900
937
|
/* @__PURE__ */ e("div", { className: "font-medium", children: t.title }),
|
|
901
|
-
|
|
902
|
-
|
|
903
|
-
|
|
904
|
-
|
|
938
|
+
$ && /* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground", children: $ }),
|
|
939
|
+
P && P.length > 0 && P.map((z, j) => /* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground", children: z }, j)),
|
|
940
|
+
k != null && /* @__PURE__ */ o("div", { className: "text-xs text-muted-foreground", children: [
|
|
941
|
+
k,
|
|
905
942
|
" participant",
|
|
906
|
-
|
|
943
|
+
k !== 1 ? "s" : ""
|
|
907
944
|
] }),
|
|
908
|
-
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children:
|
|
909
|
-
|
|
945
|
+
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children: Y(t) }),
|
|
946
|
+
_ && /* @__PURE__ */ o("div", { className: "text-xs text-muted-foreground", children: [
|
|
947
|
+
h,
|
|
948
|
+
h && R ? ", " : "",
|
|
949
|
+
R
|
|
950
|
+
] })
|
|
910
951
|
] }) });
|
|
911
|
-
return
|
|
952
|
+
return i ? /* @__PURE__ */ e(
|
|
912
953
|
"div",
|
|
913
954
|
{
|
|
914
955
|
className: "absolute p-0.5",
|
|
@@ -919,8 +960,8 @@ function bt({
|
|
|
919
960
|
minWidth: n.minWidth ? `${n.minWidth}px` : void 0
|
|
920
961
|
},
|
|
921
962
|
children: /* @__PURE__ */ o(ae, { children: [
|
|
922
|
-
/* @__PURE__ */ e(
|
|
923
|
-
|
|
963
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: H }),
|
|
964
|
+
Q
|
|
924
965
|
] })
|
|
925
966
|
}
|
|
926
967
|
) : /* @__PURE__ */ e(
|
|
@@ -934,54 +975,54 @@ function bt({
|
|
|
934
975
|
minWidth: n.minWidth ? `${n.minWidth}px` : void 0
|
|
935
976
|
},
|
|
936
977
|
children: /* @__PURE__ */ o(ue, { open: b, onOpenChange: v, children: [
|
|
937
|
-
/* @__PURE__ */ e(me, { asChild: !0, children:
|
|
938
|
-
/* @__PURE__ */ e(le, { className: "w-80", children: y ? y({ event: t, onClose:
|
|
978
|
+
/* @__PURE__ */ e(me, { asChild: !0, children: H }),
|
|
979
|
+
/* @__PURE__ */ e(le, { className: "w-80", children: y ? y({ event: t, onClose: c }) : /* @__PURE__ */ e(Ke, { event: t, onClose: c }) })
|
|
939
980
|
] })
|
|
940
981
|
}
|
|
941
982
|
);
|
|
942
983
|
}
|
|
943
|
-
function
|
|
984
|
+
function Xn({
|
|
944
985
|
event: t,
|
|
945
986
|
spanDays: n,
|
|
946
987
|
isStart: r,
|
|
947
988
|
isEnd: a,
|
|
948
989
|
onClick: d,
|
|
949
|
-
className:
|
|
950
|
-
disablePopover:
|
|
990
|
+
className: p,
|
|
991
|
+
disablePopover: i = !1,
|
|
951
992
|
renderPopover: y
|
|
952
993
|
}) {
|
|
953
|
-
const
|
|
954
|
-
|
|
955
|
-
}, [
|
|
994
|
+
const C = de(t.color), [l, b] = Z(!1), v = t.isCanceled ?? !1, u = L(() => {
|
|
995
|
+
i && d ? d(t) : i || b(!0);
|
|
996
|
+
}, [i, d, t]), x = L(() => {
|
|
956
997
|
b(!1);
|
|
957
|
-
}, []),
|
|
998
|
+
}, []), f = /* @__PURE__ */ e(
|
|
958
999
|
"button",
|
|
959
1000
|
{
|
|
960
1001
|
type: "button",
|
|
961
1002
|
onClick: u,
|
|
962
|
-
className:
|
|
1003
|
+
className: s(
|
|
963
1004
|
"flex h-5 items-center px-1.5 text-xs font-medium transition-opacity hover:opacity-80",
|
|
964
1005
|
// Cancelled events get gray background with strikethrough
|
|
965
|
-
v ? "bg-zinc-200 dark:bg-zinc-700 text-zinc-500 dark:text-zinc-400 line-through" : [
|
|
1006
|
+
v ? "bg-zinc-200 dark:bg-zinc-700 text-zinc-500 dark:text-zinc-400 line-through" : [C.dot, "text-white"],
|
|
966
1007
|
r && "rounded-l",
|
|
967
1008
|
a && "rounded-r",
|
|
968
1009
|
!r && "border-l-0",
|
|
969
1010
|
!a && "border-r-0",
|
|
970
|
-
|
|
1011
|
+
p
|
|
971
1012
|
),
|
|
972
1013
|
style: { width: `${n * 100}%` },
|
|
973
1014
|
children: r && /* @__PURE__ */ e("span", { className: "truncate", children: t.title })
|
|
974
1015
|
}
|
|
975
|
-
), N = /* @__PURE__ */ e(
|
|
1016
|
+
), N = /* @__PURE__ */ e(oe, { children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-0.5", children: [
|
|
976
1017
|
/* @__PURE__ */ e("div", { className: "font-medium", children: t.title }),
|
|
977
|
-
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children:
|
|
1018
|
+
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children: Y(t) })
|
|
978
1019
|
] }) });
|
|
979
|
-
return
|
|
980
|
-
/* @__PURE__ */ e(
|
|
1020
|
+
return i ? /* @__PURE__ */ o(ae, { children: [
|
|
1021
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: f }),
|
|
981
1022
|
N
|
|
982
1023
|
] }) : /* @__PURE__ */ o(ue, { open: l, onOpenChange: b, children: [
|
|
983
|
-
/* @__PURE__ */ e(me, { asChild: !0, children:
|
|
984
|
-
/* @__PURE__ */ e(le, { className: "w-80", children: y ? y({ event: t, onClose: x }) : /* @__PURE__ */ e(
|
|
1024
|
+
/* @__PURE__ */ e(me, { asChild: !0, children: f }),
|
|
1025
|
+
/* @__PURE__ */ e(le, { className: "w-80", children: y ? y({ event: t, onClose: x }) : /* @__PURE__ */ e(Ke, { event: t, onClose: x }) })
|
|
985
1026
|
] });
|
|
986
1027
|
}
|
|
987
1028
|
if (typeof window < "u" && !document.getElementById("inno-calendar-event-marquee-style")) {
|
|
@@ -997,26 +1038,26 @@ if (typeof window < "u" && !document.getElementById("inno-calendar-event-marquee
|
|
|
997
1038
|
}
|
|
998
1039
|
`, document.head.appendChild(t);
|
|
999
1040
|
}
|
|
1000
|
-
const
|
|
1041
|
+
const Je = (t) => typeof t == "boolean" ? `${t}` : t === 0 ? "0" : t, Ze = Dt, vt = (t, n) => (r) => {
|
|
1001
1042
|
var a;
|
|
1002
|
-
if (n?.variants == null) return
|
|
1003
|
-
const { variants: d, defaultVariants:
|
|
1004
|
-
const b = r?.[l], v =
|
|
1043
|
+
if (n?.variants == null) return Ze(t, r?.class, r?.className);
|
|
1044
|
+
const { variants: d, defaultVariants: p } = n, i = Object.keys(d).map((l) => {
|
|
1045
|
+
const b = r?.[l], v = p?.[l];
|
|
1005
1046
|
if (b === null) return null;
|
|
1006
|
-
const u =
|
|
1047
|
+
const u = Je(b) || Je(v);
|
|
1007
1048
|
return d[l][u];
|
|
1008
1049
|
}), y = r && Object.entries(r).reduce((l, b) => {
|
|
1009
1050
|
let [v, u] = b;
|
|
1010
1051
|
return u === void 0 || (l[v] = u), l;
|
|
1011
|
-
}, {}),
|
|
1052
|
+
}, {}), C = n == null || (a = n.compoundVariants) === null || a === void 0 ? void 0 : a.reduce((l, b) => {
|
|
1012
1053
|
let { class: v, className: u, ...x } = b;
|
|
1013
|
-
return Object.entries(x).every((
|
|
1014
|
-
let [N, g] =
|
|
1054
|
+
return Object.entries(x).every((f) => {
|
|
1055
|
+
let [N, g] = f;
|
|
1015
1056
|
return Array.isArray(g) ? g.includes({
|
|
1016
|
-
...
|
|
1057
|
+
...p,
|
|
1017
1058
|
...y
|
|
1018
1059
|
}[N]) : {
|
|
1019
|
-
...
|
|
1060
|
+
...p,
|
|
1020
1061
|
...y
|
|
1021
1062
|
}[N] === g;
|
|
1022
1063
|
}) ? [
|
|
@@ -1025,8 +1066,8 @@ const Ye = (t) => typeof t == "boolean" ? `${t}` : t === 0 ? "0" : t, Je = Dt, w
|
|
|
1025
1066
|
u
|
|
1026
1067
|
] : l;
|
|
1027
1068
|
}, []);
|
|
1028
|
-
return
|
|
1029
|
-
},
|
|
1069
|
+
return Ze(t, i, C, r?.class, r?.className);
|
|
1070
|
+
}, rn = vt(
|
|
1030
1071
|
"inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0",
|
|
1031
1072
|
{
|
|
1032
1073
|
variants: {
|
|
@@ -1050,14 +1091,14 @@ const Ye = (t) => typeof t == "boolean" ? `${t}` : t === 0 ? "0" : t, Je = Dt, w
|
|
|
1050
1091
|
size: "default"
|
|
1051
1092
|
}
|
|
1052
1093
|
}
|
|
1053
|
-
), pe =
|
|
1054
|
-
({ className: t, variant: n, size: r, loading: a, disabled: d, children:
|
|
1094
|
+
), pe = je(
|
|
1095
|
+
({ className: t, variant: n, size: r, loading: a, disabled: d, children: p, ...i }, y) => /* @__PURE__ */ o(
|
|
1055
1096
|
"button",
|
|
1056
1097
|
{
|
|
1057
|
-
className:
|
|
1098
|
+
className: s(rn({ variant: n, size: r, className: t })),
|
|
1058
1099
|
ref: y,
|
|
1059
1100
|
disabled: d || a,
|
|
1060
|
-
...
|
|
1101
|
+
...i,
|
|
1061
1102
|
children: [
|
|
1062
1103
|
a && /* @__PURE__ */ o(
|
|
1063
1104
|
"svg",
|
|
@@ -1089,17 +1130,17 @@ const Ye = (t) => typeof t == "boolean" ? `${t}` : t === 0 ? "0" : t, Je = Dt, w
|
|
|
1089
1130
|
]
|
|
1090
1131
|
}
|
|
1091
1132
|
),
|
|
1092
|
-
|
|
1133
|
+
p
|
|
1093
1134
|
]
|
|
1094
1135
|
}
|
|
1095
1136
|
)
|
|
1096
1137
|
);
|
|
1097
1138
|
pe.displayName = "Button";
|
|
1098
|
-
const
|
|
1099
|
-
|
|
1139
|
+
const Qe = K.Root, et = K.Trigger, on = X.forwardRef(({ className: t, inset: n, children: r, ...a }, d) => /* @__PURE__ */ o(
|
|
1140
|
+
K.SubTrigger,
|
|
1100
1141
|
{
|
|
1101
1142
|
ref: d,
|
|
1102
|
-
className:
|
|
1143
|
+
className: s(
|
|
1103
1144
|
"flex cursor-default select-none items-center rounded-lg px-2 py-1.5 text-sm outline-none focus:bg-accent data-[state=open]:bg-accent",
|
|
1104
1145
|
n && "pl-8",
|
|
1105
1146
|
t
|
|
@@ -1107,41 +1148,41 @@ const Ze = X.Root, Qe = X.Trigger, rn = Y.forwardRef(({ className: t, inset: n,
|
|
|
1107
1148
|
...a,
|
|
1108
1149
|
children: [
|
|
1109
1150
|
r,
|
|
1110
|
-
/* @__PURE__ */ e(
|
|
1151
|
+
/* @__PURE__ */ e(Ht, { className: "ml-auto h-4 w-4" })
|
|
1111
1152
|
]
|
|
1112
1153
|
}
|
|
1113
1154
|
));
|
|
1114
|
-
|
|
1115
|
-
const
|
|
1116
|
-
|
|
1155
|
+
on.displayName = K.SubTrigger.displayName;
|
|
1156
|
+
const an = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
1157
|
+
K.SubContent,
|
|
1117
1158
|
{
|
|
1118
1159
|
ref: r,
|
|
1119
|
-
className:
|
|
1160
|
+
className: s(
|
|
1120
1161
|
"z-50 min-w-[8rem] overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
1121
1162
|
t
|
|
1122
1163
|
),
|
|
1123
1164
|
...n
|
|
1124
1165
|
}
|
|
1125
1166
|
));
|
|
1126
|
-
|
|
1127
|
-
const
|
|
1128
|
-
|
|
1167
|
+
an.displayName = K.SubContent.displayName;
|
|
1168
|
+
const Oe = X.forwardRef(({ className: t, sideOffset: n = 4, ...r }, a) => /* @__PURE__ */ e(K.Portal, { children: /* @__PURE__ */ e(
|
|
1169
|
+
K.Content,
|
|
1129
1170
|
{
|
|
1130
1171
|
ref: a,
|
|
1131
1172
|
sideOffset: n,
|
|
1132
|
-
className:
|
|
1173
|
+
className: s(
|
|
1133
1174
|
"z-50 rounded-xl border bg-popover p-1 text-popover-foreground shadow-sm data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2",
|
|
1134
1175
|
t
|
|
1135
1176
|
),
|
|
1136
1177
|
...r
|
|
1137
1178
|
}
|
|
1138
1179
|
) }));
|
|
1139
|
-
|
|
1140
|
-
const
|
|
1141
|
-
|
|
1180
|
+
Oe.displayName = K.Content.displayName;
|
|
1181
|
+
const Pe = X.forwardRef(({ className: t, inset: n, ...r }, a) => /* @__PURE__ */ e(
|
|
1182
|
+
K.Item,
|
|
1142
1183
|
{
|
|
1143
1184
|
ref: a,
|
|
1144
|
-
className:
|
|
1185
|
+
className: s(
|
|
1145
1186
|
"relative flex cursor-pointer select-none items-center rounded-lg px-2 py-1.5 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
1146
1187
|
n && "pl-8",
|
|
1147
1188
|
t
|
|
@@ -1149,59 +1190,59 @@ const Oe = Y.forwardRef(({ className: t, inset: n, ...r }, a) => /* @__PURE__ */
|
|
|
1149
1190
|
...r
|
|
1150
1191
|
}
|
|
1151
1192
|
));
|
|
1152
|
-
|
|
1153
|
-
const
|
|
1154
|
-
|
|
1193
|
+
Pe.displayName = K.Item.displayName;
|
|
1194
|
+
const sn = X.forwardRef(({ className: t, children: n, checked: r = !1, ...a }, d) => /* @__PURE__ */ o(
|
|
1195
|
+
K.CheckboxItem,
|
|
1155
1196
|
{
|
|
1156
1197
|
ref: d,
|
|
1157
|
-
className:
|
|
1198
|
+
className: s(
|
|
1158
1199
|
"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
1159
1200
|
t
|
|
1160
1201
|
),
|
|
1161
1202
|
checked: r,
|
|
1162
1203
|
...a,
|
|
1163
1204
|
children: [
|
|
1164
|
-
/* @__PURE__ */ e("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ e(
|
|
1205
|
+
/* @__PURE__ */ e("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ e(K.ItemIndicator, { children: /* @__PURE__ */ e(Bt, { className: "h-4 w-4" }) }) }),
|
|
1165
1206
|
n
|
|
1166
1207
|
]
|
|
1167
1208
|
}
|
|
1168
1209
|
));
|
|
1169
|
-
|
|
1170
|
-
const
|
|
1171
|
-
|
|
1210
|
+
sn.displayName = K.CheckboxItem.displayName;
|
|
1211
|
+
const ln = X.forwardRef(({ className: t, children: n, ...r }, a) => /* @__PURE__ */ o(
|
|
1212
|
+
K.RadioItem,
|
|
1172
1213
|
{
|
|
1173
1214
|
ref: a,
|
|
1174
|
-
className:
|
|
1215
|
+
className: s(
|
|
1175
1216
|
"relative flex cursor-default select-none items-center rounded-sm py-1.5 pl-8 pr-2 text-sm outline-none transition-colors focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50",
|
|
1176
1217
|
t
|
|
1177
1218
|
),
|
|
1178
1219
|
...r,
|
|
1179
1220
|
children: [
|
|
1180
|
-
/* @__PURE__ */ e("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ e(
|
|
1221
|
+
/* @__PURE__ */ e("span", { className: "absolute left-2 flex h-3.5 w-3.5 items-center justify-center", children: /* @__PURE__ */ e(K.ItemIndicator, { children: /* @__PURE__ */ e(Pt, { className: "h-2 w-2 fill-current" }) }) }),
|
|
1181
1222
|
n
|
|
1182
1223
|
]
|
|
1183
1224
|
}
|
|
1184
1225
|
));
|
|
1185
|
-
|
|
1186
|
-
const
|
|
1187
|
-
|
|
1226
|
+
ln.displayName = K.RadioItem.displayName;
|
|
1227
|
+
const dn = X.forwardRef(({ className: t, inset: n, ...r }, a) => /* @__PURE__ */ e(
|
|
1228
|
+
K.Label,
|
|
1188
1229
|
{
|
|
1189
1230
|
ref: a,
|
|
1190
|
-
className:
|
|
1231
|
+
className: s("px-2 py-1.5 text-sm font-semibold", n && "pl-8", t),
|
|
1191
1232
|
...r
|
|
1192
1233
|
}
|
|
1193
1234
|
));
|
|
1194
|
-
|
|
1195
|
-
const
|
|
1196
|
-
|
|
1235
|
+
dn.displayName = K.Label.displayName;
|
|
1236
|
+
const cn = X.forwardRef(({ className: t, ...n }, r) => /* @__PURE__ */ e(
|
|
1237
|
+
K.Separator,
|
|
1197
1238
|
{
|
|
1198
1239
|
ref: r,
|
|
1199
|
-
className:
|
|
1240
|
+
className: s("-mx-1 my-1 h-px bg-muted", t),
|
|
1200
1241
|
...n
|
|
1201
1242
|
}
|
|
1202
1243
|
));
|
|
1203
|
-
|
|
1204
|
-
const
|
|
1244
|
+
cn.displayName = K.Separator.displayName;
|
|
1245
|
+
const un = vt(
|
|
1205
1246
|
"inline-flex items-center rounded-full border px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2",
|
|
1206
1247
|
{
|
|
1207
1248
|
variants: {
|
|
@@ -1215,10 +1256,10 @@ const cn = wt(
|
|
|
1215
1256
|
defaultVariants: { variant: "default" }
|
|
1216
1257
|
}
|
|
1217
1258
|
);
|
|
1218
|
-
function
|
|
1219
|
-
return /* @__PURE__ */ e("div", { className:
|
|
1259
|
+
function mn({ className: t, variant: n, ...r }) {
|
|
1260
|
+
return /* @__PURE__ */ e("div", { className: s(un({ variant: n }), t), ...r });
|
|
1220
1261
|
}
|
|
1221
|
-
function
|
|
1262
|
+
function hn({ className: t }) {
|
|
1222
1263
|
return /* @__PURE__ */ e(
|
|
1223
1264
|
"svg",
|
|
1224
1265
|
{
|
|
@@ -1236,7 +1277,7 @@ function mn({ className: t }) {
|
|
|
1236
1277
|
}
|
|
1237
1278
|
);
|
|
1238
1279
|
}
|
|
1239
|
-
function
|
|
1280
|
+
function pn({ className: t }) {
|
|
1240
1281
|
return /* @__PURE__ */ e(
|
|
1241
1282
|
"svg",
|
|
1242
1283
|
{
|
|
@@ -1254,7 +1295,7 @@ function hn({ className: t }) {
|
|
|
1254
1295
|
}
|
|
1255
1296
|
);
|
|
1256
1297
|
}
|
|
1257
|
-
const
|
|
1298
|
+
const fn = [
|
|
1258
1299
|
"January",
|
|
1259
1300
|
"February",
|
|
1260
1301
|
"March",
|
|
@@ -1268,25 +1309,25 @@ const pn = [
|
|
|
1268
1309
|
"November",
|
|
1269
1310
|
"December"
|
|
1270
1311
|
];
|
|
1271
|
-
function
|
|
1312
|
+
function gn({
|
|
1272
1313
|
date: t,
|
|
1273
1314
|
view: n,
|
|
1274
1315
|
events: r = [],
|
|
1275
1316
|
onNavigatePrev: a,
|
|
1276
1317
|
onNavigateNext: d,
|
|
1277
|
-
weekStartsOn:
|
|
1278
|
-
showEventCount:
|
|
1318
|
+
weekStartsOn: p = 1,
|
|
1319
|
+
showEventCount: i = !0,
|
|
1279
1320
|
className: y
|
|
1280
1321
|
}) {
|
|
1281
|
-
const
|
|
1282
|
-
return /* @__PURE__ */ o("div", { className:
|
|
1322
|
+
const C = fn[t.getMonth()], l = t.getFullYear(), b = i ? St(r, t, n, p) : 0, v = Mt(t, n);
|
|
1323
|
+
return /* @__PURE__ */ o("div", { className: s("min-w-0 flex-1", y), children: [
|
|
1283
1324
|
/* @__PURE__ */ o("div", { className: "flex items-center gap-1.5 sm:gap-2 flex-wrap", children: [
|
|
1284
1325
|
/* @__PURE__ */ o("span", { className: "text-base sm:text-lg font-semibold truncate", children: [
|
|
1285
|
-
|
|
1326
|
+
C,
|
|
1286
1327
|
" ",
|
|
1287
1328
|
l
|
|
1288
1329
|
] }),
|
|
1289
|
-
|
|
1330
|
+
i && /* @__PURE__ */ e(mn, { variant: "outline", className: "px-1 sm:px-1.5 text-[10px] sm:text-xs shrink-0", children: b })
|
|
1290
1331
|
] }),
|
|
1291
1332
|
/* @__PURE__ */ o("div", { className: "flex items-center gap-1.5 sm:gap-2", children: [
|
|
1292
1333
|
/* @__PURE__ */ e(
|
|
@@ -1296,7 +1337,7 @@ function fn({
|
|
|
1296
1337
|
size: "icon",
|
|
1297
1338
|
className: "size-5 sm:size-6 [&_svg]:size-3 sm:[&_svg]:size-4",
|
|
1298
1339
|
onClick: a,
|
|
1299
|
-
children: /* @__PURE__ */ e(
|
|
1340
|
+
children: /* @__PURE__ */ e(hn, {})
|
|
1300
1341
|
}
|
|
1301
1342
|
),
|
|
1302
1343
|
/* @__PURE__ */ e("p", { className: "text-xs sm:text-sm text-muted-foreground truncate", children: v }),
|
|
@@ -1307,13 +1348,13 @@ function fn({
|
|
|
1307
1348
|
size: "icon",
|
|
1308
1349
|
className: "size-5 sm:size-6 [&_svg]:size-3 sm:[&_svg]:size-4",
|
|
1309
1350
|
onClick: d,
|
|
1310
|
-
children: /* @__PURE__ */ e(
|
|
1351
|
+
children: /* @__PURE__ */ e(pn, {})
|
|
1311
1352
|
}
|
|
1312
1353
|
)
|
|
1313
1354
|
] })
|
|
1314
1355
|
] });
|
|
1315
1356
|
}
|
|
1316
|
-
const
|
|
1357
|
+
const xn = [
|
|
1317
1358
|
"JAN",
|
|
1318
1359
|
"FEB",
|
|
1319
1360
|
"MAR",
|
|
@@ -1327,13 +1368,13 @@ const gn = [
|
|
|
1327
1368
|
"NOV",
|
|
1328
1369
|
"DEC"
|
|
1329
1370
|
];
|
|
1330
|
-
function
|
|
1371
|
+
function yn({ onClick: t, className: n }) {
|
|
1331
1372
|
const r = /* @__PURE__ */ new Date();
|
|
1332
1373
|
return /* @__PURE__ */ o(
|
|
1333
1374
|
"button",
|
|
1334
1375
|
{
|
|
1335
1376
|
type: "button",
|
|
1336
|
-
className:
|
|
1377
|
+
className: s(
|
|
1337
1378
|
"flex size-11 sm:size-14 flex-col items-start overflow-hidden rounded-lg border shrink-0",
|
|
1338
1379
|
"focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring",
|
|
1339
1380
|
"hover:bg-accent/50 transition-colors",
|
|
@@ -1341,13 +1382,13 @@ function xn({ onClick: t, className: n }) {
|
|
|
1341
1382
|
),
|
|
1342
1383
|
onClick: t,
|
|
1343
1384
|
children: [
|
|
1344
|
-
/* @__PURE__ */ e("p", { className: "flex h-4 sm:h-6 w-full items-center justify-center bg-primary text-center text-[10px] sm:text-xs font-semibold text-primary-foreground", children:
|
|
1385
|
+
/* @__PURE__ */ e("p", { className: "flex h-4 sm:h-6 w-full items-center justify-center bg-primary text-center text-[10px] sm:text-xs font-semibold text-primary-foreground", children: xn[r.getMonth()] }),
|
|
1345
1386
|
/* @__PURE__ */ e("p", { className: "flex w-full flex-1 items-center justify-center text-sm sm:text-lg font-bold", children: r.getDate() })
|
|
1346
1387
|
]
|
|
1347
1388
|
}
|
|
1348
1389
|
);
|
|
1349
1390
|
}
|
|
1350
|
-
function
|
|
1391
|
+
function bn({ className: t }) {
|
|
1351
1392
|
return /* @__PURE__ */ o(
|
|
1352
1393
|
"svg",
|
|
1353
1394
|
{
|
|
@@ -1399,7 +1440,7 @@ function fe({ className: t }) {
|
|
|
1399
1440
|
}
|
|
1400
1441
|
);
|
|
1401
1442
|
}
|
|
1402
|
-
function
|
|
1443
|
+
function tt({ className: t }) {
|
|
1403
1444
|
return /* @__PURE__ */ e(
|
|
1404
1445
|
"svg",
|
|
1405
1446
|
{
|
|
@@ -1417,7 +1458,7 @@ function et({ className: t }) {
|
|
|
1417
1458
|
}
|
|
1418
1459
|
);
|
|
1419
1460
|
}
|
|
1420
|
-
function
|
|
1461
|
+
function wn({ className: t }) {
|
|
1421
1462
|
return /* @__PURE__ */ o(
|
|
1422
1463
|
"svg",
|
|
1423
1464
|
{
|
|
@@ -1438,7 +1479,7 @@ function bn({ className: t }) {
|
|
|
1438
1479
|
}
|
|
1439
1480
|
);
|
|
1440
1481
|
}
|
|
1441
|
-
function
|
|
1482
|
+
function nt({ className: t }) {
|
|
1442
1483
|
return /* @__PURE__ */ o(
|
|
1443
1484
|
"svg",
|
|
1444
1485
|
{
|
|
@@ -1459,7 +1500,7 @@ function tt({ className: t }) {
|
|
|
1459
1500
|
}
|
|
1460
1501
|
);
|
|
1461
1502
|
}
|
|
1462
|
-
function
|
|
1503
|
+
function vn({ className: t }) {
|
|
1463
1504
|
return /* @__PURE__ */ o(
|
|
1464
1505
|
"svg",
|
|
1465
1506
|
{
|
|
@@ -1484,7 +1525,7 @@ function wn({ className: t }) {
|
|
|
1484
1525
|
}
|
|
1485
1526
|
);
|
|
1486
1527
|
}
|
|
1487
|
-
function
|
|
1528
|
+
function Nn({ className: t }) {
|
|
1488
1529
|
return /* @__PURE__ */ o(
|
|
1489
1530
|
"svg",
|
|
1490
1531
|
{
|
|
@@ -1505,7 +1546,7 @@ function vn({ className: t }) {
|
|
|
1505
1546
|
}
|
|
1506
1547
|
);
|
|
1507
1548
|
}
|
|
1508
|
-
function
|
|
1549
|
+
function kn({ className: t }) {
|
|
1509
1550
|
return /* @__PURE__ */ o(
|
|
1510
1551
|
"svg",
|
|
1511
1552
|
{
|
|
@@ -1527,7 +1568,7 @@ function Nn({ className: t }) {
|
|
|
1527
1568
|
}
|
|
1528
1569
|
);
|
|
1529
1570
|
}
|
|
1530
|
-
function
|
|
1571
|
+
function Dn({ className: t }) {
|
|
1531
1572
|
return /* @__PURE__ */ o(
|
|
1532
1573
|
"svg",
|
|
1533
1574
|
{
|
|
@@ -1551,43 +1592,43 @@ function kn({ className: t }) {
|
|
|
1551
1592
|
}
|
|
1552
1593
|
);
|
|
1553
1594
|
}
|
|
1554
|
-
const
|
|
1555
|
-
{ value: "day", label: "Day", icon:
|
|
1556
|
-
{ value: "week", label: "Week", icon:
|
|
1557
|
-
{ value: "month", label: "Month", icon:
|
|
1558
|
-
{ value: "year", label: "Year", icon:
|
|
1595
|
+
const Cn = [
|
|
1596
|
+
{ value: "day", label: "Day", icon: vn },
|
|
1597
|
+
{ value: "week", label: "Week", icon: Nn },
|
|
1598
|
+
{ value: "month", label: "Month", icon: kn },
|
|
1599
|
+
{ value: "year", label: "Year", icon: Dn }
|
|
1559
1600
|
// { value: 'agenda', label: 'Agenda', icon: ListIcon }, NOTE: Not needed currently
|
|
1560
|
-
],
|
|
1601
|
+
], rt = [
|
|
1561
1602
|
{ value: "timeline-day", label: "1 Day", icon: fe },
|
|
1562
1603
|
{ value: "timeline-3day", label: "3 Days", icon: fe },
|
|
1563
1604
|
{ value: "timeline-week", label: "7 Days", icon: fe }
|
|
1564
|
-
],
|
|
1605
|
+
], Sn = [
|
|
1565
1606
|
{ value: "resource-day", label: "1 Day", icon: fe },
|
|
1566
1607
|
{ value: "resource-week", label: "7 Days", icon: fe }
|
|
1567
1608
|
];
|
|
1568
|
-
function
|
|
1609
|
+
function Yn({
|
|
1569
1610
|
currentDate: t,
|
|
1570
1611
|
view: n,
|
|
1571
1612
|
events: r = [],
|
|
1572
1613
|
onNavigateToday: a,
|
|
1573
1614
|
onNavigatePrev: d,
|
|
1574
|
-
onNavigateNext:
|
|
1575
|
-
onNavigate:
|
|
1615
|
+
onNavigateNext: p,
|
|
1616
|
+
onNavigate: i,
|
|
1576
1617
|
onViewChange: y,
|
|
1577
|
-
onAddEvent:
|
|
1618
|
+
onAddEvent: C,
|
|
1578
1619
|
availableViews: l = ["day", "week", "month", "agenda"],
|
|
1579
1620
|
showTimelineViews: b = !1,
|
|
1580
1621
|
timelineViews: v,
|
|
1581
1622
|
settingsContent: u,
|
|
1582
1623
|
showSettings: x = !1,
|
|
1583
|
-
filterContent:
|
|
1624
|
+
filterContent: f,
|
|
1584
1625
|
actions: N,
|
|
1585
1626
|
className: g,
|
|
1586
|
-
weekStartsOn:
|
|
1587
|
-
headerConfig:
|
|
1627
|
+
weekStartsOn: W = 1,
|
|
1628
|
+
headerConfig: S,
|
|
1588
1629
|
labels: T = {}
|
|
1589
1630
|
}) {
|
|
1590
|
-
const
|
|
1631
|
+
const I = S?.showToday ?? !0, G = S?.showDateNavigator ?? !0, F = S?.showCalendarViews ?? !0, O = S?.showResourceViews ?? b, A = S?.showSettings ?? x, E = S?.showAddEvent ?? !0, $ = S?.showFilters ?? !0, P = q(
|
|
1591
1632
|
() => ({
|
|
1592
1633
|
today: "Today",
|
|
1593
1634
|
addEvent: "Add Event",
|
|
@@ -1596,123 +1637,123 @@ function Xn({
|
|
|
1596
1637
|
...T
|
|
1597
1638
|
}),
|
|
1598
1639
|
[T]
|
|
1599
|
-
),
|
|
1600
|
-
a?.(),
|
|
1601
|
-
},
|
|
1602
|
-
d?.(),
|
|
1640
|
+
), k = () => {
|
|
1641
|
+
a?.(), i?.("today");
|
|
1642
|
+
}, h = () => {
|
|
1643
|
+
d?.(), i?.("prev");
|
|
1603
1644
|
}, R = () => {
|
|
1604
|
-
|
|
1605
|
-
},
|
|
1645
|
+
p?.(), i?.("next");
|
|
1646
|
+
}, _ = ["day", "week", "month", "year", "agenda"].includes(
|
|
1606
1647
|
n
|
|
1607
|
-
),
|
|
1608
|
-
(
|
|
1609
|
-
), c =
|
|
1610
|
-
return /* @__PURE__ */ o("div", { className:
|
|
1648
|
+
), B = n.startsWith("timeline-") || n.startsWith("resource-"), w = Cn.filter(
|
|
1649
|
+
(D) => l.includes(D.value)
|
|
1650
|
+
), c = _ ? w.find((D) => D.value === n) : null, m = [...rt, ...Sn], M = B ? m.find((D) => D.value === n) : null;
|
|
1651
|
+
return /* @__PURE__ */ o("div", { className: s("flex flex-col w-full gap-3 mb-2", g), children: [
|
|
1611
1652
|
/* @__PURE__ */ o("div", { className: "flex lg:flex-row flex-col w-full justify-between gap-3", children: [
|
|
1612
1653
|
/* @__PURE__ */ o("div", { className: "flex items-center justify-between gap-2", children: [
|
|
1613
1654
|
/* @__PURE__ */ o("div", { className: "flex items-center gap-2 sm:gap-3 min-w-0", children: [
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1655
|
+
I && /* @__PURE__ */ e(yn, { onClick: k }),
|
|
1656
|
+
G && /* @__PURE__ */ e(
|
|
1657
|
+
gn,
|
|
1617
1658
|
{
|
|
1618
1659
|
date: t,
|
|
1619
1660
|
view: n,
|
|
1620
1661
|
events: r,
|
|
1621
|
-
onNavigatePrev:
|
|
1662
|
+
onNavigatePrev: h,
|
|
1622
1663
|
onNavigateNext: R,
|
|
1623
|
-
weekStartsOn:
|
|
1664
|
+
weekStartsOn: W
|
|
1624
1665
|
}
|
|
1625
1666
|
)
|
|
1626
1667
|
] }),
|
|
1627
|
-
E &&
|
|
1668
|
+
E && C && /* @__PURE__ */ e(
|
|
1628
1669
|
pe,
|
|
1629
1670
|
{
|
|
1630
1671
|
size: "icon",
|
|
1631
1672
|
className: "shrink-0 lg:hidden",
|
|
1632
|
-
onClick:
|
|
1633
|
-
children: /* @__PURE__ */ e(
|
|
1673
|
+
onClick: C,
|
|
1674
|
+
children: /* @__PURE__ */ e(nt, { className: "size-4" })
|
|
1634
1675
|
}
|
|
1635
1676
|
)
|
|
1636
1677
|
] }),
|
|
1637
1678
|
/* @__PURE__ */ o("div", { className: "flex items-center gap-1.5 sm:gap-2 overflow-x-auto pb-1 -mb-1 scrollbar-none", children: [
|
|
1638
|
-
|
|
1679
|
+
F && y && w.length > 0 && /* @__PURE__ */ o(Qe, { children: [
|
|
1639
1680
|
/* @__PURE__ */ o(
|
|
1640
|
-
|
|
1681
|
+
et,
|
|
1641
1682
|
{
|
|
1642
|
-
className:
|
|
1683
|
+
className: s(
|
|
1643
1684
|
"inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors",
|
|
1644
1685
|
"h-10 px-2 sm:px-3 gap-1 sm:gap-1.5 shrink-0",
|
|
1645
|
-
|
|
1686
|
+
_ ? "bg-primary text-primary-foreground hover:bg-primary/90" : "border border-input bg-background hover:bg-accent hover:text-accent-foreground"
|
|
1646
1687
|
),
|
|
1647
1688
|
children: [
|
|
1648
|
-
/* @__PURE__ */ e(
|
|
1649
|
-
/* @__PURE__ */ e("span", { className: "text-xs sm:text-sm font-medium", children: c?.label ??
|
|
1650
|
-
/* @__PURE__ */ e(
|
|
1689
|
+
/* @__PURE__ */ e(bn, { className: "size-4" }),
|
|
1690
|
+
/* @__PURE__ */ e("span", { className: "text-xs sm:text-sm font-medium", children: c?.label ?? P.calendarView }),
|
|
1691
|
+
/* @__PURE__ */ e(tt, { className: "size-3 opacity-60" })
|
|
1651
1692
|
]
|
|
1652
1693
|
}
|
|
1653
1694
|
),
|
|
1654
|
-
/* @__PURE__ */ e(
|
|
1655
|
-
const
|
|
1695
|
+
/* @__PURE__ */ e(Oe, { align: "start", className: "min-w-[120px]", children: w.map((D) => {
|
|
1696
|
+
const H = D.icon;
|
|
1656
1697
|
return /* @__PURE__ */ o(
|
|
1657
|
-
|
|
1698
|
+
Pe,
|
|
1658
1699
|
{
|
|
1659
|
-
onClick: () => y(
|
|
1660
|
-
className:
|
|
1700
|
+
onClick: () => y(D.value),
|
|
1701
|
+
className: s(
|
|
1661
1702
|
"gap-2",
|
|
1662
|
-
n ===
|
|
1703
|
+
n === D.value && "bg-accent"
|
|
1663
1704
|
),
|
|
1664
1705
|
children: [
|
|
1665
|
-
/* @__PURE__ */ e(
|
|
1666
|
-
/* @__PURE__ */ e("span", { children:
|
|
1706
|
+
/* @__PURE__ */ e(H, { className: "size-4" }),
|
|
1707
|
+
/* @__PURE__ */ e("span", { children: D.label })
|
|
1667
1708
|
]
|
|
1668
1709
|
},
|
|
1669
|
-
|
|
1710
|
+
D.value
|
|
1670
1711
|
);
|
|
1671
1712
|
}) })
|
|
1672
1713
|
] }),
|
|
1673
|
-
|
|
1714
|
+
O && y && /* @__PURE__ */ o(Qe, { children: [
|
|
1674
1715
|
/* @__PURE__ */ o(
|
|
1675
|
-
|
|
1716
|
+
et,
|
|
1676
1717
|
{
|
|
1677
|
-
className:
|
|
1718
|
+
className: s(
|
|
1678
1719
|
"inline-flex items-center justify-center rounded-md text-sm font-medium transition-colors",
|
|
1679
1720
|
"h-10 px-2 sm:px-3 gap-1 sm:gap-1.5 shrink-0",
|
|
1680
|
-
|
|
1721
|
+
B ? "bg-primary text-primary-foreground hover:bg-primary/90" : "border border-input bg-white hover:bg-zinc-50 hover:text-accent-foreground"
|
|
1681
1722
|
),
|
|
1682
1723
|
children: [
|
|
1683
1724
|
/* @__PURE__ */ e(fe, { className: "size-4" }),
|
|
1684
|
-
/* @__PURE__ */ e("span", { className: "text-xs sm:text-sm font-medium", children:
|
|
1685
|
-
/* @__PURE__ */ e(
|
|
1725
|
+
/* @__PURE__ */ e("span", { className: "text-xs sm:text-sm font-medium", children: M?.label ?? P.resourceView }),
|
|
1726
|
+
/* @__PURE__ */ e(tt, { className: "size-3 opacity-60" })
|
|
1686
1727
|
]
|
|
1687
1728
|
}
|
|
1688
1729
|
),
|
|
1689
|
-
/* @__PURE__ */ e(
|
|
1690
|
-
const
|
|
1730
|
+
/* @__PURE__ */ e(Oe, { align: "start", className: "min-w-[120px]", children: rt.map((D) => {
|
|
1731
|
+
const H = D.icon;
|
|
1691
1732
|
return /* @__PURE__ */ o(
|
|
1692
|
-
|
|
1733
|
+
Pe,
|
|
1693
1734
|
{
|
|
1694
|
-
onClick: () => y(
|
|
1695
|
-
className:
|
|
1735
|
+
onClick: () => y(D.value),
|
|
1736
|
+
className: s(
|
|
1696
1737
|
"gap-2",
|
|
1697
|
-
n ===
|
|
1738
|
+
n === D.value && "bg-accent"
|
|
1698
1739
|
),
|
|
1699
1740
|
children: [
|
|
1700
|
-
/* @__PURE__ */ e(
|
|
1701
|
-
/* @__PURE__ */ e("span", { children:
|
|
1741
|
+
/* @__PURE__ */ e(H, { className: "size-4" }),
|
|
1742
|
+
/* @__PURE__ */ e("span", { children: D.label })
|
|
1702
1743
|
]
|
|
1703
1744
|
},
|
|
1704
|
-
|
|
1745
|
+
D.value
|
|
1705
1746
|
);
|
|
1706
1747
|
}) })
|
|
1707
1748
|
] }),
|
|
1708
|
-
|
|
1749
|
+
A && u && /* @__PURE__ */ o(ue, { children: [
|
|
1709
1750
|
/* @__PURE__ */ e(me, { asChild: !0, children: /* @__PURE__ */ e(
|
|
1710
1751
|
pe,
|
|
1711
1752
|
{
|
|
1712
1753
|
variant: "outline",
|
|
1713
1754
|
size: "icon",
|
|
1714
1755
|
className: "min-w-10 min-h-10 shrink-0 mx-0",
|
|
1715
|
-
children: /* @__PURE__ */ e(
|
|
1756
|
+
children: /* @__PURE__ */ e(wn, { className: "size-4 sm:size-5" })
|
|
1716
1757
|
}
|
|
1717
1758
|
) }),
|
|
1718
1759
|
/* @__PURE__ */ e(
|
|
@@ -1726,53 +1767,53 @@ function Xn({
|
|
|
1726
1767
|
)
|
|
1727
1768
|
] }),
|
|
1728
1769
|
N,
|
|
1729
|
-
E &&
|
|
1770
|
+
E && C && /* @__PURE__ */ o(
|
|
1730
1771
|
pe,
|
|
1731
1772
|
{
|
|
1732
1773
|
className: "hidden lg:flex shrink-0 max-h-10",
|
|
1733
|
-
onClick:
|
|
1774
|
+
onClick: C,
|
|
1734
1775
|
children: [
|
|
1735
|
-
/* @__PURE__ */ e(
|
|
1736
|
-
|
|
1776
|
+
/* @__PURE__ */ e(nt, { className: "size-4" }),
|
|
1777
|
+
P.addEvent
|
|
1737
1778
|
]
|
|
1738
1779
|
}
|
|
1739
1780
|
)
|
|
1740
1781
|
] })
|
|
1741
1782
|
] }),
|
|
1742
|
-
|
|
1783
|
+
$ && f && /* @__PURE__ */ e("div", { className: "flex items-center gap-2 pb-1 -mb-1 scrollbar-none", children: f })
|
|
1743
1784
|
] });
|
|
1744
1785
|
}
|
|
1745
|
-
function
|
|
1786
|
+
function Jn({
|
|
1746
1787
|
events: t,
|
|
1747
1788
|
date: n,
|
|
1748
1789
|
daysAhead: r = 60,
|
|
1749
1790
|
badgeVariant: a = "colored",
|
|
1750
1791
|
onEventClick: d,
|
|
1751
|
-
className:
|
|
1752
|
-
renderEvent:
|
|
1792
|
+
className: p,
|
|
1793
|
+
renderEvent: i,
|
|
1753
1794
|
renderPopover: y,
|
|
1754
|
-
slots:
|
|
1795
|
+
slots: C,
|
|
1755
1796
|
classNames: l
|
|
1756
1797
|
}) {
|
|
1757
|
-
const b =
|
|
1798
|
+
const b = q(() => {
|
|
1758
1799
|
const u = new Date(n);
|
|
1759
1800
|
u.setHours(0, 0, 0, 0);
|
|
1760
1801
|
const x = new Date(u);
|
|
1761
|
-
return x.setDate(x.getDate() + r), t.filter((
|
|
1762
|
-
}, [t, r, n]), v =
|
|
1763
|
-
const u =
|
|
1764
|
-
for (const [
|
|
1802
|
+
return x.setDate(x.getDate() + r), t.filter((f) => f.endDate >= u && f.startDate <= x);
|
|
1803
|
+
}, [t, r, n]), v = q(() => {
|
|
1804
|
+
const u = Tt(b), x = [];
|
|
1805
|
+
for (const [f, N] of u)
|
|
1765
1806
|
x.push({
|
|
1766
|
-
date: new Date(
|
|
1767
|
-
dateKey:
|
|
1807
|
+
date: new Date(f),
|
|
1808
|
+
dateKey: f,
|
|
1768
1809
|
events: N
|
|
1769
1810
|
});
|
|
1770
|
-
return x.sort((
|
|
1811
|
+
return x.sort((f, N) => f.date.getTime() - N.date.getTime()), x;
|
|
1771
1812
|
}, [b]);
|
|
1772
|
-
return v.length === 0 ? /* @__PURE__ */ e("div", { className:
|
|
1813
|
+
return v.length === 0 ? /* @__PURE__ */ e("div", { className: s("flex flex-col items-center justify-center h-full py-12", p), children: /* @__PURE__ */ o("div", { className: "text-center", children: [
|
|
1773
1814
|
/* @__PURE__ */ e("p", { className: "text-muted-foreground", children: "No events found" }),
|
|
1774
1815
|
/* @__PURE__ */ e("p", { className: "text-sm text-muted-foreground/70", children: "No events scheduled for this period" })
|
|
1775
|
-
] }) }) : /* @__PURE__ */ o("div", { className:
|
|
1816
|
+
] }) }) : /* @__PURE__ */ o("div", { className: s("flex flex-col h-full overflow-auto", l?.agendaList, p), children: [
|
|
1776
1817
|
/* @__PURE__ */ e("div", { className: "sticky top-0 z-10 bg-background border-b px-4 py-3", children: /* @__PURE__ */ o("div", { className: "flex items-center justify-between", children: [
|
|
1777
1818
|
/* @__PURE__ */ e("h2", { className: "text-lg font-medium", children: "Schedule" }),
|
|
1778
1819
|
/* @__PURE__ */ o("span", { className: "text-sm text-muted-foreground", children: [
|
|
@@ -1781,13 +1822,13 @@ function Yn({
|
|
|
1781
1822
|
b.length !== 1 ? "s" : ""
|
|
1782
1823
|
] })
|
|
1783
1824
|
] }) }),
|
|
1784
|
-
/* @__PURE__ */ e("div", { className: "flex-1", children: v.map(({ date: u, dateKey: x, events:
|
|
1785
|
-
const N = ce(u), g = u.toLocaleDateString([], { weekday: "short" }),
|
|
1786
|
-
return /* @__PURE__ */ o("div", { className:
|
|
1825
|
+
/* @__PURE__ */ e("div", { className: "flex-1", children: v.map(({ date: u, dateKey: x, events: f }) => {
|
|
1826
|
+
const N = ce(u), g = u.toLocaleDateString([], { weekday: "short" }), W = u.getDate(), S = u.toLocaleDateString([], { month: "short" });
|
|
1827
|
+
return /* @__PURE__ */ o("div", { className: s("", l?.agendaDayGroup), children: [
|
|
1787
1828
|
/* @__PURE__ */ e(
|
|
1788
1829
|
"div",
|
|
1789
1830
|
{
|
|
1790
|
-
className:
|
|
1831
|
+
className: s(
|
|
1791
1832
|
"sticky top-[52px] z-10 bg-background px-4 py-3 border-b",
|
|
1792
1833
|
l?.agendaDayHeader
|
|
1793
1834
|
),
|
|
@@ -1796,7 +1837,7 @@ function Yn({
|
|
|
1796
1837
|
/* @__PURE__ */ e(
|
|
1797
1838
|
"span",
|
|
1798
1839
|
{
|
|
1799
|
-
className:
|
|
1840
|
+
className: s(
|
|
1800
1841
|
"text-[11px] font-medium uppercase tracking-wide",
|
|
1801
1842
|
N ? "text-primary" : "text-muted-foreground"
|
|
1802
1843
|
),
|
|
@@ -1806,25 +1847,25 @@ function Yn({
|
|
|
1806
1847
|
/* @__PURE__ */ e(
|
|
1807
1848
|
"span",
|
|
1808
1849
|
{
|
|
1809
|
-
className:
|
|
1850
|
+
className: s(
|
|
1810
1851
|
"flex items-center justify-center rounded-full mt-0.5",
|
|
1811
1852
|
"size-10 text-xl font-normal",
|
|
1812
1853
|
N ? "bg-primary text-primary-foreground" : "text-foreground"
|
|
1813
1854
|
),
|
|
1814
|
-
children:
|
|
1855
|
+
children: W
|
|
1815
1856
|
}
|
|
1816
1857
|
)
|
|
1817
1858
|
] }),
|
|
1818
1859
|
/* @__PURE__ */ o("span", { className: "text-sm text-muted-foreground", children: [
|
|
1819
|
-
|
|
1860
|
+
S,
|
|
1820
1861
|
" ",
|
|
1821
1862
|
u.getFullYear()
|
|
1822
1863
|
] })
|
|
1823
1864
|
] })
|
|
1824
1865
|
}
|
|
1825
1866
|
),
|
|
1826
|
-
/* @__PURE__ */ e("div", { className: "px-4 py-3 space-y-2 border-b last:border-b-0", children:
|
|
1827
|
-
(T) =>
|
|
1867
|
+
/* @__PURE__ */ e("div", { className: "px-4 py-3 space-y-2 border-b last:border-b-0", children: f.map(
|
|
1868
|
+
(T) => i ? /* @__PURE__ */ e("div", { children: i({ event: T, variant: "full" }) }, T.id) : /* @__PURE__ */ e(
|
|
1828
1869
|
Ee,
|
|
1829
1870
|
{
|
|
1830
1871
|
event: T,
|
|
@@ -1846,40 +1887,40 @@ function Yn({
|
|
|
1846
1887
|
] });
|
|
1847
1888
|
}
|
|
1848
1889
|
const Ce = 360, Se = 480, Re = 280;
|
|
1849
|
-
function
|
|
1890
|
+
function Mn({
|
|
1850
1891
|
isOpen: t,
|
|
1851
1892
|
onClose: n,
|
|
1852
1893
|
date: r,
|
|
1853
1894
|
events: a,
|
|
1854
1895
|
anchorRect: d,
|
|
1855
|
-
badgeVariant:
|
|
1856
|
-
onEventClick:
|
|
1896
|
+
badgeVariant: p = "colored",
|
|
1897
|
+
onEventClick: i,
|
|
1857
1898
|
renderEvent: y,
|
|
1858
|
-
renderPopover:
|
|
1899
|
+
renderPopover: C,
|
|
1859
1900
|
className: l
|
|
1860
1901
|
}) {
|
|
1861
|
-
const b =
|
|
1862
|
-
d && (
|
|
1863
|
-
const N = d ??
|
|
1864
|
-
() => [...a].sort((
|
|
1902
|
+
const b = re(null), v = re(null), [u, x] = Z("closed"), f = re(null);
|
|
1903
|
+
d && (f.current = d);
|
|
1904
|
+
const N = d ?? f.current, g = q(
|
|
1905
|
+
() => [...a].sort((A, E) => A.startDate.getTime() - E.startDate.getTime()),
|
|
1865
1906
|
[a]
|
|
1866
|
-
),
|
|
1867
|
-
const
|
|
1868
|
-
if (!
|
|
1907
|
+
), W = q(() => {
|
|
1908
|
+
const A = N;
|
|
1909
|
+
if (!A)
|
|
1869
1910
|
return {
|
|
1870
1911
|
top: 0,
|
|
1871
1912
|
left: 0,
|
|
1872
1913
|
width: Ce,
|
|
1873
1914
|
maxHeight: Se
|
|
1874
1915
|
};
|
|
1875
|
-
const E = typeof window < "u" ? window.innerWidth : 1200,
|
|
1876
|
-
let
|
|
1877
|
-
|
|
1878
|
-
const
|
|
1879
|
-
let
|
|
1880
|
-
return
|
|
1916
|
+
const E = typeof window < "u" ? window.innerWidth : 1200, $ = typeof window < "u" ? window.innerHeight : 800;
|
|
1917
|
+
let P = A.left + A.width / 2 - Ce / 2;
|
|
1918
|
+
P = Math.max(16, Math.min(P, E - Ce - 16));
|
|
1919
|
+
const k = Math.min(a.length * 68 + 80, Se);
|
|
1920
|
+
let h = A.top + A.height / 2 - k / 2;
|
|
1921
|
+
return h = Math.max(16, Math.min(h, $ - k - 16)), { top: h, left: P, width: Ce, maxHeight: Se };
|
|
1881
1922
|
}, [N, a.length]);
|
|
1882
|
-
|
|
1923
|
+
Fe(() => {
|
|
1883
1924
|
if (t && N)
|
|
1884
1925
|
x("entering"), requestAnimationFrame(() => {
|
|
1885
1926
|
requestAnimationFrame(() => {
|
|
@@ -1888,67 +1929,67 @@ function Sn({
|
|
|
1888
1929
|
});
|
|
1889
1930
|
else if (!t && (u === "open" || u === "entering")) {
|
|
1890
1931
|
x("exiting");
|
|
1891
|
-
const
|
|
1892
|
-
x("closed"),
|
|
1932
|
+
const A = setTimeout(() => {
|
|
1933
|
+
x("closed"), f.current = null;
|
|
1893
1934
|
}, Re);
|
|
1894
|
-
return () => clearTimeout(
|
|
1935
|
+
return () => clearTimeout(A);
|
|
1895
1936
|
}
|
|
1896
1937
|
}, [t, N]), ke(() => {
|
|
1897
1938
|
if (u === "closed") return;
|
|
1898
|
-
const
|
|
1939
|
+
const A = (E) => {
|
|
1899
1940
|
E.key === "Escape" && (E.stopPropagation(), n());
|
|
1900
1941
|
};
|
|
1901
|
-
return document.addEventListener("keydown",
|
|
1942
|
+
return document.addEventListener("keydown", A), () => document.removeEventListener("keydown", A);
|
|
1902
1943
|
}, [u, n]), ke(() => {
|
|
1903
1944
|
u === "open" && v.current && v.current.focus();
|
|
1904
1945
|
}, [u]);
|
|
1905
|
-
const
|
|
1906
|
-
(
|
|
1907
|
-
|
|
1946
|
+
const S = L(
|
|
1947
|
+
(A) => {
|
|
1948
|
+
A.target === b.current && n();
|
|
1908
1949
|
},
|
|
1909
1950
|
[n]
|
|
1910
1951
|
);
|
|
1911
1952
|
if (u === "closed") return null;
|
|
1912
|
-
const T = u === "entering" || u === "exiting",
|
|
1953
|
+
const T = u === "entering" || u === "exiting", I = N, G = T && I ? {
|
|
1913
1954
|
// Collapsed state: match the day cell exactly
|
|
1914
1955
|
position: "fixed",
|
|
1915
|
-
top:
|
|
1916
|
-
left:
|
|
1917
|
-
width:
|
|
1918
|
-
height:
|
|
1919
|
-
maxHeight:
|
|
1956
|
+
top: I.top,
|
|
1957
|
+
left: I.left,
|
|
1958
|
+
width: I.width,
|
|
1959
|
+
height: I.height,
|
|
1960
|
+
maxHeight: I.height,
|
|
1920
1961
|
opacity: u === "entering" ? 0.7 : 0,
|
|
1921
1962
|
transform: "scale(1)",
|
|
1922
1963
|
borderRadius: "8px"
|
|
1923
1964
|
} : {
|
|
1924
1965
|
// Expanded state: full panel
|
|
1925
1966
|
position: "fixed",
|
|
1926
|
-
top:
|
|
1927
|
-
left:
|
|
1928
|
-
width:
|
|
1929
|
-
maxHeight:
|
|
1967
|
+
top: W.top,
|
|
1968
|
+
left: W.left,
|
|
1969
|
+
width: W.width,
|
|
1970
|
+
maxHeight: W.maxHeight,
|
|
1930
1971
|
opacity: 1,
|
|
1931
1972
|
transform: "scale(1)",
|
|
1932
1973
|
borderRadius: "12px"
|
|
1933
|
-
},
|
|
1974
|
+
}, F = T ? 0 : 1, O = r.toLocaleDateString(void 0, {
|
|
1934
1975
|
weekday: "long",
|
|
1935
1976
|
month: "long",
|
|
1936
1977
|
day: "numeric"
|
|
1937
1978
|
});
|
|
1938
|
-
return /* @__PURE__ */ o(
|
|
1979
|
+
return /* @__PURE__ */ o(Be, { children: [
|
|
1939
1980
|
/* @__PURE__ */ e(
|
|
1940
1981
|
"div",
|
|
1941
1982
|
{
|
|
1942
1983
|
ref: b,
|
|
1943
1984
|
role: "presentation",
|
|
1944
|
-
onClick:
|
|
1985
|
+
onClick: S,
|
|
1945
1986
|
className: "ic-expansion-backdrop",
|
|
1946
1987
|
style: {
|
|
1947
1988
|
position: "fixed",
|
|
1948
1989
|
inset: 0,
|
|
1949
1990
|
zIndex: 40,
|
|
1950
1991
|
backgroundColor: "rgba(0, 0, 0, 0.2)",
|
|
1951
|
-
opacity:
|
|
1992
|
+
opacity: F,
|
|
1952
1993
|
transition: `opacity ${Re}ms cubic-bezier(0.32, 0.72, 0, 1)`
|
|
1953
1994
|
}
|
|
1954
1995
|
}
|
|
@@ -1959,16 +2000,16 @@ function Sn({
|
|
|
1959
2000
|
ref: v,
|
|
1960
2001
|
role: "dialog",
|
|
1961
2002
|
"aria-modal": "true",
|
|
1962
|
-
"aria-label": `Events for ${
|
|
2003
|
+
"aria-label": `Events for ${O}`,
|
|
1963
2004
|
tabIndex: -1,
|
|
1964
|
-
className:
|
|
2005
|
+
className: s(
|
|
1965
2006
|
"ic-expansion-panel",
|
|
1966
2007
|
"!bg-white border border-border shadow-2xl overflow-hidden",
|
|
1967
2008
|
"focus:outline-none",
|
|
1968
2009
|
l
|
|
1969
2010
|
),
|
|
1970
2011
|
style: {
|
|
1971
|
-
...
|
|
2012
|
+
...G,
|
|
1972
2013
|
zIndex: 41,
|
|
1973
2014
|
transition: `all ${Re}ms cubic-bezier(0.32, 0.72, 0, 1)`,
|
|
1974
2015
|
willChange: "top, left, width, height, max-height, opacity, border-radius"
|
|
@@ -1976,7 +2017,7 @@ function Sn({
|
|
|
1976
2017
|
children: [
|
|
1977
2018
|
/* @__PURE__ */ o("div", { className: "flex items-center justify-between px-4 py-3 border-b bg-muted/30", children: [
|
|
1978
2019
|
/* @__PURE__ */ o("div", { className: "flex flex-col", children: [
|
|
1979
|
-
/* @__PURE__ */ e("span", { className: "text-sm font-semibold text-foreground", children:
|
|
2020
|
+
/* @__PURE__ */ e("span", { className: "text-sm font-semibold text-foreground", children: O }),
|
|
1980
2021
|
/* @__PURE__ */ o("span", { className: "text-xs text-muted-foreground", children: [
|
|
1981
2022
|
a.length,
|
|
1982
2023
|
" event",
|
|
@@ -2016,17 +2057,17 @@ function Sn({
|
|
|
2016
2057
|
className: "overflow-y-auto px-3 py-2 space-y-1.5",
|
|
2017
2058
|
style: { maxHeight: `${Se - 64}px` },
|
|
2018
2059
|
children: [
|
|
2019
|
-
g.map((
|
|
2060
|
+
g.map((A) => /* @__PURE__ */ e("div", { onPointerDown: (E) => E.stopPropagation(), children: y ? y({ event: A, variant: "compact" }) : /* @__PURE__ */ e(
|
|
2020
2061
|
Ee,
|
|
2021
2062
|
{
|
|
2022
|
-
event:
|
|
2063
|
+
event: A,
|
|
2023
2064
|
variant: "compact",
|
|
2024
|
-
badgeVariant:
|
|
2025
|
-
onClick:
|
|
2026
|
-
renderPopover:
|
|
2065
|
+
badgeVariant: p,
|
|
2066
|
+
onClick: i,
|
|
2067
|
+
renderPopover: C,
|
|
2027
2068
|
showTime: !0
|
|
2028
2069
|
}
|
|
2029
|
-
) },
|
|
2070
|
+
) }, A.id)),
|
|
2030
2071
|
a.length === 0 && /* @__PURE__ */ e("div", { className: "py-6 text-center text-sm text-muted-foreground", children: "No events" })
|
|
2031
2072
|
]
|
|
2032
2073
|
}
|
|
@@ -2036,24 +2077,24 @@ function Sn({
|
|
|
2036
2077
|
)
|
|
2037
2078
|
] });
|
|
2038
2079
|
}
|
|
2039
|
-
function
|
|
2080
|
+
function Tn({
|
|
2040
2081
|
event: t,
|
|
2041
2082
|
date: n,
|
|
2042
2083
|
onEventClick: r,
|
|
2043
2084
|
disablePopover: a,
|
|
2044
2085
|
renderPopover: d
|
|
2045
2086
|
}) {
|
|
2046
|
-
const [
|
|
2047
|
-
a && r ? r(t) : a ||
|
|
2048
|
-
}, [a, r, t]), x =
|
|
2049
|
-
|
|
2050
|
-
}, []),
|
|
2087
|
+
const [p, i] = Z(!1), y = de(t.color), C = ze(t), l = ie(t.startDate, n), b = ie(t.endDate, n), v = C && ie(t.startDate, t.endDate), u = L(() => {
|
|
2088
|
+
a && r ? r(t) : a || i(!0);
|
|
2089
|
+
}, [a, r, t]), x = L(() => {
|
|
2090
|
+
i(!1);
|
|
2091
|
+
}, []), f = /* @__PURE__ */ o(
|
|
2051
2092
|
"button",
|
|
2052
2093
|
{
|
|
2053
2094
|
type: "button",
|
|
2054
2095
|
onClick: u,
|
|
2055
|
-
title:
|
|
2056
|
-
className:
|
|
2096
|
+
title: Y(t),
|
|
2097
|
+
className: s(
|
|
2057
2098
|
"inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-[10px] font-medium transition-opacity hover:opacity-80",
|
|
2058
2099
|
"sm:px-2 sm:py-1 sm:text-xs",
|
|
2059
2100
|
y.bg,
|
|
@@ -2068,29 +2109,29 @@ function Mn({
|
|
|
2068
2109
|
v && /* @__PURE__ */ e("span", { className: "text-[9px] opacity-70 sm:text-[10px]", children: "All day" })
|
|
2069
2110
|
]
|
|
2070
2111
|
}
|
|
2071
|
-
), N = /* @__PURE__ */ e(
|
|
2112
|
+
), N = /* @__PURE__ */ e(oe, { children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-0.5", children: [
|
|
2072
2113
|
/* @__PURE__ */ e("div", { className: "font-medium", children: t.title }),
|
|
2073
|
-
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children:
|
|
2114
|
+
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children: Y(t) })
|
|
2074
2115
|
] }) });
|
|
2075
2116
|
return a ? /* @__PURE__ */ o(ae, { children: [
|
|
2076
|
-
/* @__PURE__ */ e(
|
|
2117
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: f }),
|
|
2077
2118
|
N
|
|
2078
|
-
] }) : /* @__PURE__ */ o(ue, { open:
|
|
2079
|
-
/* @__PURE__ */ e(me, { asChild: !0, children:
|
|
2080
|
-
/* @__PURE__ */ e(le, { className: "w-80", children: d ? d({ event: t, onClose: x }) : /* @__PURE__ */ e(
|
|
2119
|
+
] }) : /* @__PURE__ */ o(ue, { open: p, onOpenChange: i, children: [
|
|
2120
|
+
/* @__PURE__ */ e(me, { asChild: !0, children: f }),
|
|
2121
|
+
/* @__PURE__ */ e(le, { className: "w-80", children: d ? d({ event: t, onClose: x }) : /* @__PURE__ */ e(zn, { event: t, onClose: x }) })
|
|
2081
2122
|
] });
|
|
2082
2123
|
}
|
|
2083
|
-
function
|
|
2124
|
+
function zn({
|
|
2084
2125
|
event: t,
|
|
2085
2126
|
onClose: n
|
|
2086
2127
|
}) {
|
|
2087
2128
|
const r = de(t.color), a = t.isCanceled ?? !1;
|
|
2088
2129
|
return /* @__PURE__ */ o("div", { className: "space-y-3", children: [
|
|
2089
2130
|
/* @__PURE__ */ o("div", { className: "flex items-start gap-3", children: [
|
|
2090
|
-
/* @__PURE__ */ e("div", { className:
|
|
2131
|
+
/* @__PURE__ */ e("div", { className: s("size-4 rounded shrink-0 mt-0.5", r.dot) }),
|
|
2091
2132
|
/* @__PURE__ */ o("div", { className: "flex-1 min-w-0", children: [
|
|
2092
|
-
/* @__PURE__ */ e("h3", { className:
|
|
2093
|
-
/* @__PURE__ */ e("div", { className: "flex items-center gap-1 text-sm text-muted-foreground mt-1 tabular-nums", children:
|
|
2133
|
+
/* @__PURE__ */ e("h3", { className: s("font-semibold text-lg", a && "line-through opacity-50"), children: t.title }),
|
|
2134
|
+
/* @__PURE__ */ e("div", { className: "flex items-center gap-1 text-sm text-muted-foreground mt-1 tabular-nums", children: Y(t) })
|
|
2094
2135
|
] })
|
|
2095
2136
|
] }),
|
|
2096
2137
|
t.description && /* @__PURE__ */ e("p", { className: "text-sm text-muted-foreground", children: t.description }),
|
|
@@ -2109,22 +2150,22 @@ function Tn({
|
|
|
2109
2150
|
) })
|
|
2110
2151
|
] });
|
|
2111
2152
|
}
|
|
2112
|
-
function
|
|
2153
|
+
function An({
|
|
2113
2154
|
events: t,
|
|
2114
2155
|
date: n,
|
|
2115
2156
|
onEventClick: r,
|
|
2116
2157
|
disablePopover: a = !1,
|
|
2117
2158
|
renderPopover: d,
|
|
2118
|
-
className:
|
|
2159
|
+
className: p
|
|
2119
2160
|
}) {
|
|
2120
2161
|
if (t.length === 0) return null;
|
|
2121
|
-
const
|
|
2122
|
-
(l) => !
|
|
2123
|
-
),
|
|
2124
|
-
return /* @__PURE__ */ o("div", { className:
|
|
2125
|
-
/* @__PURE__ */ e("span", { className: "text-[10px] font-medium text-muted-foreground sm:text-xs", children:
|
|
2162
|
+
const i = t.some((l) => ze(l) && ie(l.startDate, l.endDate)), y = t.some(
|
|
2163
|
+
(l) => !ie(l.startDate, l.endDate) || ze(l) && !ie(l.startDate, l.endDate)
|
|
2164
|
+
), C = i && y ? "All day / Multi-day" : i ? "All day" : "Multi-day";
|
|
2165
|
+
return /* @__PURE__ */ o("div", { className: s("border-b bg-muted/20 px-2 py-1.5 space-y-1", "sm:px-4 sm:py-2", p), children: [
|
|
2166
|
+
/* @__PURE__ */ e("span", { className: "text-[10px] font-medium text-muted-foreground sm:text-xs", children: C }),
|
|
2126
2167
|
/* @__PURE__ */ e("div", { className: "flex flex-wrap gap-1", children: t.map((l) => /* @__PURE__ */ e(
|
|
2127
|
-
|
|
2168
|
+
Tn,
|
|
2128
2169
|
{
|
|
2129
2170
|
event: l,
|
|
2130
2171
|
date: n,
|
|
@@ -2136,70 +2177,70 @@ function zn({
|
|
|
2136
2177
|
)) })
|
|
2137
2178
|
] });
|
|
2138
2179
|
}
|
|
2139
|
-
const
|
|
2140
|
-
function
|
|
2180
|
+
const En = 5;
|
|
2181
|
+
function Nt({
|
|
2141
2182
|
slot: t,
|
|
2142
2183
|
onSelectionStart: n,
|
|
2143
2184
|
onSelectionMove: r,
|
|
2144
2185
|
onSelectionEnd: a,
|
|
2145
2186
|
isSelected: d = !1,
|
|
2146
|
-
isSelecting:
|
|
2147
|
-
disabled:
|
|
2187
|
+
isSelecting: p = !1,
|
|
2188
|
+
disabled: i = !1,
|
|
2148
2189
|
ariaLabel: y,
|
|
2149
|
-
children:
|
|
2190
|
+
children: C,
|
|
2150
2191
|
className: l,
|
|
2151
2192
|
height: b,
|
|
2152
2193
|
style: v,
|
|
2153
2194
|
dataAttributes: u
|
|
2154
2195
|
}) {
|
|
2155
|
-
const x =
|
|
2156
|
-
(
|
|
2157
|
-
|
|
2196
|
+
const x = re(null), f = re(!1), N = re(!1), g = re(null), [W, S] = Z(!1), T = Ge(), I = L(
|
|
2197
|
+
(k) => {
|
|
2198
|
+
i || k.button !== 0 && k.pointerType === "mouse" || (k.preventDefault(), x.current = { x: k.clientX, y: k.clientY }, f.current = !1, N.current = !0, n?.(t));
|
|
2158
2199
|
},
|
|
2159
|
-
[
|
|
2160
|
-
),
|
|
2161
|
-
(
|
|
2162
|
-
if (!(x.current && N.current && !
|
|
2163
|
-
const
|
|
2164
|
-
Math.sqrt(
|
|
2200
|
+
[i, t, n]
|
|
2201
|
+
), G = L(
|
|
2202
|
+
(k) => {
|
|
2203
|
+
if (!(x.current && N.current && !i)) return;
|
|
2204
|
+
const h = k.clientX - x.current.x, R = k.clientY - x.current.y;
|
|
2205
|
+
Math.sqrt(h * h + R * R) >= En && (f.current = !0);
|
|
2165
2206
|
},
|
|
2166
|
-
[
|
|
2167
|
-
),
|
|
2168
|
-
(
|
|
2169
|
-
|
|
2207
|
+
[i]
|
|
2208
|
+
), F = L(
|
|
2209
|
+
(k) => {
|
|
2210
|
+
i || (k.buttons > 0 || p) && r?.(t);
|
|
2170
2211
|
},
|
|
2171
|
-
[
|
|
2172
|
-
),
|
|
2173
|
-
|
|
2174
|
-
}, [
|
|
2175
|
-
(
|
|
2176
|
-
if (!T?.isDragging ||
|
|
2177
|
-
|
|
2178
|
-
const
|
|
2179
|
-
T.updateDragPreview?.(t.date, R,
|
|
2212
|
+
[i, p, t, r]
|
|
2213
|
+
), O = L(() => {
|
|
2214
|
+
i || (a?.(), x.current = null, f.current = !1, N.current = !1);
|
|
2215
|
+
}, [i, a]), A = L(
|
|
2216
|
+
(k) => {
|
|
2217
|
+
if (!T?.isDragging || i) return;
|
|
2218
|
+
k.preventDefault(), k.dataTransfer.dropEffect = "move", S(!0);
|
|
2219
|
+
const h = /* @__PURE__ */ new Date(), R = t.hour ?? h.getHours(), _ = t.minute ?? (h.getMinutes() >= 30 ? 30 : 0);
|
|
2220
|
+
T.updateDragPreview?.(t.date, R, _);
|
|
2180
2221
|
},
|
|
2181
|
-
[T,
|
|
2182
|
-
), E =
|
|
2183
|
-
|
|
2184
|
-
}, []),
|
|
2185
|
-
(
|
|
2186
|
-
|
|
2222
|
+
[T, i, t]
|
|
2223
|
+
), E = L(() => {
|
|
2224
|
+
S(!1);
|
|
2225
|
+
}, []), $ = L(
|
|
2226
|
+
(k) => {
|
|
2227
|
+
k.preventDefault(), S(!1), !(!T?.isDragging || i) && T.endDrag?.();
|
|
2187
2228
|
},
|
|
2188
|
-
[T,
|
|
2229
|
+
[T, i]
|
|
2189
2230
|
);
|
|
2190
2231
|
ke(() => {
|
|
2191
|
-
const
|
|
2192
|
-
N.current && (N.current = !1, x.current = null,
|
|
2232
|
+
const k = () => {
|
|
2233
|
+
N.current && (N.current = !1, x.current = null, f.current = !1);
|
|
2193
2234
|
};
|
|
2194
|
-
return window.addEventListener("pointerup",
|
|
2195
|
-
window.removeEventListener("pointerup",
|
|
2235
|
+
return window.addEventListener("pointerup", k), window.addEventListener("pointercancel", k), () => {
|
|
2236
|
+
window.removeEventListener("pointerup", k), window.removeEventListener("pointercancel", k);
|
|
2196
2237
|
};
|
|
2197
2238
|
}, []);
|
|
2198
|
-
const
|
|
2199
|
-
(
|
|
2200
|
-
|
|
2239
|
+
const P = L(
|
|
2240
|
+
(k) => {
|
|
2241
|
+
i || (k.key === "Enter" || k.key === " ") && (k.preventDefault(), n?.(t), a?.());
|
|
2201
2242
|
},
|
|
2202
|
-
[
|
|
2243
|
+
[i, t, n, a]
|
|
2203
2244
|
);
|
|
2204
2245
|
return /* @__PURE__ */ e(
|
|
2205
2246
|
"button",
|
|
@@ -2207,138 +2248,138 @@ function vt({
|
|
|
2207
2248
|
ref: g,
|
|
2208
2249
|
type: "button",
|
|
2209
2250
|
"aria-label": y,
|
|
2210
|
-
"aria-disabled":
|
|
2251
|
+
"aria-disabled": i,
|
|
2211
2252
|
"aria-pressed": d,
|
|
2212
|
-
disabled:
|
|
2213
|
-
onPointerDown:
|
|
2214
|
-
onPointerMove:
|
|
2215
|
-
onPointerUp:
|
|
2216
|
-
onPointerEnter:
|
|
2217
|
-
onKeyDown:
|
|
2218
|
-
onDragOver:
|
|
2253
|
+
disabled: i,
|
|
2254
|
+
onPointerDown: I,
|
|
2255
|
+
onPointerMove: G,
|
|
2256
|
+
onPointerUp: O,
|
|
2257
|
+
onPointerEnter: F,
|
|
2258
|
+
onKeyDown: P,
|
|
2259
|
+
onDragOver: A,
|
|
2219
2260
|
onDragLeave: E,
|
|
2220
|
-
onDrop:
|
|
2221
|
-
className:
|
|
2261
|
+
onDrop: $,
|
|
2262
|
+
className: s(
|
|
2222
2263
|
"select-none touch-none cursor-pointer transition-colors",
|
|
2223
2264
|
"focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-inset",
|
|
2224
2265
|
// Hover state (only when not in selection)
|
|
2225
|
-
!(
|
|
2266
|
+
!(p || i) && "hover:bg-blue-50/60",
|
|
2226
2267
|
// Selection state — blue tint matching the primary color
|
|
2227
2268
|
d && "bg-blue-100/70",
|
|
2228
2269
|
// Drag over state - visual feedback when event is dragged over
|
|
2229
|
-
|
|
2270
|
+
W && "bg-primary/20 ring-2 ring-primary ring-inset",
|
|
2230
2271
|
// Disabled state
|
|
2231
|
-
|
|
2272
|
+
i && "cursor-not-allowed opacity-50",
|
|
2232
2273
|
l
|
|
2233
2274
|
),
|
|
2234
2275
|
style: { height: b, ...v },
|
|
2235
2276
|
...u,
|
|
2236
|
-
children:
|
|
2277
|
+
children: C
|
|
2237
2278
|
}
|
|
2238
2279
|
);
|
|
2239
2280
|
}
|
|
2240
|
-
function
|
|
2281
|
+
function kt({
|
|
2241
2282
|
slot: t,
|
|
2242
2283
|
date: n,
|
|
2243
2284
|
hour: r,
|
|
2244
2285
|
minute: a,
|
|
2245
2286
|
ariaLabel: d,
|
|
2246
|
-
...
|
|
2287
|
+
...p
|
|
2247
2288
|
}) {
|
|
2248
|
-
const
|
|
2249
|
-
return /* @__PURE__ */ e(
|
|
2289
|
+
const i = t ?? { date: n, hour: r ?? 0, minute: a ?? 0 }, y = d ?? `Add event at ${(i.hour ?? 0).toString().padStart(2, "0")}:${(i.minute ?? 0).toString().padStart(2, "0")} on ${i.date.toLocaleDateString()}`;
|
|
2290
|
+
return /* @__PURE__ */ e(Nt, { slot: i, ariaLabel: y, ...p });
|
|
2250
2291
|
}
|
|
2251
|
-
function
|
|
2252
|
-
const d = t ?? { date: n },
|
|
2253
|
-
return /* @__PURE__ */ e(
|
|
2292
|
+
function Ln({ slot: t, date: n, ariaLabel: r, ...a }) {
|
|
2293
|
+
const d = t ?? { date: n }, p = r ?? `Select ${d.date.toLocaleDateString()}`;
|
|
2294
|
+
return /* @__PURE__ */ e(Nt, { slot: d, ariaLabel: p, ...a });
|
|
2254
2295
|
}
|
|
2255
2296
|
const we = 96, _e = 72, Ie = 80;
|
|
2256
|
-
function
|
|
2297
|
+
function Zn({
|
|
2257
2298
|
events: t,
|
|
2258
2299
|
date: n,
|
|
2259
2300
|
visibleHours: r = { startHour: 0, endHour: 24 },
|
|
2260
2301
|
workingHours: a,
|
|
2261
2302
|
slotDuration: d = 30,
|
|
2262
|
-
badgeVariant:
|
|
2263
|
-
onEventClick:
|
|
2303
|
+
badgeVariant: p = "colored",
|
|
2304
|
+
onEventClick: i,
|
|
2264
2305
|
onSlotSelect: y,
|
|
2265
|
-
className:
|
|
2306
|
+
className: C,
|
|
2266
2307
|
renderEvent: l,
|
|
2267
2308
|
renderPopover: b,
|
|
2268
2309
|
slots: v,
|
|
2269
2310
|
classNames: u
|
|
2270
2311
|
}) {
|
|
2271
|
-
const x = 60 / d,
|
|
2312
|
+
const x = 60 / d, f = 100 / x, N = q(() => {
|
|
2272
2313
|
const w = [];
|
|
2273
2314
|
for (let c = 0; c < x; c++)
|
|
2274
2315
|
w.push(c * d);
|
|
2275
2316
|
return w;
|
|
2276
|
-
}, [x, d]), g =
|
|
2277
|
-
const w =
|
|
2317
|
+
}, [x, d]), g = q(() => Ve(t, n), [t, n]), { singleDay: W, multiDay: S } = q(() => it(g), [g]), T = q(() => {
|
|
2318
|
+
const w = lt(W, n, r, we), c = /* @__PURE__ */ new Map();
|
|
2278
2319
|
for (const m of w)
|
|
2279
2320
|
c.set(m.event.id, m.position);
|
|
2280
2321
|
return c;
|
|
2281
|
-
}, [
|
|
2282
|
-
if (!
|
|
2283
|
-
const w =
|
|
2322
|
+
}, [W, n, r]), I = q(() => dt(r), [r]), G = /* @__PURE__ */ new Date(), F = ce(n), O = q(() => {
|
|
2323
|
+
if (!F) return 0;
|
|
2324
|
+
const w = G.getHours() + G.getMinutes() / 60;
|
|
2284
2325
|
return w < r.startHour || w > r.endHour ? -1 : (w - r.startHour) * we;
|
|
2285
|
-
}, [
|
|
2286
|
-
|
|
2287
|
-
const w =
|
|
2326
|
+
}, [F, r, G]), A = re(null);
|
|
2327
|
+
Fe(() => {
|
|
2328
|
+
const w = A.current;
|
|
2288
2329
|
if (!w) return;
|
|
2289
2330
|
const c = () => {
|
|
2290
2331
|
let m;
|
|
2291
|
-
if (
|
|
2292
|
-
const
|
|
2293
|
-
m = Math.max(
|
|
2332
|
+
if (F) {
|
|
2333
|
+
const D = (/* @__PURE__ */ new Date()).getHours();
|
|
2334
|
+
m = Math.max(D - 1, r.startHour);
|
|
2294
2335
|
} else {
|
|
2295
|
-
const
|
|
2296
|
-
|
|
2336
|
+
const D = n.getDay(), H = a?.[D];
|
|
2337
|
+
H?.enabled && H.from > 0 ? m = Math.max(H.from - 1, r.startHour) : m = Math.max(7, r.startHour);
|
|
2297
2338
|
}
|
|
2298
|
-
const
|
|
2339
|
+
const M = (m - r.startHour) * we;
|
|
2299
2340
|
w.scrollTo({
|
|
2300
|
-
top:
|
|
2341
|
+
top: M,
|
|
2301
2342
|
behavior: "instant"
|
|
2302
2343
|
});
|
|
2303
2344
|
};
|
|
2304
2345
|
requestAnimationFrame(() => {
|
|
2305
2346
|
requestAnimationFrame(c);
|
|
2306
2347
|
});
|
|
2307
|
-
}, [n, a, r,
|
|
2308
|
-
const E =
|
|
2348
|
+
}, [n, a, r, F]);
|
|
2349
|
+
const E = Ue(), $ = L(
|
|
2309
2350
|
(w) => {
|
|
2310
2351
|
E?.startSelection(w);
|
|
2311
2352
|
},
|
|
2312
2353
|
[E]
|
|
2313
|
-
),
|
|
2354
|
+
), P = L(
|
|
2314
2355
|
(w) => {
|
|
2315
2356
|
E?.updateSelection(w);
|
|
2316
2357
|
},
|
|
2317
2358
|
[E]
|
|
2318
|
-
),
|
|
2359
|
+
), k = L(() => {
|
|
2319
2360
|
E?.endSelection();
|
|
2320
|
-
}, [E]),
|
|
2361
|
+
}, [E]), h = L(
|
|
2321
2362
|
(w) => {
|
|
2322
|
-
|
|
2363
|
+
i?.(w);
|
|
2323
2364
|
},
|
|
2324
|
-
[
|
|
2325
|
-
), R = n.toLocaleDateString([], { weekday: "short" }),
|
|
2326
|
-
return /* @__PURE__ */ o("div", { className:
|
|
2365
|
+
[i]
|
|
2366
|
+
), R = n.toLocaleDateString([], { weekday: "short" }), _ = n.getDate(), B = ce(n);
|
|
2367
|
+
return /* @__PURE__ */ o("div", { className: s("flex flex-col h-full", C), children: [
|
|
2327
2368
|
/* @__PURE__ */ e(
|
|
2328
2369
|
"div",
|
|
2329
2370
|
{
|
|
2330
|
-
className:
|
|
2371
|
+
className: s(
|
|
2331
2372
|
"flex items-center gap-3 border-b px-4 py-3",
|
|
2332
2373
|
u?.columnHeader,
|
|
2333
|
-
|
|
2374
|
+
B && u?.columnHeaderToday
|
|
2334
2375
|
),
|
|
2335
2376
|
children: /* @__PURE__ */ o("div", { className: "flex flex-col items-center", children: [
|
|
2336
2377
|
/* @__PURE__ */ e(
|
|
2337
2378
|
"span",
|
|
2338
2379
|
{
|
|
2339
|
-
className:
|
|
2380
|
+
className: s(
|
|
2340
2381
|
"text-[11px] font-medium uppercase tracking-wide",
|
|
2341
|
-
|
|
2382
|
+
B ? "text-primary" : "text-muted-foreground"
|
|
2342
2383
|
),
|
|
2343
2384
|
children: R
|
|
2344
2385
|
}
|
|
@@ -2346,24 +2387,24 @@ function Jn({
|
|
|
2346
2387
|
/* @__PURE__ */ e(
|
|
2347
2388
|
"span",
|
|
2348
2389
|
{
|
|
2349
|
-
className:
|
|
2390
|
+
className: s(
|
|
2350
2391
|
"flex items-center justify-center rounded-full mt-0.5",
|
|
2351
2392
|
"size-12 text-3xl font-normal",
|
|
2352
|
-
|
|
2393
|
+
B ? "bg-primary text-primary-foreground" : "text-foreground"
|
|
2353
2394
|
),
|
|
2354
|
-
children:
|
|
2395
|
+
children: _
|
|
2355
2396
|
}
|
|
2356
2397
|
)
|
|
2357
2398
|
] })
|
|
2358
2399
|
}
|
|
2359
2400
|
),
|
|
2360
|
-
|
|
2361
|
-
|
|
2401
|
+
S.length > 0 && /* @__PURE__ */ e(
|
|
2402
|
+
An,
|
|
2362
2403
|
{
|
|
2363
|
-
events:
|
|
2404
|
+
events: S,
|
|
2364
2405
|
date: n,
|
|
2365
|
-
onEventClick:
|
|
2366
|
-
disablePopover: !!
|
|
2406
|
+
onEventClick: h,
|
|
2407
|
+
disablePopover: !!i && !b,
|
|
2367
2408
|
renderPopover: b,
|
|
2368
2409
|
...u?.multiDayBanner && { className: u.multiDayBanner }
|
|
2369
2410
|
}
|
|
@@ -2371,26 +2412,26 @@ function Jn({
|
|
|
2371
2412
|
/* @__PURE__ */ e(
|
|
2372
2413
|
"div",
|
|
2373
2414
|
{
|
|
2374
|
-
ref:
|
|
2375
|
-
className:
|
|
2415
|
+
ref: A,
|
|
2416
|
+
className: s("flex-1", u?.scrollContainer),
|
|
2376
2417
|
children: /* @__PURE__ */ o("div", { className: "relative min-h-full", children: [
|
|
2377
|
-
|
|
2378
|
-
const
|
|
2418
|
+
I.map((w, c) => {
|
|
2419
|
+
const M = !ct(n, w, a);
|
|
2379
2420
|
return /* @__PURE__ */ o(
|
|
2380
2421
|
"div",
|
|
2381
2422
|
{
|
|
2382
|
-
className:
|
|
2423
|
+
className: s(
|
|
2383
2424
|
"relative flex",
|
|
2384
|
-
|
|
2425
|
+
M && "bg-calendar-disabled-hour",
|
|
2385
2426
|
u?.timeSlot,
|
|
2386
|
-
|
|
2427
|
+
M ? u?.timeSlotNonWorking : u?.timeSlotWorking
|
|
2387
2428
|
),
|
|
2388
2429
|
style: { height: we },
|
|
2389
2430
|
children: [
|
|
2390
2431
|
/* @__PURE__ */ e(
|
|
2391
2432
|
"div",
|
|
2392
2433
|
{
|
|
2393
|
-
className:
|
|
2434
|
+
className: s(
|
|
2394
2435
|
"relative flex-shrink-0 border-r border-border/50 bg-zinc-50 dark:bg-zinc-900",
|
|
2395
2436
|
u?.timeGutter
|
|
2396
2437
|
),
|
|
@@ -2398,7 +2439,7 @@ function Jn({
|
|
|
2398
2439
|
children: /* @__PURE__ */ e("div", { className: "absolute -top-2.5 right-1 sm:right-2 flex h-5 items-center", children: c !== 0 && /* @__PURE__ */ e(
|
|
2399
2440
|
"span",
|
|
2400
2441
|
{
|
|
2401
|
-
className:
|
|
2442
|
+
className: s(
|
|
2402
2443
|
"text-[10px] sm:text-xs text-muted-foreground",
|
|
2403
2444
|
u?.timeGutterLabel
|
|
2404
2445
|
),
|
|
@@ -2408,36 +2449,36 @@ function Jn({
|
|
|
2408
2449
|
}
|
|
2409
2450
|
),
|
|
2410
2451
|
/* @__PURE__ */ o("div", { className: "relative flex-1", children: [
|
|
2411
|
-
|
|
2452
|
+
F && !M && /* @__PURE__ */ e("div", { className: "absolute inset-0 bg-primary/5" }),
|
|
2412
2453
|
c !== 0 && /* @__PURE__ */ e("div", { className: "pointer-events-none absolute inset-x-0 top-0 border-b border-border/50" }),
|
|
2413
|
-
N.slice(1).map((
|
|
2454
|
+
N.slice(1).map((D) => /* @__PURE__ */ e(
|
|
2414
2455
|
"div",
|
|
2415
2456
|
{
|
|
2416
2457
|
className: "pointer-events-none absolute inset-x-0 border-b border-dashed border-border/30",
|
|
2417
|
-
style: { top: `${
|
|
2458
|
+
style: { top: `${D / 60 * 100}%` }
|
|
2418
2459
|
},
|
|
2419
|
-
|
|
2460
|
+
D
|
|
2420
2461
|
)),
|
|
2421
|
-
N.map((
|
|
2422
|
-
const
|
|
2462
|
+
N.map((D, H) => {
|
|
2463
|
+
const Q = { date: n, hour: w, minute: D };
|
|
2423
2464
|
return /* @__PURE__ */ e(
|
|
2424
|
-
|
|
2465
|
+
kt,
|
|
2425
2466
|
{
|
|
2426
|
-
slot:
|
|
2427
|
-
onSelectionStart:
|
|
2428
|
-
onSelectionMove:
|
|
2429
|
-
onSelectionEnd:
|
|
2430
|
-
isSelected: E?.isSlotSelected(
|
|
2467
|
+
slot: Q,
|
|
2468
|
+
onSelectionStart: $,
|
|
2469
|
+
onSelectionMove: P,
|
|
2470
|
+
onSelectionEnd: k,
|
|
2471
|
+
isSelected: E?.isSlotSelected(Q) ?? !1,
|
|
2431
2472
|
isSelecting: E?.isSelecting ?? !1,
|
|
2432
|
-
disabled:
|
|
2473
|
+
disabled: M,
|
|
2433
2474
|
className: "absolute inset-x-0",
|
|
2434
2475
|
style: {
|
|
2435
|
-
top: `${
|
|
2436
|
-
height: `${
|
|
2476
|
+
top: `${H * f}%`,
|
|
2477
|
+
height: `${f}%`
|
|
2437
2478
|
},
|
|
2438
|
-
ariaLabel: `Add event at ${Ae(w)}:${String(
|
|
2479
|
+
ariaLabel: `Add event at ${Ae(w)}:${String(D).padStart(2, "0")}`
|
|
2439
2480
|
},
|
|
2440
|
-
|
|
2481
|
+
D
|
|
2441
2482
|
);
|
|
2442
2483
|
})
|
|
2443
2484
|
] })
|
|
@@ -2451,10 +2492,10 @@ function Jn({
|
|
|
2451
2492
|
{
|
|
2452
2493
|
className: "absolute top-0 bottom-0 right-0 pointer-events-none",
|
|
2453
2494
|
style: { left: _e },
|
|
2454
|
-
children:
|
|
2495
|
+
children: W.map((w) => {
|
|
2455
2496
|
const c = T.get(w.id);
|
|
2456
2497
|
if (!c) return null;
|
|
2457
|
-
const m = `calc(${c.width}% - 2px)`,
|
|
2498
|
+
const m = `calc(${c.width}% - 2px)`, M = `max(${Ie}px, ${m})`;
|
|
2458
2499
|
return l ? /* @__PURE__ */ e(
|
|
2459
2500
|
"div",
|
|
2460
2501
|
{
|
|
@@ -2462,14 +2503,14 @@ function Jn({
|
|
|
2462
2503
|
style: {
|
|
2463
2504
|
top: `${c.top}px`,
|
|
2464
2505
|
left: `${c.left}%`,
|
|
2465
|
-
width:
|
|
2506
|
+
width: M,
|
|
2466
2507
|
minWidth: `${Ie}px`
|
|
2467
2508
|
},
|
|
2468
2509
|
children: l({ event: w, position: c })
|
|
2469
2510
|
},
|
|
2470
2511
|
w.id
|
|
2471
2512
|
) : /* @__PURE__ */ e(
|
|
2472
|
-
|
|
2513
|
+
wt,
|
|
2473
2514
|
{
|
|
2474
2515
|
event: w,
|
|
2475
2516
|
position: {
|
|
@@ -2479,26 +2520,26 @@ function Jn({
|
|
|
2479
2520
|
minWidth: Ie
|
|
2480
2521
|
},
|
|
2481
2522
|
hourHeight: we,
|
|
2482
|
-
badgeVariant:
|
|
2483
|
-
onClick:
|
|
2484
|
-
disablePopover: !!
|
|
2523
|
+
badgeVariant: p,
|
|
2524
|
+
onClick: i,
|
|
2525
|
+
disablePopover: !!i && !b,
|
|
2485
2526
|
renderPopover: b,
|
|
2486
|
-
className:
|
|
2527
|
+
className: s("pointer-events-auto", u?.eventCard)
|
|
2487
2528
|
},
|
|
2488
2529
|
w.id
|
|
2489
2530
|
);
|
|
2490
2531
|
})
|
|
2491
2532
|
}
|
|
2492
2533
|
),
|
|
2493
|
-
|
|
2534
|
+
F && O >= 0 && /* @__PURE__ */ o(
|
|
2494
2535
|
"div",
|
|
2495
2536
|
{
|
|
2496
|
-
className:
|
|
2537
|
+
className: s(
|
|
2497
2538
|
"absolute left-0 right-0 z-20 flex items-center pointer-events-none",
|
|
2498
2539
|
u?.currentTimeIndicator
|
|
2499
2540
|
),
|
|
2500
2541
|
style: {
|
|
2501
|
-
top:
|
|
2542
|
+
top: O,
|
|
2502
2543
|
left: _e
|
|
2503
2544
|
},
|
|
2504
2545
|
children: [
|
|
@@ -2520,7 +2561,7 @@ const Wn = [
|
|
|
2520
2561
|
{ full: "Friday", short: "Fri", tiny: "F" },
|
|
2521
2562
|
{ full: "Saturday", short: "Sat", tiny: "S" },
|
|
2522
2563
|
{ full: "Sunday", short: "Sun", tiny: "S" }
|
|
2523
|
-
],
|
|
2564
|
+
], Rn = [
|
|
2524
2565
|
{ full: "Sunday", short: "Sun", tiny: "S" },
|
|
2525
2566
|
{ full: "Monday", short: "Mon", tiny: "M" },
|
|
2526
2567
|
{ full: "Tuesday", short: "Tue", tiny: "T" },
|
|
@@ -2529,104 +2570,104 @@ const Wn = [
|
|
|
2529
2570
|
{ full: "Friday", short: "Fri", tiny: "F" },
|
|
2530
2571
|
{ full: "Saturday", short: "Sat", tiny: "S" }
|
|
2531
2572
|
], ve = 3;
|
|
2532
|
-
function
|
|
2573
|
+
function Qn({
|
|
2533
2574
|
events: t,
|
|
2534
2575
|
date: n,
|
|
2535
2576
|
weekStartsOn: r = 1,
|
|
2536
2577
|
badgeVariant: a = "colored",
|
|
2537
2578
|
onEventClick: d,
|
|
2538
|
-
onSlotSelect:
|
|
2539
|
-
onDayClick:
|
|
2579
|
+
onSlotSelect: p,
|
|
2580
|
+
onDayClick: i,
|
|
2540
2581
|
className: y,
|
|
2541
|
-
renderEvent:
|
|
2582
|
+
renderEvent: C,
|
|
2542
2583
|
renderPopover: l,
|
|
2543
2584
|
showMoreMode: b,
|
|
2544
2585
|
showMoreEventsInPopover: v = !1,
|
|
2545
2586
|
slots: u,
|
|
2546
2587
|
classNames: x
|
|
2547
2588
|
}) {
|
|
2548
|
-
const
|
|
2549
|
-
const
|
|
2550
|
-
for (const R of
|
|
2551
|
-
const
|
|
2552
|
-
|
|
2589
|
+
const f = b ?? (v ? "popover" : "expand"), N = u?.dayCellHeader, g = u?.dayCellFooter, [W, S] = Z(null), [T, I] = Z(null), G = q(() => zt(n, r), [n, r]), F = q(() => {
|
|
2590
|
+
const h = /* @__PURE__ */ new Map();
|
|
2591
|
+
for (const R of G) {
|
|
2592
|
+
const _ = R.date.toDateString(), B = Ve(t, R.date);
|
|
2593
|
+
B.sort((w, c) => w.startDate.getTime() - c.startDate.getTime()), h.set(_, B);
|
|
2553
2594
|
}
|
|
2554
|
-
return
|
|
2555
|
-
}, [
|
|
2556
|
-
(
|
|
2557
|
-
|
|
2595
|
+
return h;
|
|
2596
|
+
}, [G, t]), O = Ue(), A = L(
|
|
2597
|
+
(h) => {
|
|
2598
|
+
O?.startSelection(h);
|
|
2558
2599
|
},
|
|
2559
|
-
[
|
|
2560
|
-
), E =
|
|
2561
|
-
(
|
|
2562
|
-
|
|
2600
|
+
[O]
|
|
2601
|
+
), E = L(
|
|
2602
|
+
(h) => {
|
|
2603
|
+
O?.updateSelection(h);
|
|
2563
2604
|
},
|
|
2564
|
-
[
|
|
2565
|
-
),
|
|
2566
|
-
|
|
2567
|
-
}, [
|
|
2568
|
-
(
|
|
2569
|
-
|
|
2605
|
+
[O]
|
|
2606
|
+
), $ = L(() => {
|
|
2607
|
+
O?.endSelection();
|
|
2608
|
+
}, [O]), P = L(
|
|
2609
|
+
(h) => {
|
|
2610
|
+
i?.(h);
|
|
2570
2611
|
},
|
|
2571
|
-
[
|
|
2572
|
-
),
|
|
2573
|
-
return /* @__PURE__ */ o("div", { className:
|
|
2612
|
+
[i]
|
|
2613
|
+
), k = r === 0 ? Rn : Wn;
|
|
2614
|
+
return /* @__PURE__ */ o("div", { className: s("flex flex-col h-full overflow-hidden", y), children: [
|
|
2574
2615
|
/* @__PURE__ */ e("div", { className: "flex flex-col flex-1 overflow-auto", children: /* @__PURE__ */ o("div", { className: "flex flex-col flex-1 min-w-[560px] sm:min-w-0", children: [
|
|
2575
2616
|
/* @__PURE__ */ e(
|
|
2576
2617
|
"div",
|
|
2577
2618
|
{
|
|
2578
|
-
className:
|
|
2619
|
+
className: s(
|
|
2579
2620
|
"grid grid-cols-7 border-b !sticky !top-0 bg-background z-10",
|
|
2580
2621
|
x?.weekdayHeader
|
|
2581
2622
|
),
|
|
2582
|
-
children:
|
|
2623
|
+
children: k.map((h, R) => /* @__PURE__ */ o(
|
|
2583
2624
|
"div",
|
|
2584
2625
|
{
|
|
2585
|
-
className:
|
|
2626
|
+
className: s(
|
|
2586
2627
|
"py-2 sm:py-2.5 text-center text-[11px] uppercase font-medium tracking-wide text-muted-foreground",
|
|
2587
2628
|
R >= 5 && "text-muted-foreground/70",
|
|
2588
2629
|
// Weekend
|
|
2589
2630
|
x?.weekdayLabel
|
|
2590
2631
|
),
|
|
2591
2632
|
children: [
|
|
2592
|
-
/* @__PURE__ */ e("span", { className: "sm:hidden", children:
|
|
2593
|
-
/* @__PURE__ */ e("span", { className: "hidden sm:inline", children:
|
|
2633
|
+
/* @__PURE__ */ e("span", { className: "sm:hidden", children: h.short }),
|
|
2634
|
+
/* @__PURE__ */ e("span", { className: "hidden sm:inline", children: h.short })
|
|
2594
2635
|
]
|
|
2595
2636
|
},
|
|
2596
|
-
|
|
2637
|
+
h.full
|
|
2597
2638
|
))
|
|
2598
2639
|
}
|
|
2599
2640
|
),
|
|
2600
|
-
/* @__PURE__ */ e("div", { className:
|
|
2601
|
-
const R =
|
|
2641
|
+
/* @__PURE__ */ e("div", { className: s("grid grid-cols-7 auto-rows-min", x?.monthGrid), children: G.map((h) => {
|
|
2642
|
+
const R = h.date.toDateString(), _ = F.get(R) || [], B = ce(h.date), w = h.date.getDay() === 0 || h.date.getDay() === 6, c = _.length > ve;
|
|
2602
2643
|
return /* @__PURE__ */ o(
|
|
2603
|
-
|
|
2644
|
+
Ln,
|
|
2604
2645
|
{
|
|
2605
|
-
date:
|
|
2646
|
+
date: h.date,
|
|
2606
2647
|
dataAttributes: { "data-day-key": R },
|
|
2607
|
-
onSelectionStart:
|
|
2648
|
+
onSelectionStart: A,
|
|
2608
2649
|
onSelectionMove: E,
|
|
2609
|
-
onSelectionEnd:
|
|
2610
|
-
isSelected:
|
|
2611
|
-
isSelecting:
|
|
2612
|
-
className:
|
|
2650
|
+
onSelectionEnd: $,
|
|
2651
|
+
isSelected: O?.isSlotSelected({ date: h.date }) ?? !1,
|
|
2652
|
+
isSelecting: O?.isSelecting ?? !1,
|
|
2653
|
+
className: s(
|
|
2613
2654
|
"relative flex flex-col border-r border-b text-left min-h-[80px] sm:min-h-[100px] overflow-hidden",
|
|
2614
2655
|
"[&:nth-child(7n)]:border-r-0",
|
|
2615
|
-
!
|
|
2616
|
-
w &&
|
|
2656
|
+
!h.isCurrentMonth && "bg-muted/20",
|
|
2657
|
+
w && h.isCurrentMonth && "bg-muted/10",
|
|
2617
2658
|
x?.dayCell,
|
|
2618
|
-
|
|
2619
|
-
!
|
|
2659
|
+
B && x?.dayCellToday,
|
|
2660
|
+
!h.isCurrentMonth && x?.dayCellOutside,
|
|
2620
2661
|
w && x?.dayCellWeekend
|
|
2621
2662
|
),
|
|
2622
|
-
ariaLabel: `${
|
|
2663
|
+
ariaLabel: `${h.date.toLocaleDateString()} - ${_.length} events. Click to create event, double-click to view day.`,
|
|
2623
2664
|
children: [
|
|
2624
2665
|
/* @__PURE__ */ e(
|
|
2625
2666
|
"div",
|
|
2626
2667
|
{
|
|
2627
|
-
className:
|
|
2668
|
+
className: s(
|
|
2628
2669
|
"flex items-center justify-center p-1",
|
|
2629
|
-
!
|
|
2670
|
+
!h.isCurrentMonth && "text-muted-foreground/40",
|
|
2630
2671
|
x?.dayCellNumber
|
|
2631
2672
|
),
|
|
2632
2673
|
children: /* @__PURE__ */ e(
|
|
@@ -2634,14 +2675,14 @@ function Zn({
|
|
|
2634
2675
|
{
|
|
2635
2676
|
type: "button",
|
|
2636
2677
|
onClick: (m) => {
|
|
2637
|
-
m.stopPropagation(),
|
|
2678
|
+
m.stopPropagation(), P(h.date);
|
|
2638
2679
|
},
|
|
2639
|
-
className:
|
|
2680
|
+
className: s(
|
|
2640
2681
|
"flex items-center justify-center rounded-full transition-colors",
|
|
2641
2682
|
"size-7 text-sm font-normal",
|
|
2642
|
-
|
|
2683
|
+
B ? "bg-primary text-primary-foreground" : "hover:bg-muted"
|
|
2643
2684
|
),
|
|
2644
|
-
children:
|
|
2685
|
+
children: h.date.getDate()
|
|
2645
2686
|
}
|
|
2646
2687
|
)
|
|
2647
2688
|
}
|
|
@@ -2649,10 +2690,10 @@ function Zn({
|
|
|
2649
2690
|
N && /* @__PURE__ */ e(
|
|
2650
2691
|
N,
|
|
2651
2692
|
{
|
|
2652
|
-
date:
|
|
2653
|
-
events:
|
|
2654
|
-
isToday:
|
|
2655
|
-
isCurrentMonth:
|
|
2693
|
+
date: h.date,
|
|
2694
|
+
events: _,
|
|
2695
|
+
isToday: B,
|
|
2696
|
+
isCurrentMonth: h.isCurrentMonth,
|
|
2656
2697
|
isWeekend: w,
|
|
2657
2698
|
view: "month"
|
|
2658
2699
|
}
|
|
@@ -2660,18 +2701,18 @@ function Zn({
|
|
|
2660
2701
|
/* @__PURE__ */ o(
|
|
2661
2702
|
"div",
|
|
2662
2703
|
{
|
|
2663
|
-
className:
|
|
2704
|
+
className: s(
|
|
2664
2705
|
"flex-1 overflow-hidden px-2 pt-1 pb-1 space-y-1",
|
|
2665
2706
|
x?.dayCellContent
|
|
2666
2707
|
),
|
|
2667
2708
|
children: [
|
|
2668
|
-
|
|
2709
|
+
_.slice(0, ve).map((m) => /* @__PURE__ */ e(
|
|
2669
2710
|
"div",
|
|
2670
2711
|
{
|
|
2671
|
-
onPointerDown: (
|
|
2672
|
-
|
|
2712
|
+
onPointerDown: (M) => {
|
|
2713
|
+
M.stopPropagation();
|
|
2673
2714
|
},
|
|
2674
|
-
children:
|
|
2715
|
+
children: C ? C({ event: m, variant: "compact" }) : /* @__PURE__ */ e(
|
|
2675
2716
|
Ee,
|
|
2676
2717
|
{
|
|
2677
2718
|
event: m,
|
|
@@ -2690,36 +2731,36 @@ function Zn({
|
|
|
2690
2731
|
},
|
|
2691
2732
|
m.id
|
|
2692
2733
|
)),
|
|
2693
|
-
c &&
|
|
2734
|
+
c && f === "expand" && /* @__PURE__ */ o(
|
|
2694
2735
|
"button",
|
|
2695
2736
|
{
|
|
2696
2737
|
type: "button",
|
|
2697
2738
|
onPointerDown: (m) => m.stopPropagation(),
|
|
2698
2739
|
onClick: (m) => {
|
|
2699
2740
|
m.stopPropagation();
|
|
2700
|
-
const
|
|
2701
|
-
|
|
2702
|
-
date:
|
|
2703
|
-
events:
|
|
2704
|
-
rect:
|
|
2741
|
+
const M = document.querySelector(`[data-day-key="${R}"]`);
|
|
2742
|
+
I({
|
|
2743
|
+
date: h.date,
|
|
2744
|
+
events: _,
|
|
2745
|
+
rect: M?.getBoundingClientRect() ?? new DOMRect(window.innerWidth / 2 - 180, window.innerHeight / 2 - 240, 0, 0)
|
|
2705
2746
|
});
|
|
2706
2747
|
},
|
|
2707
|
-
className:
|
|
2748
|
+
className: s(
|
|
2708
2749
|
"w-full text-left text-xs text-muted-foreground hover:text-foreground hover:underline px-1.5 cursor-pointer",
|
|
2709
2750
|
x?.moreEventsIndicator
|
|
2710
2751
|
),
|
|
2711
2752
|
children: [
|
|
2712
2753
|
"+",
|
|
2713
|
-
|
|
2754
|
+
_.length - ve,
|
|
2714
2755
|
" more"
|
|
2715
2756
|
]
|
|
2716
2757
|
}
|
|
2717
2758
|
),
|
|
2718
|
-
c &&
|
|
2759
|
+
c && f === "popover" && /* @__PURE__ */ o(
|
|
2719
2760
|
ue,
|
|
2720
2761
|
{
|
|
2721
|
-
open:
|
|
2722
|
-
onOpenChange: (m) =>
|
|
2762
|
+
open: W === R,
|
|
2763
|
+
onOpenChange: (m) => S(m ? R : null),
|
|
2723
2764
|
children: [
|
|
2724
2765
|
/* @__PURE__ */ e(me, { asChild: !0, children: /* @__PURE__ */ o(
|
|
2725
2766
|
"button",
|
|
@@ -2727,15 +2768,15 @@ function Zn({
|
|
|
2727
2768
|
type: "button",
|
|
2728
2769
|
onPointerDown: (m) => m.stopPropagation(),
|
|
2729
2770
|
onClick: (m) => {
|
|
2730
|
-
m.stopPropagation(),
|
|
2771
|
+
m.stopPropagation(), S(R);
|
|
2731
2772
|
},
|
|
2732
|
-
className:
|
|
2773
|
+
className: s(
|
|
2733
2774
|
"w-full text-left text-xs text-muted-foreground hover:text-foreground hover:underline px-1.5 cursor-pointer",
|
|
2734
2775
|
x?.moreEventsIndicator
|
|
2735
2776
|
),
|
|
2736
2777
|
children: [
|
|
2737
2778
|
"+",
|
|
2738
|
-
|
|
2779
|
+
_.length - ve,
|
|
2739
2780
|
" more"
|
|
2740
2781
|
]
|
|
2741
2782
|
}
|
|
@@ -2750,24 +2791,24 @@ function Zn({
|
|
|
2750
2791
|
onPointerDown: (m) => m.stopPropagation(),
|
|
2751
2792
|
children: [
|
|
2752
2793
|
/* @__PURE__ */ o("div", { className: "flex items-center justify-between mb-2 pb-2 border-b", children: [
|
|
2753
|
-
/* @__PURE__ */ e("span", { className: "text-sm font-medium", children:
|
|
2794
|
+
/* @__PURE__ */ e("span", { className: "text-sm font-medium", children: h.date.toLocaleDateString(void 0, {
|
|
2754
2795
|
weekday: "short",
|
|
2755
2796
|
month: "short",
|
|
2756
2797
|
day: "numeric"
|
|
2757
2798
|
}) }),
|
|
2758
2799
|
/* @__PURE__ */ o("span", { className: "text-xs text-muted-foreground", children: [
|
|
2759
|
-
|
|
2800
|
+
_.length,
|
|
2760
2801
|
" events"
|
|
2761
2802
|
] })
|
|
2762
2803
|
] }),
|
|
2763
|
-
/* @__PURE__ */ e("div", { className: "space-y-1.5", children:
|
|
2804
|
+
/* @__PURE__ */ e("div", { className: "space-y-1.5", children: _.map((m) => /* @__PURE__ */ e("div", { children: C ? C({ event: m, variant: "compact" }) : /* @__PURE__ */ e(
|
|
2764
2805
|
Ee,
|
|
2765
2806
|
{
|
|
2766
2807
|
event: m,
|
|
2767
2808
|
variant: "compact",
|
|
2768
2809
|
badgeVariant: a,
|
|
2769
|
-
onClick: (
|
|
2770
|
-
|
|
2810
|
+
onClick: (M) => {
|
|
2811
|
+
S(null), d?.(M);
|
|
2771
2812
|
},
|
|
2772
2813
|
disablePopover: !!d && !l,
|
|
2773
2814
|
renderPopover: l,
|
|
@@ -2780,19 +2821,19 @@ function Zn({
|
|
|
2780
2821
|
]
|
|
2781
2822
|
}
|
|
2782
2823
|
),
|
|
2783
|
-
c &&
|
|
2824
|
+
c && f === "dayView" && /* @__PURE__ */ o(
|
|
2784
2825
|
"div",
|
|
2785
2826
|
{
|
|
2786
2827
|
onPointerDown: (m) => {
|
|
2787
|
-
m.stopPropagation(),
|
|
2828
|
+
m.stopPropagation(), P(h.date);
|
|
2788
2829
|
},
|
|
2789
|
-
className:
|
|
2830
|
+
className: s(
|
|
2790
2831
|
"w-full text-left text-xs text-muted-foreground hover:text-foreground hover:underline px-1.5 cursor-pointer",
|
|
2791
2832
|
x?.moreEventsIndicator
|
|
2792
2833
|
),
|
|
2793
2834
|
children: [
|
|
2794
2835
|
"+",
|
|
2795
|
-
|
|
2836
|
+
_.length - ve,
|
|
2796
2837
|
" more"
|
|
2797
2838
|
]
|
|
2798
2839
|
}
|
|
@@ -2803,10 +2844,10 @@ function Zn({
|
|
|
2803
2844
|
g && /* @__PURE__ */ e(
|
|
2804
2845
|
g,
|
|
2805
2846
|
{
|
|
2806
|
-
date:
|
|
2807
|
-
events:
|
|
2808
|
-
isToday:
|
|
2809
|
-
isCurrentMonth:
|
|
2847
|
+
date: h.date,
|
|
2848
|
+
events: _,
|
|
2849
|
+
isToday: B,
|
|
2850
|
+
isCurrentMonth: h.isCurrentMonth,
|
|
2810
2851
|
isWeekend: w,
|
|
2811
2852
|
view: "month"
|
|
2812
2853
|
}
|
|
@@ -2818,87 +2859,87 @@ function Zn({
|
|
|
2818
2859
|
}) })
|
|
2819
2860
|
] }) }),
|
|
2820
2861
|
/* @__PURE__ */ e(
|
|
2821
|
-
|
|
2862
|
+
Mn,
|
|
2822
2863
|
{
|
|
2823
2864
|
isOpen: T !== null,
|
|
2824
|
-
onClose: () =>
|
|
2865
|
+
onClose: () => I(null),
|
|
2825
2866
|
date: T?.date ?? /* @__PURE__ */ new Date(),
|
|
2826
2867
|
events: T?.events ?? [],
|
|
2827
2868
|
anchorRect: T?.rect ?? null,
|
|
2828
2869
|
badgeVariant: a,
|
|
2829
2870
|
onEventClick: d,
|
|
2830
|
-
renderEvent:
|
|
2871
|
+
renderEvent: C,
|
|
2831
2872
|
renderPopover: l
|
|
2832
2873
|
}
|
|
2833
2874
|
)
|
|
2834
2875
|
] });
|
|
2835
2876
|
}
|
|
2836
|
-
const
|
|
2837
|
-
function
|
|
2838
|
-
const r =
|
|
2877
|
+
const Le = 26, ot = 2, Me = 4;
|
|
2878
|
+
function at(t, n) {
|
|
2879
|
+
const r = Xe(t);
|
|
2839
2880
|
for (let d = 0; d < n.length; d++) {
|
|
2840
|
-
const
|
|
2841
|
-
if (
|
|
2881
|
+
const p = n[d];
|
|
2882
|
+
if (p && ie(r, p)) return d;
|
|
2842
2883
|
}
|
|
2843
2884
|
const a = n[0];
|
|
2844
|
-
return a && r <
|
|
2885
|
+
return a && r < Xe(a) ? -1 : 7;
|
|
2845
2886
|
}
|
|
2846
|
-
function
|
|
2887
|
+
function _n(t) {
|
|
2847
2888
|
const n = [...t].sort((a, d) => {
|
|
2848
|
-
const
|
|
2849
|
-
return
|
|
2889
|
+
const p = a.endCol - a.startCol, i = d.endCol - d.startCol;
|
|
2890
|
+
return i !== p ? i - p : a.startCol - d.startCol;
|
|
2850
2891
|
}), r = [];
|
|
2851
2892
|
return n.map((a) => {
|
|
2852
2893
|
let d = -1;
|
|
2853
|
-
for (let
|
|
2854
|
-
const y = r[
|
|
2894
|
+
for (let i = 0; i < r.length; i++) {
|
|
2895
|
+
const y = r[i];
|
|
2855
2896
|
if (!y) continue;
|
|
2856
|
-
let
|
|
2897
|
+
let C = !0;
|
|
2857
2898
|
for (let l = a.startCol; l <= a.endCol; l++)
|
|
2858
2899
|
if (y[l]) {
|
|
2859
|
-
|
|
2900
|
+
C = !1;
|
|
2860
2901
|
break;
|
|
2861
2902
|
}
|
|
2862
|
-
if (
|
|
2863
|
-
d =
|
|
2903
|
+
if (C) {
|
|
2904
|
+
d = i;
|
|
2864
2905
|
break;
|
|
2865
2906
|
}
|
|
2866
2907
|
}
|
|
2867
2908
|
d === -1 && (d = r.length, r.push(new Array(7).fill(!1)));
|
|
2868
|
-
const
|
|
2869
|
-
if (
|
|
2870
|
-
for (let
|
|
2871
|
-
|
|
2909
|
+
const p = r[d];
|
|
2910
|
+
if (p)
|
|
2911
|
+
for (let i = a.startCol; i <= a.endCol; i++)
|
|
2912
|
+
p[i] = !0;
|
|
2872
2913
|
return { ...a, row: d };
|
|
2873
2914
|
});
|
|
2874
2915
|
}
|
|
2875
|
-
function
|
|
2916
|
+
function In({
|
|
2876
2917
|
pe: t,
|
|
2877
2918
|
onEventClick: n,
|
|
2878
2919
|
disablePopover: r,
|
|
2879
2920
|
renderPopover: a
|
|
2880
2921
|
}) {
|
|
2881
|
-
const [d,
|
|
2882
|
-
r && n ? n(t.event) : r ||
|
|
2883
|
-
}, [r, n, t.event]),
|
|
2884
|
-
|
|
2922
|
+
const [d, p] = Z(!1), i = de(t.event.color), y = L(() => {
|
|
2923
|
+
r && n ? n(t.event) : r || p(!0);
|
|
2924
|
+
}, [r, n, t.event]), C = L(() => {
|
|
2925
|
+
p(!1);
|
|
2885
2926
|
}, []), l = /* @__PURE__ */ o(
|
|
2886
2927
|
"button",
|
|
2887
2928
|
{
|
|
2888
2929
|
type: "button",
|
|
2889
2930
|
onClick: y,
|
|
2890
|
-
className:
|
|
2931
|
+
className: s(
|
|
2891
2932
|
"inline-flex items-center gap-1 rounded text-[10px] font-medium transition-opacity hover:opacity-80 mx-0.5 overflow-hidden w-full",
|
|
2892
2933
|
"sm:text-xs",
|
|
2893
|
-
|
|
2894
|
-
|
|
2934
|
+
i.bg,
|
|
2935
|
+
i.text,
|
|
2895
2936
|
t.event.isCanceled && "opacity-60 line-through",
|
|
2896
2937
|
t.continuesBefore && "rounded-l-none -ml-0.5 pl-1",
|
|
2897
2938
|
t.continuesAfter && "rounded-r-none -mr-0.5 pr-1"
|
|
2898
2939
|
),
|
|
2899
2940
|
style: {
|
|
2900
|
-
height:
|
|
2901
|
-
lineHeight: `${
|
|
2941
|
+
height: Le,
|
|
2942
|
+
lineHeight: `${Le}px`,
|
|
2902
2943
|
paddingLeft: t.continuesBefore ? 4 : 6,
|
|
2903
2944
|
paddingRight: t.continuesAfter ? 4 : 6
|
|
2904
2945
|
},
|
|
@@ -2909,41 +2950,41 @@ function _n({
|
|
|
2909
2950
|
t.continuesAfter && /* @__PURE__ */ e("span", { className: "text-[9px] opacity-60 flex-shrink-0", children: "▸" })
|
|
2910
2951
|
]
|
|
2911
2952
|
}
|
|
2912
|
-
), b = /* @__PURE__ */ e(
|
|
2953
|
+
), b = /* @__PURE__ */ e(oe, { children: /* @__PURE__ */ o("div", { className: "flex flex-col gap-0.5", children: [
|
|
2913
2954
|
/* @__PURE__ */ e("div", { className: "font-medium", children: t.event.title }),
|
|
2914
|
-
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children:
|
|
2955
|
+
/* @__PURE__ */ e("div", { className: "text-xs text-muted-foreground tabular-nums", children: Y(t.event) })
|
|
2915
2956
|
] }) }), v = {
|
|
2916
2957
|
gridColumn: `${t.startCol + 2} / ${t.endCol + 3}`,
|
|
2917
2958
|
gridRow: t.row + 1
|
|
2918
2959
|
};
|
|
2919
2960
|
return r ? /* @__PURE__ */ e("div", { style: v, children: /* @__PURE__ */ o(ae, { children: [
|
|
2920
|
-
/* @__PURE__ */ e(
|
|
2961
|
+
/* @__PURE__ */ e(se, { asChild: !0, children: l }),
|
|
2921
2962
|
b
|
|
2922
|
-
] }) }) : /* @__PURE__ */ e("div", { style: v, children: /* @__PURE__ */ o(ue, { open: d, onOpenChange:
|
|
2963
|
+
] }) }) : /* @__PURE__ */ e("div", { style: v, children: /* @__PURE__ */ o(ue, { open: d, onOpenChange: p, children: [
|
|
2923
2964
|
/* @__PURE__ */ e(me, { asChild: !0, children: l }),
|
|
2924
|
-
/* @__PURE__ */ e(le, { className: "w-80", children: a ? a({ event: t.event, onClose:
|
|
2965
|
+
/* @__PURE__ */ e(le, { className: "w-80", children: a ? a({ event: t.event, onClose: C }) : /* @__PURE__ */ e(Bn, { event: t.event, onClose: C }) })
|
|
2925
2966
|
] }) });
|
|
2926
2967
|
}
|
|
2927
|
-
function
|
|
2968
|
+
function Bn({
|
|
2928
2969
|
event: t,
|
|
2929
2970
|
onClose: n
|
|
2930
2971
|
}) {
|
|
2931
2972
|
const r = de(t.color), a = t.isCanceled ?? !1;
|
|
2932
2973
|
return /* @__PURE__ */ o("div", { className: "space-y-3", children: [
|
|
2933
2974
|
/* @__PURE__ */ o("div", { className: "flex items-start gap-3", children: [
|
|
2934
|
-
/* @__PURE__ */ e("div", { className:
|
|
2975
|
+
/* @__PURE__ */ e("div", { className: s("size-4 rounded shrink-0 mt-0.5", r.dot) }),
|
|
2935
2976
|
/* @__PURE__ */ o("div", { className: "flex-1 min-w-0", children: [
|
|
2936
2977
|
/* @__PURE__ */ e(
|
|
2937
2978
|
"h3",
|
|
2938
2979
|
{
|
|
2939
|
-
className:
|
|
2980
|
+
className: s(
|
|
2940
2981
|
"font-semibold text-lg",
|
|
2941
2982
|
a && "line-through opacity-50"
|
|
2942
2983
|
),
|
|
2943
2984
|
children: t.title
|
|
2944
2985
|
}
|
|
2945
2986
|
),
|
|
2946
|
-
/* @__PURE__ */ e("div", { className: "flex items-center gap-1 text-sm text-muted-foreground mt-1 tabular-nums", children:
|
|
2987
|
+
/* @__PURE__ */ e("div", { className: "flex items-center gap-1 text-sm text-muted-foreground mt-1 tabular-nums", children: Y(t) })
|
|
2947
2988
|
] })
|
|
2948
2989
|
] }),
|
|
2949
2990
|
t.description && /* @__PURE__ */ e("p", { className: "text-sm text-muted-foreground", children: t.description }),
|
|
@@ -2962,51 +3003,51 @@ function In({
|
|
|
2962
3003
|
) })
|
|
2963
3004
|
] });
|
|
2964
3005
|
}
|
|
2965
|
-
function
|
|
3006
|
+
function $n({
|
|
2966
3007
|
events: t,
|
|
2967
3008
|
weekDays: n,
|
|
2968
3009
|
hourColumnWidth: r,
|
|
2969
3010
|
minDayColumnWidth: a,
|
|
2970
3011
|
dayColumnWidths: d,
|
|
2971
|
-
onEventClick:
|
|
2972
|
-
disablePopover:
|
|
3012
|
+
onEventClick: p,
|
|
3013
|
+
disablePopover: i = !1,
|
|
2973
3014
|
renderPopover: y,
|
|
2974
|
-
className:
|
|
3015
|
+
className: C
|
|
2975
3016
|
}) {
|
|
2976
|
-
const l =
|
|
3017
|
+
const l = q(() => {
|
|
2977
3018
|
if (t.length === 0) return [];
|
|
2978
|
-
const g = t.map((
|
|
2979
|
-
const
|
|
2980
|
-
if (
|
|
2981
|
-
const
|
|
3019
|
+
const g = t.map((W) => {
|
|
3020
|
+
const S = at(W.startDate, n), T = at(W.endDate, n), I = Math.max(0, S), G = Math.min(6, T);
|
|
3021
|
+
if (I > 6 || G < 0) return null;
|
|
3022
|
+
const F = S < 0, O = T > 6, E = ze(W) && ie(W.startDate, W.endDate);
|
|
2982
3023
|
return {
|
|
2983
|
-
event:
|
|
2984
|
-
startCol:
|
|
2985
|
-
endCol:
|
|
2986
|
-
continuesBefore:
|
|
2987
|
-
continuesAfter:
|
|
3024
|
+
event: W,
|
|
3025
|
+
startCol: I,
|
|
3026
|
+
endCol: G,
|
|
3027
|
+
continuesBefore: F,
|
|
3028
|
+
continuesAfter: O,
|
|
2988
3029
|
isSingleDayAllDay: E
|
|
2989
3030
|
};
|
|
2990
3031
|
}).filter(Boolean);
|
|
2991
|
-
return
|
|
3032
|
+
return _n(g);
|
|
2992
3033
|
}, [t, n]);
|
|
2993
3034
|
if (l.length === 0) return null;
|
|
2994
|
-
const b = Math.max(...l.map((g) => g.row)) + 1, v = Math.min(b, Me), u = b > Me, x = u ? l.filter((g) => g.row >= Me).length : 0,
|
|
3035
|
+
const b = Math.max(...l.map((g) => g.row)) + 1, v = Math.min(b, Me), u = b > Me, x = u ? l.filter((g) => g.row >= Me).length : 0, f = [
|
|
2995
3036
|
`${r}px`,
|
|
2996
3037
|
...d.map((g) => g > a ? `${g}px` : `minmax(${a}px, 1fr)`)
|
|
2997
|
-
].join(" "), N = v *
|
|
3038
|
+
].join(" "), N = v * Le + (v - 1) * ot + 8;
|
|
2998
3039
|
return /* @__PURE__ */ o(
|
|
2999
3040
|
"div",
|
|
3000
3041
|
{
|
|
3001
|
-
className:
|
|
3042
|
+
className: s(
|
|
3002
3043
|
"ic-all-day-row border-b bg-muted/20 relative",
|
|
3003
|
-
|
|
3044
|
+
C
|
|
3004
3045
|
),
|
|
3005
3046
|
style: {
|
|
3006
3047
|
display: "grid",
|
|
3007
|
-
gridTemplateColumns:
|
|
3008
|
-
gridTemplateRows: `repeat(${v}, ${
|
|
3009
|
-
gap: `${
|
|
3048
|
+
gridTemplateColumns: f,
|
|
3049
|
+
gridTemplateRows: `repeat(${v}, ${Le}px)`,
|
|
3050
|
+
gap: `${ot}px 0`,
|
|
3010
3051
|
paddingTop: 4,
|
|
3011
3052
|
paddingBottom: 4,
|
|
3012
3053
|
minHeight: N
|
|
@@ -3023,23 +3064,23 @@ function Bn({
|
|
|
3023
3064
|
children: /* @__PURE__ */ e("span", { className: "hidden sm:inline", children: "All day" })
|
|
3024
3065
|
}
|
|
3025
3066
|
),
|
|
3026
|
-
n.map((g,
|
|
3067
|
+
n.map((g, W) => /* @__PURE__ */ e(
|
|
3027
3068
|
"div",
|
|
3028
3069
|
{
|
|
3029
3070
|
className: "pointer-events-none border-r last:border-r-0",
|
|
3030
3071
|
style: {
|
|
3031
|
-
gridColumn:
|
|
3072
|
+
gridColumn: W + 2,
|
|
3032
3073
|
gridRow: `1 / span ${v}`
|
|
3033
3074
|
}
|
|
3034
3075
|
},
|
|
3035
3076
|
g.toDateString()
|
|
3036
3077
|
)),
|
|
3037
3078
|
l.filter((g) => g.row < Me).map((g) => /* @__PURE__ */ e(
|
|
3038
|
-
|
|
3079
|
+
In,
|
|
3039
3080
|
{
|
|
3040
3081
|
pe: g,
|
|
3041
|
-
onEventClick:
|
|
3042
|
-
disablePopover:
|
|
3082
|
+
onEventClick: p,
|
|
3083
|
+
disablePopover: i,
|
|
3043
3084
|
renderPopover: y
|
|
3044
3085
|
},
|
|
3045
3086
|
g.event.id
|
|
@@ -3063,140 +3104,140 @@ function Bn({
|
|
|
3063
3104
|
}
|
|
3064
3105
|
);
|
|
3065
3106
|
}
|
|
3066
|
-
const he = 96, Ne = 56,
|
|
3067
|
-
function
|
|
3107
|
+
const he = 96, Ne = 56, st = 72, ne = 120, Te = 100, Hn = 3;
|
|
3108
|
+
function er({
|
|
3068
3109
|
events: t,
|
|
3069
3110
|
date: n,
|
|
3070
3111
|
weekStartsOn: r = 1,
|
|
3071
3112
|
visibleHours: a = { startHour: 0, endHour: 24 },
|
|
3072
3113
|
workingHours: d,
|
|
3073
|
-
slotDuration:
|
|
3074
|
-
badgeVariant:
|
|
3114
|
+
slotDuration: p = 30,
|
|
3115
|
+
badgeVariant: i = "colored",
|
|
3075
3116
|
onEventClick: y,
|
|
3076
|
-
onSlotSelect:
|
|
3117
|
+
onSlotSelect: C,
|
|
3077
3118
|
onDayClick: l,
|
|
3078
3119
|
className: b,
|
|
3079
3120
|
renderEvent: v,
|
|
3080
3121
|
renderPopover: u,
|
|
3081
3122
|
slots: x,
|
|
3082
|
-
classNames:
|
|
3123
|
+
classNames: f
|
|
3083
3124
|
}) {
|
|
3084
|
-
const N = 60 /
|
|
3125
|
+
const N = 60 / p, g = 100 / N, W = q(() => {
|
|
3085
3126
|
const c = [];
|
|
3086
3127
|
for (let m = 0; m < N; m++)
|
|
3087
|
-
c.push(m *
|
|
3128
|
+
c.push(m * p);
|
|
3088
3129
|
return c;
|
|
3089
|
-
}, [N,
|
|
3090
|
-
() =>
|
|
3130
|
+
}, [N, p]), S = q(
|
|
3131
|
+
() => At(n, r),
|
|
3091
3132
|
[n, r]
|
|
3092
|
-
), T =
|
|
3093
|
-
() =>
|
|
3133
|
+
), T = q(
|
|
3134
|
+
() => dt(a),
|
|
3094
3135
|
[a]
|
|
3095
|
-
),
|
|
3136
|
+
), I = q(() => {
|
|
3096
3137
|
const c = /* @__PURE__ */ new Map();
|
|
3097
|
-
for (const m of
|
|
3098
|
-
const
|
|
3099
|
-
|
|
3138
|
+
for (const m of S) {
|
|
3139
|
+
const M = m.toDateString(), D = Ve(t, m), { singleDay: H, multiDay: Q } = it(D), z = lt(
|
|
3140
|
+
H,
|
|
3100
3141
|
m,
|
|
3101
3142
|
a,
|
|
3102
3143
|
he
|
|
3103
|
-
),
|
|
3104
|
-
let
|
|
3105
|
-
for (const
|
|
3106
|
-
if (
|
|
3107
|
-
const ee = Math.round(100 /
|
|
3108
|
-
|
|
3144
|
+
), j = /* @__PURE__ */ new Map();
|
|
3145
|
+
let te = 1;
|
|
3146
|
+
for (const J of z)
|
|
3147
|
+
if (j.set(J.event.id, J.position), J.position.width > 0) {
|
|
3148
|
+
const ee = Math.round(100 / J.position.width);
|
|
3149
|
+
te = Math.max(te, ee);
|
|
3109
3150
|
}
|
|
3110
|
-
c.set(
|
|
3111
|
-
singleDay:
|
|
3112
|
-
multiDay:
|
|
3113
|
-
positions:
|
|
3114
|
-
maxOverlapping:
|
|
3151
|
+
c.set(M, {
|
|
3152
|
+
singleDay: H,
|
|
3153
|
+
multiDay: Q,
|
|
3154
|
+
positions: j,
|
|
3155
|
+
maxOverlapping: te
|
|
3115
3156
|
});
|
|
3116
3157
|
}
|
|
3117
3158
|
return c;
|
|
3118
|
-
}, [
|
|
3159
|
+
}, [S, t, a]), G = q(() => {
|
|
3119
3160
|
const c = /* @__PURE__ */ new Map();
|
|
3120
|
-
for (const { multiDay: m } of
|
|
3121
|
-
for (const
|
|
3122
|
-
c.set(
|
|
3161
|
+
for (const { multiDay: m } of I.values())
|
|
3162
|
+
for (const M of m)
|
|
3163
|
+
c.set(M.id, M);
|
|
3123
3164
|
return Array.from(c.values());
|
|
3124
|
-
}, [
|
|
3125
|
-
if (
|
|
3126
|
-
const c =
|
|
3165
|
+
}, [I]), F = /* @__PURE__ */ new Date(), O = S.findIndex((c) => ce(c)), A = q(() => {
|
|
3166
|
+
if (O < 0) return -1;
|
|
3167
|
+
const c = F.getHours() + F.getMinutes() / 60;
|
|
3127
3168
|
return c < a.startHour || c > a.endHour ? -1 : (c - a.startHour) * he;
|
|
3128
|
-
}, [
|
|
3129
|
-
|
|
3169
|
+
}, [O, a, F]), E = re(null);
|
|
3170
|
+
Fe(() => {
|
|
3130
3171
|
const c = E.current;
|
|
3131
3172
|
if (!c) return;
|
|
3132
3173
|
const m = () => {
|
|
3133
|
-
let
|
|
3134
|
-
if (
|
|
3135
|
-
const
|
|
3136
|
-
|
|
3174
|
+
let M;
|
|
3175
|
+
if (O !== -1) {
|
|
3176
|
+
const H = (/* @__PURE__ */ new Date()).getHours();
|
|
3177
|
+
M = Math.max(H - 1, a.startHour);
|
|
3137
3178
|
} else {
|
|
3138
|
-
const
|
|
3139
|
-
let
|
|
3140
|
-
if (
|
|
3141
|
-
const
|
|
3142
|
-
|
|
3179
|
+
const Q = (/* @__PURE__ */ new Date()).getDay();
|
|
3180
|
+
let z = d?.[Q];
|
|
3181
|
+
if (!z?.enabled || z.from === 0) {
|
|
3182
|
+
const j = d?.[1];
|
|
3183
|
+
j?.enabled && (z = j);
|
|
3143
3184
|
}
|
|
3144
|
-
|
|
3145
|
-
|
|
3185
|
+
z?.enabled && z.from > 0 ? M = Math.max(
|
|
3186
|
+
z.from - 1,
|
|
3146
3187
|
a.startHour
|
|
3147
|
-
) :
|
|
3188
|
+
) : M = Math.max(7, a.startHour);
|
|
3148
3189
|
}
|
|
3149
|
-
const
|
|
3190
|
+
const D = (M - a.startHour) * he;
|
|
3150
3191
|
c.scrollTo({
|
|
3151
|
-
top:
|
|
3192
|
+
top: D,
|
|
3152
3193
|
behavior: "instant"
|
|
3153
3194
|
});
|
|
3154
3195
|
};
|
|
3155
3196
|
requestAnimationFrame(() => {
|
|
3156
3197
|
requestAnimationFrame(m);
|
|
3157
3198
|
});
|
|
3158
|
-
}, [n, d, a,
|
|
3159
|
-
const
|
|
3199
|
+
}, [n, d, a, O]);
|
|
3200
|
+
const $ = Ue(), P = L(
|
|
3160
3201
|
(c) => {
|
|
3161
|
-
|
|
3202
|
+
$?.startSelection(c);
|
|
3162
3203
|
},
|
|
3163
|
-
[
|
|
3164
|
-
),
|
|
3204
|
+
[$]
|
|
3205
|
+
), k = L(
|
|
3165
3206
|
(c) => {
|
|
3166
|
-
|
|
3207
|
+
$?.updateSelection(c);
|
|
3167
3208
|
},
|
|
3168
|
-
[
|
|
3169
|
-
),
|
|
3170
|
-
|
|
3171
|
-
}, [
|
|
3209
|
+
[$]
|
|
3210
|
+
), h = L(() => {
|
|
3211
|
+
$?.endSelection();
|
|
3212
|
+
}, [$]), R = L(
|
|
3172
3213
|
(c) => {
|
|
3173
3214
|
y?.(c);
|
|
3174
3215
|
},
|
|
3175
3216
|
[y]
|
|
3176
|
-
),
|
|
3217
|
+
), _ = Ne + 7 * ne, B = q(() => {
|
|
3177
3218
|
const c = [];
|
|
3178
|
-
for (const m of
|
|
3179
|
-
const
|
|
3180
|
-
|
|
3181
|
-
Math.max(
|
|
3182
|
-
) : c.push(
|
|
3219
|
+
for (const m of S) {
|
|
3220
|
+
const M = m.toDateString(), H = I.get(M)?.maxOverlapping ?? 1;
|
|
3221
|
+
H > Hn ? c.push(
|
|
3222
|
+
Math.max(ne, H * Te)
|
|
3223
|
+
) : c.push(ne);
|
|
3183
3224
|
}
|
|
3184
3225
|
return c;
|
|
3185
|
-
}, [
|
|
3186
|
-
return /* @__PURE__ */ o("div", { className:
|
|
3187
|
-
|
|
3188
|
-
|
|
3226
|
+
}, [S, I]), w = Ne + B.reduce((c, m) => c + m, 0);
|
|
3227
|
+
return /* @__PURE__ */ o("div", { className: s("ic-week-view flex flex-col h-full", b), children: [
|
|
3228
|
+
G.length > 0 && /* @__PURE__ */ e(
|
|
3229
|
+
$n,
|
|
3189
3230
|
{
|
|
3190
|
-
events:
|
|
3191
|
-
weekDays:
|
|
3231
|
+
events: G,
|
|
3232
|
+
weekDays: S,
|
|
3192
3233
|
hourColumnWidth: Ne,
|
|
3193
|
-
minDayColumnWidth:
|
|
3194
|
-
dayColumnWidths:
|
|
3234
|
+
minDayColumnWidth: ne,
|
|
3235
|
+
dayColumnWidths: B,
|
|
3195
3236
|
onEventClick: R,
|
|
3196
3237
|
disablePopover: !!y && !u,
|
|
3197
3238
|
renderPopover: u,
|
|
3198
|
-
...
|
|
3199
|
-
className:
|
|
3239
|
+
...f?.multiDayBanner && {
|
|
3240
|
+
className: f.multiDayBanner
|
|
3200
3241
|
}
|
|
3201
3242
|
}
|
|
3202
3243
|
),
|
|
@@ -3204,47 +3245,47 @@ function Qn({
|
|
|
3204
3245
|
"div",
|
|
3205
3246
|
{
|
|
3206
3247
|
ref: E,
|
|
3207
|
-
className:
|
|
3248
|
+
className: s(
|
|
3208
3249
|
"ic-week-scroll-container flex-1",
|
|
3209
|
-
|
|
3250
|
+
f?.scrollContainer
|
|
3210
3251
|
),
|
|
3211
|
-
children: /* @__PURE__ */ o("div", { style: { minWidth: Math.max(
|
|
3252
|
+
children: /* @__PURE__ */ o("div", { style: { minWidth: Math.max(_, w) }, children: [
|
|
3212
3253
|
/* @__PURE__ */ e("div", { className: "ic-week-header sticky top-0 z-20 border-b bg-background", children: /* @__PURE__ */ o("div", { className: "flex", children: [
|
|
3213
3254
|
/* @__PURE__ */ e(
|
|
3214
3255
|
"div",
|
|
3215
3256
|
{
|
|
3216
3257
|
className: "flex-shrink-0 flex items-end justify-center pb-2 text-[10px] text-muted-foreground/70",
|
|
3217
|
-
style: { width: Ne, height:
|
|
3258
|
+
style: { width: Ne, height: st },
|
|
3218
3259
|
children: /* @__PURE__ */ o("span", { className: "hidden sm:inline", children: [
|
|
3219
3260
|
"GMT",
|
|
3220
3261
|
(() => {
|
|
3221
|
-
const c = (/* @__PURE__ */ new Date()).getTimezoneOffset(), m = Math.abs(Math.floor(c / 60)),
|
|
3222
|
-
return m > 0 ? `${
|
|
3262
|
+
const c = (/* @__PURE__ */ new Date()).getTimezoneOffset(), m = Math.abs(Math.floor(c / 60)), M = c <= 0 ? "+" : "-";
|
|
3263
|
+
return m > 0 ? `${M}${String(m).padStart(2, "0")}` : "";
|
|
3223
3264
|
})()
|
|
3224
3265
|
] })
|
|
3225
3266
|
}
|
|
3226
3267
|
),
|
|
3227
|
-
|
|
3228
|
-
const
|
|
3268
|
+
S.map((c, m) => {
|
|
3269
|
+
const M = ce(c), D = B[m] ?? ne, H = D > ne;
|
|
3229
3270
|
return /* @__PURE__ */ o(
|
|
3230
3271
|
"div",
|
|
3231
3272
|
{
|
|
3232
|
-
className:
|
|
3273
|
+
className: s(
|
|
3233
3274
|
"flex-1 flex flex-col items-center justify-center border-r last:border-r-0 py-2",
|
|
3234
|
-
|
|
3235
|
-
|
|
3275
|
+
f?.columnHeader,
|
|
3276
|
+
M && f?.columnHeaderToday
|
|
3236
3277
|
),
|
|
3237
3278
|
style: {
|
|
3238
|
-
height:
|
|
3239
|
-
minWidth:
|
|
3279
|
+
height: st,
|
|
3280
|
+
minWidth: H ? D : ne
|
|
3240
3281
|
},
|
|
3241
3282
|
children: [
|
|
3242
3283
|
/* @__PURE__ */ e(
|
|
3243
3284
|
"span",
|
|
3244
3285
|
{
|
|
3245
|
-
className:
|
|
3286
|
+
className: s(
|
|
3246
3287
|
"text-[11px] font-medium uppercase tracking-wide",
|
|
3247
|
-
|
|
3288
|
+
M ? "text-primary" : "text-muted-foreground"
|
|
3248
3289
|
),
|
|
3249
3290
|
children: c.toLocaleDateString([], { weekday: "short" })
|
|
3250
3291
|
}
|
|
@@ -3254,10 +3295,10 @@ function Qn({
|
|
|
3254
3295
|
{
|
|
3255
3296
|
type: "button",
|
|
3256
3297
|
onClick: () => l?.(c),
|
|
3257
|
-
className:
|
|
3298
|
+
className: s(
|
|
3258
3299
|
"flex items-center justify-center rounded-full transition-colors mt-0.5",
|
|
3259
3300
|
"size-10 text-2xl font-normal",
|
|
3260
|
-
|
|
3301
|
+
M ? "bg-primary text-primary-foreground" : "text-foreground hover:bg-muted"
|
|
3261
3302
|
),
|
|
3262
3303
|
children: c.getDate()
|
|
3263
3304
|
}
|
|
@@ -3272,9 +3313,9 @@ function Qn({
|
|
|
3272
3313
|
/* @__PURE__ */ e(
|
|
3273
3314
|
"div",
|
|
3274
3315
|
{
|
|
3275
|
-
className:
|
|
3316
|
+
className: s(
|
|
3276
3317
|
"ic-hour-column sticky left-0 z-10 bg-zinc-50 border-r",
|
|
3277
|
-
|
|
3318
|
+
f?.timeGutter
|
|
3278
3319
|
),
|
|
3279
3320
|
style: { width: Ne },
|
|
3280
3321
|
children: T.map((c, m) => /* @__PURE__ */ e(
|
|
@@ -3285,9 +3326,9 @@ function Qn({
|
|
|
3285
3326
|
children: /* @__PURE__ */ e("div", { className: "absolute -top-2.5 right-1 sm:right-2 flex h-5 items-center", children: m !== 0 && /* @__PURE__ */ e(
|
|
3286
3327
|
"span",
|
|
3287
3328
|
{
|
|
3288
|
-
className:
|
|
3329
|
+
className: s(
|
|
3289
3330
|
"text-[10px] sm:text-xs text-muted-foreground",
|
|
3290
|
-
|
|
3331
|
+
f?.timeGutterLabel
|
|
3291
3332
|
),
|
|
3292
3333
|
children: Ae(c)
|
|
3293
3334
|
}
|
|
@@ -3297,36 +3338,36 @@ function Qn({
|
|
|
3297
3338
|
))
|
|
3298
3339
|
}
|
|
3299
3340
|
),
|
|
3300
|
-
/* @__PURE__ */ e("div", { className: "ic-week-grid relative flex-1", children: /* @__PURE__ */ e("div", { className: "flex divide-x", children:
|
|
3301
|
-
const
|
|
3341
|
+
/* @__PURE__ */ e("div", { className: "ic-week-grid relative flex-1", children: /* @__PURE__ */ e("div", { className: "flex divide-x", children: S.map((c, m) => {
|
|
3342
|
+
const M = c.toDateString(), D = I.get(M), H = B[m] ?? ne, Q = H > ne;
|
|
3302
3343
|
return /* @__PURE__ */ o(
|
|
3303
3344
|
"div",
|
|
3304
3345
|
{
|
|
3305
3346
|
className: "ic-day-column relative flex-1",
|
|
3306
3347
|
style: {
|
|
3307
|
-
minWidth:
|
|
3348
|
+
minWidth: Q ? H : ne
|
|
3308
3349
|
},
|
|
3309
3350
|
children: [
|
|
3310
|
-
T.map((
|
|
3311
|
-
const
|
|
3351
|
+
T.map((z, j) => {
|
|
3352
|
+
const J = !ct(
|
|
3312
3353
|
c,
|
|
3313
|
-
|
|
3354
|
+
z,
|
|
3314
3355
|
d
|
|
3315
3356
|
);
|
|
3316
3357
|
return /* @__PURE__ */ o(
|
|
3317
3358
|
"div",
|
|
3318
3359
|
{
|
|
3319
|
-
className:
|
|
3360
|
+
className: s(
|
|
3320
3361
|
"relative",
|
|
3321
|
-
|
|
3322
|
-
ce(c) && !
|
|
3323
|
-
|
|
3324
|
-
|
|
3362
|
+
J && "bg-calendar-disabled-hour",
|
|
3363
|
+
ce(c) && !J && "bg-primary/5",
|
|
3364
|
+
f?.timeSlot,
|
|
3365
|
+
J ? f?.timeSlotNonWorking : f?.timeSlotWorking
|
|
3325
3366
|
),
|
|
3326
3367
|
style: { height: he },
|
|
3327
3368
|
children: [
|
|
3328
|
-
|
|
3329
|
-
|
|
3369
|
+
j !== 0 && /* @__PURE__ */ e("div", { className: "pointer-events-none absolute inset-x-0 top-0 border-b border-border/50" }),
|
|
3370
|
+
W.slice(1).map((ee) => /* @__PURE__ */ e(
|
|
3330
3371
|
"div",
|
|
3331
3372
|
{
|
|
3332
3373
|
className: "pointer-events-none absolute inset-x-0 border-b border-dashed border-border/30",
|
|
@@ -3334,85 +3375,85 @@ function Qn({
|
|
|
3334
3375
|
},
|
|
3335
3376
|
ee
|
|
3336
3377
|
)),
|
|
3337
|
-
|
|
3378
|
+
W.map((ee, xe) => {
|
|
3338
3379
|
const ye = {
|
|
3339
3380
|
date: c,
|
|
3340
|
-
hour:
|
|
3381
|
+
hour: z,
|
|
3341
3382
|
minute: ee
|
|
3342
3383
|
};
|
|
3343
3384
|
return /* @__PURE__ */ e(
|
|
3344
|
-
|
|
3385
|
+
kt,
|
|
3345
3386
|
{
|
|
3346
3387
|
slot: ye,
|
|
3347
|
-
onSelectionStart:
|
|
3348
|
-
onSelectionMove:
|
|
3349
|
-
onSelectionEnd:
|
|
3350
|
-
isSelected:
|
|
3351
|
-
isSelecting:
|
|
3352
|
-
disabled:
|
|
3388
|
+
onSelectionStart: P,
|
|
3389
|
+
onSelectionMove: k,
|
|
3390
|
+
onSelectionEnd: h,
|
|
3391
|
+
isSelected: $?.isSlotSelected(ye) ?? !1,
|
|
3392
|
+
isSelecting: $?.isSelecting ?? !1,
|
|
3393
|
+
disabled: J,
|
|
3353
3394
|
className: "absolute inset-x-0",
|
|
3354
3395
|
style: {
|
|
3355
3396
|
top: `${xe * g}%`,
|
|
3356
3397
|
height: `${g}%`
|
|
3357
3398
|
},
|
|
3358
|
-
ariaLabel: `Add event on ${c.toLocaleDateString()} at ${Ae(
|
|
3399
|
+
ariaLabel: `Add event on ${c.toLocaleDateString()} at ${Ae(z)}:${String(ee).padStart(2, "0")}`
|
|
3359
3400
|
},
|
|
3360
3401
|
ee
|
|
3361
3402
|
);
|
|
3362
3403
|
})
|
|
3363
3404
|
]
|
|
3364
3405
|
},
|
|
3365
|
-
|
|
3406
|
+
z
|
|
3366
3407
|
);
|
|
3367
3408
|
}),
|
|
3368
|
-
|
|
3369
|
-
const
|
|
3370
|
-
if (!
|
|
3371
|
-
const
|
|
3409
|
+
D?.singleDay.map((z) => {
|
|
3410
|
+
const j = D.positions.get(z.id);
|
|
3411
|
+
if (!j) return null;
|
|
3412
|
+
const te = `calc(${j.width}% - 2px)`, J = `max(${Te}px, ${te})`;
|
|
3372
3413
|
return v ? /* @__PURE__ */ e(
|
|
3373
3414
|
"div",
|
|
3374
3415
|
{
|
|
3375
3416
|
className: "absolute pointer-events-auto p-0.5",
|
|
3376
3417
|
style: {
|
|
3377
|
-
top: `${
|
|
3378
|
-
left: `${
|
|
3379
|
-
width:
|
|
3418
|
+
top: `${j.top}px`,
|
|
3419
|
+
left: `${j.left}%`,
|
|
3420
|
+
width: J,
|
|
3380
3421
|
minWidth: `${Te}px`
|
|
3381
3422
|
},
|
|
3382
|
-
children: v({ event:
|
|
3423
|
+
children: v({ event: z, position: j })
|
|
3383
3424
|
},
|
|
3384
|
-
|
|
3425
|
+
z.id
|
|
3385
3426
|
) : /* @__PURE__ */ e(
|
|
3386
|
-
|
|
3427
|
+
wt,
|
|
3387
3428
|
{
|
|
3388
|
-
event:
|
|
3429
|
+
event: z,
|
|
3389
3430
|
position: {
|
|
3390
|
-
top:
|
|
3391
|
-
left:
|
|
3392
|
-
width:
|
|
3431
|
+
top: j.top,
|
|
3432
|
+
left: j.left,
|
|
3433
|
+
width: j.width,
|
|
3393
3434
|
minWidth: Te
|
|
3394
3435
|
},
|
|
3395
3436
|
hourHeight: he,
|
|
3396
|
-
badgeVariant:
|
|
3437
|
+
badgeVariant: i,
|
|
3397
3438
|
onClick: y,
|
|
3398
3439
|
disablePopover: !!y && !u,
|
|
3399
3440
|
renderPopover: u,
|
|
3400
|
-
className:
|
|
3441
|
+
className: s(
|
|
3401
3442
|
"pointer-events-auto",
|
|
3402
|
-
|
|
3443
|
+
f?.eventCard
|
|
3403
3444
|
)
|
|
3404
3445
|
},
|
|
3405
|
-
|
|
3446
|
+
z.id
|
|
3406
3447
|
);
|
|
3407
3448
|
}),
|
|
3408
|
-
m ===
|
|
3449
|
+
m === O && A >= 0 && /* @__PURE__ */ o(
|
|
3409
3450
|
"div",
|
|
3410
3451
|
{
|
|
3411
|
-
className:
|
|
3452
|
+
className: s(
|
|
3412
3453
|
"absolute left-0 right-0 z-20 flex items-center pointer-events-none",
|
|
3413
|
-
|
|
3454
|
+
f?.currentTimeIndicator
|
|
3414
3455
|
),
|
|
3415
|
-
style: { top:
|
|
3456
|
+
style: { top: A },
|
|
3416
3457
|
children: [
|
|
3417
3458
|
/* @__PURE__ */ e("div", { className: "h-2 w-2 -ml-1 rounded-full bg-red-500" }),
|
|
3418
3459
|
/* @__PURE__ */ e("div", { className: "flex-1 h-0.5 bg-red-500" })
|
|
@@ -3431,49 +3472,49 @@ function Qn({
|
|
|
3431
3472
|
] });
|
|
3432
3473
|
}
|
|
3433
3474
|
export {
|
|
3434
|
-
|
|
3475
|
+
Jn as A,
|
|
3435
3476
|
pe as B,
|
|
3436
|
-
|
|
3437
|
-
|
|
3438
|
-
|
|
3439
|
-
|
|
3440
|
-
|
|
3477
|
+
Yn as C,
|
|
3478
|
+
gn as D,
|
|
3479
|
+
wt as E,
|
|
3480
|
+
se as F,
|
|
3481
|
+
rn as G,
|
|
3441
3482
|
de as H,
|
|
3442
|
-
|
|
3443
|
-
|
|
3444
|
-
|
|
3445
|
-
|
|
3446
|
-
|
|
3447
|
-
|
|
3483
|
+
Qe as I,
|
|
3484
|
+
et as J,
|
|
3485
|
+
Oe as K,
|
|
3486
|
+
Pe as L,
|
|
3487
|
+
Qn as M,
|
|
3488
|
+
mn as N,
|
|
3448
3489
|
ue as P,
|
|
3449
|
-
|
|
3450
|
-
|
|
3451
|
-
|
|
3452
|
-
|
|
3453
|
-
|
|
3454
|
-
|
|
3455
|
-
|
|
3456
|
-
|
|
3457
|
-
|
|
3458
|
-
|
|
3459
|
-
|
|
3460
|
-
|
|
3461
|
-
|
|
3490
|
+
Xt as S,
|
|
3491
|
+
kt as T,
|
|
3492
|
+
er as W,
|
|
3493
|
+
Mn as a,
|
|
3494
|
+
Ln as b,
|
|
3495
|
+
Zn as c,
|
|
3496
|
+
Ft as d,
|
|
3497
|
+
Gn as e,
|
|
3498
|
+
ft as f,
|
|
3499
|
+
Kt as g,
|
|
3500
|
+
Ut as h,
|
|
3501
|
+
qt as i,
|
|
3502
|
+
Vt as j,
|
|
3462
3503
|
Ee as k,
|
|
3463
|
-
|
|
3464
|
-
|
|
3465
|
-
|
|
3504
|
+
An as l,
|
|
3505
|
+
Xn as m,
|
|
3506
|
+
Un as n,
|
|
3466
3507
|
le as o,
|
|
3467
3508
|
me as p,
|
|
3468
|
-
|
|
3469
|
-
|
|
3470
|
-
|
|
3471
|
-
|
|
3472
|
-
|
|
3473
|
-
|
|
3474
|
-
|
|
3509
|
+
qn as q,
|
|
3510
|
+
xt as r,
|
|
3511
|
+
en as s,
|
|
3512
|
+
Zt as t,
|
|
3513
|
+
Qt as u,
|
|
3514
|
+
Yt as v,
|
|
3515
|
+
yn as w,
|
|
3475
3516
|
ae as x,
|
|
3476
|
-
|
|
3477
|
-
|
|
3517
|
+
oe as y,
|
|
3518
|
+
Kn as z
|
|
3478
3519
|
};
|
|
3479
|
-
//# sourceMappingURL=week-view-
|
|
3520
|
+
//# sourceMappingURL=week-view-DY167Wok.js.map
|