Remove unnecessary complexity from createRoom
Withfae4c504c9, the changes fromb4a56f6dd7are no longer necessary.
This commit is contained in:
parent
fae4c504c9
commit
982398b32f
1 changed files with 1 additions and 23 deletions
|
|
@ -8,7 +8,6 @@ import { MemoryCryptoStore } from "matrix-js-sdk/src/crypto/store/memory-crypto-
|
||||||
import { createClient, MatrixClient } from "matrix-js-sdk/src/matrix";
|
import { createClient, MatrixClient } from "matrix-js-sdk/src/matrix";
|
||||||
import { ICreateClientOpts } from "matrix-js-sdk/src/matrix";
|
import { ICreateClientOpts } from "matrix-js-sdk/src/matrix";
|
||||||
import { ClientEvent } from "matrix-js-sdk/src/client";
|
import { ClientEvent } from "matrix-js-sdk/src/client";
|
||||||
import { Room } from "matrix-js-sdk/src/models/room";
|
|
||||||
import { Visibility, Preset } from "matrix-js-sdk/src/@types/partials";
|
import { Visibility, Preset } from "matrix-js-sdk/src/@types/partials";
|
||||||
import { ISyncStateData, SyncState } from "matrix-js-sdk/src/sync";
|
import { ISyncStateData, SyncState } from "matrix-js-sdk/src/sync";
|
||||||
import { logger } from "matrix-js-sdk/src/logger";
|
import { logger } from "matrix-js-sdk/src/logger";
|
||||||
|
|
@ -222,24 +221,7 @@ export async function createRoom(
|
||||||
client: MatrixClient,
|
client: MatrixClient,
|
||||||
name: string
|
name: string
|
||||||
): Promise<string> {
|
): Promise<string> {
|
||||||
let setExpectedRoomId: (roomId: string) => void;
|
await client.createRoom({
|
||||||
const expectedRoomId = new Promise<string>(
|
|
||||||
(resolve) => (setExpectedRoomId = resolve)
|
|
||||||
);
|
|
||||||
|
|
||||||
// There's no telling whether the new room will come down sync in the middle
|
|
||||||
// of the createRoom request, or after it, so start watching for it beforehand
|
|
||||||
const roomReceived = new Promise<void>((resolve) => {
|
|
||||||
const onRoom = async (room: Room) => {
|
|
||||||
if (room.roomId === (await expectedRoomId)) {
|
|
||||||
resolve();
|
|
||||||
client.off(ClientEvent.Room, onRoom);
|
|
||||||
}
|
|
||||||
};
|
|
||||||
client.on(ClientEvent.Room, onRoom);
|
|
||||||
});
|
|
||||||
|
|
||||||
const createRoomResult = await client.createRoom({
|
|
||||||
visibility: Visibility.Private,
|
visibility: Visibility.Private,
|
||||||
preset: Preset.PublicChat,
|
preset: Preset.PublicChat,
|
||||||
name,
|
name,
|
||||||
|
|
@ -269,10 +251,6 @@ export async function createRoom(
|
||||||
},
|
},
|
||||||
});
|
});
|
||||||
|
|
||||||
// Wait for the room to come down sync before doing anything with it
|
|
||||||
setExpectedRoomId(createRoomResult.room_id);
|
|
||||||
await roomReceived;
|
|
||||||
|
|
||||||
return fullAliasFromRoomName(name, client);
|
return fullAliasFromRoomName(name, client);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue