geoblacklight 4.4.1 → 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.
Files changed (577) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/build-demo-app.yml +153 -0
  3. data/.github/workflows/prune-containers.yml +19 -0
  4. data/.github/workflows/ruby.yml +54 -52
  5. data/.gitignore +2 -2
  6. data/CONTRIBUTING.md +62 -44
  7. data/Gemfile +3 -28
  8. data/Rakefile +42 -67
  9. data/app/assets/images/blacklight/logo.svg +31 -1
  10. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +1 -2
  11. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +1 -1
  12. data/app/assets/stylesheets/geoblacklight/modules/_blacklight_overrides.scss +24 -26
  13. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +13 -0
  14. data/app/assets/stylesheets/geoblacklight/modules/home.scss +2 -17
  15. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +48 -23
  16. data/app/assets/stylesheets/geoblacklight/modules/index_maps.scss +1 -15
  17. data/app/assets/stylesheets/geoblacklight/modules/item.scss +13 -11
  18. data/app/assets/stylesheets/geoblacklight/modules/layer_opacity.scss +3 -3
  19. data/app/assets/stylesheets/geoblacklight/modules/leaflet.scss +4 -0
  20. data/app/assets/stylesheets/geoblacklight/modules/modal.scss +0 -15
  21. data/app/assets/stylesheets/geoblacklight/modules/results.scss +10 -19
  22. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +2 -2
  23. data/app/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component.rb +46 -0
  24. data/app/components/blacklight/icons/arizona_component.rb +24 -0
  25. data/app/components/blacklight/icons/arrow_circle_down_component.rb +23 -0
  26. data/app/components/blacklight/icons/baruch_cuny_component.rb +23 -0
  27. data/app/components/blacklight/icons/book_component.rb +23 -0
  28. data/app/components/blacklight/icons/bookmark_component.rb +23 -0
  29. data/app/components/blacklight/icons/cd_rom_component.rb +23 -0
  30. data/app/components/blacklight/icons/child_item_component.rb +23 -0
  31. data/app/components/blacklight/icons/circle_info_solid_component.rb +23 -0
  32. data/app/components/blacklight/icons/citation_component.rb +23 -0
  33. data/app/components/blacklight/icons/collection_component.rb +23 -0
  34. data/app/components/blacklight/icons/collections_component.rb +24 -0
  35. data/app/components/blacklight/icons/columbia_component.rb +23 -0
  36. data/app/components/blacklight/icons/cornell_component.rb +25 -0
  37. data/app/components/blacklight/icons/datasets_component.rb +27 -0
  38. data/app/components/blacklight/icons/dvd_rom_component.rb +23 -0
  39. data/app/components/blacklight/icons/email_component.rb +23 -0
  40. data/app/components/blacklight/icons/esri_globe_component.rb +51 -0
  41. data/app/components/blacklight/icons/fire_solid_component.rb +23 -0
  42. data/app/components/blacklight/icons/george_mason_component.rb +24 -0
  43. data/app/components/blacklight/icons/globe_component.rb +23 -0
  44. data/app/components/blacklight/icons/harvard_component.rb +23 -0
  45. data/app/components/blacklight/icons/home_component.rb +23 -0
  46. data/app/components/blacklight/icons/iiif_drag_drop_component.rb +31 -0
  47. data/app/components/blacklight/icons/image_component.rb +23 -0
  48. data/app/components/blacklight/icons/imagery_component.rb +24 -0
  49. data/app/components/blacklight/icons/indiana_component.rb +23 -0
  50. data/app/components/blacklight/icons/leaf_component.rb +23 -0
  51. data/app/components/blacklight/icons/lewis_clark_component.rb +25 -0
  52. data/app/components/blacklight/icons/lightbulb_solid_component.rb +23 -0
  53. data/app/components/blacklight/icons/line_component.rb +24 -0
  54. data/app/components/blacklight/icons/map_component.rb +23 -0
  55. data/app/components/blacklight/icons/map_marker_component.rb +23 -0
  56. data/app/components/blacklight/icons/maps_component.rb +24 -0
  57. data/app/components/blacklight/icons/massgis_component.rb +23 -0
  58. data/app/components/blacklight/icons/metadata_component.rb +23 -0
  59. data/app/components/blacklight/icons/michigan_state_university_component.rb +25 -0
  60. data/app/components/blacklight/icons/mit_component.rb +23 -0
  61. data/app/components/blacklight/icons/mixed_component.rb +25 -0
  62. data/app/components/blacklight/icons/multilinestring_component.rb +26 -0
  63. data/app/components/blacklight/icons/multipoint_component.rb +23 -0
  64. data/app/components/blacklight/icons/multipolygon_component.rb +26 -0
  65. data/app/components/blacklight/icons/northwestern_university_component.rb +24 -0
  66. data/app/components/blacklight/icons/nyu_component.rb +26 -0
  67. data/app/components/blacklight/icons/pagelines_brands_component.rb +23 -0
  68. data/app/components/blacklight/icons/paper_map_component.rb +23 -0
  69. data/app/components/blacklight/icons/parent_item_component.rb +23 -0
  70. data/app/components/blacklight/icons/pennsylvania_state_university_component.rb +25 -0
  71. data/app/components/blacklight/icons/point_component.rb +23 -0
  72. data/app/components/blacklight/icons/polygon_component.rb +24 -0
  73. data/app/components/blacklight/icons/polyline_component.rb +26 -0
  74. data/app/components/blacklight/icons/princeton_component.rb +23 -0
  75. data/app/components/blacklight/icons/public_component.rb +23 -0
  76. data/app/components/blacklight/icons/purdue_university_component.rb +25 -0
  77. data/app/components/blacklight/icons/raster_component.rb +23 -0
  78. data/app/components/blacklight/icons/restricted_component.rb +23 -0
  79. data/app/components/blacklight/icons/rutgers_component.rb +25 -0
  80. data/app/components/blacklight/icons/sms_component.rb +23 -0
  81. data/app/components/blacklight/icons/stanford_component.rb +23 -0
  82. data/app/components/blacklight/icons/table_component.rb +23 -0
  83. data/app/components/blacklight/icons/tags_component.rb +23 -0
  84. data/app/components/blacklight/icons/texas_component.rb +23 -0
  85. data/app/components/blacklight/icons/the_ohio_state_university_component.rb +26 -0
  86. data/app/components/blacklight/icons/triangle_exclamation_solid_component.rb +23 -0
  87. data/app/components/blacklight/icons/tufts_component.rb +23 -0
  88. data/app/components/blacklight/icons/ucla_component.rb +23 -0
  89. data/app/components/blacklight/icons/university_of_california_berkeley_component.rb +24 -0
  90. data/app/components/blacklight/icons/university_of_chicago_component.rb +25 -0
  91. data/app/components/blacklight/icons/university_of_colorado_boulder_component.rb +26 -0
  92. data/app/components/blacklight/icons/university_of_illinois_urbana_champaign_component.rb +25 -0
  93. data/app/components/blacklight/icons/university_of_iowa_component.rb +24 -0
  94. data/app/components/blacklight/icons/university_of_maryland_component.rb +24 -0
  95. data/app/components/blacklight/icons/university_of_michigan_component.rb +24 -0
  96. data/app/components/blacklight/icons/university_of_minnesota_component.rb +24 -0
  97. data/app/components/blacklight/icons/university_of_nebraska_lincoln_component.rb +27 -0
  98. data/app/components/blacklight/icons/university_of_wisconsin_madison_component.rb +24 -0
  99. data/app/components/blacklight/icons/uva_component.rb +23 -0
  100. data/app/components/blacklight/icons/web_services_component.rb +23 -0
  101. data/app/components/blacklight/icons/websites_component.rb +24 -0
  102. data/app/components/geoblacklight/arcgis_component.html.erb +3 -0
  103. data/app/components/geoblacklight/arcgis_component.rb +25 -0
  104. data/app/components/geoblacklight/attribute_table_component.html.erb +17 -0
  105. data/app/components/geoblacklight/attribute_table_component.rb +17 -0
  106. data/app/components/geoblacklight/data_dictionary_download_component.html.erb +3 -0
  107. data/app/components/geoblacklight/data_dictionary_download_component.rb +16 -0
  108. data/app/components/geoblacklight/display_note_component.rb +1 -1
  109. data/app/components/geoblacklight/document/citation_component.html.erb +1 -0
  110. data/app/components/geoblacklight/document/citation_component.rb +19 -0
  111. data/app/components/geoblacklight/document/sidebar_component.html.erb +12 -0
  112. data/app/components/geoblacklight/document/sidebar_component.rb +8 -0
  113. data/app/components/geoblacklight/document_component.html.erb +43 -0
  114. data/app/components/geoblacklight/document_component.rb +6 -0
  115. data/app/components/geoblacklight/download_links_component.html.erb +31 -0
  116. data/app/components/geoblacklight/download_links_component.rb +80 -0
  117. data/app/components/geoblacklight/header_component.html.erb +14 -0
  118. data/app/components/geoblacklight/header_component.rb +9 -0
  119. data/app/components/geoblacklight/header_icons_component.html.erb +3 -0
  120. data/app/components/geoblacklight/header_icons_component.rb +29 -0
  121. data/app/components/geoblacklight/iiif_drag_drop_component.html.erb +3 -0
  122. data/app/components/geoblacklight/iiif_drag_drop_component.rb +16 -0
  123. data/app/components/geoblacklight/index_map_inspect_component.rb +15 -0
  124. data/app/components/geoblacklight/index_map_legend_component.html.erb +14 -0
  125. data/app/components/geoblacklight/index_map_legend_component.rb +17 -0
  126. data/app/components/geoblacklight/item_map_viewer_component.html.erb +1 -0
  127. data/app/components/geoblacklight/item_map_viewer_component.rb +87 -0
  128. data/app/components/geoblacklight/location_leaflet_map_component.html.erb +1 -0
  129. data/app/components/geoblacklight/location_leaflet_map_component.rb +49 -0
  130. data/app/components/geoblacklight/login_link_component.html.erb +5 -0
  131. data/app/components/geoblacklight/login_link_component.rb +17 -0
  132. data/app/components/geoblacklight/relations_component.html.erb +23 -0
  133. data/app/components/geoblacklight/relations_component.rb +25 -0
  134. data/app/components/geoblacklight/search_result_component.html.erb +44 -0
  135. data/app/{presenters/geoblacklight/document_presenter.rb → components/geoblacklight/search_result_component.rb} +9 -6
  136. data/app/components/geoblacklight/static_map_component.html.erb +9 -0
  137. data/app/components/geoblacklight/static_map_component.rb +36 -0
  138. data/app/components/geoblacklight/viewer_help_text_component.html.erb +1 -0
  139. data/app/components/geoblacklight/viewer_help_text_component.rb +46 -0
  140. data/app/components/geoblacklight/web_services_component.html.erb +1 -0
  141. data/app/components/geoblacklight/web_services_component.rb +26 -0
  142. data/app/{views/catalog/_web_services_default.html.erb → components/geoblacklight/web_services_default_component.html.erb} +3 -5
  143. data/app/components/geoblacklight/web_services_default_component.rb +11 -0
  144. data/app/components/geoblacklight/web_services_link_component.html.erb +3 -0
  145. data/app/components/geoblacklight/web_services_link_component.rb +22 -0
  146. data/app/{views/catalog/_web_services_wfs.html.erb → components/geoblacklight/web_services_wfs_component.html.erb} +4 -7
  147. data/app/components/geoblacklight/web_services_wfs_component.rb +12 -0
  148. data/app/components/geoblacklight/web_services_wms_component.html.erb +10 -0
  149. data/app/components/geoblacklight/web_services_wms_component.rb +12 -0
  150. data/app/controllers/download_controller.rb +10 -26
  151. data/app/helpers/geoblacklight_helper.rb +10 -194
  152. data/app/javascript/geoblacklight/controllers/clipboard_controller.js +11 -0
  153. data/app/javascript/geoblacklight/controllers/clover_viewer_controller.js +47 -0
  154. data/app/javascript/geoblacklight/controllers/downloads_controller.js +56 -0
  155. data/app/javascript/geoblacklight/controllers/leaflet_viewer_controller.js +217 -0
  156. data/app/javascript/geoblacklight/controllers/oembed_viewer_controller.js +18 -0
  157. data/app/javascript/geoblacklight/controllers/openlayers_viewer_controller.js +63 -0
  158. data/app/javascript/geoblacklight/controllers/search_results_controller.js +50 -0
  159. data/app/javascript/geoblacklight/core.js +69 -0
  160. data/app/javascript/geoblacklight/index.js +29 -0
  161. data/app/javascript/geoblacklight/initializers/metadata_download.js +54 -0
  162. data/app/javascript/geoblacklight/initializers/popovers.js +11 -0
  163. data/app/javascript/geoblacklight/initializers/relations.js +40 -0
  164. data/app/javascript/geoblacklight/initializers/tooltips.js +55 -0
  165. data/app/javascript/geoblacklight/initializers/truncation.js +45 -0
  166. data/app/javascript/geoblacklight/leaflet/basemaps.js +74 -0
  167. data/app/javascript/geoblacklight/leaflet/constants.js +18 -0
  168. data/app/javascript/geoblacklight/leaflet/controls/geosearch.js +160 -0
  169. data/app/javascript/geoblacklight/leaflet/controls/layer_opacity.js +120 -0
  170. data/app/javascript/geoblacklight/leaflet/inspection.js +195 -0
  171. data/app/javascript/geoblacklight/leaflet/layer_index_map.js +120 -0
  172. data/app/javascript/geoblacklight/leaflet/layer_wmts.js +59 -0
  173. data/app/javascript/geoblacklight/leaflet/layers.js +153 -0
  174. data/app/javascript/geoblacklight/leaflet/utils.js +83 -0
  175. data/app/javascript/geoblacklight/openlayers/basemaps.js +47 -0
  176. data/app/javascript/geoblacklight/openlayers/layers.js +44 -0
  177. data/app/models/concerns/geoblacklight/solr_document/citation.rb +20 -8
  178. data/app/models/concerns/geoblacklight/solr_document.rb +22 -30
  179. data/app/presenters/geoblacklight/bbox_item_presenter.rb +1 -1
  180. data/app/views/catalog/_citation.html.erb +16 -33
  181. data/app/views/catalog/_document_split.html.erb +18 -3
  182. data/app/views/catalog/_home_text.html.erb +2 -2
  183. data/app/views/catalog/_metadata.html.erb +1 -1
  184. data/app/views/catalog/index.html.erb +8 -4
  185. data/app/views/catalog/metadata/_markup.html.erb +1 -1
  186. data/app/views/catalog/metadata.html.erb +14 -13
  187. data/app/views/catalog/web_services.html.erb +19 -28
  188. data/app/views/relation/index.html.erb +2 -12
  189. data/app/views/relation/index.json.jbuilder +1 -1
  190. data/compose.yml +14 -0
  191. data/config/importmap.rb +20 -0
  192. data/config/locales/geoblacklight.en.yml +15 -24
  193. data/geoblacklight.gemspec +7 -7
  194. data/lib/generators/geoblacklight/assets/importmap_generator.rb +87 -0
  195. data/lib/generators/geoblacklight/assets/vite_generator.rb +90 -0
  196. data/lib/generators/geoblacklight/assets_generator.rb +12 -37
  197. data/lib/generators/geoblacklight/install_generator.rb +11 -49
  198. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +13 -19
  199. data/lib/generators/geoblacklight/templates/assets/application.js +17 -0
  200. data/lib/generators/geoblacklight/templates/assets/application.scss +9 -4
  201. data/lib/generators/geoblacklight/templates/assets/geoblacklight.scss +11 -0
  202. data/lib/generators/geoblacklight/templates/base.html.erb +9 -12
  203. data/lib/generators/geoblacklight/templates/catalog_controller.rb +7 -15
  204. data/lib/generators/geoblacklight/templates/demo-app/Dockerfile +31 -0
  205. data/lib/generators/geoblacklight/templates/demo-app/compose.yml +26 -0
  206. data/lib/generators/geoblacklight/templates/demo-app/start-server.sh +21 -0
  207. data/lib/generators/geoblacklight/templates/package.json +7 -1
  208. data/lib/generators/geoblacklight/templates/settings.yml +45 -40
  209. data/lib/generators/geoblacklight/templates/vite.config.ts +22 -7
  210. data/lib/geoblacklight/bounding_box.rb +16 -0
  211. data/lib/geoblacklight/constants.rb +0 -1
  212. data/lib/geoblacklight/download/csv_download.rb +22 -0
  213. data/lib/geoblacklight/download/geojson_download.rb +1 -1
  214. data/lib/geoblacklight/download/geotiff_download.rb +1 -1
  215. data/lib/geoblacklight/download/kmz_download.rb +1 -1
  216. data/lib/geoblacklight/download/shapefile_download.rb +1 -1
  217. data/lib/geoblacklight/download.rb +1 -1
  218. data/lib/geoblacklight/engine.rb +15 -6
  219. data/lib/geoblacklight/item_viewer.rb +1 -1
  220. data/lib/geoblacklight/metadata/base.rb +2 -1
  221. data/lib/geoblacklight/references.rb +27 -8
  222. data/lib/geoblacklight/routes/downloadable.rb +0 -1
  223. data/lib/geoblacklight/routes.rb +0 -3
  224. data/lib/geoblacklight/version.rb +1 -1
  225. data/lib/geoblacklight/wms_layer/feature_info_response.rb +9 -6
  226. data/lib/geoblacklight.rb +6 -30
  227. data/lib/tasks/geoblacklight.rake +24 -60
  228. data/package.json +24 -17
  229. data/solr/conf/schema.xml +15 -13
  230. data/solr/conf/solrconfig.xml +6 -4
  231. data/spec/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component_spec.rb +15 -0
  232. data/spec/components/blacklight/icons/arizona_component_spec.rb +15 -0
  233. data/spec/components/blacklight/icons/arrow_circle_down_component_spec.rb +15 -0
  234. data/spec/components/blacklight/icons/baruch_cuny_component_spec.rb +15 -0
  235. data/spec/components/blacklight/icons/book_component_spec.rb +15 -0
  236. data/spec/components/blacklight/icons/bookmark_component_spec.rb +15 -0
  237. data/spec/components/blacklight/icons/cd_rom_component_spec.rb +15 -0
  238. data/spec/components/blacklight/icons/child_item_component_spec.rb +15 -0
  239. data/spec/components/blacklight/icons/circle_info_solid_component_spec.rb +15 -0
  240. data/spec/components/blacklight/icons/citation_component_spec.rb +15 -0
  241. data/spec/components/blacklight/icons/collection_component_spec.rb +15 -0
  242. data/spec/components/blacklight/icons/collections_component_spec.rb +15 -0
  243. data/spec/components/blacklight/icons/columbia_component_spec.rb +15 -0
  244. data/spec/components/blacklight/icons/cornell_component_spec.rb +15 -0
  245. data/spec/components/blacklight/icons/datasets_component_spec.rb +15 -0
  246. data/spec/components/blacklight/icons/dvd_rom_component_spec.rb +15 -0
  247. data/spec/components/blacklight/icons/email_component_spec.rb +15 -0
  248. data/spec/components/blacklight/icons/esri_globe_component_spec.rb +15 -0
  249. data/spec/components/blacklight/icons/fire_solid_component_spec.rb +15 -0
  250. data/spec/components/blacklight/icons/george_mason_component_spec.rb +15 -0
  251. data/spec/components/blacklight/icons/globe_component_spec.rb +15 -0
  252. data/spec/components/blacklight/icons/harvard_component_spec.rb +15 -0
  253. data/spec/components/blacklight/icons/home_component_spec.rb +15 -0
  254. data/spec/components/blacklight/icons/iiif_drag_drop_component_spec.rb +15 -0
  255. data/spec/components/blacklight/icons/image_component_spec.rb +15 -0
  256. data/spec/components/blacklight/icons/imagery_component_spec.rb +15 -0
  257. data/spec/components/blacklight/icons/indiana_component_spec.rb +15 -0
  258. data/spec/components/blacklight/icons/leaf_component_spec.rb +15 -0
  259. data/spec/components/blacklight/icons/lewis_clark_component_spec.rb +15 -0
  260. data/spec/components/blacklight/icons/lightbulb_solid_component_spec.rb +15 -0
  261. data/spec/components/blacklight/icons/line_component_spec.rb +15 -0
  262. data/spec/components/blacklight/icons/map_component_spec.rb +15 -0
  263. data/spec/components/blacklight/icons/map_marker_component_spec.rb +15 -0
  264. data/spec/components/blacklight/icons/maps_component_spec.rb +15 -0
  265. data/spec/components/blacklight/icons/massgis_component_spec.rb +15 -0
  266. data/spec/components/blacklight/icons/metadata_component_spec.rb +15 -0
  267. data/spec/components/blacklight/icons/michigan_state_university_component_spec.rb +15 -0
  268. data/spec/components/blacklight/icons/mit_component_spec.rb +15 -0
  269. data/spec/components/blacklight/icons/mixed_component_spec.rb +15 -0
  270. data/spec/components/blacklight/icons/multilinestring_component_spec.rb +15 -0
  271. data/spec/components/blacklight/icons/multipoint_component_spec.rb +15 -0
  272. data/spec/components/blacklight/icons/multipolygon_component_spec.rb +15 -0
  273. data/spec/components/blacklight/icons/northwestern_university_component_spec.rb +15 -0
  274. data/spec/components/blacklight/icons/nyu_component_spec.rb +15 -0
  275. data/spec/components/blacklight/icons/pagelines_brands_component_spec.rb +15 -0
  276. data/spec/components/blacklight/icons/paper_map_component_spec.rb +15 -0
  277. data/spec/components/blacklight/icons/parent_item_component_spec.rb +15 -0
  278. data/spec/components/blacklight/icons/pennsylvania_state_university_component_spec.rb +15 -0
  279. data/spec/components/blacklight/icons/point_component_spec.rb +15 -0
  280. data/spec/components/blacklight/icons/polygon_component_spec.rb +15 -0
  281. data/spec/components/blacklight/icons/polyline_component_spec.rb +15 -0
  282. data/spec/components/blacklight/icons/princeton_component_spec.rb +15 -0
  283. data/spec/components/blacklight/icons/public_component_spec.rb +15 -0
  284. data/spec/components/blacklight/icons/purdue_university_component_spec.rb +15 -0
  285. data/spec/components/blacklight/icons/raster_component_spec.rb +15 -0
  286. data/spec/components/blacklight/icons/restricted_component_spec.rb +15 -0
  287. data/spec/components/blacklight/icons/rutgers_component_spec.rb +15 -0
  288. data/spec/components/blacklight/icons/sms_component_spec.rb +15 -0
  289. data/spec/components/blacklight/icons/stanford_component_spec.rb +15 -0
  290. data/spec/components/blacklight/icons/table_component_spec.rb +15 -0
  291. data/spec/components/blacklight/icons/tags_component_spec.rb +15 -0
  292. data/spec/components/blacklight/icons/texas_component_spec.rb +15 -0
  293. data/spec/components/blacklight/icons/the_ohio_state_university_component_spec.rb +15 -0
  294. data/spec/components/blacklight/icons/triangle_exclamation_solid_component_spec.rb +15 -0
  295. data/spec/components/blacklight/icons/tufts_component_spec.rb +15 -0
  296. data/spec/components/blacklight/icons/ucla_component_spec.rb +15 -0
  297. data/spec/components/blacklight/icons/university_of_california_berkeley_component_spec.rb +15 -0
  298. data/spec/components/blacklight/icons/university_of_chicago_component_spec.rb +15 -0
  299. data/spec/components/blacklight/icons/university_of_colorado_boulder_component_spec.rb +15 -0
  300. data/spec/components/blacklight/icons/university_of_illinois_urbana_champaign_component_spec.rb +15 -0
  301. data/spec/components/blacklight/icons/university_of_iowa_component_spec.rb +15 -0
  302. data/spec/components/blacklight/icons/university_of_maryland_component_spec.rb +15 -0
  303. data/spec/components/blacklight/icons/university_of_michigan_component_spec.rb +15 -0
  304. data/spec/components/blacklight/icons/university_of_minnesota_component_spec.rb +15 -0
  305. data/spec/components/blacklight/icons/university_of_nebraska_lincoln_component_spec.rb +15 -0
  306. data/spec/components/blacklight/icons/university_of_wisconsin_madison_component_spec.rb +15 -0
  307. data/spec/components/blacklight/icons/uva_component_spec.rb +15 -0
  308. data/spec/components/blacklight/icons/web_services_component_spec.rb +15 -0
  309. data/spec/components/blacklight/icons/websites_component_spec.rb +15 -0
  310. data/spec/components/geoblacklight/arcgis_component_spec.rb +31 -0
  311. data/spec/components/geoblacklight/attribute_table_component_spec.rb +37 -0
  312. data/spec/components/geoblacklight/citation_component_spec.rb +37 -0
  313. data/spec/components/geoblacklight/document_component_spec.rb +92 -0
  314. data/spec/components/geoblacklight/download_links_component_spec.rb +102 -0
  315. data/spec/components/geoblacklight/header_icons_component_spec.rb +56 -0
  316. data/spec/components/geoblacklight/iiif_drag_drop_component_spec.rb +30 -0
  317. data/spec/components/geoblacklight/index_map_legend_component_spec.rb +42 -0
  318. data/spec/components/geoblacklight/item_map_viewer_component_spec.rb +36 -0
  319. data/spec/components/geoblacklight/login_link_component_spec.rb +33 -0
  320. data/spec/{lib/geoblacklight/document_presenter_spec.rb → components/geoblacklight/search_result_component_spec.rb} +19 -11
  321. data/spec/components/geoblacklight/static_map_component_spec.rb +22 -0
  322. data/spec/components/geoblacklight/viewer_help_text_component_spec.rb +28 -0
  323. data/spec/components/geoblacklight/web_services_component_spec.rb +45 -0
  324. data/spec/controllers/download_controller_spec.rb +12 -35
  325. data/spec/features/axe_spec.rb +66 -0
  326. data/spec/features/bookmarks_spec.rb +1 -1
  327. data/spec/features/citations_spec.rb +7 -3
  328. data/spec/features/download_layer_spec.rb +24 -39
  329. data/spec/features/esri_viewer_spec.rb +1 -1
  330. data/spec/features/exports_spec.rb +0 -15
  331. data/spec/features/{full_screen_controll_spec.rb → full_screen_control_spec.rb} +6 -6
  332. data/spec/features/home_page_spec.rb +12 -7
  333. data/spec/features/iiif_viewer_spec.rb +1 -1
  334. data/spec/features/index_map_spec.rb +16 -9
  335. data/spec/features/{split_view.html.erb_spec.rb → index_view_spec.rb} +15 -13
  336. data/spec/features/layer_inspection_spec.rb +2 -2
  337. data/spec/features/layer_preview_spec.rb +1 -1
  338. data/spec/features/missing_metadata_spec.rb +5 -5
  339. data/spec/features/oembed_spec.rb +2 -2
  340. data/spec/features/saved_searches_spec.rb +4 -1
  341. data/spec/features/search_results_complex_geometry_spec.rb +2 -2
  342. data/spec/features/search_results_icons_spec.rb +3 -3
  343. data/spec/features/search_results_map_spec.rb +4 -36
  344. data/spec/features/search_results_overlap_ratio_spec.rb +1 -1
  345. data/spec/features/show_page_download_spec.rb +0 -8
  346. data/spec/features/tilejson_spec.rb +2 -2
  347. data/spec/features/web_services_modal_spec.rb +57 -39
  348. data/spec/features/wmts_spec.rb +4 -4
  349. data/spec/fixtures/solr_documents/README.md +2 -1
  350. data/spec/fixtures/solr_documents/complex-geom.json +61 -0
  351. data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +45 -24
  352. data/spec/fixtures/solr_documents/harvard_raster.json +1 -1
  353. data/spec/fixtures/solr_documents/multiple-downloads.json +1 -0
  354. data/spec/helpers/geoblacklight_helper_spec.rb +8 -173
  355. data/spec/lib/geoblacklight/download/csv_download_spec.rb +21 -0
  356. data/spec/lib/geoblacklight/reference_spec.rb +17 -19
  357. data/spec/lib/geoblacklight/references_spec.rb +31 -17
  358. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +8 -6
  359. data/spec/lib/geoblacklight/wms_layer_spec.rb +14 -0
  360. data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -1
  361. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +1 -21
  362. data/spec/spec_helper.rb +2 -28
  363. data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -12
  364. data/template.rb +13 -11
  365. data/test/leaflet/layers.test.js +17 -0
  366. data/vite.config.ts +34 -23
  367. metadata +304 -256
  368. data/.hound.yml +0 -8
  369. data/.jshintignore +0 -2
  370. data/.jshintrc +0 -67
  371. data/.solr_wrapper +0 -6
  372. data/app/assets/images/blacklight/american-geographical-society-library-uwm-libraries.svg +0 -26
  373. data/app/assets/images/blacklight/arizona.svg +0 -4
  374. data/app/assets/images/blacklight/arrow-circle-down.svg +0 -3
  375. data/app/assets/images/blacklight/baruch-cuny.svg +0 -3
  376. data/app/assets/images/blacklight/book.svg +0 -3
  377. data/app/assets/images/blacklight/bookmark.svg +0 -3
  378. data/app/assets/images/blacklight/cd-rom.svg +0 -3
  379. data/app/assets/images/blacklight/chicago.svg +0 -4
  380. data/app/assets/images/blacklight/child-item.svg +0 -3
  381. data/app/assets/images/blacklight/circle-info-solid.svg +0 -1
  382. data/app/assets/images/blacklight/citation.svg +0 -3
  383. data/app/assets/images/blacklight/collection.svg +0 -3
  384. data/app/assets/images/blacklight/collections.svg +0 -4
  385. data/app/assets/images/blacklight/columbia.svg +0 -3
  386. data/app/assets/images/blacklight/cornell.svg +0 -5
  387. data/app/assets/images/blacklight/datasets.svg +0 -7
  388. data/app/assets/images/blacklight/dvd-rom.svg +0 -3
  389. data/app/assets/images/blacklight/email.svg +0 -3
  390. data/app/assets/images/blacklight/esri-globe.svg +0 -31
  391. data/app/assets/images/blacklight/fire-solid.svg +0 -1
  392. data/app/assets/images/blacklight/geoblacklight-icons.json +0 -3312
  393. data/app/assets/images/blacklight/george-mason.svg +0 -4
  394. data/app/assets/images/blacklight/globe.svg +0 -3
  395. data/app/assets/images/blacklight/harvard.svg +0 -3
  396. data/app/assets/images/blacklight/home.svg +0 -3
  397. data/app/assets/images/blacklight/illinois.svg +0 -4
  398. data/app/assets/images/blacklight/image.svg +0 -3
  399. data/app/assets/images/blacklight/imagery.svg +0 -4
  400. data/app/assets/images/blacklight/indiana.svg +0 -3
  401. data/app/assets/images/blacklight/iowa.svg +0 -3
  402. data/app/assets/images/blacklight/leaf.svg +0 -3
  403. data/app/assets/images/blacklight/lewis-clark.svg +0 -5
  404. data/app/assets/images/blacklight/lightbulb-solid.svg +0 -1
  405. data/app/assets/images/blacklight/line.svg +0 -4
  406. data/app/assets/images/blacklight/map-marker.svg +0 -3
  407. data/app/assets/images/blacklight/map.svg +0 -3
  408. data/app/assets/images/blacklight/maps.svg +0 -4
  409. data/app/assets/images/blacklight/maryland.svg +0 -3
  410. data/app/assets/images/blacklight/massgis.svg +0 -3
  411. data/app/assets/images/blacklight/metadata.svg +0 -3
  412. data/app/assets/images/blacklight/michigan-state-university.svg +0 -5
  413. data/app/assets/images/blacklight/michigan-state.svg +0 -4
  414. data/app/assets/images/blacklight/michigan.svg +0 -3
  415. data/app/assets/images/blacklight/minnesota.svg +0 -3
  416. data/app/assets/images/blacklight/mit.svg +0 -3
  417. data/app/assets/images/blacklight/mixed.svg +0 -5
  418. data/app/assets/images/blacklight/multilinestring.svg +0 -6
  419. data/app/assets/images/blacklight/multipoint.svg +0 -3
  420. data/app/assets/images/blacklight/multipolygon.svg +0 -6
  421. data/app/assets/images/blacklight/nebraska.svg +0 -4
  422. data/app/assets/images/blacklight/northwestern-university.svg +0 -5
  423. data/app/assets/images/blacklight/nyu.svg +0 -6
  424. data/app/assets/images/blacklight/ohio-state.svg +0 -5
  425. data/app/assets/images/blacklight/pagelines-brands.svg +0 -3
  426. data/app/assets/images/blacklight/paper-map.svg +0 -3
  427. data/app/assets/images/blacklight/parent-item.svg +0 -3
  428. data/app/assets/images/blacklight/penn-state.svg +0 -4
  429. data/app/assets/images/blacklight/pennsylvania-state-university.svg +0 -5
  430. data/app/assets/images/blacklight/point.svg +0 -3
  431. data/app/assets/images/blacklight/polygon.svg +0 -4
  432. data/app/assets/images/blacklight/polyline.svg +0 -6
  433. data/app/assets/images/blacklight/princeton.svg +0 -3
  434. data/app/assets/images/blacklight/public.svg +0 -3
  435. data/app/assets/images/blacklight/purdue-university.svg +0 -5
  436. data/app/assets/images/blacklight/purdue.svg +0 -4
  437. data/app/assets/images/blacklight/raster.svg +0 -3
  438. data/app/assets/images/blacklight/restricted.svg +0 -3
  439. data/app/assets/images/blacklight/rutgers.svg +0 -5
  440. data/app/assets/images/blacklight/sms.svg +0 -3
  441. data/app/assets/images/blacklight/stanford.svg +0 -3
  442. data/app/assets/images/blacklight/table.svg +0 -3
  443. data/app/assets/images/blacklight/tags.svg +0 -3
  444. data/app/assets/images/blacklight/texas.svg +0 -3
  445. data/app/assets/images/blacklight/the-ohio-state-university.svg +0 -6
  446. data/app/assets/images/blacklight/triangle-exclamation-solid.svg +0 -1
  447. data/app/assets/images/blacklight/tufts.svg +0 -3
  448. data/app/assets/images/blacklight/ucla.svg +0 -3
  449. data/app/assets/images/blacklight/university-of-california-berkeley.svg +0 -4
  450. data/app/assets/images/blacklight/university-of-chicago.svg +0 -5
  451. data/app/assets/images/blacklight/university-of-colorado-boulder.svg +0 -6
  452. data/app/assets/images/blacklight/university-of-illinois-urbana-champaign.svg +0 -5
  453. data/app/assets/images/blacklight/university-of-iowa.svg +0 -4
  454. data/app/assets/images/blacklight/university-of-maryland.svg +0 -4
  455. data/app/assets/images/blacklight/university-of-michigan.svg +0 -4
  456. data/app/assets/images/blacklight/university-of-minnesota.svg +0 -4
  457. data/app/assets/images/blacklight/university-of-nebraska-lincoln.svg +0 -7
  458. data/app/assets/images/blacklight/university-of-wisconsin-madison.svg +0 -4
  459. data/app/assets/images/blacklight/uva.svg +0 -3
  460. data/app/assets/images/blacklight/web_services.svg +0 -3
  461. data/app/assets/images/blacklight/websites.svg +0 -4
  462. data/app/assets/images/blacklight/wisconsin.svg +0 -3
  463. data/app/assets/javascripts/geoblacklight/basemaps.js +0 -85
  464. data/app/assets/javascripts/geoblacklight/controls/fullscreen.js +0 -8
  465. data/app/assets/javascripts/geoblacklight/controls/opacity.js +0 -6
  466. data/app/assets/javascripts/geoblacklight/controls.js +0 -1
  467. data/app/assets/javascripts/geoblacklight/downloaders/downloader.js +0 -61
  468. data/app/assets/javascripts/geoblacklight/downloaders/hgl_downloader.js +0 -32
  469. data/app/assets/javascripts/geoblacklight/downloaders.js +0 -1
  470. data/app/assets/javascripts/geoblacklight/geoblacklight.js +0 -60
  471. data/app/assets/javascripts/geoblacklight/modules/bookmarks.js +0 -43
  472. data/app/assets/javascripts/geoblacklight/modules/download.js +0 -11
  473. data/app/assets/javascripts/geoblacklight/modules/geosearch.js +0 -133
  474. data/app/assets/javascripts/geoblacklight/modules/help_text.js +0 -7
  475. data/app/assets/javascripts/geoblacklight/modules/home.js +0 -16
  476. data/app/assets/javascripts/geoblacklight/modules/item.js +0 -32
  477. data/app/assets/javascripts/geoblacklight/modules/layer_opacity.js +0 -68
  478. data/app/assets/javascripts/geoblacklight/modules/metadata.js +0 -15
  479. data/app/assets/javascripts/geoblacklight/modules/metadata_download_button.js +0 -58
  480. data/app/assets/javascripts/geoblacklight/modules/relations.js +0 -14
  481. data/app/assets/javascripts/geoblacklight/modules/results.js +0 -81
  482. data/app/assets/javascripts/geoblacklight/modules/svg_tooltips.js +0 -31
  483. data/app/assets/javascripts/geoblacklight/modules/util.js +0 -48
  484. data/app/assets/javascripts/geoblacklight/modules.js +0 -1
  485. data/app/assets/javascripts/geoblacklight/templates/index_map_download.hbs +0 -19
  486. data/app/assets/javascripts/geoblacklight/templates/index_map_info.hbs +0 -61
  487. data/app/assets/javascripts/geoblacklight/viewers/cog.js +0 -5
  488. data/app/assets/javascripts/geoblacklight/viewers/esri/dynamic_map_layer.js +0 -85
  489. data/app/assets/javascripts/geoblacklight/viewers/esri/feature_layer.js +0 -76
  490. data/app/assets/javascripts/geoblacklight/viewers/esri/image_map_layer.js +0 -14
  491. data/app/assets/javascripts/geoblacklight/viewers/esri/tiled_map_layer.js +0 -50
  492. data/app/assets/javascripts/geoblacklight/viewers/esri.js +0 -78
  493. data/app/assets/javascripts/geoblacklight/viewers/iiif.js +0 -25
  494. data/app/assets/javascripts/geoblacklight/viewers/index_map.js +0 -71
  495. data/app/assets/javascripts/geoblacklight/viewers/map.js +0 -77
  496. data/app/assets/javascripts/geoblacklight/viewers/oembed.js +0 -13
  497. data/app/assets/javascripts/geoblacklight/viewers/pmtiles.js +0 -5
  498. data/app/assets/javascripts/geoblacklight/viewers/tilejson.js +0 -33
  499. data/app/assets/javascripts/geoblacklight/viewers/tms.js +0 -10
  500. data/app/assets/javascripts/geoblacklight/viewers/viewer.js +0 -68
  501. data/app/assets/javascripts/geoblacklight/viewers/wms.js +0 -74
  502. data/app/assets/javascripts/geoblacklight/viewers/wmts.js +0 -85
  503. data/app/assets/javascripts/geoblacklight/viewers/xyz.js +0 -10
  504. data/app/assets/javascripts/geoblacklight/viewers.js +0 -1
  505. data/app/assets/stylesheets/geoblacklight/modules/mixins.scss +0 -5
  506. data/app/helpers/arcgis_helper.rb +0 -14
  507. data/app/helpers/blacklight_helper.rb +0 -11
  508. data/app/helpers/carto_helper.rb +0 -31
  509. data/app/helpers/geoblacklight/geoblacklight_helper_behavior.rb +0 -18
  510. data/app/javascript/clover/clover_initializer.js +0 -29
  511. data/app/javascript/index.js +0 -7
  512. data/app/javascript/openlayers/basemaps.js +0 -47
  513. data/app/javascript/openlayers/ol_initializer.js +0 -106
  514. data/app/javascript/stylesheets/openlayers.css +0 -1
  515. data/app/models/concerns/geoblacklight/solr_document/carto.rb +0 -17
  516. data/app/views/catalog/_arcgis.html.erb +0 -4
  517. data/app/views/catalog/_carto.html.erb +0 -4
  518. data/app/views/catalog/_data_dictionary.html.erb +0 -5
  519. data/app/views/catalog/_downloads_collapse.html.erb +0 -27
  520. data/app/views/catalog/_header_icons.html.erb +0 -3
  521. data/app/views/catalog/_index_split_default.html.erb +0 -30
  522. data/app/views/catalog/_results_pagination.html.erb +0 -12
  523. data/app/views/catalog/_show_default_attribute_table.html.erb +0 -19
  524. data/app/views/catalog/_show_default_display_note.html.erb +0 -7
  525. data/app/views/catalog/_show_default_viewer_container.html.erb +0 -28
  526. data/app/views/catalog/_show_downloads.html.erb +0 -23
  527. data/app/views/catalog/_show_header_default.html.erb +0 -4
  528. data/app/views/catalog/_show_sidebar.html.erb +0 -16
  529. data/app/views/catalog/_show_sidebar_static_map.html.erb +0 -10
  530. data/app/views/catalog/_show_web_services.html.erb +0 -11
  531. data/app/views/catalog/_web_services.html.erb +0 -9
  532. data/app/views/catalog/_web_services_wms.html.erb +0 -13
  533. data/app/views/download/hgl.html.erb +0 -27
  534. data/app/views/relation/_relations.html.erb +0 -15
  535. data/app/views/shared/_header_navbar.html.erb +0 -46
  536. data/babel.config.json +0 -4
  537. data/jest.config.js +0 -25
  538. data/lib/generators/geoblacklight/templates/assets/_blacklight.scss +0 -1
  539. data/lib/generators/geoblacklight/templates/assets/_geoblacklight.scss +0 -1
  540. data/lib/generators/geoblacklight/templates/assets/geoblacklight.js +0 -9
  541. data/lib/generators/geoblacklight/templates/clover.js +0 -5
  542. data/lib/generators/geoblacklight/templates/ol.js +0 -6
  543. data/lib/generators/geoblacklight/templates/package-test.json +0 -10
  544. data/lib/generators/geoblacklight/templates/settings.gbl_v1.yml +0 -195
  545. data/lib/geoblacklight/download/hgl_download.rb +0 -20
  546. data/lib/geoblacklight/view_helper_override.rb +0 -16
  547. data/setupJest.js +0 -14
  548. data/spec/helpers/arcgis_helper_spec.rb +0 -16
  549. data/spec/helpers/carto_helper_spec.rb +0 -13
  550. data/spec/helpers/geoblacklight/geoblacklight_helper_behavior_spec.rb +0 -27
  551. data/spec/javascripts/util_spec.js +0 -10
  552. data/spec/lib/geoblacklight/download/hgl_download_spec.rb +0 -62
  553. data/spec/lib/geoblacklight/view_helper_override_spec.rb +0 -29
  554. data/spec/models/concerns/geoblacklight/solr_document/carto_spec.rb +0 -43
  555. data/spec/test_app_templates/Gemfile.extra +0 -2
  556. data/spec/views/catalog/_document_split.html.erb_spec.rb +0 -7
  557. data/spec/views/catalog/_index_split.html.erb_spec.rb +0 -7
  558. data/spec/views/catalog/_results_pagination.html.erb_spec.rb +0 -11
  559. data/spec/views/catalog/_show_downloads.html.erb_spec.rb +0 -43
  560. data/spec/views/catalog/_show_tools.html.erb_spec.rb +0 -38
  561. data/vendor/assets/images/fullscreen.png +0 -0
  562. data/vendor/assets/images/fullscreen@2x.png +0 -0
  563. data/vendor/assets/images/layers-2x.png +0 -0
  564. data/vendor/assets/images/layers.png +0 -0
  565. data/vendor/assets/images/marker-icon-2x.png +0 -0
  566. data/vendor/assets/images/marker-icon.png +0 -0
  567. data/vendor/assets/images/marker-shadow.png +0 -0
  568. data/vendor/assets/javascripts/Leaflet.fullscreen.js +0 -152
  569. data/vendor/assets/javascripts/esri-leaflet.js +0 -12
  570. data/vendor/assets/javascripts/esri-leaflet.js.map +0 -1
  571. data/vendor/assets/javascripts/leaflet-iiif.js +0 -323
  572. data/vendor/assets/javascripts/leaflet-src.js.erb +0 -14126
  573. data/vendor/assets/javascripts/leaflet-src.js.map +0 -1
  574. data/vendor/assets/javascripts/native.history.js +0 -1
  575. data/vendor/assets/stylesheets/leaflet.css +0 -640
  576. data/vendor/assets/stylesheets/leaflet.fullscreen.css +0 -40
  577. /data/app/{views/catalog/_show_default_viewer_information.html.erb → components/geoblacklight/index_map_inspect_component.html.erb} +0 -0
