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
@@ -4,8 +4,8 @@ require "spec_helper"
4
4
 
5
5
  RSpec.describe Geoblacklight::BboxFilterQuery do
6
6
  # Subject
7
- subject(:bbox_filter_query) { described_class.new(filter, solr_params) }
8
-
7
+ subject(:bbox_filter_query) { described_class.new(blacklight_config:) }
8
+ let(:result) { bbox_filter_query.call(filter, solr_params) }
9
9
  let(:solr_params) { {} }
10
10
 
11
11
  # Search State
@@ -32,6 +32,10 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
32
32
  end
33
33
 
34
34
  describe "#envelope_bounds" do
35
+ before do
36
+ result
37
+ end
38
+
35
39
  it "returns an BoundingBox envelope" do
36
40
  expect(bbox_filter_query.envelope_bounds).to eq("ENVELOPE(-180, 120, 80, -80)")
37
41
  end
@@ -41,6 +45,7 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
41
45
  context "without an explicit boost" do
42
46
  before do
43
47
  facet_config.within_boost = nil
48
+ result
44
49
  end
45
50
 
46
51
  it "returns an default boost value" do
@@ -51,17 +56,19 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
51
56
  context "with an explicit boost" do
52
57
  before do
53
58
  facet_config.within_boost = 99
59
+ result
54
60
  end
55
61
 
56
- it "applies boost based on configured Settings.BBOX_WITHIN_BOOST" do
62
+ it "applies boost based on configuration" do
57
63
  expect(bbox_filter_query.boost).to eq("^99")
58
64
  end
59
65
  end
60
66
  end
61
67
 
62
68
  describe "#relevancy_boost" do
69
+ let(:relevancy_boost) { result.last }
63
70
  it "returns a relevancy_boost" do
64
- expect(bbox_filter_query.relevancy_boost[:bq].to_s).to include("IsWithin")
71
+ expect(relevancy_boost[:bq].to_s).to include("IsWithin")
65
72
  end
66
73
 
67
74
  context "with overlap boost" do
@@ -69,8 +76,8 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
69
76
  facet_config.overlap_boost = 2
70
77
  end
71
78
 
72
- it "applies overlapRatio when Settings.OVERLAP_RATIO_BOOST is configured" do
73
- expect(bbox_filter_query.relevancy_boost[:bf].to_s).to include("$overlap^2")
79
+ it "applies overlapRatio" do
80
+ expect(relevancy_boost[:bf].to_s).to include("$overlap^2")
74
81
  end
75
82
  end
76
83
 
@@ -79,8 +86,8 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
79
86
  facet_config.overlap_boost = nil
80
87
  end
81
88
 
82
- it "does not apply overlapRatio when Settings.OVERLAP_RATIO_BOOST not configured" do
83
- expect(bbox_filter_query.relevancy_boost).not_to have_key(:overlap)
89
+ it "does not apply overlapRatio" do
90
+ expect(relevancy_boost).not_to have_key(:overlap)
84
91
  end
85
92
  end
86
93
 
@@ -91,15 +98,17 @@ RSpec.describe Geoblacklight::BboxFilterQuery do
91
98
  end
92
99
 
93
100
  it "appends overlap and includes the local boost" do
94
- expect(bbox_filter_query.relevancy_boost[:bf].to_s).to include("$overlap^2")
95
- expect(bbox_filter_query.relevancy_boost[:bf].to_s).to include("local_boost^5")
101
+ expect(relevancy_boost[:bf].to_s).to include("$overlap^2")
102
+ expect(relevancy_boost[:bf].to_s).to include("local_boost^5")
96
103
  end
97
104
  end
98
105
  end
99
106
 
100
107
  describe "#intersects_filter" do
108
+ let(:intersects_filter) { result.first }
109
+
101
110
  it "returns an Intersects query" do
102
- expect(bbox_filter_query.intersects_filter).to include("Intersects")
111
+ expect(intersects_filter).to include("Intersects")
103
112
  end
104
113
  end
105
114
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SolrDocument::Citation do
5
+ RSpec.describe Geoblacklight::SolrDocument::Citation do
6
6
  describe "#geoblacklight_citation" do
7
7
  let(:fixture) { JSON.parse(read_fixture("solr_documents/restricted-line.json")) }
