geoblacklight 5.4.0 → 6.0.0.pre.alpha.1

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 (461) hide show
  1. checksums.yaml +4 -4
  2. data/.engine_cart.yml +14 -0
  3. data/.github/workflows/ruby.yml +24 -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/sidebar_component.html.erb +1 -4
  29. data/app/components/geoblacklight/document/sidebar_component.rb +0 -8
  30. data/app/components/geoblacklight/document_component.html.erb +1 -2
  31. data/app/components/geoblacklight/download_links_component.html.erb +0 -3
  32. data/app/components/geoblacklight/download_links_component.rb +1 -1
  33. data/app/components/geoblacklight/header_component.html.erb +4 -4
  34. data/app/components/geoblacklight/header_icons_component.rb +4 -2
  35. data/app/components/geoblacklight/homepage_feature_facet_component.html.erb +3 -7
  36. data/app/components/geoblacklight/homepage_feature_facet_component.rb +12 -3
  37. data/app/components/geoblacklight/iiif_drag_drop_component.html.erb +2 -2
  38. data/app/components/geoblacklight/iiif_drag_drop_component.rb +2 -2
  39. data/app/components/geoblacklight/index_map_inspect_component.html.erb +3 -3
  40. data/app/components/geoblacklight/index_map_legend_component.html.erb +7 -7
  41. data/app/components/geoblacklight/index_map_legend_component.rb +7 -0
  42. data/app/components/geoblacklight/item_map_viewer_component.rb +9 -5
  43. data/app/components/geoblacklight/location_leaflet_map_component.rb +28 -15
  44. data/app/components/geoblacklight/relations_component.html.erb +2 -2
  45. data/app/components/geoblacklight/search_result_component.html.erb +28 -26
  46. data/app/components/geoblacklight/search_result_component.rb +2 -2
  47. data/app/components/geoblacklight/static_map_component.rb +6 -5
  48. data/app/components/geoblacklight/viewer_help_text_component.html.erb +1 -1
  49. data/app/components/geoblacklight/viewer_help_text_component.rb +1 -1
  50. data/app/components/geoblacklight/web_services_component.html.erb +1 -1
  51. data/app/components/geoblacklight/web_services_component.rb +1 -1
  52. data/app/components/geoblacklight/web_services_default_component.html.erb +6 -6
  53. data/app/components/geoblacklight/web_services_link_component.rb +12 -9
  54. data/app/components/geoblacklight/web_services_wfs_component.html.erb +4 -4
  55. data/app/components/geoblacklight/web_services_wms_component.html.erb +4 -4
  56. data/app/controllers/download_controller.rb +0 -7
  57. data/app/controllers/relation_controller.rb +1 -1
  58. data/app/controllers/wms_controller.rb +1 -1
  59. data/app/helpers/geoblacklight_helper.rb +0 -43
  60. data/app/javascript/geoblacklight/controllers/clipboard_controller.js +6 -6
  61. data/app/javascript/geoblacklight/controllers/downloads_controller.js +37 -29
  62. data/app/javascript/geoblacklight/controllers/leaflet_viewer_controller.js +110 -134
  63. data/app/javascript/geoblacklight/controllers/oembed_viewer_controller.js +5 -5
  64. data/app/javascript/geoblacklight/controllers/openlayers_viewer_controller.js +27 -61
  65. data/app/javascript/geoblacklight/controllers/search_results_controller.js +18 -18
  66. data/app/javascript/geoblacklight/core.js +35 -36
  67. data/app/javascript/geoblacklight/index.js +10 -10
  68. data/app/javascript/geoblacklight/initializers/metadata_download.js +23 -25
  69. data/app/javascript/geoblacklight/initializers/popovers.js +4 -4
  70. data/app/javascript/geoblacklight/initializers/relations.js +20 -20
  71. data/app/javascript/geoblacklight/initializers/tooltips.js +19 -23
  72. data/app/javascript/geoblacklight/initializers/truncation.js +18 -18
  73. data/app/javascript/geoblacklight/leaflet/basemaps.js +34 -3
  74. data/app/javascript/geoblacklight/leaflet/constants.js +7 -7
  75. data/app/javascript/geoblacklight/leaflet/controls/geosearch.js +80 -74
  76. data/app/javascript/geoblacklight/leaflet/controls/layer_opacity.js +74 -73
  77. data/app/javascript/geoblacklight/leaflet/controls/sidebar.js +31 -29
  78. data/app/javascript/geoblacklight/leaflet/controls/sleep.js +54 -51
  79. data/app/javascript/geoblacklight/leaflet/inspection.js +79 -71
  80. data/app/javascript/geoblacklight/leaflet/layer_index_map.js +74 -69
  81. data/app/javascript/geoblacklight/leaflet/layer_wmts.js +14 -16
  82. data/app/javascript/geoblacklight/leaflet/layers.js +59 -66
  83. data/app/javascript/geoblacklight/leaflet/utils.js +37 -43
  84. data/app/javascript/geoblacklight/openlayers/basemaps.js +43 -15
  85. data/app/javascript/geoblacklight/openlayers/inspection.js +23 -23
  86. data/app/javascript/geoblacklight/openlayers/layers.js +12 -12
  87. data/app/models/concerns/geoblacklight/bbox_filter_query.rb +7 -9
  88. data/app/models/concerns/geoblacklight/solr_document.rb +17 -57
  89. data/app/models/concerns/geoblacklight/suppressed_records_search_behavior.rb +3 -3
  90. data/app/views/catalog/_document_split.html.erb +3 -3
  91. data/app/views/catalog/_home_text.html.erb +22 -14
  92. data/app/views/catalog/_metadata.html.erb +1 -4
  93. data/app/views/catalog/_relations_container.html.erb +1 -1
  94. data/app/views/catalog/index.html.erb +0 -1
  95. data/app/views/catalog/metadata/_markup.html.erb +1 -2
  96. data/app/views/catalog/metadata/_missing.html.erb +2 -2
  97. data/app/views/catalog/web_services.html.erb +1 -1
  98. data/app/views/relation/index.html.erb +1 -1
  99. data/app/views/relation/index.json.jbuilder +1 -1
  100. data/config/initializers/rails_config.rb +0 -3
  101. data/config/locales/geoblacklight.en.yml +79 -78
  102. data/geoblacklight.gemspec +3 -4
  103. data/lib/generators/geoblacklight/assets_generator.rb +35 -26
  104. data/lib/generators/geoblacklight/install_generator.rb +6 -11
  105. data/lib/generators/geoblacklight/templates/assets/customizations.css +6 -0
  106. data/lib/generators/geoblacklight/templates/catalog_controller.rb +102 -77
  107. data/lib/generators/geoblacklight/templates/settings.yml +97 -132
  108. data/lib/geoblacklight/configuration/default_settings_builder.rb +18 -0
  109. data/lib/geoblacklight/configuration/display_note_shown_config.rb +13 -0
  110. data/lib/geoblacklight/configuration/fields_config.rb +51 -0
  111. data/lib/geoblacklight/configuration/leaflet_config.rb +73 -0
  112. data/lib/geoblacklight/configuration/leaflet_layers_config.rb +21 -0
  113. data/lib/geoblacklight/configuration/leaflet_sleep_config.rb +20 -0
  114. data/lib/geoblacklight/configuration/legacy_settings_builder.rb +94 -0
  115. data/lib/geoblacklight/configuration.rb +148 -0
  116. data/lib/geoblacklight/download.rb +2 -5
  117. data/lib/geoblacklight/engine.rb +7 -18
  118. data/lib/geoblacklight/metadata/base.rb +0 -2
  119. data/lib/geoblacklight/metadata_transformer.rb +0 -2
  120. data/lib/geoblacklight/references.rb +6 -10
  121. data/lib/geoblacklight/relation/ancestors.rb +3 -5
  122. data/lib/geoblacklight/relation/descendants.rb +2 -4
  123. data/lib/geoblacklight/relation/relation_response.rb +5 -8
  124. data/lib/geoblacklight/version.rb +1 -1
  125. data/lib/geoblacklight/wms_layer.rb +3 -3
  126. data/lib/geoblacklight.rb +5 -15
  127. data/lib/tasks/geoblacklight.rake +0 -9
  128. data/package.json +10 -31
  129. data/schema/geoblacklight-schema-aardvark.json +1 -9
  130. data/schema/readme.md +3 -4
  131. data/solr/conf/_rest_managed.json +3 -2
  132. data/solr/conf/schema.xml +1 -1
  133. data/solr/conf/solrconfig.xml +10 -10
  134. data/spec/components/geoblacklight/arcgis_component_spec.rb +6 -6
  135. data/spec/components/geoblacklight/attribute_table_component_spec.rb +6 -7
  136. data/spec/components/geoblacklight/citation_component_spec.rb +7 -4
  137. data/spec/components/geoblacklight/display_note_component_spec.rb +8 -8
  138. data/spec/components/geoblacklight/document_component_spec.rb +13 -13
  139. data/spec/components/geoblacklight/download_links_component_spec.rb +17 -14
  140. data/spec/components/geoblacklight/header_icons_component_spec.rb +6 -11
  141. data/spec/components/geoblacklight/homepage_feature_facet_component_spec.rb +22 -30
  142. data/spec/components/geoblacklight/iiif_drag_drop_component_spec.rb +3 -3
  143. data/spec/components/geoblacklight/index_map_legend_component_spec.rb +5 -18
  144. data/spec/components/geoblacklight/item_map_viewer_component_spec.rb +5 -5
  145. data/spec/components/geoblacklight/login_link_component_spec.rb +4 -5
  146. data/spec/components/geoblacklight/search_result_component_spec.rb +2 -6
  147. data/spec/components/geoblacklight/static_map_component_spec.rb +2 -2
  148. data/spec/components/geoblacklight/viewer_help_text_component_spec.rb +4 -6
  149. data/spec/components/geoblacklight/web_services_component_spec.rb +11 -10
  150. data/spec/controllers/catalog_controller_spec.rb +7 -7
  151. data/spec/controllers/download_controller_spec.rb +1 -1
  152. data/spec/controllers/relation_controller_spec.rb +1 -1
  153. data/spec/controllers/wms_controller_spec.rb +1 -1
  154. data/spec/features/axe_spec.rb +4 -4
  155. data/spec/features/bookmarks_spec.rb +1 -1
  156. data/spec/features/citations_spec.rb +1 -1
  157. data/spec/features/configurable_basemap_spec.rb +1 -69
  158. data/spec/features/data_dictionary_download_spec.rb +1 -1
  159. data/spec/features/download_layer_spec.rb +1 -1
  160. data/spec/features/empty_search_spec.rb +1 -1
  161. data/spec/features/esri_viewer_spec.rb +1 -1
  162. data/spec/features/exports_spec.rb +1 -1
  163. data/spec/features/full_screen_control_spec.rb +3 -10
  164. data/spec/features/help_text_spec.rb +1 -1
  165. data/spec/features/home_page_spec.rb +1 -1
  166. data/spec/features/index_map_spec.rb +3 -3
  167. data/spec/features/index_view_spec.rb +7 -7
  168. data/spec/features/layer_inspection_spec.rb +1 -1
  169. data/spec/features/layer_opacity_spec.rb +1 -1
  170. data/spec/features/layer_preview_spec.rb +1 -1
  171. data/spec/features/layer_with_no_references_spec.rb +1 -1
  172. data/spec/features/linkified_attribute_table_spec.rb +1 -1
  173. data/spec/features/metadata_panel_spec.rb +1 -1
  174. data/spec/features/missing_metadata_spec.rb +1 -1
  175. data/spec/features/multiple_downloads_spec.rb +1 -1
  176. data/spec/features/oembed_spec.rb +1 -1
  177. data/spec/features/relations_spec.rb +5 -4
  178. data/spec/features/saved_searches_spec.rb +1 -1
  179. data/spec/features/search_bar_spec.rb +1 -1
  180. data/spec/features/search_results_complex_geometry_spec.rb +1 -1
  181. data/spec/features/search_results_icons_spec.rb +3 -4
  182. data/spec/features/search_results_map_spec.rb +1 -1
  183. data/spec/features/search_results_overlap_ratio_spec.rb +3 -3
  184. data/spec/features/search_spec.rb +1 -1
  185. data/spec/features/show_page_download_spec.rb +1 -1
  186. data/spec/features/show_page_metadata_spec.rb +2 -2
  187. data/spec/features/show_page_sidebar_static_map_spec.rb +1 -1
  188. data/spec/features/sms_spec.rb +1 -1
  189. data/spec/features/suppressed_records_spec.rb +1 -1
  190. data/spec/features/tilejson_spec.rb +1 -1
  191. data/spec/features/tms_spec.rb +1 -1
  192. data/spec/features/web_services_modal_spec.rb +1 -1
  193. data/spec/features/wmts_spec.rb +1 -1
  194. data/spec/features/xyz_spec.rb +1 -1
  195. data/spec/fixtures/manifests/tilejson.json +10 -19
  196. data/spec/fixtures/metadata/fgdc.html +1 -1
  197. data/spec/fixtures/metadata/iso.html +1 -1
  198. data/spec/fixtures/solr_documents/README.md +0 -1
  199. data/spec/fixtures/solr_documents/actual-papermap1.json +9 -28
  200. data/spec/fixtures/solr_documents/actual-point1.json +12 -39
  201. data/spec/fixtures/solr_documents/actual-polygon1.json +10 -30
  202. data/spec/fixtures/solr_documents/actual-raster1.json +14 -46
  203. data/spec/fixtures/solr_documents/all-relationships.json +12 -36
  204. data/spec/fixtures/solr_documents/b1g_iiif_manifest.json +33 -62
  205. data/spec/fixtures/solr_documents/b1g_wabash_child_15.json +13 -40
  206. data/spec/fixtures/solr_documents/b1g_wabash_child_16.json +13 -40
  207. data/spec/fixtures/solr_documents/b1g_wabash_child_17.json +13 -40
  208. data/spec/fixtures/solr_documents/b1g_wabash_child_18.json +13 -40
  209. data/spec/fixtures/solr_documents/b1g_wabash_parent.json +13 -40
  210. data/spec/fixtures/solr_documents/baruch_ancestor1.json +13 -40
  211. data/spec/fixtures/solr_documents/baruch_ancestor2.json +13 -40
  212. data/spec/fixtures/solr_documents/baruch_documentation_download.json +14 -46
  213. data/spec/fixtures/solr_documents/bbox-spans-180.json +7 -21
  214. data/spec/fixtures/solr_documents/complex-geom.json +11 -37
  215. data/spec/fixtures/solr_documents/cornell_html_metadata.json +12 -37
  216. data/spec/fixtures/solr_documents/display-note.json +11 -33
  217. data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +13 -39
  218. data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +13 -40
  219. data/spec/fixtures/solr_documents/esri-feature-layer.json +13 -39
  220. data/spec/fixtures/solr_documents/esri-image-map-layer.json +13 -40
  221. data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +16 -54
  222. data/spec/fixtures/solr_documents/esri-wms-layer.json +12 -36
  223. data/spec/fixtures/solr_documents/harvard_raster.json +12 -37
  224. data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +9 -27
  225. data/spec/fixtures/solr_documents/index-map-polygon-no-downloadurl.json +12 -41
  226. data/spec/fixtures/solr_documents/index-map-polygon.json +12 -41
  227. data/spec/fixtures/solr_documents/index-map-stanford.json +14 -45
  228. data/spec/fixtures/solr_documents/index-map-v1-complex.json +13 -38
  229. data/spec/fixtures/solr_documents/index_map_point.json +13 -42
  230. data/spec/fixtures/solr_documents/metadata_no_geom.json +4 -14
  231. data/spec/fixtures/solr_documents/metadata_no_provider.json +8 -25
  232. data/spec/fixtures/solr_documents/multiple-downloads.json +6 -18
  233. data/spec/fixtures/solr_documents/no_locn_geometry.json +4 -12
  234. data/spec/fixtures/solr_documents/no_spatial.json +4 -12
  235. data/spec/fixtures/solr_documents/oembed.json +8 -25
  236. data/spec/fixtures/solr_documents/princeton-child1.json +9 -29
  237. data/spec/fixtures/solr_documents/princeton-child2.json +9 -29
  238. data/spec/fixtures/solr_documents/princeton-child3.json +9 -29
  239. data/spec/fixtures/solr_documents/princeton-child4.json +9 -29
  240. data/spec/fixtures/solr_documents/princeton-parent.json +10 -33
  241. data/spec/fixtures/solr_documents/public_cog_princeton.json +9 -27
  242. data/spec/fixtures/solr_documents/public_iiif_princeton.json +13 -43
  243. data/spec/fixtures/solr_documents/public_pmtiles_princeton.json +29 -39
  244. data/spec/fixtures/solr_documents/public_polygon_mit.json +9 -30
  245. data/spec/fixtures/solr_documents/restricted-line.json +14 -47
  246. data/spec/fixtures/solr_documents/the-related-record.json +4 -12
  247. data/spec/fixtures/solr_documents/tilejson.json +23 -46
  248. data/spec/fixtures/solr_documents/tms.json +7 -21
  249. data/spec/fixtures/solr_documents/umn_metro_result1.json +13 -41
  250. data/spec/fixtures/solr_documents/umn_state_result1.json +13 -39
  251. data/spec/fixtures/solr_documents/umn_state_result2.json +13 -39
  252. data/spec/fixtures/solr_documents/uva_slug_colon.json +10 -30
  253. data/spec/fixtures/solr_documents/wmts-multiple.json +23 -39
  254. data/spec/fixtures/solr_documents/wmts-single-layer.json +23 -46
  255. data/spec/fixtures/solr_documents/xyz.json +10 -33
  256. data/spec/helpers/geoblacklight_helper_spec.rb +5 -50
  257. data/spec/javascripts/geoblacklight_spec.js +10 -10
  258. data/spec/javascripts/metadata_download_button_spec.js +14 -13
  259. data/spec/lib/geoblacklight/bounding_box_spec.rb +1 -1
  260. data/spec/lib/geoblacklight/configuration/default_settings_builder_spec.rb +9 -0
  261. data/spec/lib/geoblacklight/configuration_spec.rb +13 -0
  262. data/spec/lib/geoblacklight/download/csv_download_spec.rb +2 -2
  263. data/spec/lib/geoblacklight/download/geojson_download_spec.rb +2 -2
  264. data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +5 -2
  265. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +2 -2
  266. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +2 -2
  267. data/spec/lib/geoblacklight/download_spec.rb +15 -6
  268. data/spec/lib/geoblacklight/geometry_spec.rb +1 -1
  269. data/spec/lib/geoblacklight/item_viewer_spec.rb +2 -2
  270. data/spec/lib/geoblacklight/metadata/base_spec.rb +1 -1
  271. data/spec/lib/geoblacklight/metadata/html_spec.rb +1 -1
  272. data/spec/lib/geoblacklight/metadata_spec.rb +1 -1
  273. data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +1 -1
  274. data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +1 -1
  275. data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +1 -1
  276. data/spec/lib/geoblacklight/metadata_transformer_spec.rb +1 -1
  277. data/spec/lib/geoblacklight/reference_spec.rb +1 -1
  278. data/spec/lib/geoblacklight/references_spec.rb +6 -4
  279. data/spec/lib/geoblacklight/relation/ancestors_spec.rb +10 -4
  280. data/spec/lib/geoblacklight/relation/descendants_spec.rb +9 -4
  281. data/spec/lib/geoblacklight/relation/relation_response_spec.rb +12 -15
  282. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +1 -1
  283. data/spec/lib/geoblacklight/wms_layer_spec.rb +1 -1
  284. data/spec/models/concerns/geoblacklight/bbox_filter_query_spec.rb +20 -11
  285. data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -1
  286. data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +1 -1
  287. data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +1 -1
  288. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +4 -39
  289. data/spec/models/concerns/geoblacklight/suppressed_records_search_behavior_spec.rb +2 -2
  290. data/spec/routing/catalog_routing_spec.rb +1 -1
  291. data/spec/spec_helper.rb +4 -16
  292. data/spec/tasks/geoblacklight_spec.rb +1 -1
  293. data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -3
  294. metadata +40 -194
  295. data/Procfile.dev +0 -3
  296. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +0 -2
  297. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +0 -31
  298. data/app/assets/stylesheets/geoblacklight/modules/_blacklight_overrides.scss +0 -40
  299. data/app/assets/stylesheets/geoblacklight/modules/_styles.scss +0 -9
  300. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +0 -62
  301. data/app/assets/stylesheets/geoblacklight/modules/geosearch.scss +0 -23
  302. data/app/assets/stylesheets/geoblacklight/modules/home.scss +0 -13
  303. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +0 -116
  304. data/app/assets/stylesheets/geoblacklight/modules/index_maps.scss +0 -61
  305. data/app/assets/stylesheets/geoblacklight/modules/item.scss +0 -78
  306. data/app/assets/stylesheets/geoblacklight/modules/layer_opacity.scss +0 -87
  307. data/app/assets/stylesheets/geoblacklight/modules/leaflet.scss +0 -4
  308. data/app/assets/stylesheets/geoblacklight/modules/metadata.scss +0 -31
  309. data/app/assets/stylesheets/geoblacklight/modules/metadata_content.scss +0 -43
  310. data/app/assets/stylesheets/geoblacklight/modules/metadata_markup.scss +0 -9
  311. data/app/assets/stylesheets/geoblacklight/modules/metadata_missing.scss +0 -7
  312. data/app/assets/stylesheets/geoblacklight/modules/modal.scss +0 -5
  313. data/app/assets/stylesheets/geoblacklight/modules/results.scss +0 -60
  314. data/app/assets/stylesheets/geoblacklight/modules/search_widgets.scss +0 -5
  315. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +0 -42
  316. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +0 -34
  317. data/app/assets/stylesheets/geoblacklight/modules/web_services.scss +0 -5
  318. data/app/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component.rb +0 -46
  319. data/app/components/blacklight/icons/arizona_component.rb +0 -24
  320. data/app/components/blacklight/icons/baruch_cuny_component.rb +0 -23
  321. data/app/components/blacklight/icons/bookmark_component.rb +0 -23
  322. data/app/components/blacklight/icons/circle_info_solid_component.rb +0 -23
  323. data/app/components/blacklight/icons/columbia_component.rb +0 -23
  324. data/app/components/blacklight/icons/cornell_component.rb +0 -25
  325. data/app/components/blacklight/icons/george_mason_component.rb +0 -24
  326. data/app/components/blacklight/icons/harvard_component.rb +0 -23
  327. data/app/components/blacklight/icons/indiana_component.rb +0 -23
  328. data/app/components/blacklight/icons/lewis_clark_component.rb +0 -25
  329. data/app/components/blacklight/icons/massgis_component.rb +0 -23
  330. data/app/components/blacklight/icons/michigan_state_university_component.rb +0 -25
  331. data/app/components/blacklight/icons/mit_component.rb +0 -23
  332. data/app/components/blacklight/icons/northwestern_university_component.rb +0 -24
  333. data/app/components/blacklight/icons/nyu_component.rb +0 -26
  334. data/app/components/blacklight/icons/pennsylvania_state_university_component.rb +0 -25
  335. data/app/components/blacklight/icons/princeton_component.rb +0 -23
  336. data/app/components/blacklight/icons/purdue_university_component.rb +0 -25
  337. data/app/components/blacklight/icons/rutgers_component.rb +0 -25
  338. data/app/components/blacklight/icons/sms_component.rb +0 -23
  339. data/app/components/blacklight/icons/stanford_component.rb +0 -23
  340. data/app/components/blacklight/icons/texas_component.rb +0 -23
  341. data/app/components/blacklight/icons/the_ohio_state_university_component.rb +0 -26
  342. data/app/components/blacklight/icons/tufts_component.rb +0 -23
  343. data/app/components/blacklight/icons/ucla_component.rb +0 -23
  344. data/app/components/blacklight/icons/university_of_california_berkeley_component.rb +0 -24
  345. data/app/components/blacklight/icons/university_of_chicago_component.rb +0 -25
  346. data/app/components/blacklight/icons/university_of_colorado_boulder_component.rb +0 -26
  347. data/app/components/blacklight/icons/university_of_illinois_urbana_champaign_component.rb +0 -25
  348. data/app/components/blacklight/icons/university_of_iowa_component.rb +0 -24
  349. data/app/components/blacklight/icons/university_of_maryland_component.rb +0 -24
  350. data/app/components/blacklight/icons/university_of_michigan_component.rb +0 -24
  351. data/app/components/blacklight/icons/university_of_minnesota_component.rb +0 -24
  352. data/app/components/blacklight/icons/university_of_nebraska_lincoln_component.rb +0 -27
  353. data/app/components/blacklight/icons/university_of_wisconsin_madison_component.rb +0 -24
  354. data/app/components/blacklight/icons/uva_component.rb +0 -23
  355. data/app/components/geoblacklight/icon_facet_item_component.rb +0 -33
  356. data/app/components/geoblacklight/web_services_link_component.html.erb +0 -3
  357. data/bin/vite +0 -29
  358. data/config/initializers/new_gbl_settings_defaults_4.1.yml +0 -104
  359. data/lib/generators/geoblacklight/assets/importmap_generator.rb +0 -73
  360. data/lib/generators/geoblacklight/assets/vite_generator.rb +0 -89
  361. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +0 -23
  362. data/lib/generators/geoblacklight/templates/assets/application.js +0 -17
  363. data/lib/generators/geoblacklight/templates/assets/application.scss +0 -9
  364. data/lib/generators/geoblacklight/templates/assets/geoblacklight.scss +0 -11
  365. data/lib/generators/geoblacklight/templates/base.html.erb +0 -46
  366. data/lib/generators/geoblacklight/templates/vite.config.ts +0 -23
  367. data/lib/generators/geoblacklight/templates/vite.json +0 -16
  368. data/lib/geoblacklight/deprecated_configuration.rb +0 -665
  369. data/schema/geoblacklight-schema-1.0.json +0 -214
  370. data/solr/conf/xslt/example.xsl +0 -132
  371. data/solr/conf/xslt/example_atom.xsl +0 -67
  372. data/solr/conf/xslt/example_rss.xsl +0 -66
  373. data/solr/conf/xslt/luke.xsl +0 -337
  374. data/spec/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component_spec.rb +0 -15
  375. data/spec/components/blacklight/icons/arizona_component_spec.rb +0 -15
  376. data/spec/components/blacklight/icons/arrow_circle_down_component_spec.rb +0 -15
  377. data/spec/components/blacklight/icons/baruch_cuny_component_spec.rb +0 -15
  378. data/spec/components/blacklight/icons/book_component_spec.rb +0 -15
  379. data/spec/components/blacklight/icons/bookmark_component_spec.rb +0 -15
  380. data/spec/components/blacklight/icons/cd_rom_component_spec.rb +0 -15
  381. data/spec/components/blacklight/icons/child_item_component_spec.rb +0 -15
  382. data/spec/components/blacklight/icons/circle_info_solid_component_spec.rb +0 -15
  383. data/spec/components/blacklight/icons/citation_component_spec.rb +0 -15
  384. data/spec/components/blacklight/icons/collection_component_spec.rb +0 -15
  385. data/spec/components/blacklight/icons/collections_component_spec.rb +0 -15
  386. data/spec/components/blacklight/icons/columbia_component_spec.rb +0 -15
  387. data/spec/components/blacklight/icons/cornell_component_spec.rb +0 -15
  388. data/spec/components/blacklight/icons/datasets_component_spec.rb +0 -15
  389. data/spec/components/blacklight/icons/dvd_rom_component_spec.rb +0 -15
  390. data/spec/components/blacklight/icons/email_component_spec.rb +0 -15
  391. data/spec/components/blacklight/icons/esri_globe_component_spec.rb +0 -15
  392. data/spec/components/blacklight/icons/fire_solid_component_spec.rb +0 -15
  393. data/spec/components/blacklight/icons/george_mason_component_spec.rb +0 -15
  394. data/spec/components/blacklight/icons/globe_component_spec.rb +0 -15
  395. data/spec/components/blacklight/icons/harvard_component_spec.rb +0 -15
  396. data/spec/components/blacklight/icons/home_component_spec.rb +0 -15
  397. data/spec/components/blacklight/icons/iiif_drag_drop_component_spec.rb +0 -15
  398. data/spec/components/blacklight/icons/image_component_spec.rb +0 -15
  399. data/spec/components/blacklight/icons/imagery_component_spec.rb +0 -15
  400. data/spec/components/blacklight/icons/indiana_component_spec.rb +0 -15
  401. data/spec/components/blacklight/icons/leaf_component_spec.rb +0 -15
  402. data/spec/components/blacklight/icons/lewis_clark_component_spec.rb +0 -15
  403. data/spec/components/blacklight/icons/lightbulb_solid_component_spec.rb +0 -15
  404. data/spec/components/blacklight/icons/line_component_spec.rb +0 -15
  405. data/spec/components/blacklight/icons/map_component_spec.rb +0 -15
  406. data/spec/components/blacklight/icons/map_marker_component_spec.rb +0 -15
  407. data/spec/components/blacklight/icons/maps_component_spec.rb +0 -15
  408. data/spec/components/blacklight/icons/massgis_component_spec.rb +0 -15
  409. data/spec/components/blacklight/icons/metadata_component_spec.rb +0 -15
  410. data/spec/components/blacklight/icons/michigan_state_university_component_spec.rb +0 -15
  411. data/spec/components/blacklight/icons/mit_component_spec.rb +0 -15
  412. data/spec/components/blacklight/icons/mixed_component_spec.rb +0 -15
  413. data/spec/components/blacklight/icons/multilinestring_component_spec.rb +0 -15
  414. data/spec/components/blacklight/icons/multipoint_component_spec.rb +0 -15
  415. data/spec/components/blacklight/icons/multipolygon_component_spec.rb +0 -15
  416. data/spec/components/blacklight/icons/northwestern_university_component_spec.rb +0 -15
  417. data/spec/components/blacklight/icons/nyu_component_spec.rb +0 -15
  418. data/spec/components/blacklight/icons/pagelines_brands_component_spec.rb +0 -15
  419. data/spec/components/blacklight/icons/paper_map_component_spec.rb +0 -15
  420. data/spec/components/blacklight/icons/parent_item_component_spec.rb +0 -15
  421. data/spec/components/blacklight/icons/pennsylvania_state_university_component_spec.rb +0 -15
  422. data/spec/components/blacklight/icons/point_component_spec.rb +0 -15
  423. data/spec/components/blacklight/icons/polygon_component_spec.rb +0 -15
  424. data/spec/components/blacklight/icons/polyline_component_spec.rb +0 -15
  425. data/spec/components/blacklight/icons/princeton_component_spec.rb +0 -15
  426. data/spec/components/blacklight/icons/public_component_spec.rb +0 -15
  427. data/spec/components/blacklight/icons/purdue_university_component_spec.rb +0 -15
  428. data/spec/components/blacklight/icons/raster_component_spec.rb +0 -15
  429. data/spec/components/blacklight/icons/restricted_component_spec.rb +0 -15
  430. data/spec/components/blacklight/icons/rutgers_component_spec.rb +0 -15
  431. data/spec/components/blacklight/icons/sms_component_spec.rb +0 -15
  432. data/spec/components/blacklight/icons/stanford_component_spec.rb +0 -15
  433. data/spec/components/blacklight/icons/table_component_spec.rb +0 -15
  434. data/spec/components/blacklight/icons/tags_component_spec.rb +0 -15
  435. data/spec/components/blacklight/icons/texas_component_spec.rb +0 -15
  436. data/spec/components/blacklight/icons/the_ohio_state_university_component_spec.rb +0 -15
  437. data/spec/components/blacklight/icons/triangle_exclamation_solid_component_spec.rb +0 -15
  438. data/spec/components/blacklight/icons/tufts_component_spec.rb +0 -15
  439. data/spec/components/blacklight/icons/ucla_component_spec.rb +0 -15
  440. data/spec/components/blacklight/icons/university_of_california_berkeley_component_spec.rb +0 -15
  441. data/spec/components/blacklight/icons/university_of_chicago_component_spec.rb +0 -15
  442. data/spec/components/blacklight/icons/university_of_colorado_boulder_component_spec.rb +0 -15
  443. data/spec/components/blacklight/icons/university_of_illinois_urbana_champaign_component_spec.rb +0 -15
  444. data/spec/components/blacklight/icons/university_of_iowa_component_spec.rb +0 -15
  445. data/spec/components/blacklight/icons/university_of_maryland_component_spec.rb +0 -15
  446. data/spec/components/blacklight/icons/university_of_michigan_component_spec.rb +0 -15
  447. data/spec/components/blacklight/icons/university_of_minnesota_component_spec.rb +0 -15
  448. data/spec/components/blacklight/icons/university_of_nebraska_lincoln_component_spec.rb +0 -15
  449. data/spec/components/blacklight/icons/university_of_wisconsin_madison_component_spec.rb +0 -15
  450. data/spec/components/blacklight/icons/uva_component_spec.rb +0 -15
  451. data/spec/components/blacklight/icons/web_services_component_spec.rb +0 -15
  452. data/spec/components/blacklight/icons/websites_component_spec.rb +0 -15
  453. data/spec/components/geoblacklight/icon_facet_item_component_spec.rb +0 -18
  454. data/spec/config/initializers/rails_config_spec.rb +0 -16
  455. data/spec/fixtures/solr_documents/public_direct_download.json +0 -62
  456. data/spec/lib/geoblacklight/deprecated_configuration_spec.rb +0 -680
  457. data/spec/solr_config_spec.rb +0 -41
  458. data/spec/support/backport_test_helpers.rb +0 -47
  459. data/spec/support/view_component_capybara_test_helpers.rb +0 -8
  460. data/vite.config.ts +0 -32
  461. /data/app/assets/images/{blacklight → geoblacklight}/logo.svg +0 -0
