Class: Jav::TabGroup
- Inherits:
-
Object
- Object
- Jav::TabGroup
- Includes:
- Concerns::HasFields, Concerns::IsResourceItem
- Defined in:
- lib/jav/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_row?, #is_sidebar?, #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.
10 11 12 13 14 15 |
# File 'lib/jav/tab_group.rb', line 10 def initialize(index: 0, view: nil, style: nil) @index = index @items_holder = Jav::ItemsHolder.new @view = view @style = style end |
Instance Attribute Details
#index ⇒ Object
Returns the value of attribute index.
8 9 10 |
# File 'lib/jav/tab_group.rb', line 8 def index @index end |
#items_holder ⇒ Object
Returns the value of attribute items_holder.
8 9 10 |
# File 'lib/jav/tab_group.rb', line 8 def items_holder @items_holder end |
#style ⇒ Object
Returns the value of attribute style.
8 9 10 |
# File 'lib/jav/tab_group.rb', line 8 def style @style end |
#view ⇒ Object (readonly)
Returns the value of attribute view.
7 8 9 |
# File 'lib/jav/tab_group.rb', line 7 def view @view end |
Instance Method Details
#hydrate(view: nil) ⇒ Object
17 18 19 20 21 |
# File 'lib/jav/tab_group.rb', line 17 def hydrate(view: nil) @view = view self end |
#turbo_frame_id ⇒ Object
30 31 32 |
# File 'lib/jav/tab_group.rb', line 30 def turbo_frame_id "#{Jav::TabGroup.to_s.parameterize} #{index}".parameterize end |
#visible_items ⇒ Object
23 24 25 26 27 28 |
# File 'lib/jav/tab_group.rb', line 23 def visible_items items .map { |item| item.hydrate view: view } .select { |item| item.visible_on? view } # Remove items hidden in this view .reject(&:empty?) # Remove empty items end |