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
@@ -15,36 +15,21 @@ module Geoblacklight
15
15
  delegate :viewer_endpoint, to: :item_viewer
16
16
 
17
17
  included do
18
- attribute :display_note, :array, Settings.FIELDS.DISPLAY_NOTE
19
- attribute :geom_field, :string, Settings.FIELDS.GEOMETRY
20
- attribute :wxs_identifier, :string, Settings.FIELDS.WXS_IDENTIFIER
21
- attribute :file_format, :string, Settings.FIELDS.FORMAT
22
- attribute :rights_field_data, :string, Settings.FIELDS.ACCESS_RIGHTS
23
- attribute :provider, :string, Settings.FIELDS.PROVIDER
24
- attribute :resource_type, :array, Settings.FIELDS.RESOURCE_TYPE
25
- attribute :resource_class, :array, Settings.FIELDS.RESOURCE_CLASS
26
- attribute :title, :string, Settings.FIELDS.TITLE
27
- attribute :creator, :array, Settings.FIELDS.CREATOR
28
- attribute :publisher, :string, Settings.FIELDS.PUBLISHER
29
- attribute :identifiers, :array, Settings.FIELDS.IDENTIFIER
30
- attribute :issued, :string, Settings.FIELDS.DATE_ISSUED
31
- attribute :format, :string, Settings.FIELDS.FORMAT
32
- end
33
-
34
- ##
35
- # Warn once per reader name rather than once per document: a search results page
36
- # would otherwise emit one warning per result, because
37
- # ActiveSupport::Deprecation does not deduplicate.
38
- # @param method [Symbol]
39
- def self.warn_about_url_reader(method)
40
- @warned_url_readers ||= Set.new
41
- return unless @warned_url_readers.add?(method)
42
-
43
- Geoblacklight.deprecation.warn(
44
- "SolrDocument##{method} is resolved dynamically by Geoblacklight::SolrDocument#method_missing, " \
45
- "which GeoBlacklight 6 removes; call references.#{method.to_s.delete_suffix("_url")}&.endpoint " \
46
- "instead"
47
- )
18
+ field_config = Geoblacklight.configuration.fields
19
+ attribute :display_note, :array, field_config.display_note
20
+ attribute :geom_field, :string, field_config.geometry
21
+ attribute :wxs_identifier, :string, field_config.wxs_identifier
22
+ attribute :file_format, :string, field_config.format
23
+ attribute :rights_field_data, :string, field_config.access_rights
24
+ attribute :provider, :string, field_config.provider
25
+ attribute :resource_type, :array, field_config.resource_type
26
+ attribute :resource_class, :array, field_config.resource_class
27
+ attribute :title, :string, field_config.title
28
+ attribute :creator, :array, field_config.creator
29
+ attribute :publisher, :string, field_config.publisher
30
+ attribute :identifiers, :array, field_config.identifier
31
+ attribute :issued, :string, field_config.date_issued
32
+ attribute :format, :string, field_config.format
48
33
  end
49
34
 
50
35
  def available?
@@ -60,7 +45,7 @@ module Geoblacklight
60
45
  end
61
46
 
62
47
  def downloadable?
63
- Geoblacklight.deprecation.silence { direct_download || download_types.present? || iiif_download } && available?
48
+ (direct_download || download_types.present? || iiif_download) && available?
64
49
  end
65
50
 
66
51
  def references
@@ -76,7 +61,7 @@ module Geoblacklight
76
61
  end
77
62
 
78
63
  def same_institution?
79
- provider&.casecmp?(Settings.INSTITUTION.downcase)
64
+ provider&.casecmp?(Geoblacklight.configuration.institution.downcase)
80
65
  end
81
66
 
82
67
  def iiif_download
@@ -102,30 +87,5 @@ module Geoblacklight
102
87
  def geometry
103
88
  @geometry ||= Geoblacklight::Geometry.new(geom_field)
104
89
  end
105
-
106
- ##
107
- # Provides a convenience method to access a SolrDocument's References
108
- # endpoint url without having to check and see if it is available
109
- # :type => a string which if its a Geoblacklight::Constants::URI key
110
- # will return a coresponding Geoblacklight::Reference
111
- def checked_endpoint(type)
112
- type = references.public_send(type)
113
- type.endpoint if type.present?
114
- end
115
-
116
- private
117
-
118
- def method_missing(method, *args, &block)
119
- if /.*_url$/.match?(method.to_s)
120
- Geoblacklight::SolrDocument.warn_about_url_reader(method)
121
- Geoblacklight.deprecation.silence { checked_endpoint(method.to_s.gsub("_url", "")) }
122
- else
123
- super
124
- end
125
- end
126
-
127
- def respond_to_missing?(method, *args, &block)
128
- /.*_url$/.match?(method.to_s) || super
129
- end
130
90
  end
