pub struct SelectMenuExternalDataSource { /* private fields */ }Expand description
Select menu of external data source representation
§Fields and Validations
For more details, see the official documentation.
| Field | Type | Required | Validation |
|---|---|---|---|
| action_id | String | No | Max length 255 characters |
| min_query_length | i64 | No | N/A |
| initial_option | Opt | No | N/A |
| confirm | ConfirmationDialog | No | N/A |
| focus_on_load | bool | No | N/A |
| placeholder | Text<Plain> | No | Max length 150 characters |
§Example
use slack_messaging::plain_text;
use slack_messaging::blocks::elements::SelectMenuExternalDataSource;
let menu = SelectMenuExternalDataSource::builder()
.action_id("text1234")
.min_query_length(3)
.placeholder(plain_text!("Select an item")?)
.build()?;
let expected = serde_json::json!({
"type": "external_select",
"action_id": "text1234",
"min_query_length": 3,
"placeholder": {
"type": "plain_text",
"text": "Select an item"
}
});
let json = serde_json::to_value(menu).unwrap();
assert_eq!(json, expected);
// If your object has any validation errors, the build method returns Result::Err
let menu = SelectMenuExternalDataSource::builder()
.action_id("text1234")
.placeholder(plain_text!("{}", "verrrrry long text".repeat(100))?)
.build();
assert!(menu.is_err());Implementations§
Source§impl SelectMenuExternalDataSource
impl SelectMenuExternalDataSource
Sourcepub fn builder() -> SelectMenuExternalDataSourceBuilder
pub fn builder() -> SelectMenuExternalDataSourceBuilder
constract SelectMenuExternalDataSourceBuilder object.
Trait Implementations§
Source§impl Clone for SelectMenuExternalDataSource
impl Clone for SelectMenuExternalDataSource
Source§fn clone(&self) -> SelectMenuExternalDataSource
fn clone(&self) -> SelectMenuExternalDataSource
Returns a duplicate of the value. Read more
1.0.0§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SelectMenuExternalDataSource
impl Debug for SelectMenuExternalDataSource
Source§impl Default for SelectMenuExternalDataSource
impl Default for SelectMenuExternalDataSource
Source§fn default() -> SelectMenuExternalDataSource
fn default() -> SelectMenuExternalDataSource
Returns the “default value” for a type. Read more
Source§impl From<SelectMenuExternalDataSource> for Accessory
impl From<SelectMenuExternalDataSource> for Accessory
Source§fn from(value: SelectMenuExternalDataSource) -> Self
fn from(value: SelectMenuExternalDataSource) -> Self
Converts to this type from the input type.
Source§impl From<SelectMenuExternalDataSource> for ActionsElement
impl From<SelectMenuExternalDataSource> for ActionsElement
Source§fn from(value: SelectMenuExternalDataSource) -> Self
fn from(value: SelectMenuExternalDataSource) -> Self
Converts to this type from the input type.
Source§impl From<SelectMenuExternalDataSource> for InputElement
impl From<SelectMenuExternalDataSource> for InputElement
Source§fn from(value: SelectMenuExternalDataSource) -> Self
fn from(value: SelectMenuExternalDataSource) -> Self
Converts to this type from the input type.
impl StructuralPartialEq for SelectMenuExternalDataSource
Auto Trait Implementations§
impl Freeze for SelectMenuExternalDataSource
impl RefUnwindSafe for SelectMenuExternalDataSource
impl Send for SelectMenuExternalDataSource
impl Sync for SelectMenuExternalDataSource
impl Unpin for SelectMenuExternalDataSource
impl UnwindSafe for SelectMenuExternalDataSource
Blanket Implementations§
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)