UNPKG

matrix-react-sdk

Version:
62 lines (59 loc) 6.89 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); /* 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. */ /** * Represents the base class for all level handlers. This class performs no logic * and should be overridden. */ class SettingsHandler { constructor() { (0, _defineProperty2.default)(this, "watchers", void 0); } /** * Gets the value for a particular setting at this level for a particular room. * If no room is applicable, the roomId may be null. The roomId may not be * applicable to this level and may be ignored by the handler. * @param {string} settingName The name of the setting. * @param {String} roomId The room ID to read from, may be null. * @returns {*} The setting value, or null if not found. */ /** * Sets the value for a particular setting at this level for a particular room. * If no room is applicable, the roomId may be null. The roomId may not be * applicable to this level and may be ignored by the handler. Setting a value * to null will cause the level to remove the value. The current user should be * able to set the value prior to calling this. * @param {string} settingName The name of the setting to change. * @param {String} roomId The room ID to set the value in, may be null. * @param {*} newValue The new value for the setting, may be null. * @returns {Promise} Resolves when the setting has been saved. */ /** * Determines if the current user is able to set the value of the given setting * in the given room at this level. * @param {string} settingName The name of the setting to check. * @param {String} roomId The room ID to check in, may be null * @returns {boolean} True if the setting can be set by the user, false otherwise. */ /** * Determines if this level is supported on this device. * @returns {boolean} True if this level is supported on the current device. */ /** * Resets the handler, clearing any caches or other stored data. Called on user logout. */ reset() {} } exports.default = SettingsHandler; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJTZXR0aW5nc0hhbmRsZXIiLCJjb25zdHJ1Y3RvciIsIl9kZWZpbmVQcm9wZXJ0eTIiLCJkZWZhdWx0IiwicmVzZXQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3NldHRpbmdzL2hhbmRsZXJzL1NldHRpbmdzSGFuZGxlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAxOSwgMjAyMCBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuQ29weXJpZ2h0IDIwMTcgVHJhdmlzIFJhbHN0b25cblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IHsgV2F0Y2hNYW5hZ2VyIH0gZnJvbSBcIi4uL1dhdGNoTWFuYWdlclwiO1xuXG4vKipcbiAqIFJlcHJlc2VudHMgdGhlIGJhc2UgY2xhc3MgZm9yIGFsbCBsZXZlbCBoYW5kbGVycy4gVGhpcyBjbGFzcyBwZXJmb3JtcyBubyBsb2dpY1xuICogYW5kIHNob3VsZCBiZSBvdmVycmlkZGVuLlxuICovXG5leHBvcnQgZGVmYXVsdCBhYnN0cmFjdCBjbGFzcyBTZXR0aW5nc0hhbmRsZXIge1xuICAgIHB1YmxpYyByZWFkb25seSB3YXRjaGVycz86IFdhdGNoTWFuYWdlcjtcblxuICAgIC8qKlxuICAgICAqIEdldHMgdGhlIHZhbHVlIGZvciBhIHBhcnRpY3VsYXIgc2V0dGluZyBhdCB0aGlzIGxldmVsIGZvciBhIHBhcnRpY3VsYXIgcm9vbS5cbiAgICAgKiBJZiBubyByb29tIGlzIGFwcGxpY2FibGUsIHRoZSByb29tSWQgbWF5IGJlIG51bGwuIFRoZSByb29tSWQgbWF5IG5vdCBiZVxuICAgICAqIGFwcGxpY2FibGUgdG8gdGhpcyBsZXZlbCBhbmQgbWF5IGJlIGlnbm9yZWQgYnkgdGhlIGhhbmRsZXIuXG4gICAgICogQHBhcmFtIHtzdHJpbmd9IHNldHRpbmdOYW1lIFRoZSBuYW1lIG9mIHRoZSBzZXR0aW5nLlxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSByb29tSWQgVGhlIHJvb20gSUQgdG8gcmVhZCBmcm9tLCBtYXkgYmUgbnVsbC5cbiAgICAgKiBAcmV0dXJucyB7Kn0gVGhlIHNldHRpbmcgdmFsdWUsIG9yIG51bGwgaWYgbm90IGZvdW5kLlxuICAgICAqL1xuICAgIHB1YmxpYyBhYnN0cmFjdCBnZXRWYWx1ZShzZXR0aW5nTmFtZTogc3RyaW5nLCByb29tSWQ6IHN0cmluZyB8IG51bGwpOiBhbnk7XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIHRoZSB2YWx1ZSBmb3IgYSBwYXJ0aWN1bGFyIHNldHRpbmcgYXQgdGhpcyBsZXZlbCBmb3IgYSBwYXJ0aWN1bGFyIHJvb20uXG4gICAgICogSWYgbm8gcm9vbSBpcyBhcHBsaWNhYmxlLCB0aGUgcm9vbUlkIG1heSBiZSBudWxsLiBUaGUgcm9vbUlkIG1heSBub3QgYmVcbiAgICAgKiBhcHBsaWNhYmxlIHRvIHRoaXMgbGV2ZWwgYW5kIG1heSBiZSBpZ25vcmVkIGJ5IHRoZSBoYW5kbGVyLiBTZXR0aW5nIGEgdmFsdWVcbiAgICAgKiB0byBudWxsIHdpbGwgY2F1c2UgdGhlIGxldmVsIHRvIHJlbW92ZSB0aGUgdmFsdWUuIFRoZSBjdXJyZW50IHVzZXIgc2hvdWxkIGJlXG4gICAgICogYWJsZSB0byBzZXQgdGhlIHZhbHVlIHByaW9yIHRvIGNhbGxpbmcgdGhpcy5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gc2V0dGluZ05hbWUgVGhlIG5hbWUgb2YgdGhlIHNldHRpbmcgdG8gY2hhbmdlLlxuICAgICAqIEBwYXJhbSB7U3RyaW5nfSByb29tSWQgVGhlIHJvb20gSUQgdG8gc2V0IHRoZSB2YWx1ZSBpbiwgbWF5IGJlIG51bGwuXG4gICAgICogQHBhcmFtIHsqfSBuZXdWYWx1ZSBUaGUgbmV3IHZhbHVlIGZvciB0aGUgc2V0dGluZywgbWF5IGJlIG51bGwuXG4gICAgICogQHJldHVybnMge1Byb21pc2V9IFJlc29sdmVzIHdoZW4gdGhlIHNldHRpbmcgaGFzIGJlZW4gc2F2ZWQuXG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IHNldFZhbHVlKHNldHRpbmdOYW1lOiBzdHJpbmcsIHJvb21JZDogc3RyaW5nIHwgbnVsbCwgbmV3VmFsdWU6IGFueSk6IFByb21pc2U8dm9pZD47XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIHRoZSBjdXJyZW50IHVzZXIgaXMgYWJsZSB0byBzZXQgdGhlIHZhbHVlIG9mIHRoZSBnaXZlbiBzZXR0aW5nXG4gICAgICogaW4gdGhlIGdpdmVuIHJvb20gYXQgdGhpcyBsZXZlbC5cbiAgICAgKiBAcGFyYW0ge3N0cmluZ30gc2V0dGluZ05hbWUgVGhlIG5hbWUgb2YgdGhlIHNldHRpbmcgdG8gY2hlY2suXG4gICAgICogQHBhcmFtIHtTdHJpbmd9IHJvb21JZCBUaGUgcm9vbSBJRCB0byBjaGVjayBpbiwgbWF5IGJlIG51bGxcbiAgICAgKiBAcmV0dXJucyB7Ym9vbGVhbn0gVHJ1ZSBpZiB0aGUgc2V0dGluZyBjYW4gYmUgc2V0IGJ5IHRoZSB1c2VyLCBmYWxzZSBvdGhlcndpc2UuXG4gICAgICovXG4gICAgcHVibGljIGFic3RyYWN0IGNhblNldFZhbHVlKHNldHRpbmdOYW1lOiBzdHJpbmcsIHJvb21JZDogc3RyaW5nIHwgbnVsbCk6IGJvb2xlYW47XG5cbiAgICAvKipcbiAgICAgKiBEZXRlcm1pbmVzIGlmIHRoaXMgbGV2ZWwgaXMgc3VwcG9ydGVkIG9uIHRoaXMgZGV2aWNlLlxuICAgICAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoaXMgbGV2ZWwgaXMgc3VwcG9ydGVkIG9uIHRoZSBjdXJyZW50IGRldmljZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgYWJzdHJhY3QgaXNTdXBwb3J0ZWQoKTogYm9vbGVhbjtcblxuICAgIC8qKlxuICAgICAqIFJlc2V0cyB0aGUgaGFuZGxlciwgY2xlYXJpbmcgYW55IGNhY2hlcyBvciBvdGhlciBzdG9yZWQgZGF0YS4gQ2FsbGVkIG9uIHVzZXIgbG9nb3V0LlxuICAgICAqL1xuICAgIHB1YmxpYyByZXNldCgpOiB2b2lkIHt9XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7O0FBQUE7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNlLE1BQWVBLGVBQWUsQ0FBQztFQUFBQyxZQUFBO0lBQUEsSUFBQUMsZ0JBQUEsQ0FBQUMsT0FBQTtFQUFBO0VBRzFDO0FBQ0o7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFHSTtBQUNKO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0VBR0k7QUFDSjtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7RUFHSTtBQUNKO0FBQ0E7QUFDQTtFQUdJO0FBQ0o7QUFDQTtFQUNXQyxLQUFLQSxDQUFBLEVBQVMsQ0FBQztBQUMxQjtBQUFDQyxPQUFBLENBQUFGLE9BQUEsR0FBQUgsZUFBQSIsImlnbm9yZUxpc3QiOltdfQ==