blacklight 8.10.1 → 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 (189) 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/README.md +30 -8
  8. data/VERSION +1 -1
  9. data/app/assets/builds/blacklight.css +448 -0
  10. data/app/assets/javascripts/blacklight/blacklight.esm.js +8 -40
  11. data/app/assets/javascripts/blacklight/blacklight.esm.js.map +1 -1
  12. data/app/assets/javascripts/blacklight/blacklight.js +8 -40
  13. data/app/assets/javascripts/blacklight/blacklight.js.map +1 -1
  14. data/app/assets/stylesheets/blacklight/_balanced_list.scss +1 -4
  15. data/app/assets/stylesheets/blacklight/_blacklight_base.scss +1 -3
  16. data/app/assets/stylesheets/blacklight/_bookmark.scss +44 -41
  17. data/app/assets/stylesheets/blacklight/_bootstrap_overrides.scss +0 -29
  18. data/app/assets/stylesheets/blacklight/_constraints.scss +15 -24
  19. data/app/assets/stylesheets/blacklight/_controls.scss +2 -18
  20. data/app/assets/stylesheets/blacklight/_facets.scss +15 -82
  21. data/app/assets/stylesheets/blacklight/_group.scss +2 -5
  22. data/app/assets/stylesheets/blacklight/_header.scss +4 -11
  23. data/app/assets/stylesheets/blacklight/_icons.scss +0 -8
  24. data/app/assets/stylesheets/blacklight/_modal.scss +9 -10
  25. data/app/assets/stylesheets/blacklight/_pagination.scss +3 -5
  26. data/app/assets/stylesheets/blacklight/_search_form.scss +0 -1
  27. data/app/assets/stylesheets/blacklight/_search_history.scss +0 -4
  28. data/app/assets/stylesheets/blacklight/_search_results.scss +1 -15
  29. data/app/assets/stylesheets/blacklight/blacklight_defaults.scss +9 -17
  30. data/app/assets/stylesheets/blacklight/build.scss +4 -0
  31. data/app/components/blacklight/advanced_search_form_component.rb +1 -1
  32. data/app/components/blacklight/constraint_component.rb +1 -1
  33. data/app/components/blacklight/constraint_layout_component.html.erb +2 -2
  34. data/app/components/blacklight/constraints_component.html.erb +2 -2
  35. data/app/components/blacklight/constraints_component.rb +1 -1
  36. data/app/components/blacklight/document/action_component.rb +3 -1
  37. data/app/components/blacklight/document/bookmark_component.html.erb +3 -3
  38. data/app/components/blacklight/document/group_component.html.erb +1 -1
  39. data/app/components/blacklight/document/page_header_component.rb +1 -1
  40. data/app/components/blacklight/document/sidebar_component.rb +5 -5
  41. data/app/components/blacklight/document_component.rb +9 -13
  42. data/app/components/blacklight/document_title_component.rb +3 -2
  43. data/app/components/blacklight/facet_field_component.html.erb +5 -5
  44. data/app/components/blacklight/facet_field_list_component.rb +4 -22
  45. data/app/components/blacklight/facet_field_pagination_component.html.erb +2 -2
  46. data/app/components/blacklight/facet_item_component.rb +2 -2
  47. data/app/components/blacklight/facet_item_pivot_component.rb +2 -2
  48. data/app/components/blacklight/response/facet_group_component.html.erb +3 -18
  49. data/app/components/blacklight/response/facet_group_component.rb +7 -23
  50. data/app/components/blacklight/response/facet_toggle_button_component.html.erb +16 -0
  51. data/app/components/blacklight/response/facet_toggle_button_component.rb +14 -0
  52. data/app/components/blacklight/response/pagination_component.html.erb +1 -1
  53. data/app/components/blacklight/response/pagination_component.rb +2 -1
  54. data/app/components/blacklight/response/sort_component.rb +1 -0
  55. data/app/components/blacklight/response/view_type_button_component.html.erb +1 -1
  56. data/app/components/blacklight/response/view_type_component.html.erb +1 -1
  57. data/app/components/blacklight/search/facet_suggest_input.html.erb +7 -10
  58. data/app/components/blacklight/search/facet_suggest_input.rb +0 -4
  59. data/app/components/blacklight/search/per_page_component.html.erb +1 -1
  60. data/app/components/blacklight/search/per_page_component.rb +1 -0
  61. data/app/components/blacklight/search/sidebar_component.html.erb +1 -1
  62. data/app/components/blacklight/search/sidebar_component.rb +1 -1
  63. data/app/components/blacklight/search_bar_component.html.erb +3 -3
  64. data/app/components/blacklight/search_bar_component.rb +2 -2
  65. data/app/components/blacklight/search_button_component.rb +2 -2
  66. data/app/components/blacklight/search_context/server_applied_params_component.html.erb +2 -2
  67. data/app/components/blacklight/search_context/server_applied_params_component.rb +9 -0
  68. data/app/components/blacklight/skip_link_component.html.erb +1 -1
  69. data/app/components/blacklight/skip_link_component.rb +7 -3
  70. data/app/components/blacklight/skip_link_item_component.rb +18 -0
  71. data/app/components/blacklight/system/dropdown_component.html.erb +1 -1
  72. data/app/components/blacklight/system/dropdown_component.rb +1 -1
  73. data/app/components/blacklight/top_navbar_component.html.erb +1 -1
  74. data/app/controllers/concerns/blacklight/catalog.rb +3 -2
  75. data/app/controllers/concerns/blacklight/search_context.rb +1 -13
  76. data/app/helpers/blacklight/blacklight_helper_behavior.rb +0 -6
  77. data/app/helpers/blacklight/catalog_helper_behavior.rb +1 -11
  78. data/app/helpers/blacklight/configuration_helper_behavior.rb +0 -12
  79. data/app/helpers/blacklight/document_helper_behavior.rb +0 -26
  80. data/app/helpers/blacklight/icon_helper_behavior.rb +1 -9
  81. data/app/helpers/blacklight/layout_helper_behavior.rb +2 -2
  82. data/app/helpers/blacklight/render_partials_helper_behavior.rb +0 -14
  83. data/app/helpers/blacklight/url_helper_behavior.rb +1 -1
  84. data/app/javascript/{blacklight → blacklight-frontend}/bookmark_toggle.js +1 -1
  85. data/app/javascript/{blacklight → blacklight-frontend}/core.js +2 -10
  86. data/app/javascript/{blacklight → blacklight-frontend}/debounce.js +1 -1
  87. data/app/javascript/blacklight-frontend/facet_suggest.js +26 -0
  88. data/app/javascript/blacklight-frontend/index.js +18 -0
  89. data/app/javascript/{blacklight → blacklight-frontend}/modal.js +2 -3
  90. data/app/javascript/{blacklight → blacklight-frontend}/search_context.js +2 -3
  91. data/app/models/concerns/blacklight/document.rb +0 -11
  92. data/app/models/concerns/blacklight/user.rb +1 -1
  93. data/app/presenters/blacklight/facet_field_presenter.rb +2 -2
  94. data/app/presenters/blacklight/json_presenter.rb +3 -1
  95. data/app/services/blacklight/search_params_yaml_coder.rb +0 -2
  96. data/app/views/bookmarks/_clear_bookmarks_widget.html.erb +0 -2
  97. data/app/views/bookmarks/index.html.erb +1 -1
  98. data/app/views/catalog/_results_pagination.html.erb +2 -5
  99. data/app/views/catalog/_search_results.html.erb +4 -4
  100. data/app/views/catalog/_search_results_header.html.erb +1 -1
  101. data/app/views/catalog/_sort_and_per_page.html.erb +1 -1
  102. data/app/views/catalog/_sort_widget.html.erb +1 -0
  103. data/app/views/catalog/facet.html.erb +9 -9
  104. data/app/views/catalog/show.html.erb +2 -3
  105. data/app/views/kaminari/blacklight/_paginator.html.erb +1 -2
  106. data/app/views/layouts/blacklight/base.html.erb +3 -7
  107. data/app/views/search_history/index.html.erb +0 -2
  108. data/blacklight.gemspec +4 -4
  109. data/config/importmap.rb +1 -1
  110. data/config/locales/blacklight.ar.yml +4 -4
  111. data/config/locales/blacklight.ca.yml +124 -124
  112. data/config/locales/blacklight.de.yml +2 -2
  113. data/config/locales/blacklight.en.yml +14 -14
  114. data/config/locales/blacklight.es.yml +4 -4
  115. data/config/locales/blacklight.fr.yml +4 -4
  116. data/config/locales/blacklight.hu.yml +4 -4
  117. data/config/locales/blacklight.it.yml +3 -3
  118. data/config/locales/blacklight.nl.yml +3 -3
  119. data/config/locales/blacklight.pt-BR.yml +3 -3
  120. data/config/locales/blacklight.sq.yml +4 -4
  121. data/config/locales/blacklight.zh.yml +4 -4
  122. data/lib/blacklight/configuration/display_field.rb +1 -1
  123. data/lib/blacklight/configuration/fields.rb +3 -3
  124. data/lib/blacklight/configuration/view_config.rb +0 -2
  125. data/lib/blacklight/configuration.rb +7 -12
  126. data/lib/blacklight/engine.rb +0 -6
  127. data/lib/blacklight/open_struct_with_hash_access.rb +4 -4
  128. data/lib/blacklight/search_builder.rb +4 -4
  129. data/lib/blacklight/search_state/filter_field.rb +2 -2
  130. data/lib/blacklight/solr/request.rb +1 -7
  131. data/lib/blacklight/solr/response/group_response.rb +2 -2
  132. data/lib/blacklight.rb +1 -1
  133. data/lib/generators/blacklight/assets/importmap_generator.rb +8 -24
  134. data/lib/generators/blacklight/assets/propshaft_generator.rb +1 -1
  135. data/lib/generators/blacklight/assets_generator.rb +3 -3
  136. data/lib/generators/blacklight/controller_generator.rb +3 -3
  137. data/lib/generators/blacklight/user_generator.rb +9 -10
  138. data/package.json +14 -4
  139. data/rollup.config.js +1 -1
  140. data/spec/components/blacklight/document/action_component_spec.rb +1 -5
  141. data/spec/components/blacklight/document/sidebar_component_spec.rb +5 -20
  142. data/spec/components/blacklight/facet_field_checkboxes_component_spec.rb +2 -2
  143. data/spec/components/blacklight/facet_field_list_component_spec.rb +2 -2
  144. data/spec/components/blacklight/search/facet_suggest_input_spec.rb +3 -27
  145. data/spec/components/blacklight/search_bar_component_spec.rb +1 -1
  146. data/spec/controllers/catalog_controller_spec.rb +1 -1
  147. data/spec/features/axe_spec.rb +6 -11
  148. data/spec/features/bookmarks_spec.rb +48 -11
  149. data/spec/features/facets_spec.rb +22 -90
  150. data/spec/features/search_context_spec.rb +1 -2
  151. data/spec/features/search_filters_spec.rb +6 -6
  152. data/spec/helpers/blacklight/configuration_helper_behavior_spec.rb +0 -9
  153. data/spec/helpers/blacklight/render_partials_helper_behavior_spec.rb +1 -1
  154. data/spec/lib/blacklight/parameters_spec.rb +1 -12
  155. data/spec/lib/blacklight/search_state/filter_field_spec.rb +0 -18
  156. data/spec/models/blacklight/solr/request_spec.rb +7 -0
  157. data/spec/services/blacklight/search_service_spec.rb +1 -1
  158. data/spec/views/catalog/_facet_layout.html.erb_spec.rb +3 -3
  159. data/spec/views/catalog/facet.html.erb_spec.rb +0 -8
  160. data/spec/views/catalog/index.html.erb_spec.rb +6 -3
  161. data/spec/views/catalog/show.html.erb_spec.rb +1 -0
  162. data/tasks/blacklight.rake +8 -5
  163. metadata +31 -61
  164. data/.github/matrix.json +0 -78
  165. data/.github/workflows/build.yml +0 -16
  166. data/.github/workflows/lint.yml +0 -25
  167. data/.github/workflows/main.yml +0 -24
  168. data/.github/workflows/test.yml +0 -58
  169. data/app/assets/stylesheets/blacklight/_autocomplete.scss +0 -25
  170. data/app/assets/stylesheets/blacklight/_mixins.scss +0 -20
  171. data/app/components/blacklight/icons/legacy_icon_component.rb +0 -30
  172. data/app/javascript/blacklight/facet_suggest.js +0 -48
  173. data/app/javascript/blacklight/index.js +0 -18
  174. data/app/views/catalog/_constraints.html.erb +0 -1
  175. data/app/views/catalog/_facets.html.erb +0 -5
  176. data/app/views/catalog/_search_form.html.erb +0 -7
  177. data/app/views/catalog/_search_header.html.erb +0 -1
  178. data/app/views/catalog/_show_sidebar.html.erb +0 -3
  179. data/app/views/catalog/_show_tools.html.erb +0 -2
  180. data/app/views/catalog/_start_over.html.erb +0 -1
  181. data/app/views/shared/_header_navbar.html.erb +0 -1
  182. data/lib/generators/blacklight/assets/sprockets_generator.rb +0 -68
  183. data/spec/components/blacklight/system/dropdown_component_spec.rb +0 -26
  184. data/spec/views/catalog/_search_header.erb_spec.rb +0 -14
  185. data/spec/views/catalog/_show_sidebar.erb_spec.rb +0 -24
  186. data/spec/views/catalog/_show_tools.html.erb_spec.rb +0 -37
  187. /data/app/javascript/{blacklight → blacklight-frontend}/button_focus.js +0 -0
  188. /data/app/javascript/{blacklight → blacklight-frontend}/checkbox_submit.js +0 -0
  189. /data/app/javascript/{blacklight → blacklight-frontend}/modalForm.js +0 -0
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.10.1
4
+ version: 9.0.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonathan Rochkind
@@ -16,7 +16,7 @@ authors:
16
16
  - Justin Coyne