@@ -2,13 +2,16 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Download do
5
+ RSpec.describe Geoblacklight::Download do
6
6
  subject(:download) { described_class.new(document, options) }
7
7
 
8
8
  let(:faraday_connection) { instance_double(Faraday::Connection) }
9
9
  let(:faraday_response) { instance_double(Faraday::Response) }
10
- let(:references_field) { Settings.FIELDS.REFERENCES }
11
- let(:document) { SolrDocument.new(:"#{Settings.FIELDS.ID}" => "test", references_field => {"http://www.opengis.net/def/serviceType/ogc/wms" => "http://www.example.com/wms"}.to_json) }
10
+ let(:references_field) { Geoblacklight.configuration.fields.references }
11
+ let(:document) do
12
+ SolrDocument.new(:"#{Geoblacklight.configuration.fields.id}" => "test",
13
+ references_field => {"http://www.opengis.net/def/serviceType/ogc/wms" => "http://www.example.com/wms"}.to_json)
14
+ end
12
15
  let(:options) { {type: "shapefile", extension: "zip", service_type: "wms", content_type: "application/zip"} }
13
16
 
14
17
  describe "#initialize" do
@@ -31,15 +34,18 @@ describe Geoblacklight::Download do
31
34
  expect(download.file_name).to eq "test-shapefile.zip"
