geoblacklight 4.7.0 → 5.0.0.pre.alpha.11
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.
- checksums.yaml +4 -4
- data/.github/workflows/build-demo-app.yml +153 -0
- data/.github/workflows/prune-containers.yml +19 -0
- data/.github/workflows/ruby.yml +54 -55
- data/.gitignore +2 -2
- data/CONTRIBUTING.md +62 -44
- data/Gemfile +3 -27
- data/Rakefile +42 -67
- data/app/assets/images/blacklight/logo.svg +31 -1
- data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +1 -2
- data/app/assets/stylesheets/geoblacklight/modules/_base.scss +1 -1
- data/app/assets/stylesheets/geoblacklight/modules/_blacklight_overrides.scss +24 -26
- data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +13 -0
- data/app/assets/stylesheets/geoblacklight/modules/home.scss +2 -17
- data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +48 -23
- data/app/assets/stylesheets/geoblacklight/modules/index_maps.scss +1 -15
- data/app/assets/stylesheets/geoblacklight/modules/item.scss +13 -11
- data/app/assets/stylesheets/geoblacklight/modules/layer_opacity.scss +3 -3
- data/app/assets/stylesheets/geoblacklight/modules/leaflet.scss +4 -0
- data/app/assets/stylesheets/geoblacklight/modules/modal.scss +0 -15
- data/app/assets/stylesheets/geoblacklight/modules/results.scss +10 -19
- data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +2 -2
- data/app/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component.rb +46 -0
- data/app/components/blacklight/icons/arizona_component.rb +24 -0
- data/app/components/blacklight/icons/arrow_circle_down_component.rb +23 -0
- data/app/components/blacklight/icons/baruch_cuny_component.rb +23 -0
- data/app/components/blacklight/icons/book_component.rb +23 -0
- data/app/components/blacklight/icons/bookmark_component.rb +23 -0
- data/app/components/blacklight/icons/cd_rom_component.rb +23 -0
- data/app/components/blacklight/icons/child_item_component.rb +23 -0
- data/app/components/blacklight/icons/circle_info_solid_component.rb +23 -0
- data/app/components/blacklight/icons/citation_component.rb +23 -0
- data/app/components/blacklight/icons/collection_component.rb +23 -0
- data/app/components/blacklight/icons/collections_component.rb +24 -0
- data/app/components/blacklight/icons/columbia_component.rb +23 -0
- data/app/components/blacklight/icons/cornell_component.rb +25 -0
- data/app/components/blacklight/icons/datasets_component.rb +27 -0
- data/app/components/blacklight/icons/dvd_rom_component.rb +23 -0
- data/app/components/blacklight/icons/email_component.rb +23 -0
- data/app/components/blacklight/icons/esri_globe_component.rb +51 -0
- data/app/components/blacklight/icons/fire_solid_component.rb +23 -0
- data/app/components/blacklight/icons/george_mason_component.rb +24 -0
- data/app/components/blacklight/icons/globe_component.rb +23 -0
- data/app/components/blacklight/icons/harvard_component.rb +23 -0
- data/app/components/blacklight/icons/home_component.rb +23 -0
- data/app/components/blacklight/icons/iiif_drag_drop_component.rb +31 -0
- data/app/components/blacklight/icons/image_component.rb +23 -0
- data/app/components/blacklight/icons/imagery_component.rb +24 -0
- data/app/components/blacklight/icons/indiana_component.rb +23 -0
- data/app/components/blacklight/icons/leaf_component.rb +23 -0
- data/app/components/blacklight/icons/lewis_clark_component.rb +25 -0
- data/app/components/blacklight/icons/lightbulb_solid_component.rb +23 -0
- data/app/components/blacklight/icons/line_component.rb +24 -0
- data/app/components/blacklight/icons/map_component.rb +23 -0
- data/app/components/blacklight/icons/map_marker_component.rb +23 -0
- data/app/components/blacklight/icons/maps_component.rb +24 -0
- data/app/components/blacklight/icons/massgis_component.rb +23 -0
- data/app/components/blacklight/icons/metadata_component.rb +23 -0
- data/app/components/blacklight/icons/michigan_state_university_component.rb +25 -0
- data/app/components/blacklight/icons/mit_component.rb +23 -0
- data/app/components/blacklight/icons/mixed_component.rb +25 -0
- data/app/components/blacklight/icons/multilinestring_component.rb +26 -0
- data/app/components/blacklight/icons/multipoint_component.rb +23 -0
- data/app/components/blacklight/icons/multipolygon_component.rb +26 -0
- data/app/components/blacklight/icons/northwestern_university_component.rb +24 -0
- data/app/components/blacklight/icons/nyu_component.rb +26 -0
- data/app/components/blacklight/icons/pagelines_brands_component.rb +23 -0
- data/app/components/blacklight/icons/paper_map_component.rb +23 -0
- data/app/components/blacklight/icons/parent_item_component.rb +23 -0
- data/app/components/blacklight/icons/pennsylvania_state_university_component.rb +25 -0
- data/app/components/blacklight/icons/point_component.rb +23 -0
- data/app/components/blacklight/icons/polygon_component.rb +24 -0
- data/app/components/blacklight/icons/polyline_component.rb +26 -0
- data/app/components/blacklight/icons/princeton_component.rb +23 -0
- data/app/components/blacklight/icons/public_component.rb +23 -0
- data/app/components/blacklight/icons/purdue_university_component.rb +25 -0
- data/app/components/blacklight/icons/raster_component.rb +23 -0
- data/app/components/blacklight/icons/restricted_component.rb +23 -0
- data/app/components/blacklight/icons/rutgers_component.rb +25 -0
- data/app/components/blacklight/icons/sms_component.rb +23 -0
- data/app/components/blacklight/icons/stanford_component.rb +23 -0
- data/app/components/blacklight/icons/table_component.rb +23 -0
- data/app/components/blacklight/icons/tags_component.rb +23 -0
- data/app/components/blacklight/icons/texas_component.rb +23 -0
- data/app/components/blacklight/icons/the_ohio_state_university_component.rb +26 -0
- data/app/components/blacklight/icons/triangle_exclamation_solid_component.rb +23 -0
- data/app/components/blacklight/icons/tufts_component.rb +23 -0
- data/app/components/blacklight/icons/ucla_component.rb +23 -0
- data/app/components/blacklight/icons/university_of_california_berkeley_component.rb +24 -0
- data/app/components/blacklight/icons/university_of_chicago_component.rb +25 -0
- data/app/components/blacklight/icons/university_of_colorado_boulder_component.rb +26 -0
- data/app/components/blacklight/icons/university_of_illinois_urbana_champaign_component.rb +25 -0
- data/app/components/blacklight/icons/university_of_iowa_component.rb +24 -0
- data/app/components/blacklight/icons/university_of_maryland_component.rb +24 -0
- data/app/components/blacklight/icons/university_of_michigan_component.rb +24 -0
- data/app/components/blacklight/icons/university_of_minnesota_component.rb +24 -0
- data/app/components/blacklight/icons/university_of_nebraska_lincoln_component.rb +27 -0
- data/app/components/blacklight/icons/university_of_wisconsin_madison_component.rb +24 -0
- data/app/components/blacklight/icons/uva_component.rb +23 -0
- data/app/components/blacklight/icons/web_services_component.rb +23 -0
- data/app/components/blacklight/icons/websites_component.rb +24 -0
- data/app/components/geoblacklight/arcgis_component.html.erb +3 -0
- data/app/components/geoblacklight/arcgis_component.rb +25 -0
- data/app/components/geoblacklight/attribute_table_component.html.erb +17 -0
- data/app/components/geoblacklight/attribute_table_component.rb +17 -0
- data/app/components/geoblacklight/data_dictionary_download_component.html.erb +3 -0
- data/app/components/geoblacklight/data_dictionary_download_component.rb +16 -0
- data/app/components/geoblacklight/display_note_component.rb +1 -1
- data/app/components/geoblacklight/document/citation_component.html.erb +1 -0
- data/app/components/geoblacklight/document/citation_component.rb +19 -0
- data/app/components/geoblacklight/document/sidebar_component.html.erb +12 -0
- data/app/components/geoblacklight/document/sidebar_component.rb +8 -0
- data/app/components/geoblacklight/document_component.html.erb +43 -0
- data/app/components/geoblacklight/document_component.rb +6 -0
- data/app/components/geoblacklight/download_links_component.html.erb +31 -0
- data/app/components/geoblacklight/download_links_component.rb +80 -0
- data/app/components/geoblacklight/header_component.html.erb +14 -0
- data/app/components/geoblacklight/header_component.rb +9 -0
- data/app/components/geoblacklight/header_icons_component.html.erb +3 -0
- data/app/components/geoblacklight/header_icons_component.rb +29 -0
- data/app/components/geoblacklight/iiif_drag_drop_component.html.erb +3 -0
- data/app/components/geoblacklight/iiif_drag_drop_component.rb +16 -0
- data/app/components/geoblacklight/index_map_inspect_component.rb +15 -0
- data/app/components/geoblacklight/index_map_legend_component.html.erb +14 -0
- data/app/components/geoblacklight/index_map_legend_component.rb +17 -0
- data/app/components/geoblacklight/item_map_viewer_component.html.erb +1 -0
- data/app/components/geoblacklight/item_map_viewer_component.rb +87 -0
- data/app/components/geoblacklight/location_leaflet_map_component.html.erb +1 -0
- data/app/components/geoblacklight/location_leaflet_map_component.rb +49 -0
- data/app/components/geoblacklight/login_link_component.html.erb +5 -0
- data/app/components/geoblacklight/login_link_component.rb +17 -0
- data/app/components/geoblacklight/relations_component.html.erb +23 -0
- data/app/components/geoblacklight/relations_component.rb +25 -0
- data/app/components/geoblacklight/search_result_component.html.erb +44 -0
- data/app/components/geoblacklight/search_result_component.rb +28 -0
- data/app/components/geoblacklight/static_map_component.html.erb +9 -0
- data/app/components/geoblacklight/static_map_component.rb +36 -0
- data/app/components/geoblacklight/viewer_help_text_component.html.erb +1 -0
- data/app/components/geoblacklight/viewer_help_text_component.rb +46 -0
- data/app/components/geoblacklight/web_services_component.html.erb +1 -0
- data/app/components/geoblacklight/web_services_component.rb +26 -0
- data/app/{views/catalog/_web_services_default.html.erb → components/geoblacklight/web_services_default_component.html.erb} +3 -5
- data/app/components/geoblacklight/web_services_default_component.rb +11 -0
- data/app/components/geoblacklight/web_services_link_component.html.erb +3 -0
- data/app/components/geoblacklight/web_services_link_component.rb +22 -0
- data/app/{views/catalog/_web_services_wfs.html.erb → components/geoblacklight/web_services_wfs_component.html.erb} +4 -7
- data/app/components/geoblacklight/web_services_wfs_component.rb +12 -0
- data/app/components/geoblacklight/web_services_wms_component.html.erb +10 -0
- data/app/components/geoblacklight/web_services_wms_component.rb +12 -0
- data/app/controllers/download_controller.rb +8 -29
- data/app/controllers/relation_controller.rb +0 -1
- data/app/helpers/geoblacklight_helper.rb +10 -247
- data/app/javascript/geoblacklight/controllers/clipboard_controller.js +11 -0
- data/app/javascript/geoblacklight/controllers/clover_viewer_controller.js +47 -0
- data/app/javascript/geoblacklight/controllers/downloads_controller.js +56 -0
- data/app/javascript/geoblacklight/controllers/leaflet_viewer_controller.js +217 -0
- data/app/javascript/geoblacklight/controllers/oembed_viewer_controller.js +18 -0
- data/app/javascript/geoblacklight/controllers/openlayers_viewer_controller.js +63 -0
- data/app/javascript/geoblacklight/controllers/search_results_controller.js +50 -0
- data/app/javascript/geoblacklight/core.js +69 -0
- data/app/javascript/geoblacklight/index.js +29 -0
- data/app/javascript/geoblacklight/initializers/metadata_download.js +54 -0
- data/app/javascript/geoblacklight/initializers/popovers.js +11 -0
- data/app/javascript/geoblacklight/initializers/relations.js +40 -0
- data/app/javascript/geoblacklight/initializers/tooltips.js +55 -0
- data/app/javascript/geoblacklight/initializers/truncation.js +45 -0
- data/app/javascript/geoblacklight/leaflet/basemaps.js +74 -0
- data/app/javascript/geoblacklight/leaflet/constants.js +18 -0
- data/app/javascript/geoblacklight/leaflet/controls/geosearch.js +160 -0
- data/app/javascript/geoblacklight/leaflet/controls/layer_opacity.js +120 -0
- data/app/javascript/geoblacklight/leaflet/inspection.js +195 -0
- data/app/javascript/geoblacklight/leaflet/layer_index_map.js +120 -0
- data/app/javascript/geoblacklight/leaflet/layer_wmts.js +59 -0
- data/app/javascript/geoblacklight/leaflet/layers.js +153 -0
- data/app/javascript/geoblacklight/leaflet/utils.js +83 -0
- data/app/javascript/geoblacklight/openlayers/basemaps.js +47 -0
- data/app/javascript/geoblacklight/openlayers/layers.js +44 -0
- data/app/models/concerns/geoblacklight/solr_document/citation.rb +20 -15
- data/app/models/concerns/geoblacklight/solr_document/inspection.rb +1 -1
- data/app/models/concerns/geoblacklight/solr_document.rb +23 -59
- data/app/presenters/geoblacklight/bbox_item_presenter.rb +1 -1
- data/app/views/catalog/_citation.html.erb +16 -33
- data/app/views/catalog/_document_split.html.erb +18 -3
- data/app/views/catalog/_home_text.html.erb +2 -2
- data/app/views/catalog/_metadata.html.erb +1 -1
- data/app/views/catalog/index.html.erb +8 -4
- data/app/views/catalog/metadata/_markup.html.erb +1 -1
- data/app/views/catalog/metadata.html.erb +14 -13
- data/app/views/catalog/web_services.html.erb +19 -28
- data/app/views/relation/index.html.erb +2 -12
- data/app/views/relation/index.json.jbuilder +1 -1
- data/compose.yml +14 -0
- data/config/importmap.rb +20 -0
- data/config/locales/geoblacklight.en.yml +15 -24
- data/geoblacklight.gemspec +8 -8
- data/lib/generators/geoblacklight/assets/importmap_generator.rb +87 -0
- data/lib/generators/geoblacklight/assets/vite_generator.rb +90 -0
- data/lib/generators/geoblacklight/assets_generator.rb +12 -37
- data/lib/generators/geoblacklight/install_generator.rb +11 -63
- data/lib/generators/geoblacklight/templates/assets/_customizations.scss +13 -19
- data/lib/generators/geoblacklight/templates/assets/application.js +17 -0
- data/lib/generators/geoblacklight/templates/assets/application.scss +9 -4
- data/lib/generators/geoblacklight/templates/assets/geoblacklight.scss +11 -0
- data/lib/generators/geoblacklight/templates/base.html.erb +9 -12
- data/lib/generators/geoblacklight/templates/catalog_controller.rb +11 -18
- data/lib/generators/geoblacklight/templates/demo-app/Dockerfile +31 -0
- data/lib/generators/geoblacklight/templates/demo-app/compose.yml +26 -0
- data/lib/generators/geoblacklight/templates/demo-app/start-server.sh +21 -0
- data/lib/generators/geoblacklight/templates/package.json +7 -1
- data/lib/generators/geoblacklight/templates/settings.yml +45 -59
- data/lib/generators/geoblacklight/templates/vite.config.ts +22 -7
- data/lib/geoblacklight/bounding_box.rb +16 -0
- data/lib/geoblacklight/constants.rb +0 -1
- data/lib/geoblacklight/download/csv_download.rb +22 -0
- data/lib/geoblacklight/download/geojson_download.rb +1 -1
- data/lib/geoblacklight/download/geotiff_download.rb +1 -1
- data/lib/geoblacklight/download/kmz_download.rb +1 -1
- data/lib/geoblacklight/download/shapefile_download.rb +1 -1
- data/lib/geoblacklight/download.rb +1 -1
- data/lib/geoblacklight/engine.rb +15 -20
- data/lib/geoblacklight/geometry.rb +0 -7
- data/lib/geoblacklight/item_viewer.rb +1 -8
- data/lib/geoblacklight/metadata/base.rb +2 -1
- data/lib/geoblacklight/references.rb +27 -23
- data/lib/geoblacklight/routes/downloadable.rb +0 -1
- data/lib/geoblacklight/routes.rb +0 -3
- data/lib/geoblacklight/version.rb +1 -1
- data/lib/geoblacklight/wms_layer/feature_info_response.rb +9 -6
- data/lib/geoblacklight.rb +6 -47
- data/lib/tasks/geoblacklight.rake +24 -77
- data/package.json +22 -16
- data/solr/conf/schema.xml +15 -13
- data/solr/conf/solrconfig.xml +6 -4
- data/spec/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/arizona_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/arrow_circle_down_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/baruch_cuny_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/book_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/bookmark_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/cd_rom_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/child_item_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/circle_info_solid_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/citation_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/collection_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/collections_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/columbia_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/cornell_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/datasets_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/dvd_rom_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/email_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/esri_globe_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/fire_solid_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/george_mason_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/globe_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/harvard_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/home_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/iiif_drag_drop_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/image_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/imagery_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/indiana_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/leaf_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/lewis_clark_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/lightbulb_solid_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/line_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/map_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/map_marker_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/maps_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/massgis_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/metadata_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/michigan_state_university_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/mit_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/mixed_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/multilinestring_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/multipoint_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/multipolygon_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/northwestern_university_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/nyu_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/pagelines_brands_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/paper_map_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/parent_item_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/pennsylvania_state_university_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/point_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/polygon_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/polyline_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/princeton_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/public_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/purdue_university_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/raster_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/restricted_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/rutgers_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/sms_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/stanford_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/table_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/tags_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/texas_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/the_ohio_state_university_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/triangle_exclamation_solid_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/tufts_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/ucla_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_california_berkeley_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_chicago_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_colorado_boulder_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_illinois_urbana_champaign_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_iowa_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_maryland_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_michigan_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_minnesota_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_nebraska_lincoln_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/university_of_wisconsin_madison_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/uva_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/web_services_component_spec.rb +15 -0
- data/spec/components/blacklight/icons/websites_component_spec.rb +15 -0
- data/spec/components/geoblacklight/arcgis_component_spec.rb +31 -0
- data/spec/components/geoblacklight/attribute_table_component_spec.rb +37 -0
- data/spec/components/geoblacklight/citation_component_spec.rb +37 -0
- data/spec/components/geoblacklight/document_component_spec.rb +92 -0
- data/spec/components/geoblacklight/download_links_component_spec.rb +102 -0
- data/spec/components/geoblacklight/header_icons_component_spec.rb +56 -0
- data/spec/components/geoblacklight/iiif_drag_drop_component_spec.rb +30 -0
- data/spec/components/geoblacklight/index_map_legend_component_spec.rb +42 -0
- data/spec/components/geoblacklight/item_map_viewer_component_spec.rb +36 -0
- data/spec/components/geoblacklight/login_link_component_spec.rb +33 -0
- data/spec/{lib/geoblacklight/document_presenter_spec.rb → components/geoblacklight/search_result_component_spec.rb} +19 -11
- data/spec/components/geoblacklight/static_map_component_spec.rb +22 -0
- data/spec/components/geoblacklight/viewer_help_text_component_spec.rb +28 -0
- data/spec/components/geoblacklight/web_services_component_spec.rb +45 -0
- data/spec/controllers/download_controller_spec.rb +12 -35
- data/spec/features/axe_spec.rb +66 -0
- data/spec/features/bookmarks_spec.rb +1 -1
- data/spec/features/citations_spec.rb +7 -3
- data/spec/features/configurable_basemap_spec.rb +0 -56
- data/spec/features/download_layer_spec.rb +24 -39
- data/spec/features/esri_viewer_spec.rb +1 -1
- data/spec/features/exports_spec.rb +0 -15
- data/spec/features/{full_screen_controll_spec.rb → full_screen_control_spec.rb} +6 -6
- data/spec/features/home_page_spec.rb +12 -7
- data/spec/features/iiif_viewer_spec.rb +1 -1
- data/spec/features/index_map_spec.rb +16 -9
- data/spec/features/{split_view.html.erb_spec.rb → index_view_spec.rb} +15 -13
- data/spec/features/layer_inspection_spec.rb +2 -2
- data/spec/features/layer_preview_spec.rb +1 -1
- data/spec/features/missing_metadata_spec.rb +5 -5
- data/spec/features/oembed_spec.rb +2 -2
- data/spec/features/saved_searches_spec.rb +4 -1
- data/spec/features/search_results_complex_geometry_spec.rb +2 -2
- data/spec/features/search_results_icons_spec.rb +3 -3
- data/spec/features/search_results_map_spec.rb +4 -36
- data/spec/features/search_results_overlap_ratio_spec.rb +1 -1
- data/spec/features/show_page_download_spec.rb +0 -8
- data/spec/features/tilejson_spec.rb +2 -2
- data/spec/features/web_services_modal_spec.rb +57 -39
- data/spec/features/wmts_spec.rb +4 -4
- data/spec/fixtures/solr_documents/README.md +2 -1
- data/spec/fixtures/solr_documents/complex-geom.json +61 -0
- data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +45 -24
- data/spec/fixtures/solr_documents/harvard_raster.json +1 -1
- data/spec/fixtures/solr_documents/multiple-downloads.json +1 -0
- data/spec/helpers/geoblacklight_helper_spec.rb +8 -173
- data/spec/lib/geoblacklight/download/csv_download_spec.rb +21 -0
- data/spec/lib/geoblacklight/geometry_spec.rb +0 -15
- data/spec/lib/geoblacklight/reference_spec.rb +17 -19
- data/spec/lib/geoblacklight/references_spec.rb +30 -40
- data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +8 -6
- data/spec/lib/geoblacklight/wms_layer_spec.rb +14 -0
- data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -17
- data/spec/models/concerns/geoblacklight/solr_document_spec.rb +1 -69
- data/spec/spec_helper.rb +2 -31
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -4
- data/template.rb +13 -11
- data/test/leaflet/layers.test.js +17 -0
- data/vite.config.ts +34 -23
- metadata +315 -273
- data/.hound.yml +0 -8
- data/.jshintignore +0 -2
- data/.jshintrc +0 -67
- data/.solr_wrapper +0 -7
- data/app/assets/images/blacklight/american-geographical-society-library-uwm-libraries.svg +0 -26
- data/app/assets/images/blacklight/arrow-circle-down.svg +0 -3
- data/app/assets/images/blacklight/baruch-cuny.svg +0 -3
- data/app/assets/images/blacklight/book.svg +0 -3
- data/app/assets/images/blacklight/bookmark.svg +0 -3
- data/app/assets/images/blacklight/cd-rom.svg +0 -3
- data/app/assets/images/blacklight/chicago.svg +0 -4
- data/app/assets/images/blacklight/child-item.svg +0 -3
- data/app/assets/images/blacklight/circle-info-solid.svg +0 -1
- data/app/assets/images/blacklight/citation.svg +0 -3
- data/app/assets/images/blacklight/collection.svg +0 -3
- data/app/assets/images/blacklight/collections.svg +0 -4
- data/app/assets/images/blacklight/columbia.svg +0 -3
- data/app/assets/images/blacklight/cornell.svg +0 -5
- data/app/assets/images/blacklight/datasets.svg +0 -7
- data/app/assets/images/blacklight/dvd-rom.svg +0 -3
- data/app/assets/images/blacklight/email.svg +0 -3
- data/app/assets/images/blacklight/esri-globe.svg +0 -31
- data/app/assets/images/blacklight/fire-solid.svg +0 -1
- data/app/assets/images/blacklight/geoblacklight-icons.json +0 -3312
- data/app/assets/images/blacklight/george-mason.svg +0 -4
- data/app/assets/images/blacklight/globe.svg +0 -3
- data/app/assets/images/blacklight/harvard.svg +0 -3
- data/app/assets/images/blacklight/home.svg +0 -3
- data/app/assets/images/blacklight/illinois.svg +0 -4
- data/app/assets/images/blacklight/image.svg +0 -3
- data/app/assets/images/blacklight/imagery.svg +0 -4
- data/app/assets/images/blacklight/indiana.svg +0 -3
- data/app/assets/images/blacklight/iowa.svg +0 -3
- data/app/assets/images/blacklight/leaf.svg +0 -3
- data/app/assets/images/blacklight/lewis-clark.svg +0 -5
- data/app/assets/images/blacklight/lightbulb-solid.svg +0 -1
- data/app/assets/images/blacklight/line.svg +0 -4
- data/app/assets/images/blacklight/map-marker.svg +0 -3
- data/app/assets/images/blacklight/map.svg +0 -3
- data/app/assets/images/blacklight/maps.svg +0 -4
- data/app/assets/images/blacklight/maryland.svg +0 -3
- data/app/assets/images/blacklight/massgis.svg +0 -3
- data/app/assets/images/blacklight/metadata.svg +0 -3
- data/app/assets/images/blacklight/michigan-state-university.svg +0 -5
- data/app/assets/images/blacklight/michigan-state.svg +0 -4
- data/app/assets/images/blacklight/michigan.svg +0 -3
- data/app/assets/images/blacklight/minnesota.svg +0 -3
- data/app/assets/images/blacklight/mit.svg +0 -3
- data/app/assets/images/blacklight/mixed.svg +0 -5
- data/app/assets/images/blacklight/multilinestring.svg +0 -6
- data/app/assets/images/blacklight/multipoint.svg +0 -3
- data/app/assets/images/blacklight/multipolygon.svg +0 -6
- data/app/assets/images/blacklight/nebraska.svg +0 -4
- data/app/assets/images/blacklight/northwestern-university.svg +0 -5
- data/app/assets/images/blacklight/nyu.svg +0 -6
- data/app/assets/images/blacklight/ohio-state.svg +0 -5
- data/app/assets/images/blacklight/pagelines-brands.svg +0 -3
- data/app/assets/images/blacklight/paper-map.svg +0 -3
- data/app/assets/images/blacklight/parent-item.svg +0 -3
- data/app/assets/images/blacklight/penn-state.svg +0 -4
- data/app/assets/images/blacklight/pennsylvania-state-university.svg +0 -5
- data/app/assets/images/blacklight/point.svg +0 -3
- data/app/assets/images/blacklight/polygon.svg +0 -4
- data/app/assets/images/blacklight/polyline.svg +0 -6
- data/app/assets/images/blacklight/princeton.svg +0 -3
- data/app/assets/images/blacklight/public.svg +0 -3
- data/app/assets/images/blacklight/purdue-university.svg +0 -5
- data/app/assets/images/blacklight/purdue.svg +0 -4
- data/app/assets/images/blacklight/raster.svg +0 -3
- data/app/assets/images/blacklight/restricted.svg +0 -3
- data/app/assets/images/blacklight/rutgers.svg +0 -5
- data/app/assets/images/blacklight/search.svg +0 -5
- data/app/assets/images/blacklight/sms.svg +0 -3
- data/app/assets/images/blacklight/stanford.svg +0 -3
- data/app/assets/images/blacklight/table.svg +0 -3
- data/app/assets/images/blacklight/tags.svg +0 -3
- data/app/assets/images/blacklight/texas.svg +0 -3
- data/app/assets/images/blacklight/the-ohio-state-university.svg +0 -6
- data/app/assets/images/blacklight/triangle-exclamation-solid.svg +0 -1
- data/app/assets/images/blacklight/tufts.svg +0 -3
- data/app/assets/images/blacklight/ucla.svg +0 -3
- data/app/assets/images/blacklight/university-of-arizona.svg +0 -4
- data/app/assets/images/blacklight/university-of-california-berkeley.svg +0 -4
- data/app/assets/images/blacklight/university-of-chicago.svg +0 -5
- data/app/assets/images/blacklight/university-of-colorado-boulder.svg +0 -6
- data/app/assets/images/blacklight/university-of-illinois-urbana-champaign.svg +0 -5
- data/app/assets/images/blacklight/university-of-iowa.svg +0 -4
- data/app/assets/images/blacklight/university-of-maryland.svg +0 -4
- data/app/assets/images/blacklight/university-of-michigan.svg +0 -4
- data/app/assets/images/blacklight/university-of-minnesota.svg +0 -4
- data/app/assets/images/blacklight/university-of-nebraska-lincoln.svg +0 -7
- data/app/assets/images/blacklight/university-of-wisconsin-madison.svg +0 -4
- data/app/assets/images/blacklight/uva.svg +0 -3
- data/app/assets/images/blacklight/web_services.svg +0 -3
- data/app/assets/images/blacklight/websites.svg +0 -4
- data/app/assets/images/blacklight/wisconsin.svg +0 -3
- data/app/assets/javascripts/geoblacklight/basemaps.js +0 -63
- data/app/assets/javascripts/geoblacklight/controls/fullscreen.js +0 -8
- data/app/assets/javascripts/geoblacklight/controls/opacity.js +0 -6
- data/app/assets/javascripts/geoblacklight/controls.js +0 -1
- data/app/assets/javascripts/geoblacklight/downloaders/downloader.js +0 -61
- data/app/assets/javascripts/geoblacklight/downloaders/hgl_downloader.js +0 -32
- data/app/assets/javascripts/geoblacklight/downloaders.js +0 -1
- data/app/assets/javascripts/geoblacklight/geoblacklight.js +0 -60
- data/app/assets/javascripts/geoblacklight/modules/bookmarks.js +0 -43
- data/app/assets/javascripts/geoblacklight/modules/download.js +0 -11
- data/app/assets/javascripts/geoblacklight/modules/geosearch.js +0 -133
- data/app/assets/javascripts/geoblacklight/modules/help_text.js +0 -7
- data/app/assets/javascripts/geoblacklight/modules/home.js +0 -16
- data/app/assets/javascripts/geoblacklight/modules/item.js +0 -32
- data/app/assets/javascripts/geoblacklight/modules/layer_opacity.js +0 -68
- data/app/assets/javascripts/geoblacklight/modules/metadata.js +0 -15
- data/app/assets/javascripts/geoblacklight/modules/metadata_download_button.js +0 -58
- data/app/assets/javascripts/geoblacklight/modules/relations.js +0 -14
- data/app/assets/javascripts/geoblacklight/modules/results.js +0 -81
- data/app/assets/javascripts/geoblacklight/modules/svg_tooltips.js +0 -31
- data/app/assets/javascripts/geoblacklight/modules/util.js +0 -48
- data/app/assets/javascripts/geoblacklight/modules.js +0 -1
- data/app/assets/javascripts/geoblacklight/templates/index_map_download.hbs +0 -19
- data/app/assets/javascripts/geoblacklight/templates/index_map_info.hbs +0 -61
- data/app/assets/javascripts/geoblacklight/viewers/cog.js +0 -5
- data/app/assets/javascripts/geoblacklight/viewers/esri/dynamic_map_layer.js +0 -85
- data/app/assets/javascripts/geoblacklight/viewers/esri/feature_layer.js +0 -76
- data/app/assets/javascripts/geoblacklight/viewers/esri/image_map_layer.js +0 -14
- data/app/assets/javascripts/geoblacklight/viewers/esri/tiled_map_layer.js +0 -50
- data/app/assets/javascripts/geoblacklight/viewers/esri.js +0 -78
- data/app/assets/javascripts/geoblacklight/viewers/iiif.js +0 -25
- data/app/assets/javascripts/geoblacklight/viewers/index_map.js +0 -71
- data/app/assets/javascripts/geoblacklight/viewers/map.js +0 -94
- data/app/assets/javascripts/geoblacklight/viewers/oembed.js +0 -13
- data/app/assets/javascripts/geoblacklight/viewers/pmtiles.js +0 -5
- data/app/assets/javascripts/geoblacklight/viewers/tilejson.js +0 -33
- data/app/assets/javascripts/geoblacklight/viewers/tms.js +0 -10
- data/app/assets/javascripts/geoblacklight/viewers/viewer.js +0 -68
- data/app/assets/javascripts/geoblacklight/viewers/wms.js +0 -74
- data/app/assets/javascripts/geoblacklight/viewers/wmts.js +0 -85
- data/app/assets/javascripts/geoblacklight/viewers/xyz.js +0 -10
- data/app/assets/javascripts/geoblacklight/viewers.js +0 -1
- data/app/assets/stylesheets/geoblacklight/modules/mixins.scss +0 -5
- data/app/helpers/arcgis_helper.rb +0 -17
- data/app/helpers/blacklight_helper.rb +0 -15
- data/app/helpers/carto_helper.rb +0 -36
- data/app/helpers/geoblacklight/geoblacklight_helper_behavior.rb +0 -24
- data/app/javascript/clover/clover_initializer.js +0 -29
- data/app/javascript/index.js +0 -7
- data/app/javascript/openlayers/basemaps.js +0 -27
- data/app/javascript/openlayers/ol_initializer.js +0 -131
- data/app/javascript/stylesheets/openlayers.css +0 -1
- data/app/models/concerns/geoblacklight/solr_document/carto.rb +0 -24
- data/app/presenters/geoblacklight/document_presenter.rb +0 -34
- data/app/views/catalog/_arcgis.html.erb +0 -4
- data/app/views/catalog/_carto.html.erb +0 -4
- data/app/views/catalog/_data_dictionary.html.erb +0 -5
- data/app/views/catalog/_downloads_collapse.html.erb +0 -30
- data/app/views/catalog/_header_icons.html.erb +0 -3
- data/app/views/catalog/_index_split_default.html.erb +0 -30
- data/app/views/catalog/_results_pagination.html.erb +0 -12
- data/app/views/catalog/_show_default_attribute_table.html.erb +0 -19
- data/app/views/catalog/_show_default_display_note.html.erb +0 -7
- data/app/views/catalog/_show_default_viewer_container.html.erb +0 -28
- data/app/views/catalog/_show_downloads.html.erb +0 -26
- data/app/views/catalog/_show_header_default.html.erb +0 -4
- data/app/views/catalog/_show_sidebar.html.erb +0 -16
- data/app/views/catalog/_show_sidebar_static_map.html.erb +0 -13
- data/app/views/catalog/_show_web_services.html.erb +0 -11
- data/app/views/catalog/_web_services.html.erb +0 -9
- data/app/views/catalog/_web_services_wms.html.erb +0 -13
- data/app/views/download/hgl.html.erb +0 -27
- data/app/views/relation/_relations.html.erb +0 -15
- data/app/views/shared/_header_navbar.html.erb +0 -46
- data/babel.config.json +0 -4
- data/jest.config.js +0 -25
- data/lib/generators/geoblacklight/templates/assets/_blacklight.scss +0 -1
- data/lib/generators/geoblacklight/templates/assets/_geoblacklight.scss +0 -1
- data/lib/generators/geoblacklight/templates/assets/geoblacklight.js +0 -9
- data/lib/generators/geoblacklight/templates/clover.js +0 -5
- data/lib/generators/geoblacklight/templates/ol.js +0 -6
- data/lib/generators/geoblacklight/templates/package-test.json +0 -10
- data/lib/generators/geoblacklight/templates/settings.gbl_v1.yml +0 -195
- data/lib/geoblacklight/deprecated_configuration.rb +0 -519
- data/lib/geoblacklight/download/hgl_download.rb +0 -25
- data/lib/geoblacklight/view_helper_override.rb +0 -27
- data/setupJest.js +0 -14
- data/spec/helpers/arcgis_helper_spec.rb +0 -16
- data/spec/helpers/carto_helper_spec.rb +0 -13
- data/spec/helpers/geoblacklight/geoblacklight_helper_behavior_spec.rb +0 -27
- data/spec/javascripts/util_spec.js +0 -10
- data/spec/lib/geoblacklight/deprecated_configuration_spec.rb +0 -597
- data/spec/lib/geoblacklight/download/hgl_download_spec.rb +0 -62
- data/spec/lib/geoblacklight/view_helper_override_spec.rb +0 -30
- data/spec/models/concerns/geoblacklight/solr_document/carto_spec.rb +0 -43
- data/spec/test_app_templates/Gemfile.extra +0 -2
- data/spec/views/catalog/_document_split.html.erb_spec.rb +0 -7
- data/spec/views/catalog/_index_split.html.erb_spec.rb +0 -7
- data/spec/views/catalog/_results_pagination.html.erb_spec.rb +0 -11
- data/spec/views/catalog/_show_downloads.html.erb_spec.rb +0 -43
- data/spec/views/catalog/_show_tools.html.erb_spec.rb +0 -38
- data/vendor/assets/images/fullscreen.png +0 -0
- data/vendor/assets/images/fullscreen@2x.png +0 -0
- data/vendor/assets/images/layers-2x.png +0 -0
- data/vendor/assets/images/layers.png +0 -0
- data/vendor/assets/images/marker-icon-2x.png +0 -0
- data/vendor/assets/images/marker-icon.png +0 -0
- data/vendor/assets/images/marker-shadow.png +0 -0
- data/vendor/assets/javascripts/Leaflet.fullscreen.js +0 -152
- data/vendor/assets/javascripts/esri-leaflet.js +0 -12
- data/vendor/assets/javascripts/esri-leaflet.js.map +0 -1
- data/vendor/assets/javascripts/leaflet-iiif.js +0 -323
- data/vendor/assets/javascripts/leaflet-src.js.erb +0 -14126
- data/vendor/assets/javascripts/leaflet-src.js.map +0 -1
- data/vendor/assets/javascripts/native.history.js +0 -1
- data/vendor/assets/stylesheets/leaflet.css +0 -640
- data/vendor/assets/stylesheets/leaflet.fullscreen.css +0 -40
- /data/app/{views/catalog/_show_default_viewer_information.html.erb → components/geoblacklight/index_map_inspect_component.html.erb} +0 -0
|
@@ -2,12 +2,44 @@
|
|
|
2
2
|
|
|
3
3
|
require "spec_helper"
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
# Open the web services modal and wait for it to load
|
|
6
|
+
def open_web_services_modal
|
|
7
|
+
expect(page).to have_link "Web services"
|
|
8
|
+
click_link "Web services"
|
|
9
|
+
expect(page).to have_css "h1", text: "Web services"
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
describe "web services tools", type: :feature do
|
|
13
|
+
context "when no linkable references provided" do
|
|
14
|
+
it "does not show up in tools" do
|
|
15
|
+
visit solr_document_path "mit-001145244"
|
|
16
|
+
expect(page).not_to have_link "Web services"
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
context "when any reference is linked" do
|
|
21
|
+
it "shows copy to clipboard button" do
|
|
22
|
+
visit solr_document_path "princeton-dc7h14b252v"
|
|
23
|
+
open_web_services_modal
|
|
24
|
+
expect(page).to have_text "Copy"
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
it "copies the link to clipboard", js: true do
|
|
28
|
+
sign_in # NOTE: this seems to be required for clipboard permissions to be granted succesfully
|
|
29
|
+
page.driver.browser.add_permission("clipboard-read", "granted")
|
|
30
|
+
page.driver.browser.add_permission("clipboard-write", "granted")
|
|
31
|
+
visit solr_document_path "princeton-1r66j405w"
|
|
32
|
+
open_web_services_modal
|
|
33
|
+
click_button "Copy"
|
|
34
|
+
clip_text = page.evaluate_async_script("navigator.clipboard.readText().then(arguments[0])")
|
|
35
|
+
expect(clip_text).to include("https://libimages1.princeton.edu/loris/figgy_prod/5a%2F20%2F58%2F5a20585db50d44959fe5ae44821fd174%2Fintermediate_file.jp2/info.json")
|
|
36
|
+
end
|
|
37
|
+
end
|
|
38
|
+
|
|
39
|
+
context "when wms/wfs are provided" do
|
|
40
|
+
it "shows up in tools" do
|
|
8
41
|
visit solr_document_path "stanford-cg357zz0321"
|
|
9
|
-
|
|
10
|
-
click_link "Web services"
|
|
42
|
+
open_web_services_modal
|
|
11
43
|
within ".modal-body" do
|
|
12
44
|
expect(page).to have_css "input", count: 4
|
|
13
45
|
expect(page).to have_css "label", text: "Web Feature Service (WFS)"
|
|
@@ -18,73 +50,59 @@ feature "web services tools" do
|
|
|
18
50
|
end
|
|
19
51
|
end
|
|
20
52
|
end
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
expect(page).not_to have_css "div.web-services-sidebar a", text: "Web services"
|
|
25
|
-
end
|
|
26
|
-
end
|
|
27
|
-
feature "when xyz tile reference is provided", js: true do
|
|
28
|
-
scenario "shows up in tools" do
|
|
53
|
+
|
|
54
|
+
context "when xyz tile reference is provided" do
|
|
55
|
+
it "shows up in tools" do
|
|
29
56
|
visit solr_document_path "6f47b103-9955-4bbe-a364-387039623106-xyz"
|
|
30
|
-
|
|
31
|
-
click_link "Web services"
|
|
57
|
+
open_web_services_modal
|
|
32
58
|
within ".modal-body" do
|
|
33
59
|
expect(page).to have_css "label", text: "XYZ Tiles"
|
|
34
60
|
expect(page).to have_css 'input[value="https://earthquake.usgs.gov/basemap/tiles/faults/{z}/{x}/{y}.png"]'
|
|
35
61
|
end
|
|
36
62
|
end
|
|
37
63
|
end
|
|
38
|
-
|
|
39
|
-
|
|
64
|
+
|
|
65
|
+
context "when wmts tile reference is provided" do
|
|
66
|
+
it "shows up in tools" do
|
|
40
67
|
visit solr_document_path "princeton-fk4544658v-wmts"
|
|
41
|
-
|
|
42
|
-
click_link "Web services"
|
|
68
|
+
open_web_services_modal
|
|
43
69
|
within ".modal-body" do
|
|
44
70
|
expect(page).to have_css "label", text: "Web Map Tile Service"
|
|
45
71
|
expect(page).to have_css 'input[value="https://map-tiles-staging.princeton.edu/2a91d82c541c426cb787cc62afe8f248/mosaicjson/WMTSCapabilities.xml"]'
|
|
46
72
|
end
|
|
47
73
|
end
|
|
48
74
|
end
|
|
49
|
-
|
|
50
|
-
|
|
75
|
+
|
|
76
|
+
context "when tilejson reference is provided" do
|
|
77
|
+
it "shows up in tools" do
|
|
51
78
|
visit solr_document_path "princeton-fk4544658v-tilejson"
|
|
52
|
-
|
|
53
|
-
click_link "Web services"
|
|
79
|
+
open_web_services_modal
|
|
54
80
|
within ".modal-body" do
|
|
55
81
|
expect(page).to have_css "label", text: "TileJSON Document"
|
|
56
82
|
expect(page).to have_css 'input[value="https://map-tiles-staging.princeton.edu/2a91d82c541c426cb787cc62afe8f248/mosaicjson/tilejson.json"]'
|
|
57
83
|
end
|
|
58
84
|
end
|
|
59
85
|
end
|
|
60
|
-
|
|
61
|
-
|
|
86
|
+
|
|
87
|
+
context "when a PMTiles reference is provided" do
|
|
88
|
+
it "shows up in tools" do
|
|
62
89
|
visit solr_document_path "princeton-t722hd30j"
|
|
63
|
-
|
|
64
|
-
click_link "Web services"
|
|
90
|
+
open_web_services_modal
|
|
65
91
|
within ".modal-body" do
|
|
66
92
|
expect(page).to have_css "label", text: "PMTiles Layer"
|
|
67
93
|
expect(page).to have_css 'input[value="https://geodata.lib.princeton.edu/fe/d2/80/fed28076eaa04506b7956f10f61a2f77/display_vector.pmtiles"]'
|
|
68
94
|
end
|
|
69
95
|
end
|
|
70
96
|
end
|
|
71
|
-
|
|
72
|
-
|
|
97
|
+
|
|
98
|
+
context "when a COG reference is provided" do
|
|
99
|
+
it "shows up in tools" do
|
|
73
100
|
visit solr_document_path "princeton-dc7h14b252v"
|
|
74
|
-
|
|
75
|
-
click_link "Web services"
|
|
101
|
+
open_web_services_modal
|
|
76
102
|
within ".modal-body" do
|
|
77
103
|
expect(page).to have_css "label", text: "COG Layer"
|
|
78
104
|
expect(page).to have_css 'input[value="https://geodata.lib.princeton.edu/13/f5/58/13f5582c32a54be98fc2982077d0456e/display_raster.tif"]'
|
|
79
105
|
end
|
|
80
106
|
end
|
|
81
107
|
end
|
|
82
|
-
feature "copy to clipboard is provided", js: true do
|
|
83
|
-
scenario "shows up in tools" do
|
|
84
|
-
visit solr_document_path "princeton-dc7h14b252v"
|
|
85
|
-
expect(page).to have_css "div.web-services-sidebar a", text: "Web services"
|
|
86
|
-
click_link "Web services"
|
|
87
|
-
expect(page).to have_text "Copy"
|
|
88
|
-
end
|
|
89
|
-
end
|
|
90
108
|
end
|
data/spec/features/wmts_spec.rb
CHANGED
|
@@ -19,8 +19,8 @@ feature "wmts layer" do
|
|
|
19
19
|
|
|
20
20
|
visit solr_document_path("princeton-fk4544658v-wmts")
|
|
21
21
|
expect(page).to have_css ".leaflet-control-zoom", visible: :visible
|
|
22
|
-
expect(page).to have_css "div[data-protocol='Wmts']"
|
|
23
|
-
expect(page).to have_css "div[data-url='https://map-tiles-staging.princeton.edu/2a91d82c541c426cb787cc62afe8f248/mosaicjson/WMTSCapabilities.xml']"
|
|
22
|
+
expect(page).to have_css "div[data-leaflet-viewer-protocol-value='Wmts']"
|
|
23
|
+
expect(page).to have_css "div[data-leaflet-viewer-url-value='https://map-tiles-staging.princeton.edu/2a91d82c541c426cb787cc62afe8f248/mosaicjson/WMTSCapabilities.xml']"
|
|
24
24
|
end
|
|
25
25
|
end
|
|
26
26
|
context "when referencing a WMTSCapabilities document with a multiple layers" do
|
|
@@ -30,8 +30,8 @@ feature "wmts layer" do
|
|
|
30
30
|
.to_return(status: 200, body: read_fixture("manifests/wmts-multiple.xml"))
|
|
31
31
|
visit solr_document_path("princeton-fk4db9hn29")
|
|
32
32
|
expect(page).to have_css ".leaflet-control-zoom", visible: :visible
|
|
33
|
-
expect(page).to have_css "div[data-protocol='Wmts']"
|
|
34
|
-
expect(page).to have_css "div[data-url='https://maps.wien.gv.at/wmts/1.0.0/WMTSCapabilities.xml']"
|
|
33
|
+
expect(page).to have_css "div[data-leaflet-viewer-protocol-value='Wmts']"
|
|
34
|
+
expect(page).to have_css "div[data-leaflet-viewer-url-value='https://maps.wien.gv.at/wmts/1.0.0/WMTSCapabilities.xml']"
|
|
35
35
|
end
|
|
36
36
|
end
|
|
37
37
|
end
|
|
@@ -17,12 +17,13 @@ If you add a new document, please add it to the table below, and indicate its pu
|
|
|
17
17
|
| [baruch_ancestor2](baruch_ancestor2.json) | 2016 NYC Geodatabase, ArcGIS Version (jan2016) | nyu_2451_34636 | Geodatabase with documentation download Referenced as parent
|
|
18
18
|
| [baruch_documentation_download](baruch_documentation_download.json) | 2015 New York City Subway Complexes and Ridership | nyu_2451_34502 | Point dataset with WMS and WFS, documentation download, and two parent records
|
|
19
19
|
| [bbox-spans-180](bbox-spans-180.json) | East Asia and Oceania | princeton-sx61dn82p | Scanned map with IIIF and direct TIFF download that spans across the 180th meridian
|
|
20
|
+
| [complex-geom](complex-geom.json) | Anglesey; Garnesay; Wight olim vectis; ... | c8b46b52-0846-4abb-ba56-b484064f84ac | Scanned map with MULTIPOLYGON locn_geometry value
|
|
20
21
|
| [cornell_html_metadata](cornell_html_metadata.json) | Air Monitoring Stations, Adirondack Park, 2000 | cugir-007741 | Point dataset with WMS, WFS, direct download, and FGDC metadata XML and HTML
|
|
21
22
|
| [esri-dynamic-layer-all-layers](esri-dynamic-layer-all-layers.json) | Glacial Boundaries: Illinois, 1998 | 90f14ff4-1359-4beb-b931-5cb41d20ab90 | This record points to an the top level of an Esri Rest Web Map Service It does not specify a layer
|
|
22
23
|
| [esri-dynamic-layer-single-layer](esri-dynamic-layer-single-layer.json) | Abandoned Quarries: Indiana | 4669301e-b4b2-4c8b-bf40-01b968a2865b | ArcGIS Dynamic Map Layer with single layer indicated
|
|
23
24
|
| [esri-feature-layer](esri-feature-layer.json) | Transit - Airports: Maryland | f406332e63eb4478a9560ad86ae90327_18| ArcGIS Feature Layer - point dataset |
|
|
24
25
|
| [esri-image-map-layer](esri-image-map-layer.json)| Wabash Topo (27): Indiana, 1929 | 32653ed6-8d83-4692-8a06-bf13ffe2c018 | ArcGIS Image Map Layer with GeoTIFF direct download
|
|
25
|
-
| [esri-tiled_map_layer](esri-tiled_map_layer.json)|
|
|
26
|
+
| [esri-tiled_map_layer](esri-tiled_map_layer.json)| Minnesota Land Cover Classification and Impervious Surface Area by Landsat and Lidar (2013 Update) | 31567cf1-bad8-4bc5-8d57-44b96c207ecc | ArcGIS tiled map layer
|
|
26
27
|
| [esri-wms-layer](esri-wms-layer.json) | Agriculture Census: Indiana, 1997 | purdue-urn-f082acb1-b01e-4a08-9126-fd62a23fd9aa | Dataset with ArcGIS Dynamic Map Layer, ArcGIS WMS, and direct download
|
|
27
28
|
| [harvard_raster](harvard_raster.json) | Saint Petersburg Region, Russia, 1834 (Raster Image) | harvard-g7064-s2-1834-k3 | This layer is a georeferenced raster image of the historic paper map
|
|
28
29
|
| [iiif-eastern-hemisphere](iiif-eastern-hemisphere.json) | A new & accurate map of Asia: drawn from actual surveys, and otherwise collected from journals | 57f0f116-b64e-4773-8684-96ba09afb549 | Eastern hemisphere scanned map with IIIF manifest
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "c8b46b52-0846-4abb-ba56-b484064f84ac",
|
|
3
|
+
"gbl_mdVersion_s": "Aardvark",
|
|
4
|
+
"dct_title_s": "Anglesey; Garnesay; Wight olim vectis; Iarsay; Per Gerardum Mercatorem.; Title on verso: Isles d'Anglesey Wight Jarsay et Garnesay",
|
|
5
|
+
"dct_description_sm": [
|
|
6
|
+
"Relief shown pictorially. Each map is 15 x 21 cm. Does not match any states listed in Van der Krogt. From the Appendix Atlas of the British Isles and Northern Europe, title created to represent a unique collection within the Clark Library, University of Michigan. 4 maps on one sheet: 30 x 43 cm."
|
|
7
|
+
],
|
|
8
|
+
"dct_language_sm": [
|
|
9
|
+
"eng"
|
|
10
|
+
],
|
|
11
|
+
"dct_creator_sm": [
|
|
12
|
+
"Hondius, Hendrik, 1597-1651. Appendix Atlas of the British Isles and Northern Europe",
|
|
13
|
+
"Jansson, Jan, 1588-1664. Appendix Atlas of the British Isles and Northern Europe",
|
|
14
|
+
"Mercator, Gerhard, 1512-1594",
|
|
15
|
+
"Vignaud, Henry, 1830-1922, former owner."
|
|
16
|
+
],
|
|
17
|
+
"schema_provider_s": "University of Michigan",
|
|
18
|
+
"gbl_resourceClass_sm": [
|
|
19
|
+
"Maps"
|
|
20
|
+
],
|
|
21
|
+
"dcat_keyword_sm": [
|
|
22
|
+
"Clark Library Map Collections",
|
|
23
|
+
"2022-creator-sprint"
|
|
24
|
+
],
|
|
25
|
+
"dct_temporal_sm": [
|
|
26
|
+
"between 1630 and 1639"
|
|
27
|
+
],
|
|
28
|
+
"gbl_indexYear_im": [1630],
|
|
29
|
+
"gbl_dateRange_drsim": [
|
|
30
|
+
"[1630 TO 1639]"
|
|
31
|
+
],
|
|
32
|
+
"dct_spatial_sm": [
|
|
33
|
+
"Isle of Wight",
|
|
34
|
+
"Guernsey (Isle)",
|
|
35
|
+
"Jersey (Isle)",
|
|
36
|
+
"Anglesey (Isle)",
|
|
37
|
+
"England",
|
|
38
|
+
"Wales"
|
|
39
|
+
],
|
|
40
|
+
"locn_geometry": "MULTIPOLYGON(((-4.7 53.44, -4.02 53.44, -4.02 53.13, -4.7 53.13, -4.7 53.44)),((-1.591789 50.767556, -1.062732 50.767556, -1.062732 50.574678, -1.591789 50.574678, -1.591789 50.767556)),((-2.6825 49.5351, -2.3117 49.5351, -2.3117 49.3851, -2.6825 49.3851, -2.6825 49.5351)),((-2.2649 49.2775, -1.9958 49.2775, -1.9958 49.1411, -2.2649 49.1411, -2.2649 49.2775)),((-5.1707 54.5534, -3.9654 54.5534, -3.9654 53.845, -5.1707 53.845, -5.1707 54.5534)))",
|
|
41
|
+
"dcat_bbox": "ENVELOPE(-4.98,-1.04,54.47,49.14)",
|
|
42
|
+
"dcat_centroid": "51.805,-3.0100000000000002",
|
|
43
|
+
"pcdm_memberOf_sm": [
|
|
44
|
+
"64bd8c4c-8e60-4956-b43d-bdc3f93db488"
|
|
45
|
+
],
|
|
46
|
+
"dct_isPartOf_sm": [
|
|
47
|
+
"07d-01"
|
|
48
|
+
],
|
|
49
|
+
"dct_rights_sm": [
|
|
50
|
+
"This map is in the public domain."
|
|
51
|
+
],
|
|
52
|
+
"dct_rightsHolder_sm": [
|
|
53
|
+
"Please attribute access and use of this digitized map to the Stephen S. Clark Library, University of Michigan Library. https://www.lib.umich.edu/about-us/policies/copyright-policy"
|
|
54
|
+
],
|
|
55
|
+
"dct_accessRights_s": "Public",
|
|
56
|
+
"dct_format_s": "JPEG",
|
|
57
|
+
"dct_references_s": "{\"http://schema.org/url\":\"https://quod.lib.umich.edu/c/clark1ic/x-010356232/39015091191992_01\",\"http://iiif.io/api/presentation#manifest\":\"https://quod.lib.umich.edu/cgi/i/image/api/search/clark1ic:010356232\"}",
|
|
58
|
+
"dct_identifier_sm": [
|
|
59
|
+
"c8b46b52-0846-4abb-ba56-b484064f84ac"
|
|
60
|
+
]
|
|
61
|
+
}
|
|
@@ -1,48 +1,69 @@
|
|
|
1
1
|
{
|
|
2
|
-
"dct_title_s": "
|
|
3
|
-
"dct_alternative_sm": [
|
|
4
|
-
"esri-tiled_map_layer"
|
|
5
|
-
],
|
|
2
|
+
"dct_title_s": "Minnesota Land Cover Classification and Impervious Surface Area by Landsat and Lidar (2013 Update)",
|
|
6
3
|
"dct_description_sm": [
|
|
7
|
-
"
|
|
8
|
-
"This map shows the Soil Survey Geographic (SSURGO) by the United States Department of Agriculture's Natural Resources Conservation Service. It also shows data that was developed by the National Cooperative Soil Survey and supersedes the State Soil Geographic (STATSGO) dataset published in 1994. SSURGO digitizing duplicates the original soil survey maps. This level of mapping is designed for use by landowners, townships, and county natural resource planning and management. The user should be knowledgeable of soils data and their characteristics. The smallest scale map shows the Global Soil Regions map by the United States Department of Agriculture’s Natural Resources Conservation Service."
|
|
4
|
+
"This is a 15-meter raster dataset of a land cover and impervious surface classification for 2013, level two classification. The classification was created using a combination of multitemporal Landsat 8 data and LiDAR data with Object-based image analysis. By using objects instead of pixels we were able to utilize multispectral data along with spatial and contextual information of objects such as shape, size, texture and LiDAR-derived metrics to distinguish different land cover types. While OBIA has become the standard procedure for classification of high resolution imagery we found that it works equally well with Landsat imagery. For the objects classified as urban or developed, a regression model relating the Landsat greenness variable to percent impervious was developed to estimate and map the percent impervious surface area at the pixel level."
|
|
9
5
|
],
|
|
10
6
|
"dct_language_sm": [
|
|
11
7
|
"eng"
|
|
12
8
|
],
|
|
13
|
-
"
|
|
14
|
-
"
|
|
9
|
+
"dct_creator_sm": [
|
|
10
|
+
"Bauer, Marvin E.",
|
|
11
|
+
"Knight, Joe F.",
|
|
12
|
+
"Rampi, Lian P."
|
|
15
13
|
],
|
|
16
|
-
"schema_provider_s": "
|
|
14
|
+
"schema_provider_s": "University of Minnesota",
|
|
17
15
|
"gbl_resourceClass_sm": [
|
|
18
|
-
"
|
|
16
|
+
"Datasets"
|
|
19
17
|
],
|
|
20
18
|
"gbl_resourceType_sm": [
|
|
21
|
-
"
|
|
19
|
+
"Vector data",
|
|
20
|
+
"Raster data",
|
|
21
|
+
"LiDAR"
|
|
22
|
+
],
|
|
23
|
+
"dcat_theme_sm": [
|
|
24
|
+
"Imagery"
|
|
22
25
|
],
|
|
23
26
|
"dcat_keyword_sm": [
|
|
24
|
-
"
|
|
27
|
+
"Lidar",
|
|
28
|
+
"Landsat Satellites",
|
|
29
|
+
"Land cover",
|
|
30
|
+
"2022-creator-sprint"
|
|
25
31
|
],
|
|
26
32
|
"dct_temporal_sm": [
|
|
27
|
-
"
|
|
33
|
+
"2013"
|
|
28
34
|
],
|
|
35
|
+
"dct_issued_s": "2016-08-03",
|
|
29
36
|
"gbl_indexYear_im": [
|
|
30
|
-
|
|
37
|
+
2013
|
|
31
38
|
],
|
|
32
39
|
"gbl_dateRange_drsim": [
|
|
33
|
-
"[
|
|
40
|
+
"[2013 TO 2013]"
|
|
41
|
+
],
|
|
42
|
+
"dct_spatial_sm": [
|
|
43
|
+
"Minnesota"
|
|
44
|
+
],
|
|
45
|
+
"locn_geometry": "POLYGON((-97.23 49.37, -89.53 49.37, -89.53 43.5, -97.23 43.5, -97.23 49.37))",
|
|
46
|
+
"dcat_bbox": "ENVELOPE(-97.23,-89.53,49.37,43.5)",
|
|
47
|
+
"dcat_centroid": "46.435,-93.38",
|
|
48
|
+
"pcdm_memberOf_sm": [
|
|
49
|
+
"dc8c18df-7d64-4ff4-a754-d18d0891187d"
|
|
50
|
+
],
|
|
51
|
+
"dct_isPartOf_sm": [
|
|
52
|
+
"05d-03"
|
|
53
|
+
],
|
|
54
|
+
"dct_rights_sm": [
|
|
55
|
+
"https://conservancy.umn.edu/pages/drum/policies/#terms-of-use"
|
|
56
|
+
],
|
|
57
|
+
"dct_license_sm": [
|
|
58
|
+
"http://creativecommons.org/publicdomain/zero/1.0/"
|
|
34
59
|
],
|
|
35
|
-
"locn_geometry": "ENVELOPE(-129.4956,-64.4393,48.6336,21.8079)",
|
|
36
|
-
"dcat_bbox": "ENVELOPE(-129.4956,-64.4393,48.6336,21.8079)",
|
|
37
|
-
"dcat_centroid": "35.22075,-96.96745",
|
|
38
60
|
"dct_accessRights_s": "Public",
|
|
39
61
|
"dct_format_s": "GeoTIFF",
|
|
40
|
-
"
|
|
41
|
-
"
|
|
42
|
-
"id": "nyu-test-soil-survey-map",
|
|
62
|
+
"dct_references_s": "{\"http://lccn.loc.gov/sh85035852\":\"https://conservancy.umn.edu/bitstream/handle/11299/181555/Classification%20scheme%20for%20Level%201%20and%202%20land%20cover%20classes%202013.pdf\",\"http://schema.org/downloadUrl\":[{\"label\":\"Original GeoTIFF\",\"url\":\"https://conservancy.umn.edu/bitstream/handle/11299/181555/Statewide_FinalMap_2013_2014_v2.zip\"}],\"http://www.opengis.net/cat/csw/csdgm\":\"https://conservancy.umn.edu/bitstream/handle/11299/181555/Statewide_LandCoverMetadata_MN_2013_v2.xml\",\"http://www.w3.org/1999/xhtml\":\"https://conservancy.umn.edu/bitstream/handle/11299/181555/Statewide_LandCover_Metadata_MN_2013_v2.html\",\"http://schema.org/url\":\"http://doi.org/10.13020/D6JP4S\",\"urn:x-esri:serviceType:ArcGIS#TiledMapLayer\":\"https://tiles.arcgis.com/tiles/8df8p0NlLFEShl0r/arcgis/rest/services/mn_landcover_impervious_2013v2_tiles/MapServer\"}",
|
|
63
|
+
"id": "31567cf1-bad8-4bc5-8d57-44b96c207ecc",
|
|
43
64
|
"dct_identifier_sm": [
|
|
44
|
-
"
|
|
65
|
+
"http://doi.org/10.13020/D6JP4S",
|
|
66
|
+
"http://hdl.handle.net/11299/181555"
|
|
45
67
|
],
|
|
46
|
-
"gbl_mdModified_dt": "2021-06-01T22:14:15Z",
|
|
47
68
|
"gbl_mdVersion_s": "Aardvark"
|
|
48
|
-
}
|
|
69
|
+
}
|
|
@@ -54,7 +54,7 @@
|
|
|
54
54
|
"dct_accessRights_s": "Public",
|
|
55
55
|
"dct_format_s": "GeoTIFF",
|
|
56
56
|
"gbl_wxsIdentifier_s": "cite:G7064_S2_1834_K3",
|
|
57
|
-
"dct_references_s": "{\"http://
|
|
57
|
+
"dct_references_s": "{\"http://www.opengis.net/def/serviceType/ogc/wcs\":\"http://pelham.lib.harvard.edu:8090/geoserver/wcs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"http://pelham.lib.harvard.edu:8090/geoserver/wms\",\"http://www.opengis.net/cat/csw/csdgm\":\"https://raw.githubusercontent.com/OpenGeoMetadata/edu.harvard/master/217/121/227/77/fgdc.xml\"}",
|
|
58
58
|
"id": "harvard-g7064-s2-1834-k3",
|
|
59
59
|
"dct_identifier_sm": [
|
|
60
60
|
"urn:hul.harvard.edu:HARVARD.SDE2.G7064_S2_1834_K3"
|
|
@@ -37,6 +37,7 @@
|
|
|
37
37
|
"dcat_centroid": "42.2063055,-75.775105",
|
|
38
38
|
"dct_accessRights_s": "Public",
|
|
39
39
|
"dct_format_s": "Shapefile",
|
|
40
|
+
"gbl_wxsIdentifier_s": "cugir007950",
|
|
40
41
|
"dct_references_s": "{\"http://schema.org/downloadUrl\":[{\"url\":\"https://cugir-data.s3.amazonaws.com/00/79/50/cugir-007950.zip\",\"label\":\"Shapefile\"},{\"url\":\"https://cugir-data.s3.amazonaws.com/00/79/50/agBROO.pdf\",\"label\":\"PDF\"},{\"url\":\"https://cugir-data.s3.amazonaws.com/00/79/50/agBROO2011.kmz\",\"label\":\"KMZ\"}],\"http://www.opengis.net/cat/csw/csdgm\":\"https://cugir-data.s3.amazonaws.com/00/79/50/fgdc.xml\",\"http://www.w3.org/1999/xhtml\":\"https://cugir-data.s3.amazonaws.com/00/79/50/fgdc.html\",\"http://www.opengis.net/def/serviceType/ogc/wfs\":\"https://cugir.library.cornell.edu/geoserver/cugir/wfs\",\"http://www.opengis.net/def/serviceType/ogc/wms\":\"https://cugir.library.cornell.edu/geoserver/cugir/wms\"}",
|
|
41
42
|
"id": "cugir-007950",
|
|
42
43
|
"gbl_mdModified_dt": "2021-06-11T18:39:49Z",
|
|
@@ -11,7 +11,7 @@ describe GeoblacklightHelper, type: :helper do
|
|
|
11
11
|
it "supports in use cases" do
|
|
12
12
|
{
|
|
13
13
|
"Paper map" => "paper-map",
|
|
14
|
-
"Michigan State" => "michigan-state",
|
|
14
|
+
"Michigan State University" => "michigan-state-university",
|
|
15
15
|
"CD ROM" => "cd-rom",
|
|
16
16
|
"Lewis & Clark" => "lewis-clark"
|
|
17
17
|
}.each_key do |key|
|
|
@@ -23,85 +23,9 @@ describe GeoblacklightHelper, type: :helper do
|
|
|
23
23
|
html = Capybara.string(geoblacklight_icon(nil))
|
|
24
24
|
expect(html).to have_css ".icon-missing"
|
|
25
25
|
end
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
it "returns a properly cased format" do
|
|
30
|
-
expect(proper_case_format("GEOJSON")).to eq "GeoJSON"
|
|
31
|
-
end
|
|
32
|
-
end
|
|
33
|
-
|
|
34
|
-
describe "#download_text" do
|
|
35
|
-
it "returns download text concatenated with proper case format" do
|
|
36
|
-
expect(download_text("GEOJSON")).to eq "Original GeoJSON"
|
|
37
|
-
end
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
describe "#download_text" do
|
|
41
|
-
it "returns download text concatenated with proper case format" do
|
|
42
|
-
expect(download_text("GEOJSON")).to eq "Original GeoJSON"
|
|
43
|
-
end
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
describe "#download_link_file" do
|
|
47
|
-
let(:label) { "Test Link Text" }
|
|
48
|
-
let(:id) { "test-id" }
|
|
49
|
-
let(:url) { "http://example.com/urn:hul.harvard.edu:HARVARD.SDE2.TG10USAIANNH/data.zip" }
|
|
50
|
-
|
|
51
|
-
it "generates a link to download the original file" do
|
|
52
|
-
expect(download_link_file(label, id, url)).to eq '<a contentUrl="http://example.com/urn:hul.harvard.edu:HARVARD.SDE2.TG10USAIANNH/data.zip" data-download="trigger" data-download-type="direct" data-download-id="test-id" href="http://example.com/urn:hul.harvard.edu:HARVARD.SDE2.TG10USAIANNH/data.zip">Test Link Text</a>'
|
|
53
|
-
end
|
|
54
|
-
end
|
|
55
|
-
|
|
56
|
-
describe "#download_link_hgl" do
|
|
57
|
-
let(:text) { "Test Link Text" }
|
|
58
|
-
let(:document) { instance_double(SolrDocument) }
|
|
59
|
-
|
|
60
|
-
before do
|
|
61
|
-
allow(document).to receive(:id).and_return("test-id")
|
|
62
|
-
allow(document).to receive(:to_s).and_return("test-id")
|
|
63
|
-
end
|
|
64
|
-
|
|
65
|
-
it "generates a link to the HGL route" do
|
|
66
|
-
expect(download_link_hgl(text, document)).to eq '<a data-blacklight-modal="trigger" data-download="trigger" data-download-type="harvard-hgl" data-download-id="test-id" href="/download/hgl/test-id">Test Link Text</a>'
|
|
67
|
-
end
|
|
68
|
-
end
|
|
69
|
-
|
|
70
|
-
describe "#download_link_iiif" do
|
|
71
|
-
let(:references_field) { Settings.FIELDS.REFERENCES }
|
|
72
|
-
let(:document_attributes) do
|
|
73
|
-
{
|
|
74
|
-
references_field => {
|
|
75
|
-
"http://iiif.io/api/image" => "https://example.edu/image/info.json"
|
|
76
|
-
}.to_json
|
|
77
|
-
}
|
|
78
|
-
end
|
|
79
|
-
let(:document) { SolrDocument.new(document_attributes) }
|
|
80
|
-
|
|
81
|
-
before do
|
|
82
|
-
allow_any_instance_of(Geoblacklight::Reference).to receive(:to_hash).and_return(iiif: "https://example.edu/image/info.json")
|
|
83
|
-
end
|
|
84
|
-
|
|
85
|
-
it "generates a link to download the JPG file from the IIIF server" do
|
|
86
|
-
assign(:document, document)
|
|
87
|
-
expect(helper.download_link_iiif).to eq '<a contentUrl="https://example.edu/image/full/full/0/default.jpg" data-download="trigger" href="https://example.edu/image/full/full/0/default.jpg">Original JPG</a>'
|
|
88
|
-
end
|
|
89
|
-
end
|
|
90
|
-
|
|
91
|
-
describe "#download_link_generated" do
|
|
92
|
-
let(:download_type) { "SHAPEFILE" }
|
|
93
|
-
let(:document) { instance_double(SolrDocument) }
|
|
94
|
-
|
|
95
|
-
before do
|
|
96
|
-
allow(document).to receive(:id).and_return("test-id")
|
|
97
|
-
allow(document).to receive(:to_s).and_return("test-id")
|
|
98
|
-
end
|
|
99
|
-
|
|
100
|
-
it "generates a link to download the JPG file from the IIIF server" do
|
|
101
|
-
# Stub I18n to ensure the link can be customized via `export_` labels.
|
|
102
|
-
allow(helper).to receive(:t).and_call_original
|
|
103
|
-
allow(helper).to receive(:t).with("geoblacklight.download.export_shapefile_link").and_return("Shapefile Export Customization")
|
|
104
|
-
expect(helper.download_link_generated(download_type, document)).to eq '<a data-download-path="/download/test-id?type=SHAPEFILE" data-download="trigger" data-download-type="SHAPEFILE" data-download-id="test-id" href="">Export Shapefile Export Customization</a>'
|
|
26
|
+
it "works with settings icon mapping" do
|
|
27
|
+
html = Capybara.string(geoblacklight_icon("ohio-state"))
|
|
28
|
+
expect(html).to have_css ".blacklight-icons-the-ohio-state-university"
|
|
105
29
|
end
|
|
106
30
|
end
|
|
107
31
|
|
|
@@ -182,30 +106,9 @@ describe GeoblacklightHelper, type: :helper do
|
|
|
182
106
|
end
|
|
183
107
|
end
|
|
184
108
|
|
|
185
|
-
describe "#render_web_services" do
|
|
186
|
-
let(:reference) { instance_double(Geoblacklight::Reference, type: "wms") }
|
|
187
|
-
it "with a reference to a defined partial" do
|
|
188
|
-
expect(helper).to receive(:render)
|
|
189
|
-
.with(partial: "web_services_wms", locals: {reference: reference})
|
|
190
|
-
helper.render_web_services(reference)
|
|
191
|
-
end
|
|
192
|
-
context "when the partial is missing" do
|
|
193
|
-
let(:reference) { instance_double(Geoblacklight::Reference, type: "iiif") }
|
|
194
|
-
|
|
195
|
-
it "with a reference to a missing partial" do
|
|
196
|
-
expect(helper).to receive(:render)
|
|
197
|
-
.with(partial: "web_services_iiif", locals: {reference: reference})
|
|
198
|
-
.and_raise ActionView::MissingTemplate.new({}, "", "", "", "")
|
|
199
|
-
expect(helper).to receive(:render)
|
|
200
|
-
.with(partial: "web_services_default", locals: {reference: reference})
|
|
201
|
-
helper.render_web_services(reference)
|
|
202
|
-
end
|
|
203
|
-
end
|
|
204
|
-
end
|
|
205
|
-
|
|
206
109
|
describe "#leaflet_options" do
|
|
207
110
|
it "returns a hash of options for leaflet" do
|
|
208
|
-
expect(leaflet_options[:
|
|
111
|
+
expect(leaflet_options[:LAYERS][:INDEX].keys).to eq([:DEFAULT, :UNAVAILABLE, :SELECTED])
|
|
209
112
|
end
|
|
210
113
|
end
|
|
211
114
|
|
|
@@ -272,32 +175,6 @@ describe GeoblacklightHelper, type: :helper do
|
|
|
272
175
|
end
|
|
273
176
|
end
|
|
274
177
|
|
|
275
|
-
describe "#show_help_text?" do
|
|
276
|
-
let(:feature) { "viewer_protocol" }
|
|
277
|
-
let(:translation_key) { "wms" }
|
|
278
|
-
|
|
279
|
-
it "confirms help text is available" do
|
|
280
|
-
expect(helper.show_help_text?(feature, translation_key)).to be true
|
|
281
|
-
end
|
|
282
|
-
end
|
|
283
|
-
|
|
284
|
-
describe "#render_help_text_entry" do
|
|
285
|
-
let(:feature) { "viewer_protocol" }
|
|
286
|
-
let(:translation_key) { "wms" }
|
|
287
|
-
|
|
288
|
-
context "valid entry" do
|
|
289
|
-
it "renders help text entry for the wms viewer protocol" do
|
|
290
|
-
expect(helper.render_help_text_entry(feature, translation_key)).to eq '<h3 class="help-text viewer_protocol h6"><a data-toggle="popover" data-title="Web Map Service (WMS)" data-content="A Web Map Service displays a geospatial dataset as map images.">Web Map Service (WMS)</a></h3>'
|
|
291
|
-
end
|
|
292
|
-
end
|
|
293
|
-
|
|
294
|
-
context "invalid entry" do
|
|
295
|
-
it "renders an empty span" do
|
|
296
|
-
expect(helper.render_help_text_entry("foo", "bar")).to eq '<span class="help-text translation-missing"></span>'
|
|
297
|
-
end
|
|
298
|
-
end
|
|
299
|
-
end
|
|
300
|
-
|
|
301
178
|
describe "#relations_icon" do
|
|
302
179
|
context "when configured to use the geometry type" do
|
|
303
180
|
before do
|
|
@@ -336,7 +213,7 @@ describe GeoblacklightHelper, type: :helper do
|
|
|
336
213
|
context "viewing bookmarks" do
|
|
337
214
|
let(:controller_name) { "bookmarks" }
|
|
338
215
|
|
|
339
|
-
it "returns bookmarks data-
|
|
216
|
+
it "returns bookmarks data-page selector" do
|
|
340
217
|
expect(results_js_map_selector(controller_name)).to eq "bookmarks"
|
|
341
218
|
end
|
|
342
219
|
end
|
|
@@ -344,7 +221,7 @@ describe GeoblacklightHelper, type: :helper do
|
|
|
344
221
|
context "viewing catalog results" do
|
|
345
222
|
let(:controller_name) { "catalog" }
|
|
346
223
|
|
|
347
|
-
it "returns index data-
|
|
224
|
+
it "returns index data-page selector" do
|
|
348
225
|
expect(results_js_map_selector(controller_name)).to eq "index"
|
|
349
226
|
end
|
|
350
227
|
end
|
|
@@ -352,51 +229,9 @@ describe GeoblacklightHelper, type: :helper do
|
|
|
352
229
|
context "calling outside of intended scope" do
|
|
353
230
|
let(:controller_name) { "outside" }
|
|
354
231
|
|
|
355
|
-
it "returns default data-
|
|
232
|
+
it "returns default data-page value" do
|
|
356
233
|
expect(results_js_map_selector(controller_name)).to eq "index"
|
|
357
234
|
end
|
|
358
235
|
end
|
|
359
236
|
end
|
|
360
|
-
|
|
361
|
-
describe "#viewer_container" do
|
|
362
|
-
let(:document) { SolrDocument.new(document_attributes) }
|
|
363
|
-
let(:references_field) { Settings.FIELDS.REFERENCES }
|
|
364
|
-
let(:rights_field) { Settings.FIELDS.RIGHTS }
|
|
365
|
-
|
|
366
|
-
context "with pmtiles layer" do
|
|
367
|
-
let(:document_attributes) do
|
|
368
|
-
{
|
|
369
|
-
references_field => {
|
|
370
|
-
"https://github.com/protomaps/PMTiles" => "https://geodata.lib.princeton.edu/fe/d2/80/fed28076eaa04506b7956f10f61a2f77/display_vector.pmtiles"
|
|
371
|
-
}.to_json
|
|
372
|
-
}
|
|
373
|
-
end
|
|
374
|
-
|
|
375
|
-
it "renders an OpenLayers container" do
|
|
376
|
-
allow(helper).to receive(:geoblacklight_basemap).and_return("esri")
|
|
377
|
-
assign(:document, document)
|
|
378
|
-
node = Capybara.string(helper.viewer_container)
|
|
379
|
-
div = node.first("div")
|
|
380
|
-
expect(div[:id]).to eq "ol-map"
|
|
381
|
-
end
|
|
382
|
-
end
|
|
383
|
-
|
|
384
|
-
context "with iiif manifest layer" do
|
|
385
|
-
let(:document_attributes) do
|
|
386
|
-
{
|
|
387
|
-
references_field => {
|
|
388
|
-
"http://iiif.io/api/presentation#manifest" => "https://cdm16022.contentdm.oclc.org/iiif/info/p16022coll229/3210/manifest.json"
|
|
389
|
-
}.to_json
|
|
390
|
-
}
|
|
391
|
-
end
|
|
392
|
-
|
|
393
|
-
it "renders a Clover IIIF container" do
|
|
394
|
-
allow(helper).to receive(:geoblacklight_basemap).and_return("esri")
|
|
395
|
-
assign(:document, document)
|
|
396
|
-
node = Capybara.string(helper.viewer_container)
|
|
397
|
-
div = node.first("div")
|
|
398
|
-
expect(div[:id]).to eq "clover-viewer"
|
|
399
|
-
end
|
|
400
|
-
end
|
|
401
|
-
end
|
|
402
237
|
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
require "spec_helper"
|
|
4
|
+
|
|
5
|
+
describe Geoblacklight::CsvDownload do
|
|
6
|
+
let(:document) { SolrDocument.new(Settings.FIELDS.ID => "test", :solr_wfs_url => "http://www.example.com/wfs", Settings.FIELDS.WXS_IDENTIFIER => "stanford-test", Settings.FIELDS.GEOMETRY => "ENVELOPE(-180, 180, 90, -90)") }
|
|
7
|
+
let(:download) { described_class.new(document) }
|
|
8
|
+
describe "#initialize" do
|
|
9
|
+
it "initializes as a CsvDownload object with specific options" do
|
|
10
|
+
expect(download).to be_an described_class
|
|
11
|
+
options = download.instance_variable_get(:@options)
|
|
12
|
+
expect(options[:content_type]).to eq "text/csv"
|
|
13
|
+
expect(options[:request_params][:typeName]).to eq "stanford-test"
|
|
14
|
+
end
|
|
15
|
+
it "merges custom options" do
|
|
16
|
+
download = described_class.new(document, timeout: 33)
|
|
17
|
+
options = download.instance_variable_get(:@options)
|
|
18
|
+
expect(options[:timeout]).to eq 33
|
|
19
|
+
end
|
|
20
|
+
end
|
|
21
|
+
end
|
|
@@ -57,19 +57,4 @@ describe Geoblacklight::Geometry do
|
|
|
57
57
|
end
|
|
58
58
|
end
|
|
59
59
|
end
|
|
60
|
-
describe "#bounding_box for a document with no geometry" do
|
|
61
|
-
it "warns that GeoBlacklight 5 raises instead of falling back to the whole world" do
|
|
62
|
-
expect(Geoblacklight.deprecation).to receive(:warn).with(
|
|
63
|
-
/#bounding_box falls back to the whole world extent/
|
|
64
|
-
)
|
|
65
|
-
|
|
66
|
-
expect(described_class.new("").bounding_box).to be_a String
|
|
67
|
-
end
|
|
68
|
-
|
|
69
|
-
it "does not warn for a document that has geometry" do
|
|
70
|
-
expect(Geoblacklight.deprecation).not_to receive(:warn)
|
|
71
|
-
|
|
72
|
-
described_class.new("ENVELOPE(-1,1,1,-1)").bounding_box
|
|
73
|
-
end
|
|
74
|
-
end
|
|
75
60
|
end
|