geoblacklight 2.1.2 → 2.2.0

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 (121) hide show
  1. checksums.yaml +4 -4
  2. data/.circleci/config.yml +6 -0
  3. data/.gitignore +3 -1
  4. data/.rubocop.yml +3 -1
  5. data/.rubocop_todo.yml +7 -15
  6. data/README.md +5 -6
  7. data/app/assets/images/blacklight/arrow-circle-down.svg +4 -0
  8. data/app/assets/images/blacklight/baruch-cuny.svg +6 -0
  9. data/app/assets/images/blacklight/berkeley.svg +7 -0
  10. data/app/assets/images/blacklight/book.svg +6 -0
  11. data/app/assets/images/blacklight/bookmark.svg +6 -0
  12. data/app/assets/images/blacklight/cd-rom.svg +6 -0
  13. data/app/assets/images/blacklight/chicago.svg +7 -0
  14. data/app/assets/images/blacklight/columbia.svg +6 -0
  15. data/app/assets/images/blacklight/cornell.svg +8 -0
  16. data/app/assets/images/blacklight/dvd-rom.svg +6 -0
  17. data/app/assets/images/blacklight/email.svg +6 -0
  18. data/app/assets/images/blacklight/esri-globe.svg +34 -37
  19. data/app/assets/images/blacklight/geoblacklight-icons.json +2079 -0
  20. data/app/assets/images/blacklight/globe.svg +4 -0
  21. data/app/assets/images/blacklight/harvard.svg +6 -0
  22. data/app/assets/images/blacklight/home.svg +4 -0
  23. data/app/assets/images/blacklight/illinois.svg +7 -0
  24. data/app/assets/images/blacklight/image.svg +6 -0
  25. data/app/assets/images/blacklight/indiana.svg +6 -0
  26. data/app/assets/images/blacklight/iowa.svg +6 -0
  27. data/app/assets/images/blacklight/leaf.svg +6 -0
  28. data/app/assets/images/blacklight/lewis-clark.svg +8 -0
  29. data/app/assets/images/blacklight/line.svg +7 -0
  30. data/app/assets/images/blacklight/logo.svg +1 -0
  31. data/app/assets/images/blacklight/map-marker.svg +6 -0
  32. data/app/assets/images/blacklight/map.svg +6 -0
  33. data/app/assets/images/blacklight/maryland.svg +6 -0
  34. data/app/assets/images/blacklight/massgis.svg +6 -0
  35. data/app/assets/images/blacklight/metadata.svg +6 -0
  36. data/app/assets/images/blacklight/michigan-state.svg +7 -0
  37. data/app/assets/images/blacklight/michigan.svg +6 -0
  38. data/app/assets/images/blacklight/minnesota.svg +6 -0
  39. data/app/assets/images/blacklight/mit.svg +6 -0
  40. data/app/assets/images/blacklight/mixed.svg +8 -0
  41. data/app/assets/images/blacklight/multilinestring.svg +9 -0
  42. data/app/assets/images/blacklight/multipoint.svg +6 -0
  43. data/app/assets/images/blacklight/multipolygon.svg +9 -0
  44. data/app/assets/images/blacklight/nyu.svg +9 -0
  45. data/app/assets/images/blacklight/ohio-state.svg +8 -0
  46. data/app/assets/images/blacklight/pagelines-brands.svg +6 -0
  47. data/app/assets/images/blacklight/paper-map.svg +6 -0
  48. data/app/assets/images/blacklight/penn-state.svg +7 -0
  49. data/app/assets/images/blacklight/point.svg +6 -0
  50. data/app/assets/images/blacklight/polygon.svg +7 -0
  51. data/app/assets/images/blacklight/polyline.svg +9 -0
  52. data/app/assets/images/blacklight/princeton.svg +6 -0
  53. data/app/assets/images/blacklight/public.svg +6 -0
  54. data/app/assets/images/blacklight/purdue.svg +7 -0
  55. data/app/assets/images/blacklight/raster.svg +6 -0
  56. data/app/assets/images/blacklight/restricted.svg +6 -0
  57. data/app/assets/images/blacklight/sms.svg +6 -0
  58. data/app/assets/images/blacklight/stanford.svg +6 -0
  59. data/app/assets/images/blacklight/table.svg +6 -0
  60. data/app/assets/images/blacklight/tags.svg +4 -0
  61. data/app/assets/images/blacklight/texas.svg +6 -0
  62. data/app/assets/images/blacklight/tufts.svg +6 -0
  63. data/app/assets/images/blacklight/ucla.svg +6 -0
  64. data/app/assets/images/blacklight/uva.svg +6 -0
  65. data/app/assets/images/blacklight/web_services.svg +6 -0
  66. data/app/assets/images/blacklight/wisconsin.svg +6 -0
  67. data/app/assets/javascripts/geoblacklight/modules/help_text.js +7 -0
  68. data/app/assets/javascripts/geoblacklight/modules/item.js +1 -3
  69. data/app/assets/javascripts/geoblacklight/viewers/oembed.js +13 -0
  70. data/app/assets/stylesheets/geoblacklight/_blacklight_overrides.scss +9 -1
  71. data/app/assets/stylesheets/geoblacklight/modules/icon-customization.scss +49 -59
  72. data/app/assets/stylesheets/geoblacklight/modules/item.scss +4 -0
  73. data/app/assets/stylesheets/geoblacklight/modules/results.scss +22 -0
  74. data/app/assets/stylesheets/geoblacklight/modules/toolbar.scss +4 -0
  75. data/app/helpers/geoblacklight_helper.rb +91 -5
  76. data/app/models/concerns/geoblacklight/solr_document.rb +4 -0
  77. data/app/models/concerns/geoblacklight/spatial_search_behavior.rb +5 -0
  78. data/app/views/catalog/_data_dictionary.html.erb +3 -2
  79. data/app/views/catalog/_document_action.html.erb +1 -1
  80. data/app/views/catalog/_exports.html.erb +2 -10
  81. data/app/views/catalog/_home_text.html.erb +4 -4
  82. data/app/views/catalog/_show_default_viewer_container.html.erb +5 -0
  83. data/app/views/catalog/_show_header_default.html.erb +2 -4
  84. data/app/views/relation/_ancestors.html.erb +2 -1
  85. data/app/views/relation/_descendants.html.erb +2 -1
  86. data/app/views/shared/_header_navbar.html.erb +2 -0
  87. data/config/locales/geoblacklight.en.yml +88 -0
  88. data/geoblacklight.gemspec +1 -0
  89. data/lib/generators/geoblacklight/templates/geoblacklight.js +1 -1
  90. data/lib/generators/geoblacklight/templates/settings.yml +19 -0
  91. data/lib/geoblacklight/constants.rb +3 -2
  92. data/lib/geoblacklight/item_viewer.rb +5 -1
  93. data/lib/geoblacklight/metadata/base.rb +15 -10
  94. data/lib/geoblacklight/reference.rb +2 -1
  95. data/lib/geoblacklight/version.rb +1 -1
  96. data/package.json +4 -0
  97. data/schema/references.md +2 -1
  98. data/spec/features/exports_spec.rb +9 -0
  99. data/spec/features/help_text_spec.rb +8 -0
  100. data/spec/features/metadata_panel_spec.rb +51 -8
  101. data/spec/features/oembed_spec.rb +9 -0
  102. data/spec/features/search_results_map_spec.rb +1 -1
  103. data/spec/features/split_view.html.erb_spec.rb +1 -1
  104. data/spec/features/suppressed_records_spec.rb +14 -0
  105. data/spec/fixtures/fgdc/harvard-g7064-s2-1834-k3.xml +1 -0
  106. data/spec/fixtures/iso19139/stanford-cg357zz0321.xml +581 -0
  107. data/spec/fixtures/mods/fb897vt9938.mods +111 -0
  108. data/spec/fixtures/mods/stanford-cg357zz0321.mods +113 -0
  109. data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +1 -1
  110. data/spec/fixtures/solr_documents/oembed.json +24 -0
  111. data/spec/helpers/geoblacklight_helper_spec.rb +30 -7
  112. data/spec/javascripts/geoblacklight_spec.js +4 -0
  113. data/spec/javascripts/metadata_download_button_spec.js +1 -1
  114. data/spec/lib/geoblacklight/metadata/base_spec.rb +18 -4
  115. data/spec/lib/geoblacklight/reference_spec.rb +30 -0
  116. data/spec/models/concerns/geoblacklight/solr_document_spec.rb +20 -0
  117. data/spec/spec_helper.rb +8 -5
  118. data/vendor/assets/javascripts/readmore.js +618 -0
  119. data/vendor/assets/javascripts/readmore.js.map +1 -0
  120. metadata +96 -3
  121. data/vendor/assets/javascripts/readmore.min.js +0 -11
