blacklight 8.12.2 → 9.0.0.beta1

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.
Files changed (200) hide show
  1. checksums.yaml +4 -4
  2. data/.env +3 -3
  3. data/.github/pull_request_template.md +7 -0
  4. data/.github/workflows/ruby.yml +98 -0
  5. data/.rubocop.yml +2 -2
  6. data/.rubocop_todo.yml +0 -9
  7. data/.solr_wrapper.yml +0 -2
  8. data/README.md +30 -8
  9. data/VERSION +1 -1
  10. data/app/assets/builds/blacklight.css +448 -0
  11. data/app/assets/javascripts/blacklight/blacklight.esm.js +8 -51
  12. data/app/assets/javascripts/blacklight/blacklight.esm.js.map +1 -1
  13. data/app/assets/javascripts/blacklight/blacklight.js +8 -51
  14. data/app/assets/javascripts/blacklight/blacklight.js.map +1 -1
  15. data/app/assets/stylesheets/blacklight/_balanced_list.scss +1 -4
  16. data/app/assets/stylesheets/blacklight/_blacklight_base.scss +1 -3
  17. data/app/assets/stylesheets/blacklight/_bookmark.scss +44 -41
  18. data/app/assets/stylesheets/blacklight/_bootstrap_overrides.scss +0 -29
  19. data/app/assets/stylesheets/blacklight/_constraints.scss +15 -24
  20. data/app/assets/stylesheets/blacklight/_controls.scss +2 -18
  21. data/app/assets/stylesheets/blacklight/_facets.scss +15 -82
  22. data/app/assets/stylesheets/blacklight/_group.scss +2 -5
  23. data/app/assets/stylesheets/blacklight/_header.scss +4 -11
  24. data/app/assets/stylesheets/blacklight/_icons.scss +0 -8
  25. data/app/assets/stylesheets/blacklight/_modal.scss +9 -10
  26. data/app/assets/stylesheets/blacklight/_pagination.scss +3 -5
  27. data/app/assets/stylesheets/blacklight/_search_form.scss +0 -1
  28. data/app/assets/stylesheets/blacklight/_search_history.scss +0 -4
  29. data/app/assets/stylesheets/blacklight/_search_results.scss +1 -15
  30. data/app/assets/stylesheets/blacklight/blacklight_defaults.scss +9 -17
  31. data/app/assets/stylesheets/blacklight/build.scss +4 -0
  32. data/app/components/blacklight/advanced_search_form_component.rb +1 -1
  33. data/app/components/blacklight/constraint_component.rb +1 -1
  34. data/app/components/blacklight/constraint_layout_component.html.erb +2 -2
  35. data/app/components/blacklight/constraints_component.html.erb +2 -2
  36. data/app/components/blacklight/constraints_component.rb +1 -1
  37. data/app/components/blacklight/document/action_component.rb +3 -1
  38. data/app/components/blacklight/document/bookmark_component.html.erb +3 -3
  39. data/app/components/blacklight/document/bookmark_component.rb +0 -1
  40. data/app/components/blacklight/document/group_component.html.erb +1 -1
  41. data/app/components/blacklight/document/page_header_component.rb +3 -3
  42. data/app/components/blacklight/document/sidebar_component.rb +5 -5
  43. data/app/components/blacklight/document_component.rb +14 -20
  44. data/app/components/blacklight/document_title_component.rb +3 -2
  45. data/app/components/blacklight/facet_field_component.html.erb +5 -5
  46. data/app/components/blacklight/facet_field_list_component.rb +4 -22
  47. data/app/components/blacklight/facet_field_pagination_component.html.erb +2 -2
  48. data/app/components/blacklight/facet_item_component.rb +2 -2
  49. data/app/components/blacklight/facet_item_pivot_component.rb +2 -2
  50. data/app/components/blacklight/header_component.rb +2 -2
  51. data/app/components/blacklight/response/facet_group_component.html.erb +3 -18
  52. data/app/components/blacklight/response/facet_group_component.rb +7 -23
  53. data/app/components/blacklight/response/facet_toggle_button_component.html.erb +16 -0
  54. data/app/components/blacklight/response/facet_toggle_button_component.rb +14 -0
  55. data/app/components/blacklight/response/pagination_component.html.erb +1 -1
  56. data/app/components/blacklight/response/pagination_component.rb +2 -1
  57. data/app/components/blacklight/response/sort_component.rb +1 -0
  58. data/app/components/blacklight/response/view_type_button_component.html.erb +1 -1
  59. data/app/components/blacklight/response/view_type_component.html.erb +1 -1
  60. data/app/components/blacklight/search/facet_suggest_input.html.erb +7 -10
  61. data/app/components/blacklight/search/facet_suggest_input.rb +0 -4
  62. data/app/components/blacklight/search/per_page_component.html.erb +1 -1
  63. data/app/components/blacklight/search/per_page_component.rb +1 -0
  64. data/app/components/blacklight/search/sidebar_component.html.erb +1 -1
  65. data/app/components/blacklight/search/sidebar_component.rb +1 -1
  66. data/app/components/blacklight/search_bar_component.html.erb +3 -3
  67. data/app/components/blacklight/search_bar_component.rb +2 -2
  68. data/app/components/blacklight/search_button_component.rb +2 -2
  69. data/app/components/blacklight/search_context/server_applied_params_component.html.erb +2 -2
  70. data/app/components/blacklight/search_context/server_applied_params_component.rb +9 -0
  71. data/app/components/blacklight/skip_link_component.html.erb +1 -1
  72. data/app/components/blacklight/skip_link_component.rb +2 -1
  73. data/app/components/blacklight/system/dropdown_component.html.erb +1 -1
  74. data/app/components/blacklight/system/dropdown_component.rb +1 -1
  75. data/app/components/blacklight/top_navbar_component.html.erb +1 -1
  76. data/app/controllers/concerns/blacklight/catalog.rb +3 -2
  77. data/app/controllers/concerns/blacklight/search_context.rb +1 -13
  78. data/app/helpers/blacklight/blacklight_helper_behavior.rb +0 -6
  79. data/app/helpers/blacklight/catalog_helper_behavior.rb +0 -10
  80. data/app/helpers/blacklight/configuration_helper_behavior.rb +0 -12
  81. data/app/helpers/blacklight/document_helper_behavior.rb +0 -26
  82. data/app/helpers/blacklight/icon_helper_behavior.rb +1 -9
  83. data/app/helpers/blacklight/layout_helper_behavior.rb +2 -2
  84. data/app/helpers/blacklight/render_partials_helper_behavior.rb +0 -14
  85. data/app/helpers/blacklight/url_helper_behavior.rb +1 -1
  86. data/app/javascript/{blacklight → blacklight-frontend}/bookmark_toggle.js +1 -1
  87. data/app/javascript/{blacklight → blacklight-frontend}/core.js +2 -10
  88. data/app/javascript/{blacklight → blacklight-frontend}/debounce.js +1 -1
  89. data/app/javascript/blacklight-frontend/facet_suggest.js +26 -0
  90. data/app/javascript/blacklight-frontend/index.js +18 -0
  91. data/app/javascript/{blacklight → blacklight-frontend}/modal.js +2 -14
  92. data/app/javascript/{blacklight → blacklight-frontend}/search_context.js +2 -3
  93. data/app/models/concerns/blacklight/document.rb +0 -11
  94. data/app/models/concerns/blacklight/user.rb +1 -1
  95. data/app/presenters/blacklight/facet_field_presenter.rb +2 -2
  96. data/app/presenters/blacklight/json_presenter.rb +3 -1
  97. data/app/services/blacklight/search_params_yaml_coder.rb +0 -2
  98. data/app/views/bookmarks/_clear_bookmarks_widget.html.erb +0 -2
  99. data/app/views/bookmarks/index.html.erb +1 -1
  100. data/app/views/catalog/_document.atom.builder +1 -1
  101. data/app/views/catalog/_document.html.erb +1 -1
  102. data/app/views/catalog/_results_pagination.html.erb +2 -5
  103. data/app/views/catalog/_search_results.html.erb +3 -3
  104. data/app/views/catalog/_search_results_header.html.erb +1 -1
  105. data/app/views/catalog/_show_main_content.html.erb +1 -1
  106. data/app/views/catalog/_sort_and_per_page.html.erb +1 -1
  107. data/app/views/catalog/_sort_widget.html.erb +1 -0
  108. data/app/views/catalog/facet.html.erb +9 -9
  109. data/app/views/catalog/show.html.erb +2 -3
  110. data/app/views/kaminari/blacklight/_paginator.html.erb +1 -2
  111. data/app/views/layouts/blacklight/base.html.erb +3 -7
  112. data/app/views/search_history/index.html.erb +0 -2
  113. data/blacklight.gemspec +4 -4
  114. data/config/importmap.rb +1 -1
  115. data/config/locales/blacklight.ar.yml +4 -4
  116. data/config/locales/blacklight.ca.yml +124 -124
  117. data/config/locales/blacklight.de.yml +2 -2
  118. data/config/locales/blacklight.en.yml +14 -14
  119. data/config/locales/blacklight.es.yml +4 -4
  120. data/config/locales/blacklight.fr.yml +4 -4
  121. data/config/locales/blacklight.hu.yml +4 -4
  122. data/config/locales/blacklight.it.yml +3 -3
  123. data/config/locales/blacklight.nl.yml +3 -3
  124. data/config/locales/blacklight.pt-BR.yml +3 -3
  125. data/config/locales/blacklight.sq.yml +4 -4
  126. data/config/locales/blacklight.zh.yml +4 -4
  127. data/lib/blacklight/component.rb +1 -2
  128. data/lib/blacklight/configuration/display_field.rb +1 -1
  129. data/lib/blacklight/configuration/fields.rb +3 -3
  130. data/lib/blacklight/configuration/view_config.rb +0 -2
  131. data/lib/blacklight/configuration.rb +5 -11
  132. data/lib/blacklight/engine.rb +0 -6
  133. data/lib/blacklight/open_struct_with_hash_access.rb +4 -4
  134. data/lib/blacklight/search_builder.rb +4 -4
  135. data/lib/blacklight/search_state/filter_field.rb +2 -2
  136. data/lib/blacklight/solr/request.rb +1 -7
  137. data/lib/blacklight/solr/response/group_response.rb +2 -2
  138. data/lib/blacklight.rb +1 -1
  139. data/lib/generators/blacklight/assets/importmap_generator.rb +8 -24
  140. data/lib/generators/blacklight/assets/propshaft_generator.rb +1 -1
  141. data/lib/generators/blacklight/assets_generator.rb +3 -3
  142. data/lib/generators/blacklight/controller_generator.rb +3 -3
  143. data/lib/generators/blacklight/templates/.solr_wrapper.yml +0 -2
  144. data/lib/generators/blacklight/user_generator.rb +9 -10
  145. data/package.json +14 -4
  146. data/rollup.config.js +1 -1
  147. data/spec/components/blacklight/document/action_component_spec.rb +1 -5
  148. data/spec/components/blacklight/document/sidebar_component_spec.rb +5 -20
  149. data/spec/components/blacklight/document_component_spec.rb +9 -14
  150. data/spec/components/blacklight/facet_field_checkboxes_component_spec.rb +2 -2
  151. data/spec/components/blacklight/facet_field_list_component_spec.rb +2 -2
  152. data/spec/components/blacklight/search/facet_suggest_input_spec.rb +3 -27
  153. data/spec/components/blacklight/search_bar_component_spec.rb +1 -1
  154. data/spec/controllers/blacklight/catalog_spec.rb +1 -1
  155. data/spec/controllers/catalog_controller_spec.rb +1 -1
  156. data/spec/features/axe_spec.rb +6 -11
  157. data/spec/features/bookmarks_spec.rb +48 -11
  158. data/spec/features/facets_spec.rb +22 -90
  159. data/spec/features/search_context_spec.rb +1 -2
  160. data/spec/features/search_filters_spec.rb +6 -6
  161. data/spec/helpers/blacklight/configuration_helper_behavior_spec.rb +0 -9
  162. data/spec/helpers/blacklight/render_partials_helper_behavior_spec.rb +1 -1
  163. data/spec/lib/blacklight/parameters_spec.rb +1 -12
  164. data/spec/lib/blacklight/search_state/filter_field_spec.rb +0 -18
  165. data/spec/models/blacklight/solr/request_spec.rb +7 -0
  166. data/spec/services/blacklight/search_service_spec.rb +1 -1
  167. data/spec/support/presenter_test_helpers.rb +1 -1
  168. data/spec/views/catalog/_facet_layout.html.erb_spec.rb +3 -3
  169. data/spec/views/catalog/facet.html.erb_spec.rb +0 -8
  170. data/spec/views/catalog/index.atom.builder_spec.rb +0 -2
  171. data/spec/views/catalog/index.html.erb_spec.rb +6 -3
  172. data/spec/views/catalog/show.html.erb_spec.rb +1 -0
  173. data/tasks/blacklight.rake +8 -5
  174. metadata +30 -64
  175. data/.github/matrix.json +0 -92
  176. data/.github/workflows/build.yml +0 -16
  177. data/.github/workflows/lint.yml +0 -25
  178. data/.github/workflows/main.yml +0 -24
  179. data/.github/workflows/test.yml +0 -58
  180. data/app/assets/stylesheets/blacklight/_autocomplete.scss +0 -25
  181. data/app/assets/stylesheets/blacklight/_mixins.scss +0 -20
  182. data/app/components/blacklight/icons/legacy_icon_component.rb +0 -30
  183. data/app/javascript/blacklight/facet_suggest.js +0 -48
  184. data/app/javascript/blacklight/index.js +0 -18
  185. data/app/views/catalog/_constraints.html.erb +0 -1
  186. data/app/views/catalog/_facets.html.erb +0 -5
  187. data/app/views/catalog/_search_form.html.erb +0 -7
  188. data/app/views/catalog/_search_header.html.erb +0 -1
  189. data/app/views/catalog/_show_sidebar.html.erb +0 -3
  190. data/app/views/catalog/_show_tools.html.erb +0 -2
  191. data/app/views/catalog/_start_over.html.erb +0 -1
  192. data/app/views/shared/_header_navbar.html.erb +0 -1
  193. data/lib/generators/blacklight/assets/sprockets_generator.rb +0 -68
  194. data/spec/components/blacklight/system/dropdown_component_spec.rb +0 -26
  195. data/spec/views/catalog/_search_header.erb_spec.rb +0 -14
  196. data/spec/views/catalog/_show_sidebar.erb_spec.rb +0 -24
  197. data/spec/views/catalog/_show_tools.html.erb_spec.rb +0 -37
  198. /data/app/javascript/{blacklight → blacklight-frontend}/button_focus.js +0 -0
  199. /data/app/javascript/{blacklight → blacklight-frontend}/checkbox_submit.js +0 -0
  200. /data/app/javascript/{blacklight → blacklight-frontend}/modalForm.js +0 -0
