Application commands: attachment option (#1088)

* feat(interactions): application command attachment option

* fix(interactions): corrected application command attachment option type
This commit is contained in:
Fedor Lapshin 2022-02-16 21:02:44 +03:00 committed by GitHub
parent 0494cdf33c
commit 0a0955c5f9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -55,6 +55,7 @@ const (
ApplicationCommandOptionChannel ApplicationCommandOptionType = 7 ApplicationCommandOptionChannel ApplicationCommandOptionType = 7
ApplicationCommandOptionRole ApplicationCommandOptionType = 8 ApplicationCommandOptionRole ApplicationCommandOptionType = 8
ApplicationCommandOptionMentionable ApplicationCommandOptionType = 9 ApplicationCommandOptionMentionable ApplicationCommandOptionType = 9
ApplicationCommandOptionAttachment ApplicationCommandOptionType = 11
) )
func (t ApplicationCommandOptionType) String() string { func (t ApplicationCommandOptionType) String() string {
@ -77,6 +78,8 @@ func (t ApplicationCommandOptionType) String() string {
return "Role" return "Role"
case ApplicationCommandOptionMentionable: case ApplicationCommandOptionMentionable:
return "Mentionable" return "Mentionable"
case ApplicationCommandOptionAttachment:
return "Attachment"
} }
return fmt.Sprintf("ApplicationCommandOptionType(%d)", t) return fmt.Sprintf("ApplicationCommandOptionType(%d)", t)
} }
@ -255,11 +258,12 @@ type ApplicationCommandInteractionData struct {
// Partial Member objects are missing user, deaf and mute fields. // Partial Member objects are missing user, deaf and mute fields.
// Partial Channel objects only have id, name, type and permissions fields. // Partial Channel objects only have id, name, type and permissions fields.
type ApplicationCommandInteractionDataResolved struct { type ApplicationCommandInteractionDataResolved struct {
Users map[string]*User `json:"users"` Users map[string]*User `json:"users"`
Members map[string]*Member `json:"members"` Members map[string]*Member `json:"members"`
Roles map[string]*Role `json:"roles"` Roles map[string]*Role `json:"roles"`
Channels map[string]*Channel `json:"channels"` Channels map[string]*Channel `json:"channels"`
Messages map[string]*Message `json:"messages"` Messages map[string]*Message `json:"messages"`
Attachments map[string]*MessageAttachment `json:"attachments"`
} }
// Type returns the type of interaction data. // Type returns the type of interaction data.