lib_discord 0.1.3 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (77) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +88 -0
  3. data/README.md +40 -67
  4. data/lib/lib_discord/client.rb +2667 -138
  5. data/lib/lib_discord/formatter.rb +108 -0
  6. data/lib/lib_discord/maps.rb +730 -0
  7. data/lib/lib_discord/permissions.rb +84 -0
  8. data/lib/lib_discord/urls.rb +9 -15
  9. data/lib/lib_discord/version.rb +1 -4
  10. data/lib/lib_discord.rb +3 -5
  11. metadata +12 -120
  12. data/CHANGELOG.md +0 -152
  13. data/lib/lib_discord/application.rb +0 -43
  14. data/lib/lib_discord/application_command.rb +0 -341
  15. data/lib/lib_discord/application_role_connection_metadata.rb +0 -52
  16. data/lib/lib_discord/audit_log.rb +0 -36
  17. data/lib/lib_discord/auto_moderation.rb +0 -106
  18. data/lib/lib_discord/channel.rb +0 -716
  19. data/lib/lib_discord/emoji.rb +0 -106
  20. data/lib/lib_discord/errors.rb +0 -31
  21. data/lib/lib_discord/guild.rb +0 -830
  22. data/lib/lib_discord/guild_scheduled_event.rb +0 -133
  23. data/lib/lib_discord/guild_template.rb +0 -128
  24. data/lib/lib_discord/interaction.rb +0 -163
  25. data/lib/lib_discord/invite.rb +0 -47
  26. data/lib/lib_discord/mappers/application_command_option_types.rb +0 -22
  27. data/lib/lib_discord/mappers/application_command_permission_types.rb +0 -14
  28. data/lib/lib_discord/mappers/application_command_types.rb +0 -14
  29. data/lib/lib_discord/mappers/application_integration_types.rb +0 -13
  30. data/lib/lib_discord/mappers/application_role_connection_metadata_types.rb +0 -19
  31. data/lib/lib_discord/mappers/audit_log_events.rb +0 -67
  32. data/lib/lib_discord/mappers/auto_moderation_action_types.rb +0 -14
  33. data/lib/lib_discord/mappers/auto_moderation_event_types.rb +0 -12
  34. data/lib/lib_discord/mappers/auto_moderation_keyword_preset_types.rb +0 -14
  35. data/lib/lib_discord/mappers/auto_moderation_trigger_types.rb +0 -15
  36. data/lib/lib_discord/mappers/channel_forum_layout_types.rb +0 -14
  37. data/lib/lib_discord/mappers/channel_message_activity_types.rb +0 -15
  38. data/lib/lib_discord/mappers/channel_message_types.rb +0 -42
  39. data/lib/lib_discord/mappers/channel_sort_order_types.rb +0 -13
  40. data/lib/lib_discord/mappers/channel_types.rb +0 -24
  41. data/lib/lib_discord/mappers/channel_video_quality_modes.rb +0 -13
  42. data/lib/lib_discord/mappers/guild_default_message_notification_levels.rb +0 -13
  43. data/lib/lib_discord/mappers/guild_explicit_content_filter_levels.rb +0 -14
  44. data/lib/lib_discord/mappers/guild_integration_expire_behaviors.rb +0 -13
  45. data/lib/lib_discord/mappers/guild_mfa_levels.rb +0 -13
  46. data/lib/lib_discord/mappers/guild_nsfw_levels.rb +0 -15
  47. data/lib/lib_discord/mappers/guild_onboarding_modes.rb +0 -13
  48. data/lib/lib_discord/mappers/guild_premium_tiers.rb +0 -15
  49. data/lib/lib_discord/mappers/guild_prompt_types.rb +0 -13
  50. data/lib/lib_discord/mappers/guild_scheduled_event_entity_types.rb +0 -14
  51. data/lib/lib_discord/mappers/guild_scheduled_event_privacy_levels.rb +0 -12
  52. data/lib/lib_discord/mappers/guild_scheduled_event_statuses.rb +0 -15
  53. data/lib/lib_discord/mappers/guild_verification_levels.rb +0 -16
  54. data/lib/lib_discord/mappers/interaction_callback_types.rb +0 -19
  55. data/lib/lib_discord/mappers/interaction_context_types.rb +0 -14
  56. data/lib/lib_discord/mappers/interaction_types.rb +0 -16
  57. data/lib/lib_discord/mappers/invite_target_types.rb +0 -13
  58. data/lib/lib_discord/mappers/message_component_button_styles.rb +0 -16
  59. data/lib/lib_discord/mappers/message_component_text_input_styles.rb +0 -13
  60. data/lib/lib_discord/mappers/message_component_types.rb +0 -19
  61. data/lib/lib_discord/mappers/poll_layout_types.rb +0 -12
  62. data/lib/lib_discord/mappers/stage_instance_privacy_levels.rb +0 -13
  63. data/lib/lib_discord/mappers/sticker_format_types.rb +0 -15
  64. data/lib/lib_discord/mappers/sticker_types.rb +0 -13
  65. data/lib/lib_discord/mappers/user_premium_types.rb +0 -15
  66. data/lib/lib_discord/mappers/user_visibility_types.rb +0 -13
  67. data/lib/lib_discord/mappers/webhooks_types.rb +0 -14
  68. data/lib/lib_discord/mappers.rb +0 -87
  69. data/lib/lib_discord/poll.rb +0 -62
  70. data/lib/lib_discord/resource.rb +0 -133
  71. data/lib/lib_discord/response.rb +0 -43
  72. data/lib/lib_discord/stage_instance.rb +0 -79
  73. data/lib/lib_discord/sticker.rb +0 -132
  74. data/lib/lib_discord/types.rb +0 -47
  75. data/lib/lib_discord/user.rb +0 -174
  76. data/lib/lib_discord/voice.rb +0 -29
  77. data/lib/lib_discord/webhook.rb +0 -299
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "lib_discord/resource"
4
-
5
- module LibDiscord
6
- ##
7
- # Voice Resource
8
- #
9
- # Do not instantiate a {Voice} directly. Instead request one from an instance
10
- # of {Client}.
11
- #
12
- # client = LibDiscord::Client.new("Bot auth.token")
13
- # v = client["voice"]
14
- #
15
- # @see https://discord.com/developers/docs/resources/voice Discord
16
- # documentation "Voice Resource"
17
- class Voice < Resource
18
- ##
19
- # @return [Response]
20
- #
21
- # @raise [TimeoutError] if the HTTP request times out
22
- #
23
- # @see https://discord.com/developers/docs/resources/voice#list-voice-regions
24
- # Discord documentation "List Voice Regions"
25
- def list_voice_regions
26
- send_request(:get, "/voice/regions")
27
- end
28
- end
29
- end
@@ -1,299 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "lib_discord/resource"
4
-
5
- module LibDiscord
6
- ##
7
- # Webhook Resource
8
- #
9
- # Do not instantiate a {Webhook} directly. Instead request one from an
10
- # instance of {Client}.
11
- #
12
- # client = LibDiscord::Client.new("Bot auth.token")
13
- # w = client["webhook"]
14
- #
15
- # @see https://discord.com/developers/docs/resources/webhook Discord
16
- # documentation "Webhook Resource"
17
- class Webhook < Resource
18
- ##
19
- # @param channel_id [#to_s]
20
- # {https://discord.com/developers/docs/reference#snowflakes Discord
21
- # documentation "Snowflakes"}
22
- # @param json [#to_json] JSON serializable payload
23
- #
24
- # @return [Response]
25
- #
26
- # @raise [TimeoutError] if the HTTP request times out
27
- # @raise [ConstraintError] if +json+ cannot be serialized to JSON
28
- #
29
- # @see https://discord.com/developers/docs/resources/webhook#create-webhook
30
- # Discord documentation "Create Webhook"
31
- def create_webhook(channel_id:, json:)
32
- send_request(:post, "/channels/#{channel_id}/webhooks", json:)
33
- end
34
-
35
- ##
36
- # @param channel_id [#to_s]
37
- # {https://discord.com/developers/docs/reference#snowflakes Discord
38
- # documentation "Snowflakes"}
39
- #
40
- # @return [Response]
41
- #
42
- # @raise [TimeoutError] if the HTTP request times out
43
- #
44
- # @see https://discord.com/developers/docs/resources/webhook#get-channel-webhooks
45
- # Discord documentation "Get Channel Webhooks"
46
- def get_channel_webhooks(channel_id:)
47
- send_request(:get, "/channels/#{channel_id}/webhooks")
48
- end
49
-
50
- ##
51
- # @param guild_id [#to_s]
52
- # {https://discord.com/developers/docs/reference#snowflakes Discord
53
- # documentation "Snowflakes"}
54
- #
55
- # @return [Response]
56
- #
57
- # @raise [TimeoutError] if the HTTP request times out
58
- #
59
- # @see https://discord.com/developers/docs/resources/webhook#get-guild-webhooks
60
- # Discord documentation "Get Guild Webhooks"
61
- def get_guild_webhooks(guild_id:)
62
- send_request(:get, "/guilds/#{guild_id}/webhooks")
63
- end
64
-
65
- ##
66
- # @param webhook_id [#to_s]
67
- # {https://discord.com/developers/docs/reference#snowflakes Discord
68
- # documentation "Snowflakes"}
69
- #
70
- # @return [Response]
71
- #
72
- # @raise [TimeoutError] if the HTTP request times out
73
- #
74
- # @see https://discord.com/developers/docs/resources/webhook#get-webhook
75
- # Discord documentation "Get Webhook"
76
- def get_webhook(webhook_id:)
77
- send_request(:get, "/webhooks/#{webhook_id}")
78
- end
79
-
80
- ##
81
- # @param webhook_id [#to_s]
82
- # {https://discord.com/developers/docs/reference#snowflakes Discord
83
- # documentation "Snowflakes"}
84
- # @param webhook_token [#to_s]
85
- #
86
- # @return [Response]
87
- #
88
- # @raise [TimeoutError] if the HTTP request times out
89
- #
90
- # @see https://discord.com/developers/docs/resources/webhook#get-webhook-with-token
91
- # Discord documentation "Get Webhook with Token"
92
- def get_webhook_with_token(webhook_id:, webhook_token:)
93
- send_request(
94
- :get,
95
- "/webhooks/#{webhook_id}/#{webhook_token}",
96
- http_client: client
97
- )
98
- end
99
-
100
- ##
101
- # @param webhook_id [#to_s]
102
- # {https://discord.com/developers/docs/reference#snowflakes Discord
103
- # documentation "Snowflakes"}
104
- # @param json [#to_json] JSON serializable payload
105
- #
106
- # @return [Response]
107
- #
108
- # @raise [TimeoutError] if the HTTP request times out
109
- # @raise [ConstraintError] if +json+ cannot be serialized to JSON
110
- #
111
- # @see https://discord.com/developers/docs/resources/webhook#modify-webhook
112
- # Discord documentation "Modify Webhook"
113
- def modify_webhook(webhook_id:, json:)
114
- send_request(:patch, "/webhooks/#{webhook_id}", json:)
115
- end
116
-
117
- ##
118
- # @param webhook_id [#to_s]
119
- # {https://discord.com/developers/docs/reference#snowflakes Discord
120
- # documentation "Snowflakes"}
121
- # @param webhook_token [#to_s]
122
- # @param json [#to_json] JSON serializable payload
123
- #
124
- # @return [Response]
125
- #
126
- # @raise [TimeoutError] if the HTTP request times out
127
- # @raise [ConstraintError] if +json+ cannot be serialized to JSON
128
- #
129
- # @see https://discord.com/developers/docs/resources/webhook#modify-webhook-with-token
130
- # Discord documentation "Modify Webhook with Token"
131
- def modify_webhook_with_token(webhook_id:, webhook_token:, json:)
132
- send_request(
133
- :patch,
134
- "/webhooks/#{webhook_id}/#{webhook_token}",
135
- json:,
136
- http_client: client
137
- )
138
- end
139
-
140
- ##
141
- # @param webhook_id [#to_s]
142
- # {https://discord.com/developers/docs/reference#snowflakes Discord
143
- # documentation "Snowflakes"}
144
- #
145
- # @return [Response]
146
- #
147
- # @raise [TimeoutError] if the HTTP request times out
148
- #
149
- # @see https://discord.com/developers/docs/resources/webhook#delete-webhook
150
- # Discord documentation "Delete Webhook"
151
- def delete_webhook(webhook_id:)
152
- send_request(:delete, "/webhooks/#{webhook_id}")
153
- end
154
-
155
- ##
156
- # @param webhook_id [#to_s]
157
- # {https://discord.com/developers/docs/reference#snowflakes Discord
158
- # documentation "Snowflakes"}
159
- # @param webhook_token [#to_s]
160
- #
161
- # @return [Response]
162
- #
163
- # @raise [TimeoutError] if the HTTP request times out
164
- #
165
- # @see https://discord.com/developers/docs/resources/webhook#delete-webhook-with-token
166
- # Discord documentation "Delete Webhook with Token"
167
- def delete_webhook_with_token(webhook_id:, webhook_token:)
168
- send_request(
169
- :delete,
170
- "/webhooks/#{webhook_id}/#{webhook_token}",
171
- http_client: client
172
- )
173
- end
174
-
175
- ##
176
- # @param webhook_id [#to_s]
177
- # {https://discord.com/developers/docs/reference#snowflakes Discord
178
- # documentation "Snowflakes"}
179
- # @param webhook_token [#to_s]
180
- # @param json [#to_json] JSON serializable payload
181
- # @param params [Hash] optional HTTP query parameters
182
- #
183
- # @return [Response]
184
- #
185
- # @raise [TimeoutError] if the HTTP request times out
186
- # @raise [ConstraintError] if +json+ cannot be serialized to JSON
187
- # @raise [ConstraintError] if +params+ cannot be coerced into a valid query
188
- # parameters string
189
- #
190
- # @see https://discord.com/developers/docs/resources/webhook#execute-webhook
191
- # Discord documentation "Execute Webhook"
192
- def execute_webhook(webhook_id:, webhook_token:, json:, params: {})
193
- send_request(:post, "/webhooks/#{webhook_id}/#{webhook_token}", json:, params:)
194
- end
195
-
196
- ##
197
- # @param webhook_id [#to_s]
198
- # {https://discord.com/developers/docs/reference#snowflakes Discord
199
- # documentation "Snowflakes"}
200
- # @param webhook_token [#to_s]
201
- # @param params [Hash] optional HTTP query parameters
202
- #
203
- # @return [Response]
204
- #
205
- # @raise [TimeoutError] if the HTTP request times out
206
- # @raise [ConstraintError] if +params+ cannot be coerced into a valid query
207
- # parameters string
208
- #
209
- # @see https://discord.com/developers/docs/resources/webhook#execute-slackcompatible-webhook
210
- # Discord documentation "Execute Slack-Compatible Webhook"
211
- def execute_slack_compatible_webhook(webhook_id:, webhook_token:, params: {})
212
- send_request(:post, "/webhooks/#{webhook_id}/#{webhook_token}/slack", params:)
213
- end
214
-
215
- ##
216
- # @param webhook_id [#to_s]
217
- # {https://discord.com/developers/docs/reference#snowflakes Discord
218
- # documentation "Snowflakes"}
219
- # @param webhook_token [#to_s]
220
- # @param params [Hash] optional HTTP query parameters
221
- #
222
- # @return [Response]
223
- #
224
- # @raise [TimeoutError] if the HTTP request times out
225
- # @raise [ConstraintError] if +params+ cannot be coerced into a valid query
226
- # parameters string
227
- #
228
- # @see https://discord.com/developers/docs/resources/webhook#execute-githubcompatible-webhook
229
- # Discord documentation "Execute GitHub-Compatible Webhook
230
- def execute_github_compatible_webhook(webhook_id:, webhook_token:, params: {})
231
- send_request(:post, "/webhooks/#{webhook_id}/#{webhook_token}/github", params:)
232
- end
233
-
234
- ##
235
- # @param webhook_id [#to_s]
236
- # {https://discord.com/developers/docs/reference#snowflakes Discord
237
- # documentation "Snowflakes"}
238
- # @param webhook_token [#to_s]
239
- # @param message_id [#to_s]
240
- # {https://discord.com/developers/docs/reference#snowflakes Discord
241
- # documentation "Snowflakes"}
242
- # @param params [Hash] optional HTTP query parameters
243
- #
244
- # @return [Response]
245
- #
246
- # @raise [TimeoutError] if the HTTP request times out
247
- # @raise [ConstraintError] if +params+ cannot be coerced into a valid query
248
- # parameters string
249
- #
250
- # @see https://discord.com/developers/docs/resources/webhook#get-webhook-message
251
- # Discord documentation "Get Webhook Message"
252
- def get_webhook_message(webhook_id:, webhook_token:, message_id:, params: {})
253
- send_request(:get, "/webhooks/#{webhook_id}/#{webhook_token}/messages/#{message_id}", params:)
254
- end
255
-
256
- ##
257
- # @param webhook_id [#to_s]
258
- # {https://discord.com/developers/docs/reference#snowflakes Discord
259
- # documentation "Snowflakes"}
260
- # @param webhook_token [#to_s]
261
- # @param message_id [#to_s]
262
- # {https://discord.com/developers/docs/reference#snowflakes Discord
263
- # documentation "Snowflakes"}
264
- # @param json [#to_json] JSON serializable payload
265
- # @param params [Hash] optional HTTP query parameters
266
- #
267
- # @return [Response]
268
- #
269
- # @raise [TimeoutError] if the HTTP request times out
270
- # @raise [ConstraintError] if +json+ cannot be serialized to JSON
271
- # @raise [ConstraintError] if +params+ cannot be coerced into a valid query
272
- # parameters string
273
- #
274
- # @see https://discord.com/developers/docs/resources/webhook#edit-webhook-message
275
- # Discord documentation "Edit Webhook Message"
276
- def edit_webhook_message(webhook_id:, webhook_token:, message_id:, json:, params: {})
277
- send_request(:patch, "/webhooks/#{webhook_id}/#{webhook_token}/messages/#{message_id}", json:, params:)
278
- end
279
-
280
- ##
281
- # @param webhook_id [#to_s]
282
- # {https://discord.com/developers/docs/reference#snowflakes Discord
283
- # documentation "Snowflakes"}
284
- # @param webhook_token [#to_s]
285
- # @param message_id [#to_s]
286
- # {https://discord.com/developers/docs/reference#snowflakes Discord
287
- # documentation "Snowflakes"}
288
- #
289
- # @return [Response]
290
- #
291
- # @raise [TimeoutError] if the HTTP request times out
292
- #
293
- # @see https://discord.com/developers/docs/resources/webhook#delete-webhook-message
294
- # Discord documentation "Delete Webhook Message"
295
- def delete_webhook_message(webhook_id:, webhook_token:, message_id:)
296
- send_request(:delete, "/webhooks/#{webhook_id}/#{webhook_token}/messages/#{message_id}")
297
- end
298
- end
299
- end