17
17
  bindir: exe
18
18
  cert_chain: []
19
- date: 2025-04-29 00:00:00.000000000 Z
19
+ date: 2025-02-06 00:00:00.000000000 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: rails
@@ -24,7 +24,7 @@ dependencies:
24
24
  requirements:
25
25
  - - ">="
26
26
  - !ruby/object:Gem::Version
27
- version: '6.1'
27
+ version: '7.0'
28
28
  - - "<"
29
29
  - !ruby/object:Gem::Version
30
30
  version: '9'
@@ -34,7 +34,7 @@ dependencies:
34
34
  requirements:
35
35
  - - ">="
36
36
  - !ruby/object:Gem::Version
37
- version: '6.1'
37
+ version: '7.0'
38
38
  - - "<"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '9'
@@ -112,22 +112,16 @@ dependencies:
112
112
  name: view_component
113
113
  requirement: !ruby/object:Gem::Requirement
114
114
  requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '2.74'
118
- - - "<"
115
+ - - "~>"
119
116
  - !ruby/object:Gem::Version
120
- version: '4'
117
+ version: '3.9'
121
118
  type: :runtime
122
119
  prerelease: false
123
120
  version_requirements: !ruby/object:Gem::Requirement
124
121
  requirements:
125
- - - ">="
126
- - !ruby/object:Gem::Version
127
- version: '2.74'
128
- - - "<"
122
+ - - "~>"
129
123
  - !ruby/object:Gem::Version
