UNPKG

matrix-react-sdk

Version:
35 lines (32 loc) 3.74 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.findDMRoom = findDMRoom; var _DMRoomMap = _interopRequireDefault(require("../DMRoomMap")); var _findDMForUser = require("./findDMForUser"); /* Copyright 2024 New Vector Ltd. Copyright 2022 The Matrix.org Foundation C.I.C. SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ /** * Tries to find a DM room with some other users. * * @param {MatrixClient} client * @param {Member[]} targets The Members to try to find the room for * @returns {Room | null} Resolved so the room if found, else null */ function findDMRoom(client, targets) { const targetIds = targets.map(t => t.userId); let existingRoom; if (targetIds.length === 1) { existingRoom = (0, _findDMForUser.findDMForUser)(client, targetIds[0]) ?? null; } else { existingRoom = _DMRoomMap.default.shared().getDMRoomForIdentifiers(targetIds); } return existingRoom; } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfRE1Sb29tTWFwIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJfZmluZERNRm9yVXNlciIsImZpbmRETVJvb20iLCJjbGllbnQiLCJ0YXJnZXRzIiwidGFyZ2V0SWRzIiwibWFwIiwidCIsInVzZXJJZCIsImV4aXN0aW5nUm9vbSIsImxlbmd0aCIsImZpbmRETUZvclVzZXIiLCJETVJvb21NYXAiLCJzaGFyZWQiLCJnZXRETVJvb21Gb3JJZGVudGlmaWVycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9kbS9maW5kRE1Sb29tLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIyIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCB7IE1hdHJpeENsaWVudCwgUm9vbSB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcblxuaW1wb3J0IHsgTWVtYmVyIH0gZnJvbSBcIi4uL2RpcmVjdC1tZXNzYWdlc1wiO1xuaW1wb3J0IERNUm9vbU1hcCBmcm9tIFwiLi4vRE1Sb29tTWFwXCI7XG5pbXBvcnQgeyBmaW5kRE1Gb3JVc2VyIH0gZnJvbSBcIi4vZmluZERNRm9yVXNlclwiO1xuXG4vKipcbiAqIFRyaWVzIHRvIGZpbmQgYSBETSByb29tIHdpdGggc29tZSBvdGhlciB1c2Vycy5cbiAqXG4gKiBAcGFyYW0ge01hdHJpeENsaWVudH0gY2xpZW50XG4gKiBAcGFyYW0ge01lbWJlcltdfSB0YXJnZXRzIFRoZSBNZW1iZXJzIHRvIHRyeSB0byBmaW5kIHRoZSByb29tIGZvclxuICogQHJldHVybnMge1Jvb20gfCBudWxsfSBSZXNvbHZlZCBzbyB0aGUgcm9vbSBpZiBmb3VuZCwgZWxzZSBudWxsXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmaW5kRE1Sb29tKGNsaWVudDogTWF0cml4Q2xpZW50LCB0YXJnZXRzOiBNZW1iZXJbXSk6IFJvb20gfCBudWxsIHtcbiAgICBjb25zdCB0YXJnZXRJZHMgPSB0YXJnZXRzLm1hcCgodCkgPT4gdC51c2VySWQpO1xuICAgIGxldCBleGlzdGluZ1Jvb206IFJvb20gfCBudWxsO1xuICAgIGlmICh0YXJnZXRJZHMubGVuZ3RoID09PSAxKSB7XG4gICAgICAgIGV4aXN0aW5nUm9vbSA9IGZpbmRETUZvclVzZXIoY2xpZW50LCB0YXJnZXRJZHNbMF0pID8/IG51bGw7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgZXhpc3RpbmdSb29tID0gRE1Sb29tTWFwLnNoYXJlZCgpLmdldERNUm9vbUZvcklkZW50aWZpZXJzKHRhcmdldElkcyk7XG4gICAgfVxuICAgIHJldHVybiBleGlzdGluZ1Jvb207XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFXQSxJQUFBQSxVQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyxjQUFBLEdBQUFELE9BQUE7QUFaQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFRQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNFLFVBQVVBLENBQUNDLE1BQW9CLEVBQUVDLE9BQWlCLEVBQWU7RUFDN0UsTUFBTUMsU0FBUyxHQUFHRCxPQUFPLENBQUNFLEdBQUcsQ0FBRUMsQ0FBQyxJQUFLQSxDQUFDLENBQUNDLE1BQU0sQ0FBQztFQUM5QyxJQUFJQyxZQUF5QjtFQUM3QixJQUFJSixTQUFTLENBQUNLLE1BQU0sS0FBSyxDQUFDLEVBQUU7SUFDeEJELFlBQVksR0FBRyxJQUFBRSw0QkFBYSxFQUFDUixNQUFNLEVBQUVFLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUk7RUFDOUQsQ0FBQyxNQUFNO0lBQ0hJLFlBQVksR0FBR0csa0JBQVMsQ0FBQ0MsTUFBTSxDQUFDLENBQUMsQ0FBQ0MsdUJBQXVCLENBQUNULFNBQVMsQ0FBQztFQUN4RTtFQUNBLE9BQU9JLFlBQVk7QUFDdkIiLCJpZ25vcmVMaXN0IjpbXX0=