@@ -19,14 +19,17 @@ RSpec.describe "catalog/index.html.erb" do
19
19
  describe "with search parameters" do
20
20
  before do
21
21
  stub_template "catalog/_results_pagination.html.erb" => ""
22
- stub_template "catalog/_search_header.html.erb" => "header_content"
23
22
  allow(view).to receive_messages(has_search_parameters?: true, blacklight_config: Blacklight::Configuration.new)
24
- @response = instance_double(Blacklight::Solr::Response, empty?: true, total: 11, start: 1, limit_value: 10)
23
+ allow(controller).to receive_messages(blacklight_config: Blacklight::Configuration.new)
24
+
25
+ @response = response
25
26
  end
26
27
 
28
+ let(:response) { Blacklight::Solr::Response.new({ response: { numFound: 30 } }, start: 10, rows: 10) }
29
+
27
30
  it "renders the search_header partial" do
28
31
  render
29
- expect(rendered).to match /header_content/
32
+ expect(rendered).to match /sortAndPerPage/
30
33
  end
31
34
  end
32
35
  end
@@ -7,6 +7,7 @@ RSpec.describe "catalog/show.html.erb" do
7
7
 
8
8
  before do
9
9
  allow(presenter).to receive(:html_title).and_return('Heading')
10
+ allow(document).to receive(:more_like_this).and_return([])
10
11
  allow(view).to receive_messages(has_user_authentication_provider?: false)
