geoblacklight 2.2.0 → 3.0.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 (277) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +212 -112
  3. data/.rubocop.yml +16 -14
  4. data/.rubocop_todo.yml +28 -151
  5. data/Gemfile +3 -8
  6. data/README.md +1 -1
  7. data/Rakefile +1 -0
  8. data/app/assets/images/blacklight/arrow-circle-down.svg +1 -2
  9. data/app/assets/images/blacklight/baruch-cuny.svg +1 -4
  10. data/app/assets/images/blacklight/berkeley.svg +1 -4
  11. data/app/assets/images/blacklight/book.svg +1 -4
  12. data/app/assets/images/blacklight/bookmark.svg +1 -4
  13. data/app/assets/images/blacklight/cd-rom.svg +1 -4
  14. data/app/assets/images/blacklight/chicago.svg +1 -4
  15. data/app/assets/images/blacklight/citation.svg +3 -0
  16. data/app/assets/images/blacklight/collection.svg +3 -0
  17. data/app/assets/images/blacklight/columbia.svg +1 -4
  18. data/app/assets/images/blacklight/cornell.svg +1 -4
  19. data/app/assets/images/blacklight/dvd-rom.svg +1 -4
  20. data/app/assets/images/blacklight/email.svg +1 -4
  21. data/app/assets/images/blacklight/esri-globe.svg +1 -4
  22. data/app/assets/images/blacklight/globe.svg +1 -2
  23. data/app/assets/images/blacklight/harvard.svg +1 -4
  24. data/app/assets/images/blacklight/home.svg +1 -2
  25. data/app/assets/images/blacklight/illinois.svg +1 -4
  26. data/app/assets/images/blacklight/image.svg +1 -4
  27. data/app/assets/images/blacklight/indiana.svg +1 -4
  28. data/app/assets/images/blacklight/iowa.svg +1 -4
  29. data/app/assets/images/blacklight/leaf.svg +1 -4
  30. data/app/assets/images/blacklight/lewis-clark.svg +1 -4
  31. data/app/assets/images/blacklight/line.svg +1 -4
  32. data/app/assets/images/blacklight/map-marker.svg +1 -4
  33. data/app/assets/images/blacklight/map.svg +1 -4
  34. data/app/assets/images/blacklight/maryland.svg +1 -4
  35. data/app/assets/images/blacklight/massgis.svg +1 -4
  36. data/app/assets/images/blacklight/metadata.svg +1 -4
  37. data/app/assets/images/blacklight/michigan-state.svg +1 -4
  38. data/app/assets/images/blacklight/michigan.svg +1 -4
  39. data/app/assets/images/blacklight/minnesota.svg +1 -4
  40. data/app/assets/images/blacklight/mit.svg +1 -4
  41. data/app/assets/images/blacklight/mixed.svg +1 -4
  42. data/app/assets/images/blacklight/multilinestring.svg +1 -4
  43. data/app/assets/images/blacklight/multipoint.svg +1 -4
  44. data/app/assets/images/blacklight/multipolygon.svg +1 -4
  45. data/app/assets/images/blacklight/nyu.svg +1 -4
  46. data/app/assets/images/blacklight/ohio-state.svg +1 -4
  47. data/app/assets/images/blacklight/pagelines-brands.svg +1 -4
  48. data/app/assets/images/blacklight/paper-map.svg +1 -4
  49. data/app/assets/images/blacklight/penn-state.svg +1 -4
  50. data/app/assets/images/blacklight/point.svg +1 -4
  51. data/app/assets/images/blacklight/polygon.svg +1 -4
  52. data/app/assets/images/blacklight/polyline.svg +1 -4
  53. data/app/assets/images/blacklight/princeton.svg +1 -4
  54. data/app/assets/images/blacklight/public.svg +1 -4
  55. data/app/assets/images/blacklight/purdue.svg +1 -4
  56. data/app/assets/images/blacklight/raster.svg +1 -4
  57. data/app/assets/images/blacklight/restricted.svg +1 -4
  58. data/app/assets/images/blacklight/sms.svg +1 -4
  59. data/app/assets/images/blacklight/stanford.svg +1 -4
  60. data/app/assets/images/blacklight/table.svg +1 -4
  61. data/app/assets/images/blacklight/tags.svg +1 -2
  62. data/app/assets/images/blacklight/texas.svg +1 -4
  63. data/app/assets/images/blacklight/tufts.svg +1 -4
  64. data/app/assets/images/blacklight/ucla.svg +1 -4
  65. data/app/assets/images/blacklight/uva.svg +1 -4
  66. data/app/assets/images/blacklight/web_services.svg +1 -4
  67. data/app/assets/images/blacklight/wisconsin.svg +1 -4
  68. data/app/assets/javascripts/geoblacklight/basemaps.js +18 -0
  69. data/app/assets/javascripts/geoblacklight/downloaders/downloader.js +1 -1
  70. data/app/assets/javascripts/geoblacklight/modules/geosearch.js +1 -1
  71. data/app/assets/javascripts/geoblacklight/modules/home.js +1 -1
  72. data/app/assets/javascripts/geoblacklight/modules/item.js +20 -1
  73. data/app/assets/javascripts/geoblacklight/modules/results.js +4 -2
  74. data/app/assets/javascripts/geoblacklight/modules/svg_tooltips.js +31 -0
  75. data/app/assets/javascripts/geoblacklight/viewers/esri.js +2 -2
  76. data/app/assets/javascripts/geoblacklight/viewers/esri/tiled_map_layer.js +1 -1
  77. data/app/assets/javascripts/geoblacklight/viewers/wms.js +2 -2
  78. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +2 -0
  79. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +33 -0
  80. data/app/assets/stylesheets/geoblacklight/{_blacklight_overrides.scss → modules/_blacklight_overrides.scss} +1 -10
  81. data/app/assets/stylesheets/geoblacklight/{_styles.scss → modules/_styles.scss} +1 -0
  82. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +37 -54
  83. data/app/assets/stylesheets/geoblacklight/modules/item.scss +13 -0
  84. data/app/assets/stylesheets/geoblacklight/modules/results.scss +26 -29
  85. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +12 -42
  86. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +17 -59
  87. data/app/controllers/download_controller.rb +12 -12
  88. data/app/controllers/relation_controller.rb +1 -0
  89. data/app/controllers/wms_controller.rb +1 -0
  90. data/app/helpers/arcgis_helper.rb +1 -0
  91. data/app/helpers/blacklight_helper.rb +1 -0
  92. data/app/helpers/carto_helper.rb +1 -0
  93. data/app/helpers/geoblacklight_helper.rb +36 -79
  94. data/app/models/concerns/geoblacklight/solr_document.rb +15 -9
  95. data/app/models/concerns/geoblacklight/solr_document/arcgis.rb +2 -1
  96. data/app/models/concerns/geoblacklight/solr_document/carto.rb +1 -13
  97. data/app/models/concerns/geoblacklight/solr_document/citation.rb +29 -0
  98. data/app/models/concerns/geoblacklight/solr_document/finder.rb +1 -0
  99. data/app/models/concerns/geoblacklight/solr_document/inspection.rb +2 -1
  100. data/app/models/concerns/geoblacklight/spatial_search_behavior.rb +3 -1
  101. data/app/presenters/geoblacklight/document_presenter.rb +2 -1
  102. data/app/views/catalog/_arcgis.html.erb +4 -0
  103. data/app/views/catalog/_carto.html.erb +4 -0
  104. data/app/views/catalog/_citation.html.erb +11 -0
  105. data/app/views/catalog/_data_dictionary.html.erb +1 -1
  106. data/app/views/catalog/_document_action.html.erb +1 -1
  107. data/app/views/catalog/_document_split.html.erb +1 -1
  108. data/app/views/catalog/_downloads_primary.html.erb +8 -1
  109. data/app/views/catalog/_header_icons.html.erb +3 -3
  110. data/app/views/catalog/_home_text.html.erb +4 -1
  111. data/app/views/catalog/_index_split_default.html.erb +22 -14
  112. data/app/views/catalog/_show_default_viewer_container.html.erb +1 -1
  113. data/app/views/catalog/_web_services_wfs.html.erb +3 -3
  114. data/app/views/catalog/_web_services_wms.html.erb +3 -3
  115. data/app/views/catalog/metadata.html.erb +3 -1
  116. data/app/views/catalog/web_services.html.erb +9 -7
  117. data/app/views/relation/_ancestors.html.erb +2 -5
  118. data/app/views/relation/_descendants.html.erb +3 -6
  119. data/app/views/relation/index.html.erb +20 -8
  120. data/app/views/relation/index.json.jbuilder +2 -1
  121. data/app/views/shared/_header_navbar.html.erb +1 -3
  122. data/bin/coverage.rb +36 -0
  123. data/config/initializers/rails_config.rb +1 -0
  124. data/config/locales/geoblacklight.en.yml +46 -61
  125. data/geoblacklight.gemspec +5 -8
  126. data/lib/generators/geoblacklight/assets_generator.rb +46 -0
  127. data/lib/generators/geoblacklight/install_generator.rb +8 -9
  128. data/lib/generators/geoblacklight/templates/assets/_blacklight.scss +1 -0
  129. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +28 -0
  130. data/{app/assets/stylesheets/geoblacklight/application.scss → lib/generators/geoblacklight/templates/assets/_geoblacklight.scss} +0 -1
  131. data/lib/generators/geoblacklight/templates/assets/application.scss +7 -0
  132. data/lib/generators/geoblacklight/templates/{geoblacklight.js → assets/geoblacklight.js} +0 -1
  133. data/lib/generators/geoblacklight/templates/catalog_controller.rb +6 -2
  134. data/lib/generators/geoblacklight/templates/settings.yml +4 -6
  135. data/lib/generators/geoblacklight/webpacker_generator.rb +2 -1
  136. data/lib/geoblacklight.rb +1 -0
  137. data/lib/geoblacklight/bounding_box.rb +1 -0
  138. data/lib/geoblacklight/catalog_helper_override.rb +2 -1
  139. data/lib/geoblacklight/constants.rb +1 -0
  140. data/lib/geoblacklight/download.rb +6 -5
  141. data/lib/geoblacklight/download/geojson_download.rb +1 -0
  142. data/lib/geoblacklight/download/geotiff_download.rb +1 -0
  143. data/lib/geoblacklight/download/hgl_download.rb +1 -0
  144. data/lib/geoblacklight/download/kmz_download.rb +2 -1
  145. data/lib/geoblacklight/download/shapefile_download.rb +1 -0
  146. data/lib/geoblacklight/engine.rb +2 -2
  147. data/lib/geoblacklight/exceptions.rb +1 -0
  148. data/lib/geoblacklight/geoblacklight_helper_behavior.rb +1 -0
  149. data/lib/geoblacklight/item_viewer.rb +1 -0
  150. data/lib/geoblacklight/metadata.rb +1 -0
  151. data/lib/geoblacklight/metadata/base.rb +3 -2
  152. data/lib/geoblacklight/metadata/fgdc.rb +1 -0
  153. data/lib/geoblacklight/metadata/html.rb +2 -2
  154. data/lib/geoblacklight/metadata/iso19139.rb +1 -0
  155. data/lib/geoblacklight/metadata_transformer.rb +1 -0
  156. data/lib/geoblacklight/metadata_transformer/base.rb +1 -0
  157. data/lib/geoblacklight/metadata_transformer/fgdc.rb +1 -0
  158. data/lib/geoblacklight/metadata_transformer/iso19139.rb +1 -0
  159. data/lib/geoblacklight/reference.rb +1 -0
  160. data/lib/geoblacklight/references.rb +7 -3
  161. data/lib/geoblacklight/relation/ancestors.rb +2 -1
  162. data/lib/geoblacklight/relation/descendants.rb +2 -1
  163. data/lib/geoblacklight/relation/relation_response.rb +2 -1
  164. data/lib/geoblacklight/routes.rb +1 -0
  165. data/lib/geoblacklight/routes/downloadable.rb +1 -0
  166. data/lib/geoblacklight/routes/exportable.rb +1 -0
  167. data/lib/geoblacklight/routes/wms.rb +1 -0
  168. data/lib/geoblacklight/version.rb +2 -1
  169. data/lib/geoblacklight/view_helper_override.rb +2 -1
  170. data/lib/geoblacklight/wms_layer.rb +3 -2
  171. data/lib/geoblacklight/wms_layer/feature_info_response.rb +1 -0
  172. data/lib/tasks/geoblacklight.rake +33 -32
  173. data/solr/conf/schema.xml +5 -5
  174. data/spec/controllers/catalog_controller_spec.rb +1 -0
  175. data/spec/controllers/download_controller_spec.rb +2 -1
  176. data/spec/controllers/relation_controller_spec.rb +1 -0
  177. data/spec/controllers/wms_controller_spec.rb +2 -1
  178. data/spec/factories/user.rb +1 -0
  179. data/spec/features/bookmarks_spec.rb +1 -0
  180. data/spec/features/configurable_basemap_spec.rb +10 -0
  181. data/spec/features/data_dictionary_download_spec.rb +1 -0
  182. data/spec/features/download_layer_spec.rb +1 -0
  183. data/spec/features/empty_search_spec.rb +1 -0
  184. data/spec/features/esri_viewer_spec.rb +1 -6
  185. data/spec/features/exports_spec.rb +4 -12
  186. data/spec/features/help_text_spec.rb +1 -0
  187. data/spec/features/home_page_spec.rb +6 -0
  188. data/spec/features/iiif_viewer_spec.rb +1 -0
  189. data/spec/features/index_map_spec.rb +1 -0
  190. data/spec/features/layer_inspection_spec.rb +1 -0
  191. data/spec/features/layer_opacity_spec.rb +1 -0
  192. data/spec/features/layer_preview_spec.rb +1 -0
  193. data/spec/features/layer_with_no_references_spec.rb +1 -0
  194. data/spec/features/linkified_attribute_table_spec.rb +1 -0
  195. data/spec/features/metadata_panel_spec.rb +1 -0
  196. data/spec/features/missing_metadata_spec.rb +13 -0
  197. data/spec/features/multiple_downloads_spec.rb +15 -0
  198. data/spec/features/oembed_spec.rb +1 -0
  199. data/spec/features/relations_spec.rb +10 -28
  200. data/spec/features/saved_searches_spec.rb +1 -0
  201. data/spec/features/search_bar_spec.rb +1 -0
  202. data/spec/features/search_results_map_spec.rb +1 -6
  203. data/spec/features/search_results_overlap_ratio_spec.rb +4 -3
  204. data/spec/features/search_spec.rb +1 -0
  205. data/spec/features/show_page_metadata_spec.rb +1 -0
  206. data/spec/features/sms_spec.rb +1 -0
  207. data/spec/features/split_view.html.erb_spec.rb +4 -3
  208. data/spec/features/suppressed_records_spec.rb +1 -0
  209. data/spec/features/web_services_modal_spec.rb +1 -0
  210. data/spec/fixtures/solr_documents/metadata_no_dct_provenance_s.json +30 -0
  211. data/spec/fixtures/solr_documents/metadata_no_layer_geom_type_s.json +17 -0
  212. data/spec/fixtures/solr_documents/metadata_no_solr_geom.json +23 -0
  213. data/spec/fixtures/solr_documents/multiple-downloads.json +30 -0
  214. data/spec/helpers/arcgis_helper_spec.rb +1 -0
  215. data/spec/helpers/carto_helper_spec.rb +1 -0
  216. data/spec/helpers/geoblacklight_helper_spec.rb +51 -5
  217. data/spec/javascripts/geoblacklight/viewers/esri/tiled_map_layer_spec.js +12 -0
  218. data/spec/javascripts/geoblacklight_spec.js +0 -4
  219. data/spec/lib/geoblacklight/bounding_box_spec.rb +1 -0
  220. data/spec/lib/geoblacklight/controller_override_spec.rb +1 -0
  221. data/spec/lib/geoblacklight/document_presenter_spec.rb +3 -2
  222. data/spec/lib/geoblacklight/download/geojson_download_spec.rb +1 -0
  223. data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +1 -0
  224. data/spec/lib/geoblacklight/download/hgl_download_spec.rb +1 -0
  225. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +1 -0
  226. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +1 -0
  227. data/spec/lib/geoblacklight/download_spec.rb +4 -3
  228. data/spec/lib/geoblacklight/geoblacklight_helper_behavior_spec.rb +1 -0
  229. data/spec/lib/geoblacklight/item_viewer_spec.rb +1 -0
  230. data/spec/lib/geoblacklight/metadata/base_spec.rb +4 -3
  231. data/spec/lib/geoblacklight/metadata/html_spec.rb +1 -0
  232. data/spec/lib/geoblacklight/metadata_spec.rb +1 -0
  233. data/spec/lib/geoblacklight/metadata_transformer/base_spec.rb +3 -2
  234. data/spec/lib/geoblacklight/metadata_transformer/fgdc_spec.rb +3 -2
  235. data/spec/lib/geoblacklight/metadata_transformer/iso19139_spec.rb +3 -2
  236. data/spec/lib/geoblacklight/metadata_transformer_spec.rb +4 -3
  237. data/spec/lib/geoblacklight/reference_spec.rb +1 -0
  238. data/spec/lib/geoblacklight/references_spec.rb +2 -3
  239. data/spec/lib/geoblacklight/relation/ancestors_spec.rb +2 -1
  240. data/spec/lib/geoblacklight/relation/descendants_spec.rb +2 -1
  241. data/spec/lib/geoblacklight/relation/relation_response_spec.rb +1 -0
  242. data/spec/lib/geoblacklight/view_helper_override_spec.rb +1 -0
  243. data/spec/lib/geoblacklight/wms_layer/feature_info_response_spec.rb +5 -4
  244. data/spec/lib/geoblacklight/wms_layer_spec.rb +3 -2
  245. data/spec/models/concerns/geoblacklight/solr_document/carto_spec.rb +1 -20
  246. data/spec/models/concerns/geoblacklight/solr_document/citation_spec.rb +14 -0
  247. data/spec/models/concerns/geoblacklight/solr_document/finder_spec.rb +1 -0
  248. data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +1 -0
  249. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +27 -0
  250. data/spec/models/concerns/geoblacklight/spatial_search_behavior_spec.rb +15 -2
  251. data/spec/routing/catalog_routing_spec.rb +1 -0
  252. data/spec/spec_helper.rb +12 -9
  253. data/spec/support/backport_test_helpers.rb +1 -0
  254. data/spec/support/features.rb +1 -0
  255. data/spec/support/features/session_helpers.rb +1 -0
  256. data/spec/support/fixtures.rb +8 -0
  257. data/spec/tasks/geoblacklight_spec.rb +19 -0
  258. data/spec/teaspoon_env.rb +1 -0
  259. data/spec/test_app_templates/Gemfile.extra +1 -0
  260. data/spec/test_app_templates/lib/generators/test_app_generator.rb +1 -0
  261. data/spec/views/catalog/_document_split.html.erb_spec.rb +1 -0
  262. data/spec/views/catalog/_index_split.html.erb_spec.rb +1 -0
  263. data/spec/views/catalog/_results_pagination.html.erb_spec.rb +1 -0
  264. data/spec/views/catalog/_show_downloads.html.erb_spec.rb +1 -0
  265. data/spec/views/catalog/_show_tools.html.erb_spec.rb +2 -4
  266. data/template.rb +1 -0
  267. data/vendor/assets/stylesheets/leaflet.css +0 -1
  268. metadata +69 -79
  269. data/app/assets/images/blacklight/logo.png +0 -0
  270. data/app/assets/javascripts/geoblacklight/modules/collapse.js +0 -7
  271. data/app/assets/stylesheets/geoblacklight/_geoblacklight.scss +0 -36
  272. data/app/assets/stylesheets/geoblacklight/modules/relations.scss +0 -15
  273. data/app/views/catalog/_exports.html.erb +0 -3
  274. data/app/views/catalog/_show_tools.html.erb +0 -25
  275. data/lib/generators/geoblacklight/templates/geoblacklight.scss +0 -4
  276. data/vendor/assets/javascripts/readmore.js +0 -618
  277. data/vendor/assets/javascripts/readmore.js.map +0 -1
