geoblacklight 5.3.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 (453) 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 -1
  29. data/app/components/geoblacklight/document/sidebar_component.rb +0 -1
  30. data/app/components/geoblacklight/document_component.html.erb +1 -2
  31. data/app/components/geoblacklight/header_component.html.erb +4 -4
  32. data/app/components/geoblacklight/header_icons_component.rb +4 -2
  33. data/app/components/geoblacklight/homepage_feature_facet_component.html.erb +3 -7
  34. data/app/components/geoblacklight/homepage_feature_facet_component.rb +12 -3
  35. data/app/components/geoblacklight/iiif_drag_drop_component.html.erb +2 -2
  36. data/app/components/geoblacklight/iiif_drag_drop_component.rb +2 -2
  37. data/app/components/geoblacklight/index_map_inspect_component.html.erb +3 -3
  38. data/app/components/geoblacklight/index_map_legend_component.html.erb +7 -7
  39. data/app/components/geoblacklight/index_map_legend_component.rb +7 -0
  40. data/app/components/geoblacklight/item_map_viewer_component.rb +8 -4
  41. data/app/components/geoblacklight/location_leaflet_map_component.rb +28 -15
  42. data/app/components/geoblacklight/relations_component.html.erb +2 -2
  43. data/app/components/geoblacklight/search_result_component.html.erb +28 -26
  44. data/app/components/geoblacklight/search_result_component.rb +2 -2
  45. data/app/components/geoblacklight/static_map_component.rb +5 -4
  46. data/app/components/geoblacklight/viewer_help_text_component.html.erb +1 -1
  47. data/app/components/geoblacklight/viewer_help_text_component.rb +1 -1
  48. data/app/components/geoblacklight/web_services_component.html.erb +1 -1
  49. data/app/components/geoblacklight/web_services_component.rb +1 -1
  50. data/app/components/geoblacklight/web_services_default_component.html.erb +6 -6
  51. data/app/components/geoblacklight/web_services_link_component.rb +12 -9
  52. data/app/components/geoblacklight/web_services_wfs_component.html.erb +4 -4
  53. data/app/components/geoblacklight/web_services_wms_component.html.erb +4 -4
  54. data/app/controllers/download_controller.rb +0 -1
  55. data/app/controllers/wms_controller.rb +1 -1
  56. data/app/helpers/geoblacklight_helper.rb +0 -15
  57. data/app/javascript/geoblacklight/controllers/clipboard_controller.js +6 -6
  58. data/app/javascript/geoblacklight/controllers/downloads_controller.js +37 -29
  59. data/app/javascript/geoblacklight/controllers/leaflet_viewer_controller.js +108 -117
  60. data/app/javascript/geoblacklight/controllers/oembed_viewer_controller.js +5 -5
  61. data/app/javascript/geoblacklight/controllers/openlayers_viewer_controller.js +27 -30
  62. data/app/javascript/geoblacklight/controllers/search_results_controller.js +18 -18
  63. data/app/javascript/geoblacklight/core.js +35 -36
  64. data/app/javascript/geoblacklight/index.js +10 -10
  65. data/app/javascript/geoblacklight/initializers/metadata_download.js +23 -25
  66. data/app/javascript/geoblacklight/initializers/popovers.js +4 -4
  67. data/app/javascript/geoblacklight/initializers/relations.js +20 -20
  68. data/app/javascript/geoblacklight/initializers/tooltips.js +19 -23
  69. data/app/javascript/geoblacklight/initializers/truncation.js +18 -18
  70. data/app/javascript/geoblacklight/leaflet/basemaps.js +2 -3
  71. data/app/javascript/geoblacklight/leaflet/constants.js +7 -7
  72. data/app/javascript/geoblacklight/leaflet/controls/geosearch.js +80 -74
  73. data/app/javascript/geoblacklight/leaflet/controls/layer_opacity.js +74 -73
  74. data/app/javascript/geoblacklight/leaflet/controls/sidebar.js +31 -29
  75. data/app/javascript/geoblacklight/leaflet/controls/sleep.js +54 -51
  76. data/app/javascript/geoblacklight/leaflet/inspection.js +77 -68
  77. data/app/javascript/geoblacklight/leaflet/layer_index_map.js +74 -69
  78. data/app/javascript/geoblacklight/leaflet/layer_wmts.js +14 -16
  79. data/app/javascript/geoblacklight/leaflet/layers.js +59 -66
  80. data/app/javascript/geoblacklight/leaflet/utils.js +37 -43
  81. data/app/javascript/geoblacklight/openlayers/basemaps.js +35 -27
  82. data/app/javascript/geoblacklight/openlayers/inspection.js +23 -23
  83. data/app/javascript/geoblacklight/openlayers/layers.js +11 -11
  84. data/app/models/concerns/geoblacklight/bbox_filter_query.rb +7 -9
  85. data/app/models/concerns/geoblacklight/solr_document.rb +16 -39
  86. data/app/models/concerns/geoblacklight/suppressed_records_search_behavior.rb +3 -3
  87. data/app/views/catalog/_document_split.html.erb +3 -3
  88. data/app/views/catalog/_home_text.html.erb +22 -14
  89. data/app/views/catalog/_metadata.html.erb +1 -1
  90. data/app/views/catalog/_relations_container.html.erb +1 -1
  91. data/app/views/catalog/index.html.erb +0 -1
  92. data/app/views/catalog/metadata/_markup.html.erb +1 -2
  93. data/app/views/catalog/metadata/_missing.html.erb +2 -2
  94. data/app/views/catalog/web_services.html.erb +1 -1
  95. data/app/views/relation/index.html.erb +1 -1
  96. data/app/views/relation/index.json.jbuilder +1 -1
  97. data/config/initializers/rails_config.rb +0 -3
  98. data/config/locales/geoblacklight.en.yml +79 -78
  99. data/geoblacklight.gemspec +1 -2
  100. data/lib/generators/geoblacklight/assets_generator.rb +35 -26
  101. data/lib/generators/geoblacklight/install_generator.rb +6 -11
  102. data/lib/generators/geoblacklight/templates/assets/customizations.css +6 -0
  103. data/lib/generators/geoblacklight/templates/catalog_controller.rb +97 -73
  104. data/lib/generators/geoblacklight/templates/settings.yml +97 -113
  105. data/lib/geoblacklight/configuration/default_settings_builder.rb +18 -0
  106. data/lib/geoblacklight/configuration/display_note_shown_config.rb +13 -0
  107. data/lib/geoblacklight/configuration/fields_config.rb +51 -0
  108. data/lib/geoblacklight/configuration/leaflet_config.rb +73 -0
  109. data/lib/geoblacklight/configuration/leaflet_layers_config.rb +21 -0
  110. data/lib/geoblacklight/configuration/leaflet_sleep_config.rb +20 -0
  111. data/lib/geoblacklight/configuration/legacy_settings_builder.rb +94 -0
  112. data/lib/geoblacklight/configuration.rb +148 -0
  113. data/lib/geoblacklight/download.rb +2 -2
  114. data/lib/geoblacklight/engine.rb +7 -5
  115. data/lib/geoblacklight/metadata/base.rb +0 -2
  116. data/lib/geoblacklight/metadata_transformer.rb +0 -2
  117. data/lib/geoblacklight/references.rb +5 -4
  118. data/lib/geoblacklight/relation/ancestors.rb +3 -2
  119. data/lib/geoblacklight/relation/descendants.rb +2 -1
  120. data/lib/geoblacklight/relation/relation_response.rb +4 -4
  121. data/lib/geoblacklight/version.rb +1 -1
  122. data/lib/geoblacklight/wms_layer.rb +3 -3
  123. data/lib/geoblacklight.rb +7 -1
  124. data/package.json +10 -31
  125. data/schema/geoblacklight-schema-aardvark.json +1 -9
  126. data/schema/readme.md +3 -4
  127. data/solr/conf/_rest_managed.json +3 -2
  128. data/solr/conf/schema.xml +1 -1
  129. data/spec/components/geoblacklight/arcgis_component_spec.rb +6 -6
  130. data/spec/components/geoblacklight/attribute_table_component_spec.rb +6 -7
  131. data/spec/components/geoblacklight/citation_component_spec.rb +7 -4
  132. data/spec/components/geoblacklight/display_note_component_spec.rb +8 -8
  133. data/spec/components/geoblacklight/document_component_spec.rb +13 -13
  134. data/spec/components/geoblacklight/download_links_component_spec.rb +17 -14
  135. data/spec/components/geoblacklight/header_icons_component_spec.rb +6 -11
  136. data/spec/components/geoblacklight/homepage_feature_facet_component_spec.rb +22 -30
  137. data/spec/components/geoblacklight/iiif_drag_drop_component_spec.rb +3 -3
  138. data/spec/components/geoblacklight/index_map_legend_component_spec.rb +5 -18
  139. data/spec/components/geoblacklight/item_map_viewer_component_spec.rb +5 -5
  140. data/spec/components/geoblacklight/login_link_component_spec.rb +4 -5
  141. data/spec/components/geoblacklight/search_result_component_spec.rb +2 -6
  142. data/spec/components/geoblacklight/static_map_component_spec.rb +2 -2
  143. data/spec/components/geoblacklight/viewer_help_text_component_spec.rb +4 -6
  144. data/spec/components/geoblacklight/web_services_component_spec.rb +11 -10
  145. data/spec/controllers/catalog_controller_spec.rb +7 -7
  146. data/spec/controllers/download_controller_spec.rb +1 -1
  147. data/spec/controllers/relation_controller_spec.rb +1 -1
  148. data/spec/controllers/wms_controller_spec.rb +1 -1
  149. data/spec/features/axe_spec.rb +4 -4
  150. data/spec/features/bookmarks_spec.rb +1 -1
  151. data/spec/features/citations_spec.rb +1 -1
  152. data/spec/features/configurable_basemap_spec.rb +1 -1
  153. data/spec/features/data_dictionary_download_spec.rb +1 -1
  154. data/spec/features/download_layer_spec.rb +1 -1
  155. data/spec/features/empty_search_spec.rb +1 -1
  156. data/spec/features/esri_viewer_spec.rb +1 -1
  157. data/spec/features/exports_spec.rb +1 -1
  158. data/spec/features/full_screen_control_spec.rb +3 -10
  159. data/spec/features/help_text_spec.rb +1 -1
  160. data/spec/features/home_page_spec.rb +1 -1
  161. data/spec/features/index_map_spec.rb +3 -3
  162. data/spec/features/index_view_spec.rb +7 -7
  163. data/spec/features/layer_inspection_spec.rb +1 -1
  164. data/spec/features/layer_opacity_spec.rb +1 -1
  165. data/spec/features/layer_preview_spec.rb +1 -1
  166. data/spec/features/layer_with_no_references_spec.rb +1 -1
  167. data/spec/features/linkified_attribute_table_spec.rb +1 -1
  168. data/spec/features/metadata_panel_spec.rb +1 -1
  169. data/spec/features/missing_metadata_spec.rb +1 -1
  170. data/spec/features/multiple_downloads_spec.rb +1 -1
  171. data/spec/features/oembed_spec.rb +1 -1
  172. data/spec/features/relations_spec.rb +2 -2
  173. data/spec/features/saved_searches_spec.rb +1 -1
  174. data/spec/features/search_bar_spec.rb +1 -1
  175. data/spec/features/search_results_complex_geometry_spec.rb +1 -1
  176. data/spec/features/search_results_icons_spec.rb +3 -4
  177. data/spec/features/search_results_map_spec.rb +1 -1
  178. data/spec/features/search_results_overlap_ratio_spec.rb +3 -3
  179. data/spec/features/search_spec.rb +1 -1
  180. data/spec/features/show_page_download_spec.rb +1 -1
  181. data/spec/features/show_page_metadata_spec.rb +2 -2
  182. data/spec/features/show_page_sidebar_static_map_spec.rb +1 -1
  183. data/spec/features/sms_spec.rb +1 -1
  184. data/spec/features/suppressed_records_spec.rb +1 -1
  185. data/spec/features/tilejson_spec.rb +1 -1
  186. data/spec/features/tms_spec.rb +1 -1
  187. data/spec/features/web_services_modal_spec.rb +1 -1
  188. data/spec/features/wmts_spec.rb +1 -1
  189. data/spec/features/xyz_spec.rb +1 -1
  190. data/spec/fixtures/manifests/tilejson.json +10 -19
  191. data/spec/fixtures/metadata/fgdc.html +1 -1
  192. data/spec/fixtures/metadata/iso.html +1 -1
  193. data/spec/fixtures/solr_documents/README.md +0 -1
  194. data/spec/fixtures/solr_documents/actual-papermap1.json +9 -28
  195. data/spec/fixtures/solr_documents/actual-point1.json +12 -39
  196. data/spec/fixtures/solr_documents/actual-polygon1.json +10 -30
  197. data/spec/fixtures/solr_documents/actual-raster1.json +14 -46
  198. data/spec/fixtures/solr_documents/all-relationships.json +12 -36
  199. data/spec/fixtures/solr_documents/b1g_iiif_manifest.json +33 -62
  200. data/spec/fixtures/solr_documents/b1g_wabash_child_15.json +13 -40
  201. data/spec/fixtures/solr_documents/b1g_wabash_child_16.json +13 -40
  202. data/spec/fixtures/solr_documents/b1g_wabash_child_17.json +13 -40
  203. data/spec/fixtures/solr_documents/b1g_wabash_child_18.json +13 -40
  204. data/spec/fixtures/solr_documents/b1g_wabash_parent.json +13 -40
  205. data/spec/fixtures/solr_documents/baruch_ancestor1.json +13 -40
  206. data/spec/fixtures/solr_documents/baruch_ancestor2.json +13 -40
  207. data/spec/fixtures/solr_documents/baruch_documentation_download.json +14 -46
  208. data/spec/fixtures/solr_documents/bbox-spans-180.json +7 -21
  209. data/spec/fixtures/solr_documents/complex-geom.json +11 -37
  210. data/spec/fixtures/solr_documents/cornell_html_metadata.json +12 -37
  211. data/spec/fixtures/solr_documents/display-note.json +11 -33
  212. data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +13 -39
  213. data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +13 -40
  214. data/spec/fixtures/solr_documents/esri-feature-layer.json +13 -39
  215. data/spec/fixtures/solr_documents/esri-image-map-layer.json +13 -40
  216. data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +16 -54
  217. data/spec/fixtures/solr_documents/esri-wms-layer.json +12 -36
  218. data/spec/fixtures/solr_documents/harvard_raster.json +12 -37
  219. data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +9 -27
  220. data/spec/fixtures/solr_documents/index-map-polygon-no-downloadurl.json +12 -41
  221. data/spec/fixtures/solr_documents/index-map-polygon.json +12 -41
  222. data/spec/fixtures/solr_documents/index-map-stanford.json +14 -45
  223. data/spec/fixtures/solr_documents/index-map-v1-complex.json +13 -38
  224. data/spec/fixtures/solr_documents/index_map_point.json +13 -42
  225. data/spec/fixtures/solr_documents/metadata_no_geom.json +4 -14
  226. data/spec/fixtures/solr_documents/metadata_no_provider.json +8 -25
  227. data/spec/fixtures/solr_documents/multiple-downloads.json +6 -18
  228. data/spec/fixtures/solr_documents/no_locn_geometry.json +4 -12
  229. data/spec/fixtures/solr_documents/no_spatial.json +4 -12
  230. data/spec/fixtures/solr_documents/oembed.json +8 -25
  231. data/spec/fixtures/solr_documents/princeton-child1.json +9 -29
  232. data/spec/fixtures/solr_documents/princeton-child2.json +9 -29
  233. data/spec/fixtures/solr_documents/princeton-child3.json +9 -29
  234. data/spec/fixtures/solr_documents/princeton-child4.json +9 -29
  235. data/spec/fixtures/solr_documents/princeton-parent.json +10 -33
  236. data/spec/fixtures/solr_documents/public_cog_princeton.json +9 -27
  237. data/spec/fixtures/solr_documents/public_iiif_princeton.json +13 -43
  238. data/spec/fixtures/solr_documents/public_pmtiles_princeton.json +29 -39
  239. data/spec/fixtures/solr_documents/public_polygon_mit.json +9 -30
  240. data/spec/fixtures/solr_documents/restricted-line.json +14 -47
  241. data/spec/fixtures/solr_documents/the-related-record.json +4 -12
  242. data/spec/fixtures/solr_documents/tilejson.json +23 -46
  243. data/spec/fixtures/solr_documents/tms.json +7 -21
  244. data/spec/fixtures/solr_documents/umn_metro_result1.json +13 -41
  245. data/spec/fixtures/solr_documents/umn_state_result1.json +13 -39
  246. data/spec/fixtures/solr_documents/umn_state_result2.json +13 -39
  247. data/spec/fixtures/solr_documents/uva_slug_colon.json +10 -30
  248. data/spec/fixtures/solr_documents/wmts-multiple.json +23 -39
  249. data/spec/fixtures/solr_documents/wmts-single-layer.json +23 -46
  250. data/spec/fixtures/solr_documents/xyz.json +10 -33
  251. data/spec/helpers/geoblacklight_helper_spec.rb +5 -50
  252. data/spec/javascripts/geoblacklight_spec.js +10 -10
  253. data/spec/javascripts/metadata_download_button_spec.js +14 -13
  254. data/spec/lib/geoblacklight/bounding_box_spec.rb +1 -1
  255. data/spec/lib/geoblacklight/configuration/default_settings_builder_spec.rb +9 -0
  256. data/spec/lib/geoblacklight/configuration_spec.rb +13 -0
  257. data/spec/lib/geoblacklight/download/csv_download_spec.rb +2 -2
  258. data/spec/lib/geoblacklight/download/geojson_download_spec.rb +2 -2
  259. data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +5 -2
  260. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +2 -2
  261. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +2 -2
  262. data/spec/lib/geoblacklight/download_spec.rb +15 -6
  263. data/spec/lib/geoblacklight/geometry_spec.rb +1 -1
  264. data/spec/lib/geoblacklight/item_viewer_spec.rb +2 -2
  265. data/spec/lib/geoblacklight/metadata/base_spec.rb +1 -1
  266. data/spec/lib/geoblacklight/metadata/html_spec.rb +1 -1
  267. data/spec/lib/geoblacklight/metadata_spec.rb +1 -1
  268. data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +1 -1
  269. data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +1 -1
  270. data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +1 -1
  271. data/spec/lib/geoblacklight/metadata_transformer_spec.rb +1 -1
  272. data/spec/lib/geoblacklight/reference_spec.rb +1 -1
  273. data/spec/lib/geoblacklight/references_spec.rb +6 -4
  274. data/spec/lib/geoblacklight/relation/ancestors_spec.rb +10 -4
  275. data/spec/lib/geoblacklight/relation/descendants_spec.rb +9 -4
  276. data/spec/lib/geoblacklight/relation/relation_response_spec.rb +12 -15
  277. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +1 -1
  278. data/spec/lib/geoblacklight/wms_layer_spec.rb +1 -1
  279. data/spec/models/concerns/geoblacklight/bbox_filter_query_spec.rb +20 -11
  280. data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -1
  281. data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +1 -1
  282. data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +1 -1
  283. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +4 -39
  284. data/spec/models/concerns/geoblacklight/suppressed_records_search_behavior_spec.rb +2 -2
  285. data/spec/routing/catalog_routing_spec.rb +1 -1
  286. data/spec/spec_helper.rb +21 -10
  287. data/spec/tasks/geoblacklight_spec.rb +1 -1
  288. data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -3
  289. metadata +33 -184
  290. data/Procfile.dev +0 -3
  291. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +0 -2
  292. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +0 -31
  293. data/app/assets/stylesheets/geoblacklight/modules/_blacklight_overrides.scss +0 -40
  294. data/app/assets/stylesheets/geoblacklight/modules/_styles.scss +0 -9
  295. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +0 -62
  296. data/app/assets/stylesheets/geoblacklight/modules/geosearch.scss +0 -23
  297. data/app/assets/stylesheets/geoblacklight/modules/home.scss +0 -13
  298. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +0 -116
  299. data/app/assets/stylesheets/geoblacklight/modules/index_maps.scss +0 -61
  300. data/app/assets/stylesheets/geoblacklight/modules/item.scss +0 -78
  301. data/app/assets/stylesheets/geoblacklight/modules/layer_opacity.scss +0 -87
  302. data/app/assets/stylesheets/geoblacklight/modules/leaflet.scss +0 -4
  303. data/app/assets/stylesheets/geoblacklight/modules/metadata.scss +0 -31
  304. data/app/assets/stylesheets/geoblacklight/modules/metadata_content.scss +0 -43
  305. data/app/assets/stylesheets/geoblacklight/modules/metadata_markup.scss +0 -9
  306. data/app/assets/stylesheets/geoblacklight/modules/metadata_missing.scss +0 -7
  307. data/app/assets/stylesheets/geoblacklight/modules/modal.scss +0 -5
  308. data/app/assets/stylesheets/geoblacklight/modules/results.scss +0 -60
  309. data/app/assets/stylesheets/geoblacklight/modules/search_widgets.scss +0 -5
  310. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +0 -42
  311. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +0 -34
  312. data/app/assets/stylesheets/geoblacklight/modules/web_services.scss +0 -5
  313. data/app/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component.rb +0 -46
  314. data/app/components/blacklight/icons/arizona_component.rb +0 -24
  315. data/app/components/blacklight/icons/baruch_cuny_component.rb +0 -23
  316. data/app/components/blacklight/icons/bookmark_component.rb +0 -23
  317. data/app/components/blacklight/icons/circle_info_solid_component.rb +0 -23
  318. data/app/components/blacklight/icons/columbia_component.rb +0 -23
  319. data/app/components/blacklight/icons/cornell_component.rb +0 -25
  320. data/app/components/blacklight/icons/george_mason_component.rb +0 -24
  321. data/app/components/blacklight/icons/harvard_component.rb +0 -23
  322. data/app/components/blacklight/icons/indiana_component.rb +0 -23
  323. data/app/components/blacklight/icons/lewis_clark_component.rb +0 -25
  324. data/app/components/blacklight/icons/massgis_component.rb +0 -23
  325. data/app/components/blacklight/icons/michigan_state_university_component.rb +0 -25
  326. data/app/components/blacklight/icons/mit_component.rb +0 -23
  327. data/app/components/blacklight/icons/northwestern_university_component.rb +0 -24
  328. data/app/components/blacklight/icons/nyu_component.rb +0 -26
  329. data/app/components/blacklight/icons/pennsylvania_state_university_component.rb +0 -25
  330. data/app/components/blacklight/icons/princeton_component.rb +0 -23
  331. data/app/components/blacklight/icons/purdue_university_component.rb +0 -25
  332. data/app/components/blacklight/icons/rutgers_component.rb +0 -25
  333. data/app/components/blacklight/icons/sms_component.rb +0 -23
  334. data/app/components/blacklight/icons/stanford_component.rb +0 -23
  335. data/app/components/blacklight/icons/texas_component.rb +0 -23
  336. data/app/components/blacklight/icons/the_ohio_state_university_component.rb +0 -26
  337. data/app/components/blacklight/icons/tufts_component.rb +0 -23
  338. data/app/components/blacklight/icons/ucla_component.rb +0 -23
  339. data/app/components/blacklight/icons/university_of_california_berkeley_component.rb +0 -24
  340. data/app/components/blacklight/icons/university_of_chicago_component.rb +0 -25
  341. data/app/components/blacklight/icons/university_of_colorado_boulder_component.rb +0 -26
  342. data/app/components/blacklight/icons/university_of_illinois_urbana_champaign_component.rb +0 -25
  343. data/app/components/blacklight/icons/university_of_iowa_component.rb +0 -24
  344. data/app/components/blacklight/icons/university_of_maryland_component.rb +0 -24
  345. data/app/components/blacklight/icons/university_of_michigan_component.rb +0 -24
  346. data/app/components/blacklight/icons/university_of_minnesota_component.rb +0 -24
  347. data/app/components/blacklight/icons/university_of_nebraska_lincoln_component.rb +0 -27
  348. data/app/components/blacklight/icons/university_of_wisconsin_madison_component.rb +0 -24
  349. data/app/components/blacklight/icons/uva_component.rb +0 -23
  350. data/app/components/geoblacklight/icon_facet_item_component.rb +0 -33
  351. data/app/components/geoblacklight/web_services_link_component.html.erb +0 -3
  352. data/bin/vite +0 -29
  353. data/config/initializers/new_gbl_settings_defaults_4.1.yml +0 -104
  354. data/lib/generators/geoblacklight/assets/importmap_generator.rb +0 -73
  355. data/lib/generators/geoblacklight/assets/vite_generator.rb +0 -89
  356. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +0 -23
  357. data/lib/generators/geoblacklight/templates/assets/application.js +0 -17
  358. data/lib/generators/geoblacklight/templates/assets/application.scss +0 -9
  359. data/lib/generators/geoblacklight/templates/assets/geoblacklight.scss +0 -11
  360. data/lib/generators/geoblacklight/templates/base.html.erb +0 -46
  361. data/lib/generators/geoblacklight/templates/vite.config.ts +0 -23
  362. data/lib/generators/geoblacklight/templates/vite.json +0 -16
  363. data/schema/geoblacklight-schema-1.0.json +0 -214
  364. data/solr/conf/xslt/example.xsl +0 -132
  365. data/solr/conf/xslt/example_atom.xsl +0 -67
  366. data/solr/conf/xslt/example_rss.xsl +0 -66
  367. data/solr/conf/xslt/luke.xsl +0 -337
  368. data/spec/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component_spec.rb +0 -15
  369. data/spec/components/blacklight/icons/arizona_component_spec.rb +0 -15
  370. data/spec/components/blacklight/icons/arrow_circle_down_component_spec.rb +0 -15
  371. data/spec/components/blacklight/icons/baruch_cuny_component_spec.rb +0 -15
  372. data/spec/components/blacklight/icons/book_component_spec.rb +0 -15
  373. data/spec/components/blacklight/icons/bookmark_component_spec.rb +0 -15
  374. data/spec/components/blacklight/icons/cd_rom_component_spec.rb +0 -15
  375. data/spec/components/blacklight/icons/child_item_component_spec.rb +0 -15
  376. data/spec/components/blacklight/icons/circle_info_solid_component_spec.rb +0 -15
  377. data/spec/components/blacklight/icons/citation_component_spec.rb +0 -15
  378. data/spec/components/blacklight/icons/collection_component_spec.rb +0 -15
  379. data/spec/components/blacklight/icons/collections_component_spec.rb +0 -15
  380. data/spec/components/blacklight/icons/columbia_component_spec.rb +0 -15
  381. data/spec/components/blacklight/icons/cornell_component_spec.rb +0 -15
  382. data/spec/components/blacklight/icons/datasets_component_spec.rb +0 -15
  383. data/spec/components/blacklight/icons/dvd_rom_component_spec.rb +0 -15
  384. data/spec/components/blacklight/icons/email_component_spec.rb +0 -15
  385. data/spec/components/blacklight/icons/esri_globe_component_spec.rb +0 -15
  386. data/spec/components/blacklight/icons/fire_solid_component_spec.rb +0 -15
  387. data/spec/components/blacklight/icons/george_mason_component_spec.rb +0 -15
  388. data/spec/components/blacklight/icons/globe_component_spec.rb +0 -15
  389. data/spec/components/blacklight/icons/harvard_component_spec.rb +0 -15
  390. data/spec/components/blacklight/icons/home_component_spec.rb +0 -15
  391. data/spec/components/blacklight/icons/iiif_drag_drop_component_spec.rb +0 -15
  392. data/spec/components/blacklight/icons/image_component_spec.rb +0 -15
  393. data/spec/components/blacklight/icons/imagery_component_spec.rb +0 -15
  394. data/spec/components/blacklight/icons/indiana_component_spec.rb +0 -15
  395. data/spec/components/blacklight/icons/leaf_component_spec.rb +0 -15
  396. data/spec/components/blacklight/icons/lewis_clark_component_spec.rb +0 -15
  397. data/spec/components/blacklight/icons/lightbulb_solid_component_spec.rb +0 -15
  398. data/spec/components/blacklight/icons/line_component_spec.rb +0 -15
  399. data/spec/components/blacklight/icons/map_component_spec.rb +0 -15
  400. data/spec/components/blacklight/icons/map_marker_component_spec.rb +0 -15
  401. data/spec/components/blacklight/icons/maps_component_spec.rb +0 -15
  402. data/spec/components/blacklight/icons/massgis_component_spec.rb +0 -15
  403. data/spec/components/blacklight/icons/metadata_component_spec.rb +0 -15
  404. data/spec/components/blacklight/icons/michigan_state_university_component_spec.rb +0 -15
  405. data/spec/components/blacklight/icons/mit_component_spec.rb +0 -15
  406. data/spec/components/blacklight/icons/mixed_component_spec.rb +0 -15
  407. data/spec/components/blacklight/icons/multilinestring_component_spec.rb +0 -15
  408. data/spec/components/blacklight/icons/multipoint_component_spec.rb +0 -15
  409. data/spec/components/blacklight/icons/multipolygon_component_spec.rb +0 -15
  410. data/spec/components/blacklight/icons/northwestern_university_component_spec.rb +0 -15
  411. data/spec/components/blacklight/icons/nyu_component_spec.rb +0 -15
  412. data/spec/components/blacklight/icons/pagelines_brands_component_spec.rb +0 -15
  413. data/spec/components/blacklight/icons/paper_map_component_spec.rb +0 -15
  414. data/spec/components/blacklight/icons/parent_item_component_spec.rb +0 -15
  415. data/spec/components/blacklight/icons/pennsylvania_state_university_component_spec.rb +0 -15
  416. data/spec/components/blacklight/icons/point_component_spec.rb +0 -15
  417. data/spec/components/blacklight/icons/polygon_component_spec.rb +0 -15
  418. data/spec/components/blacklight/icons/polyline_component_spec.rb +0 -15
  419. data/spec/components/blacklight/icons/princeton_component_spec.rb +0 -15
  420. data/spec/components/blacklight/icons/public_component_spec.rb +0 -15
  421. data/spec/components/blacklight/icons/purdue_university_component_spec.rb +0 -15
  422. data/spec/components/blacklight/icons/raster_component_spec.rb +0 -15
  423. data/spec/components/blacklight/icons/restricted_component_spec.rb +0 -15
  424. data/spec/components/blacklight/icons/rutgers_component_spec.rb +0 -15
  425. data/spec/components/blacklight/icons/sms_component_spec.rb +0 -15
  426. data/spec/components/blacklight/icons/stanford_component_spec.rb +0 -15
  427. data/spec/components/blacklight/icons/table_component_spec.rb +0 -15
  428. data/spec/components/blacklight/icons/tags_component_spec.rb +0 -15
  429. data/spec/components/blacklight/icons/texas_component_spec.rb +0 -15
  430. data/spec/components/blacklight/icons/the_ohio_state_university_component_spec.rb +0 -15
  431. data/spec/components/blacklight/icons/triangle_exclamation_solid_component_spec.rb +0 -15
  432. data/spec/components/blacklight/icons/tufts_component_spec.rb +0 -15
  433. data/spec/components/blacklight/icons/ucla_component_spec.rb +0 -15
  434. data/spec/components/blacklight/icons/university_of_california_berkeley_component_spec.rb +0 -15
  435. data/spec/components/blacklight/icons/university_of_chicago_component_spec.rb +0 -15
  436. data/spec/components/blacklight/icons/university_of_colorado_boulder_component_spec.rb +0 -15
  437. data/spec/components/blacklight/icons/university_of_illinois_urbana_champaign_component_spec.rb +0 -15
  438. data/spec/components/blacklight/icons/university_of_iowa_component_spec.rb +0 -15
  439. data/spec/components/blacklight/icons/university_of_maryland_component_spec.rb +0 -15
  440. data/spec/components/blacklight/icons/university_of_michigan_component_spec.rb +0 -15
  441. data/spec/components/blacklight/icons/university_of_minnesota_component_spec.rb +0 -15
  442. data/spec/components/blacklight/icons/university_of_nebraska_lincoln_component_spec.rb +0 -15
  443. data/spec/components/blacklight/icons/university_of_wisconsin_madison_component_spec.rb +0 -15
  444. data/spec/components/blacklight/icons/uva_component_spec.rb +0 -15
  445. data/spec/components/blacklight/icons/web_services_component_spec.rb +0 -15
  446. data/spec/components/blacklight/icons/websites_component_spec.rb +0 -15
  447. data/spec/components/geoblacklight/icon_facet_item_component_spec.rb +0 -18
  448. data/spec/config/initializers/rails_config_spec.rb +0 -16
  449. data/spec/fixtures/solr_documents/public_direct_download.json +0 -62
  450. data/spec/support/backport_test_helpers.rb +0 -47
  451. data/spec/support/view_component_capybara_test_helpers.rb +0 -8
  452. data/vite.config.ts +0 -32
  453. /data/app/assets/images/{blacklight → geoblacklight}/logo.svg +0 -0
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 2f9e80f30735f8fa8f8e4c03e0a855b4e709acbf1eb860cad0a14e66dba72064
4
- data.tar.gz: 824c5c71fb501807335ab0862522d5a14fec06f31b1f21b09d732338f27e5b89
3
+ metadata.gz: 667a2a369d04716624d762876de8359effeddac901e1d1f009adbb09791264fb
4
+ data.tar.gz: 5872171cbac68976a9219cb812a670a8cf5a2e222e809a31f93103deb4d7ab97
5
5
  SHA512:
6
- metadata.gz: acbee7539ae6c048356e42467b99f4e94c948cc9d5a35ddeeccc721028965808267d33d3d3ce91fc05afdd5992fbee5edeeda1760aa6257dea6420bc83e194ce
7
- data.tar.gz: 8395fe82750ac0bfe3dc3de410a7039d0eff671ffee63690f1a0858b88687dc163ed92a711a46a94caf956eb3cdd5b04f7c96cb5a7cf2aedbaec9d74a2136412
6
+ metadata.gz: f4f52fb72f6dad913341e735ece7a4b828886f70b17816f4c7ca497f4ecca97f7effdeb8f2daf4e33ae1f2ecfce2bd9ef0aec958fbe464a4081225b78e103887
7
+ data.tar.gz: 0a4d1b12e4a99c47ef0bb253b6bd2c7446c9a960e5f0a2441829dc1cb7c35d261620333ca323520486414e306a300f898e0298af5b0a3a94ea691236e9892bab
data/.engine_cart.yml ADDED
@@ -0,0 +1,14 @@
1
+ rails_options:
2
+ - --skip-docker
3
+ - --skip-action-cable
4
+ - --skip-rubocop
5
+ - --skip-brakeman
6
+ - --skip-kamal
7
+ - --skip-solid
8
+ - --skip-git
9
+ - --skip-keeps
10
+ - --skip-test
11
+ - --skip-decrypted-diffs
12
+ - --skip-sprockets
13
+ - --asset-pipeline=propshaft
14
+ - --javascript=importmap
@@ -7,27 +7,40 @@ on:
7
7
  pull_request:
8
8
 
9
9
  jobs:
10
- linter:
10
+ standardrb-linter:
11
11
  runs-on: ubuntu-latest
12
12
  steps:
13
- - uses: actions/checkout@v6
13
+ - uses: actions/checkout@v7
14
14
  - name: Set up Ruby
15
15
  uses: ruby/setup-ruby@v1
16
16
  with:
17
- ruby-version: 3.2
17
+ ruby-version: 3.4
18
18
  - name: Install dependencies
19
19
  run: bundle install
20
20
  - name: Run linter
21
21
  run: bundle exec standardrb
22
22
 
23
+ prettier-linter:
24
+ runs-on: ubuntu-latest
25
+ steps:
26
+ - uses: actions/checkout@v7
27
+ - name: Set up Node
28
+ uses: actions/setup-node@v6
29
+ with:
30
+ node-version: "24"
31
+ - name: Install dependencies
32
+ run: npm install
33
+ - name: Run Prettier check
34
+ run: npm run lint
35
+
23
36
  aardvark-fixture-linter:
24
37
  runs-on: ubuntu-latest
25
38
  steps:
26
- - uses: actions/checkout@v6
39
+ - uses: actions/checkout@v7
27
40
  - name: Set up Ruby
28
41
  uses: ruby/setup-ruby@v1
