blacklight-spotlight 5.3.0 → 5.3.2

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 (154) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +18 -1
  3. data/app/assets/javascripts/spotlight/spotlight.esm.js +1696 -1229
  4. data/app/assets/javascripts/spotlight/spotlight.esm.js.map +1 -1
  5. data/app/assets/javascripts/spotlight/spotlight.js +1718 -1232
  6. data/app/assets/javascripts/spotlight/spotlight.js.map +1 -1
  7. data/app/assets/stylesheets/spotlight/_multi_up_item_grid.scss +1 -10
  8. data/app/assets/stylesheets/spotlight/_nestable.scss +18 -1
  9. data/app/assets/stylesheets/spotlight/_pages.scss +3 -3
  10. data/app/components/spotlight/analytics/aggregation_component.html.erb +1 -1
  11. data/app/components/spotlight/document_admin_table_component.html.erb +2 -2
  12. data/app/components/spotlight/edit_view_links_component.html.erb +1 -1
  13. data/app/components/spotlight/header_component.html.erb +1 -1
  14. data/app/components/spotlight/tag_list_form_component.html.erb +1 -1
  15. data/app/components/spotlight/tag_selector_component.html.erb +2 -2
  16. data/app/components/spotlight/translations/subheading_component.html.erb +1 -1
  17. data/app/controllers/spotlight/resources_controller.rb +1 -1
  18. data/app/javascript/spotlight/admin/add_another.js +22 -15
  19. data/app/javascript/spotlight/admin/add_image_selector.js +27 -25
  20. data/app/javascript/spotlight/admin/add_new_button.js +47 -43
  21. data/app/javascript/spotlight/admin/blacklight_configuration.js +52 -38
  22. data/app/javascript/spotlight/admin/block_mixins/autocompleteable.js +68 -60
  23. data/app/javascript/spotlight/admin/block_mixins/formable.js +55 -47
  24. data/app/javascript/spotlight/admin/block_mixins/plustextable.js +19 -20
  25. data/app/javascript/spotlight/admin/blocks/block.js +20 -16
  26. data/app/javascript/spotlight/admin/blocks/browse_block.js +42 -37
  27. data/app/javascript/spotlight/admin/blocks/browse_group_categories_block.js +33 -31
  28. data/app/javascript/spotlight/admin/blocks/iframe_block.js +14 -11
  29. data/app/javascript/spotlight/admin/blocks/link_to_search_block.js +4 -7
  30. data/app/javascript/spotlight/admin/blocks/oembed_block.js +13 -10
  31. data/app/javascript/spotlight/admin/blocks/pages_block.js +20 -13
  32. data/app/javascript/spotlight/admin/blocks/resources_block.js +150 -117
  33. data/app/javascript/spotlight/admin/blocks/rule_block.js +11 -10
  34. data/app/javascript/spotlight/admin/blocks/search_result_block.js +16 -17
  35. data/app/javascript/spotlight/admin/blocks/solr_documents_base_block.js +123 -64
  36. data/app/javascript/spotlight/admin/blocks/solr_documents_block.js +8 -8
  37. data/app/javascript/spotlight/admin/blocks/solr_documents_carousel_block.js +63 -43
  38. data/app/javascript/spotlight/admin/blocks/solr_documents_embed_block.js +9 -9
  39. data/app/javascript/spotlight/admin/blocks/solr_documents_features_block.js +17 -16
  40. data/app/javascript/spotlight/admin/blocks/solr_documents_grid_block.js +6 -7
  41. data/app/javascript/spotlight/admin/blocks/uploaded_items_block.js +84 -64
  42. data/app/javascript/spotlight/admin/crop.js +203 -156
  43. data/app/javascript/spotlight/admin/croppable.js +4 -4
  44. data/app/javascript/spotlight/admin/croppable_modal.js +59 -37
  45. data/app/javascript/spotlight/admin/edit_in_place.js +50 -47
  46. data/app/javascript/spotlight/admin/exhibits.js +52 -41
  47. data/app/javascript/spotlight/admin/form_observer.js +59 -53
  48. data/app/javascript/spotlight/admin/iiif.js +26 -25
  49. data/app/javascript/spotlight/admin/index.js +44 -47
  50. data/app/javascript/spotlight/admin/locks.js +14 -14
  51. data/app/javascript/spotlight/admin/multi_image_selector.js +127 -111
  52. data/app/javascript/spotlight/admin/pages.js +21 -21
  53. data/app/javascript/spotlight/admin/progress_monitor.js +67 -65
  54. data/app/javascript/spotlight/admin/readonly_checkbox.js +3 -3
  55. data/app/javascript/spotlight/admin/search_typeahead.js +55 -43
  56. data/app/javascript/spotlight/admin/select_related_input.js +17 -17
  57. data/app/javascript/spotlight/admin/sir-trevor/block_controls.js +100 -84
  58. data/app/javascript/spotlight/admin/sir-trevor/block_limits.js +36 -31
  59. data/app/javascript/spotlight/admin/sir-trevor/locales.js +52 -39
  60. data/app/javascript/spotlight/admin/spotlight_nestable.js +126 -91
  61. data/app/javascript/spotlight/admin/tabs.js +19 -3
  62. data/app/javascript/spotlight/admin/translation_progress.js +13 -7
  63. data/app/javascript/spotlight/admin/users.js +41 -41
  64. data/app/javascript/spotlight/admin/visibility_toggle.js +4 -4
  65. data/app/javascript/spotlight/controllers/clipboard_controller.js +14 -0
  66. data/app/javascript/spotlight/controllers/index.js +4 -2
  67. data/app/javascript/spotlight/controllers/tag_selector_controller.js +116 -79
  68. data/app/javascript/spotlight/core.js +18 -15
  69. data/app/javascript/spotlight/index.js +4 -4
  70. data/app/javascript/spotlight/user/browse_group_categories.js +24 -22
  71. data/app/javascript/spotlight/user/carousel.js +23 -19
  72. data/app/javascript/spotlight/user/clear_form_button.js +15 -15
  73. data/app/javascript/spotlight/user/index.js +4 -4
  74. data/app/javascript/spotlight/user/zpr_links.js +18 -18
  75. data/app/models/spotlight/analytics/ga.rb +0 -1
  76. data/app/models/spotlight/resources/iiif_manifest_v3.rb +2 -2
  77. data/app/services/spotlight/exhibit_import_export_service.rb +0 -2
  78. data/app/views/blacklight/nav/_bookmark.html.erb +1 -1
  79. data/app/views/catalog/_remove_tags.html.erb +1 -1
  80. data/app/views/layouts/spotlight/base.html.erb +1 -1
  81. data/app/views/shared/_header_navbar.html.erb +1 -1
  82. data/app/views/shared/_masthead.html.erb +2 -2
  83. data/app/views/shared/_site_sidebar.html.erb +1 -1
  84. data/app/views/shared/_user_util_links.html.erb +2 -2
  85. data/app/views/spotlight/about_pages/_contacts.html.erb +1 -1
  86. data/app/views/spotlight/accessibility/alt_text.html.erb +1 -1
  87. data/app/views/spotlight/admin_users/index.html.erb +11 -9
  88. data/app/views/spotlight/appearances/edit.html.erb +1 -1
  89. data/app/views/spotlight/browse/_search_box.html.erb +1 -1
  90. data/app/views/spotlight/bulk_updates/_download.html.erb +1 -1
  91. data/app/views/spotlight/bulk_updates/_progress_panel.html.erb +6 -6
  92. data/app/views/spotlight/bulk_updates/edit.html.erb +1 -1
  93. data/app/views/spotlight/catalog/_admin_header.html.erb +1 -1
  94. data/app/views/spotlight/catalog/_admin_index_header_default.html.erb +1 -1
  95. data/app/views/spotlight/catalog/_curation_mode_toggle_default.html.erb +1 -1
  96. data/app/views/spotlight/catalog/_document.html.erb +2 -2
  97. data/app/views/spotlight/catalog/_document_admin_table.html.erb +1 -1
  98. data/app/views/spotlight/catalog/_edit_sidecar.html.erb +1 -1
  99. data/app/views/spotlight/catalog/_index_compact_default.html.erb +1 -1
  100. data/app/views/spotlight/catalog/_reindex_progress_panel.html.erb +6 -6
  101. data/app/views/spotlight/catalog/select_image.html.erb +1 -1
  102. data/app/views/spotlight/contact_mailer/report_problem.html.erb +2 -2
  103. data/app/views/spotlight/exhibits/_contact.html.erb +2 -2
  104. data/app/views/spotlight/exhibits/_delete.html.erb +2 -2
  105. data/app/views/spotlight/exhibits/_exhibit_card.html.erb +1 -1
  106. data/app/views/spotlight/exhibits/_export.html.erb +1 -1
  107. data/app/views/spotlight/exhibits/_form.html.erb +2 -2
  108. data/app/views/spotlight/exhibits/_languages.html.erb +7 -7
  109. data/app/views/spotlight/exhibits/_missing_exhibits.html.erb +1 -1
  110. data/app/views/spotlight/locks/_lock.html.erb +2 -2
  111. data/app/views/spotlight/metadata_configurations/edit.html.erb +1 -1
  112. data/app/views/spotlight/pages/_order_pages.html.erb +3 -3
  113. data/app/views/spotlight/pages/preview.html.erb +1 -1
  114. data/app/views/spotlight/pages/show.html.erb +2 -2
  115. data/app/views/spotlight/resources/_form.html.erb +1 -1
  116. data/app/views/spotlight/resources/csv_upload/_form.html.erb +1 -1
  117. data/app/views/spotlight/resources/upload/_form.html.erb +1 -1
  118. data/app/views/spotlight/roles/index.html.erb +5 -5
  119. data/app/views/spotlight/search_configurations/_search_fields.html.erb +1 -1
  120. data/app/views/spotlight/search_configurations/edit.html.erb +1 -1
  121. data/app/views/spotlight/searches/index.html.erb +2 -2
  122. data/app/views/spotlight/shared/_configuration_sidebar.html.erb +1 -1
  123. data/app/views/spotlight/shared/_curation_sidebar.html.erb +1 -1
  124. data/app/views/spotlight/shared/_dd3_item.html.erb +1 -1
  125. data/app/views/spotlight/sir_trevor/_sir_trevor_block_array.html.erb +1 -1
  126. data/app/views/spotlight/sir_trevor/blocks/_browse_block.html.erb +1 -1
  127. data/app/views/spotlight/sir_trevor/blocks/_browse_group_categories_block.html.erb +1 -1
  128. data/app/views/spotlight/sir_trevor/blocks/_featured_pages_block.html.erb +2 -2
  129. data/app/views/spotlight/sir_trevor/blocks/_link_to_search_block.html.erb +1 -1
  130. data/app/views/spotlight/sir_trevor/blocks/_rule_block.html.erb +1 -1
  131. data/app/views/spotlight/sir_trevor/blocks/_search_results_block.html.erb +1 -1
  132. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_block.html.erb +1 -1
  133. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_carousel_block.html.erb +1 -1
  134. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_features_block.html.erb +1 -1
  135. data/app/views/spotlight/sir_trevor/blocks/_solr_documents_grid_block.html.erb +1 -1
  136. data/app/views/spotlight/sites/edit_exhibits.html.erb +3 -3
  137. data/app/views/spotlight/translations/_browse_categories.html.erb +2 -2
  138. data/app/views/spotlight/translations/_general.html.erb +21 -21
  139. data/app/views/spotlight/translations/_groups.html.erb +1 -1
  140. data/app/views/spotlight/translations/_metadata.html.erb +8 -8
  141. data/app/views/spotlight/translations/_pages_table.html.erb +2 -2
  142. data/app/views/spotlight/translations/_search_fields.html.erb +13 -13
  143. data/app/views/spotlight/translations/edit.html.erb +5 -5
  144. data/config/importmap.rb +0 -1
  145. data/lib/generators/spotlight/assets/propshaft_generator.rb +0 -1
  146. data/lib/generators/spotlight/templates/solr/conf/admin-extra.html +31 -31
  147. data/lib/spotlight/version.rb +1 -1
  148. data/spec/factories/contact_images.rb +1 -1
  149. data/spec/factories/exhibit_thumbnails.rb +1 -1
  150. data/spec/factories/featured_images.rb +1 -1
  151. data/spec/support/features/test_features_helpers.rb +41 -1
  152. metadata +4 -61
  153. data/app/javascript/spotlight/admin/copy_email_addresses.js +0 -7
  154. data/vendor/assets/javascripts/jquery.waitforimages.min.js +0 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 77faacb08fec808eb92fe2839ac84da6901925e5e417e8b621513e914d058de8
