Skip to content

Commit 2e18258

Browse files
committed
Add toggle to hide empty state in devtools
1 parent 5b659fe commit 2e18258

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

src/components/views/dialogs/devtools/RoomState.tsx

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ import FilteredList from "./FilteredList";
1919
import Spinner from "../../elements/Spinner";
2020
import SyntaxHighlight from "../../elements/SyntaxHighlight";
2121
import { useAsyncMemo } from "../../../../hooks/useAsyncMemo";
22+
import LabelledToggleSwitch from "../../elements/LabelledToggleSwitch";
2223

2324
export const StateEventEditor: React.FC<IEditorProps> = ({ mxEvent, onBack }) => {
2425
const context = useContext(DevtoolsContext);
@@ -114,6 +115,7 @@ const RoomStateExplorerEventType: React.FC<IEventTypeProps> = ({ eventType, onBa
114115
const [query, setQuery] = useState("");
115116
const [event, setEvent] = useState<MatrixEvent | null>(null);
116117
const [history, setHistory] = useState(false);
118+
const [hideEmptyState, setHideEmptyState] = useState(false);
117119

118120
const events = context.room.currentState.events.get(eventType)!;
119121

@@ -149,10 +151,13 @@ const RoomStateExplorerEventType: React.FC<IEventTypeProps> = ({ eventType, onBa
149151
return (
150152
<BaseTool onBack={onBack}>
151153
<FilteredList query={query} onChange={setQuery}>
152-
{Array.from(events.entries()).map(([stateKey, ev]) => (
153-
<StateEventButton key={stateKey} label={stateKey} onClick={() => setEvent(ev)} />
154-
))}
154+
{Array.from(events.entries())
155+
.filter(([_, ev]) => !hideEmptyState || Object.keys(ev.getContent()).length > 0)
156+
.map(([stateKey, ev]) => (
157+
<StateEventButton key={stateKey} label={stateKey} onClick={() => setEvent(ev)} />
158+
))}
155159
</FilteredList>
160+
<LabelledToggleSwitch label="Hide empty state keys" onChange={setHideEmptyState} value={hideEmptyState} />
156161
</BaseTool>
157162
);
158163
};

0 commit comments

Comments
 (0)