geoblacklight 5.2.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 (455) 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 +16 -0
  20. data/app/components/geoblacklight/accordion_component.rb +15 -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 +15 -17
  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 +4 -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 +112 -107
  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 +49 -0
  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/importmap.rb +4 -10
  98. data/config/initializers/rails_config.rb +0 -3
  99. data/config/locales/geoblacklight.en.yml +79 -77
  100. data/geoblacklight.gemspec +1 -2
  101. data/lib/generators/geoblacklight/assets_generator.rb +35 -26
  102. data/lib/generators/geoblacklight/install_generator.rb +6 -11
  103. data/lib/generators/geoblacklight/templates/assets/customizations.css +6 -0
  104. data/lib/generators/geoblacklight/templates/catalog_controller.rb +97 -73
  105. data/lib/generators/geoblacklight/templates/settings.yml +98 -113
  106. data/lib/geoblacklight/configuration/default_settings_builder.rb +18 -0
  107. data/lib/geoblacklight/configuration/display_note_shown_config.rb +13 -0
  108. data/lib/geoblacklight/configuration/fields_config.rb +51 -0
  109. data/lib/geoblacklight/configuration/leaflet_config.rb +73 -0
  110. data/lib/geoblacklight/configuration/leaflet_layers_config.rb +21 -0
  111. data/lib/geoblacklight/configuration/leaflet_sleep_config.rb +20 -0
  112. data/lib/geoblacklight/configuration/legacy_settings_builder.rb +94 -0
  113. data/lib/geoblacklight/configuration.rb +148 -0
  114. data/lib/geoblacklight/download.rb +2 -2
  115. data/lib/geoblacklight/engine.rb +7 -5
  116. data/lib/geoblacklight/metadata/base.rb +0 -2
  117. data/lib/geoblacklight/metadata_transformer.rb +0 -2
  118. data/lib/geoblacklight/references.rb +5 -4
  119. data/lib/geoblacklight/relation/ancestors.rb +3 -2
  120. data/lib/geoblacklight/relation/descendants.rb +2 -1
  121. data/lib/geoblacklight/relation/relation_response.rb +4 -4
  122. data/lib/geoblacklight/version.rb +1 -1
  123. data/lib/geoblacklight/wms_layer.rb +3 -3
  124. data/lib/geoblacklight.rb +7 -1
  125. data/package.json +10 -34
  126. data/schema/geoblacklight-schema-aardvark.json +3 -11
  127. data/schema/readme.md +3 -4
  128. data/solr/conf/_rest_managed.json +3 -2
  129. data/solr/conf/schema.xml +1 -1
  130. data/spec/components/geoblacklight/arcgis_component_spec.rb +6 -6
  131. data/spec/components/geoblacklight/attribute_table_component_spec.rb +6 -7
  132. data/spec/components/geoblacklight/citation_component_spec.rb +7 -4
  133. data/spec/components/geoblacklight/display_note_component_spec.rb +8 -8
  134. data/spec/components/geoblacklight/document_component_spec.rb +13 -13
  135. data/spec/components/geoblacklight/download_links_component_spec.rb +17 -14
  136. data/spec/components/geoblacklight/header_icons_component_spec.rb +6 -11
  137. data/spec/components/geoblacklight/homepage_feature_facet_component_spec.rb +22 -30
  138. data/spec/components/geoblacklight/iiif_drag_drop_component_spec.rb +3 -3
  139. data/spec/components/geoblacklight/index_map_legend_component_spec.rb +5 -18
  140. data/spec/components/geoblacklight/item_map_viewer_component_spec.rb +5 -5
  141. data/spec/components/geoblacklight/login_link_component_spec.rb +4 -5
  142. data/spec/components/geoblacklight/search_result_component_spec.rb +2 -6
  143. data/spec/components/geoblacklight/static_map_component_spec.rb +2 -2
  144. data/spec/components/geoblacklight/viewer_help_text_component_spec.rb +4 -6
  145. data/spec/components/geoblacklight/web_services_component_spec.rb +11 -10
  146. data/spec/controllers/catalog_controller_spec.rb +7 -7
  147. data/spec/controllers/download_controller_spec.rb +1 -1
  148. data/spec/controllers/relation_controller_spec.rb +1 -1
  149. data/spec/controllers/wms_controller_spec.rb +1 -1
  150. data/spec/features/axe_spec.rb +4 -4
  151. data/spec/features/bookmarks_spec.rb +1 -1
  152. data/spec/features/citations_spec.rb +1 -1
  153. data/spec/features/configurable_basemap_spec.rb +1 -1
  154. data/spec/features/data_dictionary_download_spec.rb +1 -1
  155. data/spec/features/download_layer_spec.rb +1 -1
  156. data/spec/features/empty_search_spec.rb +1 -1
  157. data/spec/features/esri_viewer_spec.rb +1 -1
  158. data/spec/features/exports_spec.rb +1 -1
  159. data/spec/features/full_screen_control_spec.rb +3 -12
  160. data/spec/features/help_text_spec.rb +1 -1
  161. data/spec/features/home_page_spec.rb +1 -1
  162. data/spec/features/index_map_spec.rb +3 -3
  163. data/spec/features/index_view_spec.rb +7 -7
  164. data/spec/features/layer_inspection_spec.rb +1 -1
  165. data/spec/features/layer_opacity_spec.rb +1 -1
  166. data/spec/features/layer_preview_spec.rb +1 -1
  167. data/spec/features/layer_with_no_references_spec.rb +1 -1
  168. data/spec/features/linkified_attribute_table_spec.rb +1 -1
  169. data/spec/features/metadata_panel_spec.rb +1 -1
  170. data/spec/features/missing_metadata_spec.rb +1 -1
  171. data/spec/features/multiple_downloads_spec.rb +1 -1
  172. data/spec/features/oembed_spec.rb +1 -1
  173. data/spec/features/relations_spec.rb +2 -2
  174. data/spec/features/saved_searches_spec.rb +2 -9
  175. data/spec/features/search_bar_spec.rb +1 -1
  176. data/spec/features/search_results_complex_geometry_spec.rb +1 -1
  177. data/spec/features/search_results_icons_spec.rb +3 -4
  178. data/spec/features/search_results_map_spec.rb +1 -1
  179. data/spec/features/search_results_overlap_ratio_spec.rb +3 -3
  180. data/spec/features/search_spec.rb +1 -1
  181. data/spec/features/show_page_download_spec.rb +1 -1
  182. data/spec/features/show_page_metadata_spec.rb +2 -2
  183. data/spec/features/show_page_sidebar_static_map_spec.rb +1 -1
  184. data/spec/features/sms_spec.rb +1 -1
  185. data/spec/features/suppressed_records_spec.rb +1 -1
  186. data/spec/features/tilejson_spec.rb +1 -1
  187. data/spec/features/tms_spec.rb +1 -1
  188. data/spec/features/web_services_modal_spec.rb +1 -1
  189. data/spec/features/wmts_spec.rb +1 -1
  190. data/spec/features/xyz_spec.rb +1 -1
  191. data/spec/fixtures/manifests/tilejson.json +10 -19
  192. data/spec/fixtures/metadata/fgdc.html +1 -1
  193. data/spec/fixtures/metadata/iso.html +1 -1
  194. data/spec/fixtures/solr_documents/README.md +0 -1
  195. data/spec/fixtures/solr_documents/actual-papermap1.json +9 -28
  196. data/spec/fixtures/solr_documents/actual-point1.json +12 -39
  197. data/spec/fixtures/solr_documents/actual-polygon1.json +10 -30
  198. data/spec/fixtures/solr_documents/actual-raster1.json +14 -46
  199. data/spec/fixtures/solr_documents/all-relationships.json +12 -36
  200. data/spec/fixtures/solr_documents/b1g_iiif_manifest.json +33 -62
  201. data/spec/fixtures/solr_documents/b1g_wabash_child_15.json +13 -40
  202. data/spec/fixtures/solr_documents/b1g_wabash_child_16.json +13 -40
  203. data/spec/fixtures/solr_documents/b1g_wabash_child_17.json +13 -40
  204. data/spec/fixtures/solr_documents/b1g_wabash_child_18.json +13 -40
  205. data/spec/fixtures/solr_documents/b1g_wabash_parent.json +13 -40
  206. data/spec/fixtures/solr_documents/baruch_ancestor1.json +13 -40
  207. data/spec/fixtures/solr_documents/baruch_ancestor2.json +13 -40
  208. data/spec/fixtures/solr_documents/baruch_documentation_download.json +14 -46
  209. data/spec/fixtures/solr_documents/bbox-spans-180.json +7 -21
  210. data/spec/fixtures/solr_documents/complex-geom.json +11 -37
  211. data/spec/fixtures/solr_documents/cornell_html_metadata.json +12 -37
  212. data/spec/fixtures/solr_documents/display-note.json +11 -33
  213. data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +13 -39
  214. data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +13 -40
  215. data/spec/fixtures/solr_documents/esri-feature-layer.json +13 -39
  216. data/spec/fixtures/solr_documents/esri-image-map-layer.json +13 -40
  217. data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +16 -54
  218. data/spec/fixtures/solr_documents/esri-wms-layer.json +12 -36
  219. data/spec/fixtures/solr_documents/harvard_raster.json +12 -37
  220. data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +9 -27
  221. data/spec/fixtures/solr_documents/index-map-polygon-no-downloadurl.json +12 -41
  222. data/spec/fixtures/solr_documents/index-map-polygon.json +12 -41
  223. data/spec/fixtures/solr_documents/index-map-stanford.json +14 -45
  224. data/spec/fixtures/solr_documents/index-map-v1-complex.json +13 -38
  225. data/spec/fixtures/solr_documents/index_map_point.json +13 -42
  226. data/spec/fixtures/solr_documents/metadata_no_geom.json +4 -14
  227. data/spec/fixtures/solr_documents/metadata_no_provider.json +8 -25
  228. data/spec/fixtures/solr_documents/multiple-downloads.json +6 -18
  229. data/spec/fixtures/solr_documents/no_locn_geometry.json +4 -12
  230. data/spec/fixtures/solr_documents/no_spatial.json +4 -12
  231. data/spec/fixtures/solr_documents/oembed.json +8 -25
  232. data/spec/fixtures/solr_documents/princeton-child1.json +9 -29
  233. data/spec/fixtures/solr_documents/princeton-child2.json +9 -29
  234. data/spec/fixtures/solr_documents/princeton-child3.json +9 -29
  235. data/spec/fixtures/solr_documents/princeton-child4.json +9 -29
  236. data/spec/fixtures/solr_documents/princeton-parent.json +10 -33
  237. data/spec/fixtures/solr_documents/public_cog_princeton.json +9 -27
  238. data/spec/fixtures/solr_documents/public_iiif_princeton.json +13 -43
  239. data/spec/fixtures/solr_documents/public_pmtiles_princeton.json +29 -39
  240. data/spec/fixtures/solr_documents/public_polygon_mit.json +9 -30
  241. data/spec/fixtures/solr_documents/restricted-line.json +14 -47
  242. data/spec/fixtures/solr_documents/the-related-record.json +4 -12
  243. data/spec/fixtures/solr_documents/tilejson.json +23 -46
  244. data/spec/fixtures/solr_documents/tms.json +7 -21
  245. data/spec/fixtures/solr_documents/umn_metro_result1.json +13 -41
  246. data/spec/fixtures/solr_documents/umn_state_result1.json +13 -39
  247. data/spec/fixtures/solr_documents/umn_state_result2.json +13 -39
  248. data/spec/fixtures/solr_documents/uva_slug_colon.json +10 -30
  249. data/spec/fixtures/solr_documents/wmts-multiple.json +23 -39
  250. data/spec/fixtures/solr_documents/wmts-single-layer.json +23 -46
  251. data/spec/fixtures/solr_documents/xyz.json +10 -33
  252. data/spec/helpers/geoblacklight_helper_spec.rb +5 -50
  253. data/spec/javascripts/geoblacklight_spec.js +10 -10
  254. data/spec/javascripts/metadata_download_button_spec.js +14 -13
  255. data/spec/lib/geoblacklight/bounding_box_spec.rb +1 -1
  256. data/spec/lib/geoblacklight/configuration/default_settings_builder_spec.rb +9 -0
  257. data/spec/lib/geoblacklight/configuration_spec.rb +13 -0
  258. data/spec/lib/geoblacklight/download/csv_download_spec.rb +2 -2
  259. data/spec/lib/geoblacklight/download/geojson_download_spec.rb +2 -2
  260. data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +5 -2
  261. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +2 -2
  262. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +2 -2
  263. data/spec/lib/geoblacklight/download_spec.rb +15 -6
  264. data/spec/lib/geoblacklight/geometry_spec.rb +1 -1
  265. data/spec/lib/geoblacklight/item_viewer_spec.rb +2 -2
  266. data/spec/lib/geoblacklight/metadata/base_spec.rb +1 -1
  267. data/spec/lib/geoblacklight/metadata/html_spec.rb +1 -1
  268. data/spec/lib/geoblacklight/metadata_spec.rb +1 -1
  269. data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +1 -1
  270. data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +1 -1
  271. data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +1 -1
  272. data/spec/lib/geoblacklight/metadata_transformer_spec.rb +1 -1
  273. data/spec/lib/geoblacklight/reference_spec.rb +1 -1
  274. data/spec/lib/geoblacklight/references_spec.rb +6 -4
  275. data/spec/lib/geoblacklight/relation/ancestors_spec.rb +10 -4
  276. data/spec/lib/geoblacklight/relation/descendants_spec.rb +9 -4
  277. data/spec/lib/geoblacklight/relation/relation_response_spec.rb +12 -15
  278. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +1 -1
  279. data/spec/lib/geoblacklight/wms_layer_spec.rb +1 -1
  280. data/spec/models/concerns/geoblacklight/bbox_filter_query_spec.rb +20 -11
  281. data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +1 -1
  282. data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +1 -1
  283. data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +1 -1
  284. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +4 -39
  285. data/spec/models/concerns/geoblacklight/suppressed_records_search_behavior_spec.rb +2 -2
  286. data/spec/routing/catalog_routing_spec.rb +1 -1
  287. data/spec/spec_helper.rb +21 -10
  288. data/spec/tasks/geoblacklight_spec.rb +1 -1
  289. data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -3
  290. metadata +36 -185
  291. data/Procfile.dev +0 -3
  292. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +0 -2
  293. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +0 -31
  294. data/app/assets/stylesheets/geoblacklight/modules/_blacklight_overrides.scss +0 -40
  295. data/app/assets/stylesheets/geoblacklight/modules/_styles.scss +0 -9
  296. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +0 -62
  297. data/app/assets/stylesheets/geoblacklight/modules/geosearch.scss +0 -23
  298. data/app/assets/stylesheets/geoblacklight/modules/home.scss +0 -13
  299. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +0 -116
  300. data/app/assets/stylesheets/geoblacklight/modules/index_maps.scss +0 -61
  301. data/app/assets/stylesheets/geoblacklight/modules/item.scss +0 -61
  302. data/app/assets/stylesheets/geoblacklight/modules/layer_opacity.scss +0 -87
  303. data/app/assets/stylesheets/geoblacklight/modules/leaflet.scss +0 -4
  304. data/app/assets/stylesheets/geoblacklight/modules/metadata.scss +0 -31
  305. data/app/assets/stylesheets/geoblacklight/modules/metadata_content.scss +0 -43
  306. data/app/assets/stylesheets/geoblacklight/modules/metadata_markup.scss +0 -9
  307. data/app/assets/stylesheets/geoblacklight/modules/metadata_missing.scss +0 -7
  308. data/app/assets/stylesheets/geoblacklight/modules/modal.scss +0 -5
  309. data/app/assets/stylesheets/geoblacklight/modules/results.scss +0 -60
  310. data/app/assets/stylesheets/geoblacklight/modules/search_widgets.scss +0 -5
  311. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +0 -42
  312. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +0 -34
  313. data/app/assets/stylesheets/geoblacklight/modules/web_services.scss +0 -5
  314. data/app/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component.rb +0 -46
  315. data/app/components/blacklight/icons/arizona_component.rb +0 -24
  316. data/app/components/blacklight/icons/baruch_cuny_component.rb +0 -23
  317. data/app/components/blacklight/icons/bookmark_component.rb +0 -23
  318. data/app/components/blacklight/icons/circle_info_solid_component.rb +0 -23
  319. data/app/components/blacklight/icons/columbia_component.rb +0 -23
  320. data/app/components/blacklight/icons/cornell_component.rb +0 -25
  321. data/app/components/blacklight/icons/george_mason_component.rb +0 -24
  322. data/app/components/blacklight/icons/harvard_component.rb +0 -23
  323. data/app/components/blacklight/icons/indiana_component.rb +0 -23
  324. data/app/components/blacklight/icons/lewis_clark_component.rb +0 -25
  325. data/app/components/blacklight/icons/massgis_component.rb +0 -23
  326. data/app/components/blacklight/icons/michigan_state_university_component.rb +0 -25
  327. data/app/components/blacklight/icons/mit_component.rb +0 -23
  328. data/app/components/blacklight/icons/northwestern_university_component.rb +0 -24
  329. data/app/components/blacklight/icons/nyu_component.rb +0 -26
  330. data/app/components/blacklight/icons/pennsylvania_state_university_component.rb +0 -25
  331. data/app/components/blacklight/icons/princeton_component.rb +0 -23
  332. data/app/components/blacklight/icons/purdue_university_component.rb +0 -25
  333. data/app/components/blacklight/icons/rutgers_component.rb +0 -25
  334. data/app/components/blacklight/icons/sms_component.rb +0 -23
  335. data/app/components/blacklight/icons/stanford_component.rb +0 -23
  336. data/app/components/blacklight/icons/texas_component.rb +0 -23
  337. data/app/components/blacklight/icons/the_ohio_state_university_component.rb +0 -26
  338. data/app/components/blacklight/icons/tufts_component.rb +0 -23
  339. data/app/components/blacklight/icons/ucla_component.rb +0 -23
  340. data/app/components/blacklight/icons/university_of_california_berkeley_component.rb +0 -24
  341. data/app/components/blacklight/icons/university_of_chicago_component.rb +0 -25
  342. data/app/components/blacklight/icons/university_of_colorado_boulder_component.rb +0 -26
  343. data/app/components/blacklight/icons/university_of_illinois_urbana_champaign_component.rb +0 -25
  344. data/app/components/blacklight/icons/university_of_iowa_component.rb +0 -24
  345. data/app/components/blacklight/icons/university_of_maryland_component.rb +0 -24
  346. data/app/components/blacklight/icons/university_of_michigan_component.rb +0 -24
  347. data/app/components/blacklight/icons/university_of_minnesota_component.rb +0 -24
  348. data/app/components/blacklight/icons/university_of_nebraska_lincoln_component.rb +0 -27
  349. data/app/components/blacklight/icons/university_of_wisconsin_madison_component.rb +0 -24
  350. data/app/components/blacklight/icons/uva_component.rb +0 -23
  351. data/app/components/geoblacklight/icon_facet_item_component.rb +0 -33
  352. data/app/components/geoblacklight/web_services_link_component.html.erb +0 -3
  353. data/bin/vite +0 -29
  354. data/config/initializers/new_gbl_settings_defaults_4.1.yml +0 -104
  355. data/lib/generators/geoblacklight/assets/importmap_generator.rb +0 -70
  356. data/lib/generators/geoblacklight/assets/vite_generator.rb +0 -82
  357. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +0 -23
  358. data/lib/generators/geoblacklight/templates/assets/application.js +0 -17
  359. data/lib/generators/geoblacklight/templates/assets/application.scss +0 -9
  360. data/lib/generators/geoblacklight/templates/assets/geoblacklight.scss +0 -11
  361. data/lib/generators/geoblacklight/templates/base.html.erb +0 -46
  362. data/lib/generators/geoblacklight/templates/vite.config.ts +0 -23
  363. data/lib/generators/geoblacklight/templates/vite.json +0 -16
  364. data/schema/geoblacklight-schema-1.0.json +0 -214
  365. data/solr/conf/xslt/example.xsl +0 -132
  366. data/solr/conf/xslt/example_atom.xsl +0 -67
  367. data/solr/conf/xslt/example_rss.xsl +0 -66
  368. data/solr/conf/xslt/luke.xsl +0 -337
  369. data/spec/components/blacklight/icons/american_geographical_society_library_uwm_libraries_component_spec.rb +0 -15
  370. data/spec/components/blacklight/icons/arizona_component_spec.rb +0 -15
  371. data/spec/components/blacklight/icons/arrow_circle_down_component_spec.rb +0 -15
  372. data/spec/components/blacklight/icons/baruch_cuny_component_spec.rb +0 -15
  373. data/spec/components/blacklight/icons/book_component_spec.rb +0 -15
  374. data/spec/components/blacklight/icons/bookmark_component_spec.rb +0 -15
  375. data/spec/components/blacklight/icons/cd_rom_component_spec.rb +0 -15
  376. data/spec/components/blacklight/icons/child_item_component_spec.rb +0 -15
  377. data/spec/components/blacklight/icons/circle_info_solid_component_spec.rb +0 -15
  378. data/spec/components/blacklight/icons/citation_component_spec.rb +0 -15
  379. data/spec/components/blacklight/icons/collection_component_spec.rb +0 -15
  380. data/spec/components/blacklight/icons/collections_component_spec.rb +0 -15
  381. data/spec/components/blacklight/icons/columbia_component_spec.rb +0 -15
  382. data/spec/components/blacklight/icons/cornell_component_spec.rb +0 -15
  383. data/spec/components/blacklight/icons/datasets_component_spec.rb +0 -15
  384. data/spec/components/blacklight/icons/dvd_rom_component_spec.rb +0 -15
  385. data/spec/components/blacklight/icons/email_component_spec.rb +0 -15
  386. data/spec/components/blacklight/icons/esri_globe_component_spec.rb +0 -15
  387. data/spec/components/blacklight/icons/fire_solid_component_spec.rb +0 -15
  388. data/spec/components/blacklight/icons/george_mason_component_spec.rb +0 -15
  389. data/spec/components/blacklight/icons/globe_component_spec.rb +0 -15
  390. data/spec/components/blacklight/icons/harvard_component_spec.rb +0 -15
  391. data/spec/components/blacklight/icons/home_component_spec.rb +0 -15
  392. data/spec/components/blacklight/icons/iiif_drag_drop_component_spec.rb +0 -15
  393. data/spec/components/blacklight/icons/image_component_spec.rb +0 -15
  394. data/spec/components/blacklight/icons/imagery_component_spec.rb +0 -15
  395. data/spec/components/blacklight/icons/indiana_component_spec.rb +0 -15
  396. data/spec/components/blacklight/icons/leaf_component_spec.rb +0 -15
  397. data/spec/components/blacklight/icons/lewis_clark_component_spec.rb +0 -15
  398. data/spec/components/blacklight/icons/lightbulb_solid_component_spec.rb +0 -15
  399. data/spec/components/blacklight/icons/line_component_spec.rb +0 -15
  400. data/spec/components/blacklight/icons/map_component_spec.rb +0 -15
  401. data/spec/components/blacklight/icons/map_marker_component_spec.rb +0 -15
  402. data/spec/components/blacklight/icons/maps_component_spec.rb +0 -15
  403. data/spec/components/blacklight/icons/massgis_component_spec.rb +0 -15
  404. data/spec/components/blacklight/icons/metadata_component_spec.rb +0 -15
  405. data/spec/components/blacklight/icons/michigan_state_university_component_spec.rb +0 -15
  406. data/spec/components/blacklight/icons/mit_component_spec.rb +0 -15
  407. data/spec/components/blacklight/icons/mixed_component_spec.rb +0 -15
  408. data/spec/components/blacklight/icons/multilinestring_component_spec.rb +0 -15
  409. data/spec/components/blacklight/icons/multipoint_component_spec.rb +0 -15
  410. data/spec/components/blacklight/icons/multipolygon_component_spec.rb +0 -15
  411. data/spec/components/blacklight/icons/northwestern_university_component_spec.rb +0 -15
  412. data/spec/components/blacklight/icons/nyu_component_spec.rb +0 -15
  413. data/spec/components/blacklight/icons/pagelines_brands_component_spec.rb +0 -15
  414. data/spec/components/blacklight/icons/paper_map_component_spec.rb +0 -15
  415. data/spec/components/blacklight/icons/parent_item_component_spec.rb +0 -15
  416. data/spec/components/blacklight/icons/pennsylvania_state_university_component_spec.rb +0 -15
  417. data/spec/components/blacklight/icons/point_component_spec.rb +0 -15
  418. data/spec/components/blacklight/icons/polygon_component_spec.rb +0 -15
  419. data/spec/components/blacklight/icons/polyline_component_spec.rb +0 -15
  420. data/spec/components/blacklight/icons/princeton_component_spec.rb +0 -15
  421. data/spec/components/blacklight/icons/public_component_spec.rb +0 -15
  422. data/spec/components/blacklight/icons/purdue_university_component_spec.rb +0 -15
  423. data/spec/components/blacklight/icons/raster_component_spec.rb +0 -15
  424. data/spec/components/blacklight/icons/restricted_component_spec.rb +0 -15
  425. data/spec/components/blacklight/icons/rutgers_component_spec.rb +0 -15
  426. data/spec/components/blacklight/icons/sms_component_spec.rb +0 -15
  427. data/spec/components/blacklight/icons/stanford_component_spec.rb +0 -15
  428. data/spec/components/blacklight/icons/table_component_spec.rb +0 -15
  429. data/spec/components/blacklight/icons/tags_component_spec.rb +0 -15
  430. data/spec/components/blacklight/icons/texas_component_spec.rb +0 -15
  431. data/spec/components/blacklight/icons/the_ohio_state_university_component_spec.rb +0 -15
  432. data/spec/components/blacklight/icons/triangle_exclamation_solid_component_spec.rb +0 -15
  433. data/spec/components/blacklight/icons/tufts_component_spec.rb +0 -15
  434. data/spec/components/blacklight/icons/ucla_component_spec.rb +0 -15
  435. data/spec/components/blacklight/icons/university_of_california_berkeley_component_spec.rb +0 -15
  436. data/spec/components/blacklight/icons/university_of_chicago_component_spec.rb +0 -15
  437. data/spec/components/blacklight/icons/university_of_colorado_boulder_component_spec.rb +0 -15
  438. data/spec/components/blacklight/icons/university_of_illinois_urbana_champaign_component_spec.rb +0 -15
  439. data/spec/components/blacklight/icons/university_of_iowa_component_spec.rb +0 -15
  440. data/spec/components/blacklight/icons/university_of_maryland_component_spec.rb +0 -15
  441. data/spec/components/blacklight/icons/university_of_michigan_component_spec.rb +0 -15
  442. data/spec/components/blacklight/icons/university_of_minnesota_component_spec.rb +0 -15
  443. data/spec/components/blacklight/icons/university_of_nebraska_lincoln_component_spec.rb +0 -15
  444. data/spec/components/blacklight/icons/university_of_wisconsin_madison_component_spec.rb +0 -15
  445. data/spec/components/blacklight/icons/uva_component_spec.rb +0 -15
  446. data/spec/components/blacklight/icons/web_services_component_spec.rb +0 -15
  447. data/spec/components/blacklight/icons/websites_component_spec.rb +0 -15
  448. data/spec/components/geoblacklight/icon_facet_item_component_spec.rb +0 -18
  449. data/spec/config/initializers/rails_config_spec.rb +0 -16
  450. data/spec/fixtures/solr_documents/public_direct_download.json +0 -62
  451. data/spec/support/backport_test_helpers.rb +0 -47
  452. data/spec/support/view_component_capybara_test_helpers.rb +0 -8
  453. data/test/leaflet/layers.test.js +0 -17
  454. data/vite.config.ts +0 -35
  455. /data/app/assets/images/{blacklight → geoblacklight}/logo.svg +0 -0
