ActionRow
        
        extends Layout
    
    
            
            in package
            
        
    
    
    
An Action Row is a non-interactive container component for other types of components.
It has a type: 1 and a sub-array of components of other types.
Tags
Table of Contents
Constants
- TYPE_ACTION_ROW = 1
 - Container to display a row of interactive components.
 - TYPE_BUTTON = 2
 - Button object.
 - TYPE_CHANNEL_SELECT = 8
 - Select menu for channels.
 - TYPE_CHECKPOINT_CARD = 20
 - Undocumented.
 - TYPE_CONTAINER = 17
 - Container that visually groups a set of components.
 - TYPE_CONTENT_INVENTORY_ENTRY = 16
 - Undocumented.
 - TYPE_FILE = 13
 - Displays an attached file.
 - TYPE_FILE_UPLOAD = 19
 - Component for uploading files.
 - TYPE_LABEL = 18
 - Container associating a label and description with a component.
 - TYPE_MEDIA_GALLERY = 12
 - Display images and other media.
 - TYPE_MENTIONABLE_SELECT = 7
 - Select menu for mentionables (users and roles).
 - TYPE_ROLE_SELECT = 6
 - Select menu for roles.
 - TYPE_SECTION = 9
 - Container to display text alongside an accessory component.
 - TYPE_SELECT_MENU = 3
 - TYPE_SEPARATOR = 14
 - Component to add vertical padding between other components.
 - TYPE_STRING_SELECT = 3
 - Select menu for picking from defined text options.
 - TYPE_TEXT_DISPLAY = 10
 - Markdown text.
 - TYPE_TEXT_INPUT = 4
 - Text input object.
 - TYPE_THUMBNAIL = 11
 - Small image that can be used as an accessory.
 - TYPE_USER_SELECT = 5
 - Select menu for users.
 - USAGE = ['Message', 'Modal']
 - Usage of ActionRow in Modal is deprecated. Use `Component::Label` as the top-level container.
 
Properties
- $components : array<string|int, ComponentObject>
 - Components contained by the action row.
 - $id : int|null
 - 32 bit integer used as an optional identifier for component.
 - $type : int
 - Component type.
 
Methods
- __get() : mixed
 - Handles dynamic get calls onto the part.
 - __set() : void
 - Handles dynamic set calls onto the part.
 - addComponent() : $this
 - Adds a component to the action row.
 - addComponents() : $this
 - Add a group of components to the action row.
 - clearComponents() : $this
 - Removes all components from the action row.
 - fromPart() : self
 - Creates a new instance of the builder from a given Part.
 - getComponents() : array<string|int, ComponentObject>
 - Returns all the components in the action row.
 - getCustomId() : string|null
 - Returns the custom ID of the button.
 - getType() : int
 - Retrieves the type of the component.
 - jsonSerialize() : array<string|int, mixed>
 - new() : self
 - Creates a new action row.
 - removeComponent() : $this
 - Removes a component from the action row.
 - checkForGetMutator() : string|false
 - Checks if there is a get mutator present.
 - checkForSetMutator() : string|false
 - Checks if there is a set mutator present.
 - generateUuid() : string
 - Generates a UUID which can be used for component custom IDs.
 - getId() : int|null
 - The id field is optional and is used to identify components in the response from an interaction that aren't interactive components.
 - getProperty() : mixed
 - Gets a property on the parent part.
 - setId() : self
 - The id field is optional and is used to identify components in the response from an interaction. The id must be unique within the message and is generated sequentially if left empty. Generation of ids won't use another id that exists in the message if you have one defined for another component. Sending components with an id of 0 is allowed but will be treated as empty and replaced by the API. 32 bit integer used as an optional identifier for component.
 - setProperty() : void
 - Sets an property on the parent part.
 - studly() : string
 - Converts a string to studlyCase.
 
