matrix-react-sdk
Version:
SDK for matrix.org using React
41 lines (38 loc) • 3.52 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.AppModule = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _ProxiedModuleApi = require("./ProxiedModuleApi");
/*
Copyright 2024 New Vector Ltd.
Copyright 2022 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.
*/
/**
* Wraps a module factory into a usable module. Acts as a simple container
* for the constructs needed to operate a module.
*/
class AppModule {
/**
* Converts a factory into an AppModule. The factory will be called
* immediately.
* @param factory The module factory.
*/
constructor(factory) {
/**
* The module instance.
*/
(0, _defineProperty2.default)(this, "module", void 0);
/**
* The API instance used by the module.
*/
(0, _defineProperty2.default)(this, "api", new _ProxiedModuleApi.ProxiedModuleApi());
this.module = factory(this.api);
}
}
exports.AppModule = AppModule;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfUHJveGllZE1vZHVsZUFwaSIsInJlcXVpcmUiLCJBcHBNb2R1bGUiLCJjb25zdHJ1Y3RvciIsImZhY3RvcnkiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsIlByb3hpZWRNb2R1bGVBcGkiLCJtb2R1bGUiLCJhcGkiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vc3JjL21vZHVsZXMvQXBwTW9kdWxlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIyIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCB7IFJ1bnRpbWVNb2R1bGUgfSBmcm9tIFwiQG1hdHJpeC1vcmcvcmVhY3Qtc2RrLW1vZHVsZS1hcGkvbGliL1J1bnRpbWVNb2R1bGVcIjtcblxuaW1wb3J0IHsgTW9kdWxlRmFjdG9yeSB9IGZyb20gXCIuL01vZHVsZUZhY3RvcnlcIjtcbmltcG9ydCB7IFByb3hpZWRNb2R1bGVBcGkgfSBmcm9tIFwiLi9Qcm94aWVkTW9kdWxlQXBpXCI7XG5cbi8qKlxuICogV3JhcHMgYSBtb2R1bGUgZmFjdG9yeSBpbnRvIGEgdXNhYmxlIG1vZHVsZS4gQWN0cyBhcyBhIHNpbXBsZSBjb250YWluZXJcbiAqIGZvciB0aGUgY29uc3RydWN0cyBuZWVkZWQgdG8gb3BlcmF0ZSBhIG1vZHVsZS5cbiAqL1xuZXhwb3J0IGNsYXNzIEFwcE1vZHVsZSB7XG4gICAgLyoqXG4gICAgICogVGhlIG1vZHVsZSBpbnN0YW5jZS5cbiAgICAgKi9cbiAgICBwdWJsaWMgcmVhZG9ubHkgbW9kdWxlOiBSdW50aW1lTW9kdWxlO1xuXG4gICAgLyoqXG4gICAgICogVGhlIEFQSSBpbnN0YW5jZSB1c2VkIGJ5IHRoZSBtb2R1bGUuXG4gICAgICovXG4gICAgcHVibGljIHJlYWRvbmx5IGFwaSA9IG5ldyBQcm94aWVkTW9kdWxlQXBpKCk7XG5cbiAgICAvKipcbiAgICAgKiBDb252ZXJ0cyBhIGZhY3RvcnkgaW50byBhbiBBcHBNb2R1bGUuIFRoZSBmYWN0b3J5IHdpbGwgYmUgY2FsbGVkXG4gICAgICogaW1tZWRpYXRlbHkuXG4gICAgICogQHBhcmFtIGZhY3RvcnkgVGhlIG1vZHVsZSBmYWN0b3J5LlxuICAgICAqL1xuICAgIHB1YmxpYyBjb25zdHJ1Y3RvcihmYWN0b3J5OiBNb2R1bGVGYWN0b3J5KSB7XG4gICAgICAgIHRoaXMubW9kdWxlID0gZmFjdG9yeSh0aGlzLmFwaSk7XG4gICAgfVxufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQVdBLElBQUFBLGlCQUFBLEdBQUFDLE9BQUE7QUFYQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFPQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLE1BQU1DLFNBQVMsQ0FBQztFQVduQjtBQUNKO0FBQ0E7QUFDQTtBQUNBO0VBQ1dDLFdBQVdBLENBQUNDLE9BQXNCLEVBQUU7SUFmM0M7QUFDSjtBQUNBO0lBRkksSUFBQUMsZ0JBQUEsQ0FBQUMsT0FBQTtJQUtBO0FBQ0o7QUFDQTtJQUZJLElBQUFELGdCQUFBLENBQUFDLE9BQUEsZUFHc0IsSUFBSUMsa0NBQWdCLENBQUMsQ0FBQztJQVF4QyxJQUFJLENBQUNDLE1BQU0sR0FBR0osT0FBTyxDQUFDLElBQUksQ0FBQ0ssR0FBRyxDQUFDO0VBQ25DO0FBQ0o7QUFBQ0MsT0FBQSxDQUFBUixTQUFBLEdBQUFBLFNBQUEiLCJpZ25vcmVMaXN0IjpbXX0=