* feat(SelectMenu): default values
* fix: remove unncessary pointer
Since SelectMenu is used as a nested structure, it is not possible to
partially edit it. Thus, an empty slice does not need to be accounted for,
and the pointer, which would only be omitted if the value is nil, can be
converted to a regular slice.
* fix: correct grammar in the comment to SelectMenuDefaultValueType
* feat(user): Add UserPremiumType type
* chore(UserPremiumType): fix type name in comment
* style: periods
Add periods at the end of the documentation comments.
* chore(UserPremiumType): reword documentation comment
---------
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
Add ThreadName field into WebhookParams to allow for creation of forum posts by webhooks.
---------
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Unlock when checking voice connection sessionID to prevent deadlock
* Move lock to preserve concurrency safety, while allowing the sessionID to be populated
* style: formatting
Fix formatting of the documentation comment for VoiceConnection.Speaking function
* feat: reword explanatory comment
---------
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Add support for new username system in User.String and User.AvatarURL
* Move default avatar index logic from EndpointDefaultUserAvatar into User.DefaultAvatarIndex
---------
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* Add the CommandType field to ApplicationCommandInteractionData
* Remove unnecessary comment
* Change order of the fields
---------
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
Fix usage of an outdated request in RequestWithLockedBucket after applying WithContext option
---------
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* feat(voice): 74 byte udp handshake
Update the format of UDP handshake to use 74 byte packets.
* docs: use new positions in comments
* feat: document type and length fields
Add descriptions of type and length fields to the request packet documentation.
* Add missing parameters/structs
Adds guild icon size parameter, guild banner size parameter, missing ClientStatus struct
* Add missing endpoint for animated banners
* feat: revert ClientStatus changes
Revert addition of ClientStatus since another PR was already merged with
it.
* feat: add documentation for size parameter
* refactor: move icon url logic into separate func
Move logic for icon URLs in various functions into a single iconURL
function. Similar to banner and avatar functions.
Co-authored-by: Fedor Lapshin <fe.lap.prog@gmail.com>
* feat: add options for request methods
Add functional options to request, RequestWithBucketID, RequestWithLockedBucket.
These options allow for request modification and overriding REST related Session fields,
such as Client, MaxRestRetries and ShouldRetryOnRateLimit.
* feat: add context and retries options
Implement WithContext and WithMaxRestRetries options.
* feat: add documentation
Add documentation to the options
* feat(rest): add options to methods
Add option arguments to all Session methods.
* feat: add missed forwarded options
* feat: reword documentation
* refactor(requestConfig): rename to newRequestConfig
Rename requestConfig to newRequestConfig to match other
constructor functions naming.
* style: manually revert documentation formatting
Manually revert the formatting of documentation in certain functions.
* feat(UserChannelPermissions): add description of fetchOptions
Add description for fetchOptions parameter of Session.UserChannelPermissions.
* feat(ChannelMessageSendEmbedReply): pass options
Pass options to ChannelMessageSendEmbedsReply call in ChannelMessageSendEmbedReply
* docs(InviteComplex): revert parameter descriptions removal
* feat: role connection metadata
* feat: add role connection endpoints
Add User Application Role Connection endpoints:
* Get User Application Role Connection
* Update User Application Role Connection
* feat: add example
Add basic example to showcase linked roles flow.
* refactor(endpoints): move role connection metadata
Move Application Role Connection Metadata endpoint to other Application
endpoints.