geoblacklight 2.2.0 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
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,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26 28" aria-labelledby="aria-label-public">
2
- <title>
3
- public
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26 28">
5
2
  <path fill="#6c757d" d="M26 9v4a1 1 0 0 1-1 1h-1a1 1 0 0 1-1-1V9a4 4 0 0 0-8 0v3h1.5c.83 0 1.5.67 1.5 1.5v9c0 .83-.67 1.5-1.5 1.5h-15A1.5 1.5 0 0 1 0 22.5v-9c0-.83.67-1.5 1.5-1.5H12V9a7 7 0 0 1 14 0z"/>
6
3
  </svg>
@@ -1,7 +1,4 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 58 32" aria-labelledby="aria-label-purdue">
2
- <title>
3
- purdue
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 58 32">
5
2
  <path fill="#6c757d" d="M13.66 0c-1.9 4.4-3.76 8.83-5.65 13.24h5.98l-2.35 5.52H5.66C3.76 23.15 1.9 27.6 0 32h31.96c1.27-2.93 2.5-5.87 3.76-8.8 5.2-.07 10.8.52 15.4-2.39 3.97-2.5 6.1-7.06 7.17-11.47a7.21 7.21 0 0 0-4.6-8.4C49.7-.49 45.43.14 41.3 0H13.66zm36.29.43c1.08-.15 5.48 1.42 2.65.49-.87-.25-1.76-.4-2.65-.5zm-35.87.2C25.71.67 37.33.6 48.96.68c3.39.07 7.44 1.35 8.55 4.94 1.04 3.72-1 7.4-2.71 10.57-2.47 4.31-7.51 6.27-12.28 6.35-2.4.06-4.81.01-7.22.03-1.27 2.93-2.5 5.87-3.76 8.8H.98l5.1-11.97h5.99c.96-2.26 1.92-4.53 2.9-6.78h-6L14.07.64z"/>
6
3
  <path fill="#6c757d" d="M38.8 14.3H28.1l2.2-5.18c3.79.03 7.58-.06 11.36.04 2.9.47 1.07 4.22-.88 4.74a5 5 0 0 1-1.98.4zm7.86-9.96h-31l-2.03 4.78h5.98L13.66 23.1h-6l-2.03 4.77h22.75l2.04-4.77h-6.08l1.72-4.04c5.5-.05 11 .1 16.48-.09 3.53-.19 7.17-1.84 8.77-5.15.99-2.18 2.48-4.52 1.98-7-.98-2.5-4.4-2.38-6.63-2.48z"/>
7
4
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" aria-labelledby="aria-label-raster">
2
- <title>
3
- raster
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
5
2
  <path fill="#6c757d" d="M27.31 4.69C30.34 7.7 32 11.73 32 16s-1.66 8.3-4.69 11.31C24.3 30.34 20.27 32 16 32s-8.3-1.66-11.31-4.69C1.66 24.3 0 20.27 0 16S1.66 7.7 4.69 4.69C7.7 1.66 11.73 0 16 0s8.3 1.66 11.31 4.69zM25.9 25.9a13.9 13.9 0 0 0 3.82-7.1c-.42.62-.82.85-1.07-.53-.26-2.27-2.34-.82-3.64-1.63-1.38.93-4.47-1.8-3.95 1.28.82 1.39 4.38-1.86 2.6 1.08-1.13 2.05-4.14 6.6-3.75 8.95.05 3.43-3.5.71-4.73-.43-.82-2.28-.28-6.26-2.43-7.37-2.34-.1-4.35-.32-5.25-2.93-.55-1.87.58-4.65 2.58-5.08 2.93-1.85 3.98 2.15 6.73 2.23.86-.9 3.18-1.18 3.38-2.18-1.8-.32 2.29-1.52-.18-2.2-1.35.16-2.23 1.4-1.5 2.47-2.64.61-2.73-3.81-5.26-2.42-.06 2.2-4.13.72-1.4.27.93-.4-1.53-1.6-.2-1.38.66-.03 2.86-.8 2.26-1.32 1.23-.76 2.26 1.82 3.45-.06.87-1.45-.36-1.72-1.44-.98-.62-.69 1.08-2.17 2.57-2.8.5-.22.97-.34 1.34-.3.75.87 2.14 1.02 2.21-.1A13.94 13.94 0 0 0 16 2c-3.05 0-5.95.97-8.35 2.76.64.3 1.01.67.39 1.14C7.55 7.34 5.59 9.27 3.87 9A13.84 13.84 0 0 0 2.14 14c1.44.48 1.77 1.42 1.47 1.74a4.74 4.74 0 0 0-1.42 2.54A13.9 13.9 0 0 0 6.1 25.9C8.75 28.54 12.26 30 16 30s7.26-1.46 9.9-4.1z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 28" aria-labelledby="aria-label-restricted">
2
- <title>
3
- restricted
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 18 28">
5
2
  <path fill="#6c757d" d="M5 12h8V9a4 4 0 0 0-8 0v3zm13 1.5v9c0 .83-.67 1.5-1.5 1.5h-15A1.5 1.5 0 0 1 0 22.5v-9c0-.83.67-1.5 1.5-1.5H2V9c0-3.84 3.16-7 7-7s7 3.16 7 7v3h.5c.83 0 1.5.67 1.5 1.5z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 28" aria-labelledby="aria-label-sms">
2
- <title>
3
- sms
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 28">
5
2
  <path fill="#6c757d" d="M7.25 22a1.25 1.25 0 0 0-2.5 0 1.25 1.25 0 0 0 2.5 0zm3.25-2.5v-11c0-.27-.23-.5-.5-.5H2c-.27 0-.5.23-.5.5v11c0 .27.23.5.5.5h8c.27 0 .5-.23.5-.5zm-3-13.25c0-.14-.1-.25-.25-.25h-2.5c-.14 0-.25.1-.25.25s.1.25.25.25h2.5c.14 0 .25-.1.25-.25zM12 6v16c0 1.1-.9 2-2 2H2c-1.1 0-2-.9-2-2V6c0-1.1.9-2 2-2h8c1.1 0 2 .9 2 2z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" aria-labelledby="aria-label-stanford">
