What it is responsible for
Calendar manages creation and updating appointments, turning event inputs into calendar-event representations. Its documented scope includes simplified event creation, all-day events, recurring weekly meetings, retrieval responses and query parameters, and date formatting for Microsoft Graph. OutlookCalendarEvent models an event, while DateTimeTimeZone carries date and time with timezone information. The subsystem also represents event bodies, locations, attendees, organizer/recipient details, response status, and recurrence patterns. Calendar is an entry point alongside EventBody, BodyType, and Location. Its enums cover body, location, attendee, response, recurrence-pattern, day-of-week, and week-index properties.
What it needs, and who needs it
Calendar depends on Auth and Pams. Auth and Pams are required by Calendar when it performs calendar work; evidence does not describe their individual roles. Outlook_plugin/src/taskpane depends on Calendar. Without Calendar, that taskpane dependency lacks the documented appointment-creation, update, event modeling, recurrence, and calendar-response types.
Notable members
Calendar is the main calendar event class for creating and updating appointments. OutlookCalendarEvent is the simplified class for creating calendar events; its simplification distinguishes it from the main appointment class. PamsCalendarResponse is the response class when retrieving calendar events, representing retrieval rather than event creation or update.
76 entities in Outlook_plugin/src/calendar. 1 other subsystem depends on it, which makes it the 4th most depended-upon part of this codebase.
What it is made of
Its 76 entities sit in 9 files under Outlook_plugin/src/calendar: 40 functions, 19 classes, 13 type aliases, 2 constants and 2 more.
calendar.model.ts holds 36 of them — more than any other file here.
CalendarServiceTester declares 8 methods, the widest surface here.
Where work enters
Calendar—Outlook_plugin/src/calendar/calendar.service.ts:1EventBody—Outlook_plugin/src/calendar/calendar.model.ts:84BodyType—Outlook_plugin/src/calendar/calendar.model.ts:89Location—Outlook_plugin/src/calendar/calendar.model.ts:94
How it refuses and fails
1 of its components records a refusal or a failure handler.
Its catch blocks handle a failure that already happened in 1 place.
Boundaries
1 other subsystem depends on this one — Taskpane. Changing what it exposes changes them.
They hold 9 edges into it between them. 16 edges leave it against 9 arriving — it reads more of this repository than this repository reads of it. What they reach is narrower than the folder: 9 of its 76 members carry every inbound edge — checkIftherePamsCalendar (1), getAccessTokenStandard (1) and getCalendarEvents (1), plus 6 more. Of the 16 it sends out, 12 go to Auth — more than to any other.
It depends on Auth, Pams, and on nothing else in this repository.
How this code is named
These conventions cover most of the codebase. Learning them is faster than reading an index — each one lets you find any member of its family without looking it up.
| Pattern | Where | Count | Examples |
|---|---|---|---|
check* | exported symbols | 8 | checkConfirmation, checkIftherePamsCalendar |
Was this page helpful?