29
42
  with:
30
- ruby-version: 3.2
43
+ ruby-version: 3.4
31
44
  - name: Install json schema validator
32
45
  run: gem install json_schemer
33
46
  - name: Run json_schemer against aardvark fixtures
@@ -37,19 +50,12 @@ jobs:
37
50
  runs-on: ubuntu-latest
38
51
  strategy:
39
52
  matrix:
40
- ruby_version: ["3.2", "3.3", "3.4"]
53
+ ruby_version: ["3.3", "3.4", "4.0"]
41
54
  rails_version: ["7.2.3", "8.1.1"]
42
- asset_pipeline: ["importmap"]
43
- additional_engine_cart_rails_options: ["--js importmap"]
44
- include:
45
- - ruby_version: "3.4"
46
- rails_version: "8.1.1"
47
- asset_pipeline: "vite"
48
- additional_engine_cart_rails_options: "--js rollup"
49
55
 
50
- name: test ruby ${{ matrix.ruby_version }} / rails ${{ matrix.rails_version }} / ${{ matrix.asset_pipeline }}
56
+ name: test ruby ${{ matrix.ruby_version }} / rails ${{ matrix.rails_version }}
51
57
  steps:
52
- - uses: actions/checkout@v6
58
+ - uses: actions/checkout@v7
53
59
  - name: Set up Ruby
