class Slack::BlockKit::Block::ActionsBlock

Attributes

elements[RW]

Public Class Methods

new() click to toggle source
# File lib/slack/block_kit/block/actions_block.rb, line 14
def initialize
  @elements = TypeRestrictedArray.new(
    Element::ButtonElement,
    Element::SelectElement,
    Element::OverflowElement,
    Element::DatePickerElement
  )
end
populate(hash, object) click to toggle source
# File lib/slack/block_kit/block/actions_block.rb, line 10
def self.populate(hash, object)
  hash[:elements].each(&object.elements.method(:<<))
end

Public Instance Methods

to_h() click to toggle source
Calls superclass method Slack::BlockKit::Block#to_h
# File lib/slack/block_kit/block/actions_block.rb, line 27
def to_h
  super.merge(
    elements: elements.map(&:to_h)
  ).compact
end
valid?() click to toggle source
# File lib/slack/block_kit/block/actions_block.rb, line 23
def valid?
  !@elements.empty? && @elements.size <= 5
end