forked from cosmic/scythe
Compare commits
2 Commits
| Author | SHA1 | Date |
|---|---|---|
|
|
4d57b25bbb | |
|
|
303aba80b1 |
|
|
@ -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 db from "../db";
|
||||||
import { starboardMessagesTable, starboardSettingsTable } from "../db/schema";
|
import { starboardMessagesTable, starboardSettingsTable } from "../db/schema";
|
||||||
import { eq } from "drizzle-orm";
|
import { eq } from "drizzle-orm";
|
||||||
import { Colors, EmbedBuilder, TextChannel } from "discord.js";
|
import { Colors, EmbedBuilder, type TextChannel } from "discord.js";
|
||||||
|
|
||||||
@Discord()
|
@Discord()
|
||||||
export class ReactionAdd {
|
export class ReactionAdd {
|
||||||
|
|
@ -13,10 +13,10 @@ export class ReactionAdd {
|
||||||
.from(starboardSettingsTable)
|
.from(starboardSettingsTable)
|
||||||
.where(eq(starboardSettingsTable.guild, re.message.guildId!));
|
.where(eq(starboardSettingsTable.guild, re.message.guildId!));
|
||||||
if (
|
if (
|
||||||
re.count == settings[0].threshold &&
|
re.count === settings[0].threshold &&
|
||||||
re.emoji.name == "⭐" &&
|
re.emoji.name === "⭐" &&
|
||||||
re.message.channelId !== settings[0].channel &&
|
re.message.channelId !== settings[0].channel &&
|
||||||
settings[0].enabled == 1
|
settings[0].enabled === 1
|
||||||
) {
|
) {
|
||||||
await db
|
await db
|
||||||
.insert(starboardMessagesTable)
|
.insert(starboardMessagesTable)
|
||||||
|
|
@ -25,8 +25,19 @@ export class ReactionAdd {
|
||||||
.get(re.message.guildId!)!
|
.get(re.message.guildId!)!
|
||||||
.members.cache.get(re.message.author!.id);
|
.members.cache.get(re.message.author!.id);
|
||||||
const embed = new EmbedBuilder()
|
const embed = new EmbedBuilder()
|
||||||
|
.setAuthor({
|
||||||
|
name: author?.displayName!,
|
||||||
|
iconURL: author?.displayAvatarURL(),
|
||||||
|
})
|
||||||
.setTitle(`New message from ${author?.displayName}`)
|
.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);
|
.setColor(Colors.Yellow);
|
||||||
|
|
||||||
const channel = client.channels.cache.get(
|
const channel = client.channels.cache.get(
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue