From 992811f9e480aadeaacec9d0ebe543abfda470b1 Mon Sep 17 00:00:00 2001 From: Cleboost Date: Wed, 25 Mar 2026 19:29:27 +0100 Subject: [PATCH 1/3] feat: enable all intents and logging for message events --- app/src/events/message.ts | 9 +++++++++ packages/runtime/DjsClient.ts | 28 +++++++++++++++++++++++++++- 2 files changed, 36 insertions(+), 1 deletion(-) create mode 100644 app/src/events/message.ts diff --git a/app/src/events/message.ts b/app/src/events/message.ts new file mode 100644 index 0000000..5bce379 --- /dev/null +++ b/app/src/events/message.ts @@ -0,0 +1,9 @@ +import { EventListener } from "@djs-core/runtime"; +import { Events } from "discord.js"; + +export default new EventListener() + .event(Events.MessageCreate) + .run(async (_client, message) => { + if (message.author.bot) return; + console.log(message.content); + }); diff --git a/packages/runtime/DjsClient.ts b/packages/runtime/DjsClient.ts index 50aea0c..4e5985a 100644 --- a/packages/runtime/DjsClient.ts +++ b/packages/runtime/DjsClient.ts @@ -10,6 +10,7 @@ import { type Interaction, type MentionableSelectMenuInteraction, type ModalSubmitInteraction, + Partials, type RoleSelectMenuInteraction, type StringSelectMenuInteraction, type UserSelectMenuInteraction, @@ -56,9 +57,34 @@ export class DjsClient< }: { djsConfig: Config; userConfig?: UserConfig }) { super({ intents: djsConfig.intents ?? [ - IntentsBitField.Flags.MessageContent, + IntentsBitField.Flags.DirectMessageReactions, + IntentsBitField.Flags.DirectMessageTyping, + IntentsBitField.Flags.DirectMessages, + IntentsBitField.Flags.GuildModeration, + IntentsBitField.Flags.GuildExpressions, + IntentsBitField.Flags.GuildIntegrations, + IntentsBitField.Flags.GuildIntegrations, + IntentsBitField.Flags.GuildInvites, IntentsBitField.Flags.GuildMembers, + IntentsBitField.Flags.GuildMessageReactions, + IntentsBitField.Flags.GuildMessageTyping, + IntentsBitField.Flags.GuildMessages, IntentsBitField.Flags.GuildPresences, + IntentsBitField.Flags.GuildScheduledEvents, + IntentsBitField.Flags.GuildScheduledEvents, + IntentsBitField.Flags.GuildVoiceStates, + IntentsBitField.Flags.GuildWebhooks, + IntentsBitField.Flags.Guilds, + IntentsBitField.Flags.MessageContent, + ], + partials: [ + Partials.Channel, + Partials.User, + Partials.Reaction, + Partials.Message, + Partials.GuildMember, + Partials.GuildScheduledEvent, + Partials.ThreadMember, ], }); this.djsConfig = djsConfig; From 063aaa46e0a5c8dabdf46eac186868df2006068f Mon Sep 17 00:00:00 2001 From: Cleboost Date: Wed, 25 Mar 2026 19:43:09 +0100 Subject: [PATCH 2/3] feat: add support for partials in configuration --- packages/runtime/DjsClient.ts | 2 +- packages/utils/types/config.d.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/runtime/DjsClient.ts b/packages/runtime/DjsClient.ts index 4e5985a..f2bd653 100644 --- a/packages/runtime/DjsClient.ts +++ b/packages/runtime/DjsClient.ts @@ -77,7 +77,7 @@ export class DjsClient< IntentsBitField.Flags.Guilds, IntentsBitField.Flags.MessageContent, ], - partials: [ + partials: djsConfig.partials ?? [ Partials.Channel, Partials.User, Partials.Reaction, diff --git a/packages/utils/types/config.d.ts b/packages/utils/types/config.d.ts index 9fb8dde..c1d17dc 100644 --- a/packages/utils/types/config.d.ts +++ b/packages/utils/types/config.d.ts @@ -2,6 +2,7 @@ import type { BitFieldResolvable, GatewayIntentsString, InteractionContextType, + Partials, } from "discord.js"; import type { PluginsConfigMap } from "../../runtime/Plugin"; @@ -10,6 +11,7 @@ export interface Config

{ token: string; servers: string[]; intents?: BitFieldResolvable; + partials?: Partials[]; commands?: { defaultContext?: InteractionContextType[]; }; From 74647b5ae1732dde198b98c96880ada9e2ff7f47 Mon Sep 17 00:00:00 2001 From: Cleboost Date: Wed, 25 Mar 2026 21:15:55 +0100 Subject: [PATCH 3/3] feat: add support for partials in configuration and enable all intents by default in DjsClient --- .changeset/feat-enable-all-intents-and-logging.md | 8 ++++++++ 1 file changed, 8 insertions(+) create mode 100644 .changeset/feat-enable-all-intents-and-logging.md diff --git a/.changeset/feat-enable-all-intents-and-logging.md b/.changeset/feat-enable-all-intents-and-logging.md new file mode 100644 index 0000000..c3623f5 --- /dev/null +++ b/.changeset/feat-enable-all-intents-and-logging.md @@ -0,0 +1,8 @@ +--- +"@djs-core/runtime": minor +--- + +feat: add support for partials in configuration and enable all intents by default in `DjsClient`. +- Add `partials` to the `Config` interface. +- Update `DjsClient` constructor to include more default intents. +- Added default `partials` support in `DjsClient` for partial data handling.