8
8
  let(:document) { SolrDocument.new(fixture) }
@@ -7,7 +7,7 @@ class MyDocument
7
7
  include Geoblacklight::SolrDocument::Finder
8
8
  end
9
9
 
10
- describe Geoblacklight::SolrDocument::Finder do
10
+ RSpec.describe Geoblacklight::SolrDocument::Finder do
11
11
  let(:document_klass) { MyDocument }
12
12
 
13
13
  describe "#find" do
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SolrDocument::Inspection do
5
+ RSpec.describe Geoblacklight::SolrDocument::Inspection do
6
6
  subject { SolrDocument.new }
7
7
 
8
8
  describe "#inspectable?" do
@@ -2,11 +2,11 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SolrDocument do
5
+ RSpec.describe Geoblacklight::SolrDocument do
6
6
  let(:document) { SolrDocument.new(document_attributes) }
7
- let(:rights_field) { Settings.FIELDS.ACCESS_RIGHTS }
8
- let(:provider_field) { Settings.FIELDS.PROVIDER }
9
- let(:references_field) { Settings.FIELDS.REFERENCES }
7
+ let(:rights_field) { Geoblacklight.configuration.fields.access_rights }
8
+ let(:provider_field) { Geoblacklight.configuration.fields.provider }
9
+ let(:references_field) { Geoblacklight.configuration.fields.references }
10
10
  describe "#available?" do
11
11
  let(:document_attributes) { {} }
12
12
  describe "a public document" do
@@ -234,39 +234,4 @@ describe Geoblacklight::SolrDocument do
234
234
  expect(document.viewer_endpoint).to eq ""
235
235
  end
236
236
  end
237
- describe "checked_endpoint" do
238
- let(:document_attributes) { {} }
239
- let(:reference) { Geoblacklight::Reference.new(["http://www.opengis.net/def/serviceType/ogc/wms", "http://www.example.com/wms"]) }
240
- it "returns endpoint if available" do
241
- expect_any_instance_of(Geoblacklight::References).to receive(:wms).and_return(reference)
242
- expect(document.checked_endpoint("wms")).to eq "http://www.example.com/wms"
243
- end
244
- it "return nil if not available" do
245
- expect_any_instance_of(Geoblacklight::References).to receive(:wms).and_return(nil)
246
- expect(document.checked_endpoint("wms")).to be_nil
247
- end
248
- end
249
- describe "method_missing" do
250
- let(:document_attributes) { {} }
251
- it "calls checked_endpoint with parsed method name if matches" do
252
- expect(document).to receive(:checked_endpoint).with("wms").and_return(nil)
253
- expect(document.wms_url).to be_nil
254
- end
255
- it "raises no method error" do
256
- expect { document.wms_urlz }.to raise_error NoMethodError
257
- end
258
- end
259
- describe "#respond_to_missing?" do
260
- let(:document_attributes) { {} }
261
- context "with a valid method" do
262
- it "returns true" do
263
- expect(document.respond_to?(:wms_url)).to be true
264
- end
265
- end
266
- context "with a invalid method" do
267
- it "returns true" do
268
- expect(document.respond_to?(:wms_urlz)).to be false
269
- end
270
- end
271
- end
272
237
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe Geoblacklight::SuppressedRecordsSearchBehavior do
5
+ RSpec.describe Geoblacklight::SuppressedRecordsSearchBehavior do
6
6
  subject(:searcher) { search_builder.with(user_params) }
7
7
 
8
8
  let(:user_params) { {} }
@@ -25,7 +25,7 @@ describe Geoblacklight::SuppressedRecordsSearchBehavior do
25
25
 
26
26
  context "when document action call like CatalogController#web_services" do
27
27
  it "does not hide/filter suppressed records" do
28
- solr_params[:q] = "{!lucene}#{Settings.FIELDS.ID}:"
28
+ solr_params[:q] = "{!lucene}#{Geoblacklight.configuration.fields.id}:"
29
29
  expect(searcher.hide_suppressed_records(solr_params)).to be_nil
30
30
  end
31
31
  end
@@ -2,7 +2,7 @@
2
2
 
3
3
  require "spec_helper"
4
4
 
5
- describe "Catalog Routes", type: :routing do
5
+ RSpec.describe "Catalog Routes", type: :routing do
6
6
  # Test paths for custom routes