@@ -1,67 +1,66 @@
1
1
  // Initializers
2
- import initializePopovers from "geoblacklight/initializers/popovers";
3
- import initializeRelations from "geoblacklight/initializers/relations";
4
- import initializeTooltips from "geoblacklight/initializers/tooltips";
5
- import initializeTruncation from "geoblacklight/initializers/truncation";
6
- import initializeMetadataDownload from "geoblacklight/initializers/metadata_download";
2
+ import initializePopovers from "geoblacklight/initializers/popovers"
3
+ import initializeRelations from "geoblacklight/initializers/relations"
4
+ import initializeTooltips from "geoblacklight/initializers/tooltips"
5
+ import initializeTruncation from "geoblacklight/initializers/truncation"
6
+ import initializeMetadataDownload from "geoblacklight/initializers/metadata_download"
7
7
 
8
8
  // Stimulus controllers
9
- import ClipboardController from "geoblacklight/controllers/clipboard_controller";
10
- import DownloadsController from "geoblacklight/controllers/downloads_controller";
11
- import LeafletViewerController from "geoblacklight/controllers/leaflet_viewer_controller";
12
- import OembedViewerController from "geoblacklight/controllers/oembed_viewer_controller";
13
- import OpenlayersViewerController from "geoblacklight/controllers/openlayers_viewer_controller";
14
- import SearchResultsController from "geoblacklight/controllers/search_results_controller";
9
+ import ClipboardController from "geoblacklight/controllers/clipboard_controller"
10
+ import DownloadsController from "geoblacklight/controllers/downloads_controller"
11
+ import LeafletViewerController from "geoblacklight/controllers/leaflet_viewer_controller"
12
+ import OembedViewerController from "geoblacklight/controllers/oembed_viewer_controller"
13
+ import OpenlayersViewerController from "geoblacklight/controllers/openlayers_viewer_controller"
14
+ import SearchResultsController from "geoblacklight/controllers/search_results_controller"
15
15
 
