matrix-react-sdk
Version:
SDK for matrix.org using React
57 lines (54 loc) • 6.72 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.LocalRoomState = exports.LocalRoom = exports.LOCAL_ROOM_ID_PREFIX = void 0;
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
var _matrix = require("matrix-js-sdk/src/matrix");
/*
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.
*/
const LOCAL_ROOM_ID_PREFIX = exports.LOCAL_ROOM_ID_PREFIX = "local+";
let LocalRoomState = exports.LocalRoomState = /*#__PURE__*/function (LocalRoomState) {
LocalRoomState[LocalRoomState["NEW"] = 0] = "NEW";
LocalRoomState[LocalRoomState["CREATING"] = 1] = "CREATING";
LocalRoomState[LocalRoomState["CREATED"] = 2] = "CREATED";
LocalRoomState[LocalRoomState["ERROR"] = 3] = "ERROR";
return LocalRoomState;
}({}); // error during room creation
/**
* A local room that only exists client side.
* Its main purpose is to be used for temporary rooms when creating a DM.
*/
class LocalRoom extends _matrix.Room {
constructor(roomId, client, myUserId) {
super(roomId, client, myUserId, {
pendingEventOrdering: _matrix.PendingEventOrdering.Detached
});
/** Whether the actual room should be encrypted. */
(0, _defineProperty2.default)(this, "encrypted", false);
/** If the actual room has been created, this holds its ID. */
(0, _defineProperty2.default)(this, "actualRoomId", void 0);
/** DM chat partner */
(0, _defineProperty2.default)(this, "targets", []);
/** Callbacks that should be invoked after the actual room has been created. */
(0, _defineProperty2.default)(this, "afterCreateCallbacks", []);
(0, _defineProperty2.default)(this, "state", LocalRoomState.NEW);
this.name = this.getDefaultRoomName(myUserId);
}
get isNew() {
return this.state === LocalRoomState.NEW;
}
get isCreated() {
return this.state === LocalRoomState.CREATED;
}
get isError() {
return this.state === LocalRoomState.ERROR;
}
}
exports.LocalRoom = LocalRoom;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWF0cml4IiwicmVxdWlyZSIsIkxPQ0FMX1JPT01fSURfUFJFRklYIiwiZXhwb3J0cyIsIkxvY2FsUm9vbVN0YXRlIiwiTG9jYWxSb29tIiwiUm9vbSIsImNvbnN0cnVjdG9yIiwicm9vbUlkIiwiY2xpZW50IiwibXlVc2VySWQiLCJwZW5kaW5nRXZlbnRPcmRlcmluZyIsIlBlbmRpbmdFdmVudE9yZGVyaW5nIiwiRGV0YWNoZWQiLCJfZGVmaW5lUHJvcGVydHkyIiwiZGVmYXVsdCIsIk5FVyIsIm5hbWUiLCJnZXREZWZhdWx0Um9vbU5hbWUiLCJpc05ldyIsInN0YXRlIiwiaXNDcmVhdGVkIiwiQ1JFQVRFRCIsImlzRXJyb3IiLCJFUlJPUiJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9tb2RlbHMvTG9jYWxSb29tLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIyIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCB7IE1hdHJpeENsaWVudCwgUm9vbSwgUGVuZGluZ0V2ZW50T3JkZXJpbmcgfSBmcm9tIFwibWF0cml4LWpzLXNkay9zcmMvbWF0cml4XCI7XG5cbmltcG9ydCB7IE1lbWJlciB9IGZyb20gXCIuLi91dGlscy9kaXJlY3QtbWVzc2FnZXNcIjtcblxuZXhwb3J0IGNvbnN0IExPQ0FMX1JPT01fSURfUFJFRklYID0gXCJsb2NhbCtcIjtcblxuZXhwb3J0IGVudW0gTG9jYWxSb29tU3RhdGUge1xuICAgIE5FVywgLy8gbmV3IGxvY2FsIHJvb207IG9ubHkga25vd24gdG8gdGhlIGNsaWVudFxuICAgIENSRUFUSU5HLCAvLyByZWFsIHJvb20gaXMgYmVpbmcgY3JlYXRlZFxuICAgIENSRUFURUQsIC8vIHJlYWwgcm9vbSBoYXMgYmVlbiBjcmVhdGVkIHZpYSBBUEk7IGV2ZW50cyBhcHBsaWVkXG4gICAgRVJST1IsIC8vIGVycm9yIGR1cmluZyByb29tIGNyZWF0aW9uXG59XG5cbi8qKlxuICogQSBsb2NhbCByb29tIHRoYXQgb25seSBleGlzdHMgY2xpZW50IHNpZGUuXG4gKiBJdHMgbWFpbiBwdXJwb3NlIGlzIHRvIGJlIHVzZWQgZm9yIHRlbXBvcmFyeSByb29tcyB3aGVuIGNyZWF0aW5nIGEgRE0uXG4gKi9cbmV4cG9ydCBjbGFzcyBMb2NhbFJvb20gZXh0ZW5kcyBSb29tIHtcbiAgICAvKiogV2hldGhlciB0aGUgYWN0dWFsIHJvb20gc2hvdWxkIGJlIGVuY3J5cHRlZC4gKi9cbiAgICBwdWJsaWMgZW5jcnlwdGVkID0gZmFsc2U7XG4gICAgLyoqIElmIHRoZSBhY3R1YWwgcm9vbSBoYXMgYmVlbiBjcmVhdGVkLCB0aGlzIGhvbGRzIGl0cyBJRC4gKi9cbiAgICBwdWJsaWMgYWN0dWFsUm9vbUlkPzogc3RyaW5nO1xuICAgIC8qKiBETSBjaGF0IHBhcnRuZXIgKi9cbiAgICBwdWJsaWMgdGFyZ2V0czogTWVtYmVyW10gPSBbXTtcbiAgICAvKiogQ2FsbGJhY2tzIHRoYXQgc2hvdWxkIGJlIGludm9rZWQgYWZ0ZXIgdGhlIGFjdHVhbCByb29tIGhhcyBiZWVuIGNyZWF0ZWQuICovXG4gICAgcHVibGljIGFmdGVyQ3JlYXRlQ2FsbGJhY2tzOiBGdW5jdGlvbltdID0gW107XG4gICAgcHVibGljIHN0YXRlOiBMb2NhbFJvb21TdGF0ZSA9IExvY2FsUm9vbVN0YXRlLk5FVztcblxuICAgIHB1YmxpYyBjb25zdHJ1Y3Rvcihyb29tSWQ6IHN0cmluZywgY2xpZW50OiBNYXRyaXhDbGllbnQsIG15VXNlcklkOiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIocm9vbUlkLCBjbGllbnQsIG15VXNlcklkLCB7IHBlbmRpbmdFdmVudE9yZGVyaW5nOiBQZW5kaW5nRXZlbnRPcmRlcmluZy5EZXRhY2hlZCB9KTtcbiAgICAgICAgdGhpcy5uYW1lID0gdGhpcy5nZXREZWZhdWx0Um9vbU5hbWUobXlVc2VySWQpO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNOZXcoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRlID09PSBMb2NhbFJvb21TdGF0ZS5ORVc7XG4gICAgfVxuXG4gICAgcHVibGljIGdldCBpc0NyZWF0ZWQoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLnN0YXRlID09PSBMb2NhbFJvb21TdGF0ZS5DUkVBVEVEO1xuICAgIH1cblxuICAgIHB1YmxpYyBnZXQgaXNFcnJvcigpOiBib29sZWFuIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuc3RhdGUgPT09IExvY2FsUm9vbVN0YXRlLkVSUk9SO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFRQSxJQUFBQSxPQUFBLEdBQUFDLE9BQUE7QUFSQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFNTyxNQUFNQyxvQkFBb0IsR0FBQUMsT0FBQSxDQUFBRCxvQkFBQSxHQUFHLFFBQVE7QUFBQyxJQUVqQ0UsY0FBYyxHQUFBRCxPQUFBLENBQUFDLGNBQUEsMEJBQWRBLGNBQWM7RUFBZEEsY0FBYyxDQUFkQSxjQUFjO0VBQWRBLGNBQWMsQ0FBZEEsY0FBYztFQUFkQSxjQUFjLENBQWRBLGNBQWM7RUFBZEEsY0FBYyxDQUFkQSxjQUFjO0VBQUEsT0FBZEEsY0FBYztBQUFBLE9BSWY7QUFHWDtBQUNBO0FBQ0E7QUFDQTtBQUNPLE1BQU1DLFNBQVMsU0FBU0MsWUFBSSxDQUFDO0VBV3pCQyxXQUFXQSxDQUFDQyxNQUFjLEVBQUVDLE1BQW9CLEVBQUVDLFFBQWdCLEVBQUU7SUFDdkUsS0FBSyxDQUFDRixNQUFNLEVBQUVDLE1BQU0sRUFBRUMsUUFBUSxFQUFFO01BQUVDLG9CQUFvQixFQUFFQyw0QkFBb0IsQ0FBQ0M7SUFBUyxDQUFDLENBQUM7SUFYNUY7SUFBQSxJQUFBQyxnQkFBQSxDQUFBQyxPQUFBLHFCQUNtQixLQUFLO0lBQ3hCO0lBQUEsSUFBQUQsZ0JBQUEsQ0FBQUMsT0FBQTtJQUVBO0lBQUEsSUFBQUQsZ0JBQUEsQ0FBQUMsT0FBQSxtQkFDMkIsRUFBRTtJQUM3QjtJQUFBLElBQUFELGdCQUFBLENBQUFDLE9BQUEsZ0NBQzBDLEVBQUU7SUFBQSxJQUFBRCxnQkFBQSxDQUFBQyxPQUFBLGlCQUNiWCxjQUFjLENBQUNZLEdBQUc7SUFJN0MsSUFBSSxDQUFDQyxJQUFJLEdBQUcsSUFBSSxDQUFDQyxrQkFBa0IsQ0FBQ1IsUUFBUSxDQUFDO0VBQ2pEO0VBRUEsSUFBV1MsS0FBS0EsQ0FBQSxFQUFZO0lBQ3hCLE9BQU8sSUFBSSxDQUFDQyxLQUFLLEtBQUtoQixjQUFjLENBQUNZLEdBQUc7RUFDNUM7RUFFQSxJQUFXSyxTQUFTQSxDQUFBLEVBQVk7SUFDNUIsT0FBTyxJQUFJLENBQUNELEtBQUssS0FBS2hCLGNBQWMsQ0FBQ2tCLE9BQU87RUFDaEQ7RUFFQSxJQUFXQyxPQUFPQSxDQUFBLEVBQVk7SUFDMUIsT0FBTyxJQUFJLENBQUNILEtBQUssS0FBS2hCLGNBQWMsQ0FBQ29CLEtBQUs7RUFDOUM7QUFDSjtBQUFDckIsT0FBQSxDQUFBRSxTQUFBLEdBQUFBLFNBQUEiLCJpZ25vcmVMaXN0IjpbXX0=