@@ -1,3 +1,4 @@
1
- json.ancestors@relations.ancestors
1
+ # frozen_string_literal: true
2
+ json.ancestors @relations.ancestors
2
3
  json.descendants @relations.descendants
3
4
  json.current_doc @relations.search_id
@@ -1,8 +1,6 @@
1
- <%= render_aria_labels(@aria_labels) %>
2
-
3
1
  <nav class="navbar navbar-expand-md navbar-dark bg-dark topbar" role="navigation">
4
2
  <div class="<%= container_classes %>">
5
- <%= link_to application_name, root_path, class: 'mb-0 navbar-brand' %>
3
+ <%= link_to application_name, root_path, class: 'mb-0 navbar-logo' %>
6
4
  <button class="navbar-toggler navbar-toggler-right" type="button" data-toggle="collapse" data-target="#user-util-collapse" aria-controls="user-util-collapse" aria-expanded="false" aria-label="Toggle navigation">
7
5
  <span class="navbar-toggler-icon"></span>
8
6
  </button>
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+ # Borrowed from https://github.com/pulibrary/figgy/blob/master/scripts/combine_coverage.rb
3
+ require 'active_support/inflector'
4
+ require 'simplecov'
5
+
6
+ class SimpleCovHelper
7
+ def self.report_coverage(base_dir: './coverage_results')
8
+ min_cov = ENV['MINIMUM_COVERAGE'] || 100
9
+ SimpleCov.configure do
10
+ minimum_coverage(min_cov.to_i)
11
+ end
12
+ new(base_dir: base_dir).merge_results
13
+ end
14
+
15
+ attr_reader :base_dir
16
+
17
+ def initialize(base_dir:)
18
+ @base_dir = base_dir
19
+ end
20
+
21
+ def all_results
22
+ Dir["#{base_dir}/.resultset*.json"]
23
+ end
24
+
25
+ def merge_results
26
+ results = all_results.map { |file| SimpleCov::Result.from_hash(JSON.parse(File.read(file))) }
27
+ results = SimpleCov::ResultMerger.merge_results(*results)
28
+ results.format!
29
+ covered_percent = results.covered_percent.round(2)
30
+ return unless covered_percent < SimpleCov.minimum_coverage[:line]
31
+ $stderr.printf("Coverage (%.2f%%) is below the expected minimum coverage (%.2f%%).\n", covered_percent, SimpleCov.minimum_coverage[:line])
32
+ Kernel.exit SimpleCov::ExitCodes::MINIMUM_COVERAGE
33
+ end
34
+ end
35
+
36
+ SimpleCovHelper.report_coverage
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  Config.setup do |config|
2
3
  config.const_name = 'Settings'
