You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Currently supports MVP fields from tsdav v2.2.0: SUMMARY and DESCRIPTION
51
-
* Note: tsdav uses UPPERCASE field names internally for iCal compatibility
9
+
* Supports all RFC 5545 iCalendar properties via tsdav-utils
10
+
* Common fields: SUMMARY, DESCRIPTION, LOCATION, DTSTART, DTEND, STATUS
11
+
* Custom properties: Any X-* property
52
12
*/
53
13
constupdateEventFieldsSchema=z.object({
54
14
event_url: z.string().url('Event URL must be a valid URL'),
55
15
event_etag: z.string().min(1,'Event etag is required'),
56
-
fields: z.object({
57
-
summary: z.string().optional(),
58
-
description: z.string().optional(),
59
-
// Future fields (pending tsdav support):
60
-
// location: z.string().optional(),
61
-
// start_date: z.string().optional(),
62
-
// end_date: z.string().optional(),
63
-
}).optional()
16
+
fields: z.record(z.string()).optional()
64
17
});
65
18
66
19
/**
67
-
* Wrapper for tsdav's native updateEventFields function
68
-
* Uses the field-based update implementation from tsdav v2.2.0 MVP
20
+
* Field-agnostic event update tool powered by tsdav-utils
21
+
* Supports all RFC 5545 iCalendar properties without validation
69
22
*
70
-
* Current MVP limitations:
71
-
* - Only SUMMARY and DESCRIPTION fields are officially supported
72
-
* - Other iCal fields require using the full update_event tool
23
+
* Features:
24
+
* - Any standard VEVENT property (SUMMARY, DESCRIPTION, LOCATION, DTSTART, etc.)
25
+
* - Custom X-* properties for extensions
26
+
* - Field-agnostic: no pre-defined field list required
73
27
*/
74
28
exportconstupdateEventFields={
75
29
name: 'update_event',
76
-
description: 'PREFERRED: Update event fields (summary, description) easily without iCal formatting. Use this for simple event updates. For advanced iCal properties, use update_event_raw instead. Currently supports summary and description fields only.',
30
+
description: 'PREFERRED: Update event fields without iCal formatting. Supports: SUMMARY (title), DESCRIPTION (details), LOCATION (place), DTSTART (start time), DTEND (end time), STATUS (TENTATIVE/CONFIRMED/CANCELLED), and any RFC 5545 property including custom X-* properties (e.g., X-ZOOM-LINK, X-MEETING-ROOM).',
description: 'Fields to update - only include fields you want to change. Currently supported: summary, description',
44
+
description: 'Fields to update - use UPPERCASE property names (e.g., SUMMARY, LOCATION, DTSTART). Any RFC 5545 property or custom X-* property is supported.',
45
+
additionalProperties: {
46
+
type: 'string'
47
+
},
91
48
properties: {
92
-
summary: {
49
+
SUMMARY: {
50
+
type: 'string',
51
+
description: 'Event title/summary'
52
+
},
53
+
DESCRIPTION: {
54
+
type: 'string',
55
+
description: 'Event description/details'
56
+
},
57
+
LOCATION: {
93
58
type: 'string',
94
-
description: 'Event title/summary - the main heading shown in calendars'
59
+
description: 'Physical or virtual meeting location'
95
60
},
96
-
description: {
61
+
DTSTART: {
97
62
type: 'string',
98
-
description: 'Event description - detailed information about the event'
63
+
description: 'Start datetime (ISO 8601 or iCal format: 20250128T100000Z)'
64
+
},
65
+
DTEND: {
66
+
type: 'string',
67
+
description: 'End datetime (ISO 8601 or iCal format)'
68
+
},
69
+
STATUS: {
70
+
type: 'string',
71
+
description: 'Event status: TENTATIVE, CONFIRMED, or CANCELLED'
0 commit comments