Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 10 additions & 7 deletions packages/discord-bitflag/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,10 +39,13 @@ The Permissions BitField class checks for the Admin permission by default when y

Each bit field class extends the `BitField` class from [bitflag-js](https://www.npmjs.com/package/bitflag-js).

- [Application Flags](https://discord.com/developers/docs/resources/application#application-object-application-flags): `ApplicationFlagsBitField` and `ApplicationFlags`
- [Channel Flags](https://discord.com/developers/docs/resources/channel#channel-object-channel-flags): `ChannelFlagsBitField` and `ChannelFlags`
- [Guild Member Flags](https://discord.com/developers/docs/resources/guild#guild-member-object-guild-member-flags): `GuildMemberFlagsBitField` and `GuildMemberFlags`
- [Intent Flags](https://discord.com/developers/docs/topics/gateway#list-of-intents): `IntentFlagsBitField` and `IntentFlags`
- [Message Flags](https://discord.com/developers/docs/resources/channel#message-object-message-flags): `MessageFlagsBitField` and `MessageFlags`
- [Permission Flags](https://discord.com/developers/docs/topics/permissions#permissions-bitwise-permission-flags): `PermissionsBitField` and `PermissionFlags`
- [User Flags](https://discord.com/developers/docs/resources/user#user-object-user-flags): `UserFlagsBitField` and `UserFlags`
- [Application Flags](https://docs.discord.com/developers/resources/application#application-object-application-flags): `ApplicationFlagsBitField` and `ApplicationFlags`
- [Attachment Flags](https://docs.discord.com/developers/resources/message#attachment-object-attachment-flags): `AttachmentFlagsBitField` and `AttachmentFlags`
- [Channel Flags](https://docs.discord.com/developers/resources/channel#channel-object-channel-flags): `ChannelFlagsBitField` and `ChannelFlags`
- [Guild Member Flags](https://docs.discord.com/developers/resources/guild#guild-member-object-guild-member-flags): `GuildMemberFlagsBitField` and `GuildMemberFlags`
- [Intent Flags](https://docs.discord.com/developers/topics/gateway#list-of-intents): `IntentFlagsBitField` and `IntentFlags`
- [Message Flags](https://docs.discord.com/developers/resources/channel#message-object-message-flags): `MessageFlagsBitField` and `MessageFlags`
- [Permission Flags](https://docs.discord.com/developers/topics/permissions#permissions-bitwise-permission-flags): `PermissionsBitField` and `PermissionFlags`
- [SKU Flags](https://docs.discord.com/developers/resources/sku#sku-object-sku-flags): `SKUFlagsBitField` and `SKUFlags`
- [System Channel Flags](https://docs.discord.com/developers/resources/guild#guild-object-system-channel-flags): `SystemChannelFlagsBitField` and `SystemChannelFlags`
- [User Flags](https://docs.discord.com/developers/resources/user#user-object-user-flags): `UserFlagsBitField` and `UserFlags`
2 changes: 2 additions & 0 deletions packages/discord-bitflag/src/flags/channel.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,6 @@ export const ChannelFlags = Object.freeze({
Pinned: 1n << 1n,
RequireTag: 1n << 4n,
HideMediaDownloadOptions: 1n << 15n,
ChannelObfuscated: 1n << 17n,
IsSpoilerChannel: 1n << 21n,
}) satisfies BitFlags;
6 changes: 6 additions & 0 deletions packages/discord-bitflag/src/flags/guild-member.ts
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,10 @@ export const GuildMemberFlags = Object.freeze({
CompletedOnboarding: 1n << 1n,
BypassesVerification: 1n << 2n,
StartedOnboarding: 1n << 3n,
IsGuest: 1n << 4n,
StartedHomeActions: 1n << 5n,
CompletedHomeActions: 1n << 6n,
AutomatedQuarantinedUsername: 1n << 7n,
DmSettingsUpsellAcknowledged: 1n << 9n,
AutomatedQuarantinedGuildTag: 1n << 10n,
}) satisfies BitFlags;
2 changes: 2 additions & 0 deletions packages/discord-bitflag/src/flags/message.ts
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,6 @@ export const MessageFlags = Object.freeze({
FailedToMentionSomeRolesInThread: 1n << 8n,
SuppressNotifications: 1n << 12n,
IsVoiceMessage: 1n << 13n,
HasSnapshot: 1n << 14n,
IsComponentsV2: 1n << 15n,
}) satisfies BitFlags;
7 changes: 7 additions & 0 deletions packages/discord-bitflag/src/flags/sku.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
import type { BitFlags } from "bitflag-js";

export const SKUFlags = Object.freeze({
Available: 1n << 2n,
GuildSubscription: 1n << 7n,
UserSubscription: 1n << 8n,
}) satisfies BitFlags;
10 changes: 10 additions & 0 deletions packages/discord-bitflag/src/flags/system-channel.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
import type { BitFlags } from "bitflag-js";

export const SystemChannelFlags = Object.freeze({
SuppressJoinNotifications: 1n << 0n,
SuppressPremiumSubscriptions: 1n << 1n,
SuppressGuildReminderNotifications: 1n << 2n,
SuppressJoinNotificationReplies: 1n << 3n,
SuppressROLE_SubscriptionPurchaseNotifications: 1n << 4n,
SuppressROLE_SubscriptionPurchaseNotificationReplies: 1n << 5n,
}) satisfies BitFlags;
6 changes: 6 additions & 0 deletions packages/discord-bitflag/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,11 @@ export { MessageFlagsBitField } from "./wrappers/messages.js";
export { PermissionFlags } from "./flags/permissions.js";
export { PermissionsBitField } from "./wrappers/permissions.js";

export { SKUFlags } from "./flags/sku.js";
export { SKUFlagsBitField } from "./wrappers/skus.js";

export { SystemChannelFlags } from "./flags/system-channel.js";
export { SystemChannelFlagsBitField } from "./wrappers/system-channels.js";

export { UserFlags } from "./flags/user.js";
export { UserFlagsBitField } from "./wrappers/users.js";
6 changes: 6 additions & 0 deletions packages/discord-bitflag/src/wrappers/skus.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import { BitField } from "bitflag-js";
import { SKUFlags } from "../flags/sku.js";

export class SKUFlagsBitField extends BitField {
static ALL = BitField.resolve(Object.values(SKUFlags));
}
6 changes: 6 additions & 0 deletions packages/discord-bitflag/src/wrappers/system-channels.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
import { BitField } from "bitflag-js";
import { SystemChannelFlags } from "../flags/system-channel.js";

export class SystemChannelFlagsBitField extends BitField {
static ALL = BitField.resolve(Object.values(SystemChannelFlags));
}
Loading