umap-project 2.9.3__py3-none-any.whl → 3.0.0__py3-none-any.whl

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.

Potentially problematic release.


This version of umap-project might be problematic. Click here for more details.

Files changed (217) hide show
  1. umap/__init__.py +1 -1
  2. umap/context_processors.py +1 -0
  3. umap/forms.py +1 -2
  4. umap/locale/de/LC_MESSAGES/django.mo +0 -0
  5. umap/locale/de/LC_MESSAGES/django.po +218 -96
  6. umap/locale/en/LC_MESSAGES/django.po +128 -52
  7. umap/locale/fr/LC_MESSAGES/django.mo +0 -0
  8. umap/locale/fr/LC_MESSAGES/django.po +128 -52
  9. umap/locale/hu/LC_MESSAGES/django.mo +0 -0
  10. umap/locale/hu/LC_MESSAGES/django.po +209 -88
  11. umap/locale/is/LC_MESSAGES/django.mo +0 -0
  12. umap/locale/is/LC_MESSAGES/django.po +296 -175
  13. umap/migrations/0027_map_tags.py +23 -0
  14. umap/models.py +13 -2
  15. umap/settings/base.py +23 -5
  16. umap/static/umap/base.css +41 -8
  17. umap/static/umap/content.css +72 -37
  18. umap/static/umap/css/bar.css +43 -21
  19. umap/static/umap/css/dialog.css +4 -1
  20. umap/static/umap/css/form.css +40 -27
  21. umap/static/umap/css/icon.css +11 -1
  22. umap/static/umap/css/importers.css +7 -0
  23. umap/static/umap/img/16-white.svg +23 -2
  24. umap/static/umap/img/16.svg +1 -1
  25. umap/static/umap/img/24.svg +4 -4
  26. umap/static/umap/img/home.svg +7 -0
  27. umap/static/umap/img/importers/banfr.svg +1 -0
  28. umap/static/umap/img/marker.svg +2 -5
  29. umap/static/umap/img/source/16-white.svg +24 -3
  30. umap/static/umap/img/source/16.svg +1 -1
  31. umap/static/umap/img/source/24.svg +5 -5
  32. umap/static/umap/img/target.svg +1 -0
  33. umap/static/umap/js/components/alerts/alert.js +0 -1
  34. umap/static/umap/js/modules/browser.js +4 -4
  35. umap/static/umap/js/modules/caption.js +1 -1
  36. umap/static/umap/js/modules/data/features.js +25 -25
  37. umap/static/umap/js/modules/data/layer.js +91 -97
  38. umap/static/umap/js/modules/facets.js +9 -5
  39. umap/static/umap/js/modules/form/builder.js +21 -29
  40. umap/static/umap/js/modules/form/fields.js +40 -14
  41. umap/static/umap/js/modules/formatter.js +1 -1
  42. umap/static/umap/js/modules/global.js +9 -5
  43. umap/static/umap/js/modules/help.js +18 -5
  44. umap/static/umap/js/modules/importer.js +5 -2
  45. umap/static/umap/js/modules/importers/banfr.js +93 -0
  46. umap/static/umap/js/modules/importers/cadastrefr.js +2 -2
  47. umap/static/umap/js/modules/importers/communesfr.js +1 -1
  48. umap/static/umap/js/modules/permissions.js +20 -10
  49. umap/static/umap/js/modules/rendering/icon.js +15 -2
  50. umap/static/umap/js/modules/rendering/layers/classified.js +7 -7
  51. umap/static/umap/js/modules/rendering/layers/cluster.js +2 -2
  52. umap/static/umap/js/modules/rendering/layers/heat.js +4 -4
  53. umap/static/umap/js/modules/rendering/map.js +14 -6
  54. umap/static/umap/js/modules/rendering/popup.js +2 -2
  55. umap/static/umap/js/modules/rendering/template.js +3 -3
  56. umap/static/umap/js/modules/rendering/ui.js +17 -11
  57. umap/static/umap/js/modules/rules.js +13 -16
  58. umap/static/umap/js/modules/schema.js +23 -1
  59. umap/static/umap/js/modules/share.js +1 -1
  60. umap/static/umap/js/modules/slideshow.js +1 -0
  61. umap/static/umap/js/modules/sync/engine.js +141 -19
  62. umap/static/umap/js/modules/sync/undo.js +101 -0
  63. umap/static/umap/js/modules/sync/updaters.js +51 -28
  64. umap/static/umap/js/modules/tableeditor.js +1 -1
  65. umap/static/umap/js/modules/ui/bar.js +61 -21
  66. umap/static/umap/js/modules/ui/tooltip.js +1 -1
  67. umap/static/umap/js/modules/umap.js +190 -176
  68. umap/static/umap/js/modules/utils.js +30 -4
  69. umap/static/umap/js/umap.controls.js +82 -38
  70. umap/static/umap/locale/am_ET.js +11 -6
  71. umap/static/umap/locale/am_ET.json +11 -6
  72. umap/static/umap/locale/ar.js +11 -6
  73. umap/static/umap/locale/ar.json +11 -6
  74. umap/static/umap/locale/ast.js +11 -6
  75. umap/static/umap/locale/ast.json +11 -6
  76. umap/static/umap/locale/bg.js +11 -6
  77. umap/static/umap/locale/bg.json +11 -6
  78. umap/static/umap/locale/br.js +12 -7
  79. umap/static/umap/locale/br.json +12 -7
  80. umap/static/umap/locale/ca.js +11 -6
  81. umap/static/umap/locale/ca.json +11 -6
  82. umap/static/umap/locale/cs_CZ.js +11 -6
  83. umap/static/umap/locale/cs_CZ.json +11 -6
  84. umap/static/umap/locale/da.js +11 -6
  85. umap/static/umap/locale/da.json +11 -6
  86. umap/static/umap/locale/de.js +47 -42
  87. umap/static/umap/locale/de.json +47 -42
  88. umap/static/umap/locale/el.js +11 -6
  89. umap/static/umap/locale/el.json +11 -6
  90. umap/static/umap/locale/en.js +11 -6
  91. umap/static/umap/locale/en.json +11 -6
  92. umap/static/umap/locale/en_US.json +11 -6
  93. umap/static/umap/locale/es.js +11 -6
  94. umap/static/umap/locale/es.json +11 -6
  95. umap/static/umap/locale/et.js +11 -6
  96. umap/static/umap/locale/et.json +11 -6
  97. umap/static/umap/locale/eu.js +11 -6
  98. umap/static/umap/locale/eu.json +11 -6
  99. umap/static/umap/locale/fa_IR.js +11 -6
  100. umap/static/umap/locale/fa_IR.json +11 -6
  101. umap/static/umap/locale/fi.js +11 -6
  102. umap/static/umap/locale/fi.json +11 -6
  103. umap/static/umap/locale/fr.js +11 -6
  104. umap/static/umap/locale/fr.json +11 -6
  105. umap/static/umap/locale/gl.js +12 -7
  106. umap/static/umap/locale/gl.json +12 -7
  107. umap/static/umap/locale/he.js +11 -6
  108. umap/static/umap/locale/he.json +11 -6
  109. umap/static/umap/locale/hr.js +11 -6
  110. umap/static/umap/locale/hr.json +11 -6
  111. umap/static/umap/locale/hu.js +25 -20
  112. umap/static/umap/locale/hu.json +25 -20
  113. umap/static/umap/locale/id.js +11 -6
  114. umap/static/umap/locale/id.json +11 -6
  115. umap/static/umap/locale/is.js +151 -146
  116. umap/static/umap/locale/is.json +151 -146
  117. umap/static/umap/locale/it.js +11 -6
  118. umap/static/umap/locale/it.json +11 -6
  119. umap/static/umap/locale/ja.js +11 -6
  120. umap/static/umap/locale/ja.json +11 -6
  121. umap/static/umap/locale/ko.js +11 -6
  122. umap/static/umap/locale/ko.json +11 -6
  123. umap/static/umap/locale/lt.js +11 -6
  124. umap/static/umap/locale/lt.json +11 -6
  125. umap/static/umap/locale/ms.js +11 -6
  126. umap/static/umap/locale/ms.json +11 -6
  127. umap/static/umap/locale/nl.js +12 -7
  128. umap/static/umap/locale/nl.json +12 -7
  129. umap/static/umap/locale/no.js +11 -6
  130. umap/static/umap/locale/no.json +11 -6
  131. umap/static/umap/locale/pl.js +11 -6
  132. umap/static/umap/locale/pl.json +11 -6
  133. umap/static/umap/locale/pl_PL.json +11 -6
  134. umap/static/umap/locale/pt.js +11 -6
  135. umap/static/umap/locale/pt.json +11 -6
  136. umap/static/umap/locale/pt_BR.js +11 -6
  137. umap/static/umap/locale/pt_BR.json +11 -6
  138. umap/static/umap/locale/pt_PT.js +11 -6
  139. umap/static/umap/locale/pt_PT.json +11 -6
  140. umap/static/umap/locale/ro.js +11 -6
  141. umap/static/umap/locale/ro.json +11 -6
  142. umap/static/umap/locale/ru.js +11 -6
  143. umap/static/umap/locale/ru.json +11 -6
  144. umap/static/umap/locale/sk_SK.js +11 -6
  145. umap/static/umap/locale/sk_SK.json +11 -6
  146. umap/static/umap/locale/sl.js +11 -6
  147. umap/static/umap/locale/sl.json +11 -6
  148. umap/static/umap/locale/sr.js +11 -6
  149. umap/static/umap/locale/sr.json +11 -6
  150. umap/static/umap/locale/sv.js +11 -6
  151. umap/static/umap/locale/sv.json +11 -6
  152. umap/static/umap/locale/th_TH.js +11 -6
  153. umap/static/umap/locale/th_TH.json +11 -6
  154. umap/static/umap/locale/tr.js +11 -6
  155. umap/static/umap/locale/tr.json +11 -6
  156. umap/static/umap/locale/uk_UA.js +11 -6
  157. umap/static/umap/locale/uk_UA.json +11 -6
  158. umap/static/umap/locale/vi.js +11 -6
  159. umap/static/umap/locale/vi.json +11 -6
  160. umap/static/umap/locale/vi_VN.json +11 -6
  161. umap/static/umap/locale/zh.js +11 -6
  162. umap/static/umap/locale/zh.json +11 -6
  163. umap/static/umap/locale/zh_CN.json +11 -6
  164. umap/static/umap/locale/zh_TW.Big5.json +11 -6
  165. umap/static/umap/locale/zh_TW.js +19 -14
  166. umap/static/umap/locale/zh_TW.json +19 -14
  167. umap/static/umap/map.css +58 -28
  168. umap/static/umap/unittests/sync.js +0 -57
  169. umap/static/umap/unittests/utils.js +47 -0
  170. umap/static/umap/vars.css +5 -2
  171. umap/static/umap/vendors/photon/leaflet.photon.js +3 -0
  172. umap/sync/payloads.py +3 -2
  173. umap/templates/auth/user_detail.html +1 -1
  174. umap/templates/auth/user_stars.html +1 -1
  175. umap/templates/umap/content.html +17 -12
  176. umap/templates/umap/home.html +7 -5
  177. umap/templates/umap/map_fragment.html +1 -1
  178. umap/templates/umap/map_list.html +20 -13
  179. umap/templates/umap/search.html +7 -3
  180. umap/templates/umap/search_bar.html +13 -11
  181. umap/templates/umap/team_detail.html +1 -1
  182. umap/tests/base.py +2 -1
  183. umap/tests/fixtures/remote_data.umap +55 -0
  184. umap/tests/fixtures/test_upload_data_with_iconurl.umap +122 -0
  185. umap/tests/integration/test_browser.py +1 -3
  186. umap/tests/integration/test_conditional_rules.py +3 -0
  187. umap/tests/integration/test_edit_datalayer.py +2 -7
  188. umap/tests/integration/test_edit_map.py +15 -0
  189. umap/tests/integration/test_edit_polygon.py +1 -2
  190. umap/tests/integration/test_import.py +59 -2
  191. umap/tests/integration/test_optimistic_merge.py +4 -3
  192. umap/tests/integration/test_owned_map.py +0 -1
  193. umap/tests/integration/test_save.py +2 -4
  194. umap/tests/integration/test_undo_redo.py +267 -0
  195. umap/tests/integration/test_websocket_sync.py +78 -11
  196. umap/tests/settings.py +1 -3
  197. umap/tests/test_datalayer_s3.py +1 -0
  198. umap/tests/test_map_views.py +1 -0
  199. umap/tests/test_views.py +34 -0
  200. umap/utils.py +1 -1
  201. umap/views.py +23 -2
  202. {umap_project-2.9.3.dist-info → umap_project-3.0.0.dist-info}/METADATA +13 -12
  203. {umap_project-2.9.3.dist-info → umap_project-3.0.0.dist-info}/RECORD +206 -208
  204. umap/static/umap/js/modules/saving.js +0 -52
  205. umap/static/umap/test/.eslintrc +0 -21
  206. umap/static/umap/test/DataLayer.js +0 -463
  207. umap/static/umap/test/Feature.js +0 -131
  208. umap/static/umap/test/Map.js +0 -37
  209. umap/static/umap/test/Marker.js +0 -126
  210. umap/static/umap/test/Polygon.js +0 -111
  211. umap/static/umap/test/Polyline.js +0 -286
  212. umap/static/umap/test/Util.js +0 -28
  213. umap/static/umap/test/_pre.js +0 -455
  214. umap/static/umap/test/index.html +0 -139
  215. {umap_project-2.9.3.dist-info → umap_project-3.0.0.dist-info}/WHEEL +0 -0
  216. {umap_project-2.9.3.dist-info → umap_project-3.0.0.dist-info}/entry_points.txt +0 -0
  217. {umap_project-2.9.3.dist-info → umap_project-3.0.0.dist-info}/licenses/LICENSE +0 -0
