matrix-react-sdk
Version:
SDK for matrix.org using React
50 lines (47 loc) • 6.12 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.doesAccountDataHaveIdentityServer = doesAccountDataHaveIdentityServer;
exports.doesIdentityServerHaveTerms = doesIdentityServerHaveTerms;
exports.getDefaultIdentityServerUrl = getDefaultIdentityServerUrl;
exports.setToDefaultIdentityServer = setToDefaultIdentityServer;
var _matrix = require("matrix-js-sdk/src/matrix");
var _logger = require("matrix-js-sdk/src/logger");
var _SdkConfig = _interopRequireDefault(require("../SdkConfig"));
/*
Copyright 2024 New Vector Ltd.
Copyright 2019-2021 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.
*/
function getDefaultIdentityServerUrl() {
return _SdkConfig.default.get("validated_server_config")?.isUrl;
}
function setToDefaultIdentityServer(matrixClient) {
const url = getDefaultIdentityServerUrl();
// Account data change will update localstorage, client, etc through dispatcher
matrixClient.setAccountData("m.identity_server", {
base_url: url
});
}
async function doesIdentityServerHaveTerms(matrixClient, fullUrl) {
let terms;
try {
terms = await matrixClient.getTerms(_matrix.SERVICE_TYPES.IS, fullUrl);
} catch (e) {
_logger.logger.error(e);
if (e instanceof _matrix.HTTPError && e.httpStatus === 404) {
terms = null;
} else {
throw e;
}
}
return !!terms?.["policies"] && Object.keys(terms["policies"]).length > 0;
}
function doesAccountDataHaveIdentityServer(matrixClient) {
const event = matrixClient.getAccountData("m.identity_server");
return event?.getContent()["base_url"];
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWF0cml4IiwicmVxdWlyZSIsIl9sb2dnZXIiLCJfU2RrQ29uZmlnIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsImdldERlZmF1bHRJZGVudGl0eVNlcnZlclVybCIsIlNka0NvbmZpZyIsImdldCIsImlzVXJsIiwic2V0VG9EZWZhdWx0SWRlbnRpdHlTZXJ2ZXIiLCJtYXRyaXhDbGllbnQiLCJ1cmwiLCJzZXRBY2NvdW50RGF0YSIsImJhc2VfdXJsIiwiZG9lc0lkZW50aXR5U2VydmVySGF2ZVRlcm1zIiwiZnVsbFVybCIsInRlcm1zIiwiZ2V0VGVybXMiLCJTRVJWSUNFX1RZUEVTIiwiSVMiLCJlIiwibG9nZ2VyIiwiZXJyb3IiLCJIVFRQRXJyb3IiLCJodHRwU3RhdHVzIiwiT2JqZWN0Iiwia2V5cyIsImxlbmd0aCIsImRvZXNBY2NvdW50RGF0YUhhdmVJZGVudGl0eVNlcnZlciIsImV2ZW50IiwiZ2V0QWNjb3VudERhdGEiLCJnZXRDb250ZW50Il0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWxzL0lkZW50aXR5U2VydmVyVXRpbHMudHMiXSwic291cmNlc0NvbnRlbnQiOlsiLypcbkNvcHlyaWdodCAyMDI0IE5ldyBWZWN0b3IgTHRkLlxuQ29weXJpZ2h0IDIwMTktMjAyMSBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgeyBTRVJWSUNFX1RZUEVTLCBIVFRQRXJyb3IsIE1hdHJpeENsaWVudCB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcbmltcG9ydCB7IGxvZ2dlciB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9sb2dnZXJcIjtcblxuaW1wb3J0IFNka0NvbmZpZyBmcm9tIFwiLi4vU2RrQ29uZmlnXCI7XG5pbXBvcnQgeyBQb2xpY2llcyB9IGZyb20gXCIuLi9UZXJtc1wiO1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVmYXVsdElkZW50aXR5U2VydmVyVXJsKCk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIFNka0NvbmZpZy5nZXQoXCJ2YWxpZGF0ZWRfc2VydmVyX2NvbmZpZ1wiKT8uaXNVcmw7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBzZXRUb0RlZmF1bHRJZGVudGl0eVNlcnZlcihtYXRyaXhDbGllbnQ6IE1hdHJpeENsaWVudCk6IHZvaWQge1xuICAgIGNvbnN0IHVybCA9IGdldERlZmF1bHRJZGVudGl0eVNlcnZlclVybCgpO1xuICAgIC8vIEFjY291bnQgZGF0YSBjaGFuZ2Ugd2lsbCB1cGRhdGUgbG9jYWxzdG9yYWdlLCBjbGllbnQsIGV0YyB0aHJvdWdoIGRpc3BhdGNoZXJcbiAgICBtYXRyaXhDbGllbnQuc2V0QWNjb3VudERhdGEoXCJtLmlkZW50aXR5X3NlcnZlclwiLCB7XG4gICAgICAgIGJhc2VfdXJsOiB1cmwsXG4gICAgfSk7XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBkb2VzSWRlbnRpdHlTZXJ2ZXJIYXZlVGVybXMobWF0cml4Q2xpZW50OiBNYXRyaXhDbGllbnQsIGZ1bGxVcmw6IHN0cmluZyk6IFByb21pc2U8Ym9vbGVhbj4ge1xuICAgIGxldCB0ZXJtczogeyBwb2xpY2llcz86IFBvbGljaWVzIH0gfCBudWxsO1xuICAgIHRyeSB7XG4gICAgICAgIHRlcm1zID0gYXdhaXQgbWF0cml4Q2xpZW50LmdldFRlcm1zKFNFUlZJQ0VfVFlQRVMuSVMsIGZ1bGxVcmwpO1xuICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgbG9nZ2VyLmVycm9yKGUpO1xuICAgICAgICBpZiAoZSBpbnN0YW5jZW9mIEhUVFBFcnJvciAmJiBlLmh0dHBTdGF0dXMgPT09IDQwNCkge1xuICAgICAgICAgICAgdGVybXMgPSBudWxsO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhyb3cgZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiAhIXRlcm1zPy5bXCJwb2xpY2llc1wiXSAmJiBPYmplY3Qua2V5cyh0ZXJtc1tcInBvbGljaWVzXCJdKS5sZW5ndGggPiAwO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZG9lc0FjY291bnREYXRhSGF2ZUlkZW50aXR5U2VydmVyKG1hdHJpeENsaWVudDogTWF0cml4Q2xpZW50KTogYm9vbGVhbiB7XG4gICAgY29uc3QgZXZlbnQgPSBtYXRyaXhDbGllbnQuZ2V0QWNjb3VudERhdGEoXCJtLmlkZW50aXR5X3NlcnZlclwiKTtcbiAgICByZXR1cm4gZXZlbnQ/LmdldENvbnRlbnQoKVtcImJhc2VfdXJsXCJdO1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7O0FBUUEsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsT0FBQSxHQUFBRCxPQUFBO0FBRUEsSUFBQUUsVUFBQSxHQUFBQyxzQkFBQSxDQUFBSCxPQUFBO0FBWEE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7O0FBUU8sU0FBU0ksMkJBQTJCQSxDQUFBLEVBQXVCO0VBQzlELE9BQU9DLGtCQUFTLENBQUNDLEdBQUcsQ0FBQyx5QkFBeUIsQ0FBQyxFQUFFQyxLQUFLO0FBQzFEO0FBRU8sU0FBU0MsMEJBQTBCQSxDQUFDQyxZQUEwQixFQUFRO0VBQ3pFLE1BQU1DLEdBQUcsR0FBR04sMkJBQTJCLENBQUMsQ0FBQztFQUN6QztFQUNBSyxZQUFZLENBQUNFLGNBQWMsQ0FBQyxtQkFBbUIsRUFBRTtJQUM3Q0MsUUFBUSxFQUFFRjtFQUNkLENBQUMsQ0FBQztBQUNOO0FBRU8sZUFBZUcsMkJBQTJCQSxDQUFDSixZQUEwQixFQUFFSyxPQUFlLEVBQW9CO0VBQzdHLElBQUlDLEtBQXFDO0VBQ3pDLElBQUk7SUFDQUEsS0FBSyxHQUFHLE1BQU1OLFlBQVksQ0FBQ08sUUFBUSxDQUFDQyxxQkFBYSxDQUFDQyxFQUFFLEVBQUVKLE9BQU8sQ0FBQztFQUNsRSxDQUFDLENBQUMsT0FBT0ssQ0FBQyxFQUFFO0lBQ1JDLGNBQU0sQ0FBQ0MsS0FBSyxDQUFDRixDQUFDLENBQUM7SUFDZixJQUFJQSxDQUFDLFlBQVlHLGlCQUFTLElBQUlILENBQUMsQ0FBQ0ksVUFBVSxLQUFLLEdBQUcsRUFBRTtNQUNoRFIsS0FBSyxHQUFHLElBQUk7SUFDaEIsQ0FBQyxNQUFNO01BQ0gsTUFBTUksQ0FBQztJQUNYO0VBQ0o7RUFFQSxPQUFPLENBQUMsQ0FBQ0osS0FBSyxHQUFHLFVBQVUsQ0FBQyxJQUFJUyxNQUFNLENBQUNDLElBQUksQ0FBQ1YsS0FBSyxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUNXLE1BQU0sR0FBRyxDQUFDO0FBQzdFO0FBRU8sU0FBU0MsaUNBQWlDQSxDQUFDbEIsWUFBMEIsRUFBVztFQUNuRixNQUFNbUIsS0FBSyxHQUFHbkIsWUFBWSxDQUFDb0IsY0FBYyxDQUFDLG1CQUFtQixDQUFDO0VBQzlELE9BQU9ELEtBQUssRUFBRUUsVUFBVSxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUM7QUFDMUMiLCJpZ25vcmVMaXN0IjpbXX0=