mirror of
https://github.com/discordjs/discord.js.git
synced 2026-03-19 04:53:30 +01:00
fix(builders): allow negative min/max value of number/integer option (#7484)
This commit is contained in:
@@ -39,7 +39,7 @@ const getIntegerOption = () =>
|
|||||||
.setName('owo')
|
.setName('owo')
|
||||||
.setDescription('Testing 123')
|
.setDescription('Testing 123')
|
||||||
.setRequired(true)
|
.setRequired(true)
|
||||||
.setMinValue(1)
|
.setMinValue(-1)
|
||||||
.setMaxValue(10);
|
.setMaxValue(10);
|
||||||
|
|
||||||
const getNumberOption = () =>
|
const getNumberOption = () =>
|
||||||
@@ -47,7 +47,7 @@ const getNumberOption = () =>
|
|||||||
.setName('owo')
|
.setName('owo')
|
||||||
.setDescription('Testing 123')
|
.setDescription('Testing 123')
|
||||||
.setRequired(true)
|
.setRequired(true)
|
||||||
.setMinValue(1)
|
.setMinValue(-1.23)
|
||||||
.setMaxValue(10);
|
.setMaxValue(10);
|
||||||
|
|
||||||
const getUserOption = () => new SlashCommandUserOption().setName('owo').setDescription('Testing 123').setRequired(true);
|
const getUserOption = () => new SlashCommandUserOption().setName('owo').setDescription('Testing 123').setRequired(true);
|
||||||
@@ -84,7 +84,7 @@ describe('Application Command toJSON() results', () => {
|
|||||||
type: ApplicationCommandOptionType.Integer,
|
type: ApplicationCommandOptionType.Integer,
|
||||||
required: true,
|
required: true,
|
||||||
max_value: 10,
|
max_value: 10,
|
||||||
min_value: 1,
|
min_value: -1,
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(getIntegerOption().setAutocomplete(true).setChoices().toJSON()).toEqual<APIApplicationCommandIntegerOption>({
|
expect(getIntegerOption().setAutocomplete(true).setChoices().toJSON()).toEqual<APIApplicationCommandIntegerOption>({
|
||||||
@@ -93,7 +93,7 @@ describe('Application Command toJSON() results', () => {
|
|||||||
type: ApplicationCommandOptionType.Integer,
|
type: ApplicationCommandOptionType.Integer,
|
||||||
required: true,
|
required: true,
|
||||||
max_value: 10,
|
max_value: 10,
|
||||||
min_value: 1,
|
min_value: -1,
|
||||||
autocomplete: true,
|
autocomplete: true,
|
||||||
// @ts-expect-error TODO: you *can* send an empty array with autocomplete: true, should correct that in types
|
// @ts-expect-error TODO: you *can* send an empty array with autocomplete: true, should correct that in types
|
||||||
choices: [],
|
choices: [],
|
||||||
@@ -107,7 +107,7 @@ describe('Application Command toJSON() results', () => {
|
|||||||
type: ApplicationCommandOptionType.Integer,
|
type: ApplicationCommandOptionType.Integer,
|
||||||
required: true,
|
required: true,
|
||||||
max_value: 10,
|
max_value: 10,
|
||||||
min_value: 1,
|
min_value: -1,
|
||||||
choices: [{ name: 'uwu', value: 1 }],
|
choices: [{ name: 'uwu', value: 1 }],
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -128,7 +128,7 @@ describe('Application Command toJSON() results', () => {
|
|||||||
type: ApplicationCommandOptionType.Number,
|
type: ApplicationCommandOptionType.Number,
|
||||||
required: true,
|
required: true,
|
||||||
max_value: 10,
|
max_value: 10,
|
||||||
min_value: 1,
|
min_value: -1.23,
|
||||||
});
|
});
|
||||||
|
|
||||||
expect(getNumberOption().setAutocomplete(true).setChoices().toJSON()).toEqual<APIApplicationCommandNumberOption>({
|
expect(getNumberOption().setAutocomplete(true).setChoices().toJSON()).toEqual<APIApplicationCommandNumberOption>({
|
||||||
@@ -137,7 +137,7 @@ describe('Application Command toJSON() results', () => {
|
|||||||
type: ApplicationCommandOptionType.Number,
|
type: ApplicationCommandOptionType.Number,
|
||||||
required: true,
|
required: true,
|
||||||
max_value: 10,
|
max_value: 10,
|
||||||
min_value: 1,
|
min_value: -1.23,
|
||||||
autocomplete: true,
|
autocomplete: true,
|
||||||
// @ts-expect-error TODO: you *can* send an empty array with autocomplete: true, should correct that in types
|
// @ts-expect-error TODO: you *can* send an empty array with autocomplete: true, should correct that in types
|
||||||
choices: [],
|
choices: [],
|
||||||
@@ -149,7 +149,7 @@ describe('Application Command toJSON() results', () => {
|
|||||||
type: ApplicationCommandOptionType.Number,
|
type: ApplicationCommandOptionType.Number,
|
||||||
required: true,
|
required: true,
|
||||||
max_value: 10,
|
max_value: 10,
|
||||||
min_value: 1,
|
min_value: -1.23,
|
||||||
choices: [{ name: 'uwu', value: 1 }],
|
choices: [{ name: 'uwu', value: 1 }],
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { ApplicationCommandNumericOptionMinMaxValueMixin } from '../mixins/Appli
|
|||||||
import { ApplicationCommandOptionBase } from '../mixins/ApplicationCommandOptionBase';
|
import { ApplicationCommandOptionBase } from '../mixins/ApplicationCommandOptionBase';
|
||||||
import { ApplicationCommandOptionWithChoicesAndAutocompleteMixin } from '../mixins/ApplicationCommandOptionWithChoicesAndAutocompleteMixin';
|
import { ApplicationCommandOptionWithChoicesAndAutocompleteMixin } from '../mixins/ApplicationCommandOptionWithChoicesAndAutocompleteMixin';
|
||||||
|
|
||||||
const numberValidator = z.number().int().nonnegative();
|
const numberValidator = z.number().int();
|
||||||
|
|
||||||
@mix(ApplicationCommandNumericOptionMinMaxValueMixin, ApplicationCommandOptionWithChoicesAndAutocompleteMixin)
|
@mix(ApplicationCommandNumericOptionMinMaxValueMixin, ApplicationCommandOptionWithChoicesAndAutocompleteMixin)
|
||||||
export class SlashCommandIntegerOption
|
export class SlashCommandIntegerOption
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { ApplicationCommandNumericOptionMinMaxValueMixin } from '../mixins/Appli
|
|||||||
import { ApplicationCommandOptionBase } from '../mixins/ApplicationCommandOptionBase';
|
import { ApplicationCommandOptionBase } from '../mixins/ApplicationCommandOptionBase';
|
||||||
import { ApplicationCommandOptionWithChoicesAndAutocompleteMixin } from '../mixins/ApplicationCommandOptionWithChoicesAndAutocompleteMixin';
|
import { ApplicationCommandOptionWithChoicesAndAutocompleteMixin } from '../mixins/ApplicationCommandOptionWithChoicesAndAutocompleteMixin';
|
||||||
|
|
||||||
const numberValidator = z.number().nonnegative();
|
const numberValidator = z.number();
|
||||||
|
|
||||||
@mix(ApplicationCommandNumericOptionMinMaxValueMixin, ApplicationCommandOptionWithChoicesAndAutocompleteMixin)
|
@mix(ApplicationCommandNumericOptionMinMaxValueMixin, ApplicationCommandOptionWithChoicesAndAutocompleteMixin)
|
||||||
export class SlashCommandNumberOption
|
export class SlashCommandNumberOption
|
||||||
|
|||||||
Reference in New Issue
Block a user