@@ -6,18 +6,19 @@ feature "Home page", js: true do # use js: true for tests which require js, but
6
6
  before do
7
7
  visit root_path
8
8
  end
9
+
9
10
  scenario "navbar" do
10
11
  expect(page).to have_css "#bookmarks_nav"
11
12
  expect(page).to have_css "a", text: "History"
12
13
  end
14
+
13
15
  scenario "search bar" do
14
16
  expect(page).not_to have_css "#search-navbar"
15
- within ".jumbotron" do
16
- expect(page).to have_css "h2", text: "Explore and discover..."
17
- expect(page).to have_css "h3", text: "Find the maps and data you need"
18
- expect(page).to have_css "form.search-query-form"
19
- end
17
+ expect(page).to have_css "h1", text: "Explore and discover..."
18
+ expect(page).to have_css "h2", text: "Find the maps and data you need"
19
+ expect(page).to have_css "form.search-query-form"
20
20
  end
21
+
21
22
  scenario "find by category" do
22
23
  expect(page).to have_css ".category-block", count: 4
23
24
  expect(page).to have_css ".home-facet-link", count: 36
@@ -26,24 +27,28 @@ feature "Home page", js: true do # use js: true for tests which require js, but
26
27
  expect(page).to have_css ".filter-name", text: "Subject"
