geoblacklight 3.3.1 → 3.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ruby.yml +30 -24
  3. data/.rubocop_todo.yml +11 -6
  4. data/README.md +1 -1
  5. data/Rakefile +7 -8
  6. data/app/assets/images/blacklight/michigan-state-university.svg +6 -0
  7. data/app/assets/images/blacklight/pennsylvania-state-university.svg +6 -0
  8. data/app/assets/images/blacklight/purdue-university.svg +6 -0
  9. data/app/assets/images/blacklight/the-ohio-state-university.svg +7 -0
  10. data/app/assets/images/blacklight/university-of-chicago.svg +6 -0
  11. data/app/assets/images/blacklight/university-of-illinois-urbana-champaign.svg +6 -0
  12. data/app/assets/images/blacklight/university-of-iowa.svg +5 -0
  13. data/app/assets/images/blacklight/university-of-maryland.svg +5 -0
  14. data/app/assets/images/blacklight/university-of-michigan.svg +5 -0
  15. data/app/assets/images/blacklight/university-of-minnesota.svg +5 -0
  16. data/app/assets/images/blacklight/university-of-nebraska-lincoln.svg +8 -0
  17. data/app/assets/images/blacklight/university-of-wisconsin-madison.svg +5 -0
  18. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +41 -0
  19. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +6 -0
  20. data/app/components/geoblacklight/homepage_feature_facet_component.html.erb +11 -0
  21. data/app/components/geoblacklight/homepage_feature_facet_component.rb +13 -0
  22. data/{lib → app/helpers}/geoblacklight/geoblacklight_helper_behavior.rb +6 -4
  23. data/app/helpers/geoblacklight_helper.rb +0 -6
  24. data/app/views/catalog/_arcgis.html.erb +1 -1
  25. data/app/views/catalog/_data_dictionary.html.erb +1 -2
  26. data/app/views/catalog/_home_text.html.erb +7 -29
  27. data/app/views/catalog/_show_header_default.html.erb +1 -1
  28. data/config/initializers/new_gbl_settings_defaults_3_4.yml +6 -0
  29. data/config/initializers/rails_config.rb +4 -0
  30. data/geoblacklight.gemspec +1 -1
  31. data/lib/generators/geoblacklight/templates/catalog_controller.rb +5 -4
  32. data/lib/generators/geoblacklight/templates/settings.yml +6 -0
  33. data/lib/geoblacklight/version.rb +1 -1
  34. data/lib/geoblacklight/view_helper_override.rb +1 -1
  35. data/lib/geoblacklight.rb +0 -1
  36. data/spec/components/geoblacklight/homepage_feature_facet_component_spec.rb +39 -0
  37. data/spec/config/initializers/rails_config_spec.rb +4 -0
  38. data/spec/features/esri_viewer_spec.rb +1 -0
  39. data/spec/features/layer_opacity_spec.rb +1 -0
  40. data/spec/features/metadata_panel_spec.rb +1 -1
  41. data/spec/features/search_results_overlap_ratio_spec.rb +1 -1
  42. data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +1 -1
  43. data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +1 -1
  44. data/spec/fixtures/solr_documents/esri-feature-layer.json +1 -1
  45. data/spec/fixtures/solr_documents/esri-image-map-layer.json +1 -1
  46. data/spec/fixtures/solr_documents/esri-wms-layer.json +1 -1
  47. data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +1 -1
  48. data/spec/fixtures/solr_documents/metadata_no_layer_geom_type_s.json +1 -1
  49. data/spec/fixtures/solr_documents/metadata_no_solr_geom.json +1 -1
  50. data/spec/fixtures/solr_documents/umn_metro_result1.json +1 -1
  51. data/spec/fixtures/solr_documents/umn_state_result1.json +1 -1
  52. data/spec/fixtures/solr_documents/umn_state_result2.json +1 -1
  53. data/spec/{lib → helpers}/geoblacklight/geoblacklight_helper_behavior_spec.rb +1 -0
  54. data/spec/spec_helper.rb +2 -0
  55. data/spec/support/view_component_capybara_test_helpers.rb +8 -0
  56. metadata +30 -14
  57. data/app/views/catalog/_document_action.html.erb +0 -6
  58. data/app/views/catalog/_facet_tag_item.html.erb +0 -3
  59. data/app/views/catalog/_facet_tag_layout.html.erb +0 -2
@@ -1,4 +1,4 @@
1
1
  <% document ||= @document %>
2
2
  <%= link_to(arcgis_link(document.arcgis_urls)) do %>
3
- <%= blacklight_icon('esri-globe') %> <%= t('geoblacklight.tools.open_arcgis') %>
3
+ <%= blacklight_icon('esri-globe') %><%= t('geoblacklight.tools.open_arcgis') %>
4
4
  <% end %>
@@ -1,6 +1,5 @@
1
1
  <% if document.data_dictionary_download.present? %>
2
2
  <%= link_to document.data_dictionary_download[:data_dictionary] do %>