2
- <title>
3
- stanford
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
5
2
  <path fill="#6c757d" d="M5.77 5.01L10.2.6h11.7l4.32 4.42v6.25h-7.72V8.33h-4.68v4.23h8.47l3.93 3.8v11.5l-3.86 3.85H9.65l-3.88-3.9V21.6h8.34v2.57h4.75v-3.94H9.63l-3.86-3.86V5zm.5.23v10.93l3.56 3.56h9.53v4.97h-5.78v-2.57h-7.3v5.48l3.57 3.6h12.3l3.55-3.55V16.59l-3.64-3.5H13.3V7.85H19v2.91h6.7v-5.5l-4.03-4.13H10.4zm4.34-3.57h10.87l3.71 3.83v4.78h-5.66V7.36h-6.75v6.29h9.07l3.34 3.19v10.64l-3.25 3.26H10.06l-3.27-3.31v-4.75h6.28v2.57h6.8v-6h-9.83l-3.26-3.26V5.5z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41 32" aria-labelledby="aria-label-table">
2
- <title>
3
- table
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 41 32">
5
2
  <path fill="#6c757d" d="M1.55.01C.67.11.01.86.01 1.74v27.68c0 .95.78 1.73 1.73 1.73h36.33c.95 0 1.73-.78 1.73-1.73V1.74c0-.95-.78-1.73-1.73-1.73H1.55zm1.92 3.46h6.06v6.06H3.47V3.47zm9.52 0h23.35v6.06H12.99V3.47zM3.47 13h6.06v14.7H3.47v-14.7zm9.52 0h23.35v14.7H12.99v-14.7z"/>
6
3
  </svg>
@@ -1,4 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 28" aria-labelledby="aria-label-tags">
2
- <title>tags</title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 28">
3
2
  <path fill="#6c757d" d="M7 7a2 2 0 1 0-4 0 2 2 0 0 0 4 0zm16.67 9c0 .53-.22 1.05-.58 1.4l-7.67 7.7a2.01 2.01 0 0 1-2.83 0L1.42 13.9A5.43 5.43 0 0 1 0 10.5V4c0-1.1.9-2 2-2h6.5c1.1 0 2.62.62 3.42 1.42L23.1 14.58c.36.37.58.89.58 1.42zm6 0c0 .53-.22 1.05-.58 1.4l-7.67 7.7a2.1 2.1 0 0 1-1.42.57c-.81 0-1.22-.37-1.75-.92l7.34-7.34a2.01 2.01 0 0 0 0-2.83L14.42 3.42A5.5 5.5 0 0 0 11 2h3.5c1.1 0 2.63.62 3.42 1.42L29.1 14.58c.36.37.58.89.58 1.42z"/>
4
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 29 32" aria-labelledby="aria-label-texas">
2
- <title>
3
- texas
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 29 32">
5
2
  <path fill="#6c757d" d="M26.32 14.13v-5.5h-4.75V6.3h1.67V2.5H16.3v3.8h1.74v2.31H11.3V6.31h1.74V2.5H6.1v3.8h1.67v2.31H3v5.5h3.55v-1.64h1.2v3.02c0 6.48 4.95 7.7 4.95 7.7v2.77h-1.4v3.52h6.72v-3.52h-1.4v-2.78s4.94-1.22 4.94-7.7v-3.02h1.2v1.65h3.55zm-13.61 5.23s-1.4-.82-1.4-2.34v-4.55h1.4v6.89zm5.32-2.34c0 1.52-1.4 2.34-1.4 2.34v-6.88h1.4v4.54z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 29 32" aria-labelledby="aria-label-tufts">
2
- <title>
3
- tufts
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 29 32">
5
2
  <path fill="#6c757d" d="M4.58 5.12h5.96v22.4H5.62V32h17.31v-4.49h-4.91V5.15h6.1v7.28h4.5V0H0v12.43h4.58z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" aria-labelledby="aria-label-ucla">
2
- <title>
3
- ucla
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
5
2
  <path fill="#6c757d" d="M2.98 22.26c-.08-1.12 0-2.7 0-3.48L4.62 0h6.15L9.04 18.93c-.36 4.13 1.26 7.02 5.34 7.02 4.16 0 6.42-2.94 6.78-6.6L22.9 0h6.15l-1.71 19.1C26.7 26.5 21.8 32 13.94 32 7.78 32 3.8 28.01 2.98 22.27z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32" aria-labelledby="aria-label-uva">
2
- <title>
3
- uva
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32">
5
2
  <path fill="#6c757d" d="M22.16 26.45V14.4h2.58v12.06h-2.58zm-13.92 0V14.4h2.5v12.06h-2.5zm3.36 0V14.4h2.66v12.06H11.6zm3.52 0V14.4h2.66v12.06h-2.66zM21.3 14.4v12.06h-2.66V14.4h2.66zm2.33-.85H9.3l7.36-4.45 6.98 4.45zm-16 0H1.5v-4.5h13.58l-7.44 4.5zm10.54-4.5H31.4v4.5h-6.18l-7.05-4.5zm11.34-.85H3.39A14.97 14.97 0 0 1 16.45.6c5.6 0 10.5 3.07 13.06 7.6zM5.76 25.74l-.15.45.39-.28.39.28-.15-.45.39-.28h-.48L6 25.01l-.15.45h-.48l.39.28zm-2.13-2.79l-.15.45.39-.27.39.27-.15-.45.39-.28h-.48l-.15-.45-.15.45h-.48l.39.28zm-1.47-3.4l-.15.45.4-.28.38.28-.14-.45.39-.28h-.48l-.15-.44-.15.44h-.48l.39.28zm5.22 6.9H1.49V15.68l.2.14-.15.45.4-.28.38.28-.15-.45.4-.28h-.49l-.15-.45-.15.45H1.5V14.4h5.88v12.06zm0 .85v3.2H1.49v-3.2h5.89zm18.22 0h5.8v3.2h-5.8v-3.2zm-5.16 2.28l.4-.28h-.5l-.14-.45-.15.45h-.48l.4.28-.16.45.4-.27.38.27-.15-.45zm3.45-1.36l.39-.28h-.48l-.15-.45-.15.45h-.48l.39.28-.15.45.4-.28.38.28-.15-.45zm-11.43 1.36l-.15.45.39-.27.39.27-.15-.45.39-.28h-.48l-.15-.45-.15.45h-.48l.39.28zM9 28.22l-.15.45.39-.28.39.28-.15-.45.4-.28H9.4l-.15-.45-.15.45h-.48l.39.28zm15.73-.92v3.2h-7.9l-.13-.4.39-.29h-.48l-.15-.45-.15.46h-.48l.39.27-.14.42H8.24v-3.2h16.5zm-7.93 3.2h-.68l.34-.24.34.24zm10.33-4.76l.4-.28h-.49l-.15-.45-.15.45h-.48l.4.28-.16.45.4-.28.38.28-.15-.45zm2.13-2.79l.4-.28h-.49l-.15-.45-.15.45h-.48l.4.28-.16.45.4-.27.38.27-.15-.45zm1.46-3.4l.4-.28h-.49l-.14-.44-.15.44h-.49l.4.28-.15.45.39-.28.39.28-.16-.45zm.67 6.9h-5.8V14.4h5.8v1.15h-.29l-.14-.45-.15.45h-.49l.4.28-.16.45.4-.28.39.28-.15-.45.2-.14v10.77z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28" aria-labelledby="aria-label-web_services">