3
4
  end
@@ -1,6 +1,8 @@
1
1
  en:
2
2
  geoblacklight:
3
3
  bbox_label: 'Bounding Box'
4
+ citation:
5
+ retrieved_from: 'Retrieved from %{document_url}'
4
6
  download:
5
7
  download: 'Download'
6
8
  download_link: 'Original %{download_format}'
@@ -27,6 +29,7 @@ en:
27
29
  data_type: 'Data type'
28
30
  placename: 'Placename'
29
31
  subject: 'Subject'
32
+ version: 'GeoBlacklight version %{version}'
30
33
  tools:
31
34
  login_to_view: 'Login to View and Download'
32
35
  open_carto: 'Open in Carto'
@@ -40,6 +43,8 @@ en:
40
43
  jpg: 'JPG'
41
44
  esri_geodatabase: 'ESRI Geodatabase'
42
45
  sqlite_database: 'SQLite Database'
46
+ map:
47
+ label: 'Zoomable map'
43
48
  references:
44
49
  wms: 'Web Mapping Service (WMS)'
45
50
  wms_abv: 'WMS'
@@ -61,10 +66,10 @@ en:
61
66
  services_close: 'Close'
62
67
  relations:
63
68
  ancestor: 'Source Datasets'
64
- descendant: 'Derived Datasets (%{count})'
69
+ descendant: 'Derived Datasets'
65
70
  browse_all: "Browse all %{count} records..."
