refactor(reactionAdd): add better/more information to starboard embeds #7
|
|
@ -1,8 +1,8 @@
|
|||
import { Client, Discord, On, type ArgsOf } from "discordx";
|
||||
import { type Client, Discord, On, type ArgsOf } from "discordx";
|
||||
import db from "../db";
|
||||
import { starboardMessagesTable, starboardSettingsTable } from "../db/schema";
|
||||
import { eq } from "drizzle-orm";
|
||||
import { Colors, EmbedBuilder, TextChannel } from "discord.js";
|
||||
import { Colors, EmbedBuilder, type TextChannel } from "discord.js";
|
||||
|
||||
@Discord()
|
||||
export class ReactionAdd {
|
||||
|
|
@ -13,10 +13,10 @@ export class ReactionAdd {
|
|||
.from(starboardSettingsTable)
|
||||
.where(eq(starboardSettingsTable.guild, re.message.guildId!));
|
||||
if (
|
||||
re.count == settings[0].threshold &&
|
||||
re.emoji.name == "⭐" &&
|
||||
re.count === settings[0].threshold &&
|
||||
re.emoji.name === "⭐" &&
|
||||
re.message.channelId !== settings[0].channel &&
|
||||
settings[0].enabled == 1
|
||||
settings[0].enabled === 1
|
||||
) {
|
||||
await db
|
||||
.insert(starboardMessagesTable)
|
||||
|
|
@ -25,8 +25,19 @@ export class ReactionAdd {
|
|||
.get(re.message.guildId!)!
|
||||
.members.cache.get(re.message.author!.id);
|
||||
const embed = new EmbedBuilder()
|
||||
.setAuthor({
|
||||
name: author?.displayName!,
|
||||
iconURL: author?.displayAvatarURL(),
|
||||
})
|
||||
.setTitle(`New message from ${author?.displayName}`)
|
||||
.setDescription(re.message.content)
|
||||
.setURL(re.message.url)
|
||||
// Sapphire returns ExpectedValidationError & ExpectedConstraintError
|
||||
// without specifying null for whatever reason
|
||||
// Even though .content is already typed as "string | null"
|
||||
.setDescription(re.message.content || null)
|
||||
.setImage(re.message.attachments.first()?.url || null)
|
||||
.setFooter({ text: "\u{00002b50}" })
|
||||
.setTimestamp(re.message.createdAt)
|
||||
.setColor(Colors.Yellow);
|
||||
|
||||
const channel = client.channels.cache.get(
|
||||
|
|
|
|||
Loading…
Reference in New Issue