A container for relation events that supports easy access to common ways of aggregating such events. Each instance holds events that of a single relation type and event type. All of the events also relate to the same original event.

The typical way to get one of these containers is via EventTimelineSet#getRelationsForEvent.

Hierarchy (View Summary)

Constructors

  • Parameters

    • relationType: string

      The type of relation involved, such as "m.annotation", "m.reference", "m.replace", etc.

    • eventType: string

      The relation event's type, such as "m.reaction", etc.

    • client: Room | MatrixClient

      The client which created this instance. For backwards compatibility also accepts a Room.

    • OptionalaltEventTypes: string[]

      alt event types for relation events, for example to support unstable prefixed event types

    Returns Relations

Properties

altEventTypes?: string[]

alt event types for relation events, for example to support unstable prefixed event types

eventType: string

The relation event's type, such as "m.reaction", etc.

relationType: string

The type of relation involved, such as "m.annotation", "m.reference", "m.replace", etc.

Methods

  • Get all events in this collection grouped by sender.

    This is currently only supported for the annotation relation type.

    An object with each relation sender as a key and the matching Set of events for that sender as a value.

    Returns null | Record<string, Set<MatrixEvent>>

  • Get all relation events in this collection.

    These are currently in the order of insertion to this collection, which won't match timeline order in the case of scrollback. TODO: Tweak addEvent to insert correctly for scrollback.

    Relation events in insertion order.

    Returns MatrixEvent[]

  • Get all events in this collection grouped by key and sorted by descending event count in each group.

    This is currently only supported for the annotation relation type.

    An array of [key, events] pairs sorted by descending event count. The events are stored in a Set (which preserves insertion order).

    Returns null | [string, Set<MatrixEvent>][]