@@ -1,60 +1,50 @@
1
- // Additional customizations beyond generated FontCustom styles
2
-
3
- .geoblacklight-icon {
4
- color: $gray-600;
5
- font-size: 1.2em;
6
- }
7
-
8
- .geoblacklight-stanford {
9
- color: #8c1515;
10
- }
11
-
12
- .geoblacklight-public {
13
- @extend .fa, .fa-unlock, .text-muted;
14
- }
15
-
16
- .geoblacklight-restricted {
17
- @extend .fa, .fa-lock, .text-muted;
18
- width: 17px;
19
- }
20
-
21
- .geoblacklight-citation {
22
- @extend .fa, .fa-bookmark;
23
- }
24
-
25
- .geoblacklight-data-dictionary {
26
- @extend .fa, .fa-book;
27
- }
28
-
29
- .geoblacklight-sms {
30
- @extend .fa, .fa-mobile;
31
- }
32
-
33
- .geoblacklight-email {
34
- @extend .fa, .fa-envelope;
35
- }
36
-
37
- .geoblacklight-relations-ancestor {
38
- @extend .fa, .fa-pagelines;
39
- }
40
-
41
- .geoblacklight-relations-descendant {
42
- @extend .fa, .fa-leaf;
43
- }
44
-
45
- .geoblacklight-web_services {
46
- @extend .fa, .fa-external-link;
47
- }
48
-
49
- .geoblacklight-metadata {
50
- @extend .fa, .fa-file-text-o;
51
- }
52
-
53
- .geoblacklight-carto {
54
- @extend .fa, .fa-map-marker;
55
- }
56
-
57
- // DEPRECATED: Will be removed in GeoBlacklight v2.0
58
- .geoblacklight-cartodb {
59
- @extend .geoblacklight-cartodb;
1
+ // SVG icons via FontAwesome and IcoMoon, see geoblacklight-icons.json for project data
2
+
3
+ span.icon-missing {
4
+ display: inline-block;
5
+ height: 1em;
6
+ width: 1em;
7
+ }
8
+
9
+ // CatalogController#index - Home
10
+ .category-icon {
11
+ .blacklight-icons {
12
+ height: 6rem;
13
+ width: auto;
14
+ }
15
+
16
+ .blacklight-icons svg {
17
+ width: 100%;
18
+ height: 100%;
19
+ top: 2rem;
20
+ }
21
+ }
22
+
23
+ // CatalogController#show
24
+ .document {
25
+ h2 {
26
+ .blacklight-icons {
27
+ height: 1.5rem;
28
+ width: auto;
29
+ }
30
+
31
+ .blacklight-icons svg {
32
+ width: auto;
33
+ height: 100%;
34
+ }
35
+ }
36
+ }
37
+
38
+ // CatalogController#index - search results
39
+ .facet-label {
40
+ .blacklight-icons, span.icon-missing {
41
+ margin-right:0.5em;
42
+ }
43
+ }
44
+
45
+ .blacklight-icons {
46
+ svg * {
47
+ width: 100%;
48
+ height: 100%;
49
+ }
60
50
  }
@@ -19,4 +19,8 @@
19
19
  }