66
- title: 'Data Relations'
67
71
  metadata:
72
+ toggle_summary: 'Toggle summary'
68
73
  view_metadata: 'View Metadata'
69
74
  more_details: 'More details at'
70
75
  metadata_error: 'The metadata view for selected schema is not available'
@@ -102,62 +107,42 @@ en:
102
107
  wms:
103
108
  title: Web Map Service (WMS)
104
109
  content: A Web Map Service displays a geospatial dataset as map images.
105
- aria-labels:
106
- arrow-circle-down: Arrow within a circle, pointing down (icon)
107
- baruch-cuny: Baruch College (logo)
108
- berkeley: University of California, Berkeley (logo)
109
- book: Book (icon)
110
- bookmark: Bookmark (icon)
111
- cd-rom: CD-Rom (icon)
112
- chicago: The University of Chicago (logo)
113
- columbia: Columbia University (logo)
114
- cornell: Cornell University (logo)
115
- dvd-rom: DVD-Rom (icon)
116
- email: Email (icon)
117
- esri-globe: Esri Global (logo)
118
- globe: Globe (icon)
119
- harvard: Harvard University (logo)
120
- home: Home (icon)
121
- illinois: University of Illinois (logo)
122
- image: Image (icon)
123
- indiana: Indiana University (logo)
124
- iowa: University of Iowa (logo)
125
- leaf: Leaf (icon)
126
- lewis-clark: Lewis & Clark (logo)
127
- line: Line (icon)
128
- map-marker: Map marker (icon)
129
- map: Map (icon)
130
- maryland: University of Maryland (logo)
131
- massgis: MassGIS (logo)
132
- metadata: Metadata (icon)
133
- michigan-state: Michigan State University (logo)
134
- michigan: University of Michigan (logo)
135
- minnesota: University of Minnesota (logo)
136
- mit: Massachusetts Institute of Technology (logo)
137
- mixed: Mixed (icon)
138
- multilinestring: Multi-line string (icon)
139
- multipoint: Multi-point (icon)
140
- multipolygon: Multi-polygon (icon)
141
- nyu: New York University (logo)
142
- ohio-state: The Ohio State University (logo)
143
- pagelines-brands: Pagelines brands (icon)
144
- paper-map: Paper map (icon)
145
- penn-state: Penn State University (logo)
146
- point: Point (icon)
147
- polygon: Polygon (icon)
148
- polyline: Polyline (icon)
149
- princeton: Princeton University (logo)
150
- public: Public content (icon)
151
- purdue: Purdue University (logo)
152
- raster: Raster (icon)
153
- restricted: Restricted content (icon)
154
- sms: SMS (icon)
155
- stanford: Stanford University (logo)
156
- table: Table (icon)
157
- tags: Tags (icon)
158
- texas: The University of Texas at Austin (logo)
159
- tufts: Tufts University (logo)
160
- ucla: University of California, Los Angeles (logo)
161
- uva: University of Virginia (logo)
162
- web_services: Web services (icon)
163
- wisconsin: University of Wisconsin (logo)
110
+ blacklight:
111
+ icon:
112
+ arrow-circle-down: Arrow within a circle, pointing down
113
+ baruch-cuny: Baruch College
114
+ berkeley: University of California, Berkeley
115
+ cd-rom: CD-Rom
116
+ chicago: The University of Chicago
117
+ columbia: Columbia University
118
+ cornell: Cornell University
119
+ dvd-rom: DVD-Rom
120
+ esri-globe: Esri Global
121
+ harvard: Harvard University
122
+ illinois: University of Illinois
123
+ indiana: Indiana University
124
+ iowa: University of Iowa
125
+ lewis-clark: Lewis & Clark
126
+ maryland: University of Maryland
127
+ massgis: MassGIS
128
+ michigan-state: Michigan State University
129
+ michigan: University of Michigan
130
+ minnesota: University of Minnesota
131
+ mit: Massachusetts Institute of Technology
132
+ multilinestring: Multi-line string
133
+ multipoint: Multi-point
134
+ multipolygon: Multi-polygon
135
+ nyu: New York University
136
+ ohio-state: The Ohio State University
137
+ penn-state: Penn State University
138
+ princeton: Princeton University
139
+ public: Public content
140
+ purdue: Purdue University
141
+ restricted: Restricted content
142
+ sms: SMS
143
+ stanford: Stanford University
144
+ texas: The University of Texas at Austin
145
+ tufts: Tufts University
146
+ ucla: University of California, Los Angeles
147
+ uva: University of Virginia
148
+ wisconsin: University of Wisconsin
@@ -19,30 +19,27 @@ Gem::Specification.new do |spec|
19
19
  spec.require_paths = ['lib']
