xernerx 4.4.4 → 4.4.6

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.
Files changed (42) hide show
  1. package/dist/build/ContextCommandBuilder.d.ts +26 -33
  2. package/dist/build/ContextCommandBuilder.js +38 -38
  3. package/dist/build/EventBuilder.d.ts +3 -1
  4. package/dist/build/EventBuilder.js +1 -1
  5. package/dist/build/InhibitorBuilder.d.ts +5 -3
  6. package/dist/build/InhibitorBuilder.js +1 -1
  7. package/dist/build/MessageCommandBuilder.d.ts +24 -28
  8. package/dist/build/MessageCommandBuilder.js +33 -33
  9. package/dist/build/SlashCommandBuilder.d.ts +29 -34
  10. package/dist/build/SlashCommandBuilder.js +47 -47
  11. package/dist/client/XernerxClient.d.ts +21 -29
  12. package/dist/client/XernerxClient.js +32 -32
  13. package/dist/client/XernerxShardClient.js +3 -5
  14. package/dist/functions/deploy.js +15 -12
  15. package/dist/functions/load.js +2 -1
  16. package/dist/functions/reload.js +11 -8
  17. package/dist/functions/sendWebhook.js +2 -1
  18. package/dist/functions/setPresence.d.ts +1 -1
  19. package/dist/functions/setPresence.js +10 -11
  20. package/dist/handlers/CommandHandler.js +104 -81
  21. package/dist/handlers/EventHandler.js +2 -2
  22. package/dist/handlers/ExtensionHandler.js +4 -2
  23. package/dist/handlers/Handler.js +15 -5
  24. package/dist/handlers/InhibitorHandler.js +2 -2
  25. package/dist/handlers/WebhookHandler.d.ts +3 -1
  26. package/dist/handlers/WebhookHandler.js +5 -8
  27. package/dist/main.d.ts +21 -28
  28. package/dist/main.js +21 -28
  29. package/dist/models/Arguments.d.ts +1 -8
  30. package/dist/models/Arguments.js +72 -51
  31. package/dist/tools/XernerxLog.js +1 -6
  32. package/dist/types/extenders.d.ts +8 -4
  33. package/dist/types/interfaces.d.ts +6 -12
  34. package/dist/types/types.d.ts +5 -173
  35. package/dist/utils/ClientUtil.d.ts +3 -3
  36. package/dist/utils/ClientUtil.js +13 -7
  37. package/dist/utils/InteractionUtil.d.ts +1 -1
  38. package/dist/utils/MessageUtil.d.ts +1 -1
  39. package/dist/utils/MessageUtil.js +8 -4
  40. package/dist/validators/commandValidation.js +28 -18
  41. package/dist/validators/inhibitorValidations.d.ts +1 -14
  42. package/package.json +1 -1