16
16
  // Inspired by Blacklight's javascript/blacklight/core.js
17
17
  const Geoblacklight = (function () {
18
- const callbacks = [];
18
+ const callbacks = []
19
19
  return {
20
20
  // Hook: pass a callback to add it to the activation stack
21
21
  onLoad: function (callback) {
22
- callbacks.push(callback);
22
+ callbacks.push(callback)
23
23
  },
24
24
 
25
25
  // Activate all stored callbacks
26
26
  activate: function (event) {
27
27
  callbacks.forEach((callback) => {
28
- callback(event);
29
- });
28
+ callback(event)
29
+ })
30
30
  },
31
31
 
32
32
  // Define hooks that will trigger the activation of the Geoblacklight JS
33
33
  listeners: function () {
34
- if (typeof Turbo !== "undefined")
35
- return ["turbo:load", "turbo:frame-load"];
36
- else return ["DOMContentLoaded"];
34
+ if (typeof Turbo !== "undefined") return ["turbo:load", "turbo:frame-load"]
35
+ else return ["DOMContentLoaded"]
37
36
  },
38
- };
39
- })();
37
+ }
38
+ })()
40
39
 
41
40
  // Add event listeners that call activate() for each event type
42
41
  Geoblacklight.listeners().forEach((listener) =>
43
- document.addEventListener(listener, (event) => Geoblacklight.activate(event))
44
- );
42
+ document.addEventListener(listener, (event) => Geoblacklight.activate(event)),
43
+ )
45
44
 