131
91
  end
@@ -16,17 +16,17 @@ module Geoblacklight
16
16
  # Show suppressed records when searching relationships
17
17
  return if blacklight_params.fetch(:f,
18
18
  {}).keys.any? do |field|
19
- Settings.RELATIONSHIPS_SHOWN.map do |_key, value|
19
+ Geoblacklight.configuration.relationships_shown.map do |_key, value|
20
20
  value.field
21
21
  end.include?(field)
22
22
  end
23
23
 
24
24
  # Do not suppress action_documents method calls for individual documents
25
25
  # ex. CatalogController#web_services (exportable views)
26
- return if solr_params[:q]&.include?("{!lucene}#{Settings.FIELDS.ID}:")
26
+ return if solr_params[:q]&.include?("{!lucene}#{Geoblacklight.configuration.fields.id}:")
27
27
 
28
28
  solr_params[:fq] ||= []
29
- solr_params[:fq] << "-#{Settings.FIELDS.SUPPRESSED}: true"
29
+ solr_params[:fq] << "-#{Geoblacklight.configuration.fields.suppressed}: true"
30
30
  end
31
31
  end
32
32
  end
@@ -1,4 +1,4 @@
1
- <div class='row'>
1
+ <div class="row">
2
2
  <div
3
3
  id="documents"
4
4
  class="documents-list col-md-6"
@@ -14,8 +14,8 @@
14
14
  </div>
15
15
  </div>
16
16
  <% if results_js_map_selector(controller.controller_name) == "index" %>
17
- <%= render(Geoblacklight::LocationLeafletMapComponent.new(page: 'index', geosearch: { dynamic: true }, classes: 'col-md-6 sticky-top position-sticky leaflet-viewer')) %>
17
+ <%= render(Geoblacklight::LocationLeafletMapComponent.new(page: 'index', geosearch: { dynamic: true }, classes: 'col-md-6 sticky-top position-sticky leaflet-viewer border')) %>
18
18
  <% else %>
19
- <%= render(Geoblacklight::LocationLeafletMapComponent.new(page: 'index', classes: 'col-md-6 leaflet-viewer')) %>
19
+ <%= render(Geoblacklight::LocationLeafletMapComponent.new(page: 'index', classes: 'col-md-6 leaflet-viewer border')) %>
20
20
  <% end %>
21
21
  </div>
@@ -1,24 +1,32 @@
1
- <div class='container'>
2
- <div class='row text-center'>
3
- <div class='col-sm'>
1
+ <div class="container">
2
+ <div class="row text-center">
3
+ <div class="col-sm">
4
4
  <%= content_tag :h3, t('geoblacklight.home.category_heading') %>
5
- <div class='row'>
6
- <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'home', label: 'geoblacklight.home.institution', facet_field: Settings.FIELDS.PROVIDER, response: @response)) %>
5
+ <div class="row">
6
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'home', label: 'geoblacklight.home.institution',
7
+ facet_field_presenter: facet_field_presenter(blacklight_config.facet_fields[Geoblacklight.configuration.fields.provider], {}),
8
+ items: @response.aggregations[Geoblacklight.configuration.fields.provider].items)) %>
7
9
 
8
- <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'arrow-circle-down', label: 'geoblacklight.home.data_type', facet_field: Settings.FIELDS.RESOURCE_TYPE, response: @response)) %>
10
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'arrow-circle-down', label: 'geoblacklight.home.data_type',
11
+ facet_field_presenter: facet_field_presenter(blacklight_config.facet_fields[Geoblacklight.configuration.fields.resource_type], {}),
12
+ items: @response.aggregations[Geoblacklight.configuration.fields.resource_type].items)) %>
9
13
  </div>
10
- <div class='row'>
11
- <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'globe', label: 'geoblacklight.home.placename', facet_field: Settings.FIELDS.SPATIAL_COVERAGE, response: @response)) %>
14
+ <div class="row">
15
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'globe', label: 'geoblacklight.home.placename',
16
+ facet_field_presenter: facet_field_presenter(blacklight_config.facet_fields[Geoblacklight.configuration.fields.spatial_coverage], {}),
17
+ items: @response.aggregations[Geoblacklight.configuration.fields.spatial_coverage].items)) %>
12
18
 
