Option
extends Component
in package
Option for select menu component.
Tags
Table of Contents
- TYPE_ACTION_ROW = 1
- TYPE_BUTTON = 2
- TYPE_CHANNEL_SELECT = 8
- TYPE_MENTIONABLE_SELECT = 7
- TYPE_ROLE_SELECT = 6
- TYPE_SELECT_MENU = 3
- TYPE_STRING_SELECT = 3
- TYPE_TEXT_INPUT = 4
- TYPE_USER_SELECT = 5
- $default : bool
- Whether the option should be enabled as default.
- $description : string|null
- Description for the option. Maximum 50 characters.
- $emoji : array<string|int, mixed>|null
- Emoji to display alongside the option.
- $label : string
- User-visible label of the option. Maximum 25 characters.
- $value : string
- Developer value for the option. Maximum 100 characters.
- __construct() : mixed
- Creates a new select menu option.
- getDescription() : string|null
- Returns the description for the option.
- getEmoji() : array<string|int, mixed>|null
- Returns the emoji display alongside the option.
- getLabel() : string
- Returns the user-visible label for the option.
- getValue() : string
- Returns the developer value for the option.
- isDefault() : bool
- Returns whether the option is default.
- jsonSerialize() : array<string|int, mixed>
- {@inheritDoc}
- new() : self
- Creates a new select menu option.
- setDefault() : $this
- Sets the option as default. Pass false to set as non-default.
- setDescription() : $this
- Sets the description of the option.
- setEmoji() : $this
- Sets the emoji of the option.
- generateUuid() : string
- Generates a UUID which can be used for component custom IDs.
Constants
TYPE_ACTION_ROW
public
mixed
TYPE_ACTION_ROW
= 1
TYPE_BUTTON
public
mixed
TYPE_BUTTON
= 2
TYPE_CHANNEL_SELECT
public
mixed
TYPE_CHANNEL_SELECT
= 8
TYPE_MENTIONABLE_SELECT
public
mixed
TYPE_MENTIONABLE_SELECT
= 7
TYPE_ROLE_SELECT
public
mixed
TYPE_ROLE_SELECT
= 6
TYPE_SELECT_MENU
public
mixed
TYPE_SELECT_MENU
= 3
Tags
TYPE_STRING_SELECT
public
mixed
TYPE_STRING_SELECT
= 3
TYPE_TEXT_INPUT
public
mixed
TYPE_TEXT_INPUT
= 4
TYPE_USER_SELECT
public
mixed
TYPE_USER_SELECT
= 5
Properties
$default
Whether the option should be enabled as default.
private
bool
$default
= false
$description
Description for the option. Maximum 50 characters.
private
string|null
$description
$emoji
Emoji to display alongside the option.
private
array<string|int, mixed>|null
$emoji
$label
User-visible label of the option. Maximum 25 characters.
private
string
$label
$value
Developer value for the option. Maximum 100 characters.
private
string
$value
Methods
__construct()
Creates a new select menu option.
public
__construct(string $label, string|null $value) : mixed
Parameters
- $label : string
-
User-visible label for the option. Maximum 100 characters.
- $value : string|null
-
Developer value for the option. Maximum 100 characters. Leave as null to automatically generate a UUID.
Tags
Return values
mixed —getDescription()
Returns the description for the option.
public
getDescription() : string|null
Return values
string|null —getEmoji()
Returns the emoji display alongside the option.
public
getEmoji() : array<string|int, mixed>|null
Return values
array<string|int, mixed>|null —getLabel()
Returns the user-visible label for the option.
public
getLabel() : string
Return values
string —getValue()
Returns the developer value for the option.
public
getValue() : string
Return values
string —isDefault()
Returns whether the option is default.
public
isDefault() : bool
Return values
bool —jsonSerialize()
{@inheritDoc}
public
jsonSerialize() : array<string|int, mixed>
Return values
array<string|int, mixed> —new()
Creates a new select menu option.
public
static new(string $label[, string|null $value = null ]) : self
Parameters
- $label : string
-
User-visible label for the option. Maximum 25 characters.
- $value : string|null = null
-
Developer value for the option. Maximum 100 characters. Leave as null to automatically generate a UUID.
Return values
self —setDefault()
Sets the option as default. Pass false to set as non-default.
public
setDefault([bool $default = true ]) : $this
Parameters
- $default : bool = true
Return values
$this —setDescription()
Sets the description of the option.
public
setDescription(string|null $description) : $this
Parameters
- $description : string|null
-
Description of the option. Maximum 100 characters.
null
to clear.
Tags
Return values
$this —setEmoji()
Sets the emoji of the option.
public
setEmoji(Emoji|string|null $emoji) : $this
Parameters
- $emoji : Emoji|string|null
-
Emoji to set.
null
to clear.
Return values
$this —generateUuid()
Generates a UUID which can be used for component custom IDs.
protected
static generateUuid() : string