Class: Plutonium::UI::NavGridMenu::Item
- Inherits:
-
Component::Base
- Object
- Component::Base
- Plutonium::UI::NavGridMenu::Item
- Defined in:
- lib/plutonium/ui/nav_grid_menu.rb
Overview
A grid-based navigation menu item component that represents a single clickable item within a NavGridMenu. Each item consists of an icon and label that links to a specific URL.
Instance Method Summary collapse
-
#initialize(name:, icon:, href:) ⇒ Item
constructor
A new instance of Item.
- #view_template ⇒ Object
Methods included from Component::Behaviour
Methods included from Component::Tokens
Methods included from Component::Kit
#BuildActionButton, #BuildBlock, #BuildBreadcrumbs, #BuildColorModeSelector, #BuildDynaFrameContent, #BuildDynaFrameHost, #BuildEmptyCard, #BuildFrameNavigatorPanel, #BuildPageHeader, #BuildPanel, #BuildSkeletonTable, #BuildTabList, #BuildTableInfo, #BuildTablePagination, #BuildTableScopesBar, #BuildTableSearchBar, #method_missing, #respond_to_missing?
Constructor Details
#initialize(name:, icon:, href:) ⇒ Item
27 28 29 30 31 |
# File 'lib/plutonium/ui/nav_grid_menu.rb', line 27 def initialize(name:, icon:, href:) @name = name @icon = icon @href = href end |
Dynamic Method Handling
This class handles dynamic methods through the method_missing method in the class Plutonium::UI::Component::Kit
Instance Method Details
#view_template ⇒ Object
33 34 35 36 37 38 39 40 41 42 43 |
# File 'lib/plutonium/ui/nav_grid_menu.rb', line 33 def view_template a( class: "block p-4 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-600 group", href: @href ) do render @icon.new( class: "text-gray-400 group-hover:text-gray-500 dark:text-gray-200 dark:group-hover:text-gray-400 w-8 h-8 mx-auto" ) div(class: "text-sm text-gray-900 dark:text-white text-center") { @name } end end |