Slackblocks.Elements.ConversationSelect (slackblocks v2.8.0)

View Source

A menu for selecting one conversation.

Slack reference: https://docs.slack.dev/reference/block-kit/block-elements/select-menu-element

Fields

  • action_id — Sets the identifier Slack returns in interaction payloads when a user acts on this element. It must be unique among the elements of its block. Optional; nil omits the field.
  • initial_conversation — Sets the conversation ID selected when the menu loads. Optional; nil omits the field.
  • default_to_current_conversation — Sets whether the menu pre-selects the conversation the user is viewing. Optional; nil omits the field.
  • filter — Sets which conversation types the menu offers. Optional; nil omits the field.
  • response_url_enabled — Sets whether the selected conversation receives a response URL in the view submission payload. Only valid in modals. Optional; nil omits the field.
  • confirm — Sets a confirmation dialog shown before the action is sent. Optional; nil omits the field.
  • focus_on_load — Sets whether the element receives focus when the view opens. Only one element per view may do so. Optional; nil omits the field.
  • placeholder — Sets the placeholder text shown before a value is chosen. Optional; nil omits the field.

Summary

Functions

Atomically replaces supplied fields; omitted fields retain their values.

Constructs and validates a value. Text conveniences apply to keyword input.

Constructs a value or raises Slackblocks.ValidationError.

Types

t()

@type t() :: %Slackblocks.Elements.ConversationSelect{
  action_id: binary() | nil,
  confirm: Slackblocks.Objects.Confirmation.t() | nil,
  default_to_current_conversation: boolean() | nil,
  filter: Slackblocks.Objects.ConversationFilter.t() | nil,
  focus_on_load: boolean() | nil,
  initial_conversation: binary() | nil,
  placeholder: Slackblocks.Objects.PlainText.t() | nil,
  response_url_enabled: boolean() | nil
}

Functions

change(value, options)

@spec change(
  t(),
  keyword()
) :: {:ok, t()} | {:error, Slackblocks.ValidationError.t()}

Atomically replaces supplied fields; omitted fields retain their values.

change!(value, options)

@spec change!(
  t(),
  keyword()
) :: t()

Replaces fields or raises Slackblocks.ValidationError.

new(options \\ [])

@spec new(keyword()) :: {:ok, t()} | {:error, Slackblocks.ValidationError.t()}

Constructs and validates a value. Text conveniences apply to keyword input.

new!(options \\ [])

@spec new!(keyword()) :: t()

Constructs a value or raises Slackblocks.ValidationError.