geoblacklight 5.3.0 → 6.0.0.pre.alpha.2

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 (468) hide show
  1. checksums.yaml +4 -4
  2. data/.engine_cart.yml +14 -0
  3. data/.github/workflows/ruby.yml +25 -25
  4. data/.gitignore +0 -9
  5. data/.prettierignore +4 -0
  6. data/.prettierrc +5 -0
  7. data/CONTRIBUTING.md +2 -4
  8. data/Gemfile +4 -2
  9. data/README.md +4 -4
  10. data/Rakefile +0 -22
  11. data/app/assets/stylesheets/geoblacklight/global.css +7 -0
  12. data/app/assets/stylesheets/geoblacklight/home.css +22 -0
  13. data/app/assets/stylesheets/geoblacklight/index_maps.css +36 -0
  14. data/app/assets/stylesheets/geoblacklight/record.css +39 -0
  15. data/app/assets/stylesheets/geoblacklight/search.css +56 -0
  16. data/app/assets/stylesheets/geoblacklight/viewers.css +50 -0
  17. data/app/assets/stylesheets/geoblacklight.css +14 -0
  18. data/app/components/blacklight/icons/web_services_component.rb +3 -3
  19. data/app/components/geoblacklight/accordion_component.html.erb +3 -3
  20. data/app/components/geoblacklight/accordion_component.rb +4 -0
  21. data/app/components/geoblacklight/arcgis_component.html.erb +1 -1
  22. data/app/components/geoblacklight/arcgis_component.rb +1 -1
  23. data/app/components/geoblacklight/attribute_table_component.html.erb +3 -3
  24. data/app/components/geoblacklight/data_dictionary_download_component.html.erb +1 -1
  25. data/app/components/geoblacklight/display_note_component.html.erb +1 -1
  26. data/app/components/geoblacklight/display_note_component.rb +2 -1
  27. data/app/components/geoblacklight/document/citation_component.html.erb +1 -1
  28. data/app/components/geoblacklight/document/relations_container_component.html.erb +1 -0
  29. data/app/components/geoblacklight/document/relations_container_component.rb +12 -0
  30. data/app/components/geoblacklight/document/sidebar_component.html.erb +3 -4
  31. data/app/components/geoblacklight/document/sidebar_component.rb +0 -1
  32. data/app/components/geoblacklight/document_component.html.erb +1 -2
  33. data/app/components/geoblacklight/download_links_component.rb +1 -1
  34. data/app/components/geoblacklight/header_component.html.erb +4 -4
  35. data/app/components/geoblacklight/header_icons_component.rb +4 -2
  36. data/app/components/geoblacklight/homepage_feature_facet_component.html.erb +3 -7
  37. data/app/components/geoblacklight/homepage_feature_facet_component.rb +12 -3
  38. data/app/components/geoblacklight/iiif_drag_drop_component.html.erb +2 -2
  39. data/app/components/geoblacklight/iiif_drag_drop_component.rb +2 -2
  40. data/app/components/geoblacklight/index_map_inspect_component.html.erb +3 -3
  41. data/app/components/geoblacklight/index_map_legend_component.html.erb +7 -7
  42. data/app/components/geoblacklight/index_map_legend_component.rb +7 -0
  43. data/app/components/geoblacklight/item_map_viewer_component.rb +8 -4
  44. data/app/components/geoblacklight/location_leaflet_map_component.rb +28 -15
  45. data/app/components/geoblacklight/login_link_component.rb +1 -1
  46. data/app/components/geoblacklight/relations_component.html.erb +2 -2
  47. data/app/components/geoblacklight/search_result_component.html.erb +28 -26
  48. data/app/components/geoblacklight/search_result_component.rb +2 -2
  49. data/app/components/geoblacklight/static_map_component.html.erb +1 -1
  50. data/app/components/geoblacklight/static_map_component.rb +5 -4
  51. data/app/components/geoblacklight/viewer_help_text_component.html.erb +1 -1
  52. data/app/components/geoblacklight/viewer_help_text_component.rb +1 -1
  53. data/app/components/geoblacklight/web_services_component.html.erb +1 -1
  54. data/app/components/geoblacklight/web_services_component.rb +1 -1
  55. data/app/components/geoblacklight/web_services_default_component.html.erb +6 -6
  56. data/app/components/geoblacklight/web_services_link_component.rb +12 -9
  57. data/app/components/geoblacklight/web_services_wfs_component.html.erb +4 -4
  58. data/app/components/geoblacklight/web_services_wms_component.html.erb +4 -4
  59. data/app/controllers/download_controller.rb +0 -1
  60. data/app/controllers/relation_controller.rb +1 -1
  61. data/app/controllers/wms_controller.rb +1 -1
  62. data/app/helpers/geoblacklight_helper.rb +1 -16
  63. data/app/javascript/geoblacklight/controllers/clipboard_controller.js +6 -6
  64. data/app/javascript/geoblacklight/controllers/downloads_controller.js +37 -29
  65. data/app/javascript/geoblacklight/controllers/leaflet_viewer_controller.js +108 -117
  66. data/app/javascript/geoblacklight/controllers/oembed_viewer_controller.js +5 -5
  67. data/app/javascript/geoblacklight/controllers/openlayers_viewer_controller.js +27 -30
  68. data/app/javascript/geoblacklight/controllers/search_results_controller.js +18 -18
  69. data/app/javascript/geoblacklight/core.js +33 -36
  70. data/app/javascript/geoblacklight/index.js +10 -10
  71. data/app/javascript/geoblacklight/initializers/metadata_download.js +23 -25
  72. data/app/javascript/geoblacklight/initializers/popovers.js +4 -4
  73. data/app/javascript/geoblacklight/initializers/tooltips.js +19 -23
  74. data/app/javascript/geoblacklight/initializers/truncation.js +18 -18
  75. data/app/javascript/geoblacklight/leaflet/basemaps.js +2 -3
  76. data/app/javascript/geoblacklight/leaflet/constants.js +7 -7
  77. data/app/javascript/geoblacklight/leaflet/controls/geosearch.js +80 -74
  78. data/app/javascript/geoblacklight/leaflet/controls/layer_opacity.js +74 -73
  79. data/app/javascript/geoblacklight/leaflet/controls/sidebar.js +31 -29
  80. data/app/javascript/geoblacklight/leaflet/controls/sleep.js +54 -51
  81. data/app/javascript/geoblacklight/leaflet/inspection.js +77 -68
  82. data/app/javascript/geoblacklight/leaflet/layer_index_map.js +74 -69
  83. data/app/javascript/geoblacklight/leaflet/layer_wmts.js +14 -16
  84. data/app/javascript/geoblacklight/leaflet/layers.js +59 -66
  85. data/app/javascript/geoblacklight/leaflet/utils.js +37 -43
  86. data/app/javascript/geoblacklight/openlayers/basemaps.js +35 -27
  87. data/app/javascript/geoblacklight/openlayers/inspection.js +23 -23
  88. data/app/javascript/geoblacklight/openlayers/layers.js +11 -11
  89. data/app/models/concerns/geoblacklight/bbox_filter_query.rb +7 -9
  90. data/app/models/concerns/geoblacklight/solr_document.rb +16 -39
  91. data/app/models/concerns/geoblacklight/suppressed_records_search_behavior.rb +3 -3
  92. data/app/views/catalog/_document_split.html.erb +3 -3
  93. data/app/views/catalog/_home_text.html.erb +22 -14
  94. data/app/views/catalog/_metadata.html.erb +1 -1
  95. data/app/views/catalog/index.html.erb +0 -1
  96. data/app/views/catalog/metadata/_markup.html.erb +1 -2
  97. data/app/views/catalog/metadata/_missing.html.erb +2 -2
  98. data/app/views/catalog/web_services.html.erb +1 -1
  99. data/app/views/relation/index.html.erb +4 -2
  100. data/app/views/relation/index.json.jbuilder +1 -1
  101. data/config/initializers/rails_config.rb +0 -3
  102. data/config/locales/geoblacklight.en.yml +79 -78
  103. data/geoblacklight.gemspec +1 -2
  104. data/lib/generators/geoblacklight/assets_generator.rb +35 -26
  105. data/lib/generators/geoblacklight/install_generator.rb +6 -11
  106. data/lib/generators/geoblacklight/templates/assets/customizations.css +6 -0
  107. data/lib/generators/geoblacklight/templates/catalog_controller.rb +97 -73
  108. data/lib/generators/geoblacklight/templates/settings.yml +159 -171
  109. data/lib/geoblacklight/configuration/case_insensitive_settings.rb +59 -0
  110. data/lib/geoblacklight/configuration/default_settings_builder.rb +18 -0
  111. data/lib/geoblacklight/configuration/display_note_shown_config.rb +13 -0
  112. data/lib/geoblacklight/configuration/fields_config.rb +51 -0
  113. data/lib/geoblacklight/configuration/layer_config.rb +28 -0
  114. data/lib/geoblacklight/configuration/leaflet_config.rb +69 -0
  115. data/lib/geoblacklight/configuration/leaflet_layers_config.rb +33 -0
  116. data/lib/geoblacklight/configuration/leaflet_sleep_config.rb +20 -0
  117. data/lib/geoblacklight/configuration/relationship_config.rb +15 -0
  118. data/lib/geoblacklight/configuration/relationships_config.rb +123 -0
  119. data/lib/geoblacklight/configuration/settings_builder.rb +118 -0
  120. data/lib/geoblacklight/configuration.rb +153 -0
  121. data/lib/geoblacklight/deprecation.rb +7 -0
  122. data/lib/geoblacklight/download.rb +2 -2
  123. data/lib/geoblacklight/engine.rb +7 -5
  124. data/lib/geoblacklight/metadata/base.rb +0 -2
  125. data/lib/geoblacklight/metadata_transformer.rb +0 -2
  126. data/lib/geoblacklight/references.rb +5 -4
  127. data/lib/geoblacklight/relation/ancestors.rb +3 -2
  128. data/lib/geoblacklight/relation/descendants.rb +2 -1
  129. data/lib/geoblacklight/relation/relation_response.rb +4 -4
  130. data/lib/geoblacklight/version.rb +1 -1
  131. data/lib/geoblacklight/wms_layer.rb +3 -3
  132. data/lib/geoblacklight.rb +7 -1
  133. data/package.json +10 -31
  134. data/schema/geoblacklight-schema-aardvark.json +1 -9
  135. data/schema/readme.md +3 -4
  136. data/solr/conf/_rest_managed.json +3 -2
  137. data/solr/conf/schema.xml +1 -1
  138. data/spec/components/geoblacklight/arcgis_component_spec.rb +6 -6
  139. data/spec/components/geoblacklight/attribute_table_component_spec.rb +6 -7
  140. data/spec/components/geoblacklight/citation_component_spec.rb +7 -4
  141. data/spec/components/geoblacklight/display_note_component_spec.rb +8 -8
  142. data/spec/components/geoblacklight/document/sidebar_component_spec.rb +48 -0
  143. data/spec/components/geoblacklight/document_component_spec.rb +13 -13
  144. data/spec/components/geoblacklight/download_links_component_spec.rb +17 -14
  145. data/spec/components/geoblacklight/header_icons_component_spec.rb +6 -11
  146. data/spec/components/geoblacklight/homepage_feature_facet_component_spec.rb +22 -30
  147. data/spec/components/geoblacklight/iiif_drag_drop_component_spec.rb +3 -3
  148. data/spec/components/geoblacklight/index_map_legend_component_spec.rb +5 -18
  149. data/spec/components/geoblacklight/item_map_viewer_component_spec.rb +5 -5
  150. data/spec/components/geoblacklight/login_link_component_spec.rb +5 -6
  151. data/spec/components/geoblacklight/search_result_component_spec.rb +2 -6
  152. data/spec/components/geoblacklight/static_map_component_spec.rb +2 -2
  153. data/spec/components/geoblacklight/viewer_help_text_component_spec.rb +4 -6
  154. data/spec/components/geoblacklight/web_services_component_spec.rb +11 -10
  155. data/spec/controllers/catalog_controller_spec.rb +7 -7
  156. data/spec/controllers/download_controller_spec.rb +1 -1
  157. data/spec/controllers/relation_controller_spec.rb +1 -1
  158. data/spec/controllers/wms_controller_spec.rb +1 -1
  159. data/spec/features/axe_spec.rb +4 -4
  160. data/spec/features/bookmarks_spec.rb +1 -1
  161. data/spec/features/citations_spec.rb +1 -1
  162. data/spec/features/configurable_basemap_spec.rb +1 -1
  163. data/spec/features/data_dictionary_download_spec.rb +1 -1
  164. data/spec/features/download_layer_spec.rb +1 -1
  165. data/spec/features/empty_search_spec.rb +1 -1
  166. data/spec/features/esri_viewer_spec.rb +1 -1
  167. data/spec/features/exports_spec.rb +1 -1
  168. data/spec/features/full_screen_control_spec.rb +3 -10
  169. data/spec/features/help_text_spec.rb +1 -1
  170. data/spec/features/home_page_spec.rb +1 -1
  171. data/spec/features/index_map_spec.rb +3 -3
  172. data/spec/features/index_view_spec.rb +7 -7
  173. data/spec/features/layer_inspection_spec.rb +1 -1
  174. data/spec/features/layer_opacity_spec.rb +1 -1
  175. data/spec/features/layer_preview_spec.rb +1 -1
  176. data/spec/features/layer_with_no_references_spec.rb +1 -1
  177. data/spec/features/linkified_attribute_table_spec.rb +1 -1
  178. data/spec/features/metadata_panel_spec.rb +1 -1
  179. data/spec/features/missing_metadata_spec.rb +1 -1
  180. data/spec/features/multiple_downloads_spec.rb +1 -1
  181. data/spec/features/oembed_spec.rb +1 -1
  182. data/spec/features/relations_spec.rb +2 -2
  183. data/spec/features/saved_searches_spec.rb +1 -1
  184. data/spec/features/search_bar_spec.rb +1 -1
  185. data/spec/features/search_results_complex_geometry_spec.rb +1 -1
  186. data/spec/features/search_results_icons_spec.rb +3 -4
  187. data/spec/features/search_results_map_spec.rb +1 -1
  188. data/spec/features/search_results_overlap_ratio_spec.rb +3 -3
  189. data/spec/features/search_spec.rb +1 -1
  190. data/spec/features/show_page_download_spec.rb +1 -1
  191. data/spec/features/show_page_metadata_spec.rb +2 -2
  192. data/spec/features/sms_spec.rb +1 -1
  193. data/spec/features/suppressed_records_spec.rb +1 -1
  194. data/spec/features/tilejson_spec.rb +1 -1
  195. data/spec/features/tms_spec.rb +1 -1
  196. data/spec/features/web_services_modal_spec.rb +1 -1
  197. data/spec/features/wmts_spec.rb +1 -1
  198. data/spec/features/xyz_spec.rb +1 -1
  199. data/spec/fixtures/manifests/tilejson.json +10 -19
  200. data/spec/fixtures/metadata/fgdc.html +1 -1
  201. data/spec/fixtures/metadata/iso.html +1 -1
  202. data/spec/fixtures/solr_documents/README.md +0 -1
  203. data/spec/fixtures/solr_documents/actual-papermap1.json +9 -28
  204. data/spec/fixtures/solr_documents/actual-point1.json +12 -39
  205. data/spec/fixtures/solr_documents/actual-polygon1.json +10 -30
  206. data/spec/fixtures/solr_documents/actual-raster1.json +14 -46
  207. data/spec/fixtures/solr_documents/all-relationships.json +12 -36
  208. data/spec/fixtures/solr_documents/b1g_iiif_manifest.json +33 -62
  209. data/spec/fixtures/solr_documents/b1g_wabash_child_15.json +13 -40
  210. data/spec/fixtures/solr_documents/b1g_wabash_child_16.json +13 -40
  211. data/spec/fixtures/solr_documents/b1g_wabash_child_17.json +13 -40
  212. data/spec/fixtures/solr_documents/b1g_wabash_child_18.json +13 -40
  213. data/spec/fixtures/solr_documents/b1g_wabash_parent.json +13 -40
  214. data/spec/fixtures/solr_documents/baruch_ancestor1.json +13 -40
  215. data/spec/fixtures/solr_documents/baruch_ancestor2.json +13 -40
  216. data/spec/fixtures/solr_documents/baruch_documentation_download.json +14 -46
  217. data/spec/fixtures/solr_documents/bbox-spans-180.json +7 -21
  218. data/spec/fixtures/solr_documents/complex-geom.json +11 -37
  219. data/spec/fixtures/solr_documents/cornell_html_metadata.json +12 -37
  220. data/spec/fixtures/solr_documents/display-note.json +11 -33
  221. data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +13 -39
  222. data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +13 -40
  223. data/spec/fixtures/solr_documents/esri-feature-layer.json +13 -39
  224. data/spec/fixtures/solr_documents/esri-image-map-layer.json +13 -40
  225. data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +16 -54
  226. data/spec/fixtures/solr_documents/esri-wms-layer.json +12 -36
  227. data/spec/fixtures/solr_documents/harvard_raster.json +12 -37
  228. data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +9 -27
  229. data/spec/fixtures/solr_documents/index-map-polygon-no-downloadurl.json +12 -41
  230. data/spec/fixtures/solr_documents/index-map-polygon.json +12 -41
  231. data/spec/fixtures/solr_documents/index-map-stanford.json +14 -45
  232. data/spec/fixtures/solr_documents/index-map-v1-complex.json +13 -38
  233. data/spec/fixtures/solr_documents/index_map_point.json +13 -42
  234. data/spec/fixtures/solr_documents/metadata_no_geom.json +4 -14
  235. data/spec/fixtures/solr_documents/metadata_no_provider.json +8 -25
  236. data/spec/fixtures/solr_documents/multiple-downloads.json +6 -18
  237. data/spec/fixtures/solr_documents/no_locn_geometry.json +4 -12
  238. data/spec/fixtures/solr_documents/no_spatial.json +4 -12
  239. data/spec/fixtures/solr_documents/oembed.json +8 -25
  240. data/spec/fixtures/solr_documents/princeton-child1.json +9 -29
  241. data/spec/fixtures/solr_documents/princeton-child2.json +9 -29
  242. data/spec/fixtures/solr_documents/princeton-child3.json +9 -29
  243. data/spec/fixtures/solr_documents/princeton-child4.json +9 -29
  244. data/spec/fixtures/solr_documents/princeton-parent.json +10 -33
  245. data/spec/fixtures/solr_documents/public_cog_princeton.json +9 -27
  246. data/spec/fixtures/solr_documents/public_iiif_princeton.json +13 -43
  247. data/spec/fixtures/solr_documents/public_pmtiles_princeton.json +29 -39
  248. data/spec/fixtures/solr_documents/public_polygon_mit.json +9 -30
  249. data/spec/fixtures/solr_documents/restricted-line.json +14 -47
  250. data/spec/fixtures/solr_documents/the-related-record.json +4 -12
  251. data/spec/fixtures/solr_documents/tilejson.json +23 -46
  252. data/spec/fixtures/solr_documents/tms.json +7 -21
  253. data/spec/fixtures/solr_documents/umn_metro_result1.json +13 -41
  254. data/spec/fixtures/solr_documents/umn_state_result1.json +13 -39
  255. data/spec/fixtures/solr_documents/umn_state_result2.json +13 -39
  256. data/spec/fixtures/solr_documents/uva_slug_colon.json +10 -30
  257. data/spec/fixtures/solr_documents/wmts-multiple.json +23 -39
  258. data/spec/fixtures/solr_documents/wmts-single-layer.json +23 -46
  259. data/spec/fixtures/solr_documents/xyz.json +10 -33
  260. data/spec/helpers/geoblacklight_helper_spec.rb +5 -50
  261. data/spec/javascripts/geoblacklight_spec.js +10 -10
  262. data/spec/javascripts/metadata_download_button_spec.js +14 -13
  263. data/spec/lib/geoblacklight/bounding_box_spec.rb +1 -1
  264. data/spec/lib/geoblacklight/configuration/default_settings_builder_spec.rb +9 -0
  265. data/spec/lib/geoblacklight/configuration/layer_config_spec.rb +71 -0
  266. data/spec/lib/geoblacklight/configuration/leaflet_layers_config_spec.rb +63 -0
  267. data/spec/lib/geoblacklight/configuration/settings_builder_spec.rb +177 -0
  268. data/spec/lib/geoblacklight/configuration_spec.rb +48 -0
  269. data/spec/lib/geoblacklight/download/csv_download_spec.rb +2 -2
  270. data/spec/lib/geoblacklight/download/geojson_download_spec.rb +2 -2
  271. data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +5 -2
  272. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +2 -2
  273. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +2 -2
  274. data/spec/lib/geoblacklight/download_spec.rb +15 -6
  275. data/spec/lib/geoblacklight/geometry_spec.rb +1 -1
  276. data/spec/lib/geoblacklight/item_viewer_spec.rb +2 -2
  277. data/spec/lib/geoblacklight/metadata/base_spec.rb +1 -1
  278. data/spec/lib/geoblacklight/metadata/html_spec.rb +1 -1
  279. data/spec/lib/geoblacklight/metadata_spec.rb +1 -1
  280. data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +1 -1
  281. data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +1 -1
  282. data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +1 -1
  283. data/spec/lib/geoblacklight/metadata_transformer_spec.rb +1 -1
  284. data/spec/lib/geoblacklight/reference_spec.rb +1 -1
  285. data/spec/lib/geoblacklight/references_spec.rb +6 -4
  286. data/spec/lib/geoblacklight/relation/ancestors_spec.rb +10 -4
  287. data/spec/lib/geoblacklight/relation/descendants_spec.rb +9 -4
  288. data/spec/lib/geoblacklight/relation/relation_response_spec.rb +16 -19
  289. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +1 -1
  290. data/spec/lib/geoblacklight/wms_layer_spec.rb +1 -1
  291. data/spec/models/concerns/geoblacklight/bbox_filter_query_spec.rb +20 -11
  292. data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -1
  293. data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +1 -1
  294. data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +1 -1
  295. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +4 -39
  296. data/spec/models/concerns/geoblacklight/suppressed_records_search_behavior_spec.rb +2 -2
  297. data/spec/routing/catalog_routing_spec.rb +1 -1
  298. data/spec/spec_helper.rb +26 -10
  299. data/spec/tasks/geoblacklight_spec.rb +1 -1
  300. data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -3
  301. metadata +44 -187
  302. data/Procfile.dev +0 -3
  303. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +0 -2
  304. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +0 -31
  305. data/app/assets/stylesheets/geoblacklight/modules/_blacklight_overrides.scss +0 -40
  306. data/app/assets/stylesheets/geoblacklight/modules/_styles.scss +0 -9
  307. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +0 -62
  308. data/app/assets/stylesheets/geoblacklight/modules/geosearch.scss +0 -23
  309. data/app/assets/stylesheets/geoblacklight/modules/home.scss +0 -13
  310. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +0 -116
  311. data/app/assets/stylesheets/geoblacklight/modules/index_maps.scss +0 -61
  312. data/app/assets/stylesheets/geoblacklight/modules/item.scss +0 -78
  313. data/app/assets/stylesheets/geoblacklight/modules/layer_opacity.scss +0 -87
  314. data/app/assets/stylesheets/geoblacklight/modules/leaflet.scss +0 -4
  315. data/app/assets/stylesheets/geoblacklight/modules/metadata.scss +0 -31
  316. data/app/assets/stylesheets/geoblacklight/modules/metadata_content.scss +0 -43
  317. data/app/assets/stylesheets/geoblacklight/modules/metadata_markup.scss +0 -9
  318. data/app/assets/stylesheets/geoblacklight/modules/metadata_missing.scss +0 -7
  319. data/app/assets/stylesheets/geoblacklight/modules/modal.scss +0 -5
  320. data/app/assets/stylesheets/geoblacklight/modules/results.scss +0 -60
  321. data/app/assets/stylesheets/geoblacklight/modules/search_widgets.scss +0 -5
  322. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +0 -42
  323. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +0 -34
  324. data/app/assets/stylesheets/geoblacklight/modules/web_services.scss +0 -5
  325. data/app/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component.rb +0 -46
  326. data/app/components/blacklight/icons/arizona_component.rb +0 -24
  327. data/app/components/blacklight/icons/baruch_cuny_component.rb +0 -23
  328. data/app/components/blacklight/icons/bookmark_component.rb +0 -23
  329. data/app/components/blacklight/icons/circle_info_solid_component.rb +0 -23
  330. data/app/components/blacklight/icons/columbia_component.rb +0 -23
  331. data/app/components/blacklight/icons/cornell_component.rb +0 -25
  332. data/app/components/blacklight/icons/george_mason_component.rb +0 -24
  333. data/app/components/blacklight/icons/harvard_component.rb +0 -23
  334. data/app/components/blacklight/icons/indiana_component.rb +0 -23
  335. data/app/components/blacklight/icons/lewis_clark_component.rb +0 -25
  336. data/app/components/blacklight/icons/massgis_component.rb +0 -23
  337. data/app/components/blacklight/icons/michigan_state_university_component.rb +0 -25
  338. data/app/components/blacklight/icons/mit_component.rb +0 -23
  339. data/app/components/blacklight/icons/northwestern_university_component.rb +0 -24
  340. data/app/components/blacklight/icons/nyu_component.rb +0 -26
  341. data/app/components/blacklight/icons/pennsylvania_state_university_component.rb +0 -25
  342. data/app/components/blacklight/icons/princeton_component.rb +0 -23
  343. data/app/components/blacklight/icons/purdue_university_component.rb +0 -25
  344. data/app/components/blacklight/icons/rutgers_component.rb +0 -25
  345. data/app/components/blacklight/icons/sms_component.rb +0 -23
  346. data/app/components/blacklight/icons/stanford_component.rb +0 -23
  347. data/app/components/blacklight/icons/texas_component.rb +0 -23
  348. data/app/components/blacklight/icons/the_ohio_state_university_component.rb +0 -26
  349. data/app/components/blacklight/icons/tufts_component.rb +0 -23
  350. data/app/components/blacklight/icons/ucla_component.rb +0 -23
  351. data/app/components/blacklight/icons/university_of_california_berkeley_component.rb +0 -24
  352. data/app/components/blacklight/icons/university_of_chicago_component.rb +0 -25
  353. data/app/components/blacklight/icons/university_of_colorado_boulder_component.rb +0 -26
  354. data/app/components/blacklight/icons/university_of_illinois_urbana_champaign_component.rb +0 -25
  355. data/app/components/blacklight/icons/university_of_iowa_component.rb +0 -24
  356. data/app/components/blacklight/icons/university_of_maryland_component.rb +0 -24
  357. data/app/components/blacklight/icons/university_of_michigan_component.rb +0 -24
  358. data/app/components/blacklight/icons/university_of_minnesota_component.rb +0 -24
  359. data/app/components/blacklight/icons/university_of_nebraska_lincoln_component.rb +0 -27
  360. data/app/components/blacklight/icons/university_of_wisconsin_madison_component.rb +0 -24
  361. data/app/components/blacklight/icons/uva_component.rb +0 -23
  362. data/app/components/geoblacklight/icon_facet_item_component.rb +0 -33
  363. data/app/components/geoblacklight/web_services_link_component.html.erb +0 -3
  364. data/app/javascript/geoblacklight/initializers/relations.js +0 -40
  365. data/app/views/catalog/_relations_container.html.erb +0 -1
  366. data/bin/vite +0 -29
  367. data/config/initializers/new_gbl_settings_defaults_4.1.yml +0 -104
  368. data/lib/generators/geoblacklight/assets/importmap_generator.rb +0 -73
  369. data/lib/generators/geoblacklight/assets/vite_generator.rb +0 -89
  370. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +0 -23
  371. data/lib/generators/geoblacklight/templates/assets/application.js +0 -17
  372. data/lib/generators/geoblacklight/templates/assets/application.scss +0 -9
  373. data/lib/generators/geoblacklight/templates/assets/geoblacklight.scss +0 -11
  374. data/lib/generators/geoblacklight/templates/base.html.erb +0 -46
  375. data/lib/generators/geoblacklight/templates/vite.config.ts +0 -23
  376. data/lib/generators/geoblacklight/templates/vite.json +0 -16
  377. data/schema/geoblacklight-schema-1.0.json +0 -214
  378. data/solr/conf/xslt/example.xsl +0 -132
  379. data/solr/conf/xslt/example_atom.xsl +0 -67
  380. data/solr/conf/xslt/example_rss.xsl +0 -66
  381. data/solr/conf/xslt/luke.xsl +0 -337
  382. data/spec/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component_spec.rb +0 -15
  383. data/spec/components/blacklight/icons/arizona_component_spec.rb +0 -15
  384. data/spec/components/blacklight/icons/arrow_circle_down_component_spec.rb +0 -15
  385. data/spec/components/blacklight/icons/baruch_cuny_component_spec.rb +0 -15
  386. data/spec/components/blacklight/icons/book_component_spec.rb +0 -15
  387. data/spec/components/blacklight/icons/bookmark_component_spec.rb +0 -15
  388. data/spec/components/blacklight/icons/cd_rom_component_spec.rb +0 -15
  389. data/spec/components/blacklight/icons/child_item_component_spec.rb +0 -15
  390. data/spec/components/blacklight/icons/circle_info_solid_component_spec.rb +0 -15
  391. data/spec/components/blacklight/icons/citation_component_spec.rb +0 -15
  392. data/spec/components/blacklight/icons/collection_component_spec.rb +0 -15
  393. data/spec/components/blacklight/icons/collections_component_spec.rb +0 -15
  394. data/spec/components/blacklight/icons/columbia_component_spec.rb +0 -15
  395. data/spec/components/blacklight/icons/cornell_component_spec.rb +0 -15
  396. data/spec/components/blacklight/icons/datasets_component_spec.rb +0 -15
  397. data/spec/components/blacklight/icons/dvd_rom_component_spec.rb +0 -15
  398. data/spec/components/blacklight/icons/email_component_spec.rb +0 -15
  399. data/spec/components/blacklight/icons/esri_globe_component_spec.rb +0 -15
  400. data/spec/components/blacklight/icons/fire_solid_component_spec.rb +0 -15
  401. data/spec/components/blacklight/icons/george_mason_component_spec.rb +0 -15
  402. data/spec/components/blacklight/icons/globe_component_spec.rb +0 -15
  403. data/spec/components/blacklight/icons/harvard_component_spec.rb +0 -15
  404. data/spec/components/blacklight/icons/home_component_spec.rb +0 -15
  405. data/spec/components/blacklight/icons/iiif_drag_drop_component_spec.rb +0 -15
  406. data/spec/components/blacklight/icons/image_component_spec.rb +0 -15
  407. data/spec/components/blacklight/icons/imagery_component_spec.rb +0 -15
  408. data/spec/components/blacklight/icons/indiana_component_spec.rb +0 -15
  409. data/spec/components/blacklight/icons/leaf_component_spec.rb +0 -15
  410. data/spec/components/blacklight/icons/lewis_clark_component_spec.rb +0 -15
  411. data/spec/components/blacklight/icons/lightbulb_solid_component_spec.rb +0 -15
  412. data/spec/components/blacklight/icons/line_component_spec.rb +0 -15
  413. data/spec/components/blacklight/icons/map_component_spec.rb +0 -15
  414. data/spec/components/blacklight/icons/map_marker_component_spec.rb +0 -15
  415. data/spec/components/blacklight/icons/maps_component_spec.rb +0 -15
  416. data/spec/components/blacklight/icons/massgis_component_spec.rb +0 -15
  417. data/spec/components/blacklight/icons/metadata_component_spec.rb +0 -15
  418. data/spec/components/blacklight/icons/michigan_state_university_component_spec.rb +0 -15
  419. data/spec/components/blacklight/icons/mit_component_spec.rb +0 -15
  420. data/spec/components/blacklight/icons/mixed_component_spec.rb +0 -15
  421. data/spec/components/blacklight/icons/multilinestring_component_spec.rb +0 -15
  422. data/spec/components/blacklight/icons/multipoint_component_spec.rb +0 -15
  423. data/spec/components/blacklight/icons/multipolygon_component_spec.rb +0 -15
  424. data/spec/components/blacklight/icons/northwestern_university_component_spec.rb +0 -15
  425. data/spec/components/blacklight/icons/nyu_component_spec.rb +0 -15
  426. data/spec/components/blacklight/icons/pagelines_brands_component_spec.rb +0 -15
  427. data/spec/components/blacklight/icons/paper_map_component_spec.rb +0 -15
  428. data/spec/components/blacklight/icons/parent_item_component_spec.rb +0 -15
  429. data/spec/components/blacklight/icons/pennsylvania_state_university_component_spec.rb +0 -15
  430. data/spec/components/blacklight/icons/point_component_spec.rb +0 -15
  431. data/spec/components/blacklight/icons/polygon_component_spec.rb +0 -15
  432. data/spec/components/blacklight/icons/polyline_component_spec.rb +0 -15
  433. data/spec/components/blacklight/icons/princeton_component_spec.rb +0 -15
  434. data/spec/components/blacklight/icons/public_component_spec.rb +0 -15
  435. data/spec/components/blacklight/icons/purdue_university_component_spec.rb +0 -15
  436. data/spec/components/blacklight/icons/raster_component_spec.rb +0 -15
  437. data/spec/components/blacklight/icons/restricted_component_spec.rb +0 -15
  438. data/spec/components/blacklight/icons/rutgers_component_spec.rb +0 -15
  439. data/spec/components/blacklight/icons/sms_component_spec.rb +0 -15
  440. data/spec/components/blacklight/icons/stanford_component_spec.rb +0 -15
  441. data/spec/components/blacklight/icons/table_component_spec.rb +0 -15
  442. data/spec/components/blacklight/icons/tags_component_spec.rb +0 -15
  443. data/spec/components/blacklight/icons/texas_component_spec.rb +0 -15
  444. data/spec/components/blacklight/icons/the_ohio_state_university_component_spec.rb +0 -15
  445. data/spec/components/blacklight/icons/triangle_exclamation_solid_component_spec.rb +0 -15
  446. data/spec/components/blacklight/icons/tufts_component_spec.rb +0 -15
  447. data/spec/components/blacklight/icons/ucla_component_spec.rb +0 -15
  448. data/spec/components/blacklight/icons/university_of_california_berkeley_component_spec.rb +0 -15
  449. data/spec/components/blacklight/icons/university_of_chicago_component_spec.rb +0 -15
  450. data/spec/components/blacklight/icons/university_of_colorado_boulder_component_spec.rb +0 -15
  451. data/spec/components/blacklight/icons/university_of_illinois_urbana_champaign_component_spec.rb +0 -15
  452. data/spec/components/blacklight/icons/university_of_iowa_component_spec.rb +0 -15
  453. data/spec/components/blacklight/icons/university_of_maryland_component_spec.rb +0 -15
  454. data/spec/components/blacklight/icons/university_of_michigan_component_spec.rb +0 -15
  455. data/spec/components/blacklight/icons/university_of_minnesota_component_spec.rb +0 -15
  456. data/spec/components/blacklight/icons/university_of_nebraska_lincoln_component_spec.rb +0 -15
  457. data/spec/components/blacklight/icons/university_of_wisconsin_madison_component_spec.rb +0 -15
  458. data/spec/components/blacklight/icons/uva_component_spec.rb +0 -15
  459. data/spec/components/blacklight/icons/web_services_component_spec.rb +0 -15
  460. data/spec/components/blacklight/icons/websites_component_spec.rb +0 -15
  461. data/spec/components/geoblacklight/icon_facet_item_component_spec.rb +0 -18
  462. data/spec/config/initializers/rails_config_spec.rb +0 -16
  463. data/spec/features/show_page_sidebar_static_map_spec.rb +0 -21
  464. data/spec/fixtures/solr_documents/public_direct_download.json +0 -62
  465. data/spec/support/backport_test_helpers.rb +0 -47
  466. data/spec/support/view_component_capybara_test_helpers.rb +0 -8
  467. data/vite.config.ts +0 -32
  468. /data/app/assets/images/{blacklight → geoblacklight}/logo.svg +0 -0
