Class: UiBibz::Ui::Core::Boxes::CardGrid

Inherits:
Layouts::Row show all
Includes:
UiBibz::Ui::Concerns::HtmlConcern
Defined in:
lib/ui_bibz/ui/core/boxes/card_grid.rb

Overview

Create a card grid

Attributes

  • content - Content of element

  • options - Options of element

  • html_options - Html Options of element

Options

You can add HTML attributes using the html_options. You can pass arguments in options attribute:

Signatures

UiBibz::Ui::Core::Boxes::CardGrid.new(content, options = nil, html_options = nil)

UiBibz::Ui::Core::Boxes::CardGrid.new(options = nil, html_options = nil) do |cg|
  cg.card content, options, html_options, &block
end

Examples

UiBibz::Ui::Core::Boxes::CardGrid.new do |cg|
  cg.card 'Exemple 1'
  cg.card 'Exemple 2'
  cg.card 'Exemple 3'
end.render

Constant Summary

Constants inherited from Component

Component::BREAKPOINTS, Component::SIZES, Component::STATUSES

Instance Attribute Summary

Attributes inherited from Component

#content, #html_options, #options

Attributes inherited from Base

#output_buffer

Instance Method Summary collapse

Methods inherited from Layouts::Row

#col

Methods inherited from Component

#render, #tapped?

Methods included from PopoverExtension

#popover_data_html, #tooltip_data_html

Methods included from GlyphExtension

#generate_glyph, #glyph_and_content_html

Methods included from KlassExtension

#exclude_classes, #exclude_classes_in_html_options, #join_classes, #status

Methods inherited from Base

#generate_id, #i18n_set?, #inject_url

Constructor Details

#initialize(content = nil, options = nil, html_options = nil, &block) ⇒ CardGrid

See UiBibz::Ui::Core::Component.initialize



37
38
39
# File 'lib/ui_bibz/ui/core/boxes/card_grid.rb', line 37

def initialize(content = nil, options = nil, html_options = nil, &block)
  super
end

Instance Method Details

#card(content = nil, options = nil, html_options = nil, &block) ⇒ Object



46
47
48
49
50
51
52
# File 'lib/ui_bibz/ui/core/boxes/card_grid.rb', line 46

def card(content = nil, options = nil, html_options = nil, &block)
  @items << (:div, if tapped?(block)
                                UiBibz::Ui::Core::Boxes::Card.new(content, options, html_options).tap(&block).render
                              else
                                UiBibz::Ui::Core::Boxes::Card.new(content, options, html_options, &block).render
                              end, class: 'col')
end

#pre_renderObject

Render html tag



42
43
44
# File 'lib/ui_bibz/ui/core/boxes/card_grid.rb', line 42

def pre_render
   :div, @items.join.html_safe, html_options
end