130
- version: '4'
124
+ version: '3.9'
131
125
  - !ruby/object:Gem::Dependency
132
126
  name: zeitwerk
133
127
  requirement: !ruby/object:Gem::Requirement
@@ -166,22 +160,16 @@ dependencies:
166
160
  name: rspec-rails
167
161
  requirement: !ruby/object:Gem::Requirement
168
162
  requirements:
169
- - - ">="
170
- - !ruby/object:Gem::Version
171
- version: '6.1'
172
- - - "<"
163
+ - - "~>"
173
164
  - !ruby/object:Gem::Version
174
- version: '8'
165
+ version: '7.0'
175
166
  type: :development
176
167
  prerelease: false
177
168
  version_requirements: !ruby/object:Gem::Requirement
178
169
  requirements:
179
- - - ">="
180
- - !ruby/object:Gem::Version
181
- version: '6.1'
182
- - - "<"
170
+ - - "~>"
183
171
  - !ruby/object:Gem::Version
184
- version: '8'
172
+ version: '7.0'
185
173
  - !ruby/object:Gem::Dependency
186
174
  name: rspec-collection_matchers
187
175
  requirement: !ruby/object:Gem::Requirement
@@ -421,11 +409,8 @@ files:
421
409
  - ".docker/app/entrypoint.sh"