@@ -3,38 +3,30 @@
3
3
  require "spec_helper"
4
4
 
5
5
  RSpec.describe Geoblacklight::HomepageFeatureFacetComponent, type: :component do
6
- subject(:rendered) do
7
- render_inline_to_capybara_node(described_class.new(**kargs))
8
- end
9
-
10
6
  # Build a search
11
- let(:context) { {whatever: :value} }
12
- let(:service) { Blacklight::SearchService.new(config: blacklight_config, user_params: user_params, **context) }
13
- let(:repository) { Blacklight::Solr::Repository.new(blacklight_config) }
14
- let(:user_params) { {} }
15
- let(:blacklight_config) { Blacklight::Configuration.new }
16
- let(:copy_of_catalog_config) { ::CatalogController.blacklight_config.deep_copy }
17
- let(:blacklight_solr) { RSolr.connect(Blacklight.connection_config.except(:adapter)) }
7
+ let(:service) { Blacklight::SearchService.new(config: blacklight_config, search_state:) }
8
+ let(:search_state) { Blacklight::SearchState.new({}, blacklight_config) }
9
+ let(:blacklight_config) { ::CatalogController.blacklight_config.deep_copy }
10
+ let(:facet_field) { Geoblacklight.configuration.fields.provider }
11
+ let(:facet_config) { blacklight_config.facet_fields[facet_field] }
12
+ let(:facet_field_presenter) { Blacklight::FacetFieldPresenter.new(facet_config, nil, vc_test_controller.view_context, nil) }
13
+ let(:response) { service.search_results }
14
+ let(:items) { response.aggregations[facet_field].items }
18
15
 