2
- <title>
3
- web_services
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 28 28">
5
2
  <path fill="#6c757d" d="M22 14.5v5a4.5 4.5 0 0 1-4.5 4.5h-13A4.5 4.5 0 0 1 0 19.5v-13A4.5 4.5 0 0 1 4.5 2h11c.28 0 .5.22.5.5v1a.5.5 0 0 1-.5.5h-11A2.5 2.5 0 0 0 2 6.5v13A2.5 2.5 0 0 0 4.5 22h13a2.5 2.5 0 0 0 2.5-2.5v-5c0-.28.22-.5.5-.5h1c.28 0 .5.22.5.5zM28 1v8a1 1 0 0 1-1 1 .99.99 0 0 1-.7-.3l-2.75-2.75-10.19 10.19c-.1.1-.23.16-.36.16s-.26-.07-.36-.16l-1.78-1.78c-.1-.1-.15-.23-.15-.36s.06-.27.15-.36L21.05 4.45 18.3 1.7A1 1 0 0 1 18 1a1 1 0 0 1 1-1h8a1 1 0 0 1 1 1z"/>
6
3
  </svg>
@@ -1,6 +1,3 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 32" aria-labelledby="aria-label-wisconsin">
2
- <title>
3
- wisconsin
4
- </title>
1
+ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 32">
5
2
  <path fill="#6c757d" d="M10.02 31.99c-.02 0-.03-.02-.02-.03s0-.02-.01-.02c-.04 0-.2-.15-.32-.3l-.11-.15-.24-.06a9.25 9.25 0 0 1-4.62-3.12c-.8-.96-1.41-1.9-2.07-3.23A26.41 26.41 0 0 1 .03 14.9L0 14.39a14.24 14.24 0 0 1 .05-1.75c.01-.66.18-2.07.36-2.96.6-3 1.8-5.16 3.5-6.3a4.81 4.81 0 0 1 2.73-.85c.03 0 .08-.07.14-.2.2-.42.63-.7 1.25-.85.13-.02.23-.05.24-.06l.08-.17c.12-.28.27-.49.48-.7.26-.26.52-.4.84-.47.07-.01.12-.03.1-.04s.05-.02.14-.02c.18-.02.5 0 .47.02l.15.05c.54.13 1.04.59 1.28 1.18.06.14.1.18.15.18.13 0 .5.12.73.23.2.1.27.15.42.3.14.14.2.21.27.36.05.1.1.19.13.2l.22.01c.56 0 1.32.2 1.91.5 1.73.84 3.03 2.67 3.8 5.36a19.4 19.4 0 0 1 .69 4.58l.01.84a9.99 9.99 0 0 1-.04 1.13 25.77 25.77 0 0 1-2.79 10.56 13.4 13.4 0 0 1-3.65 4.52 8.33 8.33 0 0 1-3.06 1.48l-.16.18c-.07.09-.17.19-.21.22l-.06.06c.03 0-.06.04-.09.03h-.06zm.2-.37c.25-.27.5-.77.58-1.14.04-.2.05-.54.02-.73-.02-.16-.08-.25-.23-.34-.32-.19-.85-.16-1.1.06-.13.1-.15.18-.17.46-.03.52.12 1 .47 1.51.15.22.2.26.3.26.05 0 .08-.02.14-.08zm-.87-.52a.93.93 0 0 0-.06-.25 2.63 2.63 0 0 1-.15-.72c0-.17-.02-.2-.15-.25a7.38 7.38 0 0 1-1.56-.82c-.04 0-.24.2-.36.35-.13.17-.27.4-.26.46a7.14 7.14 0 0 0 2.49 1.25l.05-.02zm1.71-.04a8.35 8.35 0 0 0 2.31-1.19c.02-.03-.08-.22-.2-.38a1.6 1.6 0 0 0-.42-.43 7.89 7.89 0 0 1-1.7.87.65.65 0 0 0-.03.22c-.02.26-.07.47-.15.7-.1.3-.1.3.2.21zm-4.28-1.39c.1-.17.26-.38.4-.52.07-.07.12-.13.12-.15s-.09-.1-.2-.2c-.48-.36-1.2-1.05-1.64-1.58a15.23 15.23 0 0 1-1.87-2.87l-.04-.05-.17.05c-.1.02-.28.1-.42.16-.21.1-.24.13-.24.17a15.62 15.62 0 0 0 2.13 3.38c.29.36 1 1.08 1.3 1.33.29.25.5.41.54.41l.1-.12zm6.99-.08a13.3 13.3 0 0 0 3.66-4.87c0-.08-.44-.3-.72-.37-.09-.03-.11-.03-.14 0l-.2.36a12.63 12.63 0 0 1-3.5 4.27l.13.17c.17.18.29.33.38.5.05.09.09.13.11.13.02 0 .15-.09.28-.2zm-4.62.1c.07-.25.18-.38.39-.48.35-.15.73-.15 1.07 0 .22.1.34.24.38.43.01.06.03.07.07.07a4.8 4.8 0 0 0 1.37-.7c0-.03-.06-.1-.13-.15-.2-.16-.57-.56-.73-.76-.16-.22-.3-.44-.39-.66-.04-.09-.08-.17-.1-.17s-.13.05-.24.12c-.26.15-.7.36-.76.36-.06 0-.57-.25-.78-.37a.56.56 0 0 0-.19-.09c-.02 0-.06.06-.1.16-.09.2-.22.41-.4.66-.16.22-.55.62-.74.77-.11.09-.14.13-.12.16s.44.28.71.41c.47.23.67.3.69.23zm-1.35-.87c.48-.4.89-.9 1.1-1.35.13-.27.13-.27-.15-.48-.92-.67-1.96-1.9-2.77-3.25-.1-.17-.15-.24-.18-.24a.38.38 0 0 0-.14.09 4.15 4.15 0 0 1-1.8.82 12.1 12.1 0 0 0 3.13 4.08c.28.23.6.46.63.46l.18-.13zm4.99-.03c1.24-.89 2.4-2.27 3.37-4.04.16-.3.17-.35.08-.37a6.32 6.32 0 0 1-.87-.28 3.32 3.32 0 0 1-.8-.45c-.1-.08-.2-.15-.22-.15s-.1.12-.19.27c-.38.63-.86 1.3-1.3 1.83-.42.5-1.04 1.1-1.5 1.45-.16.11-.17.12-.15.19a3.72 3.72 0 0 0 1.35 1.7c.02 0 .12-.07.23-.15zm-4.12-3.96l.65-4.17.64-4.16.81 4.1.82 4.18.02.07h.2c.12 0 .19-.01.2-.03.02-.02.63-2.74 1.36-6.06.89-4.03 1.35-6.06 1.37-6.09.07-.1.14-.13.3-.15l.17-.01v-.74h-2.1v.74l.16-.01c.29-.01.41.09.42.34 0 .12-1.58 7-1.6 6.97l-.96-4.51c-.7-3.34-.95-4.51-.98-4.54-.06-.06-.34-.05-.37.01l-.7 4.47-.7 4.44-.8-3.38c-.83-3.57-.81-3.5-.73-3.66.06-.11.14-.15.3-.15.1 0 .14-.01.15-.04.03-.04.03-.6 0-.65-.02-.04-.05-.04-1.16-.04-.95 0-1.15 0-1.17.03-.02.02-.02.13-.02.35v.32l.14.05c.17.06.23.1.27.19.02.04.67 2.77 1.44 6.08l1.42 6.04c.02.03.43.04.45.01zm8.98-.54a25.26 25.26 0 0 0 2.23-10.45c0-1.3-.02-1.77-.09-1.81-.06-.05-.45.02-.7.1l-.14.05.01.42a24.1 24.1 0 0 1-2.17 11.25c-.11.24-.15.34-.13.36.01.02.09.06.17.08.17.05.44.18.54.25.12.08.14.06.28-.25zm-14.71.13l.4-.16c.11-.03.15-.05.15-.08a21.8 21.8 0 0 1-1.35-3.58 25.5 25.5 0 0 1-.94-7.96c.02-.3.02-.42 0-.44-.07-.09-.8-.23-.85-.17a24.79 24.79 0 0 0 .25 5.94c.33 1.99.88 3.93 1.63 5.69.22.54.4.88.43.88l.28-.11zm1.12-.17c.47-.12.95-.32 1.26-.52.22-.14.43-.31.43-.36l-.12-.25c-.06-.12-.23-.41-.35-.66-.13-.25-.24-.45-.26-.45s-.05.05-.1.1a.72.72 0 0 1-.33.3c-.32.15-.57.12-.77-.09a.47.47 0 0 1-.15-.34c0-.27.24-.52.46-.48.11.02.24.14.23.2-.01.08-.07.09-.15.02-.05-.04-.09-.05-.13-.04-.18.04-.25.3-.12.47.21.28.74.1.85-.29.08-.28-.06-.57-.34-.72-.11-.06-.14-.07-.35-.07-.2 0-.23 0-.35.07-.16.08-.36.27-.43.41-.21.41-.18 1.09.08 1.9.13.37.28.75.34.83.03.04.07.03.3-.03zm12.43-.15c.12-.26.31-.84.38-1.16.1-.44.11-.88.04-1.17a.98.98 0 0 0-.51-.63.64.64 0 0 0-.34-.08c-.17 0-.2 0-.3.05a.83.83 0 0 0-.36.31c-.05.1-.06.13-.06.28 0 .19.02.25.15.39.08.1.3.2.41.2.05 0 .13-.02.18-.04.23-.12.26-.46.04-.56-.05-.03-.07-.03-.13 0l-.08.06c0 .01-.02.02-.05.02-.07-.01-.07-.11 0-.18.13-.13.34-.12.49.03.15.16.18.36.1.55a.55.55 0 0 1-.6.32.92.92 0 0 1-.62-.39c-.03-.05-.07-.09-.09-.09s-.1.15-.2.35a22.22 22.22 0 0 1-.52 1.01c0 .1.38.36.77.55.27.13.52.23.85.32.35.1.33.1.45-.14zM3 22.2c0-.28.05-.5.16-.73.16-.35.45-.55.84-.6.16-.03.22-.02.51.05.04.01.05 0 .05-.02l-.14-.46a17.2 17.2 0 0 1-.85-4.81l-.02-.47-.07-.1a.79.79 0 0 0-.36-.32 1.06 1.06 0 0 0-.56-.1c-.47.03-.84.26-1.04.67-.1.2-.1.25-.04.82.21 2.1.64 4.04 1.32 5.93.16.43.2.46.2.13zm-.42-1.95l-.06-.18.04-.1a.67.67 0 0 1 .33-.32c.2-.1.36-.13.58-.12.25.02.27.03.36.26l.08.21-.1-.07c-.1-.12-.2-.14-.46-.12a.86.86 0 0 0-.49.17c-.15.11-.2.18-.2.33l-.02.13-.06-.19zm-.33-1.37a.75.75 0 0 1-.02-.23c.04-.14.27-.34.48-.4.05-.02.2-.03.33-.03.2 0 .27 0 .34.04.08.04.09.06.15.24l.07.22c0 .02-.04-.01-.1-.08-.08-.1-.1-.11-.22-.13-.2-.05-.47-.02-.63.06-.23.11-.32.22-.32.37 0 .06 0 .1-.02.1s-.04-.07-.06-.16zM2 17.68l-.03-.22-.02-.15.14-.13c.1-.1.18-.15.28-.19.26-.1.79-.06.88.05.03.03.12.43.1.44l-.07-.09c-.09-.13-.17-.16-.43-.18a.88.88 0 0 0-.57.13c-.14.1-.2.17-.23.3l-.04.11-.02-.07zm-.15-1.3l-.03-.22-.01-.13.1-.11c.19-.22.5-.31.84-.27.2.03.34.08.39.13.04.04.13.46.1.46l-.08-.1c-.1-.16-.2-.2-.55-.2-.26 0-.28 0-.41.07-.15.07-.28.19-.28.25l-.03.12-.03.08-.01-.08zm15.42 5.9a25.94 25.94 0 0 0 1.43-6.4c.03-.35.03-.4-.07-.61-.23-.46-.82-.72-1.36-.61a.92.92 0 0 0-.6.43c-.06.1-.07.14-.07.33a17.68 17.68 0 0 1-.93 5.23c-.08.22-.08.29-.01.27l.19-.05c.3-.07.7.05.95.3.23.23.34.53.36.95.02.3.04.33.12.16zm.24-1.98v-.13l-.12-.13a.8.8 0 0 0-.56-.23c-.28-.02-.36 0-.47.12a.4.4 0 0 1-.1.08s.13-.36.17-.4c.1-.12.6-.1.85.02.13.07.28.22.33.33l.05.1-.05.18c-.08.22-.1.23-.1.06zm.34-1.3a.65.65 0 0 1-.01-.12c0-.08-.08-.17-.21-.26a1.06 1.06 0 0 0-.75-.11c-.1.02-.13.04-.22.14l-.1.1.04-.13c.09-.3.1-.32.2-.36.2-.08.56-.07.8.03.1.05.27.2.33.3.04.1.04.1 0 .27l-.06.19-.02-.05zm.28-1.34a.65.65 0 0 0-.04-.13.73.73 0 0 0-.3-.24c-.13-.07-.14-.07-.4-.07-.35 0-.43.04-.55.25-.04.07-.03 0 .01-.2.04-.14.07-.22.1-.24.14-.11.6-.13.85-.04.16.06.3.18.37.29.05.09.05.1.03.27-.01.1-.03.18-.04.19s-.02-.03-.03-.08zm.19-1.2l-.06-.16c-.04-.13-.05-.15-.18-.23-.17-.11-.31-.15-.59-.13-.3.02-.4.06-.49.2-.04.06-.07.1-.07.08 0-.07.07-.4.09-.43.03-.04.25-.11.4-.14.2-.03.43 0 .6.09.15.06.3.21.33.3a2 2 0 0 1-.03.41zm-16.7-1.61c.5-.49 1.3-.56 1.79-.16.12.1.15.1.15-.1 0-.22.04-.7.09-1.1.02-.2.04-.36.03-.37l-.26-.04a6.16 6.16 0 0 1-1.82-.5c-.16-.09-.2-.08-.22.02-.02.1-.02 2.27 0 2.34.01.04.03.06.05.06s.1-.07.19-.15zm17.15.01c.02-.16.02-1.98 0-2.18-.01-.15-.02-.15-.07-.15-.03 0-.18.06-.33.12-.48.2-1.03.35-1.6.43l-.29.03v.1l.04.39.07.73c.02.34.03.44.05.44.02 0 .07-.04.12-.08.21-.17.47-.25.76-.25.4 0 .74.13 1.02.4.1.09.18.16.2.16s.02-.07.03-.14zM3.72 12.97l.08-.38A7.5 7.5 0 0 1 5.02 9.6c.2-.26.54-.61.75-.78.08-.06.15-.13.15-.15 0-.02-.1-.1-.29-.21a6.14 6.14 0 0 1-2.28-2.24c-.08 0-.42.53-.71 1.13a12.36 12.36 0 0 0-1.21 5.02c.02.05.31.19.66.31.64.24 1.57.4 1.63.3zm13.12.01a6.29 6.29 0 0 0 1.68-.48l.23-.11-.01-.22c-.13-1.94-.67-3.91-1.45-5.26a3.2 3.2 0 0 0-.47-.69 6.02 6.02 0 0 1-2.25 2.2l-.34.24a6.15 6.15 0 0 1 2.08 3.66l.1.49c.04.23.02.23.42.17zm-15.62-.92l.07-.47a12.4 12.4 0 0 1 1.9-5.73c.03-.1-.59-.61-.74-.61-.08 0-.47.63-.78 1.28-.23.49-.37.83-.56 1.41a16.62 16.62 0 0 0-.75 3.82l-.01.14.25.04c.14.02.32.06.41.09.2.06.19.06.21.03zm18.33-.13l.24-.03.01-.09a15.39 15.39 0 0 0-1-4.58c-.23-.58-.63-1.36-.94-1.83-.08-.11-.12-.15-.16-.15-.12 0-.73.48-.73.59l.1.2c.4.58.81 1.41 1.1 2.22.35 1.05.6 2.22.72 3.45.01.19.04.34.05.35s.1 0 .2-.04l.4-.09zm-5.1-3.53c.88-.54 1.6-1.2 2.02-1.83.07-.12.17-.28.2-.36l.07-.14-.1-.12c-.14-.2-.56-.62-.78-.8a3.69 3.69 0 0 0-2.02-.85c-.3-.03-.55-.01-.76.06-.3.1-.5.27-.65.58-.25.5-.19 1.36.15 1.87.2.32.43.47.7.45.36-.03.6-.5.6-1.17 0-.46-.13-.8-.37-.96-.17-.11-.4-.03-.51.18-.1.17-.12.52-.04.78.05.15.17.29.27.29.05 0 .08-.02.11-.07.04-.06.04-.1.04-.26 0-.15-.02-.2-.06-.25-.06-.09-.05-.15.01-.16.14-.01.24.24.22.54-.03.54-.27.75-.53.47-.22-.24-.33-.75-.26-1.18.06-.35.2-.56.4-.66.14-.08.27-.08.4 0 .51.3.67 1.53.3 2.3-.1.2-.2.33-.34.4-.1.05-.12.05-.65.05-.35 0-.6-.01-.7-.03a2.3 2.3 0 0 1-1.39-.68 1.85 1.85 0 0 1-.32-.65 1.8 1.8 0 0 1-.05-.57 3.16 3.16 0 0 1 .59-1.9c.16-.22.5-.54.7-.67.2-.13.21-.17.06-.24a.46.46 0 0 0-.25-.05.88.88 0 0 0-.53.2c-.3.2-.7.7-.81.99-.06.16-.1.16-.17-.01-.16-.4-.64-.91-1.03-1.1a.8.8 0 0 0-.5-.06c-.09.02-.2.1-.2.13l.2.14c.24.16.58.5.74.75.5.74.69 1.8.45 2.51-.1.28-.17.41-.39.62-.2.2-.37.31-.63.41-.42.17-.82.23-1.44.21-.4 0-.46-.01-.54-.05-.53-.24-.75-1.55-.38-2.31a.95.95 0 0 1 .35-.41c.23-.11.5.02.65.31.29.56.07 1.6-.34 1.68-.06.01-.08 0-.15-.07-.22-.22-.25-.85-.05-1.03.1-.1.17.02.08.14-.04.05-.05.09-.05.24 0 .22.05.32.15.32.1 0 .18-.07.25-.21.05-.1.06-.16.07-.36.01-.38-.07-.58-.26-.68-.13-.06-.23-.06-.33 0-.25.17-.37.49-.37.98 0 .34.05.57.15.78.13.26.28.38.5.38.4 0 .77-.46.9-1.1.06-.25.06-.74 0-.94a1.22 1.22 0 0 0-.6-.81c-.18-.1-.34-.13-.66-.12-.88 0-1.7.34-2.47 1.03-.26.23-.67.7-.67.76 0 .06.13.3.28.53.34.5.84.99 1.49 1.45.3.21.8.52.84.52l.32-.14c.61-.3 1.14-.42 1.79-.4.42.01.6.04 1.27.21.66.17.67.17 1.3 0l.7-.15c.3-.06.85-.08 1.13-.04.45.05.99.22 1.38.44.1.05.19.09.2.08l.32-.18zM8.03 7.17a1.8 1.8 0 0 0 1.2-.58c.22-.3.3-.56.3-1C9.55 4.51 8.93 3.5 8 3.05a3.33 3.33 0 0 0-1.65-.26 4.9 4.9 0 0 0-3.3 1.67c-.25.28-.51.61-.51.66 0 .02.06.07.16.14.1.06.25.19.36.28s.2.18.22.18c.02 0 .07-.05.12-.11a4.41 4.41 0 0 1 2.5-1.64c.31-.06.84-.08 1.05-.03.43.1.76.36.96.78.24.49.27 1.07.09 1.66-.07.2-.18.43-.29.58-.08.12-.09.18-.03.21.05.03.12.03.36 0zm4.44.01c.08-.02.08-.08-.02-.22-.56-.83-.52-2.03.09-2.64.17-.17.33-.27.58-.36.17-.06.81-.06 1.1 0 .57.11 1.13.37 1.63.75a6.69 6.69 0 0 1 1.03 1.01c.02 0 .1-.07.2-.16.15-.13.33-.27.53-.39.06-.03.03-.08-.2-.37a5.33 5.33 0 0 0-2.65-1.85 4.38 4.38 0 0 0-1.98-.1 2.7 2.7 0 0 0-2.15 2.73c0 .35 0 .38.06.55.03.1.08.22.12.28.15.26.45.5.77.63.28.1.74.18.89.14zm-2.25-3.71c.42-.73 1-1.12 1.52-1.04.18.03.39.12.5.22l.09.08.13-.04.38-.08a.95.95 0 0 0 .28-.08c.05-.05-.07-.25-.27-.45-.15-.15-.21-.2-.4-.29a1.63 1.63 0 0 0-.72-.19c-.37-.02-.68.06-.97.25-.26.18-.48.45-.6.75l-.08.14-.06-.1a2.06 2.06 0 0 0-.36-.57c-.2-.2-.44-.35-.71-.42-.21-.06-.67-.06-.9 0s-.5.2-.66.34c-.15.13-.34.38-.36.49-.01.07-.01.07.21.1l.37.09.23.06.1-.08a.98.98 0 0 1 .7-.22c.17.01.37.09.54.18.24.15.55.5.77.87.11.2.15.2.27-.01zm-.04-1.2c.16-.27.38-.48.68-.64.2-.1.2-.13.06-.21-.09-.05-.13-.05-.28-.05-.22 0-.35.05-.48.18l-.08.09-.1-.1a.69.69 0 0 0-.45-.18c-.2 0-.43.1-.4.17 0 .02.1.07.19.12.21.1.47.34.61.56.13.2.17.2.25.06zM9 1.37a.83.83 0 0 1 .95-.2c.13.05.14.05.22.01.34-.15.7-.09.96.17l.11.12.15-.03a.52.52 0 0 0 .16-.04c.05-.05-.18-.5-.37-.72A1.53 1.53 0 0 0 9.4.36c-.32.16-.66.56-.77.9-.04.14-.03.15.1.18.16.03.18.03.27-.07z"/>