54
60
  uses: ruby/setup-ruby@v1
55
61
  with:
@@ -57,23 +63,16 @@ jobs:
57
63
  - name: Install Ruby dependencies
58
64
  run: bundle install
59
65
  env:
66
+ BUNDLE_FORCE_RUBY_PLATFORM: true
60
67
  RAILS_VERSION: ${{ matrix.rails_version }}
61
- - name: Build and link frontend package, if using vite
62
- if: matrix.asset_pipeline == 'vite'
63
- run: |
64
- yarn install
65
- yarn build
66
- yarn link
67
68
  - name: Run tests
68
69
  run: bundle exec rake ci
69
70
  env:
71
+ BUNDLE_FORCE_RUBY_PLATFORM: true
70
72
  RAILS_VERSION: ${{ matrix.rails_version }}
71
- ASSET_PIPELINE: ${{ matrix.asset_pipeline }}
72
- ENGINE_CART_RAILS_OPTIONS: "--skip-docker --skip-action-cable --skip-rubocop --skip-brakeman --skip-kamal --skip-solid -a propshaft --css bootstrap ${{ matrix.additional_engine_cart_rails_options }}"
73
73
  SOLR_URL: http://solr:SolrRocks@localhost:8983/solr/blacklight-core
74
74
  - name: Upload coverage artifacts
75
- uses: actions/upload-artifact@v6
76
- if: matrix.asset_pipeline == 'vite'
75
+ uses: actions/upload-artifact@v7
77
76
  with:
78
77
  name: "coverage-${{ matrix.ruby_version }}-${{ matrix.rails_version }}"
79
78
  path: coverage/
data/.gitignore CHANGED
@@ -32,12 +32,3 @@ package-lock.json
32
32
 
33
33
  # Ignore IDE files
34
34
  .idea