32
35
  end
33
36
  end
37
+
34
38
  describe "#file_path" do
35
39
  it "returns the path with name and extension" do
36
- expect(download.class.file_path).to eq Rails.root.join("tmp", "cache", "downloads")
40
+ expect(download.class.file_path).to eq Rails.root.join("tmp", "cache", "downloads").to_s
37
41
  end
42
+
38
43
  it "is configurable" do
39
- expect(Settings).to receive(:DOWNLOAD_PATH).and_return("configured/path")
44
+ expect(Geoblacklight.configuration).to receive(:download_path).and_return("configured/path")
40
45
  expect(download.class.file_path).to eq "configured/path"
41
46
  end
42
47
  end
48
+
43
49
  describe "#download_exists?" do
44
50
  it "returns false if file does not exist" do
45
51
  expect(File).to receive(:file?).and_return(false)
@@ -106,7 +112,10 @@ describe Geoblacklight::Download do
106
112
  it "creates the file in fs and delete it if the content headers are not correct" do
107
113
  allow(File).to receive(:delete).with("#{download.file_path_and_name}.tmp").and_return(nil)
108
114
 
109
- expect { download.create_download_file }.to raise_error(Geoblacklight::Exceptions::ExternalDownloadFailed, "Wrong download type")
115
+ expect do
116
+ download.create_download_file
117
+ end.to raise_error(Geoblacklight::Exceptions::ExternalDownloadFailed,
118
+ "Wrong download type")
110
119
  end
