Sha256: 2c9d4d8b0984a4d4612eed29bf859e6ea5b0b1c6f2055d022d5fdfeb9fcee8bb
Contents?: true
Size: 803 Bytes
Versions: 15
Compression:
Stored size: 803 Bytes
Contents
# frozen_string_literal: true module Blacklight class DocumentMetadataComponent < Blacklight::Component renders_many :fields, (lambda do |component: nil, **kwargs| (component || Blacklight::MetadataFieldComponent).new(**kwargs) end) with_collection_parameter :fields # @param fields [Enumerable<Blacklight::FieldPresenter>] Document field presenters def initialize(fields: [], show: false) @fields = fields @show = show end def before_render return unless fields @fields.each do |field| field(component: field_component(field), field: field, show: @show) end end def render? fields.present? end def field_component(field) field&.component || Blacklight::MetadataFieldComponent end end end
Version data entries
15 entries across 15 versions & 1 rubygems