13
- <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'tags', label: 'geoblacklight.home.subject', facet_field: Settings.FIELDS.SUBJECT, response: @response)) %>
19
+ <%= render(Geoblacklight::HomepageFeatureFacetComponent.new(icon: 'tags', label: 'geoblacklight.home.subject',
20
+ facet_field_presenter: facet_field_presenter(blacklight_config.facet_fields[Geoblacklight.configuration.fields.subject], {}),
21
+ items: @response.aggregations[Geoblacklight.configuration.fields.subject].items)) %>
14
22
  </div>
15
23
  </div>
16
- <div class='col-sm'>
24
+ <div class="col-sm">
17
25
  <%= content_tag :h3, t('geoblacklight.home.map_heading') %>
18
- <%= render(Geoblacklight::LocationLeafletMapComponent.new(page: 'home', geosearch: { dynamic: false })) %>
26
+ <%= render(Geoblacklight::LocationLeafletMapComponent.new(page: 'home', geosearch: { dynamic: false }, classes: 'border')) %>
19
27
  </div>
20
28
  </div>
21
- <div id="geoblacklight-version" class="text-end">
22
- <%= t('geoblacklight.home.version', version: Geoblacklight::VERSION ) %>
23
- </div>
29
+ </div>
30
+ <div id="geoblacklight-version" class="text-end">
31
+ <%= t('geoblacklight.home.version', version: Geoblacklight::VERSION ) %>
24
32
  </div>
@@ -1,8 +1,6 @@
1
- <%# Removed in GeoBlacklight 6. The deprecated helpers it calls are silenced here so that a stock application is not warned once per request; Geoblacklight::DeprecatedConfiguration warns at boot if an application overrides it. %>
2
- <% Geoblacklight.deprecation.silence do %>
3
1
  <% document ||= @documents.first %>
4
2
 
5
- <div class='metadata-view'>
3
+ <div class="metadata-view">
6
4
  <div class="container-fluid">
7
5
  <ul class="nav nav-pills" role="tablist">
8
6
  <% document.references.shown_metadata.each do |metadata| %>
@@ -27,4 +25,3 @@
27
25
  <% end %>
28
26
  </div>
29
27
  </div>
30
- <% end %>
@@ -1 +1 @@
1
- <%= content_tag(:div, nil, data: {relations: true, url: solr_document_path(document.id)}) %>
1
+ <%= content_tag(:div, nil, data: {relations: true, url: solr_document_path(document.id)}) %>
@@ -5,7 +5,6 @@
5
5
  <% unless has_search_parameters? %>
6
6
  <%# if there are no input/search related params, display the "home" partial -%>
7
7
  <%= render 'home' %>
8
- <%= render 'shared/sitelinks_search_box' %>
9
8
  <% else %>
10
9
  <% content_for(:sidebar) do %>
11
10
  <% conf = blacklight_config.view_config(document_index_view_type) %>
@@ -1,8 +1,7 @@
1
1
  <div id="metadata-markup-container" class="container-fluid">
2
2
  <div class="alert alert-warning" role="alert">
3
- <span class="glyphicon glyphicon-exclamation-sign" aria-hidden="true"></span>
4
3
  <span class="visually-hidden">Error:</span>
5
- <span><%= t('geoblacklight.metadata.metadata_error')%></span>
4
+ <span><%= t('geoblacklight.metadata.transform_error') %></span>
6
5
  </div>
7
6
  <%= CodeRay.scan(content, :xml).div.html_safe %>
8
7
  </div>
@@ -1,6 +1,6 @@
1
1
  <div id="metadata-error-container" class="container-fluid">
2
2
  <div>
3
- <h1><%= t('geoblacklight.metadata.metadata_error')%></h1>
3
+ <h1><%= t('geoblacklight.metadata.metadata_error') %></h1>
4
4
  </div>
5
- <p><%= t('geoblacklight.metadata.metadata_trace')%></p>
5
+ <p><%= t('geoblacklight.metadata.metadata_trace') %></p>
6
6
  </div>
@@ -15,5 +15,5 @@
15
15
  <% end %>
16
16
  <% component.with_footer do %>