27
28
  expect(page).to have_css ".filter-value", text: "Counties"
28
29
  end
30
+
29
31
  scenario "map should be visible" do
30
32
  within "#main-container" do
31
- expect(page).to have_css("#map")
33
+ expect(page).to have_css("#leaflet-viewer")
32
34
  expect(page).to have_css("img.leaflet-tile", minimum: 3)
33
35
  end
34
36
  end
37
+
35
38
  scenario "clicking map search should create a spatial search" do
36
- within "#map" do
39
+ within "#leaflet-viewer" do
37
40
  find(".search-control a").click
38
41
  expect(page.current_url).to match(/bbox=/)
39
42
  end
40
43
  expect(page).to have_css "#documents"
41
44
  end
45
+
42
46
  scenario "can search by placename" do
43
47
  click_link "New York, New York"
44
48
  results = page.all(:css, "article.document")
45
49
  expect(results.count).to equal(4)
46
50
  end
51
+
47
52
  scenario "pages should have meta tag with geoblacklight version" do
48
53
  expect(page.body).to include("geoblacklight-version")
49
54
  end
@@ -5,6 +5,6 @@ require "spec_helper"
5
5
  feature "iiif reference" do
6
6
  scenario "displays leaflet viewer", js: true do
7
7
  visit solr_document_path("princeton-02870w62c")
