1
0
mirror of https://github.com/matrix-org/matrix-js-sdk.git synced 2025-08-07 23:02:56 +03:00

Refactor MatrixClient::forget to not abuse membershipChange API (#4490)

Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
This commit is contained in:
Michael Telatynski
2024-11-04 09:49:27 +00:00
committed by GitHub
parent 1061b93b29
commit a197afe8aa

View File

@@ -5796,16 +5796,17 @@ export class MatrixClient extends TypedEventEmitter<EmittedEvents, ClientEventHa
* @returns Promise which resolves: `{}` an empty object.
* @returns Rejects: with an error response.
*/
public forget(roomId: string, deleteRoom = true): Promise<{}> {
const promise = this.membershipChange(roomId, undefined, "forget");
if (!deleteRoom) {
return promise;
}
return promise.then((response) => {
public async forget(roomId: string, deleteRoom = true): Promise<{}> {
// API returns an empty object
const path = utils.encodeUri("/rooms/$room_id/forget", {
$room_id: roomId,
});
const response = await this.http.authedRequest<{}>(Method.Post, path);
if (deleteRoom) {
this.store.removeRoom(roomId);
this.emit(ClientEvent.DeleteRoom, roomId);
return response;
});
}
return response;
}
/**
@@ -5846,7 +5847,7 @@ export class MatrixClient extends TypedEventEmitter<EmittedEvents, ClientEventHa
private membershipChange(
roomId: string,
userId: string | undefined,
membership: Membership | "forget",
membership: Membership,
reason?: string,
): Promise<{}> {
// API returns an empty object