111
120
  end
112
121
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Geometry do
5
+ RSpec.describe Geoblacklight::Geometry do
6
6
  let(:wkt_geom) { "MULTIPOLYGON(((-180 81.66, -180 -12.93, -168.35 -12.93, -168.35 81.66, -180 81.66)), ((180 81.66, 25 81.66, 25 -12.93, 180 -12.93, 180 81.66)))" }
7
7
  let(:envelope_geom) { "ENVELOPE(25, -168.35, 81.66, -12.93)" }
8
8
  let(:invalid_geom) { "INVALID" }
@@ -2,11 +2,11 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::ItemViewer do
5
+ RSpec.describe Geoblacklight::ItemViewer do
6
6
  let(:document) { SolrDocument.new(document_attributes) }
7
7
  let(:document_attributes) { {} }
8
8
  let(:references) { document.references }
9
- let(:references_field) { Settings.FIELDS.REFERENCES }
9
+ let(:references_field) { Geoblacklight.configuration.fields.references }
10
10
  let(:item_viewer) { described_class.new(references) }
11
11
  describe "viewer_preference" do
12
12
  describe "for no references" do
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Metadata::Base do
5
+ RSpec.describe Geoblacklight::Metadata::Base do
6
6
  subject(:metadata) { described_class.new(reference) }
