geoblacklight 4.4.2 → 5.0.0.pre.alpha.11
Sign up to get free protection for your applications and to get access to all the features.
- 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 -52
- data/.gitignore +2 -2
- data/CONTRIBUTING.md +62 -44
- data/Gemfile +3 -28
- 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/{presenters/geoblacklight/document_presenter.rb → components/geoblacklight/search_result_component.rb} +9 -6
- 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 -24
- data/app/helpers/geoblacklight_helper.rb +10 -194
- 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 -8
- data/app/models/concerns/geoblacklight/solr_document.rb +22 -30
- 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 +7 -7
- 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 -49
- 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 +7 -15
- 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 -40
- 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 -6
- data/lib/geoblacklight/item_viewer.rb +1 -1
- data/lib/geoblacklight/metadata/base.rb +2 -1
- data/lib/geoblacklight/references.rb +27 -8
- 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 -30
- data/lib/tasks/geoblacklight.rake +24 -60
- data/package.json +24 -17
- 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/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/reference_spec.rb +17 -19
- data/spec/lib/geoblacklight/references_spec.rb +31 -17
- 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 -1
- data/spec/models/concerns/geoblacklight/solr_document_spec.rb +1 -21
- data/spec/spec_helper.rb +2 -28
- data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -12
- data/template.rb +13 -11
- data/test/leaflet/layers.test.js +17 -0
- data/vite.config.ts +34 -23
- metadata +304 -256
- data/.hound.yml +0 -8
- data/.jshintignore +0 -2
- data/.jshintrc +0 -67
- data/.solr_wrapper +0 -6
- data/app/assets/images/blacklight/american-geographical-society-library-uwm-libraries.svg +0 -26
- data/app/assets/images/blacklight/arizona.svg +0 -4
- 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/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-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 -85
- 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 -77
- 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 -14
- data/app/helpers/blacklight_helper.rb +0 -11
- data/app/helpers/carto_helper.rb +0 -31
- data/app/helpers/geoblacklight/geoblacklight_helper_behavior.rb +0 -18
- data/app/javascript/clover/clover_initializer.js +0 -29
- data/app/javascript/index.js +0 -7
- data/app/javascript/openlayers/basemaps.js +0 -47
- data/app/javascript/openlayers/ol_initializer.js +0 -106
- data/app/javascript/stylesheets/openlayers.css +0 -1
- data/app/models/concerns/geoblacklight/solr_document/carto.rb +0 -17
- 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 -27
- 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 -23
- 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 -10
- 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/download/hgl_download.rb +0 -20
- data/lib/geoblacklight/view_helper_override.rb +0 -16
- 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/download/hgl_download_spec.rb +0 -62
- data/spec/lib/geoblacklight/view_helper_override_spec.rb +0 -29
- 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,8 +2,6 @@ en:
|
|
2
2
|
geoblacklight:
|
3
3
|
bbox_label: 'Bounding Box'
|
4
4
|
location: 'Location'
|
5
|
-
citation:
|
6
|
-
retrieved_from: 'Retrieved from %{document_url}'
|
7
5
|
clipboard:
|
8
6
|
citation: Citation copied to clipboard
|
9
7
|
web_service: Web service copied to clipboard
|
@@ -11,12 +9,6 @@ en:
|
|
11
9
|
download: 'Download'
|
12
10
|
download_link: 'Original %{download_format}'
|
13
11
|
success: 'Your file %{title} is ready for download'
|
14
|
-
hgl_success: 'You should receive an email when your download is ready.'
|
15
|
-
hgl_request: 'Request Layer'
|
16
|
-
hgl_request_button: 'Request'
|
17
|
-
hgl_close: 'Close'
|
18
|
-
hgl_instructions: 'Please enter your email address. You will receive a link to download the layer when it is ready.' ## new variable
|
19
|
-
hgl_email: 'Email'
|
20
12
|
error: 'Sorry, the requested file could not be downloaded.'
|
21
13
|
export_formats: 'Export Formats'
|
22
14
|
export_link: 'Export %{download_format}'
|
@@ -24,6 +16,7 @@ en:
|
|
24
16
|
export_kmz_link: 'KMZ'
|
25
17
|
export_geojson_link: 'GeoJSON'
|
26
18
|
export_geotiff_link: 'GeoTIFF'
|
19
|
+
export_csv_link: 'CSV'
|
27
20
|
home:
|
28
21
|
headline: 'Explore and discover...'
|
29
22
|
search_heading: 'Find the maps and data you need'
|
@@ -36,7 +29,6 @@ en:
|
|
36
29
|
version: 'GeoBlacklight version %{version}'
|
37
30
|
tools:
|
38
31
|
login_to_view: 'Login to View and Download'
|
39
|
-
open_carto: 'Open in Carto'
|
40
32
|
open_arcgis: 'Open in ArcGIS Online'
|
41
33
|
formats:
|
42
34
|
arcgrid: 'ArcGRID'
|
@@ -45,6 +37,7 @@ en:
|
|
45
37
|
kmz: 'KMZ'
|
46
38
|
shapefile: 'Shapefile'
|
47
39
|
jpg: 'JPG'
|
40
|
+
csv: 'CSV'
|
48
41
|
esri_geodatabase: 'ESRI Geodatabase'
|
49
42
|
sqlite_database: 'SQLite Database'
|
50
43
|
map:
|
@@ -67,7 +60,6 @@ en:
|
|
67
60
|
image_map_layer: 'ArcGIS Image Map Layer'
|
68
61
|
data_dictionary: 'Documentation'
|
69
62
|
services: 'Web services'
|
70
|
-
services_close: 'Close'
|
71
63
|
tms: 'Tile Map Service'
|
72
64
|
tilejson: 'TileJSON Document'
|
73
65
|
xyz: 'XYZ Tiles'
|
@@ -89,7 +81,8 @@ en:
|
|
89
81
|
version_of_descendants: 'Has version...'
|
90
82
|
browse_all_no_count: "Browse all records..."
|
91
83
|
browse_all: "Browse all %{count} records..."
|
92
|
-
|
84
|
+
modal:
|
85
|
+
copy-citation: "Copy Citation"
|
93
86
|
metadata:
|
94
87
|
toggle_summary: 'Toggle summary'
|
95
88
|
view_metadata: 'View Metadata'
|
@@ -132,12 +125,21 @@ en:
|
|
132
125
|
tiled_map_layer:
|
133
126
|
title: ArcGIS Tiled Map Layer
|
134
127
|
content: An ArcGIS Tiled Map Layer Service displays set of web-accessible tiles that reside on a server.
|
128
|
+
tilejson:
|
129
|
+
title: TileJSON
|
130
|
+
content: A JSON format used for describing tilesets.
|
135
131
|
tms:
|
136
|
-
title: Tile Map Service
|
132
|
+
title: Tile Map Service (TMS)
|
137
133
|
content: A Tile Map Service displays georeferenced map tiles as an image on a map.
|
138
134
|
wms:
|
139
135
|
title: Web Map Service (WMS)
|
140
136
|
content: A Web Map Service displays a geospatial dataset as map images.
|
137
|
+
wmts:
|
138
|
+
title: Web Map Tile Service (WMTS)
|
139
|
+
content: A Web Map Tile Service displays maps over the web using cached image tiles.
|
140
|
+
xyz:
|
141
|
+
title: XYZ Tiles
|
142
|
+
content: Also known as slippy map tiles, is a method of expressing map tile mosaics, indexed by (x,y) offsets and zoom levels (z).
|
141
143
|
blacklight:
|
142
144
|
icon:
|
143
145
|
american-geographical-society-library-uwm-libraries: American Geographical Society Library - UWM Libraries
|
@@ -146,34 +148,24 @@ en:
|
|
146
148
|
baruch-cuny: Baruch College
|
147
149
|
berkeley: University of California, Berkeley
|
148
150
|
cd-rom: CD-Rom
|
149
|
-
chicago: The University of Chicago
|
150
151
|
columbia: Columbia University
|
151
152
|
cornell: Cornell University
|
152
153
|
dvd-rom: DVD-Rom
|
153
154
|
esri-globe: Esri Global
|
154
155
|
george-mason: George Mason University
|
155
156
|
harvard: Harvard University
|
156
|
-
|
157
|
+
iiif-drag-drop: Drag icon to any IIIF viewer
|
157
158
|
indiana: Indiana University
|
158
|
-
iowa: University of Iowa
|
159
159
|
lewis-clark: Lewis & Clark
|
160
|
-
maryland: University of Maryland
|
161
160
|
massgis: MassGIS
|
162
|
-
michigan-state: Michigan State University
|
163
|
-
michigan: University of Michigan
|
164
|
-
minnesota: University of Minnesota
|
165
161
|
mit: Massachusetts Institute of Technology
|
166
162
|
multilinestring: Multi-line string
|
167
163
|
multipoint: Multi-point
|
168
164
|
multipolygon: Multi-polygon
|
169
|
-
nebraska: University of Nebraska-Lincoln
|
170
165
|
northwestern-university: Northwestern University
|
171
166
|
nyu: New York University
|
172
|
-
ohio-state: The Ohio State University
|
173
|
-
penn-state: Penn State University
|
174
167
|
princeton: Princeton University
|
175
168
|
public: Public content
|
176
|
-
purdue: Purdue University
|
177
169
|
restricted: Restricted content
|
178
170
|
rutgers: Rutgers University
|
179
171
|
sms: SMS
|
@@ -182,4 +174,3 @@ en:
|
|
182
174
|
tufts: Tufts University
|
183
175
|
ucla: University of California, Los Angeles
|
184
176
|
uva: University of Virginia
|
185
|
-
wisconsin: University of Wisconsin
|
data/geoblacklight.gemspec
CHANGED
@@ -17,29 +17,29 @@ Gem::Specification.new do |spec|
|
|
17
17
|
spec.require_paths = ["lib"]
|
18
18
|
spec.required_rubygems_version = ">= 2.5.2"
|
19
19
|
|
20
|
-
spec.add_dependency "rails", ">= 6.1", "<
|
21
|
-
spec.add_dependency "blacklight", "~>
|
20
|
+
spec.add_dependency "rails", ">= 6.1", "< 8"
|
21
|
+
spec.add_dependency "blacklight", "~> 8.0"
|
22
22
|
spec.add_dependency "config"
|
23
23
|
spec.add_dependency "faraday", "~> 2.0"
|
24
24
|
spec.add_dependency "coderay"
|
25
25
|
spec.add_dependency "deprecation"
|
26
26
|
spec.add_dependency "geo_combine", "~> 0.9"
|
27
27
|
spec.add_dependency "mime-types"
|
28
|
-
spec.add_dependency "handlebars_assets"
|
29
28
|
spec.add_dependency "rgeo-geojson"
|
30
|
-
spec.add_dependency "
|
29
|
+
spec.add_dependency "rsolr"
|
31
30
|
spec.add_dependency "vite_rails", "~> 3.0"
|
31
|
+
spec.add_dependency "zeitwerk"
|
32
32
|
|
33
|
-
spec.add_development_dependency "solr_wrapper"
|
34
33
|
spec.add_development_dependency "rails-controller-testing"
|
35
34
|
spec.add_development_dependency "rspec-rails"
|
36
35
|
spec.add_development_dependency "engine_cart", "~> 2.0"
|
37
36
|
spec.add_development_dependency "capybara", ">= 2.5.0"
|
38
|
-
spec.add_development_dependency "
|
37
|
+
spec.add_development_dependency "selenium-webdriver"
|
39
38
|
spec.add_development_dependency "factory_bot_rails"
|
40
|
-
spec.add_development_dependency "database_cleaner", "~> 2.0"
|
41
39
|
spec.add_development_dependency "simplecov", "~> 0.22"
|
42
40
|
spec.add_development_dependency "foreman"
|
43
41
|
spec.add_development_dependency "standardrb", "1.0.1"
|
44
42
|
spec.add_development_dependency "webmock", "~> 3.14"
|
43
|
+
spec.add_development_dependency "database_cleaner"
|
44
|
+
spec.add_development_dependency "axe-core-rspec"
|
45
45
|
end
|
@@ -0,0 +1,87 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "rails/generators"
|
4
|
+
|
5
|
+
module Geoblacklight
|
6
|
+
module Assets
|
7
|
+
class ImportmapGenerator < Rails::Generators::Base
|
8
|
+
source_root Geoblacklight::Engine.root.join("lib", "generators", "geoblacklight", "templates")
|
9
|
+
|
10
|
+
class_option :test, type: :boolean, default: false, aliases: "-t", desc: "Indicates that app will be installed in a test environment"
|
11
|
+
|
12
|
+
desc <<-DESCRIPTION
|
13
|
+
This generator sets up the app to use Importmaps to manage the javascript,
|
14
|
+
and dartsass-rails to manage the styles.
|
15
|
+
|
16
|
+
SCSS sources from Bootstrap and Blacklight are installed via yarn and
|
17
|
+
built into a single CSS stylesheet.
|
18
|
+
|
19
|
+
JS sources from the Blacklight and Geoblacklight gems are delivered as
|
20
|
+
ES modules via importmap, and their dependencies are pinned to versions
|
21
|
+
delivered via CDN.
|
22
|
+
DESCRIPTION
|
23
|
+
|
24
|
+
# If this is a local dev/test build, symlink the frontend package so we
|
25
|
+
# can reference its stylesheets in development
|
26
|
+
def link_frontend
|
27
|
+
run "yarn link @geoblacklight/frontend" if options[:test]
|
28
|
+
end
|
29
|
+
|
30
|
+
# Workaround for https://github.com/projectblacklight/blacklight/pull/3285
|
31
|
+
def update_blacklight_frontend
|
32
|
+
run "yarn add blacklight-frontend@8.3"
|
33
|
+
end
|
34
|
+
|
35
|
+
# Add the customization overrides and insert before bootstrap import
|
36
|
+
def add_customizations
|
37
|
+
copy_file "assets/_customizations.scss", "app/assets/stylesheets/_customizations.scss"
|
38
|
+
gsub_file "app/assets/stylesheets/_customizations.scss", "@geoblacklight/frontend/app/assets/", ""
|
39
|
+
insert_into_file "app/assets/stylesheets/application.bootstrap.scss", "@import 'customizations';\n", before: "@import 'bootstrap/scss/bootstrap';"
|
40
|
+
end
|
41
|
+
|
42
|
+
# Add CDN imports for CSS files used by Geoblacklight (leaflet, openlayers)
|
43
|
+
def add_leaflet_ol_css_cdn
|
44
|
+
insert_into_file "app/assets/stylesheets/application.bootstrap.scss", before: "@import 'customizations';\n" do
|
45
|
+
<<~SCSS
|
46
|
+
/* GeoBlacklight dependencies CSS */
|
47
|
+
@import url("https://cdn.skypack.dev/leaflet@1.9.4/dist/leaflet.css");
|
48
|
+
@import url("https://cdn.jsdelivr.net/npm/leaflet-fullscreen@1.0.2/dist/leaflet.fullscreen.css");
|
49
|
+
@import url("https://cdn.skypack.dev/ol@8.1.0/ol.css");
|
50
|
+
|
51
|
+
SCSS
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
# Add an import for Geoblacklight's stylesheet
|
56
|
+
def add_geoblacklight_styles
|
57
|
+
append_to_file "app/assets/stylesheets/application.bootstrap.scss", "@import '@geoblacklight/frontend/app/assets/stylesheets/geoblacklight/geoblacklight';"
|
58
|
+
end
|
59
|
+
|
60
|
+
# Ensure import of Blacklight's JS uses the name that importmap has pinned
|
61
|
+
def update_blacklight_import
|
62
|
+
gsub_file "app/javascript/application.js", "blacklight-frontend", "blacklight"
|
63
|
+
end
|
64
|
+
|
65
|
+
# Import Geoblacklight's JS using the name that importmap has pinned
|
66
|
+
def add_geoblacklight_js
|
67
|
+
append_to_file "app/javascript/application.js", "import Geoblacklight from \"geoblacklight\";"
|
68
|
+
end
|
69
|
+
|
70
|
+
# Add pins for application dependencies to the importmap
|
71
|
+
def update_importmap
|
72
|
+
gsub_file "config/importmap.rb", "bootstrap.min.js", "https://cdn.skypack.dev/bootstrap@5.3.3"
|
73
|
+
append_to_file "config/importmap.rb" do
|
74
|
+
<<~CONTENT
|
75
|
+
pin "@github/auto-complete-element", to: "https://cdn.skypack.dev/@github/auto-complete-element"
|
76
|
+
pin "@popperjs/core", to: "https://ga.jspm.io/npm:@popperjs/core@2.11.8/dist/umd/popper.min.js"
|
77
|
+
CONTENT
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
# Run the build so styles are available for the first load of the app
|
82
|
+
def build_styles
|
83
|
+
run "yarn build:css"
|
84
|
+
end
|
85
|
+
end
|
86
|
+
end
|
87
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "rails/generators"
|
4
|
+
|
5
|
+
module Geoblacklight
|
6
|
+
module Assets
|
7
|
+
class ViteGenerator < Rails::Generators::Base
|
8
|
+
source_root Geoblacklight::Engine.root.join("lib", "generators", "geoblacklight", "templates")
|
9
|
+
|
10
|
+
class_option :test, type: :boolean, default: false, aliases: "-t", desc: "Indicates that app will be installed in a test environment"
|
11
|
+
|
12
|
+
desc <<-DESCRIPTION
|
13
|
+
This generator sets up the app to use Vite as the bundler for styles and
|
14
|
+
javascript using the vite_rails gem. Existing stylesheets for Blacklight
|
15
|
+
are removed and replaced with a single JS entrypoint file and a single
|
16
|
+
SCSS entrypoint file, which will be bundled by Vite.
|
17
|
+
|
18
|
+
Geoblacklight's frontend assets are installed from the npm package. In
|
19
|
+
local development they automatically reference the versions from the
|
20
|
+
outer directory (the Geoblacklight repository) via a yarn symlink.
|
21
|
+
DESCRIPTION
|
22
|
+
|
23
|
+
# Install Vite
|
24
|
+
def install_vite
|
25
|
+
gem "vite_rails", "~> 3.0"
|
26
|
+
run "bundle install"
|
27
|
+
end
|
28
|
+
|
29
|
+
# Add our version of the Blacklight base layout with Vite helper tags
|
30
|
+
def geoblacklight_base_layout
|
31
|
+
copy_file "base.html.erb", "app/views/layouts/blacklight/base.html.erb"
|
32
|
+
end
|
33
|
+
|
34
|
+
# Copy Vite config files
|
35
|
+
def copy_config_vite_json
|
36
|
+
copy_file "vite.json", "config/vite.json"
|
37
|
+
copy_file "vite.config.ts", "vite.config.ts"
|
38
|
+
end
|
39
|
+
|
40
|
+
# Add our package.json with non-GBL dependencies (Blacklight, Bootstrap, etc.)
|
41
|
+
def install_dependencies
|
42
|
+
copy_file "package.json", "package.json"
|
43
|
+
run "yarn install"
|
44
|
+
end
|
45
|
+
|
46
|
+
# This will write its own package.json if one doesn't exist, causing a
|
47
|
+
# conflict, so it needs to happen after we copy ours
|
48
|
+
def bundle_install
|
49
|
+
run "bundle exec vite install"
|
50
|
+
end
|
51
|
+
|
52
|
+
# Pick a version of the frontend asset package and install it.
|
53
|
+
def add_frontend
|
54
|
+
# If in local development or CI, install the version we made linkable in
|
55
|
+
# the test app generator. This will make it so changes made in the outer
|
56
|
+
# directory are picked up automatically, like a symlink. Note that this
|
57
|
+
# does NOT install the dependencies of the package, so we have to make
|
58
|
+
# sure to install those separately. See:
|
59
|
+
# https://classic.yarnpkg.com/lang/en/docs/cli/link/
|
60
|
+
# https://github.com/yarnpkg/yarn/issues/2914
|
61
|
+
if options[:test]
|
62
|
+
run "yarn link @geoblacklight/frontend"
|
63
|
+
|
64
|
+
# If a branch was specified (e.g. you are running a template.rb build
|
65
|
+
# against a test branch), use the latest version available on npm
|
66
|
+
elsif ENV["BRANCH"]
|
67
|
+
run "yarn add @geoblacklight/frontend@latest"
|
68
|
+
|
69
|
+
# Otherwise, pick the version from npm that matches our Geoblacklight
|
70
|
+
# gem version
|
71
|
+
else
|
72
|
+
run "yarn add @geoblacklight/frontend@#{Geoblacklight::VERSION}"
|
73
|
+
end
|
74
|
+
end
|
75
|
+
|
76
|
+
# Add our own stylesheets that reference the versions from npm
|
77
|
+
def add_stylesheets
|
78
|
+
copy_file "assets/_customizations.scss", "app/javascript/stylesheets/_customizations.scss"
|
79
|
+
copy_file "assets/geoblacklight.scss", "app/javascript/stylesheets/geoblacklight.scss"
|
80
|
+
copy_file "assets/application.scss", "app/javascript/entrypoints/application.scss"
|
81
|
+
end
|
82
|
+
|
83
|
+
# Replace the default generated Vite entrypoint with our own
|
84
|
+
def add_javascript
|
85
|
+
remove_file "app/javascript/entrypoints/application.js"
|
86
|
+
copy_file "assets/application.js", "app/javascript/entrypoints/application.js"
|
87
|
+
end
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -1,46 +1,21 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
require "rails/generators"
|
4
|
-
|
5
3
|
module Geoblacklight
|
4
|
+
# Run general asset setup and then delegate to the appropriate generator
|
5
|
+
# Based on Blacklight::AssetsGenerator
|
6
6
|
class AssetsGenerator < Rails::Generators::Base
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
def add_javascript
|
18
|
-
copy_file "assets/geoblacklight.js", "app/assets/javascripts/geoblacklight.js"
|
19
|
-
|
20
|
-
if Rails.version.to_i >= 6
|
21
|
-
append_to_file "app/assets/javascripts/application.js",
|
22
|
-
"\n// Required by GeoBlacklight\n//= require geoblacklight"
|
7
|
+
class_option :"asset-pipeline", type: :string, default: ENV.fetch("ASSET_PIPELINE", "vite"), desc: "Choose the asset pipeline to use (vite or importmap)"
|
8
|
+
class_option :test, type: :boolean, default: ENV.fetch("CI", false), aliases: "-t", desc: "Indicates that app will be installed in a test environment"
|
9
|
+
|
10
|
+
def run_asset_pipeline_specific_generator
|
11
|
+
generated_options = "--test=true" if options[:test]
|
12
|
+
generator = if options[:"asset-pipeline"]
|
13
|
+
"geoblacklight:assets:#{options[:"asset-pipeline"]}"
|
14
|
+
else
|
15
|
+
"geoblacklight:assets:vite"
|
23
16
|
end
|
24
|
-
end
|
25
|
-
|
26
|
-
def remove_stylesheets
|
27
|
-
remove_file "app/assets/stylesheets/application.css"
|
28
|
-
remove_file "app/assets/stylesheets/blacklight.scss"
|
29
|
-
end
|
30
|
-
|
31
|
-
def add_stylesheets
|
32
|
-
copy_file "assets/application.scss", "app/assets/stylesheets/application.scss"
|
33
|
-
copy_file "assets/_blacklight.scss", "app/assets/stylesheets/_blacklight.scss"
|
34
|
-
copy_file "assets/_customizations.scss", "app/assets/stylesheets/_customizations.scss"
|
35
|
-
copy_file "assets/_geoblacklight.scss", "app/assets/stylesheets/_geoblacklight.scss"
|
36
|
-
end
|
37
|
-
|
38
|
-
def add_initializers
|
39
|
-
append_to_file "config/initializers/assets.rb",
|
40
|
-
"\nRails.application.config.assets.precompile += %w( favicon.ico )\n"
|
41
17
|
|
42
|
-
|
43
|
-
"\nRails.application.config.assets.paths << Rails.root.join('vendor', 'assets', 'images')\n"
|
18
|
+
generate generator, generated_options
|
44
19
|
end
|
45
20
|
end
|
46
21
|
end
|
@@ -50,10 +50,6 @@ module Geoblacklight
|
|
50
50
|
inject_into_file "config/routes.rb", routes, before: /^end/
|
51
51
|
end
|
52
52
|
|
53
|
-
def generate_assets
|
54
|
-
generate "geoblacklight:assets"
|
55
|
-
end
|
56
|
-
|
57
53
|
def create_blacklight_catalog
|
58
54
|
remove_file "app/controllers/catalog_controller.rb"
|
59
55
|
copy_file "catalog_controller.rb", "app/controllers/catalog_controller.rb"
|
@@ -67,6 +63,14 @@ module Geoblacklight
|
|
67
63
|
directory "../../../../solr", "solr"
|
68
64
|
end
|
69
65
|
|
66
|
+
def add_rsolr_gem
|
67
|
+
gem "rsolr", ">= 1.0", "< 3"
|
68
|
+
end
|
69
|
+
|
70
|
+
def docker_compose
|
71
|
+
copy_file "../../../../compose.yml", "compose.yml"
|
72
|
+
end
|
73
|
+
|
70
74
|
def include_geoblacklight_solrdocument
|
71
75
|
inject_into_file "app/models/solr_document.rb", after: "include Blacklight::Solr::Document" do
|
72
76
|
"\n include Geoblacklight::SolrDocument"
|
@@ -85,13 +89,6 @@ module Geoblacklight
|
|
85
89
|
end
|
86
90
|
end
|
87
91
|
|
88
|
-
# Turn off JQuery animations during testing
|
89
|
-
def inject_disable_jquery_animations
|
90
|
-
inject_into_file "app/views/layouts/application.html.erb", before: "</head>" do
|
91
|
-
" <%= javascript_tag '$.fx.off = true;' if Rails.env.test? %>\n"
|
92
|
-
end
|
93
|
-
end
|
94
|
-
|
95
92
|
def create_downloads_directory
|
96
93
|
FileUtils.mkdir_p("tmp/cache/downloads") unless File.directory?("tmp/cache/downloads")
|
97
94
|
end
|
@@ -105,47 +102,12 @@ module Geoblacklight
|
|
105
102
|
FileUtils.mkdir_p("app/assets/images") unless File.directory?("app/assets/images")
|
106
103
|
end
|
107
104
|
|
108
|
-
|
109
|
-
def install_vite_rails
|
110
|
-
append_to_file "Gemfile" do
|
111
|
-
"gem \"vite_rails\", \"~> 3.0\""
|
112
|
-
end
|
113
|
-
end
|
114
|
-
|
115
|
-
# Vite - GBL Base Layout with Vite Helper Tags
|
116
|
-
def geoblacklight_base_layout
|
117
|
-
copy_file "base.html.erb", "app/views/layouts/blacklight/base.html.erb"
|
118
|
-
end
|
119
|
-
|
120
|
-
def copy_package_json
|
105
|
+
def generate_assets
|
121
106
|
if options[:test]
|
122
|
-
|
123
|
-
# locally built frontend javascript is used instead of the npm package.
|
124
|
-
copy_file "package-test.json", "package.json"
|
107
|
+
generate "geoblacklight:assets", "--test=true"
|
125
108
|
else
|
126
|
-
|
109
|
+
generate "geoblacklight:assets"
|
127
110
|
end
|
128
111
|
end
|
129
|
-
|
130
|
-
# Vite - Config files
|
131
|
-
def copy_config_vite_json
|
132
|
-
copy_file "vite.json", "config/vite.json"
|
133
|
-
copy_file "vite.config.ts", "vite.config.ts"
|
134
|
-
run "yarn install"
|
135
|
-
end
|
136
|
-
|
137
|
-
# Run bundle with vite install
|
138
|
-
def bundle_install
|
139
|
-
Bundler.with_clean_env do
|
140
|
-
run "bundle install"
|
141
|
-
run "bundle exec vite install"
|
142
|
-
end
|
143
|
-
end
|
144
|
-
|
145
|
-
# Vite - Copy over the Vite entrypoints
|
146
|
-
def copy_vite_entrypoints
|
147
|
-
copy_file "clover.js", "app/javascript/entrypoints/clover.js"
|
148
|
-
copy_file "ol.js", "app/javascript/entrypoints/ol.js"
|
149
|
-
end
|
150
112
|
end
|
151
113
|
end
|
@@ -1,29 +1,23 @@
|
|
1
1
|
// Local Application Customizations
|
2
2
|
|
3
3
|
// Set Header Logo
|
4
|
-
$logo-image:
|
5
|
-
|
6
|
-
.navbar-brand { /* The main logo image for the Blacklight instance */
|
7
|
-
@if $logo-image {
|
8
|
-
background: transparent $logo-image no-repeat top left;
|
9
|
-
}
|
10
|
-
}
|
4
|
+
$logo-image: url("@geoblacklight/frontend/app/assets/images/blacklight/logo.svg");
|
11
5
|
|
12
6
|
// Optional
|
13
7
|
// Override default Bootstrap variables here
|
14
8
|
|
15
9
|
// Example: Bootstrap Colors
|
16
|
-
$blue: #0d6efd !default;
|
17
|
-
$indigo: #6610f2 !default;
|
18
|
-
$purple: #6f42c1 !default;
|
19
|
-
$pink: #d63384 !default;
|
20
|
-
$red: #dc3545 !default;
|
21
|
-
$orange: #fd7e14 !default;
|
22
|
-
$yellow: #ffc107 !default;
|
23
|
-
$green: #198754 !default;
|
24
|
-
$teal: #20c997 !default;
|
25
|
-
$cyan: #0dcaf0 !default;
|
26
|
-
$dark: #212529 !default; // $gray-900
|
10
|
+
// $blue: #0d6efd !default;
|
11
|
+
// $indigo: #6610f2 !default;
|
12
|
+
// $purple: #6f42c1 !default;
|
13
|
+
// $pink: #d63384 !default;
|
14
|
+
// $red: #dc3545 !default;
|
15
|
+
// $orange: #fd7e14 !default;
|
16
|
+
// $yellow: #ffc107 !default;
|
17
|
+
// $green: #198754 !default;
|
18
|
+
// $teal: #20c997 !default;
|
19
|
+
// $cyan: #0dcaf0 !default;
|
20
|
+
// $dark: #212529 !default; // $gray-900
|
27
21
|
|
28
22
|
// Example: Bootstrap Link color
|
29
|
-
$link-color: $blue;
|
23
|
+
// $link-color: $blue;
|
@@ -0,0 +1,17 @@
|
|
1
|
+
/* Main application javascript entrypoint */
|
2
|
+
|
3
|
+
// Turbo & Stimulus
|
4
|
+
import "@hotwired/turbo-rails";
|
5
|
+
import { application } from "~/controllers/application";
|
6
|
+
|
7
|
+
// Blacklight & Geoblacklight
|
8
|
+
import githubAutoCompleteElement from "@github/auto-complete-element";
|
9
|
+
import Blacklight from "blacklight-frontend";
|
10
|
+
import Geoblacklight from "@geoblacklight/frontend";
|
11
|
+
|
12
|
+
// Make imports available globally to your code
|
13
|
+
window.Blacklight = Blacklight;
|
14
|
+
window.Geoblacklight = Geoblacklight;
|
15
|
+
|
16
|
+
// Your javascript code goes here
|
17
|
+
// console.log("Hello Geoblacklight!");
|
@@ -1,4 +1,9 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
@import
|
1
|
+
/* Main application styles entrypoint */
|
2
|
+
|
3
|
+
// Leaflet, OpenLayers, GeoBlacklight (includes Blacklight and Bootstrap)
|
4
|
+
@import "leaflet/dist/leaflet.css";
|
5
|
+
@import "leaflet-fullscreen/dist/leaflet.fullscreen.css";
|
6
|
+
@import "ol/ol.css";
|
7
|
+
@import "~/stylesheets/geoblacklight.scss";
|
8
|
+
|
9
|
+
// Your styles here!
|
@@ -0,0 +1,11 @@
|
|
1
|
+
// Local customizations (import first, so that variables take precedence)
|
2
|
+
@import 'customizations.scss';
|
3
|
+
|
4
|
+
// Bootstrap (will use variables defined in customizations, if present)
|
5
|
+
@import 'bootstrap/scss/bootstrap.scss';
|
6
|
+
|
7
|
+
// Blacklight, imported from blacklight-frontend package
|
8
|
+
@import 'blacklight-frontend/app/assets/stylesheets/blacklight/blacklight.scss';
|
9
|
+
|
10
|
+
// Geoblacklight, imported from @geoblacklight/frontend package
|
11
|
+
@import '@geoblacklight/frontend/app/assets/stylesheets/geoblacklight/geoblacklight.scss';
|
@@ -15,24 +15,21 @@
|
|
15
15
|
</script>
|
16
16
|
<%= opensearch_description_tag application_name, opensearch_catalog_url(format: 'xml') %>
|
17
17
|
<%= favicon_link_tag %>
|
18
|
-
|
19
|
-
<%= javascript_include_tag "application", "data-turbo-track": "reload" %>
|
20
|
-
|
18
|
+
|
21
19
|
<%= vite_client_tag %>
|
22
|
-
|
23
|
-
|
24
|
-
<% elsif iiif_manifest_container? %>
|
25
|
-
<%= vite_javascript_tag 'clover' %>
|
26
|
-
<% end %>
|
20
|
+
<%= vite_stylesheet_tag 'application.scss', media: 'all' %>
|
21
|
+
<%= vite_javascript_tag 'application' %>
|
27
22
|
|
28
23
|
<%= csrf_meta_tags %>
|
29
24
|
<%= content_for(:head) %>
|
30
25
|
</head>
|
31
26
|
<body class="<%= render_body_class %>">
|
32
|
-
<nav id="skip-link" role="navigation" aria-label="<%= t('blacklight.skip_links.label') %>">
|
33
|
-
|
34
|
-
|
35
|
-
|
27
|
+
<nav id="skip-link" role="navigation" class="visually-hidden-focusable" aria-label="<%= t('blacklight.skip_links.label') %>">
|
28
|
+
<div class="container-xl">
|
29
|
+
<%= link_to t('blacklight.skip_links.search_field'), '#search_field', class: 'd-inline-flex p-2 m-1', data: { turbolinks: 'false' } %>
|
30
|
+
<%= link_to t('blacklight.skip_links.main_content'), '#main-container', class: 'd-inline-flex p-2 m-1', data: { turbolinks: 'false' } %>
|
31
|
+
<%= content_for(:skip_links) %>
|
32
|
+
</div>
|
36
33
|
</nav>
|
37
34
|
<%= render partial: 'shared/header_navbar' %>
|
38
35
|
|