Sha256: e562356d9615e63f351f51f55e33532770cfc835aa6d7b336958dd18c0a7d4e5
Contents?: true
Size: 1022 Bytes
Versions: 56
Compression:
Stored size: 1022 Bytes
Contents
module Plutonium module Core module Definers module AssociationRendererDefiner extend ActiveSupport::Concern include Plutonium::Core::Autodiscovery::AssociationRendererDiscoverer def defined_association_renderers_for(*names) (names - association_renderer_definitions.keys).each do |name| define_association_renderer(name, renderer: autodiscover_association_renderer(name)) end association_renderer_definitions.slice(*names) end private def association_renderer_definitions = @association_renderer_definitions ||= {} def define_association_renderer(name, renderer: nil, **options) association_renderer_definitions[name] = if renderer.present? renderer else autodiscover_association_renderer(name) end end def association_renderer_defined?(name) association_renderer_definitions.key? name end end end end end
Version data entries
56 entries across 56 versions & 1 rubygems