20
20
  spec.required_rubygems_version = '>= 2.5.2'
21
21
 
22
- spec.add_dependency 'rails', '~> 5.0'
22
+ spec.add_dependency 'rails', '>= 5.2.4', '< 6.1'
23
23
  spec.add_dependency 'blacklight', '~> 7.0'
24
- spec.add_dependency 'font-awesome-rails'
25
24
  spec.add_dependency 'config'
26
- spec.add_dependency 'faraday'
27
- spec.add_dependency 'faraday_middleware'
25
+ spec.add_dependency 'faraday', '~> 1.0'
26
+ spec.add_dependency 'faraday_middleware', '~> 1.0.0.rc1'
28
27
  spec.add_dependency 'coderay'
29
- spec.add_dependency 'geoblacklight-icons', '>= 0.2'
30
28
  spec.add_dependency 'deprecation'
31
29
  spec.add_dependency 'geo_combine', '~> 0.4'
32
30
  spec.add_dependency 'mime-types'
33
31
  spec.add_dependency 'handlebars_assets'
34
- spec.add_dependency 'webpacker'
32
+ spec.add_dependency 'webpacker', '~> 4.0'
35
33
 
36
34
  spec.add_development_dependency 'solr_wrapper'
37
35
  spec.add_development_dependency 'rails-controller-testing'