46
45
  // Register our initializers
47
- Geoblacklight.onLoad(initializePopovers);
48
- Geoblacklight.onLoad(initializeRelations);
49
- Geoblacklight.onLoad(initializeTooltips);
50
- Geoblacklight.onLoad(initializeTruncation);
51
- Geoblacklight.onLoad(initializeMetadataDownload);
46
+ Geoblacklight.onLoad(initializePopovers)
47
+ Geoblacklight.onLoad(initializeRelations)
48
+ Geoblacklight.onLoad(initializeTooltips)
49
+ Geoblacklight.onLoad(initializeTruncation)
50
+ Geoblacklight.onLoad(initializeMetadataDownload)
52
51
 
53
52
  // Register our Stimulus controllers
54
53
  if (typeof Stimulus !== "undefined") {
55
- Stimulus.register("openlayers-viewer", OpenlayersViewerController);
56
- Stimulus.register("oembed-viewer", OembedViewerController);
57
- Stimulus.register("leaflet-viewer", LeafletViewerController);
58
- Stimulus.register("search-results", SearchResultsController);
59
- Stimulus.register("downloads", DownloadsController);
60
- Stimulus.register("clipboard", ClipboardController);
54
+ Stimulus.register("openlayers-viewer", OpenlayersViewerController)
55
+ Stimulus.register("oembed-viewer", OembedViewerController)
56
+ Stimulus.register("leaflet-viewer", LeafletViewerController)
57
+ Stimulus.register("search-results", SearchResultsController)
58
+ Stimulus.register("downloads", DownloadsController)
59
+ Stimulus.register("clipboard", ClipboardController)
61
60
  } else {
62
61
  console.error(
63
- "Couldn't find Stimulus. Check installation instructions at https://github.com/hotwired/stimulus-rails."
64
- );
62
+ "Couldn't find Stimulus. Check installation instructions at https://github.com/hotwired/stimulus-rails.",
63
+ )
65
64
  }
