From 633c92eae865e957121e08de634aeee11a8b3992 Mon Sep 17 00:00:00 2001 From: RaindropsSys Date: Mon, 24 Apr 2023 14:03:36 +0200 Subject: Updated 18 files, added 1692 files and deleted includes/system/compare.inc (automated) --- .../node_modules/matrix-js-sdk/lib/feature.js | 77 ++++++++++++++++++++++ 1 file changed, 77 insertions(+) create mode 100644 includes/external/matrix/node_modules/matrix-js-sdk/lib/feature.js (limited to 'includes/external/matrix/node_modules/matrix-js-sdk/lib/feature.js') diff --git a/includes/external/matrix/node_modules/matrix-js-sdk/lib/feature.js b/includes/external/matrix/node_modules/matrix-js-sdk/lib/feature.js new file mode 100644 index 0000000..452ff7e --- /dev/null +++ b/includes/external/matrix/node_modules/matrix-js-sdk/lib/feature.js @@ -0,0 +1,77 @@ +"use strict"; + +Object.defineProperty(exports, "__esModule", { + value: true +}); +exports.ServerSupport = exports.Feature = void 0; +exports.buildFeatureSupportMap = buildFeatureSupportMap; +/* +Copyright 2022 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. +*/ +let ServerSupport; +exports.ServerSupport = ServerSupport; +(function (ServerSupport) { + ServerSupport[ServerSupport["Stable"] = 0] = "Stable"; + ServerSupport[ServerSupport["Unstable"] = 1] = "Unstable"; + ServerSupport[ServerSupport["Unsupported"] = 2] = "Unsupported"; +})(ServerSupport || (exports.ServerSupport = ServerSupport = {})); +let Feature; +exports.Feature = Feature; +(function (Feature) { + Feature["Thread"] = "Thread"; + Feature["ThreadUnreadNotifications"] = "ThreadUnreadNotifications"; + Feature["LoginTokenRequest"] = "LoginTokenRequest"; + Feature["RelationBasedRedactions"] = "RelationBasedRedactions"; + Feature["AccountDataDeletion"] = "AccountDataDeletion"; +})(Feature || (exports.Feature = Feature = {})); +const featureSupportResolver = { + [Feature.Thread]: { + unstablePrefixes: ["org.matrix.msc3440"], + matrixVersion: "v1.3" + }, + [Feature.ThreadUnreadNotifications]: { + unstablePrefixes: ["org.matrix.msc3771", "org.matrix.msc3773"], + matrixVersion: "v1.4" + }, + [Feature.LoginTokenRequest]: { + unstablePrefixes: ["org.matrix.msc3882"] + }, + [Feature.RelationBasedRedactions]: { + unstablePrefixes: ["org.matrix.msc3912"] + }, + [Feature.AccountDataDeletion]: { + unstablePrefixes: ["org.matrix.msc3391"] + } +}; +async function buildFeatureSupportMap(versions) { + const supportMap = new Map(); + for (const [feature, supportCondition] of Object.entries(featureSupportResolver)) { + var _versions$versions$in, _versions$versions, _supportCondition$uns, _supportCondition$uns2; + const supportMatrixVersion = (_versions$versions$in = (_versions$versions = versions.versions) === null || _versions$versions === void 0 ? void 0 : _versions$versions.includes(supportCondition.matrixVersion || "")) !== null && _versions$versions$in !== void 0 ? _versions$versions$in : false; + const supportUnstablePrefixes = (_supportCondition$uns = (_supportCondition$uns2 = supportCondition.unstablePrefixes) === null || _supportCondition$uns2 === void 0 ? void 0 : _supportCondition$uns2.every(unstablePrefix => { + var _versions$unstable_fe; + return ((_versions$unstable_fe = versions.unstable_features) === null || _versions$unstable_fe === void 0 ? void 0 : _versions$unstable_fe[unstablePrefix]) === true; + })) !== null && _supportCondition$uns !== void 0 ? _supportCondition$uns : false; + if (supportMatrixVersion) { + supportMap.set(feature, ServerSupport.Stable); + } else if (supportUnstablePrefixes) { + supportMap.set(feature, ServerSupport.Unstable); + } else { + supportMap.set(feature, ServerSupport.Unsupported); + } + } + return supportMap; +} +//# sourceMappingURL=feature.js.map \ No newline at end of file -- cgit