11
12
  allow(view).to receive_messages(render_document_sidebar_partial: "Sidebar")
12
13
  allow(view).to receive_messages(current_search_session: nil, search_session: {})
@@ -3,7 +3,7 @@
3
3
  require 'engine_cart/rake_task'
4
4
 
5
5
  require 'rspec/core/rake_task'
6
- RSpec::Core::RakeTask.new(:spec) do |t|
6
+ RSpec::Core::RakeTask.new(spec: 'blacklight:build_host_assets') do |t|
7
7
  t.pattern = 'spec/**/*_spec.rb'
8
8
  end
9
9
 
@@ -46,15 +46,18 @@ desc "Run test suite"
46
46
  task ci: ['build:npm'] do
47
47
  with_solr do
48
48
  Rake::Task['blacklight:internal:seed'].invoke
49
- within_test_app do
50
- # Precompiles the assets
51
- system "bin/rake spec:prepare"
52
- end
53
49
  Rake::Task['blacklight:coverage'].invoke
54
50
  end
55
51
  end
56
52
 
57
53
  namespace :blacklight do
54
+ task :build_host_assets do
55
+ within_test_app do
56
+ # Precompiles the assets
57
+ `bin/rails spec:prepare`
58
+ end
59
+ end
60
+
58
61
  desc "Run tests with coverage"
