fix: Allow mixing subcommands with subcommand groups (#11303)

fix: allow subcommand with groups

Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
This commit is contained in:
Jiralite
2025-11-30 16:48:19 +00:00
committed by GitHub
parent 8162ae8ce0
commit a57b4d4d29
2 changed files with 31 additions and 2 deletions

View File

@@ -127,8 +127,14 @@ const baseChatInputCommandPredicate = sharedNameAndDescriptionPredicate.extend({
// Because you can only add options via builders, there's no need to validate whole objects here otherwise
const chatInputCommandOptionsPredicate = z.union([
z.object({ type: basicOptionTypesPredicate }).array(),
z.object({ type: z.literal(ApplicationCommandOptionType.Subcommand) }).array(),
z.object({ type: z.literal(ApplicationCommandOptionType.SubcommandGroup) }).array(),
z
.object({
type: z.union([
z.literal(ApplicationCommandOptionType.Subcommand),
z.literal(ApplicationCommandOptionType.SubcommandGroup),
]),
})
.array(),
]);
export const chatInputCommandPredicate = baseChatInputCommandPredicate.extend({