trivious 2.1.11 → 2.1.12

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.
@@ -37,12 +37,14 @@ var interactionCreate_default = {
37
37
  });
38
38
  return;
39
39
  }
40
- const hasPermission = validateMemberPermissionsForSubcommand(client, command, interaction) || canMemberRunCommand(client, command, interaction.member);
41
- if (!hasPermission[0]) {
40
+ const subcommandPerms = validateMemberPermissionsForSubcommand(client, command, interaction);
41
+ const commandPerms = canMemberRunCommand(client, command, interaction.member);
42
+ const hasPermission = subcommandPerms[0] || commandPerms[0] ? true : false;
43
+ if (!hasPermission) {
42
44
  await interactionReply({
43
45
  interaction,
44
46
  replyPayload: {
45
- content: `You do not have permission to run this command: ${hasPermission[1]}`
47
+ content: `You do not have permission to run this command`
46
48
  },
47
49
  flags: ["EphemeralReply"]
48
50
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/features/events/presets/interactionCreate.ts"],"names":["subcommand"],"mappings":"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","file":"interactionCreate.js","sourcesContent":["import {\n\tComponentContext,\n\tSlashCommandData,\n\tTriviousClient,\n\ttype ContextCommandData,\n\ttype Event,\n} from \"#typings\";\nimport {\n\tApplicationCommandType,\n\tButtonInteraction,\n\tChatInputCommandInteraction,\n\tGuildMember,\n\tMessageContextMenuCommandInteraction,\n\tModalSubmitInteraction,\n\tUserContextMenuCommandInteraction,\n} from \"discord.js\";\nimport { handleSlashCommand, interactionReply } from \"src/features/commands/methods.commands.js\";\nimport customId from \"src/features/customId/methods.customid.js\";\nimport { canMemberRunCommand } from \"src/features/permissions/methods.permissions.js\";\n\n/**\n * Check if the command is a subcommand and validate whether the member can run the command based on subcommand permissions\n */\nfunction validateMemberPermissionsForSubcommand(\n\tclient: TriviousClient,\n\tcommand: SlashCommandData | ContextCommandData,\n\tinteraction:\n\t\t| ChatInputCommandInteraction\n\t\t| MessageContextMenuCommandInteraction\n\t\t| UserContextMenuCommandInteraction\n): [boolean, string] {\n\tif (!(\"subcommands\" in command)) return [false, \"Cannot validate subcommand permissions\"];\n\tif (!interaction.isChatInputCommand()) return [false, \"Cannot validate subcommand permissions\"];\n\n\tconst { options } = interaction;\n\n\tconst subcommandName = options.getSubcommand(false);\n\tconst groupName = options.getSubcommandGroup(false);\n\tif (!subcommandName) return [false, \"Cannot validate subcommand permissions\"];\n\n\tif (groupName) {\n\t\tconst group = command.subcommandGroups?.get(groupName);\n\t\tif (!group) return [false, \"Cannot validate subcommand permissions\"];\n\n\t\tconst subcommand = group.subcommands.get(subcommandName);\n\t\tif (!subcommand) return [false, \"Cannot validate subcommand permissions\"];\n\n\t\treturn canMemberRunCommand(client, subcommand, interaction.member as GuildMember);\n\t}\n\n\tconst subcommand = command.subcommands?.get(subcommandName);\n\tif (!subcommand) return [false, \"Cannot validate subcommand permissions\"];\n\n\treturn canMemberRunCommand(client, subcommand, interaction.member as GuildMember);\n}\n\nexport default {\n\tname: \"interactionCreate\",\n\tasync execute(client, interaction) {\n\t\tif (interaction.isChatInputCommand() || interaction.isContextMenuCommand()) {\n\t\t\tconst { commandName } = interaction;\n\n\t\t\tconst storeToCheck = interaction.isChatInputCommand()\n\t\t\t\t? client.stores.commands.chatInput\n\t\t\t\t: client.stores.commands.context;\n\t\t\tconst command = storeToCheck.get(commandName);\n\n\t\t\tif (!command) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: { content: \"Command is outdated, inactive, or does not have a handler!\" },\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst hasPermission =\n\t\t\t\tvalidateMemberPermissionsForSubcommand(client, command, interaction) ||\n\t\t\t\tcanMemberRunCommand(client, command, interaction.member as GuildMember);\n\t\t\tif (!hasPermission[0]) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: {\n\t\t\t\t\t\tcontent: `You do not have permission to run this command: ${hasPermission[1]}`,\n\t\t\t\t\t},\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tcommand.commandType === ApplicationCommandType.ChatInput &&\n\t\t\t\tinteraction.isChatInputCommand()\n\t\t\t) {\n\t\t\t\tawait handleSlashCommand(client, command, interaction);\n\t\t\t} else {\n\t\t\t\tawait (command as ContextCommandData).execute(client, interaction as never);\n\t\t\t}\n\t\t} else if (interaction.isMessageComponent() || interaction.isModalSubmit()) {\n\t\t\tconst { context, identifier, tags } = customId.decode(interaction.customId);\n\n\t\t\tif (context === ComponentContext.Button && !(interaction instanceof ButtonInteraction))\n\t\t\t\treturn;\n\t\t\tif (context === ComponentContext.Modal && !(interaction instanceof ModalSubmitInteraction))\n\t\t\t\treturn;\n\t\t\tif (tags && tags.includes(\"awaited\")) return;\n\n\t\t\tconst component = client.stores.components.get(identifier);\n\n\t\t\tif (!component) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: { content: \"Command is outdated, inactive, or does not have a handler!\" },\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst hasPermission = canMemberRunCommand(\n\t\t\t\tclient,\n\t\t\t\tcomponent,\n\t\t\t\tinteraction.member as GuildMember\n\t\t\t);\n\t\t\tif (!hasPermission) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: { content: \"You do not have permission to use this component\" },\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tawait component.execute(client, interaction);\n\t\t}\n\t},\n} satisfies Event<\"interactionCreate\">;\n"]}
1
+ {"version":3,"sources":["../../../../src/features/events/presets/interactionCreate.ts"],"names":["subcommand"],"mappings":"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","file":"interactionCreate.js","sourcesContent":["import {\n\tComponentContext,\n\tSlashCommandData,\n\tTriviousClient,\n\ttype ContextCommandData,\n\ttype Event,\n} from \"#typings\";\nimport {\n\tApplicationCommandType,\n\tButtonInteraction,\n\tChatInputCommandInteraction,\n\tGuildMember,\n\tMessageContextMenuCommandInteraction,\n\tModalSubmitInteraction,\n\tUserContextMenuCommandInteraction,\n} from \"discord.js\";\nimport { handleSlashCommand, interactionReply } from \"src/features/commands/methods.commands.js\";\nimport customId from \"src/features/customId/methods.customid.js\";\nimport { canMemberRunCommand } from \"src/features/permissions/methods.permissions.js\";\n\n/**\n * Check if the command is a subcommand and validate whether the member can run the command based on subcommand permissions\n */\nfunction validateMemberPermissionsForSubcommand(\n\tclient: TriviousClient,\n\tcommand: SlashCommandData | ContextCommandData,\n\tinteraction:\n\t\t| ChatInputCommandInteraction\n\t\t| MessageContextMenuCommandInteraction\n\t\t| UserContextMenuCommandInteraction\n): [boolean, string] {\n\tif (!(\"subcommands\" in command)) return [false, \"Cannot validate subcommand permissions\"];\n\tif (!interaction.isChatInputCommand()) return [false, \"Cannot validate subcommand permissions\"];\n\n\tconst { options } = interaction;\n\n\tconst subcommandName = options.getSubcommand(false);\n\tconst groupName = options.getSubcommandGroup(false);\n\tif (!subcommandName) return [false, \"Cannot validate subcommand permissions\"];\n\n\tif (groupName) {\n\t\tconst group = command.subcommandGroups?.get(groupName);\n\t\tif (!group) return [false, \"Cannot validate subcommand permissions\"];\n\n\t\tconst subcommand = group.subcommands.get(subcommandName);\n\t\tif (!subcommand) return [false, \"Cannot validate subcommand permissions\"];\n\n\t\treturn canMemberRunCommand(client, subcommand, interaction.member as GuildMember);\n\t}\n\n\tconst subcommand = command.subcommands?.get(subcommandName);\n\tif (!subcommand) return [false, \"Cannot validate subcommand permissions\"];\n\n\treturn canMemberRunCommand(client, subcommand, interaction.member as GuildMember);\n}\n\nexport default {\n\tname: \"interactionCreate\",\n\tasync execute(client, interaction) {\n\t\tif (interaction.isChatInputCommand() || interaction.isContextMenuCommand()) {\n\t\t\tconst { commandName } = interaction;\n\n\t\t\tconst storeToCheck = interaction.isChatInputCommand()\n\t\t\t\t? client.stores.commands.chatInput\n\t\t\t\t: client.stores.commands.context;\n\t\t\tconst command = storeToCheck.get(commandName);\n\n\t\t\tif (!command) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: { content: \"Command is outdated, inactive, or does not have a handler!\" },\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst subcommandPerms = validateMemberPermissionsForSubcommand(client, command, interaction);\n\t\t\tconst commandPerms = canMemberRunCommand(client, command, interaction.member as GuildMember);\n\t\t\tconst hasPermission = subcommandPerms[0] || commandPerms[0] ? true : false;\n\t\t\tif (!hasPermission) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: {\n\t\t\t\t\t\tcontent: `You do not have permission to run this command`,\n\t\t\t\t\t},\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (\n\t\t\t\tcommand.commandType === ApplicationCommandType.ChatInput &&\n\t\t\t\tinteraction.isChatInputCommand()\n\t\t\t) {\n\t\t\t\tawait handleSlashCommand(client, command, interaction);\n\t\t\t} else {\n\t\t\t\tawait (command as ContextCommandData).execute(client, interaction as never);\n\t\t\t}\n\t\t} else if (interaction.isMessageComponent() || interaction.isModalSubmit()) {\n\t\t\tconst { context, identifier, tags } = customId.decode(interaction.customId);\n\n\t\t\tif (context === ComponentContext.Button && !(interaction instanceof ButtonInteraction))\n\t\t\t\treturn;\n\t\t\tif (context === ComponentContext.Modal && !(interaction instanceof ModalSubmitInteraction))\n\t\t\t\treturn;\n\t\t\tif (tags && tags.includes(\"awaited\")) return;\n\n\t\t\tconst component = client.stores.components.get(identifier);\n\n\t\t\tif (!component) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: { content: \"Command is outdated, inactive, or does not have a handler!\" },\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst hasPermission = canMemberRunCommand(\n\t\t\t\tclient,\n\t\t\t\tcomponent,\n\t\t\t\tinteraction.member as GuildMember\n\t\t\t);\n\t\t\tif (!hasPermission) {\n\t\t\t\tawait interactionReply({\n\t\t\t\t\tinteraction,\n\t\t\t\t\treplyPayload: { content: \"You do not have permission to use this component\" },\n\t\t\t\t\tflags: [\"EphemeralReply\"],\n\t\t\t\t});\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tawait component.execute(client, interaction);\n\t\t}\n\t},\n} satisfies Event<\"interactionCreate\">;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trivious",
3
- "version": "2.1.11",
3
+ "version": "2.1.12",
4
4
  "type": "module",
5
5
  "keywords": [
6
6
  "discord-bot",