59
62
  task :coverage do
60
63
  ENV['COVERAGE'] = 'true'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: blacklight
3
3
  version: !ruby/object:Gem::Version
4
- version: 8.12.2
4
+ version: 9.0.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Rochkind
@@ -14,10 +14,9 @@ authors:
14
14
  - Dan Funk
15
15
  - Naomi Dushay
16
16
  - Justin Coyne
17
- autorequire:
18
17
  bindir: exe
19
18
  cert_chain: []
20
- date: 2025-08-18 00:00:00.000000000 Z
19
+ date: 2025-02-06 00:00:00.000000000 Z
21
20
  dependencies:
22
21
  - !ruby/object:Gem::Dependency
23
22
  name: rails
@@ -25,7 +24,7 @@ dependencies:
25
24
  requirements:
26
25
  - - ">="
27
26
  - !ruby/object:Gem::Version
28
- version: '6.1'
27
+ version: '7.0'
29
28
  - - "<"
30
29
  - !ruby/object:Gem::Version
31
30
  version: '9'
@@ -35,7 +34,7 @@ dependencies:
35
34
  requirements:
36
35
  - - ">="
37
36
  - !ruby/object:Gem::Version
38
- version: '6.1'
37
+ version: '7.0'
39
38
  - - "<"
40
39
  - !ruby/object:Gem::Version
41
40
  version: '9'
@@ -113,22 +112,16 @@ dependencies:
113
112
  name: view_component
114
113
  requirement: !ruby/object:Gem::Requirement
115
114
  requirements:
116
- - - ">="
117
- - !ruby/object:Gem::Version
118
- version: '2.74'
119
- - - "<"
115
+ - - "~>"
120
116
  - !ruby/object:Gem::Version
121
- version: '5'
117
+ version: '3.9'
122
118
  type: :runtime
123
119
  prerelease: false
124
120
  version_requirements: !ruby/object:Gem::Requirement
125
121
  requirements:
126
- - - ">="
127
- - !ruby/object:Gem::Version
128
- version: '2.74'
129
- - - "<"
122
+ - - "~>"
130
123
  - !ruby/object:Gem::Version
131
- version: '5'
124
+ version: '3.9'
132
125
  - !ruby/object:Gem::Dependency
133
126
  name: zeitwerk
134
127
  requirement: !ruby/object:Gem::Requirement
@@ -167,22 +160,16 @@ dependencies:
167
160
  name: rspec-rails
168
161
  requirement: !ruby/object:Gem::Requirement
169
162
  requirements:
170
- - - ">="
171
- - !ruby/object:Gem::Version
172
- version: '6.1'
173
- - - "<"
163
+ - - "~>"
174
164
  - !ruby/object:Gem::Version
175
- version: '8'
165
+ version: '7.0'
176
166
  type: :development
177
167
  prerelease: false
178
168
  version_requirements: !ruby/object:Gem::Requirement
179
169
  requirements:
180
- - - ">="
181
- - !ruby/object:Gem::Version
182
- version: '6.1'
183
- - - "<"
170
+ - - "~>"
184
171
  - !ruby/object:Gem::Version
185
- version: '8'
172
+ version: '7.0'
186
173
  - !ruby/object:Gem::Dependency
187
174
  name: rspec-collection_matchers
188
175
  requirement: !ruby/object:Gem::Requirement
@@ -422,11 +409,8 @@ files:
422
409
  - ".docker/app/entrypoint.sh"
423
410
  - ".dockerignore"
424
411
  - ".env"
425
- - ".github/matrix.json"
426
- - ".github/workflows/build.yml"
427
- - ".github/workflows/lint.yml"
428
- - ".github/workflows/main.yml"
429
- - ".github/workflows/test.yml"
412
+ - ".github/pull_request_template.md"
413
+ - ".github/workflows/ruby.yml"
430
414
  - ".gitignore"
431
415
  - ".hound.yml"
432
416
  - ".jshintrc"
@@ -441,6 +425,7 @@ files:
441
425
  - README.md
442
426
  - Rakefile
443
427
  - VERSION