Constants
TYPE_ACTION_ROW
Container to display a row of interactive components.
    public
        mixed
    TYPE_ACTION_ROW
    = 1
    
    
    
    
TYPE_BUTTON
Button object.
    public
        mixed
    TYPE_BUTTON
    = 2
    
    
    
    
TYPE_CHANNEL_SELECT
Select menu for channels.
    public
        mixed
    TYPE_CHANNEL_SELECT
    = 8
    
    
    
    
TYPE_CHECKPOINT_CARD
Undocumented.
    public
        mixed
    TYPE_CHECKPOINT_CARD
    = 20
    
    
    
    
TYPE_CONTAINER
Container that visually groups a set of components.
    public
        mixed
    TYPE_CONTAINER
    = 17
    
    
    
    
TYPE_CONTENT_INVENTORY_ENTRY
Undocumented.
    public
        mixed
    TYPE_CONTENT_INVENTORY_ENTRY
    = 16
    
    
    
    
TYPE_FILE
Displays an attached file.
    public
        mixed
    TYPE_FILE
    = 13
    
    
    
    
TYPE_FILE_UPLOAD
Component for uploading files.
    public
        mixed
    TYPE_FILE_UPLOAD
    = 19
    
    
    
    
TYPE_LABEL
Container associating a label and description with a component.
    public
        mixed
    TYPE_LABEL
    = 18
    
    
    
    
TYPE_MEDIA_GALLERY
Display images and other media.
    public
        mixed
    TYPE_MEDIA_GALLERY
    = 12
    
    
    
    
TYPE_MENTIONABLE_SELECT
Select menu for mentionables (users and roles).
    public
        mixed
    TYPE_MENTIONABLE_SELECT
    = 7
    
    
    
    
TYPE_ROLE_SELECT
Select menu for roles.
    public
        mixed
    TYPE_ROLE_SELECT
    = 6
    
    
    
    
TYPE_SECTION
Container to display text alongside an accessory component.
    public
        mixed
    TYPE_SECTION
    = 9
    
    
    
    
TYPE_SELECT_MENU
Use Component::TYPE_STRING_SELECT
    public
        mixed
    TYPE_SELECT_MENU
    = 3
    
    
    
    
TYPE_SEPARATOR
Component to add vertical padding between other components.
    public
        mixed
    TYPE_SEPARATOR
    = 14
    
    
    
    
TYPE_STRING_SELECT
Select menu for picking from defined text options.
    public
        mixed
    TYPE_STRING_SELECT
    = 3
    
    
    
    
TYPE_TEXT_DISPLAY
Markdown text.
    public
        mixed
    TYPE_TEXT_DISPLAY
    = 10
    
    
    
    
TYPE_TEXT_INPUT
Text input object.
    public
        mixed
    TYPE_TEXT_INPUT
    = 4
    
    
    
    
TYPE_THUMBNAIL
Small image that can be used as an accessory.
    public
        mixed
    TYPE_THUMBNAIL
    = 11
    
    
    
    
TYPE_USER_SELECT
Select menu for users.
    public
        mixed
    TYPE_USER_SELECT
    = 5
    
    
    
    
USAGE
Usage of ActionRow in Modal is deprecated. Use `Component::Label` as the top-level container.
    public
        mixed
    USAGE
    = ['Message', 'Modal']
    
    
    
    
Properties
$components
Components contained by the action row.
        protected
            array<string|int, ComponentObject>
    $components
     = []
    
    
    
    
    
$id
32 bit integer used as an optional identifier for component.
        protected
            int|null
    $id
    
    
    
    
    
    
$type
Component type.
        protected
            int
    $type
     = \Discord\Builders\Components\Component::TYPE_ACTION_ROW
    
    
    
    
    
Methods
__get()
Handles dynamic get calls onto the part.
    public
                    __get(string $key) : mixed
    Parameters
- $key : string
 - 
                    
The attributes key.
 
