apexify.js 2.4.3 → 2.4.4-beta.1
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/lib/ai/apexAI.js +1 -1
- package/lib/ai/functions/draw.js +45 -58
- package/lib/ai/functions/generateVoiceResponse.js +1 -1
- package/lib/canvas/ApexPainter.js +2 -1
- package/lib/canvas/themes/levels-card.js +1 -1
- package/lib/database/utils.js +6 -2
- package/lib/discord/discord-build/levelingSystem/cLevel.js +10 -0
- package/lib/discord/events/eventer.js +83 -38
- package/lib/discord/events/prefixRegister.js +27 -15
- package/lib/discord/events/slashRegister.js +15 -31
- package/package.json +2 -1
package/lib/ai/apexAI.js
CHANGED
|
@@ -160,7 +160,7 @@ function apexAI(message, options) {
|
|
|
160
160
|
drawValid = draw && (0, utils_1.shouldDrawImage)(finalText, drawTrigger);
|
|
161
161
|
if (!drawValid) return [3 /*break*/, 23];
|
|
162
162
|
textToDraw = textEnhancer || finalText;
|
|
163
|
-
return [4 /*yield*/, (0, utils_1.drawImage)(message, numOfImages, textToDraw, hercai,
|
|
163
|
+
return [4 /*yield*/, (0, utils_1.drawImage)(message, numOfImages, textToDraw, hercai, imageModel, nsfw)];
|
|
164
164
|
case 22: return [2 /*return*/, _y.sent()];
|
|
165
165
|
case 23:
|
|
166
166
|
if (!(voice === true)) return [3 /*break*/, 25];
|
package/lib/ai/functions/draw.js
CHANGED
|
@@ -35,21 +35,12 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
35
35
|
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
36
|
}
|
|
37
37
|
};
|
|
38
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
39
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
40
|
-
if (ar || !(i in from)) {
|
|
41
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
42
|
-
ar[i] = from[i];
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
46
|
-
};
|
|
47
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
39
|
exports.drawImage = void 0;
|
|
49
|
-
var
|
|
40
|
+
var translate = require("@iamtraction/google-translate");
|
|
50
41
|
var sharp = require("sharp");
|
|
51
42
|
var discord_js_1 = require("discord.js");
|
|
52
|
-
var
|
|
43
|
+
var axios = require("axios");
|
|
53
44
|
var api = require("api");
|
|
54
45
|
var sdk = api("@prodia/v1.3.0#be019b2kls0gqss3");
|
|
55
46
|
sdk.auth("43435e1c-cab1-493f-a224-f51e4b97ce8d");
|
|
@@ -124,7 +115,7 @@ var validProdiaModals = [
|
|
|
124
115
|
"timeless-1.0.ckpt [7c4971d4]",
|
|
125
116
|
"toonyou_beta6.safetensors [980f6b15]",
|
|
126
117
|
];
|
|
127
|
-
function drawImage(
|
|
118
|
+
function drawImage(message, numOfImages, textToDraw, hercai, imageModel, nsfw) {
|
|
128
119
|
return __awaiter(this, void 0, void 0, function () {
|
|
129
120
|
function retry(fn, retriesLeft) {
|
|
130
121
|
if (retriesLeft === void 0) { retriesLeft = maxRetryAttempts; }
|
|
@@ -151,13 +142,13 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
151
142
|
});
|
|
152
143
|
});
|
|
153
144
|
}
|
|
154
|
-
var maxRetryAttempts, retryInterval, translatedText_1,
|
|
145
|
+
var maxRetryAttempts, retryInterval, response, translatedText_1, attachData, buttonsRow1, imageUrls, _loop_1, _0x4d7fb6, state_1, selectMenu_1, options, row1, row2, e_1;
|
|
155
146
|
var _a;
|
|
156
147
|
return __generator(this, function (_b) {
|
|
157
148
|
switch (_b.label) {
|
|
158
149
|
case 0:
|
|
159
150
|
maxRetryAttempts = 3;
|
|
160
|
-
retryInterval =
|
|
151
|
+
retryInterval = 10000;
|
|
161
152
|
_b.label = 1;
|
|
162
153
|
case 1:
|
|
163
154
|
_b.trys.push([1, 8, , 9]);
|
|
@@ -165,36 +156,36 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
165
156
|
throw new Error("Number of images can't be greater than 4 or smaller than 0.");
|
|
166
157
|
}
|
|
167
158
|
return [4 /*yield*/, retry(function () {
|
|
168
|
-
return (0,
|
|
159
|
+
return (0, translate)(textToDraw, {
|
|
169
160
|
from: "auto",
|
|
170
161
|
to: "en",
|
|
171
162
|
});
|
|
172
163
|
})];
|
|
173
164
|
case 2:
|
|
174
165
|
translatedText_1 = _b.sent();
|
|
175
|
-
|
|
166
|
+
attachData = [];
|
|
176
167
|
buttonsRow1 = [];
|
|
177
168
|
imageUrls = [];
|
|
178
169
|
_loop_1 = function (_0x4d7fb6) {
|
|
179
|
-
var generateResponse, generatedJobId, error_2,
|
|
170
|
+
var generateResponse, generatedJobId, error_2, buffferedImage, res, resizedImage, attachment, urlButton, imageUrl, textToCheck_1, nsfwWords, attach, urlButton;
|
|
180
171
|
return __generator(this, function (_c) {
|
|
181
172
|
switch (_c.label) {
|
|
182
173
|
case 0:
|
|
183
174
|
_c.trys.push([0, 7, , 12]);
|
|
184
|
-
if (!validHercaiModals.includes(
|
|
175
|
+
if (!validHercaiModals.includes(imageModel)) return [3 /*break*/, 2];
|
|
185
176
|
return [4 /*yield*/, retry(function () {
|
|
186
|
-
return
|
|
187
|
-
model:
|
|
177
|
+
return hercai.drawImage({
|
|
178
|
+
model: imageModel,
|
|
188
179
|
prompt: translatedText_1.text,
|
|
189
180
|
});
|
|
190
181
|
})];
|
|
191
182
|
case 1:
|
|
192
|
-
|
|
183
|
+
response = _c.sent();
|
|
193
184
|
return [3 /*break*/, 6];
|
|
194
185
|
case 2:
|
|
195
|
-
if (!validProdiaModals.includes(
|
|
186
|
+
if (!validProdiaModals.includes(imageModel)) return [3 /*break*/, 5];
|
|
196
187
|
return [4 /*yield*/, sdk.generate({
|
|
197
|
-
model:
|
|
188
|
+
model: imageModel,
|
|
198
189
|
prompt: translatedText_1.text,
|
|
199
190
|
})];
|
|
200
191
|
case 3:
|
|
@@ -202,7 +193,7 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
202
193
|
generatedJobId = generateResponse.data.job;
|
|
203
194
|
return [4 /*yield*/, checkJobStatus(generatedJobId)];
|
|
204
195
|
case 4:
|
|
205
|
-
|
|
196
|
+
response = _c.sent();
|
|
206
197
|
return [3 /*break*/, 6];
|
|
207
198
|
case 5: throw new Error("Invalid modal name.");
|
|
208
199
|
case 6: return [3 /*break*/, 12];
|
|
@@ -210,48 +201,48 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
210
201
|
error_2 = _c.sent();
|
|
211
202
|
if (!(error_2.response && error_2.response.status === 429)) return [3 /*break*/, 8];
|
|
212
203
|
console.error("Too many requests. Please try again later.");
|
|
213
|
-
return [2 /*return*/, { value:
|
|
204
|
+
return [2 /*return*/, { value: message.reply("Please wait i am in a cool down for a minute") }];
|
|
214
205
|
case 8:
|
|
215
206
|
if (!(error_2.response && error_2.response.status === 500)) return [3 /*break*/, 9];
|
|
216
207
|
console.error("Internal server error. Please try again later.");
|
|
217
|
-
return [2 /*return*/, { value:
|
|
218
|
-
case 9: return [4 /*yield*/,
|
|
208
|
+
return [2 /*return*/, { value: message.reply("Please wait i am in a cool down for a minute") }];
|
|
209
|
+
case 9: return [4 /*yield*/, message.reply("Please wait i am in a cool down for a minute")];
|
|
219
210
|
case 10:
|
|
220
211
|
_c.sent();
|
|
221
212
|
throw new Error("Error processing message in file");
|
|
222
213
|
case 11: return [3 /*break*/, 12];
|
|
223
214
|
case 12:
|
|
224
|
-
|
|
225
|
-
if (!(
|
|
215
|
+
buffferedImage = void 0;
|
|
216
|
+
if (!(imageModel === "v3")) return [3 /*break*/, 15];
|
|
226
217
|
return [4 /*yield*/, retry(function () {
|
|
227
|
-
return
|
|
218
|
+
return axios.get(response.url, {
|
|
228
219
|
responseType: "arraybuffer",
|
|
229
220
|
});
|
|
230
221
|
})];
|
|
231
222
|
case 13:
|
|
232
|
-
|
|
233
|
-
|
|
234
|
-
return [4 /*yield*/, sharp(
|
|
223
|
+
res = _c.sent();
|
|
224
|
+
buffferedImage = Buffer.from(res.data, "binary");
|
|
225
|
+
return [4 /*yield*/, sharp(buffferedImage)
|
|
235
226
|
.resize({
|
|
236
227
|
width: 0x320,
|
|
237
228
|
})
|
|
238
229
|
.toBuffer()];
|
|
239
230
|
case 14:
|
|
240
|
-
|
|
231
|
+
resizedImage = _c.sent();
|
|
241
232
|
attachment = {
|
|
242
|
-
file:
|
|
233
|
+
file: resizedImage,
|
|
243
234
|
name: "image_".concat(_0x4d7fb6 + 1, ".png"),
|
|
244
235
|
};
|
|
245
|
-
|
|
236
|
+
attachData.push(attachment);
|
|
246
237
|
urlButton = new discord_js_1.ButtonBuilder()
|
|
247
238
|
.setStyle(discord_js_1.ButtonStyle.Link)
|
|
248
239
|
.setLabel("Image ".concat(_0x4d7fb6 + 1))
|
|
249
|
-
.setURL(
|
|
240
|
+
.setURL(response.url);
|
|
250
241
|
buttonsRow1.push(urlButton);
|
|
251
|
-
imageUrls.push(
|
|
242
|
+
imageUrls.push(response.url);
|
|
252
243
|
return [3 /*break*/, 18];
|
|
253
244
|
case 15:
|
|
254
|
-
imageUrl =
|
|
245
|
+
imageUrl = response.url || response;
|
|
255
246
|
if (!nsfw) return [3 /*break*/, 17];
|
|
256
247
|
return [4 /*yield*/, attemptImageCaptioning(imageUrl)];
|
|
257
248
|
case 16:
|
|
@@ -337,13 +328,13 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
337
328
|
"femboy",
|
|
338
329
|
"ass",
|
|
339
330
|
];
|
|
340
|
-
if (nsfwWords.some(function (word) { return textToCheck_1.includes(word); })) {
|
|
341
|
-
|
|
331
|
+
if (textToCheck_1 && nsfwWords.some(function (word) { return textToCheck_1 === null || textToCheck_1 === void 0 ? void 0 : textToCheck_1.includes(word); })) {
|
|
332
|
+
message.reply("Warning ⚠️. The generated image contatining nsfw content. Turn off nsfw to sedn nsfw images.");
|
|
342
333
|
}
|
|
343
334
|
_c.label = 17;
|
|
344
335
|
case 17:
|
|
345
|
-
|
|
346
|
-
|
|
336
|
+
attach = new discord_js_1.AttachmentBuilder(imageUrl, { name: "image_".concat(_0x4d7fb6 + 1, ".png") });
|
|
337
|
+
attachData.push(attach);
|
|
347
338
|
urlButton = new discord_js_1.ButtonBuilder()
|
|
348
339
|
.setStyle(discord_js_1.ButtonStyle.Link)
|
|
349
340
|
.setLabel("Image ".concat(_0x4d7fb6 + 1))
|
|
@@ -351,7 +342,7 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
351
342
|
buttonsRow1.push(urlButton);
|
|
352
343
|
imageUrls.push(imageUrl);
|
|
353
344
|
_c.label = 18;
|
|
354
|
-
case 18: return [4 /*yield*/, new Promise(function (
|
|
345
|
+
case 18: return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, 0x7d0); })];
|
|
355
346
|
case 19:
|
|
356
347
|
_c.sent();
|
|
357
348
|
return [2 /*return*/];
|
|
@@ -394,14 +385,10 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
394
385
|
.setValue("process_".concat(index + 1));
|
|
395
386
|
selectMenu_1.addOptions(selectOption);
|
|
396
387
|
});
|
|
397
|
-
|
|
398
|
-
.setStyle(discord_js_1.ButtonStyle.Primary)
|
|
399
|
-
.setLabel("Redraw")
|
|
400
|
-
.setCustomId("redraw_button");
|
|
401
|
-
row1 = (_a = new discord_js_1.ActionRowBuilder()).addComponents.apply(_a, __spreadArray(__spreadArray([], buttonsRow1, false)));
|
|
388
|
+
row1 = (_a = new discord_js_1.ActionRowBuilder()).addComponents.apply(_a, buttonsRow1);
|
|
402
389
|
row2 = new discord_js_1.ActionRowBuilder().addComponents(selectMenu_1);
|
|
403
|
-
return [4 /*yield*/,
|
|
404
|
-
files:
|
|
390
|
+
return [4 /*yield*/, message.reply({
|
|
391
|
+
files: attachData,
|
|
405
392
|
components: [row1, row2],
|
|
406
393
|
allowedMentions: { repliedUser: false },
|
|
407
394
|
})];
|
|
@@ -409,13 +396,13 @@ function drawImage(_0x2f79ae, numOfImages, _0x28baff, _0x5cea2c, _0x59b128, _0x1
|
|
|
409
396
|
_b.sent();
|
|
410
397
|
return [2 /*return*/, imageUrls];
|
|
411
398
|
case 8:
|
|
412
|
-
|
|
413
|
-
console.error("Error in drawImage:",
|
|
414
|
-
if (
|
|
415
|
-
console.error("Status code:",
|
|
416
|
-
console.error("Response data:",
|
|
399
|
+
e_1 = _b.sent();
|
|
400
|
+
console.error("Error in drawImage:", e_1.message);
|
|
401
|
+
if (e_1.response) {
|
|
402
|
+
console.error("Status code:", e_1.response.status);
|
|
403
|
+
console.error("Response data:", e_1.response.data);
|
|
417
404
|
}
|
|
418
|
-
|
|
405
|
+
message.reply({
|
|
419
406
|
content: "An error occurred while processing the images.",
|
|
420
407
|
allowedMentions: { repliedUser: false },
|
|
421
408
|
});
|
|
@@ -477,7 +464,7 @@ function attemptImageCaptioning(imageUrl) {
|
|
|
477
464
|
switch (_a.label) {
|
|
478
465
|
case 0:
|
|
479
466
|
_a.trys.push([0, 2, , 3]);
|
|
480
|
-
return [4 /*yield*/,
|
|
467
|
+
return [4 /*yield*/, axios.post("https://api-inference.huggingface.co/models/Salesforce/blip-image-captioning-base", { image: imageUrl }, {
|
|
481
468
|
headers: {
|
|
482
469
|
"Content-Type": "application/json",
|
|
483
470
|
Authorization: "Bearer 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",
|
|
@@ -62,7 +62,7 @@ function generateVoiceResponse(message, numOfImages, finalText, hercai, response
|
|
|
62
62
|
_a.trys.push([1, 23, 24, 25]);
|
|
63
63
|
msg = message.content;
|
|
64
64
|
if (!drawValid) return [3 /*break*/, 3];
|
|
65
|
-
return [4 /*yield*/, (0, draw_1.drawImage)(message, numOfImages, finalText, hercai,
|
|
65
|
+
return [4 /*yield*/, (0, draw_1.drawImage)(message, numOfImages, finalText, hercai, imageModel, nsfw)];
|
|
66
66
|
case 2: return [2 /*return*/, _a.sent()];
|
|
67
67
|
case 3:
|
|
68
68
|
if (!(message.attachments.size > 0)) return [3 /*break*/, 7];
|
|
@@ -392,8 +392,9 @@ ctx.drawImage(customBgImage, 0, 0);
|
|
|
392
392
|
}
|
|
393
393
|
|
|
394
394
|
isShapeName(source) {
|
|
395
|
+
|
|
395
396
|
const validShapes = ["square", "circle", "triangle", "rectangle"];
|
|
396
|
-
return validShapes.includes(source
|
|
397
|
+
return validShapes.includes(source?.toLowerCase() || 'square');
|
|
397
398
|
}
|
|
398
399
|
|
|
399
400
|
drawShape(ctx, shapeOptions, canvasBackgroundColor) {
|
|
@@ -65,7 +65,7 @@ function levelCard(message, userRecord) {
|
|
|
65
65
|
};
|
|
66
66
|
images = [
|
|
67
67
|
{
|
|
68
|
-
source: member
|
|
68
|
+
source: member?.user?.displayAvatarURL || 'https://styles.redditmedia.com/t5_388p4/styles/communityIcon_1xjv62tivxy61.png',
|
|
69
69
|
borderRadius: 'circular',
|
|
70
70
|
x: 97,
|
|
71
71
|
y: 44,
|
package/lib/database/utils.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
///////NanoDB
|
|
4
|
-
exports.matchesFilterQuery = exports.updateOption = exports.removeFields = exports.fetchData = exports.saveData = exports.updateAllExcept = exports.updateAll = exports.updateData = exports.migrateAndPrune = exports.migrateData = exports.textSearch = exports.searchMany = exports.removeSpecific = exports.removeManyExcept = exports.removeMany = exports.remove = exports.listCollections = exports.listIndexes = exports.geoNear = exports.find = exports.drop = exports.distinct = exports.dataSize = exports.countDocs = exports.createTable = exports.aggregate = exports.save = void 0;
|
|
4
|
+
exports.mongoConnect= exports.getDb = exports.initializeDb = exports.matchesFilterQuery = exports.updateOption = exports.removeFields = exports.fetchData = exports.saveData = exports.updateAllExcept = exports.updateAll = exports.updateData = exports.migrateAndPrune = exports.migrateData = exports.textSearch = exports.searchMany = exports.removeSpecific = exports.removeManyExcept = exports.removeMany = exports.remove = exports.listCollections = exports.listIndexes = exports.geoNear = exports.find = exports.drop = exports.distinct = exports.dataSize = exports.countDocs = exports.createTable = exports.aggregate = exports.save = void 0;
|
|
5
5
|
const saveData_1 = require("./nanoDb/saveData");
|
|
6
6
|
Object.defineProperty(exports, "saveData", { enumerable: true, get: function () { return saveData_1.saveData; } });
|
|
7
7
|
const fetchData_1 = require("./nanoDb/fetchData");
|
|
@@ -55,4 +55,8 @@ Object.defineProperty(exports, "updateData", { enumerable: true, get: function (
|
|
|
55
55
|
const updateAll_1 = require("./mongoDb/updateAll");
|
|
56
56
|
Object.defineProperty(exports, "updateAll", { enumerable: true, get: function () { return updateAll_1.updateAll; } });
|
|
57
57
|
const updateAllExcept_1 = require("./mongoDb/updateAllExcept");
|
|
58
|
-
Object.defineProperty(exports, "updateAllExcept", { enumerable: true, get: function () { return updateAllExcept_1.updateAllExcept; } });
|
|
58
|
+
Object.defineProperty(exports, "updateAllExcept", { enumerable: true, get: function () { return updateAllExcept_1.updateAllExcept; } });
|
|
59
|
+
const MongoDb = require("./MongoDB");
|
|
60
|
+
Object.defineProperty(exports, "mongoConnect", { enumerable: true, get: function () { return MongoDb.mongoConnect; } });
|
|
61
|
+
Object.defineProperty(exports, "initializeDb", { enumerable: true, get: function () { return MongoDb.initializeDb; } });
|
|
62
|
+
Object.defineProperty(exports, "getDb", { enumerable: true, get: function () { return MongoDb.getDb; } });
|
|
@@ -234,6 +234,8 @@ var LevelingSystem = /** @class */ (function (_super) {
|
|
|
234
234
|
return __generator(this, function (_a) {
|
|
235
235
|
switch (_a.label) {
|
|
236
236
|
case 0:
|
|
237
|
+
console.log(3)
|
|
238
|
+
|
|
237
239
|
_a.trys.push([0, 10, , 11]);
|
|
238
240
|
if (!guildId) {
|
|
239
241
|
throw new Error('Error: GuildId parameter is required. Usage: addXp(userId, guildId).');
|
|
@@ -261,6 +263,8 @@ var LevelingSystem = /** @class */ (function (_super) {
|
|
|
261
263
|
},
|
|
262
264
|
})];
|
|
263
265
|
case 3:
|
|
266
|
+
console.log(2)
|
|
267
|
+
|
|
264
268
|
updatedUserRecord = _a.sent();
|
|
265
269
|
return [3 /*break*/, 9];
|
|
266
270
|
case 4: return [4 /*yield*/, (0, utils_1.updateData)(this.levelsCollection, { userId: userId, guildId: guildId }, {
|
|
@@ -286,6 +290,7 @@ var LevelingSystem = /** @class */ (function (_super) {
|
|
|
286
290
|
$set: { level: updatedUserRecord.data.level },
|
|
287
291
|
})];
|
|
288
292
|
case 8:
|
|
293
|
+
console.log(1)
|
|
289
294
|
results = _a.sent();
|
|
290
295
|
levelUpMessage = fetchServer.levelUpMessage;
|
|
291
296
|
editedMessage = levelUpMessage;
|
|
@@ -384,6 +389,8 @@ var LevelingSystem = /** @class */ (function (_super) {
|
|
|
384
389
|
});
|
|
385
390
|
};
|
|
386
391
|
LevelingSystem.prototype.checkLevelUp = function (userRecord, fetchServer) {
|
|
392
|
+
console.log(5)
|
|
393
|
+
|
|
387
394
|
var level = fetchServer.levelsArray.length - 1;
|
|
388
395
|
while (level >= 0 && userRecord.xpCount <= fetchServer.levelsArray[level].xpCount) {
|
|
389
396
|
level--;
|
|
@@ -393,6 +400,8 @@ var LevelingSystem = /** @class */ (function (_super) {
|
|
|
393
400
|
this.emit('error', "Invalid level data for user with xpCount: ".concat(userRecord.xpCount));
|
|
394
401
|
return false;
|
|
395
402
|
}
|
|
403
|
+
console.log(6)
|
|
404
|
+
|
|
396
405
|
var nextLevelData = fetchServer.levelsArray[level];
|
|
397
406
|
if (userRecord.level < nextLevelData.level) {
|
|
398
407
|
userRecord.level = nextLevelData.level;
|
|
@@ -400,6 +409,7 @@ var LevelingSystem = /** @class */ (function (_super) {
|
|
|
400
409
|
}
|
|
401
410
|
return false;
|
|
402
411
|
};
|
|
412
|
+
|
|
403
413
|
LevelingSystem.prototype.userInfo = function (userId, guildId) {
|
|
404
414
|
return __awaiter(this, void 0, void 0, function () {
|
|
405
415
|
var userRecord, error_7;
|
|
@@ -48,53 +48,98 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
48
48
|
exports.registerEvents = void 0;
|
|
49
49
|
var fs_1 = require("fs");
|
|
50
50
|
var path_1 = require("path");
|
|
51
|
+
var AsciiTable = require('ascii-table');
|
|
51
52
|
function registerEvents(client, eventsFolderPath) {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
53
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
54
|
+
function processEventFile(filePath) {
|
|
55
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
56
|
+
var stats, filesInDirectory, _i, filesInDirectory_1, item, itemPath, event_1, error_2;
|
|
57
|
+
return __generator(this, function (_a) {
|
|
58
|
+
switch (_a.label) {
|
|
59
|
+
case 0:
|
|
60
|
+
_a.trys.push([0, 8, , 9]);
|
|
61
|
+
stats = (0, fs_1.statSync)(filePath);
|
|
62
|
+
if (!stats.isDirectory()) return [3 /*break*/, 5];
|
|
63
|
+
filesInDirectory = (0, fs_1.readdirSync)(filePath);
|
|
64
|
+
if (filesInDirectory.length === 0) {
|
|
65
|
+
return [2 /*return*/];
|
|
66
|
+
}
|
|
67
|
+
_i = 0, filesInDirectory_1 = filesInDirectory;
|
|
68
|
+
_a.label = 1;
|
|
69
|
+
case 1:
|
|
70
|
+
if (!(_i < filesInDirectory_1.length)) return [3 /*break*/, 4];
|
|
71
|
+
item = filesInDirectory_1[_i];
|
|
72
|
+
itemPath = path_1.join(filePath, item);
|
|
73
|
+
return [4 /*yield*/, processEventFile(itemPath)];
|
|
74
|
+
case 2:
|
|
75
|
+
_a.sent();
|
|
76
|
+
_a.label = 3;
|
|
77
|
+
case 3:
|
|
78
|
+
_i++;
|
|
79
|
+
return [3 /*break*/, 1];
|
|
80
|
+
case 4: return [3 /*break*/, 7];
|
|
81
|
+
case 5:
|
|
82
|
+
if (!(stats.isFile() && filePath.endsWith('.js'))) return [3 /*break*/, 7];
|
|
83
|
+
return [4 /*yield*/, Promise.resolve("".concat(filePath)).then(function (s) { return require(s); })];
|
|
84
|
+
case 6:
|
|
85
|
+
event_1 = _a.sent();
|
|
86
|
+
if (event_1.once) {
|
|
87
|
+
client.once(event_1.name, function () {
|
|
88
|
+
var args = [];
|
|
89
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
90
|
+
args[_i] = arguments[_i];
|
|
91
|
+
}
|
|
92
|
+
return event_1.execute.apply(event_1, __spreadArray(__spreadArray([], args, false), [client], false));
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
else {
|
|
96
|
+
client.on(event_1.name, function () {
|
|
97
|
+
var args = [];
|
|
98
|
+
for (var _i = 0; _i < arguments.length; _i++) {
|
|
99
|
+
args[_i] = arguments[_i];
|
|
100
|
+
}
|
|
101
|
+
return event_1.execute.apply(event_1, __spreadArray(__spreadArray([], args, false), [client], false));
|
|
102
|
+
});
|
|
103
|
+
}
|
|
104
|
+
table.addRow(path_1.relative(eventsFolderPath, filePath), '🟢 Working');
|
|
105
|
+
return [3 /*break*/, 7];
|
|
106
|
+
case 7: return [3 /*break*/, 9];
|
|
107
|
+
case 8:
|
|
108
|
+
error_2 = _a.sent();
|
|
109
|
+
console.error('\x1b[31m%s\x1b[0m', "Error in event file: ".concat(filePath));
|
|
110
|
+
console.error('\x1b[31m%s\x1b[0m', error_2);
|
|
111
|
+
table.addRow(path_1.relative(eventsFolderPath, filePath), '🔴 Broke');
|
|
112
|
+
return [3 /*break*/, 9];
|
|
113
|
+
case 9: return [2 /*return*/];
|
|
114
|
+
}
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
var table, error_1, tableString;
|
|
56
119
|
return __generator(this, function (_a) {
|
|
57
120
|
switch (_a.label) {
|
|
58
121
|
case 0:
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
return [
|
|
65
|
-
case 1: return [4 /*yield*/, Promise.resolve("".concat(filePath)).then(function (s) { return require(s); })];
|
|
122
|
+
table = new AsciiTable('\x1b[33m Event Folders \x1b[0m');
|
|
123
|
+
table.setHeading('Files', 'Status');
|
|
124
|
+
_a.label = 1;
|
|
125
|
+
case 1:
|
|
126
|
+
_a.trys.push([1, 3, , 4]);
|
|
127
|
+
return [4 /*yield*/, processEventFile(eventsFolderPath)];
|
|
66
128
|
case 2:
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
var args = [];
|
|
71
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
72
|
-
args[_i] = arguments[_i];
|
|
73
|
-
}
|
|
74
|
-
return event_1.execute.apply(event_1, __spreadArray(__spreadArray([], args, false), [client], false));
|
|
75
|
-
});
|
|
76
|
-
}
|
|
77
|
-
else {
|
|
78
|
-
client.on(event_1.name, function () {
|
|
79
|
-
var args = [];
|
|
80
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
81
|
-
args[_i] = arguments[_i];
|
|
82
|
-
}
|
|
83
|
-
return event_1.execute.apply(event_1, __spreadArray(__spreadArray([], args, false), [client], false));
|
|
84
|
-
});
|
|
85
|
-
}
|
|
86
|
-
eventsCount++;
|
|
87
|
-
_a.label = 3;
|
|
88
|
-
case 3: return [3 /*break*/, 5];
|
|
89
|
-
case 4:
|
|
129
|
+
_a.sent();
|
|
130
|
+
return [3 /*break*/, 4];
|
|
131
|
+
case 3:
|
|
90
132
|
error_1 = _a.sent();
|
|
91
|
-
console.error('\x1b[31m%s\x1b[0m', "Error
|
|
133
|
+
console.error('\x1b[31m%s\x1b[0m', "Error while processing events folder: ".concat(eventsFolderPath));
|
|
92
134
|
console.error('\x1b[31m%s\x1b[0m', error_1);
|
|
93
|
-
return [3 /*break*/,
|
|
94
|
-
case
|
|
135
|
+
return [3 /*break*/, 4];
|
|
136
|
+
case 4:
|
|
137
|
+
tableString = table.toString();
|
|
138
|
+
console.log(tableString.trim());
|
|
139
|
+
return [2 /*return*/];
|
|
95
140
|
}
|
|
96
141
|
});
|
|
97
|
-
});
|
|
142
|
+
});
|
|
98
143
|
}
|
|
99
144
|
|
|
100
145
|
exports.registerEvents = registerEvents;
|
|
@@ -37,9 +37,10 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
|
37
37
|
};
|
|
38
38
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
39
|
exports.commandNames = exports.aliases = exports.commands = exports.readCommands = void 0;
|
|
40
|
-
var fs_1 = require("fs");
|
|
41
40
|
var discord_js_1 = require("discord.js");
|
|
42
41
|
var path_1 = require("path");
|
|
42
|
+
var fs_1 = require("fs");
|
|
43
|
+
var AsciiTable = require("ascii-table");
|
|
43
44
|
var commands = new discord_js_1.Collection();
|
|
44
45
|
exports.commands = commands;
|
|
45
46
|
var aliases = new discord_js_1.Collection();
|
|
@@ -47,16 +48,20 @@ exports.aliases = aliases;
|
|
|
47
48
|
var commandNames = new Set();
|
|
48
49
|
exports.commandNames = commandNames;
|
|
49
50
|
var readCommands = function (client, folderPath) { return __awaiter(void 0, void 0, void 0, function () {
|
|
50
|
-
var files, prefixCommandCount, _loop_1, _i, files_1, file, error_1;
|
|
51
|
+
var table, files, prefixCommandCount, _loop_1, _i, files_1, file, tableString, error_1;
|
|
51
52
|
return __generator(this, function (_a) {
|
|
52
53
|
switch (_a.label) {
|
|
53
54
|
case 0:
|
|
54
|
-
|
|
55
|
-
|
|
55
|
+
table = new AsciiTable('\x1b[33m Prefix Commands \x1b[0m');
|
|
56
|
+
table.setHeading('Commands', 'Status');
|
|
57
|
+
_a.label = 1;
|
|
56
58
|
case 1:
|
|
59
|
+
_a.trys.push([1, 8, , 9]);
|
|
60
|
+
return [4 /*yield*/, fs_1.promises.access(folderPath)];
|
|
61
|
+
case 2:
|
|
57
62
|
_a.sent();
|
|
58
63
|
return [4 /*yield*/, fs_1.promises.readdir(folderPath, { withFileTypes: true })];
|
|
59
|
-
case
|
|
64
|
+
case 3:
|
|
60
65
|
files = _a.sent();
|
|
61
66
|
prefixCommandCount = 0;
|
|
62
67
|
_loop_1 = function (file) {
|
|
@@ -89,45 +94,52 @@ var readCommands = function (client, folderPath) { return __awaiter(void 0, void
|
|
|
89
94
|
});
|
|
90
95
|
}
|
|
91
96
|
command_1.description =
|
|
92
|
-
|
|
97
|
+
command_1.description || "No description provided.";
|
|
93
98
|
command_1.cooldown = command_1.cooldown || 1;
|
|
94
99
|
command_1.usage = command_1.usage || "No usage information provided.";
|
|
95
100
|
if (command_1.prefix) {
|
|
96
101
|
prefixCommandCount++;
|
|
97
102
|
}
|
|
103
|
+
table.addRow(command_1.name, '🟢 Registered');
|
|
98
104
|
}
|
|
99
105
|
else {
|
|
100
106
|
console.warn("\x1b[31m%s\x1b[0m", "Ignoring invalid command file: ".concat(filePath));
|
|
107
|
+
table.addRow(filePath, '🔴 Invalid');
|
|
101
108
|
}
|
|
102
109
|
return [3 /*break*/, 6];
|
|
103
110
|
case 5:
|
|
104
111
|
error_2 = _c.sent();
|
|
105
112
|
console.error("\x1b[31m%s\x1b[0m", "Error in file: ".concat(filePath));
|
|
106
113
|
console.error("\x1b[31m%s\x1b[0m", error_2);
|
|
114
|
+
table.addRow(filePath, '🔴 Error');
|
|
107
115
|
return [3 /*break*/, 6];
|
|
108
116
|
case 6: return [2 /*return*/];
|
|
109
117
|
}
|
|
110
118
|
});
|
|
111
119
|
};
|
|
112
120
|
_i = 0, files_1 = files;
|
|
113
|
-
_a.label =
|
|
114
|
-
case
|
|
115
|
-
if (!(_i < files_1.length)) return [3 /*break*/,
|
|
121
|
+
_a.label = 4;
|
|
122
|
+
case 4:
|
|
123
|
+
if (!(_i < files_1.length)) return [3 /*break*/, 7];
|
|
116
124
|
file = files_1[_i];
|
|
117
125
|
return [5 /*yield**/, _loop_1(file)];
|
|
118
|
-
case 4:
|
|
119
|
-
_a.sent();
|
|
120
|
-
_a.label = 5;
|
|
121
126
|
case 5:
|
|
127
|
+
_a.sent();
|
|
128
|
+
_a.label = 6;
|
|
129
|
+
case 6:
|
|
122
130
|
_i++;
|
|
123
|
-
return [3 /*break*/,
|
|
124
|
-
case 6: return [2 /*return*/, prefixCommandCount];
|
|
131
|
+
return [3 /*break*/, 4];
|
|
125
132
|
case 7:
|
|
133
|
+
tableString = table.toString();
|
|
134
|
+
console.log(tableString.trim());
|
|
135
|
+
|
|
136
|
+
return [2 /*return*/, prefixCommandCount];
|
|
137
|
+
case 8:
|
|
126
138
|
error_1 = _a.sent();
|
|
127
139
|
console.error("\x1b[31m%s\x1b[0m", "Error reading directory: ".concat(folderPath));
|
|
128
140
|
console.error("\x1b[31m%s\x1b[0m", error_1);
|
|
129
141
|
return [2 /*return*/, 0];
|
|
130
|
-
case
|
|
142
|
+
case 9: return [2 /*return*/];
|
|
131
143
|
}
|
|
132
144
|
});
|
|
133
145
|
});
|
|
@@ -8,32 +8,6 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
9
|
});
|
|
10
10
|
};
|
|
11
|
-
function typeSentence(sentence, speed) {
|
|
12
|
-
return __awaiter(this, void 0, void 0, function () {
|
|
13
|
-
var _i, sentence_1, char;
|
|
14
|
-
return __generator(this, function (_a) {
|
|
15
|
-
switch (_a.label) {
|
|
16
|
-
case 0:
|
|
17
|
-
_i = 0, sentence_1 = sentence;
|
|
18
|
-
_a.label = 1;
|
|
19
|
-
case 1:
|
|
20
|
-
if (!(_i < sentence_1.length)) return [3 /*break*/, 4];
|
|
21
|
-
char = sentence_1[_i];
|
|
22
|
-
return [4 /*yield*/, new Promise(function (resolve) { return setTimeout(resolve, speed); })];
|
|
23
|
-
case 2:
|
|
24
|
-
_a.sent();
|
|
25
|
-
process.stdout.write(char);
|
|
26
|
-
_a.label = 3;
|
|
27
|
-
case 3:
|
|
28
|
-
_i++;
|
|
29
|
-
return [3 /*break*/, 1];
|
|
30
|
-
case 4:
|
|
31
|
-
console.log();
|
|
32
|
-
return [2 /*return*/];
|
|
33
|
-
}
|
|
34
|
-
});
|
|
35
|
-
});
|
|
36
|
-
}
|
|
37
11
|
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
38
12
|
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
39
13
|
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
@@ -68,6 +42,7 @@ var v10_1 = require("discord-api-types/v10");
|
|
|
68
42
|
var fs = require("fs/promises");
|
|
69
43
|
var discord_js_1 = require("discord.js");
|
|
70
44
|
var path_1 = require("path");
|
|
45
|
+
var AsciiTable = require("ascii-table");
|
|
71
46
|
/**
|
|
72
47
|
* Register slash commands for the bot
|
|
73
48
|
* @param {Client} client - The Discord client
|
|
@@ -78,11 +53,13 @@ var path_1 = require("path");
|
|
|
78
53
|
function registerSlashCommands(client, token, baseDirectory, baseDir, gId, gl) {
|
|
79
54
|
var _a, _b;
|
|
80
55
|
return __awaiter(this, void 0, void 0, function () {
|
|
81
|
-
var slashCommands, rest, resolvedPath_1, dirents, slashCommandArray, error_1, guild, slashCommandArray, error_2, error_3;
|
|
56
|
+
var table, slashCommands, rest, resolvedPath_1, dirents, slashCommandArray, error_1, guild, slashCommandArray, error_2, error_3, tableString;
|
|
82
57
|
var _this = this;
|
|
83
58
|
return __generator(this, function (_c) {
|
|
84
59
|
switch (_c.label) {
|
|
85
60
|
case 0:
|
|
61
|
+
table = new AsciiTable('\x1b[33m Slash Commands \x1b[0m');
|
|
62
|
+
table.setHeading('Commands', 'Status');
|
|
86
63
|
slashCommands = new discord_js_1.Collection();
|
|
87
64
|
client.slashCommands = new discord_js_1.Collection();
|
|
88
65
|
rest = new rest_1.REST({ version: '10' }).setToken(token);
|
|
@@ -115,11 +92,13 @@ function registerSlashCommands(client, token, baseDirectory, baseDir, gId, gl) {
|
|
|
115
92
|
}
|
|
116
93
|
slashCommands.set(command.data.name, command);
|
|
117
94
|
client.slashCommands.set(command.data.name, command);
|
|
95
|
+
table.addRow(command.data.name, '🟢 Registered\x1b');
|
|
118
96
|
}
|
|
119
97
|
}
|
|
120
98
|
catch (error) {
|
|
121
99
|
console.error('\x1b[31m%s\x1b[0m', "Error in file: ".concat(path_1.join(folderPath_1, file)));
|
|
122
100
|
console.error('\x1b[31m%s\x1b[0m', error);
|
|
101
|
+
table.addRow(path_1.join(folderPath_1, file), '🔴 Error');
|
|
123
102
|
}
|
|
124
103
|
return [2 /*return*/];
|
|
125
104
|
});
|
|
@@ -136,11 +115,13 @@ function registerSlashCommands(client, token, baseDirectory, baseDir, gId, gl) {
|
|
|
136
115
|
}
|
|
137
116
|
slashCommands.set(command.data.name, command);
|
|
138
117
|
client.slashCommands.set(command.data.name, command);
|
|
118
|
+
table.addRow(command.data.name, '🟢 Registered');
|
|
139
119
|
}
|
|
140
120
|
}
|
|
141
121
|
catch (error) {
|
|
142
122
|
console.error('\x1b[31m%s\x1b[0m', "Error in file: ".concat(path_1.join(resolvedPath_1, dirent.name)));
|
|
143
123
|
console.error('\x1b[31m%s\x1b[0m', error);
|
|
124
|
+
table.addRow(path_1.join(resolvedPath_1, dirent.name), '🔴 Error');
|
|
144
125
|
}
|
|
145
126
|
_a.label = 4;
|
|
146
127
|
case 4: return [2 /*return*/];
|
|
@@ -157,11 +138,11 @@ function registerSlashCommands(client, token, baseDirectory, baseDir, gId, gl) {
|
|
|
157
138
|
return [4 /*yield*/, rest.put(v10_1.Routes.applicationCommands(((_a = client.user) === null || _a === void 0 ? void 0 : _a.id) || ''), { body: slashCommandArray, headers: { Authorization: "Bot ".concat(token) } })];
|
|
158
139
|
case 5:
|
|
159
140
|
_c.sent();
|
|
160
|
-
|
|
141
|
+
console.log('\x1b[36m%s\x1b[0m', "Registered ".concat(slashCommandArray.length, " global slash commands."));
|
|
161
142
|
return [3 /*break*/, 7];
|
|
162
143
|
case 6:
|
|
163
144
|
error_1 = _c.sent();
|
|
164
|
-
|
|
145
|
+
console.error('\x1b[31m%s\x1b[0m', 'Error setting global slash commands:', error_1.message);
|
|
165
146
|
return [3 /*break*/, 7];
|
|
166
147
|
case 7: return [3 /*break*/, 14];
|
|
167
148
|
case 8:
|
|
@@ -175,7 +156,7 @@ function registerSlashCommands(client, token, baseDirectory, baseDir, gId, gl) {
|
|
|
175
156
|
return [4 /*yield*/, rest.put(v10_1.Routes.applicationGuildCommands(((_b = client.user) === null || _b === void 0 ? void 0 : _b.id) || '', guild.id), { body: slashCommandArray, headers: { Authorization: "Bot ".concat(token) } })];
|
|
176
157
|
case 10:
|
|
177
158
|
_c.sent();
|
|
178
|
-
|
|
159
|
+
console.log('\x1b[36m%s\x1b[0m', "Registered ".concat(slashCommandArray.length, " guild-specific slash commands for guild ").concat(guild.name, "."));
|
|
179
160
|
return [3 /*break*/, 12];
|
|
180
161
|
case 11:
|
|
181
162
|
error_2 = _c.sent();
|
|
@@ -190,7 +171,10 @@ function registerSlashCommands(client, token, baseDirectory, baseDir, gId, gl) {
|
|
|
190
171
|
error_3 = _c.sent();
|
|
191
172
|
console.error('\x1b[31m%s\x1b[0m', 'Error registering slash commands:', error_3.message);
|
|
192
173
|
return [3 /*break*/, 16];
|
|
193
|
-
case 16:
|
|
174
|
+
case 16:
|
|
175
|
+
tableString = table.toString();
|
|
176
|
+
console.log(tableString.trim());
|
|
177
|
+
return [2 /*return*/, slashCommands];
|
|
194
178
|
}
|
|
195
179
|
});
|
|
196
180
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "apexify.js",
|
|
3
|
-
"version": "2.4.
|
|
3
|
+
"version": "2.4.4-beta.1",
|
|
4
4
|
"description": "Ai with Canvas and Database library. Supports typescript and javascript",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -134,6 +134,7 @@
|
|
|
134
134
|
"@napi-rs/canvas": "^0.1.51",
|
|
135
135
|
"api": "^6.1.1",
|
|
136
136
|
"archiver": "^7.0.0",
|
|
137
|
+
"ascii-table": "^0.0.9",
|
|
137
138
|
"axios": "^1.6.7",
|
|
138
139
|
"crypto": "^1.0.1",
|
|
139
140
|
"express": "^4.18.3",
|