Module: RailsAdminNext
- Extended by:
- Config::ConstLoadSuppressor
- Defined in:
- lib/rails_admin_next.rb,
lib/rails_admin_next/icons.rb,
lib/rails_admin_next/config.rb,
lib/rails_admin_next/engine.rb,
lib/rails_admin_next/version.rb,
lib/rails_admin_next/extension.rb,
lib/rails_admin_next/config/model.rb,
lib/rails_admin_next/config/fields.rb,
lib/rails_admin_next/abstract_model.rb,
lib/rails_admin_next/config/actions.rb,
lib/rails_admin_next/config/hideable.rb,
lib/rails_admin_next/config/sections.rb,
lib/generators/rails_admin_next/utils.rb,
lib/rails_admin_next/config/groupable.rb,
lib/rails_admin_next/config/proxyable.rb,
lib/rails_admin_next/config/has_fields.rb,
lib/rails_admin_next/config/has_groups.rb,
lib/rails_admin_next/config/lazy_model.rb,
lib/rails_admin_next/config/actions/new.rb,
lib/rails_admin_next/config/fields/base.rb,
lib/rails_admin_next/config/inspectable.rb,
app/helpers/rails_admin_next/main_helper.rb,
lib/rails_admin_next/config/actions/base.rb,
lib/rails_admin_next/config/actions/edit.rb,
lib/rails_admin_next/config/actions/show.rb,
lib/rails_admin_next/config/configurable.rb,
lib/rails_admin_next/config/fields/group.rb,
lib/rails_admin_next/config/fields/types.rb,
lib/rails_admin_next/support/hash_helper.rb,
app/helpers/rails_admin_next/form_builder.rb,
lib/rails_admin_next/config/actions/index.rb,
lib/rails_admin_next/config/sections/base.rb,
lib/rails_admin_next/config/sections/edit.rb,
lib/rails_admin_next/config/sections/list.rb,
lib/rails_admin_next/config/sections/show.rb,
lib/rails_admin_next/config/actions/delete.rb,
lib/rails_admin_next/config/actions/export.rb,
lib/rails_admin_next/config/sections/modal.rb,
lib/rails_admin_next/support/csv_converter.rb,
lib/rails_admin_next/adapters/active_record.rb,
lib/rails_admin_next/config/has_description.rb,
lib/rails_admin_next/config/proxyable/proxy.rb,
lib/rails_admin_next/config/sections/create.rb,
lib/rails_admin_next/config/sections/export.rb,
lib/rails_admin_next/config/sections/nested.rb,
lib/rails_admin_next/config/sections/update.rb,
lib/rails_admin_next/config/actions/dashboard.rb,
lib/rails_admin_next/config/fields/types/date.rb,
lib/rails_admin_next/config/fields/types/enum.rb,
lib/rails_admin_next/config/fields/types/inet.rb,
lib/rails_admin_next/config/fields/types/json.rb,
lib/rails_admin_next/config/fields/types/text.rb,
lib/rails_admin_next/config/fields/types/time.rb,
lib/rails_admin_next/config/fields/types/uuid.rb,
lib/rails_admin_next/config/fields/association.rb,
lib/rails_admin_next/config/fields/types/color.rb,
lib/rails_admin_next/config/fields/types/float.rb,
app/helpers/rails_admin_next/application_helper.rb,
lib/rails_admin_next/config/actions/bulk_delete.rb,
lib/rails_admin_next/config/actions/show_in_app.rb,
lib/rails_admin_next/config/fields/types/citext.rb,
lib/rails_admin_next/config/fields/types/hidden.rb,
lib/rails_admin_next/config/fields/types/string.rb,
app/controllers/rails_admin_next/main_controller.rb,
lib/rails_admin_next/config/actions/history_show.rb,
lib/rails_admin_next/config/fields/types/boolean.rb,
lib/rails_admin_next/config/fields/types/decimal.rb,
lib/rails_admin_next/config/fields/types/integer.rb,
lib/rails_admin_next/config/fields/types/numeric.rb,
lib/generators/rails_admin_next/install_generator.rb,
lib/rails_admin_next/config/actions/history_index.rb,
lib/rails_admin_next/config/const_load_suppressor.rb,
lib/rails_admin_next/config/fields/types/datetime.rb,
lib/rails_admin_next/config/fields/types/password.rb,
lib/rails_admin_next/extensions/url_for_extension.rb,
lib/rails_admin_next/support/paginated_collection.rb,
lib/rails_admin_next/config/fields/types/timestamp.rb,
lib/rails_admin_next/config/fields/types/serialized.rb,
lib/rails_admin_next/adapters/active_record/property.rb,
lib/rails_admin_next/config/fields/types/action_text.rb,
lib/rails_admin_next/config/fields/types/file_upload.rb,
lib/rails_admin_next/config/fields/types/string_like.rb,
lib/rails_admin_next/extensions/controller_extension.rb,
lib/rails_admin_next/support/composite_keys_serializer.rb,
app/controllers/rails_admin_next/application_controller.rb,
lib/rails_admin_next/adapters/active_record/association.rb,
lib/rails_admin_next/config/fields/singular_association.rb,
lib/rails_admin_next/config/fields/types/active_storage.rb,
lib/rails_admin_next/config/fields/collection_association.rb,
lib/rails_admin_next/config/fields/types/active_record_enum.rb,
lib/rails_admin_next/adapters/active_record/object_extension.rb,
lib/rails_admin_next/config/fields/types/has_one_association.rb,
lib/rails_admin_next/extensions/paper_trail/auditing_adapter.rb,
lib/rails_admin_next/extensions/pundit/authorization_adapter.rb,
lib/rails_admin_next/config/fields/types/has_many_association.rb,
lib/rails_admin_next/config/fields/types/multiple_file_upload.rb,
lib/rails_admin_next/config/fields/types/belongs_to_association.rb,
lib/rails_admin_next/extensions/cancancan/authorization_adapter.rb,
lib/rails_admin_next/config/fields/types/multiple_active_storage.rb,
lib/rails_admin_next/config/fields/types/polymorphic_association.rb,
lib/rails_admin_next/config/fields/types/has_and_belongs_to_many_association.rb
Defined Under Namespace
Modules: Adapters, ApplicationHelper, Config, Extensions, Generators, Icons, MainHelper, Support Classes: AbstractModel, ActionNotAllowed, ApplicationController, CSVConverter, Engine, FormBuilder, HashHelper, InstallGenerator, MainController, ModelNotFound, ObjectNotFound, PaginatedCollection, Version
Constant Summary collapse
- EXTENSIONS =
rubocop:disable Style/MutableConstant
[]
- AUTHORIZATION_ADAPTERS =
rubocop:disable Style/MutableConstant
{}
- AUDITING_ADAPTERS =
rubocop:disable Style/MutableConstant
{}
- CONFIGURATION_ADAPTERS =
rubocop:disable Style/MutableConstant
{}
Class Method Summary collapse
-
.add_extension(extension_key, extension_definition, options = {}) ⇒ Object
Extend RailsAdminNext.
-
.config(entity = nil) ⇒ Object
Setup RailsAdminNext.
-
.deprecator ⇒ Object
Deprecator for RailsAdminNext's own configuration options.
-
.setup_all_extensions ⇒ Object
Setup all extensions for testing.
- .yaml_dump(object) ⇒ Object
Class Method Details
.add_extension(extension_key, extension_definition, options = {}) ⇒ Object
Extend RailsAdminNext
The extension may define various adapters (e.g., for authorization) and register those via the options hash.
15 16 17 18 19 20 21 22 23 24 25 |
# File 'lib/rails_admin_next/extension.rb', line 15 def self.add_extension(extension_key, extension_definition, = {}) .assert_valid_keys(:authorization, :configuration, :auditing) EXTENSIONS << extension_key AUTHORIZATION_ADAPTERS[extension_key] = extension_definition::AuthorizationAdapter if [:authorization] CONFIGURATION_ADAPTERS[extension_key] = extension_definition::ConfigurationAdapter if [:configuration] AUDITING_ADAPTERS[extension_key] = extension_definition::AuditingAdapter if [:auditing] end |
.config(entity = nil) ⇒ Object
Setup RailsAdminNext
Given the first argument is a model class, a model class name or an abstract model object proxies to model configuration method.
If only a block is passed it is stored to initializer stack to be evaluated on first request in production mode and on each request in development. If initialization has already occurred (in other words RailsAdminNext.setup has been called) the block will be added to stack and evaluated at once.
Otherwise returns RailsAdminNext::Config class.
33 34 35 36 37 38 39 40 41 |
# File 'lib/rails_admin_next.rb', line 33 def self.config(entity = nil, &) if entity RailsAdminNext::Config.model(entity, &) elsif block_given? RailsAdminNext::Config::ConstLoadSuppressor.suppressing { yield(RailsAdminNext::Config) } else RailsAdminNext::Config end end |
.deprecator ⇒ Object
Deprecator for RailsAdminNext's own configuration options. Rails 8.1 made the class-level ActiveSupport::Deprecation.warn private, so deprecations go through an instance deprecator. Intentionally left unregistered, so a deprecated-but-removed option warns rather than raising even in a host whose deprecation behavior is :raise — upgrading must never blow up at boot.
47 48 49 |
# File 'lib/rails_admin_next.rb', line 47 def self.deprecator @deprecator ||= ActiveSupport::Deprecation.new(RailsAdminNext::Version.to_s, "RailsAdminNext") end |
.setup_all_extensions ⇒ Object
Setup all extensions for testing
28 29 30 31 32 33 34 |
# File 'lib/rails_admin_next/extension.rb', line 28 def self.setup_all_extensions (AUTHORIZATION_ADAPTERS.values + AUDITING_ADAPTERS.values).each do |klass| klass.setup if klass.respond_to? :setup rescue # rubocop:disable Style/RescueStandardError # ignore errors end end |
.yaml_dump(object) ⇒ Object
69 70 71 |
# File 'lib/rails_admin_next.rb', line 69 def self.yaml_dump(object) YAML.dump(object) end |