zumito-framework 1.11.0 → 1.12.0
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.
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/launcher.js
ADDED
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// eslint-disable-next-line check-file/filename-naming-convention
|
|
3
|
+
import { ZumitoFramework } from './index';
|
|
4
|
+
import path from 'path';
|
|
5
|
+
import fs from 'fs';
|
|
6
|
+
import dotenv from 'dotenv';
|
|
7
|
+
import { RecursiveObjectMerger } from './services/utilities/RecursiveObjectMerger';
|
|
8
|
+
dotenv.config();
|
|
9
|
+
if (!process.env.DISCORD_TOKEN) {
|
|
10
|
+
throw new Error("Discord Token not found (DISCORD_TOKEN)");
|
|
11
|
+
}
|
|
12
|
+
else if (!process.env.DISCORD_CLIENT_ID) {
|
|
13
|
+
throw new Error("Discord Client ID not found (DISCORD_CLIENT_ID)");
|
|
14
|
+
}
|
|
15
|
+
else if (!process.env.MONGO_QUERY_STRING) {
|
|
16
|
+
throw new Error("No MongoDB connection string specified in .env file (MONGO_QUERY_STRING)");
|
|
17
|
+
}
|
|
18
|
+
const defaultConfig = {
|
|
19
|
+
discordClientOptions: {
|
|
20
|
+
intents: 3276799,
|
|
21
|
+
token: process.env.DISCORD_TOKEN,
|
|
22
|
+
clientId: process.env.DISCORD_CLIENT_ID,
|
|
23
|
+
},
|
|
24
|
+
defaultPrefix: process.env.BOT_PREFIX || "z-",
|
|
25
|
+
mongoQueryString: process.env.MONGO_QUERY_STRING,
|
|
26
|
+
logLevel: parseInt(process.env.LOGLEVEL || "3"),
|
|
27
|
+
};
|
|
28
|
+
const configFilePath = path.join(process.cwd(), 'zumito.config.ts');
|
|
29
|
+
if (!fs.existsSync(configFilePath)) {
|
|
30
|
+
console.error(`Config file not found at ${configFilePath}. Please ensure the file exists.`);
|
|
31
|
+
process.exit(1);
|
|
32
|
+
}
|
|
33
|
+
import(configFilePath)
|
|
34
|
+
.then(({ config: userConfig }) => {
|
|
35
|
+
const config = RecursiveObjectMerger.merge(defaultConfig, userConfig);
|
|
36
|
+
new ZumitoFramework(config, (bot) => {
|
|
37
|
+
// Log number of commands loaded
|
|
38
|
+
console.log(`Loaded ${bot.commands.size} commands`);
|
|
39
|
+
// Log number of events loaded
|
|
40
|
+
console.log(`Loaded ${bot.events.size} events`);
|
|
41
|
+
// Log number of modules loaded
|
|
42
|
+
console.log(`Loaded ${bot.modules.size} modules`);
|
|
43
|
+
// Log number of translations loaded
|
|
44
|
+
console.log(`Loaded ${bot.translations.getAll().size} translations`);
|
|
45
|
+
// Log number of routes registered
|
|
46
|
+
console.log(`Loaded ${bot.routes.length} routes`);
|
|
47
|
+
});
|
|
48
|
+
})
|
|
49
|
+
.catch((error) => {
|
|
50
|
+
console.error(`Failed to load config file at ${configFilePath}:`, error.message || error);
|
|
51
|
+
process.exit(1);
|
|
52
|
+
});
|
|
@@ -185,6 +185,9 @@ export class InteractionHandler {
|
|
|
185
185
|
if (!commandInstance) {
|
|
186
186
|
throw new Error(`Command ${path[0]} not found or modal id bad formatted`);
|
|
187
187
|
}
|
|
188
|
+
if (!guildSettings && interaction.guildId) {
|
|
189
|
+
guildSettings = await ServiceContainer.getService(GuildDataGetter).getGuildSettings(interaction.guildId);
|
|
190
|
+
}
|
|
188
191
|
const framework = ServiceContainer.getService(ZumitoFramework);
|
|
189
192
|
if (commandInstance.binds?.modalSubmit) {
|
|
190
193
|
const trans = this.translationManager.getShortHandMethod('command.' + commandInstance.name, guildSettings?.lang);
|
package/package.json
CHANGED
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zumito-framework",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.12.0",
|
|
4
4
|
"description": "Discord.js bot framework",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
7
|
+
"bin": {
|
|
8
|
+
"zumito-framework": "dist/launcher.js"
|
|
9
|
+
},
|
|
7
10
|
"files": [
|
|
8
11
|
"/dist",
|
|
9
12
|
"/baseModule"
|
|
@@ -29,6 +32,7 @@
|
|
|
29
32
|
"cookie-parser": "^1.4.6",
|
|
30
33
|
"cors": "^2.8.5",
|
|
31
34
|
"discord.js": "^14.21.0",
|
|
35
|
+
"dotenv": "^16.4.7",
|
|
32
36
|
"error-stack-parser": "^2.1.4",
|
|
33
37
|
"express": "^4.18.1",
|
|
34
38
|
"leven": "^4.0.0",
|