xernerx 0.1.120-beta.49 → 0.1.120-beta.50
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/dist/main.cjs +168 -103
- package/dist/main.cjs.map +1 -1
- package/dist/main.d.cts +214 -184
- package/dist/main.d.ts +214 -184
- package/dist/main.js +166 -97
- package/dist/main.js.map +1 -1
- package/package.json +7 -5
- package/src/build/BaseBuilder.ts +25 -0
- package/src/build/{XernerxContextCommandBuilder.ts → ContextCommandBuilder.ts} +7 -7
- package/src/build/{XernerxEventBuilder.ts → EventBuilder.ts} +4 -4
- package/src/build/InhibitorBuilder.ts +22 -0
- package/src/build/{XernerxMessageCommandBuilder.ts → MessageCommandBuilder.ts} +4 -4
- package/src/build/{XernerxSlashCommandBuilder.ts → SlashCommandBuilder.ts} +18 -23
- package/src/client/XernerxClient.ts +27 -18
- package/src/events/XernerxMessage.ts +2 -2
- package/src/events/clientReady.ts +7 -7
- package/src/events/contextCommandInteraction.ts +14 -8
- package/src/events/interactionCreate.ts +16 -9
- package/src/events/interactionInhibitor.ts +1 -0
- package/src/events/messageCreate.ts +4 -4
- package/src/events/messageDelete.ts +4 -4
- package/src/events/messageUpdate.ts +4 -4
- package/src/events/slashCommandInteraction.ts +12 -7
- package/src/handler/{Handler.ts → BaseHandler.ts} +18 -11
- package/src/handler/CommandHandler.ts +8 -8
- package/src/handler/EventHandler.ts +9 -5
- package/src/handler/InhibitorHandler.ts +27 -0
- package/src/interfaces/{XernerxContextCommandBuilderOptions.ts → ContextCommandBuilderOptions.ts} +1 -1
- package/src/interfaces/ContextCommandHandlerOptions.ts +5 -0
- package/src/interfaces/{XernerxContextCommandOptions.ts → ContextCommandOptions.ts} +3 -3
- package/src/interfaces/{XernerxEventBuilderOptions.ts → EventBuilderOptions.ts} +1 -1
- package/src/interfaces/EventHandlerOptions.ts +5 -0
- package/src/interfaces/InhibitorBuilderOptions.ts +5 -0
- package/src/interfaces/InhibitorHandlerOptions.ts +5 -0
- package/src/interfaces/{XernerxMessageCommandBuilderOptions.ts → MessageCommandBuilderOptions.ts} +1 -1
- package/src/interfaces/{XernerxMessageCommandHandlerOptions.ts → MessageCommandHandlerOptions.ts} +1 -1
- package/src/interfaces/{XernerxSlashCommandBuilderOptions.ts → SlashCommandBuilderOptions.ts} +9 -9
- package/src/interfaces/SlashCommandHandlerOptions.ts +5 -0
- package/src/interfaces/{XernerxSlashCommandOptions.ts → SlashCommandOptions.ts} +7 -7
- package/src/main.ts +7 -9
- package/src/model/{XernerxInteractionArguments.ts → InteractionArguments.ts} +6 -6
- package/src/types/Events.d.ts +7 -7
- package/src/types/Interaction.d.ts +14 -14
- package/src/types/Message.d.ts +2 -2
- package/src/util/{XernerxUtil.ts → BaseUtil.ts} +1 -1
- package/src/util/{XernerxInteractionUtil.ts → InteractionUtil.ts} +2 -2
- package/src/util/{XernerxMessageUtil.ts → MessageUtil.ts} +2 -2
- package/src/validators/{XernerxBaseValidator.ts → BaseValidator.ts} +6 -6
- package/src/validators/ContextCommandValidator.ts +12 -0
- package/src/validators/InhibitorValidator.ts +25 -0
- package/src/validators/SlashCommandValidator.ts +11 -0
- package/src/build/XernerxBaseBuilder.ts +0 -21
- package/src/interfaces/XernerxContextCommandHandlerOptions.ts +0 -5
- package/src/interfaces/XernerxSlashCommandHandlerOptions.ts +0 -5
- package/src/validators/XernerxContextCommandValidator.ts +0 -12
- package/src/validators/XernerxSlashCommandValidator.ts +0 -11
package/dist/main.cjs
CHANGED
|
@@ -67,7 +67,7 @@ var XernerxInfo = class extends XernerxBase {
|
|
|
67
67
|
|
|
68
68
|
// package.json
|
|
69
69
|
var package_default = {
|
|
70
|
-
version: "0.1.120-beta.
|
|
70
|
+
version: "0.1.120-beta.50"};
|
|
71
71
|
|
|
72
72
|
// src/tools/XernerxInitial.ts
|
|
73
73
|
var XernerxInitial = class extends XernerxBase {
|
|
@@ -196,9 +196,9 @@ var XernerxShardClient = class extends discordHybridSharding.ClusterManager {
|
|
|
196
196
|
);
|
|
197
197
|
}
|
|
198
198
|
};
|
|
199
|
-
var
|
|
199
|
+
var BaseHandler = class {
|
|
200
200
|
static {
|
|
201
|
-
__name(this, "
|
|
201
|
+
__name(this, "BaseHandler");
|
|
202
202
|
}
|
|
203
203
|
constructor(client) {
|
|
204
204
|
this.client = client;
|
|
@@ -278,6 +278,10 @@ var Handler = class {
|
|
|
278
278
|
if (this.client.commands.slash.has(builder.id)) return new XernerxError(`${filename} | ID must be unique`);
|
|
279
279
|
this.client.commands.context.set(builder.id, builder);
|
|
280
280
|
}
|
|
281
|
+
if (builder.filetype === "XernerxInhibitor") {
|
|
282
|
+
if (this.client.inhibitors.has(builder.id)) return new XernerxError(`${filename} | ID must be unique`);
|
|
283
|
+
this.client.inhibitors.set(builder.id, builder);
|
|
284
|
+
}
|
|
281
285
|
return builder;
|
|
282
286
|
}
|
|
283
287
|
async loadBuilder(...args) {
|
|
@@ -287,11 +291,8 @@ var Handler = class {
|
|
|
287
291
|
}
|
|
288
292
|
};
|
|
289
293
|
|
|
290
|
-
// src/build/
|
|
291
|
-
var
|
|
292
|
-
static {
|
|
293
|
-
__name(this, "XernerxBaseBuilder");
|
|
294
|
-
}
|
|
294
|
+
// src/build/BaseBuilder.ts
|
|
295
|
+
var BaseBuilder = class {
|
|
295
296
|
/**
|
|
296
297
|
* Constructs a new instance of the XernerxBaseBuilder class.
|
|
297
298
|
*
|
|
@@ -301,6 +302,10 @@ var XernerxBaseBuilder = class {
|
|
|
301
302
|
*/
|
|
302
303
|
constructor(id, options) {
|
|
303
304
|
this.id = id;
|
|
305
|
+
this.id = id;
|
|
306
|
+
}
|
|
307
|
+
static {
|
|
308
|
+
__name(this, "BaseBuilder");
|
|
304
309
|
}
|
|
305
310
|
};
|
|
306
311
|
var XernerxWarn = class extends XernerxBase {
|
|
@@ -312,9 +317,9 @@ var XernerxWarn = class extends XernerxBase {
|
|
|
312
317
|
ora__default.default().warn(`${this.base()}${message}`);
|
|
313
318
|
}
|
|
314
319
|
};
|
|
315
|
-
var
|
|
320
|
+
var EventBuilder = class extends BaseBuilder {
|
|
316
321
|
static {
|
|
317
|
-
__name(this, "
|
|
322
|
+
__name(this, "EventBuilder");
|
|
318
323
|
}
|
|
319
324
|
constructor(id, options) {
|
|
320
325
|
super(id, options);
|
|
@@ -457,10 +462,10 @@ var XernerxUser = class extends discord_js.User {
|
|
|
457
462
|
}
|
|
458
463
|
};
|
|
459
464
|
|
|
460
|
-
// src/validators/
|
|
461
|
-
var
|
|
465
|
+
// src/validators/BaseValidator.ts
|
|
466
|
+
var BaseValidator = class {
|
|
462
467
|
static {
|
|
463
|
-
__name(this, "
|
|
468
|
+
__name(this, "BaseValidator");
|
|
464
469
|
}
|
|
465
470
|
constructor(interaction, command) {
|
|
466
471
|
this.client = interaction.client;
|
|
@@ -517,18 +522,39 @@ var XernerxBaseValidator = class {
|
|
|
517
522
|
}
|
|
518
523
|
};
|
|
519
524
|
|
|
520
|
-
// src/validators/
|
|
521
|
-
var
|
|
525
|
+
// src/validators/ContextCommandValidator.ts
|
|
526
|
+
var ContextCommandValidator = class extends BaseValidator {
|
|
522
527
|
static {
|
|
523
|
-
__name(this, "
|
|
528
|
+
__name(this, "ContextCommandValidator");
|
|
524
529
|
}
|
|
525
530
|
constructor(interaction, command) {
|
|
526
531
|
super(interaction, command);
|
|
527
532
|
}
|
|
528
533
|
};
|
|
529
534
|
|
|
535
|
+
// src/validators/InhibitorValidator.ts
|
|
536
|
+
var InhibitorValidator = class {
|
|
537
|
+
constructor(client) {
|
|
538
|
+
this.client = client;
|
|
539
|
+
this.client = client;
|
|
540
|
+
}
|
|
541
|
+
static {
|
|
542
|
+
__name(this, "InhibitorValidator");
|
|
543
|
+
}
|
|
544
|
+
async pre(name, ...args) {
|
|
545
|
+
if (!this.client.inhibitors.has(name)) return;
|
|
546
|
+
const inhibitor = this.client.inhibitors.get(name);
|
|
547
|
+
return await inhibitor?.pre(...args);
|
|
548
|
+
}
|
|
549
|
+
async post(name, ...args) {
|
|
550
|
+
if (!this.client.inhibitors.has(name)) return;
|
|
551
|
+
const inhibitor = this.client.inhibitors.get(name);
|
|
552
|
+
return await inhibitor?.post(...args);
|
|
553
|
+
}
|
|
554
|
+
};
|
|
555
|
+
|
|
530
556
|
// src/events/contextCommandInteraction.ts
|
|
531
|
-
var XernerxContextCommandInteractionEvent = class extends
|
|
557
|
+
var XernerxContextCommandInteractionEvent = class extends EventBuilder {
|
|
532
558
|
static {
|
|
533
559
|
__name(this, "XernerxContextCommandInteractionEvent");
|
|
534
560
|
}
|
|
@@ -549,13 +575,16 @@ var XernerxContextCommandInteractionEvent = class extends XernerxEventBuilder {
|
|
|
549
575
|
if (interaction.isMessageContextMenuCommand()) {
|
|
550
576
|
options.message = interaction.targetMessage;
|
|
551
577
|
}
|
|
578
|
+
const inhibitor = new InhibitorValidator(interaction.client);
|
|
579
|
+
if (await inhibitor.pre("command", interaction, command)) return;
|
|
552
580
|
try {
|
|
553
581
|
await this.client.emit("commandStart", interaction, options, command);
|
|
554
|
-
const validation = new
|
|
582
|
+
const validation = new ContextCommandValidator(interaction, command);
|
|
555
583
|
if (!await validation.validate()) return;
|
|
556
584
|
if (command.defer) await interaction.deferReply();
|
|
557
585
|
if (await command.conditions(options)) return;
|
|
558
586
|
await command.exec(options);
|
|
587
|
+
await inhibitor.post("command", interaction, command);
|
|
559
588
|
await this.client.emit("commandFinish", interaction, options, command);
|
|
560
589
|
} catch (error) {
|
|
561
590
|
await this.client.emit("commandError", interaction, options, command, error);
|
|
@@ -563,10 +592,10 @@ var XernerxContextCommandInteractionEvent = class extends XernerxEventBuilder {
|
|
|
563
592
|
}
|
|
564
593
|
};
|
|
565
594
|
|
|
566
|
-
// src/util/
|
|
567
|
-
var
|
|
595
|
+
// src/util/BaseUtil.ts
|
|
596
|
+
var BaseUtil = class {
|
|
568
597
|
static {
|
|
569
|
-
__name(this, "
|
|
598
|
+
__name(this, "BaseUtil");
|
|
570
599
|
}
|
|
571
600
|
constructor(client, interaction) {
|
|
572
601
|
this.client = client;
|
|
@@ -592,10 +621,10 @@ var XernerxBaseUtil = class {
|
|
|
592
621
|
}
|
|
593
622
|
};
|
|
594
623
|
|
|
595
|
-
// src/util/
|
|
596
|
-
var
|
|
624
|
+
// src/util/InteractionUtil.ts
|
|
625
|
+
var InteractionUtil = class extends BaseUtil {
|
|
597
626
|
static {
|
|
598
|
-
__name(this, "
|
|
627
|
+
__name(this, "InteractionUtil");
|
|
599
628
|
}
|
|
600
629
|
constructor(client, interaction) {
|
|
601
630
|
super(client, interaction);
|
|
@@ -641,7 +670,7 @@ var XernerxInteractionUtil = class extends XernerxBaseUtil {
|
|
|
641
670
|
};
|
|
642
671
|
|
|
643
672
|
// src/events/interactionCreate.ts
|
|
644
|
-
var XernerxInteractionCreateEvent = class extends
|
|
673
|
+
var XernerxInteractionCreateEvent = class extends EventBuilder {
|
|
645
674
|
static {
|
|
646
675
|
__name(this, "XernerxInteractionCreateEvent");
|
|
647
676
|
}
|
|
@@ -654,19 +683,22 @@ var XernerxInteractionCreateEvent = class extends XernerxEventBuilder {
|
|
|
654
683
|
}
|
|
655
684
|
async run(interaction) {
|
|
656
685
|
interaction.user = new XernerxUser(interaction.client, interaction.user);
|
|
657
|
-
interaction.util = new
|
|
658
|
-
|
|
659
|
-
if (
|
|
660
|
-
if (interaction.
|
|
661
|
-
if (interaction.
|
|
662
|
-
if (interaction.
|
|
686
|
+
interaction.util = new InteractionUtil(this.client, interaction);
|
|
687
|
+
const inhibitor = new InhibitorValidator(interaction.client);
|
|
688
|
+
if (await inhibitor.pre("interaction", interaction)) return;
|
|
689
|
+
if (interaction.isChatInputCommand()) await interaction.client.emit("slashCommandInteraction", interaction);
|
|
690
|
+
if (interaction.isContextMenuCommand()) await interaction.client.emit("contextCommandInteraction", interaction);
|
|
691
|
+
if (interaction.isAnySelectMenu()) await interaction.client.emit("selectMenuInteraction", interaction);
|
|
692
|
+
if (interaction.isButton()) await interaction.client.emit("buttonInteraction", interaction);
|
|
693
|
+
if (interaction.isModalSubmit()) await interaction.client.emit("modalInteraction", interaction);
|
|
694
|
+
await inhibitor.post("interaction", interaction);
|
|
663
695
|
}
|
|
664
696
|
};
|
|
665
697
|
|
|
666
|
-
// src/util/
|
|
667
|
-
var
|
|
698
|
+
// src/util/MessageUtil.ts
|
|
699
|
+
var MessageUtil = class extends BaseUtil {
|
|
668
700
|
static {
|
|
669
|
-
__name(this, "
|
|
701
|
+
__name(this, "MessageUtil");
|
|
670
702
|
}
|
|
671
703
|
constructor(client, message) {
|
|
672
704
|
super(client, message);
|
|
@@ -735,7 +767,7 @@ var XernerxMessageUtil = class extends XernerxBaseUtil {
|
|
|
735
767
|
};
|
|
736
768
|
|
|
737
769
|
// src/events/messageCreate.ts
|
|
738
|
-
var XernerxMessageCreateEvent = class extends
|
|
770
|
+
var XernerxMessageCreateEvent = class extends EventBuilder {
|
|
739
771
|
static {
|
|
740
772
|
__name(this, "XernerxMessageCreateEvent");
|
|
741
773
|
}
|
|
@@ -748,7 +780,7 @@ var XernerxMessageCreateEvent = class extends XernerxEventBuilder {
|
|
|
748
780
|
}
|
|
749
781
|
async run(message) {
|
|
750
782
|
message.user = new XernerxUser(message.client, message.author);
|
|
751
|
-
message.util = new
|
|
783
|
+
message.util = new MessageUtil(this.client, message);
|
|
752
784
|
if (!message.content) return;
|
|
753
785
|
if (this.client.handler.message.ignore?.bots && message.author.bot) return;
|
|
754
786
|
if (this.client.handler.message.ignore?.self && message.author.id === this.client.user?.id) return;
|
|
@@ -769,7 +801,7 @@ var XernerxMessageCreateEvent = class extends XernerxEventBuilder {
|
|
|
769
801
|
};
|
|
770
802
|
|
|
771
803
|
// src/events/messageDelete.ts
|
|
772
|
-
var XernerxMessageDeleteEvent = class extends
|
|
804
|
+
var XernerxMessageDeleteEvent = class extends EventBuilder {
|
|
773
805
|
static {
|
|
774
806
|
__name(this, "XernerxMessageDeleteEvent");
|
|
775
807
|
}
|
|
@@ -782,7 +814,7 @@ var XernerxMessageDeleteEvent = class extends XernerxEventBuilder {
|
|
|
782
814
|
}
|
|
783
815
|
async run(message) {
|
|
784
816
|
message.user = new XernerxUser(message.client, message.author);
|
|
785
|
-
message.util = new
|
|
817
|
+
message.util = new MessageUtil(this.client, message);
|
|
786
818
|
if (!this.client.handler.message.handleDeletions) return;
|
|
787
819
|
if (!this.client.cache.messages.has(message.id)) return;
|
|
788
820
|
const id = this.client.cache.messages.get(message.id);
|
|
@@ -797,7 +829,7 @@ var XernerxMessageDeleteEvent = class extends XernerxEventBuilder {
|
|
|
797
829
|
};
|
|
798
830
|
|
|
799
831
|
// src/events/messageUpdate.ts
|
|
800
|
-
var XernerxMessageUpdateEvent = class extends
|
|
832
|
+
var XernerxMessageUpdateEvent = class extends EventBuilder {
|
|
801
833
|
static {
|
|
802
834
|
__name(this, "XernerxMessageUpdateEvent");
|
|
803
835
|
}
|
|
@@ -810,7 +842,7 @@ var XernerxMessageUpdateEvent = class extends XernerxEventBuilder {
|
|
|
810
842
|
}
|
|
811
843
|
async run(oldMessage, message) {
|
|
812
844
|
message.user = new XernerxUser(message.client, message.author);
|
|
813
|
-
message.util = new
|
|
845
|
+
message.util = new MessageUtil(this.client, message);
|
|
814
846
|
if (!message.content) return;
|
|
815
847
|
if (this.client.handler.message.ignore?.bots && message.author.bot) return;
|
|
816
848
|
if (this.client.handler.message.ignore?.self && message.author.id === this.client.user?.id) return;
|
|
@@ -830,10 +862,10 @@ var XernerxMessageUpdateEvent = class extends XernerxEventBuilder {
|
|
|
830
862
|
}
|
|
831
863
|
};
|
|
832
864
|
|
|
833
|
-
// src/model/
|
|
834
|
-
var
|
|
865
|
+
// src/model/InteractionArguments.ts
|
|
866
|
+
var InteractionArguments = class {
|
|
835
867
|
static {
|
|
836
|
-
__name(this, "
|
|
868
|
+
__name(this, "InteractionArguments");
|
|
837
869
|
}
|
|
838
870
|
constructor(interaction, command) {
|
|
839
871
|
this.interaction = interaction;
|
|
@@ -915,10 +947,10 @@ var XernerxInteractionArguments = class {
|
|
|
915
947
|
}
|
|
916
948
|
};
|
|
917
949
|
|
|
918
|
-
// src/validators/
|
|
919
|
-
var
|
|
950
|
+
// src/validators/SlashCommandValidator.ts
|
|
951
|
+
var SlashCommandValidator = class extends BaseValidator {
|
|
920
952
|
static {
|
|
921
|
-
__name(this, "
|
|
953
|
+
__name(this, "SlashCommandValidator");
|
|
922
954
|
}
|
|
923
955
|
constructor(interaction, command) {
|
|
924
956
|
super(interaction, command);
|
|
@@ -926,7 +958,7 @@ var XernerxSlashCommandValidator = class extends XernerxBaseValidator {
|
|
|
926
958
|
};
|
|
927
959
|
|
|
928
960
|
// src/events/slashCommandInteraction.ts
|
|
929
|
-
var XernerxSlashCommandInteractionEvent = class extends
|
|
961
|
+
var XernerxSlashCommandInteractionEvent = class extends EventBuilder {
|
|
930
962
|
static {
|
|
931
963
|
__name(this, "XernerxSlashCommandInteractionEvent");
|
|
932
964
|
}
|
|
@@ -940,6 +972,8 @@ var XernerxSlashCommandInteractionEvent = class extends XernerxEventBuilder {
|
|
|
940
972
|
async run(interaction) {
|
|
941
973
|
const command = this.client.commands.slash.get(interaction.commandName);
|
|
942
974
|
if (!command) return;
|
|
975
|
+
const inhibitor = new InhibitorValidator(interaction.client);
|
|
976
|
+
if (await inhibitor.pre("command", interaction, command)) return;
|
|
943
977
|
new Promise(async (resolve) => {
|
|
944
978
|
if (interaction.isAutocomplete()) {
|
|
945
979
|
const focused = interaction.options.getFocused(true);
|
|
@@ -947,16 +981,17 @@ var XernerxSlashCommandInteractionEvent = class extends XernerxEventBuilder {
|
|
|
947
981
|
await command.autocomplete({ interaction, focused, options });
|
|
948
982
|
} else resolve(true);
|
|
949
983
|
}).then(async () => {
|
|
950
|
-
const args = new
|
|
984
|
+
const args = new InteractionArguments(interaction, command);
|
|
951
985
|
const options = { options: args.options(), subcommand: args.subcommand(), group: args.group() };
|
|
952
986
|
try {
|
|
953
987
|
await this.client.emit("commandStart", interaction, options, command);
|
|
954
|
-
const validation = new
|
|
988
|
+
const validation = new SlashCommandValidator(interaction, command);
|
|
955
989
|
if (!await validation.validate()) return;
|
|
956
990
|
if (command.defer) await interaction.deferReply();
|
|
957
991
|
if (await command.conditions({ interaction, ...options, command })) return;
|
|
958
992
|
await command.exec({ interaction, ...options, command });
|
|
959
993
|
await this.client.emit("commandFinish", interaction, options, command);
|
|
994
|
+
await inhibitor.post("command", interaction, command);
|
|
960
995
|
} catch (error) {
|
|
961
996
|
await command.error({ interaction, ...options, command, error });
|
|
962
997
|
await this.client.emit("commandError", interaction, options, command, error);
|
|
@@ -964,7 +999,7 @@ var XernerxSlashCommandInteractionEvent = class extends XernerxEventBuilder {
|
|
|
964
999
|
});
|
|
965
1000
|
}
|
|
966
1001
|
};
|
|
967
|
-
var CommandHandler = class extends
|
|
1002
|
+
var CommandHandler = class extends BaseHandler {
|
|
968
1003
|
static {
|
|
969
1004
|
__name(this, "CommandHandler");
|
|
970
1005
|
}
|
|
@@ -1057,40 +1092,7 @@ var CommandHandler = class extends Handler {
|
|
|
1057
1092
|
new XernerxSuccess(`Loaded context commands: ${this.client.commands.context.map((command) => sharpyy4__default.default(command.id, "txYellow")).join(", ")}`);
|
|
1058
1093
|
}
|
|
1059
1094
|
};
|
|
1060
|
-
var
|
|
1061
|
-
static {
|
|
1062
|
-
__name(this, "EventHandler");
|
|
1063
|
-
}
|
|
1064
|
-
constructor(client) {
|
|
1065
|
-
super(client);
|
|
1066
|
-
}
|
|
1067
|
-
/**
|
|
1068
|
-
* Loads a single event file.
|
|
1069
|
-
*
|
|
1070
|
-
* @param file - The path to the event file to be loaded.
|
|
1071
|
-
* @returns A promise that resolves when the event file has been successfully loaded.
|
|
1072
|
-
*/
|
|
1073
|
-
async loadEvent(file) {
|
|
1074
|
-
return this.loadFile(file);
|
|
1075
|
-
}
|
|
1076
|
-
/**
|
|
1077
|
-
* Loads all event files from the specified directory and initializes them.
|
|
1078
|
-
*
|
|
1079
|
-
* @param options - An object containing options for loading events.
|
|
1080
|
-
* @param options.directory - The directory path where event files are located.
|
|
1081
|
-
* @returns A promise that resolves when all events have been loaded.
|
|
1082
|
-
*/
|
|
1083
|
-
async loadEvents(options) {
|
|
1084
|
-
const files = this.loadFiles(options.directory);
|
|
1085
|
-
for (const file of files) {
|
|
1086
|
-
await this.loadEvent(file);
|
|
1087
|
-
}
|
|
1088
|
-
new XernerxSuccess(
|
|
1089
|
-
`Loaded events: ${this.client.events.filter((event) => !event.id.startsWith("Xernerx")).map((event) => sharpyy4__default.default(event.id, "txYellow")).join(", ")}`
|
|
1090
|
-
);
|
|
1091
|
-
}
|
|
1092
|
-
};
|
|
1093
|
-
var XernerxClientReadyEvent = class extends XernerxEventBuilder {
|
|
1095
|
+
var XernerxClientReadyEvent = class extends EventBuilder {
|
|
1094
1096
|
static {
|
|
1095
1097
|
__name(this, "XernerxClientReadyEvent");
|
|
1096
1098
|
}
|
|
@@ -1158,7 +1160,7 @@ var XernerxClientReadyEvent = class extends XernerxEventBuilder {
|
|
|
1158
1160
|
};
|
|
1159
1161
|
|
|
1160
1162
|
// src/events/XernerxMessage.ts
|
|
1161
|
-
var XernerxMessageEvent = class extends
|
|
1163
|
+
var XernerxMessageEvent = class extends EventBuilder {
|
|
1162
1164
|
static {
|
|
1163
1165
|
__name(this, "XernerxMessageEvent");
|
|
1164
1166
|
}
|
|
@@ -1173,6 +1175,58 @@ var XernerxMessageEvent = class extends XernerxEventBuilder {
|
|
|
1173
1175
|
if (message.type !== "xernerx") return;
|
|
1174
1176
|
}
|
|
1175
1177
|
};
|
|
1178
|
+
var EventHandler = class extends BaseHandler {
|
|
1179
|
+
static {
|
|
1180
|
+
__name(this, "EventHandler");
|
|
1181
|
+
}
|
|
1182
|
+
constructor(client) {
|
|
1183
|
+
super(client);
|
|
1184
|
+
this.loadBuilder(XernerxMessageEvent, XernerxClientReadyEvent);
|
|
1185
|
+
}
|
|
1186
|
+
/**
|
|
1187
|
+
* Loads a single event file.
|
|
1188
|
+
*
|
|
1189
|
+
* @param file - The path to the event file to be loaded.
|
|
1190
|
+
* @returns A promise that resolves when the event file has been successfully loaded.
|
|
1191
|
+
*/
|
|
1192
|
+
async loadEvent(file) {
|
|
1193
|
+
return this.loadFile(file);
|
|
1194
|
+
}
|
|
1195
|
+
/**
|
|
1196
|
+
* Loads all event files from the specified directory and initializes them.
|
|
1197
|
+
*
|
|
1198
|
+
* @param options - An object containing options for loading events.
|
|
1199
|
+
* @param options.directory - The directory path where event files are located.
|
|
1200
|
+
* @returns A promise that resolves when all events have been loaded.
|
|
1201
|
+
*/
|
|
1202
|
+
async loadEvents(options) {
|
|
1203
|
+
const files = this.loadFiles(options.directory);
|
|
1204
|
+
for (const file of files) {
|
|
1205
|
+
await this.loadEvent(file);
|
|
1206
|
+
}
|
|
1207
|
+
new XernerxSuccess(
|
|
1208
|
+
`Loaded events: ${this.client.events.filter((event) => !event.id.startsWith("Xernerx")).map((event) => sharpyy4__default.default(event.id, "txYellow")).join(", ")}`
|
|
1209
|
+
);
|
|
1210
|
+
}
|
|
1211
|
+
};
|
|
1212
|
+
var InhibitorHandler = class extends BaseHandler {
|
|
1213
|
+
static {
|
|
1214
|
+
__name(this, "InhibitorHandler");
|
|
1215
|
+
}
|
|
1216
|
+
constructor(client) {
|
|
1217
|
+
super(client);
|
|
1218
|
+
}
|
|
1219
|
+
async loadInhibitor(file) {
|
|
1220
|
+
return await this.loadFile(file);
|
|
1221
|
+
}
|
|
1222
|
+
async loadInhibitors(options) {
|
|
1223
|
+
const files = this.loadFiles(options.directory);
|
|
1224
|
+
for (const file of files) {
|
|
1225
|
+
await this.loadInhibitor(file);
|
|
1226
|
+
}
|
|
1227
|
+
new XernerxSuccess(`Loaded inhibitors: ${this.client.inhibitors.map((inhibitor) => sharpyy4__default.default(inhibitor.id, "txYellow")).join(", ")}`);
|
|
1228
|
+
}
|
|
1229
|
+
};
|
|
1176
1230
|
var XernerxClient = class extends discord_js.Client {
|
|
1177
1231
|
static {
|
|
1178
1232
|
__name(this, "XernerxClient");
|
|
@@ -1225,9 +1279,9 @@ var XernerxClient = class extends discord_js.Client {
|
|
|
1225
1279
|
};
|
|
1226
1280
|
this.commands = { message: new discord_js.Collection(), slash: new discord_js.Collection(), context: new discord_js.Collection() };
|
|
1227
1281
|
this.events = new discord_js.Collection();
|
|
1282
|
+
this.inhibitors = new discord_js.Collection();
|
|
1283
|
+
this.modules = { eventHandler: new EventHandler(this), commandHandler: new CommandHandler(this), inhibitorHandler: new InhibitorHandler(this) };
|
|
1228
1284
|
if (this.sharded) this.cluster = new discordHybridSharding.ClusterClient(this);
|
|
1229
|
-
this.modules = { eventHandler: new EventHandler(this), commandHandler: new CommandHandler(this) };
|
|
1230
|
-
this.modules.eventHandler.loadBuilder(XernerxMessageEvent, XernerxClientReadyEvent);
|
|
1231
1285
|
process.xernerx = {
|
|
1232
1286
|
id: this.cluster?.id,
|
|
1233
1287
|
global: this.settings.global
|
|
@@ -1278,9 +1332,9 @@ var XernerxClient = class extends discord_js.Client {
|
|
|
1278
1332
|
return await this.login(this.token).catch((error) => new XernerxError(error.message, 1));
|
|
1279
1333
|
}
|
|
1280
1334
|
};
|
|
1281
|
-
var
|
|
1335
|
+
var MessageCommandBuilder = class extends BaseBuilder {
|
|
1282
1336
|
static {
|
|
1283
|
-
__name(this, "
|
|
1337
|
+
__name(this, "MessageCommandBuilder");
|
|
1284
1338
|
}
|
|
1285
1339
|
/**
|
|
1286
1340
|
* Constructs an instance of XernerxMessageCommandBuilder.
|
|
@@ -1361,9 +1415,9 @@ var XernerxMessageCommandBuilder = class extends XernerxBaseBuilder {
|
|
|
1361
1415
|
new XernerxWarn(`${this.id} has no exec function, command will not respond.`);
|
|
1362
1416
|
}
|
|
1363
1417
|
};
|
|
1364
|
-
var
|
|
1418
|
+
var SlashCommandBuilder = class extends BaseBuilder {
|
|
1365
1419
|
static {
|
|
1366
|
-
__name(this, "
|
|
1420
|
+
__name(this, "SlashCommandBuilder");
|
|
1367
1421
|
}
|
|
1368
1422
|
constructor(id, options) {
|
|
1369
1423
|
super(id, options);
|
|
@@ -1529,9 +1583,9 @@ var XernerxSlashCommandBuilder = class extends XernerxBaseBuilder {
|
|
|
1529
1583
|
}
|
|
1530
1584
|
}
|
|
1531
1585
|
};
|
|
1532
|
-
var
|
|
1586
|
+
var ContextCommandBuilder = class extends BaseBuilder {
|
|
1533
1587
|
static {
|
|
1534
|
-
__name(this, "
|
|
1588
|
+
__name(this, "ContextCommandBuilder");
|
|
1535
1589
|
}
|
|
1536
1590
|
constructor(id, options) {
|
|
1537
1591
|
super(id, options);
|
|
@@ -1620,17 +1674,28 @@ var XernerxContextCommandBuilder = class extends XernerxBaseBuilder {
|
|
|
1620
1674
|
}
|
|
1621
1675
|
};
|
|
1622
1676
|
|
|
1677
|
+
// src/build/InhibitorBuilder.ts
|
|
1678
|
+
var InhibitorBuilder = class extends BaseBuilder {
|
|
1679
|
+
static {
|
|
1680
|
+
__name(this, "InhibitorBuilder");
|
|
1681
|
+
}
|
|
1682
|
+
constructor(id, options) {
|
|
1683
|
+
super(id, options);
|
|
1684
|
+
this.name = options.name;
|
|
1685
|
+
this.filetype = "XernerxInhibitor";
|
|
1686
|
+
}
|
|
1687
|
+
async pre(...args) {
|
|
1688
|
+
}
|
|
1689
|
+
async post(...args) {
|
|
1690
|
+
}
|
|
1691
|
+
};
|
|
1692
|
+
|
|
1693
|
+
exports.ContextCommandBuilder = ContextCommandBuilder;
|
|
1694
|
+
exports.EventBuilder = EventBuilder;
|
|
1695
|
+
exports.InhibitorBuilder = InhibitorBuilder;
|
|
1696
|
+
exports.MessageCommandBuilder = MessageCommandBuilder;
|
|
1697
|
+
exports.SlashCommandBuilder = SlashCommandBuilder;
|
|
1623
1698
|
exports.XernerxClient = XernerxClient;
|
|
1624
|
-
exports.XernerxContextCommandBuilder = XernerxContextCommandBuilder;
|
|
1625
|
-
exports.XernerxEventBuilder = XernerxEventBuilder;
|
|
1626
|
-
exports.XernerxMessageCommandBuilder = XernerxMessageCommandBuilder;
|
|
1627
1699
|
exports.XernerxShardClient = XernerxShardClient;
|
|
1628
|
-
exports.XernerxSlashCommandBuilder = XernerxSlashCommandBuilder;
|
|
1629
|
-
Object.keys(discord_js).forEach(function (k) {
|
|
1630
|
-
if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
|
|
1631
|
-
enumerable: true,
|
|
1632
|
-
get: function () { return discord_js[k]; }
|
|
1633
|
-
});
|
|
1634
|
-
});
|
|
1635
1700
|
//# sourceMappingURL=main.cjs.map
|
|
1636
1701
|
//# sourceMappingURL=main.cjs.map
|