apexify.js 1.2.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/README.md +1117 -0
- package/index.js +111 -0
- package/lib/ai/apexAI.js +312 -0
- package/lib/ai/functions/chunkString.js +8 -0
- package/lib/ai/functions/draw.js +347 -0
- package/lib/ai/functions/generateVoiceResponse.js +239 -0
- package/lib/ai/functions/processImageAttachments.js +93 -0
- package/lib/ai/functions/processMessageContent.js +48 -0
- package/lib/ai/functions/readFiles.js +95 -0
- package/lib/ai/functions/shouldDrawImage.js +12 -0
- package/lib/ai/utils.js +18 -0
- package/lib/canvas/ApexPainter.js +1194 -0
- package/lib/canvas/themes/level ara.ttf +0 -0
- package/lib/canvas/themes/levelFont.ttf +0 -0
- package/lib/canvas/themes/levels-card.js +872 -0
- package/lib/canvas/themes/music-card.js +342 -0
- package/lib/canvas/themes/numbers.ttf +0 -0
- package/lib/canvas/themes/tajawal.ttf +0 -0
- package/lib/database/MongoDB.js +126 -0
- package/lib/database/NanoDB.js +1318 -0
- package/lib/database/mongoDb/aggregate.js +120 -0
- package/lib/database/mongoDb/countDocs.js +115 -0
- package/lib/database/mongoDb/createCollection.js +125 -0
- package/lib/database/mongoDb/dataSize.js +89 -0
- package/lib/database/mongoDb/distinct.js +110 -0
- package/lib/database/mongoDb/drop.js +76 -0
- package/lib/database/mongoDb/find.js +122 -0
- package/lib/database/mongoDb/geoNear.js +91 -0
- package/lib/database/mongoDb/index.js +71 -0
- package/lib/database/mongoDb/listCollections.js +81 -0
- package/lib/database/mongoDb/migrateAndPrune.js +89 -0
- package/lib/database/mongoDb/migrateData.js +79 -0
- package/lib/database/mongoDb/remove.js +73 -0
- package/lib/database/mongoDb/removeMany.js +73 -0
- package/lib/database/mongoDb/removeManyExcept.js +91 -0
- package/lib/database/mongoDb/removeSpecific.js +93 -0
- package/lib/database/mongoDb/save.js +94 -0
- package/lib/database/mongoDb/searchMany.js +109 -0
- package/lib/database/mongoDb/textSearch.js +88 -0
- package/lib/database/mongoDb/updateAll.js +80 -0
- package/lib/database/mongoDb/updateAllExcept.js +108 -0
- package/lib/database/mongoDb/updateData.js +106 -0
- package/lib/database/nanoDb/fetchData.js +39 -0
- package/lib/database/nanoDb/removeField.js +46 -0
- package/lib/database/nanoDb/saveData.js +68 -0
- package/lib/database/nanoDb/updateFilter.js +24 -0
- package/lib/database/ready-schemas.js +245 -0
- package/lib/database/utils.js +58 -0
- package/lib/discord/discord-build/commands-(prefix)/music/functions/buttons.js +361 -0
- package/lib/discord/discord-build/commands-(prefix)/music/functions/end.js +58 -0
- package/lib/discord/discord-build/commands-(prefix)/music/functions/start.js +115 -0
- package/lib/discord/discord-build/commands-(prefix)/music/play.js +152 -0
- package/lib/discord/discord-build/commands-(prefix)/music/previous.js +82 -0
- package/lib/discord/discord-build/commands-(prefix)/music/resume.js +93 -0
- package/lib/discord/discord-build/commands-(prefix)/music/skip.js +82 -0
- package/lib/discord/discord-build/commands-(prefix)/music/stop.js +79 -0
- package/lib/discord/discord-build/components/buttons.js +75 -0
- package/lib/discord/discord-build/components/menus.js +81 -0
- package/lib/discord/discord-build/components/paginator.js +156 -0
- package/lib/discord/discord-build/components/permsChecker.js +81 -0
- package/lib/discord/discord-build/utils.js +21 -0
- package/lib/discord/events/eventer.js +100 -0
- package/lib/discord/events/handler/drawMenu.js +351 -0
- package/lib/discord/events/handler/tools.js +652 -0
- package/lib/discord/events/prefixRegister.js +136 -0
- package/lib/discord/events/prefixResponder.js +163 -0
- package/lib/discord/events/slashRegister.js +199 -0
- package/lib/discord/events/slashResponder.js +108 -0
- package/lib/discord/events/starter.js +335 -0
- package/lib/discord/functions/perms.js +19 -0
- package/lib/discord/utils.js +6 -0
- package/lib/general-functions/discord/type-writer.js +77 -0
- package/lib/general-functions/utils.js +0 -0
- package/lib/utils.js +90 -0
- package/package.json +118 -0
|
@@ -0,0 +1,156 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
var discord_js_1 = require("discord.js");
|
|
39
|
+
exports.Paginator = void 0;
|
|
40
|
+
var Paginator = /** @class */ (function () {
|
|
41
|
+
function Paginator(_a) {
|
|
42
|
+
var options = _a.options, _b = _a.timeout, timeout = _b === void 0 ? 10000 : _b;
|
|
43
|
+
this.options = options;
|
|
44
|
+
this.currentIndex = 0;
|
|
45
|
+
this.timeout = timeout;
|
|
46
|
+
this.pages = this.generatePages();
|
|
47
|
+
}
|
|
48
|
+
Paginator.prototype.generatePages = function () {
|
|
49
|
+
var pages = [];
|
|
50
|
+
for (var _i = 0, _a = this.options; _i < _a.length; _i++) {
|
|
51
|
+
var option = _a[_i];
|
|
52
|
+
var embed = new discord_js_1.EmbedBuilder();
|
|
53
|
+
if (option.title)
|
|
54
|
+
embed.setTitle(option.title);
|
|
55
|
+
if (option.color)
|
|
56
|
+
embed.setColor(option.color);
|
|
57
|
+
if (option.description)
|
|
58
|
+
embed.setDescription(option.description);
|
|
59
|
+
if (option.authorName)
|
|
60
|
+
embed.setAuthor({ name: option.authorName, iconURL: option.authorIcon || undefined });
|
|
61
|
+
if (option.timestamp)
|
|
62
|
+
embed.setTimestamp();
|
|
63
|
+
if (option.footerName)
|
|
64
|
+
embed.setFooter({ text: option.footerName, iconURL: option.footerIcon || undefined });
|
|
65
|
+
if (option.image)
|
|
66
|
+
embed.setImage(option.image);
|
|
67
|
+
if (option.thumbnail)
|
|
68
|
+
embed.setThumbnail(option.thumbnail);
|
|
69
|
+
if (option.url)
|
|
70
|
+
embed.setURL(option.url);
|
|
71
|
+
pages.push(embed);
|
|
72
|
+
}
|
|
73
|
+
return pages;
|
|
74
|
+
};
|
|
75
|
+
Paginator.prototype.createButtons = function (buttonOptions) {
|
|
76
|
+
var previousButton = new discord_js_1.ButtonBuilder()
|
|
77
|
+
.setCustomId('apexify_prev')
|
|
78
|
+
.setEmoji('⬅️')
|
|
79
|
+
.setStyle('Primary');
|
|
80
|
+
var nextButton = new discord_js_1.ButtonBuilder()
|
|
81
|
+
.setCustomId('apexify_next')
|
|
82
|
+
.setEmoji('➡️')
|
|
83
|
+
.setStyle('Primary');
|
|
84
|
+
return new discord_js_1.ActionRowBuilder().addComponents(previousButton, nextButton);
|
|
85
|
+
};
|
|
86
|
+
Paginator.prototype.send = function (target, user, _a) {
|
|
87
|
+
var _b = _a === void 0 ? {} : _a, _c = _b.ownerOnly, ownerOnly = _c === void 0 ? false : _c, _d = _b.hidden, hidden = _d === void 0 ? false : _d, _e = _b.buttonOptions, buttonOptions = _e === void 0 ? {} : _e;
|
|
88
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
89
|
+
var page, row, options, sentMessage, filter, collector;
|
|
90
|
+
var _this = this;
|
|
91
|
+
return __generator(this, function (_f) {
|
|
92
|
+
switch (_f.label) {
|
|
93
|
+
case 0:
|
|
94
|
+
page = this.pages[this.currentIndex];
|
|
95
|
+
row = this.createButtons(buttonOptions);
|
|
96
|
+
options = { embeds: [page], components: [row] };
|
|
97
|
+
if (hidden) {
|
|
98
|
+
options.ephemeral = true;
|
|
99
|
+
}
|
|
100
|
+
return [4 /*yield*/, target.reply(options)];
|
|
101
|
+
case 1:
|
|
102
|
+
sentMessage = _f.sent();
|
|
103
|
+
filter = function (i) {
|
|
104
|
+
if (ownerOnly && i.user.id !== user.id) {
|
|
105
|
+
i.reply({ content: "You can't use this button. Re-run the command to make your own", ephemeral: true });
|
|
106
|
+
return false;
|
|
107
|
+
}
|
|
108
|
+
return i.customId === 'apexify_prev' || i.customId === 'apexify_next';
|
|
109
|
+
};
|
|
110
|
+
collector = sentMessage.createMessageComponentCollector({ filter: filter, time: this.timeout });
|
|
111
|
+
collector.on('collect', function (i) { return __awaiter(_this, void 0, void 0, function () {
|
|
112
|
+
var newPage;
|
|
113
|
+
return __generator(this, function (_a) {
|
|
114
|
+
switch (_a.label) {
|
|
115
|
+
case 0: return [4 /*yield*/, i.deferUpdate()];
|
|
116
|
+
case 1:
|
|
117
|
+
_a.sent();
|
|
118
|
+
if (i.customId === 'apexify_prev') {
|
|
119
|
+
this.currentIndex = (this.currentIndex - 1 + this.pages.length) % this.pages.length;
|
|
120
|
+
}
|
|
121
|
+
else if (i.customId === 'apexify_next') {
|
|
122
|
+
this.currentIndex = (this.currentIndex + 1) % this.pages.length;
|
|
123
|
+
}
|
|
124
|
+
newPage = this.pages[this.currentIndex];
|
|
125
|
+
return [4 /*yield*/, sentMessage.edit({ embeds: [newPage] })];
|
|
126
|
+
case 2:
|
|
127
|
+
_a.sent();
|
|
128
|
+
return [2 /*return*/];
|
|
129
|
+
}
|
|
130
|
+
});
|
|
131
|
+
}); });
|
|
132
|
+
collector.on('end', function (collected, reason) { return __awaiter(_this, void 0, void 0, function () {
|
|
133
|
+
return __generator(this, function (_a) {
|
|
134
|
+
switch (_a.label) {
|
|
135
|
+
case 0:
|
|
136
|
+
if (!(reason === 'time')) return [3 /*break*/, 2];
|
|
137
|
+
row.components.forEach(function (component) {
|
|
138
|
+
component.setDisabled(true);
|
|
139
|
+
});
|
|
140
|
+
return [4 /*yield*/, sentMessage.edit({ components: [row] })];
|
|
141
|
+
case 1:
|
|
142
|
+
_a.sent();
|
|
143
|
+
_a.label = 2;
|
|
144
|
+
case 2: return [2 /*return*/];
|
|
145
|
+
}
|
|
146
|
+
});
|
|
147
|
+
}); });
|
|
148
|
+
return [2 /*return*/];
|
|
149
|
+
}
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
};
|
|
153
|
+
return Paginator;
|
|
154
|
+
}());
|
|
155
|
+
|
|
156
|
+
exports.Paginator = Paginator;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
37
|
+
};
|
|
38
|
+
exports.PermissionChecker = void 0;
|
|
39
|
+
var PermissionChecker = /** @class */ (function () {
|
|
40
|
+
function PermissionChecker() {
|
|
41
|
+
this.validPermissions = new Set([
|
|
42
|
+
'CreateInstantInvite', 'KickMembers', 'BanMembers', 'Administrator',
|
|
43
|
+
'ManageChannels', 'ManageGuild', 'AddReactions', 'ViewAuditLog',
|
|
44
|
+
'PrioritySpeaker', 'Stream', 'ViewChannel', 'SendMessages', 'SendTTSMessages',
|
|
45
|
+
'ManageMessages', 'EmbedLinks', 'AttachFiles', 'ReadMessageHistory',
|
|
46
|
+
'MentionEveryone', 'UseExternalEmojis', 'ViewGuildInsights', 'Connect',
|
|
47
|
+
'Speak', 'MuteMembers', 'DeafenMembers', 'MoveMembers', 'UseVAD',
|
|
48
|
+
'ChangeNickname', 'ManageNicknames', 'ManageRoles', 'ManageWebhooks',
|
|
49
|
+
'ManageEmojisAndStickers', 'ManageGuildExpressions', 'UseApplicationCommands',
|
|
50
|
+
'RequestToSpeak', 'ManageEvents', 'ManageThreads', 'CreatePublicThreads',
|
|
51
|
+
'CreatePrivateThreads', 'UseExternalStickers', 'SendMessagesInThreads',
|
|
52
|
+
'UseEmbeddedActivities', 'ModerateMembers', 'UseSoundboard', 'UseExternalSounds',
|
|
53
|
+
'SendVoiceMessages'
|
|
54
|
+
]);
|
|
55
|
+
}
|
|
56
|
+
PermissionChecker.prototype.checker = function (target, guild, requiredPermissions) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
58
|
+
var invalidPermissions, member;
|
|
59
|
+
var _this = this;
|
|
60
|
+
return __generator(this, function (_a) {
|
|
61
|
+
switch (_a.label) {
|
|
62
|
+
case 0:
|
|
63
|
+
if (!requiredPermissions || !Array.isArray(requiredPermissions) || requiredPermissions.length === 0) {
|
|
64
|
+
throw new Error('Invalid requiredPermissions. Must be a non-empty array.');
|
|
65
|
+
}
|
|
66
|
+
invalidPermissions = requiredPermissions.filter(function (permission) { return !_this.validPermissions.has(permission); });
|
|
67
|
+
if (invalidPermissions.length > 0) {
|
|
68
|
+
throw new Error("Invalid permissions found: ".concat(invalidPermissions.join(', '), "."));
|
|
69
|
+
}
|
|
70
|
+
return [4 /*yield*/, guild.members.fetch(target)];
|
|
71
|
+
case 1:
|
|
72
|
+
member = _a.sent();
|
|
73
|
+
return [2 /*return*/, member.permissions.has(requiredPermissions)];
|
|
74
|
+
}
|
|
75
|
+
});
|
|
76
|
+
});
|
|
77
|
+
};
|
|
78
|
+
return PermissionChecker;
|
|
79
|
+
}());
|
|
80
|
+
|
|
81
|
+
exports.PermissionChecker = PermissionChecker;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.previousCommand = exports.resumeCommand = exports.skipCommand = exports.stopCommand = exports.playCommand = exports.PermissionChecker = exports.Paginator = exports.SelectMenuManager = exports.ButtonManager = void 0;
|
|
4
|
+
var buttons_1 = require("./components/buttons");
|
|
5
|
+
Object.defineProperty(exports, "ButtonManager", { enumerable: true, get: function () { return buttons_1.ButtonManager; } });
|
|
6
|
+
var menus_1 = require("./components/menus");
|
|
7
|
+
Object.defineProperty(exports, "SelectMenuManager", { enumerable: true, get: function () { return menus_1.SelectMenuManager; } });
|
|
8
|
+
var paginator_1 = require("./components/paginator");
|
|
9
|
+
Object.defineProperty(exports, "Paginator", { enumerable: true, get: function () { return paginator_1.Paginator; } });
|
|
10
|
+
var permsChecker_1 = require("./components/permsChecker");
|
|
11
|
+
Object.defineProperty(exports, "PermissionChecker", { enumerable: true, get: function () { return permsChecker_1.PermissionChecker; } });
|
|
12
|
+
var play_1 = require("./commands-(prefix)/music/play");
|
|
13
|
+
Object.defineProperty(exports, "playCommand", { enumerable: true, get: function () { return play_1.playCommand; } });
|
|
14
|
+
var stop_1 = require("./commands-(prefix)/music/stop");
|
|
15
|
+
Object.defineProperty(exports, "stopCommand", { enumerable: true, get: function () { return stop_1.stopCommand; } });
|
|
16
|
+
var skip_1 = require("./commands-(prefix)/music/skip");
|
|
17
|
+
Object.defineProperty(exports, "skipCommand", { enumerable: true, get: function () { return skip_1.skipCommand; } });
|
|
18
|
+
var resume_1 = require("./commands-(prefix)/music/resume");
|
|
19
|
+
Object.defineProperty(exports, "resumeCommand", { enumerable: true, get: function () { return resume_1.resumeCommand; } });
|
|
20
|
+
var previous_1 = require("./commands-(prefix)/music/previous");
|
|
21
|
+
Object.defineProperty(exports, "previousCommand", { enumerable: true, get: function () { return previous_1.previousCommand; } });
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
12
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
13
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
14
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
15
|
+
function step(op) {
|
|
16
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
17
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
18
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
19
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
20
|
+
switch (op[0]) {
|
|
21
|
+
case 0: case 1: t = op; break;
|
|
22
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
23
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
24
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
25
|
+
default:
|
|
26
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
27
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
28
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
29
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
30
|
+
if (t[2]) _.ops.pop();
|
|
31
|
+
_.trys.pop(); continue;
|
|
32
|
+
}
|
|
33
|
+
op = body.call(thisArg, _);
|
|
34
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
35
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
36
|
+
}
|
|
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
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
48
|
+
exports.registerEvents = void 0;
|
|
49
|
+
var fs_1 = require("fs");
|
|
50
|
+
var path_1 = require("path");
|
|
51
|
+
function registerEvents(client, eventsFolderPath) {
|
|
52
|
+
var _this = this;
|
|
53
|
+
var eventsCount = 0;
|
|
54
|
+
(0, fs_1.readdirSync)(eventsFolderPath).forEach(function (file) { return __awaiter(_this, void 0, void 0, function () {
|
|
55
|
+
var filePath, isDirectory, event_1, error_1;
|
|
56
|
+
return __generator(this, function (_a) {
|
|
57
|
+
switch (_a.label) {
|
|
58
|
+
case 0:
|
|
59
|
+
_a.trys.push([0, 4, , 5]);
|
|
60
|
+
filePath = path_1.join(eventsFolderPath, file);
|
|
61
|
+
isDirectory = (0, fs_1.statSync)(filePath).isDirectory();
|
|
62
|
+
if (!isDirectory) return [3 /*break*/, 1];
|
|
63
|
+
registerEvents(client, filePath);
|
|
64
|
+
return [3 /*break*/, 3];
|
|
65
|
+
case 1: return [4 /*yield*/, Promise.resolve("".concat(filePath)).then(function (s) { return require(s); })];
|
|
66
|
+
case 2:
|
|
67
|
+
event_1 = _a.sent();
|
|
68
|
+
if (event_1.once) {
|
|
69
|
+
client.once(event_1.name, function () {
|
|
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:
|
|
90
|
+
error_1 = _a.sent();
|
|
91
|
+
console.error('\x1b[31m%s\x1b[0m', "Error in event file: ".concat(path_1.join(eventsFolderPath, file)));
|
|
92
|
+
console.error('\x1b[31m%s\x1b[0m', error_1);
|
|
93
|
+
return [3 /*break*/, 5];
|
|
94
|
+
case 5: return [2 /*return*/];
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
}); });
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
exports.registerEvents = registerEvents;
|