blacklight-spotlight 5.2.1 → 5.2.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.
Files changed (45) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +1 -1
  3. data/Rakefile +1 -1
  4. data/app/assets/javascripts/spotlight/spotlight.esm.js +34 -13
  5. data/app/assets/javascripts/spotlight/spotlight.esm.js.map +1 -1
  6. data/app/assets/javascripts/spotlight/spotlight.js +34 -13
  7. data/app/assets/javascripts/spotlight/spotlight.js.map +1 -1
  8. data/app/assets/stylesheets/spotlight/_browse.scss +1 -1
  9. data/app/assets/stylesheets/spotlight/_collapse_toggle.scss +2 -2
  10. data/app/assets/stylesheets/spotlight/_curation.scss +3 -25
  11. data/app/assets/stylesheets/spotlight/_header.scss +0 -4
  12. data/app/assets/stylesheets/spotlight/_multi_up_item_grid.scss +0 -30
  13. data/app/assets/stylesheets/spotlight/_nestable.scss +0 -3
  14. data/app/assets/stylesheets/spotlight/_report_a_problem.scss +1 -1
  15. data/app/assets/stylesheets/spotlight/_sir-trevor_overrides.scss +4 -0
  16. data/app/assets/stylesheets/spotlight/_slideshow_block.scss +1 -1
  17. data/app/controllers/spotlight/exhibits_controller.rb +5 -1
  18. data/app/controllers/spotlight/featured_images_controller.rb +6 -0
  19. data/app/controllers/spotlight/metadata_configurations_controller.rb +1 -1
  20. data/app/controllers/spotlight/resources_controller.rb +1 -1
  21. data/app/helpers/spotlight/application_helper.rb +1 -13
  22. data/app/helpers/spotlight/crop_helper.rb +1 -0
  23. data/app/helpers/spotlight/exhibit_theme_helper.rb +20 -0
  24. data/app/helpers/spotlight/main_app_helpers.rb +1 -13
  25. data/app/javascript/spotlight/admin/blocks/search_result_block.js +0 -2
  26. data/app/javascript/spotlight/admin/blocks/solr_documents_block.js +0 -2
  27. data/app/javascript/spotlight/admin/blocks/solr_documents_carousel_block.js +0 -2
  28. data/app/javascript/spotlight/admin/blocks/solr_documents_embed_block.js +0 -2
  29. data/app/javascript/spotlight/admin/blocks/solr_documents_features_block.js +0 -2
  30. data/app/javascript/spotlight/admin/blocks/solr_documents_grid_block.js +0 -2
  31. data/app/javascript/spotlight/admin/crop.js +34 -1
  32. data/app/models/spotlight/exhibit.rb +1 -1
  33. data/app/models/spotlight/featured_image.rb +0 -7
  34. data/app/models/spotlight/resource.rb +7 -5
  35. data/app/models/spotlight/resources/iiif_manifest_v3.rb +2 -2
  36. data/app/services/spotlight/clone_translated_page_from_locale.rb +1 -1
  37. data/config/importmap.rb +4 -4
  38. data/config/locales/spotlight.en.yml +8 -0
  39. data/lib/spotlight/engine.rb +0 -2
  40. data/lib/spotlight/version.rb +1 -1
  41. data/spec/support/features/test_features_helpers.rb +3 -2
  42. data/spec/support/views/test_view_helpers.rb +1 -0
  43. metadata +8 -9
  44. data/app/assets/config/spotlight/manifest.js +0 -3
  45. data/app/assets/javascripts/spotlight/application.js +0 -7
@@ -138,7 +138,7 @@ $image-overlay-max-height: 300px;
138
138
  width: 100%;
139
139
 
140
140
  .col-form-label {
141
- text-align: right;
141
+ text-align: end;
142
142
  }
143
143
 
144
144
  .browse-search-form {
@@ -3,12 +3,12 @@
3
3
  .btn.collapse-toggle {
4
4
  & + .collapse-chevron {
5
5
  display: inline-block;
6
- text-align: right;
6
+ text-align: end;
7
7
  transform: rotate(90deg);
8
8
  width: 16px;
9
9
  }
10
10
  &.collapsed + .collapse-chevron {
11
- text-align: left;
11
+ text-align: start;
12
12
  transform: none;
13
13
  }
14
14
  }
@@ -27,7 +27,7 @@
27
27
  display: none;
28
28
  }
