Skip to content

Commit 1376129

Browse files
committed
Exported Models, Fixes
1 parent 1c8c342 commit 1376129

File tree

4 files changed

+137
-4
lines changed

4 files changed

+137
-4
lines changed

lib/discord_api.dart

Lines changed: 120 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,120 @@
1-
library discord_api;
1+
library discord_api;
2+
3+
export 'src/discord_client.dart';
4+
export 'src/discord_cdn_helper.dart';
5+
6+
export 'src/providers/discord_http_client.dart';
7+
export 'src/providers/discord_dio_provider.dart'; //! TEMPORARY
8+
9+
export 'src/extensions/string_extensions.dart';
10+
export 'src/exceptions/discord_api_exceptions.dart';
11+
12+
export 'src/models/discord_activity_assets.dart';
13+
export 'src/models/discord_activity_button.dart';
14+
export 'src/models/discord_activity_flag.dart';
15+
export 'src/models/discord_activity_party.dart';
16+
export 'src/models/discord_activity_secrets.dart';
17+
export 'src/models/discord_activity_timestamps.dart';
18+
export 'src/models/discord_activity_type.dart';
19+
export 'src/models/discord_activity.dart';
20+
export 'src/models/discord_allowed_mentions.dart';
21+
export 'src/models/discord_api_scope.dart';
22+
export 'src/models/discord_application_flag.dart';
23+
export 'src/models/discord_application.dart';
24+
export 'src/models/discord_attachment.dart';
25+
export 'src/models/discord_audit_log_change_key.dart';
26+
export 'src/models/discord_audit_log_change.dart';
27+
export 'src/models/discord_audit_log_entry.dart';
28+
export 'src/models/discord_audit_log.dart';
29+
export 'src/models/discord_authorization_information.dart';
30+
export 'src/models/discord_ban.dart';
31+
export 'src/models/discord_channel_mention.dart';
32+
export 'src/models/discord_channel_type.dart';
33+
export 'src/models/discord_channel.dart';
34+
export 'src/models/discord_client_status.dart';
35+
export 'src/models/discord_connection_visibility_type.dart';
36+
export 'src/models/discord_connection.dart';
37+
export 'src/models/discord_embed_author.dart';
38+
export 'src/models/discord_embed_field.dart';
39+
export 'src/models/discord_embed_footer.dart';
40+
export 'src/models/discord_embed_image.dart';
41+
export 'src/models/discord_embed_provider.dart';
42+
export 'src/models/discord_embed_thumbnail.dart';
43+
export 'src/models/discord_embed_type.dart';
44+
export 'src/models/discord_embed_video.dart';
45+
export 'src/models/discord_embed.dart';
46+
export 'src/models/discord_emoji.dart';
47+
export 'src/models/discord_errors.dart';
48+
export 'src/models/discord_explicit_content_filter_level.dart';
49+
export 'src/models/discord_followed_channel.dart';
50+
export 'src/models/discord_guild_feature.dart';
51+
export 'src/models/discord_guild_member.dart';
52+
export 'src/models/discord_guild_premium_tier.dart';
53+
export 'src/models/discord_guild_preview.dart';
54+
export 'src/models/discord_guild_scheduled_event_entity_metadata.dart';
55+
export 'src/models/discord_guild_scheduled_event_entity_type.dart';
56+
export 'src/models/discord_guild_scheduled_event_privacy_level.dart';
57+
export 'src/models/discord_guild_scheduled_event_status.dart';
58+
export 'src/models/discord_guild_scheduled_event_user.dart';
59+
export 'src/models/discord_guild_scheduled_event.dart';
60+
export 'src/models/discord_guild_template.dart';
61+
export 'src/models/discord_guild_widget_settings.dart';
62+
export 'src/models/discord_guild_widget.dart';
63+
export 'src/models/discord_guild.dart';
64+
export 'src/models/discord_image_format.dart';
65+
export 'src/models/discord_integration_account.dart';
66+
export 'src/models/discord_integration_application.dart';
67+
export 'src/models/discord_integration_expiration_behavior.dart';
68+
export 'src/models/discord_integration.dart';
69+
export 'src/models/discord_invite_metadata.dart';
70+
export 'src/models/discord_invite_stage_instance.dart';
71+
export 'src/models/discord_invite_target_type.dart';
72+
export 'src/models/discord_invite.dart';
73+
export 'src/models/discord_membership_state.dart';
74+
export 'src/models/discord_mention_type.dart';
75+
export 'src/models/discord_message_activity_type.dart';
76+
export 'src/models/discord_message_activity.dart';
77+
export 'src/models/discord_message_component_type.dart';
78+
export 'src/models/discord_message_component.dart';
79+
export 'src/models/discord_message_flag.dart';
80+
export 'src/models/discord_message_interaction_type.dart';
81+
export 'src/models/discord_message_interaction.dart';
82+
export 'src/models/discord_message_notifications_level.dart';
83+
export 'src/models/discord_message_reference.dart';
84+
export 'src/models/discord_message_type.dart';
85+
export 'src/models/discord_message.dart';
86+
export 'src/models/discord_mfa_level.dart';
87+
export 'src/models/discord_nsfw_level.dart';
88+
export 'src/models/discord_optional_audit_entry_info.dart';
89+
export 'src/models/discord_overwrite_type.dart';
90+
export 'src/models/discord_overwrite.dart';
91+
export 'src/models/discord_premium_type.dart';
92+
export 'src/models/discord_presence_update.dart';
93+
export 'src/models/discord_reaction.dart';
94+
export 'src/models/discord_role_tags.dart';
95+
export 'src/models/discord_role.dart';
96+
export 'src/models/discord_snowflake.dart';
97+
export 'src/models/discord_stage_instance.dart';
98+
export 'src/models/discord_stage_privacy_level.dart';
99+
export 'src/models/discord_status.dart';
100+
export 'src/models/discord_sticker_format_type.dart';
101+
export 'src/models/discord_sticker_item.dart';
102+
export 'src/models/discord_sticker_pack.dart';
103+
export 'src/models/discord_sticker_type.dart';
104+
export 'src/models/discord_sticker.dart';
105+
export 'src/models/discord_system_channel_flag.dart';
106+
export 'src/models/discord_team_member.dart';
107+
export 'src/models/discord_team.dart';
108+
export 'src/models/discord_thread_member.dart';
109+
export 'src/models/discord_thread_metadata.dart';
110+
export 'src/models/discord_token_webhook.dart';
111+
export 'src/models/discord_token.dart';
112+
export 'src/models/discord_user_flag.dart';
113+
export 'src/models/discord_user.dart';
114+
export 'src/models/discord_verification_level.dart';
115+
export 'src/models/discord_video_quality_mode.dart';
116+
export 'src/models/discord_voice_region.dart';
117+
export 'src/models/discord_voice_state.dart';
118+
export 'src/models/discord_webhook.dart';
119+
export 'src/models/discord_welcome_screen_channel.dart';
120+
export 'src/models/discord_welcome_screen.dart';

