matrix-moderation-widget

A widget for moderating with mjolnir. Highly WIP. Use at your own risk!
git clone git://archive.git.mtrnord.blog/MTRNord/matrix-moderation-widget.git
Log | Files | Refs | README | LICENSE

commit 533d77e774a3e7aca5cc853223b7b651ad92d795
parent 1dd79388f57b11eeefe9bf57619a6655f98faa71
Author: MTRNord <mtrnord1@gmail.com>
Date:   Thu,  3 Mar 2022 17:12:02 +0100

Fix types

Diffstat:
Msrc/components/Banlist.tsx | 7++-----
Msrc/components/forms/BanForm.tsx | 3+--
Msrc/windowExt.ts | 3++-
3 files changed, 5 insertions(+), 8 deletions(-)

diff --git a/src/components/Banlist.tsx b/src/components/Banlist.tsx @@ -56,17 +56,14 @@ class BanList extends PureComponent<Props, State> { this.setState({ user_rules: user_rules_all.filter(rules => { if (banlist_codes.length > 0) { - return banlist_codes.some(banlist_codes_event => { - console.log("type:", typeof banlist_codes_event.content?.banlists); - return banlist_codes_event.content?.banlists.has(aliases.find(aliases_event => aliases_event.room_id === rules.room_id)?.content?.alias ?? "") || banlist_codes_event.content?.banlists.has(rules.room_id); - }); + return banlist_codes.some(banlist_codes_event => ((aliases.find(aliases_event => aliases_event.room_id === rules.room_id)?.content?.alias ?? "") in (banlist_codes_event.content?.banlists ?? {})) || (rules.room_id in (banlist_codes_event.content?.banlists ?? {}))); } else { return true; } }), server_rules: server_rules_all.filter(rules => { if (banlist_codes.length > 0) { - return banlist_codes.some(banlist_codes_event => banlist_codes_event.content?.banlists.has(aliases.find(aliases_event => aliases_event.room_id === rules.room_id)?.content?.alias ?? "") || banlist_codes_event.content?.banlists.has(rules.room_id)); + return banlist_codes.some(banlist_codes_event => ((aliases.find(aliases_event => aliases_event.room_id === rules.room_id)?.content?.alias ?? "") in (banlist_codes_event.content?.banlists ?? {})) || (rules.room_id in (banlist_codes_event.content?.banlists ?? {}))); } else { return true; } diff --git a/src/components/forms/BanForm.tsx b/src/components/forms/BanForm.tsx @@ -49,7 +49,6 @@ class BanForm extends PureComponent<Props, State> { const user_rules_alt = await window.widget_api.readStateEvents(M_POLICY_RULE_USER_ALT, 250_000_000_000, undefined, ["*"]) as UserRuleEvent[]; const server_rules_alt = await window.widget_api.readStateEvents(M_POLICY_RULE_SERVER_ALT, 250_000_000_000, undefined, ["*"]) as ServerRuleEvent[]; const banlist_codes = await window.widget_api.readStateEvents(DEV_NORDGEDANKEN_MJOLNIR_BANLISTS, 250_000_000_000, undefined, [this.state.roomId ?? "*"]) as MJjolnirBanlists[]; - console.log("banlist_codes:", banlist_codes); const user_rules_all = [...user_rules, ...user_rules_old, ...user_rules_alt]; const server_rules_all = [...server_rules, ...server_rules_old, ...server_rules_alt]; const listrooms = [...new Set([...user_rules_all.map(element => element.room_id), ...server_rules_all.map(element => element.room_id)])]; @@ -60,7 +59,7 @@ class BanForm extends PureComponent<Props, State> { for (const event of aliases) { let result_known = true; if (banlist_codes.length > 0) { - if (banlist_codes.some(known_lists_event => known_lists_event.content?.banlists.has(event.room_id) || known_lists_event.content?.banlists.has(event.content?.alias ?? ""))) { + if (banlist_codes.some(known_lists_event => (event.room_id in (known_lists_event.content?.banlists ?? {})) || ((event.content?.alias ?? "") in (known_lists_event.content?.banlists ?? {})))) { result_known = true; } else { result_known = false; diff --git a/src/windowExt.ts b/src/windowExt.ts @@ -80,6 +80,7 @@ export type MJjolnirBanlists = { event_id: string; room_id: string; content?: { - banlists: Map<string, string>; + banlists: + { [key: string]: string; }; }; }; \ No newline at end of file