6
3
  </svg>
@@ -63,5 +63,23 @@ GeoBlacklight.Basemaps = {
63
63
  retina: '@2x',
64
64
  detectRetina: false
65
65
  }
66
+ ),
67
+ openstreetmapHot: L.tileLayer(
68
+ 'https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png', {
69
+ attribution: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a>, Tiles courtesy of <a href="http://hot.openstreetmap.org/" target="_blank">Humanitarian OpenStreetMap Team</a>',
70
+ maxZoom: 19,
71
+ worldCopyJump: true,
72
+ retina: '@2x',
73
+ detectRetina: false
74
+ }
75
+ ),
76
+ openstreetmapStandard: L.tileLayer(
77
+ 'https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
78
+ attribution: '&copy; <a href="http://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors',
79
+ maxZoom: 19,
80
+ worldCopyJump: true,
81
+ retina: '@2x',
82
+ detectRetina: false
83
+ }
66
84
  )
67
85
  };
@@ -3,7 +3,7 @@
3
3
 
4
4
  var Downloader = L.Class.extend({
5
5
  options: {
6
- spinner: $('<i class="fa fa-spinner fa-spin fa-2x fa-align-center"></i>')
6
+ spinner: $('<div class="spinner-border spinner-border-sm float-right" role="status"><span class="sr-only">Downloading</span></div>')
7
7
  },
8
8
 
9
9
  initialize: function(el, options) {
@@ -35,7 +35,7 @@
35
35
  History.pushState(null, document.title, this.getSearchUrl());
36
36
  },
37
37
  delay: 800,
38
- staticButton: '<a class="btn btn-primary">Redo search here <span class="glyphicon glyphicon-repeat"></span></a>',
38
+ staticButton: '<a href="#" class="btn btn-primary">Redo search here <span class="glyphicon glyphicon-repeat"></span></a>',
39
39
  dynamicButton: '<label><input type="checkbox" checked> Search when I move the map</label>'
40
40
  },
41
41
 
@@ -10,7 +10,7 @@ Blacklight.onLoad(function() {
10
10
  searcher: function() {
11
11
  window.location.href = this.getSearchUrl();
12
12
  },
13
- staticButton: '<a class="btn btn-primary">Search here</a>'
13
+ staticButton: '<a href="#" class="btn btn-primary">Search here</a>'
14
14
  }));