38
- spec.add_development_dependency 'rspec-rails', '~> 3.1'
36
+ spec.add_development_dependency 'rspec-rails'
39
37
  spec.add_development_dependency 'engine_cart', '~> 2.0'
40
38
  spec.add_development_dependency 'capybara', '>= 2.5.0'
41
39
  spec.add_development_dependency 'webdrivers'
42
40
  spec.add_development_dependency 'factory_bot_rails'
43
41
  spec.add_development_dependency 'database_cleaner', '~> 1.3'
44
42
  spec.add_development_dependency 'bixby'
45
- spec.add_development_dependency 'coveralls'
46
43
  spec.add_development_dependency 'simplecov', '~> 0.16'
47
44
  spec.add_development_dependency 'foreman'
48
45
  spec.add_development_dependency 'teaspoon'
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ require 'rails/generators'
4
+
5
+ module Geoblacklight
6
+ class AssetsGenerator < Rails::Generators::Base
7
+ source_root File.expand_path('templates', __dir__)
8
+
9
+ desc <<-DESCRIPTION
10
+ This generator makes the following changes to your application:
11
+ 1. Copies GBL javascript into the application
12
+ 2. Removes stock Rails and Blacklight stylesheets from the application
13
+ 3. Copies GBL stylesheets into the local application
14
+ 4. Sets asset initializer values into the local application
15
+ DESCRIPTION
16
+
17
+ def add_javascript
18
+ copy_file 'assets/geoblacklight.js', 'app/assets/javascripts/geoblacklight.js'
19
+
20
+ if Rails.version.to_i == 6
21
+ append_to_file 'app/assets/javascripts/application.js',
22
+ "\n// Required by GeoBlacklight\n//= require geoblacklight"
23
+ end
24
+ end
25
+
26
+ def remove_stylesheets
27
+ remove_file 'app/assets/stylesheets/application.css'
28
+ remove_file 'app/assets/stylesheets/blacklight.scss'
29
+ end
30
+
31
+ def add_stylesheets
32
+ copy_file 'assets/application.scss', 'app/assets/stylesheets/application.scss'
33
+ copy_file 'assets/_blacklight.scss', 'app/assets/stylesheets/_blacklight.scss'
34
+ copy_file 'assets/_customizations.scss', 'app/assets/stylesheets/_customizations.scss'
35
+ copy_file 'assets/_geoblacklight.scss', 'app/assets/stylesheets/_geoblacklight.scss'
36
+ end
37
+
38
+ def add_initializers
39
+ append_to_file 'config/initializers/assets.rb',
40
+ "\nRails.application.config.assets.precompile += %w( favicon.ico )\n"
41
+
42
+ append_to_file 'config/initializers/assets.rb',
43
+ "\nRails.application.config.assets.paths << Rails.root.join('vendor', 'assets', 'images')\n"
44
+ end
45
+ end
46
+ end
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'rails/generators'
2
3
 
