Class: Blacklight::SearchBarComponent

Inherits:
ViewComponent::Base
  • Object
show all
Includes:
ContentAreasShim
Defined in:
app/components/blacklight/search_bar_component.rb

Direct Known Subclasses

AdvancedSearchFormComponent

Instance Method Summary collapse

Methods included from ContentAreasShim

#with

Constructor Details

#initialize(url:, advanced_search_url: nil, params:, classes: ['search-query-form'], presenter: nil, prefix: '', method: 'GET', q: nil, query_param: :q, search_field: nil, search_fields: [], autocomplete_path: nil, autofocus: nil, i18n: { scope: 'blacklight.search.form' }) ⇒ SearchBarComponent

rubocop:disable Metrics/ParameterLists



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# File 'app/components/blacklight/search_bar_component.rb', line 11

def initialize(
  url:, advanced_search_url: nil, params:,
  classes: ['search-query-form'], presenter: nil, prefix: '',
  method: 'GET', q: nil, query_param: :q,
  search_field: nil, search_fields: [], autocomplete_path: nil,
  autofocus: nil, i18n: { scope: 'blacklight.search.form' }
)
  @url = url
  @advanced_search_url = advanced_search_url
  @q = q || params[:q]
  @query_param = query_param
  @search_field = search_field || params[:search_field]
  @params = params.except(:q, :search_field, :utf8, :page)
  @prefix = prefix
  @classes = classes
  @presenter = presenter
  @method = method
  @autocomplete_path = autocomplete_path
  @autofocus = autofocus
  @search_fields = search_fields
  @i18n = i18n
end

Instance Method Details

#autocomplete_pathObject

rubocop:enable Metrics/ParameterLists



35
36
37
38
39
# File 'app/components/blacklight/search_bar_component.rb', line 35

def autocomplete_path
  return nil unless presenter.autocomplete_enabled?

  @autocomplete_path
end

#autofocusObject



41
42
43
44
45
46
47
# File 'app/components/blacklight/search_bar_component.rb', line 41

def autofocus
  if @autofocus.nil?
    presenter.autofocus?
  else
    @autofocus
  end
end