8
- expect(page).to have_css ".leaflet-control-zoom", visible: true
8
+ expect(page).to have_css '[data-button="zoom-in"]', visible: true
9
9
  end
10
10
  end
@@ -2,31 +2,38 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Index map" do
5
+ feature "Index map", js: true do
6
6
  # Colors
7
7
  default_color = "#7FCDBB"
8
8
  selected_color = "#2C7FB8"
9
- scenario "displays index map viewer (polygon)", js: true do
9
+ scenario "displays index map viewer (polygon)" do
10
+ skip "Doesn't work for importmaps when headless in CI" if ENV["CI"] && ENV.fetch("ASSET_PIPELINE") == "importmap"
11
+
10
12
  visit solr_document_path("stanford-fb897vt9938")
11
13
  # Wait until SVG elements are added
12
14
  expect(page).to have_css ".leaflet-overlay-pane svg"
13
- within "#map" do
15
+ within "#leaflet-viewer" do
14
16
  expect(page).to have_css "svg g path:nth-child(2)[fill='#{default_color}']"
15
- find("svg g path:nth-child(2)").click
17
+ # Click the top-left corner of the polygon instead of the center
18
+ # to prevent it being occluded by other DOM elements (occurs in headless mode)
19
+ find("svg g path:nth-child(2)").click(x: 1, y: 1)
16
20
  expect(page).to have_css "svg g path:nth-child(2)[fill='#{selected_color}']"
