Compare commits

...

2 Commits

Author SHA1 Message Date
Timo
a00a8d85ac use translated string 2025-07-21 13:01:19 +02:00
Timo
2e182580bd Add toggle to hide empty state in devtools 2025-07-21 12:58:01 +02:00
2 changed files with 9 additions and 3 deletions

View File

@@ -19,6 +19,7 @@ import FilteredList from "./FilteredList";
import Spinner from "../../elements/Spinner";
import SyntaxHighlight from "../../elements/SyntaxHighlight";
import { useAsyncMemo } from "../../../../hooks/useAsyncMemo";
import LabelledToggleSwitch from "../../elements/LabelledToggleSwitch";
export const StateEventEditor: React.FC<IEditorProps> = ({ mxEvent, onBack }) => {
const context = useContext(DevtoolsContext);
@@ -114,6 +115,7 @@ const RoomStateExplorerEventType: React.FC<IEventTypeProps> = ({ eventType, onBa
const [query, setQuery] = useState("");
const [event, setEvent] = useState<MatrixEvent | null>(null);
const [history, setHistory] = useState(false);
const [hideEmptyState, setHideEmptyState] = useState(false);
const events = context.room.currentState.events.get(eventType)!;
@@ -149,10 +151,13 @@ const RoomStateExplorerEventType: React.FC<IEventTypeProps> = ({ eventType, onBa
return (
<BaseTool onBack={onBack}>
<FilteredList query={query} onChange={setQuery}>
{Array.from(events.entries()).map(([stateKey, ev]) => (
<StateEventButton key={stateKey} label={stateKey} onClick={() => setEvent(ev)} />
))}
{Array.from(events.entries())
.filter(([_, ev]) => !hideEmptyState || Object.keys(ev.getContent()).length > 0)
.map(([stateKey, ev]) => (
<StateEventButton key={stateKey} label={stateKey} onClick={() => setEvent(ev)} />
))}
</FilteredList>
<LabelledToggleSwitch label={_t("devtools|hide_empty_content_events")} onChange={setHideEmptyState} value={hideEmptyState} />
</BaseTool>
);
};

View File

@@ -819,6 +819,7 @@
"failed_to_load": "Failed to load.",
"failed_to_save": "Failed to save settings.",
"failed_to_send": "Failed to send event!",
"hide_empty_content_events": "Hide events with empty content",
"id": "ID: ",
"invalid_json": "Doesn't look like valid JSON.",
"level": "Level",