@@ -16,7 +16,8 @@ export default class MessageUtil extends Util {
16
16
  async reply(content) {
17
17
  if (this.client.cache.messages.has(this.message.id)) {
18
18
  const id = this.client.cache.messages.get(this.message.id);
19
- if (!id) return;
19
+ if (!id)
20
+ return;
20
21
  const msg = await this.message.channel.messages.fetch(id);
21
22
  msg.edit(content);
22
23
  return msg;
@@ -26,7 +27,8 @@ export default class MessageUtil extends Util {
26
27
  return msg;
27
28
  }
28
29
  async webhookReply(content, url, user) {
29
- if (this.message.channel.type === ChannelType.DM) throw new XernerxError(`Can't use this method in DM Channels`);
30
+ if (this.message.channel.type === ChannelType.DM)
31
+ throw new XernerxError(`Can't use this method in DM Channels`);
30
32
  const channel = this.message.channel;
31
33
  let webhook;
32
34
  if (!url) {
@@ -35,9 +37,11 @@ export default class MessageUtil extends Util {
35
37
  avatar: user?.avatarURL() || this.client.user?.avatarURL(),
36
38
  });
37
39
  }
38
- if (!webhook) webhook = { url };
40
+ if (!webhook)
41
+ webhook = { url };
39
42
  await sendWebhook(webhook.url, content);
40
- if (!url) webhook.delete();
43
+ if (!url)
44
+ webhook.delete();
41
45
  return;
42
46
  }
43
47
  async delay(time) {
@@ -1,7 +1,8 @@
1
1
  import { ChannelType, PermissionFlagsBits } from 'discord.js';
2
2
  export default async function commandValidation(event, command) {
3
3
  const client = event.client;
4
- if (command.ignore?.owner && client.settings.ownerId.includes(event.user.id)) return false;
4
+ if (command.ignore?.owner && client.settings.ownerId.includes(event.user.id))
5
+ return false;
5
6
  if (!client.cache.cooldowns.has(`${event.user.id}-${command.name}`)) {
6
7
  client.cache.cooldowns.set(`${event.user.id}-${command.name}`, {
7
8
  id: event.user.id,
@@ -11,21 +12,31 @@ export default async function commandValidation(event, command) {
11
12
  setTimeout(() => {
12
13
  client.cache.cooldowns.delete(`${event.user.id}-${command.name}`);
13
14
  }, command.cooldown || 0);
14
- } else {
15
+ }
16
+ else {
15
17
  const user = client.cache.cooldowns.get(`${event.user.id}-${command.name}`);
16
18
  const time = (user?.createdTimestamp || 0) - Number(Date.now());
17
19
  return emit(event, `Command on cooldown, ${time}`);
18
20
  }
19
- if ((command.ignore?.channels?.length || 0) > 0 && command.ignore?.channels?.includes(event.channel?.id)) return true;
20
- if ((command.ignore?.guilds?.length || 0) > 0 && command.ignore?.guilds?.includes(event.guild?.id)) return true;
21
- if ((command.ignore?.users?.length || 0) > 0 && command.ignore?.users?.includes(event.user.id)) return true;
22
- if (command.strict?.owner && !client.settings.ownerId.includes(event.user.id)) return await emit(event, 'Command is a developer command');
23
- if ((command.strict?.channels?.length || 0) > 0 && !command.strict?.channels?.includes(event.channel?.id)) return await emit(event, 'Command cannot be ran in this channel');
24
- if ((command.strict?.guilds?.length || 0) > 0 && !command.strict?.guilds?.includes(event.guild?.id)) return await emit(event, 'Command cannot be ran in this guild');
25
- if ((command.strict?.users?.length || 0) > 0 && !command.strict?.users?.includes(event.user.id)) return await emit(event, 'Command cannot be ran by you');
26
- if (command.permissions?.dm == false && event.channel?.type === ChannelType.DM) return await emit(event, "Can't use in a DM Channel");
21
+ if ((command.ignore?.channels?.length || 0) > 0 && command.ignore?.channels?.includes(event.channel?.id))
22
+ return true;
23
+ if ((command.ignore?.guilds?.length || 0) > 0 && command.ignore?.guilds?.includes(event.guild?.id))
24
+ return true;
25
+ if ((command.ignore?.users?.length || 0) > 0 && command.ignore?.users?.includes(event.user.id))
26
+ return true;
27
+ if (command.strict?.owner && !client.settings.ownerId.includes(event.user.id))
28
+ return await emit(event, 'Command is a developer command');
29
+ if ((command.strict?.channels?.length || 0) > 0 && !command.strict?.channels?.includes(event.channel?.id))
30
+ return await emit(event, 'Command cannot be ran in this channel');
31
+ if ((command.strict?.guilds?.length || 0) > 0 && !command.strict?.guilds?.includes(event.guild?.id))
32
+ return await emit(event, 'Command cannot be ran in this guild');
33
+ if ((command.strict?.users?.length || 0) > 0 && !command.strict?.users?.includes(event.user.id))
34
+ return await emit(event, 'Command cannot be ran by you');
35
+ if (command.permissions?.dm == false && event.channel?.type === ChannelType.DM)
36
+ return await emit(event, "Can't use in a DM Channel");
27
37
  if (command.permissions?.user) {
28
- if (!(event.member?.permissions).has(toBigInt(command.permissions.user))) return await emit(event, 'Missing User Permissions');
38
+ if (!(event.member?.permissions).has(toBigInt(command.permissions.user)))
39
+ return await emit(event, 'Missing User Permissions');
29
40
  }
30
41
  return false;
31
42
  }
@@ -37,13 +48,12 @@ function toBigInt(permissions) {
37
48
  let bigIntPermissions = 0n;
38
49
  permissions.map((permission) => {
39
50
  permission =
40
- PermissionFlagsBits[
41
- permission
42
- .split(/ +/)
43
- .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
44
- .join('')
45
- ];
46
- if (typeof permission === 'bigint') bigIntPermissions += permission;
51
+ PermissionFlagsBits[permission
52
+ .split(/ +/)
53
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase())
54
+ .join('')];
55
+ if (typeof permission === 'bigint')
56
+ bigIntPermissions += permission;
47
57
  });
48
58
  return bigIntPermissions;
49
59
  }
@@ -2,17 +2,4 @@ import { ContextCommandBuilder, MessageCommandBuilder, SlashCommandBuilder } fro
2
2
  import { XernerxMessage } from '../types/extenders.js';
3
3
  import { InhibitorType, XernerxInteraction } from '../types/types.js';
4
4
  export declare function inhibitorValidation(event: XernerxMessage | XernerxInteraction, cmd?: ContextCommandBuilder | MessageCommandBuilder | SlashCommandBuilder): Promise<boolean>;
5
- export declare function inhibitorArguments(
6
- event: XernerxMessage | XernerxInteraction,
7
- cmd: ContextCommandBuilder | MessageCommandBuilder | SlashCommandBuilder | null,
8
- type: InhibitorType
9
- ):
10
- | import('discord.js').Guild
11
- | import('discord.js').GuildMember
12
- | import('discord.js').TextBasedChannel
13
- | import('discord.js').User
14
- | SlashCommandBuilder
15
- | ContextCommandBuilder
16
- | MessageCommandBuilder
17
- | import('../main.js').APIInteractionGuildMember
18
- | null;
5
+ export declare function inhibitorArguments(event: XernerxMessage | XernerxInteraction, cmd: ContextCommandBuilder | MessageCommandBuilder | SlashCommandBuilder | null, type: InhibitorType): import("discord.js").Guild | import("discord.js").GuildMember | import("discord.js").TextBasedChannel | import("discord.js").User | SlashCommandBuilder | ContextCommandBuilder | MessageCommandBuilder | import("../main.js").APIInteractionGuildMember | null;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "xernerx",
3
- "version": "4.4.4",
3
+ "version": "4.4.6",
4
4
  "description": "A bot framework for discord.js.",
5
5
  "main": "dist/main.js",
6
6
  "type": "module",