17
17
  <button type="button" class="btn btn-secondary" data-bl-dismiss="modal"><%= t('blacklight.modal.close') %></button>
18
- <% end %>
18
+ <% end %>
19
19
  <% end %>
@@ -1,3 +1,3 @@
1
- <%- Settings.RELATIONSHIPS_SHOWN.each do |relationship_type, rel_type_info| %>
1
+ <%- Geoblacklight.configuration.relationships_shown.each do |relationship_type, rel_type_info| %>
2
2
  <%= render Geoblacklight::RelationsComponent.new(relations: @relations, relationship_type:, rel_type_info:) %>
3
3
  <% end %>
@@ -2,7 +2,7 @@
2
2
 
3
3
  json.current_doc @relations.search_id
4
4
  json.relations do
5
- Settings.RELATIONSHIPS_SHOWN.each do |key, _value|
5
+ Geoblacklight.configuration.relationships_shown.each do |key, _value|
6
6
  json.set! key.downcase.to_s, @relations.public_send(key) unless @relations.public_send(key)["numFound"].to_i.zero?
7
7
  end
8
8
  end
@@ -3,6 +3,3 @@
3
3
  Config.setup do |config|
4
4
  config.const_name = "Settings"
5
5
  end
6
-
7
- Settings.prepend_source!(File.expand_path("new_gbl_settings_defaults_4_1.yml", __dir__))
8
- Settings.reload!
@@ -1,99 +1,100 @@
1
1
  en:
2
2
  geoblacklight:
3
- bbox_label: 'Bounding Box'
4
- location: 'Location'
3
+ bbox_label: "Bounding Box"
4
+ location: "Location"
5
5
  clipboard:
6
6
  citation: Citation copied to clipboard
7
7
  web_service: Web service copied to clipboard
8
8
  download:
9
- download: 'Download'
10
- download_link: 'Original %{download_format}'
11
- success: 'Your file %{title} is ready for download'
12
- error: 'Sorry, the requested file could not be downloaded.'
13
- export_formats: 'Export Formats'
14
- export_link: 'Export %{download_format}'
15
- export_shapefile_link: 'Shapefile'
16
- export_kmz_link: 'KMZ'
17
- export_geojson_link: 'GeoJSON'
18
- export_geotiff_link: 'GeoTIFF'
19
- export_csv_link: 'CSV'
9
+ download: "Download"
10
+ download_link: "Original %{download_format}"
11
+ success: "Your file %{title} is ready for download"
12
+ error: "Sorry, the requested file could not be downloaded."
13
+ export_formats: "Export Formats"
14
+ export_link: "Export %{download_format}"
15
+ export_shapefile_link: "Shapefile"
16
+ export_kmz_link: "KMZ"
17
+ export_geojson_link: "GeoJSON"
18
+ export_geotiff_link: "GeoTIFF"
19
+ export_csv_link: "CSV"
20
20
  home:
21
- headline: 'Explore and discover...'
22
- search_heading: 'Find the maps and data you need'
23
- category_heading: 'Find by...'
24
- map_heading: 'Find by location'
25
- institution: 'Institution'
26
- data_type: 'Data type'
27
- placename: 'Placename'
28
- subject: 'Subject'
29
- version: 'GeoBlacklight version %{version}'
21
+ headline: "Explore and discover..."
22
+ search_heading: "Find the maps and data you need"
23
+ category_heading: "Find by..."
24
+ map_heading: "Find by location"
25
+ institution: "Institution"
26
+ data_type: "Data type"
27
+ placename: "Placename"
28
+ subject: "Subject"
29
+ version: "GeoBlacklight version %{version}"
30
30
  tools:
31
- login_to_view: 'Login to View and Download'
32
- open_arcgis: 'Open in ArcGIS Online'
31
+ login_to_view: "Login to View and Download"
32
+ open_arcgis: "Open in ArcGIS Online"
33
33
  formats:
34
- arcgrid: 'ArcGRID'
35
- geojson: 'GeoJSON'
36
- geotiff: 'GeoTIFF'
37
- kmz: 'KMZ'
38
- shapefile: 'Shapefile'
39
- jpg: 'JPG'
40
- csv: 'CSV'
41
- esri_geodatabase: 'ESRI Geodatabase'
42
- sqlite_database: 'SQLite Database'
34
+ arcgrid: "ArcGRID"
35
+ geojson: "GeoJSON"
36
+ geotiff: "GeoTIFF"
37
+ kmz: "KMZ"
38
+ shapefile: "Shapefile"
39
+ jpg: "JPG"
40
+ csv: "CSV"
41
+ esri_geodatabase: "ESRI Geodatabase"
42
+ sqlite_database: "SQLite Database"
43
43
  map:
44
- label: 'Zoomable map'
44
+ label: "Zoomable map"
45
45
  references:
46
- wms: 'Web Mapping Service (WMS)'
47
- wms_abv: 'WMS'
48
- wms_label: 'layers'
49
- wfs: 'Web Feature Service (WFS)'
50
- wfs_abv: 'WFS'
51
- wfs_label: 'typeNames'
52
- iiif: 'International Image Interoperability Framework (IIIF)'
53
- iso19139: 'ISO 19139'
54
- mods: 'MODS'
55
- fgdc: 'FGDC'
56
- html: 'HTML'
57
- feature_layer: 'ArcGIS Feature Layer'
58
- tiled_map_layer: 'ArcGIS Tiled Map Layer'
59
- dynamic_map_layer: 'ArcGIS Dynamic Map Layer'
60
- image_map_layer: 'ArcGIS Image Map Layer'
61
- data_dictionary: 'Documentation'
62
- services: 'Web services'
63
- tms: 'Tile Map Service'
64
- tilejson: 'TileJSON Document'
65
- xyz: 'XYZ Tiles'
66
- wmts: 'Web Map Tile Service'
67
- pmtiles: 'PMTiles Layer'
68
- cog: 'COG Layer'
46
+ wms: "Web Mapping Service (WMS)"
47
+ wms_abv: "WMS"
48
+ wms_label: "layers"
49
+ wfs: "Web Feature Service (WFS)"
50
+ wfs_abv: "WFS"
51
+ wfs_label: "typeNames"
52
+ iiif: "International Image Interoperability Framework (IIIF)"
53
+ iso19139: "ISO 19139"
54
+ mods: "MODS"
55
+ fgdc: "FGDC"
56
+ html: "HTML"
57
+ feature_layer: "ArcGIS Feature Layer"
58
+ tiled_map_layer: "ArcGIS Tiled Map Layer"
59
+ dynamic_map_layer: "ArcGIS Dynamic Map Layer"
60
+ image_map_layer: "ArcGIS Image Map Layer"
61
+ data_dictionary: "Documentation"
62
+ services: "Web services"
63
+ tms: "Tile Map Service"
64
+ tilejson: "TileJSON Document"
65
+ xyz: "XYZ Tiles"
66
+ wmts: "Web Map Tile Service"
67
+ pmtiles: "PMTiles Layer"
68
+ cog: "COG Layer"
69
69
  relations:
70
- member_of_ancestors: 'Belongs to collection...'
71
- member_of_descendants: 'Collection records...'
72
- part_of_ancestors: 'Is part of...'
73
- part_of_descendants: 'Has part...'
74
- relation_ancestors: 'Related records...'
75
- relation_descendants: 'Related records...'
76
- replaces_ancestors: 'Replaces...'
77
- replaces_descendants: 'Is replaced by...'
78
- source_ancestors: 'Source records...'
79
- source_descendants: 'Derived records...'
80
- version_of_ancestors: 'Is version of...'
81
- version_of_descendants: 'Has version...'
70
+ member_of_ancestors: "Belongs to collection..."
71
+ member_of_descendants: "Collection records..."
72
+ part_of_ancestors: "Is part of..."
73
+ part_of_descendants: "Has part..."
74
+ relation_ancestors: "Related records..."
75
+ relation_descendants: "Related records..."
76
+ replaces_ancestors: "Replaces..."
77
+ replaces_descendants: "Is replaced by..."
78
+ source_ancestors: "Source records..."
79
+ source_descendants: "Derived records..."
80
+ version_of_ancestors: "Is version of..."
81
+ version_of_descendants: "Has version..."
82
82
  browse_all_no_count: "Browse all records..."
83
83
  browse_all: "Browse all %{count} records..."
84
84
  modal:
85
85
  copy-citation: "Copy Citation"
86
86
  metadata:
87
- toggle_summary: 'Toggle summary'
88
- view_metadata: 'View Metadata'
89
- more_details: 'More details at'
90
- metadata_error: 'The metadata view for selected schema is not available'
91
- metadata_trace: 'Please select another metadata view. Alternately, try downloading the file or reaching out to the holding institution.'
87
+ metadata_error: The metadata view for selected schema is not available
88
+ metadata_trace: Please select another metadata view. Alternately, try downloading the file or reaching out to the holding institution.
89
+ more_details: More details at
90
+ toggle_summary: Toggle summary
91
+ transform_error: HTML view for selected schema is not available
92
+ view_metadata: View Metadata
92
93
  show:
93
- attribute: 'Attribute'
94
- value: 'Value'
95
- click_map: 'Click on map to inspect values'
96
- table_name: 'Map data'
94
+ attribute: "Attribute"
95
+ value: "Value"
96
+ click_map: "Click on map to inspect values"
97
+ table_name: "Map data"
97
98
  help_text:
98
99
  viewer_protocol:
99
100
  cog:
@@ -19,7 +19,7 @@ Gem::Specification.new do |spec|
19
19
  spec.required_rubygems_version = ">= 2.5.2"
20
20
 
21
21
  spec.add_dependency "rails", ">= 6.1", "< 9"
22
- spec.add_dependency "blacklight", "~> 8.0"
22
+ spec.add_dependency "blacklight", ">= 8.0", "< 10"
23
23
  spec.add_dependency "config"
24
24
  spec.add_dependency "faraday", "~> 2.0"
25
25
  spec.add_dependency "coderay"
@@ -28,18 +28,17 @@ Gem::Specification.new do |spec|
28
28
  spec.add_dependency "mime-types"
29
29
  spec.add_dependency "rgeo-geojson"
30
30
  spec.add_dependency "rsolr"
31
- spec.add_dependency "vite_rails", "~> 3.0"
32
31
  spec.add_dependency "zeitwerk"
33
32
 
34
33
  spec.add_development_dependency "rails-controller-testing"
35
34
  spec.add_development_dependency "rspec-rails"
36
35
  spec.add_development_dependency "engine_cart", "~> 2.0"
37
36
  spec.add_development_dependency "capybara", ">= 2.5.0"
38
- spec.add_development_dependency "selenium-webdriver", ">= 4.11"
37
+ spec.add_development_dependency "selenium-webdriver"
39
38
  spec.add_development_dependency "factory_bot_rails"
40
39
  spec.add_development_dependency "simplecov", "~> 0.22"
41
40
  spec.add_development_dependency "foreman"
42
- spec.add_development_dependency "standard", "~> 1.56.0"
41
+ spec.add_development_dependency "standardrb", "1.0.1"
43
42
  spec.add_development_dependency "webmock", "~> 3.14"
44
43
  spec.add_development_dependency "database_cleaner"
45
44
  spec.add_development_dependency "axe-core-rspec"
@@ -1,36 +1,45 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Geoblacklight
4
- # Run general asset setup and then delegate to the appropriate generator
5
- # Based on Blacklight::AssetsGenerator
4
+ # Set up the delivery strategies for CSS and JS assets.
6
5
  class AssetsGenerator < Rails::Generators::Base
7
- class_option :"asset-pipeline", type: :string, default: ENV.fetch("ASSET_PIPELINE", "importmap"), desc: "Choose the asset pipeline to use (vite or importmap)"
8
- class_option :test, type: :boolean, default: ENV.fetch("CI", false), aliases: "-t", desc: "Indicates that app will be installed in a test environment"
9
-
10
- # Pick a version of the frontend asset package and install it.
11
- #
12
- # If a branch was specified (e.g. you are running a template.rb build
13
- # against a test branch), use the latest version available on npm.
14
- #
15
- # Otherwise, pick the version from npm that matches our Geoblacklight
16
- # gem version.
17
- def add_frontend
18
- if ENV["BRANCH"]
19
- run "yarn add @geoblacklight/frontend@latest"
20
- else
21
- run "yarn add @geoblacklight/frontend@#{Geoblacklight::VERSION}"
22
- end
6
+ source_root File.expand_path("../templates", __FILE__)
7
+
8
+ desc <<-DESCRIPTION
9
+ This generator sets up compilation/delivery of JS and CSS. It assumes that
10
+ the JS pipeline is importmaps (the default in Rails 8) and that the CSS
11
+ pipeline has already been created via the `rails new` option --css=bootstrap.
12
+
13
+ JS sources from the Blacklight and Geoblacklight gems are delivered as
14
+ ES modules via importmap, and their dependencies are pinned to versions
15
+ delivered via CDN.
16
+
17
+ CSS needed for Geoblacklight's dependencies (e.g. leaflet viewer) are
18
+ imported via CDN in the app's main bootstrap stylesheet. Geoblacklight's own
19
+ stylesheet is imported from the frontend asset package installed via yarn.
20
+ DESCRIPTION
21
+
22
+ # Switch Blacklight's bootstrap and popper imports to ESM versions so we
23
+ # can import individual modules
24
+ def use_bootstrap_esm
25
+ gsub_file "config/importmap.rb", %r{dist/js/bootstrap.js}, "dist/js/bootstrap.esm.js"
26
+ gsub_file "config/importmap.rb", %r{dist/umd/popper.min.js}, "dist/esm/popper.js"
23
27
  end
