You've already forked matrix-js-sdk
mirror of
https://github.com/matrix-org/matrix-js-sdk.git
synced 2025-11-25 05:23:13 +03:00
Export thread-related types from SDK (#3447)
* Export thread-related types from SDK * address PR feedback
This commit is contained in:
committed by
GitHub
parent
ea7042efb9
commit
ecd700a36e
@@ -37,6 +37,7 @@ export * from "./models/event-timeline-set";
|
|||||||
export * from "./models/poll";
|
export * from "./models/poll";
|
||||||
export * from "./models/room-member";
|
export * from "./models/room-member";
|
||||||
export * from "./models/room-state";
|
export * from "./models/room-state";
|
||||||
|
export { ThreadEvent, ThreadEmittedEvents, ThreadEventHandlerMap, Thread } from "./models/thread";
|
||||||
export * from "./models/typed-event-emitter";
|
export * from "./models/typed-event-emitter";
|
||||||
export * from "./models/user";
|
export * from "./models/user";
|
||||||
export * from "./models/device";
|
export * from "./models/device";
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ import {
|
|||||||
import { Crypto } from "../crypto";
|
import { Crypto } from "../crypto";
|
||||||
import { deepSortedObjectEntries, internaliseString } from "../utils";
|
import { deepSortedObjectEntries, internaliseString } from "../utils";
|
||||||
import { RoomMember } from "./room-member";
|
import { RoomMember } from "./room-member";
|
||||||
import { Thread, ThreadEvent, EventHandlerMap as ThreadEventHandlerMap, THREAD_RELATION_TYPE } from "./thread";
|
import { Thread, ThreadEvent, ThreadEventHandlerMap, THREAD_RELATION_TYPE } from "./thread";
|
||||||
import { IActionsObject } from "../pushprocessor";
|
import { IActionsObject } from "../pushprocessor";
|
||||||
import { TypedReEmitter } from "../ReEmitter";
|
import { TypedReEmitter } from "../ReEmitter";
|
||||||
import { MatrixError } from "../http-api";
|
import { MatrixError } from "../http-api";
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ import { BeaconEvent, BeaconEventHandlerMap } from "./beacon";
|
|||||||
import {
|
import {
|
||||||
Thread,
|
Thread,
|
||||||
ThreadEvent,
|
ThreadEvent,
|
||||||
EventHandlerMap as ThreadHandlerMap,
|
ThreadEventHandlerMap as ThreadHandlerMap,
|
||||||
FILTER_RELATED_BY_REL_TYPES,
|
FILTER_RELATED_BY_REL_TYPES,
|
||||||
THREAD_RELATION_TYPE,
|
THREAD_RELATION_TYPE,
|
||||||
FILTER_RELATED_BY_SENDERS,
|
FILTER_RELATED_BY_SENDERS,
|
||||||
|
|||||||
@@ -38,15 +38,20 @@ export enum ThreadEvent {
|
|||||||
Delete = "Thread.delete",
|
Delete = "Thread.delete",
|
||||||
}
|
}
|
||||||
|
|
||||||
type EmittedEvents = Exclude<ThreadEvent, ThreadEvent.New> | RoomEvent.Timeline | RoomEvent.TimelineReset;
|
export type ThreadEmittedEvents = Exclude<ThreadEvent, ThreadEvent.New> | RoomEvent.Timeline | RoomEvent.TimelineReset;
|
||||||
|
|
||||||
export type EventHandlerMap = {
|
export type ThreadEventHandlerMap = {
|
||||||
[ThreadEvent.Update]: (thread: Thread) => void;
|
[ThreadEvent.Update]: (thread: Thread) => void;
|
||||||
[ThreadEvent.NewReply]: (thread: Thread, event: MatrixEvent) => void;
|
[ThreadEvent.NewReply]: (thread: Thread, event: MatrixEvent) => void;
|
||||||
[ThreadEvent.ViewThread]: () => void;
|
[ThreadEvent.ViewThread]: () => void;
|
||||||
[ThreadEvent.Delete]: (thread: Thread) => void;
|
[ThreadEvent.Delete]: (thread: Thread) => void;
|
||||||
} & EventTimelineSetHandlerMap;
|
} & EventTimelineSetHandlerMap;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @deprecated please use ThreadEventHandlerMap instead
|
||||||
|
*/
|
||||||
|
export type EventHandlerMap = ThreadEventHandlerMap;
|
||||||
|
|
||||||
interface IThreadOpts {
|
interface IThreadOpts {
|
||||||
room: Room;
|
room: Room;
|
||||||
client: MatrixClient;
|
client: MatrixClient;
|
||||||
@@ -70,7 +75,7 @@ export function determineFeatureSupport(stable: boolean, unstable: boolean): Fea
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
export class Thread extends ReadReceipt<EmittedEvents, EventHandlerMap> {
|
export class Thread extends ReadReceipt<ThreadEmittedEvents, ThreadEventHandlerMap> {
|
||||||
public static hasServerSideSupport = FeatureSupport.None;
|
public static hasServerSideSupport = FeatureSupport.None;
|
||||||
public static hasServerSideListSupport = FeatureSupport.None;
|
public static hasServerSideListSupport = FeatureSupport.None;
|
||||||
public static hasServerSideFwdPaginationSupport = FeatureSupport.None;
|
public static hasServerSideFwdPaginationSupport = FeatureSupport.None;
|
||||||
@@ -83,7 +88,7 @@ export class Thread extends ReadReceipt<EmittedEvents, EventHandlerMap> {
|
|||||||
|
|
||||||
private _currentUserParticipated = false;
|
private _currentUserParticipated = false;
|
||||||
|
|
||||||
private reEmitter: TypedReEmitter<EmittedEvents, EventHandlerMap>;
|
private reEmitter: TypedReEmitter<ThreadEmittedEvents, ThreadEventHandlerMap>;
|
||||||
|
|
||||||
private lastEvent: MatrixEvent | undefined;
|
private lastEvent: MatrixEvent | undefined;
|
||||||
private replyCount = 0;
|
private replyCount = 0;
|
||||||
|
|||||||
Reference in New Issue
Block a user