Skip to content

apps/api/src/features/members/members.service.ts ​

Auto-generated by scripts/generate-file-docs.ts. Do not edit — overwritten on every run.

Purpose ​

MembersService — directory, profile self-service, admin overrides, and (internal-only) membership-request orchestration. Visibility rules (api-contracts.md §4): - visitor → cannot list or view any member (403) - member or higher → may view ANY approved member (community directory). Directory is the community-wide approved-members listing, NOT a per-family scope. - admin → may view ANY member regardless of status comms_author: ADR 0023 says comms_author has no permissions outside Announcements. We treat them like member for the directory view (they ARE members; the "feature area" restriction concerns write authority for things like media uploads, not basic member-directory reads). /

Exports ​

  • export const GENDER_SLUG_TO_DB
  • export interface DirectoryParams
  • export interface DirectoryResult
  • export interface RequestMembershipInput
  • export interface RequestMembershipResult
  • export class MembersService
  • export const membersService

Imports ​

  • ../../adapters/db
  • ../../adapters/storage
  • ../../lib/errors
  • ../../lib/logger
  • ../../lib/pagination
  • ../../middleware/requireAuth
  • @prisma/client
  • node:stream

Imported by ​

Heritage Community Hub — Internal. Access restricted via Cloudflare Access + Entra ID.