Skip to content

Commit 6feb0dc

Browse files
Sebastianapricotbucket28
authored andcommitted
Add application emojis (disgoorg#373)
* Add application emojis * rename funcs
1 parent ec86a96 commit 6feb0dc

File tree

2 files changed

+44
-0
lines changed

2 files changed

+44
-0
lines changed

rest/applications.go

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,12 @@ type Applications interface {
4343
ConsumeEntitlement(applicationID snowflake.ID, entitlementID snowflake.ID, opts ...RequestOpt) error
4444

4545
GetSKUs(applicationID snowflake.ID, opts ...RequestOpt) ([]discord.SKU, error)
46+
47+
GetApplicationEmojis(applicationID snowflake.ID, opts ...RequestOpt) ([]discord.Emoji, error)
48+
GetApplicationEmoji(applicationID snowflake.ID, emojiID snowflake.ID, opts ...RequestOpt) (*discord.Emoji, error)
49+
CreateApplicationEmoji(applicationID snowflake.ID, emojiCreate discord.EmojiCreate, opts ...RequestOpt) (*discord.Emoji, error)
50+
UpdateApplicationEmoji(applicationID snowflake.ID, emojiID snowflake.ID, emojiUpdate discord.EmojiUpdate, opts ...RequestOpt) (*discord.Emoji, error)
51+
DeleteApplicationEmoji(applicationID snowflake.ID, emojiID snowflake.ID, opts ...RequestOpt) error
4652
}
4753

4854
type applicationsImpl struct {
@@ -219,10 +225,42 @@ func (s *applicationsImpl) GetSKUs(applicationID snowflake.ID, opts ...RequestOp
219225
return
220226
}
221227

228+
func (s *applicationsImpl) GetApplicationEmojis(applicationID snowflake.ID, opts ...RequestOpt) (emojis []discord.Emoji, err error) {
229+
var rs emojisResponse
230+
err = s.client.Do(GetApplicationEmojis.Compile(nil, applicationID), nil, &rs, opts...)
231+
if err == nil {
232+
emojis = rs.Items
233+
}
234+
return
235+
}
236+
237+
func (s *applicationsImpl) GetApplicationEmoji(applicationID snowflake.ID, emojiID snowflake.ID, opts ...RequestOpt) (emoji *discord.Emoji, err error) {
238+
err = s.client.Do(GetApplicationEmoji.Compile(nil, applicationID, emojiID), nil, &emoji, opts...)
239+
return
240+
}
241+
242+
func (s *applicationsImpl) CreateApplicationEmoji(applicationID snowflake.ID, emojiCreate discord.EmojiCreate, opts ...RequestOpt) (emoji *discord.Emoji, err error) {
243+
err = s.client.Do(CreateApplicationEmoji.Compile(nil, applicationID), emojiCreate, &emoji, opts...)
244+
return
245+
}
246+
247+
func (s *applicationsImpl) UpdateApplicationEmoji(applicationID snowflake.ID, emojiID snowflake.ID, emojiUpdate discord.EmojiUpdate, opts ...RequestOpt) (emoji *discord.Emoji, err error) {
248+
err = s.client.Do(UpdateApplicationEmoji.Compile(nil, applicationID, emojiID), emojiUpdate, &emoji, opts...)
249+
return
250+
}
251+
252+
func (s *applicationsImpl) DeleteApplicationEmoji(applicationID snowflake.ID, emojiID snowflake.ID, opts ...RequestOpt) error {
253+
return s.client.Do(DeleteApplicationEmoji.Compile(nil, applicationID, emojiID), nil, nil, opts...)
254+
}
255+
222256
func unmarshalApplicationCommandsToApplicationCommands(unmarshalCommands []discord.UnmarshalApplicationCommand) []discord.ApplicationCommand {
223257
commands := make([]discord.ApplicationCommand, len(unmarshalCommands))
224258
for i := range unmarshalCommands {
225259
commands[i] = unmarshalCommands[i].ApplicationCommand
226260
}
227261
return commands
228262
}
263+
264+
type emojisResponse struct {
265+
Items []discord.Emoji `json:"items"`
266+
}

rest/rest_endpoints.go

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -303,6 +303,12 @@ var (
303303
ConsumeEntitlement = NewEndpoint(http.MethodPost, "/applications/{application.id}/entitlements/{entitlement.id}/consume")
304304

305305
GetSKUs = NewEndpoint(http.MethodGet, "/applications/{application.id}/skus")
306+
307+
GetApplicationEmojis = NewEndpoint(http.MethodGet, "/applications/{application.id}/emojis")
308+
GetApplicationEmoji = NewEndpoint(http.MethodGet, "/applications/{application.id}/emojis/{emoji.id}")
309+
CreateApplicationEmoji = NewEndpoint(http.MethodPost, "/applications/{application.id}/emojis")
310+
UpdateApplicationEmoji = NewEndpoint(http.MethodPatch, "/applications/{application.id}/emojis/{emoji.id}")
311+
DeleteApplicationEmoji = NewEndpoint(http.MethodDelete, "/applications/{application.id}/emojis/{emoji.id}")
306312
)
307313

308314
// NewEndpoint returns a new Endpoint which requires bot auth with the given http method & route.

0 commit comments

Comments
 (0)