UNPKG

matrix-react-sdk

Version:
30 lines (27 loc) 3.04 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.createReconnectedListener = void 0; 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. */ /** * Creates a MatrixClient event listener function that can be used to get notified about reconnects. * @param callback The callback to be called on reconnect */ const createReconnectedListener = callback => { return (syncState, prevState) => { if (syncState !== _matrix.SyncState.Error && prevState !== syncState) { // Consider the client reconnected if there is no error with syncing. // This means the state could be RECONNECTING, SYNCING, PREPARED or CATCHUP. callback(); } }; }; exports.createReconnectedListener = createReconnectedListener; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWF0cml4IiwicmVxdWlyZSIsImNyZWF0ZVJlY29ubmVjdGVkTGlzdGVuZXIiLCJjYWxsYmFjayIsInN5bmNTdGF0ZSIsInByZXZTdGF0ZSIsIlN5bmNTdGF0ZSIsIkVycm9yIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9jb25uZWN0aW9uLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5Db3B5cmlnaHQgMjAyNCBOZXcgVmVjdG9yIEx0ZC5cbkNvcHlyaWdodCAyMDIyIFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cblNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBR1BMLTMuMC1vbmx5IE9SIEdQTC0zLjAtb25seVxuUGxlYXNlIHNlZSBMSUNFTlNFIGZpbGVzIGluIHRoZSByZXBvc2l0b3J5IHJvb3QgZm9yIGZ1bGwgZGV0YWlscy5cbiovXG5cbmltcG9ydCB7IENsaWVudEV2ZW50LCBDbGllbnRFdmVudEhhbmRsZXJNYXAsIFN5bmNTdGF0ZSB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcblxuLyoqXG4gKiBDcmVhdGVzIGEgTWF0cml4Q2xpZW50IGV2ZW50IGxpc3RlbmVyIGZ1bmN0aW9uIHRoYXQgY2FuIGJlIHVzZWQgdG8gZ2V0IG5vdGlmaWVkIGFib3V0IHJlY29ubmVjdHMuXG4gKiBAcGFyYW0gY2FsbGJhY2sgVGhlIGNhbGxiYWNrIHRvIGJlIGNhbGxlZCBvbiByZWNvbm5lY3RcbiAqL1xuZXhwb3J0IGNvbnN0IGNyZWF0ZVJlY29ubmVjdGVkTGlzdGVuZXIgPSAoY2FsbGJhY2s6ICgpID0+IHZvaWQpOiBDbGllbnRFdmVudEhhbmRsZXJNYXBbQ2xpZW50RXZlbnQuU3luY10gPT4ge1xuICAgIHJldHVybiAoc3luY1N0YXRlOiBTeW5jU3RhdGUsIHByZXZTdGF0ZTogU3luY1N0YXRlIHwgbnVsbCkgPT4ge1xuICAgICAgICBpZiAoc3luY1N0YXRlICE9PSBTeW5jU3RhdGUuRXJyb3IgJiYgcHJldlN0YXRlICE9PSBzeW5jU3RhdGUpIHtcbiAgICAgICAgICAgIC8vIENvbnNpZGVyIHRoZSBjbGllbnQgcmVjb25uZWN0ZWQgaWYgdGhlcmUgaXMgbm8gZXJyb3Igd2l0aCBzeW5jaW5nLlxuICAgICAgICAgICAgLy8gVGhpcyBtZWFucyB0aGUgc3RhdGUgY291bGQgYmUgUkVDT05ORUNUSU5HLCBTWU5DSU5HLCBQUkVQQVJFRCBvciBDQVRDSFVQLlxuICAgICAgICAgICAgY2FsbGJhY2soKTtcbiAgICAgICAgfVxuICAgIH07XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFRQSxJQUFBQSxPQUFBLEdBQUFDLE9BQUE7QUFSQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFJQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLE1BQU1DLHlCQUF5QixHQUFJQyxRQUFvQixJQUE4QztFQUN4RyxPQUFPLENBQUNDLFNBQW9CLEVBQUVDLFNBQTJCLEtBQUs7SUFDMUQsSUFBSUQsU0FBUyxLQUFLRSxpQkFBUyxDQUFDQyxLQUFLLElBQUlGLFNBQVMsS0FBS0QsU0FBUyxFQUFFO01BQzFEO01BQ0E7TUFDQUQsUUFBUSxDQUFDLENBQUM7SUFDZDtFQUNKLENBQUM7QUFDTCxDQUFDO0FBQUNLLE9BQUEsQ0FBQU4seUJBQUEsR0FBQUEseUJBQUEiLCJpZ25vcmVMaXN0IjpbXX0=