Skip to content

Commit

Permalink
feat(ApplicationCommandOptionType): add NUMBER (10) (#6128)
Browse files Browse the repository at this point in the history
  • Loading branch information
advaith1 committed Jul 27, 2021
1 parent 4886ae2 commit 2f1cc1f
Show file tree
Hide file tree
Showing 4 changed files with 16 additions and 0 deletions.
11 changes: 11 additions & 0 deletions src/structures/CommandInteractionOptionResolver.js
Expand Up @@ -164,6 +164,17 @@ class CommandInteractionOptionResolver {
return option?.value ?? null;
}

/**
* Gets a number option.
* @param {string} name The name of the option.
* @param {boolean} [required=false] Whether to throw an error if the option is not found.
* @returns {?number} The value of the option, or null if not set and not required.
*/
getNumber(name, required = false) {
const option = this._getTypedOption(name, 'NUMBER', ['value'], required);
return option?.value ?? null;
}

/**
* Gets a user option.
* @param {string} name The name of the option.
Expand Down
2 changes: 2 additions & 0 deletions src/util/Constants.js
Expand Up @@ -861,6 +861,7 @@ exports.OverwriteTypes = createEnum(['role', 'member']);
* * CHANNEL
* * ROLE
* * MENTIONABLE
* * NUMBER
* @typedef {string} ApplicationCommandOptionType
*/
exports.ApplicationCommandOptionTypes = createEnum([
Expand All @@ -874,6 +875,7 @@ exports.ApplicationCommandOptionTypes = createEnum([
'CHANNEL',
'ROLE',
'MENTIONABLE',
'NUMBER',
]);

/**
Expand Down
1 change: 1 addition & 0 deletions typings/enums.d.ts
Expand Up @@ -20,6 +20,7 @@ export enum ApplicationCommandOptionTypes {
CHANNEL = 7,
ROLE = 8,
MENTIONABLE = 9,
NUMBER = 10,
}

export enum ApplicationCommandPermissionTypes {
Expand Down
2 changes: 2 additions & 0 deletions typings/index.d.ts
Expand Up @@ -460,6 +460,8 @@ export class CommandInteractionOptionResolver {
public getString(name: string, required?: boolean): string | null;
public getInteger(name: string, required: true): number;
public getInteger(name: string, required?: boolean): number | null;
public getNumber(name: string, required: true): number;
public getNumber(name: string, required?: boolean): number | null;
public getUser(name: string, required: true): NonNullable<CommandInteractionOption['user']>;
public getUser(name: string, required?: boolean): NonNullable<CommandInteractionOption['user']> | null;
public getMember(name: string, required: true): NonNullable<CommandInteractionOption['member']>;
Expand Down

0 comments on commit 2f1cc1f

Please sign in to comment.