422
410
  - ".dockerignore"
423
411
  - ".env"
424
- - ".github/matrix.json"
425
- - ".github/workflows/build.yml"
426
- - ".github/workflows/lint.yml"
427
- - ".github/workflows/main.yml"
428
- - ".github/workflows/test.yml"
412
+ - ".github/pull_request_template.md"
413
+ - ".github/workflows/ruby.yml"
429
414
  - ".gitignore"
430
415
  - ".hound.yml"
431
416
  - ".jshintrc"
@@ -440,6 +425,7 @@ files:
440
425
  - README.md
441
426
  - Rakefile
442
427
  - VERSION
428
+ - app/assets/builds/blacklight.css
443
429
  - app/assets/config/blacklight/manifest.js
444
430
  - app/assets/images/blacklight/logo.png
445
431
  - app/assets/images/favicon.ico
@@ -447,7 +433,6 @@ files:
447
433
  - app/assets/javascripts/blacklight/blacklight.esm.js.map
448
434
  - app/assets/javascripts/blacklight/blacklight.js
449
435
  - app/assets/javascripts/blacklight/blacklight.js.map
450
- - app/assets/stylesheets/blacklight/_autocomplete.scss
451
436
  - app/assets/stylesheets/blacklight/_balanced_list.scss
452
437
  - app/assets/stylesheets/blacklight/_blacklight_base.scss