17
- first("svg g path").click
21
+ first("svg g path").click(x: 1, y: 1)
18
22
  expect(page).to have_css "svg g path:nth-child(2)[fill='#{default_color}']"
19
23
  end
20
24
  end
21
- scenario "displays index map viewer (points)", js: true do
25
+
26
+ scenario "displays index map viewer (points)" do
27
+ skip "Doesn't work for importmaps when headless in CI" if ENV["CI"] && ENV.fetch("ASSET_PIPELINE") == "importmap"
28
+
22
29
  visit solr_document_path("cornell-ny-aerial-photos-1960s")
23
30
  # Wait until SVG elements are added
24
31
  expect(page).to have_css ".leaflet-overlay-pane svg"
25
- within "#map" do
32
+ within "#leaflet-viewer" do
26
33
  expect(page).to have_css "svg g path:nth-child(2)[fill='#{default_color}']"
27
- find("svg g path:nth-child(2)").click
34
+ find("svg g path:nth-child(2)").click(x: 1, y: 1)
28
35
  expect(page).to have_css "svg g path:nth-child(2)[fill='#{selected_color}']"
29
- first("svg g path").click
36
+ first("svg g path").click(x: 1, y: 1)
30
37
  expect(page).to have_css "svg g path:nth-child(2)[fill='#{default_color}']"
