djs-builder 0.1.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.
- package/.tsbuildinfo +1 -0
- package/README.md +243 -0
- package/dist/discord/builder/components/Buttons.d.ts +22 -0
- package/dist/discord/builder/components/Buttons.d.ts.map +1 -0
- package/dist/discord/builder/components/Buttons.js +80 -0
- package/dist/discord/builder/components/Buttons.js.map +1 -0
- package/dist/discord/builder/components/Menus.d.ts +31 -0
- package/dist/discord/builder/components/Menus.d.ts.map +1 -0
- package/dist/discord/builder/components/Menus.js +75 -0
- package/dist/discord/builder/components/Menus.js.map +1 -0
- package/dist/discord/builder/permissions/perms.d.ts +6 -0
- package/dist/discord/builder/permissions/perms.d.ts.map +1 -0
- package/dist/discord/builder/permissions/perms.js +68 -0
- package/dist/discord/builder/permissions/perms.js.map +1 -0
- package/dist/discord/builder/utils.d.ts +10 -0
- package/dist/discord/builder/utils.d.ts.map +1 -0
- package/dist/discord/builder/utils.js +13 -0
- package/dist/discord/builder/utils.js.map +1 -0
- package/dist/discord/events-handler/events.d.ts +3 -0
- package/dist/discord/events-handler/events.d.ts.map +1 -0
- package/dist/discord/events-handler/events.js +97 -0
- package/dist/discord/events-handler/events.js.map +1 -0
- package/dist/discord/events-handler/login.d.ts +4 -0
- package/dist/discord/events-handler/login.d.ts.map +1 -0
- package/dist/discord/events-handler/login.js +142 -0
- package/dist/discord/events-handler/login.js.map +1 -0
- package/dist/discord/events-handler/prefix-register.d.ts +7 -0
- package/dist/discord/events-handler/prefix-register.d.ts.map +1 -0
- package/dist/discord/events-handler/prefix-register.js +84 -0
- package/dist/discord/events-handler/prefix-register.js.map +1 -0
- package/dist/discord/events-handler/prefix-responder.d.ts +4 -0
- package/dist/discord/events-handler/prefix-responder.d.ts.map +1 -0
- package/dist/discord/events-handler/prefix-responder.js +89 -0
- package/dist/discord/events-handler/prefix-responder.js.map +1 -0
- package/dist/discord/events-handler/slash-register.d.ts +4 -0
- package/dist/discord/events-handler/slash-register.d.ts.map +1 -0
- package/dist/discord/events-handler/slash-register.js +84 -0
- package/dist/discord/events-handler/slash-register.js.map +1 -0
- package/dist/discord/events-handler/slash-responder.d.ts +4 -0
- package/dist/discord/events-handler/slash-responder.d.ts.map +1 -0
- package/dist/discord/events-handler/slash-responder.js +78 -0
- package/dist/discord/events-handler/slash-responder.js.map +1 -0
- package/dist/discord/events-handler/starter.d.ts +6 -0
- package/dist/discord/events-handler/starter.d.ts.map +1 -0
- package/dist/discord/events-handler/starter.js +57 -0
- package/dist/discord/events-handler/starter.js.map +1 -0
- package/dist/discord/functions/anticrash.d.ts +2 -0
- package/dist/discord/functions/anticrash.d.ts.map +1 -0
- package/dist/discord/functions/anticrash.js +50 -0
- package/dist/discord/functions/anticrash.js.map +1 -0
- package/dist/discord/functions/devLogs.d.ts +2 -0
- package/dist/discord/functions/devLogs.d.ts.map +1 -0
- package/dist/discord/functions/devLogs.js +127 -0
- package/dist/discord/functions/devLogs.js.map +1 -0
- package/dist/discord/functions/mongoDb.d.ts +4 -0
- package/dist/discord/functions/mongoDb.d.ts.map +1 -0
- package/dist/discord/functions/mongoDb.js +40 -0
- package/dist/discord/functions/mongoDb.js.map +1 -0
- package/dist/discord/functions/similarity.d.ts +4 -0
- package/dist/discord/functions/similarity.d.ts.map +1 -0
- package/dist/discord/functions/similarity.js +36 -0
- package/dist/discord/functions/similarity.js.map +1 -0
- package/dist/discord/functions/terminal.d.ts +3 -0
- package/dist/discord/functions/terminal.d.ts.map +1 -0
- package/dist/discord/functions/terminal.js +80 -0
- package/dist/discord/functions/terminal.js.map +1 -0
- package/dist/discord/functions/utils.d.ts +5 -0
- package/dist/discord/functions/utils.d.ts.map +1 -0
- package/dist/discord/functions/utils.js +11 -0
- package/dist/discord/functions/utils.js.map +1 -0
- package/dist/discord/functions/versedb.d.ts +3 -0
- package/dist/discord/functions/versedb.d.ts.map +1 -0
- package/dist/discord/functions/versedb.js +22 -0
- package/dist/discord/functions/versedb.js.map +1 -0
- package/dist/discord/types/starter.d.ts +97 -0
- package/dist/discord/types/starter.d.ts.map +1 -0
- package/dist/discord/types/starter.js +3 -0
- package/dist/discord/types/starter.js.map +1 -0
- package/dist/discord/types/utils.d.ts +3 -0
- package/dist/discord/types/utils.d.ts.map +1 -0
- package/dist/discord/types/utils.js +3 -0
- package/dist/discord/types/utils.js.map +1 -0
- package/dist/discord/utils.d.ts +4 -0
- package/dist/discord/utils.d.ts.map +1 -0
- package/dist/discord/utils.js +8 -0
- package/dist/discord/utils.js.map +1 -0
- package/dist/index.d.ts +12 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/lib/discord/builder/components/Buttons.ts +111 -0
- package/lib/discord/builder/components/Menus.ts +105 -0
- package/lib/discord/builder/permissions/perms.ts +66 -0
- package/lib/discord/builder/utils.ts +11 -0
- package/lib/discord/events-handler/events.ts +75 -0
- package/lib/discord/events-handler/login.ts +117 -0
- package/lib/discord/events-handler/prefix-register.ts +62 -0
- package/lib/discord/events-handler/prefix-responder.ts +105 -0
- package/lib/discord/events-handler/slash-register.ts +77 -0
- package/lib/discord/events-handler/slash-responder.ts +89 -0
- package/lib/discord/events-handler/starter.ts +56 -0
- package/lib/discord/functions/anticrash.ts +51 -0
- package/lib/discord/functions/devLogs.ts +116 -0
- package/lib/discord/functions/mongoDb.ts +38 -0
- package/lib/discord/functions/similarity.ts +44 -0
- package/lib/discord/functions/terminal.ts +95 -0
- package/lib/discord/functions/utils.ts +4 -0
- package/lib/discord/functions/versedb.ts +17 -0
- package/lib/discord/types/starter.ts +108 -0
- package/lib/discord/types/utils.ts +2 -0
- package/lib/discord/utils.ts +4 -0
- package/lib/index.ts +35 -0
- package/package.json +43 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.registerSlashCommands = void 0;
|
|
7
|
+
const discord_js_1 = require("discord.js");
|
|
8
|
+
const rest_1 = require("@discordjs/rest");
|
|
9
|
+
const v10_1 = require("discord-api-types/v10");
|
|
10
|
+
const promises_1 = require("fs/promises");
|
|
11
|
+
const path_1 = __importDefault(require("path"));
|
|
12
|
+
async function registerSlashCommands(client, token, slash) {
|
|
13
|
+
var _a, _b, _c;
|
|
14
|
+
if (!token) {
|
|
15
|
+
throw new Error("Please provide valid bot token to register slash commands.");
|
|
16
|
+
}
|
|
17
|
+
const slashCommands = new discord_js_1.Collection();
|
|
18
|
+
const rest = new rest_1.REST({ version: '10' }).setToken(token);
|
|
19
|
+
try {
|
|
20
|
+
const resolvedPath = path_1.default.join(slash.baseDir, slash.path);
|
|
21
|
+
const dirents = await (0, promises_1.readdir)(resolvedPath, { withFileTypes: true });
|
|
22
|
+
for (const dirent of dirents) {
|
|
23
|
+
if (dirent.isDirectory()) {
|
|
24
|
+
const folderPath = path_1.default.join(resolvedPath, dirent.name);
|
|
25
|
+
const files = await (0, promises_1.readdir)(folderPath);
|
|
26
|
+
for (const file of files) {
|
|
27
|
+
try {
|
|
28
|
+
const command = require(path_1.default.join(folderPath, file));
|
|
29
|
+
if (command.data) {
|
|
30
|
+
if (command.cooldown && !isNaN(command.cooldown)) {
|
|
31
|
+
command.data.cooldown = command.cooldown || 0;
|
|
32
|
+
}
|
|
33
|
+
slashCommands.set(command.data.name, command);
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
console.error(`Error in file: ${path_1.default.join(folderPath, file)}`);
|
|
38
|
+
console.error(error);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
else {
|
|
43
|
+
try {
|
|
44
|
+
const command = require(path_1.default.join(resolvedPath, dirent.name));
|
|
45
|
+
if (command.data) {
|
|
46
|
+
if (command.cooldown && !isNaN(command.cooldown)) {
|
|
47
|
+
command.data.cooldown = command.cooldown || 0;
|
|
48
|
+
}
|
|
49
|
+
slashCommands.set(command.data.name, command);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
catch (error) {
|
|
53
|
+
console.error(`Error in file: ${path_1.default.join(resolvedPath, dirent.name)}`);
|
|
54
|
+
console.error(error);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
if (slash.global && !slash.serverId) {
|
|
59
|
+
const slashCommandArray = Array.from(slashCommands.values()).map(command => command.data.toJSON());
|
|
60
|
+
await rest.put(v10_1.Routes.applicationCommands((((_a = client.user) === null || _a === void 0 ? void 0 : _a.id) || '')), { body: slashCommandArray, headers: { Authorization: `Bot ${token}` } });
|
|
61
|
+
}
|
|
62
|
+
else if (!slash.global && slash.serverId) {
|
|
63
|
+
const guild = client.guilds.cache.get(slash.serverId);
|
|
64
|
+
if (guild) {
|
|
65
|
+
const slashCommandArray = Array.from(slashCommands.values()).map(command => command.data.toJSON());
|
|
66
|
+
await rest.put(v10_1.Routes.applicationGuildCommands((((_b = client.user) === null || _b === void 0 ? void 0 : _b.id) || ''), guild.id), { body: slashCommandArray, headers: { Authorization: `Bot ${token}` } });
|
|
67
|
+
}
|
|
68
|
+
else {
|
|
69
|
+
console.error(`Guild with ID ${slash.serverId} not found.`);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
const slashCommandArray = Array.from(slashCommands.values()).map(command => command.data.toJSON());
|
|
74
|
+
await rest.put(v10_1.Routes.applicationCommands((((_c = client.user) === null || _c === void 0 ? void 0 : _c.id) || '')), { body: slashCommandArray, headers: { Authorization: `Bot ${token}` } });
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
catch (error) {
|
|
78
|
+
console.error('Error registering slash commands:', error.message);
|
|
79
|
+
}
|
|
80
|
+
client.slashSize = slashCommands.size;
|
|
81
|
+
return slashCommands;
|
|
82
|
+
}
|
|
83
|
+
exports.registerSlashCommands = registerSlashCommands;
|
|
84
|
+
//# sourceMappingURL=slash-register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slash-register.js","sourceRoot":"","sources":["../../../lib/discord/events-handler/slash-register.ts"],"names":[],"mappings":";;;;;;AAAA,2CAA+C;AAC/C,0CAAuC;AACvC,+CAA+C;AAC/C,0CAAsC;AACtC,gDAAwB;AAGjB,KAAK,UAAU,qBAAqB,CAAC,MAAW,EAAE,KAAa,EAAE,KAAmB;;IAEvF,IAAI,CAAC,KAAK,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,4DAA4D,CAAC,CAAC;IAClF,CAAC;IAED,MAAM,aAAa,GAAG,IAAI,uBAAU,EAAe,CAAC;IACpD,MAAM,IAAI,GAAG,IAAI,WAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAEzD,IAAI,CAAC;QACD,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QAC1D,MAAM,OAAO,GAAG,MAAM,IAAA,kBAAO,EAAC,YAAY,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAErE,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,IAAI,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC;gBACvB,MAAM,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;gBACxD,MAAM,KAAK,GAAG,MAAM,IAAA,kBAAO,EAAC,UAAU,CAAC,CAAC;gBAExC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACvB,IAAI,CAAC;wBACD,MAAM,OAAO,GAAG,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC,CAAC;wBACrD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;4BACf,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;gCAC/C,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;4BAClD,CAAC;4BACD,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;wBAClD,CAAC;oBACL,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACb,OAAO,CAAC,KAAK,CAAC,kBAAkB,cAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC;wBAC/D,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACzB,CAAC;gBACL,CAAC;YACL,CAAC;iBAAM,CAAC;gBACJ,IAAI,CAAC;oBACD,MAAM,OAAO,GAAG,OAAO,CAAC,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC9D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;wBACf,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;4BAC/C,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,CAAC,CAAC;wBAClD,CAAC;wBACD,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;oBAClD,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACb,OAAO,CAAC,KAAK,CAAC,kBAAkB,cAAI,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACxE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;gBACzB,CAAC;YACL,CAAC;QACL,CAAC;QAED,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;YAClC,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACnG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAM,CAAC,mBAAmB,CAAC,CAAC,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,OAAO,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACjJ,CAAC;aAAM,IAAI,CAAC,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACzC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAsB,CAAC;YAC3E,IAAI,KAAK,EAAE,CAAC;gBACR,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;gBACnG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAM,CAAC,wBAAwB,CAAC,CAAC,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,OAAO,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;YAChK,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,KAAK,CAAC,iBAAiB,KAAK,CAAC,QAAQ,aAAa,CAAC,CAAC;YAChE,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,MAAM,iBAAiB,GAAG,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACnG,MAAM,IAAI,CAAC,GAAG,CAAC,YAAM,CAAC,mBAAmB,CAAC,CAAC,CAAA,MAAA,MAAM,CAAC,IAAI,0CAAE,EAAE,KAAI,EAAE,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,OAAO,EAAE,EAAE,aAAa,EAAE,OAAO,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QACjJ,CAAC;IACL,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,mCAAmC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtE,CAAC;IAED,MAAM,CAAC,SAAS,GAAG,aAAa,CAAC,IAAI,CAAC;IACtC,OAAO,aAAa,CAAC;AACzB,CAAC;AArED,sDAqEC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slash-responder.d.ts","sourceRoot":"","sources":["../../../lib/discord/events-handler/slash-responder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAoD,MAAM,YAAY,CAAC;AAEtF,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD,wBAAsB,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAoFnG"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.loadSlash = void 0;
|
|
4
|
+
const discord_js_1 = require("discord.js");
|
|
5
|
+
const slash_register_1 = require("./slash-register");
|
|
6
|
+
async function loadSlash(client, token, options) {
|
|
7
|
+
const slashCommands = await (0, slash_register_1.registerSlashCommands)(client, token, options);
|
|
8
|
+
if (!slashCommands || slashCommands.size === 0) {
|
|
9
|
+
console.log('\x1b[33m%s\x1b[0m', 'No registered slash commands. SlachHandler won\'t work.');
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const interactionCooldowns = new discord_js_1.Collection();
|
|
13
|
+
client.on('interactionCreate', async (interaction) => {
|
|
14
|
+
var _a;
|
|
15
|
+
if (!interaction.isCommand() || !interaction.guild || !interaction.isChatInputCommand() || interaction.user.bot) {
|
|
16
|
+
return;
|
|
17
|
+
}
|
|
18
|
+
const command = slashCommands.get(interaction.commandName);
|
|
19
|
+
if (!command)
|
|
20
|
+
return;
|
|
21
|
+
if (command.cooldown && !isNaN(command.cooldown)) {
|
|
22
|
+
const userCooldowns = interactionCooldowns.get(interaction.user.id) || new discord_js_1.Collection();
|
|
23
|
+
const cooldownExpiration = userCooldowns.get(command.data.name);
|
|
24
|
+
if (cooldownExpiration && cooldownExpiration > Date.now()) {
|
|
25
|
+
const remainingCooldown = (cooldownExpiration - Date.now()) / 1000;
|
|
26
|
+
await interaction.reply(`Command is on cooldown. Please wait ${remainingCooldown.toFixed(1)} seconds.`);
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
userCooldowns.set(command.data.name, Date.now() + command.cooldown * 1000);
|
|
30
|
+
interactionCooldowns.set(interaction.user.id, userCooldowns);
|
|
31
|
+
}
|
|
32
|
+
try {
|
|
33
|
+
if (command.run) {
|
|
34
|
+
await command.run(client, interaction);
|
|
35
|
+
}
|
|
36
|
+
else if (command.execute) {
|
|
37
|
+
await command.execute(client, interaction);
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
console.log('\x1b[33m%s\x1b[0m', `Command "${command.data.name}" has neither run nor execute method.`);
|
|
41
|
+
}
|
|
42
|
+
const startExecutionTime = Date.now();
|
|
43
|
+
const channel = interaction.guild.channels.cache.get(options.logsId || '');
|
|
44
|
+
const userName = interaction.user.username;
|
|
45
|
+
const userId = interaction.user.id;
|
|
46
|
+
const serverName = interaction.guild.name || 'Unknown Server';
|
|
47
|
+
const serverId = interaction.guild.id || 'Unknown ID';
|
|
48
|
+
let messageLink = '';
|
|
49
|
+
if (interaction.channel) {
|
|
50
|
+
messageLink = `https://discord.com/channels/${serverId}/${interaction.channel.id}/${interaction.id}`;
|
|
51
|
+
}
|
|
52
|
+
else {
|
|
53
|
+
messageLink = 'Unknown';
|
|
54
|
+
}
|
|
55
|
+
const embedLog = new discord_js_1.EmbedBuilder()
|
|
56
|
+
.setColor("Blue")
|
|
57
|
+
.setThumbnail((_a = interaction.client.user) === null || _a === void 0 ? void 0 : _a.displayAvatarURL())
|
|
58
|
+
.setTitle("Use Prefix Command")
|
|
59
|
+
.setTimestamp()
|
|
60
|
+
.addFields({ name: "📧 Cmd:", value: `- ${command.name}`, inline: true }, { name: "🤪 User:", value: `- ${userName} (<@${userId}>)`, inline: true }, { name: "\u200B", value: "\u200B", inline: true }, { name: "🏠 Server:", value: `- ${serverName}.\n- [\`${serverId}\`].`, inline: true }, { name: "📩 Message:", value: `- [Link](${messageLink})`, inline: true }, { name: "\u200B", value: "\u200B", inline: true }, { name: "⏳ Date:", value: `- <t:${Math.floor(Date.now() / 1000)}:R>`, inline: true });
|
|
61
|
+
if (options.logsId && channel) {
|
|
62
|
+
await channel.send({ embeds: [embedLog] });
|
|
63
|
+
}
|
|
64
|
+
const executionTime = Date.now() - startExecutionTime;
|
|
65
|
+
if (executionTime > 3000) {
|
|
66
|
+
console.log('\x1b[33m%s\x1b[0m', `Command "${command.data.name}" took ${executionTime}ms to execute.`);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
console.error('\x1b[31m%s\x1b[0m', `Error executing command "${command.data.name}":`, error);
|
|
71
|
+
if (interaction.channel) {
|
|
72
|
+
await interaction.channel.send({ content: 'An error occurred while executing the command.' });
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
}
|
|
77
|
+
exports.loadSlash = loadSlash;
|
|
78
|
+
//# sourceMappingURL=slash-responder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"slash-responder.js","sourceRoot":"","sources":["../../../lib/discord/events-handler/slash-responder.ts"],"names":[],"mappings":";;;AAAA,2CAAsF;AACtF,qDAAyD;AAGlD,KAAK,UAAU,SAAS,CAAC,MAAc,EAAE,KAAa,EAAE,OAAqB;IAChF,MAAM,aAAa,GAAG,MAAM,IAAA,sCAAqB,EAAC,MAAM,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;IAE1E,IAAI,CAAC,aAAa,IAAI,aAAa,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,yDAAyD,CAAC,CAAC;QAC5F,OAAO;IACX,CAAC;IAED,MAAM,oBAAoB,GAAsD,IAAI,uBAAU,EAAE,CAAC;IAEjG,MAAM,CAAC,EAAE,CAAC,mBAAmB,EAAE,KAAK,EAAE,WAAwB,EAAE,EAAE;;QAC9D,IAAI,CAAC,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,WAAW,CAAC,kBAAkB,EAAE,IAAI,WAAW,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC;YAC9G,OAAO;QACX,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC;QAC3D,IAAI,CAAC,OAAO;YAAE,OAAO;QAErB,IAAI,OAAO,CAAC,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,MAAM,aAAa,GAAG,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,IAAI,uBAAU,EAAkB,CAAC;YACxG,MAAM,kBAAkB,GAAG,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAChE,IAAI,kBAAkB,IAAI,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBACxD,MAAM,iBAAiB,GAAG,CAAC,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;gBACnE,MAAM,WAAW,CAAC,KAAK,CAAC,uCAAuC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;gBACxG,OAAO;YACX,CAAC;YACD,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC;YAC3E,oBAAoB,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,EAAE,aAAa,CAAC,CAAC;QACjE,CAAC;QAGD,IAAI,CAAC;YACD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC3C,CAAC;iBAAM,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACzB,MAAM,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACJ,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,uCAAuC,CAAC,CAAC;YAC3G,CAAC;YACD,MAAM,kBAAkB,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YAEtC,MAAM,OAAO,GAAG,WAAW,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,IAAI,EAAE,CAAQ,CAAC;YAClF,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC;YAC3C,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACnC,MAAM,UAAU,GAAG,WAAW,CAAC,KAAK,CAAC,IAAI,IAAI,gBAAgB,CAAC;YAC9D,MAAM,QAAQ,GAAG,WAAW,CAAC,KAAK,CAAC,EAAE,IAAI,YAAY,CAAC;YACtD,IAAI,WAAW,GAAG,EAAE,CAAC;YAErB,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACtB,WAAW,GAAG,gCAAgC,QAAQ,IAAI,WAAW,CAAC,OAAO,CAAC,EAAE,IAAI,WAAW,CAAC,EAAE,EAAE,CAAC;YACzG,CAAC;iBAAM,CAAC;gBACJ,WAAW,GAAG,SAAS,CAAC;YAC5B,CAAC;YAGD,MAAM,QAAQ,GAAG,IAAI,yBAAY,EAAE;iBAClC,QAAQ,CAAC,MAAM,CAAC;iBAChB,YAAY,CAAC,MAAA,WAAW,CAAC,MAAM,CAAC,IAAI,0CAAE,gBAAgB,EAAE,CAAC;iBACzD,QAAQ,CAAC,oBAAoB,CAAC;iBAC9B,YAAY,EAAE;iBACd,SAAS,CACN,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,EAC7D,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,QAAQ,OAAO,MAAM,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,EACzE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EACjD,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,UAAU,WAAW,QAAQ,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,EACrF,EAAE,IAAI,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,WAAW,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,EACxE,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,EACjD,EAAE,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,CACvF,CAAC;YACF,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,EAAE,CAAC;gBAC5B,MAAM,OAAO,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,kBAAkB,CAAC;YACtD,IAAI,aAAa,GAAG,IAAI,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,mBAAmB,EAAE,YAAY,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,aAAa,gBAAgB,CAAC,CAAC;YAC3G,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,CAAC,KAAK,CAAC,mBAAmB,EAAE,4BAA4B,OAAO,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,KAAK,CAAC,CAAC;YAC7F,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;gBACtB,MAAM,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,gDAAgD,EAAE,CAAC,CAAC;YAClG,CAAC;QACL,CAAC;IACL,CAAC,CAAC,CAAC;AACP,CAAC;AApFD,8BAoFC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { StarterOptions, StarterInterface } from '../types/utils';
|
|
2
|
+
export declare class Starter implements StarterInterface {
|
|
3
|
+
start(djs: any, options: StarterOptions): Promise<any>;
|
|
4
|
+
handleStartupError(error: any, djs: any, options: StarterOptions): Promise<void>;
|
|
5
|
+
}
|
|
6
|
+
//# sourceMappingURL=starter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"starter.d.ts","sourceRoot":"","sources":["../../../lib/discord/events-handler/starter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAOlE,qBAAa,OAAQ,YAAW,gBAAgB;IACtC,KAAK,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC;IAyCtD,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,cAAc;CAMzE"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.Starter = void 0;
|
|
4
|
+
const events_1 = require("./events");
|
|
5
|
+
const prefix_responder_1 = require("./prefix-responder");
|
|
6
|
+
const slash_responder_1 = require("./slash-responder");
|
|
7
|
+
const utils_1 = require("../functions/utils");
|
|
8
|
+
const login_1 = require("./login");
|
|
9
|
+
class Starter {
|
|
10
|
+
async start(djs, options) {
|
|
11
|
+
var _a, _b, _c, _d, _e, _f;
|
|
12
|
+
let mongoDb;
|
|
13
|
+
let verseDb;
|
|
14
|
+
try {
|
|
15
|
+
if (options.bot) {
|
|
16
|
+
await (0, login_1.login)(djs, options.bot);
|
|
17
|
+
}
|
|
18
|
+
if (options.events) {
|
|
19
|
+
await (0, events_1.loadEvents)(djs, options.events);
|
|
20
|
+
}
|
|
21
|
+
if (options.prefix) {
|
|
22
|
+
await (0, prefix_responder_1.loadPrefix)(djs, options.prefix);
|
|
23
|
+
}
|
|
24
|
+
if (options.slash && options.bot.token) {
|
|
25
|
+
await (0, slash_responder_1.loadSlash)(djs, (_a = options.bot) === null || _a === void 0 ? void 0 : _a.token, options.slash);
|
|
26
|
+
}
|
|
27
|
+
if ((_c = (_b = options.bot) === null || _b === void 0 ? void 0 : _b.Database) === null || _c === void 0 ? void 0 : _c.mongo) {
|
|
28
|
+
await (0, utils_1.mongoConnect)(options.bot.Database.mongo.mongoURI, options.bot.Database.mongo.dbName || 'djshandler');
|
|
29
|
+
mongoDb = await (0, utils_1.getDb)();
|
|
30
|
+
}
|
|
31
|
+
if ((_e = (_d = options.bot) === null || _d === void 0 ? void 0 : _d.Database) === null || _e === void 0 ? void 0 : _e.verse) {
|
|
32
|
+
verseDb = await (0, utils_1.verseConnect)(options.bot.Database.verse);
|
|
33
|
+
}
|
|
34
|
+
if ((_f = options.anticrash) === null || _f === void 0 ? void 0 : _f.enable) {
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
console.error('An error occurred during bot startup:', error.message);
|
|
39
|
+
await this.handleStartupError(error, djs, options);
|
|
40
|
+
}
|
|
41
|
+
return {
|
|
42
|
+
mongodb: mongoDb,
|
|
43
|
+
versedb: verseDb,
|
|
44
|
+
slashSize: djs.slashSize || 0,
|
|
45
|
+
prefixSize: djs.prefixSize || 0,
|
|
46
|
+
eventSize: djs.eventSize || 0
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
async handleStartupError(error, djs, options) {
|
|
50
|
+
console.error('Error during bot startup:', error);
|
|
51
|
+
setTimeout(() => {
|
|
52
|
+
this.start(djs, options);
|
|
53
|
+
}, 5000);
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
exports.Starter = Starter;
|
|
57
|
+
//# sourceMappingURL=starter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"starter.js","sourceRoot":"","sources":["../../../lib/discord/events-handler/starter.ts"],"names":[],"mappings":";;;AACA,qCAAsC;AACtC,yDAAgD;AAChD,uDAA8C;AAC9C,8CAAuE;AACvE,mCAAgC;AAEhC,MAAa,OAAO;IAChB,KAAK,CAAC,KAAK,CAAC,GAAQ,EAAE,OAAuB;;QACzC,IAAI,OAAO,CAAC;QACZ,IAAI,OAAO,CAAC;QAEZ,IAAI,CAAC;YACD,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;gBACd,MAAM,IAAA,aAAK,EAAC,GAAG,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;YAClC,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,IAAA,mBAAU,EAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;gBACjB,MAAM,IAAA,6BAAU,EAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC;gBACrC,MAAM,IAAA,2BAAS,EAAC,GAAG,EAAE,MAAA,OAAO,CAAC,GAAG,0CAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,MAAA,MAAA,OAAO,CAAC,GAAG,0CAAE,QAAQ,0CAAE,KAAK,EAAE,CAAC;gBAC/B,MAAM,IAAA,oBAAY,EAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,IAAI,YAAY,CAAC,CAAC;gBAC3G,OAAO,GAAG,MAAM,IAAA,aAAK,GAAE,CAAC;YAC5B,CAAC;YACD,IAAI,MAAA,MAAA,OAAO,CAAC,GAAG,0CAAE,QAAQ,0CAAE,KAAK,EAAE,CAAC;gBAC/B,OAAO,GAAG,MAAM,IAAA,oBAAY,EAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,MAAA,OAAO,CAAC,SAAS,0CAAE,MAAM,EAAE,CAAC;YAEhC,CAAC;QACL,CAAC;QAAC,OAAO,KAAU,EAAE,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,uCAAuC,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACtE,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC;QACvD,CAAC;QAED,OAAO;YACH,OAAO,EAAE,OAAO;YAChB,OAAO,EAAE,OAAO;YAChB,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;YAC7B,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI,CAAC;YAC/B,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,CAAC;SAChC,CAAC;IACN,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAU,EAAE,GAAQ,EAAE,OAAuB;QAClE,OAAO,CAAC,KAAK,CAAC,2BAA2B,EAAE,KAAK,CAAC,CAAC;QAClD,UAAU,CAAC,GAAG,EAAE;YACZ,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC7B,CAAC,EAAE,IAAI,CAAC,CAAC;IACb,CAAC;CACJ;AAhDD,0BAgDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anticrash.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/anticrash.ts"],"names":[],"mappings":"AAEA,wBAAsB,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,iBAgDrD"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AntiCrash = void 0;
|
|
4
|
+
const discord_js_1 = require("discord.js");
|
|
5
|
+
async function AntiCrash(djs, options) {
|
|
6
|
+
try {
|
|
7
|
+
if (!options.AntiCrash.webhookURL) {
|
|
8
|
+
throw new Error('Please provide a valid webhook URL.');
|
|
9
|
+
}
|
|
10
|
+
const webhookClient = new discord_js_1.WebhookClient({ url: options.AntiCrash.webhookURL });
|
|
11
|
+
process.on('uncaughtException', (error) => {
|
|
12
|
+
var _a;
|
|
13
|
+
console.error('Uncaught Exception:');
|
|
14
|
+
console.error('Error:', error.message);
|
|
15
|
+
if (error.stack) {
|
|
16
|
+
console.error('Stack Trace:', error.stack);
|
|
17
|
+
const filenameMatch = error.stack.match(/\((.*?):\d+:\d+\)/);
|
|
18
|
+
const filename = filenameMatch ? filenameMatch[1] : 'Unknown File';
|
|
19
|
+
const embed = new discord_js_1.EmbedBuilder()
|
|
20
|
+
.setTitle('Uncaught Exception')
|
|
21
|
+
.setDescription(`**File:** \`${filename}\`\n**Error:** \`${error.message}\`\n**Stack Trace:** \`\`\`${error.stack}\`\`\``)
|
|
22
|
+
.setColor('#FF0000')
|
|
23
|
+
.setTimestamp();
|
|
24
|
+
webhookClient.send({ content: ((_a = options.AntiCrash) === null || _a === void 0 ? void 0 : _a.mention) || '', embeds: [embed] });
|
|
25
|
+
}
|
|
26
|
+
});
|
|
27
|
+
process.on('unhandledRejection', (reason, promise) => {
|
|
28
|
+
var _a;
|
|
29
|
+
console.error('Unhandled Rejection:');
|
|
30
|
+
console.error('Reason:', reason);
|
|
31
|
+
if (promise) {
|
|
32
|
+
console.error('Promise:', promise);
|
|
33
|
+
}
|
|
34
|
+
const stackTrace = (reason === null || reason === void 0 ? void 0 : reason.stack) || '';
|
|
35
|
+
const filenameMatch = stackTrace.match(/at\s+(.+):(\d+):(\d+)/);
|
|
36
|
+
const filename = filenameMatch ? filenameMatch[1] : 'Unknown File';
|
|
37
|
+
const embed = new discord_js_1.EmbedBuilder()
|
|
38
|
+
.setTitle('Unhandled Rejection')
|
|
39
|
+
.setDescription(`**File:** \`${filename}\`\n**Reason:** \`${reason}\`\n**Promise:** \`${promise}\``)
|
|
40
|
+
.setColor('#FF0000')
|
|
41
|
+
.setTimestamp();
|
|
42
|
+
webhookClient.send({ content: ((_a = options.AntiCrash) === null || _a === void 0 ? void 0 : _a.mention) || '', embeds: [embed] });
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
catch (error) {
|
|
46
|
+
console.error('An error occurred in AntiCrash function:', error.message);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
exports.AntiCrash = AntiCrash;
|
|
50
|
+
//# sourceMappingURL=anticrash.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"anticrash.js","sourceRoot":"","sources":["../../../lib/discord/functions/anticrash.ts"],"names":[],"mappings":";;;AAAA,2CAAyD;AAElD,KAAK,UAAU,SAAS,CAAC,GAAQ,EAAE,OAAY;IAClD,IAAI,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;QAC3D,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,0BAAa,CAAC,EAAE,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,UAAU,EAAE,CAAC,CAAC;QAE/E,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAU,EAAE,EAAE;;YAC3C,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;YACrC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;YACvC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBACd,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC;gBAC3C,MAAM,aAAa,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;gBAC7D,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;gBAEnE,MAAM,KAAK,GAAG,IAAI,yBAAY,EAAE;qBAC3B,QAAQ,CAAC,oBAAoB,CAAC;qBAC9B,cAAc,CAAC,eAAe,QAAQ,oBAAoB,KAAK,CAAC,OAAO,8BAA8B,KAAK,CAAC,KAAK,QAAQ,CAAC;qBACzH,QAAQ,CAAC,SAAS,CAAC;qBACnB,YAAY,EAAE,CAAC;gBAEhB,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA,MAAA,OAAO,CAAC,SAAS,0CAAE,OAAO,KAAI,EAAE,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;YACvF,CAAC;QACT,CAAC,CAAC,CAAC;QAEH,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAW,EAAE,OAAY,EAAE,EAAE;;YAC3D,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACtC,OAAO,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YACjC,IAAI,OAAO,EAAE,CAAC;gBACV,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACvC,CAAC;YAED,MAAM,UAAU,GAAG,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,KAAI,EAAE,CAAC;YACvC,MAAM,aAAa,GAAG,UAAU,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC;YAChE,MAAM,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC;YAEnE,MAAM,KAAK,GAAG,IAAI,yBAAY,EAAE;iBAC3B,QAAQ,CAAC,qBAAqB,CAAC;iBAC/B,cAAc,CAAC,eAAe,QAAQ,qBAAqB,MAAM,sBAAsB,OAAO,IAAI,CAAC;iBACnG,QAAQ,CAAC,SAAS,CAAC;iBACnB,YAAY,EAAE,CAAC;YAEhB,aAAa,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAA,MAAA,OAAO,CAAC,SAAS,0CAAE,OAAO,KAAI,EAAE,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvF,CAAC,CAAC,CAAC;IAEX,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,0CAA0C,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IAC7E,CAAC;AACL,CAAC;AAhDD,8BAgDC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devLogs.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/devLogs.ts"],"names":[],"mappings":"AAIA,wBAAsB,SAAS,CAAC,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CA8G7D"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
19
|
+
if (mod && mod.__esModule) return mod;
|
|
20
|
+
var result = {};
|
|
21
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
22
|
+
__setModuleDefault(result, mod);
|
|
23
|
+
return result;
|
|
24
|
+
};
|
|
25
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
26
|
+
exports.devLogger = void 0;
|
|
27
|
+
const discord_js_1 = require("discord.js");
|
|
28
|
+
const fs = __importStar(require("fs"));
|
|
29
|
+
const path = __importStar(require("path"));
|
|
30
|
+
async function devLogger(devLogger) {
|
|
31
|
+
const webhook = new discord_js_1.WebhookClient({ url: devLogger.webhookURL });
|
|
32
|
+
const watchedExtensions = ['.js', '.json', '.txt', '.md', '.ts', '.tsx', '.jsx', '.html', '.css', '.py', '.verse'];
|
|
33
|
+
const MAX_FIELD_VALUE_LENGTH = 1024;
|
|
34
|
+
const watchDirectory = (directory) => {
|
|
35
|
+
fs.readdir(directory, (err, files) => {
|
|
36
|
+
if (err) {
|
|
37
|
+
console.error('Error reading directory:', err);
|
|
38
|
+
return;
|
|
39
|
+
}
|
|
40
|
+
for (const file of files) {
|
|
41
|
+
const filePath = path.join(directory, file);
|
|
42
|
+
fs.stat(filePath, (err, stats) => {
|
|
43
|
+
if (err) {
|
|
44
|
+
console.error('Error getting file stats:', err);
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
if (stats.isDirectory()) {
|
|
48
|
+
watchDirectory(filePath);
|
|
49
|
+
}
|
|
50
|
+
else {
|
|
51
|
+
if (watchedExtensions.some(ext => file.endsWith(ext))) {
|
|
52
|
+
watchFile(filePath);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
};
|
|
59
|
+
const watchFile = (filePath) => {
|
|
60
|
+
fs.watchFile(filePath, { interval: 500 }, (curr, prev) => {
|
|
61
|
+
if (curr.mtime !== prev.mtime) {
|
|
62
|
+
readFile(filePath);
|
|
63
|
+
}
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
const readFile = (filePath) => {
|
|
67
|
+
fs.readFile(filePath, 'utf-8', (err, data) => {
|
|
68
|
+
if (err) {
|
|
69
|
+
console.error('Error reading file:', err);
|
|
70
|
+
return;
|
|
71
|
+
}
|
|
72
|
+
const embed = createEmbed(filePath, data);
|
|
73
|
+
sendWebhook(embed);
|
|
74
|
+
});
|
|
75
|
+
};
|
|
76
|
+
const createEmbed = (filePath, data) => {
|
|
77
|
+
let changes = '```' + getFileType(filePath) + '\n' + data + '\n```';
|
|
78
|
+
let changesChunks = [];
|
|
79
|
+
while (changes.length > MAX_FIELD_VALUE_LENGTH) {
|
|
80
|
+
changesChunks.push(changes.substring(0, MAX_FIELD_VALUE_LENGTH));
|
|
81
|
+
changes = changes.substring(MAX_FIELD_VALUE_LENGTH);
|
|
82
|
+
}
|
|
83
|
+
changesChunks.push(changes);
|
|
84
|
+
const embed = new discord_js_1.EmbedBuilder()
|
|
85
|
+
.setColor('#3498db')
|
|
86
|
+
.setTitle('File Changed')
|
|
87
|
+
.setDescription(`> - File: \`${filePath}\``)
|
|
88
|
+
.setTimestamp();
|
|
89
|
+
for (let i = 0; i < changesChunks.length; i++) {
|
|
90
|
+
embed.addFields({ name: 'Changes:', value: changesChunks[i] });
|
|
91
|
+
}
|
|
92
|
+
return embed;
|
|
93
|
+
};
|
|
94
|
+
const sendWebhook = (embed) => {
|
|
95
|
+
webhook.send({ content: devLogger.mention || '', embeds: [embed] })
|
|
96
|
+
.then()
|
|
97
|
+
.catch((error) => console.error('Error Dev Logger Message', error));
|
|
98
|
+
};
|
|
99
|
+
const getFileType = (filePath) => {
|
|
100
|
+
const extension = path.extname(filePath);
|
|
101
|
+
switch (extension) {
|
|
102
|
+
case '.js':
|
|
103
|
+
case '.ts':
|
|
104
|
+
case '.jsx':
|
|
105
|
+
case '.tsx':
|
|
106
|
+
return 'javascript';
|
|
107
|
+
case '.json':
|
|
108
|
+
return 'json';
|
|
109
|
+
case '.txt':
|
|
110
|
+
case '.md':
|
|
111
|
+
return 'plaintext';
|
|
112
|
+
case '.html':
|
|
113
|
+
return 'html';
|
|
114
|
+
case '.css':
|
|
115
|
+
return 'css';
|
|
116
|
+
case '.py':
|
|
117
|
+
return 'python';
|
|
118
|
+
case '.verse':
|
|
119
|
+
return 'verse';
|
|
120
|
+
default:
|
|
121
|
+
return 'unknown';
|
|
122
|
+
}
|
|
123
|
+
};
|
|
124
|
+
watchDirectory(devLogger.pathToWatch);
|
|
125
|
+
}
|
|
126
|
+
exports.devLogger = devLogger;
|
|
127
|
+
//# sourceMappingURL=devLogs.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"devLogs.js","sourceRoot":"","sources":["../../../lib/discord/functions/devLogs.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mongoDb.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/mongoDb.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,EAAE,EAAE,MAAM,SAAS,CAAC;AAwB1C,wBAAsB,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7E;AAED,wBAAsB,KAAK,IAAI,OAAO,CAAC,EAAE,CAAC,CASzC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getDb = exports.mongoConnect = void 0;
|
|
4
|
+
const mongodb_1 = require("mongodb");
|
|
5
|
+
let db = null;
|
|
6
|
+
let isInitialized = false;
|
|
7
|
+
let connectionPromise = null;
|
|
8
|
+
async function initialize(uri, dbName) {
|
|
9
|
+
if (isInitialized || connectionPromise) {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
try {
|
|
13
|
+
const client = new mongodb_1.MongoClient(uri);
|
|
14
|
+
connectionPromise = client.connect();
|
|
15
|
+
const connectedClient = await connectionPromise;
|
|
16
|
+
db = connectedClient.db(dbName || 'djsBuilder');
|
|
17
|
+
isInitialized = true;
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
console.error('Error initializing MongoDB:', error);
|
|
21
|
+
}
|
|
22
|
+
finally {
|
|
23
|
+
connectionPromise = null;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
async function mongoConnect(uri, dbName) {
|
|
27
|
+
await initialize(uri, dbName);
|
|
28
|
+
}
|
|
29
|
+
exports.mongoConnect = mongoConnect;
|
|
30
|
+
async function getDb() {
|
|
31
|
+
if (!isInitialized) {
|
|
32
|
+
throw new Error('MongoDB connection not initialized');
|
|
33
|
+
}
|
|
34
|
+
if (!db) {
|
|
35
|
+
throw new Error('MongoDB connection not established');
|
|
36
|
+
}
|
|
37
|
+
return db;
|
|
38
|
+
}
|
|
39
|
+
exports.getDb = getDb;
|
|
40
|
+
//# sourceMappingURL=mongoDb.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mongoDb.js","sourceRoot":"","sources":["../../../lib/discord/functions/mongoDb.ts"],"names":[],"mappings":";;;AAAA,qCAA0C;AAE1C,IAAI,EAAE,GAAc,IAAI,CAAC;AACzB,IAAI,aAAa,GAAG,KAAK,CAAC;AAC1B,IAAI,iBAAiB,GAAgC,IAAI,CAAC;AAE1D,KAAK,UAAU,UAAU,CAAC,GAAW,EAAE,MAAc;IACjD,IAAI,aAAa,IAAI,iBAAiB,EAAE,CAAC;QACrC,OAAO;IACX,CAAC;IAED,IAAI,CAAC;QACD,MAAM,MAAM,GAAG,IAAI,qBAAW,CAAC,GAAG,CAAC,CAAC;QACpC,iBAAiB,GAAG,MAAM,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,eAAe,GAAG,MAAM,iBAAiB,CAAC;QAChD,EAAE,GAAG,eAAe,CAAC,EAAE,CAAC,MAAM,IAAI,YAAY,CAAC,CAAC;QAChD,aAAa,GAAG,IAAI,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;IACxD,CAAC;YAAS,CAAC;QACP,iBAAiB,GAAG,IAAI,CAAC;IAC7B,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,GAAW,EAAE,MAAc;IAC1D,MAAM,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;AAClC,CAAC;AAFD,oCAEC;AAEM,KAAK,UAAU,KAAK;IACvB,IAAI,CAAC,aAAa,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAC1D,CAAC;IACD,IAAI,CAAC,EAAE,EAAE,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;IAC1D,CAAC;IAED,OAAO,EAAE,CAAC;AACd,CAAC;AATD,sBASC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"similarity.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/similarity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,YAAY,CAAA;AACvC,OAAO,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAC3C,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,EAAE,CAcvG"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.getSimilarCommands = void 0;
|
|
4
|
+
function getSimilarCommands(commandName, commands) {
|
|
5
|
+
const similarityThreshold = 0.6;
|
|
6
|
+
const similarCommands = [];
|
|
7
|
+
commands.forEach((_, cmdName) => {
|
|
8
|
+
const similarity = calculateSimilarity(commandName, cmdName);
|
|
9
|
+
if (similarity >= similarityThreshold) {
|
|
10
|
+
similarCommands.push({ name: cmdName, similarity });
|
|
11
|
+
}
|
|
12
|
+
});
|
|
13
|
+
similarCommands.sort((a, b) => b.similarity - a.similarity);
|
|
14
|
+
return similarCommands.map(cmd => cmd.name);
|
|
15
|
+
}
|
|
16
|
+
exports.getSimilarCommands = getSimilarCommands;
|
|
17
|
+
function calculateSimilarity(str1, str2) {
|
|
18
|
+
const len1 = str1.length;
|
|
19
|
+
const len2 = str2.length;
|
|
20
|
+
const matrix = [];
|
|
21
|
+
// Initialize the matrix
|
|
22
|
+
for (let i = 0; i <= len1; i++) {
|
|
23
|
+
matrix[i] = [i];
|
|
24
|
+
}
|
|
25
|
+
for (let j = 0; j <= len2; j++) {
|
|
26
|
+
matrix[0][j] = j;
|
|
27
|
+
}
|
|
28
|
+
for (let i = 1; i <= len1; i++) {
|
|
29
|
+
for (let j = 1; j <= len2; j++) {
|
|
30
|
+
const cost = str1[i - 1] === str2[j - 1] ? 0 : 1;
|
|
31
|
+
matrix[i][j] = Math.min(matrix[i - 1][j] + 1, matrix[i][j - 1] + 1, matrix[i - 1][j - 1] + cost);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
return 1 - matrix[len1][len2] / Math.max(len1, len2);
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=similarity.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"similarity.js","sourceRoot":"","sources":["../../../lib/discord/functions/similarity.ts"],"names":[],"mappings":";;;AAEA,SAAgB,kBAAkB,CAAC,WAAmB,EAAE,QAAqC;IACzF,MAAM,mBAAmB,GAAG,GAAG,CAAC;IAChC,MAAM,eAAe,GAA2C,EAAE,CAAC;IAEnE,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE;QAC5B,MAAM,UAAU,GAAG,mBAAmB,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC7D,IAAI,UAAU,IAAI,mBAAmB,EAAE,CAAC;YACpC,eAAe,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;QACxD,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,UAAU,CAAC,CAAC;IAE5D,OAAO,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAChD,CAAC;AAdD,gDAcC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,IAAY;IACnD,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC;IACzB,MAAM,MAAM,GAAG,EAAE,CAAC;IAElB,wBAAwB;IACxB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IACD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACrB,CAAC;IAED,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7B,MAAM,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACjD,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,CACnB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,EACpB,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,EACpB,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,CAC9B,CAAC;QACN,CAAC;IACL,CAAC;IAED,OAAO,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACzD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"terminal.d.ts","sourceRoot":"","sources":["../../../lib/discord/functions/terminal.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAY9C,wBAAsB,YAAY,CAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAiF9E"}
|