35
-
36
- # Vite Ruby
37
- /public/vite*
38
- /public/geoblacklight-vite*
39
- node_modules
40
- app/assets/javascripts/geoblacklight
41
- # Vite uses dotenv and suggests to ignore local-only env files. See
42
- # https://vitejs.dev/guide/env-and-mode.html#env-files
43
- *.local
data/.prettierignore ADDED
@@ -0,0 +1,4 @@
1
+ node_modules
2
+ coverage
3
+ .internal_test_app
4
+ vendor
data/.prettierrc ADDED
@@ -0,0 +1,5 @@
1
+ {
2
+ "semi": false,
3
+ "trailingComma": "all",
4
+ "printWidth": 120
5
+ }
data/CONTRIBUTING.md CHANGED
@@ -4,10 +4,8 @@ GeoBlacklight is a collaborative, open source project where contributions are :s
4
4
  ### Who can contribute?
5
5
  **Anyone** is welcome to contribute to GeoBlacklight. We follow a set of contribution practices to maintain a technically sustainable and stable software project for everyone. We expect all contributors to adhere to our [Code of Conduct](https://github.com/geoblacklight/geoblacklight/blob/main/CODE_OF_CONDUCT.md).
6
6
 
7
- ### Join the community
8
- See the [community page](https://geoblacklight.org/community/) on our website for information about our community calendar, slack, volunteer opportunities, and more.
9
-
10
- If you have questions or want to get more involved, join [GeoBlacklight Slack](https://geoblacklight.slack.com/join/shared_invite/zt-1p7dcay40-Ye_WTt5_iCqU8rDjzhkoWw#/shared-invite/email) or email the [GeoBlacklight Community](https://groups.google.com/g/geoblacklight-community) at [geoblacklight-community@googlegroups.com](mailto:geoblacklight-community@googlegroups.com).
7
+ ### How to contact us
8
+ See the [community page](https://geoblacklight.org/community/) on our website for information about our community calendar, volunteer opportunities, and more. This page links to our Slack and Google Group so you can reach us if you have questions or want to get more involved.
11
9
 
12
10
  ## Issues
13
11
  Issues are used in the GeoBlacklight community as a convenient way to document bugs, propose new functionality and enhancements, and discuss important code changes.
data/Gemfile CHANGED
@@ -1,13 +1,15 @@
1
1
  source "https://rubygems.org"
2
2
 
3
3
  # Specify your gem's dependencies in geoblacklight.gemspec
4
- gemspec
4
+ gemspec path: File.expand_path(".")
5
5
 
6
6
  # BEGIN ENGINE_CART BLOCK
7
7
  # engine_cart: 2.6.0
8
8
  # engine_cart stanza: 2.5.0
9
9
  # the below comes from engine_cart, a gem used to test this Rails engine gem in the context of a Rails app.
10
- file = File.expand_path("Gemfile", ENV["ENGINE_CART_DESTINATION"] || ENV["RAILS_ROOT"] || File.expand_path(".internal_test_app", File.dirname(__FILE__)))
10
+ file = File.expand_path("Gemfile",
11
+ ENV["ENGINE_CART_DESTINATION"] || ENV["RAILS_ROOT"] || File.expand_path(".internal_test_app",
12
+ File.dirname(__FILE__)))
11
13
  if File.exist?(file)
12
14
  begin
13
15
  eval_gemfile file
data/README.md CHANGED
@@ -8,12 +8,12 @@ of the [Blacklight](https://projectblacklight.org) Solr-powered discovery interf
8
8
  multi-institutional [OpenGeoportal](http://opengeoportal.io/) and [OpenGeoMetadata](https://github.com/opengeometadata) federated metadata sharing
9
9
  communities. We're actively looking for community input and development partners.
10
10
 
11
- ### Documentation
11
+ ## Documentation
12
12
 
13
- Our full [GeoBlacklight Documentation](https://geoblacklight.org/docs/) has how-to guides for installing, customizing, and maintaining a GeoBlacklight instance.
13
+ Our full [GeoBlacklight Documentation](https://geoblacklight.org/latest/docs/) has how-to guides for installing, customizing, and maintaining a GeoBlacklight instance.
14
14
 
15
- See the [Quick Start](https://geoblacklight.org/docs/geoblacklight_quick_start/) section to create a new GeoBlacklight application, or see [For Developers](https://geoblacklight.org/docs/developers/) for more information about setting up a development environment.
15
+ See the [Quick Start](https://geoblacklight.org/latest/docs/geoblacklight_quick_start/) section to create a new GeoBlacklight application, or see [For Developers](https://geoblacklight.org/latest/docs/developers/) for more information about setting up a development environment.
16
16
 
17
- ### Contributing
17
+ ## Contributing
18
18
 
19
19
  Interested in contributing to GeoBlacklight? Please see [CONTRIBUTING.md](./CONTRIBUTING.md).
data/Rakefile CHANGED
@@ -12,18 +12,6 @@ require "engine_cart/rake_task"
12
12
  require "rspec/core/rake_task"
13
13
  require "open3"
14
14
 
15
- # Ensure the app generates with Propshaft; sprockets is no longer supported
16
- # https://github.com/geoblacklight/geoblacklight/issues/1265
17
- ENV["ENGINE_CART_RAILS_OPTIONS"] = ENV["ENGINE_CART_RAILS_OPTIONS"].to_s + " -a propshaft --css bootstrap"
18
-
19
- # Ensure the app generates with the correct javascript pipeline; rollup
20
- # (for Vite) is the default
21
- ENV["ENGINE_CART_RAILS_OPTIONS"] += if ENV["ASSET_PIPELINE"] == "importmap"
22
- " --js importmap"
23
- else
24
- " --js rollup"
25
- end
26
-
27
15
  def system_with_error_handling(*args)
28
16
  Open3.popen3(*args) do |_stdin, stdout, stderr, thread|
29
17
  puts stdout.read
@@ -45,21 +33,11 @@ RSpec::Core::RakeTask.new(:spec) do |t|
45
33
  t.verbose = false
46
34
  end
47
35
 
48
- desc "Run JavaScript unit tests"
49
- task :javascript_tests do
50
- system "/bin/bash -c yarn test"
51
- end
52
-
53
36
  desc "Run test suite"
54
37
  task :ci do
55
38
  with_solr do
56
39
  Rake::Task["geoblacklight:internal:seed"].invoke
57
-
58
- # Run RSpec tests with Coverage
59
40
  Rake::Task["geoblacklight:coverage"].invoke
60
-
61
- # Run JavaScript tests
62
- Rake::Task["javascript_tests"].invoke
63
41
  end
64
42
  end
65
43
 
@@ -0,0 +1,7 @@
1
+ /* Styles applied on every page */
2
+
3
+ /* Icons */
4
+ .blacklight-icons svg {
5
+ width: 1em;
6
+ height: 1em;
7
+ }
@@ -0,0 +1,22 @@
1
+ /* Homepage styles */
2
+
3
+ /* Category blocks */
4
+ .category-icon {
5
+ .blacklight-icons {
6
+ display: flex;
7
+ justify-content: center;
8
+ align-items: center;
9
+ svg {
10
+ width: 6rem;
11
+ height: 6rem;
12
+ }
13
+ }
14
+ }
15
+
16
+ /* Version display */
17
+ #geoblacklight-version {
18
+ font-family: monospace;
19
+ position: absolute;
20
+ bottom: 0.5rem;
21
+ right: 0.5rem;
22
+ }
@@ -0,0 +1,36 @@
1
+ /* Styles for index maps */
2
+
3
+ /* Outline the border of the clickable areas to improve contrast */
4
+ .viewer[data-leaflet-viewer-protocol-value="IndexMap"] {
5
+ .leaflet-interactive {
6
+ stroke: black;
7
+ }
8
+ }
9
+
10
+ /* Index map legend */
11
+ .index-map-legend {
12
+ margin-bottom: 0.5em;
13
+ display: flex;
14
+ flex-direction: column;
15
+ justify-content: flex-start;
16
+ align-items: flex-start;
17
+ gap: 0.5em;
18
+
19
+ @media(min-width: 992px) {
20
+ flex-direction: row;
21
+ gap: 1em;
22
+ }
23
+ }
24
+
25
+ .index-map-legend-info {
26
+ display: flex;
27
+ flex: 0 0 auto;
28
+ gap: 0.5em;
29
+ }
30
+
31
+ .index-map-legend-swatch {
32
+ display: inline-block;
33
+ border: var(--bs-border-width) solid var(--bs-border-color);
34
+ width: 1.5em;
35
+ height: 1.5em;
36
+ }
@@ -0,0 +1,39 @@
1
+ /* Record show page styles */
2
+
3
+ /* Document header */
4
+ .documentHeader {
5
+ h1 {
6
+ margin-bottom: 0.5em;
7
+ & > * {
8
+ vertical-align: middle;
9
+ }
10
+ }
11
+
12
+ .blacklight-icons {
13
+ display: inline-flex;
14
+ justify-content: center;
15
+ align-items: center;
16
+ height: 1em;
17
+ }
18
+ }
19
+
20
+ /* Attribute table */
21
+ [data-sidebar="false"] .attribute-data {
22
+ margin-top: 1rem;
23
+ }
24
+
25
+ /* Metadata */
26
+ .document-metadata {
27
+ margin-top: 1rem;
28
+ }
29
+
30
+ /* Sidebar */
31
+ .page-sidebar {
32
+ .card + .card {
33
+ margin-top: 1rem;
34
+ }
35
+
36
+ .card-header {
37
+ font-weight: 500;
38
+ }
39
+ }
@@ -0,0 +1,56 @@
1
+ /* Search page styles */
2
+
3
+ /* Search result header */
4
+ .documents-list {
5
+ --bl-results-document-margin-top: 0;
6
+
7
+ .document {
8
+ border: 0;
9
+ padding-bottom: var(--bl-results-document-padding-top);
10
+ }
11
+ }
12
+
13
+ .blacklight-catalog-index {
14
+ .documentHeader {
15
+ flex: auto;
16
+ display: flex;
17
+ align-items: flex-start;
18
+ justify-content: flex-start;
19
+ font-size: 1.25rem;
20
+ line-height: 1.25;
21
+ gap: 0.25em;
22
+
23
+ .status-icons {
24
+ flex: none;
25
+ display: flex;
26
+ justify-content: flex-start;
27
+ align-items: center;
28
+ gap: 0.2em;
29
+ }
30
+
31
+ /* More info dropdown and area */
32
+ .dropdown-toggle {
33
+ width: 1.5em;
34
+ height: 1.5em;
35
+ }
36
+
37
+ .dropdown-toggle::after {
38
+ vertical-align: top;
39
+ margin-left: -0.25em;
40
+ margin-top: 0.25em;
41
+ }
42
+ }
43
+
44
+ .index_title {
45
+ margin: 0 0 0 0.25em;
46
+ font-size: 1.25rem;
47
+ flex-grow: 1;
48
+ flex-shrink: 1;
49
+ }
50
+ }
51
+
52
+ .more-info-area > div {
53
+ padding-left: var(--bl-results-document-padding-top);
54
+ padding-right: var(--bl-results-document-padding-top);
55
+ padding-bottom: var(--bl-results-document-padding-top);
56
+ }
@@ -0,0 +1,50 @@
1
+ /* Styles for map viewers */
2
+
3
+ /* Geo viewers */
4
+ #leaflet-viewer,
5
+ #openlayers-viewer {
6
+ height: 500px;
7
+ }
8
+
9
+ /* Hide attribution and controls and disable interaction on the static map */
10
+ #static-map {
11
+ height: 250px;
12
+ pointer-events: none;
13
+ cursor: default;
14
+
15
+ .leaflet-interactive {
16
+ pointer-events: none;
17
+ cursor: default;
18
+ }
19
+
20
+ .leaflet-control-container {
21
+ display: none;
22
+ }
23
+ }
24
+
25
+ /* Prevent transparency of Leaflet's affiliations display to improve contrast */
26
+ .leaflet-container .leaflet-control-attribution {
27
+ background: white;
28
+ }
29
+
30
+ /* Fix text color on buttons inside the map to match Bootstrap */
31
+ .leaflet-control-container {
32
+ .search-control {
33
+ a {
34
+ color: var(--bs-btn-color);
35
+ }
36
+ }
37
+ }
38
+
39
+ /* Blur the background of the dynamic search toggle to improve contrast */
40
+ #gbl-dynamic-button {
41
+ background: rgba(255, 255, 255, 0.7);
42
+ backdrop-filter: blur(5px);
43
+ }
44
+
45
+ /* IIIF viewers */
46
+ #mirador,
47
+ #openseadragon {
48
+ position: relative;
49
+ height: 500px;
50
+ }
@@ -0,0 +1,14 @@
1
+ /* This is the default Geoblacklight theme. */
2
+
3
+ /* GBL dependencies CSS */
4
+ @import url("https://cdn.jsdelivr.net/npm/leaflet@1.9.4/dist/leaflet.css");
5
+ @import url("https://cdn.jsdelivr.net/npm/leaflet.fullscreen@5.3.0/dist/Control.FullScreen.css");
6
+ @import url("https://cdn.jsdelivr.net/npm/ol@8.1.0/ol.css");
7
+
8
+ /* GBL CSS */
9
+ @import url("geoblacklight/global.css");
10
+ @import url("geoblacklight/viewers.css");
11
+ @import url("geoblacklight/index_maps.css");
12
+ @import url("geoblacklight/record.css");
13
+ @import url("geoblacklight/home.css");
14
+ @import url("geoblacklight/search.css");
@@ -7,9 +7,9 @@ module Blacklight
7
7
 
8
8
  def svg
9
9
  <<~SVG
10
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28">
11
- <title>#{title}</title>
12
- <path fill="#6c757d" d="M22 14.5v5a4.5 4.5 0 0 1-4.5 4.5h-13A4.5 4.5 0 0 1 0 19.5v-13A4.5 4.5 0 0 1 4.5 2h11c.28 0 .5.22.5.5v1a.5.5 0 0 1-.5.5h-11A2.5 2.5 0 0 0 2 6.5v13A2.5 2.5 0 0 0 4.5 22h13a2.5 2.5 0 0 0 2.5-2.5v-5c0-.28.22-.5.5-.5h1c.28 0 .5.22.5.5zM28 1v8a1 1 0 0 1-1 1 .99.99 0 0 1-.7-.3l-2.75-2.75-10.19 10.19c-.1.1-.23.16-.36.16s-.26-.07-.36-.16l-1.78-1.78c-.1-.1-.15-.23-.15-.36s.06-.27.15-.36L21.05 4.45 18.3 1.7A1 1 0 0 1 18 1a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1z"/>
10
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24">
11
+ <title>#{title}</title>
12
+ <path fill="#6c757d" d="M14.11 21h-8.61c-3.037 0-5.5-2.463-5.5-5.5 0-2.702 1.951-4.945 4.521-5.408.212-3.951 3.473-7.092 7.479-7.092 3.634 0 6.646 2.587 7.335 6.017-.624-.03-1.164-.011-1.978.186-.669-2.558-2.712-4.203-5.357-4.203-3.359 0-5.734 2.562-5.567 6.78-1.954-.113-4.433.923-4.433 3.72 0 1.93 1.57 3.5 3.5 3.5h7.186c.356.749.837 1.426 1.424 2zm.607-6.667c1.306 0 1.398.905 1.691 1.755.129.373.164.56.275.56.13 0 .177-.23.324-.691.204-.633.509-1.628 1.22-1.628.685 0 .978.91 1.235 1.669.137.406.191.65.308.65.122 0 .202-.245.339-.65.248-.747.516-1.669 1.205-1.669.678 0 .985.891 1.171 1.479.256.814.332 1.025.806 1.025h.635c.045-.271.074-.548.074-.833 0-2.761-2.238-5-5-5-2.177 0-4.023 1.392-4.711 3.333h.428zm8.992 3.334c-.687 1.941-2.532 3.333-4.709 3.333-2.762 0-5-2.239-5-5 0-.285.029-.562.074-.833h.684c.458 0 .503.196.755 1.014.171.553.484 1.479 1.171 1.479.694 0 .988-.941 1.253-1.722.145-.423.176-.598.291-.598.123 0 .158.195.3.622.256.771.55 1.698 1.243 1.698.622 0 .92-.765 1.136-1.379.247-.702.282-.964.408-.964.128 0 .152.228.373.864.358 1.026.586 1.485 1.543 1.485h.478z"/>
13
13
  </svg>
14
14
  SVG
15
15
  end
@@ -1,5 +1,5 @@
1
- <div data-sidebar="<%= Settings.LEAFLET.SIDEBAR %>">
2
- <div class="accordion attribute-data<% if Settings.LEAFLET.SIDEBAR %> sidebar-container<% end %>">
1
+ <div data-sidebar="<%= sidebar? %>">
2
+ <div class="accordion attribute-data<% if sidebar? %> sidebar-container<% end %>">
3
3
  <div class="accordion-item">
4
4
  <h2 class="accordion-header" id="accordionHeading">
5
5
  <button class="accordion-button p-2 border-none bg-none" type="button" data-bs-toggle="collapse" data-bs-target="#<%= @id %>" aria-expanded="true" aria-controls="<%= @id %>">
@@ -13,4 +13,4 @@
13
13
  </div>
14
14
  </div>
15
15
  </div>
16
- </div>
16
+ </div>
@@ -7,5 +7,9 @@ module Geoblacklight
7
7
  @title = title
8
8
  super()
9
9
  end
10
+
11
+ def sidebar?
12
+ Geoblacklight.configuration.leaflet_options.sidebar
13
+ end
10
14
  end
11
15
  end
@@ -1,3 +1,3 @@
1
- <%= link_to(arcgis_link) do %>
1
+ <%= link_to arcgis_link, class: 'nav-link' do %>
2
2
  <%= helpers.geoblacklight_icon('esri-globe') %><%= t('geoblacklight.tools.open_arcgis') %>
3
3
  <% end %>
@@ -15,7 +15,7 @@ module Geoblacklight
15
15
  params = URI.encode_www_form(
16
16
  urls: document.arcgis_urls
17
17
  )
18
- Settings.ARCGIS_BASE_URL + "?" + params
18
+ Geoblacklight.configuration.arcgis_base_url + "?" + params
19
19
  end
20
20
 
21
21
  def key
@@ -1,4 +1,4 @@
1
- <%= render Geoblacklight::AccordionComponent.new(id: 'attribute-table', title: t('geoblacklight.show.table_name')) do %>
1
+ <%= render Geoblacklight::AccordionComponent.new(id: 'attribute-table', title: t('geoblacklight.show.table_name')) do %>
2
2
  <table id="attribute-table" class="table table-hover table-condensed table-striped mb-0 collapse show">
3
3
  <thead>
4
4
  <tr>
@@ -6,9 +6,9 @@
6
6
  <th><%= t('geoblacklight.show.value') %></th>
7
7
  </tr>
8
8
  </thead>
9
- <tbody class='attribute-table-body'>
9
+ <tbody class="attribute-table-body">
10
10
  <tr>
11
- <td class='default-text' colspan='2'><em><%= t('geoblacklight.show.click_map') %></em></td>
11
+ <td class="default-text" colspan="2"><em><%= t('geoblacklight.show.click_map') %></em></td>
12
12
  </tr>
13
13
  </tbody>
14
14
  </table>
@@ -1,3 +1,3 @@
1
- <%= link_to document.data_dictionary_download[:data_dictionary] do %>
1
+ <%= link_to document.data_dictionary_download[:data_dictionary], class: 'nav-link' do %>
2
2
  <%= helpers.geoblacklight_icon('book', aria_hidden: true) %><%= t('geoblacklight.references.data_dictionary') %>
3
3
  <% end %>
@@ -1 +1 @@
1
- <%= @display_note %>
1
+ <%= @display_note %>
@@ -41,7 +41,8 @@ module Geoblacklight
41
41
  end
42
42
 
43
43
  def prefixes
44
- Settings.DISPLAY_NOTES_SHOWN.map { |key, value| [value.note_prefix, [value.bootstrap_alert_class, value.icon]] }.to_h
44
+ Geoblacklight.configuration.display_notes_shown
45
+ .map { |key, value| [value.note_prefix, [value.bootstrap_alert_class, value.icon]] }.to_h
45
46
  end
46
47
  end
47
48
  end
@@ -1 +1 @@
1
- <%= citation %>
1
+ <%= citation %>
@@ -2,7 +2,7 @@
2
2
  <%= render_show_tools %>
3
3
 
4
4
  <div class="sidebar-buttons">
5
- <% sidebar_buttons.each do | sidebar_button | %>
5
+ <% sidebar_buttons.each do | sidebar_button | %>
6
6
  <%= render sidebar_button %>
7
7
  <% end %>
8
8
  </div>
@@ -9,7 +9,6 @@ module Geoblacklight
9
9
 
10
10
  def sidebar_buttons
11
11
  [
12
- Geoblacklight::WebServicesLinkComponent.new(document:),
13
12
  Geoblacklight::DownloadLinksComponent.new(document:),
14
13
  Geoblacklight::LoginLinkComponent.new(document:)
15
14
  ]
@@ -12,6 +12,7 @@
12
12
  <%= body %>
13
13
  <% else %>
14
14
  <div class="document-main-section">
15
+ <%= title %>
15
16
  <% @document.display_note.each do |display_note| %>
16
17
  <%= render Geoblacklight::DisplayNoteComponent.new(display_note: display_note) %>
17
18
  <% end %>
@@ -23,8 +24,6 @@
23
24
  </div>
24
25
  <%= render Geoblacklight::AttributeTableComponent.new(document: @document) %>
25
26
  <%= render Geoblacklight::IndexMapInspectComponent.new(document: @document) %>
26
- <% title.with_after_title { render Geoblacklight::HeaderIconsComponent.new(document: @document) } %>
27
- <%= title %>
28
27
  <%= embed %>
29
28
  <%= content %>
30
29
  <%= metadata %>
@@ -1,14 +1,14 @@
1
1
  <header>
2
2
  <%= top_bar %>
3
3
  <% if landing_page? %>
4
- <div class='p-5 bg-light jumbotron'>
5
- <div class='d-flex justify-content-center'>
4
+ <div class="p-5 bg-light jumbotron">
5
+ <div class="d-flex justify-content-center">
6
6
  <%= content_tag :h1, t('geoblacklight.home.headline'), class: 'text-center display-5 fw-bold' %>
7
7
  </div>
8
- <div class='d-flex justify-content-center'>
8
+ <div class="d-flex justify-content-center">
9
9
  <%= content_tag :h2, t('geoblacklight.home.search_heading'), class: 'text-center fs-4' %>
10
10
  </div>
11
11
  </div>
12
- <% end %>
12
+ <% end %>
13
13
  <%= search_bar %>
14
14
  </header>
@@ -4,14 +4,16 @@ module Geoblacklight
4
4
  class HeaderIconsComponent < ViewComponent::Base
5
5
  attr_reader :document, :fields
6
6
 
7
- def initialize(document:, fields: [Settings.FIELDS.RESOURCE_CLASS, Settings.FIELDS.PROVIDER, Settings.FIELDS.ACCESS_RIGHTS])
7
+ def initialize(document:,
8
+ fields: [Geoblacklight.configuration.fields.resource_class,
9
+ Geoblacklight.configuration.fields.access_rights])
8
10
  @document = document
9
11
  @fields = fields
10
12
  super()
11
13
  end
12
14
 
13
15
  def icon(field)
14
- return resource_icon if field == Settings.FIELDS.RESOURCE_CLASS
16
+ return resource_icon if field == Geoblacklight.configuration.fields.resource_class
15
17
 
16
18
  helpers.geoblacklight_icon(@document[field], classes: "svg_tooltip")
17
19
  end