matrix-react-sdk
Version:
SDK for matrix.org using React
51 lines (48 loc) • 5.32 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _SettingsHandler = _interopRequireDefault(require("./SettingsHandler"));
/*
Copyright 2024 New Vector Ltd.
Copyright 2019, 2020 The Matrix.org Foundation C.I.C.
Copyright 2017 Travis Ralston
SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only
Please see LICENSE files in the repository root for full details.
*/
/**
* Gets settings at the "default" level. This handler does not support setting values.
* This handler does not make use of the roomId parameter.
*/
class DefaultSettingsHandler extends _SettingsHandler.default {
/**
* Creates a new default settings handler with the given defaults
* @param {object} defaults The default setting values, keyed by setting name.
* @param {object} invertedDefaults The default inverted setting values, keyed by setting name.
*/
constructor(defaults, invertedDefaults) {
super();
this.defaults = defaults;
this.invertedDefaults = invertedDefaults;
}
getValue(settingName, roomId) {
let value = this.defaults[settingName];
if (value === undefined) {
value = this.invertedDefaults[settingName];
}
return value;
}
async setValue(settingName, roomId, newValue) {
throw new Error("Cannot set values on the default level handler");
}
canSetValue(settingName, roomId) {
return false;
}
isSupported() {
return true;
}
}
exports.default = DefaultSettingsHandler;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfU2V0dGluZ3NIYW5kbGVyIiwiX2ludGVyb3BSZXF1aXJlRGVmYXVsdCIsInJlcXVpcmUiLCJEZWZhdWx0U2V0dGluZ3NIYW5kbGVyIiwiU2V0dGluZ3NIYW5kbGVyIiwiY29uc3RydWN0b3IiLCJkZWZhdWx0cyIsImludmVydGVkRGVmYXVsdHMiLCJnZXRWYWx1ZSIsInNldHRpbmdOYW1lIiwicm9vbUlkIiwidmFsdWUiLCJ1bmRlZmluZWQiLCJzZXRWYWx1ZSIsIm5ld1ZhbHVlIiwiRXJyb3IiLCJjYW5TZXRWYWx1ZSIsImlzU3VwcG9ydGVkIiwiZXhwb3J0cyIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvc2V0dGluZ3MvaGFuZGxlcnMvRGVmYXVsdFNldHRpbmdzSGFuZGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAxOSwgMjAyMCBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuQ29weXJpZ2h0IDIwMTcgVHJhdmlzIFJhbHN0b25cblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IFNldHRpbmdzSGFuZGxlciBmcm9tIFwiLi9TZXR0aW5nc0hhbmRsZXJcIjtcblxuLyoqXG4gKiBHZXRzIHNldHRpbmdzIGF0IHRoZSBcImRlZmF1bHRcIiBsZXZlbC4gVGhpcyBoYW5kbGVyIGRvZXMgbm90IHN1cHBvcnQgc2V0dGluZyB2YWx1ZXMuXG4gKiBUaGlzIGhhbmRsZXIgZG9lcyBub3QgbWFrZSB1c2Ugb2YgdGhlIHJvb21JZCBwYXJhbWV0ZXIuXG4gKi9cbmV4cG9ydCBkZWZhdWx0IGNsYXNzIERlZmF1bHRTZXR0aW5nc0hhbmRsZXIgZXh0ZW5kcyBTZXR0aW5nc0hhbmRsZXIge1xuICAgIC8qKlxuICAgICAqIENyZWF0ZXMgYSBuZXcgZGVmYXVsdCBzZXR0aW5ncyBoYW5kbGVyIHdpdGggdGhlIGdpdmVuIGRlZmF1bHRzXG4gICAgICogQHBhcmFtIHtvYmplY3R9IGRlZmF1bHRzIFRoZSBkZWZhdWx0IHNldHRpbmcgdmFsdWVzLCBrZXllZCBieSBzZXR0aW5nIG5hbWUuXG4gICAgICogQHBhcmFtIHtvYmplY3R9IGludmVydGVkRGVmYXVsdHMgVGhlIGRlZmF1bHQgaW52ZXJ0ZWQgc2V0dGluZyB2YWx1ZXMsIGtleWVkIGJ5IHNldHRpbmcgbmFtZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZGVmYXVsdHM6IFJlY29yZDxzdHJpbmcsIGFueT4sXG4gICAgICAgIHByaXZhdGUgaW52ZXJ0ZWREZWZhdWx0czogUmVjb3JkPHN0cmluZywgYW55PixcbiAgICApIHtcbiAgICAgICAgc3VwZXIoKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgZ2V0VmFsdWUoc2V0dGluZ05hbWU6IHN0cmluZywgcm9vbUlkOiBzdHJpbmcpOiBhbnkge1xuICAgICAgICBsZXQgdmFsdWUgPSB0aGlzLmRlZmF1bHRzW3NldHRpbmdOYW1lXTtcbiAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHZhbHVlID0gdGhpcy5pbnZlcnRlZERlZmF1bHRzW3NldHRpbmdOYW1lXTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gdmFsdWU7XG4gICAgfVxuXG4gICAgcHVibGljIGFzeW5jIHNldFZhbHVlKHNldHRpbmdOYW1lOiBzdHJpbmcsIHJvb21JZDogc3RyaW5nLCBuZXdWYWx1ZTogYW55KTogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcihcIkNhbm5vdCBzZXQgdmFsdWVzIG9uIHRoZSBkZWZhdWx0IGxldmVsIGhhbmRsZXJcIik7XG4gICAgfVxuXG4gICAgcHVibGljIGNhblNldFZhbHVlKHNldHRpbmdOYW1lOiBzdHJpbmcsIHJvb21JZDogc3RyaW5nKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiBmYWxzZTtcbiAgICB9XG5cbiAgICBwdWJsaWMgaXNTdXBwb3J0ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0cnVlO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVNBLElBQUFBLGdCQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFUQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQUlBO0FBQ0E7QUFDQTtBQUNBO0FBQ2UsTUFBTUMsc0JBQXNCLFNBQVNDLHdCQUFlLENBQUM7RUFDaEU7QUFDSjtBQUNBO0FBQ0E7QUFDQTtFQUNXQyxXQUFXQSxDQUNOQyxRQUE2QixFQUM3QkMsZ0JBQXFDLEVBQy9DO0lBQ0UsS0FBSyxDQUFDLENBQUM7SUFBQyxLQUhBRCxRQUE2QixHQUE3QkEsUUFBNkI7SUFBQSxLQUM3QkMsZ0JBQXFDLEdBQXJDQSxnQkFBcUM7RUFHakQ7RUFFT0MsUUFBUUEsQ0FBQ0MsV0FBbUIsRUFBRUMsTUFBYyxFQUFPO0lBQ3RELElBQUlDLEtBQUssR0FBRyxJQUFJLENBQUNMLFFBQVEsQ0FBQ0csV0FBVyxDQUFDO0lBQ3RDLElBQUlFLEtBQUssS0FBS0MsU0FBUyxFQUFFO01BQ3JCRCxLQUFLLEdBQUcsSUFBSSxDQUFDSixnQkFBZ0IsQ0FBQ0UsV0FBVyxDQUFDO0lBQzlDO0lBQ0EsT0FBT0UsS0FBSztFQUNoQjtFQUVBLE1BQWFFLFFBQVFBLENBQUNKLFdBQW1CLEVBQUVDLE1BQWMsRUFBRUksUUFBYSxFQUFpQjtJQUNyRixNQUFNLElBQUlDLEtBQUssQ0FBQyxnREFBZ0QsQ0FBQztFQUNyRTtFQUVPQyxXQUFXQSxDQUFDUCxXQUFtQixFQUFFQyxNQUFjLEVBQVc7SUFDN0QsT0FBTyxLQUFLO0VBQ2hCO0VBRU9PLFdBQVdBLENBQUEsRUFBWTtJQUMxQixPQUFPLElBQUk7RUFDZjtBQUNKO0FBQUNDLE9BQUEsQ0FBQUMsT0FBQSxHQUFBaEIsc0JBQUEiLCJpZ25vcmVMaXN0IjpbXX0=