darkcord
Version:
A NodeJS Package to interact with Discord API
42 lines (41 loc) • 1.56 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.AuditLog = void 0;
const Integration_1 = require("./Integration");
const Webhook_1 = require("./Webhook");
class AuditLog {
applicationCommands;
webhooks;
users;
auditLogEntries;
autoModerationRules;
integrations;
threads;
guildScheduledEvents;
constructor(data) {
this.applicationCommands = data.application_commands;
this.auditLogEntries = data.audit_log_entries;
this.guildScheduledEvents = data.guild_scheduled_events;
// Users
const usersIdMap = data.users.map((u) => u.id);
this.users = data.client.users.cache.filter((u) => usersIdMap.includes(u.id));
// Webhooks
this.webhooks = new Map();
if ("webhooks" in data && data.webhooks) {
for (const webhook of data.webhooks) {
this.webhooks.set(webhook.id, new Webhook_1.Webhook({ ...webhook, client: data.client }));
}
}
// Threads
const threadsIdMap = data.threads.map((thread) => thread.id);
this.threads = data.guild.channels.cache.filter((c) => threadsIdMap.includes(c.id));
// Integrations
this.integrations = new Map();
if ("integrations" in data && data.integrations) {
for (const rawIntegration of data.integrations) {
this.integrations.set(rawIntegration.id, new Integration_1.Integration(rawIntegration, data.guild));
}
}
}
}
exports.AuditLog = AuditLog;