Class: ChatSDK::Slack::ModalRenderer

Inherits:
Object
  • Object
show all
Defined in:
lib/chat_sdk/slack/modal_renderer.rb

Instance Method Summary collapse

Instance Method Details

#render(node) ⇒ Object



6
7
8
9
10
11
12
13
14
15
16
17
# File 'lib/chat_sdk/slack/modal_renderer.rb', line 6

def render(node)
  view = {
    type: "modal",
    title: {type: "plain_text", text: node.attributes[:title]}
  }
  view[:callback_id] = node.attributes[:callback_id] if node.attributes[:callback_id]
  if node.attributes[:submit_label]
    view[:submit] = {type: "plain_text", text: node.attributes[:submit_label]}
  end
  view[:blocks] = node.children.map { |child| render_block(child) }.compact
  view
end