leaflet-js 0.7.0.4 → 0.7.7

Sign up to get free protection for your applications and to get access to all the features.
Files changed (308) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.rdoc +10 -3
  3. data/Rakefile +3 -3
  4. data/leaflet-js.gemspec +13 -7
  5. data/lib/leaflet-js.rb +2 -10
  6. data/lib/leaflet-js/engine.rb +7 -0
  7. data/lib/leaflet-js/version.rb +3 -0
  8. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/dist/images/spritesheet-2x.png +0 -0
  9. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/dist/images/spritesheet.png +0 -0
  10. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/Control.Draw.js +21 -19
  11. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/Leaflet.draw.js +8 -3
  12. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/Toolbar.js +75 -14
  13. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/Tooltip.js +0 -0
  14. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/copyright.js +0 -0
  15. data/vendor/assets/Leaflet.draw/src/draw/DrawToolbar.js +87 -0
  16. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/draw/handler/Draw.Circle.js +2 -3
  17. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/draw/handler/Draw.Feature.js +4 -4
  18. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/draw/handler/Draw.Marker.js +0 -0
  19. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/draw/handler/Draw.Polygon.js +9 -7
  20. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/draw/handler/Draw.Polyline.js +86 -36
  21. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/draw/handler/Draw.Rectangle.js +19 -1
  22. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/draw/handler/Draw.SimpleShape.js +18 -4
  23. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/edit/EditToolbar.js +34 -43
  24. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/edit/handler/Edit.Circle.js +0 -0
  25. data/vendor/assets/Leaflet.draw/src/edit/handler/Edit.Marker.js +75 -0
  26. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/edit/handler/Edit.Poly.js +16 -2
  27. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/edit/handler/Edit.Rectangle.js +3 -3
  28. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/edit/handler/Edit.SimpleShape.js +13 -3
  29. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/edit/handler/EditToolbar.Delete.js +11 -7
  30. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/edit/handler/EditToolbar.Edit.js +26 -94
  31. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/ext/GeometryUtil.js +3 -3
  32. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/ext/LatLngUtil.js +0 -0
  33. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/ext/LineUtil.Intersect.js +0 -0
  34. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/ext/Polygon.Intersect.js +0 -0
  35. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/ext/Polyline.Intersect.js +3 -3
  36. data/{lib/leaflet.draw → vendor/assets/Leaflet.draw}/src/images/spritesheet.svg +0 -0
  37. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/BaseMarkerMethods.js +0 -0
  38. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/CircleMarker.Label.js +0 -0
  39. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/FeatureGroup.Label.js +0 -0
  40. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/Label.js +5 -2
  41. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/Leaflet.label.js +1 -1
  42. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/Map.Label.js +0 -0
  43. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/Marker.Label.js +0 -0
  44. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/Path.Label.js +0 -0
  45. data/{lib/leaflet.label → vendor/assets/Leaflet.label}/src/copyright.js +0 -0
  46. data/{lib/leaflet.draw/examples/libs → vendor/assets/Leaflet/dist}/images/layers-2x.png +0 -0
  47. data/{lib/leaflet.draw/examples/libs → vendor/assets/Leaflet/dist}/images/layers.png +0 -0
  48. data/{lib/leaflet.draw/examples/libs → vendor/assets/Leaflet/dist}/images/marker-icon-2x.png +0 -0
  49. data/{lib/leaflet.draw/examples/libs → vendor/assets/Leaflet/dist}/images/marker-icon.png +0 -0
  50. data/{lib/leaflet.draw/examples/libs → vendor/assets/Leaflet/dist}/images/marker-shadow.png +0 -0
  51. data/{lib/leaflet → vendor/assets/Leaflet}/src/Leaflet.js +1 -1
  52. data/{lib/leaflet → vendor/assets/Leaflet}/src/control/Control.Attribution.js +0 -0
  53. data/{lib/leaflet → vendor/assets/Leaflet}/src/control/Control.Layers.js +2 -2
  54. data/{lib/leaflet → vendor/assets/Leaflet}/src/control/Control.Scale.js +0 -0
  55. data/{lib/leaflet → vendor/assets/Leaflet}/src/control/Control.Zoom.js +0 -0
  56. data/{lib/leaflet → vendor/assets/Leaflet}/src/control/Control.js +0 -0
  57. data/{lib/leaflet → vendor/assets/Leaflet}/src/copyright.js +0 -0
  58. data/{lib/leaflet → vendor/assets/Leaflet}/src/core/Browser.js +5 -36
  59. data/{lib/leaflet → vendor/assets/Leaflet}/src/core/Class.js +0 -0
  60. data/{lib/leaflet → vendor/assets/Leaflet}/src/core/Events.js +0 -0
  61. data/{lib/leaflet → vendor/assets/Leaflet}/src/core/Handler.js +0 -0
  62. data/{lib/leaflet → vendor/assets/Leaflet}/src/core/Util.js +9 -14
  63. data/{lib/leaflet → vendor/assets/Leaflet}/src/dom/DomEvent.DoubleTap.js +0 -0
  64. data/{lib/leaflet → vendor/assets/Leaflet}/src/dom/DomEvent.Pointer.js +3 -2
  65. data/{lib/leaflet → vendor/assets/Leaflet}/src/dom/DomEvent.js +7 -18
  66. data/{lib/leaflet → vendor/assets/Leaflet}/src/dom/DomUtil.js +0 -5
  67. data/{lib/leaflet → vendor/assets/Leaflet}/src/dom/Draggable.js +10 -4
  68. data/{lib/leaflet → vendor/assets/Leaflet}/src/dom/PosAnimation.Timer.js +0 -0
  69. data/{lib/leaflet → vendor/assets/Leaflet}/src/dom/PosAnimation.js +0 -0
  70. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/LatLng.js +0 -0
  71. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/LatLngBounds.js +0 -0
  72. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/crs/CRS.EPSG3395.js +0 -0
  73. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/crs/CRS.EPSG3857.js +0 -0
  74. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/crs/CRS.EPSG4326.js +0 -0
  75. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/crs/CRS.Simple.js +0 -0
  76. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/crs/CRS.js +0 -0
  77. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/projection/Projection.LonLat.js +0 -0
  78. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/projection/Projection.Mercator.js +0 -0
  79. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/projection/Projection.SphericalMercator.js +0 -0
  80. data/{lib/leaflet → vendor/assets/Leaflet}/src/geo/projection/Projection.js +0 -0
  81. data/{lib/leaflet → vendor/assets/Leaflet}/src/geometry/Bounds.js +0 -0
  82. data/{lib/leaflet → vendor/assets/Leaflet}/src/geometry/LineUtil.js +1 -1
  83. data/{lib/leaflet → vendor/assets/Leaflet}/src/geometry/Point.js +0 -0
  84. data/{lib/leaflet → vendor/assets/Leaflet}/src/geometry/PolyUtil.js +0 -0
  85. data/{lib/leaflet → vendor/assets/Leaflet}/src/geometry/Transformation.js +0 -0
  86. data/{lib/leaflet → vendor/assets/Leaflet}/src/images/layers.svg +0 -0
  87. data/{lib/leaflet → vendor/assets/Leaflet}/src/images/marker.svg +0 -0
  88. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/FeatureGroup.js +5 -3
  89. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/GeoJSON.js +0 -0
  90. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/ImageOverlay.js +0 -0
  91. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/LayerGroup.js +0 -0
  92. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/Popup.js +0 -0
  93. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/marker/DivIcon.js +0 -0
  94. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/marker/Icon.Default.js +0 -0
  95. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/marker/Icon.js +0 -0
  96. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/marker/Marker.Drag.js +0 -0
  97. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/marker/Marker.Popup.js +1 -0
  98. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/marker/Marker.js +2 -4
  99. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/tile/TileLayer.Anim.js +5 -0
  100. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/tile/TileLayer.Canvas.js +0 -0
  101. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/tile/TileLayer.WMS.js +0 -0
  102. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/tile/TileLayer.js +3 -5
  103. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Circle.js +0 -0
  104. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/CircleMarker.js +1 -0
  105. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/MultiPoly.js +0 -0
  106. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Path.Popup.js +0 -0
  107. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Path.SVG.js +1 -1
  108. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Path.VML.js +0 -0
  109. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Path.js +0 -0
  110. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Polygon.js +0 -0
  111. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Polyline.js +0 -0
  112. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/Rectangle.js +0 -0
  113. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/canvas/Circle.Canvas.js +0 -0
  114. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/canvas/CircleMarker.Canvas.js +0 -0
  115. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/canvas/Path.Canvas.js +13 -6
  116. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/canvas/Polygon.Canvas.js +0 -0
  117. data/{lib/leaflet → vendor/assets/Leaflet}/src/layer/vector/canvas/Polyline.Canvas.js +0 -0
  118. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/Map.js +9 -8
  119. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/anim/Map.PanAnimation.js +0 -0
  120. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/anim/Map.ZoomAnimation.js +25 -16
  121. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/ext/Map.Geolocation.js +0 -0
  122. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/handler/Map.BoxZoom.js +0 -0
  123. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/handler/Map.DoubleClickZoom.js +0 -0
  124. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/handler/Map.Drag.js +0 -0
  125. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/handler/Map.Keyboard.js +0 -0
  126. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/handler/Map.ScrollWheelZoom.js +0 -0
  127. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/handler/Map.Tap.js +0 -0
  128. data/{lib/leaflet → vendor/assets/Leaflet}/src/map/handler/Map.TouchZoom.js +1 -1
  129. data/vendor/assets/{stylesheets/leaflet-js.css → leaflet-js.css} +0 -0
  130. data/vendor/assets/{javascripts/leaflet-js.js → leaflet-js.js} +2 -2
  131. data/{lib/leaflet.label/libs/leaflet/leaflet.css → vendor/assets/leaflet.css.erb} +2 -2
  132. data/vendor/assets/{stylesheets/leaflet.draw.css.erb → leaflet.draw.css.erb} +2 -2
  133. data/{lib/leaflet.draw/dist → vendor/assets}/leaflet.draw.ie.css +0 -0
  134. data/vendor/assets/leaflet.draw.js +38 -0
  135. data/vendor/assets/leaflet.js +155 -0
  136. data/{lib/leaflet.label/dist → vendor/assets}/leaflet.label.css +0 -0
  137. data/vendor/assets/leaflet.label.js +11 -0
  138. metadata +139 -302
  139. data/lib/leaflet.draw/BREAKINGCHANGES.md +0 -54
  140. data/lib/leaflet.draw/CHANGELOG.md +0 -118
  141. data/lib/leaflet.draw/Jakefile.js +0 -26
  142. data/lib/leaflet.draw/MIT-LICENCE.txt +0 -20
  143. data/lib/leaflet.draw/README.md +0 -411
  144. data/lib/leaflet.draw/TODO.md +0 -62
  145. data/lib/leaflet.draw/build/build.html +0 -243
  146. data/lib/leaflet.draw/build/build.js +0 -189
  147. data/lib/leaflet.draw/build/deps.js +0 -76
  148. data/lib/leaflet.draw/build/hintrc.js +0 -47
  149. data/lib/leaflet.draw/build/leaflet.draw-include.js +0 -42
  150. data/lib/leaflet.draw/dist/leaflet.draw-src.js +0 -2782
  151. data/lib/leaflet.draw/dist/leaflet.draw.css +0 -244
  152. data/lib/leaflet.draw/dist/leaflet.draw.js +0 -10
  153. data/lib/leaflet.draw/examples/basic.html +0 -113
  154. data/lib/leaflet.draw/examples/edithandlers.html +0 -67
  155. data/lib/leaflet.draw/examples/libs/images/marker-icon@2x.png +0 -0
  156. data/lib/leaflet.draw/examples/libs/leaflet-src.js +0 -9108
  157. data/lib/leaflet.draw/examples/libs/leaflet.css +0 -478
  158. data/lib/leaflet.draw/package.json +0 -37
  159. data/lib/leaflet.draw/spec/after.js +0 -2
  160. data/lib/leaflet.draw/spec/before.js +0 -3
  161. data/lib/leaflet.draw/spec/expect.js +0 -1253
  162. data/lib/leaflet.draw/spec/happen.js +0 -93
  163. data/lib/leaflet.draw/spec/index.html +0 -36
  164. data/lib/leaflet.draw/spec/karma.conf.js +0 -69
  165. data/lib/leaflet.draw/spec/sinon.js +0 -4223
  166. data/lib/leaflet.draw/spec/suites/DrawControlSpec.js +0 -15
  167. data/lib/leaflet.draw/spec/suites/GeometryUtilSpec.js +0 -25
  168. data/lib/leaflet.draw/spec/suites/LatLngUtilSpec.js +0 -9
  169. data/lib/leaflet.draw/spec/suites/SpecHelper.js +0 -26
  170. data/lib/leaflet.draw/src/draw/DrawToolbar.js +0 -111
  171. data/lib/leaflet.label/CHANGELOG.md +0 -67
  172. data/lib/leaflet.label/Jakefile.js +0 -21
  173. data/lib/leaflet.label/MIT-LICENCE.txt +0 -20
  174. data/lib/leaflet.label/README.md +0 -103
  175. data/lib/leaflet.label/build/build.js +0 -155
  176. data/lib/leaflet.label/build/deps.js +0 -26
  177. data/lib/leaflet.label/build/hint.js +0 -30
  178. data/lib/leaflet.label/build/hintrc.js +0 -51
  179. data/lib/leaflet.label/dist/images/death.png +0 -0
  180. data/lib/leaflet.label/dist/leaflet.label-src.js +0 -542
  181. data/lib/leaflet.label/dist/leaflet.label.js +0 -9
  182. data/lib/leaflet.label/example/label.html +0 -85
  183. data/lib/leaflet.label/libs/leaflet/images/layers-2x.png +0 -0
  184. data/lib/leaflet.label/libs/leaflet/images/layers.png +0 -0
  185. data/lib/leaflet.label/libs/leaflet/images/marker-icon-2x.png +0 -0
  186. data/lib/leaflet.label/libs/leaflet/images/marker-icon.png +0 -0
  187. data/lib/leaflet.label/libs/leaflet/images/marker-icon@2x.png +0 -0
  188. data/lib/leaflet.label/libs/leaflet/images/marker-shadow.png +0 -0
  189. data/lib/leaflet.label/libs/leaflet/leaflet-src.js +0 -9108
  190. data/lib/leaflet.label/libs/leaflet/leaflet.js +0 -9
  191. data/lib/leaflet.label/package.json +0 -19
  192. data/lib/leaflet/CHANGELOG.md +0 -905
  193. data/lib/leaflet/CONTRIBUTING.md +0 -155
  194. data/lib/leaflet/FAQ.md +0 -138
  195. data/lib/leaflet/Jakefile.js +0 -46
  196. data/lib/leaflet/LICENSE +0 -23
  197. data/lib/leaflet/PLUGIN-GUIDE.md +0 -127
  198. data/lib/leaflet/README.md +0 -34
  199. data/lib/leaflet/build/build.html +0 -227
  200. data/lib/leaflet/build/build.js +0 -163
  201. data/lib/leaflet/build/deps.js +0 -259
  202. data/lib/leaflet/build/hintrc.js +0 -39
  203. data/lib/leaflet/debug/css/mobile.css +0 -6
  204. data/lib/leaflet/debug/css/screen.css +0 -5
  205. data/lib/leaflet/debug/hacks/jitter.html +0 -42
  206. data/lib/leaflet/debug/leaflet-include.js +0 -59
  207. data/lib/leaflet/debug/map/canvas.html +0 -46
  208. data/lib/leaflet/debug/map/controls.html +0 -49
  209. data/lib/leaflet/debug/map/geolocation.html +0 -34
  210. data/lib/leaflet/debug/map/iframe.html +0 -11
  211. data/lib/leaflet/debug/map/image-overlay.html +0 -43
  212. data/lib/leaflet/debug/map/map-mobile.html +0 -34
  213. data/lib/leaflet/debug/map/map.html +0 -59
  214. data/lib/leaflet/debug/map/max-bounds.html +0 -38
  215. data/lib/leaflet/debug/map/opacity.html +0 -223
  216. data/lib/leaflet/debug/map/scroll.html +0 -41
  217. data/lib/leaflet/debug/map/simple-proj.html +0 -44
  218. data/lib/leaflet/debug/map/wms-marble.html +0 -30
  219. data/lib/leaflet/debug/map/wms.html +0 -40
  220. data/lib/leaflet/debug/map/zoomlevels.html +0 -45
  221. data/lib/leaflet/debug/tests/add_remove_layers.html +0 -87
  222. data/lib/leaflet/debug/tests/bringtoback.html +0 -37
  223. data/lib/leaflet/debug/tests/canvasloop.html +0 -47
  224. data/lib/leaflet/debug/tests/click_on_canvas.html +0 -58
  225. data/lib/leaflet/debug/tests/click_on_canvas_broken.html +0 -49
  226. data/lib/leaflet/debug/tests/dragging_and_copyworldjump.html +0 -61
  227. data/lib/leaflet/debug/tests/opacity.html +0 -56
  228. data/lib/leaflet/debug/tests/popupcontextmenuclicks.html +0 -59
  229. data/lib/leaflet/debug/tests/remove_while_dragging.html +0 -28
  230. data/lib/leaflet/debug/tests/removetilewhilepan.html +0 -41
  231. data/lib/leaflet/debug/tests/reuse_popups.html +0 -40
  232. data/lib/leaflet/debug/tests/rtl.html +0 -42
  233. data/lib/leaflet/debug/tests/rtl2.html +0 -27
  234. data/lib/leaflet/debug/tests/set_icon_reuse_dom.html +0 -43
  235. data/lib/leaflet/debug/tests/svg_clicks.html +0 -54
  236. data/lib/leaflet/debug/vector/bounds-extend.html +0 -88
  237. data/lib/leaflet/debug/vector/feature-group-bounds.html +0 -90
  238. data/lib/leaflet/debug/vector/geojson-sample.js +0 -53
  239. data/lib/leaflet/debug/vector/geojson.html +0 -173
  240. data/lib/leaflet/debug/vector/rectangle.html +0 -53
  241. data/lib/leaflet/debug/vector/route.js +0 -1
  242. data/lib/leaflet/debug/vector/touchzoomemu.html +0 -194
  243. data/lib/leaflet/debug/vector/us-states.js +0 -54
  244. data/lib/leaflet/debug/vector/vector-bounds.html +0 -69
  245. data/lib/leaflet/debug/vector/vector-canvas.html +0 -92
  246. data/lib/leaflet/debug/vector/vector-mobile.html +0 -38
  247. data/lib/leaflet/debug/vector/vector-simple.html +0 -48
  248. data/lib/leaflet/debug/vector/vector.html +0 -37
  249. data/lib/leaflet/dist/images/layers-2x.png +0 -0
  250. data/lib/leaflet/dist/images/layers.png +0 -0
  251. data/lib/leaflet/dist/images/marker-icon-2x.png +0 -0
  252. data/lib/leaflet/dist/images/marker-icon.png +0 -0
  253. data/lib/leaflet/dist/images/marker-shadow.png +0 -0
  254. data/lib/leaflet/dist/leaflet.css +0 -478
  255. data/lib/leaflet/package.json +0 -27
  256. data/lib/leaflet/spec/after.js +0 -2
  257. data/lib/leaflet/spec/before.js +0 -3
  258. data/lib/leaflet/spec/expect.js +0 -1253
  259. data/lib/leaflet/spec/index.html +0 -86
  260. data/lib/leaflet/spec/karma.conf.js +0 -65
  261. data/lib/leaflet/spec/sinon.js +0 -4223
  262. data/lib/leaflet/spec/spec.hintrc.js +0 -25
  263. data/lib/leaflet/spec/suites/LeafletSpec.js +0 -13
  264. data/lib/leaflet/spec/suites/SpecHelper.js +0 -42
  265. data/lib/leaflet/spec/suites/control/Control.AttributionSpec.js +0 -68
  266. data/lib/leaflet/spec/suites/control/Control.LayersSpec.js +0 -67
  267. data/lib/leaflet/spec/suites/control/Control.ScaleSpec.js +0 -6
  268. data/lib/leaflet/spec/suites/core/ClassSpec.js +0 -156
  269. data/lib/leaflet/spec/suites/core/EventsSpec.js +0 -392
  270. data/lib/leaflet/spec/suites/core/UtilSpec.js +0 -256
  271. data/lib/leaflet/spec/suites/dom/DomEventSpec.js +0 -102
  272. data/lib/leaflet/spec/suites/dom/DomUtilSpec.js +0 -82
  273. data/lib/leaflet/spec/suites/dom/PosAnimationSpec.js +0 -27
  274. data/lib/leaflet/spec/suites/geo/CRSSpec.js +0 -47
  275. data/lib/leaflet/spec/suites/geo/LatLngBoundsSpec.js +0 -144
  276. data/lib/leaflet/spec/suites/geo/LatLngSpec.js +0 -132
  277. data/lib/leaflet/spec/suites/geo/ProjectionSpec.js +0 -48
  278. data/lib/leaflet/spec/suites/geometry/BoundsSpec.js +0 -87
  279. data/lib/leaflet/spec/suites/geometry/LineUtilSpec.js +0 -75
  280. data/lib/leaflet/spec/suites/geometry/PointSpec.js +0 -104
  281. data/lib/leaflet/spec/suites/geometry/PolyUtilSpec.js +0 -27
  282. data/lib/leaflet/spec/suites/geometry/TransformationSpec.js +0 -31
  283. data/lib/leaflet/spec/suites/layer/FeatureGroupSpec.js +0 -86
  284. data/lib/leaflet/spec/suites/layer/GeoJSONSpec.js +0 -282
  285. data/lib/leaflet/spec/suites/layer/LayerGroupSpec.js +0 -58
  286. data/lib/leaflet/spec/suites/layer/PopupSpec.js +0 -119
  287. data/lib/leaflet/spec/suites/layer/TileLayerSpec.js +0 -88
  288. data/lib/leaflet/spec/suites/layer/marker/MarkerSpec.js +0 -94
  289. data/lib/leaflet/spec/suites/layer/vector/CircleMarkerSpec.js +0 -53
  290. data/lib/leaflet/spec/suites/layer/vector/CircleSpec.js +0 -17
  291. data/lib/leaflet/spec/suites/layer/vector/PolygonSpec.js +0 -91
  292. data/lib/leaflet/spec/suites/layer/vector/PolylineGeometrySpec.js +0 -35
  293. data/lib/leaflet/spec/suites/layer/vector/PolylineSpec.js +0 -55
  294. data/lib/leaflet/spec/suites/map/MapSpec.js +0 -536
  295. data/lib/leaflet/spec/suites/map/handler/Map.DragSpec.js +0 -38
  296. data/vendor/assets/images/layers-2x.png +0 -0
  297. data/vendor/assets/images/layers.png +0 -0
  298. data/vendor/assets/images/marker-icon-2x.png +0 -0
  299. data/vendor/assets/images/marker-icon.png +0 -0
  300. data/vendor/assets/images/marker-shadow.png +0 -0
  301. data/vendor/assets/images/spritesheet-2x.png +0 -0
  302. data/vendor/assets/images/spritesheet.png +0 -0
  303. data/vendor/assets/javascripts/leaflet.draw.js +0 -37
  304. data/vendor/assets/javascripts/leaflet.js +0 -147
  305. data/vendor/assets/javascripts/leaflet.label.js +0 -11
  306. data/vendor/assets/stylesheets/leaflet.css.erb +0 -478
  307. data/vendor/assets/stylesheets/leaflet.draw.ie.css +0 -49
  308. data/vendor/assets/stylesheets/leaflet.label.css +0 -52
