78 lines
3.8 KiB
JavaScript
78 lines
3.8 KiB
JavaScript
|
|
"use strict";
|
||
|
|
|
||
|
|
Object.defineProperty(exports, "__esModule", {
|
||
|
|
value: true
|
||
|
|
});
|
||
|
|
exports.VideoConferenceCapabilities = exports.StickerpickerCapabilities = exports.MatrixCapabilities = void 0;
|
||
|
|
exports.getTimelineRoomIDFromCapability = getTimelineRoomIDFromCapability;
|
||
|
|
exports.isTimelineCapability = isTimelineCapability;
|
||
|
|
exports.isTimelineCapabilityFor = isTimelineCapabilityFor;
|
||
|
|
/*
|
||
|
|
* Copyright 2020 - 2021 The Matrix.org Foundation C.I.C.
|
||
|
|
*
|
||
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
|
* you may not use this file except in compliance with the License.
|
||
|
|
* You may obtain a copy of the License at
|
||
|
|
*
|
||
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||
|
|
*
|
||
|
|
* Unless required by applicable law or agreed to in writing, software
|
||
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
|
* See the License for the specific language governing permissions and
|
||
|
|
* limitations under the License.
|
||
|
|
*/
|
||
|
|
var MatrixCapabilities = /*#__PURE__*/function (MatrixCapabilities) {
|
||
|
|
MatrixCapabilities["Screenshots"] = "m.capability.screenshot";
|
||
|
|
MatrixCapabilities["StickerSending"] = "m.sticker";
|
||
|
|
MatrixCapabilities["AlwaysOnScreen"] = "m.always_on_screen";
|
||
|
|
MatrixCapabilities["RequiresClient"] = "io.element.requires_client";
|
||
|
|
MatrixCapabilities["MSC2931Navigate"] = "org.matrix.msc2931.navigate";
|
||
|
|
MatrixCapabilities["MSC3846TurnServers"] = "town.robin.msc3846.turn_servers";
|
||
|
|
MatrixCapabilities["MSC3973UserDirectorySearch"] = "org.matrix.msc3973.user_directory_search";
|
||
|
|
MatrixCapabilities["MSC4039UploadFile"] = "org.matrix.msc4039.upload_file";
|
||
|
|
MatrixCapabilities["MSC4039DownloadFile"] = "org.matrix.msc4039.download_file";
|
||
|
|
MatrixCapabilities["MSC4157SendDelayedEvent"] = "org.matrix.msc4157.send.delayed_event";
|
||
|
|
MatrixCapabilities["MSC4157UpdateDelayedEvent"] = "org.matrix.msc4157.update_delayed_event";
|
||
|
|
MatrixCapabilities["MSC4407SendStickyEvent"] = "org.matrix.msc4407.send.sticky_event";
|
||
|
|
MatrixCapabilities["MSC4407ReceiveStickyEvent"] = "org.matrix.msc4407.receive.sticky_event";
|
||
|
|
MatrixCapabilities["MSC4515RtcTransports"] = "org.matrix.msc4515.rtc_transports";
|
||
|
|
MatrixCapabilities["MSC4533RtcLivekitGetToken"] = "org.matrix.msc4533.rtc_livekit_get_token";
|
||
|
|
MatrixCapabilities["MSC4533RtcLivekitDelegateDelayedLeave"] = "org.matrix.msc4533.rtc_livekit_delegate_delayed_leave";
|
||
|
|
return MatrixCapabilities;
|
||
|
|
}({});
|
||
|
|
exports.MatrixCapabilities = MatrixCapabilities;
|
||
|
|
var StickerpickerCapabilities = [MatrixCapabilities.StickerSending];
|
||
|
|
exports.StickerpickerCapabilities = StickerpickerCapabilities;
|
||
|
|
var VideoConferenceCapabilities = [MatrixCapabilities.AlwaysOnScreen];
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Determines if a capability is a capability for a timeline.
|
||
|
|
* @param {Capability} capability The capability to test.
|
||
|
|
* @returns {boolean} True if a timeline capability, false otherwise.
|
||
|
|
*/
|
||
|
|
exports.VideoConferenceCapabilities = VideoConferenceCapabilities;
|
||
|
|
function isTimelineCapability(capability) {
|
||
|
|
// TODO: Change when MSC2762 becomes stable.
|
||
|
|
return capability === null || capability === void 0 ? void 0 : capability.startsWith("org.matrix.msc2762.timeline:");
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Determines if a capability is a timeline capability for the given room.
|
||
|
|
* @param {Capability} capability The capability to test.
|
||
|
|
* @param {string | Symbols.AnyRoom} roomId The room ID, or `Symbols.AnyRoom` for that designation.
|
||
|
|
* @returns {boolean} True if a matching capability, false otherwise.
|
||
|
|
*/
|
||
|
|
function isTimelineCapabilityFor(capability, roomId) {
|
||
|
|
return capability === "org.matrix.msc2762.timeline:".concat(roomId);
|
||
|
|
}
|
||
|
|
|
||
|
|
/**
|
||
|
|
* Gets the room ID described by a timeline capability.
|
||
|
|
* @param {string} capability The capability to parse.
|
||
|
|
* @returns {string} The room ID.
|
||
|
|
*/
|
||
|
|
function getTimelineRoomIDFromCapability(capability) {
|
||
|
|
return capability.substring(capability.indexOf(":") + 1);
|
||
|
|
}
|
||
|
|
//# sourceMappingURL=Capabilities.js.map
|