31
38
  end
32
39
  end
@@ -12,7 +12,7 @@ feature "Index view", js: true do
12
12
  visit search_catalog_path(f: {Settings.FIELDS.PROVIDER => ["Stanford"]})
13
13
  expect(page).to have_css("#documents")
14
14
  expect(page).to have_css(".document", count: 6)
15
- expect(page).to have_css("#map")
15
+ expect(page).to have_css("#leaflet-viewer")
16
16
  end
17
17
 
18
18
  scenario "should have sort and per_page on page" do
@@ -22,6 +22,8 @@ feature "Index view", js: true do
22
22
  end
23
23
 
24
24
  scenario "should have facets listed correctly" do
25
+ skip "Takes too long in CI" if ENV["CI"]
26
+
25
27
  within "#facet-panel-collapse" do
26
28
  expect(page).to have_css("div.card.facet-limit", text: "Year")
27
29
  expect(page).to have_css("div.card.facet-limit", text: "Place")
@@ -36,13 +38,13 @@ feature "Index view", js: true do
36
38
  expect(page).to have_css("div.card.facet-limit", text: "Provider")
37
39
  expect(page).to have_css("div.card.facet-limit", text: "Georeferenced")
38
40
  end
41
+
39
42
  click_button "Provider"
40
- using_wait_time 120 do
41
- expect(page).to have_css("a.facet-select", text: "University of Minnesota", visible: true)
42
- expect(page).to have_css("a.facet-select", text: "MIT", visible: true)
43
- expect(page).to have_css("a.facet-select", text: "Stanford", visible: true)
44
- expect(page).to have_css(".more_facets a", text: /more\sProvider\s»/, visible: true)
45
- end
43
+
44
+ expect(page).to have_css("a.facet-select", text: "University of Minnesota", visible: true)
45
+ expect(page).to have_css("a.facet-select", text: "MIT", visible: true)
46
+ expect(page).to have_css("a.facet-select", text: "Stanford", visible: true)
47
+ expect(page).to have_css(".more_facets a", text: /more\sProvider\s»/, visible: true)
46
48
  end