19
- describe "homepage" do
20
- before do
21
- (@response, @document_list) = service.search_results
22
- end
23
-
24
- let(:kargs) do
25
- {
26
- icon: "home",
27
- label: "geoblacklight.home.institution",
28
- facet_field: Settings.FIELDS.PROVIDER,
29
- response: @response
30
- }
31
- end
16
+ subject(:instance) do
17
+ described_class.new(
18
+ icon: "home",
19
+ label: "geoblacklight.home.institution",
20
+ facet_field_presenter: facet_field_presenter,
21
+ items: items
22
+ )
23
+ end
32
24
 
33
- it "includes facet links" do
34
- expect(rendered).to have_selector("div.category-block")
35
- expect(rendered).to have_selector("div.category-icon")
36
- expect(rendered).to have_selector("a.home-facet-link")
37
- expect(rendered).to have_selector("a.more_facets_link")
38
- end
25
+ it "includes facet links" do
26
+ render_inline(instance)
27
+ expect(page).to have_selector("div.category-block")
28
+ expect(page).to have_selector("div.category-icon")
29
+ expect(page).to have_selector("a.home-facet-link")
30
+ expect(page).to have_selector("a.more_facets_link")
39
31
  end
40
32
  end
@@ -8,7 +8,6 @@ RSpec.describe Geoblacklight::IiifDragDropComponent, type: :component do
8
8
  let(:item_viewer) { instance_double(Geoblacklight::ItemViewer, iiif_manifest: reference) }
