class ActiveAdminMenu::Menu

Attributes

items[R]

Public Class Methods

build() click to toggle source
# File lib/active_admin_menu/menu.rb, line 18
def build
  new.tap do |menu|
    namespaced_source.each do |key, resource_names|
      parent = key == uncategorize_key_name ? nil : key
      resource_names.each do |resource_name|
        menu.add(resource_name: resource_name, parent: parent)
      end
    end
  end
end
new() click to toggle source
# File lib/active_admin_menu/menu.rb, line 5
def initialize
  @items = []
end

Private Class Methods

config() click to toggle source
# File lib/active_admin_menu/menu.rb, line 39
def config
  @_config ||= ::ActiveAdminMenu.config
end
namespaced_source() click to toggle source
# File lib/active_admin_menu/menu.rb, line 31
def namespaced_source
  config.namespaced_source
end
uncategorize_key_name() click to toggle source
# File lib/active_admin_menu/menu.rb, line 35
def uncategorize_key_name
  config.uncategorize_key_name
end

Public Instance Methods

add(resource_name:, parent: nil) click to toggle source
# File lib/active_admin_menu/menu.rb, line 13
def add(resource_name:, parent: nil)
  items << Item.new(resource_name: resource_name, parent: parent, priority: items.length + 1)
end
find_item_by(resource_name:) click to toggle source
# File lib/active_admin_menu/menu.rb, line 9
def find_item_by(resource_name:)
  items.detect { |item| item.resource_name == resource_name }
end