3
- <%= geoblacklight_icon('book', aria_hidden: true) %>
4
- <%= t('geoblacklight.references.data_dictionary') %>
3
+ <%= geoblacklight_icon('book', aria_hidden: true) %><%= t('geoblacklight.references.data_dictionary') %>
5
4
  <% end %>
6
5
  <% end %>
@@ -3,41 +3,19 @@
3
3
  <div class='col-sm'>
4
4
  <%= content_tag :h3, t('geoblacklight.home.category_heading') %>
5
5
  <div class='row'>
6
- <div class='category-block col-sm'>
7
- <div class='category-icon'>
8
- <%= geoblacklight_icon('home') %>
9
- </div>
10
- <%= content_tag :h4, t('geoblacklight.home.institution') %>
11
- <%= render_facet_tags [Settings.FIELDS.PROVENANCE] %>
12
- </div>
13
- <div class='category-block col-sm'>
14
- <div class='category-icon'>
15
- <%= geoblacklight_icon('arrow-circle-down') %>
16
- </div>
17
- <%= content_tag :h4, t('geoblacklight.home.data_type') %>
18
- <%= render_facet_tags [Settings.FIELDS.GEOM_TYPE] %>
19
- </div>
6
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'home', label: 'geoblacklight.home.institution', facet_field: Settings.FIELDS.PROVENANCE, response: @response)) %>
7
+
8
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'arrow-circle-down', label: 'geoblacklight.home.data_type', facet_field: Settings.FIELDS.GEOM_TYPE, response: @response)) %>
20
9
  </div>
21
10
  <div class='row'>
22
- <div class='category-block col-sm'>
23
- <div class='category-icon'>
24
- <%= geoblacklight_icon('globe') %>
25
- </div>
26
- <%= content_tag :h4, t('geoblacklight.home.placename') %>
27
- <%= render_facet_tags [Settings.FIELDS.SPATIAL_COVERAGE] %>
28
- </div>
29
- <div class='category-block col-sm'>
30
- <div class='category-icon'>
31
- <%= geoblacklight_icon('tags') %>
32
- </div>
33
- <%= content_tag :h4, t('geoblacklight.home.subject') %>
34
- <%= render_facet_tags [Settings.FIELDS.SUBJECT] %>
35
- </div>
11
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'globe', label: 'geoblacklight.home.placename', facet_field: Settings.FIELDS.SPATIAL_COVERAGE, response: @response)) %>
12
+
13
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'tags', label: 'geoblacklight.home.subject', facet_field: Settings.FIELDS.SUBJECT, response: @response)) %>
36
14
  </div>
37
15
  </div>
38
16
  <div class='col-sm'>
39
17
  <%= content_tag :h3, t('geoblacklight.home.map_heading') %>
40
- <%= content_tag :div, '', id: 'map', aria: { label: t('geoblacklight.map.label') }, data: { map: 'home', 'catalog-path'=> search_catalog_path , 'map-bbox' => params[:bbox], basemap: geoblacklight_basemap, leaflet_options: leaflet_options } %>
18
+ <%= content_tag :div, '', id: 'map', aria: { label: t('geoblacklight.map.label') }, data: { map: 'home', 'catalog-path'=> search_catalog_path , 'map-geom' => Settings.HOMEPAGE_MAP_GEOM, basemap: geoblacklight_basemap, leaflet_options: leaflet_options } %>
41
19
  </div>
42
20
  </div>
43
21
  <div id="geoblacklight-version" class="text-right">
@@ -1,4 +1,4 @@
1
1
  <h2>
2
- <span itemprop="name"><%= document_heading(document) %></span>
2
+ <span itemprop="name"><%= document_presenter(document).heading %></span>
3
3
  <%= render partial: 'header_icons', locals: { document: document } %>
4
4
  </h2>
@@ -0,0 +1,6 @@
1
+ # New GeoBlacklight v3.4
2
+ # Homepage Map Geometry
3
+ # Leave null to default to entire world
4
+ # Add a stringified GeoJSON object to scope initial render (example from UMass)
5
+ HOMEPAGE_MAP_GEOM: null
6
+ # HOMEPAGE_MAP_GEOM: '{"type":"Polygon","coordinates":[[[-73.58,42.93],[-73.58,41.20],[-69.90,41.20],[-69.90,42.93]]]}'
@@ -6,3 +6,7 @@ end
6
6
  # GeoBlacklight v3.3 - New Settings.FIELDS values
7
7
  Settings.prepend_source!(File.expand_path('new_gbl_settings_defaults_3_3.yml', __dir__))
8
8
  Settings.reload!
9
+
10
+ # GeoBlacklight v3.4 - New Settings.HOMEPAGE_MAP_GEOM option
11
+ Settings.prepend_source!(File.expand_path('new_gbl_settings_defaults_3_4.yml', __dir__))
12
+ Settings.reload!
@@ -20,7 +20,7 @@ Gem::Specification.new do |spec|
20
20
  spec.required_rubygems_version = '>= 2.5.2'
21
21
 
22
22
  spec.add_dependency 'rails', '>= 5.2.4', '< 6.2'
23
- spec.add_dependency 'blacklight', '~> 7.0'
23
+ spec.add_dependency 'blacklight', '~> 7.8'
24
24
  spec.add_dependency 'config'