@@ -1,3 +1,17 @@
1
+ U.HomeControl = L.Control.extend({
2
+ options: {
3
+ position: 'topleft',
4
+ },
5
+
6
+ onAdd: (map) => {
7
+ const path = map._umap.getStaticPathFor('home.svg')
8
+ const container = U.Utils.loadTemplate(
9
+ `<a href="/" class="home-button" title="${L._('Back to home')}"><img src="${path}" alt="${L._('Home logo')}" width="38px" height="38px" /></a>`
10
+ )
11
+ return container
12
+ },
13
+ })
14
+
1
15
  U.EditControl = L.Control.extend({
2
16
  options: {
3
17
  position: 'topright',
@@ -283,11 +297,17 @@ U.TileLayerChooser = L.Control.extend({
283
297
  el,
284
298
  'click',
285
299
  () => {
300
+ const oldTileLayer = this.map._umap.properties.tilelayer
286
301
  this.map.selectTileLayer(tilelayer)
287
302
  this.map._controls.tilelayers.setLayers()
288
303
  if (options?.edit) {
289
304
  this.map._umap.properties.tilelayer = tilelayer.toJSON()
290
305
  this.map._umap.isDirty = true
306
+ this.map._umap.sync.update(
307
+ 'properties.tilelayer',
308
+ this.map._umap.properties.tilelayer,
309
+ oldTileLayer
310
+ )
291
311
  }
292
312
  },
293
313
  this
@@ -430,44 +450,64 @@ U.Search = L.PhotonSearch.extend({
430
450
  },
431
451
 
432
452
  formatResult: function (feature, el) {
433
- const tools = L.DomUtil.create('span', 'search-result-tools', el)
434
- const zoom = L.DomUtil.createButtonIcon(
435
- tools,
436
- 'icon-zoom',
437
- L._('Zoom to this place')
438
- )
439
- const edit = L.DomUtil.createButtonIcon(
440
- tools,
441
- 'icon-edit',
442
- L._('Save this location as new feature')
443
- )
444
- // We need to use "mousedown" because Leaflet.Photon listen to mousedown
445
- // on el.
446
- L.DomEvent.on(zoom, 'mousedown', (e) => {
447
- L.DomEvent.stop(e)
448
- this.zoomToFeature(feature)
449
- })
450
- L.DomEvent.on(edit, 'mousedown', (e) => {
451
- L.DomEvent.stop(e)
453
+ const [tools, { point, geom }] = U.Utils.loadTemplateWithRefs(`
454
+ <span class="search-result-tools">
455
+ <button type="button" title="${L._('Add this geometry to my map')}" data-ref=geom><i class="icon icon-16 icon-polygon-plus"></i></button>
456
+ <button type="button" title="${L._('Add this place to my map')}" data-ref=point><i class="icon icon-16 icon-marker-plus"></i></button>
457
+ </span>
458
+ `)
459
+ geom.hidden = !['R', 'W'].includes(feature.properties.osm_type)
460
+ point.addEventListener('mousedown', (event) => {
461
+ event.stopPropagation()
452
462
  const datalayer = this.map._umap.defaultEditDataLayer()
453
- const layer = datalayer.makeFeature(feature)
454
- layer.isDirty = true
455
- layer.edit()
463
+ const marker = datalayer.makeFeature(feature)
464
+ marker.isDirty = true
465
+ marker.edit()
456
466
  })
467
+ geom.addEventListener('mousedown', async (event) => {
468
+ event.stopPropagation()
469
+ const osm_id = feature.properties.osm_id
470
+ const types = {
471
+ R: 'relation',
472
+ W: 'way',
473
+ N: 'node',
474
+ }
475
+ const osm_type = types[feature.properties.osm_type]
476
+ if (!osm_type || !osm_id) return
477
+ const importer = this.map._umap.importer
478
+ importer.build()
479
+ importer.format = 'osm'
480
+ importer.url = `https://www.openstreetmap.org/api/0.6/${osm_type}/${osm_id}/full`
481
+ importer.submit()
482
+ })
483
+ el.appendChild(tools)
457
484
  this._formatResult(feature, el)
485
+ const path = this.map._umap.getStaticPathFor('target.svg')
486
+ const icon = L.icon({
487
+ iconUrl: path,
488
+ iconSize: [24, 24],
489
+ iconAnchor: [12, 12],
490
+ })
491
+ const coords = feature.geometry.coordinates
492
+ const target = L.marker([coords[1], coords[0]], { icon })
493
+ el.addEventListener('mouseover', (event) => {
494
+ target.addTo(this.map)
495
+ })
496
+ el.addEventListener('mouseout', (event) => {
497
+ target.removeFrom(this.map)
498
+ })
458
499
  },
459
500
 
460
- zoomToFeature: function (feature) {
461
- const zoom = Math.max(this.map.getZoom(), 16) // Never unzoom.
462
- this.map.setView(
463
- [feature.geometry.coordinates[1], feature.geometry.coordinates[0]],
464
- zoom
465
- )
466
- },
467
-
468
- onSelected: function (feature) {
469
- this.zoomToFeature(feature)
470
- this.map.panel.close()
501
+ setChoice: function (choice) {
502
+ choice = choice || this.RESULTS[this.CURRENT]
503
+ if (choice) {
504
+ const feature = choice.feature
505
+ const zoom = Math.max(this.map.getZoom(), 14) // Never unzoom.
506
+ this.map.setView(
507
+ [feature.geometry.coordinates[1], feature.geometry.coordinates[0]],
508
+ zoom
509
+ )
510
+ }
471
511
  },
472
512
  })
473
513
 
@@ -568,7 +608,7 @@ U.Editable = L.Editable.extend({
568
608
  this.on('editable:editing', (event) => {
569
609
  const feature = event.layer.feature
570
610
  feature.isDirty = true
571
- feature.pullGeometry(false)
611
+ // feature.pullGeometry(false)
572
612
  })
573
613
  this.on('editable:vertex:ctrlclick', (event) => {
574
614
  const index = event.vertex.getIndex()
@@ -586,18 +626,20 @@ U.Editable = L.Editable.extend({
586
626
 
587
627
  createPolyline: function (latlngs) {
588
628
  const datalayer = this._umap.defaultEditDataLayer()
589
- const point = new U.LineString(this._umap, datalayer, {
629
+ const line = new U.LineString(this._umap, datalayer, {
590
630
  geometry: { type: 'LineString', coordinates: [] },
591
631
  })
592
- return point.ui
632
+ line._just_married = true
633
+ return line.ui
593
634
  },
594
635
 
595
636
  createPolygon: function (latlngs) {
596
637
  const datalayer = this._umap.defaultEditDataLayer()
597
- const point = new U.Polygon(this._umap, datalayer, {
638
+ const poly = new U.Polygon(this._umap, datalayer, {
598
639
  geometry: { type: 'Polygon', coordinates: [] },
599
640
  })
600
- return point.ui
641
+ poly._just_married = true
642
+ return poly.ui
601
643
  },
602
644
 
603
645
  createMarker: function (latlng) {
@@ -605,6 +647,7 @@ U.Editable = L.Editable.extend({
605
647
  const point = new U.Point(this._umap, datalayer, {
606
648
  geometry: { type: 'Point', coordinates: [latlng.lng, latlng.lat] },
607
649
  })
650
+ point._just_married = true
608
651
  return point.ui
609
652
  },
610
653
 
@@ -696,6 +739,7 @@ U.Editable = L.Editable.extend({
696
739
  // Leaflet.Editable will delete the drawn shape if invalid
697
740
  // (eg. line has only one drawn point)
698
741
  // So let's check if the layer has no more shape
742
+ event.layer.feature.pullGeometry(false)
699
743
  if (!event.layer.feature.hasGeom()) {
700
744
  event.layer.feature.del()
701
745
  } else {
@@ -27,10 +27,7 @@ const locale = {
27
27
  "Allow scroll wheel zoom?": "በማውሱ መሀከለኛ ተሽከርካሪ ማጉላት ይፈቀድ?",
28
28
  "always": "always",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "እርግጠኛ ነዎት ያሻሻሉትም ማስቀመጥ አይፈልጉም?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "እርግጠኛ ነዎት ይህንን ካርታ እና ሁሉንም የመረጃ ገጾች ማባዛት ይፈልጋሉ?",
32
- "Are you sure you want to delete the feature?": "እርግጠኛ ነዎት ይህንን ተግባሩን መሰረዝ ይፈልጋሉ?",
33
- "Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
34
31
  "Are you sure you want to delete this map?": "እርግጠኛ ነዎት ይህንን ካርታ መሰረዝ ይፈልጋሉ?",
35
32
  "Are you sure you want to delete this property on all the features?": "እርግጠኛ ነህ ይህንንባህርይ ከሁሉም ፊቸሮች ላይ መሰረዝ ትችላለህ",
36
33
  "Are you sure you want to restore this version?": "እርግጠኛ ነዎት ወደዚህኛው እትም መመለስ ይልጋሉ?",
@@ -46,7 +43,6 @@ const locale = {
46
43
  "Browse data": "መረጃዎቹን አሥሥ",
47
44
  "by": "በ",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "እርማቶችን ሰርዝ",
50
46
  "Caption": "ካፕሽን",
51
47
  "Center map on your location": "መገኛዎን የሚያሳየውን ካርታ ወደ መሀል ያድርጉ",
52
48
  "Change map background": "የካርታውን የጀርባ ገፅታ ይቀይሩ",
@@ -532,8 +528,17 @@ const locale = {
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
538
543
  L.registerLocale("am_ET", locale)
539
544
  L.setLocale("am_ET")
@@ -27,10 +27,7 @@
27
27
  "Allow scroll wheel zoom?": "በማውሱ መሀከለኛ ተሽከርካሪ ማጉላት ይፈቀድ?",
28
28
  "always": "always",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "እርግጠኛ ነዎት ያሻሻሉትም ማስቀመጥ አይፈልጉም?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "እርግጠኛ ነዎት ይህንን ካርታ እና ሁሉንም የመረጃ ገጾች ማባዛት ይፈልጋሉ?",
32
- "Are you sure you want to delete the feature?": "እርግጠኛ ነዎት ይህንን ተግባሩን መሰረዝ ይፈልጋሉ?",
33
- "Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
34
31
  "Are you sure you want to delete this map?": "እርግጠኛ ነዎት ይህንን ካርታ መሰረዝ ይፈልጋሉ?",
35
32
  "Are you sure you want to delete this property on all the features?": "እርግጠኛ ነህ ይህንንባህርይ ከሁሉም ፊቸሮች ላይ መሰረዝ ትችላለህ",
36
33
  "Are you sure you want to restore this version?": "እርግጠኛ ነዎት ወደዚህኛው እትም መመለስ ይልጋሉ?",
@@ -46,7 +43,6 @@
46
43
  "Browse data": "መረጃዎቹን አሥሥ",
47
44
  "by": "በ",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "እርማቶችን ሰርዝ",
50
46
  "Caption": "ካፕሽን",
51
47
  "Center map on your location": "መገኛዎን የሚያሳየውን ካርታ ወደ መሀል ያድርጉ",
52
48
  "Change map background": "የካርታውን የጀርባ ገፅታ ይቀይሩ",
@@ -532,6 +528,15 @@
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
@@ -27,10 +27,7 @@ const locale = {
27
27
  "Allow scroll wheel zoom?": "السماح بالتكبير بتمرير عجلة الفأرة؟",
28
28
  "always": "دائماً",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "هل تريد فعلاً إلغاء تغييراتك ؟",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Are you sure you want to clone this map and all its datalayers?",
32
- "Are you sure you want to delete the feature?": "هل تريد فعلاً حذف الخاصية ؟",
33
- "Are you sure you want to delete this layer?": "هل تريد فعلاً حذف هذه الطبقة ؟",
34
31
  "Are you sure you want to delete this map?": "هل تريد فعلاً حذف هذه الخريطة ؟",
35
32
  "Are you sure you want to delete this property on all the features?": "Are you sure you want to delete this property on all the features?",
36
33
  "Are you sure you want to restore this version?": "Are you sure you want to restore this version?",
@@ -46,7 +43,6 @@ const locale = {
46
43
  "Browse data": "تصفح البيانات",
47
44
  "by": "by",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Cancel edits",
50
46
  "Caption": "شرح",
51
47
  "Center map on your location": "Center map on your location",
52
48
  "Change map background": "Change map background",
@@ -532,8 +528,17 @@ const locale = {
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
538
543
  L.registerLocale("ar", locale)
539
544
  L.setLocale("ar")
@@ -27,10 +27,7 @@
27
27
  "Allow scroll wheel zoom?": "السماح بالتكبير بتمرير عجلة الفأرة؟",
28
28
  "always": "دائماً",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "هل تريد فعلاً إلغاء تغييراتك ؟",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Are you sure you want to clone this map and all its datalayers?",
32
- "Are you sure you want to delete the feature?": "هل تريد فعلاً حذف الخاصية ؟",
33
- "Are you sure you want to delete this layer?": "هل تريد فعلاً حذف هذه الطبقة ؟",
34
31
  "Are you sure you want to delete this map?": "هل تريد فعلاً حذف هذه الخريطة ؟",
35
32
  "Are you sure you want to delete this property on all the features?": "Are you sure you want to delete this property on all the features?",
36
33
  "Are you sure you want to restore this version?": "Are you sure you want to restore this version?",
@@ -46,7 +43,6 @@
46
43
  "Browse data": "تصفح البيانات",
47
44
  "by": "by",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Cancel edits",
50
46
  "Caption": "شرح",
51
47
  "Center map on your location": "Center map on your location",
52
48
  "Change map background": "Change map background",
@@ -532,6 +528,15 @@
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
@@ -27,10 +27,7 @@ const locale = {
27
27
  "Allow scroll wheel zoom?": "Allow scroll wheel zoom?",
28
28
  "always": "always",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "Are you sure you want to cancel your changes?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Are you sure you want to clone this map and all its datalayers?",
32
- "Are you sure you want to delete the feature?": "Are you sure you want to delete the feature?",
33
- "Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
34
31
  "Are you sure you want to delete this map?": "Are you sure you want to delete this map?",
35
32
  "Are you sure you want to delete this property on all the features?": "Are you sure you want to delete this property on all the features?",
36
33
  "Are you sure you want to restore this version?": "Are you sure you want to restore this version?",
@@ -46,7 +43,6 @@ const locale = {
46
43
  "Browse data": "Browse data",
47
44
  "by": "by",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Cancel edits",
50
46
  "Caption": "Caption",
51
47
  "Center map on your location": "Center map on your location",
52
48
  "Change map background": "Change map background",
@@ -532,8 +528,17 @@ const locale = {
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
538
543
  L.registerLocale("ast", locale)
539
544
  L.setLocale("ast")
@@ -27,10 +27,7 @@
27
27
  "Allow scroll wheel zoom?": "Allow scroll wheel zoom?",
28
28
  "always": "always",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "Are you sure you want to cancel your changes?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Are you sure you want to clone this map and all its datalayers?",
32
- "Are you sure you want to delete the feature?": "Are you sure you want to delete the feature?",
33
- "Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
34
31
  "Are you sure you want to delete this map?": "Are you sure you want to delete this map?",
35
32
  "Are you sure you want to delete this property on all the features?": "Are you sure you want to delete this property on all the features?",
36
33
  "Are you sure you want to restore this version?": "Are you sure you want to restore this version?",
@@ -46,7 +43,6 @@
46
43
  "Browse data": "Browse data",
47
44
  "by": "by",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Cancel edits",
50
46
  "Caption": "Caption",
51
47
  "Center map on your location": "Center map on your location",
52
48
  "Change map background": "Change map background",
@@ -532,6 +528,15 @@
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
@@ -27,10 +27,7 @@ const locale = {
27
27
  "Allow scroll wheel zoom?": "Мащабиране с колелцето на мишката?",
28
28
  "always": "винаги",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "Наистина ли искате да отмените вашите промени?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Наистина ли искате да клонирате тази карта и всички негови слоеве данни ?",
32
- "Are you sure you want to delete the feature?": "Сигурни ли сте, че искате да изтриете тази функция?",
33
- "Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
34
31
  "Are you sure you want to delete this map?": "Сигурни ли сте, че искате да изтриете тази карта?",
35
32
  "Are you sure you want to delete this property on all the features?": "Are you sure you want to delete this property on all the features?",
36
33
  "Are you sure you want to restore this version?": "Are you sure you want to restore this version?",
@@ -46,7 +43,6 @@ const locale = {
46
43
  "Browse data": "Преглед данни",
47
44
  "by": "чрез",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Отмени редакциите",
50
46
  "Caption": "Надпис",
51
47
  "Center map on your location": "Center map on your location",
52
48
  "Change map background": "Промяна фона на картата",
@@ -532,8 +528,17 @@ const locale = {
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
538
543
  L.registerLocale("bg", locale)
539
544
  L.setLocale("bg")
@@ -27,10 +27,7 @@
27
27
  "Allow scroll wheel zoom?": "Мащабиране с колелцето на мишката?",
28
28
  "always": "винаги",
29
29
  "Animated transitions": "Animated transitions",
30
- "Are you sure you want to cancel your changes?": "Наистина ли искате да отмените вашите промени?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Наистина ли искате да клонирате тази карта и всички негови слоеве данни ?",
32
- "Are you sure you want to delete the feature?": "Сигурни ли сте, че искате да изтриете тази функция?",
33
- "Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
34
31
  "Are you sure you want to delete this map?": "Сигурни ли сте, че искате да изтриете тази карта?",
35
32
  "Are you sure you want to delete this property on all the features?": "Are you sure you want to delete this property on all the features?",
36
33
  "Are you sure you want to restore this version?": "Are you sure you want to restore this version?",
@@ -46,7 +43,6 @@
46
43
  "Browse data": "Преглед данни",
47
44
  "by": "чрез",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Отмени редакциите",
50
46
  "Caption": "Надпис",
51
47
  "Center map on your location": "Center map on your location",
52
48
  "Change map background": "Промяна фона на картата",
@@ -532,6 +528,15 @@
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
@@ -27,10 +27,7 @@ const locale = {
27
27
  "Allow scroll wheel zoom?": "Aotren ar zoum gant ar rodell?",
28
28
  "always": "bepred",
29
29
  "Animated transitions": "Tremenoù buhezek",
30
- "Are you sure you want to cancel your changes?": "Ha sur oc'h e faot deoc'h nullañ ho kemmoù?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Ha sur oc'h e faot deoc'h doublañ ar gartenn-mañ hag hec'h holl wiskadoù roadennoù?",
32
- "Are you sure you want to delete the feature?": "Ha sur oc'h e faot deoc'h dilemel an elfenn-mañ?",
33
- "Are you sure you want to delete this layer?": "Ha sur oc'h e faot deoc'h dilemel ar gwiskad-mañ?",
34
31
  "Are you sure you want to delete this map?": "Ha sur oc'h e faot deoc'h dilemel ar gartenn-mañ?",
35
32
  "Are you sure you want to delete this property on all the features?": "Ha sur oc'h a faot deoc'h lemel ar perzh-mañ diwar an holl elfennoù?",
36
33
  "Are you sure you want to restore this version?": "Ha sur oc'h e faot deoc'h adsevel ar stumm-mañ?",
@@ -46,7 +43,6 @@ const locale = {
46
43
  "Browse data": "Furchal ar roadennoù",
47
44
  "by": "gant",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Nullañ ar c'hemmoù",
50
46
  "Caption": "Alc'hwez",
51
47
  "Center map on your location": "Kreizañ ar gartenn war al lec'h m'emaoc'h",
52
48
  "Change map background": "Cheñch foñs ar gartenn",
@@ -272,7 +268,7 @@ const locale = {
272
268
  "Override heatmap radius (default 25)": "Override heatmap radius (default 25)",
273
269
  "parent window": "prenestr kar",
274
270
  "Paste your data here": "Pegit ho roadennoù amañ",
275
- "Permalink": "Liamm pad",
271
+ "Permalink": "Liamm padus",
276
272
  "Permanent credits background": "Foñs ar c'hredadoù padus",
277
273
  "Permanent credits": "Kredadoù padus",
278
274
  "Please be sure the licence is compliant with your use.": "Gwiriit m'az oc'h aotreet da implijout ar roadennoù-mañ mar plij.",
@@ -532,8 +528,17 @@ const locale = {
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
538
543
  L.registerLocale("br", locale)
539
544
  L.setLocale("br")
@@ -27,10 +27,7 @@
27
27
  "Allow scroll wheel zoom?": "Aotren ar zoum gant ar rodell?",
28
28
  "always": "bepred",
29
29
  "Animated transitions": "Tremenoù buhezek",
30
- "Are you sure you want to cancel your changes?": "Ha sur oc'h e faot deoc'h nullañ ho kemmoù?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Ha sur oc'h e faot deoc'h doublañ ar gartenn-mañ hag hec'h holl wiskadoù roadennoù?",
32
- "Are you sure you want to delete the feature?": "Ha sur oc'h e faot deoc'h dilemel an elfenn-mañ?",
33
- "Are you sure you want to delete this layer?": "Ha sur oc'h e faot deoc'h dilemel ar gwiskad-mañ?",
34
31
  "Are you sure you want to delete this map?": "Ha sur oc'h e faot deoc'h dilemel ar gartenn-mañ?",
35
32
  "Are you sure you want to delete this property on all the features?": "Ha sur oc'h a faot deoc'h lemel ar perzh-mañ diwar an holl elfennoù?",
36
33
  "Are you sure you want to restore this version?": "Ha sur oc'h e faot deoc'h adsevel ar stumm-mañ?",
@@ -46,7 +43,6 @@
46
43
  "Browse data": "Furchal ar roadennoù",
47
44
  "by": "gant",
48
45
  "Cache proxied request": "Cache proxied request",
49
- "Cancel edits": "Nullañ ar c'hemmoù",
50
46
  "Caption": "Alc'hwez",
51
47
  "Center map on your location": "Kreizañ ar gartenn war al lec'h m'emaoc'h",
52
48
  "Change map background": "Cheñch foñs ar gartenn",
@@ -272,7 +268,7 @@
272
268
  "Override heatmap radius (default 25)": "Override heatmap radius (default 25)",
273
269
  "parent window": "prenestr kar",
274
270
  "Paste your data here": "Pegit ho roadennoù amañ",
275
- "Permalink": "Liamm pad",
271
+ "Permalink": "Liamm padus",
276
272
  "Permanent credits background": "Foñs ar c'hredadoù padus",
277
273
  "Permanent credits": "Kredadoù padus",
278
274
  "Please be sure the licence is compliant with your use.": "Gwiriit m'az oc'h aotreet da implijout ar roadennoù-mañ mar plij.",
@@ -532,6 +528,15 @@
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
@@ -27,10 +27,7 @@ const locale = {
27
27
  "Allow scroll wheel zoom?": "Voleu permetre el zoom amb la roda de desplaçament?",
28
28
  "always": "sempre",
29
29
  "Animated transitions": "Transicions animades",
30
- "Are you sure you want to cancel your changes?": "Esteu segur de voler cancel·lar els canvis?",
31
30
  "Are you sure you want to clone this map and all its datalayers?": "Esteu segur de voler clonar aquest mapa i totes les capes de dades?",
32
- "Are you sure you want to delete the feature?": "Segur que voleu suprimir la característica?",
33
- "Are you sure you want to delete this layer?": "Are you sure you want to delete this layer?",
34
31
  "Are you sure you want to delete this map?": "Esteu segur de voler suprimir aquest mapa?",
35
32
  "Are you sure you want to delete this property on all the features?": "Are you sure you want to delete this property on all the features?",
36
33
  "Are you sure you want to restore this version?": "Are you sure you want to restore this version?",
@@ -46,7 +43,6 @@ const locale = {
46
43
  "Browse data": "Explora les dades",
47
44
  "by": "per",
48
45
  "Cache proxied request": "Petició proxy en memòria cau",
49
- "Cancel edits": "Cancel·la les edicions",
50
46
  "Caption": "Llegenda",
51
47
  "Center map on your location": "Centra el mapa a la vostra ubicació",
52
48
  "Change map background": "Canvia el fons del mapa",
@@ -532,8 +528,17 @@ const locale = {
532
528
  "Edit map default view": "Edit map default view",
533
529
  "Use current center and zoom": "Use current center and zoom",
534
530
  "Layer permalink": "Layer permalink",
535
- "Save this geometry as a new feature": "Save this geometry as a new feature",
536
- "Save this place as a new feature": "Save this place as a new feature"
531
+ "Back to home": "Back to home",
532
+ "Home logo": "Home logo",
533
+ "Add this geometry to my map": "Add this geometry to my map",
534
+ "Add this place to my map": "Add this place to my map",
535
+ "Cancel last edit": "Cancel last edit",
536
+ "Redo last edit": "Redo last edit",
537
+ "Links": "Links",
538
+ "Images": "Images",
539
+ "Iframes": "Iframes",
540
+ "Tags": "Tags",
541
+ "Geocode": "Geocode"
537
542
  }
538
543
  L.registerLocale("ca", locale)
539
544
  L.setLocale("ca")