Sha256: 327d868d22115cfd6001198319fac0c6be4a0cbb87ad6775c8beff87ee602514
Contents?: true
Size: 1.2 KB
Versions: 1
Compression:
Stored size: 1.2 KB
Contents
# frozen_string_literal: true require "active_support" require "active_support/core_ext" require_relative "menu_tree/version" require_relative "menu_tree/config" require_relative "menu_tree/dsl" module ActiveAdmin # ActiveAdmin::MenuTree class module MenuTree class Error < StandardError; end class << self def setup raise ActiveAdmin::MenuTree::Error, "No block given, require a block" unless block_given? yield(config) ActiveAdmin.before_load do |aa_config| ActiveAdmin::DSL.prepend ActiveAdmin::MenuTree::DSL setup_menu_options(aa_config) end end def config @config ||= Config.new end private def setup_menu_options(aa_config) comments_menu = config.find_menu_option(id: "Comment") aa_config.comments_menu = comments_menu if comments_menu.present? menu_options = config.menu_options .reject{ |item| item[:id] == "Comment" } aa_config.namespace :admin do |admin| admin.build_menu do |menu| menu_options.each do |options| menu.add(**options) end end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
activeadmin-menu_tree-0.2.0 | lib/activeadmin/menu_tree.rb |