453
438
  - app/assets/stylesheets/blacklight/_bookmark.scss
@@ -459,7 +444,6 @@ files:
459
444
  - app/assets/stylesheets/blacklight/_header.scss
460
445
  - app/assets/stylesheets/blacklight/_icons.scss
461
446
  - app/assets/stylesheets/blacklight/_layout.scss
462
- - app/assets/stylesheets/blacklight/_mixins.scss
463
447
  - app/assets/stylesheets/blacklight/_modal.scss
464
448
  - app/assets/stylesheets/blacklight/_pagination.scss
465
449
  - app/assets/stylesheets/blacklight/_search_form.scss
@@ -467,6 +451,7 @@ files:
467
451
  - app/assets/stylesheets/blacklight/_search_results.scss
468
452
  - app/assets/stylesheets/blacklight/blacklight.scss
469
453
  - app/assets/stylesheets/blacklight/blacklight_defaults.scss
454
+ - app/assets/stylesheets/blacklight/build.scss
470
455
  - app/builders/blacklight/action_builder.rb
471
456
  - app/components/blacklight/advanced_search_form_component.html.erb
472
457
  - app/components/blacklight/advanced_search_form_component.rb
@@ -523,7 +508,6 @@ files:
523
508
  - app/components/blacklight/hidden_search_state_component.rb
524
509
  - app/components/blacklight/icons/bookmark_icon_component.rb
525
510
  - app/components/blacklight/icons/icon_component.rb
526
- - app/components/blacklight/icons/legacy_icon_component.rb
527
511
  - app/components/blacklight/icons/list_component.rb
528
512
  - app/components/blacklight/icons/remove_component.rb
529
513
  - app/components/blacklight/icons/search_component.rb
@@ -534,6 +518,8 @@ files:
534
518
  - app/components/blacklight/metadata_field_plain_text_layout_component.rb
535
519
  - app/components/blacklight/response/facet_group_component.html.erb
536
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
537
523
  - app/components/blacklight/response/pagination_component.html.erb
538
524
  - app/components/blacklight/response/pagination_component.rb
539
525
  - app/components/blacklight/response/sort_component.html.erb
@@ -564,6 +550,7 @@ files:
564
550
  - app/components/blacklight/search_navbar_component.rb
565
551
  - app/components/blacklight/skip_link_component.html.erb
566
552
  - app/components/blacklight/skip_link_component.rb
553
+ - app/components/blacklight/skip_link_item_component.rb
567
554
  - app/components/blacklight/start_over_button_component.rb
568
555
  - app/components/blacklight/system/dropdown_button_component.rb
569
556
  - app/components/blacklight/system/dropdown_component.html.erb
@@ -596,16 +583,16 @@ files:
596
583
  - app/helpers/blacklight/url_helper_behavior.rb
597
584
  - app/helpers/blacklight_helper.rb
598
585
  - app/helpers/catalog_helper.rb
599
- - app/javascript/blacklight/bookmark_toggle.js
600
- - app/javascript/blacklight/button_focus.js
601
- - app/javascript/blacklight/checkbox_submit.js
602
- - app/javascript/blacklight/core.js
603
- - app/javascript/blacklight/debounce.js
604
- - app/javascript/blacklight/facet_suggest.js
605
- - app/javascript/blacklight/index.js
606
- - app/javascript/blacklight/modal.js
607
- - app/javascript/blacklight/modalForm.js
608
- - 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
609
596
  - app/models/blacklight/facet_paginator.rb
