UNPKG

matrix-react-sdk

Version:
28 lines (25 loc) 3.57 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useLiveBeacons = void 0; var _matrix = require("matrix-js-sdk/src/matrix"); var _useEventEmitter = require("../../hooks/useEventEmitter"); /* 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. */ /** * Returns an array of all live beacon ids for a given room * * Beacons are removed from array when they become inactive */ const useLiveBeacons = (roomId, matrixClient) => { const room = matrixClient.getRoom(roomId); const liveBeacons = (0, _useEventEmitter.useEventEmitterState)(room?.currentState, _matrix.RoomStateEvent.BeaconLiveness, () => room?.currentState?.liveBeaconIds.map(beaconIdentifier => room.currentState.beacons.get(beaconIdentifier)) || []); return liveBeacons; }; exports.useLiveBeacons = useLiveBeacons; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfbWF0cml4IiwicmVxdWlyZSIsIl91c2VFdmVudEVtaXR0ZXIiLCJ1c2VMaXZlQmVhY29ucyIsInJvb21JZCIsIm1hdHJpeENsaWVudCIsInJvb20iLCJnZXRSb29tIiwibGl2ZUJlYWNvbnMiLCJ1c2VFdmVudEVtaXR0ZXJTdGF0ZSIsImN1cnJlbnRTdGF0ZSIsIlJvb21TdGF0ZUV2ZW50IiwiQmVhY29uTGl2ZW5lc3MiLCJsaXZlQmVhY29uSWRzIiwibWFwIiwiYmVhY29uSWRlbnRpZmllciIsImJlYWNvbnMiLCJnZXQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL3V0aWxzL2JlYWNvbi91c2VMaXZlQmVhY29ucy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAyMiBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgeyBCZWFjb24sIFJvb20sIFJvb21TdGF0ZUV2ZW50LCBNYXRyaXhDbGllbnQgfSBmcm9tIFwibWF0cml4LWpzLXNkay9zcmMvbWF0cml4XCI7XG5cbmltcG9ydCB7IHVzZUV2ZW50RW1pdHRlclN0YXRlIH0gZnJvbSBcIi4uLy4uL2hvb2tzL3VzZUV2ZW50RW1pdHRlclwiO1xuXG4vKipcbiAqIFJldHVybnMgYW4gYXJyYXkgb2YgYWxsIGxpdmUgYmVhY29uIGlkcyBmb3IgYSBnaXZlbiByb29tXG4gKlxuICogQmVhY29ucyBhcmUgcmVtb3ZlZCBmcm9tIGFycmF5IHdoZW4gdGhleSBiZWNvbWUgaW5hY3RpdmVcbiAqL1xuZXhwb3J0IGNvbnN0IHVzZUxpdmVCZWFjb25zID0gKHJvb21JZDogUm9vbVtcInJvb21JZFwiXSwgbWF0cml4Q2xpZW50OiBNYXRyaXhDbGllbnQpOiBCZWFjb25bXSA9PiB7XG4gICAgY29uc3Qgcm9vbSA9IG1hdHJpeENsaWVudC5nZXRSb29tKHJvb21JZCk7XG5cbiAgICBjb25zdCBsaXZlQmVhY29ucyA9IHVzZUV2ZW50RW1pdHRlclN0YXRlKFxuICAgICAgICByb29tPy5jdXJyZW50U3RhdGUsXG4gICAgICAgIFJvb21TdGF0ZUV2ZW50LkJlYWNvbkxpdmVuZXNzLFxuICAgICAgICAoKSA9PlxuICAgICAgICAgICAgcm9vbT8uY3VycmVudFN0YXRlPy5saXZlQmVhY29uSWRzLm1hcChcbiAgICAgICAgICAgICAgICAoYmVhY29uSWRlbnRpZmllcikgPT4gcm9vbS5jdXJyZW50U3RhdGUuYmVhY29ucy5nZXQoYmVhY29uSWRlbnRpZmllcikhLFxuICAgICAgICAgICAgKSB8fCBbXSxcbiAgICApO1xuXG4gICAgcmV0dXJuIGxpdmVCZWFjb25zO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBUUEsSUFBQUEsT0FBQSxHQUFBQyxPQUFBO0FBRUEsSUFBQUMsZ0JBQUEsR0FBQUQsT0FBQTtBQVZBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBOztBQU1BO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDTyxNQUFNRSxjQUFjLEdBQUdBLENBQUNDLE1BQXNCLEVBQUVDLFlBQTBCLEtBQWU7RUFDNUYsTUFBTUMsSUFBSSxHQUFHRCxZQUFZLENBQUNFLE9BQU8sQ0FBQ0gsTUFBTSxDQUFDO0VBRXpDLE1BQU1JLFdBQVcsR0FBRyxJQUFBQyxxQ0FBb0IsRUFDcENILElBQUksRUFBRUksWUFBWSxFQUNsQkMsc0JBQWMsQ0FBQ0MsY0FBYyxFQUM3QixNQUNJTixJQUFJLEVBQUVJLFlBQVksRUFBRUcsYUFBYSxDQUFDQyxHQUFHLENBQ2hDQyxnQkFBZ0IsSUFBS1QsSUFBSSxDQUFDSSxZQUFZLENBQUNNLE9BQU8sQ0FBQ0MsR0FBRyxDQUFDRixnQkFBZ0IsQ0FDeEUsQ0FBQyxJQUFJLEVBQ2IsQ0FBQztFQUVELE9BQU9QLFdBQVc7QUFDdEIsQ0FBQztBQUFDVSxPQUFBLENBQUFmLGNBQUEsR0FBQUEsY0FBQSIsImlnbm9yZUxpc3QiOltdfQ==