UNPKG

matrix-react-sdk

Version:
79 lines (75 loc) 11.3 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.HeaderKind = void 0; var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty")); var _react = _interopRequireDefault(require("react")); var _dispatcher = _interopRequireDefault(require("../../../dispatcher/dispatcher")); var _RightPanelStore = _interopRequireDefault(require("../../../stores/right-panel/RightPanelStore")); var _AsyncStore = require("../../../stores/AsyncStore"); var _NotificationLevel = require("../../../stores/notifications/NotificationLevel"); var _SettingsStore = _interopRequireDefault(require("../../../settings/SettingsStore")); /* Copyright 2024 New Vector Ltd. Copyright 2019 The Matrix.org Foundation C.I.C. Copyright 2018 New Vector Ltd Copyright 2017 Vector Creations Ltd Copyright 2017 New Vector Ltd Copyright 2015, 2016 OpenMarket Ltd SPDX-License-Identifier: AGPL-3.0-only OR GPL-3.0-only Please see LICENSE files in the repository root for full details. */ let HeaderKind = exports.HeaderKind = /*#__PURE__*/function (HeaderKind) { HeaderKind["Room"] = "room"; return HeaderKind; }({}); class HeaderButtons extends _react.default.Component { constructor(props, kind) { super(props); (0, _defineProperty2.default)(this, "unmounted", false); (0, _defineProperty2.default)(this, "dispatcherRef", undefined); (0, _defineProperty2.default)(this, "watcherRef", void 0); (0, _defineProperty2.default)(this, "onRightPanelStoreUpdate", () => { if (this.unmounted) return; this.setState({ phase: _RightPanelStore.default.instance.currentCard.phase }); }); const rps = _RightPanelStore.default.instance; this.state = { headerKind: kind, phase: rps.currentCard.phase, threadNotificationLevel: _NotificationLevel.NotificationLevel.None, globalNotificationLevel: _NotificationLevel.NotificationLevel.None, notificationsEnabled: _SettingsStore.default.getValue("feature_notifications") }; this.watcherRef = _SettingsStore.default.watchSetting("feature_notifications", null, (...[,,, value]) => this.setState({ notificationsEnabled: value })); } componentDidMount() { _RightPanelStore.default.instance.on(_AsyncStore.UPDATE_EVENT, this.onRightPanelStoreUpdate); } componentWillUnmount() { this.unmounted = true; _RightPanelStore.default.instance.off(_AsyncStore.UPDATE_EVENT, this.onRightPanelStoreUpdate); if (this.dispatcherRef) _dispatcher.default.unregister(this.dispatcherRef); if (this.watcherRef) _SettingsStore.default.unwatchSetting(this.watcherRef); } isPhase(phases) { if (!_RightPanelStore.default.instance.isOpen) return false; if (Array.isArray(phases)) { return !!this.state.phase && phases.includes(this.state.phase); } else { return phases === this.state.phase; } } // XXX: Make renderButtons a prop render() { return this.renderButtons(); } } exports.default = HeaderButtons; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9kaXNwYXRjaGVyIiwiX1JpZ2h0UGFuZWxTdG9yZSIsIl9Bc3luY1N0b3JlIiwiX05vdGlmaWNhdGlvbkxldmVsIiwiX1NldHRpbmdzU3RvcmUiLCJIZWFkZXJLaW5kIiwiZXhwb3J0cyIsIkhlYWRlckJ1dHRvbnMiLCJSZWFjdCIsIkNvbXBvbmVudCIsImNvbnN0cnVjdG9yIiwicHJvcHMiLCJraW5kIiwiX2RlZmluZVByb3BlcnR5MiIsImRlZmF1bHQiLCJ1bmRlZmluZWQiLCJ1bm1vdW50ZWQiLCJzZXRTdGF0ZSIsInBoYXNlIiwiUmlnaHRQYW5lbFN0b3JlIiwiaW5zdGFuY2UiLCJjdXJyZW50Q2FyZCIsInJwcyIsInN0YXRlIiwiaGVhZGVyS2luZCIsInRocmVhZE5vdGlmaWNhdGlvbkxldmVsIiwiTm90aWZpY2F0aW9uTGV2ZWwiLCJOb25lIiwiZ2xvYmFsTm90aWZpY2F0aW9uTGV2ZWwiLCJub3RpZmljYXRpb25zRW5hYmxlZCIsIlNldHRpbmdzU3RvcmUiLCJnZXRWYWx1ZSIsIndhdGNoZXJSZWYiLCJ3YXRjaFNldHRpbmciLCJ2YWx1ZSIsImNvbXBvbmVudERpZE1vdW50Iiwib24iLCJVUERBVEVfRVZFTlQiLCJvblJpZ2h0UGFuZWxTdG9yZVVwZGF0ZSIsImNvbXBvbmVudFdpbGxVbm1vdW50Iiwib2ZmIiwiZGlzcGF0Y2hlclJlZiIsImRpcyIsInVucmVnaXN0ZXIiLCJ1bndhdGNoU2V0dGluZyIsImlzUGhhc2UiLCJwaGFzZXMiLCJpc09wZW4iLCJBcnJheSIsImlzQXJyYXkiLCJpbmNsdWRlcyIsInJlbmRlciIsInJlbmRlckJ1dHRvbnMiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy92aWV3cy9yaWdodF9wYW5lbC9IZWFkZXJCdXR0b25zLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMjQgTmV3IFZlY3RvciBMdGQuXG5Db3B5cmlnaHQgMjAxOSBUaGUgTWF0cml4Lm9yZyBGb3VuZGF0aW9uIEMuSS5DLlxuQ29weXJpZ2h0IDIwMTggTmV3IFZlY3RvciBMdGRcbkNvcHlyaWdodCAyMDE3IFZlY3RvciBDcmVhdGlvbnMgTHRkXG5Db3B5cmlnaHQgMjAxNyBOZXcgVmVjdG9yIEx0ZFxuQ29weXJpZ2h0IDIwMTUsIDIwMTYgT3Blbk1hcmtldCBMdGRcblxuU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFHUEwtMy4wLW9ubHkgT1IgR1BMLTMuMC1vbmx5XG5QbGVhc2Ugc2VlIExJQ0VOU0UgZmlsZXMgaW4gdGhlIHJlcG9zaXRvcnkgcm9vdCBmb3IgZnVsbCBkZXRhaWxzLlxuKi9cblxuaW1wb3J0IFJlYWN0IGZyb20gXCJyZWFjdFwiO1xuXG5pbXBvcnQgZGlzIGZyb20gXCIuLi8uLi8uLi9kaXNwYXRjaGVyL2Rpc3BhdGNoZXJcIjtcbmltcG9ydCBSaWdodFBhbmVsU3RvcmUgZnJvbSBcIi4uLy4uLy4uL3N0b3Jlcy9yaWdodC1wYW5lbC9SaWdodFBhbmVsU3RvcmVcIjtcbmltcG9ydCB7IFJpZ2h0UGFuZWxQaGFzZXMgfSBmcm9tIFwiLi4vLi4vLi4vc3RvcmVzL3JpZ2h0LXBhbmVsL1JpZ2h0UGFuZWxTdG9yZVBoYXNlc1wiO1xuaW1wb3J0IHsgVVBEQVRFX0VWRU5UIH0gZnJvbSBcIi4uLy4uLy4uL3N0b3Jlcy9Bc3luY1N0b3JlXCI7XG5pbXBvcnQgeyBOb3RpZmljYXRpb25MZXZlbCB9IGZyb20gXCIuLi8uLi8uLi9zdG9yZXMvbm90aWZpY2F0aW9ucy9Ob3RpZmljYXRpb25MZXZlbFwiO1xuaW1wb3J0IFNldHRpbmdzU3RvcmUgZnJvbSBcIi4uLy4uLy4uL3NldHRpbmdzL1NldHRpbmdzU3RvcmVcIjtcblxuZXhwb3J0IGVudW0gSGVhZGVyS2luZCB7XG4gICAgUm9vbSA9IFwicm9vbVwiLFxufVxuXG5pbnRlcmZhY2UgSVN0YXRlIHtcbiAgICBoZWFkZXJLaW5kOiBIZWFkZXJLaW5kO1xuICAgIHBoYXNlOiBSaWdodFBhbmVsUGhhc2VzIHwgbnVsbDtcbiAgICB0aHJlYWROb3RpZmljYXRpb25MZXZlbDogTm90aWZpY2F0aW9uTGV2ZWw7XG4gICAgZ2xvYmFsTm90aWZpY2F0aW9uTGV2ZWw6IE5vdGlmaWNhdGlvbkxldmVsO1xuICAgIG5vdGlmaWNhdGlvbnNFbmFibGVkPzogYm9vbGVhbjtcbn1cblxuaW50ZXJmYWNlIElQcm9wcyB7fVxuXG5leHBvcnQgZGVmYXVsdCBhYnN0cmFjdCBjbGFzcyBIZWFkZXJCdXR0b25zPFAgPSB7fT4gZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQ8SVByb3BzICYgUCwgSVN0YXRlPiB7XG4gICAgcHJpdmF0ZSB1bm1vdW50ZWQgPSBmYWxzZTtcbiAgICBwcml2YXRlIGRpc3BhdGNoZXJSZWY/OiBzdHJpbmcgPSB1bmRlZmluZWQ7XG4gICAgcHJpdmF0ZSByZWFkb25seSB3YXRjaGVyUmVmOiBzdHJpbmc7XG5cbiAgICBwdWJsaWMgY29uc3RydWN0b3IocHJvcHM6IElQcm9wcyAmIFAsIGtpbmQ6IEhlYWRlcktpbmQpIHtcbiAgICAgICAgc3VwZXIocHJvcHMpO1xuXG4gICAgICAgIGNvbnN0IHJwcyA9IFJpZ2h0UGFuZWxTdG9yZS5pbnN0YW5jZTtcbiAgICAgICAgdGhpcy5zdGF0ZSA9IHtcbiAgICAgICAgICAgIGhlYWRlcktpbmQ6IGtpbmQsXG4gICAgICAgICAgICBwaGFzZTogcnBzLmN1cnJlbnRDYXJkLnBoYXNlLFxuICAgICAgICAgICAgdGhyZWFkTm90aWZpY2F0aW9uTGV2ZWw6IE5vdGlmaWNhdGlvbkxldmVsLk5vbmUsXG4gICAgICAgICAgICBnbG9iYWxOb3RpZmljYXRpb25MZXZlbDogTm90aWZpY2F0aW9uTGV2ZWwuTm9uZSxcbiAgICAgICAgICAgIG5vdGlmaWNhdGlvbnNFbmFibGVkOiBTZXR0aW5nc1N0b3JlLmdldFZhbHVlKFwiZmVhdHVyZV9ub3RpZmljYXRpb25zXCIpLFxuICAgICAgICB9O1xuICAgICAgICB0aGlzLndhdGNoZXJSZWYgPSBTZXR0aW5nc1N0b3JlLndhdGNoU2V0dGluZyhcImZlYXR1cmVfbm90aWZpY2F0aW9uc1wiLCBudWxsLCAoLi4uWywgLCAsIHZhbHVlXSkgPT5cbiAgICAgICAgICAgIHRoaXMuc2V0U3RhdGUoeyBub3RpZmljYXRpb25zRW5hYmxlZDogdmFsdWUgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcHVibGljIGNvbXBvbmVudERpZE1vdW50KCk6IHZvaWQge1xuICAgICAgICBSaWdodFBhbmVsU3RvcmUuaW5zdGFuY2Uub24oVVBEQVRFX0VWRU5ULCB0aGlzLm9uUmlnaHRQYW5lbFN0b3JlVXBkYXRlKTtcbiAgICB9XG5cbiAgICBwdWJsaWMgY29tcG9uZW50V2lsbFVubW91bnQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudW5tb3VudGVkID0gdHJ1ZTtcbiAgICAgICAgUmlnaHRQYW5lbFN0b3JlLmluc3RhbmNlLm9mZihVUERBVEVfRVZFTlQsIHRoaXMub25SaWdodFBhbmVsU3RvcmVVcGRhdGUpO1xuICAgICAgICBpZiAodGhpcy5kaXNwYXRjaGVyUmVmKSBkaXMudW5yZWdpc3Rlcih0aGlzLmRpc3BhdGNoZXJSZWYpO1xuICAgICAgICBpZiAodGhpcy53YXRjaGVyUmVmKSBTZXR0aW5nc1N0b3JlLnVud2F0Y2hTZXR0aW5nKHRoaXMud2F0Y2hlclJlZik7XG4gICAgfVxuXG4gICAgcHVibGljIGlzUGhhc2UocGhhc2VzOiBzdHJpbmcgfCBzdHJpbmdbXSk6IGJvb2xlYW4ge1xuICAgICAgICBpZiAoIVJpZ2h0UGFuZWxTdG9yZS5pbnN0YW5jZS5pc09wZW4pIHJldHVybiBmYWxzZTtcbiAgICAgICAgaWYgKEFycmF5LmlzQXJyYXkocGhhc2VzKSkge1xuICAgICAgICAgICAgcmV0dXJuICEhdGhpcy5zdGF0ZS5waGFzZSAmJiBwaGFzZXMuaW5jbHVkZXModGhpcy5zdGF0ZS5waGFzZSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gcGhhc2VzID09PSB0aGlzLnN0YXRlLnBoYXNlO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBvblJpZ2h0UGFuZWxTdG9yZVVwZGF0ZSA9ICgpOiB2b2lkID0+IHtcbiAgICAgICAgaWYgKHRoaXMudW5tb3VudGVkKSByZXR1cm47XG4gICAgICAgIHRoaXMuc2V0U3RhdGUoeyBwaGFzZTogUmlnaHRQYW5lbFN0b3JlLmluc3RhbmNlLmN1cnJlbnRDYXJkLnBoYXNlIH0pO1xuICAgIH07XG5cbiAgICAvLyBYWFg6IE1ha2UgcmVuZGVyQnV0dG9ucyBhIHByb3BcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVuZGVyQnV0dG9ucygpOiBKU1guRWxlbWVudDtcblxuICAgIHB1YmxpYyByZW5kZXIoKTogUmVhY3QuUmVhY3ROb2RlIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucmVuZGVyQnV0dG9ucygpO1xuICAgIH1cbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFZQSxJQUFBQSxNQUFBLEdBQUFDLHNCQUFBLENBQUFDLE9BQUE7QUFFQSxJQUFBQyxXQUFBLEdBQUFGLHNCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBRSxnQkFBQSxHQUFBSCxzQkFBQSxDQUFBQyxPQUFBO0FBRUEsSUFBQUcsV0FBQSxHQUFBSCxPQUFBO0FBQ0EsSUFBQUksa0JBQUEsR0FBQUosT0FBQTtBQUNBLElBQUFLLGNBQUEsR0FBQU4sc0JBQUEsQ0FBQUMsT0FBQTtBQW5CQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBQ0E7QUFDQTtBQUNBO0FBVkEsSUFxQllNLFVBQVUsR0FBQUMsT0FBQSxDQUFBRCxVQUFBLDBCQUFWQSxVQUFVO0VBQVZBLFVBQVU7RUFBQSxPQUFWQSxVQUFVO0FBQUE7QUFjUCxNQUFlRSxhQUFhLFNBQWlCQyxjQUFLLENBQUNDLFNBQVMsQ0FBcUI7RUFLckZDLFdBQVdBLENBQUNDLEtBQWlCLEVBQUVDLElBQWdCLEVBQUU7SUFDcEQsS0FBSyxDQUFDRCxLQUFLLENBQUM7SUFBQyxJQUFBRSxnQkFBQSxDQUFBQyxP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