Class: Glib::JsonUi::ListBuilders::Section

Inherits:
AbstractBuilder show all
Defined in:
app/helpers/glib/json_ui/list_builders.rb

Instance Attribute Summary

Attributes inherited from AbstractBuilder

#json, #page

Instance Method Summary collapse

Constructor Details

#initialize(json, page, template) ⇒ Section

Returns a new instance of Section.



83
84
85
86
# File 'app/helpers/glib/json_ui/list_builders.rb', line 83

def initialize(json, page, template)
  super json, page
  @template = template
end

Instance Method Details



107
108
109
110
111
# File 'app/helpers/glib/json_ui/list_builders.rb', line 107

def footer(options = {})
  json.footer do
    page.vertical_content(options)
  end
end

#header(options = {}) ⇒ Object



88
89
90
91
92
# File 'app/helpers/glib/json_ui/list_builders.rb', line 88

def header(options = {})
  json.header do
    page.vertical_content(options)
  end
end

#rows(options = {}) ⇒ Object



94
95
96
97
98
99
100
101
102
103
104
105
# File 'app/helpers/glib/json_ui/list_builders.rb', line 94

def rows(options = {})
  block = options[:builder]
  json.rows do
    if (objects = options[:objects])
      objects.each_with_index do |object, index|
        block&.call @template, object, index
      end
    else
      block&.call @template
    end
  end
end