9
9
  let(:document) { instance_double(SolrDocument, id: 123, item_viewer: item_viewer) }
10
10
  let(:component) { described_class.new(document: document) }
11
- let(:rendered) { render_inline_to_capybara_node(component) }
12
11
 
13
12
  context "does not have viewer_endpoint url" do
14
13
  let(:endpoint) { nil }
@@ -21,9 +20,10 @@ RSpec.describe Geoblacklight::IiifDragDropComponent, type: :component do
21
20
  context "has viewer_endpoint url" do
22
21
  let(:endpoint) { "https://url.com/manifest.json" }
23
22
  it "renders iiif drag and drop icon" do
23
+ render_inline(component)
24
24
  expect(component.render?).to be true
25
- expect(rendered).to have_selector(:css, ".blacklight-icons-iiif-drag-drop")
26
- expect(rendered).to have_selector(:css, "a[href='https://url.com/manifest.json?manifest=https://url.com/manifest.json']")
25
+ expect(page).to have_selector(:css, ".blacklight-icons-iiif-drag-drop")
26
+ expect(page).to have_selector(:css, "a[href='https://url.com/manifest.json?manifest=https://url.com/manifest.json']")
27
27
  end
28
28
  end
29
29
  end
@@ -5,28 +5,14 @@ require "spec_helper"
5
5
  RSpec.describe Geoblacklight::IndexMapLegendComponent, type: :component do