7
7
  it "maps { :controller => 'catalog', :action => 'opensearch', :format => 'xml' } to /catalog/opensearch.xml" do
8
8
  expect(get: "/catalog/opensearch.xml").to route_to(controller: "catalog", action: "opensearch", format: "xml")
data/spec/spec_helper.rb CHANGED
@@ -11,6 +11,7 @@ if ENV.fetch("CIRCLE_ARTIFACTS", false)
11
11
  end
12
12
 
13
13
  SimpleCov.start "rails" do
14
+ add_filter "app/components/blacklight/icons"
14
15
  add_filter "lib/generators/geoblacklight/install_generator.rb"
15
16
  add_filter "lib/geoblacklight/version.rb"
16
17
  add_filter "lib/geoblacklight/engine.rb"
@@ -36,26 +37,36 @@ require "selenium-webdriver"
36
37
  require "webmock/rspec"
37
38
  WebMock.allow_net_connect!(net_http_connect_on_start: true)
38
39
 
39
- Capybara.javascript_driver = :selenium_chrome_headless
40
+ Capybara.register_driver :chrome_headless do |app|
41
+ # Set up Chrome options
42
+ options = Selenium::WebDriver::Chrome::Options.new
43
+ options.add_argument("--headless")
44
+ options.add_argument("--disable-gpu")
45
+ options.add_argument("--no-sandbox")
46
+ options.add_argument("--window-size=1280,1024")
47
+
48
+ # Allow longer TCP reads to prevent timeout in the case of loading fixture
49
+ # eee6150b-ce2f-4837-9d17-ce72a0c1c26f, as part of relations_spec.rb
50
+ client = Selenium::WebDriver::Remote::Http::Default.new
51
+ client.read_timeout = 120 # seconds
52
+
53
+ Capybara::Selenium::Driver.new(app, browser: :chrome, options: options, http_client: client)
54
+ end
55
+
56
+ Capybara.javascript_driver = :chrome_headless
40
57
 
41
58
  require "geoblacklight"
42
59
 
43
60
  Dir["./spec/support/**/*.rb"].sort.each { |f| require f }
44
61
 
45
- FactoryBot.definition_file_paths = [File.expand_path("../factories", __FILE__)]
62
+ FactoryBot.definition_file_paths = [File.expand_path("factories", __dir__)]
46
63
  FactoryBot.find_definitions
47
64
 
48
65
  RSpec.configure do |config|
49
- config.use_transactional_fixtures = true
66
+ config.disable_monkey_patching!
50
67
 
51
- if Rails::VERSION::MAJOR >= 5
52
- config.include ::Rails.application.routes.url_helpers
53
- config.include ::Rails.application.routes.mounted_helpers
54
- else
55
- config.include BackportTestHelpers, type: :controller
56
- end
68
+ config.use_transactional_fixtures = true
57
69
 
58
70
  config.include Devise::Test::ControllerHelpers, type: :controller
59
71
  config.include ViewComponent::TestHelpers, type: :component
60
- config.include ViewComponentCapybaraTestHelpers, type: :component
61
72
  end
@@ -4,7 +4,7 @@ require "spec_helper"
4
4
  require "rake"
5
5
  require "fileutils"
6
6
 
7
- describe "geoblacklight.rake" do
7
+ RSpec.describe "geoblacklight.rake" do
8
8
  describe "geoblacklight:downloads:mkdir" do
9
9
  before do
10
10
  Rails.application.load_tasks
@@ -13,15 +13,16 @@ class TestAppGenerator < Rails::Generators::Base
13
13
  end
14
14
  end
15
15
 
16
+ # Install blacklight
16
17
  def run_blacklight_generator
17
18
  say_status("warning", "GENERATING BL", :yellow)
18
-
19
19
  generate "blacklight:install", "--devise", "--skip-solr"
20
20
  end
21
21
 
22
- # Install geoblacklight with the `test` option
22
+ # Install geoblacklight
23
23
  def install_engine
24
- generate "geoblacklight:install", "-f --test"
24
+ say_status("warning", "GENERATING GBL", :yellow)
25
+ generate "geoblacklight:install"
25
26
  end
26
27
 
27
28
  # Symlink fixture document directories so the test app doesn't have to be