Button Element
The ButtonElement
class, inherited from the BaseInteractiveElement
class, represents an interactive button element that can be added to a chat interface. It comprises of properties like button text and a flag indicating whether the button should be disabled after interaction.
Constructor
Name | Type | Description |
---|---|---|
elementId | string | A unique identifier for the button element |
action | APIAction | URLNavigationAction | CustomAction | The action to be performed when the button is clicked |
buttonText | string | The text to be displayed on the button. This value is an empty string by default |
Class Usage
How to create an instance of the ButtonElement
class:
- Typescript
// Create an instance of APIAction
let apiAction = new APIAction("https://example.com/api", "POST");
// Create a new instance of ButtonElement
let buttonElement = new ButtonElement("1", apiAction, "Submit");
In this example, a new instance of ButtonElement
is created with an elementId "1", an APIAction
as an action, and "Submit" as the button text.
Key Properties and Methods
Button Interaction Property
The setDisableAfterInteracted()
method allows changing this property. It accepts a boolean value indicating whether the button should be disabled after it is interacted with.
- Typescript
let apiAction = new APIAction("https://example.com/api", "POST");
let buttonElement = new ButtonElement("1", apiAction, "Submit");
buttonElement.setDisableAfterInteracted(false);
Example
Below is an example that showcases the creation and manipulation of an instance of ButtonElement
:
- Typescript
// Create an instance of APIAction
let apiAction = new APIAction("https://example.com/api", "POST");
// Create a new instance of ButtonElement
let buttonElement = new ButtonElement("1", apiAction, "Submit");
buttonElement.setDisableAfterInteracted(false);
In this example, a new instance of the ButtonElement
is created. The button text, action and interaction property are retrieved, updated, and logged. Then a new ButtonElement
instance is made from a JSON object and its button text is retrieved and logged.