15
15
  });
16
16
  });
@@ -9,5 +9,24 @@ Blacklight.onLoad(function() {
9
9
  viewer = new window['GeoBlacklight']['Viewer'][viewerName](element);
10
10
  });
11
11
 
12
- new Readmore( '.truncate-abstract', { maxHeight: 60 } );
12
+ $('.truncate-abstract').each(function(i, element) {
13
+ var lines = 12 * parseFloat(getComputedStyle(element).fontSize);
14
+ if (element.getBoundingClientRect().height < lines) return;
15
+ var id = element.id || 'truncate-' + i;
16
+
17
+ element.id = id;
18
+ $(element).addClass('collapse');
19
+
20
+ var control = $('<button class="btn btn-link p-0 border-0" data-toggle="collapse" aria-expanded="false" data-target="#' + id + '" aria-controls="' + id + '">Read more</button>');
21
+
22
+ $(element).on('shown.bs.collapse', function() {
23
+ control.text('Close');
24
+ });
25
+ $(element).on('hidden.bs.collapse', function() {
26
+ control.text('Read more');
27
+ });
28
+
29
+ control.collapse();
30
+ control.insertAfter(element);
31
+ });
13
32
  });
@@ -50,8 +50,10 @@ Blacklight.onLoad(function() {
50
50
  // set hover listeners on map
51
51
  $('#content')
52
52
  .on('mouseenter', '#documents [data-layer-id]', function() {
53
- var bounds = L.bboxToBounds($(this).data('bbox'));
54
- geoblacklight.addBoundsOverlay(bounds);
53
+ if($(this).data('bbox').length > 0) {
54
+ var bounds = L.bboxToBounds($(this).data('bbox'));
55
+ geoblacklight.addBoundsOverlay(bounds);
56
+ }
55
57
  })
56
58
  .on('mouseleave', '#documents [data-layer-id]', function() {
57
59
  geoblacklight.removeBoundsOverlay();
@@ -0,0 +1,31 @@
1
+ /* global Blacklight */
2
+
3
+ Blacklight.onLoad(function() {
4
+ 'use strict';
5
+
6
+ $('body').on('mouseenter', '.blacklight-icons.svg_tooltip svg', function() {
7
+ var svgTitle = $(this).find('title');
8
+ var titleText = svgTitle && svgTitle.text();
9
+
10
+ if (titleText !== undefined && titleText !== '') {
11
+ $(this).tooltip({ placement: 'bottom', title: titleText });
12
+ $(this).tooltip('show');
13
+
14
+ // Store the original title in the data-original-title attribute
15
+ // and remove the title element on mouseenter.
16
+ // This prevents the title from interfering w/ Bootstrap's tooltip.
17
+ $(this).attr('data-original-title', titleText);
18
+ svgTitle.remove();
19
+ }
20
+ });
21
+
22
+ $('body').on('mouseleave', '.blacklight-icons.svg_tooltip svg', function() {
23
+ var originalTitle = $(this).attr('data-original-title');
24
+
25
+ if (originalTitle !== undefined && originalTitle !== '') {
26
+ // Restore the SVG title element from data-original-title on mouseleave
27
+ $(this).prepend($('<title>' + originalTitle + '</title>'));
28
+ $(this).attr('data-original-title', '');
29
+ }
30
+ });
31
+ });
@@ -50,8 +50,8 @@ GeoBlacklight.Viewer.Esri = GeoBlacklight.Viewer.Map.extend({
50
50
  appendLoadingMessage: function() {
51
51
  var spinner = '<tbody class="attribute-table-body"><tr><td colspan="2">' +
52
52
  '<span id="attribute-table">' +
53
- '<i class="fa fa-spinner fa-spin fa-align-center">' +
54
- '</i></span>' +
53
+ '<div class="spinner-border" role="status"><span class="sr-only">Inspecting</span></div>' +
54
+ '</span>' +
55
55
  '</td></tr></tbody>';
56
56
 
57
57
  $('.attribute-table-body').html(spinner);
@@ -30,7 +30,7 @@ GeoBlacklight.Viewer.TiledMapLayer = GeoBlacklight.Viewer.Esri.extend({
30
30
  _this.appendLoadingMessage();
31
31
 
32
32
  // query layer at click location
33
- L.esri.Tasks.identifyFeatures({
33
+ L.esri.identifyFeatures({
34
34
  url: layer.options.url,
35
35
  useCors: true
36
36
  })
@@ -23,7 +23,7 @@ GeoBlacklight.Viewer.Wms = GeoBlacklight.Viewer.Map.extend({
23
23
  format: 'image/png',
24
24
  transparent: true,
25
25
  tiled: true,
26
- CRS: 'EPSG:900913',
26
+ CRS: 'EPSG:3857',
27
27
  opacity: this.options.opacity,
28
28
  detectRetina: _this.detectRetina()
29
29
  });
@@ -34,7 +34,7 @@ GeoBlacklight.Viewer.Wms = GeoBlacklight.Viewer.Map.extend({
34
34
  setupInspection: function() {
35
35
  var _this = this;
36
36
  this.map.on('click', function(e) {
37
- spinner = '<tbody class="attribute-table-body"><tr><td colspan="2"><span id="attribute-table"><i class="fa fa-spinner fa-spin fa-align-center"></i></span></td></tr></tbody>';
37
+ spinner = '<tbody class="attribute-table-body"><tr><td colspan="2"><span id="attribute-table"><div class="spinner-border" role="status"><span class="sr-only">Inspecting</span></div></span></td></tr></tbody>';
38
38
  $('.attribute-table-body').replaceWith(spinner);
39
39
  var wmsoptions = {
40
40
  URL: _this.data.url,
@@ -0,0 +1,2 @@
1
+ @import 'leaflet';
2
+ @import 'modules/base';
@@ -0,0 +1,33 @@
1
+ /*
2
+ * This is a manifest file that'll be compiled into application.css, which will include all the files
3
+ * listed below.
4
+ *
5
+ * Any CSS and SCSS file within this directory, lib/assets/stylesheets, vendor/assets/stylesheets,
6
+ * or vendor/assets/stylesheets of plugins, if any, can be referenced here using a relative path.
7
+ *
8
+ * You're free to add application-wide styles to this file and they'll appear at the top of the
9
+ * compiled file, but it's generally better to create a new file per style scope.
10
+ *
11
+ */
12
+
13
+ @import 'styles';
14
+ @import 'facets';
15
+ @import 'mixins';
16
+ @import 'icon-customization';
17
+ @import 'home';
18
+ @import 'index_maps';
19
+ @import 'item';
20
+ @import 'layer_opacity';
21
+ @import 'metadata';
22
+ @import 'metadata_content';
23
+ @import 'metadata_missing';
24
+ @import 'metadata_markup';
25
+ @import 'modal';
26
+ @import 'results';
27
+ @import 'geosearch';
28
+ @import 'search_widgets';
29
+ @import 'sidebar';
30
+ @import 'toolbar';
31
+ @import 'web_services';
32
+ @import 'blacklight_overrides';
33
+ @import 'downloads';
@@ -4,7 +4,7 @@
4
4
 
5
5
  $logo-image: image_url('blacklight/logo.svg') !default
6
6
 
7
- .navbar-brand { /* The main logo image for the Blacklight instance */
7
+ .navbar-logo { /* The main logo image for the Blacklight instance */
8
8
  @if $logo-image {
9
9
  background: transparent $logo-image no-repeat top left;
10
10
  }
@@ -40,12 +40,3 @@ $logo-image: image_url('blacklight/logo.svg') !default
40
40
  padding-top:0.5rem;
41
41
  }
42
42
  // End - Addresses GBL issue #639
43
-
44
-
45
- // Begin - Addresses GBL issue #766 - removes flex from display
46
- .modal-header {
47
- display: block;
48
- padding: 15px;
49
- border-bottom: 1px solid #e9ecef;
50
- }
51
- // End - Addresses GBL issue #766
@@ -1,4 +1,5 @@
1
1
  #table-container{
2
2
  overflow:scroll;
3
+ margin-top: 20px;
3
4
  max-height: 450px;
4
5
  }
@@ -1,91 +1,74 @@
1
- %downloads-exports {
2
- .list-group-item {
3
- display: inline-block;
4
- width: 100%;
5
- }
6
- }
7
-
8
- %download-export-links {
9
- a {
10
- width: 100%;
11
- font-weight: 600;
12
- background-color: $link-color;
13
- color: #ffffff;
14
- border-color: darken($link-color, 6.5%);
15
- white-space: inherit;
16
- }
17
- }
1
+ // Common styling for the Downloads, Export, and Authentication cards
2
+ .downloads,
3
+ .card.exports,
4
+ .authentication {
5
+ @include sidebar-children;
18
6
 
19
- @mixin download-export {
20
- &-link {
21
- &-container {
22
- text-align: center;
23
- @extend %download-export-links;
7
+ .list-group {
8
+ &.list-group-nested .list-group-item:last-child {
9
+ padding-bottom: 0;
24
10
  }
25
- }
26
- }
27
11
 
28
- .downloads {
29
- @include sidebar-children;
30
- @extend %downloads-exports;
12
+ .list-group-item {
13
+ padding: 8px 20px;
31
14
 
32
- .download {
33
- @include download-export;
15
+ a {
16
+ @extend .btn-primary;
17
+ }
18
+ }
34
19
  }
35
20
  }
36
21
 
22
+ // This section could be eliminated if we update the Authentication card
23
+ // to follow the pattern of Dowloads and Exports (put the button in a
24
+ // list-group rather than the card header).
37
25
  .authentication {
38
- @include sidebar-children;
39
26
  .card-header {
40
27
  background-color: inherit;
41
28
  border-bottom: inherit;
42
29
 
43
- @extend %download-export-links;
30
+ a {
31
+ @extend .btn-primary;
32
+ }
44
33
  }
45
34
  }
46
35
 
47
- .exports {
48
- @include sidebar-children;
49
- @extend %downloads-exports;
50
-
36
+ // Specific to the Export card (mostly because of the current external
37
+ // label + button approach, which could be mostly eliminated by reworking
38
+ // as suggested in https://github.com/sul-dlss/earthworks/issues/646)
39
+ .card.exports {
51
40
  .card-header {
52
- .fa-spinner {
53
- float: right;
41
+ .spinner-border { // if this is used, it probably should go in the card body rather than the card header
42
+ position: absolute;
43
+ right: 1rem;
44
+ top: 1rem;
54
45
  }
55
46
  }
56
47
 
57
48
  .export {
58
- @include download-export;
59
-
60
- padding-left: 0px;
61
- padding-right: 0px;
62
49
  text-align: center;
63
- width: 100%;
64
50
 
65
51
  @include media-breakpoint-up(xl) {
66
52
  text-align: left;
67
53
  }
68
54
 
69
- &-label {
70
- padding: 6px 12px;
55
+ .export-label {
56
+ padding: 6px 6px 6px 0;
71
57
 
72
58
  @include media-breakpoint-up(xl) {
73
59
  display: inline-block;
74
60
  }
75
61
  }
76
62
 
77
- &-link {
78
- &-container {
63
+ .export-link-container {
64
+ @include media-breakpoint-up(xl) {
65
+ display: inline-block;
66
+ float: right;
67
+ }
79
68
 
69
+ a {
80
70
  @include media-breakpoint-up(xl) {
81
- display: inline-block;
82
- float: right;
83
- }
84
-
85
- a {
86
- @include media-breakpoint-up(xl) {
87
- width: inherit;
88
- }
71
+ width: inherit;
89
72
  }
90
73
  }
91
74
  }