610
597
  - app/models/blacklight/icon.rb
611
598
  - app/models/blacklight/suggest_search.rb
@@ -662,7 +649,6 @@ files:
662
649
  - app/views/catalog/_advanced_search_help.html.erb
663
650
  - app/views/catalog/_bookmark_control.html.erb
664
651
  - app/views/catalog/_citation.html.erb
665
- - app/views/catalog/_constraints.html.erb
666
652
  - app/views/catalog/_did_you_mean.html.erb
667
653
  - app/views/catalog/_document.atom.builder
668
654
  - app/views/catalog/_document.html.erb
@@ -673,7 +659,6 @@ files:
673
659
  - app/views/catalog/_facet_layout.html.erb
674
660
  - app/views/catalog/_facet_pagination.html.erb
675
661
  - app/views/catalog/_facet_pivot.html.erb
676
- - app/views/catalog/_facets.html.erb
677
662
  - app/views/catalog/_field.json.jbuilder
678
663
  - app/views/catalog/_group.html.erb
679
664
  - app/views/catalog/_home.html.erb
@@ -682,19 +667,14 @@ files:
682
667
  - app/views/catalog/_paginate_compact.html.erb
683
668
  - app/views/catalog/_per_page_widget.html.erb
684
669
  - app/views/catalog/_results_pagination.html.erb
685
- - app/views/catalog/_search_form.html.erb
686
- - app/views/catalog/_search_header.html.erb
687
670
  - app/views/catalog/_search_results.html.erb
688
671
  - app/views/catalog/_search_results_header.html.erb
689
672
  - app/views/catalog/_search_sidebar.html.erb
690
673
  - app/views/catalog/_show_main_content.html.erb
691
674
  - app/views/catalog/_show_more_like_this.html.erb
692
- - app/views/catalog/_show_sidebar.html.erb
693
- - app/views/catalog/_show_tools.html.erb
694
675
  - app/views/catalog/_sms_form.html.erb
695
676
  - app/views/catalog/_sort_and_per_page.html.erb
696
677
  - app/views/catalog/_sort_widget.html.erb
697
- - app/views/catalog/_start_over.html.erb
698
678
  - app/views/catalog/_view_type_group.html.erb
699
679
  - app/views/catalog/_zero_results.html.erb
700
680
  - app/views/catalog/advanced_search.html.erb
@@ -735,7 +715,6 @@ files:
735
715
  - app/views/shared/_flash_messages.html.erb
736
716
  - app/views/shared/_flash_msg.html.erb
737
717
  - app/views/shared/_footer.html.erb
738
- - app/views/shared/_header_navbar.html.erb
739
718
  - app/views/shared/_modal.html.erb
740
719
  - app/views/shared/_sitelinks_search_box.html.erb
741
720
  - app/views/shared/_user_util_links.html.erb
@@ -808,7 +787,6 @@ files:
808
787
  - lib/blacklight/version.rb
809
788
  - lib/generators/blacklight/assets/importmap_generator.rb
810
789
  - lib/generators/blacklight/assets/propshaft_generator.rb
811
- - lib/generators/blacklight/assets/sprockets_generator.rb
812
790
  - lib/generators/blacklight/assets_generator.rb
813
791
  - lib/generators/blacklight/controller_generator.rb
814
792
  - lib/generators/blacklight/document_generator.rb
@@ -873,7 +851,6 @@ files:
873
851
  - spec/components/blacklight/search_context/server_item_pagination_component_spec.rb
874
852
  - spec/components/blacklight/skip_link_component_spec.rb
875
853
  - spec/components/blacklight/start_over_button_component_spec.rb
876
- - spec/components/blacklight/system/dropdown_component_spec.rb
877
854
  - spec/components/blacklight/system/flash_message_component_spec.rb
878
855
  - spec/controllers/alternate_controller_spec.rb
879
856
  - spec/controllers/application_controller_spec.rb
@@ -987,9 +964,6 @@ files:
987
964
  - spec/views/catalog/_facet_index_navigation.html.erb_spec.rb
988
965
  - spec/views/catalog/_facet_layout.html.erb_spec.rb
989
966
  - spec/views/catalog/_paginate_compact.html.erb_spec.rb
990
- - spec/views/catalog/_search_header.erb_spec.rb
991
- - spec/views/catalog/_show_sidebar.erb_spec.rb
992
- - spec/views/catalog/_show_tools.html.erb_spec.rb
993
967
  - spec/views/catalog/_sort_and_per_page.html.erb_spec.rb