6
6
  let(:document) { instance_double(SolrDocument) }
7
7
 
8
- subject(:rendered) do
9
- render_inline_to_capybara_node(described_class.new(document:))
10
- end
11
-
12
8
  context "when the document has an index map" do
13
9
  before do
14
10
  allow(document).to receive_message_chain(:item_viewer, :index_map).and_return(true)
15
11
  end
16
12
 
17
- it "shows available map text" do
18
- expect(rendered).to have_text("Green tile indicates")
19
- expect(rendered).to have_selector(:css, ".index-map-legend-default")
20
- end
21
-
22
- it "shows unavailable map text" do
23
- expect(rendered).to have_text("Yellow tile indicates")
24
- expect(rendered).to have_selector(:css, ".index-map-legend-unavailable")
25
- end
26
-
27
- it "shows selected map text" do
28
- expect(rendered).to have_text("Blue tile indicates")
29
- expect(rendered).to have_selector(:css, ".index-map-legend-selected")
13
+ it "renders the legend" do
14
+ render_inline(described_class.new(document:))
15
+ expect(page.text.strip).to include "Green tile indicates Map held by collection"
30
16
  end
31
17
  end
32
18
 
@@ -36,7 +22,8 @@ RSpec.describe Geoblacklight::IndexMapLegendComponent, type: :component do
36
22
  end
