Class: Proscenium::UI::DropdownMenu
- Defined in:
- lib/proscenium/ui/dropdown_menu.rb
Class Method Summary collapse
Instance Method Summary collapse
- #dropdown_template ⇒ Object
- #item(href: nil, disabled: false, **attrs) ⇒ Object
- #menu_template ⇒ Object
Methods inherited from Dropdown
#trigger_template, #view_template
Class Method Details
.source_path ⇒ Object
7 8 9 |
# File 'lib/proscenium/ui/dropdown_menu.rb', line 7 def self.source_path Pathname(__FILE__).sub_ext('').join('index.rb') end |
Instance Method Details
#dropdown_template ⇒ Object
16 17 18 |
# File 'lib/proscenium/ui/dropdown_menu.rb', line 16 def dropdown_template end |
#item(href: nil, disabled: false, **attrs) ⇒ Object
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/proscenium/ui/dropdown_menu.rb', line 20 def item(href: nil, disabled: false, **attrs, &) base = { role: 'menuitem', tabindex: -1, **attrs } if disabled span(**base, aria_disabled: 'true', &) elsif href a(href: href, **base, &) else (type: :button, **base, &) end end |
#menu_template ⇒ Object
11 12 13 14 |
# File 'lib/proscenium/ui/dropdown_menu.rb', line 11 def raise NotImplementedError, "`#menu_template` must be implemented in subclasses of #{self.class}" end |