Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | import { Services } from "@/types/Constants"; import { Inject, Injectable } from "@nestjs/common"; import { Client } from "discord.js"; import { Context, ContextOf, On } from "necord"; import type { IDatabaseService } from "../../shared/database/interfaces/IDatabaseService"; @Injectable() export class GuildEvents { public constructor( @Inject(Services.Database) private readonly database: IDatabaseService, private readonly client: Client, ) {} @On("guildCreate") public async onGuildCreate(@Context() [guild]: ContextOf<"guildCreate">) { await this.database.GuildRepo().create(guild); } @On("guildDelete") public async onGuildDelete(@Context() [guild]: ContextOf<"guildDelete">) { await this.database.GuildRepo().delete(guild); } @On("guildUpdate") public async onGuildUpdate(@Context() [oldGuild, newGuild]: ContextOf<"guildUpdate">) { await this.database.GuildRepo().update(oldGuild, newGuild); } @On("guildMemberRemove") public async onGuildMemberRemove(@Context() [member]: ContextOf<"guildMemberRemove">) { if (member.id === this.client.user.id) { await this.database.GuildRepo().delete(member.guild); } } } |