Sha256: 96ed00f1c8a8f416af04e2d9d02657df80681cce4379aa44a014a9a806b42e4d
Contents?: true
Size: 1.46 KB
Versions: 13
Compression:
Stored size: 1.46 KB
Contents
# frozen_string_literal: true require 'active_support/core_ext/string/inflections' require 'rails_admin/config/sections/base' require 'rails_admin/config/sections/edit' require 'rails_admin/config/sections/update' require 'rails_admin/config/sections/create' require 'rails_admin/config/sections/nested' require 'rails_admin/config/sections/modal' require 'rails_admin/config/sections/list' require 'rails_admin/config/sections/export' require 'rails_admin/config/sections/show' module RailsAdmin module Config # Sections describe different views in the RailsAdmin engine. Configurable sections are # list and navigation. # # Each section's class object can store generic configuration about that section (such as the # number of visible tabs in the main navigation), while the instances (accessed via model # configuration objects) store model specific configuration (such as the visibility of the # model). module Sections def self.included(klass) # Register accessors for all the sections in this namespace constants.each do |name| section = RailsAdmin::Config::Sections.const_get(name) name = name.to_s.underscore.to_sym klass.send(:define_method, name) do |&block| @sections ||= {} @sections[name] = section.new(self) unless @sections[name] @sections[name].instance_eval(&block) if block @sections[name] end end end end end end
Version data entries
13 entries across 13 versions & 1 rubygems