37
23
 
38
24
  it "does not render" do
39
- expect(rendered.text.strip).to be_empty
25
+ render_inline(described_class.new(document:))
26
+ expect(page.text.strip).to be_empty
40
27
  end
41
28
  end
42
29
  end
@@ -3,8 +3,8 @@
3
3
  require "spec_helper"
4
4
 
5
5
  RSpec.describe Geoblacklight::ItemMapViewerComponent, type: :component do
6
- subject(:rendered) do
7
- render_inline_to_capybara_node(described_class.new(document:))
6
+ before do
7
+ render_inline(described_class.new(document: document))
8
8
  end
9
9
 
10
10
  context "IIIF viewer" do
@@ -12,7 +12,7 @@ RSpec.describe Geoblacklight::ItemMapViewerComponent, type: :component do
12
12
  let(:document) { SolrDocument.new(fixture) }
13
13
 
14
14
  it "uses the IIIF tag" do
15
- expect(rendered).to have_css("div#mirador")
15
+ expect(page).to have_css("div#mirador")
16
16
  end
17
17
  end
18
18
 
@@ -21,7 +21,7 @@ RSpec.describe Geoblacklight::ItemMapViewerComponent, type: :component do
21
21
  let(:document) { SolrDocument.new(fixture) }
22
22
 
23
23
  it "uses the open layers tag" do
24
- expect(rendered).to have_css("div#openlayers-viewer")
24
+ expect(page).to have_css("div#openlayers-viewer")
25
25
  end
26
26
  end
27
27
 
@@ -30,7 +30,7 @@ RSpec.describe Geoblacklight::ItemMapViewerComponent, type: :component do
30
30
  let(:document) { SolrDocument.new(fixture) }
31
31
 
32
32
  it "uses the IIIF tag" do
33
- expect(rendered).to have_css("div#leaflet-viewer")
33
+ expect(page).to have_css("div#leaflet-viewer")
34
34
  end
35
35
  end
36
36
  end
@@ -3,20 +3,18 @@
3
3
  require "spec_helper"
4
4
 
5
5
  RSpec.describe Geoblacklight::LoginLinkComponent, type: :component do
6
- subject(:rendered) do
7
- render_inline_to_capybara_node(described_class.new(document: document))
8
- end
9
6
  let(:document) { instance_double(SolrDocument, id: 123) }
10
7
 
11
8
  context "when rendering is required" do
12
9
  before do
13
- allow_any_instance_of(GeoblacklightHelper).to receive(:document_available?).and_return(false)
10
+ allow(vc_test_controller).to receive(:user_signed_in?).and_return(false)
14
11
  allow(document).to receive(:restricted?).and_return(true)
15
12
  allow(document).to receive(:same_institution?).and_return(true)
16
13
  end
17
14
 
18
15
  it "shows download link" do
19
- expect(rendered).to have_text(I18n.t("geoblacklight.tools.login_to_view"))
16
+ render_inline(described_class.new(document: document))
17
+ expect(page).to have_text(I18n.t("geoblacklight.tools.login_to_view"))
20
18
  end
21
19
  end
22
20
 
@@ -27,7 +25,8 @@ RSpec.describe Geoblacklight::LoginLinkComponent, type: :component do
27
25
  end
28
26
 
29
27
  it "does not render anything" do
30
- expect(rendered).not_to have_text(I18n.t("geoblacklight.tools.login_to_view"))
28
+ render_inline(described_class.new(document: document))
29
+ expect(page).not_to have_text(I18n.t("geoblacklight.tools.login_to_view"))
31
30
  end
32
31
  end
33
32
  end
@@ -12,7 +12,6 @@ RSpec.describe Geoblacklight::SearchResultComponent, type: :component do
12
12
  config.add_index_field "multi_display"
13
13
  end
14
14
  end
15
- let(:solr_fields) { Settings.FIELDS }
16
15
  let(:presenter) do
17
16
  Blacklight::DocumentPresenter.new(document, request_context, blacklight_config)
18
17
  end
@@ -26,21 +25,18 @@ RSpec.describe Geoblacklight::SearchResultComponent, type: :component do
26
25
  multi_display: %w[blue blah]
27
26
  )
28
27
  end
29
- subject(:rendered) do
30
- render_inline_to_capybara_node(described_class.new(document: presenter))
31
- end
32
-
33
28
  before do
34
29
  allow(request_context).to receive(:snippit)
35
30
  allow_any_instance_of(BlacklightHelper).to receive(:link_to_document)
36
31
  allow_any_instance_of(GeoblacklightHelper).to receive(:blacklight_config).and_return(blacklight_config)
32
+ render_inline(described_class.new(document: presenter))
37
33
  end
38
34
 
39
35
  describe "#index_fields_display" do
40
36
  let(:multi_valued_text) { document["multi_display"].join(" and ") }
41
37
  let(:combined_fields) { document["gbl_wxsIdentifier_s"] + ". " + document["period"] }
42
38
 
43
- subject(:index_fields_display) { rendered.find("[itemprop=description]").text }
39
+ subject(:index_fields_display) { page.find("[itemprop=description]").text }
44
40
 