428
+ - app/assets/builds/blacklight.css
444
429
  - app/assets/config/blacklight/manifest.js
445
430
  - app/assets/images/blacklight/logo.png
446
431
  - app/assets/images/favicon.ico
@@ -448,7 +433,6 @@ files:
448
433
  - app/assets/javascripts/blacklight/blacklight.esm.js.map
449
434
  - app/assets/javascripts/blacklight/blacklight.js
450
435
  - app/assets/javascripts/blacklight/blacklight.js.map
451
- - app/assets/stylesheets/blacklight/_autocomplete.scss
452
436
  - app/assets/stylesheets/blacklight/_balanced_list.scss
453
437
  - app/assets/stylesheets/blacklight/_blacklight_base.scss
454
438
  - app/assets/stylesheets/blacklight/_bookmark.scss
@@ -460,7 +444,6 @@ files:
460
444
  - app/assets/stylesheets/blacklight/_header.scss
461
445
  - app/assets/stylesheets/blacklight/_icons.scss
462
446
  - app/assets/stylesheets/blacklight/_layout.scss
463
- - app/assets/stylesheets/blacklight/_mixins.scss
464
447
  - app/assets/stylesheets/blacklight/_modal.scss
465
448
  - app/assets/stylesheets/blacklight/_pagination.scss
466
449
  - app/assets/stylesheets/blacklight/_search_form.scss
@@ -468,6 +451,7 @@ files:
468
451
  - app/assets/stylesheets/blacklight/_search_results.scss
469
452
  - app/assets/stylesheets/blacklight/blacklight.scss
470
453
  - app/assets/stylesheets/blacklight/blacklight_defaults.scss
454
+ - app/assets/stylesheets/blacklight/build.scss
471
455
  - app/builders/blacklight/action_builder.rb
472
456
  - app/components/blacklight/advanced_search_form_component.html.erb
473
457
  - app/components/blacklight/advanced_search_form_component.rb
@@ -524,7 +508,6 @@ files:
524
508
  - app/components/blacklight/hidden_search_state_component.rb
525
509
  - app/components/blacklight/icons/bookmark_icon_component.rb
526
510
  - app/components/blacklight/icons/icon_component.rb
527
- - app/components/blacklight/icons/legacy_icon_component.rb
528
511
  - app/components/blacklight/icons/list_component.rb
529
512
  - app/components/blacklight/icons/remove_component.rb
530
513
  - app/components/blacklight/icons/search_component.rb
@@ -535,6 +518,8 @@ files:
535
518
  - app/components/blacklight/metadata_field_plain_text_layout_component.rb
536
519
  - app/components/blacklight/response/facet_group_component.html.erb
537
520
  - app/components/blacklight/response/facet_group_component.rb
521
+ - app/components/blacklight/response/facet_toggle_button_component.html.erb
522
+ - app/components/blacklight/response/facet_toggle_button_component.rb
538
523
  - app/components/blacklight/response/pagination_component.html.erb
539
524
  - app/components/blacklight/response/pagination_component.rb
540
525
  - app/components/blacklight/response/sort_component.html.erb
@@ -598,16 +583,16 @@ files:
598
583
  - app/helpers/blacklight/url_helper_behavior.rb
599
584
  - app/helpers/blacklight_helper.rb
600
585
  - app/helpers/catalog_helper.rb
601
- - app/javascript/blacklight/bookmark_toggle.js
602
- - app/javascript/blacklight/button_focus.js
603
- - app/javascript/blacklight/checkbox_submit.js
604
- - app/javascript/blacklight/core.js
605
- - app/javascript/blacklight/debounce.js
606
- - app/javascript/blacklight/facet_suggest.js
607
- - app/javascript/blacklight/index.js
608
- - app/javascript/blacklight/modal.js
609
- - app/javascript/blacklight/modalForm.js
610
- - app/javascript/blacklight/search_context.js
586
+ - app/javascript/blacklight-frontend/bookmark_toggle.js
587
+ - app/javascript/blacklight-frontend/button_focus.js
588
+ - app/javascript/blacklight-frontend/checkbox_submit.js
589
+ - app/javascript/blacklight-frontend/core.js
590
+ - app/javascript/blacklight-frontend/debounce.js
591
+ - app/javascript/blacklight-frontend/facet_suggest.js
592
+ - app/javascript/blacklight-frontend/index.js
593
+ - app/javascript/blacklight-frontend/modal.js
594
+ - app/javascript/blacklight-frontend/modalForm.js
595
+ - app/javascript/blacklight-frontend/search_context.js
611
596
  - app/models/blacklight/facet_paginator.rb
612
597
  - app/models/blacklight/icon.rb
613
598
  - app/models/blacklight/suggest_search.rb
@@ -664,7 +649,6 @@ files:
664
649
  - app/views/catalog/_advanced_search_help.html.erb
665
650
  - app/views/catalog/_bookmark_control.html.erb
666
651
  - app/views/catalog/_citation.html.erb
667
- - app/views/catalog/_constraints.html.erb
668
652
  - app/views/catalog/_did_you_mean.html.erb
669
653
  - app/views/catalog/_document.atom.builder
670
654
  - app/views/catalog/_document.html.erb
@@ -675,7 +659,6 @@ files:
675
659
  - app/views/catalog/_facet_layout.html.erb
676
660
  - app/views/catalog/_facet_pagination.html.erb
677
661
  - app/views/catalog/_facet_pivot.html.erb
678
- - app/views/catalog/_facets.html.erb
679
662
  - app/views/catalog/_field.json.jbuilder
