Class: Avo::TabGroup
- Inherits:
-
Object
- Object
- Avo::TabGroup
- Includes:
- Concerns::HasFields, Concerns::IsResourceItem
- Defined in:
- lib/avo/tab_group.rb
Instance Attribute Summary collapse
-
#index ⇒ Object
Returns the value of attribute index.
-
#items_holder ⇒ Object
Returns the value of attribute items_holder.
-
#style ⇒ Object
Returns the value of attribute style.
-
#view ⇒ Object
readonly
Returns the value of attribute view.
Instance Method Summary collapse
- #hydrate(view: nil) ⇒ Object
-
#initialize(index: 0, view: nil, style: nil) ⇒ TabGroup
constructor
A new instance of TabGroup.
- #turbo_frame_id ⇒ Object
- #visible_items ⇒ Object
Methods included from Concerns::IsResourceItem
#is_field?, #is_main_panel?, #is_panel?, #is_tab?, #is_tab_group?, #is_tool?
Methods included from Concerns::HasFields
#fields, #get_field, #get_field_definitions, #get_fields, #get_items, #get_tabs, #hydrate_fields, #tab_groups, #tools
Constructor Details
#initialize(index: 0, view: nil, style: nil) ⇒ TabGroup
Returns a new instance of TabGroup.
12 13 14 15 16 17 |
# File 'lib/avo/tab_group.rb', line 12 def initialize(index: 0, view: nil, style: nil) @index = index @items_holder = Avo::ItemsHolder.new @view = view @style = style end |
Instance Attribute Details
#index ⇒ Object
Returns the value of attribute index.
8 9 10 |
# File 'lib/avo/tab_group.rb', line 8 def index @index end |
#items_holder ⇒ Object
Returns the value of attribute items_holder.
9 10 11 |
# File 'lib/avo/tab_group.rb', line 9 def items_holder @items_holder end |
#style ⇒ Object
Returns the value of attribute style.
10 11 12 |
# File 'lib/avo/tab_group.rb', line 10 def style @style end |
#view ⇒ Object (readonly)
Returns the value of attribute view.
7 8 9 |
# File 'lib/avo/tab_group.rb', line 7 def view @view end |
Instance Method Details
#hydrate(view: nil) ⇒ Object
19 20 21 22 23 |
# File 'lib/avo/tab_group.rb', line 19 def hydrate(view: nil) @view = view self end |
#turbo_frame_id ⇒ Object
39 40 41 |
# File 'lib/avo/tab_group.rb', line 39 def turbo_frame_id "#{Avo::TabGroup.to_s.parameterize} #{index}".parameterize end |
#visible_items ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/avo/tab_group.rb', line 25 def visible_items items.map do |item| item.hydrate view: view end .select do |item| # Remove items hidden in this view item.visible_on? view end .select do |item| # Remove empty items !item.empty? end end |