matrix-react-sdk
Version:
SDK for matrix.org using React
30 lines (27 loc) • 4.06 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.useGlobalNotificationState = void 0;
var _react = require("react");
var _RoomNotificationStateStore = require("../stores/notifications/RoomNotificationStateStore");
var _useEventEmitter = require("./useEventEmitter");
/*
Copyright 2024 New Vector Ltd.
Copyright 2023 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.
*/
/**
* Tracks the global notification state of the user's account
* @returns A global notification state object
*/
const useGlobalNotificationState = () => {
const [summarizedNotificationState, setSummarizedNotificationState] = (0, _react.useState)(_RoomNotificationStateStore.RoomNotificationStateStore.instance.globalState);
(0, _useEventEmitter.useEventEmitter)(_RoomNotificationStateStore.RoomNotificationStateStore.instance, _RoomNotificationStateStore.UPDATE_STATUS_INDICATOR, notificationState => {
setSummarizedNotificationState(notificationState);
});
return summarizedNotificationState;
};
exports.useGlobalNotificationState = useGlobalNotificationState;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX1Jvb21Ob3RpZmljYXRpb25TdGF0ZVN0b3JlIiwiX3VzZUV2ZW50RW1pdHRlciIsInVzZUdsb2JhbE5vdGlmaWNhdGlvblN0YXRlIiwic3VtbWFyaXplZE5vdGlmaWNhdGlvblN0YXRlIiwic2V0U3VtbWFyaXplZE5vdGlmaWNhdGlvblN0YXRlIiwidXNlU3RhdGUiLCJSb29tTm90aWZpY2F0aW9uU3RhdGVTdG9yZSIsImluc3RhbmNlIiwiZ2xvYmFsU3RhdGUiLCJ1c2VFdmVudEVtaXR0ZXIiLCJVUERBVEVfU1RBVFVTX0lORElDQVRPUiIsIm5vdGlmaWNhdGlvblN0YXRlIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ob29rcy91c2VHbG9iYWxOb3RpZmljYXRpb25TdGF0ZS50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAyMyBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuXG5TUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQUdQTC0zLjAtb25seSBPUiBHUEwtMy4wLW9ubHlcblBsZWFzZSBzZWUgTElDRU5TRSBmaWxlcyBpbiB0aGUgcmVwb3NpdG9yeSByb290IGZvciBmdWxsIGRldGFpbHMuXG4qL1xuXG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgeyBTdW1tYXJpemVkTm90aWZpY2F0aW9uU3RhdGUgfSBmcm9tIFwiLi4vc3RvcmVzL25vdGlmaWNhdGlvbnMvU3VtbWFyaXplZE5vdGlmaWNhdGlvblN0YXRlXCI7XG5pbXBvcnQge1xuICAgIFJvb21Ob3RpZmljYXRpb25TdGF0ZVN0b3JlLFxuICAgIFVQREFURV9TVEFUVVNfSU5ESUNBVE9SLFxufSBmcm9tIFwiLi4vc3RvcmVzL25vdGlmaWNhdGlvbnMvUm9vbU5vdGlmaWNhdGlvblN0YXRlU3RvcmVcIjtcbmltcG9ydCB7IHVzZUV2ZW50RW1pdHRlciB9IGZyb20gXCIuL3VzZUV2ZW50RW1pdHRlclwiO1xuXG4vKipcbiAqIFRyYWNrcyB0aGUgZ2xvYmFsIG5vdGlmaWNhdGlvbiBzdGF0ZSBvZiB0aGUgdXNlcidzIGFjY291bnRcbiAqIEByZXR1cm5zIEEgZ2xvYmFsIG5vdGlmaWNhdGlvbiBzdGF0ZSBvYmplY3RcbiAqL1xuZXhwb3J0IGNvbnN0IHVzZUdsb2JhbE5vdGlmaWNhdGlvblN0YXRlID0gKCk6IFN1bW1hcml6ZWROb3RpZmljYXRpb25TdGF0ZSA9PiB7XG4gICAgY29uc3QgW3N1bW1hcml6ZWROb3RpZmljYXRpb25TdGF0ZSwgc2V0U3VtbWFyaXplZE5vdGlmaWNhdGlvblN0YXRlXSA9IHVzZVN0YXRlKFxuICAgICAgICBSb29tTm90aWZpY2F0aW9uU3RhdGVTdG9yZS5pbnN0YW5jZS5nbG9iYWxTdGF0ZSxcbiAgICApO1xuXG4gICAgdXNlRXZlbnRFbWl0dGVyKFxuICAgICAgICBSb29tTm90aWZpY2F0aW9uU3RhdGVTdG9yZS5pbnN0YW5jZSxcbiAgICAgICAgVVBEQVRFX1NUQVRVU19JTkRJQ0FUT1IsXG4gICAgICAgIChub3RpZmljYXRpb25TdGF0ZTogU3VtbWFyaXplZE5vdGlmaWNhdGlvblN0YXRlKSA9PiB7XG4gICAgICAgICAgICBzZXRTdW1tYXJpemVkTm90aWZpY2F0aW9uU3RhdGUobm90aWZpY2F0aW9uU3RhdGUpO1xuICAgICAgICB9LFxuICAgICk7XG5cbiAgICByZXR1cm4gc3VtbWFyaXplZE5vdGlmaWNhdGlvblN0YXRlO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7O0FBUUEsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBR0EsSUFBQUMsMkJBQUEsR0FBQUQsT0FBQTtBQUlBLElBQUFFLGdCQUFBLEdBQUFGLE9BQUE7QUFmQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTs7QUFXQTtBQUNBO0FBQ0E7QUFDQTtBQUNPLE1BQU1HLDBCQUEwQixHQUFHQSxDQUFBLEtBQW1DO0VBQ3pFLE1BQU0sQ0FBQ0MsMkJBQTJCLEVBQUVDLDhCQUE4QixDQUFDLEdBQUcsSUFBQUMsZUFBUSxFQUMxRUMsc0RBQTBCLENBQUNDLFFBQVEsQ0FBQ0MsV0FDeEMsQ0FBQztFQUVELElBQUFDLGdDQUFlLEVBQ1hILHNEQUEwQixDQUFDQyxRQUFRLEVBQ25DRyxtREFBdUIsRUFDdEJDLGlCQUE4QyxJQUFLO0lBQ2hEUCw4QkFBOEIsQ0FBQ08saUJBQWlCLENBQUM7RUFDckQsQ0FDSixDQUFDO0VBRUQsT0FBT1IsMkJBQTJCO0FBQ3RDLENBQUM7QUFBQ1MsT0FBQSxDQUFBViwwQkFBQSxHQUFBQSwwQkFBQSIsImlnbm9yZUxpc3QiOltdfQ==