7
7
 
8
8
  let(:connection) { instance_double(Faraday::Connection) }
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Metadata::Html do
5
+ RSpec.describe Geoblacklight::Metadata::Html do
6
6
  let(:url) { "https://s3.amazonaws.com/cugir-data/00/77/41/fgdc.html" }
7
7
  let(:metadata) do
8
8
  described_class.new(
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Metadata do
5
+ RSpec.describe Geoblacklight::Metadata do
6
6
  describe ".instance" do
7
7
  let(:reference) { instance_double(Geoblacklight::Reference) }
8
8
  context "with an FGDC metadata reference" do
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::MetadataTransformer::Base do
5
+ RSpec.describe Geoblacklight::MetadataTransformer::Base do
6
6
  describe ".new" do
7
7
  it "raises an error for empty XML" do
8
8
  expect { described_class.new(nil) }.to raise_error Geoblacklight::MetadataTransformer::EmptyMetadataError
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::MetadataTransformer::Fgdc do
5
+ RSpec.describe Geoblacklight::MetadataTransformer::Fgdc do
6
6
  subject do
7
7
  described_class.new(metadata)
8
8
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::MetadataTransformer::Iso19139 do
5
+ RSpec.describe Geoblacklight::MetadataTransformer::Iso19139 do
6
6
  subject do
7
7
  described_class.new(metadata)
8
8
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::MetadataTransformer do
5
+ RSpec.describe Geoblacklight::MetadataTransformer do
6
6
  let(:klass) { instance_double(Class) }
7
7
  before do
8
8
  allow(metadata).to receive(:blank?).and_return(false)
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Reference do
5
+ RSpec.describe Geoblacklight::Reference do
6
6
  let(:typical_reference) do
7
7
  described_class.new(["http://www.opengis.net/def/serviceType/ogc/wms", "http://hgl.harvard.edu:8080/geoserver/wms"])
8
8
  end
@@ -2,9 +2,9 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::References do
6
- let(:references_field) { Settings.FIELDS.REFERENCES }
7
- let(:file_format_field) { Settings.FIELDS.FORMAT }
5
+ RSpec.describe Geoblacklight::References do
6
+ let(:references_field) { Geoblacklight.configuration.fields.references }
7
+ let(:file_format_field) { Geoblacklight.configuration.fields.format }
8
8
  let(:typical_ogp_shapefile) do
9
9
  described_class.new(
10
10
  SolrDocument.new(
@@ -134,9 +134,11 @@ describe Geoblacklight::References do
134
134
  end
135
135
  context "with an overridden order for the formats" do
136
136
  before do
137
+ allow(Geoblacklight.configuration).to receive_messages(
138
+ metadata_shown: %w[iso19139 mods]
139
+ )
137
140
  stub_const("Settings", Module.new)
138
141
  allow(Settings).to receive_messages(
139
- METADATA_SHOWN: %w[iso19139 mods],
140
142
  FIELDS: OpenStruct.new(FORMAT: "dct_format_s")
141
143
  )
142
144
  end
@@ -2,14 +2,20 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Relation::Ancestors do
5
+ RSpec.describe Geoblacklight::Relation::Ancestors do
6
6
  let(:repository) { Blacklight::Solr::Repository.new(CatalogController.blacklight_config) }
7
- let(:ancestors) { described_class.new("nyu_2451_34502", Settings.FIELDS.SOURCE, repository) }
8
- let(:empty_ancestors) { described_class.new("harvard-g7064-s2-1834-k3", Settings.FIELDS.SOURCE, repository) }
7
+ let(:ancestors) { described_class.new("nyu_2451_34502", Geoblacklight.configuration.fields.source, repository) }
8
+ let(:empty_ancestors) do
9
+ described_class.new("harvard-g7064-s2-1834-k3", Geoblacklight.configuration.fields.source, repository)
10
+ end
9
11
 
10
12
  describe "#create_search_params" do
11
13
  it "assembles the correct search params for finding ancestor documents" do
12
- expect(ancestors.create_search_params).to eq(fq: ["{!join from=#{Settings.FIELDS.SOURCE} to=#{Settings.FIELDS.ID}}#{Settings.FIELDS.ID}:nyu_2451_34502"], fl: [Settings.FIELDS.TITLE.to_s, Settings.FIELDS.ID, Settings.FIELDS.RESOURCE_TYPE])
14
+ expect(ancestors.create_search_params).to eq(
15
+ fq: ["{!join from=#{Geoblacklight.configuration.fields.source} to=#{Geoblacklight.configuration.fields.id}}#{Geoblacklight.configuration.fields.id}:nyu_2451_34502"], fl: [
16
+ Geoblacklight.configuration.fields.title, Geoblacklight.configuration.fields.id, Geoblacklight.configuration.fields.resource_type
17
+ ]
18
+ )
13
19
  end
14
20
  end
15
21
 
@@ -2,14 +2,19 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Relation::Descendants do
5
+ RSpec.describe Geoblacklight::Relation::Descendants do
6
6
  let(:repository) { Blacklight::Solr::Repository.new(CatalogController.blacklight_config) }
7
- let(:descendants) { described_class.new("nyu_2451_34636", Settings.FIELDS.SOURCE, repository) }
8
- let(:empty_descendants) { described_class.new("harvard-g7064-s2-1834-k3", Settings.FIELDS.SOURCE, repository) }
7
+ let(:descendants) { described_class.new("nyu_2451_34636", Geoblacklight.configuration.fields.source, repository) }
8
+ let(:empty_descendants) do
9
+ described_class.new("harvard-g7064-s2-1834-k3", Geoblacklight.configuration.fields.source, repository)
10
+ end
9
11
 
10
12
  describe "#create_search_params" do
11
13
  it "assembles the correct search params for finding descendant documents" do
12
- expect(descendants.create_search_params).to eq(fq: "#{Settings.FIELDS.SOURCE}:nyu_2451_34636", fl: [Settings.FIELDS.TITLE.to_s, Settings.FIELDS.ID, Settings.FIELDS.RESOURCE_TYPE])
14
+ expect(descendants.create_search_params).to eq(fq: "#{Geoblacklight.configuration.fields.source}:nyu_2451_34636",
15
+ fl: [
16
+ Geoblacklight.configuration.fields.title, Geoblacklight.configuration.fields.id, Geoblacklight.configuration.fields.resource_type
17
+ ])
13
18
  end
14
19
  end
15
20
 
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::Relation::RelationResponse do
5
+ RSpec.describe Geoblacklight::Relation::RelationResponse do
6
6
  let(:repository) { Blacklight::Solr::Repository.new(CatalogController.blacklight_config) }
7
7
  let(:relation_resp) { described_class.new("nyu_2451_34502", repository) }
8
8
  let(:empty_relation_resp) { described_class.new("harvard-g7064-s2-1834-k3", repository) }
@@ -30,7 +30,7 @@ describe Geoblacklight::Relation::RelationResponse do
30
30
 
31
31
  describe "#respond_to_missing?" do
32
32
  it "returns true for configured relationships" do
33
- Settings.RELATIONSHIPS_SHOWN.each_key do |key|
33
+ Geoblacklight.configuration.relationships_shown.each_key do |key|
34
34
  expect(relation_resp).to respond_to(key)
35
35
  end
36
36
  end
@@ -43,23 +43,20 @@ describe Geoblacklight::Relation::RelationResponse do
43
43
  describe "#query_type" do
44
44
  it "fails for a bad query type request" do
45
45
  # Cache the existing relationship values and add a test value
46
- relationships = Settings.RELATIONSHIPS_SHOWN
47
- Settings.add_source!({
48
- RELATIONSHIPS_SHOWN: {
49
- BAD: {
50
- field: "dct_source_sm",
51
- query_type: "bad_query_type",
52
- icon: "pagelines-brands",
53
- label: "geoblacklight.relations.source_ancestor"
54
- }
55
- }
56
- })
57
- Settings.reload!
46
+ relationships = Geoblacklight.configuration.relationships_shown
47
+ Geoblacklight.configuration.relationships_shown = {
48
+ BAD: Config::Options.new({
49
+ field: "dct_source_sm",
50
+ query_type: "bad_query_type",
51
+ icon: "pagelines-brands",
52
+ label: "geoblacklight.relations.source_ancestor"
53
+ })
54
+ }
58
55
 
59
56
  expect { relation_resp.BAD }.to raise_error(ArgumentError)
60
57
 
61
58
  # Restore relationship values
62
- Settings.RELATIONSHIPS_SHOWN = relationships
59
+ Geoblacklight.configuration.relationships_shown = relationships
63
60
  end
64
61
  end
65
62
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::FeatureInfoResponse do
5
+ RSpec.describe Geoblacklight::FeatureInfoResponse do
6
6
  let(:response) { described_class.new(OpenStruct.new(body: "<html><body><table><th>Header1</th><th>Header2</th><td>value1</td><td>value2</td></body></html>", headers: {"content-type" => "all good"})) }
7
7
  let(:response_multiple_features) { described_class.new(OpenStruct.new(body: "<html><body><table><th>Header1</th><th>Header2</th><tr><td>value1</td><td>value2</td></tr><tr><td>value3</td><td>value4</td></tr></body></html>", headers: {"content-type" => "all good"})) }
8
8
  let(:error_response) { described_class.new(error: "bad stuff") }
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::WmsLayer do
5
+ RSpec.describe Geoblacklight::WmsLayer do
6
6
  let(:wms_layer) { described_class.new(params) }
7
7
  let(:rails_4_params) { {"URL" => "http://www.example.com/", "X" => "277"} }
8
8
  let(:rails_5_params) { instance_double(ActionController::Parameters) }
@@ -4,8 +4,8 @@ require "spec_helper"
4
4
 
5
5
  RSpec.describe Geoblacklight::BboxFilterQuery do
6
6
  # Subject
7
- subject(:bbox_filter_query) { described_class.new(filter, solr_params) }
8
-
7
+ subject(:bbox_filter_query) { described_class.new(blacklight_config:) }
8
+ let(:result) { bbox_filter_query.call(filter, solr_params) }
9
9
  let(:solr_params) { {} }
10
10
 
11
11
  # Search State
@@ -32,6 +32,10 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
32
32
  end
33
33
 
34
34
  describe "#envelope_bounds" do
35
+ before do
36
+ result
37
+ end
38
+
35
39
  it "returns an BoundingBox envelope" do
36
40
  expect(bbox_filter_query.envelope_bounds).to eq("ENVELOPE(-180, 120, 80, -80)")
37
41
  end
@@ -41,6 +45,7 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
41
45
  context "without an explicit boost" do
42
46
  before do
43
47
  facet_config.within_boost = nil
48
+ result
44
49
  end
45
50
 
46
51
  it "returns an default boost value" do
@@ -51,17 +56,19 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
51
56
  context "with an explicit boost" do
52
57
  before do
53
58
  facet_config.within_boost = 99
59
+ result
54
60
  end
55
61
 
56
- it "applies boost based on configured Settings.BBOX_WITHIN_BOOST" do
62
+ it "applies boost based on configuration" do
57
63
  expect(bbox_filter_query.boost).to eq("^99")
58
64
  end
59
65
  end
60
66
  end
61
67
 
62
68
  describe "#relevancy_boost" do
69
+ let(:relevancy_boost) { result.last }
63
70
  it "returns a relevancy_boost" do
64
- expect(bbox_filter_query.relevancy_boost[:bq].to_s).to include("IsWithin")
71
+ expect(relevancy_boost[:bq].to_s).to include("IsWithin")
65
72
  end
66
73
 
67
74
  context "with overlap boost" do
@@ -69,8 +76,8 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
69
76
  facet_config.overlap_boost = 2
70
77
  end
71
78
 
72
- it "applies overlapRatio when Settings.OVERLAP_RATIO_BOOST is configured" do
73
- expect(bbox_filter_query.relevancy_boost[:bf].to_s).to include("$overlap^2")
79
+ it "applies overlapRatio" do
80
+ expect(relevancy_boost[:bf].to_s).to include("$overlap^2")
74
81
  end
75
82
  end
76
83
 
@@ -79,8 +86,8 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
79
86
  facet_config.overlap_boost = nil
80
87
  end
81
88
 
82
- it "does not apply overlapRatio when Settings.OVERLAP_RATIO_BOOST not configured" do
83
- expect(bbox_filter_query.relevancy_boost).not_to have_key(:overlap)
89
+ it "does not apply overlapRatio" do
90
+ expect(relevancy_boost).not_to have_key(:overlap)
84
91
  end
85
92
  end
86
93
 
@@ -91,15 +98,17 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
91
98
  end
92
99
 
93
100
  it "appends overlap and includes the local boost" do
94
- expect(bbox_filter_query.relevancy_boost[:bf].to_s).to include("$overlap^2")
95
- expect(bbox_filter_query.relevancy_boost[:bf].to_s).to include("local_boost^5")
101
+ expect(relevancy_boost[:bf].to_s).to include("$overlap^2")
102
+ expect(relevancy_boost[:bf].to_s).to include("local_boost^5")
96
103
  end
97
104
  end
98
105
  end
99
106
 
100
107
  describe "#intersects_filter" do
108
+ let(:intersects_filter) { result.first }
109
+
101
110
  it "returns an Intersects query" do
102
- expect(bbox_filter_query.intersects_filter).to include("Intersects")
111
+ expect(intersects_filter).to include("Intersects")
103
112
  end
104
113
  end
105
114
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SolrDocument::Citation do
5
+ RSpec.describe Geoblacklight::SolrDocument::Citation do
6
6
  describe "#geoblacklight_citation" do
7
7
  let(:fixture) { JSON.parse(read_fixture("solr_documents/restricted-line.json")) }
8
8
  let(:document) { SolrDocument.new(fixture) }
@@ -7,7 +7,7 @@ class MyDocument
7
7
  include Geoblacklight::SolrDocument::Finder
8
8
  end
9
9
 
10
- describe Geoblacklight::SolrDocument::Finder do
10
+ RSpec.describe Geoblacklight::SolrDocument::Finder do
11
11
  let(:document_klass) { MyDocument }
12
12
 
13
13
  describe "#find" do
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SolrDocument::Inspection do
5
+ RSpec.describe Geoblacklight::SolrDocument::Inspection do
6
6
  subject { SolrDocument.new }
7
7
 
8
8
  describe "#inspectable?" do
@@ -2,11 +2,11 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SolrDocument do
5
+ RSpec.describe Geoblacklight::SolrDocument do
6
6
  let(:document) { SolrDocument.new(document_attributes) }
7
- let(:rights_field) { Settings.FIELDS.ACCESS_RIGHTS }
8
- let(:provider_field) { Settings.FIELDS.PROVIDER }
9
- let(:references_field) { Settings.FIELDS.REFERENCES }
7
+ let(:rights_field) { Geoblacklight.configuration.fields.access_rights }
8
+ let(:provider_field) { Geoblacklight.configuration.fields.provider }
9
+ let(:references_field) { Geoblacklight.configuration.fields.references }
10
10
  describe "#available?" do
11
11
  let(:document_attributes) { {} }
12
12
  describe "a public document" do
@@ -234,39 +234,4 @@ describe Geoblacklight::SolrDocument do
234
234
  expect(document.viewer_endpoint).to eq ""
235
235
  end
236
236
  end
237
- describe "checked_endpoint" do
238
- let(:document_attributes) { {} }
239
- let(:reference) { Geoblacklight::Reference.new(["http://www.opengis.net/def/serviceType/ogc/wms", "http://www.example.com/wms"]) }
240
- it "returns endpoint if available" do
241
- expect_any_instance_of(Geoblacklight::References).to receive(:wms).and_return(reference)
242
- expect(document.checked_endpoint("wms")).to eq "http://www.example.com/wms"
243
- end
244
- it "return nil if not available" do
245
- expect_any_instance_of(Geoblacklight::References).to receive(:wms).and_return(nil)
246
- expect(document.checked_endpoint("wms")).to be_nil
247
- end
248
- end
249
- describe "method_missing" do
250
- let(:document_attributes) { {} }
251
- it "calls checked_endpoint with parsed method name if matches" do
252
- expect(document).to receive(:checked_endpoint).with("wms").and_return(nil)
253
- expect(document.wms_url).to be_nil
254
- end
255
- it "raises no method error" do
256
- expect { document.wms_urlz }.to raise_error NoMethodError
257
- end
258
- end
259
- describe "#respond_to_missing?" do
260
- let(:document_attributes) { {} }
261
- context "with a valid method" do
262
- it "returns true" do
263
- expect(document.respond_to?(:wms_url)).to be true
264
- end
265
- end
266
- context "with a invalid method" do
267
- it "returns true" do
268
- expect(document.respond_to?(:wms_urlz)).to be false
269
- end
270
- end
271
- end
272
237
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SuppressedRecordsSearchBehavior do
5
+ RSpec.describe Geoblacklight::SuppressedRecordsSearchBehavior do
6
6
  subject(:searcher) { search_builder.with(user_params) }
7
7
 
8
8
  let(:user_params) { {} }
@@ -25,7 +25,7 @@ describe Geoblacklight::SuppressedRecordsSearchBehavior do
25
25
 
26
26
  context "when document action call like CatalogController#web_services" do
27
27
  it "does not hide/filter suppressed records" do
28
- solr_params[:q] = "{!lucene}#{Settings.FIELDS.ID}:"
28
+ solr_params[:q] = "{!lucene}#{Geoblacklight.configuration.fields.id}:"
29
29
  expect(searcher.hide_suppressed_records(solr_params)).to be_nil
30
30
  end
31
31
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe "Catalog Routes", type: :routing do
5
+ RSpec.describe "Catalog Routes", type: :routing do
6
6
  # Test paths for custom routes
7
7
  it "maps { :controller => 'catalog', :action => 'opensearch', :format => 'xml' } to /catalog/opensearch.xml" do
8
8
  expect(get: "/catalog/opensearch.xml").to route_to(controller: "catalog", action: "opensearch", format: "xml")
data/spec/spec_helper.rb CHANGED
@@ -11,6 +11,7 @@ if ENV.fetch("CIRCLE_ARTIFACTS", false)
11
11
  end
12
12
 
13
13
  SimpleCov.start "rails" do
14
+ add_filter "app/components/blacklight/icons"
14
15
  add_filter "lib/generators/geoblacklight/install_generator.rb"
15
16
  add_filter "lib/geoblacklight/version.rb"
16
17
  add_filter "lib/geoblacklight/engine.rb"
@@ -43,11 +44,6 @@ Capybara.register_driver :chrome_headless do |app|
43
44
  options.add_argument("--disable-gpu")
44
45
  options.add_argument("--no-sandbox")
45
46
  options.add_argument("--window-size=1280,1024")
46
- # Return from #visit at DOMContentLoaded instead of waiting for the full
47
- # window `load` event. GeoBlacklight pages pull basemap tiles and WMS/TMS
48
- # layers from external hosts; in CI those requests can hang and prevent
49
- # `load` from ever firing, causing Net::ReadTimeout on #visit.
50
- options.page_load_strategy = :eager
51
47
 
52
48
  # Allow longer TCP reads to prevent timeout in the case of loading fixture
53
49
  # eee6150b-ce2f-4837-9d17-ce72a0c1c26f, as part of relations_spec.rb
@@ -59,26 +55,18 @@ end
59
55
 
60
56
  Capybara.javascript_driver = :chrome_headless
61
57
 
62
- Capybara.default_max_wait_time = ENV["CI"] ? 10 : 2
63
-
64
58
  require "geoblacklight"
65
59
 
66
60
  Dir["./spec/support/**/*.rb"].sort.each { |f| require f }
67
61
 
68
- FactoryBot.definition_file_paths = [File.expand_path("../factories", __FILE__)]
62
+ FactoryBot.definition_file_paths = [File.expand_path("factories", __dir__)]
69
63
  FactoryBot.find_definitions
70
64
 
71
65
  RSpec.configure do |config|
72
- config.use_transactional_fixtures = true
66
+ config.disable_monkey_patching!
73
67
 
74
- if Rails::VERSION::MAJOR >= 5
75
- config.include ::Rails.application.routes.url_helpers
76
- config.include ::Rails.application.routes.mounted_helpers
77
- else
78
- config.include BackportTestHelpers, type: :controller
79
- end
68
+ config.use_transactional_fixtures = true
80
69
 
81
70
  config.include Devise::Test::ControllerHelpers, type: :controller
82
71
  config.include ViewComponent::TestHelpers, type: :component
83
- config.include ViewComponentCapybaraTestHelpers, type: :component
84
72
  end
@@ -4,7 +4,7 @@ require "spec_helper"
4
4
  require "rake"
5
5
  require "fileutils"
6
6
 
7
- describe "geoblacklight.rake" do
7
+ RSpec.describe "geoblacklight.rake" do
8
8
  describe "geoblacklight:downloads:mkdir" do
9
9
  before do
10
10
  Rails.application.load_tasks
@@ -13,15 +13,16 @@ class TestAppGenerator < Rails::Generators::Base
13
13
  end
14
14
  end
15
15
 
16
+ # Install blacklight
16
17
  def run_blacklight_generator
17
18
  say_status("warning", "GENERATING BL", :yellow)
18
-
19
19
  generate "blacklight:install", "--devise", "--skip-solr"
20
20
  end
21
21
 
22
- # Install geoblacklight with the `test` option
22
+ # Install geoblacklight
23
23
  def install_engine
24
- generate "geoblacklight:install", "-f --test"
24
+ say_status("warning", "GENERATING GBL", :yellow)
25
+ generate "geoblacklight:install"
25
26
  end
26
27
 
27
28
  # Symlink fixture document directories so the test app doesn't have to be