20
20
  }
21
21
  }
22
+
23
+ .help-text {
24
+ cursor: pointer;
25
+ }
22
26
  }
@@ -44,3 +44,25 @@
44
44
  @extend .fa, .fa-caret-down;
45
45
  }
46
46
  }
47
+
48
+ #main-container {
49
+ .category-block {
50
+ min-height: 240px;
51
+
52
+ .category-icon {
53
+ font-size: 6em;
54
+ }
55
+ }
56
+
57
+ [data-map="index"] {
58
+ height: 400px;
59
+
60
+ .leaflet-control-container {
61
+ .search-control {
62
+ a {
63
+ color: $white;
64
+ }
65
+ }
66
+ }
67
+ }
68
+ }
@@ -3,6 +3,10 @@
3
3
 
4
4
  .list-group {
5
5
 
6
+ .list-group-item.exports {
7
+ margin-top:0px;
8
+ }
9
+
6
10
  .list-group-item {
7
11
 
8
12
  form {
@@ -81,12 +81,58 @@ module GeoblacklightHelper
81
81
  layout: 'facet_tag_layout')
82
82
  end
83
83
 
84
+ ##
85
+ # Returns an SVG icon or empty HTML span element
86
+ # @return [SVG or HTML tag]
84
87
  def geoblacklight_icon(name)
85
- icon_name = name ? name.parameterize : 'none'
86
- content_tag :span,
87
- '',
88
- class: "geoblacklight-icon geoblacklight-#{icon_name}",
89
- title: name
88
+ icon_name = name ? name.to_s.parameterize : 'none'
89
+ if asset_exists?(icon_name)
90
+ queue_icon_aria_label(icon_name)
91
+ blacklight_icon(icon_name)
92
+ else
93
+ render_empty_span('icon-missing geoblacklight-none')
94
+ end
95
+ end
96
+
97
+ ##
98
+ # Checks if an asset file exists
99
+ # @return [Boolean]
100
+ def asset_exists?(path)
101
+ Rails.application.assets.resolve("blacklight/#{path}").present?
102
+ end
103
+
104
+ ##
105
+ # Render an empty span
106
+ # @return [HTML tag]
107
+ def render_empty_span(classname)
108
+ tag.span class: classname
109
+ end
110
+
111
+ ##
112
+ # Capture SVG icon aria labels to describe
113
+ def queue_icon_aria_label(feature_name)
114
+ @aria_labels ||= Set.new
115
+ @aria_labels << feature_name
116
+ end
117
+
118
+ ##
119
+ # Render a div of divs describing aria-labelledby values
120
+ # @return [HTML tag]
121
+ def render_aria_labels(aria_labels)
122
+ return unless aria_labels
123
+ content_tag :div, id: 'aria-labels', class: 'sr-only sr-only-focusable' do
124
+ aria_labels.each do |label|
125
+ concat(render_aria_label(label))
126
+ end
127
+ end
128
+ end
129
+
130
+ # Render a div describing a aria-labelledby value
131
+ # @return [HTML tag]
132
+ def render_aria_label(label)
133
+ content_tag :div, id: "aria-label-#{label}" do
134
+ I18n.t("geoblacklight.aria-labels.#{label}")
135
+ end
90
136
  end
91
137
 
92
138
  ##
@@ -139,6 +185,29 @@ module GeoblacklightHelper
139
185
  value.html_safe
140
186
  end
141
187
 
188
+ ##
189
+ # Deteremines if a feature should include help text popover
190
+ # @return [Boolean]
191
+ def show_help_text?(feature, key)
192
+ Settings&.HELP_TEXT&.send(feature)&.include?(key)
193
+ end
194
+
195
+ ##
196
+ # Render help text popover for a given feature and translation key
197
+ # @return [HTML tag]
198
+ def render_help_text_entry(feature, key)
199
+ if I18n.exists?("geoblacklight.help_text.#{feature}.#{key}", locale)
200
+ help_text = I18n.t("geoblacklight.help_text.#{feature}.#{key}")
201
+ content_tag :h3, class: 'help-text viewer_protocol h6' do
202
+ content_tag :a, 'data': { toggle: 'popover', title: help_text[:title], content: help_text[:content] } do
203
+ help_text[:title]
204
+ end
205
+ end
206
+ else
207
+ tag.span class: 'help-text translation-missing'
208
+ end
209
+ end
210
+
142
211
  ##
143
212
  # Deteremines if item view should include attribute table
144
213
  # @return [Boolean]
@@ -164,6 +233,23 @@ module GeoblacklightHelper
164
233
  blacklight_config.basemap_provider || 'positron'
165
234
  end
166
235
 
236
+ def display_carto
237
+ return link_to(
238
+ content_tag(:span, '', class: 'geoblacklight geoblacklight-carto') +
239
+ t('geoblacklight.tools.open_carto'),
240
+ carto_link(@document.carto_reference),
241
+ target: '_blank'
242
+ ) if @document.carto_reference.present? && !Settings.CARTO_HIDE
243
+ end
244
+
245
+ def display_arcgis
246
+ return link_to(
247
+ blacklight_icon('esri-globe') + ' ' +
248
+ t('geoblacklight.tools.open_arcgis'),
249
+ arcgis_link(@document.arcgis_urls)
250
+ ) if @document.arcgis_urls.present? && !Settings.ARCGIS_HIDE
251
+ end
252
+
167
253
  ##
168
254
  # Creates a Carto OneClick link link, using the configuration link
169
255
  # @param [String] file_link
@@ -40,6 +40,10 @@ module Geoblacklight
40
40
  references.hgl.to_hash unless references.hgl.blank?
41
41
  end
42
42
 
43
+ def oembed
44
+ references.oembed.endpoint unless references.oembed.blank?
45
+ end
46
+
43
47
  def same_institution?
44
48
  fetch(Settings.FIELDS.PROVENANCE).casecmp(Settings.INSTITUTION.downcase).zero?
45
49
  end
@@ -57,6 +57,11 @@ module Geoblacklight
57
57
  def hide_suppressed_records(solr_params)
58
58
  # Show child records if searching for a specific source parent
59
59
  return unless blacklight_params.fetch(:f, {})[Settings.FIELDS.SOURCE.to_sym].nil?
60
+
61
+ # Do not suppress action_documents method calls for individual documents
62
+ # ex. CatalogController#web_services (exportable views)
63
+ return if solr_params[:q]&.include?('{!lucene}layer_slug_s:')
64
+
60
65
  solr_params[:fq] ||= []
61
66
  solr_params[:fq] << '-suppressed_b: true'
62
67
  end
@@ -1,5 +1,6 @@
1
1
  <% if document.data_dictionary_download.present? %>
2
2
  <%= link_to document.data_dictionary_download[:data_dictionary] do %>
3
- <span class='geoblacklight geoblacklight-data-dictionary'></span><%= t('geoblacklight.references.data_dictionary') %>
3
+ <%= geoblacklight_icon('book') %>
4
+ <%= t('geoblacklight.references.data_dictionary') %>
4
5
  <% end %>
5
- <% end %>
6
+ <% end %>
@@ -1,6 +1,6 @@
1
1
  <%= link_to document_action_path(document_action_config, (local_assigns.has_key?(:url_opts) ? url_opts : {}).merge(({id: document} if document) || {})),
2
2
  id: document_action_config.fetch(:id, "#{document_action_config.key}Link"),
3
3
  data: {}.merge(({blacklight_modal: "trigger"} if document_action_config.modal != false) || {}) do %>
4
- <%= content_tag :span, '', class: "geoblacklight geoblacklight-#{document_action_config.key}" %>
4
+ <%= geoblacklight_icon(document_action_config.key) %>
5
5
  <%= document_action_label(document_action_config.key, document_action_config) %>
6
6
  <% end %>
@@ -1,11 +1,3 @@
1
1
  <% document ||= @document %>
2
- <% if document.carto_reference.present? %>
3
- <%= link_to(carto_link(document.carto_reference), target: '_blank') do %>
4
- <span class='geoblacklight geoblacklight-carto'></span><%= t('geoblacklight.tools.open_carto') %>
5
- <% end %>
6
- <% end %>
7
- <% if document.arcgis_urls.present? %>
8
- <%= link_to(arcgis_link(document.arcgis_urls)) do %>
9
- <%= blacklight_icon('esri-globe') %> <%= t('geoblacklight.tools.open_arcgis') %>
10
- <% end %>
11
- <% end %>
2
+ <%= display_carto %>
3
+ <%= display_arcgis %>
@@ -5,14 +5,14 @@
5
5
  <div class='row'>
6
6
  <div class='category-block col-sm'>
7
7
  <div class='category-icon'>
8
- <span class='fa fa-home'></span>
8
+ <%= geoblacklight_icon('home') %>
9
9
  </div>
10
10
  <%= content_tag :h4, t('geoblacklight.home.institution') %>
11
11
  <%= render_facet_tags [Settings.FIELDS.PROVENANCE] %>
12
12
  </div>
13
13
  <div class='category-block col-sm'>
14
14
  <div class='category-icon'>
15
- <span class='fa fa-arrow-circle-down'></span>
15
+ <%= geoblacklight_icon('arrow-circle-down') %>
16
16
  </div>
17
17
  <%= content_tag :h4, t('geoblacklight.home.data_type') %>
18
18
  <%= render_facet_tags [Settings.FIELDS.GEOM_TYPE] %>
@@ -21,14 +21,14 @@
21
21
  <div class='row'>
22
22
  <div class='category-block col-sm'>
23
23
  <div class='category-icon'>
24
- <span class='fa fa-globe'></span>
24
+ <%= geoblacklight_icon('globe') %>
25
25
  </div>
26
26
  <%= content_tag :h4, t('geoblacklight.home.placename') %>
27
27
  <%= render_facet_tags [Settings.FIELDS.SPATIAL_COVERAGE] %>
28
28
  </div>
29
29
  <div class='category-block col-sm'>
30
30
  <div class='category-icon'>
31
- <span class='fa fa-tags'></span>
31
+ <%= geoblacklight_icon('tags') %>
32
32
  </div>
33
33
  <%= content_tag :h4, t('geoblacklight.home.subject') %>
34
34
  <%= render_facet_tags [Settings.FIELDS.SUBJECT] %>
@@ -1,6 +1,11 @@
1
1
  <% document ||= @document %>
2
2
  <div class='row'>
3
3
  <div id='viewer-container' class="col-md-12">
4
+
5
+ <% if show_help_text?('viewer_protocol', document.viewer_protocol) %>
6
+ <%= render_help_text_entry('viewer_protocol', document.viewer_protocol) %>
7
+ <% end %>
8
+
4
9
  <%= content_tag :div, id: 'map', data: { map: 'item', protocol: document.viewer_protocol.camelize, url: document.viewer_endpoint, 'layer-id' => document.wxs_identifier, 'map-bbox' => document.bounding_box_as_wsen, 'catalog-path'=> search_catalog_path, available: document_available?, inspect: show_attribute_table?, basemap: geoblacklight_basemap, leaflet_options: leaflet_options } do %>
5
10
  <% end %>
6
11
  </div>
@@ -1,6 +1,4 @@
1
1
  <h2>
2
2
  <span itemprop="name"><%= document_heading(document) %></span>
3
- <small>
4
- <%= render partial: 'header_icons', locals: { document: document } %>
5
- </small>
6
- </h2>
3
+ <%= render partial: 'header_icons', locals: { document: document } %>
4
+ </h2>
@@ -4,7 +4,8 @@
4
4
  <% @relations.ancestors['docs'].each do |ancestor| %>
5
5
  <li class="list-group-item">
6
6
  <%= link_to solr_document_path(ancestor['layer_slug_s']) do %>
7
- <span class='geoblacklight geoblacklight-relations-ancestor'></span> <%= ancestor['dc_title_s'] %>
7
+ <%= geoblacklight_icon('pagelines-brands') %>
8
+ <%= ancestor['dc_title_s'] %>
8
9
  <% end %>
9
10
  </li>
10
11
  <% end %>
@@ -4,7 +4,8 @@
4
4
  <% @relations.descendants['docs'][0..2].each do |descendant| %>
5
5
  <li class="list-group-item">
6
6
  <%= link_to solr_document_path(descendant['layer_slug_s']) do %>
7
- <span class='geoblacklight geoblacklight-relations-descendant'></span> <%= descendant['dc_title_s'] %>
7
+ <%= geoblacklight_icon('leaf') %>
8
+ <%= descendant['dc_title_s'] %>
8
9
  <% end %>
9
10
  </li>
10
11
  <% end %>
@@ -1,3 +1,5 @@
1
+ <%= render_aria_labels(@aria_labels) %>
2
+
1
3
  <nav class="navbar navbar-expand-md navbar-dark bg-dark topbar" role="navigation">
2
4
  <div class="<%= container_classes %>">
3
5
  <%= link_to application_name, root_path, class: 'mb-0 navbar-brand' %>
@@ -73,3 +73,91 @@ en:
73
73
  attribute: 'Attribute'
74
74
  value: 'Value'
75
75
  click_map: 'Click on map to inspect values'
76
+ help_text:
77
+ viewer_protocol:
78
+ dynamic_map_layer:
79
+ title: ArcGIS Dynamic Map Layer
80
+ content: An ArcGIS Dynamic Map Layer represents vector data (points, lines, and polygons). Map image layers are dynamically rendered image tiles.
81
+ feature_layer:
82
+ title: ArcGIS Feature Layer
83
+ content: An ArcGIS Feature Layer Service displays vector data (points, lines, and polygons) as individual or collected features.
84
+ iiif:
85
+ title: IIIF Service
86
+ content: The International Image Interoperability Framework (IIIF) web service API displays an image from a server. This image can be panned and zoomed.
87
+ iiif_manifest:
88
+ title: IIIF Service
89
+ content: The International Image Interoperability Framework (IIIF) web service API displays an image from a server. This image can be panned and zoomed.
90
+ image_map_layer:
91
+ title: ArcGIS Image Map Layer
92
+ content: An ArcGIS Image Map Layer displays raster data (a grid of cells used to store imagery).
93
+ index_map:
94
+ title: Index Map
95
+ content: Index maps are a "table of contents" that allow users to select a specific map or item within a larger set and navigate to it for viewing or downloading.
96
+ oembed:
97
+ title: Embedded Content
98
+ content: This content is embedded through a third-party viewer.
99
+ tiled_map_layer:
100
+ title: ArcGIS Tiled Map Layer
101
+ content: An ArcGIS Tiled Map Layer Service displays set of web-accessible tiles that reside on a server.
102
+ wms:
103
+ title: Web Map Service (WMS)
104
+ 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)