class Slack::BlockKit::Composition::Option

An object that represents a single selectable item in a select menu.

api.slack.com/reference/messaging/composition-objects#option api.slack.com/reference/messaging/block-elements#select

Public Class Methods

new(value:, text:, initial: false, emoji: nil, description: nil, url: nil) click to toggle source
# File lib/slack/block_kit/composition/option.rb, line 11
def initialize(value:, text:, initial: false, emoji: nil, description: nil, url: nil)
  @text = PlainText.new(text: text, emoji: emoji)
  @value = value
  @description = description && PlainText.new(text: description, emoji: emoji)
  @url = url
  @initial = initial
end

Public Instance Methods

as_json(*) click to toggle source
# File lib/slack/block_kit/composition/option.rb, line 23
def as_json(*)
  {
    text: @text.as_json,
    value: @value,
    description: @description&.as_json,
    url: @url
  }.compact
end
initial?() click to toggle source
# File lib/slack/block_kit/composition/option.rb, line 19
def initial?
  !!@initial
end