3
4
  module Geoblacklight
@@ -30,15 +31,8 @@ module Geoblacklight
30
31
  inject_into_file 'config/routes.rb', routes, before: /^end/
31
32
  end
32
33
 
33
- def assets
34
- copy_file 'geoblacklight.scss', 'app/assets/stylesheets/geoblacklight.scss'
35
- copy_file 'geoblacklight.js', 'app/assets/javascripts/geoblacklight.js'
36
-
37
- append_to_file 'config/initializers/assets.rb',
38
- "\nRails.application.config.assets.precompile += %w( favicon.ico )\n"
39
-
40
- append_to_file 'config/initializers/assets.rb',
41
- "\nRails.application.config.assets.paths << Rails.root.join('vendor', 'assets', 'images')\n"
34
+ def generate_assets
35
+ generate 'geoblacklight:assets'
42
36
  end
43
37
 
44
38
  def create_blacklight_catalog
@@ -91,6 +85,11 @@ module Geoblacklight
91
85
  gsub_file('config/locales/blacklight.en.yml', 'Blacklight', 'GeoBlacklight')
92
86
  end
93
87
 
88
+ # Ensure that assets/images exists
89
+ def create_image_assets_directory
90
+ FileUtils.mkdir_p('app/assets/images') unless File.directory?('app/assets/images')
91
+ end
92
+
94
93
  def bundle_install
95
94
  Bundler.with_clean_env do
96
95
  run 'bundle install'
@@ -0,0 +1 @@
1
+ @import 'blacklight/blacklight';
@@ -0,0 +1,28 @@
1
+ // Local Application Customizations
2
+
3
+ // Set Header Logo
4
+ $logo-image: image_url('blacklight/logo.svg') !default;
5
+
6
+ .navbar-brand { /* The main logo image for the Blacklight instance */
7
+ @if $logo-image {
8
+ background: transparent $logo-image no-repeat top left;
9
+ }
10
+ }
11
+
12
+ // Optional
13
+ // Override default Bootstrap variables here
14
+
15
+ // Example: Bootstrap Colors
16
+ $blue: #007bff !default;
17
+ $indigo: #6610f2 !default;
18
+ $purple: #6f42c1 !default;
19
+ $pink: #e83e8c !default;
20
+ $red: #dc3545 !default;
21
+ $orange: #fd7e14 !default;
22
+ $yellow: #ffc107 !default;
23
+ $green: #28a745 !default;
24
+ $teal: #20c997 !default;
25
+ $cyan: #17a2b8 !default;
26
+
27
+ // Example: Bootstrap Link color
28
+ $link-color: $blue;
@@ -0,0 +1,7 @@
1
+ /*
2
+ *= require leaflet-label
3
+ */
4
+ @import 'customizations';
5
+ @import 'bootstrap';
6
+ @import 'blacklight';
7
+ @import 'geoblacklight';
@@ -7,4 +7,3 @@
7
7
  //= require geoblacklight/downloaders