66
65
 
67
- export default Geoblacklight;
66
+ export default Geoblacklight
@@ -1,17 +1,17 @@
1
1
  // Stimulus controllers
2
- import OpenlayersViewerController from "geoblacklight/controllers/openlayers_viewer_controller";
3
- import OembedViewerController from "geoblacklight/controllers/oembed_viewer_controller";
4
- import LeafletViewerController from "geoblacklight/controllers/leaflet_viewer_controller";
5
- import SearchResultsController from "geoblacklight/controllers/search_results_controller";
6
- import DownloadsController from "geoblacklight/controllers/downloads_controller";
7
- import ClipboardController from "geoblacklight/controllers/clipboard_controller";
2
+ import OpenlayersViewerController from "geoblacklight/controllers/openlayers_viewer_controller"
3
+ import OembedViewerController from "geoblacklight/controllers/oembed_viewer_controller"
4
+ import LeafletViewerController from "geoblacklight/controllers/leaflet_viewer_controller"
5
+ import SearchResultsController from "geoblacklight/controllers/search_results_controller"
6
+ import DownloadsController from "geoblacklight/controllers/downloads_controller"
7
+ import ClipboardController from "geoblacklight/controllers/clipboard_controller"
8
8
 
9
9
  // GBL core
10
- import Core from "geoblacklight/core";
10
+ import Core from "geoblacklight/core"
11
11
 
