Skip to content

Commit f116e6e

Browse files
committed
Extract FacetFiltersComponent so it's display can be customized
1 parent 3e3e63c commit f116e6e

File tree

5 files changed

+29
-16
lines changed

5 files changed

+29
-16
lines changed

app/assets/builds/blacklight.css

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -409,12 +409,6 @@ main {
409409
background: transparent url('data:image/svg+xml,%3csvg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-dash-square" viewBox="0 0 16 16"%3e%3cpath d="M14 1a1 1 0 0 1 1 1v12a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h12zM2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2z" /%3e%3cpath d="M4 8a.5.5 0 0 1 .5-.5h7a.5.5 0 0 1 0 1h-7A.5.5 0 0 1 4 8z" /%3e%3c/svg%3e') center/1em auto no-repeat;
410410
}
411411

412-
/* Facet browse pages & modals
413-
-------------------------------------------------- */
414-
.facet-filters:not(:has(*)) {
415-
display: none;
416-
}
417-
418412
/* Search History */
419413
.search-history {
420414
--bl-history-filter-name-color: var(--bs-secondary-color);

app/assets/stylesheets/blacklight/_facets.scss

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -205,9 +205,3 @@ $facet-toggle-height: $facet-toggle-width !default;
205205
$facet-toggle-width auto no-repeat;
206206
}
207207
}
208-
209-
/* Facet browse pages & modals
210-
-------------------------------------------------- */
211-
.facet-filters:not(:has(*)) {
212-
display: none;
213-
}
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
<div class="<%= classes %>">
2+
<%= render Blacklight::Search::FacetSuggestInput.new(facet: facet, presenter: presenter) %>
3+
<%= render 'facet_index_navigation' if render_index_navigation? %>
4+
</div>
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
module Blacklight::Search
2+
class FacetFiltersComponent < Blacklight::Component
3+
# @param [Blacklight::FacetFieldPresenter] presenter
4+
def initialize(presenter:, classes: 'facet-filters card card-body bg-light p-3 mb-3 border-0')
5+
@presenter = presenter
6+
@classes = classes
7+
end
8+
9+
def facet
10+
@presenter.facet_field
11+
end
12+
attr_reader :classes, :presenter
13+
14+
delegate :display_facet, to: :presenter
15+
16+
def render?
17+
facet.suggest != false || render_index_navigation?
18+
end
19+
20+
def render_index_navigation?
21+
facet.index_range && display_facet.index?
22+
end
23+
end
24+
end

app/views/catalog/facet.html.erb

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,7 @@
11
<%= render Blacklight::System::ModalComponent.new do |component| %>
22
<% component.with_title { facet_field_label(@facet.key) } %>
33

4-
<div class="facet-filters card card-body bg-light p-3 mb-3 border-0">
5-
<%= render Blacklight::Search::FacetSuggestInput.new(facet: @facet, presenter: @presenter) %>
6-
<%= render partial: 'facet_index_navigation' if @facet.index_range && @display_facet.index? %>
7-
</div>
4+
<%= render Blacklight::Search::FacetFiltersComponent.new(presenter: @presenter) %>
85

96
<div class="facet-pagination top d-flex flex-wrap w-100 justify-content-between border-bottom pb-3 mb-3">
107
<%= render :partial=>'facet_pagination' %>

0 commit comments

Comments
 (0)