4
- data.tar.gz: e3e7c58e629eb49be082bbb6a2b8479a052bf6de073111061a16a1888117555c
3
+ metadata.gz: 28bd8687f04b835aec548865b73ece402d5cdaa5392117e050e7817d1ce3e650
4
+ data.tar.gz: 2a37c6d24183a6edfc6f4036e20ceeb077a1715c5e21895300efaa0165459a18
5
5
  SHA512:
6
- metadata.gz: 8abf1cf95606f9c0ee1fbbca58baa3f57ce5b77711c43eb3398cca4e790772536fe9771ce8112532782f990c0c92dc937df962a694b6ec71abc6cd7844f1ee8d
7
- data.tar.gz: 1c884044f7cd43d5446dbfe72b2a06758bbfbfe2310e0a4741b2348c68ccaa2f6409cf764ff0b0d59c50d35f4e7b4c79d45898bca5b7ecf76f97f1d8403ba246
6
+ metadata.gz: e8498080a3e2445c4b14cf50a2df4b6f1df3c657bae2cb15c04142b013aba8bde0811d21d4936a2edfc8b0c76f78898ccfb17d00cc3fc5dced7fada5b99ca56c
7
+ data.tar.gz: d5827e68e97dd74823ae3319047ae554c2c15cf9f757740112d1f73b9eeae833cb6d9f36846414652c1820809ce1c3e575dd5bfdf50edf7a2de470febcb230e3
data/README.md CHANGED
@@ -3,7 +3,7 @@ spotlight
3
3
 
