geoblacklight 4.0.0.pre.alpha.3 → 4.0.0.pre.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (191) hide show
  1. checksums.yaml +4 -4
  2. data/.github/ISSUE_TEMPLATE.md +1 -1
  3. data/.github/workflows/ruby.yml +32 -64
  4. data/.gitignore +1 -0
  5. data/.rubocop.yml +6 -6
  6. data/.rubocop_todo.yml +0 -3
  7. data/.solr_wrapper +1 -0
  8. data/README.md +1 -4
  9. data/Rakefile +0 -1
  10. data/app/assets/images/blacklight/child-item.svg +3 -0
  11. data/app/assets/images/blacklight/collections.svg +4 -0
  12. data/app/assets/images/blacklight/datasets.svg +7 -0
  13. data/app/assets/images/blacklight/geoblacklight-icons.json +363 -332
  14. data/app/assets/images/blacklight/imagery.svg +4 -0
  15. data/app/assets/images/blacklight/maps.svg +4 -0
  16. data/app/assets/images/blacklight/parent-item.svg +3 -0
  17. data/app/assets/images/blacklight/university-of-colorado-boulder.svg +6 -0
  18. data/app/assets/images/blacklight/websites.svg +4 -0
  19. data/app/assets/javascripts/geoblacklight/controls/fullscreen.js +8 -0
  20. data/app/assets/javascripts/geoblacklight/geoblacklight.js +2 -1
  21. data/app/assets/javascripts/geoblacklight/viewers/esri.js +1 -0
  22. data/app/assets/javascripts/geoblacklight/viewers/index_map.js +1 -0
  23. data/app/assets/javascripts/geoblacklight/viewers/tilejson.js +33 -0
  24. data/app/assets/javascripts/geoblacklight/viewers/tms.js +2 -2
  25. data/app/assets/javascripts/geoblacklight/viewers/viewer.js +3 -0
  26. data/app/assets/javascripts/geoblacklight/viewers/wms.js +2 -2
  27. data/app/assets/javascripts/geoblacklight/viewers/wmts.js +85 -0
  28. data/app/assets/javascripts/geoblacklight/viewers/xyz.js +10 -0
  29. data/app/assets/stylesheets/geoblacklight/geoblacklight.scss +1 -0
  30. data/app/assets/stylesheets/geoblacklight/modules/_base.scss +0 -1
  31. data/app/assets/stylesheets/geoblacklight/modules/_styles.scss +5 -1
  32. data/app/assets/stylesheets/geoblacklight/modules/downloads.scss +20 -47
  33. data/app/assets/stylesheets/geoblacklight/modules/index_maps.scss +68 -0
  34. data/app/assets/stylesheets/geoblacklight/modules/item.scss +16 -0
  35. data/app/assets/stylesheets/geoblacklight/modules/modal.scss +6 -0
  36. data/app/assets/stylesheets/geoblacklight/modules/sidebar.scss +4 -0
  37. data/app/components/geoblacklight/icon_facet_item_component.rb +33 -0
  38. data/app/helpers/geoblacklight_helper.rb +6 -45
  39. data/app/models/concerns/geoblacklight/bbox_filter_field.rb +45 -0
  40. data/app/models/concerns/geoblacklight/bbox_filter_query.rb +50 -0
  41. data/app/models/concerns/geoblacklight/solr_document.rb +1 -1
  42. data/app/models/concerns/geoblacklight/suppressed_records_search_behavior.rb +26 -0
  43. data/app/presenters/geoblacklight/bbox_item_presenter.rb +9 -0
  44. data/app/views/catalog/_downloads_collapse.html.erb +27 -0
  45. data/app/views/catalog/_header_icons.html.erb +2 -2
  46. data/app/views/catalog/_index_split_default.html.erb +2 -2
  47. data/app/views/catalog/_show_default_viewer_container.html.erb +17 -0
  48. data/app/views/catalog/_show_downloads.html.erb +10 -21
  49. data/app/views/catalog/_show_sidebar.html.erb +3 -0
  50. data/app/views/catalog/_show_web_services.html.erb +11 -0
  51. data/app/views/catalog/_web_services.html.erb +3 -2
  52. data/app/views/catalog/web_services.html.erb +1 -1
  53. data/config/locales/geoblacklight.en.yml +4 -1
  54. data/geoblacklight.gemspec +6 -6
  55. data/lib/generators/geoblacklight/install_generator.rb +1 -1
  56. data/lib/generators/geoblacklight/templates/assets/_customizations.scss +5 -4
  57. data/lib/generators/geoblacklight/templates/assets/application.scss +0 -3
  58. data/lib/generators/geoblacklight/templates/catalog_controller.rb +74 -56
  59. data/lib/generators/geoblacklight/templates/settings.gbl_v1.yml +5 -5
  60. data/lib/generators/geoblacklight/templates/settings.yml +36 -23
  61. data/lib/geoblacklight/bounding_box.rb +4 -0
  62. data/lib/geoblacklight/constants.rb +3 -0
  63. data/lib/geoblacklight/engine.rb +3 -2
  64. data/lib/geoblacklight/faraday_middleware/follow_redirects.rb +176 -0
  65. data/lib/geoblacklight/item_viewer.rb +13 -1
  66. data/lib/geoblacklight/metadata/base.rb +2 -1
  67. data/lib/geoblacklight/version.rb +1 -1
  68. data/lib/geoblacklight/view_helper_override.rb +2 -28
  69. data/lib/geoblacklight.rb +0 -10
  70. data/lib/tasks/geoblacklight.rake +1 -1
  71. data/schema/geoblacklight-schema-aardvark.json +3 -23
  72. data/solr/conf/schema.xml +37 -43
  73. data/solr/conf/solrconfig.xml +17 -17
  74. data/spec/components/geoblacklight/icon_facet_item_component_spec.rb +17 -0
  75. data/spec/controllers/catalog_controller_spec.rb +1 -1
  76. data/spec/features/download_layer_spec.rb +31 -14
  77. data/spec/features/esri_viewer_spec.rb +5 -1
  78. data/spec/features/full_screen_controll_spec.rb +15 -0
  79. data/spec/features/home_page_spec.rb +2 -2
  80. data/spec/features/index_map_spec.rb +2 -2
  81. data/spec/features/missing_metadata_spec.rb +1 -1
  82. data/spec/features/multiple_downloads_spec.rb +2 -1
  83. data/spec/features/relations_spec.rb +1 -1
  84. data/spec/features/saved_searches_spec.rb +1 -1
  85. data/spec/features/search_results_complex_geometry_spec.rb +24 -0
  86. data/spec/features/search_results_icons_spec.rb +16 -0
  87. data/spec/features/search_results_map_spec.rb +2 -2
  88. data/spec/features/search_spec.rb +17 -0
  89. data/spec/features/show_page_download_spec.rb +6 -3
  90. data/spec/features/show_page_metadata_spec.rb +2 -2
  91. data/spec/features/split_view.html.erb_spec.rb +12 -1
  92. data/spec/features/tilejson_spec.rb +22 -0
  93. data/spec/features/tms_spec.rb +2 -2
  94. data/spec/features/web_services_modal_spec.rb +35 -2
  95. data/spec/features/wmts_spec.rb +34 -0
  96. data/spec/features/xyz_spec.rb +10 -0
  97. data/spec/fixtures/manifests/tilejson.json +21 -0
  98. data/spec/fixtures/manifests/wmts-multiple.xml +813 -0
  99. data/spec/fixtures/manifests/wmts-single.xml +126 -0
  100. data/spec/fixtures/solr_documents/README.md +46 -43
  101. data/spec/fixtures/solr_documents/actual-papermap1.json +2 -1
  102. data/spec/fixtures/solr_documents/actual-point1.json +2 -1
  103. data/spec/fixtures/solr_documents/actual-polygon1.json +2 -1
  104. data/spec/fixtures/solr_documents/actual-raster1.json +3 -2
  105. data/spec/fixtures/solr_documents/baruch_ancestor1.json +2 -1
  106. data/spec/fixtures/solr_documents/baruch_ancestor2.json +2 -1
  107. data/spec/fixtures/solr_documents/baruch_documentation_download.json +1 -1
  108. data/spec/fixtures/solr_documents/bbox-spans-180.json +2 -1
  109. data/spec/fixtures/solr_documents/cornell_html_metadata.json +4 -3
  110. data/spec/fixtures/solr_documents/esri-dynamic-layer-all-layers.json +3 -2
  111. data/spec/fixtures/solr_documents/esri-dynamic-layer-single-layer.json +3 -2
  112. data/spec/fixtures/solr_documents/esri-feature-layer.json +2 -1
  113. data/spec/fixtures/solr_documents/esri-image-map-layer.json +3 -2
  114. data/spec/fixtures/solr_documents/esri-tiled_map_layer.json +2 -1
  115. data/spec/fixtures/solr_documents/esri-wms-layer.json +2 -1
  116. data/spec/fixtures/solr_documents/harvard_raster.json +3 -2
  117. data/spec/fixtures/solr_documents/iiif-eastern-hemisphere.json +3 -2
  118. data/spec/fixtures/solr_documents/index-map-polygon-no-downloadurl.json +2 -1
  119. data/spec/fixtures/solr_documents/index-map-polygon.json +2 -1
  120. data/spec/fixtures/solr_documents/index-map-stanford.json +2 -1
  121. data/spec/fixtures/solr_documents/index_map_point.json +3 -2
  122. data/spec/fixtures/solr_documents/metadata_no_provider.json +2 -1
  123. data/spec/fixtures/solr_documents/multiple-downloads.json +3 -2
  124. data/spec/fixtures/solr_documents/no_spatial.json +1 -4
  125. data/spec/fixtures/solr_documents/oembed.json +2 -1
  126. data/spec/fixtures/solr_documents/princeton-child1.json +3 -2
  127. data/spec/fixtures/solr_documents/princeton-child2.json +3 -2
  128. data/spec/fixtures/solr_documents/princeton-child3.json +2 -1
  129. data/spec/fixtures/solr_documents/princeton-child4.json +3 -2
  130. data/spec/fixtures/solr_documents/princeton-parent.json +5 -3
  131. data/spec/fixtures/solr_documents/public_direct_download.json +2 -1
  132. data/spec/fixtures/solr_documents/public_iiif_princeton.json +3 -2
  133. data/spec/fixtures/solr_documents/public_polygon_mit.json +2 -1
  134. data/spec/fixtures/solr_documents/restricted-line.json +2 -1
  135. data/spec/fixtures/solr_documents/tilejson.json +48 -0
  136. data/spec/fixtures/solr_documents/tms.json +15 -18
  137. data/spec/fixtures/solr_documents/umn_metro_result1.json +5 -3
  138. data/spec/fixtures/solr_documents/umn_state_result1.json +3 -2
  139. data/spec/fixtures/solr_documents/umn_state_result2.json +3 -5
  140. data/spec/fixtures/solr_documents/uva_slug_colon.json +2 -1
  141. data/spec/fixtures/solr_documents/wmts-multiple.json +41 -0
  142. data/spec/fixtures/solr_documents/wmts-single-layer.json +48 -0
  143. data/spec/fixtures/solr_documents/xyz.json +46 -0
  144. data/spec/helpers/geoblacklight_helper_spec.rb +12 -35
  145. data/spec/lib/geoblacklight/document_presenter_spec.rb +3 -3
  146. data/spec/lib/geoblacklight/download/geojson_download_spec.rb +1 -1
  147. data/spec/lib/geoblacklight/download/geotiff_download_spec.rb +1 -1
  148. data/spec/lib/geoblacklight/download/kmz_download_spec.rb +1 -1
  149. data/spec/lib/geoblacklight/download/shapefile_download_spec.rb +1 -1
  150. data/spec/lib/geoblacklight/download_spec.rb +2 -2
  151. data/spec/lib/geoblacklight/metadata/base_spec.rb +19 -1
  152. data/spec/lib/geoblacklight/references_spec.rb +1 -1
  153. data/spec/lib/geoblacklight/relation/relation_response_spec.rb +5 -0
  154. data/spec/lib/geoblacklight/view_helper_override_spec.rb +0 -10
  155. data/spec/models/concerns/geoblacklight/bbox_filter_field_spec.rb +77 -0
  156. data/spec/models/concerns/geoblacklight/bbox_filter_query_spec.rb +105 -0
  157. data/spec/models/concerns/geoblacklight/solr_document/inspection_spec.rb +2 -1
  158. data/spec/models/concerns/geoblacklight/suppressed_records_search_behavior_spec.rb +31 -0
  159. data/spec/presenters/geoblacklight/bbox_item_presenter_spec.rb +36 -0
  160. data/spec/spec_helper.rb +6 -1
  161. data/spec/test_app_templates/Gemfile.extra +1 -0
  162. data/spec/test_app_templates/lib/generators/test_app_generator.rb +4 -4
  163. data/spec/views/catalog/_show_downloads.html.erb_spec.rb +5 -5
  164. data/template.rb +2 -4
  165. data/vendor/assets/images/fullscreen.png +0 -0
  166. data/vendor/assets/images/fullscreen@2x.png +0 -0
  167. data/vendor/assets/javascripts/Leaflet.fullscreen.js +152 -0
  168. data/vendor/assets/javascripts/esri-leaflet.js +10 -3
  169. data/vendor/assets/javascripts/esri-leaflet.js.map +1 -1
  170. data/vendor/assets/javascripts/leaflet-iiif.js +39 -18
  171. data/vendor/assets/javascripts/leaflet-src.js.erb +14062 -0
  172. data/vendor/assets/javascripts/leaflet-src.js.map +1 -1
  173. data/vendor/assets/stylesheets/leaflet.css +640 -634
  174. data/vendor/assets/stylesheets/leaflet.fullscreen.css +40 -0
  175. metadata +92 -49
  176. data/app/models/concerns/geoblacklight/spatial_search_behavior.rb +0 -71
  177. data/app/views/catalog/_download_generated_link.html.erb +0 -4
  178. data/app/views/catalog/_download_link.html.erb +0 -3
  179. data/app/views/catalog/_downloads_generated.html.erb +0 -6
  180. data/app/views/catalog/_downloads_primary.html.erb +0 -21
  181. data/app/views/catalog/_downloads_secondary.html.erb +0 -39
  182. data/app/views/catalog/_icon_facet.html.erb +0 -16
  183. data/bin/coverage.rb +0 -36
  184. data/lib/generators/geoblacklight/templates/Procfile +0 -3
  185. data/lib/generators/geoblacklight/templates/package.json +0 -14
  186. data/lib/generators/geoblacklight/templates/webpacker.yml +0 -67
  187. data/lib/generators/geoblacklight/webpacker_generator.rb +0 -36
  188. data/lib/geoblacklight/catalog_helper_override.rb +0 -14
  189. data/spec/models/concerns/geoblacklight/spatial_search_behavior_spec.rb +0 -97
  190. data/vendor/assets/javascripts/leaflet.js.erb +0 -13922
  191. data/vendor/assets/stylesheets/leaflet-label.css +0 -54
