diff options
Diffstat (limited to 'src/lib')
80 files changed, 640 insertions, 630 deletions
diff --git a/src/lib/badwords.ts b/src/lib/badwords.ts index 5caddd5..18c7755 100644 --- a/src/lib/badwords.ts +++ b/src/lib/badwords.ts @@ -1,4 +1,4 @@ -import { BadWords, Severity } from "./common/AutoMod"; +import { Severity, type BadWords } from "./common/AutoMod"; export default { /* -------------------------------------------------------------------------- */ diff --git a/src/lib/common/AutoMod.ts b/src/lib/common/AutoMod.ts index 38c488b..c749a33 100644 --- a/src/lib/common/AutoMod.ts +++ b/src/lib/common/AutoMod.ts @@ -1,10 +1,8 @@ -import { GuildMember, MessageActionRow, MessageButton, MessageEmbed, TextChannel } from 'discord.js'; +import { Moderation, type BushButtonInteraction, type BushMessage } from '@lib'; +import { GuildMember, MessageActionRow, MessageButton, MessageEmbed, type TextChannel } from 'discord.js'; import badLinksArray from '../badlinks'; import badLinksSecretArray from '../badlinks-secret'; // I cannot make this public so just make a new file that export defaults an empty array import badWords from '../badwords'; -import { BushButtonInteraction } from '../extensions/discord.js/BushButtonInteraction'; -import { BushMessage } from '../extensions/discord.js/BushMessage'; -import { Moderation } from './Moderation'; export class AutoMod { private message: BushMessage; @@ -190,7 +188,7 @@ export class AutoMod { const [action, userId, reason] = interaction.customId.replace('automod;', '').split(';'); switch (action) { case 'ban': { - const victim = await interaction.guild!.members.fetch(userId); + const victim = await interaction.guild!.members.fetch(userId).catch(() => null); const moderator = interaction.member instanceof GuildMember ? interaction.member diff --git a/src/lib/common/ButtonPaginator.ts b/src/lib/common/ButtonPaginator.ts index da595d5..58134b5 100644 --- a/src/lib/common/ButtonPaginator.ts +++ b/src/lib/common/ButtonPaginator.ts @@ -1,13 +1,12 @@ +import { DeleteButton, type BushMessage, type BushSlashMessage } from '@lib'; import { Constants, MessageActionRow, MessageButton, - MessageComponentInteraction, MessageEmbed, - MessageEmbedOptions + type MessageComponentInteraction, + type MessageEmbedOptions } from 'discord.js'; -import { BushMessage, BushSlashMessage } from '..'; -import { DeleteButton } from './DeleteButton'; export class ButtonPaginator { protected message: BushMessage | BushSlashMessage; @@ -86,7 +85,7 @@ export class ButtonPaginator { protected async collect(interaction: MessageComponentInteraction) { if (interaction.user.id !== this.message.author.id && !client.config.owners.includes(interaction.user.id)) - return await interaction?.deferUpdate().catch(() => undefined); + return await interaction?.deferUpdate().catch(() => null); switch (interaction.customId) { case 'paginate_beginning': @@ -97,8 +96,8 @@ export class ButtonPaginator { return await this.edit(interaction); case 'paginate_stop': if (this.deleteOnExit) { - await interaction.deferUpdate().catch(() => undefined); - return await this.sentMessage!.delete().catch(() => undefined); + await interaction.deferUpdate().catch(() => null); + return await this.sentMessage!.delete().catch(() => null); } else { return await interaction ?.update({ @@ -106,7 +105,7 @@ export class ButtonPaginator { embeds: [], components: [] }) - .catch(() => undefined); + .catch(() => null); } case 'paginate_next': this.curPage++; @@ -125,19 +124,15 @@ export class ButtonPaginator { embeds: [this.embeds[this.curPage]], components: [this.getPaginationRow(true)] }) - .catch(() => undefined); + .catch(() => null); } protected async edit(interaction: MessageComponentInteraction) { - try { - return interaction?.update({ - content: this.text, - embeds: [this.embeds[this.curPage]], - components: [this.getPaginationRow()] - }); - } catch (e) { - return undefined; - } + return interaction?.update({ + content: this.text, + embeds: [this.embeds[this.curPage]], + components: [this.getPaginationRow()] + }).catch(() => null); } protected getPaginationRow(disableAll = false): MessageActionRow { diff --git a/src/lib/common/DeleteButton.ts b/src/lib/common/DeleteButton.ts index 7d2e41b..95bae24 100644 --- a/src/lib/common/DeleteButton.ts +++ b/src/lib/common/DeleteButton.ts @@ -1,6 +1,5 @@ -import { Constants, MessageActionRow, MessageButton, MessageComponentInteraction, MessageOptions } from 'discord.js'; -import { BushMessage, BushSlashMessage } from '..'; -import { PaginateEmojis } from './ButtonPaginator'; +import { PaginateEmojis, type BushMessage, type BushSlashMessage } from '@lib'; +import { Constants, MessageActionRow, MessageButton, type MessageComponentInteraction, type MessageOptions } from 'discord.js'; export class DeleteButton { protected messageOptions: MessageOptions; diff --git a/src/lib/common/Format.ts b/src/lib/common/Format.ts index ba1ee9f..2557b17 100644 --- a/src/lib/common/Format.ts +++ b/src/lib/common/Format.ts @@ -1,5 +1,5 @@ +import { type CodeBlockLang } from '@lib'; import { Formatters, Util } from 'discord.js'; -import { CodeBlockLang } from './typings/CodeBlockLang'; /** * Formats and escapes content for formatting diff --git a/src/lib/common/Moderation.ts b/src/lib/common/Moderation.ts index 0c7c21a..d0367d5 100644 --- a/src/lib/common/Moderation.ts +++ b/src/lib/common/Moderation.ts @@ -1,14 +1,14 @@ -import { Snowflake } from 'discord-api-types'; import { ActivePunishment, ActivePunishmentType, - BushGuildMember, - BushGuildMemberResolvable, - BushGuildResolvable, Guild, ModLog, - ModLogType -} from '..'; + ModLogType, + type BushGuildMember, + type BushGuildMemberResolvable, + type BushGuildResolvable +} from '@lib'; +import { type Snowflake } from 'discord.js'; export class Moderation { /** diff --git a/src/lib/common/typings/BushInspectOptions.d.ts b/src/lib/common/typings/BushInspectOptions.d.ts index c2a2360..11c2dc1 100644 --- a/src/lib/common/typings/BushInspectOptions.d.ts +++ b/src/lib/common/typings/BushInspectOptions.d.ts @@ -1,4 +1,4 @@ -import { InspectOptions } from 'util'; +import { type InspectOptions } from 'util'; /** * {@link https://nodejs.org/api/util.html#util_util_inspect_object_options} diff --git a/src/lib/common/util/Arg.ts b/src/lib/common/util/Arg.ts index d267eb9..3c8e642 100644 --- a/src/lib/common/util/Arg.ts +++ b/src/lib/common/util/Arg.ts @@ -1,6 +1,6 @@ -import { AkairoMessage, Argument, ArgumentTypeCaster, Flag, ParsedValuePredicate } from 'discord-akairo'; -import { Message } from 'discord.js'; -import { BushArgumentType } from '../..'; +import { type BushArgumentType, type BushMessage, type BushSlashMessage } from '@lib'; +import { Argument, type ArgumentTypeCaster, type Flag, type ParsedValuePredicate } from 'discord-akairo'; +import { type Message } from 'discord.js'; export class Arg { /** @@ -9,7 +9,7 @@ export class Arg { * @param message - Message that called the command. * @param phrase - Phrase to process. */ - public static cast(type: BushArgumentType, message: Message | AkairoMessage, phrase: string): Promise<any> { + public static cast(type: BushArgumentType, message: BushMessage | BushSlashMessage, phrase: string): Promise<any> { return Argument.cast(type, client.commandHandler.resolver, message as Message, phrase); } diff --git a/src/lib/extensions/discord-akairo/BushArgumentTypeCaster.ts b/src/lib/extensions/discord-akairo/BushArgumentTypeCaster.ts index 42d989c..c07644c 100644 --- a/src/lib/extensions/discord-akairo/BushArgumentTypeCaster.ts +++ b/src/lib/extensions/discord-akairo/BushArgumentTypeCaster.ts @@ -1,3 +1,3 @@ -import { BushMessage } from '../discord.js/BushMessage'; +import { type BushMessage } from '@lib'; export type BushArgumentTypeCaster = (message: BushMessage, phrase: string) => any; diff --git a/src/lib/extensions/discord-akairo/BushClient.ts b/src/lib/extensions/discord-akairo/BushClient.ts index c5d05b7..8f7533c 100644 --- a/src/lib/extensions/discord-akairo/BushClient.ts +++ b/src/lib/extensions/discord-akairo/BushClient.ts @@ -1,21 +1,20 @@ import * as Sentry from '@sentry/node'; import { AkairoClient, ContextMenuCommandHandler, version as akairoVersion } from 'discord-akairo'; import { - Awaitable, - Collection, - Intents, - InteractionReplyOptions, - Message, - MessageEditOptions, - MessageOptions, - MessagePayload, - Options, - PartialDMChannel, - ReplyMessageOptions, - Snowflake, - Structures, - version as discordJsVersion, - WebhookEditMessageOptions + DMChannel, + Intents, Options, + Structures, version as discordJsVersion, + type Awaitable, + type Collection, + type InteractionReplyOptions, + type Message, + type MessageEditOptions, + type MessageOptions, + type MessagePayload, + type PartialDMChannel, + type ReplyMessageOptions, + type Snowflake, + type WebhookEditMessageOptions } from 'discord.js'; //@ts-ignore: no typings import eventsIntercept from 'events-intercept'; @@ -89,7 +88,7 @@ export type BushThreadMemberResolvable = BushThreadMember | BushUserResolvable; export type BushUserResolvable = BushUser | Snowflake | BushMessage | BushGuildMember | BushThreadMember; export type BushGuildMemberResolvable = BushGuildMember | BushUserResolvable; export type BushRoleResolvable = BushRole | Snowflake; -export type BushMessageResolvable = BushMessage | Snowflake; +export type BushMessageResolvable = Message| BushMessage | Snowflake; export type BushEmojiResolvable = Snowflake | BushGuildEmoji | BushReactionEmoji; export type BushEmojiIdentifierResolvable = string | BushEmojiResolvable; export type BushThreadChannelResolvable = BushThreadChannel | Snowflake; @@ -97,7 +96,7 @@ export type BushApplicationCommandResolvable = BushApplicationCommand | Snowflak export type BushGuildTextChannelResolvable = BushTextChannel | BushNewsChannel | Snowflake; export type BushChannelResolvable = BushChannel | Snowflake; export type BushTextBasedChannels = PartialDMChannel | BushDMChannel | BushTextChannel | BushNewsChannel | BushThreadChannel; -export type BushGuildTextBasedChannel = Exclude<BushTextBasedChannels, PartialDMChannel | BushDMChannel>; +export type BushGuildTextBasedChannel = Exclude<BushTextBasedChannels, PartialDMChannel | BushDMChannel | DMChannel>; export interface BushFetchedThreads { threads: Collection<Snowflake, BushThreadChannel>; hasMore?: boolean; diff --git a/src/lib/extensions/discord-akairo/BushClientUtil.ts b/src/lib/extensions/discord-akairo/BushClientUtil.ts index 32081ed..4507458 100644 --- a/src/lib/extensions/discord-akairo/BushClientUtil.ts +++ b/src/lib/extensions/discord-akairo/BushClientUtil.ts @@ -1,31 +1,32 @@ import { - BushCache, - BushClient, + Arg, BushConstants, - BushMessage, - BushSlashMessage, - BushUser, Global, - Pronoun, - PronounCode + type BushCache, + type BushClient, + type BushMessage, + type BushSlashMessage, + type BushUser, + type Pronoun, + type P |