25
25
  spec.add_dependency 'faraday', '~> 1.0'
26
26
  spec.add_dependency 'faraday_middleware', '~> 1.0.0.rc1'
@@ -222,10 +222,11 @@ class CatalogController < ApplicationController
222
222
  # label in pulldown is followed by the name of the SOLR field to sort by and
223
223
  # whether the sort is ascending or descending (it must be asc or desc
224
224
  # except in the relevancy case).
225
- config.add_sort_field 'score desc, dc_title_sort asc', :label => 'relevance'
226
- config.add_sort_field "#{Settings.FIELDS.YEAR} desc, dc_title_sort asc", :label => 'year'
227
- config.add_sort_field "#{Settings.FIELDS.PUBLISHER} asc, dc_title_sort asc", :label => 'publisher'
228
- config.add_sort_field 'dc_title_sort asc', :label => 'title'
225
+ config.add_sort_field 'score desc, dc_title_sort asc', :label => 'Relevance'
226
+ config.add_sort_field "#{Settings.FIELDS.YEAR} desc, dc_title_sort asc", :label => 'Year (Newest first)'
227
+ config.add_sort_field "#{Settings.FIELDS.YEAR} asc, dc_title_sort asc", :label => 'Year (Oldest first)'
228
+ config.add_sort_field 'dc_title_sort asc', :label => 'Title (A-Z)'
229
+ config.add_sort_field 'dc_title_sort desc', :label => 'Title (Z-A)'
229
230
 
230
231
  # If there are more than this many search results, no spelling ("did you
231
232
  # mean") suggestion is offered.
@@ -19,6 +19,12 @@ BBOX_WITHIN_BOOST: '10'
19
19
  # The bf boost value for overlap ratio
20
20
  OVERLAP_RATIO_BOOST: '2'
21
21
 
22
+ # Homepage Map Geometry
23
+ # Leave null to default to entire world
24
+ # Add a stringified GeoJSON object to scope initial render (example from UMass)
25
+ HOMEPAGE_MAP_GEOM: null
26
+ # HOMEPAGE_MAP_GEOM: '{"type":"Polygon","coordinates":[[[-73.58,42.93],[-73.58,41.20],[-69.90,41.20],[-69.90,42.93]]]}'
27
+
22
28
  # Solr field mappings
23
29
  FIELDS:
24
30
  :CREATOR: 'dc_creator_sm'
@@ -1,4 +1,4 @@
1
1
  # frozen_string_literal: true
2
2
  module Geoblacklight
3
- VERSION = '3.3.1'
3
+ VERSION = '3.4.0'
4
4
  end
@@ -27,7 +27,7 @@ module Geoblacklight
27
27
 
28
28
  def render_constraints_filters(localized_params = params)
29
29
  content = super(localized_params)
30
- localized_params = localized_params.to_unsafe_h if localized_params.respond_to?(:to_unsafe_h)
30
+ localized_params = localized_params.to_h if localized_params.respond_to?(:to_h)
31
31
 
32
32
  if localized_params[:bbox]
33
33
  path = search_action_path(remove_spatial_filter_group(:bbox, localized_params))
data/lib/geoblacklight.rb CHANGED
@@ -7,7 +7,6 @@ module Geoblacklight
7
7
  require 'geoblacklight/catalog_helper_override'
8
8
  require 'geoblacklight/constants'
9
9
  require 'geoblacklight/exceptions'
10
- require 'geoblacklight/geoblacklight_helper_behavior'
11
10
  require 'geoblacklight/geometry'
12
11
  require 'geoblacklight/view_helper_override'
13
12
  require 'geoblacklight/item_viewer'
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+ require 'spec_helper'
3
+
4
+ RSpec.describe Geoblacklight::HomepageFeatureFacetComponent, type: :component do
5
+ subject(:rendered) do
6
+ render_inline_to_capybara_node(described_class.new(**kargs))
7
+ end
8
+
9
+ # Build a search
10
+ let(:context) { { whatever: :value } }
11
+ let(:service) { Blacklight::SearchService.new(config: blacklight_config, user_params: user_params, **context) }
12
+ let(:repository) { Blacklight::Solr::Repository.new(blacklight_config) }
13
+ let(:user_params) { {} }
14
+ let(:blacklight_config) { Blacklight::Configuration.new }
15
+ let(:copy_of_catalog_config) { ::CatalogController.blacklight_config.deep_copy }
16
+ let(:blacklight_solr) { RSolr.connect(Blacklight.connection_config.except(:adapter)) }
17
+
18
+ describe 'homepage' do
19
+ before do
20
+ (@response, @document_list) = service.search_results
21
+ end
22
+
23
+ let(:kargs) do
24
+ {
25
+ icon: 'home',
26
+ label: 'geoblacklight.home.institution',
27
+ facet_field: Settings.FIELDS.PROVENANCE,
28
+ response: @response
29
+ }
30
+ end
31
+
32
+ it 'includes facet links' do
33
+ expect(rendered).to have_selector('div.category-block')
34
+ expect(rendered).to have_selector('div.category-icon')
35
+ expect(rendered).to have_selector('a.home-facet-link')
36
+ expect(rendered).to have_selector('a.more_facets_link')
37
+ end
38
+ end
39
+ end
@@ -11,4 +11,8 @@ describe 'Config' do
11
11
  expect(Settings.FIELDS.TYPE).to eq 'dc_type_s'