24
28
 
25
- def run_asset_pipeline_specific_generator
26
- generated_options = "--test=true" if options[:test]
27
- generator = if options[:"asset-pipeline"]
28
- "geoblacklight:assets:#{options[:"asset-pipeline"]}"
29
- else
30
- "geoblacklight:assets:importmap"
31
- end
29
+ # Import Geoblacklight's JS using the name that importmap has pinned
30
+ def add_geoblacklight_js
31
+ append_to_file "app/javascript/application.js", 'import Geoblacklight from "geoblacklight";'
32
+ end
33
+
34
+ # Add Geoblacklight's stylesheet
35
+ def add_geoblacklight_styles
36
+ append_to_file "app/assets/stylesheets/application.css", "@import url(\"geoblacklight.css\");"
37
+ end
32
38
 
33
- generate generator, generated_options
39
+ # Add the CSS customization override stylesheet
40
+ def add_customizations
41
+ copy_file "assets/customizations.css", "app/assets/stylesheets/customizations.css"
42
+ append_to_file "app/assets/stylesheets/application.css", "\n@import url(\"customizations.css\");"
34
43
  end
35
44
  end
36
45
  end
@@ -4,18 +4,16 @@ require "rails/generators"
4
4
 
5
5
  module Geoblacklight
6
6
  class Install < Rails::Generators::Base
7
- source_root File.expand_path("../templates", __FILE__)
7
+ source_root File.expand_path("templates", __dir__)
8
8
  desc "Install Geoblacklight"
9
9
 
10
- class_option :test, type: :boolean, default: false, aliases: "-t", desc: "Indicates that app will be installed in a test environment"
11
-
12
10
  def allow_geoblacklight_params
13
11
  gbl_params = <<-PARAMS
14
12
  before_action :allow_geoblacklight_params
15
13
 
16
14
  def allow_geoblacklight_params
17
15
  # Blacklight::Parameters will pass these to params.permit
18
- blacklight_config.search_state_fields.append(Settings.GBL_PARAMS)
16
+ blacklight_config.search_state_fields.append(Geoblacklight.configuration.gbl_params)
19
17
  end
20
18
  PARAMS
21
19
 
@@ -23,7 +21,8 @@ module Geoblacklight
23
21
  end
24
22
 
25
23
  def raise_unpermitted_params
26
- inject_into_file "config/environments/test.rb", "config.action_controller.action_on_unpermitted_parameters = :raise\n", before: /^end/
24
+ inject_into_file "config/environments/test.rb",
25
+ "config.action_controller.action_on_unpermitted_parameters = :raise\n", before: /^end/
27
26
  end
28
27
 
29
28
  def mount_geoblacklight_engine
@@ -79,7 +78,7 @@ module Geoblacklight
79
78
 
80
79
  def add_unique_key
81
80
  inject_into_file "app/models/solr_document.rb", after: "# self.unique_key = 'id'" do
82
- "\n self.unique_key = Settings.FIELDS.UNIQUE_KEY"
81
+ "\n self.unique_key = Geoblacklight.configuration.fields.id"
83
82
  end
84
83
  end
85
84
 
@@ -103,11 +102,7 @@ module Geoblacklight
103
102
  end
104
103
 
105
104
  def generate_assets
106
- if options[:test]
107
- generate "geoblacklight:assets", "--test=true"
108
- else
109
- generate "geoblacklight:assets"
110
- end
105
+ generate "geoblacklight:assets"
111
106
  end
112
107
  end
113
108
  end
@@ -0,0 +1,6 @@
1
+ /* Local Application Customizations */
2
+
3
+ :root {
4
+ /* Header Logo */
5
+ --bl-logo-image: url("geoblacklight/logo.svg");
6
+ }