680
663
  - app/views/catalog/_group.html.erb
681
664
  - app/views/catalog/_home.html.erb
@@ -684,19 +667,14 @@ files:
684
667
  - app/views/catalog/_paginate_compact.html.erb
685
668
  - app/views/catalog/_per_page_widget.html.erb
686
669
  - app/views/catalog/_results_pagination.html.erb
687
- - app/views/catalog/_search_form.html.erb
688
- - app/views/catalog/_search_header.html.erb
689
670
  - app/views/catalog/_search_results.html.erb
690
671
  - app/views/catalog/_search_results_header.html.erb
691
672
  - app/views/catalog/_search_sidebar.html.erb
692
673
  - app/views/catalog/_show_main_content.html.erb
693
674
  - app/views/catalog/_show_more_like_this.html.erb
694
- - app/views/catalog/_show_sidebar.html.erb
695
- - app/views/catalog/_show_tools.html.erb
696
675
  - app/views/catalog/_sms_form.html.erb
697
676
  - app/views/catalog/_sort_and_per_page.html.erb
698
677
  - app/views/catalog/_sort_widget.html.erb
699
- - app/views/catalog/_start_over.html.erb
700
678
  - app/views/catalog/_view_type_group.html.erb
701
679
  - app/views/catalog/_zero_results.html.erb
702
680
  - app/views/catalog/advanced_search.html.erb
@@ -737,7 +715,6 @@ files:
737
715
  - app/views/shared/_flash_messages.html.erb
738
716
  - app/views/shared/_flash_msg.html.erb
739
717
  - app/views/shared/_footer.html.erb
740
- - app/views/shared/_header_navbar.html.erb
741
718
  - app/views/shared/_modal.html.erb
742
719
  - app/views/shared/_sitelinks_search_box.html.erb
743
720
  - app/views/shared/_user_util_links.html.erb
@@ -810,7 +787,6 @@ files:
810
787
  - lib/blacklight/version.rb
811
788
  - lib/generators/blacklight/assets/importmap_generator.rb
812
789
  - lib/generators/blacklight/assets/propshaft_generator.rb
813
- - lib/generators/blacklight/assets/sprockets_generator.rb
814
790
  - lib/generators/blacklight/assets_generator.rb
815
791
  - lib/generators/blacklight/controller_generator.rb
816
792
  - lib/generators/blacklight/document_generator.rb
@@ -875,7 +851,6 @@ files:
875
851
  - spec/components/blacklight/search_context/server_item_pagination_component_spec.rb
876
852
  - spec/components/blacklight/skip_link_component_spec.rb
877
853
  - spec/components/blacklight/start_over_button_component_spec.rb
878
- - spec/components/blacklight/system/dropdown_component_spec.rb
879
854
  - spec/components/blacklight/system/flash_message_component_spec.rb
880
855
  - spec/controllers/alternate_controller_spec.rb
881
856
  - spec/controllers/application_controller_spec.rb
@@ -989,9 +964,6 @@ files:
989
964
  - spec/views/catalog/_facet_index_navigation.html.erb_spec.rb
990
965
  - spec/views/catalog/_facet_layout.html.erb_spec.rb
991
966
  - spec/views/catalog/_paginate_compact.html.erb_spec.rb
992
- - spec/views/catalog/_search_header.erb_spec.rb
993
- - spec/views/catalog/_show_sidebar.erb_spec.rb
994
- - spec/views/catalog/_show_tools.html.erb_spec.rb
995
967
  - spec/views/catalog/_sort_and_per_page.html.erb_spec.rb
996
968
  - spec/views/catalog/_sort_widget.html.erb_spec.rb
997
969
  - spec/views/catalog/_view_type_group.html.erb_spec.rb
@@ -1012,7 +984,6 @@ homepage: http://projectblacklight.org/
1012
984
  licenses:
1013
985
  - Apache 2.0
1014
986
  metadata: {}
1015
- post_install_message:
1016
987
  rdoc_options: []
1017
988
  require_paths:
1018
989
  - lib
@@ -1020,15 +991,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
1020
991
  requirements:
1021
992
  - - ">="
1022
993
  - !ruby/object:Gem::Version
1023
- version: '2.7'
994
+ version: '3.1'
1024
995
  required_rubygems_version: !ruby/object:Gem::Requirement
1025
996
  requirements:
1026
997
  - - ">="
1027
998
  - !ruby/object:Gem::Version
1028
999
  version: '0'
1029
1000
  requirements: []
1030
- rubygems_version: 3.5.9
1031
- signing_key:
1001
+ rubygems_version: 3.6.2
1032
1002
  specification_version: 4
