Struct slack_blocks::compose::ConversationFilter [−][src]
pub struct ConversationFilter { /* fields omitted */ }
Expand description
Filter for Conversations List
Provides a way to filter the list of options in a conversations select menu 🔗 or conversations multi-select menu 🔗.
Implementations
Create a Conversation Filter object that allows bot users & all kinds of channels; including cross-org shared channels.
Example
use slack_blocks::compose::ConversationFilter; let filter = ConversationFilter::new(); // TODO: once conversationselect is implemented // let select = ConversationSelect::from_filter(filter);
pub fn include_conversation_kinds(
self,
kinds: impl IntoIterator<Item = ConversationKind>
) -> Self
[src]
pub fn include_conversation_kinds(
self,
kinds: impl IntoIterator<Item = ConversationKind>
) -> Self
[src]Chainable setter method that allows you to restrict the kinds of channels that will appear in the conversation select menu.
For excluding cross-org shared channels, see
exclude_external_shared_channels
.
For excluding DMs with bots, see exclude_bot_users
.
Arguments
kinds
- A non-empty unique collection ofConversationKind
s, that the select options will be restricted to.
Example
use slack_blocks::compose::ConversationFilter; use slack_blocks::compose::conversation_filter::ConversationKind; let filter = ConversationFilter::new() .include_conversation_kinds(vec![ ConversationKind::PublicChannel, ]); // TODO: once conversationselect is implemented // let select = ConversationSelect::from_filter(filter);
Chainable setter method that allows cross-org shared channels to appear in the conversation select menu.
Note that this setting is the default, and that calling this method is a no-op. It exists purely as declarative sugar for filter construction.
For excluding cross-org shared channels, see
exclude_external_shared_channels
.
Example
use slack_blocks::compose::ConversationFilter; let filter = ConversationFilter::new().include_external_shared_channels(); // TODO: once conversationselect is implemented // let select = ConversationSelect::from_filter(filter);
Chainable setter method that prevents cross-workspace shared channels from appearing in the conversation select menu.
Example
use slack_blocks::compose::ConversationFilter; let filter = ConversationFilter::new().exclude_external_shared_channels(); // TODO: once conversationselect is implemented // let select = ConversationSelect::from_filter(filter);
Chainable setter method that allows conversations with Bot Users to appear in the conversation select menu.
This is the default behavior.
For excluding bot user DMs, see exclude_bot_users
.
Example
use slack_blocks::compose::ConversationFilter; let filter = ConversationFilter::new().include_bot_users(); // TODO: once conversationselect is implemented // let select = ConversationSelect::from_filter(filter);
Chainable setter method that prevents DMs with Bot users from appearing in the conversation select menu.
Example
use slack_blocks::compose::ConversationFilter; let filter = ConversationFilter::new().exclude_bot_users(); // TODO: once conversationselect is implemented // let select = ConversationSelect::from_filter(filter);
This is supported on crate feature validation
only.
validation
only.Validate that this Conversation Filter object agrees with Slack’s model requirements.
This type has runtime checks that prevent it from failing validation.
Errors
- Never
Example
use slack_blocks::compose::ConversationFilter; let filter = ConversationFilter::new().include_conversation_kinds(vec![]); assert_eq!(false, matches!(filter.validate(), Err(_)));
Trait Implementations
Returns the “default value” for a type. Read more
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
This method tests for !=
.
Auto Trait Implementations
impl RefUnwindSafe for ConversationFilter
impl Send for ConversationFilter
impl Sync for ConversationFilter
impl Unpin for ConversationFilter
impl UnwindSafe for ConversationFilter
Blanket Implementations
Mutably borrows from an owned value. Read more