feat: add Apple Calendar source package

Add @aris/source-apple-calendar for fetching iCloud
calendar events via CalDAV using tsdav and ical.js.

- CalendarSource implements FeedSource with fetchItems
  and fetchContext for downstream context
- CalendarCredentialProvider interface for token injection
- CalendarDAVClient interface for testability
- iCal parser extracts full event data including
  attendees, alarms, organizer, and recurrence
- Priority based on event proximity to current time

Co-authored-by: Ona <no-reply@ona.com>
This commit is contained in:
2026-02-13 22:08:58 +00:00
parent 1b2929c2b6
commit f557a0f967
14 changed files with 1182 additions and 0 deletions

View File

@@ -0,0 +1,26 @@
BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//Test//Test//EN
BEGIN:VEVENT
UID:single-event-001@test
DTSTART:20260115T140000Z
DTEND:20260115T150000Z
SUMMARY:Team Standup
LOCATION:Conference Room A
DESCRIPTION:Daily standup meeting
STATUS:CONFIRMED
URL:https://example.com/meeting/123
ORGANIZER;CN=Alice Smith:mailto:alice@example.com
ATTENDEE;CN=Bob Jones;ROLE=REQ-PARTICIPANT;PARTSTAT=ACCEPTED:mailto:bob@example.com
ATTENDEE;CN=Carol White;ROLE=OPT-PARTICIPANT;PARTSTAT=TENTATIVE:mailto:carol@example.com
BEGIN:VALARM
TRIGGER:-PT15M
ACTION:DISPLAY
DESCRIPTION:Reminder
END:VALARM
BEGIN:VALARM
TRIGGER:-PT5M
ACTION:AUDIO
END:VALARM
END:VEVENT
END:VCALENDAR