45
41
  context "with multi-valued field" do
46
42
  it "each value is separated by comma" do
@@ -11,10 +11,10 @@ RSpec.describe Geoblacklight::StaticMapComponent, type: :component do
11
11
 
12
12
  before do
13
13
  allow(document).to receive(:viewer_protocol).and_return("map")
14
- allow(Settings).to receive(:SIDEBAR_STATIC_MAP).and_return(["map"])
14
+ allow(Geoblacklight.configuration).to receive(:sidebar_static_map).and_return(["map"])
15
15
  end
16
16
 
17
- context "when the protocol matches the SIDEBAR_STATIC_MAP setting" do
17
+ context "when the protocol matches the sidebar_static_map setting" do
18
18
  it "renders the static map" do
19
19
  expect(rendered.css("#static-map")).to be_present
20
20
  end
@@ -6,13 +6,10 @@ RSpec.describe Geoblacklight::ViewerHelpTextComponent, type: :component do
6
6
  let(:feature) { "viewer_protocol" }
7
7
  let(:key) { "wms" }
8
8
 
9
- subject(:rendered) do
10
- render_inline_to_capybara_node(described_class.new(feature, key))
11
- end
12
-
13
9
  context "when the help text exists for an existing viewer protocol" do
14
10
  it "shows correct help text title for wms" do
15
- expect(rendered).to have_text(I18n.t("geoblacklight.help_text.viewer_protocol.wms.title"))
11
+ render_inline(described_class.new(feature, key))
12
+ expect(page).to have_text(I18n.t("geoblacklight.help_text.viewer_protocol.wms.title"))
16
13
  end
17
14
  end
18
15
 
@@ -22,7 +19,8 @@ RSpec.describe Geoblacklight::ViewerHelpTextComponent, type: :component do
22
19
  end
23
20
 
24
21
  it "shows missing help text class" do
25
- expect(render_inline_to_capybara_node(described_class.new(feature, key))).to have_css(".translation-missing")
22
+ render_inline(described_class.new(feature, key))
23
+ expect(page).to have_css(".translation-missing")
26
24
  end
27
25
  end
28
26
  end
@@ -6,33 +6,34 @@ RSpec.describe Geoblacklight::WebServicesComponent, type: :component do
6
6
  let(:document) { instance_double(SolrDocument, id: 123, wxs_identifier: "wxs_identifier") }
7
7
  let(:ref) { instance_double(Geoblacklight::Reference, type: type, endpoint: "endpoint") }
8
8
  let(:component) { described_class.new(document: document, ref: ref) }
9
- subject(:rendered) do
10
- render_inline_to_capybara_node(component)
9
+
10
+ before do
11
+ render_inline(component)
11
12
  end
12
13
 
13
14
  context "when wms is rendered" do
14
15
  let(:type) { "wms" }
15
16
  it "shows the web mapping service and layers" do
16
- expect(rendered).to have_text("Web Mapping Service (WMS)")
17
- expect(rendered).to have_text("WMS layers")
18
- expect(rendered).to have_css(".web-services-form")
17
+ expect(page).to have_text("Web Mapping Service (WMS)")
18
+ expect(page).to have_text("WMS layers")
19
+ expect(page).to have_css(".web-services-form")
19
20
  end
20
21
  end
21
22
 
22
23
  context "when wfs is rendered" do
23
24
  let(:type) { "wfs" }
24
25
  it "shows the web mapping service and typeNames" do
25
- expect(rendered).to have_text("Web Feature Service (WFS)")
26
- expect(rendered).to have_text("WFS typeNames")
27
- expect(rendered).to have_css(".web-services-form")
26
+ expect(page).to have_text("Web Feature Service (WFS)")
27
+ expect(page).to have_text("WFS typeNames")
28
+ expect(page).to have_css(".web-services-form")
28
29
  end
29
30
  end
30
31
 
31
32
  context "when iiif is rendered" do
32
33
  let(:type) { "iiif" }
33
34
  it "shows the service" do
34
- expect(rendered).to have_text("International Image Interoperability Framework (IIIF)")
35
- expect(rendered).to have_css(".web-services-form")
35
+ expect(page).to have_text("International Image Interoperability Framework (IIIF)")
36
+ expect(page).to have_css(".web-services-form")
36
37
  end
37
38
  end
38
39
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe CatalogController, type: :controller do
5
+ RSpec.describe CatalogController, type: :controller do
6
6
  describe "#web_services" do
7
7
  it "returns a document based off an id" do
8
8
  get :web_services, params: {id: "mit-f6rqs4ucovjk2"}
@@ -73,12 +73,12 @@ describe CatalogController, type: :controller do
73
73
  expect(response.body).not_to be_empty
74
74
  response_values = JSON.parse(response.body)
75
75
  expect(response_values).to include "gbl_mdVersion_s" => "Aardvark"
76
- expect(response_values).to include Settings.FIELDS.TITLE => "100 Foot Grid Cambridge MA 2004"
77
- expect(response_values).to include Settings.FIELDS.IDENTIFIER => ["urn:geodata.tufts.edu:Tufts.CambridgeGrid100_04"]
78
- expect(response_values).to include Settings.FIELDS.ACCESS_RIGHTS => "Public"
79
- expect(response_values).to include Settings.FIELDS.PROVIDER => "Tufts"
80
- expect(response_values).to include Settings.FIELDS.ID => "tufts-cambridgegrid100-04"
81
- expect(response_values).to include Settings.FIELDS.GEOMETRY => "ENVELOPE(-71.163984,-71.052581,42.408316,42.34757)"
76
+ expect(response_values).to include Geoblacklight.configuration.fields.title => "100 Foot Grid Cambridge MA 2004"
77
+ expect(response_values).to include Geoblacklight.configuration.fields.identifier => ["urn:geodata.tufts.edu:Tufts.CambridgeGrid100_04"]
78
+ expect(response_values).to include Geoblacklight.configuration.fields.access_rights => "Public"
79
+ expect(response_values).to include Geoblacklight.configuration.fields.provider => "Tufts"
80
+ expect(response_values).to include Geoblacklight.configuration.fields.id => "tufts-cambridgegrid100-04"
81
+ expect(response_values).to include Geoblacklight.configuration.fields.geometry => "ENVELOPE(-71.163984,-71.052581,42.408316,42.34757)"
82
82
  end
83
83
  end
84
84
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe DownloadController, type: :controller do
5
+ RSpec.describe DownloadController, type: :controller do
6
6
  describe "#file" do
7
7
  describe "restricted file" do
8
8
  it "redirects to login for authentication" do
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe RelationController, type: :controller do
5
+ RSpec.describe RelationController, type: :controller do
6
6
  describe "#index" do
7
7
  it "returns a listing of related documents for a record" do
8
8
  get :index, params: {id: "nyu_2451_34502"}
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe WmsController, type: :controller do
5
+ RSpec.describe WmsController, type: :controller do
6
6
  let(:wms_layer) { instance_double(Geoblacklight::WmsLayer) }
7
7
  let(:feature_info) { {values: ["fid", "layer:example"]} }
8
8
  let(:params) do
@@ -3,7 +3,7 @@
3
3
  require "axe-rspec"
4
4
  require "spec_helper"
5
5
 
6
- feature "Accessibility testing", js: true do
6
+ RSpec.feature "Accessibility testing", js: true do
7
7
  context "logged out tests" do
8
8
  it "validates the home page" do
9
9
  visit root_path
@@ -23,7 +23,7 @@ feature "Accessibility testing", js: true do
23
23
 
24
24
  it "validates an bookmarks page" do
25
25
  visit solr_document_path("tufts-cambridgegrid100-04")
26
- find(".checkbox.toggle-bookmark").click
26
+ click_on "Bookmark"
27
27
  visit bookmarks_path
28
28
  expect(page).to be_accessible
29
29
  end
@@ -52,9 +52,9 @@ feature "Accessibility testing", js: true do
52
52
  expect(page).to be_accessible
53
53
  end