12
12
  expect(Settings.FIELDS.UNIQUE_KEY).to eq 'layer_slug_s'
13
13
  end
14
+
15
+ it 'Loads new v3.4 Settings.FIELDS defaults' do
16
+ expect(Settings.HOMEPAGE_MAP_GEOM).to eq nil
17
+ end
14
18
  end
@@ -3,6 +3,7 @@ require 'spec_helper'
3
3
 
4
4
  feature 'feature_layer reference', js: true do
5
5
  scenario 'displays image map layer' do
6
+ skip 'CORS error - Purdue web services are down'
6
7
  visit solr_document_path '32653ed6-8d83-4692-8a06-bf13ffe2c018'
7
8
  expect(page).to have_css '.leaflet-control-zoom', visible: true
8
9
  expect(page).to have_css 'img.leaflet-image-layer', visible: true
@@ -9,6 +9,7 @@ feature 'Layer opacity', js: true do
9
9
  end
10
10
 
11
11
  scenario 'ESRI image service layer should have opacity control' do
12
+ skip 'CORS error - Purdue web services are down'
12
13
  visit solr_document_path('32653ed6-8d83-4692-8a06-bf13ffe2c018')
13
14
  expect(page).to have_css('div.opacity-text', text: '75%')
14
15
  expect(page.find('img.leaflet-image-layer', match: :first)[:style]).to match(/opacity: 0.75;/)
@@ -29,7 +29,7 @@ feature 'Metadata tools' do
29
29
  allow(connection).to receive(:get).and_return(response)
30
30
  allow(Faraday).to receive(:new).with(url: 'http://purl.stanford.edu/cg357zz0321.mods').and_return(connection)
31
31
 
32
- allow(Faraday).to receive(:new).with(hash_including(url: 'http://127.0.0.1:8983/solr/blacklight-core/')).and_call_original
32
+ allow(Faraday).to receive(:new).with(hash_including(url: %r{solr/blacklight-core})).and_call_original
33
33
  end
34
34
 
35
35
  scenario 'shows up as HTML' do
@@ -8,7 +8,7 @@ feature 'spatial search results overlap ratio' do
8
8
  # BBox param is the US upper midwest and Canada, roughly centered on the state of Minnesota
9
9
  visit search_catalog_path(
10
10
  bbox: '-103.196521 39.21962 -84.431873 53.63497',
11
- "f[#{Settings.FIELDS.PROVENANCE}][]": 'Minnesota'
11
+ "f[#{Settings.FIELDS.PROVENANCE}][]": 'University of Minnesota'
12
12
  )
13
13
 
14
14
  # MN State result
@@ -17,7 +17,7 @@
17
17
  "dc_subject_sm": [
18
18
  "Geoscientific Information"
19
19
  ],
20
- "dct_provenance_s": "Illinois",
20
+ "dct_provenance_s": "University of Illinois Urbana-Champaign",
21
21
  "dct_references_s": "{\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"http://data.isgs.illinois.edu/arcgis/rest/services/Geology/Glacial_Boundaries/MapServer\",\"http://schema.org/url\":\"https://clearinghouse.isgs.illinois.edu/data/geology/glacial-boundaries\",\"http://schema.org/downloadUrl\":\"https://clearinghouse.isgs.illinois.edu/sites/clearinghouse.isgs/files/Clearinghouse/data/ISGS/Geology/zips/IL_Glacial_Bndys_Py.zip\"}",
22
22
  "dct_isPartOf_sm": [
23
23
  "Illinois Geospatial Data Clearinghouse"
@@ -19,7 +19,7 @@
19
19
  "Geoscientific Information",
20
20
  "Geology"
21
21
  ],
22
- "dct_provenance_s": "Purdue",
22
+ "dct_provenance_s": "Purdue University",
23
23
  "dct_references_s": "{\"http://schema.org/url\":\"http://maps.indiana.edu/previewMaps/Geology/Industrial_Minerals_Quarries_Abandoned.html\",\"http://schema.org/downloadUrl\":\"http://maps.indiana.edu/download/Geology/Industrial_Minerals_Quarries_Abandoned.zip\",\"http://schema.org/image\":\"http://maps.indiana.edu/images/Geology/Industrial_Minerals_Quarries_Abandoned.png\",\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"https://maps.indiana.edu/arcgis/rest/services/Geology/Industrial_Minerals_Quarries_Abandoned/MapServer/0\",\"http://www.opengis.net/cat/csw/csdgm\":\"http://maps.indiana.edu/metadata/Geology/Industrial_Minerals_Quarries_Abandoned.xml\"}",
