Sha256: ed63c978b2dcffeed5f20dd823bf9474597e44d113e255612d94fa042c8fbd4e

Contents?: true

Size: 790 Bytes

Versions: 1

Compression:

Stored size: 790 Bytes

Contents

# frozen_string_literal: true

module Blacklight
  module Response
    # Render spellcheck results for a search query
    class ViewTypeComponent < ViewComponent::Base
      renders_many :views, 'Blacklight::Response::ViewTypeButtonComponent'

      # @param [Blacklight::Response] response
      def initialize(response:, search_state:, views: {}, selected: nil)
        @response = response
        @views = views
        @search_state = search_state
        @selected = selected
      end

      def before_render
        return if views.any?

        @views.each do |key, config|
          view(key: key, view: config, selected: @selected == key, search_state: @search_state)
        end
      end

      def render?
        views.many? && !@response.empty?
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
blacklight-8.0.0.beta1 app/components/blacklight/response/view_type_component.rb