@@ -1,38 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Leaflet debug page</title>
5
-
6
- <meta name="viewport" content="initial-scale=1.0, user-scalable=no" />
7
-
8
- <link rel="stylesheet" href="../../dist/leaflet.css" />
9
-
10
- <link rel="stylesheet" href="../css/mobile.css" />
11
-
12
- <script type="text/javascript" src="../../build/deps.js"></script>
13
- <script src="../leaflet-include.js"></script>
14
- </head>
15
- <body>
16
- <div id="map"></div>
17
-
18
- <script src="route.js"></script>
19
- <script>
20
- var cloudmadeUrl = 'http://{s}.tile.cloudmade.com/d4fc77ea4a63471cab2423e66626cbb6/997/256/{z}/{x}/{y}.png',
21
- cloudmade = new L.TileLayer(cloudmadeUrl, {maxZoom: 18});
22
-
23
- for (var i = 0, latlngs = [], len = route.length; i < len; i++) {
24
- latlngs.push(new L.LatLng(route[i][0], route[i][1]));
25
- }
26
- var path = new L.Polyline(latlngs, {smoothFactor: 1});
27
-
28
- var map = new L.Map('map', {layers: [cloudmade]});
29
-
30
- map.fitBounds(new L.LatLngBounds(latlngs));
31
-
32
- map.addLayer(new L.Marker(latlngs[0]));
33
- map.addLayer(new L.Marker(latlngs[latlngs.length - 1]));
34
-
35
- map.addLayer(path);
36
- </script>
37
- </body>
38
- </html>
@@ -1,48 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Leaflet debug page</title>
5
-
6
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no">
7
-
8
- <link rel="stylesheet" href="../../dist/leaflet.css" />
9
-
10
- <link rel="stylesheet" href="../css/mobile.css" />
11
-
12
- <script type="text/javascript" src="../../build/deps.js"></script>
13
- <script src="../leaflet-include.js"></script>
14
- </head>
15
- <body>
16
- <div id="map"></div>
17
-
18
- <script>
19
- var map = L.map('map');
20
-
21
- var marker = L.marker([51.5, -0.09])
22
- .bindPopup("<b>Hello world!</b><br />I am a popup.")
23
- .addTo(map);
24
- //.openPopup();
25
-
26
- var circle = L.circle([51.508, -0.11], 500, {color: '#f03', opacity: 0.7})
27
- .bindPopup("I am a circle.")
28
- .addTo(map);
29
-
30
- var polygon = L.polygon([
31
- [51.509, -0.08],
32
- [51.503, -0.06],
33
- [51.51, -0.047]])
34
- .bindPopup("I am a polygon.")
35
- .addTo(map);
36
-
37
- map.setView([51.505, -0.09], 13);
38
-
39
- var cloudmade = L.tileLayer('http://{s}.tile.cloudmade.com/{key}/{styleId}/256/{z}/{x}/{y}.png', {
40
- attribution: 'Map data &copy; 2011 OpenStreetMap contributors, Imagery &copy; 2011 CloudMade',
41
- maxZoom: 18,
42
- key: 'd4fc77ea4a63471cab2423e66626cbb6',
43
- styleId: 997
44
- }).addTo(map);
45
-
46
- </script>
47
- </body>
48
- </html>
@@ -1,37 +0,0 @@
1
- <!DOCTYPE html>
2
- <html>
3
- <head>
4
- <title>Leaflet debug page</title>
5
-
6
- <link rel="stylesheet" href="../../dist/leaflet.css" />
7
-
8
- <link rel="stylesheet" href="../css/screen.css" />
9
- <script type="text/javascript" src="../../build/deps.js"></script>
10
- <script src="../leaflet-include.js"></script>
11
- </head>
12
- <body>
13
- <div id="map" style="width: 800px; height: 600px; border: 1px solid #ccc"></div>
14
-
15
- <script src="route.js"></script>
16
- <script>
17
- var cloudmadeUrl = 'http://{s}.tile.cloudmade.com/d4fc77ea4a63471cab2423e66626cbb6/997/256/{z}/{x}/{y}.png',
18
- cloudmade = new L.TileLayer(cloudmadeUrl, {maxZoom: 18});
19
-
20
- for (var i = 0, latlngs = [], len = route.length; i < len; i++) {
21
- latlngs.push(new L.LatLng(route[i][0], route[i][1]));
22
- }
23
- var path = new L.Polyline(latlngs);
24
-
25
- var map = new L.Map('map', {layers: [cloudmade]});
26
-
27
- map.fitBounds(new L.LatLngBounds(latlngs));
28
-
29
- map.addLayer(new L.Marker(latlngs[0]));
30
- map.addLayer(new L.Marker(latlngs[len - 1]));
31
-
32
- map.addLayer(path);
33
-
34
- path.bindPopup("Hello world");
35
- </script>
36
- </body>
37
- </html>
@@ -1,478 +0,0 @@
1
- /* required styles */
2
-
3
- .leaflet-map-pane,
4
- .leaflet-tile,
5
- .leaflet-marker-icon,
6
- .leaflet-marker-shadow,
7
- .leaflet-tile-pane,
8
- .leaflet-tile-container,
9
- .leaflet-overlay-pane,
10
- .leaflet-shadow-pane,
11
- .leaflet-marker-pane,
12
- .leaflet-popup-pane,
13
- .leaflet-overlay-pane svg,
14
- .leaflet-zoom-box,
15
- .leaflet-image-layer,
16
- .leaflet-layer {
17
- position: absolute;
18
- left: 0;
19
- top: 0;
20
- }
21
- .leaflet-container {
22
- overflow: hidden;
23
- -ms-touch-action: none;
24
- }
25
- .leaflet-tile,
26
- .leaflet-marker-icon,
27
- .leaflet-marker-shadow {
28
- -webkit-user-select: none;
29
- -moz-user-select: none;
30
- user-select: none;
31
- -webkit-user-drag: none;
32
- }
33
- .leaflet-marker-icon,
34
- .leaflet-marker-shadow {
35
- display: block;
36
- }
37
- /* map is broken in FF if you have max-width: 100% on tiles */
38
- .leaflet-container img {
39
- max-width: none !important;
40
- }
41
- /* stupid Android 2 doesn't understand "max-width: none" properly */
42
- .leaflet-container img.leaflet-image-layer {
43
- max-width: 15000px !important;
44
- }
45
- .leaflet-tile {
46
- filter: inherit;
47
- visibility: hidden;
48
- }
49
- .leaflet-tile-loaded {
50
- visibility: inherit;
51
- }
52
- .leaflet-zoom-box {
53
- width: 0;
54
- height: 0;
55
- }
56
- /* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
57
- .leaflet-overlay-pane svg {
58
- -moz-user-select: none;
59
- }
60
-
61
- .leaflet-tile-pane { z-index: 2; }
62
- .leaflet-objects-pane { z-index: 3; }
63
- .leaflet-overlay-pane { z-index: 4; }
64
- .leaflet-shadow-pane { z-index: 5; }
65
- .leaflet-marker-pane { z-index: 6; }
66
- .leaflet-popup-pane { z-index: 7; }
67
-
68
- .leaflet-vml-shape {
69
- width: 1px;
70
- height: 1px;
71
- }
72
- .lvml {
73
- behavior: url(#default#VML);
74
- display: inline-block;
75
- position: absolute;
76
- }
77
-
78
-
79
- /* control positioning */
80
-
81
- .leaflet-control {
82
- position: relative;
83
- z-index: 7;
84
- pointer-events: auto;
85
- }
86
- .leaflet-top,
87
- .leaflet-bottom {
88
- position: absolute;
89
- z-index: 1000;
90
- pointer-events: none;
91
- }
92
- .leaflet-top {
93
- top: 0;
94
- }
95
- .leaflet-right {
96
- right: 0;
97
- }
98
- .leaflet-bottom {
99
- bottom: 0;
100
- }
101
- .leaflet-left {
102
- left: 0;
103
- }
104
- .leaflet-control {
105
- float: left;
106
- clear: both;
107
- }
108
- .leaflet-right .leaflet-control {
109
- float: right;
110
- }
111
- .leaflet-top .leaflet-control {
112
- margin-top: 10px;
113
- }
114
- .leaflet-bottom .leaflet-control {
115
- margin-bottom: 10px;
116
- }
117
- .leaflet-left .leaflet-control {
118
- margin-left: 10px;
119
- }
120
- .leaflet-right .leaflet-control {
121
- margin-right: 10px;
122
- }
123
-
124
-
125
- /* zoom and fade animations */
126
-
127
- .leaflet-fade-anim .leaflet-tile,
128
- .leaflet-fade-anim .leaflet-popup {
129
- opacity: 0;
130
- -webkit-transition: opacity 0.2s linear;
131
- -moz-transition: opacity 0.2s linear;
132
- -o-transition: opacity 0.2s linear;
133
- transition: opacity 0.2s linear;
134
- }
135
- .leaflet-fade-anim .leaflet-tile-loaded,
136
- .leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
137
- opacity: 1;
138
- }
139
-
140
- .leaflet-zoom-anim .leaflet-zoom-animated {
141
- -webkit-transition: -webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
142
- -moz-transition: -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
143
- -o-transition: -o-transform 0.25s cubic-bezier(0,0,0.25,1);
144
- transition: transform 0.25s cubic-bezier(0,0,0.25,1);
145
- }
146
- .leaflet-zoom-anim .leaflet-tile,
147
- .leaflet-pan-anim .leaflet-tile,
148
- .leaflet-touching .leaflet-zoom-animated {
149
- -webkit-transition: none;
150
- -moz-transition: none;
151
- -o-transition: none;
152
- transition: none;
153
- }
154
-
155
- .leaflet-zoom-anim .leaflet-zoom-hide {
156
- visibility: hidden;
157
- }
158
-
159
-
160
- /* cursors */
161
-
162
- .leaflet-clickable {
163
- cursor: pointer;
164
- }
165
- .leaflet-container {
166
- cursor: -webkit-grab;
167
- cursor: -moz-grab;
168
- }
169
- .leaflet-popup-pane,
170
- .leaflet-control {
171
- cursor: auto;
172
- }
173
- .leaflet-dragging .leaflet-container,
174
- .leaflet-dragging .leaflet-clickable {
175
- cursor: move;
176
- cursor: -webkit-grabbing;
177
- cursor: -moz-grabbing;
178
- }
179
-
180
-
181
- /* visual tweaks */
182
-
183
- .leaflet-container {
184
- background: #ddd;
185
- outline: 0;
186
- }
187
- .leaflet-container a {
188
- color: #0078A8;
189
- }
190
- .leaflet-container a.leaflet-active {
191
- outline: 2px solid orange;
192
- }
193
- .leaflet-zoom-box {
194
- border: 2px dotted #38f;
195
- background: rgba(255,255,255,0.5);
196
- }
197
-
198
-
199
- /* general typography */
200
- .leaflet-container {
201
- font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
202
- }
203
-
204
-
205
- /* general toolbar styles */
206
-
207
- .leaflet-bar {
208
- box-shadow: 0 1px 5px rgba(0,0,0,0.65);
209
- border-radius: 4px;
210
- }
211
- .leaflet-bar a,
212
- .leaflet-bar a:hover {
213
- background-color: #fff;
214
- border-bottom: 1px solid #ccc;
215
- width: 26px;
216
- height: 26px;
217
- line-height: 26px;
218
- display: block;
219
- text-align: center;
220
- text-decoration: none;
221
- color: black;
222
- }
223
- .leaflet-bar a,
224
- .leaflet-control-layers-toggle {
225
- background-position: 50% 50%;
226
- background-repeat: no-repeat;
227
- display: block;
228
- }
229
- .leaflet-bar a:hover {
230
- background-color: #f4f4f4;
231
- }
232
- .leaflet-bar a:first-child {
233
- border-top-left-radius: 4px;
234
- border-top-right-radius: 4px;
235
- }
236
- .leaflet-bar a:last-child {
237
- border-bottom-left-radius: 4px;
238
- border-bottom-right-radius: 4px;
239
- border-bottom: none;
240
- }
241
- .leaflet-bar a.leaflet-disabled {
242
- cursor: default;
243
- background-color: #f4f4f4;
244
- color: #bbb;
245
- }
246
-
247
- .leaflet-touch .leaflet-bar a {
248
- width: 30px;
249
- height: 30px;
250
- line-height: 30px;
251
- }
252
-
253
-
254
- /* zoom control */
255
-
256
- .leaflet-control-zoom-in,
257
- .leaflet-control-zoom-out {
258
- font: bold 18px 'Lucida Console', Monaco, monospace;
259
- text-indent: 1px;
260
- }
261
- .leaflet-control-zoom-out {
262
- font-size: 20px;
263
- }
264
-
265
- .leaflet-touch .leaflet-control-zoom-in {
266
- font-size: 22px;
267
- }
268
- .leaflet-touch .leaflet-control-zoom-out {
269
- font-size: 24px;
270
- }
271
-
272
-
273
- /* layers control */
274
-
275
- .leaflet-control-layers {
276
- box-shadow: 0 1px 5px rgba(0,0,0,0.4);
277
- background: #fff;
278
- border-radius: 5px;
279
- }
280
- .leaflet-control-layers-toggle {
281
- background-image: url(images/layers.png);
282
- width: 36px;
283
- height: 36px;
284
- }
285
- .leaflet-retina .leaflet-control-layers-toggle {
286
- background-image: url(images/layers-2x.png);
287
- background-size: 26px 26px;
288
- }
289
- .leaflet-touch .leaflet-control-layers-toggle {
290
- width: 44px;
291
- height: 44px;
292
- }
293
- .leaflet-control-layers .leaflet-control-layers-list,
294
- .leaflet-control-layers-expanded .leaflet-control-layers-toggle {
295
- display: none;
296
- }
297
- .leaflet-control-layers-expanded .leaflet-control-layers-list {
298
- display: block;
299
- position: relative;
300
- }
301
- .leaflet-control-layers-expanded {
302
- padding: 6px 10px 6px 6px;
303
- color: #333;
304
- background: #fff;
305
- }
306
- .leaflet-control-layers-selector {
307
- margin-top: 2px;
308
- position: relative;
309
- top: 1px;
310
- }
311
- .leaflet-control-layers label {
312
- display: block;
313
- }
314
- .leaflet-control-layers-separator {
315
- height: 0;
316
- border-top: 1px solid #ddd;
317
- margin: 5px -10px 5px -6px;
318
- }
319
-
320
-
321
- /* attribution and scale controls */
322
-
323
- .leaflet-container .leaflet-control-attribution {
324
- background: #fff;
325
- background: rgba(255, 255, 255, 0.7);
326
- margin: 0;
327
- }
328
- .leaflet-control-attribution,
329
- .leaflet-control-scale-line {
330
- padding: 0 5px;
331
- color: #333;
332
- }
333
- .leaflet-control-attribution a {
334
- text-decoration: none;
335
- }
336
- .leaflet-control-attribution a:hover {
337
- text-decoration: underline;
338
- }
339
- .leaflet-container .leaflet-control-attribution,
340
- .leaflet-container .leaflet-control-scale {
341
- font-size: 11px;
342
- }
343
- .leaflet-left .leaflet-control-scale {
344
- margin-left: 5px;
345
- }
346
- .leaflet-bottom .leaflet-control-scale {
347
- margin-bottom: 5px;
348
- }
349
- .leaflet-control-scale-line {
350
- border: 2px solid #777;
351
- border-top: none;
352
- line-height: 1.1;
353
- padding: 2px 5px 1px;
354
- font-size: 11px;
355
- white-space: nowrap;
356
- overflow: hidden;
357
- -moz-box-sizing: content-box;
358
- box-sizing: content-box;
359
-
360
- background: #fff;
361
- background: rgba(255, 255, 255, 0.5);
362
- }
363
- .leaflet-control-scale-line:not(:first-child) {
364
- border-top: 2px solid #777;
365
- border-bottom: none;
366
- margin-top: -2px;
367
- }
368
- .leaflet-control-scale-line:not(:first-child):not(:last-child) {
369
- border-bottom: 2px solid #777;
370
- }
371
-
372
- .leaflet-touch .leaflet-control-attribution,
373
- .leaflet-touch .leaflet-control-layers,
374
- .leaflet-touch .leaflet-bar {
375
- box-shadow: none;
376
- }
377
- .leaflet-touch .leaflet-control-layers,
378
- .leaflet-touch .leaflet-bar {
379
- border: 2px solid rgba(0,0,0,0.2);
380
- background-clip: padding-box;
381
- }
382
-
383
-
384
- /* popup */
385
-
386
- .leaflet-popup {
387
- position: absolute;
388
- text-align: center;
389
- }
390
- .leaflet-popup-content-wrapper {
391
- padding: 1px;
392
- text-align: left;
393
- border-radius: 12px;
394
- }
395
- .leaflet-popup-content {
396
- margin: 13px 19px;
397
- line-height: 1.4;
398
- }
399
- .leaflet-popup-content p {
400
- margin: 18px 0;
401
- }
402
- .leaflet-popup-tip-container {
403
- margin: 0 auto;
404
- width: 40px;
405
- height: 20px;
406
- position: relative;
407
- overflow: hidden;
408
- }
409
- .leaflet-popup-tip {
410
- width: 17px;
411
- height: 17px;
412
- padding: 1px;
413
-
414
- margin: -10px auto 0;
415
-
416
- -webkit-transform: rotate(45deg);
417
- -moz-transform: rotate(45deg);
418
- -ms-transform: rotate(45deg);
419
- -o-transform: rotate(45deg);
420
- transform: rotate(45deg);
421
- }
422
- .leaflet-popup-content-wrapper,
423
- .leaflet-popup-tip {
424
- background: white;
425
-
426
- box-shadow: 0 3px 14px rgba(0,0,0,0.4);
427
- }
428
- .leaflet-container a.leaflet-popup-close-button {
429
- position: absolute;
430
- top: 0;
431
- right: 0;
432
- padding: 4px 4px 0 0;
433
- text-align: center;
434
- width: 18px;
435
- height: 14px;
436
- font: 16px/14px Tahoma, Verdana, sans-serif;
437
- color: #c3c3c3;
438
- text-decoration: none;
439
- font-weight: bold;
440
- background: transparent;
441
- }
442
- .leaflet-container a.leaflet-popup-close-button:hover {
443
- color: #999;
444
- }
445
- .leaflet-popup-scrolled {
446
- overflow: auto;
447
- border-bottom: 1px solid #ddd;
448
- border-top: 1px solid #ddd;
449
- }
450
-
451
- .leaflet-oldie .leaflet-popup-content-wrapper {
452
- zoom: 1;
453
- }
454
- .leaflet-oldie .leaflet-popup-tip {
455
- width: 24px;
456
- margin: 0 auto;
457
-
458
- -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
459
- filter: progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678);
460
- }
461
- .leaflet-oldie .leaflet-popup-tip-container {
462
- margin-top: -1px;
463
- }
464
-
465
- .leaflet-oldie .leaflet-control-zoom,
466
- .leaflet-oldie .leaflet-control-layers,
467
- .leaflet-oldie .leaflet-popup-content-wrapper,
468
- .leaflet-oldie .leaflet-popup-tip {
469
- border: 1px solid #999;
470
- }
471
-
472
-
473
- /* div icon */
474
-
475
- .leaflet-div-icon {
476
- background: #fff;
477
- border: 1px solid #666;
478
- }