diff --git a/src/components/views/dialogs/DevtoolsDialog.js b/src/components/views/dialogs/DevtoolsDialog.js index b3f9ef4537..26ab71a873 100644 --- a/src/components/views/dialogs/DevtoolsDialog.js +++ b/src/components/views/dialogs/DevtoolsDialog.js @@ -19,7 +19,7 @@ import PropTypes from 'prop-types'; import * as sdk from '../../../index'; import SyntaxHighlight from '../elements/SyntaxHighlight'; import { _t } from '../../../languageHandler'; -import { Room } from "matrix-js-sdk"; +import { Room, MatrixEvent } from "matrix-js-sdk"; import Field from "../elements/Field"; import MatrixClientContext from "../../../contexts/MatrixClientContext"; import {useEventEmitter} from "../../../hooks/useEventEmitter"; @@ -327,6 +327,8 @@ class RoomStateExplorer extends React.PureComponent { static contextType = MatrixClientContext; + roomStateEvents: Map>; + constructor(props) { super(props); @@ -412,19 +414,16 @@ class RoomStateExplorer extends React.PureComponent { if (this.state.eventType === null) { list = { - Array.from(this.roomStateEvents.keys()).map((evType) => { - const stateGroup = this.roomStateEvents.get(evType); - const stateKeys = Array.from(stateGroup.keys()); - + Array.from(this.roomStateEvents.entries()).map(([eventType, allStateKeys]) => { let onClickFn; - if (stateKeys.length === 1 && stateKeys[0] === '') { - onClickFn = this.onViewSourceClick(stateGroup.get(stateKeys[0])); + if (allStateKeys.size() === 1 && allStateKeys.has("")) { + onClickFn = this.onViewSourceClick(allStateKeys.get("")); } else { - onClickFn = this.browseEventType(evType); + onClickFn = this.browseEventType(eventType); } - return ; }) } @@ -434,8 +433,7 @@ class RoomStateExplorer extends React.PureComponent { list = { - Array.from(stateGroup.keys()).map((stateKey) => { - const ev = stateGroup.get(stateKey); + Array.from(stateGroup.entries()).map(([stateKey, ev]) => { return ;