@@ -1,634 +1,640 @@
1
- /* required styles */
2
-
3
- .leaflet-pane,
4
- .leaflet-tile,
5
- .leaflet-marker-icon,
6
- .leaflet-marker-shadow,
7
- .leaflet-tile-container,
8
- .leaflet-pane > svg,
9
- .leaflet-pane > canvas,
10
- .leaflet-zoom-box,
11
- .leaflet-image-layer,
12
- .leaflet-layer {
13
- position: absolute;
14
- left: 0;
15
- top: 0;
16
- }
17
- .leaflet-container {
18
- overflow: hidden;
19
- }
20
- .leaflet-tile,
21
- .leaflet-marker-icon,
22
- .leaflet-marker-shadow {
23
- -webkit-user-select: none;
24
- -moz-user-select: none;
25
- user-select: none;
26
- -webkit-user-drag: none;
27
- }
28
- /* Safari renders non-retina tile on retina better with this, but Chrome is worse */
29
- .leaflet-safari .leaflet-tile {
30
- image-rendering: -webkit-optimize-contrast;
31
- }
32
- /* hack that prevents hw layers "stretching" when loading new tiles */
33
- .leaflet-safari .leaflet-tile-container {
34
- width: 1600px;
35
- height: 1600px;
36
- -webkit-transform-origin: 0 0;
37
- }
38
- .leaflet-marker-icon,
39
- .leaflet-marker-shadow {
40
- display: block;
41
- }
42
- /* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
43
- /* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
44
- .leaflet-container .leaflet-overlay-pane svg,
45
- .leaflet-container .leaflet-marker-pane img,
46
- .leaflet-container .leaflet-shadow-pane img,
47
- .leaflet-container .leaflet-tile-pane img,
48
- .leaflet-container img.leaflet-image-layer,
49
- .leaflet-container .leaflet-tile {
50
- max-width: none !important;
51
- max-height: none !important;
52
- }
53
-
54
- .leaflet-container.leaflet-touch-zoom {
55
- -ms-touch-action: pan-x pan-y;
56
- touch-action: pan-x pan-y;
57
- }
58
- .leaflet-container.leaflet-touch-drag {
59
- -ms-touch-action: pinch-zoom;
60
- /* Fallback for FF which doesn't support pinch-zoom */
61
- touch-action: none;
62
- touch-action: pinch-zoom;
63
- }
64
- .leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
65
- -ms-touch-action: none;
66
- touch-action: none;
67
- }
68
- .leaflet-container {
69
- -webkit-tap-highlight-color: transparent;
70
- }
71
- .leaflet-container a {
72
- -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
73
- }
74
- .leaflet-tile {
75
- filter: inherit;
76
- visibility: hidden;
77
- }
78
- .leaflet-tile-loaded {
79
- visibility: inherit;
80
- }
81
- .leaflet-zoom-box {
82
- width: 0;
83
- height: 0;
84
- -moz-box-sizing: border-box;
85
- box-sizing: border-box;
86
- z-index: 800;
87
- }
88
- /* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
89
- .leaflet-overlay-pane svg {
90
- -moz-user-select: none;
91
- }
92
-
93
- .leaflet-pane { z-index: 400; }
94
-
95
- .leaflet-tile-pane { z-index: 200; }
96
- .leaflet-overlay-pane { z-index: 400; }
97
- .leaflet-shadow-pane { z-index: 500; }
98
- .leaflet-marker-pane { z-index: 600; }
99
- .leaflet-tooltip-pane { z-index: 650; }
100
- .leaflet-popup-pane { z-index: 700; }
101
-
102
- .leaflet-map-pane canvas { z-index: 100; }
103
- .leaflet-map-pane svg { z-index: 200; }
104
-
105
- .leaflet-vml-shape {
106
- width: 1px;
107
- height: 1px;
108
- }
109
- .lvml {
110
- behavior: url(#default#VML);
111
- display: inline-block;
112
- position: absolute;
113
- }
114
-
115
-
116
- /* control positioning */
117
-
118
- .leaflet-control {
119
- position: relative;
120
- z-index: 800;
121
- pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
122
- pointer-events: auto;
123
- }
124
- .leaflet-top,
125
- .leaflet-bottom {
126
- position: absolute;
127
- z-index: 1000;
128
- pointer-events: none;
129
- }
130
- .leaflet-top {
131
- top: 0;
132
- }
133
- .leaflet-right {
134
- right: 0;
135
- }
136
- .leaflet-bottom {
137
- bottom: 0;
138
- }
139
- .leaflet-left {
140
- left: 0;
141
- }
142
- .leaflet-control {
143
- float: left;
144
- clear: both;
145
- }
146
- .leaflet-right .leaflet-control {
147
- float: right;
148
- }
149
- .leaflet-top .leaflet-control {
150
- margin-top: 10px;
151
- }
152
- .leaflet-bottom .leaflet-control {
153
- margin-bottom: 10px;
154
- }
155
- .leaflet-left .leaflet-control {
156
- margin-left: 10px;
157
- }
158
- .leaflet-right .leaflet-control {
159
- margin-right: 10px;
160
- }
161
-
162
-
163
- /* zoom and fade animations */
164
-
165
- .leaflet-fade-anim .leaflet-tile {
166
- will-change: opacity;
167
- }
168
- .leaflet-fade-anim .leaflet-popup {
169
- opacity: 0;
170
- -webkit-transition: opacity 0.2s linear;
171
- -moz-transition: opacity 0.2s linear;
172
- transition: opacity 0.2s linear;
173
- }
174
- .leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
175
- opacity: 1;
176
- }
177
- .leaflet-zoom-animated {
178
- -webkit-transform-origin: 0 0;
179
- -ms-transform-origin: 0 0;
180
- transform-origin: 0 0;
181
- }
182
- .leaflet-zoom-anim .leaflet-zoom-animated {
183
- will-change: transform;
184
- }
185
- .leaflet-zoom-anim .leaflet-zoom-animated {
186
- -webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
187
- -moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
188
- transition: transform 0.25s cubic-bezier(0,0,0.25,1);
189
- }
190
- .leaflet-zoom-anim .leaflet-tile,
191
- .leaflet-pan-anim .leaflet-tile {
192
- -webkit-transition: none;
193
- -moz-transition: none;
194
- transition: none;
195
- }
196
-
197
- .leaflet-zoom-anim .leaflet-zoom-hide {
198
- visibility: hidden;
199
- }
200
-
201
-
202
- /* cursors */
203
-
204
- .leaflet-interactive {
205
- cursor: pointer;
206
- }
207
- .leaflet-grab {
208
- cursor: -webkit-grab;
209
- cursor: -moz-grab;
210
- cursor: grab;
211
- }
212
- .leaflet-crosshair,
213
- .leaflet-crosshair .leaflet-interactive {
214
- cursor: crosshair;
215
- }
216
- .leaflet-popup-pane,
217
- .leaflet-control {
218
- cursor: auto;
219
- }
220
- .leaflet-dragging .leaflet-grab,
221
- .leaflet-dragging .leaflet-grab .leaflet-interactive,
222
- .leaflet-dragging .leaflet-marker-draggable {
223
- cursor: move;
224
- cursor: -webkit-grabbing;
225
- cursor: -moz-grabbing;
226
- cursor: grabbing;
227
- }
228
-
229
- /* marker & overlays interactivity */
230
- .leaflet-marker-icon,
231
- .leaflet-marker-shadow,
232
- .leaflet-image-layer,
233
- .leaflet-pane > svg path,
234
- .leaflet-tile-container {
235
- pointer-events: none;
236
- }
237
-
238
- .leaflet-marker-icon.leaflet-interactive,
239
- .leaflet-image-layer.leaflet-interactive,
240
- .leaflet-pane > svg path.leaflet-interactive {
241
- pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
242
- pointer-events: auto;
243
- }
244
-
245
- /* visual tweaks */
246
-
247
- .leaflet-container {
248
- background: #ddd;
249
- }
250
- .leaflet-container a {
251
- color: #0078A8;
252
- }
253
- .leaflet-container a.leaflet-active {
254
- outline: 2px solid orange;
255
- }
256
- .leaflet-zoom-box {
257
- border: 2px dotted #38f;
258
- background: rgba(255,255,255,0.5);
259
- }
260
-
261
-
262
- /* general typography */
263
- .leaflet-container {
264
- font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
265
- }
266
-
267
-
268
- /* general toolbar styles */
269
-
270
- .leaflet-bar {
271
- box-shadow: 0 1px 5px rgba(0,0,0,0.65);
272
- border-radius: 4px;
273
- }
274
- .leaflet-bar a,
275
- .leaflet-bar a:hover {
276
- background-color: #fff;
277
- border-bottom: 1px solid #ccc;
278
- width: 26px;
279
- height: 26px;
280
- line-height: 26px;
281
- display: block;
282
- text-align: center;
283
- text-decoration: none;
284
- color: black;
285
- }
286
- .leaflet-bar a,
287
- .leaflet-control-layers-toggle {
288
- background-position: 50% 50%;
289
- background-repeat: no-repeat;
290
- display: block;
291
- }
292
- .leaflet-bar a:hover {
293
- background-color: #f4f4f4;
294
- }
295
- .leaflet-bar a:first-child {
296
- border-top-left-radius: 4px;
297
- border-top-right-radius: 4px;
298
- }
299
- .leaflet-bar a:last-child {
300
- border-bottom-left-radius: 4px;
301
- border-bottom-right-radius: 4px;
302
- border-bottom: none;
303
- }
304
- .leaflet-bar a.leaflet-disabled {
305
- cursor: default;
306
- background-color: #f4f4f4;
307
- color: #bbb;
308
- }
309
-
310
- .leaflet-touch .leaflet-bar a {
311
- width: 30px;
312
- height: 30px;
313
- line-height: 30px;
314
- }
315
- .leaflet-touch .leaflet-bar a:first-child {
316
- border-top-left-radius: 2px;
317
- border-top-right-radius: 2px;
318
- }
319
- .leaflet-touch .leaflet-bar a:last-child {
320
- border-bottom-left-radius: 2px;
321
- border-bottom-right-radius: 2px;
322
- }
323
-
324
- /* zoom control */
325
-
326
- .leaflet-control-zoom-in,
327
- .leaflet-control-zoom-out {
328
- font: bold 18px 'Lucida Console', Monaco, monospace;
329
- text-indent: 1px;
330
- }
331
-
332
- .leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
333
- font-size: 22px;
334
- }
335
-
336
-
337
- /* layers control */
338
-
339
- .leaflet-control-layers {
340
- box-shadow: 0 1px 5px rgba(0,0,0,0.4);
341
- background: #fff;
342
- border-radius: 5px;
343
- }
344
- .leaflet-control-layers-toggle {
345
- background-image: url(images/layers.png);
346
- width: 36px;
347
- height: 36px;
348
- }
349
- .leaflet-retina .leaflet-control-layers-toggle {
350
- background-image: url(images/layers-2x.png);
351
- background-size: 26px 26px;
352
- }
353
- .leaflet-touch .leaflet-control-layers-toggle {
354
- width: 44px;
355
- height: 44px;
356
- }
357
- .leaflet-control-layers .leaflet-control-layers-list,
358
- .leaflet-control-layers-expanded .leaflet-control-layers-toggle {
359
- display: none;
360
- }
361
- .leaflet-control-layers-expanded .leaflet-control-layers-list {
362
- display: block;
363
- position: relative;
364
- }
365
- .leaflet-control-layers-expanded {
366
- padding: 6px 10px 6px 6px;
367
- color: #333;
368
- background: #fff;
369
- }
370
- .leaflet-control-layers-scrollbar {
371
- overflow-y: scroll;
372
- overflow-x: hidden;
373
- padding-right: 5px;
374
- }
375
- .leaflet-control-layers-selector {
376
- margin-top: 2px;
377
- position: relative;
378
- top: 1px;
379
- }
380
- .leaflet-control-layers label {
381
- display: block;
382
- }
383
- .leaflet-control-layers-separator {
384
- height: 0;
385
- border-top: 1px solid #ddd;
386
- margin: 5px -10px 5px -6px;
387
- }
388
-
389
- /* Default icon URLs */
390
- .leaflet-default-icon-path {
391
- background-image: url(images/marker-icon.png);
392
- }
393
-
394
-
395
- /* attribution and scale controls */
396
-
397
- .leaflet-container .leaflet-control-attribution {
398
- background: #fff;
399
- background: rgba(255, 255, 255, 0.7);
400
- margin: 0;
401
- }
402
- .leaflet-control-attribution,
403
- .leaflet-control-scale-line {
404
- padding: 0 5px;
405
- color: #333;
406
- }
407
- .leaflet-control-attribution a {
408
- text-decoration: none;
409
- }
410
- .leaflet-control-attribution a:hover {
411
- text-decoration: underline;
412
- }
413
- .leaflet-container .leaflet-control-attribution,
414
- .leaflet-container .leaflet-control-scale {
415
- font-size: 11px;
416
- }
417
- .leaflet-left .leaflet-control-scale {
418
- margin-left: 5px;
419
- }
420
- .leaflet-bottom .leaflet-control-scale {
421
- margin-bottom: 5px;
422
- }
423
- .leaflet-control-scale-line {
424
- border: 2px solid #777;
425
- border-top: none;
426
- line-height: 1.1;
427
- padding: 2px 5px 1px;
428
- font-size: 11px;
429
- white-space: nowrap;
430
- overflow: hidden;
431
- -moz-box-sizing: border-box;
432
- box-sizing: border-box;
433
-
434
- background: #fff;
435
- background: rgba(255, 255, 255, 0.5);
436
- }
437
- .leaflet-control-scale-line:not(:first-child) {
438
- border-top: 2px solid #777;
439
- border-bottom: none;
440
- margin-top: -2px;
441
- }
442
- .leaflet-control-scale-line:not(:first-child):not(:last-child) {
443
- border-bottom: 2px solid #777;
444
- }
445
-
446
- .leaflet-touch .leaflet-control-attribution,
447
- .leaflet-touch .leaflet-control-layers,
448
- .leaflet-touch .leaflet-bar {
449
- box-shadow: none;
450
- }
451
- .leaflet-touch .leaflet-control-layers,
452
- .leaflet-touch .leaflet-bar {
453
- border: 2px solid rgba(0,0,0,0.2);
454
- background-clip: padding-box;
455
- }
456
-
457
-
458
- /* popup */
459
-
460
- .leaflet-popup {
461
- position: absolute;
462
- text-align: center;
463
- margin-bottom: 20px;
464
- }
465
- .leaflet-popup-content-wrapper {
466
- padding: 1px;
467
- text-align: left;
468
- border-radius: 12px;
469
- }
470
- .leaflet-popup-content {
471
- margin: 13px 19px;
472
- line-height: 1.4;
473
- }
474
- .leaflet-popup-content p {
475
- margin: 18px 0;
476
- }
477
- .leaflet-popup-tip-container {
478
- width: 40px;
479
- height: 20px;
480
- position: absolute;
481
- left: 50%;
482
- margin-left: -20px;
483
- overflow: hidden;
484
- pointer-events: none;
485
- }
486
- .leaflet-popup-tip {
487
- width: 17px;
488
- height: 17px;
489
- padding: 1px;
490
-
491
- margin: -10px auto 0;
492
-
493
- -webkit-transform: rotate(45deg);
494
- -moz-transform: rotate(45deg);
495
- -ms-transform: rotate(45deg);
496
- transform: rotate(45deg);
497
- }
498
- .leaflet-popup-content-wrapper,
499
- .leaflet-popup-tip {
500
- background: white;
501
- color: #333;
502
- box-shadow: 0 3px 14px rgba(0,0,0,0.4);
503
- }
504
- .leaflet-container a.leaflet-popup-close-button {
505
- position: absolute;
506
- top: 0;
507
- right: 0;
508
- padding: 4px 4px 0 0;
509
- border: none;
510
- text-align: center;
511
- width: 18px;
512
- height: 14px;
513
- font: 16px/14px Tahoma, Verdana, sans-serif;
514
- color: #c3c3c3;
515
- text-decoration: none;
516
- font-weight: bold;
517
- background: transparent;
518
- }
519
- .leaflet-container a.leaflet-popup-close-button:hover {
520
- color: #999;
521
- }
522
- .leaflet-popup-scrolled {
523
- overflow: auto;
524
- border-bottom: 1px solid #ddd;
525
- border-top: 1px solid #ddd;
526
- }
527
-
528
- .leaflet-oldie .leaflet-popup-content-wrapper {
529
- zoom: 1;
530
- }
531
- .leaflet-oldie .leaflet-popup-tip {
532
- width: 24px;
533
- margin: 0 auto;
534
-
535
- -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
536
- filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
537
- }
538
- .leaflet-oldie .leaflet-popup-tip-container {
539
- margin-top: -1px;
540
- }
541
-
542
- .leaflet-oldie .leaflet-control-zoom,
543
- .leaflet-oldie .leaflet-control-layers,
544
- .leaflet-oldie .leaflet-popup-content-wrapper,
545
- .leaflet-oldie .leaflet-popup-tip {
546
- border: 1px solid #999;
547
- }
548
-
549
-
550
- /* div icon */
551
-
552
- .leaflet-div-icon {
553
- background: #fff;
554
- border: 1px solid #666;
555
- }
556
-
557
-
558
- /* Tooltip */
559
- /* Base styles for the element that has a tooltip */
560
- .leaflet-tooltip {
561
- position: absolute;
562
- padding: 6px;
563
- background-color: #fff;
564
- border: 1px solid #fff;
565
- border-radius: 3px;
566
- color: #222;
567
- white-space: nowrap;
568
- -webkit-user-select: none;
569
- -moz-user-select: none;
570
- -ms-user-select: none;
571
- user-select: none;
572
- pointer-events: none;
573
- box-shadow: 0 1px 3px rgba(0,0,0,0.4);
574
- }
575
- .leaflet-tooltip.leaflet-clickable {
576
- cursor: pointer;
577
- pointer-events: auto;
578
- }
579
- .leaflet-tooltip-top:before,
580
- .leaflet-tooltip-bottom:before,
581
- .leaflet-tooltip-left:before,
582
- .leaflet-tooltip-right:before {
583
- position: absolute;
584
- pointer-events: none;
585
- border: 6px solid transparent;
586
- background: transparent;
587
- content: "";
588
- }
589
-
590
- /* Directions */
591
-
592
- .leaflet-tooltip-bottom {
593
- margin-top: 6px;
594
- }
595
- .leaflet-tooltip-top {
596
- margin-top: -6px;
597
- }
598
- .leaflet-tooltip-bottom:before,
599
- .leaflet-tooltip-top:before {
600
- left: 50%;
601
- margin-left: -6px;
602
- }
603
- .leaflet-tooltip-top:before {
604
- bottom: 0;
605
- margin-bottom: -12px;
606
- border-top-color: #fff;
607
- }
608
- .leaflet-tooltip-bottom:before {
609
- top: 0;
610
- margin-top: -12px;
611
- margin-left: -6px;
612
- border-bottom-color: #fff;
613
- }
614
- .leaflet-tooltip-left {
615
- margin-left: -6px;
616
- }
617
- .leaflet-tooltip-right {
618
- margin-left: 6px;
619
- }
620
- .leaflet-tooltip-left:before,
621
- .leaflet-tooltip-right:before {
622
- top: 50%;
623
- margin-top: -6px;
624
- }
625
- .leaflet-tooltip-left:before {
626
- right: 0;
627
- margin-right: -12px;
628
- border-left-color: #fff;
629
- }
630
- .leaflet-tooltip-right:before {
631
- left: 0;
632
- margin-left: -12px;
633
- border-right-color: #fff;
634
- }
1
+ /* required styles */
2
+
3
+ .leaflet-pane,
4
+ .leaflet-tile,
5
+ .leaflet-marker-icon,
6
+ .leaflet-marker-shadow,
7
+ .leaflet-tile-container,
8
+ .leaflet-pane > svg,
9
+ .leaflet-pane > canvas,
10
+ .leaflet-zoom-box,
11
+ .leaflet-image-layer,
12
+ .leaflet-layer {
13
+ position: absolute;
14
+ left: 0;
15
+ top: 0;
16
+ }
17
+ .leaflet-container {
18
+ overflow: hidden;
19
+ }
20
+ .leaflet-tile,
21
+ .leaflet-marker-icon,
22
+ .leaflet-marker-shadow {
23
+ -webkit-user-select: none;
24
+ -moz-user-select: none;
25
+ user-select: none;
26
+ -webkit-user-drag: none;
27
+ }
28
+ /* Prevents IE11 from highlighting tiles in blue */
29
+ .leaflet-tile::selection {
30
+ background: transparent;
31
+ }
32
+ /* Safari renders non-retina tile on retina better with this, but Chrome is worse */
33
+ .leaflet-safari .leaflet-tile {
34
+ image-rendering: -webkit-optimize-contrast;
35
+ }
36
+ /* hack that prevents hw layers "stretching" when loading new tiles */
37
+ .leaflet-safari .leaflet-tile-container {
38
+ width: 1600px;
39
+ height: 1600px;
40
+ -webkit-transform-origin: 0 0;
41
+ }
42
+ .leaflet-marker-icon,
43
+ .leaflet-marker-shadow {
44
+ display: block;
45
+ }
46
+ /* .leaflet-container svg: reset svg max-width decleration shipped in Joomla! (joomla.org) 3.x */
47
+ /* .leaflet-container img: map is broken in FF if you have max-width: 100% on tiles */
48
+ .leaflet-container .leaflet-overlay-pane svg,
49
+ .leaflet-container .leaflet-marker-pane img,
50
+ .leaflet-container .leaflet-shadow-pane img,
51
+ .leaflet-container .leaflet-tile-pane img,
52
+ .leaflet-container img.leaflet-image-layer,
53
+ .leaflet-container .leaflet-tile {
54
+ max-width: none !important;
55
+ max-height: none !important;
56
+ }
57
+
58
+ .leaflet-container.leaflet-touch-zoom {
59
+ -ms-touch-action: pan-x pan-y;
60
+ touch-action: pan-x pan-y;
61
+ }
62
+ .leaflet-container.leaflet-touch-drag {
63
+ -ms-touch-action: pinch-zoom;
64
+ /* Fallback for FF which doesn't support pinch-zoom */
65
+ touch-action: none;
66
+ touch-action: pinch-zoom;
67
+ }
68
+ .leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
69
+ -ms-touch-action: none;
70
+ touch-action: none;
71
+ }
72
+ .leaflet-container {
73
+ -webkit-tap-highlight-color: transparent;
74
+ }
75
+ .leaflet-container a {
76
+ -webkit-tap-highlight-color: rgba(51, 181, 229, 0.4);
77
+ }
78
+ .leaflet-tile {
79
+ filter: inherit;
80
+ visibility: hidden;
81
+ }
82
+ .leaflet-tile-loaded {
83
+ visibility: inherit;
84
+ }
85
+ .leaflet-zoom-box {
86
+ width: 0;
87
+ height: 0;
88
+ -moz-box-sizing: border-box;
89
+ box-sizing: border-box;
90
+ z-index: 800;
91
+ }
92
+ /* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
93
+ .leaflet-overlay-pane svg {
94
+ -moz-user-select: none;
95
+ }
96
+
97
+ .leaflet-pane { z-index: 400; }
98
+
99
+ .leaflet-tile-pane { z-index: 200; }
100
+ .leaflet-overlay-pane { z-index: 400; }
101
+ .leaflet-shadow-pane { z-index: 500; }
102
+ .leaflet-marker-pane { z-index: 600; }
103
+ .leaflet-tooltip-pane { z-index: 650; }
104
+ .leaflet-popup-pane { z-index: 700; }
105
+
106
+ .leaflet-map-pane canvas { z-index: 100; }
107
+ .leaflet-map-pane svg { z-index: 200; }
108
+
109
+ .leaflet-vml-shape {
110
+ width: 1px;
111
+ height: 1px;
112
+ }
113
+ .lvml {
114
+ behavior: url(#default#VML);
115
+ display: inline-block;
116
+ position: absolute;
117
+ }
118
+
119
+
120
+ /* control positioning */
121
+
122
+ .leaflet-control {
123
+ position: relative;
124
+ z-index: 800;
125
+ pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
126
+ pointer-events: auto;
127
+ }
128
+ .leaflet-top,
129
+ .leaflet-bottom {
130
+ position: absolute;
131
+ z-index: 1000;
132
+ pointer-events: none;
133
+ }
134
+ .leaflet-top {
135
+ top: 0;
136
+ }
137
+ .leaflet-right {
138
+ right: 0;
139
+ }
140
+ .leaflet-bottom {
141
+ bottom: 0;
142
+ }
143
+ .leaflet-left {
144
+ left: 0;
145
+ }
146
+ .leaflet-control {
147
+ float: left;
148
+ clear: both;
149
+ }
150
+ .leaflet-right .leaflet-control {
151
+ float: right;
152
+ }
153
+ .leaflet-top .leaflet-control {
154
+ margin-top: 10px;
155
+ }
156
+ .leaflet-bottom .leaflet-control {
157
+ margin-bottom: 10px;
158
+ }
159
+ .leaflet-left .leaflet-control {
160
+ margin-left: 10px;
161
+ }
162
+ .leaflet-right .leaflet-control {
163
+ margin-right: 10px;
164
+ }
165
+
166
+
167
+ /* zoom and fade animations */
168
+
169
+ .leaflet-fade-anim .leaflet-tile {
170
+ will-change: opacity;
171
+ }
172
+ .leaflet-fade-anim .leaflet-popup {
173
+ opacity: 0;
174
+ -webkit-transition: opacity 0.2s linear;
175
+ -moz-transition: opacity 0.2s linear;
176
+ transition: opacity 0.2s linear;
177
+ }
178
+ .leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
179
+ opacity: 1;
180
+ }
181
+ .leaflet-zoom-animated {
182
+ -webkit-transform-origin: 0 0;
183
+ -ms-transform-origin: 0 0;
184
+ transform-origin: 0 0;
185
+ }
186
+ .leaflet-zoom-anim .leaflet-zoom-animated {
187
+ will-change: transform;
188
+ }
189
+ .leaflet-zoom-anim .leaflet-zoom-animated {
190
+ -webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
191
+ -moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
192
+ transition: transform 0.25s cubic-bezier(0,0,0.25,1);
193
+ }
194
+ .leaflet-zoom-anim .leaflet-tile,
195
+ .leaflet-pan-anim .leaflet-tile {
196
+ -webkit-transition: none;
197
+ -moz-transition: none;
198
+ transition: none;
199
+ }
200
+
201
+ .leaflet-zoom-anim .leaflet-zoom-hide {
202
+ visibility: hidden;
203
+ }
204
+
205
+
206
+ /* cursors */
207
+
208
+ .leaflet-interactive {
209
+ cursor: pointer;
210
+ }
211
+ .leaflet-grab {
212
+ cursor: -webkit-grab;
213
+ cursor: -moz-grab;
214
+ cursor: grab;
215
+ }
216
+ .leaflet-crosshair,
217
+ .leaflet-crosshair .leaflet-interactive {
218
+ cursor: crosshair;
219
+ }
220
+ .leaflet-popup-pane,
221
+ .leaflet-control {
222
+ cursor: auto;
223
+ }
224
+ .leaflet-dragging .leaflet-grab,
225
+ .leaflet-dragging .leaflet-grab .leaflet-interactive,
226
+ .leaflet-dragging .leaflet-marker-draggable {
227
+ cursor: move;
228
+ cursor: -webkit-grabbing;
229
+ cursor: -moz-grabbing;
230
+ cursor: grabbing;
231
+ }
232
+
233
+ /* marker & overlays interactivity */
234
+ .leaflet-marker-icon,
235
+ .leaflet-marker-shadow,
236
+ .leaflet-image-layer,
237
+ .leaflet-pane > svg path,
238
+ .leaflet-tile-container {
239
+ pointer-events: none;
240
+ }
241
+
242
+ .leaflet-marker-icon.leaflet-interactive,
243
+ .leaflet-image-layer.leaflet-interactive,
244
+ .leaflet-pane > svg path.leaflet-interactive,
245
+ svg.leaflet-image-layer.leaflet-interactive path {
246
+ pointer-events: visiblePainted; /* IE 9-10 doesn't have auto */
247
+ pointer-events: auto;
248
+ }
249
+
250
+ /* visual tweaks */
251
+
252
+ .leaflet-container {
253
+ background: #ddd;
254
+ outline: 0;
255
+ }
256
+ .leaflet-container a {
257
+ color: #0078A8;
258
+ }
259
+ .leaflet-container a.leaflet-active {
260
+ outline: 2px solid orange;
261
+ }
262
+ .leaflet-zoom-box {
263
+ border: 2px dotted #38f;
264
+ background: rgba(255,255,255,0.5);
265
+ }
266
+
267
+
268
+ /* general typography */
269
+ .leaflet-container {
270
+ font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
271
+ }
272
+
273
+
274
+ /* general toolbar styles */
275
+
276
+ .leaflet-bar {
277
+ box-shadow: 0 1px 5px rgba(0,0,0,0.65);
278
+ border-radius: 4px;
279
+ }
280
+ .leaflet-bar a,
281
+ .leaflet-bar a:hover {
282
+ background-color: #fff;
283
+ border-bottom: 1px solid #ccc;
284
+ width: 26px;
285
+ height: 26px;
286
+ line-height: 26px;
287
+ display: block;
288
+ text-align: center;
289
+ text-decoration: none;
290
+ color: black;
291
+ }
292
+ .leaflet-bar a,
293
+ .leaflet-control-layers-toggle {
294
+ background-position: 50% 50%;
295
+ background-repeat: no-repeat;
296
+ display: block;
297
+ }
298
+ .leaflet-bar a:hover {
299
+ background-color: #f4f4f4;
300
+ }
301
+ .leaflet-bar a:first-child {
302
+ border-top-left-radius: 4px;
303
+ border-top-right-radius: 4px;
304
+ }
305
+ .leaflet-bar a:last-child {
306
+ border-bottom-left-radius: 4px;
307
+ border-bottom-right-radius: 4px;
308
+ border-bottom: none;
309
+ }
310
+ .leaflet-bar a.leaflet-disabled {
311
+ cursor: default;
312
+ background-color: #f4f4f4;
313
+ color: #bbb;
314
+ }
315
+
316
+ .leaflet-touch .leaflet-bar a {
317
+ width: 30px;
318
+ height: 30px;
319
+ line-height: 30px;
320
+ }
321
+ .leaflet-touch .leaflet-bar a:first-child {
322
+ border-top-left-radius: 2px;
323
+ border-top-right-radius: 2px;
324
+ }
325
+ .leaflet-touch .leaflet-bar a:last-child {
326
+ border-bottom-left-radius: 2px;
327
+ border-bottom-right-radius: 2px;
328
+ }
329
+
330
+ /* zoom control */
331
+
332
+ .leaflet-control-zoom-in,
333
+ .leaflet-control-zoom-out {
334
+ font: bold 18px 'Lucida Console', Monaco, monospace;
335
+ text-indent: 1px;
336
+ }
337
+
338
+ .leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
339
+ font-size: 22px;
340
+ }
341
+
342
+
343
+ /* layers control */
344
+
345
+ .leaflet-control-layers {
346
+ box-shadow: 0 1px 5px rgba(0,0,0,0.4);
347
+ background: #fff;
348
+ border-radius: 5px;
349
+ }
350
+ .leaflet-control-layers-toggle {
351
+ background-image: url(images/layers.png);
352
+ width: 36px;
353
+ height: 36px;
354
+ }
355
+ .leaflet-retina .leaflet-control-layers-toggle {
356
+ background-image: url(images/layers-2x.png);
357
+ background-size: 26px 26px;
358
+ }
359
+ .leaflet-touch .leaflet-control-layers-toggle {
360
+ width: 44px;
361
+ height: 44px;
362
+ }
363
+ .leaflet-control-layers .leaflet-control-layers-list,
364
+ .leaflet-control-layers-expanded .leaflet-control-layers-toggle {
365
+ display: none;
366
+ }
367
+ .leaflet-control-layers-expanded .leaflet-control-layers-list {
368
+ display: block;
369
+ position: relative;
370
+ }
371
+ .leaflet-control-layers-expanded {
372
+ padding: 6px 10px 6px 6px;
373
+ color: #333;
374
+ background: #fff;
375
+ }
376
+ .leaflet-control-layers-scrollbar {
377
+ overflow-y: scroll;
378
+ overflow-x: hidden;
379
+ padding-right: 5px;
380
+ }
381
+ .leaflet-control-layers-selector {
382
+ margin-top: 2px;
383
+ position: relative;
384
+ top: 1px;
385
+ }
386
+ .leaflet-control-layers label {
387
+ display: block;
388
+ }
389
+ .leaflet-control-layers-separator {
390
+ height: 0;
391
+ border-top: 1px solid #ddd;
392
+ margin: 5px -10px 5px -6px;
393
+ }
394
+
395
+ /* Default icon URLs */
396
+ .leaflet-default-icon-path {
397
+ background-image: url(images/marker-icon.png);
398
+ }
399
+
400
+
401
+ /* attribution and scale controls */
402
+
403
+ .leaflet-container .leaflet-control-attribution {
404
+ background: #fff;
405
+ background: rgba(255, 255, 255, 0.7);
406
+ margin: 0;
407
+ }
408
+ .leaflet-control-attribution,
409
+ .leaflet-control-scale-line {
410
+ padding: 0 5px;
411
+ color: #333;
412
+ }
413
+ .leaflet-control-attribution a {
414
+ text-decoration: none;
415
+ }
416
+ .leaflet-control-attribution a:hover {
417
+ text-decoration: underline;
418
+ }
419
+ .leaflet-container .leaflet-control-attribution,
420
+ .leaflet-container .leaflet-control-scale {
421
+ font-size: 11px;
422
+ }
423
+ .leaflet-left .leaflet-control-scale {
424
+ margin-left: 5px;
425
+ }
426
+ .leaflet-bottom .leaflet-control-scale {
427
+ margin-bottom: 5px;
428
+ }
429
+ .leaflet-control-scale-line {
430
+ border: 2px solid #777;
431
+ border-top: none;
432
+ line-height: 1.1;
433
+ padding: 2px 5px 1px;
434
+ font-size: 11px;
435
+ white-space: nowrap;
436
+ overflow: hidden;
437
+ -moz-box-sizing: border-box;
438
+ box-sizing: border-box;
439
+
440
+ background: #fff;
441
+ background: rgba(255, 255, 255, 0.5);
442
+ }
443
+ .leaflet-control-scale-line:not(:first-child) {
444
+ border-top: 2px solid #777;
445
+ border-bottom: none;
446
+ margin-top: -2px;
447
+ }
448
+ .leaflet-control-scale-line:not(:first-child):not(:last-child) {
449
+ border-bottom: 2px solid #777;
450
+ }
451
+
452
+ .leaflet-touch .leaflet-control-attribution,
453
+ .leaflet-touch .leaflet-control-layers,
454
+ .leaflet-touch .leaflet-bar {
455
+ box-shadow: none;
456
+ }
457
+ .leaflet-touch .leaflet-control-layers,
458
+ .leaflet-touch .leaflet-bar {
459
+ border: 2px solid rgba(0,0,0,0.2);
460
+ background-clip: padding-box;
461
+ }
462
+
463
+
464
+ /* popup */
465
+
466
+ .leaflet-popup {
467
+ position: absolute;
468
+ text-align: center;
469
+ margin-bottom: 20px;
470
+ }
471
+ .leaflet-popup-content-wrapper {
472
+ padding: 1px;
473
+ text-align: left;
474
+ border-radius: 12px;
475
+ }
476
+ .leaflet-popup-content {
477
+ margin: 13px 19px;
478
+ line-height: 1.4;
479
+ }
480
+ .leaflet-popup-content p {
481
+ margin: 18px 0;
482
+ }
483
+ .leaflet-popup-tip-container {
484
+ width: 40px;
485
+ height: 20px;
486
+ position: absolute;
487
+ left: 50%;
488
+ margin-left: -20px;
489
+ overflow: hidden;
490
+ pointer-events: none;
491
+ }
492
+ .leaflet-popup-tip {
493
+ width: 17px;
494
+ height: 17px;
495
+ padding: 1px;
496
+
497
+ margin: -10px auto 0;
498
+
499
+ -webkit-transform: rotate(45deg);
500
+ -moz-transform: rotate(45deg);
501
+ -ms-transform: rotate(45deg);
502
+ transform: rotate(45deg);
503
+ }
504
+ .leaflet-popup-content-wrapper,
505
+ .leaflet-popup-tip {
506
+ background: white;
507
+ color: #333;
508
+ box-shadow: 0 3px 14px rgba(0,0,0,0.4);
509
+ }
510
+ .leaflet-container a.leaflet-popup-close-button {
511
+ position: absolute;
512
+ top: 0;
513
+ right: 0;
514
+ padding: 4px 4px 0 0;
515
+ border: none;
516
+ text-align: center;
517
+ width: 18px;
518
+ height: 14px;
519
+ font: 16px/14px Tahoma, Verdana, sans-serif;
520
+ color: #c3c3c3;
521
+ text-decoration: none;
522
+ font-weight: bold;
523
+ background: transparent;
524
+ }
525
+ .leaflet-container a.leaflet-popup-close-button:hover {
526
+ color: #999;
527
+ }
528
+ .leaflet-popup-scrolled {
529
+ overflow: auto;
530
+ border-bottom: 1px solid #ddd;
531
+ border-top: 1px solid #ddd;
532
+ }
533
+
534
+ .leaflet-oldie .leaflet-popup-content-wrapper {
535
+ -ms-zoom: 1;
536
+ }
537
+ .leaflet-oldie .leaflet-popup-tip {
538
+ width: 24px;
539
+ margin: 0 auto;
540
+
541
+ -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
542
+ filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
543
+ }
544
+ .leaflet-oldie .leaflet-popup-tip-container {
545
+ margin-top: -1px;
546
+ }
547
+
548
+ .leaflet-oldie .leaflet-control-zoom,
549
+ .leaflet-oldie .leaflet-control-layers,
550
+ .leaflet-oldie .leaflet-popup-content-wrapper,
551
+ .leaflet-oldie .leaflet-popup-tip {
552
+ border: 1px solid #999;
553
+ }
554
+
555
+
556
+ /* div icon */
557
+
558
+ .leaflet-div-icon {
559
+ background: #fff;
560
+ border: 1px solid #666;
561
+ }
562
+
563
+
564
+ /* Tooltip */
565
+ /* Base styles for the element that has a tooltip */
566
+ .leaflet-tooltip {
567
+ position: absolute;
568
+ padding: 6px;
569
+ background-color: #fff;
570
+ border: 1px solid #fff;
571
+ border-radius: 3px;
572
+ color: #222;
573
+ white-space: nowrap;
574
+ -webkit-user-select: none;
575
+ -moz-user-select: none;
576
+ -ms-user-select: none;
577
+ user-select: none;
578
+ pointer-events: none;
579
+ box-shadow: 0 1px 3px rgba(0,0,0,0.4);
580
+ }
581
+ .leaflet-tooltip.leaflet-clickable {
582
+ cursor: pointer;
583
+ pointer-events: auto;
584
+ }
585
+ .leaflet-tooltip-top:before,
586
+ .leaflet-tooltip-bottom:before,
587
+ .leaflet-tooltip-left:before,
588
+ .leaflet-tooltip-right:before {
589
+ position: absolute;
590
+ pointer-events: none;
591
+ border: 6px solid transparent;
592
+ background: transparent;
593
+ content: "";
594
+ }
595
+
596
+ /* Directions */
597
+
598
+ .leaflet-tooltip-bottom {
599
+ margin-top: 6px;
600
+ }
601
+ .leaflet-tooltip-top {
602
+ margin-top: -6px;
603
+ }
604
+ .leaflet-tooltip-bottom:before,
605
+ .leaflet-tooltip-top:before {
606
+ left: 50%;
607
+ margin-left: -6px;
608
+ }
609
+ .leaflet-tooltip-top:before {
610
+ bottom: 0;
611
+ margin-bottom: -12px;
612
+ border-top-color: #fff;
613
+ }
614
+ .leaflet-tooltip-bottom:before {
615
+ top: 0;
616
+ margin-top: -12px;
617
+ margin-left: -6px;
618
+ border-bottom-color: #fff;
619
+ }
620
+ .leaflet-tooltip-left {
621
+ margin-left: -6px;
622
+ }
623
+ .leaflet-tooltip-right {
624
+ margin-left: 6px;
625
+ }
626
+ .leaflet-tooltip-left:before,
627
+ .leaflet-tooltip-right:before {
628
+ top: 50%;
629
+ margin-top: -6px;
630
+ }
631
+ .leaflet-tooltip-left:before {
632
+ right: 0;
633
+ margin-right: -12px;
634
+ border-left-color: #fff;
635
+ }
636
+ .leaflet-tooltip-right:before {
637
+ left: 0;
638
+ margin-left: -12px;
639
+ border-right-color: #fff;
640
+ }