12
12
  // Other modules
13
- import openLayersBasemaps from "geoblacklight/openlayers/basemaps";
14
- import leafletBasemaps from "geoblacklight/leaflet/basemaps";
13
+ import openLayersBasemaps from "geoblacklight/openlayers/basemaps"
14
+ import leafletBasemaps from "geoblacklight/leaflet/basemaps"
15
15
 
16
16
  export default {
17
17
  OpenlayersViewerController,
@@ -24,4 +24,4 @@ export default {
24
24
  leafletBasemaps,
25
25
  Core,
26
26
  onLoad: Core.onLoad,
27
- };
27
+ }
@@ -1,54 +1,52 @@
1
1
  export class GeoBlacklightMetadataDownloadButton {
2
2
  constructor(el, i, options = {}) {
3
- this.options = options;
4
- this.el = typeof el === "string" ? document.querySelector(el) : el;
5
- this.download = document.querySelector(
6
- this.options.target || this.el.getAttribute("data-ref-download")
7
- );
3
+ this.options = options
4
+ this.el = typeof el === "string" ? document.querySelector(el) : el
5
+ this.download = document.querySelector(this.options.target || this.el.getAttribute("data-ref-download"))
8
6
  // On initialization only do this for the first one.
9
7
  if (i === 0) {
10
- this.setRefUrl();
8
+ this.setRefUrl()
11
9
  }
12
- this.configureHandler();
10
+ this.configureHandler()
13
11
  }
14
12
 
15
13
  configureHandler() {
16
- this.el.addEventListener("click", () => this.setRefUrl());
14
+ this.el.addEventListener("click", () => this.setRefUrl())
17
15
  }
18
16
 
19
17
  setRefUrl() {
20
- const refUrl = this.el.getAttribute("data-ref-endpoint");
18
+ const refUrl = this.el.getAttribute("data-ref-endpoint")
21
19
  if (!refUrl) {
22
- this.download.style.display = "none";
20
+ this.download.style.display = "none"
23
21
  } else {
24
- this.download.style.display = "";
25
- this.download.setAttribute("href", refUrl);
22
+ this.download.style.display = ""
23
+ this.download.setAttribute("href", refUrl)
26
24
  }
27
25
  }
28
26
  }