29
29
  [data-expanded-add-button] {
30
- text-align: left;
30
+ text-align: start;
31
31
  }
32
32
  }
33
33
 
@@ -80,28 +80,6 @@
80
80
  }
81
81
  }
82
82
 
83
-
84
- .card.page-admin {
85
- &:hover {
86
- @include panel-hover-highlighting;
87
- }
88
- .card-title {
89
- @extend .mb-0;
90
- @extend .py-2;
91
- }
92
-
93
- .page-links, .contact-links {
94
- text-align: right;
95
- a {
96
- padding: 0 2px;
97
- }
98
- }
99
- .main {
100
- width: 99%;
101
- vertical-align: text-top;
102
- }
103
- }
104
-
105
83
  .contacts_admin .card-header.page .main {
106
84
  width: 95%;
107
85
  }
@@ -180,7 +158,7 @@ h1,h2,h3,h4,h5,h6 {
180
158
  .facet-metadata {
181
159
  @extend .text-muted;
182
160
  font-size: $font-size-base;
183
- text-align: right;
161
+ text-align: end;
184
162
  }
185
163
 
186
164
  table#exhibit-specific-fields {
@@ -210,7 +188,7 @@ table.users {
210
188
 
211
189
  table.tags {
212
190
  td:nth-child(2), th:nth-child(2) {
213
- text-align: right;
191
+ text-align: end;
214
192
  }
215
193
  td:nth-child(3), th:nth-child(3) {
216
194
  text-align: center;
@@ -34,10 +34,6 @@
34
34
  margin-bottom: 0;
35
35
  }
36
36
  }
37
-
38
- .navbar-form {
39
- text-align: right;
40
- }
41
37
  }
42
38
 
43
39
  .resource-masthead {
@@ -1,33 +1,3 @@
1
- .item-grid-admin {
2
- .field {
3
- input[type='text'] {
4
- width: 89%;
5
- }
6
-
7
- .twitter-typeahead {
8
- margin-bottom: 2*$spacer;
9
- }
10
- }
11
- .field-select {
12
- margin-top: 2*$spacer;
13
- select {
14
- display: inline;
15
- width: auto;
16
- }
17
- }
18
- .dd3-item {
19
- margin-bottom: 2*$spacer;
20
- }
21
- }
22
- // Hide the secondary caption field
23
- // for the Features block so we can
24
- // re-use the rest from the generic
25
- // multi-up item grid.
26
- [data-type='item-features'] {
27
- .secondary-caption {
28
- display: none;
29
- }
30
- }
31
1
  .spotlight-flexbox {
32
2
  display: -webkit-box;
33
3
  display: -moz-box;
@@ -81,9 +81,6 @@ tr.dd-item {
81
81
  min-height: 3rem;
82
82
  }
83
83
  }
84
- .dd3-content.page-admin {
85
- position: relative;
86
- }
87
84
 
88
85
  .dd3-item > button { margin-left: 30px; }
89
86
 
@@ -8,6 +8,6 @@
8
8
 
9
9
  @include media-breakpoint-up(sm) {
10
10
  #new_contact_form .col-form-label {
11
- text-align: right;
11
+ text-align: end;
12
12
  }
13
13
  }
@@ -57,6 +57,10 @@
57
57
  display: block !important;
58
58
  }
59
59
 
60
+ .st-block-addition-top {
61
+ text-align: start;
62
+ }
63
+
60
64
  .st-block-controls {
61
65
  display: none !important;
62
66
  }
@@ -56,7 +56,7 @@
56
56
  left: initial;
57
57
  margin-left: 0;
58
58
  margin-right: 0;
59
- text-align: left;
59
+ text-align: start;
60
60
 