54
54
 
55
- it "validates an bookmarks page" do
55
+ it "validates the bookmarks page" do
56
56
  visit solr_document_path("nyu_2451_34502")
57
- find(".checkbox.toggle-bookmark").click
57
+ click_on "Bookmark"
58
58
  visit "/bookmarks"
59
59
  expect(page).to be_accessible
60
60
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Blacklight Bookmarks" do
5
+ RSpec.feature "Blacklight Bookmarks" do
6
6
  scenario "index has created bookmarks" do
7
7
  visit solr_document_path "harvard-g7064-s2-1834-k3"
8
8
  click_button "Bookmark"
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Blacklight Citation" do
5
+ RSpec.feature "Blacklight Citation" do
6
6
  scenario "citations can be copied", js: true do
7
7
  sign_in # NOTE: this seems to be required for clipboard permissions to be granted succesfully
8
8
  page.driver.browser.add_permission("clipboard-read", "granted")
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Configurable basemap", js: true do
5
+ RSpec.feature "Configurable basemap", js: true do
6
6
  scenario "defaults to positron" do
7
7
  visit root_path
8
8
  expect(page).to have_css "img[src*='carto']", visible: :all
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Data dictionary download tool" do
5
+ RSpec.feature "Data dictionary download tool" do
6
6
  feature "when data_dictionary reference present" do
7
7
  scenario "shows up in tools" do
8
8
  visit solr_document_path "nyu_2451_34502"
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Download layer" do
5
+ RSpec.feature "Download layer" do
6
6
  let(:shapefile_download) { instance_double(Geoblacklight::ShapefileDownload) }
7
7
  let(:kmz_download) { instance_double(Geoblacklight::KmzDownload) }
8
8
  let(:csv_download) { instance_double(Geoblacklight::CsvDownload) }
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Empty search" do
5
+ RSpec.feature "Empty search" do
6
6
  before do
7
7
  visit root_path
8
8
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "feature_layer reference", js: true do
5
+ RSpec.feature "feature_layer reference", js: true do
6
6
  scenario "displays image map layer" do
7
7
  skip "spec depend on potentially flaky external services"
8
8
  visit solr_document_path "32653ed6-8d83-4692-8a06-bf13ffe2c018"
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Export features" do
5
+ RSpec.feature "Export features" do
6
6
  feature "when esri web services are available" do
7
7
  feature "Open in ArcGIS Online" do
8
8
  scenario "shows up in tools" do
@@ -2,21 +2,14 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Leaflet fullscreen control", js: true do
6
- scenario "WMS layer should have full screen control" do
7
- visit solr_document_path("stanford-cz128vq0535")
8
- expect(page).to have_css(".leaflet-control-zoom-fullscreen", visible: :all)
9
- end
10
- end
11
-
12
- feature "IIIF fullscreen control", js: true do
5
+ RSpec.feature "IIIF fullscreen control", js: true do
13
6
  scenario "IIIF layer should have full screen control" do
14
7
  visit solr_document_path("princeton-sx61dn82p")
15
- expect(page).to have_button("Full screen", visible: :all)
8
+ expect(page).to have_button("Full screen")
16
9
  end
17
10
 
18
11
  scenario "IIIF image should have full screen control" do
19
12
  visit solr_document_path("princeton-02870w62c")
20
- expect(page).to have_css("img[alt='Toggle full page']", visible: :all)
13
+ expect(page).to have_css("img[alt='Toggle full page']")
21
14
  end
22
15
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Help Text" do
5
+ RSpec.feature "Help Text" do
6
6
  scenario "Displays help text entry" do
7
7
  visit "/catalog/stanford-cg357zz0321"
8
8
  expect(page).to have_css ".help-text", count: 1
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Home page", js: true do # use js: true for tests which require js, but it slows things down
5
+ RSpec.feature "Home page", js: true do # use js: true for tests which require js, but it slows things down
6
6
  before do
7
7
  visit root_path
8
8
  end
@@ -2,12 +2,12 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Index map", js: true do
5
+ RSpec.feature "Index map", js: true do
6
6
  # Colors
7
7
  default_color = "#7FCDBB"
8
8
  selected_color = "#2C7FB8"
9
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"
10
+ skip "Doesn't work for importmaps when headless in CI" if ENV["CI"]
11
11
 
12
12
  visit solr_document_path("stanford-fb897vt9938")
13
13
  # Wait until SVG elements are added
@@ -24,7 +24,7 @@ feature "Index map", js: true do
24
24
  end
25
25
 
26
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"
27
+ skip "Doesn't work for importmaps when headless in CI" if ENV["CI"]
28
28
 
29
29
  visit solr_document_path("cornell-ny-aerial-photos-1960s")
30
30
  # Wait until SVG elements are added
@@ -2,21 +2,21 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Index view", js: true do
6
- let(:subject_field) { Settings.FIELDS.SUBJECT }
5
+ RSpec.feature "Index view", js: true do
6
+ let(:subject_field) { Geoblacklight.configuration.fields.subject }
7
7
  before do
8
8
  visit search_catalog_path(q: "*")
9
9
  end
10
10
 
11
11
  scenario "should have documents and map on page" do
12
- visit search_catalog_path(f: {Settings.FIELDS.PROVIDER => ["Stanford"]})
12
+ visit search_catalog_path(f: {Geoblacklight.configuration.fields.provider => ["Stanford"]})
13
13
  expect(page).to have_css("#documents")
14
- expect(page).to have_css(".document", count: 6)
14
+ expect(page).to have_css(".document", count: 5)
15
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
19
- visit search_catalog_path(f: {Settings.FIELDS.PROVIDER => ["Stanford"]})
19
+ visit search_catalog_path(f: {Geoblacklight.configuration.fields.provider => ["Stanford"]})
20
20
  expect(page).to have_css("#sort-dropdown")
21
21
  expect(page).to have_css("#per_page-dropdown")
22
22
  end
@@ -49,7 +49,7 @@ feature "Index view", js: true do
49
49
 
50
50
  scenario "hover on record should produce bounding box on map" do
51
51
  # Needed to find an svg element on the page
52
- visit search_catalog_path(f: {Settings.FIELDS.PROVIDER => ["Stanford"]})
52
+ visit search_catalog_path(f: {Geoblacklight.configuration.fields.provider => ["Stanford"]})
53
53
  # BL7 has svg icons, so sniffing for SVG path won't return false
54
54
  # expect(Nokogiri::HTML.parse(page.body).css('path').length).to eq 0
55
55
  find(".documentHeader", match: :first).hover
@@ -82,7 +82,7 @@ feature "Index view", js: true do
82
82
  end
83
83
 
84
84
  scenario "should have schema.org props listed" do
85
- visit search_catalog_path(f: {Settings.FIELDS.PROVIDER => ["Stanford"]})
85
+ visit search_catalog_path(f: {Geoblacklight.configuration.fields.provider => ["Stanford"]})
86
86
  within(".documentHeader", match: :first) do
87
87
  expect(page).to have_css("a[itemprop='name']")
88
88
  find(".dropdown-toggle").click
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Layer inspection", js: true do
5
+ RSpec.feature "Layer inspection", js: true do
6
6
  scenario "clicking map should trigger inspection" do
7
7
  visit solr_document_path("tufts-cambridgegrid100-04")
8
8
  expect(page).to have_css("th", text: "Attribute")
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Layer opacity", js: true do
5
+ RSpec.feature "Layer opacity", js: true do
6
6
  scenario "WMS layer should have opacity control" do
7
7
  visit solr_document_path("mit-f6rqs4ucovjk2")
8
8
  expect(page).to have_css("div.opacity-text", text: "75%")
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "Layer preview", js: true do
5
+ RSpec.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
8
  within("#leaflet-viewer") do
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- feature "layer with no wms or iiif" do
5
+ RSpec.feature "layer with no wms or iiif" do
6
6
  scenario "has map with bounding box" do
7
7
  pending "waiting on #201, need example metadata record"
8
8
  fail