29
27
 
30
28
  export default function initializeMetadataDownload() {
31
- const modal = document.getElementById("blacklight-modal");
29
+ const modal = document.getElementById("blacklight-modal")
32
30
 
33
31
  modal.addEventListener("focus", (e) => {
34
- if (!Array.from(e.target.classList).includes('show')){
35
- return;
32
+ if (!Array.from(e.target.classList).includes("show")) {
33
+ return
36
34
  }
37
35
  e.target.querySelectorAll(".metadata-body").forEach((el) => {
38
- el.closest(".modal-content").classList.add("metadata-modal");
39
- });
36
+ el.closest(".modal-content").classList.add("metadata-modal")
37
+ })
40
38
 
41
39
  e.target.querySelectorAll(".pill-metadata").forEach((element, i) => {
42
- new GeoBlacklightMetadataDownloadButton(element, i);
43
- });
44
- });
40
+ new GeoBlacklightMetadataDownloadButton(element, i)
41
+ })
42
+ })
45
43
 
46
44
  modal.addEventListener("blur", (e) => {
47
- if (Array.from(e.target.classList).includes('show')){
48
- return;
45
+ if (Array.from(e.target.classList).includes("show")) {
46
+ return
49
47
  }
50
48
  e.target.querySelectorAll(".metadata-body").forEach((el) => {
51
- el.closest(".modal-content").classList.remove("metadata-modal");
52
- });
53
- });
49
+ el.closest(".modal-content").classList.remove("metadata-modal")
50
+ })
51
+ })
54
52
  }
@@ -1,11 +1,11 @@
1
- import { Popover } from 'bootstrap';
1
+ import { Popover } from "bootstrap"
2
2
 
3
3
  // Initialize popovers
4
4
  export default function initializePopovers() {
5
- const popoverElements = document.querySelectorAll('[data-bs-toggle="popover"]'); // Bootstrap 5 uses 'data-bs-toggle'
5
+ const popoverElements = document.querySelectorAll('[data-bs-toggle="popover"]') // Bootstrap 5 uses 'data-bs-toggle'
6
6
  popoverElements.forEach((element) => {
7
7
  const popover = new Popover(element, {
8
8
  trigger: "hover",
9
- });
10
- });
9
+ })
10
+ })
11
11
  }
@@ -1,40 +1,40 @@
1
1
  const fadeIn = (element, duration) => {
2
- element.style.opacity = 0;
3
- element.style.display = "block";
2
+ element.style.opacity = 0
3
+ element.style.display = "block"
4
4
 
5
- let start = null;
5
+ let start = null
6
6
  function step(timestamp) {
7
- if (!start) start = timestamp;
8
- const progress = timestamp - start;
9
- element.style.opacity = Math.min(progress / duration, 1);
7
+ if (!start) start = timestamp
8
+ const progress = timestamp - start
9
+ element.style.opacity = Math.min(progress / duration, 1)
10
10
  if (progress < duration) {
11
- window.requestAnimationFrame(step);
11
+ window.requestAnimationFrame(step)
12
12
  }
13
13
  }
14
14
 
15
- window.requestAnimationFrame(step);
16
- };
15
+ window.requestAnimationFrame(step)
16
+ }
17
17
 
18
18
  // Set up the relations widgets by querying the relations endpoint
19
19
  export default function initializeRelations() {
20
20
  document.querySelectorAll('[data-relations="true"]').forEach((element) => {
21
- const attributes = element.dataset;
22
- const relationUrl = `${attributes.url}/relations`;
21
+ const attributes = element.dataset
22
+ const relationUrl = `${attributes.url}/relations`
23
23
 
24
24
  fetch(relationUrl, { headers: { "X-Requested-With": "XMLHttpRequest" } })
25
25
  .then((response) => {
26
26
  if (!response.ok) {
27
- throw new Error("Network response was not ok");
27
+ throw new Error("Network response was not ok")
28
28
  }
29
- return response.text();
29
+ return response.text()
30
30
  })
31
31
  .then((data) => {
32
- const div = document.createElement("div");
33
- div.innerHTML = data;
34
- element.appendChild(div);
35
- div.style.display = "none";
36
- fadeIn(div, 200);
32
+ const div = document.createElement("div")
33
+ div.innerHTML = data
34
+ element.appendChild(div)
35
+ div.style.display = "none"
36
+ fadeIn(div, 200)
37
37
  })
38
- .catch((error) => console.error("Error:", error));
39
- });
38
+ .catch((error) => console.error("Error:", error))
39
+ })
40
40
  }
@@ -1,55 +1,51 @@
1
- import { Tooltip } from "bootstrap";
1
+ import { Tooltip } from "bootstrap"
2
2
 
3
3
  export default function initializeTooltips() {
4
4
  document.body.addEventListener(
5
5
  "mouseenter",
6
6
  (event) => {
7
7
  if (event.target.closest(".blacklight-icons.svg_tooltip svg")) {
8
- const svgElement = event.target.closest(
9
- ".blacklight-icons.svg_tooltip svg"
10
- );
11
- const svgTitleElement = svgElement.querySelector("title");
12
- const titleText = svgTitleElement ? svgTitleElement.textContent : "";
8
+ const svgElement = event.target.closest(".blacklight-icons.svg_tooltip svg")
9
+ const svgTitleElement = svgElement.querySelector("title")
10
+ const titleText = svgTitleElement ? svgTitleElement.textContent : ""
13
11
 
14
12
  if (titleText !== undefined && titleText !== "") {
15
13
  // Initialize Bootstrap tooltip with native JavaScript
16
14
  const tooltip = new Tooltip(svgElement, {
17
15
  placement: "bottom",
18
16
  title: titleText,
19
- });
20
- tooltip.show();
17
+ })
18
+ tooltip.show()
21
19
 
22
20
  // Store the original title in the data-original-title attribute
23
21
  // and remove the title element to prevent it from interfering with Bootstrap's tooltip.
24
- svgElement.setAttribute("data-original-title", titleText);
25
- svgTitleElement.remove();
22
+ svgElement.setAttribute("data-original-title", titleText)
23
+ svgTitleElement.remove()
26
24
  }
27
25
  }
28
26
  },