61
61
  &.col-sm-6 {
62
62
  @extend .col-sm-6;
@@ -54,6 +54,7 @@ module Spotlight
54
54
  build_initial_exhibit_contact_emails
55
55
  end
56
56
 
57
+ # rubocop:disable Metrics/AbcSize
57
58
  def create
58
59
  @exhibit.attributes = exhibit_params
59
60
 
@@ -61,9 +62,12 @@ module Spotlight
61
62
  @exhibit.roles.create user: current_user, role: 'admin' if current_user
62
63
  redirect_to spotlight.exhibit_dashboard_path(@exhibit), notice: t(:'helpers.submit.exhibit.created', model: @exhibit.class.model_name.human.downcase)
63
64
  else
64
- render action: :new
65
+ flash.now[:alert] = t('spotlight.exhibits.new_exhibit_form.errors.slug_taken') if @exhibit.errors[:slug].present?
66
+
67
+ render :new, status: :unprocessable_entity
65
68
  end
66
69
  end
70
+ # rubocop:enable Metrics/AbcSize
67
71
 
68
72
  def update
69
73
  if @exhibit.update(exhibit_params)
@@ -5,6 +5,8 @@ module Spotlight
5
5
  class FeaturedImagesController < Spotlight::ApplicationController
6
6
  load_and_authorize_resource instance_name: :featured_image, class: 'Spotlight::TemporaryImage'
7
7
 
8
+ rescue_from CarrierWave::UploadError, with: :handle_upload_error
9
+
8
10
  def create
9
11
  if @featured_image.save && @featured_image.file_present?
10
12
  render json: { tilesource:, id: @featured_image.id }
@@ -15,6 +17,10 @@ module Spotlight
15
17
 
16
18
  private
17
19
 
20
+ def handle_upload_error(exception)
21
+ render json: { error: [exception.message] }, status: :unprocessable_entity
22
+ end
23
+
18
24
  def tilesource
19
25
  Spotlight::Engine.config.iiif_service.info_url(@featured_image, request.host)
20
26
  end
@@ -44,7 +44,7 @@ module Spotlight
44
44
  views = @blacklight_configuration.default_blacklight_config.view.keys | [:show]
45
45
 
46
46
  @blacklight_configuration.blacklight_config.index_fields.keys.index_with do |_element|
47
- (%i[enabled label weight] | views)
47
+ %i[enabled label weight] | views
48
48
  end
49
49
  end
50
50
  end
@@ -55,7 +55,7 @@ module Spotlight
55
55
 
56
56
  def resource_params
57
57
  params.require(:resource).tap { |x| x['type'] ||= resource_class.name }
58
- .permit(:url, :type, *resource_class.stored_attributes[:data], data: params[:resource][:data].try(:keys))
58
+ .permit(:url, :type, *resource_class.stored_attributes[:data], data: params[:resource][:data].try(:keys))
59
59
  end
60
60
  end
61
61
  end
@@ -5,6 +5,7 @@ module Spotlight
5
5
  # General spotlight application helpers
6
6
  module ApplicationHelper
7
7
  include CrudLinkHelpers
8
+ include ExhibitThemeHelper
8
9
  include TitleHelper
9
10
  include MetaHelper
10
11
  include CropHelper
@@ -151,19 +152,6 @@ module Spotlight
151
152
  current_exhibit.blacklight_configuration.default_blacklight_config.view.to_h.reject { |_k, v| v.if == false }
152
153
  end
153
154
 
154
- def exhibit_stylesheet_link_tag(tag)
155
- if current_exhibit_theme && current_exhibit.theme != 'default'
156
- stylesheet_link_tag "#{tag}_#{current_exhibit_theme}"
157
- else
158
- Rails.logger.warn "Exhibit theme '#{current_exhibit_theme}' not in the list of available themes: #{current_exhibit.themes}"
159
- stylesheet_link_tag(tag)
160
- end
161
- end
162
-
163
- def current_exhibit_theme
164
- current_exhibit.theme if current_exhibit && current_exhibit.theme.present? && current_exhibit.themes.include?(current_exhibit.theme)
165
- end
166
-
167
155
  def render_search_bar
168
156
  return super if defined?(super)
169
157
 
@@ -27,6 +27,7 @@ module Spotlight
27
27
  def iiif_upload_tag(f)
28
28
  content_tag(:div) do
29
29
  concat f.file_field_without_bootstrap :file, name: 'featured_image[image]', data: { endpoint: polymorphic_path(f.object.model_name.route_key) }
30
+ concat content_tag(:div, '', class: 'featured-image invalid-feedback')
30
31
  concat f.hidden_field :upload_id
31
32
  end
32
33
  end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Spotlight
4
+ ##
5
+ # Exhibit theme/stylesheet helper
6
+ module ExhibitThemeHelper
7
+ def exhibit_stylesheet_link_tag(tag)
8
+ if current_exhibit_theme && current_exhibit&.theme != 'default'
9
+ stylesheet_link_tag "#{tag}_#{current_exhibit_theme}"
10
+ else
11
+ Rails.logger.debug { "Exhibit theme '#{current_exhibit_theme}' not in the list of available themes: #{current_exhibit&.themes}" }
12
+ stylesheet_link_tag(tag)
13
+ end
14
+ end
15
+
16
+ def current_exhibit_theme
17
+ current_exhibit.theme if current_exhibit && current_exhibit.theme.present? && current_exhibit.themes.include?(current_exhibit.theme)
18
+ end
19
+ end
20
+ end
@@ -5,6 +5,7 @@ module Spotlight
5
5
  # Helpers that are injected into the main application (because they used in layouts)
6
6
  module MainAppHelpers
7
7
  include Blacklight::DocumentHelperBehavior
8
+ include Spotlight::ExhibitThemeHelper
8
9
  include Spotlight::NavbarHelper
9
10
  include Spotlight::MastheadHelper
10
11
 
@@ -37,18 +38,5 @@ module Spotlight
37
38
  blacklight_config.view_config(action_name: :show).document_presenter_class
38
39
  end
39
40
  end
40
-
41
- def exhibit_stylesheet_link_tag(tag)
42
- if current_exhibit_theme && current_exhibit&.theme != 'default'
43
- stylesheet_link_tag "#{tag}_#{current_exhibit_theme}"
44
- else
45
- Rails.logger.debug { "Exhibit theme '#{current_exhibit_theme}' not in the list of available themes: #{current_exhibit&.themes}" }
46
- stylesheet_link_tag(tag)
47
- end
48
- end
49
-
50
- def current_exhibit_theme
51
- current_exhibit.theme if current_exhibit && current_exhibit.theme.present? && current_exhibit.themes.include?(current_exhibit.theme)
52
- end
53
41
  end
54
42
  end
@@ -1,5 +1,3 @@
1
- //= require spotlight/admin/blocks/browse_block
2
-
3
1
  SirTrevor.Blocks.SearchResults = (function(){
4
2
 
5
3
  return SirTrevor.Blocks.Browse.extend({
@@ -1,5 +1,3 @@
1
- //= require spotlight/admin/blocks/solr_documents_base_block
2
-
3
1
  SirTrevor.Blocks.SolrDocuments = (function(){
4
2
 
5
3
  return SirTrevor.Blocks.SolrDocumentsBase.extend({
@@ -1,5 +1,3 @@
1
- //= require spotlight/admin/blocks/solr_documents_base_block
2
-
3
1
  SirTrevor.Blocks.SolrDocumentsCarousel = (function(){
4
2
 
5
3
  return SirTrevor.Blocks.SolrDocumentsBase.extend({
@@ -1,5 +1,3 @@
1
- //= require spotlight/admin/blocks/solr_documents_base_block
2
-
3
1
  SirTrevor.Blocks.SolrDocumentsEmbed = (function(){
4
2
 
5
3
  return SirTrevor.Blocks.SolrDocumentsBase.extend({
@@ -1,5 +1,3 @@
1
- //= require spotlight/admin/blocks/solr_documents_base_block
2
-
3
1
  SirTrevor.Blocks.SolrDocumentsFeatures = (function(){
4
2
 
5
3
  return SirTrevor.Blocks.SolrDocumentsBase.extend({
@@ -1,5 +1,3 @@
1
- //= require spotlight/admin/blocks/solr_documents_base_block
2
-
3
1
  SirTrevor.Blocks.SolrDocumentsGrid = (function(){
4
2
 
5
3
  return SirTrevor.Blocks.SolrDocumentsBase.extend({
@@ -285,7 +285,7 @@ export default class Crop {
285
285
  url: url, //Server script to process data
286
286
  type: 'POST',
287
287
  success: (data, stat, xhr) => this.successHandler(data, stat, xhr),
288
- // error: errorHandler,
288
+ error: (xhr, stat, error) => this.errorHandler(xhr, stat, error),
289
289
  // Form data
290
290
  data: this.getData(),
291
291
  headers: {
@@ -301,6 +301,39 @@ export default class Crop {
301
301
  successHandler(data, stat, xhr) {
302
302
  this.setIiifFields({ tilesource: data.tilesource });
303
303
  this.setUploadId(data.id);
304
+ this.clearUploadErrors()
305
+ }
306
+
307
+ errorHandler(xhr, stat, error) {
308
+ let errorMessage = "Upload failed"
309
+ if (xhr.responseJSON) {
310
+ if (xhr.responseJSON.errors) {
311
+ errorMessage = xhr.responseJSON.errors.join(', ')
312
+ } else if (xhr.responseJSON.error) {
313
+ errorMessage = xhr.responseJSON.error
314
+ }
315
+ }
316
+ this.showUploadError(errorMessage)
317
+ }
318
+
319
+ getUploadErrorsElement() {
320
+ return this.cropTool.find(".featured-image.invalid-feedback")
321
+ }
322
+
323
+ showUploadError(errorMessage) {
324
+ const errorsElement = this.getUploadErrorsElement()
325
+ if (errorsElement) {
326
+ errorsElement.text(errorMessage).show()
327
+ } else {
328
+ console.error("uploadFile", error, errorMessage)
329
+ }
330
+ }
331
+
332
+ clearUploadErrors() {
333
+ const errorsElement = this.getUploadErrorsElement()
334
+ if (errorsElement) {
335
+ errorsElement.text("").hide()
336
+ }
304
337
  }
305
338
 
306
339
  setUploadId(id) {
@@ -28,7 +28,7 @@ module Spotlight
28
28
  end
29
29
 
30
30
  validates :title, presence: true, if: -> { I18n.locale == I18n.default_locale }
31
- validates :slug, uniqueness: true
31
+ validates :slug, uniqueness: { message: I18n.t('spotlight.exhibits.new_exhibit_form.errors.slug_taken') }
32
32
  validates :theme, inclusion: { in: Spotlight::Engine.config.exhibit_themes }, allow_blank: true
33
33
 
34
34
  after_validation :move_friendly_id_error_to_slug
@@ -24,13 +24,6 @@ module Spotlight
24
24
  Spotlight::TemporaryImage.find(upload_id).delete if upload_id.present?
25
25
  end
26
26
 
27
- after_save do
28
- if image.present?
29
- image.cache! unless image.cached?
30
- image.store!
31
- end
32
- end
33
-
34
27
  after_save :bust_containing_resource_caches
35
28
 
36
29
  attr_accessor :upload_id
@@ -7,11 +7,13 @@ module Spotlight
7
7
  class_attribute :indexing_pipeline, default: (Spotlight::Etl::Pipeline.new do |pipeline|
8
8
  pipeline.sources = [Spotlight::Etl::Sources::IdentitySource]
9
9
  pipeline.transforms = [
10
- reject_blank: Spotlight::Etl::Transforms::RejectBlank,
11
- reject_missing: Spotlight::Etl::Transforms::RejectMissingUniqueId,
12
- apply_exhibit_metadata: Spotlight::Etl::Transforms::ApplyExhibitMetadata,
13
- apply_application_metadata: Spotlight::Etl::Transforms::ApplyApplicationMetadata,
14
- apply_pipeline_metadata: Spotlight::Etl::Transforms::ApplyPipelineMetadata
10
+ {
11
+ reject_blank: Spotlight::Etl::Transforms::RejectBlank,
12
+ reject_missing: Spotlight::Etl::Transforms::RejectMissingUniqueId,
13
+ apply_exhibit_metadata: Spotlight::Etl::Transforms::ApplyExhibitMetadata,
14
+ apply_application_metadata: Spotlight::Etl::Transforms::ApplyApplicationMetadata,
15
+ apply_pipeline_metadata: Spotlight::Etl::Transforms::ApplyPipelineMetadata
16
+ }
15
17
  ]
16
18
  pipeline.loaders = [Spotlight::Etl::SolrLoader]
17
19
  end)
@@ -28,8 +28,8 @@ module Spotlight
28
28
  @resources ||=
29
29
  canvases
30
30
  .flat_map(&:items).select { |item| item.type == 'AnnotationPage' }
31
- .flat_map(&:items).select { |item| item.motivation == 'painting' }
32
- .flat_map(&:body)
31
+ .flat_map(&:items).select { |item| item.motivation == 'painting' }
32
+ .flat_map(&:body)
33
33
  .flat_map(&:service)
34
34
  end
35
35
 
@@ -24,7 +24,7 @@ module Spotlight
24
24
  private
25
25
 
26
26
  def destroy
27
- page.translated_page_for(locale).destroy if page.translated_page_for(locale).present?
27
+ page.translated_page_for(locale).presence&.destroy
28
28
  end
29
29
  end
30
30
  end
data/config/importmap.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  pin_all_from File.expand_path('../app/javascript/spotlight', __dir__), under: 'spotlight'
4
4
  pin_all_from File.expand_path('../vendor/assets/javascripts', __dir__)
5
5
 
6
- pin 'clipboard', to: 'https://cdn.skypack.dev/clipboard@2.0.10'
7
- pin 'sir-trevor', to: 'https://cdn.skypack.dev/sir-trevor@0.8.2'
8
- pin 'sortablejs', to: 'https://cdn.skypack.dev/sortablejs@^1.15.3'
9
- pin '@github/auto-complete-element', to: 'https://cdn.skypack.dev/@github/auto-complete-element'
6
+ pin 'clipboard', to: 'https://cdn.jsdelivr.net/npm/clipboard@2.0.11/+esm'
7
+ pin 'sir-trevor', to: 'https://cdn.jsdelivr.net/npm/sir-trevor@0.8.2/+esm'
8
+ pin 'sortablejs', to: 'https://cdn.jsdelivr.net/npm/sortablejs@^1.15.3/+esm'
9
+ pin '@github/auto-complete-element', to: 'https://cdn.jsdelivr.net/npm/@github/auto-complete-element@3.8.0/+esm'
@@ -23,6 +23,12 @@ en:
23
23
  spotlight/page:
24
24
  display_sidebar?: Show sidebar
25
25
  display_title: Show title
26
+ errors:
27
+ models:
28
+ spotlight/exhibit:
29
+ attributes:
30
+ slug:
31
+ taken: Slug is already taken.
26
32
  help:
27
33
  spotlight/exhibit:
28
34
  tag_list: Enter tags separated by commas.
@@ -616,6 +622,8 @@ en:
616
622
  new:
617
623
  page_title: Create a new exhibit
618
624
  new_exhibit_form:
625
+ errors:
626
+ slug_taken: Slug is already taken. Please choose another.
619
627
  fields:
620
628
  slug:
621
629
  help_block: A hyphenated name to be displayed in the URL for the exhibit (e.g., "maps-of-africa").
@@ -28,8 +28,6 @@ module Spotlight
28
28
  require 'redcarpet' # required for markdown support
29
29
  require 'openseadragon'
30
30
 
31
- config.assets.precompile += %w[spotlight/fallback/*.png] if defined?(Sprockets)
32
-
33
31
  config.autoload_paths += %W[
34
32
  #{config.root}/app/builders
35
33
  #{config.root}/app/controllers/concerns
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Spotlight
4
- VERSION = '5.2.1'
4
+ VERSION = '5.2.3'
5
5
  end
@@ -6,8 +6,9 @@ module Spotlight
6
6
  type = opts[:type] || 'default'
7
7
 
8
8
  # Role=combobox indicates that the auto-complete is initialized
9
- expect(page).to have_css("auto-complete [data-#{type}-typeahead][role='combobox']")
10
- find("auto-complete [data-#{type}-typeahead]").fill_in(with: opts[:with])
9
+ find("auto-complete [data-#{type}-typeahead][role='combobox']").fill_in(with: opts[:with])
10
+ # Wait for the autocomplete to show both 'open' and 'aria-expanded="true"' or the results might be stale
11
+ expect(page).to have_css("auto-complete[open] [data-#{type}-typeahead][role='combobox'][aria-expanded='true']")
11
12
  first('auto-complete[open] [role="option"]', text: opts[:with]).click
12
13
  end
13
14
 
@@ -12,6 +12,7 @@ module Spotlight
12
12
  view.send(:extend, Spotlight::TitleHelper)
13
13
  view.send(:extend, Spotlight::NavbarHelper)
14
14
  view.send(:extend, Spotlight::CropHelper)
15
+ view.send(:extend, Spotlight::ExhibitThemeHelper)
15
16
  view.send(:extend, Spotlight::PagesHelper)
16
17
  view.send(:extend, Blacklight::ComponentHelperBehavior)
17
18
  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: 5.2.1
4
+ version: 5.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Chris Beer
@@ -35,7 +35,7 @@ dependencies:
35
35
  version: '5.0'
36
36
  - - "<"
37
37
  - !ruby/object:Gem::Version
38
- version: '13'
38
+ version: '14'
39
39
  type: :runtime
40
40
  prerelease: false
41
41
  version_requirements: !ruby/object:Gem::Requirement
@@ -45,7 +45,7 @@ dependencies:
45
45
  version: '5.0'
46
46
  - - "<"
47
47
  - !ruby/object:Gem::Version
48
- version: '13'
48
+ version: '14'
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: blacklight
51
51
  requirement: !ruby/object:Gem::Requirement
@@ -129,7 +129,7 @@ dependencies:
129
129
  version: 2.2.1
130
130
  - - "<"
131
131
  - !ruby/object:Gem::Version
132
- version: '3'
132
+ version: '4'
133
133
  type: :runtime
134
134
  prerelease: false
135
135
  version_requirements: !ruby/object:Gem::Requirement
@@ -139,7 +139,7 @@ dependencies:
139
139
  version: 2.2.1
140
140
  - - "<"
141
141
  - !ruby/object:Gem::Version
142
- version: '3'
142
+ version: '4'
143
143
  - !ruby/object:Gem::Dependency
144
144
  name: csv
145
145
  requirement: !ruby/object:Gem::Requirement
@@ -385,7 +385,7 @@ dependencies:
385
385
  version: '11.0'
386
386
  - - "<"
387
387
  - !ruby/object:Gem::Version
388
- version: '17'
388
+ version: '18'
389
389
  type: :runtime
390
390
  prerelease: false
391
391
  version_requirements: !ruby/object:Gem::Requirement
@@ -395,7 +395,7 @@ dependencies:
395
395
  version: '11.0'
396
396
  - - "<"
397
397
  - !ruby/object:Gem::Version
398
- version: '17'
398
+ version: '18'
399
399
  - !ruby/object:Gem::Dependency
400
400
  name: rails
401
401
  requirement: !ruby/object:Gem::Requirement
@@ -801,12 +801,10 @@ files:
801
801
  - LICENSE
802
802
  - README.md
803
803
  - Rakefile
804
- - app/assets/config/spotlight/manifest.js
805
804
  - app/assets/images/spotlight/blocks/sir-trevor-icons.svg
806
805
  - app/assets/images/spotlight/default_browse_thumbnail.jpg
807
806
  - app/assets/images/spotlight/default_thumbnail.jpg
808
807
  - app/assets/images/spotlight/fallback/default.png
809
- - app/assets/javascripts/spotlight/application.js
810
808
  - app/assets/javascripts/spotlight/spotlight.esm.js
811
809
  - app/assets/javascripts/spotlight/spotlight.esm.js.map
812
810
  - app/assets/javascripts/spotlight/spotlight.js
@@ -962,6 +960,7 @@ files:
962
960
  - app/helpers/spotlight/browse_helper.rb
963
961
  - app/helpers/spotlight/crop_helper.rb
964
962
  - app/helpers/spotlight/crud_link_helpers.rb
963
+ - app/helpers/spotlight/exhibit_theme_helper.rb
965
964
  - app/helpers/spotlight/job_trackers_helper.rb
966
965
  - app/helpers/spotlight/languages_helper.rb
967
966
  - app/helpers/spotlight/main_app_helpers.rb
@@ -1,3 +0,0 @@
1
- //= link_tree ../../images
2
- //= link_tree ../../../javascript .js
3
- //= link_tree ../../../../vendor/assets/javascripts .js
@@ -1,7 +0,0 @@
1
- // This is the sprockets entrypoint.
2
- //= require leaflet
3
- //= require sir-trevor
4
- //= require clipboard
5
- //= require tiny-slider
6
-
7
- //= require spotlight/spotlight