47
49
 
48
50
  scenario "hover on record should produce bounding box on map" do
@@ -51,28 +53,28 @@ feature "Index view", js: true do
51
53
  # BL7 has svg icons, so sniffing for SVG path won't return false
52
54
  # expect(Nokogiri::HTML.parse(page.body).css('path').length).to eq 0
53
55
  find(".documentHeader", match: :first).hover
54
- within("#map") do
56
+ within("#leaflet-viewer") do
55
57
  expect(page).to have_css("path")
56
58
  end
57
59
  end
58
60
 
59
61
  scenario "click on a record area to expand collapse" do
60
62
  within("article", match: :first) do
61
- expect(page).not_to have_css(".collapse")
63
+ expect(page).to have_css(".collapsed")
62
64
  find("button").click
63
- expect(page).to have_css(".collapse", visible: true)
65
+ expect(page).not_to have_css(".collapsed")
64
66
  end
65
67
  end
66
68
 
67
69
  scenario "spatial search should reset to page one" do
68
70
  visit "/?per_page=5&q=%2A&page=2"
69
- find("#map").double_click
71
+ find("#leaflet-viewer").double_click
70
72
  expect(find(".page-entries")).to have_content(/^1 - \d of \d.*$/)
71
73
  end
72
74
 
73
75
  scenario "clicking map search should retain current search parameters" do
74
76
  visit "/?f[#{subject_field}][]=Population"
75
- find("#map").double_click
77
+ find("#leaflet-viewer").double_click
76
78
  within "#appliedParams" do
77
79
  expect(page).to have_content("Subject Population")
78
80
  expect(page).to have_css "span.filter-name", text: "Bounding Box"
@@ -83,7 +85,7 @@ feature "Index view", js: true do
83
85
  visit search_catalog_path(f: {Settings.FIELDS.PROVIDER => ["Stanford"]})
84
86
  within(".documentHeader", match: :first) do
85
87
  expect(page).to have_css("a[itemprop='name']")
86
- find(".caret-toggle").click
88
+ find(".dropdown-toggle").click
87
89
  end
88
90
  within(".more-info-area", match: :first) do
89
91
  expect(page).to have_css("small[itemprop='description']")
@@ -4,9 +4,9 @@ require "spec_helper"
4
4
 
5
5
  feature "Layer inspection", js: true do
6
6
  scenario "clicking map should trigger inspection" do
7
- visit solr_document_path("nyu-2451-34564")
7
+ visit solr_document_path("tufts-cambridgegrid100-04")
8
8
  expect(page).to have_css("th", text: "Attribute")
9
- find("#map").click
9
+ find("#leaflet-viewer").click
10
10
  expect(page).not_to have_css("td.default-text")
11
11
  end
12
12
  end
@@ -5,7 +5,7 @@ require "spec_helper"
5
5
  feature "Layer preview", js: true do
6
6
  scenario "Restricted layer should show bounding box" do
7
7
  visit solr_document_path("stanford-cg357zz0321")
8
- within("#map") do
8
+ within("#leaflet-viewer") do
9
9
  expect(page).to have_css("path")
10
10
  end
11
11
  end
@@ -5,22 +5,22 @@ require "spec_helper"
5
5
  feature "Missing metadata", js: true do
6
6
  scenario "Yields error free results page for no spatial" do
7
7
  visit search_catalog_path(q: "ASTER Global Emissivity")
8
- expect(page).to have_css("#map")
8
+ expect(page).to have_css("#leaflet-viewer")
9
9
  end
10
10
  scenario "Yields error free show page for no wxs_identifier or spatial" do
11
11
  visit solr_document_path("aster-global-emissivity-dataset-1-kilometer-v003-ag1kmcad20")
12
- expect(page).to have_css("#map")
12
+ expect(page).to have_css("#leaflet-viewer")
13
13
  end
14
14
  scenario "Yields error free show page for no layer_geom_type_s" do
15
15
  visit solr_document_path("05d-03-noGeomType")
16
- expect(page).to have_css("#map")
16
+ expect(page).to have_css("#leaflet-viewer")
17
17
  end
18
18
  scenario "Yields error free show page for no dct_provider_s" do
19
19
  visit solr_document_path("99-0001-noprovider")
20
- expect(page).to have_css("#map")
20
+ expect(page).to have_css("#leaflet-viewer")
21
21
  end
22
22
  scenario "Yields error free show page for no locn_geometry" do
23
23
  visit solr_document_path("05d-p16022coll246-noGeo")
24
- expect(page).to have_css("#map")
24
+ expect(page).to have_css("#leaflet-viewer")
25
25
  end
26
26
  end
@@ -5,7 +5,7 @@ require "spec_helper"
5
5
  feature "Oembed layer" do
6
6
  scenario "Should show oembed content and map" do
7
7
  visit solr_document_path("stanford-dc482zx1528")
8
- expect(page).to have_css "#map"
9
- expect(page).to have_css '[data-protocol="Oembed"]'
8
+ expect(page).to have_css "#oembed-viewer"
9
+ expect(page).to have_css '[data-controller="oembed-viewer"]'
10
10
  end
