From 2ead87d1c6844deae12fde68eac1125b41990fb0 Mon Sep 17 00:00:00 2001 From: Alexander Emanuelsson Date: Sat, 27 Jul 2024 14:51:33 +0200 Subject: [PATCH] Fix some imports --- src/discordEvents/messageCreate.ts | 10 +-- src/discordTools/discord-select-menus.ts | 4 +- src/discordTools/discord-tools.ts | 53 ++++++------ src/discordTools/discordEmbeds.js | 12 +-- src/discordTools/discordMessages.js | 40 ++++----- src/discordTools/remove-guild-channels.ts | 6 +- src/discordTools/setup-guild-category.ts | 6 +- src/discordTools/setup-guild-channels.ts | 6 +- src/discordTools/setup-server-list.ts | 4 +- src/discordTools/setup-settings-menu.ts | 66 ++++++--------- src/discordTools/setup-storage-monitors.ts | 4 +- src/discordTools/setup-switch-groups.ts | 4 +- src/discordTools/setup-switches.ts | 4 +- src/discordTools/setup-trackers.ts | 4 +- src/handlers/battlemetricsHandler.js | 4 +- src/handlers/buttonHandler.js | 97 ++++++++++------------ src/handlers/discordCommandHandler.js | 6 +- src/handlers/permissionHandler.js | 6 +- src/handlers/selectMenuHandler.js | 16 ++-- src/rustplusEvents/error.js | 2 - src/structures/DiscordBot.js | 6 +- src/structures/RustPlus.js | 4 +- src/util/FcmListener.js | 11 +-- src/util/FcmListenerLite.js | 4 +- 24 files changed, 174 insertions(+), 205 deletions(-) diff --git a/src/discordEvents/messageCreate.ts b/src/discordEvents/messageCreate.ts index d1aa629ad..7424d3f68 100644 --- a/src/discordEvents/messageCreate.ts +++ b/src/discordEvents/messageCreate.ts @@ -21,7 +21,7 @@ import { Message } from 'discord.js'; import { log } from '../../index'; -import { getGuild, getTextChannel } from '../discordTools/discord-tools'; +import * as discordTools from '../discordTools/discord-tools'; const { DiscordBot } = require('../structures/DiscordBot.js'); const DiscordCommandHandler = require('../handlers/discordCommandHandler.js'); @@ -38,9 +38,9 @@ export async function execute(client: typeof DiscordBot, message: Message) { if (instance.blacklist['discordIds'].includes(message.author.id) && Object.values(instance.channelIds).includes(message.channelId)) { - const guild = await getGuild(client, guildId); + const guild = await discordTools.getGuild(client, guildId); if (!guild) return; - const channel = await getTextChannel(client, guild.id, message.channelId); + const channel = await discordTools.getTextChannel(client, guild.id, message.channelId); if (!channel) return; log.info(client.intlGet(null, `userPartOfBlacklistDiscord`, { guild: `${guild.name} (${guild.id})`, @@ -55,9 +55,9 @@ export async function execute(client: typeof DiscordBot, message: Message) { await DiscordCommandHandler.discordCommandHandler(rustplus, client, message); } else if (message.channelId === instance.channelIds.teamchat) { - const guild = await getGuild(client, guildId); + const guild = await discordTools.getGuild(client, guildId); if (!guild) return; - const channel = await getTextChannel(client, guild.id, message.channelId); + const channel = await discordTools.getTextChannel(client, guild.id, message.channelId); if (!channel) return; log.info(client.intlGet(null, `logDiscordMessage`, { guild: `${guild.name} (${guild.id})`, diff --git a/src/discordTools/discord-select-menus.ts b/src/discordTools/discord-select-menus.ts index 9962f8a2d..ef6f2b7f1 100644 --- a/src/discordTools/discord-select-menus.ts +++ b/src/discordTools/discord-select-menus.ts @@ -25,7 +25,7 @@ import * as path from 'path'; import * as guildInstance from '../util/guild-instance'; import { localeManager as lm } from "../../index"; import { languageCodes } from "../util/languages"; -import * as Constants from '../util/constants'; +import * as constants from '../util/constants'; export interface SelectMenuOptions { @@ -53,7 +53,7 @@ export function getSelectMenu(guildId: string, options: SelectMenuOptions = {}): option.description = lm.getIntl(instance.generalSettings.language, 'empty'); continue; } - option.description = option.description.substring(0, Constants.SELECT_MENU_MAX_DESCRIPTION_CHARACTERS); + option.description = option.description.substring(0, constants.SELECT_MENU_MAX_DESCRIPTION_CHARACTERS); } selectMenu.setOptions(options.options); } diff --git a/src/discordTools/discord-tools.ts b/src/discordTools/discord-tools.ts index 5c010e0c2..64552101f 100644 --- a/src/discordTools/discord-tools.ts +++ b/src/discordTools/discord-tools.ts @@ -18,14 +18,14 @@ */ -import { Guild, Role, GuildMember, GuildBasedChannel, TextChannel, ChannelType, CategoryChannel, Message, PermissionFlagsBits } from 'discord.js'; +import * as discordjs from 'discord.js'; import { log } from '../../index'; import { localeManager as lm } from '../../index'; const Config = require('../../config'); const { DiscordBot } = require('../structures/DiscordBot.js'); -export async function getGuild(client: typeof DiscordBot, guildId: string): Promise { +export async function getGuild(client: typeof DiscordBot, guildId: string): Promise { try { if (!Config.discord.useCache) { await client.guilds.fetch(); @@ -39,10 +39,10 @@ export async function getGuild(client: typeof DiscordBot, guildId: string): Prom } export async function getRole(client: typeof DiscordBot, guildId: string, role: string, isRoleId: boolean = true): - Promise { + Promise { const guild = await getGuild(client, guildId); - if (guild instanceof Guild) { + if (guild instanceof discordjs.Guild) { try { if (!Config.discord.useCache) { await guild.roles.fetch(); @@ -62,10 +62,10 @@ export async function getRole(client: typeof DiscordBot, guildId: string, role: } export async function getMember(client: typeof DiscordBot, guildId: string, member: string, isMemberId: boolean = true): - Promise { + Promise { const guild = await getGuild(client, guildId); - if (guild instanceof Guild) { + if (guild instanceof discordjs.Guild) { try { if (!Config.discord.useCache) { await guild.members.fetch(); @@ -85,10 +85,10 @@ export async function getMember(client: typeof DiscordBot, guildId: string, memb } async function getChannel(client: typeof DiscordBot, guildId: string, channel: string, isChannelId: boolean = true): - Promise { + Promise { const guild = await getGuild(client, guildId); - if (guild instanceof Guild) { + if (guild instanceof discordjs.Guild) { try { if (!Config.discord.useCache) { await guild.channels.fetch(); @@ -108,31 +108,31 @@ async function getChannel(client: typeof DiscordBot, guildId: string, channel: s } export async function getTextChannel(client: typeof DiscordBot, guildId: string, channel: string, - isChannelId: boolean = true): Promise { + isChannelId: boolean = true): Promise { const ch = await getChannel(client, guildId, channel, isChannelId); - if (ch && ch.type === ChannelType.GuildText) { - return ch as TextChannel; + if (ch && ch.type === discordjs.ChannelType.GuildText) { + return ch as discordjs.TextChannel; } return undefined; } export async function getCategory(client: typeof DiscordBot, guildId: string, category: string, - isCategoryId: boolean = true): Promise { + isCategoryId: boolean = true): Promise { const categoryChannel = await getChannel(client, guildId, category, isCategoryId); - if (categoryChannel && categoryChannel.type === ChannelType.GuildCategory) { - return categoryChannel as CategoryChannel; + if (categoryChannel && categoryChannel.type === discordjs.ChannelType.GuildCategory) { + return categoryChannel as discordjs.CategoryChannel; } return undefined; } export async function getMessage(client: typeof DiscordBot, guildId: string, channelId: string, messageId: string): - Promise { + Promise { const guild = await getGuild(client, guildId); - if (guild instanceof Guild) { + if (guild instanceof discordjs.Guild) { const channel = await getTextChannel(client, guildId, channelId); - if (channel instanceof TextChannel) { + if (channel instanceof discordjs.TextChannel) { try { /* Fetching the specific messageId because otherwise it only fetches last 50 messages. */ await channel.messages.fetch(messageId); @@ -148,7 +148,7 @@ export async function getMessage(client: typeof DiscordBot, guildId: string, cha export async function deleteMessage(client: typeof DiscordBot, guildId: string, channelId: string, messageId: string): Promise { const message = await getMessage(client, guildId, channelId, messageId); - if (message instanceof Message) { + if (message instanceof discordjs.Message) { try { await message.delete(); return true; @@ -160,24 +160,25 @@ export async function deleteMessage(client: typeof DiscordBot, guildId: string, } export async function createChannel(client: typeof DiscordBot, guildId: string, name: string, - type: ChannelType.GuildCategory | ChannelType.GuildText): Promise { + type: discordjs.ChannelType.GuildCategory | discordjs.ChannelType.GuildText): + Promise { const guild = await getGuild(client, guildId); - if (guild instanceof Guild) { + if (guild instanceof discordjs.Guild) { try { const channel = await guild.channels.create({ name: name, type: type, permissionOverwrites: [{ id: guild.roles.everyone.id, - deny: [PermissionFlagsBits.SendMessages] + deny: [discordjs.PermissionFlagsBits.SendMessages] }] }); - if (type === ChannelType.GuildCategory) { - return channel as CategoryChannel; - } else if (type === ChannelType.GuildText) { - return channel as TextChannel; + if (type === discordjs.ChannelType.GuildCategory) { + return channel as discordjs.CategoryChannel; + } else if (type === discordjs.ChannelType.GuildText) { + return channel as discordjs.TextChannel; } } catch (e) { } @@ -204,7 +205,7 @@ export async function clearTextChannel(client: typeof DiscordBot, guildId: strin numberOfMessages: number): Promise { const channel = await getTextChannel(client, guildId, channelId); - if (channel instanceof TextChannel) { + if (channel instanceof discordjs.TextChannel) { try { const messages = await channel.messages.fetch({ limit: numberOfMessages }); await channel.bulkDelete(messages, true); diff --git a/src/discordTools/discordEmbeds.js b/src/discordTools/discordEmbeds.js index ed69e7782..9115ea807 100644 --- a/src/discordTools/discordEmbeds.js +++ b/src/discordTools/discordEmbeds.js @@ -20,7 +20,7 @@ const Discord = require('discord.js'); -import { getMember } from './discord-tools'; +import * as discordTools from './discord-tools'; const Client = require('../../index.ts'); const Constants = require('../util/constants.ts'); const Credentials = require('../util/credentials.ts'); @@ -70,7 +70,7 @@ module.exports = { const server = instance.serverList[serverId]; let hoster = Client.client.intlGet(guildId, 'unknown'); if (credentials.hasOwnProperty(server.steamId)) { - hoster = await getMember(Client.client, guildId, credentials[server.steamId].discordUserId); + hoster = await discordTools.getMember(Client.client, guildId, credentials[server.steamId].discordUserId); hoster = hoster.user.username; } @@ -498,7 +498,7 @@ module.exports = { const server = instance.serverList[serverId]; const entity = server.storageMonitors[entityId]; const credentials = Credentials.readCredentialsFile(); - const user = await getMember(Client.client, guildId, credentials[server.steamId].discordUserId); + const user = await discordTools.getMember(Client.client, guildId, credentials[server.steamId].discordUserId); const grid = entity.location !== null ? ` (${entity.location})` : ''; return module.exports.getEmbed({ @@ -519,7 +519,7 @@ module.exports = { const server = instance.serverList[serverId]; const entity = instance.serverList[serverId].switches[entityId]; const credentials = Credentials.readCredentialsFile(); - const user = await getMember(Client.client, guildId, credentials[server.steamId].discordUserId); + const user = await discordTools.getMember(Client.client, guildId, credentials[server.steamId].discordUserId); const grid = entity.location !== null ? ` (${entity.location})` : ''; return module.exports.getEmbed({ @@ -540,7 +540,7 @@ module.exports = { const server = instance.serverList[serverId]; const entity = server.alarms[entityId]; const credentials = Credentials.readCredentialsFile(); - const user = await getMember(Client.client, guildId, credentials[server.steamId].discordUserId); + const user = await discordTools.getMember(Client.client, guildId, credentials[server.steamId].discordUserId); const grid = entity.location !== null ? ` (${entity.location})` : ''; return module.exports.getEmbed({ @@ -990,7 +990,7 @@ module.exports = { let hoster = ''; for (const credential in credentials) { - const user = await getMember(Client.client, guildId, credentials[credential].discordUserId); + const user = await discordTools.getMember(Client.client, guildId, credentials[credential].discordUserId); names += `${user.user.username}\n`; steamIds += `${credential}\n`; hoster += `${credential === instance.hoster ? `${Constants.LEADER_EMOJI}\n` : '\u200B\n'}`; diff --git a/src/discordTools/discordMessages.js b/src/discordTools/discordMessages.js index d30b78177..69b2507e6 100644 --- a/src/discordTools/discordMessages.js +++ b/src/discordTools/discordMessages.js @@ -22,19 +22,9 @@ const Discord = require('discord.js'); const Path = require('path'); import { log } from '../../index'; -import { getTextChannel, getMessage } from './discord-tools'; -import { getSmartSwitchSelectMenu } from './discord-select-menus'; -import { - getServerButtons, - getSmartSwitchButtons, - getSmartSwitchGroupButtons, - getSmartAlarmButtons, - getStorageMonitorToolCupboardButtons, - getStorageMonitorContainerButton, - getRecycleDeleteButton, - getTrackerButtons, - getHelpButtons -} from './discord-buttons'; +import * as discordTools from './discord-tools'; +import * as discordSelectMenus from './discord-select-menus'; +import * as discordButtons from './discord-buttons'; const Constants = require('../util/constants.ts'); const Client = require('../../index.ts'); const DiscordEmbeds = require('./discordEmbeds.js'); @@ -48,13 +38,13 @@ module.exports = { } let message = messageId !== null ? - await getMessage(Client.client, guildId, channelId, messageId) : undefined; + await discordTools.getMessage(Client.client, guildId, channelId, messageId) : undefined; if (message !== undefined) { return await Client.client.messageEdit(message, content); } else { - const channel = await getTextChannel(Client.client, guildId, channelId); + const channel = await discordTools.getTextChannel(Client.client, guildId, channelId); if (!channel) { log.error(Client.client.intlGet(null, 'couldNotGetChannelWithId', { id: channelId })); @@ -71,7 +61,7 @@ module.exports = { const content = { embeds: [await DiscordEmbeds.getServerEmbed(guildId, serverId)], - components: getServerButtons(Client.client, guildId, serverId, state) + components: discordButtons.getServerButtons(Client.client, guildId, serverId, state) } const message = await module.exports.sendMessage(guildId, content, server.messageId, @@ -89,7 +79,7 @@ module.exports = { const content = { embeds: [DiscordEmbeds.getTrackerEmbed(guildId, trackerId)], - components: getTrackerButtons(guildId, trackerId) + components: discordButtons.getTrackerButtons(guildId, trackerId) } const message = await module.exports.sendMessage(guildId, content, tracker.messageId, @@ -110,8 +100,8 @@ module.exports = { DiscordEmbeds.getSmartSwitchEmbed(guildId, serverId, entityId) : DiscordEmbeds.getNotFoundSmartDeviceEmbed(guildId, serverId, entityId, 'switches')], components: [ - getSmartSwitchSelectMenu(guildId, serverId, entityId), - getSmartSwitchButtons(guildId, serverId, entityId) + discordSelectMenus.getSmartSwitchSelectMenu(guildId, serverId, entityId), + discordButtons.getSmartSwitchButtons(guildId, serverId, entityId) ], files: [ new Discord.AttachmentBuilder(Path.join(__dirname, '..', `resources/images/electrics/${entity.image}`)) @@ -135,7 +125,7 @@ module.exports = { embeds: [entity.reachable ? DiscordEmbeds.getSmartAlarmEmbed(guildId, serverId, entityId) : DiscordEmbeds.getNotFoundSmartDeviceEmbed(guildId, serverId, entityId, 'alarms')], - components: [getSmartAlarmButtons(guildId, serverId, entityId)], + components: [discordButtons.getSmartAlarmButtons(guildId, serverId, entityId)], files: [new Discord.AttachmentBuilder( Path.join(__dirname, '..', `resources/images/electrics/${entity.image}`))] } @@ -158,8 +148,8 @@ module.exports = { DiscordEmbeds.getStorageMonitorEmbed(guildId, serverId, entityId) : DiscordEmbeds.getNotFoundSmartDeviceEmbed(guildId, serverId, entityId, 'storageMonitors')], components: [entity.type === 'toolCupboard' ? - getStorageMonitorToolCupboardButtons(guildId, serverId, entityId) : - getStorageMonitorContainerButton(guildId, serverId, entityId)], + discordButtons.getStorageMonitorToolCupboardButtons(guildId, serverId, entityId) : + discordButtons.getStorageMonitorContainerButton(guildId, serverId, entityId)], files: [ new Discord.AttachmentBuilder( Path.join(__dirname, '..', `resources/images/electrics/${entity.image}`))] @@ -182,7 +172,7 @@ module.exports = { const content = { embeds: [DiscordEmbeds.getSmartSwitchGroupEmbed(guildId, serverId, groupId)], - components: getSmartSwitchGroupButtons(guildId, serverId, groupId), + components: discordButtons.getSmartSwitchGroupButtons(guildId, serverId, groupId), files: [new Discord.AttachmentBuilder( Path.join(__dirname, '..', `resources/images/electrics/${group.image}`))] } @@ -201,7 +191,7 @@ module.exports = { const content = { embeds: [DiscordEmbeds.getStorageMonitorRecycleEmbed(guildId, serverId, entityId, items)], - components: [getRecycleDeleteButton()], + components: [discordButtons.getRecycleDeleteButton()], files: [new Discord.AttachmentBuilder( Path.join(__dirname, '..', 'resources/images/electrics/recycler.png'))] } @@ -527,7 +517,7 @@ module.exports = { sendHelpMessage: async function (interaction) { const content = { embeds: [DiscordEmbeds.getHelpEmbed(interaction.guildId)], - components: getHelpButtons(), + components: discordButtons.getHelpButtons(), ephemeral: true } diff --git a/src/discordTools/remove-guild-channels.ts b/src/discordTools/remove-guild-channels.ts index dbaeeea6c..18854e8f5 100644 --- a/src/discordTools/remove-guild-channels.ts +++ b/src/discordTools/remove-guild-channels.ts @@ -20,7 +20,7 @@ import { Guild } from 'discord.js'; -import { deleteChannel } from './discord-tools'; +import * as discordTools from './discord-tools'; const { DiscordBot } = require('../structures/DiscordBot.js'); export async function removeGuildChannels(client: typeof DiscordBot, guild: Guild) { @@ -34,11 +34,11 @@ export async function removeGuildChannels(client: typeof DiscordBot, guild: Guil continue; } - await deleteChannel(client, guildId, channelId as string); + await discordTools.deleteChannel(client, guildId, channelId as string); instance.channelIds[channelName] = null; } - await deleteChannel(client, guildId, categoryId as string); + await discordTools.deleteChannel(client, guildId, categoryId as string); instance.channelIds['category'] = null; client.setInstance(guildId, instance); diff --git a/src/discordTools/setup-guild-category.ts b/src/discordTools/setup-guild-category.ts index 2575f2f0a..f97a1739b 100644 --- a/src/discordTools/setup-guild-category.ts +++ b/src/discordTools/setup-guild-category.ts @@ -20,7 +20,7 @@ import { Guild, CategoryChannel, ChannelType } from 'discord.js'; -import { getCategory, createChannel } from './discord-tools'; +import * as discordTools from './discord-tools'; const PermissionHandler = require('../handlers/permissionHandler.js'); const { DiscordBot } = require('../structures/DiscordBot.js'); @@ -31,10 +31,10 @@ export async function setupGuildCategory(client: typeof DiscordBot, guild: Guild let category = undefined; if (instance.channelIds.category !== null) { - category = await getCategory(client, guildId, instance.channelIds.category); + category = await discordTools.getCategory(client, guildId, instance.channelIds.category); } if (category === undefined) { - category = await createChannel(client, guildId, 'rustplusplus', ChannelType.GuildCategory) as CategoryChannel; + category = await discordTools.createChannel(client, guildId, 'rustplusplus', ChannelType.GuildCategory) as CategoryChannel; if (!category) return undefined; instance.channelIds.category = category.id; client.setInstance(guildId, instance); diff --git a/src/discordTools/setup-guild-channels.ts b/src/discordTools/setup-guild-channels.ts index 1da3f10d6..fbd90e00e 100644 --- a/src/discordTools/setup-guild-channels.ts +++ b/src/discordTools/setup-guild-channels.ts @@ -21,7 +21,7 @@ import { Guild, CategoryChannel, ChannelType, TextChannel } from 'discord.js'; import { log } from '../../index'; -import { getTextChannel, createChannel } from './discord-tools'; +import * as discordTools from './discord-tools'; const { DiscordBot } = require('../structures/DiscordBot.js'); const PermissionHandler = require('../handlers/permissionHandler.js'); @@ -49,10 +49,10 @@ async function addTextChannel(name: string, idName: string, client: typeof Disco let channel = undefined; if (instance.channelIds[idName] !== null) { - channel = await getTextChannel(client, guildId, instance.channelIds[idName]); + channel = await discordTools.getTextChannel(client, guildId, instance.channelIds[idName]); } if (channel === undefined) { - channel = await createChannel(client, guildId, name, ChannelType.GuildText) as TextChannel; + channel = await discordTools.createChannel(client, guildId, name, ChannelType.GuildText) as TextChannel; if (!channel) return undefined; instance.channelIds[idName] = channel.id; client.setInstance(guildId, instance); diff --git a/src/discordTools/setup-server-list.ts b/src/discordTools/setup-server-list.ts index 7a0558ff8..cec74684e 100644 --- a/src/discordTools/setup-server-list.ts +++ b/src/discordTools/setup-server-list.ts @@ -20,7 +20,7 @@ import { Guild } from 'discord.js'; -import { clearTextChannel } from './discord-tools'; +import * as discordTools from './discord-tools'; const { DiscordBot } = require('../structures/DiscordBot.js'); const DiscordMessages = require('./discordMessages.js'); @@ -28,7 +28,7 @@ export async function setupServerList(client: typeof DiscordBot, guild: Guild) { const guildId = guild.id; const instance = client.getInstance(guildId); - await clearTextChannel(client, guildId, instance.channelIds.servers, 100); + await discordTools.clearTextChannel(client, guildId, instance.channelIds.servers, 100); for (const serverId in instance.serverList) { await DiscordMessages.sendServerMessage(guildId, serverId); diff --git a/src/discordTools/setup-settings-menu.ts b/src/discordTools/setup-settings-menu.ts index b113ec918..c1211f9b8 100644 --- a/src/discordTools/setup-settings-menu.ts +++ b/src/discordTools/setup-settings-menu.ts @@ -18,36 +18,21 @@ */ -import * as path from 'path'; import { Guild, AttachmentBuilder, Channel } from 'discord.js'; +import * as path from 'path'; import { log } from '../../index'; import * as constants from '../util/constants'; -import { getTextChannel, clearTextChannel } from './discord-tools'; -import { getLanguageSelectMenu, getPrefixSelectMenu, getTrademarkSelectMenu, getCommandDelaySelectMenu, getVoiceGenderSelectMenu } from './discord-select-menus'; -import { - getNotificationButtons, - getInGameCommandsEnabledButton, - getInGameTeammateNotificationsButtons, - getFcmAlarmNotificationButtons, - getSmartAlarmNotifyInGameButton, - getSmartSwitchNotifyInGameWhenChangedFromDiscordButton, - getLeaderCommandEnabledButton, - getLeaderCommandOnlyForPairedButton, - getBotMutedInGameButton, - getMapWipeNotifyEveryoneButton, - getItemAvailableNotifyInGameButton, - getDisplayInformationBattlemetricsAllOnlinePlayersButton, - getSubscribeToChangesBattlemetricsButtons -} from './discord-buttons'; +import * as discordTools from './discord-tools'; +import * as discordSelectMenus from './discord-select-menus'; +import * as discordButtons from './discord-buttons'; const DiscordEmbeds = require('./discordEmbeds.js'); const { DiscordBot } = require('../structures/DiscordBot.js'); - export async function setupSettingsMenu(client: typeof DiscordBot, guild: Guild, forced: boolean = false) { const guildId = guild.id; const instance = client.getInstance(guildId); - const channel = await getTextChannel(client, guildId, instance.channelIds.settings); + const channel = await discordTools.getTextChannel(client, guildId, instance.channelIds.settings); if (!channel) { log.error('SetupSettingsMenu: ' + client.intlGet(null, 'invalidGuildOrChannel')); @@ -55,7 +40,7 @@ export async function setupSettingsMenu(client: typeof DiscordBot, guild: Guild, } if (instance.firstTime || forced) { - await clearTextChannel(client, guildId, instance.channelIds.settings, 100); + await discordTools.clearTextChannel(client, guildId, instance.channelIds.settings, 100); await setupGeneralSettings(client, guildId, channel); await setupNotificationSettings(client, guildId, channel); @@ -86,7 +71,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, inline: true }] })], - components: [getLanguageSelectMenu(guildId, instance.generalSettings.language)], + components: [discordSelectMenus.getLanguageSelectMenu(guildId, instance.generalSettings.language)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -97,7 +82,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'commandsVoiceGenderDesc'), thumbnail: `attachment://settings_logo.png` })], - components: [getVoiceGenderSelectMenu(guildId, instance.generalSettings.voiceGender)], + components: [discordSelectMenus.getVoiceGenderSelectMenu(guildId, instance.generalSettings.voiceGender)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -108,7 +93,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'selectInGamePrefixSetting'), thumbnail: `attachment://settings_logo.png` })], - components: [getPrefixSelectMenu(guildId, instance.generalSettings.prefix)], + components: [discordSelectMenus.getPrefixSelectMenu(guildId, instance.generalSettings.prefix)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -119,7 +104,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'selectTrademarkSetting'), thumbnail: `attachment://settings_logo.png` })], - components: [getTrademarkSelectMenu(guildId, instance.generalSettings.trademark)], + components: [discordSelectMenus.getTrademarkSelectMenu(guildId, instance.generalSettings.trademark)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -130,7 +115,8 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'shouldCommandsEnabledSetting'), thumbnail: `attachment://settings_logo.png` })], - components: [getInGameCommandsEnabledButton(guildId, instance.generalSettings.inGameCommandsEnabled)], + components: [discordButtons.getInGameCommandsEnabledButton(guildId, + instance.generalSettings.inGameCommandsEnabled)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -141,7 +127,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'shouldBotBeMutedSetting'), thumbnail: `attachment://settings_logo.png` })], - components: [getBotMutedInGameButton(guildId, instance.generalSettings.muteInGameBotMessages)], + components: [discordButtons.getBotMutedInGameButton(guildId, instance.generalSettings.muteInGameBotMessages)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -152,7 +138,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'inGameTeamNotificationsSetting'), thumbnail: `attachment://settings_logo.png` })], - components: [getInGameTeammateNotificationsButtons(guildId)], + components: [discordButtons.getInGameTeammateNotificationsButtons(guildId)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -163,7 +149,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'commandDelaySetting'), thumbnail: `attachment://settings_logo.png` })], - components: [getCommandDelaySelectMenu(guildId, instance.generalSettings.commandDelay)], + components: [discordSelectMenus.getCommandDelaySelectMenu(guildId, instance.generalSettings.commandDelay)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -181,7 +167,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, }] })], components: [ - getFcmAlarmNotificationButtons( + discordButtons.getFcmAlarmNotificationButtons( guildId, instance.generalSettings.fcmAlarmNotificationEnabled, instance.generalSettings.fcmAlarmNotificationEveryone)], @@ -195,7 +181,8 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'shouldSmartAlarmsNotifyInGameSetting'), thumbnail: `attachment://settings_logo.png`, })], - components: [getSmartAlarmNotifyInGameButton(guildId, instance.generalSettings.smartAlarmNotifyInGame)], + components: [discordButtons.getSmartAlarmNotifyInGameButton(guildId, + instance.generalSettings.smartAlarmNotifyInGame)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -206,7 +193,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'shouldSmartSwitchNotifyInGameWhenChangedFromDiscord'), thumbnail: `attachment://settings_logo.png`, })], - components: [getSmartSwitchNotifyInGameWhenChangedFromDiscordButton(guildId, + components: [discordButtons.getSmartSwitchNotifyInGameWhenChangedFromDiscordButton(guildId, instance.generalSettings.smartSwitchNotifyInGameWhenChangedFromDiscord)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] @@ -218,7 +205,8 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'shouldLeaderCommandEnabledSetting'), thumbnail: `attachment://settings_logo.png`, })], - components: [getLeaderCommandEnabledButton(guildId, instance.generalSettings.leaderCommandEnabled)], + components: [discordButtons.getLeaderCommandEnabledButton(guildId, + instance.generalSettings.leaderCommandEnabled)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -229,7 +217,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'shouldLeaderCommandOnlyForPairedSetting'), thumbnail: `attachment://settings_logo.png`, })], - components: [getLeaderCommandOnlyForPairedButton(guildId, + components: [discordButtons.getLeaderCommandOnlyForPairedButton(guildId, instance.generalSettings.leaderCommandOnlyForPaired)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] @@ -241,7 +229,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'mapWipeDetectedNotifySetting', { group: '@everyone' }), thumbnail: `attachment://settings_logo.png` })], - components: [getMapWipeNotifyEveryoneButton(instance.generalSettings.mapWipeNotifyEveryone)], + components: [discordButtons.getMapWipeNotifyEveryoneButton(instance.generalSettings.mapWipeNotifyEveryone)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -252,7 +240,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'itemAvailableNotifyInGameSetting'), thumbnail: `attachment://settings_logo.png` })], - components: [getItemAvailableNotifyInGameButton(guildId, + components: [discordButtons.getItemAvailableNotifyInGameButton(guildId, instance.generalSettings.itemAvailableInVendingMachineNotifyInGame)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] @@ -264,7 +252,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'displayInformationBattlemetricsAllOnlinePlayers'), thumbnail: `attachment://settings_logo.png` })], - components: [getDisplayInformationBattlemetricsAllOnlinePlayersButton(guildId, + components: [discordButtons.getDisplayInformationBattlemetricsAllOnlinePlayersButton(guildId, instance.generalSettings.displayInformationBattlemetricsAllOnlinePlayers)], files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] @@ -276,7 +264,7 @@ async function setupGeneralSettings(client: typeof DiscordBot, guildId: string, title: client.intlGet(guildId, 'subscribeToChangesBattlemetrics'), thumbnail: `attachment://settings_logo.png` })], - components: getSubscribeToChangesBattlemetricsButtons(guildId), + components: discordButtons.getSubscribeToChangesBattlemetricsButtons(guildId), files: [new AttachmentBuilder( path.join(__dirname, '..', 'resources/images/settings_logo.png'))] }); @@ -299,7 +287,7 @@ async function setupNotificationSettings(client: typeof DiscordBot, guildId: str thumbnail: `attachment://${instance.notificationSettings[setting].image}` })], components: [ - getNotificationButtons( + discordButtons.getNotificationButtons( guildId, setting, instance.notificationSettings[setting].discord, instance.notificationSettings[setting].inGame, diff --git a/src/discordTools/setup-storage-monitors.ts b/src/discordTools/setup-storage-monitors.ts index c5f37aabe..b45036d3c 100644 --- a/src/discordTools/setup-storage-monitors.ts +++ b/src/discordTools/setup-storage-monitors.ts @@ -19,7 +19,7 @@ */ import * as constants from '../util/constants'; -import { clearTextChannel } from './discord-tools'; +import * as discordTools from './discord-tools'; const DiscordMessages = require('./discordMessages.js'); const { DiscordBot } = require('../structures/DiscordBot.js'); const { RustPlus } = require('../structures/RustPlus.js'); @@ -30,7 +30,7 @@ export async function setupStorageMonitors(client: typeof DiscordBot, rustplus: const serverId = rustplus.serverId; if (rustplus.isNewConnection) { - await clearTextChannel(client, guildId, instance.channelIds.storageMonitors, 100); + await discordTools.clearTextChannel(client, guildId, instance.channelIds.storageMonitors, 100); } for (const entityId in instance.serverList[serverId].storageMonitors) { diff --git a/src/discordTools/setup-switch-groups.ts b/src/discordTools/setup-switch-groups.ts index 48a21bcd4..a570e0dd7 100644 --- a/src/discordTools/setup-switch-groups.ts +++ b/src/discordTools/setup-switch-groups.ts @@ -18,7 +18,7 @@ */ -import { clearTextChannel } from "./discord-tools"; +import * as discordTools from './discord-tools'; const DiscordMessages = require('./discordMessages.js'); const { DiscordBot } = require('../structures/DiscordBot.js'); const { RustPlus } = require('../structures/RustPlus.js'); @@ -28,7 +28,7 @@ export async function setupSwitchGroups(client: typeof DiscordBot, rustplus: typ const instance = client.getInstance(guildId); if (rustplus.isNewConnection) { - await clearTextChannel(client, guildId, instance.channelIds.switchGroups, 100); + await discordTools.clearTextChannel(client, guildId, instance.channelIds.switchGroups, 100); } for (const groupId in instance.serverList[rustplus.serverId].switchGroups) { diff --git a/src/discordTools/setup-switches.ts b/src/discordTools/setup-switches.ts index 220eca326..9b8df2729 100644 --- a/src/discordTools/setup-switches.ts +++ b/src/discordTools/setup-switches.ts @@ -18,7 +18,7 @@ */ -import { clearTextChannel } from "./discord-tools"; +import * as discordTools from './discord-tools'; const DiscordMessages = require('./discordMessages.js'); const { DiscordBot } = require('../structures/DiscordBot.js'); const { RustPlus } = require('../structures/RustPlus.js'); @@ -29,7 +29,7 @@ export async function setupSwitches(client: typeof DiscordBot, rustplus: typeof const serverId = rustplus.serverId; if (rustplus.isNewConnection) { - await clearTextChannel(client, guildId, instance.channelIds.switches, 100); + await discordTools.clearTextChannel(client, guildId, instance.channelIds.switches, 100); } for (const entityId in instance.serverList[serverId].switches) { diff --git a/src/discordTools/setup-trackers.ts b/src/discordTools/setup-trackers.ts index 7ada82295..79ea49910 100644 --- a/src/discordTools/setup-trackers.ts +++ b/src/discordTools/setup-trackers.ts @@ -20,7 +20,7 @@ import { Guild } from 'discord.js'; -import { clearTextChannel } from './discord-tools'; +import * as discordTools from './discord-tools'; const DiscordMessages = require('./discordMessages.js'); const { DiscordBot } = require('../structures/DiscordBot.js'); @@ -28,7 +28,7 @@ export async function setupTrackers(client: typeof DiscordBot, guild: Guild) { const guildId = guild.id; const instance = client.getInstance(guildId); - await clearTextChannel(client, guildId, instance.channelIds.trackers, 100); + await discordTools.clearTextChannel(client, guildId, instance.channelIds.trackers, 100); for (const trackerId in instance.trackers) { await DiscordMessages.sendTrackerMessage(guildId, trackerId); diff --git a/src/handlers/battlemetricsHandler.js b/src/handlers/battlemetricsHandler.js index 715570dcd..79b3bd533 100644 --- a/src/handlers/battlemetricsHandler.js +++ b/src/handlers/battlemetricsHandler.js @@ -18,7 +18,7 @@ */ -import { deleteMessage } from '../discordTools/discord-tools'; +import * as discordTools from '../discordTools/discord-tools'; const Constants = require('../util/constants.ts'); const DiscordMessages = require('../discordTools/discordMessages.js'); const Request = require('../util/request.ts'); @@ -51,7 +51,7 @@ module.exports = { } else { if (instance.informationChannelMessageIds.battlemetricsPlayers !== null) { - await deleteMessage(client, guildId, instance.channelIds.information, + await discordTools.deleteMessage(client, guildId, instance.channelIds.information, instance.informationChannelMessageIds.battlemetricsPlayers); instance.informationChannelMessageIds.battlemetricsPlayers = null; diff --git a/src/handlers/buttonHandler.js b/src/handlers/buttonHandler.js index f43db246a..25946d061 100644 --- a/src/handlers/buttonHandler.js +++ b/src/handlers/buttonHandler.js @@ -21,22 +21,8 @@ const Discord = require('discord.js'); import { log } from '../../index'; -import { deleteMessage, clearTextChannel } from '../discordTools/discord-tools'; -import { - getNotificationButtons, - getInGameCommandsEnabledButton, - getInGameTeammateNotificationsButtons, - getFcmAlarmNotificationButtons, - getSmartAlarmNotifyInGameButton, - getSmartSwitchNotifyInGameWhenChangedFromDiscordButton, - getLeaderCommandEnabledButton, - getLeaderCommandOnlyForPairedButton, - getBotMutedInGameButton, - getMapWipeNotifyEveryoneButton, - getItemAvailableNotifyInGameButton, - getDisplayInformationBattlemetricsAllOnlinePlayersButton, - getSubscribeToChangesBattlemetricsButtons -} from '../discordTools/discord-buttons'; +import * as discordTools from '../discordTools/discord-tools'; +import * as discordButtons from '../discordTools/discord-buttons'; const Config = require('../../config'); const DiscordMessages = require('../discordTools/discordMessages.js'); const SmartSwitchGroupHandler = require('./smartSwitchGroupHandler.js'); @@ -74,7 +60,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getNotificationButtons( + components: [discordButtons.getNotificationButtons( guildId, ids.setting, setting.discord, setting.inGame, setting.voice)] }); } @@ -93,7 +79,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getNotificationButtons( + components: [discordButtons.getNotificationButtons( guildId, ids.setting, setting.discord, setting.inGame, setting.voice)] }); } @@ -112,7 +98,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getNotificationButtons( + components: [discordButtons.getNotificationButtons( guildId, ids.setting, setting.discord, setting.inGame, setting.voice)] }); } @@ -128,7 +114,8 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getInGameCommandsEnabledButton(guildId, instance.generalSettings.inGameCommandsEnabled)] + components: [discordButtons.getInGameCommandsEnabledButton(guildId, + instance.generalSettings.inGameCommandsEnabled)] }); } else if (interaction.customId === 'BotMutedInGame') { @@ -143,7 +130,8 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getBotMutedInGameButton(guildId, instance.generalSettings.muteInGameBotMessages)] + components: [discordButtons.getBotMutedInGameButton(guildId, + instance.generalSettings.muteInGameBotMessages)] }); } else if (interaction.customId === 'InGameTeammateConnection') { @@ -158,7 +146,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getInGameTeammateNotificationsButtons(guildId)] + components: [discordButtons.getInGameTeammateNotificationsButtons(guildId)] }); } else if (interaction.customId === 'InGameTeammateAfk') { @@ -173,7 +161,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getInGameTeammateNotificationsButtons(guildId)] + components: [discordButtons.getInGameTeammateNotificationsButtons(guildId)] }); } else if (interaction.customId === 'InGameTeammateDeath') { @@ -188,7 +176,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getInGameTeammateNotificationsButtons(guildId)] + components: [discordButtons.getInGameTeammateNotificationsButtons(guildId)] }); } else if (interaction.customId === 'FcmAlarmNotification') { @@ -204,7 +192,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getFcmAlarmNotificationButtons( + components: [discordButtons.getFcmAlarmNotificationButtons( guildId, instance.generalSettings.fcmAlarmNotificationEnabled, instance.generalSettings.fcmAlarmNotificationEveryone)] @@ -223,7 +211,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getFcmAlarmNotificationButtons( + components: [discordButtons.getFcmAlarmNotificationButtons( guildId, instance.generalSettings.fcmAlarmNotificationEnabled, instance.generalSettings.fcmAlarmNotificationEveryone)] @@ -242,7 +230,8 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getSmartAlarmNotifyInGameButton(guildId, instance.generalSettings.smartAlarmNotifyInGame)] + components: [discordButtons.getSmartAlarmNotifyInGameButton(guildId, + instance.generalSettings.smartAlarmNotifyInGame)] }); } else if (interaction.customId === 'SmartSwitchNotifyInGameWhenChangedFromDiscord') { @@ -259,7 +248,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getSmartSwitchNotifyInGameWhenChangedFromDiscordButton(guildId, + components: [discordButtons.getSmartSwitchNotifyInGameWhenChangedFromDiscordButton(guildId, instance.generalSettings.smartSwitchNotifyInGameWhenChangedFromDiscord)] }); } @@ -275,7 +264,8 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getLeaderCommandEnabledButton(guildId, instance.generalSettings.leaderCommandEnabled)] + components: [discordButtons.getLeaderCommandEnabledButton(guildId, + instance.generalSettings.leaderCommandEnabled)] }); } else if (interaction.customId === 'LeaderCommandOnlyForPaired') { @@ -291,7 +281,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getLeaderCommandOnlyForPairedButton(guildId, + components: [discordButtons.getLeaderCommandOnlyForPairedButton(guildId, instance.generalSettings.leaderCommandOnlyForPaired)] }); } @@ -308,7 +298,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getMapWipeNotifyEveryoneButton(instance.generalSettings.mapWipeNotifyEveryone)] + components: [discordButtonsgetMapWipeNotifyEveryoneButton(instance.generalSettings.mapWipeNotifyEveryone)] }); } else if (interaction.customId === 'ItemAvailableNotifyInGame') { @@ -325,7 +315,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getItemAvailableNotifyInGameButton(guildId, + components: [discordButtons.getItemAvailableNotifyInGameButton(guildId, instance.generalSettings.itemAvailableInVendingMachineNotifyInGame)] }); } @@ -343,7 +333,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getDisplayInformationBattlemetricsAllOnlinePlayersButton(guildId, + components: [discordButtons.getDisplayInformationBattlemetricsAllOnlinePlayersButton(guildId, instance.generalSettings.displayInformationBattlemetricsAllOnlinePlayers)] }); } @@ -361,7 +351,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: getSubscribeToChangesBattlemetricsButtons(guildId) + components: discordButtons.getSubscribeToChangesBattlemetricsButtons(guildId) }); } else if (interaction.customId === 'BattlemetricsTrackerNameChanges') { @@ -378,7 +368,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: getSubscribeToChangesBattlemetricsButtons(guildId) + components: discordButtons.getSubscribeToChangesBattlemetricsButtons(guildId) }); } else if (interaction.customId === 'BattlemetricsGlobalNameChanges') { @@ -395,7 +385,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: getSubscribeToChangesBattlemetricsButtons(guildId) + components: discordButtons.getSubscribeToChangesBattlemetricsButtons(guildId) }); } else if (interaction.customId === 'BattlemetricsGlobalLogin') { @@ -412,7 +402,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: getSubscribeToChangesBattlemetricsButtons(guildId) + components: discordButtons.getSubscribeToChangesBattlemetricsButtons(guildId) }); } else if (interaction.customId === 'BattlemetricsGlobalLogout') { @@ -429,7 +419,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: getSubscribeToChangesBattlemetricsButtons(guildId) + components: discordButtons.getSubscribeToChangesBattlemetricsButtons(guildId) }); } else if (interaction.customId.startsWith('ServerConnect')) { @@ -490,7 +480,7 @@ module.exports = async (client, interaction) => { const groupsToUpdate = []; for (const [entityId, content] of Object.entries(server.switches)) { if (!content.reachable) { - await deleteMessage(client, guildId, instance.channelIds.switches, content.messageId); + await discordTools.deleteMessage(client, guildId, instance.channelIds.switches, content.messageId); delete server.switches[entityId]; for (const [groupId, groupContent] of Object.entries(server.switchGroups)) { @@ -507,14 +497,15 @@ module.exports = async (client, interaction) => { for (const [entityId, content] of Object.entries(server.alarms)) { if (!content.reachable) { - await deleteMessage(client, guildId, instance.channelIds.alarms, content.messageId) + await discordTools.deleteMessage(client, guildId, instance.channelIds.alarms, content.messageId) delete server.alarms[entityId]; } } for (const [entityId, content] of Object.entries(server.storageMonitors)) { if (!content.reachable) { - await deleteMessage(client, guildId, instance.channelIds.storageMonitors, content.messageId) + await discordTools.deleteMessage(client, guildId, instance.channelIds.storageMonitors, + content.messageId) delete server.storageMonitors[entityId]; } } @@ -630,9 +621,9 @@ module.exports = async (client, interaction) => { } if (rustplus && (rustplus.serverId === ids.serverId || rustplus.serverId === instance.activeServer)) { - await clearTextChannel(client, rustplus.guildId, instance.channelIds.switches, 100); - await clearTextChannel(client, rustplus.guildId, instance.channelIds.switchGroups, 100); - await clearTextChannel(client, rustplus.guildId, instance.channelIds.storageMonitors, 100); + await discordTools.clearTextChannel(client, rustplus.guildId, instance.channelIds.switches, 100); + await discordTools.clearTextChannel(client, rustplus.guildId, instance.channelIds.switchGroups, 100); + await discordTools.clearTextChannel(client, rustplus.guildId, instance.channelIds.storageMonitors, 100); instance.activeServer = null; client.setInstance(guildId, instance); @@ -645,10 +636,10 @@ module.exports = async (client, interaction) => { } for (const [entityId, content] of Object.entries(server.alarms)) { - await deleteMessage(client, guildId, instance.channelIds.alarms, content.messageId); + await discordTools.deleteMessage(client, guildId, instance.channelIds.alarms, content.messageId); } - await deleteMessage(client, guildId, instance.channelIds.servers, server.messageId); + await discordTools.deleteMessage(client, guildId, instance.channelIds.servers, server.messageId); delete instance.serverList[ids.serverId]; client.setInstance(guildId, instance); @@ -741,7 +732,7 @@ module.exports = async (client, interaction) => { return; } - await deleteMessage(client, guildId, instance.channelIds.switches, + await discordTools.deleteMessage(client, guildId, instance.channelIds.switches, server.switches[ids.entityId].messageId); delete server.switches[ids.entityId]; @@ -794,7 +785,7 @@ module.exports = async (client, interaction) => { return; } - await deleteMessage(client, guildId, instance.channelIds.alarms, + await discordTools.deleteMessage(client, guildId, instance.channelIds.alarms, server.alarms[ids.entityId].messageId); delete server.alarms[ids.entityId]; @@ -876,7 +867,7 @@ module.exports = async (client, interaction) => { return; } - await deleteMessage(client, guildId, instance.channelIds.storageMonitors, + await discordTools.deleteMessage(client, guildId, instance.channelIds.storageMonitors, server.storageMonitors[ids.entityId].messageId); delete server.storageMonitors[ids.entityId]; @@ -916,7 +907,7 @@ module.exports = async (client, interaction) => { guildId, ids.serverId, ids.entityId, items); setTimeout(async () => { - await deleteMessage(client, guildId, instance.channelIds.storageMonitors, message.id); + await discordTools.deleteMessage(client, guildId, instance.channelIds.storageMonitors, message.id); }, 30000); } else if (interaction.customId.startsWith('StorageMonitorContainerDelete')) { @@ -933,7 +924,7 @@ module.exports = async (client, interaction) => { return; } - await deleteMessage(client, guildId, instance.channelIds.storageMonitors, + await discordTools.deleteMessage(client, guildId, instance.channelIds.storageMonitors, server.storageMonitors[ids.entityId].messageId); delete server.storageMonitors[ids.entityId]; @@ -1021,7 +1012,7 @@ module.exports = async (client, interaction) => { } if (server.switchGroups.hasOwnProperty(ids.groupId)) { - await deleteMessage(client, guildId, instance.channelIds.switchGroups, + await discordTools.deleteMessage(client, guildId, instance.channelIds.switchGroups, server.switchGroups[ids.groupId].messageId); delete server.switchGroups[ids.groupId]; @@ -1110,7 +1101,7 @@ module.exports = async (client, interaction) => { return; } - await deleteMessage(client, guildId, instance.channelIds.trackers, tracker.messageId); + await discordTools.deleteMessage(client, guildId, instance.channelIds.trackers, tracker.messageId); delete instance.trackers[ids.trackerId]; client.setInstance(guildId, instance); diff --git a/src/handlers/discordCommandHandler.js b/src/handlers/discordCommandHandler.js index 31bbd2897..99fb57a3a 100644 --- a/src/handlers/discordCommandHandler.js +++ b/src/handlers/discordCommandHandler.js @@ -19,7 +19,7 @@ */ import { log } from '../../index'; -import { getGuild, getTextChannel } from '../discordTools/discord-tools'; +import * as discordTools from '../discordTools/discord-tools'; const DiscordMessages = require('../discordTools/discordMessages.js'); module.exports = { @@ -210,8 +210,8 @@ module.exports = { await DiscordMessages.sendDiscordCommandResponseMessage(rustplus, client, message, response); } - const guild = await getGuild(client, message.guild.id); - const channel = await getTextChannel(client, guild.id, message.channelId) + const guild = await discordTools.getGuild(client, message.guild.id); + const channel = await discordTools.getTextChannel(client, guild.id, message.channelId) log.info(client.intlGet(null, `logDiscordCommand`, { guild: `${guild.name} (${guild.id})`, channel: `${channel.name} (${channel.id})`, diff --git a/src/handlers/permissionHandler.js b/src/handlers/permissionHandler.js index 4028f58ae..20789fa0a 100644 --- a/src/handlers/permissionHandler.js +++ b/src/handlers/permissionHandler.js @@ -20,7 +20,7 @@ const Discord = require('discord.js'); -import { getTextChannel, getCategory } from '../discordTools/discord-tools'; +import * as discordTools from '../discordTools/discord-tools'; module.exports = { getPermissionsReset: function (client, guild, permissionWrite = false) { @@ -95,7 +95,7 @@ module.exports = { if (instance.channelIds.category === null) return; - const category = await getCategory(client, guild.id, instance.channelIds.category); + const category = await discordTools.getCategory(client, guild.id, instance.channelIds.category); if (category) { const perms = module.exports.getPermissionsReset(client, guild); try { @@ -109,7 +109,7 @@ module.exports = { for (const [name, id] of Object.entries(instance.channelIds)) { const writePerm = (name !== 'commands' && name !== 'teamchat') ? false : true; - const channel = await getTextChannel(client, guild.id, id); + const channel = await discordTools.getTextChannel(client, guild.id, id); if (channel) { const perms = module.exports.getPermissionsReset(client, guild, writePerm); try { diff --git a/src/handlers/selectMenuHandler.js b/src/handlers/selectMenuHandler.js index e0395507d..22675552d 100644 --- a/src/handlers/selectMenuHandler.js +++ b/src/handlers/selectMenuHandler.js @@ -22,8 +22,8 @@ const Discord = require('discord.js'); import { log } from '../../index'; import { registerSlashCommands } from '../discordTools/register-slash-commands'; -import { getGuild } from '../discordTools/discord-tools'; -import { getLanguageSelectMenu, getPrefixSelectMenu, getTrademarkSelectMenu, getCommandDelaySelectMenu, getVoiceGenderSelectMenu } from '../discordTools/discord-select-menus'; +import * as discordTools from '../discordTools/discord-tools'; +import * as discordSelectMenus from '../discordTools/discord-select-menus'; const DiscordMessages = require('../discordTools/discordMessages.js'); module.exports = async (client, interaction) => { @@ -59,10 +59,10 @@ module.exports = async (client, interaction) => { client.loadGuildIntl(guildId); await client.interactionEditReply(interaction, { - components: [getLanguageSelectMenu(guildId, interaction.values[0])] + components: [discordSelectMenus.getLanguageSelectMenu(guildId, interaction.values[0])] }); - const guild = await getGuild(client, guildId); + const guild = await discordTools.getGuild(client, guildId); await registerSlashCommands(client, guild); } else if (interaction.customId === 'Prefix') { @@ -77,7 +77,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getPrefixSelectMenu(guildId, interaction.values[0])] + components: [discordSelectMenus.getPrefixSelectMenu(guildId, interaction.values[0])] }); } else if (interaction.customId === 'Trademark') { @@ -96,7 +96,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getTrademarkSelectMenu(guildId, interaction.values[0])] + components: [discordSelectMenus.getTrademarkSelectMenu(guildId, interaction.values[0])] }); } else if (interaction.customId === 'CommandDelay') { @@ -111,7 +111,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getCommandDelaySelectMenu(guildId, interaction.values[0])] + components: [discordSelectMenus.getCommandDelaySelectMenu(guildId, interaction.values[0])] }); } else if (interaction.customId === 'VoiceGender') { @@ -126,7 +126,7 @@ module.exports = async (client, interaction) => { })); await client.interactionUpdate(interaction, { - components: [getVoiceGenderSelectMenu(guildId, interaction.values[0])] + components: [discordSelectMenus.getVoiceGenderSelectMenu(guildId, interaction.values[0])] }); } else if (interaction.customId.startsWith('AutoDayNightOnOff')) { diff --git a/src/rustplusEvents/error.js b/src/rustplusEvents/error.js index 98e18898c..365325cb2 100644 --- a/src/rustplusEvents/error.js +++ b/src/rustplusEvents/error.js @@ -18,8 +18,6 @@ */ -const DiscordMessages = require('../discordTools/discordMessages.js'); - module.exports = { name: 'error', async execute(rustplus, client, err) { diff --git a/src/structures/DiscordBot.js b/src/structures/DiscordBot.js index 557ad1c60..6c962198d 100644 --- a/src/structures/DiscordBot.js +++ b/src/structures/DiscordBot.js @@ -30,7 +30,7 @@ import { registerSlashCommands } from '../discordTools/register-slash-commands'; import { setupGuildCategory } from '../discordTools/setup-guild-category'; import { setupGuildChannels } from '../discordTools/setup-guild-channels'; import { setupSettingsMenu } from '../discordTools/setup-settings-menu'; -import { getRole, getTextChannel } from '../discordTools/discord-tools'; +import * as discordTools from '../discordTools/discord-tools'; const Battlemetrics = require('../structures/Battlemetrics'); const Config = require('../../config'); const Credentials = require('../util/credentials.ts'); @@ -190,7 +190,7 @@ class DiscordBot extends Discord.Client { } async logInteraction(interaction, verifyId, type) { - const channel = await getTextChannel(this, interaction.guildId, interaction.channelId); + const channel = await discordTools.getTextChannel(this, interaction.guildId, interaction.channelId); const args = new Object(); args['guild'] = `${interaction.member.guild.name} (${interaction.member.guild.id})`; args['channel'] = `${channel.name} (${interaction.channelId})`; @@ -534,7 +534,7 @@ class DiscordBot extends Discord.Client { if (!interaction.member.permissions.has(Discord.PermissionsBitField.Flags.Administrator) && !interaction.member.roles.cache.has(instance.roleId)) { - const role = await getRole(this, interaction.guildId, instance.roleId); + const role = await discordTools.getRole(this, interaction.guildId, instance.roleId); const str = this.intlGet(interaction.guildId, 'notPartOfRole', { role: role.name }); await this.interactionReply(interaction, DiscordEmbeds.getActionInfoEmbed(1, str)); log.warn(str); diff --git a/src/structures/RustPlus.js b/src/structures/RustPlus.js index 20b2af7db..8ec3909a4 100644 --- a/src/structures/RustPlus.js +++ b/src/structures/RustPlus.js @@ -24,7 +24,7 @@ const RustPlusLib = require('@liamcottle/rustplus.js'); const Translate = require('translate'); import { log } from '../../index'; -import { getMember } from '../discordTools/discord-tools'; +import * as discordTools from '../discordTools/discord-tools'; const Client = require('../../index.ts'); const Constants = require('../util/constants.ts'); const Credentials = require('../util/credentials.ts'); @@ -2286,7 +2286,7 @@ class RustPlus extends RustPlusLib { } const discordUserId = credentials[player.steamId].discordUserId; - const user = await getMember(Client.client, this.guildId, discordUserId); + const user = await discordTools.getMember(Client.client, this.guildId, discordUserId); const content = { embeds: [DiscordEmbeds.getUserSendEmbed(this.guildId, this.serverId, callerName, message)] diff --git a/src/util/FcmListener.js b/src/util/FcmListener.js index fc1052709..9f2b30bf2 100644 --- a/src/util/FcmListener.js +++ b/src/util/FcmListener.js @@ -23,8 +23,8 @@ const Path = require('path'); const PushReceiver = require('push-receiver'); import { log } from '../../index'; -import { getMember, getMessage } from '../discordTools/discord-tools'; -import { getNewsButton } from '../discordTools/discord-buttons'; +import * as discordTools from '../discordTools/discord-tools'; +import * as discordButtons from '../discordTools/discord-buttons'; const Battlemetrics = require('../structures/Battlemetrics'); const Constants = require('../util/constants.ts'); const Credentials = require('../util/credentials.ts'); @@ -195,7 +195,8 @@ async function pairingServer(client, guild, full, data, body) { const server = instance.serverList[serverId]; let message = undefined; - if (server) message = await getMessage(client, guild.id, instance.channelIds.servers, server.messageId); + if (server) message = await discordTools.getMessage(client, guild.id, + instance.channelIds.servers, server.messageId); let battlemetricsId = null; const bmInstance = new Battlemetrics(null, data.title); @@ -480,7 +481,7 @@ async function alarmRaidAlarm(client, guild, full, data, body) { } async function playerDeath(client, guild, full, data, body, discordUserId) { - const user = await getMember(client, guild.id, discordUserId); + const user = await discordTools.getMember(client, guild.id, discordUserId); let png = null; if (body.targetId !== '') png = await Request.requestSteamProfilePicture(body.targetId); @@ -520,7 +521,7 @@ async function newsNews(client, guild, full, data, body) { const content = { embeds: [DiscordEmbeds.getNewsEmbed(guild.id, data)], - components: [getNewsButton(guild.id, body.url, isValidUrl(body.url))] + components: [discordButtons.getNewsButton(guild.id, body.url, isValidUrl(body.url))] } await DiscordMessages.sendMessage(guild.id, content, null, instance.channelIds.activity); diff --git a/src/util/FcmListenerLite.js b/src/util/FcmListenerLite.js index 4ee8390c6..f798be4cc 100644 --- a/src/util/FcmListenerLite.js +++ b/src/util/FcmListenerLite.js @@ -21,7 +21,7 @@ const PushReceiver = require('push-receiver'); import { log } from '../../index'; -import { getMember } from '../discordTools/discord-tools'; +import * as discordTools from '../discordTools/discord-tools'; const Constants = require('../util/constants.ts'); const Credentials = require('../util/credentials.ts'); const DiscordEmbeds = require('../discordTools/discordEmbeds.js'); @@ -331,7 +331,7 @@ async function pairingEntityStorageMonitor(client, guild, full, data, body) { } async function playerDeath(client, guild, full, data, body, discordUserId) { - const user = await getMember(client, guild.id, discordUserId); + const user = await discordTools.getMember(client, guild.id, discordUserId); if (!user) return; let png = null;