24
24
  "dct_isPartOf_sm": [
25
25
  "IndianaMAP"
@@ -18,7 +18,7 @@
18
18
  "dc_subject_sm": [
19
19
  "Transportation"
20
20
  ],
21
- "dct_provenance_s": "Maryland",
21
+ "dct_provenance_s": "University of Maryland",
22
22
  "dct_references_s": "{\"http://schema.org/url\":\"http://data.imap.maryland.gov/datasets/f406332e63eb4478a9560ad86ae90327_18\",\"http://schema.org/downloadUrl\":\"http://data.imap.maryland.gov/datasets/f406332e63eb4478a9560ad86ae90327_18.zip\",\"urn:x-esri:serviceType:ArcGIS#FeatureLayer\":\"https://geodata.md.gov/imap/rest/services/Transportation/MD_Transit/FeatureServer/18\"}",
23
23
  "dct_isPartOf_sm": [
24
24
  "ArcGIS Open Data"
@@ -21,7 +21,7 @@
21
21
  "Imagery and Base Maps",
22
22
  "Topography"
23
23
  ],
24
- "dct_provenance_s": "Purdue",
24
+ "dct_provenance_s": "Purdue University",
25
25
  "dct_references_s": "{\"http://schema.org/url\":\"https://mapsweb.lib.purdue.edu/wabashriver/\",\"http://schema.org/downloadUrl\":\"https://mapsweb.lib.purdue.edu/datasets/Wabash1929/wabash_topo_27.tif.zip\",\"urn:x-esri:serviceType:ArcGIS#ImageMapLayer\":\"https://mapsweb.lib.purdue.edu/arcgis/rest/services/Purdue/wabashtopo/ImageServer\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"http://64.90.181.107/geonetwork/srv/api/records/32653ed6-8d83-4692-8a06-bf13ffe2c018/formatters/xml\"}",
26
26
  "dct_isPartOf_sm": [
27
27
  "Purdue Georeferenced Imagery"
@@ -18,7 +18,7 @@
18
18
  "dc_title_s": "Agriculture Census: Indiana, 1997",
19
19
  "dc_type_s": "Dataset",
20
20
  "dct_issued_s": "2003-01-28",
21
- "dct_provenance_s": "Purdue",
21
+ "dct_provenance_s": "Purdue University",
22
22
  "dct_references_s": "{\"http://schema.org/downloadUrl\":\"http://maps.indiana.edu/download/Environment/Agriculture_Census.zip\",\"http://schema.org/url\":\"http://indianamap.org/\",\"http://www.isotc211.org/schemas/2005/gmd/\":\"https://opengeometadata.github.io/edu.purdue/f0/82/ac/b1b01e4a089126fd62a23fd9aa/iso19139.xml\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://maps.indiana.edu/arcgis/services/Environment/Agriculture_Census/MapServer/WMSServer\",\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"https://maps.indiana.edu/arcgis/rest/services/Environment/Agriculture_Census/MapServer\"}",
23
23
  "dct_spatial_sm": [
24
24
  "Indiana"
@@ -13,7 +13,7 @@
13
13
  "dc_creator_sm": [
14
14
  "Bowen, Emanuel (-1767)"
15
15
  ],
16
- "dct_provenance_s": "Minnesota",
16
+ "dct_provenance_s": "University of Minnesota",
17
17
  "dct_references_s": "{\"http://schema.org/url\":\"http://purl.umn.edu/200804\",\"http://iiif.io/api/image\":\"https://cdm16022.contentdm.oclc.org/digital/iiif/p16022coll246/224/info.json\"}",
18
18
  "dct_isPartOf_sm": [
19
19
  "John R. Borchert Map Library"
@@ -11,7 +11,7 @@
11
11
  "dc_type_sm": [
12
12
  "Collection"
13
13
  ],
14
- "dct_provenance_s": "Minnesota",
14
+ "dct_provenance_s": "University of Minnesota",
15
15
  "dc_rights_s": "Public",
16
16
  "dct_references_s": "{\"http://schema.org/url\":\"https://conservancy.umn.edu/handle/11299/166578\"}"
17
17
  }
@@ -12,7 +12,7 @@
12
12
  "Collection"
13
13
  ],
14
14
  "layer_geom_type_s": "Table",
15
- "dct_provenance_s": "Minnesota",
15
+ "dct_provenance_s": "University of Minnesota",
16
16
  "dct_spatial_sm": [
17
17
  "Asia",
18
18
  "India",
@@ -20,7 +20,7 @@
20
20
  "dc_subject_sm": [
21
21
  "Planning and Cadastral"
22
22
  ],
23
- "dct_provenance_s": "Minnesota",
23
+ "dct_provenance_s": "University of Minnesota",
24
24
  "dct_references_s": "{\"http://schema.org/url\":\"https://gisdata.mn.gov/dataset/02236876-9c21-42f6-9870-d2562da8e44f\",\"http://schema.org/downloadUrl\":\"ftp://ftp.gisdata.mn.gov/pub/gdrs/data/pub/us_mn_state_metc/plan_frmwrk2030dev_plan_ar2011/shp_plan_frmwrk2030dev_plan_ar2011.zip\",\"urn:x-esri:serviceType:ArcGIS#DynamicMapLayer\":\"https://gis2.metc.state.mn.us/arcgis/rest/services/MetroGIS/Planning/MapServer/3\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://btaagdp.org/metadata/05a-01/pub/gdrs/data/pub/us_mn_state_metc/plan_frmwrk2030dev_plan_ar2011/metadata/metadata.xml\"}",
25
25
  "dct_isPartOf_sm": [
26
26
  "Minnesota Geospatial Commons"
@@ -17,7 +17,7 @@
17
17
  "dc_subject_sm": [
18
18
  "Imagery and Base Maps"
19
19
  ],
20
- "dct_provenance_s": "Minnesota",
20
+ "dct_provenance_s": "University of Minnesota",
21
21
  "dct_references_s": "{\"http://schema.org/url\":\"https://gisdata.mn.gov/dataset/2eddde2f-c222-41ca-bd07-2fd74a21f4de\",\"http://schema.org/downloadUrl\":\"ftp://gdrs.dnr.state.mn.us/gdrs/data/pub/us_mn_state_dnr/fgdb_base_usgs_scanned_topo_100k_drg.zip\",\"http://schema.org/image\":\"https://btaagdp.org/thumbnails/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_100k_drg/metadata/preview.jpg\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://btaagdp.org/metadata/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_100k_drg/metadata/metadata.xml\"}",
22
22
  "dct_isPartOf_sm": [
23
23
  "Minnesota Geospatial Commons"
@@ -17,7 +17,7 @@
17
17
  "dc_subject_sm": [
18
18
  "Imagery and Base Maps"
19
19
  ],
20
- "dct_provenance_s": "Minnesota",
20
+ "dct_provenance_s": "University of Minnesota",
21
21
  "dct_references_s": "{\"http://schema.org/url\":\"https://gisdata.mn.gov/dataset/e9c71086-6b25-4950-8e1c-84c2794e3382\",\"http://schema.org/downloadUrl\":\"ftp://ftp.gisdata.mn.gov/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_250k_drg/fgdb_base_usgs_scanned_topo_250k_drg.zip\",\"http://schema.org/image\":\"https://btaagdp.org/thumbnails/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_250k_drg/metadata/preview.jpg\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://btaagdp.org/metadata/05a-01/pub/gdrs/data/pub/us_mn_state_dnr/base_usgs_scanned_topo_250k_drg/metadata/metadata.xml\"}",
22
22
  "dct_isPartOf_sm": [
23
23
  "Minnesota Geospatial Commons"
@@ -17,6 +17,7 @@ describe Geoblacklight::GeoblacklightHelperBehavior do
17
17
  before do
18
18
  expect(dummy_class).to receive(:presenter).and_return(presenter)
19
19
  end
20
+
20
21
  context 'as a Symbol' do
21
22
  it 'calls defined presenter class' do
22
23
  expect(dummy_class.geoblacklight_present(:fake_name)).to eq 'druid:abc123'
data/spec/spec_helper.rb CHANGED
@@ -79,4 +79,6 @@ RSpec.configure do |config|
79
79
  end
80
80
 
81
81
  config.include Devise::Test::ControllerHelpers, type: :controller
82
+ config.include ViewComponent::TestHelpers, type: :component
83
+ config.include ViewComponentCapybaraTestHelpers, type: :component
82
84
  end
@@ -0,0 +1,8 @@
1
+ # frozen_string_literal: true
2
+
3
+ module ViewComponentCapybaraTestHelpers
4
+ # Work around for https://github.com/teamcapybara/capybara/issues/2466
5
+ def render_inline_to_capybara_node(component)
6
+ Capybara::Node::Simple.new(render_inline(component).to_s)
7
+ end
8
+ end
metadata CHANGED
@@ -1,17 +1,17 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: geoblacklight
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.3.1
4
+ version: 3.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Mike Graves
8
8
  - Darren Hardy
9
9
  - Eliot Jordan
10
10
  - Jack Reed
11
- autorequire:
11
+ autorequire:
12
12
  bindir: bin
13
13
  cert_chain: []
14
- date: 2021-05-27 00:00:00.000000000 Z
14
+ date: 2021-09-03 00:00:00.000000000 Z
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
17
17
  name: rails
@@ -39,14 +39,14 @@ dependencies:
39
39
  requirements:
40
40
  - - "~>"
41
41
  - !ruby/object:Gem::Version
42
- version: '7.0'
42
+ version: '7.8'
43
43
  type: :runtime
44
44
  prerelease: false
45
45
  version_requirements: !ruby/object:Gem::Requirement
46
46
  requirements:
47
47
  - - "~>"
48
48
  - !ruby/object:Gem::Version
49
- version: '7.0'
49
+ version: '7.8'
50
50
  - !ruby/object:Gem::Dependency
51
51
  name: config
52
52
  requirement: !ruby/object:Gem::Requirement
@@ -416,6 +416,7 @@ files:
416
416
  - app/assets/images/blacklight/maryland.svg
417
417
  - app/assets/images/blacklight/massgis.svg
418
418
  - app/assets/images/blacklight/metadata.svg
419
+ - app/assets/images/blacklight/michigan-state-university.svg
419
420
  - app/assets/images/blacklight/michigan-state.svg
420
421
  - app/assets/images/blacklight/michigan.svg
421
422
  - app/assets/images/blacklight/minnesota.svg
@@ -429,11 +430,13 @@ files:
429
430
  - app/assets/images/blacklight/pagelines-brands.svg
430
431
  - app/assets/images/blacklight/paper-map.svg
431
432
  - app/assets/images/blacklight/penn-state.svg
433
+ - app/assets/images/blacklight/pennsylvania-state-university.svg
432
434
  - app/assets/images/blacklight/point.svg
433
435
  - app/assets/images/blacklight/polygon.svg
434
436
  - app/assets/images/blacklight/polyline.svg
435
437
  - app/assets/images/blacklight/princeton.svg
436
438
  - app/assets/images/blacklight/public.svg
439
+ - app/assets/images/blacklight/purdue-university.svg
437
440
  - app/assets/images/blacklight/purdue.svg
438
441
  - app/assets/images/blacklight/raster.svg
439
442
  - app/assets/images/blacklight/restricted.svg
@@ -442,8 +445,17 @@ files:
442
445
  - app/assets/images/blacklight/table.svg
443
446
  - app/assets/images/blacklight/tags.svg
444
447
  - app/assets/images/blacklight/texas.svg
448
+ - app/assets/images/blacklight/the-ohio-state-university.svg
445
449
  - app/assets/images/blacklight/tufts.svg
446
450
  - app/assets/images/blacklight/ucla.svg
451
+ - app/assets/images/blacklight/university-of-chicago.svg
452
+ - app/assets/images/blacklight/university-of-illinois-urbana-champaign.svg
453
+ - app/assets/images/blacklight/university-of-iowa.svg
454
+ - app/assets/images/blacklight/university-of-maryland.svg
455
+ - app/assets/images/blacklight/university-of-michigan.svg
456
+ - app/assets/images/blacklight/university-of-minnesota.svg
457
+ - app/assets/images/blacklight/university-of-nebraska-lincoln.svg
458
+ - app/assets/images/blacklight/university-of-wisconsin-madison.svg
447
459
  - app/assets/images/blacklight/uva.svg
448
460
  - app/assets/images/blacklight/web_services.svg
449
461
  - app/assets/images/blacklight/wisconsin.svg
@@ -507,12 +519,15 @@ files:
507
519
  - app/assets/stylesheets/geoblacklight/modules/sidebar.scss
508
520
  - app/assets/stylesheets/geoblacklight/modules/toolbar.scss
509
521
  - app/assets/stylesheets/geoblacklight/modules/web_services.scss
522
+ - app/components/geoblacklight/homepage_feature_facet_component.html.erb
523
+ - app/components/geoblacklight/homepage_feature_facet_component.rb
510
524
  - app/controllers/download_controller.rb
511
525
  - app/controllers/relation_controller.rb
512
526
  - app/controllers/wms_controller.rb
513
527
  - app/helpers/arcgis_helper.rb
514
528
  - app/helpers/blacklight_helper.rb
515
529
  - app/helpers/carto_helper.rb
530
+ - app/helpers/geoblacklight/geoblacklight_helper_behavior.rb
516
531
  - app/helpers/geoblacklight_helper.rb
517
532
  - app/models/concerns/geoblacklight/solr_document.rb
518
533
  - app/models/concerns/geoblacklight/solr_document/arcgis.rb
@@ -526,15 +541,12 @@ files:
526
541
  - app/views/catalog/_carto.html.erb
527
542
  - app/views/catalog/_citation.html.erb
528
543
  - app/views/catalog/_data_dictionary.html.erb
529
- - app/views/catalog/_document_action.html.erb
530
544
  - app/views/catalog/_document_split.html.erb
531
545
  - app/views/catalog/_download_generated_link.html.erb
532
546
  - app/views/catalog/_download_link.html.erb
533
547
  - app/views/catalog/_downloads_generated.html.erb
534
548
  - app/views/catalog/_downloads_primary.html.erb
535
549
  - app/views/catalog/_downloads_secondary.html.erb
536
- - app/views/catalog/_facet_tag_item.html.erb
537
- - app/views/catalog/_facet_tag_layout.html.erb
538
550
  - app/views/catalog/_header_icons.html.erb
539
551
  - app/views/catalog/_home_text.html.erb
540
552
  - app/views/catalog/_icon_facet.html.erb
@@ -567,6 +579,7 @@ files:
567
579
  - babel.config.json
568
580
  - bin/coverage.rb
569
581
  - config/initializers/new_gbl_settings_defaults_3_3.yml
582
+ - config/initializers/new_gbl_settings_defaults_3_4.yml
570
583
  - config/initializers/rails_config.rb
571
584
  - config/locales/geoblacklight.en.yml
572
585
  - geoblacklight.gemspec
@@ -596,7 +609,6 @@ files:
596
609
  - lib/geoblacklight/download/shapefile_download.rb
597
610
  - lib/geoblacklight/engine.rb
598
611
  - lib/geoblacklight/exceptions.rb
599
- - lib/geoblacklight/geoblacklight_helper_behavior.rb
600
612
  - lib/geoblacklight/geometry.rb
601
613
  - lib/geoblacklight/item_viewer.rb
602
614
  - lib/geoblacklight/metadata.rb
@@ -650,6 +662,7 @@ files:
650
662
  - solr/conf/xslt/example_atom.xsl
651
663
  - solr/conf/xslt/example_rss.xsl
652
664
  - solr/conf/xslt/luke.xsl
665
+ - spec/components/geoblacklight/homepage_feature_facet_component_spec.rb
653
666
  - spec/config/initializers/rails_config_spec.rb
654
667
  - spec/controllers/catalog_controller_spec.rb
655
668
  - spec/controllers/download_controller_spec.rb
@@ -736,6 +749,7 @@ files:
736
749
  - spec/fixtures/solr_documents/uva_slug_colon.json
737
750
  - spec/helpers/arcgis_helper_spec.rb
738
751
  - spec/helpers/carto_helper_spec.rb
752
+ - spec/helpers/geoblacklight/geoblacklight_helper_behavior_spec.rb
739
753
  - spec/helpers/geoblacklight_helper_spec.rb
740
754
  - spec/javascripts/geoblacklight_spec.js
741
755
  - spec/javascripts/metadata_download_button_spec.js
@@ -748,7 +762,6 @@ files:
748
762
  - spec/lib/geoblacklight/download/kmz_download_spec.rb
749
763
  - spec/lib/geoblacklight/download/shapefile_download_spec.rb
750
764
  - spec/lib/geoblacklight/download_spec.rb
751
- - spec/lib/geoblacklight/geoblacklight_helper_behavior_spec.rb
752
765
  - spec/lib/geoblacklight/geometry_spec.rb
753
766
  - spec/lib/geoblacklight/item_viewer_spec.rb
754
767
  - spec/lib/geoblacklight/metadata/base_spec.rb
@@ -778,6 +791,7 @@ files:
778
791
  - spec/support/features.rb
779
792
  - spec/support/features/session_helpers.rb
780
793
  - spec/support/fixtures.rb
794
+ - spec/support/view_component_capybara_test_helpers.rb
781
795
  - spec/tasks/geoblacklight_spec.rb
782
796
  - spec/test_app_templates/Gemfile.extra
783
797
  - spec/test_app_templates/lib/generators/test_app_generator.rb
@@ -809,7 +823,7 @@ homepage: http://github.com/geoblacklight/geoblacklight
809
823
  licenses:
810
824
  - Apache 2.0
811
825
  metadata: {}
812
- post_install_message:
826
+ post_install_message:
813
827
  rdoc_options: []
814
828
  require_paths:
815
829
  - lib
@@ -824,11 +838,12 @@ required_rubygems_version: !ruby/object:Gem::Requirement
824
838
  - !ruby/object:Gem::Version
825
839
  version: 2.5.2
826
840
  requirements: []
827
- rubygems_version: 3.0.3
828
- signing_key:
841
+ rubygems_version: 3.2.15
842
+ signing_key:
829
843
  specification_version: 4
830
844
  summary: A discovery platform for geospatial holdings
831
845
  test_files:
846
+ - spec/components/geoblacklight/homepage_feature_facet_component_spec.rb
832
847
  - spec/config/initializers/rails_config_spec.rb
833
848
  - spec/controllers/catalog_controller_spec.rb
834
849
  - spec/controllers/download_controller_spec.rb
@@ -915,6 +930,7 @@ test_files:
915
930
  - spec/fixtures/solr_documents/uva_slug_colon.json
916
931
  - spec/helpers/arcgis_helper_spec.rb
917
932
  - spec/helpers/carto_helper_spec.rb
933
+ - spec/helpers/geoblacklight/geoblacklight_helper_behavior_spec.rb
918
934
  - spec/helpers/geoblacklight_helper_spec.rb
919
935
  - spec/javascripts/geoblacklight_spec.js
920
936
  - spec/javascripts/metadata_download_button_spec.js
@@ -927,7 +943,6 @@ test_files:
927
943
  - spec/lib/geoblacklight/download/kmz_download_spec.rb
928
944
  - spec/lib/geoblacklight/download/shapefile_download_spec.rb
929
945
  - spec/lib/geoblacklight/download_spec.rb
930
- - spec/lib/geoblacklight/geoblacklight_helper_behavior_spec.rb
931
946
  - spec/lib/geoblacklight/geometry_spec.rb
932
947
  - spec/lib/geoblacklight/item_viewer_spec.rb
933
948
  - spec/lib/geoblacklight/metadata/base_spec.rb
@@ -957,6 +972,7 @@ test_files:
957
972
  - spec/support/features.rb
958
973
  - spec/support/features/session_helpers.rb
959
974
  - spec/support/fixtures.rb
975
+ - spec/support/view_component_capybara_test_helpers.rb
960
976
  - spec/tasks/geoblacklight_spec.rb
961
977
  - spec/test_app_templates/Gemfile.extra
962
978
  - spec/test_app_templates/lib/generators/test_app_generator.rb