matrix-react-sdk
Version:
SDK for matrix.org using React
60 lines (57 loc) • 11.3 kB
JavaScript
;
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _react = _interopRequireWildcard(require("react"));
var _matrix = require("matrix-js-sdk/src/matrix");
var _OwnBeaconStore = require("../../../stores/OwnBeaconStore");
var _useEventEmitter = require("../../../hooks/useEventEmitter");
var _OwnBeaconStatus = _interopRequireDefault(require("./OwnBeaconStatus"));
var _displayStatus = require("./displayStatus");
var _MatrixClientContext = _interopRequireDefault(require("../../../contexts/MatrixClientContext"));
var _MemberAvatar = _interopRequireDefault(require("../avatars/MemberAvatar"));
var _StyledLiveBeaconIcon = _interopRequireDefault(require("./StyledLiveBeaconIcon"));
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
/*
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 useOwnBeacon = roomId => {
const ownBeacon = (0, _useEventEmitter.useEventEmitterState)(_OwnBeaconStore.OwnBeaconStore.instance, _OwnBeaconStore.OwnBeaconStoreEvent.LivenessChange, () => {
const [ownBeaconId] = _OwnBeaconStore.OwnBeaconStore.instance.getLiveBeaconIds(roomId);
return _OwnBeaconStore.OwnBeaconStore.instance.getBeaconById(ownBeaconId);
});
return ownBeacon;
};
const DialogOwnBeaconStatus = ({
roomId
}) => {
const beacon = useOwnBeacon(roomId);
const matrixClient = (0, _react.useContext)(_MatrixClientContext.default);
const room = matrixClient.getRoom(roomId);
if (!beacon?.isLive || !room) {
return null;
}
const isSelfLocation = beacon.beaconInfo?.assetType === _matrix.LocationAssetType.Self;
const beaconMember = isSelfLocation ? room.getMember(beacon.beaconInfoOwner) : null;
return /*#__PURE__*/_react.default.createElement("div", {
className: "mx_DialogOwnBeaconStatus"
}, isSelfLocation ? /*#__PURE__*/_react.default.createElement(_MemberAvatar.default, {
className: "mx_DialogOwnBeaconStatus_avatar",
member: beaconMember,
size: "32px"
}) : /*#__PURE__*/_react.default.createElement(_StyledLiveBeaconIcon.default, {
className: "mx_DialogOwnBeaconStatus_avatarIcon"
}), /*#__PURE__*/_react.default.createElement(_OwnBeaconStatus.default, {
className: "mx_DialogOwnBeaconStatus_status",
beacon: beacon,
displayStatus: _displayStatus.BeaconDisplayStatus.Active
}));
};
var _default = exports.default = DialogOwnBeaconStatus;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfbWF0cml4IiwiX093bkJlYWNvblN0b3JlIiwiX3VzZUV2ZW50RW1pdHRlciIsIl9Pd25CZWFjb25TdGF0dXMiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwiX2Rpc3BsYXlTdGF0dXMiLCJfTWF0cml4Q2xpZW50Q29udGV4dCIsIl9NZW1iZXJBdmF0YXIiLCJfU3R5bGVkTGl2ZUJlYWNvbkljb24iLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJlIiwiV2Vha01hcCIsInIiLCJ0IiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJoYXMiLCJnZXQiLCJuIiwiX19wcm90b19fIiwiYSIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwidSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImkiLCJzZXQiLCJ1c2VPd25CZWFjb24iLCJyb29tSWQiLCJvd25CZWFjb24iLCJ1c2VFdmVudEVtaXR0ZXJTdGF0ZSIsIk93bkJlYWNvblN0b3JlIiwiaW5zdGFuY2UiLCJPd25CZWFjb25TdG9yZUV2ZW50IiwiTGl2ZW5lc3NDaGFuZ2UiLCJvd25CZWFjb25JZCIsImdldExpdmVCZWFjb25JZHMiLCJnZXRCZWFjb25CeUlkIiwiRGlhbG9nT3duQmVhY29uU3RhdHVzIiwiYmVhY29uIiwibWF0cml4Q2xpZW50IiwidXNlQ29udGV4dCIsIk1hdHJpeENsaWVudENvbnRleHQiLCJyb29tIiwiZ2V0Um9vbSIsImlzTGl2ZSIsImlzU2VsZkxvY2F0aW9uIiwiYmVhY29uSW5mbyIsImFzc2V0VHlwZSIsIkxvY2F0aW9uQXNzZXRUeXBlIiwiU2VsZiIsImJlYWNvbk1lbWJlciIsImdldE1lbWJlciIsImJlYWNvbkluZm9Pd25lciIsImNyZWF0ZUVsZW1lbnQiLCJjbGFzc05hbWUiLCJtZW1iZXIiLCJzaXplIiwiZGlzcGxheVN0YXR1cyIsIkJlYWNvbkRpc3BsYXlTdGF0dXMiLCJBY3RpdmUiLCJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3cy9iZWFjb24vRGlhbG9nT3duQmVhY29uU3RhdHVzLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAyMiBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgUmVhY3QsIHsgdXNlQ29udGV4dCB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IHsgUm9vbSwgQmVhY29uLCBMb2NhdGlvbkFzc2V0VHlwZSB9IGZyb20gXCJtYXRyaXgtanMtc2RrL3NyYy9tYXRyaXhcIjtcblxuaW1wb3J0IHsgT3duQmVhY29uU3RvcmUsIE93bkJlYWNvblN0b3JlRXZlbnQgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmVzL093bkJlYWNvblN0b3JlXCI7XG5pbXBvcnQgeyB1c2VFdmVudEVtaXR0ZXJTdGF0ZSB9IGZyb20gXCIuLi8uLi8uLi9ob29rcy91c2VFdmVudEVtaXR0ZXJcIjtcbmltcG9ydCBPd25CZWFjb25TdGF0dXMgZnJvbSBcIi4vT3duQmVhY29uU3RhdHVzXCI7XG5pbXBvcnQgeyBCZWFjb25EaXNwbGF5U3RhdHVzIH0gZnJvbSBcIi4vZGlzcGxheVN0YXR1c1wiO1xuaW1wb3J0IE1hdHJpeENsaWVudENvbnRleHQgZnJvbSBcIi4uLy4uLy4uL2NvbnRleHRzL01hdHJpeENsaWVudENvbnRleHRcIjtcbmltcG9ydCBNZW1iZXJBdmF0YXIgZnJvbSBcIi4uL2F2YXRhcnMvTWVtYmVyQXZhdGFyXCI7XG5pbXBvcnQgU3R5bGVkTGl2ZUJlYWNvbkljb24gZnJvbSBcIi4vU3R5bGVkTGl2ZUJlYWNvbkljb25cIjtcblxuaW50ZXJmYWNlIFByb3BzIHtcbiAgICByb29tSWQ6IFJvb21bXCJyb29tSWRcIl07XG59XG5cbmNvbnN0IHVzZU93bkJlYWNvbiA9IChyb29tSWQ6IFJvb21bXCJyb29tSWRcIl0pOiBCZWFjb24gfCB1bmRlZmluZWQgPT4ge1xuICAgIGNvbnN0IG93bkJlYWNvbiA9IHVzZUV2ZW50RW1pdHRlclN0YXRlKE93bkJlYWNvblN0b3JlLmluc3RhbmNlLCBPd25CZWFjb25TdG9yZUV2ZW50LkxpdmVuZXNzQ2hhbmdlLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IFtvd25CZWFjb25JZF0gPSBPd25CZWFjb25TdG9yZS5pbnN0YW5jZS5nZXRMaXZlQmVhY29uSWRzKHJvb21JZCk7XG4gICAgICAgIHJldHVybiBPd25CZWFjb25TdG9yZS5pbnN0YW5jZS5nZXRCZWFjb25CeUlkKG93bkJlYWNvbklkKTtcbiAgICB9KTtcblxuICAgIHJldHVybiBvd25CZWFjb247XG59O1xuXG5jb25zdCBEaWFsb2dPd25CZWFjb25TdGF0dXM6IFJlYWN0LkZDPFByb3BzPiA9ICh7IHJvb21JZCB9KSA9PiB7XG4gICAgY29uc3QgYmVhY29uID0gdXNlT3duQmVhY29uKHJvb21JZCk7XG5cbiAgICBjb25zdCBtYXRyaXhDbGllbnQgPSB1c2VDb250ZXh0KE1hdHJpeENsaWVudENvbnRleHQpO1xuICAgIGNvbnN0IHJvb20gPSBtYXRyaXhDbGllbnQuZ2V0Um9vbShyb29tSWQpO1xuXG4gICAgaWYgKCFiZWFjb24/LmlzTGl2ZSB8fCAhcm9vbSkge1xuICAgICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG5cbiAgICBjb25zdCBpc1NlbGZMb2NhdGlvbiA9IGJlYWNvbi5iZWFjb25JbmZvPy5hc3NldFR5cGUgPT09IExvY2F0aW9uQXNzZXRUeXBlLlNlbGY7XG4gICAgY29uc3QgYmVhY29uTWVtYmVyID0gaXNTZWxmTG9jYXRpb24gPyByb29tLmdldE1lbWJlcihiZWFjb24uYmVhY29uSW5mb093bmVyKSA6IG51bGw7XG5cbiAgICByZXR1cm4gKFxuICAgICAgICA8ZGl2IGNsYXNzTmFtZT1cIm14X0RpYWxvZ093bkJlYWNvblN0YXR1c1wiPlxuICAgICAgICAgICAge2lzU2VsZkxvY2F0aW9uID8gKFxuICAgICAgICAgICAgICAgIDxNZW1iZXJBdmF0YXIgY2xhc3NOYW1lPVwibXhfRGlhbG9nT3duQmVhY29uU3RhdHVzX2F2YXRhclwiIG1lbWJlcj17YmVhY29uTWVtYmVyfSBzaXplPVwiMzJweFwiIC8+XG4gICAgICAgICAgICApIDogKFxuICAgICAgICAgICAgICAgIDxTdHlsZWRMaXZlQmVhY29uSWNvbiBjbGFzc05hbWU9XCJteF9EaWFsb2dPd25CZWFjb25TdGF0dXNfYXZhdGFySWNvblwiIC8+XG4gICAgICAgICAgICApfVxuICAgICAgICAgICAgPE93bkJlYWNvblN0YXR1c1xuICAgICAgICAgICAgICAgIGNsYXNzTmFtZT1cIm14X0RpYWxvZ093bkJlYWNvblN0YXR1c19zdGF0dXNcIlxuICAgICAgICAgICAgICAgIGJlYWNvbj17YmVhY29ufVxuICAgICAgICAgICAgICAgIGRpc3BsYXlTdGF0dXM9e0JlYWNvbkRpc3BsYXlTdGF0dXMuQWN0aXZlfVxuICAgICAgICAgICAgLz5cbiAgICAgICAgPC9kaXY+XG4gICAgKTtcbn07XG5cbmV4cG9ydCBkZWZhdWx0IERpYWxvZ093bkJlYWNvblN0YXR1cztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQVFBLElBQUFBLE1BQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUQsT0FBQTtBQUVBLElBQUFFLGVBQUEsR0FBQUYsT0FBQTtBQUNBLElBQUFHLGdCQUFBLEdBQUFILE9BQUE7QUFDQSxJQUFBSSxnQkFBQSxHQUFBQyxzQkFBQSxDQUFBTCxPQUFBO0FBQ0EsSUFBQU0sY0FBQSxHQUFBTixPQUFBO0FBQ0EsSUFBQU8sb0JBQUEsR0FBQUYsc0JB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