matrix-react-sdk
Version:
SDK for matrix.org using React
29 lines (26 loc) • 3.67 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.canInviteTo = canInviteTo;
var _matrix = require("matrix-js-sdk/src/matrix");
var _types = require("matrix-js-sdk/src/types");
var _UIComponents = require("../../customisations/helpers/UIComponents");
var _UIFeature = require("../../settings/UIFeature");
/*
Copyright 2024 New Vector Ltd.
Copyright 2023 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.
*/
/**
* Can a user invite new members to the room
* @param room
* @returns whether the user can invite new members to the room
*/
function canInviteTo(room) {
const client = room.client;
const canInvite = !!room.canInvite(client.getSafeUserId()) || !!(room.isSpaceRoom() && room.getJoinRule() === _matrix.JoinRule.Public);
return canInvite && room.getMyMembership() === _types.KnownMembership.Join && (0, _UIComponents.shouldShowComponent)(_UIFeature.UIComponent.InviteUsers);
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWF0cml4IiwicmVxdWlyZSIsIl90eXBlcyIsIl9VSUNvbXBvbmVudHMiLCJfVUlGZWF0dXJlIiwiY2FuSW52aXRlVG8iLCJyb29tIiwiY2xpZW50IiwiY2FuSW52aXRlIiwiZ2V0U2FmZVVzZXJJZCIsImlzU3BhY2VSb29tIiwiZ2V0Sm9pblJ1bGUiLCJKb2luUnVsZSIsIlB1YmxpYyIsImdldE15TWVtYmVyc2hpcCIsIktub3duTWVtYmVyc2hpcCIsIkpvaW4iLCJzaG91bGRTaG93Q29tcG9uZW50IiwiVUlDb21wb25lbnQiLCJJbnZpdGVVc2VycyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9yb29tL2Nhbkludml0ZVRvLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIzIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCB7IEpvaW5SdWxlLCBSb29tIH0gZnJvbSBcIm1hdHJpeC1qcy1zZGsvc3JjL21hdHJpeFwiO1xuaW1wb3J0IHsgS25vd25NZW1iZXJzaGlwIH0gZnJvbSBcIm1hdHJpeC1qcy1zZGsvc3JjL3R5cGVzXCI7XG5cbmltcG9ydCB7IHNob3VsZFNob3dDb21wb25lbnQgfSBmcm9tIFwiLi4vLi4vY3VzdG9taXNhdGlvbnMvaGVscGVycy9VSUNvbXBvbmVudHNcIjtcbmltcG9ydCB7IFVJQ29tcG9uZW50IH0gZnJvbSBcIi4uLy4uL3NldHRpbmdzL1VJRmVhdHVyZVwiO1xuXG4vKipcbiAqIENhbiBhIHVzZXIgaW52aXRlIG5ldyBtZW1iZXJzIHRvIHRoZSByb29tXG4gKiBAcGFyYW0gcm9vbVxuICogQHJldHVybnMgd2hldGhlciB0aGUgdXNlciBjYW4gaW52aXRlIG5ldyBtZW1iZXJzIHRvIHRoZSByb29tXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBjYW5JbnZpdGVUbyhyb29tOiBSb29tKTogYm9vbGVhbiB7XG4gICAgY29uc3QgY2xpZW50ID0gcm9vbS5jbGllbnQ7XG4gICAgY29uc3QgY2FuSW52aXRlID1cbiAgICAgICAgISFyb29tLmNhbkludml0ZShjbGllbnQuZ2V0U2FmZVVzZXJJZCgpKSB8fCAhIShyb29tLmlzU3BhY2VSb29tKCkgJiYgcm9vbS5nZXRKb2luUnVsZSgpID09PSBKb2luUnVsZS5QdWJsaWMpO1xuXG4gICAgcmV0dXJuIGNhbkludml0ZSAmJiByb29tLmdldE15TWVtYmVyc2hpcCgpID09PSBLbm93bk1lbWJlcnNoaXAuSm9pbiAmJiBzaG91bGRTaG93Q29tcG9uZW50KFVJQ29tcG9uZW50Lkludml0ZVVzZXJzKTtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBUUEsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsTUFBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsYUFBQSxHQUFBRixPQUFBO0FBQ0EsSUFBQUcsVUFBQSxHQUFBSCxPQUFBO0FBWkE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBUUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNJLFdBQVdBLENBQUNDLElBQVUsRUFBVztFQUM3QyxNQUFNQyxNQUFNLEdBQUdELElBQUksQ0FBQ0MsTUFBTTtFQUMxQixNQUFNQyxTQUFTLEdBQ1gsQ0FBQyxDQUFDRixJQUFJLENBQUNFLFNBQVMsQ0FBQ0QsTUFBTSxDQUFDRSxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFSCxJQUFJLENBQUNJLFdBQVcsQ0FBQyxDQUFDLElBQUlKLElBQUksQ0FBQ0ssV0FBVyxDQUFDLENBQUMsS0FBS0MsZ0JBQVEsQ0FBQ0MsTUFBTSxDQUFDO0VBRWhILE9BQU9MLFNBQVMsSUFBSUYsSUFBSSxDQUFDUSxlQUFlLENBQUMsQ0FBQyxLQUFLQyxzQkFBZSxDQUFDQyxJQUFJLElBQUksSUFBQUMsaUNBQW1CLEVBQUNDLHNCQUFXLENBQUNDLFdBQVcsQ0FBQztBQUN2SCIsImlnbm9yZUxpc3QiOltdfQ==