lib/src/discord_client.dart

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ import 'exceptions/discord_api_exceptions.dart';
77
import 'models/discord_api_scope.dart';
88
import 'models/discord_authorization_information.dart';
99
import 'models/discord_token.dart';
10+
import 'models/discord_user.dart';
1011
import 'providers/discord_http_client.dart';
1112

1213
class DiscordClient {
@@ -92,4 +93,16 @@ class DiscordClient {
9293
throw DiscordApiException(e.toString());
9394
}
9495
}
96+
97+
Future<DiscordUser> getCurrentUser() async {
98+
try {
99+
final data = await discordHttpClient.getCall([
100+
"users",
101+
"@me",
102+
]);
103+
return DiscordUser.fromJson(data);
104+
} catch (e) {
105+
throw DiscordApiException(e.toString());
106+
}
107+
}
95108
}

lib/src/models/discord_token.dart

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -38,8 +38,10 @@ class DiscordToken {
3838
scope: json[scopeEntry] as String,
3939
tokenType: json[tokenTypeEntry] as String,
4040
expiresIn: json[expiresInEntry] as int,
41-
webhook: DiscordTokenWebhook.fromJson(
42-
json[webhookEntry] as Map<String, dynamic>),
41+
webhook: json[webhookEntry] != null
42+
? DiscordTokenWebhook.fromJson(
43+
json[webhookEntry] as Map<String, dynamic>)
44+
: null,
4345
);
4446

4547
DiscordToken copyWith({

lib/src/providers/discord_dio_provider.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,6 @@ class DiscordDioProvider extends DiscordHttpClient {
165165

166166
@override
167167
Future<DiscordToken> getAccessToken(String code, String redirectUri) async {
168-
assert(_discordToken != null);
169168
final options = Options(
170169
contentType: Headers.formUrlEncodedContentType,
171170
);

0 commit comments

Comments
 (0)