29
- true
30
- ); // Use capture to ensure the event is caught as it bubbles up
27
+ true,
28
+ ) // Use capture to ensure the event is caught as it bubbles up
31
29
 
32
30
  document.body.addEventListener(
33
31
  "mouseleave",
34
32
  (event) => {
35
33
  if (event.target.closest(".blacklight-icons.svg_tooltip svg")) {
36
- const svgElement = event.target.closest(
37
- ".blacklight-icons.svg_tooltip svg"
38
- );
39
- const originalTitle = svgElement.getAttribute("data-original-title");
34
+ const svgElement = event.target.closest(".blacklight-icons.svg_tooltip svg")
35
+ const originalTitle = svgElement.getAttribute("data-original-title")
40
36
 
41
37
  if (originalTitle !== undefined && originalTitle !== "") {
42
38
  // Restore the SVG title element from data-original-title
43
- const newTitleElement = document.createElement("title");
44
- newTitleElement.textContent = originalTitle;
45
- svgElement.prepend(newTitleElement);
46
- svgElement.setAttribute("data-original-title", "");
39
+ const newTitleElement = document.createElement("title")
40
+ newTitleElement.textContent = originalTitle
41
+ svgElement.prepend(newTitleElement)
42
+ svgElement.setAttribute("data-original-title", "")
47
43
  }
48
44
  }
49
45
 
50
46
  // Remove tooltips
51
- document.querySelectorAll(".tooltip").forEach((elem) => elem.remove());
47
+ document.querySelectorAll(".tooltip").forEach((elem) => elem.remove())
52
48
  },
53
- true
54
- ); // Use capture to ensure the event is caught as it bubbles up
49
+ true,
50
+ ) // Use capture to ensure the event is caught as it bubbles up
55
51
  }
@@ -5,31 +5,31 @@
5
5
  class Truncator {
6
6
  constructor(element, { lines, id }) {
7
7
  // if the element is already small enough, don't truncate it
8
- const minHeight = lines * parseFloat(window.getComputedStyle(element).fontSize);
9
- if (element.getBoundingClientRect().height < minHeight) return;
8
+ const minHeight = lines * parseFloat(window.getComputedStyle(element).fontSize)
9
+ if (element.getBoundingClientRect().height <= minHeight) return
10
10
 
11
11
  // set a unique ID for the element if it doesn't have one
12
- this.element = element;
13
- this.element.id ||= id;
12
+ this.element = element
13
+ this.element.id ||= id
14
14
 
15
15
  // add the button
16
- this.button = document.createElement("button");
17
- this.button.classList.add("btn", "btn-link", "p-0", "border-0");
18
- this.button.dataset.bsToggle = "collapse";
19
- this.button.dataset.bsTarget = `#${this.element.id}`;
20
- this.button.setAttribute("aria-expanded", "false");
21
- this.button.setAttribute("aria-controls", this.element.id);
22
- this.button.textContent = "Read more";
23
- this.button.addEventListener("click", this.toggle.bind(this));
24
- element.parentNode.insertBefore(this.button, element.nextSibling);
16
+ this.button = document.createElement("button")
17
+ this.button.classList.add("btn", "btn-link", "p-0", "border-0")
18
+ this.button.dataset.bsToggle = "collapse"
19
+ this.button.dataset.bsTarget = `#${this.element.id}`
20
+ this.button.setAttribute("aria-expanded", "false")
21
+ this.button.setAttribute("aria-controls", this.element.id)
22
+ this.button.textContent = "Read more"
23
+ this.button.addEventListener("click", this.toggle.bind(this))
24
+ element.parentNode.insertBefore(this.button, element.nextSibling)
25
25
 
26
26
  // start collapsed
27
- this.element.classList.add("collapse");
27
+ this.element.classList.add("collapse")
28
28
  }
29
29
 
30
30
  toggle() {
31
- if (this.button.textContent == "Read more") this.button.textContent = "Close";
32
- else this.button.textContent = "Read more";
31
+ if (this.button.textContent == "Read more") this.button.textContent = "Close"
32
+ else this.button.textContent = "Read more"
33
33
  }
34
34
  }
35
35
 
@@ -40,6 +40,6 @@ export default function initializeTruncation() {
40
40
  new Truncator(element, {
41
41
  lines: 12,
42
42
  id: `truncate-${i}`,
43
- });
44
- });
43
+ })
44
+ })
45
45
  }
@@ -65,10 +65,9 @@ export default {
65
65
  },
66
66
  openstreetmapStandard: {
67
67
  url: "https://tile.openstreetmap.org/{z}/{x}/{y}.png",
68
- attribution:
69
- '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',
68
+ attribution: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',
70
69
  maxZoom: 19,
71
70
  worldCopyJump: true,
72
71
  retina: "@2x",
73
72
  },
74
- };
73
+ }
@@ -1,18 +1,18 @@
1
- import { LatLngBounds } from "leaflet";
1
+ import { LatLngBounds } from "leaflet"
2
2
 
3
3
  export const DEFAULT_BOUNDS = new LatLngBounds([
4
4
  [-30, -100],
5
5
  [30, 100],
6
- ]);
6
+ ])
7
7
 
8
- export const DEFAULT_OPACITY = 0.75;
8
+ export const DEFAULT_OPACITY = 0.75
9
9
 
10
- export const DEFAULT_BASEMAP = "positron";
10
+ export const DEFAULT_BASEMAP = "positron"
11
11
 
12
12
  export const DEFAULT_GEOM_OVERLAY_OPTIONS = {
13
- color: '#3388ff',
13
+ color: "#3388ff",
14
14
  dashArray: "5 5",
15
15
  weight: 2,
16
16
  opacity: 1,
17
- fillOpacity: 0
18
- }
17
+ fillOpacity: 0,
18
+ }