vimcord 1.0.51 → 1.0.53
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +55 -76
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.mts +516 -520
- package/dist/index.d.ts +516 -520
- package/dist/index.js +55 -75
- package/dist/index.js.map +1 -1
- package/dist/metafile-cjs.json +1 -1
- package/dist/metafile-esm.json +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -204,7 +204,6 @@ var BaseCommandBuilder = class {
|
|
|
204
204
|
async run(client, ...args) {
|
|
205
205
|
const config = this.resolveConfig(client);
|
|
206
206
|
const ctx = this.extractContext(args);
|
|
207
|
-
let cancel = false;
|
|
208
207
|
try {
|
|
209
208
|
if (!config.enabled) {
|
|
210
209
|
return await config.onUsedWhenDisabled?.(...args);
|
|
@@ -219,16 +218,11 @@ var BaseCommandBuilder = class {
|
|
|
219
218
|
if (!await this.checkConditions(config, ...args)) {
|
|
220
219
|
return await config.onConditionsNotMet?.(...args);
|
|
221
220
|
}
|
|
222
|
-
await config.beforeExecute?.(
|
|
223
|
-
if (cancel) return;
|
|
221
|
+
await config.beforeExecute?.(...args);
|
|
224
222
|
if (config.logExecution !== false) {
|
|
225
|
-
const
|
|
226
|
-
const builderWithName = this;
|
|
227
|
-
const cmdName = optionsWithName.name ?? builderWithName.builder?.name ?? "Unknown";
|
|
223
|
+
const cmdName = this.options.name || this.builder?.name || "Unknown";
|
|
228
224
|
const location = ctx.guild ? `${ctx.guild.name} (${ctx.guild.id})` : "Direct Messages";
|
|
229
|
-
|
|
230
|
-
client.logger.commandExecuted(cmdName, ctx.user.username, location);
|
|
231
|
-
}
|
|
225
|
+
client.logger.commandExecuted(cmdName, ctx.user.username, location);
|
|
232
226
|
}
|
|
233
227
|
const result = await config.execute?.(...args);
|
|
234
228
|
await config.afterExecute?.(result, ...args);
|
|
@@ -456,7 +450,9 @@ var Logger = class {
|
|
|
456
450
|
extend(extras) {
|
|
457
451
|
for (const [key, fn] of Object.entries(extras)) {
|
|
458
452
|
if (typeof fn === "function") {
|
|
459
|
-
this[key] = (...args)
|
|
453
|
+
this[key] = function(...args) {
|
|
454
|
+
return fn.call(this, ...args);
|
|
455
|
+
};
|
|
460
456
|
}
|
|
461
457
|
}
|
|
462
458
|
return this;
|
|
@@ -826,14 +822,12 @@ var contextCommandHandler = new EventBuilder({
|
|
|
826
822
|
if (!command) {
|
|
827
823
|
const content = `**${interaction.commandName}** is not a registered context command.`;
|
|
828
824
|
if (interaction.replied || interaction.deferred) {
|
|
829
|
-
|
|
830
|
-
} else {
|
|
831
|
-
await interaction.reply({ content, flags: "Ephemeral" });
|
|
825
|
+
return interaction.followUp({ content, flags: "Ephemeral" });
|
|
832
826
|
}
|
|
833
|
-
return;
|
|
827
|
+
return interaction.reply({ content, flags: "Ephemeral" });
|
|
834
828
|
}
|
|
835
829
|
try {
|
|
836
|
-
await command.run(client, client, interaction);
|
|
830
|
+
return await command.run(client, client, interaction);
|
|
837
831
|
} catch (err) {
|
|
838
832
|
await client.error.handleCommandError(err, interaction.guild, interaction);
|
|
839
833
|
}
|
|
@@ -892,14 +886,12 @@ var slashCommandHandler = new EventBuilder({
|
|
|
892
886
|
if (!command) {
|
|
893
887
|
const content = `**/\`${interaction.commandName}\`** is not a registered command.`;
|
|
894
888
|
if (interaction.replied || interaction.deferred) {
|
|
895
|
-
|
|
896
|
-
} else {
|
|
897
|
-
await interaction.reply({ content, flags: "Ephemeral" });
|
|
889
|
+
return interaction.followUp({ content, flags: "Ephemeral" });
|
|
898
890
|
}
|
|
899
|
-
return;
|
|
891
|
+
return interaction.reply({ content, flags: "Ephemeral" });
|
|
900
892
|
}
|
|
901
893
|
try {
|
|
902
|
-
await command.run(client, client, interaction);
|
|
894
|
+
return await command.run(client, client, interaction);
|
|
903
895
|
} catch (err) {
|
|
904
896
|
await client.error.handleCommandError(err, interaction.guild, interaction);
|
|
905
897
|
}
|
|
@@ -1701,7 +1693,7 @@ var VimcordErrorHandler = class {
|
|
|
1701
1693
|
import chalk2 from "chalk";
|
|
1702
1694
|
|
|
1703
1695
|
// package.json
|
|
1704
|
-
var version = "1.0.
|
|
1696
|
+
var version = "1.0.53";
|
|
1705
1697
|
|
|
1706
1698
|
// src/client/vimcord.logger.ts
|
|
1707
1699
|
var clientLoggerFactory = (client) => new Logger({ prefixEmoji: "\u26A1", prefix: `vimcord (i${client.clientId})` }).extend({
|
|
@@ -1777,11 +1769,9 @@ function getDevMode() {
|
|
|
1777
1769
|
}
|
|
1778
1770
|
|
|
1779
1771
|
// src/configs/app.config.ts
|
|
1780
|
-
var packageJson = getPackageJson();
|
|
1781
|
-
var version2 = typeof packageJson.version === "string" ? packageJson.version : "1.0.0";
|
|
1782
1772
|
var defaultConfig = {
|
|
1783
1773
|
name: "Discord Bot",
|
|
1784
|
-
version:
|
|
1774
|
+
version: getPackageJson()?.version ?? "1.0.0",
|
|
1785
1775
|
devMode: getDevMode(),
|
|
1786
1776
|
verbose: false,
|
|
1787
1777
|
enableCLI: false,
|
|
@@ -2105,16 +2095,11 @@ var CommandManager = class {
|
|
|
2105
2095
|
slash;
|
|
2106
2096
|
prefix;
|
|
2107
2097
|
context;
|
|
2108
|
-
logger;
|
|
2109
2098
|
constructor(client) {
|
|
2110
2099
|
this.client = client;
|
|
2111
2100
|
this.slash = new SlashCommandManager(client);
|
|
2112
2101
|
this.prefix = new PrefixCommandManager(client);
|
|
2113
2102
|
this.context = new ContextCommandManager(client);
|
|
2114
|
-
this.logger = new Logger({
|
|
2115
|
-
prefixEmoji: "\u26A1",
|
|
2116
|
-
prefix: `vimcord (i${client.clientId}) [CommandManager]`
|
|
2117
|
-
});
|
|
2118
2103
|
}
|
|
2119
2104
|
getAllAppCommands(options = {}) {
|
|
2120
2105
|
return [...this.slash.getAll(options), ...this.context.getAll(options)];
|
|
@@ -2122,21 +2107,23 @@ var CommandManager = class {
|
|
|
2122
2107
|
async registerGlobal(options = {}) {
|
|
2123
2108
|
const client = await Vimcord.getReadyInstance(this.client.clientId);
|
|
2124
2109
|
if (!client.rest) {
|
|
2125
|
-
|
|
2110
|
+
console.error(`[CommandManager] \u2716 Failed to register app commands globally: REST is not initialized`);
|
|
2126
2111
|
return;
|
|
2127
2112
|
}
|
|
2128
2113
|
const commands = this.getAllAppCommands(options).map((cmd) => cmd.builder.toJSON());
|
|
2129
2114
|
if (!commands.length) {
|
|
2130
|
-
|
|
2115
|
+
console.log("[CommandManager] No commands to register globally");
|
|
2131
2116
|
return;
|
|
2132
2117
|
}
|
|
2133
|
-
|
|
2118
|
+
console.log(
|
|
2119
|
+
`[CommandManager] Registering (${commands.length}) ${commands.length === 1 ? "command" : "commands"} globally...`
|
|
2120
|
+
);
|
|
2134
2121
|
try {
|
|
2135
2122
|
await client.rest.put(Routes.applicationCommands(client.user.id), { body: commands });
|
|
2136
|
-
|
|
2123
|
+
console.log(`[CommandManager] \u2714 Registered app ${commands.length === 1 ? "command" : "commands"} globally`);
|
|
2137
2124
|
} catch (err) {
|
|
2138
|
-
|
|
2139
|
-
`Failed to register app ${commands.length === 1 ? "command" : "commands"} globally`,
|
|
2125
|
+
console.error(
|
|
2126
|
+
`[CommandManager] \u2716 Failed to register app ${commands.length === 1 ? "command" : "commands"} globally`,
|
|
2140
2127
|
err
|
|
2141
2128
|
);
|
|
2142
2129
|
}
|
|
@@ -2144,66 +2131,60 @@ var CommandManager = class {
|
|
|
2144
2131
|
async unregisterGlobal() {
|
|
2145
2132
|
const client = await Vimcord.getReadyInstance(this.client.clientId);
|
|
2146
2133
|
if (!client.rest) {
|
|
2147
|
-
|
|
2134
|
+
console.error(`[CommandManager] \u2716 Failed to remove app commands globally: REST is not initialized`);
|
|
2148
2135
|
return;
|
|
2149
2136
|
}
|
|
2150
2137
|
try {
|
|
2151
2138
|
await client.rest.put(Routes.applicationCommands(client.user.id), { body: [] });
|
|
2152
|
-
|
|
2139
|
+
console.log(`[CommandManager] \u2714 Removed app commands globally`);
|
|
2153
2140
|
} catch (err) {
|
|
2154
|
-
|
|
2141
|
+
console.error(`[CommandManager] \u2716 Failed to remove app commands globally`, err);
|
|
2155
2142
|
}
|
|
2156
2143
|
}
|
|
2157
2144
|
async registerGuild(options = {}) {
|
|
2158
2145
|
const client = await Vimcord.getReadyInstance(this.client.clientId);
|
|
2159
2146
|
if (!client.rest) {
|
|
2160
|
-
|
|
2147
|
+
console.error(`[CommandManager] \u2716 Failed to register app commands by guild: REST is not initialized`);
|
|
2161
2148
|
return;
|
|
2162
2149
|
}
|
|
2163
2150
|
const commands = this.getAllAppCommands(options).map((cmd) => cmd.builder.toJSON());
|
|
2164
2151
|
if (!commands.length) {
|
|
2165
|
-
|
|
2152
|
+
console.log("[CommandManager] No commands to register by guild");
|
|
2166
2153
|
return;
|
|
2167
2154
|
}
|
|
2168
2155
|
const guildIds = options.guilds || client.guilds.cache.map((g) => g.id);
|
|
2169
|
-
|
|
2170
|
-
`Registering (${commands.length}) ${commands.length === 1 ? "command" : "commands"} for ${guildIds.length} guilds...`
|
|
2156
|
+
console.log(
|
|
2157
|
+
`[CommandManager] Registering (${commands.length}) ${commands.length === 1 ? "command" : "commands"} for ${guildIds.length} guilds...`
|
|
2171
2158
|
);
|
|
2172
2159
|
await Promise.all(
|
|
2173
|
-
guildIds.map(
|
|
2174
|
-
|
|
2175
|
-
await client.rest.put(Routes.applicationGuildCommands(client.user.id, guildId), { body: commands });
|
|
2160
|
+
guildIds.map(
|
|
2161
|
+
(guildId) => client.rest.put(Routes.applicationGuildCommands(client.user.id, guildId), { body: commands }).then(() => {
|
|
2176
2162
|
const gName = client.guilds.cache.get(guildId)?.name || "n/a";
|
|
2177
|
-
|
|
2178
|
-
`Set app ${commands.length === 1 ? "command" : "commands"} in guild: ${guildId} (${gName})`
|
|
2163
|
+
console.log(
|
|
2164
|
+
`[CommandManager] \u2714 Set app ${commands.length === 1 ? "command" : "commands"} in guild: ${guildId} (${gName})`
|
|
2179
2165
|
);
|
|
2180
|
-
}
|
|
2166
|
+
}).catch((err) => {
|
|
2181
2167
|
const gName = client.guilds.cache.get(guildId)?.name || "n/a";
|
|
2182
|
-
|
|
2183
|
-
`Failed to set app ${commands.length === 1 ? "command" : "commands"} in guild: ${guildId} (${gName})`,
|
|
2168
|
+
console.log(
|
|
2169
|
+
`[CommandManager] \u2716 Failed to set app ${commands.length === 1 ? "command" : "commands"} in guild: ${guildId} (${gName})`,
|
|
2184
2170
|
err
|
|
2185
2171
|
);
|
|
2186
|
-
}
|
|
2187
|
-
|
|
2172
|
+
})
|
|
2173
|
+
)
|
|
2188
2174
|
);
|
|
2189
2175
|
}
|
|
2190
2176
|
async unregisterGuild(options = {}) {
|
|
2191
2177
|
const client = await Vimcord.getReadyInstance(this.client.clientId);
|
|
2192
2178
|
if (!client.rest) {
|
|
2193
|
-
|
|
2179
|
+
console.error(`[CommandManager] \u2716 Failed to register app commands by guild: REST is not initialized`);
|
|
2194
2180
|
return;
|
|
2195
2181
|
}
|
|
2196
2182
|
const guildIds = options.guilds || client.guilds.cache.map((g) => g.id);
|
|
2197
|
-
|
|
2183
|
+
console.log(`[CommandManager] Unregistering commands from ${guildIds.length} guilds...`);
|
|
2198
2184
|
await Promise.all(
|
|
2199
|
-
guildIds.map(
|
|
2200
|
-
|
|
2201
|
-
|
|
2202
|
-
this.logger.success(`Removed app commands in guild: ${guildId}`);
|
|
2203
|
-
} catch (err) {
|
|
2204
|
-
this.logger.error(`Failed to remove app commands in guild: ${guildId}`, err);
|
|
2205
|
-
}
|
|
2206
|
-
})
|
|
2185
|
+
guildIds.map(
|
|
2186
|
+
(guildId) => client.rest.put(Routes.applicationGuildCommands(client.user.id, guildId), { body: [] }).then(() => console.log(`[CommandManager] \u2714 Removed app commands in guild: ${guildId}`)).catch((err) => console.log(`[CommandManager] \u2716 Failed to remove app commands in guild: ${guildId}`, err))
|
|
2187
|
+
)
|
|
2207
2188
|
);
|
|
2208
2189
|
}
|
|
2209
2190
|
};
|
|
@@ -2711,8 +2692,8 @@ var Vimcord = class _Vimcord extends Client2 {
|
|
|
2711
2692
|
return this.config.app.version;
|
|
2712
2693
|
}
|
|
2713
2694
|
// prettier-ignore
|
|
2714
|
-
set $version(
|
|
2715
|
-
this.config.app.version =
|
|
2695
|
+
set $version(version2) {
|
|
2696
|
+
this.config.app.version = version2;
|
|
2716
2697
|
}
|
|
2717
2698
|
/** Current dev mode state */
|
|
2718
2699
|
// prettier-ignore
|
|
@@ -3988,7 +3969,7 @@ var Paginator = class {
|
|
|
3988
3969
|
if (disabledNavRow.components.length > 0) {
|
|
3989
3970
|
newComponents.push(disabledNavRow);
|
|
3990
3971
|
}
|
|
3991
|
-
await this.data.message.edit({ components: newComponents });
|
|
3972
|
+
await this.data.message.edit({ components: newComponents }).catch(Boolean);
|
|
3992
3973
|
if (this.options.useReactions) {
|
|
3993
3974
|
await this.nav_removeFromMessage();
|
|
3994
3975
|
}
|
|
@@ -3999,7 +3980,7 @@ var Paginator = class {
|
|
|
3999
3980
|
}
|
|
4000
3981
|
break;
|
|
4001
3982
|
case 2 /* DeleteMessage */:
|
|
4002
|
-
await this.data.message.delete();
|
|
3983
|
+
await this.data.message.delete().catch(Boolean);
|
|
4003
3984
|
break;
|
|
4004
3985
|
case 3 /* DoNothing */:
|
|
4005
3986
|
break;
|
|
@@ -4009,16 +3990,16 @@ var Paginator = class {
|
|
|
4009
3990
|
async nav_removeFromMessage() {
|
|
4010
3991
|
if (!this.data.message?.editable) return;
|
|
4011
3992
|
if (this.options.useReactions) {
|
|
4012
|
-
await this.data.message.reactions.removeAll();
|
|
3993
|
+
await this.data.message.reactions.removeAll().catch(Boolean);
|
|
4013
3994
|
} else {
|
|
4014
3995
|
const newComponents = this.data.message.components.filter((c) => c.type !== ComponentType2.Container);
|
|
4015
|
-
await this.data.message.edit({ components: newComponents });
|
|
3996
|
+
await this.data.message.edit({ components: newComponents }).catch(Boolean);
|
|
4016
3997
|
}
|
|
4017
3998
|
}
|
|
4018
3999
|
async nav_addReactions() {
|
|
4019
4000
|
if (!this.data.message || !this.options.useReactions || !this.data.navigation.reactions.length) return;
|
|
4020
4001
|
for (const r of this.data.navigation.reactions) {
|
|
4021
|
-
await this.data.message.react(r.id);
|
|
4002
|
+
await this.data.message.react(r.id).catch(Boolean);
|
|
4022
4003
|
}
|
|
4023
4004
|
}
|
|
4024
4005
|
async collect_components() {
|
|
@@ -4053,7 +4034,7 @@ var Paginator = class {
|
|
|
4053
4034
|
}
|
|
4054
4035
|
switch (i.customId) {
|
|
4055
4036
|
case "ssm_chapterSelect":
|
|
4056
|
-
await i.deferUpdate();
|
|
4037
|
+
await i.deferUpdate().catch(Boolean);
|
|
4057
4038
|
const chapterIndex = this.chapters.findIndex(
|
|
4058
4039
|
(c) => c.id === i.values[0]
|
|
4059
4040
|
);
|
|
@@ -4061,25 +4042,25 @@ var Paginator = class {
|
|
|
4061
4042
|
await this.refresh();
|
|
4062
4043
|
break;
|
|
4063
4044
|
case "btn_first":
|
|
4064
|
-
await i.deferUpdate();
|
|
4045
|
+
await i.deferUpdate().catch(Boolean);
|
|
4065
4046
|
this.callEventStack("first", this.data.page.current, this.data.page.index);
|
|
4066
4047
|
await this.setPage(this.data.page.index.chapter, 0);
|
|
4067
4048
|
await this.refresh();
|
|
4068
4049
|
break;
|
|
4069
4050
|
case "btn_back":
|
|
4070
|
-
await i.deferUpdate();
|
|
4051
|
+
await i.deferUpdate().catch(Boolean);
|
|
4071
4052
|
this.callEventStack("back", this.data.page.current, this.data.page.index);
|
|
4072
4053
|
await this.setPage(this.data.page.index.chapter, this.data.page.index.nested - 1);
|
|
4073
4054
|
await this.refresh();
|
|
4074
4055
|
break;
|
|
4075
4056
|
case "btn_next":
|
|
4076
|
-
await i.deferUpdate();
|
|
4057
|
+
await i.deferUpdate().catch(Boolean);
|
|
4077
4058
|
this.callEventStack("next", this.data.page.current, this.data.page.index);
|
|
4078
4059
|
await this.setPage(this.data.page.index.chapter, this.data.page.index.nested + 1);
|
|
4079
4060
|
await this.refresh();
|
|
4080
4061
|
break;
|
|
4081
4062
|
case "btn_last":
|
|
4082
|
-
await i.deferUpdate();
|
|
4063
|
+
await i.deferUpdate().catch(Boolean);
|
|
4083
4064
|
this.callEventStack("last", this.data.page.current, this.data.page.index);
|
|
4084
4065
|
await this.setPage(
|
|
4085
4066
|
this.data.page.index.chapter,
|
|
@@ -4481,7 +4462,6 @@ export {
|
|
|
4481
4462
|
createMongoPlugin,
|
|
4482
4463
|
createMongoSchema,
|
|
4483
4464
|
createPrefixCommandConfig,
|
|
4484
|
-
createRandomId,
|
|
4485
4465
|
createSlashCommandConfig,
|
|
4486
4466
|
createStaffConfig,
|
|
4487
4467
|
createToolsConfig,
|