11
11
  end
@@ -5,10 +5,13 @@ require "spec_helper"
5
5
  feature "saved searches" do
6
6
  scenario "list spatial search", js: true do
7
7
  visit root_path
8
- within "#map" do
8
+ within "#leaflet-viewer" do
9
9
  find(".search-control a").click
10
10
  expect(page.current_url).to match(/bbox=/)
11
11
  end
12
+ if Rails.version == "6.1.7.6"
13
+ visit root_path({bbox: "-180 -89.338214 180 88.918831"})
14
+ end
12
15
  visit blacklight.search_history_path
13
16
  expect(page).to have_css "td.query a", text: /#{I18n.t("geoblacklight.bbox_label")}/
14
17
  end
@@ -9,7 +9,7 @@ feature "spatial search results with an WKT bounding box that crosses the anti-m
9
9
  q: "A new & accurate map of Asia",
10
10
  bbox: "98.4375 31.765537 117.202148 45.429299"
11
11
  )
12
- result_id = page.all("div.documentHeader.row").first["data-layer-id"]
12
+ result_id = page.all("div.documentHeader").first["data-layer-id"]
13
13
  expect(result_id).to eq "57f0f116-b64e-4773-8684-96ba09afb549"
14
14
  end
15
15
 
@@ -19,7 +19,7 @@ feature "spatial search results with an WKT bounding box that crosses the anti-m
19
19
  q: "A new & accurate map of Asia",
20
20
  bbox: "-98.717651 34.40691 -96.37207 36.199958"
21
21
  )
22
- results = page.all("div.documentHeader.row")
22
+ results = page.all("div.documentHeader")
23
23
  expect(results.count).to eq 0
24
24
  end
25
25
  end
@@ -10,8 +10,8 @@ feature "search results display document iconography" do
10
10
  q: "stanford-cg357zz0321"
11
11
  )
12
12
  first_result = page.all("span.status-icons > span")
13
- expect(first_result[0][:class]).to include "blacklight-icon-dataset"
14
- expect(first_result[1][:class]).to include "blacklight-icon-stanford"
15
- expect(first_result[2][:class]).to include "blacklight-icon-restricted"
13
+ expect(first_result[0][:class]).to include "blacklight-icons-line"
14
+ expect(first_result[1][:class]).to include "blacklight-icons-stanford"
15
+ expect(first_result[2][:class]).to include "blacklight-icons-restricted"
16
16
  end
17
17
  end
@@ -3,29 +3,12 @@
3
3
  require "spec_helper"
4
4
 
5
5
  feature "search results map", js: true do
6
- scenario "present on a search result page" do
7
- visit search_catalog_path(q: "Minnesota")
8
- expect(page).to have_css "#map"
9
- end
10
- xscenario "view is scoped to Minnesota" do
11
- # pending 'Minnesota fixtures have changed.'
12
- visit root_path
13
- click_link "Minnesota, United States"
14
- expect(page).to have_css "#map"
15
- bbox = page.find("#map")["data-js-map-render-bbox"]
16
-
17
- # Example bbox for Place > Minnesota, United States:
18
- # "-101.90917968749999,38.75408327579141,-83.27636718749999,53.27835301753182"
19
- left, bottom, right, top = bbox.split(",")
20
- expect(left.to_f).to be_within(2).of(-101)
21
- expect(bottom.to_f).to be_within(3).of(38)
22
- expect(right.to_f).to be_within(2).of(-83)
23
- expect(top.to_f).to be_within(2).of(53)
24
- end
25
6
  scenario "view is scoped to Twin Cities metro area" do
26
7
  visit search_catalog_path(q: "Minneapolis")
27
- expect(page).to have_css "#map"
28
- bbox = page.find("#map")["data-js-map-render-bbox"]
8
+ expect(page).to have_css "#leaflet-viewer"
9
+ sleep 1
10
+
11
+ bbox = page.find("#leaflet-viewer")["data-bounds"]
29
12
 
30
13
  # Example bbox for q: Minneapolis
31
14
  # "-94.537353515625,44.004669106432225,-92.208251953125,45.87088761346192"
@@ -35,19 +18,4 @@ feature "search results map", js: true do
35
18
  expect(right.to_f).to be_within(1).of(-92)
36
19
  expect(top.to_f).to be_within(1).of(45)
37
20
  end
38
- scenario "view is scoped to NYC" do
39
- skip "spec inconsistently failing"
40
- visit root_path
41
- click_link "New York, New York"
42
- expect(page).to have_css "#map"
43
- bbox = page.find("#map")["data-js-map-render-bbox"]
44
-
45
- # Example bbox for Place > New York, New York, United States
46
- # "-74.26895141601562,40.455307212131494,-73.68667602539061,40.95501133048621"
47
- left, bottom, right, top = bbox.split(",")
48
- expect(left.to_f).to be_within(2).of(-74)
49
- expect(bottom.to_f).to be_within(2).of(40)
50
- expect(right.to_f).to be_within(2).of(-73)
51
- expect(top.to_f).to be_within(2).of(40)
52
- end
53
21
  end
@@ -50,7 +50,7 @@ end
50
50
 
51
51
  def position_in_result_page(page, id)
52
52
  results = []
53
- page.all("div.documentHeader.row").each do |div|
53
+ page.all("div.documentHeader").each do |div|
54
54
  results << div["data-layer-id"]
55
55
  end
56
56
  results.index(id) + 1
@@ -19,12 +19,4 @@ feature "Download display on show page" do
19
19
  expect(page).to have_selector(:css, 'a[href="https://libimages1.princeton.edu/loris/figgy_prod/2e%2Fa9%2F43%2F2ea943b0bd4348fc9954b299f1b359f6%2Fintermediate_file.jp2/full/full/0/default.jpg"]')
20
20
  end
21
21
  end
22
-
23
- scenario "with Harvard hgl_download" do
24
- visit solr_document_path "harvard-g7064-s2-1834-k3"
25
- find("#downloads-button").click
26
- within "#downloads-collapse" do
27
- expect(page).to have_selector(:css, 'a[href="/download/hgl/harvard-g7064-s2-1834-k3"][data-download-type="harvard-hgl"]')
28
- end
29
- end
30
22
  end
@@ -19,7 +19,7 @@ feature "tilejson layer" do
19
19
  visit solr_document_path("princeton-fk4544658v-tilejson")
20
20
 
21
21
  expect(page).to have_css ".leaflet-control-zoom", visible: :visible
22
- expect(page).to have_css "div[data-protocol='Tilejson']"
23
- expect(page).to have_css "div[data-url='https://map-tiles-staging.princeton.edu/2a91d82c541c426cb787cc62afe8f248/mosaicjson/tilejson.json']"
22
+ expect(page).to have_css "div[data-leaflet-viewer-protocol-value='Tilejson']"
23
+ expect(page).to have_css "div[data-leaflet-viewer-url-value='https://map-tiles-staging.princeton.edu/2a91d82c541c426cb787cc62afe8f248/mosaicjson/tilejson.json']"
24
24
  end
25
25
  end
@@ -2,12 +2,44 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "web services tools" do
6
- feature "when wms/wfs are provided", js: true do
7
- scenario "shows up in tools" do
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
- expect(page).to have_css "div.web-services-sidebar a", text: "Web services"
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
- feature "no wms or wfs provided" do
22
- scenario "does not show up in tools" do
23
- visit solr_document_path "mit-001145244"
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
- expect(page).to have_css "div.web-services-sidebar a", text: "Web services"
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
- feature "when wmts tile reference is provided", js: true do
39
- scenario "shows up in tools" do
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
- expect(page).to have_css "div.web-services-sidebar a", text: "Web services"
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
- feature "when tilejson reference is provided", js: true do
50
- scenario "shows up in tools" do
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
- expect(page).to have_css "div.web-services-sidebar a", text: "Web services"
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
- feature "when a PMTiles reference is provided", js: true do
61
- scenario "shows up in tools" do
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
- expect(page).to have_css "div.web-services-sidebar a", text: "Web services"
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
- feature "when a COG reference is provided", js: true do
72
- scenario "shows up in tools" do
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
- expect(page).to have_css "div.web-services-sidebar a", text: "Web services"
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
@@ -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)| Soil Survey Geographic (SSURGO) | nyu-test-soil-survey-map | ArcGIS tiled map layer
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
+ }