1033
1003
  summary: Blacklight provides a discovery interface for any Solr (http://lucene.apache.org/solr)
1034
1004
  index.
@@ -1060,7 +1030,6 @@ test_files:
1060
1030
  - spec/components/blacklight/search_context/server_item_pagination_component_spec.rb
1061
1031
  - spec/components/blacklight/skip_link_component_spec.rb
1062
1032
  - spec/components/blacklight/start_over_button_component_spec.rb
1063
- - spec/components/blacklight/system/dropdown_component_spec.rb
1064
1033
  - spec/components/blacklight/system/flash_message_component_spec.rb
1065
1034
  - spec/controllers/alternate_controller_spec.rb
1066
1035
  - spec/controllers/application_controller_spec.rb
@@ -1174,9 +1143,6 @@ test_files:
1174
1143
  - spec/views/catalog/_facet_index_navigation.html.erb_spec.rb
1175
1144
  - spec/views/catalog/_facet_layout.html.erb_spec.rb
1176
1145
  - spec/views/catalog/_paginate_compact.html.erb_spec.rb
1177
- - spec/views/catalog/_search_header.erb_spec.rb
1178
- - spec/views/catalog/_show_sidebar.erb_spec.rb
1179
- - spec/views/catalog/_show_tools.html.erb_spec.rb
1180
1146
  - spec/views/catalog/_sort_and_per_page.html.erb_spec.rb
1181
1147
  - spec/views/catalog/_sort_widget.html.erb_spec.rb
1182
1148
  - spec/views/catalog/_view_type_group.html.erb_spec.rb
data/.github/matrix.json DELETED
@@ -1,92 +0,0 @@
1
- {
2
- "ruby": [
3
- "3.3"
4
- ],
5
- "rails_version": [
6
- "7.1.5.1",
7
- "7.2.2.1"
8
- ],
9
- "bootstrap_version": [
10
- null
11
- ],
12
- "view_component_version": [
13
- "~> 3.12"
14
- ],
15
- "api": [
16
- null
17
- ],
18
- "additional_engine_cart_rails_options": [
19
- ""
20
- ],
21
- "additional_name": [
22
- ""
23
- ],
24
- "include": [
25
- {
26
- "ruby": "3.3",
27
- "rails_version": "8.0.1",
28
- "additional_engine_cart_rails_options": "--css=bootstrap"
29
- },
30
- {
31
- "ruby": "3.3",
32
- "rails_version": "8.0.1",
33
- "additional_engine_cart_rails_options": "--css=bootstrap --js=esbuild",
34
- "additional_name": "| esbuild"
35
- },
36
- {
37
- "ruby": "3.3",
38
- "rails_version": "8.0.1",
39
- "view_component_version": "~> 4.0",
40
- "additional_engine_cart_rails_options": "--css=bootstrap",
41
- "additional_name": "| ViewComponent 4"
42
- },
43
- {
44
- "ruby": "3.3",
45
- "rails_version": "8.0.1",
46
- "view_component_version": "~> 4.0",
47
- "additional_engine_cart_rails_options": "--css=bootstrap --js=esbuild",
48
- "additional_name": "| esbuild, ViewComponent 4"
49
- },
50
- {
51
- "ruby": "3.2",
52
- "rails_version": "7.1.5.1",
53
- "solr_version": "8.11.2",
54
- "additional_name": "Solr 8.11.2"
55
- },
56
- {
57
- "ruby": "3.1",
58
- "rails_version": "7.1.5.1"
59
- },
60
- {
61
- "ruby": "3.1",
62
- "rails_version": "7.1.5.1",
63
- "view_component_version": "~> 2.74",
64
- "additional_name": "| ViewComponent 2"
65
- },
66
- {
67
- "ruby": "3.1",
68
- "rails_version": "7.1.5.1",
69
- "additional_name": "| Propshaft",
70
- "additional_engine_cart_rails_options": "-a propshaft --css=bootstrap"
71
- },
72
- {
73
- "ruby": "3.1",
74
- "rails_version": "7.1.5.1",
75
- "bootstrap_version": "~> 4.0",
76
- "additional_name": "| Bootstrap 4"
77
- },
78
- {
79
- "ruby": "3.3",
80
- "rails_version": "7.1.5.1",
81
- "api": "true",
82
- "additional_engine_cart_rails_options": "--api --skip-yarn",
83
- "additional_name": "| API"
84
- },
85
- {
86
- "ruby": "3.3",
87
- "rails_version": "7.2.2.1",
88
- "additional_engine_cart_rails_options": "-a propshaft --css=bootstrap --js=esbuild",
89
- "additional_name": "| Propshaft, esbuild"
90
- }
91
- ]
92
- }
@@ -1,16 +0,0 @@
1
- on:
2
- workflow_call:
3
- inputs:
4
- ref:
5
- required: false
6
- type: string
7
- default: ''
8
- jobs:
9
- build:
10
- runs-on: ubuntu-latest
11
- steps:
12
- - uses: actions/checkout@v4
13
- with:
14
- ref: ${{ inputs.ref }}
15
- - name: Build docker image
16
- run: docker compose build app
@@ -1,25 +0,0 @@
1
- on:
2
- workflow_call:
3
- inputs:
4
- ref:
5
- required: false
6
- type: string
7
- default: ''
8
- jobs:
9
- lint:
10
- runs-on: ubuntu-latest
11
- steps:
12
- - uses: actions/checkout@v4
13
- with:
14
- ref: ${{ inputs.ref }}
15
- - name: Set up Ruby
16
- uses: ruby/setup-ruby@v1
17
- with:
18
- ruby-version: 3.2
19
- bundler: "latest"
20
- - name: Change permissions
21
- run: "chmod -f -R o-w /opt/hostedtoolcache/Ruby/3.2.5/x64/lib/ruby/gems/3.2.0/gems | :"
22
- - name: Install dependencies
23
- run: bundle install
24
- - name: Run linter
25
- run: bundle exec rake rubocop
@@ -1,24 +0,0 @@
1
- # This workflow uses actions that are not certified by GitHub.
2
- # They are provided by a third-party and are governed by
3
- # separate terms of service, privacy policy, and support
4
- # documentation.
5
- # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
6
- # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
7
-
8
- name: CI
9
-
10
- on:
11
- push:
12
- branches:
13
- - main
14
- - "release-*"
15
- pull_request:
16
- jobs:
17
- lint:
18
- uses: ./.github/workflows/lint.yml
19
- test:
20
- uses: ./.github/workflows/test.yml
21
- with:
22
- ruby: '["3.3"]'
23
- docker_build:
24
- uses: ./.github/workflows/build.yml
@@ -1,58 +0,0 @@
1
- on:
2
- workflow_call:
3
- inputs:
4
- ref:
5
- required: false
6
- type: string
7
- default: ''
8
- description: The branch or reference to run the workflow against
9
- ruby:
10
- required: false
11
- type: string
12
- default: ''
13
- description: Deprecated - use matrix.json instead
14
- jobs:
15
- set_matrix:
16
- runs-on: ubuntu-latest
17
- outputs:
18
- matrix: ${{ steps.matrix.outputs.matrix }}
19
- steps:
20
- - name: Checkout repository
21
- uses: actions/checkout@v3
22
- with:
23
- ref: ${{ inputs.ref }}
24
- - name: Echo ./.github/matrix.json
25
- id: matrix
26
- run: |
27
- echo "matrix<<EOF" >> $GITHUB_OUTPUT
28
- cat ./.github/matrix.json >> $GITHUB_OUTPUT
29
- echo "EOF" >> $GITHUB_OUTPUT
30
- test:
31
- needs: set_matrix
32
- runs-on: ubuntu-latest
33
- name: ruby ${{ matrix.ruby }} | rails ${{ matrix.rails_version }} ${{ matrix.additional_name }}
34
- strategy:
35
- fail-fast: false
36
- matrix: ${{fromJson(needs.set_matrix.outputs.matrix)}}
37
- env:
38
- RAILS_VERSION: ${{ matrix.rails_version }}
39
- SOLR_VERSION: ${{ matrix.solr_version || 'latest' }}
40
- VIEW_COMPONENT_VERSION: ${{ matrix.view_component_version }}
41
- BOOTSTRAP_VERSION: ${{ matrix.bootstrap_version }}
42
- BLACKLIGHT_API_TEST: ${{ matrix.api }}
43
- ENGINE_CART_RAILS_OPTIONS: "--skip-git --skip-listen --skip-spring --skip-keeps --skip-kamal --skip-solid --skip-coffee --skip-test ${{ matrix.additional_engine_cart_rails_options }}"
44
- steps:
45
- - uses: actions/checkout@v4
46
- with:
47
- ref: ${{ inputs.ref }}
48
- - name: Set up Ruby
49
- uses: ruby/setup-ruby@v1
50
- with:
51
- bundler: "latest"
52
- ruby-version: ${{ matrix.ruby }}
53
- - name: Change permissions
54
- run: "chmod -f -R o-w /opt/hostedtoolcache/Ruby/3.2.5/x64/lib/ruby/gems/3.2.0/gems | :"
55
- - name: Install dependencies
56
- run: bundle install
57
- - name: Run tests
58
- run: bundle exec rake ci
@@ -1,25 +0,0 @@
1
- auto-complete [aria-selected="true"],
2
- auto-complete [role="option"]:hover {
3
- background-color: $dropdown-link-hover-bg;
4
- }
5
- auto-complete {
6
- position: relative;
7
- flex-grow: 3;
8
-
9
- ul {
10
- list-style-type: none;
11
- position: absolute;
12
- background-color: $dropdown-bg;
13
- padding-left: 0;
14
- border: 1px solid $dropdown-border-color;
15
- border-radius: $dropdown-border-radius;
16
- }
17
-
18
- [role="option"]{
19
- padding: 0.25rem 1.5rem;
20
- }
21
- }
22
-
23
- .no-js #autocomplete-popup {
24
- display: none;
25
- }
@@ -1,20 +0,0 @@
1
- // define a visually-hidden class that applies to a given breakpoint and below
2
- // https://getbootstrap.com/docs/5.3/helpers/visually-hidden/
3
- @if mixin-exists(visually-hidden) {
4
- @each $breakpoint in map-keys($grid-breakpoints) {
5
- .visually-hidden-#{$breakpoint} {
6
- @include media-breakpoint-down($breakpoint) {
7
- @include visually-hidden;
8
- }
9
- }
10
- }
11
- } @else if mixin-exists(sr-only) {
12
- // Bootstrap 4 version
13
- @each $breakpoint in map-keys($grid-breakpoints) {
14
- .visually-hidden-#{$breakpoint} {
15
- @include media-breakpoint-down($breakpoint) {
16
- @include sr-only;
17
- }
18
- }
19
- }
20
- }
@@ -1,30 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Blacklight
4
- module Icons
5
- class LegacyIconComponent < ::ViewComponent::Base
6
- def initialize(name:, classes: '', aria_hidden: false, label: true, role: 'img', additional_options: {})
7
- @name = name
8
- @classes = classes
9
- @aria_hidden = aria_hidden
10
- @icon = Blacklight::Icon.new(name, classes: classes, label: label, role: role, additional_options: additional_options)
11
- end
12
-
13
- def call
14
- tag.span(svg&.html_safe || default_icon, # rubocop:disable Rails/OutputSafety
15
- class: "blacklight-icons blacklight-icon-#{@name} #{@classes}".strip,
16
- 'aria-hidden': (true if @aria_hidden))
17
- end
18
-
19
- def svg
20
- Rails.cache.fetch([:blacklight_icon_svg, @name]) do
21
- @icon.svg if @icon.present?
22
- end
23
- end
24
-
25
- def default_icon
26
- @icon.icon_label
27
- end
28
- end
29
- end
30
- end