Class: Primrose::Components::GridLayout

Inherits:
Rose
  • Object
show all
Defined in:
lib/primrose/components/grid_layout.rb

Constant Summary collapse

TEMPLATE =
<<~ERB
  <div class="grid-layout <%= @style_class %>">
    <% @rows.each do |row| %>
      <div class="row">
        <% row.each do |column| %>
          <div class="column">
            <%= column.render %>
          </div>
        <% end %>
      </div>
    <% end %>
  </div>
ERB

Instance Attribute Summary

Attributes inherited from Rose

#children, #event_handlers, #state

Instance Method Summary collapse

Methods inherited from Rose

#add_child, #get_binding, #handle_error, #lifecycle, #on, #render_children, #trigger

Constructor Details

#initialize(rows, columns, style_class: nil) ⇒ GridLayout

Returns a new instance of GridLayout.



18
19
20
21
22
# File 'lib/primrose/components/grid_layout.rb', line 18

def initialize(rows, columns, style_class: nil)
  @style_class = style_class
  @rows = rows
  @columns = columns
end

Instance Method Details

#renderObject



24
25
26
# File 'lib/primrose/components/grid_layout.rb', line 24

def render
  Prim.render(TEMPLATE, self)
end