Commit Graph

594 Commits

Author SHA1 Message Date
Fleny
2f06b95f37 feat(types,bot): Add attachment_id to UnfurledMediaItem (#4223)
* feat(types,bot): Add attachment_id to UnfurledMediaItem

* fix ci

---------

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-06-13 18:53:59 +05:30
Fleny
adc10e3b28 feat(types,bot): approximate_user_authorization_count (#4222)
Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-06-13 18:47:41 +05:30
Fleny
04b53a68c7 fix(types): update InteractionCallbackData flags (#4221)
Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-06-13 18:39:11 +05:30
Fleny
4b30c24f8d Add application deauthorized webhook event (#4217)
Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-06-13 18:18:50 +05:30
Fleny
70bcd16e8d chore(website): Update docusarus v3.8, improve build perf (#4209)
* Update docusaurus to v3.8, improve performance

Docusaurus:
- Update to v3.8.0
- Enable new faster features, rspack bundler cache and worker threads
- Update CI to cache rspack bundler cache
- Update dependencies to latest versions
- Update blog posts to use the truncate tag
- Update caniuse-lite

Removed duplicated type documentation generation for bot package

* Use .jsonc files for typedoc
And use the readme option instead of a custom script

* remvoe typedoc script

---------

Co-authored-by: Jonathan Ho <heiheiho000@gmail.com>
2025-06-02 07:47:19 +02:00
Fleny
f811178f59 Remove default command contexts sentence (#4210) 2025-06-01 14:08:17 +05:30
Fleny
90f0507af0 feat(utils): animated webp emojis (#4199) 2025-06-01 08:28:27 +02:00
Fleny
b537c06a72 fix(types): Specify that IsComponentV2 is permanent (#4202) 2025-06-01 08:24:24 +02:00
Fleny
ef5cf54c66 fix(bot): Use an object to present desired properties errors (#4208)
* Use DesiredPropertiesError instead of strings

Using an object allows typescript to error in more cases as with strings
if the original propriety was a string it would not error for stuff like
`.endsWith(...)`

We use a symbol to make sure the type doesn't actually become a generic
object, but instead is a specific type that can be checked against.

* Update docs
2025-06-01 08:20:16 +02:00
Awesome Stickz
5b97b217a7 fix(bot): role.name property missing because of empty role names (#4207) 2025-05-29 23:52:16 +05:30
Awesome Stickz
94040813bb feat(gateway): add options.spreadShardsInRoundRobin to spread shards in a round-robin manner (#4204)
* feat(gateway): add options.spreadShardsInRoundRobin to spread shards in a round-robin manner

* fix: forgor to add to gateway
2025-05-26 11:57:48 +05:30
8au
a62fb5e17b fix(gateway): remove 'offline' status from DiscordUpdatePresence, as Discord only supports 'invisible' and not 'offline' (#4205)
* fix: the 'color' type on role is set to 'undefined' when its value is '0'

* fix: ensure role color is correctly assigned when value is 0

* fix: revert color type change

* fix(docs): fixed typo in big bot guide

* fix(gateway): fixed an issue which would cause bot status to appear as online if the user used 'offline' as the status

* Update settings.json

* remove offline status in DiscordUpdatePresence.status

* Apply suggestions from code review

---------

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-05-26 10:10:11 +05:30
Max Zargov
dff9df5a59 fix: Unexpected TypeError in GatewayManager.requestMembers (#4197)
* fix: Unexpected TypeError in `GatewayManager.requestMembers` debug message

closes #4196

* refactor: prefer JSON.stringify replacer parameter when serializing

* Order functions in utils.ts
2025-05-24 08:19:51 +02:00
Fleny
cafc5713ab fix(types, bot): Clarify interaction.message comment (#4201)
Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-05-24 03:45:23 +05:30
Fleny
b0d4309ec5 fix(types): Add missing limits on alts for media (#4200)
x
2025-05-24 03:38:47 +05:30
Fleny
17dc876a9e fix(bot): Add entitlements to interactions (#4198)
* Add entitlements to interactions

* fix type error
2025-05-24 03:24:21 +05:30
Fleny
2eace55b9b Specify when IS_COMPONENT_V2 is valid for flags (#4195) 2025-05-19 01:48:16 +05:30
Awesome Stickz
8eeda31769 refactor: set default format to webp instead of jpg in formatImageUrl() (#4193)
* refactor: set default format to webp instead of jpg in formatImageUrl

* fix: tests
2025-05-12 21:43:50 +05:30
Awesome Stickz
0db0ffe616 fix: CreateMessageOptions.messageReference.failIfNotExists is optional (#4192) 2025-05-11 18:19:46 +05:30
Fleny
059c6a9797 fix(bot): don't override flags when isPrivate (#4191)
Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-05-10 21:21:00 +02:00
Fleny
83d329c374 Remove shardIsReady (#4190) 2025-05-11 00:44:42 +05:30
Fleny
b14328240b refactor(gateway): Improve request identify flow (#4126)
* Improve request identify flow

* Use leaky bucket for requestIdentify

* Revert behavior change to identify

* Move approved request identify to requestIdentify

* Apply some suggestions from code review

Co-authored-by: Awesome Stickz <awesome@stickz.dev>

* move request identify to identify

* remove requestIdentify call from manager

* Add flag to skip requestIdentify in shard identify

* Add logs about socket creation

* Update newly added logs

* change "shard" to "Shard"

---------

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-05-10 16:46:30 +05:30
Fleny
9afd5cc350 Remove comment limit on number of component (#4189)
The limit is still in place however it is 40 total,
so it is a bit more complicated to explain and the discord docs
are better at doing so than what we can do with JSDoc
2025-05-05 22:18:19 +05:30
LTS (Link)
4b96d9fe02 fix(bot,types)!: Remove editOriginalWebhookMessage (#4175)
(and fix editWebhookMessage options type as well)

Fixes: https://github.com/discordeno/discordeno/issues/4174
2025-05-04 09:23:11 +02:00
Awesome Stickz
5ebe549ada refactor: don't log about resuming in shard.handleClose (#4187) 2025-05-03 13:37:15 +02:00
LTS (Link)
5c38883bbc feat(types,bot)!: Add desiredProperties for components (#4179)
- feat(bot): Add desiredProperties for components, as well as media gallery items and unfurled media items
- fix(types)!: Rename the following types to match the newly updated discord docs:
  - InputText to TextInput
  - SelectMenu to StringSelect
  - SelectMenuUsers to UserSelect
  - SelectMenuRoles to RoleSelect
  - SelectMenuMentionable to MentionableSelect
  - SelectMenuChannels to ChannelSelect
- Update some JSDOC comments to match the new discord docs

Co-authored-by: Fleny <Fleny113@outlook.com>
2025-05-01 11:18:48 +02:00
LTS (Link)
11c6d043e3 Fix(utils): Remove redundant comparison & bitwise operation (#4178)
Co-authored-by: Fleny <Fleny113@outlook.com>
2025-05-01 11:03:53 +02:00
NotDemonix
f227b11a8c Improve consistency for snowflakeToTimestamp (#4177) 2025-05-01 10:49:19 +02:00
Fleny
80509a1420 Update manager.ts (#4176) 2025-04-28 18:28:55 +02:00
Fleny
b3de175f13 feat(types,rest,bot): Add with_components to webhooks (#4152)
* Add with_components to webhook execute and edit

* Fix query param building

* update comments
2025-04-27 09:42:51 +02:00
Fleny
a584ffc3a3 fix(types): Add missing ContainerComponent to MessageComponent (#4172) 2025-04-26 20:00:05 +02:00
Fleny
3d90d816e7 feat(types,bot)!: Components V2 (#4080)
* UI

* change component names to match Discord's names

* add divider prop to separator component

* rename thumbnail component image property to media

* Rename MessageFlags.IsUiKit to IsComponentsV2

* Rename FileDisplay component to File component

* Added container component

* add id to container component transformers

* add id to all components

* SectionComponent.accessory now accepts ButtonComponent as well

* Update description for FileComponent.file

* fix bad merge

* Change Component.accessory to ButtonComponent | ThumbnailComponent

* Add section to reverse, fix Component#accessory

* remove type cast on section transform

* Add docs link for CreateGuildChannel

Co-authored-by: LTS (Link) <lts20050703@gmail.com>

* Update comments & split components

* fix type errors

* Really fix CI

* transform UnfurledMediaItem

* Apply suggestions from code review

Co-authored-by: LTS (Link) <lts20050703@gmail.com>

* change DiscordInputTextComponent to DiscordTextInputComponent

* fix order in Transformers.customizers

* Fix missing transformers

* update action row components type

---------

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
Co-authored-by: LTS (Link) <lts20050703@gmail.com>
2025-04-26 08:35:06 +02:00
Fleny
24703f13dd fix(types)!: Remove incorrect, reorder and fixes in channel (#4151)
* Remove incorrect, reorder and fixes in channel

- Updated comments to be more clear
- Remove `Channel.newly_created`, doesn't seem to exist in the api docs
- Fix nullability for some fields
- Remove DiscordActiveThreads, DiscordArchivedThreads and DiscordListActiveThreads as they don't seem to match anything in the api

* Add back DiscordListActiveThreads but under Guild
and fix type errors

* Update packages/types/src/discord/channel.ts

Co-authored-by: LTS (Link) <lts20050703@gmail.com>

* Revert newly_created removal

* Apply suggestions from code review

Co-authored-by: LTS (Link) <lts20050703@gmail.com>

---------

Co-authored-by: LTS (Link) <lts20050703@gmail.com>
2025-04-26 08:31:01 +02:00
Fleny
f0e0bd0aef Update Slash Command Name regex (#4102)
* Update Slash Command Command Name regex

* Update comments to reflect the change

* Use the correct apostrophe in the regex

While the docs use the regular ', discord accepts
the unicode apostrophe ʼ.
2025-04-25 21:21:27 +02:00
Fleny
22012fc288 feat(types, rest, bot): Add lobby support (#4158)
* Add lobby support

* Fix CI
Apparently for extends a bot was a LobbyMember since both had
a required id property and even if LobbyMember had other properties
as well that did not matter

* update LobbyMember flags to use ToggleBitfield
2025-04-25 21:15:42 +02:00
Fleny
77fc516a64 feat(types,bot): Add the attachmentSizeLimit prop to interactions (#4163)
* Add the attachmentSizeLimit prop to interactions

* Fix type error
2025-04-23 19:48:40 +05:30
Fleny
806380a25d Fix triple-n typos in types.ts and application.ts (#4164) 2025-04-23 19:39:18 +05:30
Fleny
d063655e56 Deprecate createGuild and createGuildFromTemplate (#4169)
While discord does not say anything explicit about deprecating the
createGuildFromTemplate endpoint, it is a fair assumption to make that
it is included in this change

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-04-23 19:32:39 +05:30
Andrew
1c20b59eb0 fix(docs): update documentation links to point to the new site (#4166) 2025-04-09 22:24:08 +05:30
Awesome Stickz
ab7f3705c4 fix(rest): deleteWebhookMessage() and editOriginalInteractionResponse() doesn't require auth (#4155) 2025-03-21 18:15:40 +05:30
TriForMine
8c909f549c fix(types): Add missing skuId property in ButtonComponent (#4156)
* Update discordeno.ts

* Update discordeno.ts

* Update packages/types/src/discordeno.ts

Co-authored-by: Fleny <Fleny113@outlook.com>

---------

Co-authored-by: Fleny <Fleny113@outlook.com>
2025-03-21 18:06:09 +05:30
Fleny
cf8304ccef fix(types)!: Fix optionals for some props in auto moderation. (#4150)
* Fix optionals for some props in autoModeration.

Also fix some comments to be more clear

* Fix type error in automodActionExecution

* Fix type error in automod.spec.ts e2e test

---------

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-03-04 18:44:14 +05:30
Fleny
f2e446f4dd Reorder AuditLog add SoundboardSound log changes (#4149) 2025-03-04 18:01:30 +05:30
Fleny
bcd8d4db37 refactor(types): reorder properties in DiscordApplication 2025-03-04 17:53:15 +05:30
LonelyDeathVGX
f135fd871c fix(types): use Localization instead of Record<Locales, string> (#4143) 2025-03-01 19:18:31 +01:00
Fleny
a624cad2ca fix(gateway): Keep state to avoid unwanted disconnections (#4138)
* Keep state to avoid unwanted disconnections

This keeps a state to know that we wanted to end the connection with a
code of 1000 or 1001 to avoid unwanted disconnections in case discord /
someone in the middle of the TCP connection (such as cloudflare) sends a
close code of 1000 or 1001.

* Apply suggestions from code review

Co-authored-by: Awesome Stickz <awesome@stickz.dev>

---------

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-02-25 13:23:12 +05:30
Awesome Stickz
47b31622e4 fix(types): add ThreadMember.member (#4139) 2025-02-24 01:17:20 +05:30
Awesome Stickz
4d3bdf233d feat!: add missing params to getThreadMember() and getThreadMembers() (#4135)
* feat: add missing params to getThreadMember() and getThreadMembers()

* add member property from payload in threadMember transformer

* mark guildId as BigString | undefined and pass undefined in threadMember transformer

* fix type of after, limit params of ListThreadMembers

* add tsdoc for GetThreadMember and GetGuildAuditLog

* make options param of getThreadMember() and getThreadMembers() optional

---------

Co-authored-by: Fleny <Fleny113@outlook.com>
2025-02-23 11:50:26 +01:00
Fleny
e7ebbaa31e feat(rest): Improve error message for rest errors (#4136)
* Improve error message for rest errors

* Update packages/rest/src/manager.ts

Co-authored-by: Awesome Stickz <awesome@stickz.dev>

* Add new line

---------

Co-authored-by: Awesome Stickz <awesome@stickz.dev>
2025-02-23 15:43:28 +05:30
Awesome Stickz
a77fa77a67 fix: thread create autoArchiveDuration being a required param (#4137) 2025-02-23 14:45:51 +05:30