Tags
Return values
mixed —The value of the attribute.
__set()
Handles dynamic set calls onto the part.
    public
                    __set(string $key, mixed $value) : void
    Parameters
- $key : string
 - 
                    
The attributes key.
 - $value : mixed
 - 
                    
The attributes value.
 
Tags
addComponent()
Adds a component to the action row.
    public
                    addComponent(ComponentObject $component) : $this
    Parameters
- $component : ComponentObject
 - 
                    
Component to add.
 
Tags
Return values
$thisaddComponents()
Add a group of components to the action row.
    public
                    addComponents(array<string|int, ComponentObject> $components) : $this
    Parameters
- $components : array<string|int, ComponentObject>
 - 
                    
Components to add.
 
Tags
Return values
$thisclearComponents()
Removes all components from the action row.
    public
                    clearComponents() : $this
    Return values
$thisfromPart()
Creates a new instance of the builder from a given Part.
    public
            static        fromPart(Part $part) : self
    Parameters
- $part : Part
 
Return values
selfgetComponents()
Returns all the components in the action row.
    public
                    getComponents() : array<string|int, ComponentObject>
    Return values
array<string|int, ComponentObject>getCustomId()
Returns the custom ID of the button.
    public
                    getCustomId() : string|null
    Return values
string|nullgetType()
Retrieves the type of the component.
    public
                    getType() : int
    Return values
intjsonSerialize()
    public
                    jsonSerialize() : array<string|int, mixed>
    Tags
Return values
array<string|int, mixed>new()
Creates a new action row.
    public
            static        new() : self
    Return values
selfremoveComponent()
Removes a component from the action row.
    public
                    removeComponent(ComponentObject $component) : $this
    Parameters
- $component : ComponentObject
 - 
                    
Component to remove.
 
Return values
$thischeckForGetMutator()
Checks if there is a get mutator present.
    protected
                    checkForGetMutator(string $key) : string|false
    Parameters
- $key : string
 - 
                    
The property name to check.
 
Return values
string|false —Either a string if it is a method or false.
checkForSetMutator()
Checks if there is a set mutator present.
    protected
                    checkForSetMutator(string $key) : string|false
    Parameters
- $key : string
 - 
                    
The property name to check.
 
Return values
string|false —Either a string if it is a method or false.
generateUuid()
Generates a UUID which can be used for component custom IDs.
    protected
            static        generateUuid() : string
    Return values
stringgetId()
The id field is optional and is used to identify components in the response from an interaction that aren't interactive components.
    protected
                    getId() : int|null
    The id must be unique within the message and is generated sequentially if left empty. Generation of ids won't use another id that exists in the message if you have one defined for another component.
Return values
int|nullgetProperty()
Gets a property on the parent part.
    protected
                    getProperty(string $key) : mixed
    Parameters
- $key : string
 - 
                    
The name of the property.
 
Tags
Return values
mixed —Either the property if it exists or void.
setId()
The id field is optional and is used to identify components in the response from an interaction. The id must be unique within the message and is generated sequentially if left empty. Generation of ids won't use another id that exists in the message if you have one defined for another component. Sending components with an id of 0 is allowed but will be treated as empty and replaced by the API. 32 bit integer used as an optional identifier for component.
    protected
                    setId([string|null $id = null ]) : self
    Parameters
- $id : string|null = null
 - 
                    
32 bit integer used as an optional identifier for component.
 
Return values
selfsetProperty()
Sets an property on the parent part.
    protected
                    setProperty(string $key, mixed $value) : void
    Parameters
- $key : string
 - 
                    
The name of the property.
 - $value : mixed
 - 
                    
The value of the property.
 
studly()
Converts a string to studlyCase.
    private
            static        studly(string $string) : string
    This is a port of updated Laravel's implementation, a non-regex with static cache. This method is private static as we may move it outside this class in future.
Parameters
- $string : string
 - 
                    
The string to convert.