From 1b9ea1f413639b4f1d96de849edcb47b0b5b2434 Mon Sep 17 00:00:00 2001 From: Sqaaakoi Date: Wed, 4 Sep 2024 05:38:20 +1200 Subject: [PATCH] ShowTimeoutDetails: Questionable refactor --- .../showTimeoutDetails/TimeoutReasonStore.ts | 2 +- .../components/TimeoutDetailsPopout.tsx | 62 +++++++++++-------- .../components/TimeoutDetailsRow.tsx | 26 ++++++++ 3 files changed, 62 insertions(+), 28 deletions(-) create mode 100644 src/plugins/showTimeoutDetails/components/TimeoutDetailsRow.tsx diff --git a/src/plugins/showTimeoutDetails/TimeoutReasonStore.ts b/src/plugins/showTimeoutDetails/TimeoutReasonStore.ts index 0741789a5..283b976ef 100644 --- a/src/plugins/showTimeoutDetails/TimeoutReasonStore.ts +++ b/src/plugins/showTimeoutDetails/TimeoutReasonStore.ts @@ -86,7 +86,7 @@ export const TimeoutReasonStore = proxyLazy(() => { reason: entry.reason, moderator: isAutomod ? undefined : entry.user_id, automod: isAutomod, - automodRuleName: isAutomod ? entry?.options.auto_moderation_rule_name : undefined, + automodRuleName: isAutomod ? entry?.options?.auto_moderation_rule_name : undefined, automodChannelId: isAutomod ? entry?.options?.channel_id : undefined, expires: member?.communicationDisabledUntil, loading: false diff --git a/src/plugins/showTimeoutDetails/components/TimeoutDetailsPopout.tsx b/src/plugins/showTimeoutDetails/components/TimeoutDetailsPopout.tsx index 9a2fbb86b..4067eebce 100644 --- a/src/plugins/showTimeoutDetails/components/TimeoutDetailsPopout.tsx +++ b/src/plugins/showTimeoutDetails/components/TimeoutDetailsPopout.tsx @@ -7,14 +7,14 @@ import { SafetyIcon } from "@components/Icons"; import { classes, Margins } from "@utils/index"; import { findByPropsLazy, findComponentByCodeLazy } from "@webpack"; -import { Button, Dialog, GuildMemberStore, GuildStore, i18n, Parser, PermissionsBits, PermissionStore, Text, Tooltip, UserStore, useState, useStateFromStores } from "@webpack/common"; +import { Button, Dialog, GuildMemberStore, GuildStore, i18n, Parser, PermissionsBits, PermissionStore, Text, UserStore, useState, useStateFromStores } from "@webpack/common"; import { Message } from "discord-types/general"; import { CountDown } from ".."; import { useTimeoutReason } from "../TimeoutReasonStore"; +import TimeoutDetailsRow from "./TimeoutDetailsRow"; const PopoutClasses = findByPropsLazy("container", "scroller", "list"); -const rowClasses = findByPropsLazy("row", "rowIcon", "rowGuildName"); const TimeoutIcon = findComponentByCodeLazy("M12 23c.08 0 .14-.08.11-.16a2.88 2.88 0 0 1 .29-2.31l2.2-3.85"); const ChannelIcon = findComponentByCodeLazy("h4.97l-.8 4.84a1 1 0 0 0 1.97.32l.86-5.16H20a1"); @@ -42,40 +42,48 @@ export default function TimeoutDetailsPopout({ closePopout, guildId, userId, mes Timeout details for {user.username}
-
- - {p => } - + + -
- {(reason.moderator || reason.automod) &&
- - {p => } - + + + {reason.automod ? i18n.Messages.GUILD_SETTINGS_AUTOMOD_TITLE : parse(`<@${reason.moderator}>`)} -
} - {(reason.automodChannelId) &&
- - {p => } - + + + {parse(`<#${reason.automodChannelId}>`)} -
} - {(reason.automodRuleName) &&
- - {p => } - + + + {reason.automodRuleName} -
} - {(reason.reason) &&
- - {p => } - + + + {reason.reason} -
} + + {hasModerationPermission &&