class Para::Markup::ResourceTree

Public Instance Methods

node_children(children, &block) click to toggle source
# File lib/para/markup/resources_tree.rb, line 31
def node_children(children, &block)
  tree_list(children, &block) if children.length > 0
end
node_row(resource, label) click to toggle source
# File lib/para/markup/resources_tree.rb, line 25
def node_row(resource, label)
  content_tag(:div, class: 'node-row') do
    label
  end
end
tree_list(resources, options = {}, &block) click to toggle source
# File lib/para/markup/resources_tree.rb, line 4
def tree_list(resources, options = {}, &block)
  options[:class] ||= ''
  options[:class] << ' tree-list'

  content_tag(:ul, options) do
    resources.each do |resource|
      block.call(resource)
    end
  end
end
tree_node(resource: nil, label: nil, children: [], **options, &block) click to toggle source
# File lib/para/markup/resources_tree.rb, line 15
def tree_node(resource: nil, label: nil, children: [], **options, &block)
  options[:class] ||= ''
  options[:class] << ' node'

  content_tag(:li, options) do
    node_row(resource, label) + 
    node_children(children, &block)
  end
end