updating
This commit is contained in:
parent
af720569bc
commit
98a87005b0
8 changed files with 70 additions and 56 deletions
|
@ -1,3 +1,12 @@
|
|||
# 1.3.0
|
||||
- Renamed `calculateIntents` to `intentsCalculator`
|
||||
- Add Docs in Guild Class
|
||||
- Add GuildDiscoverySplash
|
||||
- Fix `guild_icon`
|
||||
- Fix `guild_splash`
|
||||
- Removed `base_image`
|
||||
- Removed `notUpdatedGuild` from UnavailableGuild
|
||||
|
||||
# 1.2.0
|
||||
- Add `client`
|
||||
- Add Event Emitter/Listener (`client.on`)
|
||||
|
|
|
@ -1,3 +1,4 @@
|
|||
import '../images/guild_discovery_splash.dart';
|
||||
import '../images/guild_icon.dart';
|
||||
|
||||
import '../../requests.dart';
|
||||
|
@ -17,23 +18,28 @@ class Guild {
|
|||
MemberManager? members;
|
||||
RoleManager? roles;
|
||||
|
||||
// Param guild create | fetch | fetch-servers
|
||||
/// The guild's id <br>
|
||||
/// ✅ GuildCreate, GuildUpdate, GuildDelete, FetchOneGuild, FetchAllGuild
|
||||
/// The guild's id
|
||||
late String id;
|
||||
/// Whether the guild is available to access. If it is not available, it indicates a server outage
|
||||
/// ✅ GuildCreate, GuildDelete
|
||||
/// ❎ FetchOneGuild, FetchAllGuild, GuildUpdate
|
||||
late bool unavailable;
|
||||
late String name; // x | x | x
|
||||
late GuildIcon? icon; // x | x | x
|
||||
late String? iconHash; // x | x |
|
||||
String? splashHash; // x | x |
|
||||
GuildSplash? splash;
|
||||
String? discoverySplash; // x | x |
|
||||
bool? appIsOwner; // | | x
|
||||
Future<Member>? owner; // | |
|
||||
String? ownerId; // x | x |
|
||||
bool unavailable = false;
|
||||
/// The name of this guild
|
||||
late String name;
|
||||
/// The icon hash of this guild
|
||||
late String? iconHash;
|
||||
/// The icon of this guild
|
||||
late GuildIcon? icon;
|
||||
/// The hash of the guild invite splash image
|
||||
late String? splashHash;
|
||||
/// The guild invite splash image of this guild
|
||||
late GuildSplash? splash;
|
||||
/// The hash of the guild discovery splash image
|
||||
late String? discoverySplashHash;
|
||||
/// The guild discovery splash image of this guild
|
||||
late GuildDiscoverySplash? discoverySplash;
|
||||
/// The owner of this guild
|
||||
late Future<Member>? owner;
|
||||
/// The owner id of this guild
|
||||
String? ownerId;
|
||||
String? permissions; // | | x
|
||||
String? afkChannelId; // x | x |
|
||||
int? afkTimeout; // x | x |
|
||||
|
@ -66,6 +72,7 @@ class Guild {
|
|||
String? joinedAt; // x | |
|
||||
bool? large; // x | |
|
||||
int? memberCount; // x | |
|
||||
// Param guild create | fetch | fetch-servers
|
||||
|
||||
Guild(this._sender, Map data) {
|
||||
id = data["id"];
|
||||
|
@ -93,27 +100,32 @@ class Guild {
|
|||
roles = RoleManager([]);
|
||||
}
|
||||
|
||||
unavailable = false;
|
||||
name = data["name"];
|
||||
if (data["icon"] != null) {
|
||||
icon = GuildIcon(data["icon"], id);
|
||||
|
||||
iconHash = data["icon_hash"];
|
||||
if (iconHash != null) {
|
||||
icon = GuildIcon(iconHash!, id);
|
||||
} else {
|
||||
icon = null;
|
||||
}
|
||||
iconHash = data["icon_hash"];
|
||||
|
||||
splashHash = data["splash"];
|
||||
if (splashHash != null) {
|
||||
splash = GuildSplash(splashHash.toString(), id);
|
||||
splash = GuildSplash(splashHash!, id);
|
||||
} else {
|
||||
splash = null;
|
||||
}
|
||||
if (data["discovery_splash"] != null) {
|
||||
discoverySplash = data["discovery_splash"];
|
||||
|
||||
discoverySplashHash = data["discovery_splash"];
|
||||
if (discoverySplashHash != null) {
|
||||
discoverySplash = GuildDiscoverySplash(discoverySplashHash!, id);
|
||||
} else {
|
||||
discoverySplash = null;
|
||||
}
|
||||
appIsOwner = data["owner"];
|
||||
|
||||
ownerId = data["owner_id"];
|
||||
if (ownerId != null) {
|
||||
owner = members?.fetch(ownerId.toString());
|
||||
owner = members!.fetch(ownerId.toString());
|
||||
} else {
|
||||
owner = null;
|
||||
}
|
||||
|
|
|
@ -1,11 +1,9 @@
|
|||
import "guild.dart";
|
||||
|
||||
/// A guild involved in a server outage.
|
||||
class UnavailableGuild {
|
||||
/// The guild's id
|
||||
late String id;
|
||||
late bool unavailable;
|
||||
late Guild? notUpdatedGuild;
|
||||
/// Whether the guild is available to access. If it is not available, it indicates a server outage
|
||||
bool unavailable = true;
|
||||
|
||||
UnavailableGuild(this.id, { this.notUpdatedGuild }) {
|
||||
unavailable = true;
|
||||
}
|
||||
UnavailableGuild(this.id);
|
||||
}
|
|
@ -1,4 +0,0 @@
|
|||
class BaseImage {
|
||||
late String hash;
|
||||
BaseImage(this.hash);
|
||||
}
|
10
lib/src/classes/images/guild_discovery_splash.dart
Normal file
10
lib/src/classes/images/guild_discovery_splash.dart
Normal file
|
@ -0,0 +1,10 @@
|
|||
class GuildDiscoverySplash {
|
||||
late String id;
|
||||
late String hash;
|
||||
|
||||
GuildDiscoverySplash(this.hash, this.id);
|
||||
|
||||
String url({String? extension = "jpeg"}) {
|
||||
return "https://cdn.discordapp.com/discovery-splashes/$id/$hash.$extension";
|
||||
}
|
||||
}
|
|
@ -1,11 +1,8 @@
|
|||
import 'base_image.dart';
|
||||
|
||||
class GuildIcon extends BaseImage {
|
||||
class GuildIcon {
|
||||
late String id;
|
||||
late String hash;
|
||||
|
||||
GuildIcon(String hash, this.id) : super(hash) {
|
||||
this.hash = hash;
|
||||
}
|
||||
GuildIcon(this.hash, this.id);
|
||||
|
||||
String url({String? extension = "jpeg"}) {
|
||||
return "https://cdn.discordapp.com/icons/$id/$hash.$extension";
|
||||
|
|
|
@ -1,11 +1,8 @@
|
|||
import 'base_image.dart';
|
||||
|
||||
class GuildSplash extends BaseImage {
|
||||
class GuildSplash {
|
||||
late String id;
|
||||
late String hash;
|
||||
|
||||
GuildSplash(String hash, this.id) : super(hash) {
|
||||
this.hash = hash;
|
||||
}
|
||||
GuildSplash(this.hash, this.id);
|
||||
|
||||
String url({String? extension = "jpeg"}) {
|
||||
return "https://cdn.discordapp.com/splashes/$id/$hash.$extension";
|
||||
|
|
|
@ -20,7 +20,7 @@ final apiURL = "https://discord.com/api/v$version";
|
|||
/// This function calculate the intent number required from the gateway.
|
||||
/// [intents] is a list of multiples of two. You can use GatewayIntentBits class.
|
||||
/// Return a number.
|
||||
int calculateIntents(List<int> intents) {
|
||||
int intentsCalculator(List<int> intents) {
|
||||
int intentsNumber = 0;
|
||||
|
||||
for (var element in intents) {
|
||||
|
@ -138,9 +138,6 @@ class Client extends EventEmitter {
|
|||
case "GUILD_CREATE":
|
||||
if (guilds.cache.has(event["d"]["id"])) {
|
||||
Guild oldGuild = guilds.cache.get(event["d"]["id"]);
|
||||
if (oldGuild.appIsOwner != null) {
|
||||
event['d']["owner"] = oldGuild.appIsOwner;
|
||||
}
|
||||
if (oldGuild.permissions != null) {
|
||||
event['d']["permissions"] = oldGuild.permissions;
|
||||
}
|
||||
|
@ -156,13 +153,11 @@ class Client extends EventEmitter {
|
|||
}
|
||||
break;
|
||||
case "GUILD_DELETE":
|
||||
dynamic guild;
|
||||
if (guilds.cache.has(event["d"]["id"])) {
|
||||
guild = guilds.cache.get(event["d"]["id"]);
|
||||
guilds.cache.set(event["d"]["id"], UnavailableGuild(event["d"]["id"], notUpdatedGuild: guild));
|
||||
} else {
|
||||
guild = event["d"];
|
||||
guilds.cache.delete(event["d"]["id"]);
|
||||
guilds.cache.set(event["d"]["id"], UnavailableGuild(event["d"]["id"],));
|
||||
}
|
||||
var guild = event["d"];
|
||||
emit("GUILD_DELETE", guild);
|
||||
break;
|
||||
case "INTERACTION_CREATE":
|
||||
|
|
Reference in a new issue