matrix-react-sdk
Version:
SDK for matrix.org using React
37 lines (34 loc) • 5.17 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.tagRoom = tagRoom;
var _logger = require("matrix-js-sdk/src/logger");
var _RoomListStore = _interopRequireDefault(require("../../stores/room-list/RoomListStore"));
var _models = require("../../stores/room-list/models");
var _RoomListActions = _interopRequireDefault(require("../../actions/RoomListActions"));
var _dispatcher = _interopRequireDefault(require("../../dispatcher/dispatcher"));
/*
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.
*/
/**
* Toggle tag for a given room
* @param room The room to tag
* @param tagId The tag to invert
*/
function tagRoom(room, tagId) {
if (tagId === _models.DefaultTagID.Favourite || tagId === _models.DefaultTagID.LowPriority) {
const inverseTag = tagId === _models.DefaultTagID.Favourite ? _models.DefaultTagID.LowPriority : _models.DefaultTagID.Favourite;
const isApplied = _RoomListStore.default.instance.getTagsForRoom(room).includes(tagId);
const removeTag = isApplied ? tagId : inverseTag;
const addTag = isApplied ? null : tagId;
_dispatcher.default.dispatch(_RoomListActions.default.tagRoom(room.client, room, removeTag, addTag, 0));
} else {
_logger.logger.warn(`Unexpected tag ${tagId} applied to ${room.roomId}`);
}
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbG9nZ2VyIiwicmVxdWlyZSIsIl9Sb29tTGlzdFN0b3JlIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsIl9tb2RlbHMiLCJfUm9vbUxpc3RBY3Rpb25zIiwiX2Rpc3BhdGNoZXIiLCJ0YWdSb29tIiwicm9vbSIsInRhZ0lkIiwiRGVmYXVsdFRhZ0lEIiwiRmF2b3VyaXRlIiwiTG93UHJpb3JpdHkiLCJpbnZlcnNlVGFnIiwiaXNBcHBsaWVkIiwiUm9vbUxpc3RTdG9yZSIsImluc3RhbmNlIiwiZ2V0VGFnc0ZvclJvb20iLCJpbmNsdWRlcyIsInJlbW92ZVRhZyIsImFkZFRhZyIsImRpcyIsImRpc3BhdGNoIiwiUm9vbUxpc3RBY3Rpb25zIiwiY2xpZW50IiwibG9nZ2VyIiwid2FybiIsInJvb21JZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy91dGlscy9yb29tL3RhZ1Jvb20udHMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMjMgVGhlIE1hdHJpeC5vcmcgRm91bmRhdGlvbiBDLkkuQy5cblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IHsgUm9vbSB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9sb2dnZXJcIjtcblxuaW1wb3J0IFJvb21MaXN0U3RvcmUgZnJvbSBcIi4uLy4uL3N0b3Jlcy9yb29tLWxpc3QvUm9vbUxpc3RTdG9yZVwiO1xuaW1wb3J0IHsgRGVmYXVsdFRhZ0lELCBUYWdJRCB9IGZyb20gXCIuLi8uLi9zdG9yZXMvcm9vbS1saXN0L21vZGVsc1wiO1xuaW1wb3J0IFJvb21MaXN0QWN0aW9ucyBmcm9tIFwiLi4vLi4vYWN0aW9ucy9Sb29tTGlzdEFjdGlvbnNcIjtcbmltcG9ydCBkaXMgZnJvbSBcIi4uLy4uL2Rpc3BhdGNoZXIvZGlzcGF0Y2hlclwiO1xuXG4vKipcbiAqIFRvZ2dsZSB0YWcgZm9yIGEgZ2l2ZW4gcm9vbVxuICogQHBhcmFtIHJvb20gVGhlIHJvb20gdG8gdGFnXG4gKiBAcGFyYW0gdGFnSWQgVGhlIHRhZyB0byBpbnZlcnRcbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRhZ1Jvb20ocm9vbTogUm9vbSwgdGFnSWQ6IFRhZ0lEKTogdm9pZCB7XG4gICAgaWYgKHRhZ0lkID09PSBEZWZhdWx0VGFnSUQuRmF2b3VyaXRlIHx8IHRhZ0lkID09PSBEZWZhdWx0VGFnSUQuTG93UHJpb3JpdHkpIHtcbiAgICAgICAgY29uc3QgaW52ZXJzZVRhZyA9IHRhZ0lkID09PSBEZWZhdWx0VGFnSUQuRmF2b3VyaXRlID8gRGVmYXVsdFRhZ0lELkxvd1ByaW9yaXR5IDogRGVmYXVsdFRhZ0lELkZhdm91cml0ZTtcbiAgICAgICAgY29uc3QgaXNBcHBsaWVkID0gUm9vbUxpc3RTdG9yZS5pbnN0YW5jZS5nZXRUYWdzRm9yUm9vbShyb29tKS5pbmNsdWRlcyh0YWdJZCk7XG4gICAgICAgIGNvbnN0IHJlbW92ZVRhZyA9IGlzQXBwbGllZCA/IHRhZ0lkIDogaW52ZXJzZVRhZztcbiAgICAgICAgY29uc3QgYWRkVGFnID0gaXNBcHBsaWVkID8gbnVsbCA6IHRhZ0lkO1xuICAgICAgICBkaXMuZGlzcGF0Y2goUm9vbUxpc3RBY3Rpb25zLnRhZ1Jvb20ocm9vbS5jbGllbnQsIHJvb20sIHJlbW92ZVRhZywgYWRkVGFnLCAwKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgICAgbG9nZ2VyLndhcm4oYFVuZXhwZWN0ZWQgdGFnICR7dGFnSWR9IGFwcGxpZWQgdG8gJHtyb29tLnJvb21JZH1gKTtcbiAgICB9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFTQSxJQUFBQSxPQUFBLEdBQUFDLE9BQUE7QUFFQSxJQUFBQyxjQUFBLEdBQUFDLHNCQUFBLENBQUFGLE9BQUE7QUFDQSxJQUFBRyxPQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxnQkFBQSxHQUFBRixzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUssV0FBQSxHQUFBSCxzQkFBQSxDQUFBRixPQUFBO0FBZEE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBVUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLFNBQVNNLE9BQU9BLENBQUNDLElBQVUsRUFBRUMsS0FBWSxFQUFRO0VBQ3BELElBQUlBLEtBQUssS0FBS0Msb0JBQVksQ0FBQ0MsU0FBUyxJQUFJRixLQUFLLEtBQUtDLG9CQUFZLENBQUNFLFdBQVcsRUFBRTtJQUN4RSxNQUFNQyxVQUFVLEdBQUdKLEtBQUssS0FBS0Msb0JBQVksQ0FBQ0MsU0FBUyxHQUFHRCxvQkFBWSxDQUFDRSxXQUFXLEdBQUdGLG9CQUFZLENBQUNDLFNBQVM7SUFDdkcsTUFBTUcsU0FBUyxHQUFHQyxzQkFBYSxDQUFDQyxRQUFRLENBQUNDLGNBQWMsQ0FBQ1QsSUFBSSxDQUFDLENBQUNVLFFBQVEsQ0FBQ1QsS0FBSyxDQUFDO0lBQzdFLE1BQU1VLFNBQVMsR0FBR0wsU0FBUyxHQUFHTCxLQUFLLEdBQUdJLFVBQVU7SUFDaEQsTUFBTU8sTUFBTSxHQUFHTixTQUFTLEdBQUcsSUFBSSxHQUFHTCxLQUFLO0lBQ3ZDWSxtQkFBRyxDQUFDQyxRQUFRLENBQUNDLHdCQUFlLENBQUNoQixPQUFPLENBQUNDLElBQUksQ0FBQ2dCLE1BQU0sRUFBRWhCLElBQUksRUFBRVcsU0FBUyxFQUFFQyxNQUFNLEVBQUUsQ0FBQyxDQUFDLENBQUM7RUFDbEYsQ0FBQyxNQUFNO0lBQ0hLLGNBQU0sQ0FBQ0MsSUFBSSxDQUFDLGtCQUFrQmpCLEtBQUssZUFBZUQsSUFBSSxDQUFDbUIsTUFBTSxFQUFFLENBQUM7RUFDcEU7QUFDSiIsImlnbm9yZUxpc3QiOltdfQ==