8
8
  //= require leaflet-iiif
9
9
  //= require esri-leaflet
10
- //= require readmore
@@ -238,14 +238,16 @@ class CatalogController < ApplicationController
238
238
  config.add_results_collection_tool(:sort_widget)
239
239
  config.add_results_collection_tool(:per_page_widget)
240
240
  config.add_show_tools_partial(:bookmark, partial: 'bookmark_control', if: :render_bookmarks_control?)
241
+ config.add_show_tools_partial(:citation)
241
242
  config.add_show_tools_partial(:email, callback: :email_action, validator: :validate_email_params)
242
243
  config.add_show_tools_partial(:sms, if: :render_sms_action?, callback: :sms_action, validator: :validate_sms_params)
243
244
 
244
245
  # Custom tools for GeoBlacklight
245
246
  config.add_show_tools_partial :web_services, if: proc { |_context, _config, options| options[:document] && (Settings.WEBSERVICES_SHOWN & options[:document].references.refs.map(&:type).map(&:to_s)).any? }
246
247
  config.add_show_tools_partial :metadata, if: proc { |_context, _config, options| options[:document] && (Settings.METADATA_SHOWN & options[:document].references.refs.map(&:type).map(&:to_s)).any? }
247
- config.add_show_tools_partial :exports, partial: 'exports', if: proc { |_context, _config, options| options[:document] }
248
- config.add_show_tools_partial :data_dictionary, partial: 'data_dictionary', if: proc { |_context, _config, options| options[:document] }
248
+ config.add_show_tools_partial :carto, partial: 'carto', if: proc { |_context, _config, options| options[:document] && options[:document].carto_reference.present? }
249
+ config.add_show_tools_partial :arcgis, partial: 'arcgis', if: proc { |_context, _config, options| options[:document] && options[:document].arcgis_urls.present? }
250
+ config.add_show_tools_partial :data_dictionary, partial: 'data_dictionary', if: proc { |_context, _config, options| options[:document] && options[:document].data_dictionary_download.present? }
249
251
 
250
252
  # Configure basemap provider for GeoBlacklight maps (uses https only basemap
251
253
  # providers with open licenses)
@@ -257,6 +259,8 @@ class CatalogController < ApplicationController
257
259
  # 'worldEco'
258
260
  # 'flatBlue'
259
261
  # 'midnightCommander'
262
+ # 'openstreetmapHot'
263
+ # 'openstreetmapStandard'
260
264
 
261
265
  config.basemap_provider = 'positron'
262
266
 
@@ -4,12 +4,6 @@ APPLICATION_LOGO_URL: 'http://geoblacklight.org/images/geoblacklight-logo.png'
4
4
  # Carto OneClick Service https://carto.com/engine/open-in-carto/
5
5
  CARTO_ONECLICK_LINK: 'http://oneclick.carto.com/'
6
6
 
7
- # Hide Carto export link
8
- # CARTO_HIDE: true
9
-
10
- # Hide ArcGIS export link
11
- # ARCGIS_HIDE: true
12
-
13
7
  # ArcGIS Online Base URL
14
8
  ARCGIS_BASE_URL: 'https://www.arcgis.com/home/webmap/viewer.html'
15
9
 
@@ -44,6 +38,7 @@ FIELDS:
44
38
  :TEMPORAL: 'dct_temporal_sm'
45
39
  :TITLE: 'dc_title_s'
46
40
  :SOURCE: 'dc_source_sm'
41
+ :ISSUED: 'dct_issued_s'
47
42
 
48
43
  # Institution deployed at
49
44
  INSTITUTION: 'Stanford'
@@ -61,6 +56,9 @@ TIMEOUT_DOWNLOAD: 16
61
56
  # (For WMS inspection) timeout and open_timeout parameters for Faraday
62
57
  TIMEOUT_WMS: 4
63
58
 
59
+ # Use the geometry type for the data relations icon
60
+ USE_GEOM_FOR_RELATIONS_ICON: false
61
+
64
62
  # Web services shown in tool panel
65
63
  WEBSERVICES_SHOWN:
66
64
  - 'wms'
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'rails/generators'
2
3
 
3
4
  module Geoblacklight
@@ -7,7 +8,7 @@ module Geoblacklight
7
8
  desc 'Integrate Webpacker for GeoBlacklight'
8
9
 
9
10
  def webpacker_install
10
- run 'bundle exec rails webpacker:install --force'
11
+ run 'bundle exec rails webpacker:install'
11
12
  end
12
13
 
13
14
  def webpacker_config
@@ -1,3 +1,4 @@
1
+ # frozen_string_literal: true
1
2
  require 'active_support/dependencies'
2
3
  require 'geoblacklight/engine'
3
4