Appearance
apps/api/src/features/events/events.service.ts ​
Auto-generated by
scripts/generate-file-docs.ts. Do not edit — overwritten on every run.
Purpose ​
EventsService — events catalog, RSVP tracking, and per-user iCalendar subscription feed. Visibility rules (docs/internal/design/api-contracts.md — Events & Calendar): - visitor → COMMUNITY events only - member → COMMUNITY + MINISTRY + SMALL_GROUP (only groups they belong to) - group_leader, ministry_leader, admin → all event types - comms_author → treated as a member for read; cannot create/update/ delete events Create / update / delete authorization: - LEADERSHIP / SISTER_COMMUNITY → ministry_leader+ only - MINISTRY → ministry_leader+ only - SMALL_GROUP → group_leader (only for their own group) or ministry_leader+ - COMMUNITY → ministry_leader+ only RSVP capacity: ATTENDING upserts that would exceed maxAttendees throw 409. The iCal feed (RFC 5545) returns all upcoming ATTENDING events for the caller as a single VCALENDAR document. /
Exports ​
export interface ListEventsParamsexport interface ListEventsResultexport interface EventDetailexport class EventsServiceexport const eventsService
Imports ​
../../adapters/db../../lib/errors../../lib/logger../../lib/pagination../../middleware/requireAuth@prisma/client