4
4
  ![CI](https://github.com/projectblacklight/spotlight/workflows/CI/badge.svg) | [![Gem Version](https://badge.fury.io/rb/blacklight-spotlight.png)](http://badge.fury.io/rb/blacklight-spotlight) | [Release Notes](https://github.com/projectblacklight/spotlight/releases) | [Design Documents](https://github.com/projectblacklight/spotlight/releases/tag/v0.0.0)
5
5
 
6
- Spotlight is open source software that enables librarians, curators, and other content experts to easily build feature-rich websites that showcase collections and objects from a digital repository, uploaded items, or a combination of the two. Spotlight is a plug-in for [Blacklight](https://github.com/projectblacklight/blacklight), an open source, Ruby on Rails Engine that provides a basic discovery interface for searching an Apache Solr index.
6
+ Spotlight is open source software that enables librarians, curators, and other content experts to easily build feature-rich websites that showcase collections and objects from a digital repository, uploaded items, or a combination of the two. Spotlight is a Ruby on Rails engine that extends [Blacklight](https://github.com/projectblacklight/blacklight), which provides a basic discovery interface for searching an Apache Solr index.
7
7
 
8
8
  In addition to the information found below, you can read more about what Spotlight is, our motivations for creating it, and how to configure it in the [wiki pages](https://github.com/projectblacklight/spotlight/wiki). You might also want to take a look at our demo videos, especially the [tour of a completed Spotlight exhibit](https://www.youtube.com/watch?v=_A7vTbbiF4g) and the walkthrough of [building an exhibit with Spotlight](https://www.youtube.com/watch?v=qPJtgajJ4ic).
9
9
 
@@ -248,6 +248,23 @@ From the project root, delete the test app (if you want to regenerate from scrat
248
248
  ```
249
249
  $ rake engine_cart:clean
250
250
  ```
251
+
252
+ ### Core Architecture
253
+
254
+ A brief orientation to this codebase
255
+
256
+ #### Key Concepts & Models
257
+ - **Exhibits (`Spotlight::Exhibit`):** The primary organizational container for exhibits.
258
+ - **Pages (`Spotlight::Page` / `Spotlight::HomePage`):** Curated pages inside an exhibit. It uses Sir Trevor for rich text block editing.
259
+ - **Custom Fields (`Spotlight::CustomField`):** Admin-defined fields added to exhibit items (e.g., multivalued text fields, read-only metadata fields).
260
+ - **Sidecars (`Spotlight::SolrDocumentSidecar`):** Database-backed extensions to Solr documents, allowing exhibit-specific metadata to persist locally.
261
+ - **Resources (`Spotlight::Resource`):** External or uploaded content that gets converted into Solr documents.
262
+
263
+ #### Frontend Asset Structure
264
+ - **Source JavaScript:** Resides in `app/javascript/spotlight/` (e.g., admin widgets, custom field behaviors).
265
+ - **Core Orchestration:** `app/javascript/spotlight/index.js` listens to page loads and instantiates class components (e.g., `new AddAnother().connect()`).
266
+ - **Standard:** Spotlight prefers standard, modern JavaScript (ES6+) and is migrating away from jQuery dependencies.
267
+
251
268
  ## Spotlight Community
252
269
 
253
270
  See [Contributing to Spotlight](/CONTRIBUTING.md) for general information about participation in the Spotlight community.