This commit is contained in:
ITOH
2021-04-09 23:07:20 +02:00
parent b40aaf5a8f
commit 7a6b4bf2d7
41 changed files with 233 additions and 190 deletions
+3 -3
View File
@@ -7,8 +7,8 @@ import { DiscordGatewayPayload } from "../../types/gateway/gateway_payload.ts";
export async function handleChannelCreate(data: DiscordGatewayPayload) {
const payload = data.d as DiscordChannel;
const channelStruct = await structures.createChannelStruct(payload);
await cacheHandlers.set("channels", channelStruct.id, channelStruct);
const discordenoChannel = await structures.createDiscordenoChannel(payload);
await cacheHandlers.set("channels", discordenoChannel.id, discordenoChannel);
eventHandlers.channelCreate?.(channelStruct);
eventHandlers.channelCreate?.(discordenoChannel);
}
+3 -3
View File
@@ -8,10 +8,10 @@ export async function handleChannelUpdate(data: DiscordGatewayPayload) {
const payload = data.d as DiscordChannel;
const cachedChannel = await cacheHandlers.get("channels", payload.id);
const channelStruct = await structures.createChannelStruct(payload);
await cacheHandlers.set("channels", channelStruct.id, channelStruct);
const discordenoChannel = await structures.createDiscordenoChannel(payload);
await cacheHandlers.set("channels", discordenoChannel.id, discordenoChannel);
if (!cachedChannel) return;
eventHandlers.channelUpdate?.(channelStruct, cachedChannel);
eventHandlers.channelUpdate?.(discordenoChannel, cachedChannel);
}
+5 -5
View File
@@ -13,11 +13,11 @@ export async function handleGuildCreate(
// When shards resume they emit GUILD_CREATE again.
if (await cacheHandlers.has("guilds", payload.id)) return;
const guildStruct = await structures.createGuildStruct(
const discordenoGuild = await structures.createDiscordenoGuild(
payload,
shardId,
);
await cacheHandlers.set("guilds", guildStruct.id, guildStruct);
await cacheHandlers.set("guilds", discordenoGuild.id, discordenoGuild);
const shard = ws.shards.get(shardId);
@@ -26,9 +26,9 @@ export async function handleGuildCreate(
shard.unavailableGuildIds.delete(payload.id);
return eventHandlers.guildAvailable?.(guildStruct);
return eventHandlers.guildAvailable?.(discordenoGuild);
}
if (!cache.isReady) return eventHandlers.guildLoaded?.(guildStruct);
eventHandlers.guildCreate?.(guildStruct);
if (!cache.isReady) return eventHandlers.guildLoaded?.(discordenoGuild);
eventHandlers.guildCreate?.(discordenoGuild);
}
@@ -5,16 +5,16 @@ import { DiscordGatewayPayload } from "../../types/gateway/gateway_payload.ts";
export async function handleInteractionCreate(data: DiscordGatewayPayload) {
const payload = data.d as InteractionCommandPayload;
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
payload.member,
payload.guild_id,
);
await cacheHandlers.set("members", memberStruct.id, memberStruct);
await cacheHandlers.set("members", discordenoMember.id, discordenoMember);
eventHandlers.interactionCreate?.(
{
...payload,
member: memberStruct,
member: discordenoMember,
},
);
}
+3 -3
View File
@@ -9,13 +9,13 @@ export async function handleGuildMembersChunk(data: DiscordGatewayPayload) {
const members = await Promise.all(
payload.members.map(async (member) => {
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
member,
payload.guild_id,
);
await cacheHandlers.set("members", memberStruct.id, memberStruct);
await cacheHandlers.set("members", discordenoMember.id, discordenoMember);
return memberStruct;
return discordenoMember;
}),
);
+3 -3
View File
@@ -10,11 +10,11 @@ export async function handleGuildMemberAdd(data: DiscordGatewayPayload) {
if (!guild) return;
guild.memberCount++;
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
payload,
payload.guild_id,
);
await cacheHandlers.set("members", memberStruct.id, memberStruct);
await cacheHandlers.set("members", discordenoMember.id, discordenoMember);
eventHandlers.guildMemberAdd?.(guild, memberStruct);
eventHandlers.guildMemberAdd?.(guild, discordenoMember);
}
+7 -7
View File
@@ -23,24 +23,24 @@ export async function handleGuildMemberUpdate(data: DiscordGatewayPayload) {
mute: guildMember?.mute || false,
roles: payload.roles,
};
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
newMemberData,
payload.guild_id,
);
await cacheHandlers.set("members", memberStruct.id, memberStruct);
await cacheHandlers.set("members", discordenoMember.id, discordenoMember);
if (guildMember) {
if (guildMember.nick !== payload.nick) {
eventHandlers.nicknameUpdate?.(
guild,
memberStruct,
discordenoMember,
payload.nick!,
guildMember.nick,
);
}
if (payload.pending === false && guildMember.pending === true) {
eventHandlers.membershipScreeningPassed?.(guild, memberStruct);
eventHandlers.membershipScreeningPassed?.(guild, discordenoMember);
}
const roleIds = guildMember.roles || [];
@@ -51,7 +51,7 @@ export async function handleGuildMemberUpdate(data: DiscordGatewayPayload) {
`1. Running forEach loop in GUILD_MEMBER_UPDATE file.`,
);
if (!payload.roles.includes(id)) {
eventHandlers.roleLost?.(guild, memberStruct, id);
eventHandlers.roleLost?.(guild, discordenoMember, id);
}
});
@@ -61,10 +61,10 @@ export async function handleGuildMemberUpdate(data: DiscordGatewayPayload) {
`2. Running forEach loop in GUILD_MEMBER_UPDATE file.`,
);
if (!roleIds.includes(id)) {
eventHandlers.roleGained?.(guild, memberStruct, id);
eventHandlers.roleGained?.(guild, discordenoMember, id);
}
});
}
eventHandlers.guildMemberUpdate?.(guild, memberStruct, cachedMember);
eventHandlers.guildMemberUpdate?.(guild, discordenoMember, cachedMember);
}
+9 -5
View File
@@ -15,26 +15,30 @@ export async function handleMessageCreate(data: DiscordGatewayPayload) {
if (payload.member && guild) {
// If in a guild cache the author as a member
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
{ ...payload.member, user: payload.author },
guild.id,
);
await cacheHandlers.set("members", memberStruct.id, memberStruct);
await cacheHandlers.set("members", discordenoMember.id, discordenoMember);
}
await Promise.all(payload.mentions.map(async (mention) => {
// Cache the member if its a valid member
if (mention.member && guild) {
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
{ ...mention.member, user: mention },
guild.id,
);
return cacheHandlers.set("members", memberStruct.id, memberStruct);
return cacheHandlers.set(
"members",
discordenoMember.id,
discordenoMember,
);
}
}));
const message = await structures.createMessageStruct(payload);
const message = await structures.createDiscordenoMessage(payload);
// Cache the message
await cacheHandlers.set("messages", payload.id, message);
@@ -33,11 +33,11 @@ export async function handleMessageReactionAdd(data: DiscordGatewayPayload) {
if (payload.member && payload.guild_id) {
const guild = await cacheHandlers.get("guilds", payload.guild_id);
if (guild) {
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
payload.member,
guild.id,
);
await cacheHandlers.set("members", memberStruct.id, memberStruct);
await cacheHandlers.set("members", discordenoMember.id, discordenoMember);
}
}
@@ -35,11 +35,11 @@ export async function handleMessageReactionRemove(
if (payload.member && payload.guild_id) {
const guild = await cacheHandlers.get("guilds", payload.guild_id);
if (guild) {
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
payload.member,
guild.id,
);
await cacheHandlers.set("members", memberStruct.id, memberStruct);
await cacheHandlers.set("members", discordenoMember.id, discordenoMember);
}
}
+1 -1
View File
@@ -29,7 +29,7 @@ export async function handleMessageUpdate(data: DiscordGatewayPayload) {
return;
}
const message = await structures.createMessageStruct(payload);
const message = await structures.createDiscordenoMessage(payload);
await cacheHandlers.set("messages", payload.id, message);
+3 -3
View File
@@ -102,15 +102,15 @@ async function loaded(shardId: number) {
);
await Promise.allSettled(
members.map(async (member) => {
const memberStruct = await structures.createMemberStruct(
const discordenoMember = await structures.createDiscordenoMember(
snakeKeysToCamelCase(member),
guildId,
);
return cacheHandlers.set(
"members",
memberStruct.id,
memberStruct,
discordenoMember.id,
discordenoMember,
);
}),
);
+1 -1
View File
@@ -8,7 +8,7 @@ export async function handleGuildRoleCreate(data: DiscordGatewayPayload) {
const guild = await cacheHandlers.get("guilds", payload.guild_id);
if (!guild) return;
const role = await structures.createRoleStruct(payload.role);
const role = await structures.createDiscordenoRole(payload.role);
guild.roles = guild.roles.set(payload.role.id, role);
await cacheHandlers.set("guilds", payload.guild_id, guild);
+1 -1
View File
@@ -11,7 +11,7 @@ export async function handleGuildRoleUpdate(data: DiscordGatewayPayload) {
const cachedRole = guild.roles.get(payload.role.id);
if (!cachedRole) return;
const role = await structures.createRoleStruct(payload.role);
const role = await structures.createDiscordenoRole(payload.role);
guild.roles.set(payload.role.id, role);
await cacheHandlers.set("guilds", guild.id, guild);
+1 -1
View File
@@ -12,7 +12,7 @@ export async function handleVoiceStateUpdate(data: DiscordGatewayPayload) {
if (!guild) return;
const member = payload.member
? await structures.createMemberStruct(payload.member, guild.id)
? await structures.createDiscordenoMember(payload.member, guild.id)
: await cacheHandlers.get("members", payload.user_id);
if (!member) return;