djsbotbase-test
Version:
Discord.js tabanlı komut ve etkinlik sistemlerine sahip bir bot temeli
55 lines (54 loc) • 1.77 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.Event = void 0;
const logger_1 = require("../helpers/logger");
class Event {
constructor(data) {
Object.defineProperty(this, "data", {
enumerable: true,
configurable: true,
writable: true,
value: void 0
});
this.validateConstructorData(data);
this.data = data;
}
validateConstructorData(data) {
this.validateCategoryName(data);
this.validateRunner(data);
this.validateRunOrder(data);
}
validateCategoryName(data) {
if (!("categoryName" in data) || typeof data.categoryName !== "string" || !data.categoryName.trim()) {
(0, logger_1.error)("Event category name must be a non-empty string.");
}
}
validateRunner(data) {
if (!("run" in data) || typeof data.run !== "function") {
(0, logger_1.error)("Event runner must be a function.");
}
}
validateRunOrder(data) {
if ("runOrder" in data && data.runOrder !== undefined) {
if (typeof data.runOrder !== "number") {
(0, logger_1.error)("Event runOrder must be a number.");
}
if (!Number.isSafeInteger(data.runOrder)) {
(0, logger_1.error)("Event runOrder must be a safe integer.");
}
if (data.runOrder < 0) {
(0, logger_1.error)("Event runOrder must be greater than or equal to zero.");
}
}
}
get categoryName() {
return this.data.categoryName;
}
get run() {
return this.data.run;
}
get runOrder() {
return this.data.runOrder;
}
}
exports.Event = Event;