matrix-react-sdk
Version:
SDK for matrix.org using React
107 lines (84 loc) • 11.1 kB
JavaScript
;
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/RightPanelStore"));
var _actions = require("../../../dispatcher/actions");
var _replaceableComponent = require("../../../utils/replaceableComponent");
var _dec, _class, _temp;
let HeaderKind;
exports.HeaderKind = HeaderKind;
(function (HeaderKind) {
HeaderKind["Room"] = "room";
HeaderKind["Group"] = "group";
})(HeaderKind || (exports.HeaderKind = HeaderKind = {}));
let HeaderButtons = (_dec = (0, _replaceableComponent.replaceableComponent)("views.right_panel.HeaderButtons"), _dec(_class = (_temp = class HeaderButtons extends _react.default.Component
/*:: <IProps, IState>*/
{
constructor(props
/*: IProps*/
, kind
/*: HeaderKind*/
) {
super(props);
(0, _defineProperty2.default)(this, "storeToken", void 0);
(0, _defineProperty2.default)(this, "dispatcherRef", void 0);
const rps = _RightPanelStore.default.getSharedInstance();
this.state = {
headerKind: kind,
phase: kind === HeaderKind.Room ? rps.visibleRoomPanelPhase : rps.visibleGroupPanelPhase
};
}
componentDidMount() {
this.storeToken = _RightPanelStore.default.getSharedInstance().addListener(this.onRightPanelUpdate.bind(this));
this.dispatcherRef = _dispatcher.default.register(this.onAction.bind(this)); // used by subclasses
}
componentWillUnmount() {
if (this.storeToken) this.storeToken.remove();
if (this.dispatcherRef) _dispatcher.default.unregister(this.dispatcherRef);
}
setPhase(phase
/*: RightPanelPhases*/
, extras
/*: Partial<SetRightPanelPhaseRefireParams>*/
) {
_dispatcher.default.dispatch({
action: _actions.Action.SetRightPanelPhase,
phase: phase,
refireParams: extras
});
}
isPhase(phases
/*: string | string[]*/
) {
if (Array.isArray(phases)) {
return phases.includes(this.state.phase);
} else {
return phases === this.state.phase;
}
}
onRightPanelUpdate() {
const rps = _RightPanelStore.default.getSharedInstance();
if (this.state.headerKind === HeaderKind.Room) {
this.setState({
phase: rps.visibleRoomPanelPhase
});
} else if (this.state.headerKind === HeaderKind.Group) {
this.setState({
phase: rps.visibleGroupPanelPhase
});
}
} // XXX: Make renderButtons a prop
render() {
return /*#__PURE__*/_react.default.createElement("div", {
className: "mx_HeaderButtons"
}, this.renderButtons());
}
}, _temp)) || _class);
exports.default = HeaderButtons;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9jb21wb25lbnRzL3ZpZXdzL3JpZ2h0X3BhbmVsL0hlYWRlckJ1dHRvbnMudHN4Il0sIm5hbWVzIjpbIkhlYWRlcktpbmQiLCJIZWFkZXJCdXR0b25zIiwiUmVhY3QiLCJDb21wb25lbnQiLCJjb25zdHJ1Y3RvciIsInByb3BzIiwia2luZCIsInJwcyIsIlJpZ2h0UGFuZWxTdG9yZSIsImdldFNoYXJlZEluc3RhbmNlIiwic3RhdGUiLCJoZWFkZXJLaW5kIiwicGhhc2UiLCJSb29tIiwidmlzaWJsZVJvb21QYW5lbFBoYXNlIiwidmlzaWJsZUdyb3VwUGFuZWxQaGFzZSIsImNvbXBvbmVudERpZE1vdW50Iiwic3RvcmVUb2tlbiIsImFkZExpc3RlbmVyIiwib25SaWdodFBhbmVsVXBkYXRlIiwiYmluZCIsImRpc3BhdGNoZXJSZWYiLCJkaXMiLCJyZWdpc3RlciIsIm9uQWN0aW9uIiwiY29tcG9uZW50V2lsbFVubW91bnQiLCJyZW1vdmUiLCJ1bnJlZ2lzdGVyIiwic2V0UGhhc2UiLCJleHRyYXMiLCJkaXNwYXRjaCIsImFjdGlvbiIsIkFjdGlvbiIsIlNldFJpZ2h0UGFuZWxQaGFzZSIsInJlZmlyZVBhcmFtcyIsImlzUGhhc2UiLCJwaGFzZXMiLCJBcnJheSIsImlzQXJyYXkiLCJpbmNsdWRlcyIsInNldFN0YXRlIiwiR3JvdXAiLCJyZW5kZXIiLCJyZW5kZXJCdXR0b25zIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQW9CQTs7QUFDQTs7QUFDQTs7QUFFQTs7QUFNQTs7OztJQUVZQSxVOzs7V0FBQUEsVTtBQUFBQSxFQUFBQSxVO0FBQUFBLEVBQUFBLFU7R0FBQUEsVSwwQkFBQUEsVTs7SUFha0JDLGEsV0FEN0IsZ0RBQXFCLGlDQUFyQixDLHlCQUFELE1BQzhCQSxhQUQ5QixTQUNvREMsZUFBTUM7QUFEMUQ7QUFDb0Y7QUFJaEZDLEVBQUFBLFdBQVcsQ0FBQ0M7QUFBRDtBQUFBLElBQWdCQztBQUFoQjtBQUFBLElBQWtDO0FBQ3pDLFVBQU1ELEtBQU47QUFEeUM7QUFBQTs7QUFHekMsVUFBTUUsR0FBRyxHQUFHQyx5QkFBZ0JDLGlCQUFoQixFQUFaOztBQUNBLFNBQUtDLEtBQUwsR0FBYTtBQUNUQyxNQUFBQSxVQUFVLEVBQUVMLElBREg7QUFFVE0sTUFBQUEsS0FBSyxFQUFFTixJQUFJLEtBQUtOLFVBQVUsQ0FBQ2EsSUFBcEIsR0FBMkJOLEdBQUcsQ0FBQ08scUJBQS9CLEdBQXVEUCxHQUFHLENBQUNRO0FBRnpELEtBQWI7QUFJSDs7QUFFTUMsRUFBQUEsaUJBQVAsR0FBMkI7QUFDdkIsU0FBS0MsVUFBTCxHQUFrQlQseUJBQWdCQyxpQkFBaEIsR0FBb0NTLFdBQXBDLENBQWdELEtBQUtDLGtCQUFMLENBQXdCQyxJQUF4QixDQUE2QixJQUE3QixDQUFoRCxDQUFsQjtBQUNBLFNBQUtDLGFBQUwsR0FBcUJDLG9CQUFJQyxRQUFKLENBQWEsS0FBS0MsUUFBTCxDQUFjSixJQUFkLENBQW1CLElBQW5CLENBQWIsQ0FBckIsQ0FGdUIsQ0FFc0M7QUFDaEU7O0FBRU1LLEVBQUFBLG9CQUFQLEdBQThCO0FBQzFCLFFBQUksS0FBS1IsVUFBVCxFQUFxQixLQUFLQSxVQUFMLENBQWdCUyxNQUFoQjtBQUNyQixRQUFJLEtBQUtMLGFBQVQsRUFBd0JDLG9CQUFJSyxVQUFKLENBQWUsS0FBS04sYUFBcEI7QUFDM0I7O0FBSU1PLEVBQUFBLFFBQVAsQ0FBZ0JoQjtBQUFoQjtBQUFBLElBQXlDaUI7QUFBekM7QUFBQSxJQUEyRjtBQUN2RlAsd0JBQUlRLFFBQUosQ0FBd0M7QUFDcENDLE1BQUFBLE1BQU0sRUFBRUMsZ0JBQU9DLGtCQURxQjtBQUVwQ3JCLE1BQUFBLEtBQUssRUFBRUEsS0FGNkI7QUFHcENzQixNQUFBQSxZQUFZLEVBQUVMO0FBSHNCLEtBQXhDO0FBS0g7O0FBRU1NLEVBQUFBLE9BQVAsQ0FBZUM7QUFBZjtBQUFBLElBQTBDO0FBQ3RDLFFBQUlDLEtBQUssQ0FBQ0MsT0FBTixDQUFjRixNQUFkLENBQUosRUFBMkI7QUFDdkIsYUFBT0EsTUFBTSxDQUFDRyxRQUFQLENBQWdCLEtBQUs3QixLQUFMLENBQVdFLEtBQTNCLENBQVA7QUFDSCxLQUZELE1BRU87QUFDSCxhQUFPd0IsTUFBTSxLQUFLLEtBQUsxQixLQUFMLENBQVdFLEtBQTdCO0FBQ0g7QUFDSjs7QUFFT08sRUFBQUEsa0JBQVIsR0FBNkI7QUFDekIsVUFBTVosR0FBRyxHQUFHQyx5QkFBZ0JDLGlCQUFoQixFQUFaOztBQUNBLFFBQUksS0FBS0MsS0FBTCxDQUFXQyxVQUFYLEtBQTBCWCxVQUFVLENBQUNhLElBQXpDLEVBQStDO0FBQzNDLFdBQUsyQixRQUFMLENBQWM7QUFBQzVCLFFBQUFBLEtBQUssRUFBRUwsR0FBRyxDQUFDTztBQUFaLE9BQWQ7QUFDSCxLQUZELE1BRU8sSUFBSSxLQUFLSixLQUFMLENBQVdDLFVBQVgsS0FBMEJYLFVBQVUsQ0FBQ3lDLEtBQXpDLEVBQWdEO0FBQ25ELFdBQUtELFFBQUwsQ0FBYztBQUFDNUIsUUFBQUEsS0FBSyxFQUFFTCxHQUFHLENBQUNRO0FBQVosT0FBZDtBQUNIO0FBQ0osR0FqRCtFLENBbURoRjs7O0FBR08yQixFQUFBQSxNQUFQLEdBQWdCO0FBQ1osd0JBQU87QUFBSyxNQUFBLFNBQVMsRUFBQztBQUFmLE9BQ0YsS0FBS0MsYUFBTCxFQURFLENBQVA7QUFHSDs7QUExRCtFLEMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuQ29weXJpZ2h0IDIwMTUsIDIwMTYgT3Blbk1hcmtldCBMdGRcbkNvcHlyaWdodCAyMDE3IFZlY3RvciBDcmVhdGlvbnMgTHRkXG5Db3B5cmlnaHQgMjAxNyBOZXcgVmVjdG9yIEx0ZFxuQ29weXJpZ2h0IDIwMTggTmV3IFZlY3RvciBMdGRcbkNvcHlyaWdodCAyMDE5IFRoZSBNYXRyaXgub3JnIEZvdW5kYXRpb24gQy5JLkMuXG5cbkxpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG55b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG5Zb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcblxuICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuXG5Vbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG5kaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG5XSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cblNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbmxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuKi9cblxuaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCBkaXMgZnJvbSAnLi4vLi4vLi4vZGlzcGF0Y2hlci9kaXNwYXRjaGVyJztcbmltcG9ydCBSaWdodFBhbmVsU3RvcmUgZnJvbSBcIi4uLy4uLy4uL3N0b3Jlcy9SaWdodFBhbmVsU3RvcmVcIjtcbmltcG9ydCB7UmlnaHRQYW5lbFBoYXNlc30gZnJvbSBcIi4uLy4uLy4uL3N0b3Jlcy9SaWdodFBhbmVsU3RvcmVQaGFzZXNcIjtcbmltcG9ydCB7QWN0aW9ufSBmcm9tICcuLi8uLi8uLi9kaXNwYXRjaGVyL2FjdGlvbnMnO1xuaW1wb3J0IHtcbiAgICBTZXRSaWdodFBhbmVsUGhhc2VQYXlsb2FkLFxuICAgIFNldFJpZ2h0UGFuZWxQaGFzZVJlZmlyZVBhcmFtcyxcbn0gZnJvbSAnLi4vLi4vLi4vZGlzcGF0Y2hlci9wYXlsb2Fkcy9TZXRSaWdodFBhbmVsUGhhc2VQYXlsb2FkJztcbmltcG9ydCB7RXZlbnRTdWJzY3JpcHRpb259IGZyb20gXCJmYmVtaXR0ZXJcIjtcbmltcG9ydCB7cmVwbGFjZWFibGVDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi91dGlscy9yZXBsYWNlYWJsZUNvbXBvbmVudFwiO1xuXG5leHBvcnQgZW51bSBIZWFkZXJLaW5kIHtcbiAgUm9vbSA9IFwicm9vbVwiLFxuICBHcm91cCA9IFwiZ3JvdXBcIixcbn1cblxuaW50ZXJmYWNlIElTdGF0ZSB7XG4gICAgaGVhZGVyS2luZDogSGVhZGVyS2luZDtcbiAgICBwaGFzZTogUmlnaHRQYW5lbFBoYXNlcztcbn1cblxuaW50ZXJmYWNlIElQcm9wcyB7fVxuXG5AcmVwbGFjZWFibGVDb21wb25lbnQoXCJ2aWV3cy5yaWdodF9wYW5lbC5IZWFkZXJCdXR0b25zXCIpXG5leHBvcnQgZGVmYXVsdCBhYnN0cmFjdCBjbGFzcyBIZWFkZXJCdXR0b25zIGV4dGVuZHMgUmVhY3QuQ29tcG9uZW50PElQcm9wcywgSVN0YXRlPiB7XG4gICAgcHJpdmF0ZSBzdG9yZVRva2VuOiBFdmVudFN1YnNjcmlwdGlvbjtcbiAgICBwcml2YXRlIGRpc3BhdGNoZXJSZWY6IHN0cmluZztcblxuICAgIGNvbnN0cnVjdG9yKHByb3BzOiBJUHJvcHMsIGtpbmQ6IEhlYWRlcktpbmQpIHtcbiAgICAgICAgc3VwZXIocHJvcHMpO1xuXG4gICAgICAgIGNvbnN0IHJwcyA9IFJpZ2h0UGFuZWxTdG9yZS5nZXRTaGFyZWRJbnN0YW5jZSgpO1xuICAgICAgICB0aGlzLnN0YXRlID0ge1xuICAgICAgICAgICAgaGVhZGVyS2luZDoga2luZCxcbiAgICAgICAgICAgIHBoYXNlOiBraW5kID09PSBIZWFkZXJLaW5kLlJvb20gPyBycHMudmlzaWJsZVJvb21QYW5lbFBoYXNlIDogcnBzLnZpc2libGVHcm91cFBhbmVsUGhhc2UsXG4gICAgICAgIH07XG4gICAgfVxuXG4gICAgcHVibGljIGNvbXBvbmVudERpZE1vdW50KCkge1xuICAgICAgICB0aGlzLnN0b3JlVG9rZW4gPSBSaWdodFBhbmVsU3RvcmUuZ2V0U2hhcmVkSW5zdGFuY2UoKS5hZGRMaXN0ZW5lcih0aGlzLm9uUmlnaHRQYW5lbFVwZGF0ZS5iaW5kKHRoaXMpKTtcbiAgICAgICAgdGhpcy5kaXNwYXRjaGVyUmVmID0gZGlzLnJlZ2lzdGVyKHRoaXMub25BY3Rpb24uYmluZCh0aGlzKSk7IC8vIHVzZWQgYnkgc3ViY2xhc3Nlc1xuICAgIH1cblxuICAgIHB1YmxpYyBjb21wb25lbnRXaWxsVW5tb3VudCgpIHtcbiAgICAgICAgaWYgKHRoaXMuc3RvcmVUb2tlbikgdGhpcy5zdG9yZVRva2VuLnJlbW92ZSgpO1xuICAgICAgICBpZiAodGhpcy5kaXNwYXRjaGVyUmVmKSBkaXMudW5yZWdpc3Rlcih0aGlzLmRpc3BhdGNoZXJSZWYpO1xuICAgIH1cblxuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBvbkFjdGlvbihwYXlsb2FkKTtcblxuICAgIHB1YmxpYyBzZXRQaGFzZShwaGFzZTogUmlnaHRQYW5lbFBoYXNlcywgZXh0cmFzPzogUGFydGlhbDxTZXRSaWdodFBhbmVsUGhhc2VSZWZpcmVQYXJhbXM+KSB7XG4gICAgICAgIGRpcy5kaXNwYXRjaDxTZXRSaWdodFBhbmVsUGhhc2VQYXlsb2FkPih7XG4gICAgICAgICAgICBhY3Rpb246IEFjdGlvbi5TZXRSaWdodFBhbmVsUGhhc2UsXG4gICAgICAgICAgICBwaGFzZTogcGhhc2UsXG4gICAgICAgICAgICByZWZpcmVQYXJhbXM6IGV4dHJhcyxcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHVibGljIGlzUGhhc2UocGhhc2VzOiBzdHJpbmcgfCBzdHJpbmdbXSkge1xuICAgICAgICBpZiAoQXJyYXkuaXNBcnJheShwaGFzZXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gcGhhc2VzLmluY2x1ZGVzKHRoaXMuc3RhdGUucGhhc2UpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgcmV0dXJuIHBoYXNlcyA9PT0gdGhpcy5zdGF0ZS5waGFzZTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHByaXZhdGUgb25SaWdodFBhbmVsVXBkYXRlKCkge1xuICAgICAgICBjb25zdCBycHMgPSBSaWdodFBhbmVsU3RvcmUuZ2V0U2hhcmVkSW5zdGFuY2UoKTtcbiAgICAgICAgaWYgKHRoaXMuc3RhdGUuaGVhZGVyS2luZCA9PT0gSGVhZGVyS2luZC5Sb29tKSB7XG4gICAgICAgICAgICB0aGlzLnNldFN0YXRlKHtwaGFzZTogcnBzLnZpc2libGVSb29tUGFuZWxQaGFzZX0pO1xuICAgICAgICB9IGVsc2UgaWYgKHRoaXMuc3RhdGUuaGVhZGVyS2luZCA9PT0gSGVhZGVyS2luZC5Hcm91cCkge1xuICAgICAgICAgICAgdGhpcy5zZXRTdGF0ZSh7cGhhc2U6IHJwcy52aXNpYmxlR3JvdXBQYW5lbFBoYXNlfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvLyBYWFg6IE1ha2UgcmVuZGVyQnV0dG9ucyBhIHByb3BcbiAgICBwdWJsaWMgYWJzdHJhY3QgcmVuZGVyQnV0dG9ucygpOiBKU1guRWxlbWVudFtdO1xuXG4gICAgcHVibGljIHJlbmRlcigpIHtcbiAgICAgICAgcmV0dXJuIDxkaXYgY2xhc3NOYW1lPVwibXhfSGVhZGVyQnV0dG9uc1wiPlxuICAgICAgICAgICAge3RoaXMucmVuZGVyQnV0dG9ucygpfVxuICAgICAgICA8L2Rpdj47XG4gICAgfVxufVxuIl19