blacklight-spotlight 3.5.0.1 → 3.5.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 42d2555f8a1c4195b162f1372cee92830f15d5c8352fdd2feded4adfc20b91e2
|
4
|
+
data.tar.gz: 8767e5e3c753bb98e591652dba94e2e87f5be6010ef4d200c22c3442cd7eefcc
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 694f8dc2ff14e68d703885794e7aab5de87068c184019dd4cefcad719319cdbd152ca5df6a050dcc57fcb5dde2ae35ca41915bbf12a867d9ba3e7b06eebf4c70
|
7
|
+
data.tar.gz: 165f58ec01b4acd613c0b95fb25955f4dda3347c779b48e725cb855c6f689c09b811171160444f2677036d4685fb5c9427ecf33196e151b526af0e5356caadbb
|
@@ -15,7 +15,7 @@ module Spotlight
|
|
15
15
|
def apply_browse_category_defaults(solr_params)
|
16
16
|
return unless current_browse_category
|
17
17
|
|
18
|
-
solr_params.merge!(browse_category_search_builder.to_hash)
|
18
|
+
solr_params.merge!(browse_category_search_builder.to_hash.except(:q))
|
19
19
|
end
|
20
20
|
|
21
21
|
def fix_up_browse_category_defaults(solr_params)
|
@@ -25,14 +25,27 @@ module Spotlight
|
|
25
25
|
end
|
26
26
|
|
27
27
|
def fix_up_browse_category_queries(solr_params)
|
28
|
-
return unless
|
28
|
+
return unless current_browse_category
|
29
|
+
|
30
|
+
query = browse_category_search_builder.to_hash[:q]
|
31
|
+
|
32
|
+
solr_params.append_query(query) if query.present?
|
33
|
+
|
34
|
+
# for a browse category formed from a saved search, the query syntax reads as two "must" values
|
35
|
+
# e.g. "json"=>{"query"=>{"bool"=>{"must"=>["savedsearchterm", "browsecategorysearchterm"]}}}}
|
36
|
+
must_values = solr_params.dig(:json, :query, :bool, :must)
|
37
|
+
|
38
|
+
return unless must_values&.any?
|
39
|
+
|
40
|
+
# this type of query must be parsed by lucene to function
|
41
|
+
solr_params[:defType] = 'lucene'
|
29
42
|
|
30
43
|
# This replicates existing spotlight 2.x search behavior, more or less. It
|
31
44
|
# doesn't take into account the possibility that the browse category query
|
32
45
|
# could use a different search field (which.. doesn't have an existing UI
|
33
46
|
# control.. and may require additional upstream work to properly encapsulate
|
34
47
|
# the two query parameters)
|
35
|
-
|
48
|
+
must_values.map! do |q|
|
36
49
|
q.is_a?(String) ? { edismax: { query: q } } : q
|
37
50
|
end
|
38
51
|
end
|
data/lib/spotlight/version.rb
CHANGED
data/spec/factories/searches.rb
CHANGED
@@ -30,4 +30,16 @@ FactoryBot.define do
|
|
30
30
|
|
31
31
|
after(:build) { |search| search.thumbnail = FactoryBot.create(:featured_image) }
|
32
32
|
end
|
33
|
+
|
34
|
+
factory :search_field_search, class: 'Spotlight::Search' do
|
35
|
+
exhibit
|
36
|
+
title { 'Based on a search field' }
|
37
|
+
query_params { { 'search_field' => 'search', 'q' => 'model' } }
|
38
|
+
end
|
39
|
+
|
40
|
+
factory :facet_search, class: 'Spotlight::Search' do
|
41
|
+
exhibit
|
42
|
+
title { 'Based on a facet' }
|
43
|
+
query_params { { 'f' => { 'language_ssim' => 'Latin' } } }
|
44
|
+
end
|
33
45
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: blacklight-spotlight
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.5.0.
|
4
|
+
version: 3.5.0.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Beer
|
@@ -11,7 +11,7 @@ authors:
|
|
11
11
|
autorequire:
|
12
12
|
bindir: bin
|
13
13
|
cert_chain: []
|
14
|
-
date:
|
14
|
+
date: 2024-01-30 00:00:00.000000000 Z
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: activejob-status
|
@@ -871,20 +871,6 @@ dependencies:
|
|
871
871
|
- - ">="
|
872
872
|
- !ruby/object:Gem::Version
|
873
873
|
version: '0'
|
874
|
-
- !ruby/object:Gem::Dependency
|
875
|
-
name: webdrivers
|
876
|
-
requirement: !ruby/object:Gem::Requirement
|
877
|
-
requirements:
|
878
|
-
- - ">="
|
879
|
-
- !ruby/object:Gem::Version
|
880
|
-
version: '0'
|
881
|
-
type: :development
|
882
|
-
prerelease: false
|
883
|
-
version_requirements: !ruby/object:Gem::Requirement
|
884
|
-
requirements:
|
885
|
-
- - ">="
|
886
|
-
- !ruby/object:Gem::Version
|
887
|
-
version: '0'
|
888
874
|
- !ruby/object:Gem::Dependency
|
889
875
|
name: webmock
|
890
876
|
requirement: !ruby/object:Gem::Requirement
|
@@ -1607,7 +1593,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
1607
1593
|
- !ruby/object:Gem::Version
|
1608
1594
|
version: '0'
|
1609
1595
|
requirements: []
|
1610
|
-
rubygems_version: 3.
|
1596
|
+
rubygems_version: 3.4.10
|
1611
1597
|
signing_key:
|
1612
1598
|
specification_version: 4
|
1613
1599
|
summary: Enable librarians, curators, and others who are responsible for digital collections
|