994
968
  - spec/views/catalog/_sort_widget.html.erb_spec.rb
995
969
  - spec/views/catalog/_view_type_group.html.erb_spec.rb
@@ -1017,14 +991,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
1017
991
  requirements:
1018
992
  - - ">="
1019
993
  - !ruby/object:Gem::Version
1020
- version: '2.7'
994
+ version: '3.1'
1021
995
  required_rubygems_version: !ruby/object:Gem::Requirement
1022
996
  requirements:
1023
997
  - - ">="
1024
998
  - !ruby/object:Gem::Version
1025
999
  version: '0'
1026
1000
  requirements: []
1027
- rubygems_version: 3.6.3
1001
+ rubygems_version: 3.6.2
1028
1002
  specification_version: 4
1029
1003
  summary: Blacklight provides a discovery interface for any Solr (http://lucene.apache.org/solr)
1030
1004
  index.
@@ -1056,7 +1030,6 @@ test_files:
1056
1030
  - spec/components/blacklight/search_context/server_item_pagination_component_spec.rb
1057
1031
  - spec/components/blacklight/skip_link_component_spec.rb
1058
1032
  - spec/components/blacklight/start_over_button_component_spec.rb
1059
- - spec/components/blacklight/system/dropdown_component_spec.rb
1060
1033
  - spec/components/blacklight/system/flash_message_component_spec.rb
1061
1034
  - spec/controllers/alternate_controller_spec.rb
1062
1035
  - spec/controllers/application_controller_spec.rb
@@ -1170,9 +1143,6 @@ test_files:
1170
1143
  - spec/views/catalog/_facet_index_navigation.html.erb_spec.rb
1171
1144
  - spec/views/catalog/_facet_layout.html.erb_spec.rb
1172
1145
  - spec/views/catalog/_paginate_compact.html.erb_spec.rb
1173
- - spec/views/catalog/_search_header.erb_spec.rb
1174
- - spec/views/catalog/_show_sidebar.erb_spec.rb
1175
- - spec/views/catalog/_show_tools.html.erb_spec.rb
1176
1146
  - spec/views/catalog/_sort_and_per_page.html.erb_spec.rb
1177
1147
  - spec/views/catalog/_sort_widget.html.erb_spec.rb
1178
1148
  - spec/views/catalog/_view_type_group.html.erb_spec.rb
data/.github/matrix.json DELETED
@@ -1,78 +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.2",
38
- "rails_version": "7.1.5.1",
39
- "solr_version": "8.11.2",
40
- "additional_name": "Solr 8.11.2"
41
- },
42
- {
43
- "ruby": "3.1",
44
- "rails_version": "7.1.5.1"
45
- },
46
- {
47
- "ruby": "3.1",
48
- "rails_version": "7.1.5.1",
49
- "view_component_version": "~> 2.74",
50
- "additional_name": "| ViewComponent 2"
51
- },
52
- {
53
- "ruby": "3.1",
54
- "rails_version": "7.1.5.1",
55
- "additional_name": "| Propshaft",
56
- "additional_engine_cart_rails_options": "-a propshaft --css=bootstrap"
57
- },
58
- {
59
- "ruby": "3.1",
60
- "rails_version": "7.1.5.1",
61
- "bootstrap_version": "~> 4.0",
62
- "additional_name": "| Bootstrap 4"
63
- },
64
- {
65
- "ruby": "3.3",
66
- "rails_version": "7.1.5.1",
67
- "api": "true",
68
- "additional_engine_cart_rails_options": "--api --skip-yarn",
69
- "additional_name": "| API"
70
- },
71
- {
72
- "ruby": "3.3",
73
- "rails_version": "7.2.2.1",
74
- "additional_engine_cart_rails_options": "-a propshaft --css=bootstrap --js=esbuild",
75
- "additional_name": "| Propshaft, esbuild"
76
- }
77
- ]
78
- }
@@ -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
@@ -1,48 +0,0 @@
1
- import debounce from "blacklight/debounce";
2
-
3
- const FacetSuggest = async (e) => {
4
- if (e.target.matches('.facet-suggest')) {
5
- const queryFragment = e.target.value?.trim();
6
- const facetField = e.target.dataset.facetField;
7
- const facetArea = document.querySelector('.facet-extended-list');
8
- const prevNextLinks = document.querySelectorAll('.prev_next_links');
9
-
10
- if (!facetField) { return; }
11
-
12
- // Get the search params from the current query so the facet suggestions
13
- // can retain that context.
14
- const facetSearchContext = e.target.dataset.facetSearchContext;
15
- const url = new URL(facetSearchContext, window.location.origin);
16
-
17
- // Drop facet.page so a filtered suggestion list will always start on page 1
18
- url.searchParams.delete('facet.page');
19
- const facetSearchParams = url.searchParams.toString();
20
-
21
- const urlToFetch = `/catalog/facet_suggest/${facetField}/${queryFragment}?${facetSearchParams}`;
22
-
23
- const response = await fetch(urlToFetch);
24
- if (response.ok) {
25
- const blob = await response.blob()
26
- const text = await blob.text()
27
-
28
- const facetArea = document.querySelector('.facet-extended-list');
29
-
30
- if (text && facetArea) {
31
- facetArea.innerHTML = text
32
- }
33
- }
34
-
35
- // Hide the prev/next links when a user enters text in the facet
36
- // suggestion input. They don't work with a filtered list.
37
- prevNextLinks.forEach(element => {
38
- element.classList.toggle('invisible', !!queryFragment);
39
- });
40
-
41
- // Add a class to distinguish suggested facet values vs. regular.
42
- facetArea.classList.toggle('facet-suggestions', !!queryFragment);
43
- }
44
- };
45
-
46
- document.addEventListener('input', debounce(FacetSuggest));
47
-
48
- export default FacetSuggest
@@ -1,18 +0,0 @@
1
- import BookmarkToggle from 'blacklight/bookmark_toggle'
2
- import ButtonFocus from 'blacklight/button_focus'
3
- import FacetSuggest from 'blacklight/facet_suggest'
4
- import Modal from 'blacklight/modal'
5
- import ModalForm from 'blacklight/modalForm'
6
- import SearchContext from 'blacklight/search_context'
7
- import Core from 'blacklight/core'
8
-
9
- export default {
10
- BookmarkToggle,
11
- ButtonFocus,
12
- FacetSuggest,
13
- Modal,
14
- ModalForm,
15
- SearchContext,
16
- Core,
17
- onLoad: Core.onLoad
18
- }
@@ -1 +0,0 @@
1
- <%= render (blacklight_config&.view_config(document_index_view_type)&.constraints_component || Blacklight::ConstraintsComponent).new(search_state: search_state) %>
@@ -1,5 +0,0 @@
1
- <% # this partial is deprecated. catalog/index now renders the component %>
2
- <% conf = blacklight_config.view_config(document_index_view_type) %>
3
- <%= render conf.sidebar_component.new(blacklight_config: blacklight_config,
4
- response: @response,
5
- view_config: conf) %>
@@ -1,7 +0,0 @@
1
- <%= warn "#{__file__} is a deprecated partial." %>
2
- <%= render((blacklight_config&.view_config(document_index_view_type)&.search_bar_component || Blacklight::SearchBarComponent).new(
3
- url: search_action_url,
4
- advanced_search_url: search_action_url(action: 'advanced_search'),
5
- params: search_state.params_for_search.except(:qt),
6
- presenter: presenter,
7
- autocomplete_path: suggest_index_catalog_path)) %>
@@ -1 +0,0 @@
1
- <%= render blacklight_config.view_config(document_index_view_type).search_header_component.new %>
@@ -1,3 +0,0 @@
1
- <% Blacklight.deprecation.warn('The partial catalog/_show_sidebar.html.erb will be removed in Blacklight 9.0. Configure blacklight_config.show.sidebar_component instead (default Blacklight::Search::SidebarComponent).') unless local_assigns[:silence_deprecation] %>
2
- <% presenter = document_presenter(document) %>
3
- <%= render presenter.view_config.sidebar_component.new(presenter: presenter) %>
@@ -1,2 +0,0 @@
1
- <% Blacklight.deprecation.warn('The partial _show_tools.html.erb will be removed in Blacklight 9.0. Configure blacklight_config.show.show_tools_component instead (default Blacklight::Document::ShowToolsComponent).') unless local_assigns[:silence_deprecation] %>
2
- <%= render Blacklight::Document::ShowToolsComponent.new(document: document) %>
@@ -1 +0,0 @@
1
- <%= render Blacklight::StartOverButtonComponent.new %>