Class: PhlexyUI::Menu

Inherits:
Base
  • Object
show all
Defined in:
lib/phlexy_ui/menu.rb

Instance Method Summary collapse

Methods inherited from Base

#initialize

Constructor Details

This class inherits a constructor from PhlexyUI::Base

Instance Method Details

#itemObject



25
26
27
# File 'lib/phlexy_ui/menu.rb', line 25

def item(*, **, &)
  render MenuItem.new(*, **, &)
end


29
30
31
32
33
34
35
36
37
38
39
# File 'lib/phlexy_ui/menu.rb', line 29

def submenu(*base_modifiers, **, &)
  if base_modifiers.include?(:collapsible)
    li do
      render CollapsibleSubMenu.new(*base_modifiers, **, &)
    end
  else
    li do
      render SubMenu.new(*base_modifiers, **, &)
    end
  end
end

#title(as: :li, **options) ⇒ Object



16
17
18
19
20
21
22
23
# File 'lib/phlexy_ui/menu.rb', line 16

def title(*, as: :li, **options, &)
  generate_classes!(
    component_html_class: :"menu-title",
    options:
  ).then do |classes|
    public_send(as, class: classes, **options, &)
  end
end

#view_templateObject



5
6
7
8
9
10
11
12
13
14
# File 'lib/phlexy_ui/menu.rb', line 5

def view_template(&)
  generate_classes!(
    component_html_class: :menu,
    modifiers_map: modifiers,
    base_modifiers:,
    options:
  ).then do |classes|
    ul(class: classes, **options, &)
  end
end