calendar-simple 1.2.0 → 1.3.0-beta.1
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/LICENSE +1 -1
- package/README.md +126 -41
- package/dist/calendar-simple.css +1 -1
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.d.ts +66 -37
- package/dist/index.es.js +1442 -799
- package/dist/index.es.js.map +1 -1
- package/dist/index.iife.js +1 -1
- package/dist/index.iife.js.map +1 -1
- package/package.json +1 -1
package/LICENSE
CHANGED
package/README.md
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Calendar Simple
|
|
2
2
|
|
|
3
3
|

|
|
4
|
-

|
|
5
5
|

|
|
6
6
|

|
|
7
7
|
|
|
@@ -11,11 +11,13 @@ A lightweight, customizable, and responsive calendar component for React applica
|
|
|
11
11
|
|
|
12
12
|
## Features
|
|
13
13
|
|
|
14
|
-
-
|
|
14
|
+
- **🗓️ Multiple Views**: Support for Month, Week, Day, and Schedule views, giving users different perspectives of their events.
|
|
15
15
|
- **✨ Event Handling**: Built-in support for displaying and managing events with custom colors.
|
|
16
16
|
- **📱 Responsive**: Automatically adjusts layout based on container dimensions.
|
|
17
|
-
- **🎨 Theming**: Fully customizable colors
|
|
18
|
-
-
|
|
17
|
+
- **🎨 Theming & Customization**: Fully customizable colors via the `theme` prop and individual element styling via `classNames`.
|
|
18
|
+
- **🕒 Time Formatting**: Options for 12-hour (AM/PM) and 24-hour time formats.
|
|
19
|
+
- **👆 Interactive**: Granular control with click handlers for dates, specific events, view changes, and "more" indicators.
|
|
20
|
+
- **🕒 Current Time & Timezone**: Display a real-time indicator with automatic local timezone GMT offset, and optionally auto-scroll to the current time on load.
|
|
19
21
|
- **🛡️ TypeScript**: Written in TypeScript for robust type safety and developer experience.
|
|
20
22
|
|
|
21
23
|
## Installation
|
|
@@ -38,7 +40,7 @@ Import the component and its styles to get started:
|
|
|
38
40
|
|
|
39
41
|
```tsx
|
|
40
42
|
import React, { useState } from "react";
|
|
41
|
-
import Calendar
|
|
43
|
+
import Calendar from "calendar-simple";
|
|
42
44
|
import "calendar-simple/dist/styles.css";
|
|
43
45
|
|
|
44
46
|
const App = () => {
|
|
@@ -49,104 +51,187 @@ const App = () => {
|
|
|
49
51
|
<Calendar
|
|
50
52
|
selectedDate={selectedDate}
|
|
51
53
|
onDateClick={setSelectedDate}
|
|
52
|
-
|
|
54
|
+
selectable
|
|
53
55
|
/>
|
|
54
56
|
</div>
|
|
55
57
|
);
|
|
56
58
|
};
|
|
57
59
|
```
|
|
58
60
|
|
|
59
|
-
### Advanced Usage with Events &
|
|
61
|
+
### Advanced Usage with Events & Views
|
|
60
62
|
|
|
61
63
|
```tsx
|
|
62
64
|
import React, { useState } from "react";
|
|
63
|
-
import Calendar, {
|
|
65
|
+
import Calendar, { CalendarEvent, ECalendarViewType } from "calendar-simple";
|
|
64
66
|
import "calendar-simple/dist/styles.css";
|
|
65
67
|
|
|
66
68
|
const MyCalendar = () => {
|
|
67
69
|
const [selectedDate, setSelectedDate] = useState(new Date());
|
|
70
|
+
const [view, setView] = useState<ECalendarViewType>("month");
|
|
68
71
|
|
|
69
|
-
const events:
|
|
72
|
+
const events: CalendarEvent[] = [
|
|
70
73
|
{
|
|
74
|
+
id: "1",
|
|
71
75
|
startDate: "2024-02-14",
|
|
72
|
-
|
|
76
|
+
title: "Valentine's Day",
|
|
73
77
|
color: "#ffcccc",
|
|
74
78
|
},
|
|
75
79
|
{
|
|
80
|
+
id: "2",
|
|
76
81
|
startDate: "2024-02-20",
|
|
77
82
|
endDate: "2024-02-22",
|
|
78
|
-
|
|
83
|
+
title: "Tech Conference",
|
|
79
84
|
color: "#e6f7ff",
|
|
80
85
|
},
|
|
86
|
+
{
|
|
87
|
+
id: "3",
|
|
88
|
+
startDate: "2024-02-21T10:00:00",
|
|
89
|
+
endDate: "2024-02-21T12:00:00",
|
|
90
|
+
title: "Team Meeting",
|
|
91
|
+
color: "#cce5ff",
|
|
92
|
+
},
|
|
81
93
|
];
|
|
82
94
|
|
|
83
95
|
return (
|
|
84
96
|
<Calendar
|
|
97
|
+
events={events}
|
|
85
98
|
selectedDate={selectedDate}
|
|
99
|
+
view={view}
|
|
86
100
|
onDateClick={setSelectedDate}
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
101
|
+
onViewChange={setView}
|
|
102
|
+
selectable
|
|
103
|
+
is12Hour
|
|
104
|
+
showCurrentTime
|
|
105
|
+
autoScrollToCurrentTime
|
|
91
106
|
theme={{
|
|
92
107
|
selected: { color: "#fff", bgColor: "#007bff" },
|
|
93
108
|
today: { color: "#007bff", bgColor: "#e6f2ff" },
|
|
94
109
|
}}
|
|
95
|
-
onEventClick={(event) => alert(`Clicked: ${event.
|
|
110
|
+
onEventClick={(event) => alert(`Clicked: ${event.title}`)}
|
|
96
111
|
/>
|
|
97
112
|
);
|
|
98
113
|
};
|
|
99
114
|
```
|
|
100
115
|
|
|
116
|
+
### Schedule View Example
|
|
117
|
+
|
|
118
|
+
The Schedule view displays a continuous scrollable list of events, grouped by date.
|
|
119
|
+
|
|
120
|
+
```tsx
|
|
121
|
+
import React from "react";
|
|
122
|
+
import Calendar, { CalendarEvent } from "calendar-simple";
|
|
123
|
+
|
|
124
|
+
const upcomingEvents: CalendarEvent[] = [
|
|
125
|
+
// ... your events ...
|
|
126
|
+
];
|
|
127
|
+
|
|
128
|
+
const ScheduleApp = () => (
|
|
129
|
+
<Calendar events={upcomingEvents} view="schedule" is12Hour={true} />
|
|
130
|
+
);
|
|
131
|
+
```
|
|
132
|
+
|
|
101
133
|
## API Reference
|
|
102
134
|
|
|
103
135
|
### Props
|
|
104
136
|
|
|
105
|
-
| Prop
|
|
106
|
-
|
|
|
107
|
-
| `
|
|
108
|
-
| `selectedDate`
|
|
109
|
-
| `
|
|
110
|
-
| `
|
|
111
|
-
| `
|
|
112
|
-
| `
|
|
113
|
-
| `
|
|
114
|
-
| `
|
|
115
|
-
| `
|
|
116
|
-
| `
|
|
117
|
-
| `
|
|
118
|
-
| `
|
|
119
|
-
| `
|
|
120
|
-
| `
|
|
137
|
+
| Prop | Type | Description | Default |
|
|
138
|
+
| ------------------------- | ------------------------------------------------------ | --------------------------------------------------------------------------------- | ----------------- |
|
|
139
|
+
| `events` | `CalendarEvent[]` | Array of event data objects to display. | `[]` |
|
|
140
|
+
| `selectedDate` | `Date` | The currently selected date object. | `undefined` |
|
|
141
|
+
| `view` | `ECalendarViewType` | The current view: `"month"`, `"week"`, `"day"`, or `"schedule"`. | `"month"` |
|
|
142
|
+
| `selectable` | `boolean` | Enables visual selection state. | `false` |
|
|
143
|
+
| `is12Hour` | `boolean` | Display time in 12-hour AM/PM format instead of 24-hour format. | `false` |
|
|
144
|
+
| `onDateClick` | `(date: Date) => void` | Callback function fired when a date is clicked. | `undefined` |
|
|
145
|
+
| `onEventClick` | `(event: CalendarEvent) => void` | Callback function fired when an event is clicked. | `undefined` |
|
|
146
|
+
| `onMoreClick` | `(date: Date, hiddenEvents?: CalendarEvent[]) => void` | Callback fired when the "+X more" indicator is clicked. | `undefined` |
|
|
147
|
+
| `onNavigate` | `(date: Date) => void` | Callback fired when the calendar date range is changed (e.g. next month). | `undefined` |
|
|
148
|
+
| `onViewChange` | `(view: ECalendarViewType) => void` | Callback fired when the calendar view is changed via header buttons. | `undefined` |
|
|
149
|
+
| `width` | `number \| string` | Width of the calendar container. | `auto-calculated` |
|
|
150
|
+
| `height` | `number \| string` | Height of the calendar container. | `auto-calculated` |
|
|
151
|
+
| `theme` | `CalendarTheme` | Configuration object for custom colors. | `{}` |
|
|
152
|
+
| `classNames` | `CalendarClassNames` | Custom CSS classes for various internal elements. | `{}` |
|
|
153
|
+
| `dayType` | `EDayType` | Format for day names: `"full"` (Monday) or `"half"` (Mon). | `"half"` |
|
|
154
|
+
| `pastYearLength` | `number` | Number of past years to show in the year dropdown. | `5` |
|
|
155
|
+
| `futureYearLength` | `number` | Number of future years to show in the year dropdown. | `5` |
|
|
156
|
+
| `maxEvents` | `number` | Maximum events to show per day cell before collapsing. | Auto-calc |
|
|
157
|
+
| `showCurrentTime` | `boolean` | Displays a line indicating the current time in day and week views. | `false` |
|
|
158
|
+
| `autoScrollToCurrentTime` | `boolean` | Automatically scrolls to the current time line when the view is initially loaded. | `false` |
|
|
121
159
|
|
|
122
160
|
### Types
|
|
123
161
|
|
|
124
|
-
#### `
|
|
162
|
+
#### `CalendarEvent`
|
|
125
163
|
|
|
126
164
|
```typescript
|
|
127
|
-
interface
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
165
|
+
interface CalendarEvent {
|
|
166
|
+
id?: string;
|
|
167
|
+
startDate: string; // Format: YYYY-MM-DD or YYYY-MM-DDTHH:mm:ss
|
|
168
|
+
endDate?: string; // Format: YYYY-MM-DD or YYYY-MM-DDTHH:mm:ss
|
|
169
|
+
title: string; // Event title or description
|
|
131
170
|
color?: string; // CSS color string for event background
|
|
171
|
+
[key: string]: unknown; // Allow any custom metadata fields
|
|
132
172
|
}
|
|
133
173
|
```
|
|
134
174
|
|
|
175
|
+
#### `ECalendarViewType` & `EDayType`
|
|
176
|
+
|
|
177
|
+
```typescript
|
|
178
|
+
type ECalendarViewType = "month" | "week" | "day" | "schedule";
|
|
179
|
+
type EDayType = "full" | "half";
|
|
180
|
+
```
|
|
181
|
+
|
|
135
182
|
#### `CalendarTheme`
|
|
136
183
|
|
|
137
184
|
```typescript
|
|
138
185
|
interface CalendarTheme {
|
|
186
|
+
default?: {
|
|
187
|
+
color?: string;
|
|
188
|
+
bgColor?: string;
|
|
189
|
+
};
|
|
139
190
|
selected?: {
|
|
140
|
-
color?: string;
|
|
141
|
-
bgColor?: string;
|
|
191
|
+
color?: string;
|
|
192
|
+
bgColor?: string;
|
|
142
193
|
};
|
|
143
194
|
today?: {
|
|
144
|
-
color?: string;
|
|
145
|
-
bgColor?: string;
|
|
195
|
+
color?: string;
|
|
196
|
+
bgColor?: string;
|
|
146
197
|
};
|
|
147
198
|
}
|
|
148
199
|
```
|
|
149
200
|
|
|
201
|
+
#### `CalendarClassNames`
|
|
202
|
+
|
|
203
|
+
```typescript
|
|
204
|
+
interface CalendarClassNames {
|
|
205
|
+
root?: string;
|
|
206
|
+
header?: string;
|
|
207
|
+
|
|
208
|
+
// Month view
|
|
209
|
+
table?: string;
|
|
210
|
+
tableHeader?: string;
|
|
211
|
+
tableDate?: string;
|
|
212
|
+
|
|
213
|
+
// Shared events
|
|
214
|
+
event?: string;
|
|
215
|
+
selected?: string;
|
|
216
|
+
today?: string;
|
|
217
|
+
|
|
218
|
+
// Week & Day view
|
|
219
|
+
dayHeader?: string;
|
|
220
|
+
dayName?: string;
|
|
221
|
+
dayNumber?: string;
|
|
222
|
+
timeColumn?: string;
|
|
223
|
+
timeSlot?: string;
|
|
224
|
+
dayColumn?: string;
|
|
225
|
+
|
|
226
|
+
// Schedule view
|
|
227
|
+
scheduleDateGroup?: string;
|
|
228
|
+
scheduleDateNumber?: string;
|
|
229
|
+
scheduleDateSubInfo?: string;
|
|
230
|
+
scheduleTime?: string;
|
|
231
|
+
scheduleTitle?: string;
|
|
232
|
+
}
|
|
233
|
+
```
|
|
234
|
+
|
|
150
235
|
## Contributing
|
|
151
236
|
|
|
152
237
|
Contributions are welcome! Please feel free to submit a Pull Request.
|
package/dist/calendar-simple.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
._calendarContainer_q5rnf_1{justify-content:center;align-items:center;width:100%;height:100%;display:flex}._calendar_q5rnf_1{--calendar-width:0px;--calendar-height:0px;--primary-color:#3b82f6;--primary-hover:#2563eb;--text-primary:#1f2937;--text-secondary:#6b7280;--bg-color:#fff;--bg-hover:#f3f4f6;--border-color:#e5e7eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--radius-md:.375rem;--radius-lg:.5rem;width:100%;height:100%;color:var(--text-primary);background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;overflow:hidden auto}._calendar_q5rnf_1 *{box-sizing:border-box;margin:0;padding:0}._table_q5rnf_56{border-collapse:separate;border-spacing:0}._tableHeader_q5rnf_61,._tableCell_q5rnf_62{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}._tableHeader_q5rnf_61:last-child,._tableCell_q5rnf_62:last-child{border-right:none}._table_q5rnf_56 tr:last-child ._tableCell_q5rnf_62{border-bottom:none}._tableHeader_q5rnf_61{height:40px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;text-align:center;vertical-align:middle;background-color:#f9fafb;font-size:.875rem;font-weight:600}._tableBody_q5rnf_88{height:var(--calendar-height)}._dateData_ed04n_1{cursor:pointer;vertical-align:top;height:calc(var(--calendar-height) / var(--calendar-rows,6));min-width:calc(var(--calendar-width) / 7);max-width:calc(var(--calendar-width) / 7);padding:.25rem;transition:background-color .15s;position:relative}._dateData_ed04n_1:hover{background-color:#fafafa}._currentMonth_ed04n_18{color:#9ca3af;background-color:#f9fafb}._cellContent_ed04n_23{flex-direction:column;justify-content:flex-start;gap:.25rem;width:100%;height:100%;display:flex}._dateLabel_ed04n_32{width:1.75rem;height:1.75rem;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.25rem;padding:.25rem;font-size:.875rem;font-weight:500;display:flex}._selected_ed04n_46 ._dateLabel_ed04n_32,._today_ed04n_51 ._dateLabel_ed04n_32{background-color:var(--primary-color);color:#fff}._dataContainer_ed04n_56{flex-direction:column;flex:1;gap:2px;display:flex;overflow:visible}._spacer_ed04n_64{height:1.5rem;margin-bottom:2px}._eventItem_ed04n_69{background-color:var(--primary-color);z-index:2;white-space:nowrap;text-overflow:ellipsis;color:#fff;box-sizing:border-box;cursor:pointer;border-radius:4px;height:1.5rem;padding:.15rem .5rem;font-size:.75rem;font-weight:500;line-height:1.2rem;transition:transform .1s,box-shadow .1s;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000001a}._eventItem_ed04n_69:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 2px 4px #00000026}._moreEventsContainer_ed04n_97{margin-top:2px;position:relative}._moreEvents_ed04n_97{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;width:100%;padding:.15rem .5rem;font-size:.75rem;font-weight:600;transition:background-color .2s}._moreEvents_ed04n_97:hover{background-color:var(--bg-hover);color:var(--text-primary)}._popover_5fy95_1{z-index:100;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);opacity:0;background-color:#fff;flex-direction:column;gap:2px;min-width:200px;max-width:300px;max-height:300px;padding:.5rem;animation:.2s forwards _fadeIn_5fy95_1;display:flex;position:fixed;top:calc(100% + 4px);left:0;overflow-y:auto}@keyframes _fadeIn_5fy95_1{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}._popoverHeader_5fy95_34{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);margin-bottom:.5rem;padding-bottom:.25rem;font-size:.75rem;font-weight:600}._popoverContent_5fy95_45{overflow-y:auto}._popoverItem_5fy95_49{background-color:var(--primary-color);color:#fff;border-radius:var(--radius-md);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;flex-shrink:0;margin-bottom:2px;padding:.25rem .5rem;font-size:.75rem;transition:opacity .2s;overflow:hidden}._popoverItem_5fy95_49:hover{opacity:.9}._popoverItem_5fy95_49._startBefore_5fy95_68{clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%);border-top-left-radius:0;border-bottom-left-radius:0;padding-left:14px}._popoverItem_5fy95_49._endAfter_5fy95_75{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%);border-top-right-radius:0;border-bottom-right-radius:0;padding-right:14px}._popoverItem_5fy95_49._startBefore_5fy95_68._endAfter_5fy95_75{clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,10px 100%,0 50%);border-radius:0;padding-left:14px;padding-right:14px}._header_7f1ps_1{box-sizing:border-box;background-color:#0000;justify-content:space-between;align-items:center;width:100%;padding:1rem;display:flex}._navigation_7f1ps_11{align-items:center;gap:1rem;display:flex}._todayButton_7f1ps_17{border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background-color:#0000;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s}._todayButton_7f1ps_17:hover{background-color:var(--bg-hover);border-color:var(--text-secondary)}._arrows_7f1ps_35{align-items:center;gap:.5rem;display:flex}._iconButton_7f1ps_41{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;outline:none;justify-content:center;align-items:center;width:2rem;height:2rem;transition:all .2s;display:flex}._iconButton_7f1ps_41:hover{background-color:var(--bg-hover);color:var(--text-primary)}._dateTitle_7f1ps_61{color:var(--text-primary);white-space:nowrap;margin:0;font-family:inherit;font-size:1.25rem;font-weight:600}._controls_7f1ps_70{align-items:center;gap:.75rem;display:flex}._select_7f1ps_76{-webkit-appearance:none;appearance:none;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;outline:none;padding:.5rem 2.5rem .5rem 1rem;font-family:inherit;font-size:.875rem;transition:border-color .2s}._select_7f1ps_76:hover{border-color:var(--text-secondary)}._select_7f1ps_76:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633}
|
|
1
|
+
._calendar_1250h_1{--calendar-width:0px;--calendar-height:0px;width:100%;height:100%;color:var(--text-primary);background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);box-sizing:border-box;flex-direction:column;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,Arial,sans-serif;display:flex;overflow:hidden}._calendar_1250h_1 *{box-sizing:border-box;margin:0;padding:0}._header_oyk7l_1{box-sizing:border-box;background-color:#0000;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;width:100%;padding:1rem;display:flex}._navigation_oyk7l_13{align-items:center;gap:1rem;display:flex}._todayButton_oyk7l_19{border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background-color:#0000;padding:.5rem 1rem;font-family:inherit;font-size:.875rem;font-weight:500;transition:all .2s}._todayButton_oyk7l_19:hover{background-color:var(--bg-hover);border-color:var(--text-secondary)}._arrows_oyk7l_37{align-items:center;gap:.5rem;display:flex}._iconButton_oyk7l_43{border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:0 0;border:1px solid #0000;outline:none;justify-content:center;align-items:center;width:2rem;height:2rem;transition:all .2s;display:flex}._iconButton_oyk7l_43:hover{background-color:var(--bg-hover);color:var(--text-primary)}._dateTitle_oyk7l_63{color:var(--text-primary);white-space:nowrap;margin:0;font-family:inherit;font-size:1.25rem;font-weight:600}._controls_oyk7l_72{align-items:center;gap:.75rem;display:flex}._select_oyk7l_78{-webkit-appearance:none;appearance:none;background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3E%3Cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;outline:none;padding:.5rem 2.5rem .5rem 1rem;font-family:inherit;font-size:.875rem;transition:border-color .2s}._select_oyk7l_78:hover{border-color:var(--text-secondary)}._select_oyk7l_78:focus{border-color:var(--primary-color);box-shadow:0 0 0 2px #3b82f633}._dayView_lnx60_1{border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;height:calc(100% - 68px);display:flex;overflow:auto}._stickyTopContainer_lnx60_11{z-index:20;background-color:var(--bg-color,#fff);flex-direction:column;display:flex;position:sticky;top:0;box-shadow:0 4px 6px -4px #0000001a}._dayHeaderContainer_lnx60_21{background-color:#f9f9f9;border-bottom:1px solid #e0e0e0;display:flex}._timeHeaderSpacer_lnx60_27{z-index:15;background-color:#f9f9f9;border-right:1px solid #e0e0e0;flex-shrink:0;width:60px;position:sticky;left:0}._dayHeader_lnx60_21{text-align:center;flex:1;padding:10px 0}._dayName_lnx60_43{color:#666;text-transform:uppercase;font-size:12px}._dayNumber_lnx60_49{margin-top:4px;font-size:20px;font-weight:500}._dayNumber_lnx60_49._today_lnx60_55{color:#3b82f6;font-weight:700}._timeGrid_lnx60_60{flex:1;grid-template-columns:60px 1fr;display:grid}._eventsColumn_lnx60_67{position:relative}._timeColumn_1hfuf_1{z-index:5;background-color:var(--bg-color,#fff);border-right:1px solid #e0e0e0;flex-shrink:0;width:60px;position:sticky;left:0}._timeSlot_1hfuf_11{color:#666;border-bottom:1px solid #f0f0f0;justify-content:center;align-items:center;height:60px;font-size:12px;display:flex}._eventItem_10oji_1{color:#fff;cursor:pointer;box-sizing:border-box;width:calc(var(--event-width) - 2px);background-color:#3b82f6;border-radius:4px;flex-direction:column;padding:4px 5px;font-size:12px;line-height:1.2;display:flex;position:absolute;left:5px;right:5px;overflow:hidden}._eventItemSmall_10oji_19{flex-direction:row;align-items:center;gap:4px;padding:2px 5px}._eventItemTiny_10oji_26{flex-direction:row;align-items:center;gap:4px;padding:1px 4px;font-size:10px;line-height:1}._eventTitle_10oji_35{white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}._eventTime_10oji_42{white-space:nowrap;text-overflow:ellipsis;opacity:.9;overflow:hidden}._currentTimeLine_1gaip_1{z-index:10;pointer-events:none;align-items:center;height:2px;display:flex;position:absolute;left:0;right:0}._circle_1gaip_12{background-color:#ea4335;border-radius:50%;width:12px;height:12px;position:absolute;left:-6px}._line_1gaip_21{background-color:#ea4335;width:100%;height:2px}._eventSlot_mjgbu_1{border-bottom:1px solid #f0f0f0;height:60px}._bannerWrapper_19c6j_1{border-bottom:1px solid #e0e0e0;width:100%;display:flex}._timeHeaderSpacer_19c6j_7{z-index:15;background-color:var(--bg-color,#fff);border-right:1px solid #e0e0e0;flex-direction:column;flex-shrink:0;justify-content:space-between;align-items:center;width:60px;padding:4px 0 2px;display:flex;position:sticky;left:0}._timezoneLabel_19c6j_22{color:#70757a;text-align:center;margin-top:4px;font-size:10px;font-weight:500}._expandIcon_19c6j_30{cursor:pointer;color:#5f6368;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;transition:background-color .2s,transform .2s;display:flex}._expandIcon_19c6j_30:hover{background-color:#f1f3f4}._expandIcon_19c6j_30._expanded_19c6j_48{transform:rotate(180deg)}._bannerContainer_19c6j_52{box-sizing:border-box;flex-direction:column;flex:1 0;min-height:28px;padding-bottom:4px;display:flex;position:relative;overflow:hidden}._bannerGridBg_19c6j_64{pointer-events:none;width:100%;height:100%;display:flex;position:absolute;top:0;left:0}._bannerGridCell_19c6j_74{border-right:1px solid #e0e0e0;flex:1}._bannerGridCell_19c6j_74:last-child{border-right:none}._bannerRow_19c6j_83{width:100%;height:22px;margin-top:2px;position:relative}._bannerChip_19c6j_90{color:#fff;box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;z-index:10;background-color:#1a73e8;border-radius:4px;align-items:center;height:20px;padding:0 4px;font-size:11px;font-weight:500;display:flex;position:absolute;top:1px;overflow:hidden}._bannerChip_19c6j_90._clippedLeft_19c6j_110{clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%);border-top-left-radius:0;border-bottom-left-radius:0;padding-left:14px}._bannerChip_19c6j_90._clippedRight_19c6j_117{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%);border-top-right-radius:0;border-bottom-right-radius:0;padding-right:14px}._bannerChip_19c6j_90._clippedLeft_19c6j_110._clippedRight_19c6j_117{clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,10px 100%,0 50%);border-radius:0;padding-left:14px;padding-right:14px}._title_19c6j_144{text-overflow:ellipsis;white-space:nowrap;flex-grow:1;overflow:hidden}._moreChip_19c6j_151{color:var(--text-secondary);box-sizing:border-box;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;z-index:10;background:0 0;border-radius:4px;align-items:center;padding:.15rem .5rem;font-size:.75rem;font-weight:600;transition:background-color .2s;display:flex;position:absolute;overflow:hidden}._moreChip_19c6j_151:hover{background-color:var(--bg-hover);color:var(--text-primary)}._weekView_1wzka_1{border:1px solid #e0e0e0;border-radius:8px;flex-direction:column;height:calc(100% - 68px);display:flex;overflow:auto}._stickyTopContainer_1wzka_11{z-index:20;background-color:var(--bg-color,#fff);flex-direction:column;display:flex;position:sticky;top:0;box-shadow:0 4px 6px -4px #0000001a}._weekHeader_1wzka_21{background-color:#f9f9f9;border-bottom:1px solid #e0e0e0;display:flex}._timeHeaderSpacer_1wzka_27{z-index:15;background-color:#f9f9f9;border-right:1px solid #e0e0e0;flex-shrink:0;width:60px;position:sticky;left:0}._dayHeader_1wzka_37{text-align:center;border-right:1px solid #e0e0e0;flex:1;padding:10px 0}._dayHeader_1wzka_37:last-child{border-right:none}._dayName_1wzka_48{color:#666;text-transform:uppercase;font-size:12px}._dayNumber_1wzka_54{margin-top:4px;font-size:20px;font-weight:500}._dayNumber_1wzka_54._today_1wzka_60{color:#3b82f6;font-weight:700}._timeGrid_1wzka_65,._eventsGrid_1wzka_71{flex:1;display:flex}._dayColumn_1wzka_76{border-right:1px solid #e0e0e0;flex:1;position:relative}._dayColumn_1wzka_76:last-child{border-right:none}._dateData_ed04n_1{cursor:pointer;vertical-align:top;height:calc(var(--calendar-height) / var(--calendar-rows,6));min-width:calc(var(--calendar-width) / 7);max-width:calc(var(--calendar-width) / 7);padding:.25rem;transition:background-color .15s;position:relative}._dateData_ed04n_1:hover{background-color:#fafafa}._currentMonth_ed04n_18{color:#9ca3af;background-color:#f9fafb}._cellContent_ed04n_23{flex-direction:column;justify-content:flex-start;gap:.25rem;width:100%;height:100%;display:flex}._dateLabel_ed04n_32{width:1.75rem;height:1.75rem;color:var(--text-primary);border-radius:50%;justify-content:center;align-items:center;margin-bottom:.25rem;padding:.25rem;font-size:.875rem;font-weight:500;display:flex}._selected_ed04n_46 ._dateLabel_ed04n_32,._today_ed04n_51 ._dateLabel_ed04n_32{background-color:var(--primary-color);color:#fff}._dataContainer_ed04n_56{flex-direction:column;flex:1;gap:2px;display:flex;overflow:visible}._spacer_ed04n_64{height:1.5rem;margin-bottom:2px}._eventItem_ed04n_69{background-color:var(--primary-color);z-index:2;white-space:nowrap;text-overflow:ellipsis;color:#fff;box-sizing:border-box;cursor:pointer;border-radius:4px;height:1.5rem;padding:.15rem .5rem;font-size:.75rem;font-weight:500;line-height:1.2rem;transition:transform .1s,box-shadow .1s;position:relative;overflow:hidden;box-shadow:0 1px 2px #0000001a}._eventItem_ed04n_69:hover{filter:brightness(1.05);transform:translateY(-1px);box-shadow:0 2px 4px #00000026}._moreEventsContainer_ed04n_97{margin-top:2px;position:relative}._moreEvents_ed04n_97{color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:4px;width:100%;padding:.15rem .5rem;font-size:.75rem;font-weight:600;transition:background-color .2s}._moreEvents_ed04n_97:hover{background-color:var(--bg-hover);color:var(--text-primary)}._popover_5fy95_1{z-index:100;border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);opacity:0;background-color:#fff;flex-direction:column;gap:2px;min-width:200px;max-width:300px;max-height:300px;padding:.5rem;animation:.2s forwards _fadeIn_5fy95_1;display:flex;position:fixed;top:calc(100% + 4px);left:0;overflow-y:auto}@keyframes _fadeIn_5fy95_1{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}._popoverHeader_5fy95_34{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);margin-bottom:.5rem;padding-bottom:.25rem;font-size:.75rem;font-weight:600}._popoverContent_5fy95_45{overflow-y:auto}._popoverItem_5fy95_49{background-color:var(--primary-color);color:#fff;border-radius:var(--radius-md);white-space:nowrap;text-overflow:ellipsis;cursor:pointer;flex-shrink:0;margin-bottom:2px;padding:.25rem .5rem;font-size:.75rem;transition:opacity .2s;overflow:hidden}._popoverItem_5fy95_49:hover{opacity:.9}._popoverItem_5fy95_49._startBefore_5fy95_68{clip-path:polygon(10px 0,100% 0,100% 100%,10px 100%,0 50%);border-top-left-radius:0;border-bottom-left-radius:0;padding-left:14px}._popoverItem_5fy95_49._endAfter_5fy95_75{clip-path:polygon(0 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,0 100%);border-top-right-radius:0;border-bottom-right-radius:0;padding-right:14px}._popoverItem_5fy95_49._startBefore_5fy95_68._endAfter_5fy95_75{clip-path:polygon(10px 0,calc(100% - 10px) 0,100% 50%,calc(100% - 10px) 100%,10px 100%,0 50%);border-radius:0;padding-left:14px;padding-right:14px}._monthView_1v108_1{flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}._table_1v108_9{border-collapse:collapse;box-sizing:border-box;flex:1;width:100%;height:100%}._tableHeader_1v108_18,._tableCell_1v108_19{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);box-sizing:border-box}._tableHeader_1v108_18:last-child,._tableCell_1v108_19:last-child{border-right:none}._table_1v108_9 tr:last-child ._tableCell_1v108_19{border-bottom:none}._tableHeader_1v108_18{z-index:10;height:40px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;text-align:center;vertical-align:middle;background-color:#f9fafb;font-size:.875rem;font-weight:600;position:sticky;top:0}._tableCell_1v108_19{vertical-align:top;height:calc(100% / var(--calendar-rows));width:14.2857%;padding:4px}._scheduleView_18p9o_1{background-color:var(--calendar-bg,#fff);color:#3c4043;flex-direction:column;flex:1;padding:0 16px;display:flex;overflow-y:auto}._emptyState_18p9o_11{color:#70757a;justify-content:center;align-items:center;height:100%;font-size:14px;display:flex}._dateGroup_18p9o_20{border-bottom:1px solid #dadce0;flex-direction:column;display:flex}._dateGroup_18p9o_20:last-child{border-bottom:none}._eventItemContainer_18p9o_30{align-items:center;gap:16px;padding:6px 0;display:flex;position:relative}._dateInfoColumn_18p9o_38{flex-shrink:0;align-self:flex-start;align-items:flex-start;gap:8px;width:70px;padding-top:4px;display:flex}._dateNumber_18p9o_48{color:#202124;text-align:right;border-radius:50%;justify-content:center;align-items:center;width:28px;min-width:28px;height:28px;padding-bottom:2px;padding-left:1px;font-size:20px;font-weight:500;display:flex}._dateNumber_18p9o_48._today_18p9o_64{color:#fff;background-color:#1a73e8}._dateSubInfo_18p9o_69{color:#70757a;text-transform:uppercase;letter-spacing:.5px;padding-top:5px;font-size:11px}._dotTimeColumn_18p9o_77{flex-shrink:0;align-items:center;gap:12px;width:140px;display:flex}._eventDot_18p9o_85{background-color:#1a73e8;border-radius:50%;flex-shrink:0;width:10px;height:10px}._eventTime_18p9o_93{color:#3c4043;font-size:13px}._eventTitleColumn_18p9o_98{color:#202124;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;flex:1;font-size:14px;font-weight:500;overflow:hidden}:root{--primary-color:#3b82f6;--primary-hover:#2563eb;--text-primary:#1f2937;--text-secondary:#6b7280;--bg-color:#fff;--bg-hover:#f3f4f6;--border-color:#e5e7eb;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--radius-md:.375rem;--radius-lg:.5rem}
|
|
2
2
|
/*$vite$:1*/
|
package/dist/index.cjs.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var He=Object.create,Ne=Object.defineProperty,Oe=Object.getOwnPropertyDescriptor,ke=Object.getOwnPropertyNames,Fe=Object.getPrototypeOf,Re=Object.prototype.hasOwnProperty,Ce=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports),xe=(e,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(var y=ke(t),m=0,o=y.length,h;m<o;m++)h=y[m],!Re.call(e,h)&&h!==r&&Ne(e,h,{get:(l=>t[l]).bind(null,h),enumerable:!(i=Oe(t,h))||i.enumerable});return e},re=(e,t,r)=>(r=e!=null?He(Fe(e)):{},xe(t||!e||!e.__esModule?Ne(r,"default",{value:e,enumerable:!0}):r,e));let a=require("react");a=re(a);var _e=Ce(((e,t)=>{(function(){"use strict";var r={}.hasOwnProperty;function i(){for(var o="",h=0;h<arguments.length;h++){var l=arguments[h];l&&(o=m(o,y(l)))}return o}function y(o){if(typeof o=="string"||typeof o=="number")return o;if(typeof o!="object")return"";if(Array.isArray(o))return i.apply(null,o);if(o.toString!==Object.prototype.toString&&!o.toString.toString().includes("[native code]"))return o.toString();var h="";for(var l in o)r.call(o,l)&&o[l]&&(h=m(h,l));return h}function m(o,h){return h?o?o+" "+h:o+h:o}typeof t<"u"&&t.exports?(i.default=i,t.exports=i):typeof define=="function"&&typeof define.amd=="object"&&define.amd?define("classnames",[],function(){return i}):window.classNames=i})()})),Ue=re(_e(),1);let $e=(function(e){return e.fullName="FULL",e.halfName="HALF",e})({}),ce=(function(e){return e.add="add",e.sub="sub",e})({}),de=(function(e){return e.month="month",e.year="year",e})({});var W={SUNDAY:{FULL:"Sunday",HALF:"Sun"},MONDAY:{FULL:"Monday",HALF:"Mon"},TUESDAY:{FULL:"Tuesday",HALF:"Tue"},WEDNESDAY:{FULL:"Wednesday",HALF:"Wed"},THURSDAY:{FULL:"Thursday",HALF:"Thu"},FRIDAY:{FULL:"Friday",HALF:"Fri"},SATURDAY:{FULL:"Saturday",HALF:"Sat"}};const Ie={FULL:[W.SUNDAY.FULL,W.MONDAY.FULL,W.TUESDAY.FULL,W.WEDNESDAY.FULL,W.THURSDAY.FULL,W.FRIDAY.FULL,W.SATURDAY.FULL],HALF:[W.SUNDAY.HALF,W.MONDAY.HALF,W.TUESDAY.HALF,W.WEDNESDAY.HALF,W.THURSDAY.HALF,W.FRIDAY.HALF,W.SATURDAY.HALF]};var We={JAN:{label:"January",value:0},FEB:{label:"February",value:1},MAR:{label:"March",value:2},APR:{label:"April",value:3},MAY:{label:"May",value:4},JUN:{label:"June",value:5},JUL:{label:"July",value:6},AUG:{label:"August",value:7},SEP:{label:"September",value:8},OCT:{label:"October",value:9},NOV:{label:"November",value:10},DEC:{label:"December",value:11}};const Pe=Object.values(We),fe={MONTH:"monthDropdown",YEAR:"yearDropdown"},Be={FULL_NAME:"FULL",HALF_NAME:"HALF"},me={default:{color:"#000",bgColor:"#fff"},selected:{color:"#fff",bgColor:"#007bff"},today:{color:"#007bff",bgColor:"#e6f2ff"}},ge={dayType:$e.halfName,data:[],isSelectDate:!1,pastYearLength:5,futureYearLength:5,theme:me},ne={HEADER_HEIGHT:122,DATE_LABEL_HEIGHT:28,CELL_PADDING:8,EVENT_HEIGHT:26,DEFAULT_ROWS:6,MIN_ROWS:4,DAYS_IN_WEEK:7,EVENT_ITEM_PADDING:16};var je=Ce(((e,t)=>{(function(r,i){typeof e=="object"&&typeof t<"u"?t.exports=i():typeof define=="function"&&define.amd?define(i):(r=typeof globalThis<"u"?globalThis:r||self).dayjs=i()})(e,(function(){"use strict";var r=1e3,i=6e4,y=36e5,m="millisecond",o="second",h="minute",l="hour",v="day",g="week",d="month",E="quarter",f="year",M="date",w="Invalid Date",L=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,b=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,$={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(_){var u=["th","st","nd","rd"],n=_%100;return"["+_+(u[(n-20)%10]||u[n]||u[0])+"]"}},N=function(_,u,n){var c=String(_);return!c||c.length>=u?_:""+Array(u+1-c.length).join(n)+_},T={s:N,z:function(_){var u=-_.utcOffset(),n=Math.abs(u),c=Math.floor(n/60),s=n%60;return(u<=0?"+":"-")+N(c,2,"0")+":"+N(s,2,"0")},m:function _(u,n){if(u.date()<n.date())return-_(n,u);var c=12*(n.year()-u.year())+(n.month()-u.month()),s=u.clone().add(c,d),p=n-s<0,D=u.clone().add(c+(p?-1:1),d);return+(-(c+(n-s)/(p?s-D:D-s))||0)},a:function(_){return _<0?Math.ceil(_)||0:Math.floor(_)},p:function(_){return{M:d,y:f,w:g,d:v,D:M,h:l,m:h,s:o,ms:m,Q:E}[_]||String(_||"").toLowerCase().replace(/s$/,"")},u:function(_){return _===void 0}},x="en",U={};U[x]=$;var G="$isDayjsObject",se=function(_){return _ instanceof V||!(!_||!_[G])},Y=function _(u,n,c){var s;if(!u)return x;if(typeof u=="string"){var p=u.toLowerCase();U[p]&&(s=p),n&&(U[p]=n,s=p);var D=u.split("-");if(!s&&D.length>1)return _(D[0])}else{var C=u.name;U[C]=u,s=C}return!c&&s&&(x=s),s||!c&&x},H=function(_,u){if(se(_))return _.clone();var n=typeof u=="object"?u:{};return n.date=_,n.args=arguments,new V(n)},S=T;S.l=Y,S.i=se,S.w=function(_,u){return H(_,{locale:u.$L,utc:u.$u,x:u.$x,$offset:u.$offset})};var V=(function(){function _(n){this.$L=Y(n.locale,null,!0),this.parse(n),this.$x=this.$x||n.x||{},this[G]=!0}var u=_.prototype;return u.parse=function(n){this.$d=(function(c){var s=c.date,p=c.utc;if(s===null)return new Date(NaN);if(S.u(s))return new Date;if(s instanceof Date)return new Date(s);if(typeof s=="string"&&!/Z$/i.test(s)){var D=s.match(L);if(D){var C=D[2]-1||0,O=(D[7]||"0").substring(0,3);return p?new Date(Date.UTC(D[1],C,D[3]||1,D[4]||0,D[5]||0,D[6]||0,O)):new Date(D[1],C,D[3]||1,D[4]||0,D[5]||0,D[6]||0,O)}}return new Date(s)})(n),this.init()},u.init=function(){var n=this.$d;this.$y=n.getFullYear(),this.$M=n.getMonth(),this.$D=n.getDate(),this.$W=n.getDay(),this.$H=n.getHours(),this.$m=n.getMinutes(),this.$s=n.getSeconds(),this.$ms=n.getMilliseconds()},u.$utils=function(){return S},u.isValid=function(){return this.$d.toString()!==w},u.isSame=function(n,c){var s=H(n);return this.startOf(c)<=s&&s<=this.endOf(c)},u.isAfter=function(n,c){return H(n)<this.startOf(c)},u.isBefore=function(n,c){return this.endOf(c)<H(n)},u.$g=function(n,c,s){return S.u(n)?this[c]:this.set(s,n)},u.unix=function(){return Math.floor(this.valueOf()/1e3)},u.valueOf=function(){return this.$d.getTime()},u.startOf=function(n,c){var s=this,p=!!S.u(c)||c,D=S.p(n),C=function(Z,I){var J=S.w(s.$u?Date.UTC(s.$y,I,Z):new Date(s.$y,I,Z),s);return p?J:J.endOf(v)},O=function(Z,I){return S.w(s.toDate()[Z].apply(s.toDate("s"),(p?[0,0,0,0]:[23,59,59,999]).slice(I)),s)},F=this.$W,R=this.$M,P=this.$D,X="set"+(this.$u?"UTC":"");switch(D){case f:return p?C(1,0):C(31,11);case d:return p?C(1,R):C(0,R+1);case g:var z=this.$locale().weekStart||0,oe=(F<z?F+7:F)-z;return C(p?P-oe:P+(6-oe),R);case v:case M:return O(X+"Hours",0);case l:return O(X+"Minutes",1);case h:return O(X+"Seconds",2);case o:return O(X+"Milliseconds",3);default:return this.clone()}},u.endOf=function(n){return this.startOf(n,!1)},u.$set=function(n,c){var s,p=S.p(n),D="set"+(this.$u?"UTC":""),C=(s={},s[v]=D+"Date",s[M]=D+"Date",s[d]=D+"Month",s[f]=D+"FullYear",s[l]=D+"Hours",s[h]=D+"Minutes",s[o]=D+"Seconds",s[m]=D+"Milliseconds",s)[p],O=p===v?this.$D+(c-this.$W):c;if(p===d||p===f){var F=this.clone().set(M,1);F.$d[C](O),F.init(),this.$d=F.set(M,Math.min(this.$D,F.daysInMonth())).$d}else C&&this.$d[C](O);return this.init(),this},u.set=function(n,c){return this.clone().$set(n,c)},u.get=function(n){return this[S.p(n)]()},u.add=function(n,c){var s,p=this;n=Number(n);var D=S.p(c),C=function(R){var P=H(p);return S.w(P.date(P.date()+Math.round(R*n)),p)};if(D===d)return this.set(d,this.$M+n);if(D===f)return this.set(f,this.$y+n);if(D===v)return C(1);if(D===g)return C(7);var O=(s={},s[h]=i,s[l]=y,s[o]=r,s)[D]||1,F=this.$d.getTime()+n*O;return S.w(F,this)},u.subtract=function(n,c){return this.add(-1*n,c)},u.format=function(n){var c=this,s=this.$locale();if(!this.isValid())return s.invalidDate||w;var p=n||"YYYY-MM-DDTHH:mm:ssZ",D=S.z(this),C=this.$H,O=this.$m,F=this.$M,R=s.weekdays,P=s.months,X=s.meridiem,z=function(I,J,ue,ie){return I&&(I[J]||I(c,p))||ue[J].slice(0,ie)},oe=function(I){return S.s(C%12||12,I,"0")},Z=X||function(I,J,ue){var ie=I<12?"AM":"PM";return ue?ie.toLowerCase():ie};return p.replace(b,(function(I,J){return J||(function(ue){switch(ue){case"YY":return String(c.$y).slice(-2);case"YYYY":return S.s(c.$y,4,"0");case"M":return F+1;case"MM":return S.s(F+1,2,"0");case"MMM":return z(s.monthsShort,F,P,3);case"MMMM":return z(P,F);case"D":return c.$D;case"DD":return S.s(c.$D,2,"0");case"d":return String(c.$W);case"dd":return z(s.weekdaysMin,c.$W,R,2);case"ddd":return z(s.weekdaysShort,c.$W,R,3);case"dddd":return R[c.$W];case"H":return String(C);case"HH":return S.s(C,2,"0");case"h":return oe(1);case"hh":return oe(2);case"a":return Z(C,O,!0);case"A":return Z(C,O,!1);case"m":return String(O);case"mm":return S.s(O,2,"0");case"s":return String(c.$s);case"ss":return S.s(c.$s,2,"0");case"SSS":return S.s(c.$ms,3,"0");case"Z":return D}return null})(I)||D.replace(":","")}))},u.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},u.diff=function(n,c,s){var p,D=this,C=S.p(c),O=H(n),F=(O.utcOffset()-this.utcOffset())*i,R=this-O,P=function(){return S.m(D,O)};switch(C){case f:p=P()/12;break;case d:p=P();break;case E:p=P()/3;break;case g:p=(R-F)/6048e5;break;case v:p=(R-F)/864e5;break;case l:p=R/y;break;case h:p=R/i;break;case o:p=R/r;break;default:p=R}return s?p:S.a(p)},u.daysInMonth=function(){return this.endOf(d).$D},u.$locale=function(){return U[this.$L]},u.locale=function(n,c){if(!n)return this.$L;var s=this.clone(),p=Y(n,c,!0);return p&&(s.$L=p),s},u.clone=function(){return S.w(this.$d,this)},u.toDate=function(){return new Date(this.valueOf())},u.toJSON=function(){return this.isValid()?this.toISOString():null},u.toISOString=function(){return this.$d.toISOString()},u.toString=function(){return this.$d.toUTCString()},_})(),le=V.prototype;return H.prototype=le,[["$ms",m],["$s",o],["$m",h],["$H",l],["$W",v],["$M",d],["$y",f],["$D",M]].forEach((function(_){le[_[1]]=function(u){return this.$g(u,_[0],_[1])}})),H.extend=function(_,u){return _.$i||(_(u,V,H),_.$i=!0),H},H.locale=Y,H.isDayjs=se,H.unix=function(_){return H(1e3*_)},H.en=U[x],H.Ls=U,H.p={},H}))})),A=re(je(),1);const q=A.default;function be(e){return Number((0,A.default)(e).startOf("month").format("d"))}function te(e){return(0,A.default)(e).toDate()}function Ge(e,t,r){const i=e+t,y=(0,A.default)().year()-e,m=Array.from({length:i},(o,h)=>h+y);if(!m.includes(r))if((0,A.default)().year()<=r)m.push(r);else return[r,...m];return m}function Ve(e,t){const r=(0,A.default)(e).date(t);return(0,A.default)().isSame(r,"day")}function k(e){return(0,A.default)(e).startOf("day")}function Se(e){return(0,A.default)(e).startOf("month")}function pe(e,t){return(0,A.default)(e).add(t,"day")}function Me(e,t){return(0,A.default)(e).subtract(t,"day")}function Je(e,t){return(0,A.default)(e).add(t,"month")}function qe(e,t){return(0,A.default)(e).subtract(t,"month")}function K(e,t){return(0,A.default)(e).diff((0,A.default)(t),"day")}function Ee(e,t){return(0,A.default)(e).isBefore((0,A.default)(t),"day")}function ve(e,t){return(0,A.default)(e).isAfter((0,A.default)(t),"day")}function Ae(e,t){return(0,A.default)(e).isSame((0,A.default)(t),"day")}function ae(e,t){return(0,A.default)(e).format(t)}function ze(e,t){return(0,A.default)(e).date(t)}function Ze(e,t){return(0,A.default)(e).month(t)}function Ke(e,t){return(0,A.default)(e).year(t)}function we(e){return(0,A.default)(e).date()}function Xe(e){return(0,A.default)(e).month()}function Le(e){return(0,A.default)(e).year()}function Qe(e,t){for(var r=0,i=0,y,m=[],o=new Date(e||new Date),h=o.getFullYear(),l=o.getMonth(),v=new Date(h,l,1-(t|0)).getDay(),g=new Date(h,l+1,0).getDate();r<g;){for(i=0,y=Array(7);i<7;){for(;i<v;)y[i++]=0;y[i++]=++r>g?0:r,v=0}m.push(y)}return m}function et(e,t){const r=[...t].sort((i,y)=>K(k(i.startDate),k(y.startDate)));return Qe(e.toDate()).map((i,y)=>{const m=i.map((d,E)=>{let f=q(e),M=!0,w=d;if(d===0)if(M=!1,y===0)f=Me(Se(e),be(e)-E),w=we(f);else{const L=Se(e),b=be(e);f=pe(L,y*7+E-b),w=we(f)}else f=ze(e,d);return{currentDate:f,isCurrentMonth:M,displayDay:w}}),o=k(m[0].currentDate),h=k(m[6].currentDate),l=r.filter(d=>{const E=k(d.startDate),f=d.endDate?k(d.endDate):E;return Ee(E,pe(h,1))&&ve(f,Me(o,1))});l.sort((d,E)=>{const f=k(d.startDate),M=k(E.startDate);if(!Ae(f,M))return K(f,M);const w=d.endDate?k(d.endDate):f,L=E.endDate?k(E.endDate):M,b=K(w,f);return K(L,M)-b});const v=Array(7).fill(null).map(()=>[]),g=new Map;return l.forEach((d,E)=>{const f=k(d.startDate),M=d.endDate?k(d.endDate):f;let w=K(f,o),L=K(M,o);w<0&&(w=0),L>6&&(L=6);let b=0;for(;;){let N=!0;for(let T=w;T<=L;T++)if(v[T][b]){N=!1;break}if(N)break;b++}const $=d.startDate+d.value+E;g.set($,b);for(let N=w;N<=L;N++)v[N][b]=$;d._tempId=$}),m.map((d,E)=>{const{currentDate:f,isCurrentMonth:M,displayDay:w}=d,L=l.filter(N=>{const T=k(N.startDate),x=N.endDate?k(N.endDate):T;return!Ee(f,T)&&!ve(f,x)}),b=[];let $=-1;L.forEach(N=>{const T=g.get(N._tempId);T!==void 0&&T>$&&($=T)});for(let N=0;N<=$;N++){const T=L.find(x=>g.get(x._tempId)===N);if(T)if(Ae(k(T.startDate),f)||E===0){const x=T.endDate?k(T.endDate):k(T.startDate),U=pe(f,6-E);let G=x;ve(x,U)&&(G=U),b.push({...T,startDateWeek:ae(f,"YYYY-MM-DD"),endDateWeek:ae(G,"YYYY-MM-DD"),isSpacer:!1})}else b.push({...T,isSpacer:!0});else b.push(null)}return{currentDate:f,isCurrentMonth:M,displayDay:w,events:b,totalEvents:L.length,isToday:Ve(e,w)&&M}})})}function tt(e,t){const{DATE_LABEL_HEIGHT:r,CELL_PADDING:i,EVENT_HEIGHT:y}=ne,m=e/t-r-i,o=Math.round(m/y)-1;return Math.max(0,o)}function nt(e){const[t,r]=(0,a.useState)({width:0,height:0});return(0,a.useEffect)(()=>{const i=e.current;if(!i)return;const y=new ResizeObserver(m=>{if(!Array.isArray(m)||!m.length)return;const{width:o,height:h}=m[0].contentRect;r({width:o,height:h})});return y.observe(i),()=>{y.disconnect()}},[e]),t}const at="_calendarContainer_q5rnf_1",rt="_calendar_q5rnf_1",st="_table_q5rnf_56",ot="_tableHeader_q5rnf_61",ut="_tableCell_q5rnf_62",lt="_tableBody_q5rnf_88";var ee={calendarContainer:at,calendar:rt,table:st,tableHeader:ot,tableCell:ut,tableBody:lt};const it="_dateData_ed04n_1",ct="_currentMonth_ed04n_18",dt="_cellContent_ed04n_23",ft="_dateLabel_ed04n_32",ht="_selected_ed04n_46",mt="_today_ed04n_51",vt="_dataContainer_ed04n_56",_t="_spacer_ed04n_64",pt="_eventItem_ed04n_69",Dt="_moreEventsContainer_ed04n_97",yt="_moreEvents_ed04n_97";var B={dateData:it,currentMonth:ct,cellContent:dt,dateLabel:ft,selected:ht,today:mt,dataContainer:vt,spacer:_t,eventItem:pt,moreEventsContainer:Dt,moreEvents:yt};const Et="_popover_5fy95_1",gt="_fadeIn_5fy95_1",bt="_popoverHeader_5fy95_34",St="_popoverContent_5fy95_45",Mt="_popoverItem_5fy95_49",At="_startBefore_5fy95_68",wt="_endAfter_5fy95_75";var Q={popover:Et,fadeIn:gt,popoverHeader:bt,popoverContent:St,popoverItem:Mt,startBefore:At,endAfter:wt};function Lt({dateObj:e,events:t,onEventClick:r,onClose:i,anchorEl:y}){const m=(0,a.useRef)(null),[o,h]=(0,a.useState)({visibility:"hidden"});return(0,a.useLayoutEffect)(()=>{if(m.current&&y){const l=m.current.getBoundingClientRect(),v=y.getBoundingClientRect(),g=10;let d=v.bottom+4,E=v.left;const f=window.innerHeight,M=window.innerWidth,w=f-d,L=v.top-g;let b={visibility:"visible",position:"fixed",top:`${d}px`,left:`${E}px`,width:"220px"};if(E+l.width>M-g&&(E=M-l.width-g,b.left=`${E}px`),d+l.height>f-g){const $=l.height;if(w<$&&L>w){const N=Math.min($,L);b.top="auto",b.bottom=`${f-v.top+4}px`,b.maxHeight=`${N}px`}else b.maxHeight=`${Math.min($,w-g)}px`}h(b)}},[y]),(0,a.useEffect)(()=>{function l(v){m.current&&!m.current.contains(v.target)&&i()}return document.addEventListener("mousedown",l),()=>{document.removeEventListener("mousedown",l)}},[i]),a.default.createElement("div",{className:Q.popover,ref:m,style:o,onClick:l=>l.stopPropagation()},a.default.createElement("div",{className:Q.popoverHeader},ae(e,"ddd, D MMM")),a.default.createElement("div",{className:Q.popoverContent},t.map((l,v)=>{const g=k(e),d=k(l.startDate),E=l.endDate?k(l.endDate):d,f=Ee(d,g),M=ve(E,g);return a.default.createElement("div",{key:`pop-${v}`,className:(0,Ue.default)(Q.popoverItem,{[Q.startBefore]:f,[Q.endAfter]:M}),style:{backgroundColor:l.color},onClick:w=>{w.stopPropagation(),r?.(l),i()},title:l.value},l.value)})))}var Nt=Lt,he=re(_e(),1);function Ct({date:e,dateObj:t,data:r,cellWidth:i,className:y,dataClassName:m,isSelected:o,isToday:h,onClick:l,selectedClassName:v,todayClassName:g,isCurrentMonth:d,theme:E,maxEvents:f,onMoreClick:M,onEventClick:w,totalEvents:L=0}){const[b,$]=(0,a.useState)(!1),N=(0,a.useRef)(null),T=o?{...me.selected,...E?.selected}:h?{...me.today,...E?.today}:{...me.default,...E?.default},x={color:T?.color,backgroundColor:T?.bgColor};let U=r,G=0;(f||f===0)&&r&&(L>=f||r.length>f)&&(U=r.slice(0,f),G=L-U.filter(Y=>Y!==null).length);const se=r?.filter(Y=>Y!==null)||[];return a.default.createElement("td",{style:x,onClick:()=>l?.(t),className:(0,he.default)(B.dateData,y,{[B.currentMonth]:!d,[(0,he.default)(B.selected,v)]:o,[(0,he.default)(B.today,g)]:h})},a.default.createElement("div",{className:B.cellContent},a.default.createElement("p",{className:B.dateLabel},e),r&&a.default.createElement("div",{className:(0,he.default)(B.dataContainer,m)},U.map((Y,H)=>{if(!Y||Y.isSpacer)return a.default.createElement("div",{key:`spacer-${H}`,className:B.spacer});let S=1,V=ae(Y.startDate,"YYYY-MM-DD");Y.endDateWeek&&(S=K(Y.endDateWeek,Y.startDateWeek)+1),Y.endDate&&(V+=` to ${ae(Y.endDate,"YYYY-MM-DD")}`),V+=` - ${Y.value}`;const le=`${i*S-ne.EVENT_ITEM_PADDING}px`;return a.default.createElement("div",{key:`${Y.startDate}-${H}`,className:B.eventItem,style:{width:le,backgroundColor:Y.color},title:V,onClick:_=>{_.stopPropagation(),w?.(Y)}},Y.value)}),G>0&&a.default.createElement("div",{className:B.moreEventsContainer},a.default.createElement("button",{ref:N,className:B.moreEvents,onClick:Y=>{Y.stopPropagation(),!b&&$(!0),M?.(t)}},"+ ",G," more"),b&&a.default.createElement(Nt,{dateObj:t,events:se,onEventClick:w,onClose:()=>$(!1),anchorEl:N.current})))))}var $t=Ct;const Tt="_header_7f1ps_1",Yt="_navigation_7f1ps_11",Ht="_todayButton_7f1ps_17",Ot="_arrows_7f1ps_35",kt="_iconButton_7f1ps_41",Ft="_dateTitle_7f1ps_61",Rt="_controls_7f1ps_70",xt="_select_7f1ps_76";var j={header:Tt,navigation:Yt,todayButton:Ht,arrows:Ot,iconButton:kt,dateTitle:Ft,controls:Rt,select:xt};function Ut(){return a.default.createElement("svg",{width:"40px",height:"40px",viewBox:"0 0 24.00 24.00",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",transform:"rotate(180)"},a.default.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),a.default.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),a.default.createElement("g",{id:"SVGRepo_iconCarrier"},a.default.createElement("path",{d:"M10 7L15 12L10 17",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round"})))}var It=Ut;function Wt(){return a.default.createElement("svg",{width:"40px",height:"40px",viewBox:"0 0 24.00 24.00",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor"},a.default.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),a.default.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),a.default.createElement("g",{id:"SVGRepo_iconCarrier"},a.default.createElement("path",{d:"M10 7L15 12L10 17",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round"})))}var Pt=Wt,De={currentDate:q(),selectedDate:q(),view:"month",events:[]},Te=(0,a.createContext)(void 0);function Bt(e,t){switch(t.type){case"SET_DATE":return{...e,currentDate:t.payload,selectedDate:t.payload};case"SET_VIEW":return{...e,view:t.payload};case"SET_EVENTS":return{...e,events:t.payload};case"NEXT":{let r=e.currentDate;return e.view==="month"?r=r.add(1,"month"):e.view==="week"?r=r.add(1,"week"):e.view==="day"&&(r=r.add(1,"day")),{...e,currentDate:r}}case"PREV":{let r=e.currentDate;return e.view==="month"?r=r.subtract(1,"month"):e.view==="week"?r=r.subtract(1,"week"):e.view==="day"&&(r=r.subtract(1,"day")),{...e,currentDate:r}}case"TODAY":return{...e,currentDate:q(),selectedDate:q()};default:return e}}function jt({children:e,initialEvents:t=[],initialDate:r}){const[i,y]=(0,a.useReducer)(Bt,{...De,events:t,currentDate:r||De.currentDate,selectedDate:r||De.selectedDate}),m=(0,a.useMemo)(()=>({state:i,dispatch:y}),[i]);return a.default.createElement(Te.Provider,{value:m},e)}const Ye=()=>{const e=(0,a.useContext)(Te);if(e===void 0)throw new Error("useCalendar must be used within a CalendarProvider");return e};var Gt=re(_e(),1);function Vt({headerClassName:e,pastYearLength:t=5,futureYearLength:r=5,onMonthChange:i}){const{state:y,dispatch:m}=Ye(),{currentDate:o}=y,h=v=>{if(v===ce.add){m({type:"NEXT"});const g=Je(o,1);i?.(te(g))}else if(v===ce.sub){m({type:"PREV"});const g=qe(o,1);i?.(te(g))}},l=(v,g)=>{const d=Number(v.target.value);let E=o;g===de.month?E=Ze(o,d):g===de.year&&(E=Ke(o,d)),m({type:"SET_DATE",payload:E}),i?.(te(E))};return a.default.createElement("div",{className:(0,Gt.default)(j.header,e)},a.default.createElement("div",{className:j.navigation},a.default.createElement("button",{className:j.todayButton,onClick:()=>{m({type:"TODAY"}),i?.(te(q()))}},"Today"),a.default.createElement("div",{className:j.arrows},a.default.createElement("button",{className:j.iconButton,onClick:()=>h(ce.sub)},a.default.createElement(It,null)),a.default.createElement("button",{className:j.iconButton,onClick:()=>h(ce.add)},a.default.createElement(Pt,null))),a.default.createElement("h2",{className:j.dateTitle},ae(o,"MMMM YYYY"))),a.default.createElement("div",{className:j.controls},a.default.createElement("select",{className:j.select,id:fe.MONTH,name:fe.MONTH,value:Xe(o),onChange:v=>l(v,de.month)},Pe.map(v=>a.default.createElement("option",{key:v.label,value:v.value},v.label))),a.default.createElement("select",{className:j.select,id:fe.YEAR,name:fe.YEAR,value:Le(o),onChange:v=>l(v,de.year)},Ge(t,r,Le(o)).map(v=>a.default.createElement("option",{key:v,value:v},v)))))}var Jt=Vt,ye=re(_e(),1);function qt({dayType:e,width:t,height:r,onDateClick:i,onEventClick:y,onMoreClick:m,isSelectDate:o,data:h,...l}){const{state:v,dispatch:g}=Ye(),{currentDate:d,events:E}=v;(0,a.useEffect)(()=>{h&&g({type:"SET_EVENTS",payload:h})},[h]);const f=(0,a.useMemo)(()=>et(d,E),[d,E]),M=(0,a.useMemo)(()=>l.maxEvents??tt(r,f.length||ne.MIN_ROWS),[l.maxEvents,r,f.length]),w=(0,a.useCallback)(L=>{const b=q(L);i?.(te(b)),o&&!b.isSame(d,"day")&&g({type:"SET_DATE",payload:b})},[d,i]);return a.default.createElement("section",{style:{"--calendar-width":`${t}px`,"--calendar-height":`${r}px`,"--calendar-rows":f.length||ne.DEFAULT_ROWS},className:(0,ye.default)(ee.calendar,l.className)},a.default.createElement(Jt,{headerClassName:l.headerClassName,onMonthChange:l.onMonthChange,pastYearLength:l.pastYearLength,futureYearLength:l.futureYearLength}),a.default.createElement("table",{className:(0,ye.default)(ee.table,l.tableClassName)},a.default.createElement("thead",null,a.default.createElement("tr",null,Ie[e].map(L=>a.default.createElement("th",{key:L,className:ee.tableHeader},L)))),a.default.createElement("tbody",{className:ee.tableBody},f.map((L,b)=>a.default.createElement("tr",{key:b},L.map(($,N)=>a.default.createElement($t,{key:`date_${b}_${N}`,isSelected:o&&$.isCurrentMonth&&$.displayDay===d.date(),isToday:$.isToday,isCurrentMonth:$.isCurrentMonth,onClick:w,date:$.displayDay,dateObj:$.currentDate,data:$.events,cellWidth:t/ne.DAYS_IN_WEEK,className:(0,ye.default)(ee.tableCell,l.tableDateClassName),dataClassName:l.dataClassName,selectedClassName:l.selectedClassName,todayClassName:l.todayClassName,theme:l.theme,maxEvents:M,totalEvents:$.totalEvents,onEventClick:y,onMoreClick:T=>m?.(te(T))})))))))}function zt(e=ge){const t=a.default.useRef(null),{width:r,height:i}=nt(t),y={...ge,...e},{data:m,selectedDate:o}=y,h=e.width??r??0,l=(e.height??i??0)-ne.HEADER_HEIGHT,v=(0,a.useMemo)(()=>o?q(o):void 0,[o]);return a.default.createElement(jt,{initialEvents:m,initialDate:v},a.default.createElement("div",{ref:t,className:ee.calendarContainer},a.default.createElement(qt,{...y,width:h,height:l})))}var Zt=(0,a.memo)(zt),Kt=Zt;exports.DAY_TYPE=Be;exports.EDayType=$e;exports.default=Kt;
|
|
1
|
+
Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});var tt=Object.create,Pe=Object.defineProperty,nt=Object.getOwnPropertyDescriptor,at=Object.getOwnPropertyNames,rt=Object.getPrototypeOf,ot=Object.prototype.hasOwnProperty,ze=(e,n)=>()=>(n||e((n={exports:{}}).exports,n),n.exports),st=(e,n,c,s)=>{if(n&&typeof n=="object"||typeof n=="function")for(var h=at(n),_=0,l=h.length,o;_<l;_++)o=h[_],!ot.call(e,o)&&o!==c&&Pe(e,o,{get:(p=>n[p]).bind(null,o),enumerable:!(s=nt(n,o))||s.enumerable});return e},U=(e,n,c)=>(c=e!=null?tt(rt(e)):{},st(n||!e||!e.__esModule?Pe(c,"default",{value:e,enumerable:!0}):c,e));let t=require("react");t=U(t);var P=ze(((e,n)=>{(function(){"use strict";var c={}.hasOwnProperty;function s(){for(var l="",o=0;o<arguments.length;o++){var p=arguments[o];p&&(l=_(l,h(p)))}return l}function h(l){if(typeof l=="string"||typeof l=="number")return l;if(typeof l!="object")return"";if(Array.isArray(l))return s.apply(null,l);if(l.toString!==Object.prototype.toString&&!l.toString.toString().includes("[native code]"))return l.toString();var o="";for(var p in l)c.call(l,p)&&l[p]&&(o=_(o,p));return o}function _(l,o){return o?l?l+" "+o:l+o:l}typeof n<"u"&&n.exports?(s.default=s,n.exports=s):typeof define=="function"&&typeof define.amd=="object"&&define.amd?define("classnames",[],function(){return s}):window.classNames=s})()}));const Y={month:"month",week:"week",day:"day",schedule:"schedule"},Ae={full:"full",half:"half"};var lt=U(P(),1);const Oe={default:{color:"#000",bgColor:"#fff"},selected:{color:"#fff",bgColor:"#007bff"},today:{color:"#007bff",bgColor:"#e6f2ff"}},te={HEADER_HEIGHT:122,DATE_LABEL_HEIGHT:28,CELL_PADDING:8,EVENT_HEIGHT:26,DEFAULT_ROWS:6,MIN_ROWS:4,DAYS_IN_WEEK:7,EVENT_ITEM_PADDING:16,SMALL_EVENT_HEIGHT:40,TINY_EVENT_HEIGHT:20,DEFAULT_EVENT_COLOR:"#3b82f6"},B={SUNDAY:{FULL:"Sunday",HALF:"Sun"},MONDAY:{FULL:"Monday",HALF:"Mon"},TUESDAY:{FULL:"Tuesday",HALF:"Tue"},WEDNESDAY:{FULL:"Wednesday",HALF:"Wed"},THURSDAY:{FULL:"Thursday",HALF:"Thu"},FRIDAY:{FULL:"Friday",HALF:"Fri"},SATURDAY:{FULL:"Saturday",HALF:"Sat"}},xe={[Ae.full]:[B.SUNDAY.FULL,B.MONDAY.FULL,B.TUESDAY.FULL,B.WEDNESDAY.FULL,B.THURSDAY.FULL,B.FRIDAY.FULL,B.SATURDAY.FULL],[Ae.half]:[B.SUNDAY.HALF,B.MONDAY.HALF,B.TUESDAY.HALF,B.WEDNESDAY.HALF,B.THURSDAY.HALF,B.FRIDAY.HALF,B.SATURDAY.HALF]};var it={JAN:{label:"January",value:0},FEB:{label:"February",value:1},MAR:{label:"March",value:2},APR:{label:"April",value:3},MAY:{label:"May",value:4},JUN:{label:"June",value:5},JUL:{label:"July",value:6},AUG:{label:"August",value:7},SEP:{label:"September",value:8},OCT:{label:"October",value:9},NOV:{label:"November",value:10},DEC:{label:"December",value:11}};const ct=Object.values(it),we={MONTH:"monthDropdown",YEAR:"yearDropdown"},ut=[{label:"Day",value:Y.day},{label:"Week",value:Y.week},{label:"Month",value:Y.month},{label:"Schedule",value:Y.schedule}],Re={events:[],view:Y.month,is12Hour:!1,selectable:!1,dayType:Ae.half,pastYearLength:5,futureYearLength:5,showCurrentTime:!1,autoScrollToCurrentTime:!1,theme:{},classNames:{}},H={DATE:"YYYY-MM-DD",TIME:"HH:mm",TIME_12H:"hh:mm A",HOUR_12H:"hh A",MONTH_YEAR:"MMMM YYYY",DAY_INDEX:"d",DAY_NUMBER:"D",FULL_DATE:"dddd, MMMM D, YYYY",MONTH_DAY_YEAR:"MMMM D, YYYY",SHORT_MONTH_YEAR:"MMM YYYY",SHORT_MONTH:"MMM",SHORT_DAY:"ddd",DAY_DATE_SHORT_MONTH:"ddd, D MMM"},ee={SET_DATE:"SET_DATE",SET_VIEW:"SET_VIEW",NEXT:"NEXT",PREV:"PREV",TODAY:"TODAY"};var dt=ze(((e,n)=>{(function(c,s){typeof e=="object"&&typeof n<"u"?n.exports=s():typeof define=="function"&&define.amd?define(s):(c=typeof globalThis<"u"?globalThis:c||self).dayjs=s()})(e,(function(){"use strict";var c=1e3,s=6e4,h=36e5,_="millisecond",l="second",o="minute",p="hour",f="day",D="week",y="month",u="quarter",a="year",r="date",i="Invalid Date",d=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,T={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(b){var w=["th","st","nd","rd"],E=b%100;return"["+b+(w[(E-20)%10]||w[E]||w[0])+"]"}},S=function(b,w,E){var C=String(b);return!C||C.length>=w?b:""+Array(w+1-C.length).join(E)+b},M={s:S,z:function(b){var w=-b.utcOffset(),E=Math.abs(w),C=Math.floor(E/60),g=E%60;return(w<=0?"+":"-")+S(C,2,"0")+":"+S(g,2,"0")},m:function b(w,E){if(w.date()<E.date())return-b(E,w);var C=12*(E.year()-w.year())+(E.month()-w.month()),g=w.clone().add(C,y),A=E-g<0,N=w.clone().add(C+(A?-1:1),y);return+(-(C+(E-g)/(A?g-N:N-g))||0)},a:function(b){return b<0?Math.ceil(b)||0:Math.floor(b)},p:function(b){return{M:y,y:a,w:D,d:f,D:r,h:p,m:o,s:l,ms:_,Q:u}[b]||String(b||"").toLowerCase().replace(/s$/,"")},u:function(b){return b===void 0}},L="en",x={};x[L]=T;var X="$isDayjsObject",ne=function(b){return b instanceof ae||!(!b||!b[X])},oe=function b(w,E,C){var g;if(!w)return L;if(typeof w=="string"){var A=w.toLowerCase();x[A]&&(g=A),E&&(x[A]=E,g=A);var N=w.split("-");if(!g&&N.length>1)return b(N[0])}else{var I=w.name;x[I]=w,g=I}return!C&&g&&(L=g),g||!C&&L},O=function(b,w){if(ne(b))return b.clone();var E=typeof w=="object"?w:{};return E.date=b,E.args=arguments,new ae(E)},$=M;$.l=oe,$.i=ne,$.w=function(b,w){return O(b,{locale:w.$L,utc:w.$u,x:w.$x,$offset:w.$offset})};var ae=(function(){function b(E){this.$L=oe(E.locale,null,!0),this.parse(E),this.$x=this.$x||E.x||{},this[X]=!0}var w=b.prototype;return w.parse=function(E){this.$d=(function(C){var g=C.date,A=C.utc;if(g===null)return new Date(NaN);if($.u(g))return new Date;if(g instanceof Date)return new Date(g);if(typeof g=="string"&&!/Z$/i.test(g)){var N=g.match(d);if(N){var I=N[2]-1||0,R=(N[7]||"0").substring(0,3);return A?new Date(Date.UTC(N[1],I,N[3]||1,N[4]||0,N[5]||0,N[6]||0,R)):new Date(N[1],I,N[3]||1,N[4]||0,N[5]||0,N[6]||0,R)}}return new Date(g)})(E),this.init()},w.init=function(){var E=this.$d;this.$y=E.getFullYear(),this.$M=E.getMonth(),this.$D=E.getDate(),this.$W=E.getDay(),this.$H=E.getHours(),this.$m=E.getMinutes(),this.$s=E.getSeconds(),this.$ms=E.getMilliseconds()},w.$utils=function(){return $},w.isValid=function(){return this.$d.toString()!==i},w.isSame=function(E,C){var g=O(E);return this.startOf(C)<=g&&g<=this.endOf(C)},w.isAfter=function(E,C){return O(E)<this.startOf(C)},w.isBefore=function(E,C){return this.endOf(C)<O(E)},w.$g=function(E,C,g){return $.u(E)?this[C]:this.set(g,E)},w.unix=function(){return Math.floor(this.valueOf()/1e3)},w.valueOf=function(){return this.$d.getTime()},w.startOf=function(E,C){var g=this,A=!!$.u(C)||C,N=$.p(E),I=function(ie,j){var se=$.w(g.$u?Date.UTC(g.$y,j,ie):new Date(g.$y,j,ie),g);return A?se:se.endOf(f)},R=function(ie,j){return $.w(g.toDate()[ie].apply(g.toDate("s"),(A?[0,0,0,0]:[23,59,59,999]).slice(j)),g)},F=this.$W,G=this.$M,z=this.$D,ue="set"+(this.$u?"UTC":"");switch(N){case a:return A?I(1,0):I(31,11);case y:return A?I(1,G):I(0,G+1);case D:var le=this.$locale().weekStart||0,me=(F<le?F+7:F)-le;return I(A?z-me:z+(6-me),G);case f:case r:return R(ue+"Hours",0);case p:return R(ue+"Minutes",1);case o:return R(ue+"Seconds",2);case l:return R(ue+"Milliseconds",3);default:return this.clone()}},w.endOf=function(E){return this.startOf(E,!1)},w.$set=function(E,C){var g,A=$.p(E),N="set"+(this.$u?"UTC":""),I=(g={},g[f]=N+"Date",g[r]=N+"Date",g[y]=N+"Month",g[a]=N+"FullYear",g[p]=N+"Hours",g[o]=N+"Minutes",g[l]=N+"Seconds",g[_]=N+"Milliseconds",g)[A],R=A===f?this.$D+(C-this.$W):C;if(A===y||A===a){var F=this.clone().set(r,1);F.$d[I](R),F.init(),this.$d=F.set(r,Math.min(this.$D,F.daysInMonth())).$d}else I&&this.$d[I](R);return this.init(),this},w.set=function(E,C){return this.clone().$set(E,C)},w.get=function(E){return this[$.p(E)]()},w.add=function(E,C){var g,A=this;E=Number(E);var N=$.p(C),I=function(G){var z=O(A);return $.w(z.date(z.date()+Math.round(G*E)),A)};if(N===y)return this.set(y,this.$M+E);if(N===a)return this.set(a,this.$y+E);if(N===f)return I(1);if(N===D)return I(7);var R=(g={},g[o]=s,g[p]=h,g[l]=c,g)[N]||1,F=this.$d.getTime()+E*R;return $.w(F,this)},w.subtract=function(E,C){return this.add(-1*E,C)},w.format=function(E){var C=this,g=this.$locale();if(!this.isValid())return g.invalidDate||i;var A=E||"YYYY-MM-DDTHH:mm:ssZ",N=$.z(this),I=this.$H,R=this.$m,F=this.$M,G=g.weekdays,z=g.months,ue=g.meridiem,le=function(j,se,_e,Te){return j&&(j[se]||j(C,A))||_e[se].slice(0,Te)},me=function(j){return $.s(I%12||12,j,"0")},ie=ue||function(j,se,_e){var Te=j<12?"AM":"PM";return _e?Te.toLowerCase():Te};return A.replace(m,(function(j,se){return se||(function(_e){switch(_e){case"YY":return String(C.$y).slice(-2);case"YYYY":return $.s(C.$y,4,"0");case"M":return F+1;case"MM":return $.s(F+1,2,"0");case"MMM":return le(g.monthsShort,F,z,3);case"MMMM":return le(z,F);case"D":return C.$D;case"DD":return $.s(C.$D,2,"0");case"d":return String(C.$W);case"dd":return le(g.weekdaysMin,C.$W,G,2);case"ddd":return le(g.weekdaysShort,C.$W,G,3);case"dddd":return G[C.$W];case"H":return String(I);case"HH":return $.s(I,2,"0");case"h":return me(1);case"hh":return me(2);case"a":return ie(I,R,!0);case"A":return ie(I,R,!1);case"m":return String(R);case"mm":return $.s(R,2,"0");case"s":return String(C.$s);case"ss":return $.s(C.$s,2,"0");case"SSS":return $.s(C.$ms,3,"0");case"Z":return N}return null})(j)||N.replace(":","")}))},w.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},w.diff=function(E,C,g){var A,N=this,I=$.p(C),R=O(E),F=(R.utcOffset()-this.utcOffset())*s,G=this-R,z=function(){return $.m(N,R)};switch(I){case a:A=z()/12;break;case y:A=z();break;case u:A=z()/3;break;case D:A=(G-F)/6048e5;break;case f:A=(G-F)/864e5;break;case p:A=G/h;break;case o:A=G/s;break;case l:A=G/c;break;default:A=G}return g?A:$.a(A)},w.daysInMonth=function(){return this.endOf(y).$D},w.$locale=function(){return x[this.$L]},w.locale=function(E,C){if(!E)return this.$L;var g=this.clone(),A=oe(E,C,!0);return A&&(g.$L=A),g},w.clone=function(){return $.w(this.$d,this)},w.toDate=function(){return new Date(this.valueOf())},w.toJSON=function(){return this.isValid()?this.toISOString():null},w.toISOString=function(){return this.$d.toISOString()},w.toString=function(){return this.$d.toUTCString()},b})(),ce=ae.prototype;return O.prototype=ce,[["$ms",_],["$s",l],["$m",o],["$H",p],["$W",f],["$M",y],["$y",a],["$D",r]].forEach((function(b){ce[b[1]]=function(w){return this.$g(w,b[0],b[1])}})),O.extend=function(b,w){return b.$i||(b(w,ae,O),b.$i=!0),O},O.locale=oe,O.isDayjs=ne,O.unix=function(b){return O(1e3*b)},O.en=x[L],O.Ls=x,O.p={},O}))})),ft=U(dt(),1);const v=ft.default;function V(e){return v(e).startOf("day")}function Ye(e){return v(e).startOf("month")}function $e(e,n){return v(e).add(n,"day")}function Ve(e,n){return v(e).subtract(n,"day")}function re(e,n){return v(e).diff(v(n),"day")}function mt(e,n){return v(e).date(n)}function _t(e,n){return v(e).month(n)}function ht(e,n){return v(e).year(n)}function Fe(e){return v(e).date()}function pt(e){return v(e).month()}function We(e){return v(e).year()}function Le(e,n){return v(e).isBefore(v(n),"day")}function Ce(e,n){return v(e).isAfter(v(n),"day")}function Ie(e,n){return v(e).isSame(v(n),"day")}function k(e,n){return v(e).format(n)}function ve(e){return v(e).toDate()}function Ge(e){return Number(v(e).startOf("month").format("d"))}function Je(e,n){const c=v(e).date(n);return v().isSame(c,"day")}function yt(e,n,c){const s=e+n,h=v().year()-e,_=Array.from({length:s},(l,o)=>o+h);if(!_.includes(c))if(v().year()<=c)_.push(c);else return[c,..._];return _}function vt(e,n){const{DATE_LABEL_HEIGHT:c,CELL_PADDING:s,EVENT_HEIGHT:h}=te,_=e/n-c-s,l=Math.round(_/h)-1;return Math.max(0,l)}function Ne(e){const n=c=>!c.includes("T")&&!c.includes(" ");return!(!n(e.startDate)||e.endDate&&!n(e.endDate))}function Xe(e){if(!e.endDate)return!1;const n=v(e.startDate).startOf("day"),c=v(e.endDate).startOf("day");return!n.isSame(c)}function Ee(e,n,c){const s=c?H.TIME_12H:H.TIME,h=e.endDate&&!v(e.startDate).isSame(e.endDate,"day"),_=Ne(e);let l=s;n===Y.month||_?l=H.DATE:h&&(l=`${H.DATE} ${s}`);let o=`${e.title} (${k(e.startDate,l)}`;return e.endDate&&(o+=` - ${k(e.endDate,l)}`),o+=")",o}function Et(){const e=new Date().getTimezoneOffset(),n=e>0?"-":"+",c=Math.abs(e),s=Math.floor(c/60),h=c%60;return h===0?`GMT${n}${s.toString().padStart(2,"0")}`:`GMT${n}${s.toString().padStart(2,"0")}:${h.toString().padStart(2,"0")}`}function Dt(e,n){const[c,s]=(0,t.useState)({width:0,height:0});return(0,t.useEffect)(()=>{if(n)return;const h=e.current;if(!h)return;const _=new ResizeObserver(l=>{if(!Array.isArray(l)||!l.length)return;const{width:o,height:p}=l[0].contentRect;s({width:o,height:p})});return _.observe(h),()=>{_.disconnect()}},[e,n]),c}function Tt(e){return(0,t.useMemo)(()=>e.filter(n=>n.endDate?!v(n.endDate).isBefore(v(n.startDate)):!0),[e])}const wt="_calendar_1250h_1";var gt={calendar:wt};const St="_header_oyk7l_1",Mt="_navigation_oyk7l_13",Ct="_todayButton_oyk7l_19",bt="_arrows_oyk7l_37",At="_iconButton_oyk7l_43",Nt="_dateTitle_oyk7l_63",Ot="_controls_oyk7l_72",$t="_select_oyk7l_78";var q={header:St,navigation:Mt,todayButton:Ct,arrows:bt,iconButton:At,dateTitle:Nt,controls:Ot,select:$t};function Ht(){return t.default.createElement("svg",{width:"40px",height:"40px",viewBox:"0 0 24.00 24.00",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor",transform:"rotate(180)"},t.default.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),t.default.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),t.default.createElement("g",{id:"SVGRepo_iconCarrier"},t.default.createElement("path",{d:"M10 7L15 12L10 17",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round"})))}var kt=Ht;function Lt(){return t.default.createElement("svg",{width:"40px",height:"40px",viewBox:"0 0 24.00 24.00",fill:"none",xmlns:"http://www.w3.org/2000/svg",stroke:"currentColor"},t.default.createElement("g",{id:"SVGRepo_bgCarrier",strokeWidth:"0"}),t.default.createElement("g",{id:"SVGRepo_tracerCarrier",strokeLinecap:"round",strokeLinejoin:"round"}),t.default.createElement("g",{id:"SVGRepo_iconCarrier"},t.default.createElement("path",{d:"M10 7L15 12L10 17",stroke:"currentColor",strokeWidth:"1.2",strokeLinecap:"round",strokeLinejoin:"round"})))}var It=Lt,qe=(0,t.createContext)(void 0);function xt(e,n){switch(n.type){case ee.SET_DATE:return{...e,selectedDate:n.payload};case ee.SET_VIEW:return{...e,view:n.payload};case ee.NEXT:{const c=e.view===Y.schedule?"day":e.view;return{...e,selectedDate:e.selectedDate.add(1,c)}}case ee.PREV:{const c=e.view===Y.schedule?"day":e.view;return{...e,selectedDate:e.selectedDate.subtract(1,c)}}case ee.TODAY:return{...e,selectedDate:v()};default:return e}}function Rt({children:e,initialDate:n,initialView:c}){const[s,h]=(0,t.useReducer)(xt,{selectedDate:n,view:c}),_=(0,t.useMemo)(()=>({state:s,dispatch:h}),[s]);return t.default.createElement(qe.Provider,{value:_},e)}function De(){const e=(0,t.useContext)(qe);if(e===void 0)throw new Error("useCalendar must be used within a CalendarProvider");return e}var be=(function(e){return e.add="add",e.sub="sub",e})(be||{}),ye=(function(e){return e.month="month",e.year="year",e})(ye||{});function Yt({headerClassName:e,pastYearLength:n,futureYearLength:c,onNavigate:s,onViewChange:h,events:_}){const{state:l,dispatch:o}=De(),{selectedDate:p,view:f}=l,D=r=>{const i=r===be.add;o({type:i?ee.NEXT:ee.PREV});const d=f===Y.schedule?"day":f,m=i?p.add(1,d):p.subtract(1,d);s?.(ve(m))},y=(r,i)=>{const d=Number(r.target.value);let m=p;i===ye.month?m=_t(p,d):i===ye.year&&(m=ht(p,d)),o({type:ee.SET_DATE,payload:m}),s?.(ve(m))},u=r=>{const i=r.target.value;o({type:ee.SET_VIEW,payload:i}),h?.(i)},a=()=>{if(f===Y.day)return k(p,H.MONTH_DAY_YEAR);if(f===Y.week){const r=p.startOf("week"),i=p.endOf("week");if(r.month()!==i.month())return r.year()!==i.year()?`${k(r,H.SHORT_MONTH_YEAR)} - ${k(i,H.SHORT_MONTH_YEAR)}`:`${k(r,H.SHORT_MONTH)} - ${k(i,H.SHORT_MONTH_YEAR)}`}if(f===Y.schedule&&_&&_.length>0){let r=v(_[0].startDate),i=r;return _.forEach(d=>{const m=v(d.startDate),T=d.endDate?v(d.endDate):m;m.isBefore(r)&&(r=m),T.isAfter(i)&&(i=T)}),r.month()!==i.month()||r.year()!==i.year()?r.year()!==i.year()?`${k(r,H.SHORT_MONTH_YEAR)} - ${k(i,H.SHORT_MONTH_YEAR)}`:`${k(r,H.SHORT_MONTH)} - ${k(i,H.SHORT_MONTH_YEAR)}`:k(r,H.SHORT_MONTH_YEAR)}return k(p,H.MONTH_YEAR)};return t.default.createElement("div",{className:(0,lt.default)(q.header,e)},t.default.createElement("div",{className:q.navigation},t.default.createElement("button",{className:q.todayButton,onClick:()=>{o({type:ee.TODAY}),s?.(ve(v()))}},"Today"),t.default.createElement("div",{className:q.arrows},t.default.createElement("button",{className:q.iconButton,onClick:()=>D(be.sub)},t.default.createElement(kt,null)),t.default.createElement("button",{className:q.iconButton,onClick:()=>D(be.add)},t.default.createElement(It,null))),t.default.createElement("h2",{className:q.dateTitle},a())),t.default.createElement("div",{className:q.controls},t.default.createElement("select",{className:q.select,value:f,onChange:u},ut.map(r=>t.default.createElement("option",{key:r.value,value:r.value},r.label))),t.default.createElement("select",{className:q.select,id:we.MONTH,name:we.MONTH,value:pt(p),onChange:r=>y(r,ye.month)},ct.map(r=>t.default.createElement("option",{key:r.label,value:r.value},r.label))),t.default.createElement("select",{className:q.select,id:we.YEAR,name:we.YEAR,value:We(p),onChange:r=>y(r,ye.year)},yt(n,c,We(p)).map(r=>t.default.createElement("option",{key:r,value:r},r)))))}var Vt=Yt;function Ze(e,n){return(0,t.useMemo)(()=>{const c=Array.isArray(n)?n:[n],s=h=>{const _=e.filter(u=>{const a=v(u.startDate).startOf("day"),r=v(h).startOf("day");return a.isSame(r)&&!Xe(u)&&!Ne(u)});if(_.length===0)return[];const l=u=>{const a=v(u);return a.hour()*60+a.minute()},o=_.map((u,a)=>{const r=l(u.startDate);let i=u.endDate?l(u.endDate):r+1;return i===r&&(i=r+1),i<r&&(i=1440),{id:`${a}-${u.title}`,start:r,end:i,duration:i-r,original:u}});o.sort((u,a)=>u.start===a.start?a.duration-u.duration:u.start-a.start);const p=[];let f=[],D=-1/0;for(const u of o)f.length>0&&u.start>=D&&(p.push(f),f=[],D=-1/0),f.push(u),D=Math.max(D,u.end);f.length>0&&p.push(f);for(const u of p){const a=[];for(const d of u){let m=!1;for(let T=0;T<a.length;T++)if(a[T][a[T].length-1].end<=d.start){a[T].push(d),d.columnIndex=T,m=!0;break}m||(d.columnIndex=a.length,a.push([d]))}const r=a.length;for(const d of u)d.left=d.columnIndex/r,d.width=1/r;const i=new Map;for(const d of u){const m=d.columnIndex;i.has(m)||i.set(m,[]),i.get(m).push(d)}for(const d of u){let m=1;for(let S=d.columnIndex+1;S<r&&!(i.get(S)??[]).some(M=>M.start<d.end&&d.start<M.end);S++)m++;const T=r-d.columnIndex;d.expandCols=Math.min(m,T),d.width=d.expandCols/r}}function y(u){const a=u.end-u.start;return{event:u.original,top:u.start,height:Math.max(a,15),left:parseFloat((u.left*100).toFixed(4)),width:parseFloat((u.width*100).toFixed(4)),zIndex:u.columnIndex+1}}return p.flatMap(u=>u.map(y))};return Array.isArray(n)?c.map(h=>s(h)):s(c[0])},[e,n])}const Ft="_dayView_lnx60_1",Wt="_stickyTopContainer_lnx60_11",Gt="_dayHeaderContainer_lnx60_21",Ut="_timeHeaderSpacer_lnx60_27",jt="_dayHeader_lnx60_21",Bt="_dayName_lnx60_43",Pt="_dayNumber_lnx60_49",zt="_today_lnx60_55",Jt="_timeGrid_lnx60_60",Xt="_eventsColumn_lnx60_67";var K={dayView:Ft,stickyTopContainer:Wt,dayHeaderContainer:Gt,timeHeaderSpacer:Ut,dayHeader:jt,dayName:Bt,dayNumber:Pt,today:zt,timeGrid:Jt,eventsColumn:Xt};const qt="_timeColumn_1hfuf_1",Zt="_timeSlot_1hfuf_11";var Ue={timeColumn:qt,timeSlot:Zt},je=U(P(),1),Qt=Array.from({length:24},(e,n)=>n);function Kt({is12Hour:e,classNames:n}){return t.default.createElement("div",{className:(0,je.default)(Ue.timeColumn,n?.timeColumn)},Qt.map(c=>{const s=e?H.HOUR_12H:H.TIME;return t.default.createElement("div",{key:c,className:(0,je.default)(Ue.timeSlot,n?.timeSlot)},k(v().hour(c).minute(0),s))}))}var Qe=Kt;const en="_eventItem_10oji_1",tn="_eventItemSmall_10oji_19",nn="_eventItemTiny_10oji_26",an="_eventTitle_10oji_35",rn="_eventTime_10oji_42";var he={eventItem:en,eventItemSmall:tn,eventItemTiny:nn,eventTitle:an,eventTime:rn},on=U(P(),1);function sn({item:e,onEventClick:n,is12Hour:c,classNames:s}){const h=e.event.color||te.DEFAULT_EVENT_COLOR,_=Ee(e.event,"day",c),l=e.height<te.SMALL_EVENT_HEIGHT&&e.height>=te.TINY_EVENT_HEIGHT,o=e.height<te.TINY_EVENT_HEIGHT;return t.default.createElement("div",{className:(0,on.default)(he.eventItem,s?.event,{[he.eventItemSmall]:l,[he.eventItemTiny]:o}),style:{top:`${e.top}px`,height:`${e.height}px`,left:`${e.left}%`,zIndex:e.zIndex,"--event-width":`${e.width}%`,backgroundColor:h,position:"absolute"},id:e.event.id,onClick:()=>n?.(e.event),title:_},t.default.createElement("div",{className:he.eventTitle},e.event.title),t.default.createElement("div",{className:he.eventTime},k(e.event.startDate,c?H.TIME_12H:H.TIME)))}const ln="_currentTimeLine_1gaip_1",cn="_circle_1gaip_12",un="_line_1gaip_21";var He={currentTimeLine:ln,circle:cn,line:un},dn=U(P(),1),fn=({className:e})=>{const[n,c]=(0,t.useState)(0);return(0,t.useEffect)(()=>{const s=()=>{const _=v(),l=_.hour(),o=_.minute();c(l*60+o)};s();const h=setInterval(s,6e4);return()=>clearInterval(h)},[]),t.default.createElement("div",{className:(0,dn.default)(He.currentTimeLine,e),style:{top:`${n}px`}},t.default.createElement("div",{className:He.circle}),t.default.createElement("div",{className:He.line}))},mn=fn;const _n="_eventSlot_mjgbu_1";var hn={eventSlot:_n},pn=U(P(),1),yn=Array.from({length:24},(e,n)=>n);function vn({dayEvents:e,onEventClick:n,is12Hour:c,classNames:s,isToday:h,showCurrentTime:_}){return t.default.createElement(t.default.Fragment,null,yn.map(l=>t.default.createElement("div",{key:l,className:(0,pn.default)(hn.eventSlot,s?.timeSlot)})),e.map((l,o)=>t.default.createElement(sn,{key:l.event.id||o,item:l,onEventClick:n,is12Hour:c,classNames:s})),h&&_&&t.default.createElement(mn,null))}var Ke=vn;function En(e,n,c,s=3){return(0,t.useMemo)(()=>{if(e.length===0)return{layoutEvents:[],rowCount:0,effectiveMaxRows:s,hiddenCounts:[],hasHiddenEvents:!1,visibleLayoutEvents:[],containerHeight:28,showExpandCollapse:!1};const h=v(e[0]).startOf("day"),_=v(e[e.length-1]).startOf("day"),l=n.filter(a=>Xe(a)||Ne(a)).filter(a=>{const r=v(a.startDate).startOf("day"),i=a.endDate?v(a.endDate).startOf("day"):r;return(r.isBefore(_)||r.isSame(_))&&(i.isAfter(h)||i.isSame(h))});l.sort((a,r)=>{const i=v(a.startDate).valueOf(),d=v(r.startDate).valueOf();if(i===d){const m=a.endDate?v(a.endDate).valueOf()-i:0;return(r.endDate?v(r.endDate).valueOf()-d:0)-m}return i-d});const o=[],p=[];l.forEach(a=>{const r=v(a.startDate).startOf("day"),i=a.endDate?v(a.endDate).startOf("day"):r;let d=e.findIndex(x=>v(x).startOf("day").isSame(r));d===-1&&r.isBefore(h)&&(d=0);let m=e.findIndex(x=>v(x).startOf("day").isSame(i));m===-1&&i.isAfter(_)&&(m=e.length-1),d===-1&&(d=0),m===-1&&(m=e.length-1);const T=r.isBefore(h),S=i.isAfter(_);let M=0;for(;;){if(!o[M]){o[M]=[];break}if(!o[M].some(x=>d<=x.endIndex&&m>=x.startIndex))break;M++}const L={event:a,startIndex:d,endIndex:m,isClippedLeft:T,isClippedRight:S,row:M};o[M].push(L),p.push(L)});const f=o.length,D=f===s+1?s+1:s,y=new Array(e.length).fill(0);p.forEach(a=>{if(a.row>=D)for(let r=Math.max(0,a.startIndex);r<=Math.min(e.length-1,a.endIndex);r++)y[r]++});const u=y.some(a=>a>0);return{layoutEvents:p,rowCount:f,effectiveMaxRows:D,hiddenCounts:y,hasHiddenEvents:u,visibleLayoutEvents:c?p:p.filter(a=>a.row<D),containerHeight:Math.max(c?f*24+4:u?(D+1)*24+4:f*24+4,28),showExpandCollapse:u||c}},[e,n,c,s])}const Dn="_bannerWrapper_19c6j_1",Tn="_timeHeaderSpacer_19c6j_7",wn="_timezoneLabel_19c6j_22",gn="_expandIcon_19c6j_30",Sn="_expanded_19c6j_48",Mn="_bannerContainer_19c6j_52",Cn="_bannerGridBg_19c6j_64",bn="_bannerGridCell_19c6j_74",An="_bannerRow_19c6j_83",Nn="_bannerChip_19c6j_90",On="_clippedLeft_19c6j_110",$n="_clippedRight_19c6j_117",Hn="_title_19c6j_144",kn="_moreChip_19c6j_151";var W={bannerWrapper:Dn,timeHeaderSpacer:Tn,timezoneLabel:wn,expandIcon:gn,expanded:Sn,bannerContainer:Mn,bannerGridBg:Cn,bannerGridCell:bn,bannerRow:An,bannerChip:Nn,clippedLeft:On,clippedRight:$n,title:Hn,moreChip:kn},Be=U(P(),1);function et({days:e,events:n,maxEvents:c,onEventClick:s,classNames:h,is12Hour:_}){const[l,o]=(0,t.useState)(!1),p=c??3;(0,t.useEffect)(()=>{o(!1)},[e]);const{layoutEvents:f,effectiveMaxRows:D,hiddenCounts:y,visibleLayoutEvents:u,containerHeight:a,showExpandCollapse:r}=En(e,n,l,p),i=()=>t.default.createElement("div",{className:W.bannerGridBg},e.map((T,S)=>t.default.createElement("div",{key:S,className:W.bannerGridCell}))),d=Et();if(f.length===0)return t.default.createElement("div",{className:W.bannerWrapper},t.default.createElement("div",{className:W.timeHeaderSpacer},t.default.createElement("span",{className:W.timezoneLabel},d)),t.default.createElement("div",{className:W.bannerContainer},i()));const m=e.length;return t.default.createElement("div",{className:W.bannerWrapper},t.default.createElement("div",{className:W.timeHeaderSpacer},t.default.createElement("span",{className:W.timezoneLabel},d),r&&t.default.createElement("div",{className:(0,Be.default)(W.expandIcon,{[W.expanded]:l}),onClick:()=>o(!l),title:l?"Collapse all day events":"Expand all day events"},t.default.createElement("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round"},t.default.createElement("polyline",{points:"6 9 12 15 18 9"})))),t.default.createElement("div",{className:W.bannerContainer,style:{height:a}},i(),u.map((T,S)=>{const{event:M,row:L,startIndex:x,endIndex:X,isClippedLeft:ne,isClippedRight:oe}=T,O=x/m*100,$=(X-x+1)/m*100,ae=L*24+2,ce=M.color||"#1a73e8";return t.default.createElement("div",{key:M.id||`banner-evt-${S}`,className:(0,Be.default)(W.bannerChip,h?.event,{[W.clippedLeft]:ne,[W.clippedRight]:oe}),style:{top:`${ae}px`,left:`${O}%`,width:`calc(${$}% - 4px)`,backgroundColor:ce},onClick:()=>s?.(M),title:Ee(M,Y.week,_)},t.default.createElement("span",{className:W.title},M.title))}),!l&&y.map((T,S)=>{if(T===0)return null;const M=S/m*100,L=1/m*100,x=D*24+2;return t.default.createElement("div",{key:`more-${S}`,className:W.moreChip,style:{top:`${x}px`,left:`${M}%`,width:`calc(${L}% - 4px)`},onClick:()=>o(!0)},"+ ",T," more")})))}var ge=U(P(),1);function Ln({events:e,onEventClick:n,dayType:c,is12Hour:s,theme:h,classNames:_,showCurrentTime:l,maxEvents:o,autoScrollToCurrentTime:p}){const f=(0,t.useRef)(null),{state:D}=De(),{selectedDate:y}=D,u=Ze(e,y),a=v().isSame(y,"day"),r=a?{color:h?.today?.color,backgroundColor:h?.today?.bgColor}:void 0;return(0,t.useEffect)(()=>{if(p&&f.current&&a){const i=v(),d=i.hour(),m=i.minute(),T=d*60+m,S=f.current,M=Math.max(0,T-S.clientHeight/2);S.scrollTo({top:M,behavior:"smooth"})}},[p,a]),t.default.createElement("div",{className:K.dayView,ref:f},t.default.createElement("div",{className:K.stickyTopContainer},t.default.createElement("div",{className:K.dayHeaderContainer},t.default.createElement("div",{className:K.timeHeaderSpacer}),t.default.createElement("div",{className:(0,ge.default)(K.dayHeader,_?.dayHeader)},t.default.createElement("div",{className:(0,ge.default)(K.dayName,_?.dayName)},xe[c][y.day()]),t.default.createElement("div",{className:(0,ge.default)(K.dayNumber,_?.dayNumber,{[K.today]:a}),style:r},k(y,H.DAY_NUMBER)))),t.default.createElement(et,{days:[y],events:e||[],maxEvents:o,onEventClick:n,classNames:_,is12Hour:s})),t.default.createElement("div",{className:K.timeGrid},t.default.createElement(Qe,{is12Hour:s,classNames:_}),t.default.createElement("div",{className:(0,ge.default)(K.eventsColumn,_?.dayColumn)},t.default.createElement(Ke,{dayEvents:u,onEventClick:n,is12Hour:s,classNames:_,isToday:a,showCurrentTime:l}))))}var In=Ln;const xn="_weekView_1wzka_1",Rn="_stickyTopContainer_1wzka_11",Yn="_weekHeader_1wzka_21",Vn="_timeHeaderSpacer_1wzka_27",Fn="_dayHeader_1wzka_37",Wn="_dayName_1wzka_48",Gn="_dayNumber_1wzka_54",Un="_today_1wzka_60",jn="_timeGrid_1wzka_65",Bn="_eventsGrid_1wzka_71",Pn="_dayColumn_1wzka_76";var Z={weekView:xn,stickyTopContainer:Rn,weekHeader:Yn,timeHeaderSpacer:Vn,dayHeader:Fn,dayName:Wn,dayNumber:Gn,today:Un,timeGrid:jn,eventsGrid:Bn,dayColumn:Pn},Se=U(P(),1);function zn({events:e,onEventClick:n,dayType:c,is12Hour:s,theme:h,classNames:_,showCurrentTime:l,maxEvents:o,autoScrollToCurrentTime:p}){const f=(0,t.useRef)(null),{state:D}=De(),{selectedDate:y}=D,u=(0,t.useMemo)(()=>y.startOf("week"),[y]),a=(0,t.useMemo)(()=>Array.from({length:7},(d,m)=>u.add(m,"day")),[u]),r=Ze(e,a),i=(0,t.useMemo)(()=>{const d=v();return a.some(m=>d.isSame(m,"day"))},[a]);return(0,t.useEffect)(()=>{if(p&&f.current&&i){const d=v(),m=d.hour(),T=d.minute(),S=m*60+T,M=f.current,L=Math.max(0,S-M.clientHeight/2);M.scrollTo({top:L,behavior:"smooth"})}},[p,i]),t.default.createElement("div",{className:Z.weekView,ref:f},t.default.createElement("div",{className:Z.stickyTopContainer},t.default.createElement("div",{className:Z.weekHeader},t.default.createElement("div",{className:Z.timeHeaderSpacer}),a.map((d,m)=>{const T=v().isSame(d,"day"),S=T?{color:h?.today?.color,backgroundColor:h?.today?.bgColor}:void 0;return t.default.createElement("div",{key:m,className:(0,Se.default)(Z.dayHeader,_?.dayHeader)},t.default.createElement("div",{className:(0,Se.default)(Z.dayName,_?.dayName)},xe[c][m]),t.default.createElement("div",{className:(0,Se.default)(Z.dayNumber,_?.dayNumber,{[Z.today]:T}),style:S},k(d,H.DAY_NUMBER)))})),t.default.createElement(et,{days:a,events:e||[],maxEvents:o,onEventClick:n,classNames:_,is12Hour:s})),t.default.createElement("div",{className:Z.timeGrid},t.default.createElement(Qe,{is12Hour:s,classNames:_}),t.default.createElement("div",{className:Z.eventsGrid},a.map((d,m)=>{const T=v().isSame(d,"day");return t.default.createElement("div",{key:m,className:(0,Se.default)(Z.dayColumn,_?.dayColumn)},t.default.createElement(Ke,{dayEvents:r[m],onEventClick:n,is12Hour:s,classNames:_,isToday:T,showCurrentTime:l}))}))))}var Jn=zn;function Xn(e,n){for(var c=0,s=0,h,_=[],l=new Date(e||new Date),o=l.getFullYear(),p=l.getMonth(),f=new Date(o,p,1-(n|0)).getDay(),D=new Date(o,p+1,0).getDate();c<D;){for(s=0,h=Array(7);s<7;){for(;s<f;)h[s++]=0;h[s++]=++c>D?0:c,f=0}_.push(h)}return _}function qn(e,n){return(0,t.useMemo)(()=>{const c=[...n].sort((s,h)=>re(V(s.startDate),V(h.startDate)));return Xn(e.toDate()).map((s,h)=>{const _=s.map((y,u)=>{let a=v(e),r=!0,i=y;if(y===0)if(r=!1,h===0)a=Ve(Ye(e),Ge(e)-u),i=Fe(a);else{const d=Ye(e),m=Ge(e);a=$e(d,h*7+u-m),i=Fe(a)}else a=mt(e,y);return{currentDate:a,isCurrentMonth:r,displayDay:i}}),l=V(_[0].currentDate),o=V(_[6].currentDate),p=c.filter(y=>{const u=V(y.startDate),a=y.endDate?V(y.endDate):u;return Le(u,$e(o,1))&&Ce(a,Ve(l,1))});p.sort((y,u)=>{const a=V(y.startDate),r=V(u.startDate);if(!Ie(a,r))return re(a,r);const i=y.endDate?V(y.endDate):a,d=u.endDate?V(u.endDate):r,m=re(i,a);return re(d,r)-m});const f=Array(7).fill(null).map(()=>[]),D=new Map;return p.forEach((y,u)=>{const a=V(y.startDate),r=y.endDate?V(y.endDate):a;let i=re(a,l),d=re(r,l);i<0&&(i=0),d>6&&(d=6);let m=0;for(;;){let S=!0;for(let M=i;M<=d;M++)if(f[M][m]){S=!1;break}if(S)break;m++}const T=y.startDate+y.title+u;D.set(T,m);for(let S=i;S<=d;S++)f[S][m]=T;y._tempId=T}),_.map((y,u)=>{const{currentDate:a,isCurrentMonth:r,displayDay:i}=y,d=p.filter(S=>{const M=V(S.startDate),L=S.endDate?V(S.endDate):M;return!Le(a,M)&&!Ce(a,L)}),m=[];let T=-1;d.forEach(S=>{const M=D.get(S._tempId);M!==void 0&&M>T&&(T=M)});for(let S=0;S<=T;S++){const M=d.find(L=>D.get(L._tempId)===S);if(M)if(Ie(V(M.startDate),a)||u===0){const L=M.endDate?V(M.endDate):V(M.startDate),x=$e(a,6-u);let X=L;Ce(L,x)&&(X=x),m.push({...M,startDateWeek:k(a,H.DATE),endDateWeek:k(X,H.DATE),isSpacer:!1})}else m.push({...M,isSpacer:!0});else m.push(null)}return{currentDate:a,isCurrentMonth:r,displayDay:i,events:m,totalEvents:d.length,isToday:Je(e,i)&&r}})})},[e,n])}const Zn="_dateData_ed04n_1",Qn="_currentMonth_ed04n_18",Kn="_cellContent_ed04n_23",ea="_dateLabel_ed04n_32",ta="_selected_ed04n_46",na="_today_ed04n_51",aa="_dataContainer_ed04n_56",ra="_spacer_ed04n_64",oa="_eventItem_ed04n_69",sa="_moreEventsContainer_ed04n_97",la="_moreEvents_ed04n_97";var Q={dateData:Zn,currentMonth:Qn,cellContent:Kn,dateLabel:ea,selected:ta,today:na,dataContainer:aa,spacer:ra,eventItem:oa,moreEventsContainer:sa,moreEvents:la};const ia="_popover_5fy95_1",ca="_fadeIn_5fy95_1",ua="_popoverHeader_5fy95_34",da="_popoverContent_5fy95_45",fa="_popoverItem_5fy95_49",ma="_startBefore_5fy95_68",_a="_endAfter_5fy95_75";var de={popover:ia,fadeIn:ca,popoverHeader:ua,popoverContent:da,popoverItem:fa,startBefore:ma,endAfter:_a},ha=U(P(),1);function pa({dateObj:e,events:n,onEventClick:c,onClose:s,anchorEl:h,is12Hour:_}){const l=(0,t.useRef)(null),[o,p]=(0,t.useState)({visibility:"hidden"});return(0,t.useLayoutEffect)(()=>{if(l.current&&h){const f=l.current.getBoundingClientRect(),D=h.getBoundingClientRect(),y=10;let u=D.bottom+4,a=D.left;const r=window.innerHeight,i=window.innerWidth,d=r-u,m=D.top-y;let T={visibility:"visible",position:"fixed",top:`${u}px`,left:`${a}px`,width:"220px"};if(a+f.width>i-y&&(a=i-f.width-y,T.left=`${a}px`),u+f.height>r-y){const S=f.height;if(d<S&&m>d){const M=Math.min(S,m);T.top="auto",T.bottom=`${r-D.top+4}px`,T.maxHeight=`${M}px`}else T.maxHeight=`${Math.min(S,d-y)}px`}p(T)}},[h]),(0,t.useEffect)(()=>{function f(D){l.current&&!l.current.contains(D.target)&&s()}return document.addEventListener("mousedown",f),()=>{document.removeEventListener("mousedown",f)}},[s]),t.default.createElement("div",{className:de.popover,ref:l,style:o,onClick:f=>f.stopPropagation()},t.default.createElement("div",{className:de.popoverHeader},k(e,H.DAY_DATE_SHORT_MONTH)),t.default.createElement("div",{className:de.popoverContent},n.map((f,D)=>{const y=V(e),u=V(f.startDate),a=f.endDate?V(f.endDate):u,r=Le(u,y),i=Ce(a,y),d=Ee(f,Y.month,_);return t.default.createElement("div",{key:f.id||`pop-${D}`,className:(0,ha.default)(de.popoverItem,{[de.startBefore]:r,[de.endAfter]:i}),id:f.id,style:{backgroundColor:f.color},onClick:m=>{m.stopPropagation(),c?.(f),s()},title:d},f.title)})))}var ya=pa,Me=U(P(),1);function va({date:e,dateObj:n,data:c,cellWidth:s,className:h,dataClassName:_,isSelected:l,isToday:o,onClick:p,selectedClassName:f,todayClassName:D,isCurrentMonth:y,theme:u,maxEvents:a,onMoreClick:r,onEventClick:i,totalEvents:d=0,is12Hour:m}){const[T,S]=(0,t.useState)(!1),M=(0,t.useRef)(null),L=l?{...Oe.selected,...u?.selected}:o?{...Oe.today,...u?.today}:{...Oe.default,...u?.default},x={color:L?.color,backgroundColor:L?.bgColor};let X=c,ne=0;(a||a===0)&&c&&(d>=a||c.length>a)&&(X=c.slice(0,a),ne=d-X.filter(O=>O!==null).length);const oe=c?.filter(O=>O!==null)||[];return t.default.createElement("td",{style:x,onClick:()=>p?.(n),className:(0,Me.default)(Q.dateData,h,{[Q.currentMonth]:!y,[(0,Me.default)(Q.selected,f)]:l,[(0,Me.default)(Q.today,D)]:o})},t.default.createElement("div",{className:Q.cellContent},t.default.createElement("p",{className:Q.dateLabel},e),c&&t.default.createElement("div",{className:(0,Me.default)(Q.dataContainer,_)},X.map((O,$)=>{if(!O||O.isSpacer)return t.default.createElement("div",{key:`spacer-${$}`,className:Q.spacer});let ae=1;O.endDateWeek&&(ae=re(O.endDateWeek,O.startDateWeek)+1);const ce=Ee(O,Y.month,m),b=`${s*ae-te.EVENT_ITEM_PADDING}px`;return t.default.createElement("div",{key:O.id||`${O.startDate}-${$}`,className:Q.eventItem,id:O.id,style:{width:b,backgroundColor:O.color},title:ce,onClick:w=>{w.stopPropagation(),i?.(O)}},O.title)}),ne>0&&t.default.createElement("div",{className:Q.moreEventsContainer},t.default.createElement("button",{ref:M,className:Q.moreEvents,onClick:O=>{O.stopPropagation(),!T&&S(!0),r?.(n)}},"+ ",ne," more"),T&&t.default.createElement(ya,{dateObj:n,events:oe,onEventClick:i,onClose:()=>S(!1),anchorEl:M.current,is12Hour:m})))))}var Ea=va;const Da="_monthView_1v108_1",Ta="_table_1v108_9",wa="_tableHeader_1v108_18",ga="_tableCell_1v108_19",Sa="_tableBody_1v108_49";var pe={monthView:Da,table:Ta,tableHeader:wa,tableCell:ga,tableBody:Sa},ke=U(P(),1);function Ma({dayType:e,width:n,height:c,onDateClick:s,onEventClick:h,onMoreClick:_,selectable:l,events:o,is12Hour:p,classNames:f,...D}){const{state:y,dispatch:u}=De(),{selectedDate:a}=y,r=qn(a,o),i=(0,t.useMemo)(()=>D.maxEvents??vt(typeof c=="number"?c:0,r.length||te.MIN_ROWS),[D.maxEvents,c,r.length]),d=(0,t.useCallback)(m=>{const T=v(m);l&&!T.isSame(a,"day")&&(s?.(ve(T)),u({type:"SET_DATE",payload:T}))},[a,s,l,u]);return t.default.createElement("div",{className:pe.monthView},t.default.createElement("table",{className:(0,ke.default)(pe.table,f?.table),style:{"--calendar-rows":r.length}},t.default.createElement("thead",null,t.default.createElement("tr",null,xe[e].map(m=>t.default.createElement("th",{key:m,className:(0,ke.default)(pe.tableHeader,f?.tableHeader)},m)))),t.default.createElement("tbody",{className:pe.tableBody},r.map((m,T)=>t.default.createElement("tr",{key:T},m.map((S,M)=>t.default.createElement(Ea,{key:`date_${T}_${M}`,isSelected:l&&S.isCurrentMonth&&S.displayDay===a.date(),isToday:S.isToday,isCurrentMonth:S.isCurrentMonth,onClick:d,date:S.displayDay,dateObj:S.currentDate,data:S.events,cellWidth:(typeof n=="number"?n:0)/te.DAYS_IN_WEEK,className:(0,ke.default)(pe.tableCell,f?.tableDate),dataClassName:f?.event,selectedClassName:f?.selected,todayClassName:f?.today,theme:D.theme,maxEvents:i,totalEvents:S.totalEvents,is12Hour:p,onEventClick:h,onMoreClick:L=>_?.(ve(L))})))))))}var Ca=Ma;const ba="_scheduleView_18p9o_1",Aa="_emptyState_18p9o_11",Na="_dateGroup_18p9o_20",Oa="_eventItemContainer_18p9o_30",$a="_dateInfoColumn_18p9o_38",Ha="_dateNumber_18p9o_48",ka="_today_18p9o_64",La="_dateSubInfo_18p9o_69",Ia="_dotTimeColumn_18p9o_77",xa="_eventDot_18p9o_85",Ra="_eventTime_18p9o_93",Ya="_eventTitleColumn_18p9o_98";var J={scheduleView:ba,emptyState:Aa,dateGroup:Na,eventItemContainer:Oa,dateInfoColumn:$a,dateNumber:Ha,today:ka,dateSubInfo:La,dotTimeColumn:Ia,eventDot:xa,eventTime:Ra,eventTitleColumn:Ya};function Va({events:e,autoScrollToCurrentTime:n,is12Hour:c}){const s=(0,t.useRef)(null),h=(0,t.useMemo)(()=>{const o=[...e].sort((f,D)=>v(f.startDate).valueOf()-v(D.startDate).valueOf()),p={};return o.forEach(f=>{let D=v(f.startDate).startOf("day");const y=f.endDate?v(f.endDate).startOf("day"):D;for(;D.isBefore(y)||D.isSame(y);){const u=k(D,H.DATE);p[u]||(p[u]=[]),p[u].push(f),D=D.add(1,"day")}}),p},[e]);return(0,t.useEffect)(()=>{n&&s.current&&s.current.scrollIntoView({behavior:"smooth",block:"start"})},[n,h]),{todayRef:s,groupedEvents:h,renderEventTime:(o,p)=>{if(Ne(o))return"All day";const f=v(p).startOf("day"),D=v(o.startDate).startOf("day"),y=o.endDate?v(o.endDate).startOf("day"):D,u=!D.isSame(y),a=c?H.TIME_12H:H.TIME,r=T=>T.replace(/^0/,"").replace(":00"," "),i=T=>v(T).hour()===0&&v(T).minute()===0,d=T=>v(T).hour()===23&&v(T).minute()===59;if(u)return f.isSame(D)?i(o.startDate)?"All day":`${r(k(o.startDate,a))}`:f.isSame(y)?d(o.endDate)?"All day":`Until ${r(k(o.endDate,a))}`:"All day";const m=k(o.startDate,a);if(o.endDate){if(i(o.startDate)&&d(o.endDate))return"All day";const T=k(o.endDate,a);return`${r(m)} – ${r(T)}`}return r(m)},renderEventTitle:(o,p)=>{if(o.endDate&&!Ie(v(o.startDate),v(o.endDate))){const f=re(v(p).startOf("day"),v(o.startDate).startOf("day"))+1,D=re(o.endDate,o.startDate)+1;return`${o.title} (Day ${f}/${D})`}return o.title}}}var fe=U(P(),1);function Fa({events:e,onEventClick:n,is12Hour:c,theme:s,classNames:h,autoScrollToCurrentTime:_}){const{todayRef:l,groupedEvents:o,renderEventTime:p,renderEventTitle:f}=Va({events:e,autoScrollToCurrentTime:_,is12Hour:c});return t.default.createElement("div",{className:J.scheduleView},Object.keys(o).length===0?t.default.createElement("div",{className:J.emptyState},"No events to display"):Object.keys(o).sort().map(D=>{const y=o[D],u=v(D),a=Je(u,u.date()),r=a?{color:s?.today?.color,backgroundColor:s?.today?.bgColor}:void 0;return t.default.createElement("div",{key:D,ref:a?l:void 0,className:(0,fe.default)(J.dateGroup,h?.scheduleDateGroup)},y.map((i,d)=>{const m=i.color||te.DEFAULT_EVENT_COLOR,T=d===0;return t.default.createElement("div",{key:i.id||d,className:(0,fe.default)(J.eventItemContainer,h?.event),onClick:()=>n?.(i),title:Ee(i,Y.schedule,c)},t.default.createElement("div",{className:J.dateInfoColumn},T&&t.default.createElement(t.default.Fragment,null,t.default.createElement("div",{className:(0,fe.default)(J.dateNumber,h?.scheduleDateNumber,{[J.today]:a}),style:r},k(u,H.DAY_NUMBER)),t.default.createElement("div",{className:(0,fe.default)(J.dateSubInfo,h?.scheduleDateSubInfo)},k(u,H.SHORT_MONTH).toUpperCase(),","," ",k(u,H.SHORT_DAY).toUpperCase()))),t.default.createElement("div",{className:J.dotTimeColumn},t.default.createElement("div",{className:J.eventDot,style:{backgroundColor:m}}),t.default.createElement("div",{className:(0,fe.default)(J.eventTime,h?.scheduleTime)},p(i,D))),t.default.createElement("div",{className:(0,fe.default)(J.eventTitleColumn,h?.scheduleTitle)},f(i,D)))}))}))}var Wa=U(P(),1);function Ga({events:e,is12Hour:n,dayType:c,pastYearLength:s,futureYearLength:h,width:_,height:l,onEventClick:o,onNavigate:p,onViewChange:f,theme:D,classNames:y,showCurrentTime:u,maxEvents:a,autoScrollToCurrentTime:r,...i}){const{state:{view:d},dispatch:m}=De();(0,t.useEffect)(()=>{i.view&&m({type:"SET_VIEW",payload:i.view})},[i.view]);const T=S=>{const M={events:e,is12Hour:n,dayType:c,onEventClick:o,theme:D,classNames:y,showCurrentTime:u,maxEvents:a,autoScrollToCurrentTime:r};switch(S){case Y.day:return t.default.createElement(In,M);case Y.week:return t.default.createElement(Jn,M);case Y.month:return t.default.createElement(Ca,{...M,...i,onDateClick:i.onDateClick,onMoreClick:i.onMoreClick,width:_,height:l});case Y.schedule:return t.default.createElement(Fa,M);default:return null}};return t.default.createElement("section",{style:{"--calendar-width":`${_}px`,"--calendar-height":`${l}px`},className:(0,Wa.default)(gt.calendar,y?.root)},t.default.createElement(Vt,{headerClassName:y?.header,events:e,onNavigate:p,onViewChange:f,pastYearLength:s,futureYearLength:h}),T(d))}function Ua({selectedDate:e,...n}=Re){const c=(0,t.useRef)(null),s={...Re,...n},{width:h,height:_}=Dt(c,!!s.width&&!!s.height),l=s.width??h??0,o=s.height??_??0,p=(typeof o=="number"?o:0)-te.HEADER_HEIGHT,f=(0,t.useMemo)(()=>v(e),[e]),D=Tt(s.events);return t.default.createElement(Rt,{initialDate:f,initialView:s.view},t.default.createElement("div",{ref:c,style:{width:s.width??"100%",height:s.height??"100%",display:"flex",flexDirection:"column",overflow:"hidden"}},t.default.createElement(Ga,{...s,width:l,height:p,events:D})))}var ja=(0,t.memo)(Ua),Ba=ja;exports.ECalendarViewType=Y;exports.EDayType=Ae;exports.default=Ba;
|
|
2
2
|
|
|
3
3
|
//# sourceMappingURL=index.cjs.js.map
|