umap-project 2.4.0__py3-none-any.whl → 2.4.0b1__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.
Files changed (46) hide show
  1. umap/.DS_Store +0 -0
  2. umap/__init__.py +1 -1
  3. umap/locale/en/LC_MESSAGES/django.po +11 -11
  4. umap/locale/fr/LC_MESSAGES/django.mo +0 -0
  5. umap/locale/fr/LC_MESSAGES/django.po +11 -12
  6. umap/static/.DS_Store +0 -0
  7. umap/static/umap/.DS_Store +0 -0
  8. umap/static/umap/base.css +28 -20
  9. umap/static/umap/css/importers.css +1 -8
  10. umap/static/umap/css/panel.css +1 -0
  11. umap/static/umap/favicons/.DS_Store +0 -0
  12. umap/static/umap/fonts/.DS_Store +0 -0
  13. umap/static/umap/img/.DS_Store +0 -0
  14. umap/static/umap/img/16-white.svg +3 -1
  15. umap/static/umap/img/source/.DS_Store +0 -0
  16. umap/static/umap/img/source/16-white.svg +4 -2
  17. umap/static/umap/js/modules/browser.js +5 -5
  18. umap/static/umap/js/modules/caption.js +1 -1
  19. umap/static/umap/js/modules/importer.js +9 -20
  20. umap/static/umap/js/modules/importers/datasets.js +0 -1
  21. umap/static/umap/js/modules/utils.js +3 -3
  22. umap/static/umap/js/umap.features.js +3 -11
  23. umap/static/umap/js/umap.js +48 -47
  24. umap/static/umap/js/umap.layer.js +0 -10
  25. umap/static/umap/js/umap.popup.js +1 -1
  26. umap/static/umap/locale/en.js +1 -2
  27. umap/static/umap/locale/en.json +1 -2
  28. umap/static/umap/locale/fr.js +15 -16
  29. umap/static/umap/locale/fr.json +15 -16
  30. umap/static/umap/map.css +13 -14
  31. umap/static/umap/unittests/utils.js +5 -5
  32. umap/static/umap/vars.css +1 -2
  33. umap/static/umap/vendors/dompurify/purify.es.js +5 -59
  34. umap/static/umap/vendors/dompurify/purify.es.mjs.map +1 -1
  35. umap/static/umap/vendors/formbuilder/Leaflet.FormBuilder.js +2 -2
  36. umap/tests/.DS_Store +0 -0
  37. umap/tests/integration/.DS_Store +0 -0
  38. umap/tests/integration/test_browser.py +3 -76
  39. umap/tests/integration/test_import.py +0 -47
  40. umap/tests/integration/test_map.py +0 -29
  41. umap/tests/integration/test_view_marker.py +2 -2
  42. {umap_project-2.4.0.dist-info → umap_project-2.4.0b1.dist-info}/METADATA +5 -5
  43. {umap_project-2.4.0.dist-info → umap_project-2.4.0b1.dist-info}/RECORD +46 -37
  44. {umap_project-2.4.0.dist-info → umap_project-2.4.0b1.dist-info}/WHEEL +1 -1
  45. {umap_project-2.4.0.dist-info → umap_project-2.4.0b1.dist-info}/entry_points.txt +0 -0
  46. {umap_project-2.4.0.dist-info → umap_project-2.4.0b1.dist-info}/licenses/LICENSE +0 -0
umap/.DS_Store ADDED
Binary file
umap/__init__.py CHANGED
@@ -1 +1 @@
1
- VERSION = "2.4.0"
1
+ VERSION = "2.4.0b1"
@@ -8,7 +8,7 @@ msgid ""
8
8
  msgstr ""
9
9
  "Project-Id-Version: PACKAGE VERSION\n"
10
10
  "Report-Msgid-Bugs-To: \n"
11
- "POT-Creation-Date: 2024-06-21 19:58+0000\n"
11
+ "POT-Creation-Date: 2024-06-14 17:49+0000\n"
12
12
  "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
13
13
  "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
14
14
  "Language-Team: LANGUAGE <LL@li.org>\n"
@@ -553,49 +553,49 @@ msgstr ""
553
553
  msgid "Map editors updated with success!"
554
554
  msgstr ""
555
555
 
556
- #: views.py:882
556
+ #: views.py:883
557
557
  #, python-format
558
558
  msgid "The uMap edit link for your map: %(map_name)s"
559
559
  msgstr ""
560
560
 
561
- #: views.py:885
561
+ #: views.py:886
562
562
  #, python-format
563
563
  msgid "Here is your secret edit link: %(link)s"
564
564
  msgstr ""
565
565
 
566
- #: views.py:892
566
+ #: views.py:893
567
567
  #, python-format
568
568
  msgid "Can't send email to %(email)s"
569
569
  msgstr ""
570
570
 
571
- #: views.py:895
571
+ #: views.py:896
572
572
  #, python-format
573
573
  msgid "Email sent to %(email)s"
574
574
  msgstr ""
575
575
 
576
- #: views.py:906
576
+ #: views.py:907
577
577
  msgid "Only its owner can delete the map."
578
578
  msgstr ""
579
579
 
580
- #: views.py:909
580
+ #: views.py:910
581
581
  msgid "Map successfully deleted."
582
582
  msgstr ""
583
583
 
584
- #: views.py:935
584
+ #: views.py:936
585
585
  #, python-format
586
586
  msgid ""
587
587
  "Your map has been cloned! If you want to edit this map from another "
588
588
  "computer, please use this link: %(anonymous_url)s"
589
589
  msgstr ""
590
590
 
591
- #: views.py:940
591
+ #: views.py:941
592
592
  msgid "Congratulations, your map has been cloned!"
593
593
  msgstr ""
594
594
 
595
- #: views.py:1175
595
+ #: views.py:1176
596
596
  msgid "Layer successfully deleted."
597
597
  msgstr ""
598
598
 
599
- #: views.py:1197
599
+ #: views.py:1198
600
600
  msgid "Permissions updated with success!"
601
601
  msgstr ""
Binary file
@@ -8,7 +8,6 @@
8
8
  # Buggi, 2013
9
9
  # Buggi, 2013
10
10
  # Buggi, 2013
11
- # Larlet David <david@larlet.fr>, 2024
12
11
  # Philippe Verdy, 2017
13
12
  # severin.menard <severin.menard@protonmail.com>, 2014
14
13
  # severin.menard <severin.menard@protonmail.com>, 2014
@@ -26,7 +25,7 @@ msgstr ""
26
25
  "Report-Msgid-Bugs-To: \n"
27
26
  "POT-Creation-Date: 2024-06-14 17:49+0000\n"
28
27
  "PO-Revision-Date: 2013-11-22 14:00+0000\n"
29
- "Last-Translator: Larlet David <david@larlet.fr>, 2024\n"
28
+ "Last-Translator: yohanboniface <yohanboniface@free.fr>, 2013-2014,2018-2019,2023-2024\n"
30
29
  "Language-Team: French (http://app.transifex.com/openstreetmap/umap/language/fr/)\n"
31
30
  "MIME-Version: 1.0\n"
32
31
  "Content-Type: text/plain; charset=UTF-8\n"
@@ -268,7 +267,7 @@ msgstr "Exporter et partager votre carte"
268
267
  #: templates/umap/about_summary.html:37
269
268
  #, python-format
270
269
  msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
271
- msgstr "Et c'est <a href=\"%(repo_url)s\">open source</a> !"
270
+ msgstr "Et c'est <a href=\"%(repo_url)s\">open source</a>!"
272
271
 
273
272
  #: templates/umap/about_summary.html:48 templates/umap/navigation.html:38
274
273
  #: templates/umap/user_dashboard.html:42
@@ -291,11 +290,11 @@ msgid ""
291
290
  "Pro-tip: to easily find back your maps, <a href=\"%(login_url)s\" "
292
291
  "target=\"_blank\">create an account</a> or <a href=\"%(login_url)s\" "
293
292
  "target=\"_blank\">log in</a>."
294
- msgstr "Astuce : pour retrouver facilement vos cartes, <a href=\"%(login_url)s\" target=\"_blank\">créez un compte</a> ou <a href=\"%(login_url)s\" target=\"_blank\">identifiez-vous</a>."
293
+ msgstr "Astuce: pour retrouver facilement vos cartes, <a href=\"%(login_url)s\" target=\"_blank\">créez un compte</a> ou <a href=\"%(login_url)s\" target=\"_blank\">identifiez-vous</a>."
295
294
 
296
295
  #: templates/umap/components/alerts/alert.html:30
297
296
  msgid "Here is your secret link to edit the map, please keep it safe:"
298
- msgstr "Ceci est le lien d'édition secret, gardez-le en lieu sûr :"
297
+ msgstr "Ceci est le lien d'édition secret, gardez-le en lieu sûr:"
299
298
 
300
299
  #: templates/umap/components/alerts/alert.html:33
301
300
  msgid "Copy link"
@@ -303,7 +302,7 @@ msgstr "Copier le lien"
303
302
 
304
303
  #: templates/umap/components/alerts/alert.html:39
305
304
  msgid "Enter your email address to receive the secret link:"
306
- msgstr "Entrez votre courriel pour recevoir le lien secret :"
305
+ msgstr "Entrer une adresse mail pour recevoir le lien secret:"
307
306
 
308
307
  #: templates/umap/components/alerts/alert.html:41
309
308
  msgid "Email"
@@ -311,7 +310,7 @@ msgstr "Courriel"
311
310
 
312
311
  #: templates/umap/components/alerts/alert.html:42
313
312
  msgid "Send me the link"
314
- msgstr "Envoyer le lien"
313
+ msgstr "Recevoir le lien"
315
314
 
316
315
  #: templates/umap/components/alerts/alert.html:63
317
316
  msgid "See their edits in another tab"
@@ -338,7 +337,7 @@ msgid ""
338
337
  "need a stable instance, please use <a "
339
338
  "href=\"%(stable_url)s\">%(stable_url)s</a>. You can also host your own "
340
339
  "instance, it's <a href=\"%(repo_url)s\">open source</a>!"
341
- msgstr "Il s'agit d'un site de démonstration, utilisé pour les tests et validation avant diffusion. Si vous avez besoin d'une version stable, utilisez plutôt <a href=\"%(stable_url)s\">%(stable_url)s</a>. Vous pouvez aussi mettre en place votre propre version, c'est <a href=\"%(repo_url)s\">open source</a> !"
340
+ msgstr "Il s'agit d'un site de démonstration, utilisé pour les tests et validation avant diffusion. Si vous avez besoin d'une version stable, utilisez plutôt <a href=\"%(stable_url)s\">%(stable_url)s</a>. Vous pouvez aussi mettre en place votre propre version, c'est <a href=\"%(repo_url)s\">open source</a>!"
342
341
 
343
342
  #: templates/umap/home.html:11
344
343
  msgid "Map of the uMaps"
@@ -436,7 +435,7 @@ msgstr "fin"
436
435
  #: templates/umap/map_table.html:116
437
436
  #, python-format
438
437
  msgid "Lines per page: %(per_page)s"
439
- msgstr "Lignes par page : %(per_page)s"
438
+ msgstr "Lignes par page: %(per_page)s"
440
439
 
441
440
  #: templates/umap/map_table.html:121
442
441
  #, python-format
@@ -515,7 +514,7 @@ msgid "%(count)s map found:"
515
514
  msgid_plural "%(count)s maps found:"
516
515
  msgstr[0] "%(count)s carte trouvée:"
517
516
  msgstr[1] "%(count)s cartes trouvées:"
518
- msgstr[2] "%(count)s cartes trouvées :"
517
+ msgstr[2] "%(count)s cartes trouvées:"
519
518
 
520
519
  #: templates/umap/search.html:21
521
520
  msgid "No map found."
@@ -574,12 +573,12 @@ msgstr "Éditeurs de la carte mis à jour !"
574
573
  #: views.py:883
575
574
  #, python-format
576
575
  msgid "The uMap edit link for your map: %(map_name)s"
577
- msgstr "La lien d'édition uMap pour votre carte : %(map_name)s"
576
+ msgstr "La lien d'édition uMap pour votre carte %(map_name)s"
578
577
 
579
578
  #: views.py:886
580
579
  #, python-format
581
580
  msgid "Here is your secret edit link: %(link)s"
582
- msgstr "Voici votre lien d'édition secret : %(link)s"
581
+ msgstr "Voici votre lien d'édition secret: %(link)s"
583
582
 
584
583
  #: views.py:893
585
584
  #, python-format
umap/static/.DS_Store ADDED
Binary file
Binary file
umap/static/umap/base.css CHANGED
@@ -61,22 +61,16 @@ kbd {
61
61
  white-space: nowrap;
62
62
  }
63
63
  h3 {
64
- font-size: 1rem;
64
+ font-size: 1.2rem;
65
65
  }
66
66
  h4 {
67
- font-size: 0.9rem;
68
- }
69
- h5 {
70
- font-size: 0.8rem;
71
- }
72
- h6 {
73
- font-size: 0.7rem;
67
+ font-size: 1.1rem;
74
68
  }
75
69
  hgroup > * {
76
70
  margin-bottom: 0;
77
71
  }
78
72
  hgroup {
79
- margin-bottom: var(--box-margin);
73
+ margin-bottom: var(--box-space);
80
74
  }
81
75
  hgroup > :not(:first-child):last-child {
82
76
  font-weight: normal;
@@ -185,11 +179,8 @@ input[type="range"] {
185
179
  margin-bottom: 5px;
186
180
  width: 100%;
187
181
  }
188
- input[type="radio"] {
189
- margin-right: var(--text-margin);
190
- }
191
182
  input[type="checkbox"] {
192
- margin: 0 var(--text-margin);
183
+ margin: 0 5px;
193
184
  vertical-align: middle;
194
185
  appearance: none;
195
186
  }
@@ -209,6 +200,28 @@ input[type=checkbox]:checked:after {
209
200
  content: '✓';
210
201
  color: var(--color-darkGray);
211
202
  }
203
+ label input[type="radio"] {
204
+ appearance: none;
205
+ margin-right: 10px;
206
+ background: var(--color-darkGray);
207
+ }
208
+ input[type="radio"]:after {
209
+ display: inline-block;
210
+ content: '⦾';
211
+ width: 16px;
212
+ height: 16px;
213
+ border-radius: 50%;
214
+ cursor: pointer;
215
+ text-align: center;
216
+ vertical-align: bottom;
217
+ font-size: 1.2rem;
218
+ line-height: 0.7;
219
+ }
220
+ label input[type="radio"]:checked:after {
221
+ background-color: var(--color-lightCyan);
222
+ color: var(--color-darkGray);
223
+ content: '⦿';
224
+ }
212
225
 
213
226
  input[data-modified=true] {
214
227
  background-color: var(--color-lightCyan);
@@ -320,7 +333,7 @@ label {
320
333
  width: 100%;
321
334
  }
322
335
  label + label {
323
- margin-top: var(--box-margin);
336
+ margin-top: var(--box-space);
324
337
  }
325
338
  .content label {
326
339
  font-weight: bold;
@@ -382,7 +395,7 @@ details summary {
382
395
  border: 1px solid var(--color-darkGray);
383
396
  }
384
397
  fieldset legend {
385
- font-size: .9rem;
398
+ font-size: 1rem;
386
399
  padding: 0 5px;
387
400
  }
388
401
 
@@ -787,11 +800,6 @@ input[type=hidden].blur + [type="button"] {
787
800
  /* Various */
788
801
  /* *********** */
789
802
 
790
- .text {
791
- word-break: break-word;
792
- white-space: pre-line;
793
- }
794
-
795
803
  .umap-dragover:before {
796
804
  content: ' ';
797
805
  background-image: url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="200" height="200" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="arcs">%3Cpath d="M3 15v4c0 1.1.9 2 2 2h14a2 2 0 0 0 2-2v-4M17 9l-5 5-5-5M12 12.8V2.5"/>%3C/svg>');
@@ -1,13 +1,6 @@
1
- .importers h3 {
2
- font-size: 1rem;
3
- }
4
- .importers h4 {
5
- font-size: .9rem;
6
- }
7
-
8
1
  .importers ul [type=button] {
9
2
  background: none;
10
- font-size: 0.75rem;
3
+ font-size: 1rem;
11
4
  border: none;
12
5
  width: initial;
13
6
  display: inline-block;
@@ -52,6 +52,7 @@
52
52
  .panel .counter {
53
53
  display: block;
54
54
  margin-top: var(--panel-gutter);
55
+ font-weight: bold;
55
56
  }
56
57
  @media all and (orientation:landscape) {
57
58
  .panel {
Binary file
Binary file
Binary file
@@ -22,7 +22,6 @@
22
22
  </rdf:RDF>
23
23
  </metadata>
24
24
  <g id="layer1" transform="translate(0 -812.36)">
25
- <path id="path6" transform="translate(0 812.36)" d="m106.59 43.849c-3.1009-0.58252-5.5294-2.8635-6.3194-5.9353-0.23482-0.91317-0.29424-2.2415-0.14177-3.1695 0.51108-3.1108 2.8336-5.668 5.8628-6.455 3.7298-0.96909 7.5978 0.86166 9.2444 4.3755 0.52616 1.1228 0.76105 2.332 0.7086 3.6477-0.0496 1.2454-0.28677 2.1826-0.82249 3.2508-1.0498 2.0933-2.8894 3.5595-5.2481 4.1831-0.49134 0.1299-0.73215 0.15444-1.689 0.17211-0.81094 0.01498-1.2469-4e-3 -1.5952-0.06942zm2.4397-5.8477v-3.0462h-2.0509v6.0923h2.0509zm-0.53434-4.5639c0.33094-0.09915 0.70763-0.44461 0.87372-0.80128 0.4662-1.0012-0.2615-2.1447-1.3648-2.1447-0.44164 0-0.73107 0.12392-1.0653 0.45609-0.42453 0.42196-0.54914 0.93769-0.37666 1.5589 0.0814 0.29328 0.60383 0.8291 0.89905 0.92215 0.28553 0.09 0.74987 0.09398 1.034 0.0089z" fill="#f2f2f2" stroke="#999" stroke-width=".25" style="paint-order:fill markers stroke"/>
26
25
  <text id="text4457" x="5.7867966" y="897.80786" fill="#000000" font-family="sans-serif" letter-spacing="0px" word-spacing="0px" style="line-height:0%" xml:space="preserve"><tspan id="tspan4459" x="5.7867966" y="897.80786" font-family="sans-serif" font-size="40px" style="line-height:1.25"> </tspan></text>
27
26
  <g id="g3001" transform="translate(-23.256 -119.39)">
28
27
  <path id="path3014" d="m35.256 935.75c-4.4124 0-8.0001 3.5878-8.0001 8.0001 0 4.4124 3.5878 8.0001 8.0001 8.0001s8.0001-3.5878 8.0001-8.0001c0-4.4124-3.5878-8.0001-8.0001-8.0001zm0 1.0003c3.8719 0 6.9999 3.1279 6.9999 6.9999 0 3.8719-3.1279 6.9999-6.9999 6.9999s-6.9999-3.128-6.9999-6.9999c0-3.8719 3.1279-6.9999 6.9999-6.9999z" color="#000000" color-rendering="auto" fill="#f2f2f2" image-rendering="auto" shape-rendering="auto" solid-color="#000000" stroke="#999" stroke-width=".25" style="isolation:auto;mix-blend-mode:normal;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-transform:none;white-space:normal"/>
@@ -45,6 +44,8 @@
45
44
  </g>
46
45
  <path id="path3684-2" d="m63.714 890.36-1.1428 1.1428 2.2857 2.2858 1.1428-1.1429zm-1.7143 1.7143-6.2857 6.2857 2.2857 2.2857 6.2857-6.2857zm-6.2857 6.2857-1.7143 4 4-1.7143z" fill="#b3b3b3"/>
47
46
  <path id="table-5-8-8-6-1" d="m54 914.36v1h1v-1zm2 0v1h10v-1zm-2 2v1h1v-1zm2 0v1h10v-1zm-2 2v1h1v-1zm2 0v1h10v-1zm-2 2v1h1v-1zm2 0v1h10v-1zm-2 2v1h1v-1zm2 0v1h10v-1zm-2 2v1h1v-1zm2 0v1h10v-1z" fill="#f2f2f2"/>
47
+ <circle id="path3764" cx="108" cy="844.36" r="1.5" fill="#f2f2f2" stroke="#999" stroke-width=".25"/>
48
+ <path id="rect4274" d="m107 847.36h2v6h-2z" fill="#f2f2f2" stroke="#999" stroke-width=".25"/>
48
49
  <g id="g4717" transform="translate(-54.789 -114.48)">
49
50
  <path id="path3862" transform="translate(-1.2108 854.84)" d="m141.27 173.42-6.7559 2.6797 0.95313 6.3457 5.8711 3.127 4.1484-7.873zm-1.4473 2.4883 2.9902 1.6016-0.5918 2.4316-3.3574 1.5039-1.7383-3.8106z" fill="#f2f2f2" fill-rule="evenodd" stroke="#999" stroke-width=".25"/>
50
51
  </g>
@@ -116,6 +117,7 @@
116
117
  <path id="path4353-1-6-1-3-3-9-6" transform="matrix(1.9 0 0 1.9 -245.02 606.04)" d="m222.11 179.64-1.0488 1.0488 1.582 1.5801-1.582 1.582 1.0488 1.0469 1.582-1.5801 1.5801 1.5801 1.0488-1.0469-1.582-1.582 1.582-1.5801-1.0488-1.0488-1.5801 1.5801z" color="#000000" color-rendering="auto" fill="#f2f2f2" fill-rule="evenodd" image-rendering="auto" shape-rendering="auto" solid-color="#000000" stroke="none" style="isolation:auto;mix-blend-mode:normal;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-transform:none;white-space:normal"/>
117
118
  </g>
118
119
  </g>
120
+ <path id="path3014-4" d="m108 840.36c-4.4124 0-8.0001 3.5878-8.0001 8.0001 0 4.4124 3.5878 8.0001 8.0001 8.0001s8.0001-3.5878 8.0001-8.0001c0-4.4124-3.5878-8.0001-8.0001-8.0001zm0 1.0003c3.8719 0 6.9999 3.1279 6.9999 6.9999 0 3.8719-3.1279 6.9999-6.9999 6.9999s-6.9999-3.128-6.9999-6.9999c0-3.8719 3.1279-6.9999 6.9999-6.9999z" color="#000000" color-rendering="auto" fill="#f2f2f2" image-rendering="auto" shape-rendering="auto" solid-color="#000000" stroke="#999" stroke-width=".25" style="isolation:auto;mix-blend-mode:normal;text-decoration-color:#000000;text-decoration-line:none;text-decoration-style:solid;text-indent:0;text-transform:none;white-space:normal"/>
119
121
  <rect id="rect4237" x="77" y="889.36" width="2" height="2" fill="#f2f2f2"/>
120
122
  <rect id="rect4239" x="81" y="889.36" width="2" height="2" fill="#f2f2f2"/>
121
123
  <rect id="rect4241" x="85" y="889.36" width="2" height="2" fill="#f2f2f2"/>
Binary file
@@ -16,7 +16,7 @@
16
16
  <path d="M 16.0401,2.3158 H 2.005 v 14.0351 h 14.0351 z" fill="#ffffff" id="path1259" />
17
17
  </mask>
18
18
  </defs>
19
- <sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="10.391897" inkscape:cx="112.73207" inkscape:cy="34.401804" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" inkscape:window-width="1920" inkscape:window-height="1011" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" showguides="true" inkscape:guide-bbox="true" inkscape:snap-grids="true" inkscape:snap-to-guides="true" inkscape:showpageshadow="2" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1">
19
+ <sodipodi:namedview id="base" pagecolor="#ffffff" bordercolor="#666666" borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" inkscape:zoom="25.599967" inkscape:cx="37.558642" inkscape:cy="19.121119" inkscape:document-units="px" inkscape:current-layer="layer1" showgrid="true" inkscape:window-width="1920" inkscape:window-height="1011" inkscape:window-x="0" inkscape:window-y="0" inkscape:window-maximized="1" showguides="true" inkscape:guide-bbox="true" inkscape:snap-grids="true" inkscape:snap-to-guides="true" inkscape:showpageshadow="2" inkscape:pagecheckerboard="0" inkscape:deskcolor="#d1d1d1">
20
20
  <inkscape:grid type="xygrid" id="grid3004" empspacing="4" visible="true" enabled="true" snapvisiblegridlinesonly="true" originx="0" originy="0" spacingy="1" spacingx="1" units="px" />
21
21
  <sodipodi:guide orientation="-1,0" position="24,168" id="guide3084" inkscape:locked="false" inkscape:label="" inkscape:color="rgb(0,134,229)" />
22
22
  <sodipodi:guide orientation="0,1" position="0,96" id="guide3086" inkscape:locked="false" inkscape:label="" inkscape:color="rgb(0,134,229)" />
@@ -40,7 +40,6 @@
40
40
  </rdf:RDF>
41
41
  </metadata>
42
42
  <g inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1" transform="translate(0,-812.36218)">
43
- <path style="fill:#f2f2f2;fill-opacity:1;stroke-width:0.25;paint-order:fill markers stroke;stroke:#999999;stroke-opacity:1" d="m 106.58891,43.849359 c -3.10089,-0.58252 -5.52944,-2.863466 -6.31937,-5.935298 -0.23482,-0.913171 -0.294235,-2.2415 -0.14177,-3.169542 0.51108,-3.110805 2.83364,-5.667956 5.86284,-6.455008 3.72982,-0.969088 7.59776,0.861664 9.2444,4.375508 0.52616,1.122793 0.76105,2.331963 0.7086,3.647677 -0.0496,1.245447 -0.28677,2.18265 -0.82249,3.250829 -1.04984,2.093266 -2.88939,3.559535 -5.24807,4.183141 -0.49134,0.129903 -0.73215,0.154443 -1.68896,0.172114 -0.81094,0.01498 -1.24691,-0.004 -1.59518,-0.06942 z m 2.43966,-5.8477 v -3.046165 h -1.02544 -1.02544 v 3.046165 3.046164 h 1.02544 1.02544 z m -0.53434,-4.563852 c 0.33094,-0.09915 0.70763,-0.444612 0.87372,-0.801282 0.4662,-1.001185 -0.2615,-2.144718 -1.36482,-2.144718 -0.44164,0 -0.73107,0.12392 -1.06527,0.456086 -0.42453,0.421956 -0.54914,0.937689 -0.37666,1.558908 0.0814,0.293275 0.60383,0.829099 0.89905,0.922151 0.28553,0.09 0.74987,0.09398 1.03398,0.0089 z" id="path6" transform="translate(0,812.36218)" />
44
43
  <text xml:space="preserve" style="font-style:normal;font-weight:normal;line-height:0%;font-family:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none" x="5.7867966" y="897.80786" id="text4457"><tspan y="897.80786" x="5.7867966" sodipodi:role="line" id="tspan4459" style="font-size:40px;line-height:1.25;font-family:sans-serif"> </tspan></text>
45
44
  <g id="g3001" transform="translate(-23.255701,-119.38651)">
46
45
  <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 35.255701,935.74851 c -4.412356,0 -8.00014,3.58778 -8.00014,8.00014 0,4.41235 3.587784,8.00014 8.00014,8.00014 4.412356,0 8.00014,-3.58779 8.00014,-8.00014 0,-4.41236 -3.587784,-8.00014 -8.00014,-8.00014 z m 0,1.00028 c 3.871916,0 6.99986,3.12794 6.99986,6.99986 0,3.87191 -3.127944,6.99986 -6.99986,6.99986 -3.871916,0 -6.999861,-3.12795 -6.999861,-6.99986 0,-3.87192 3.127945,-6.99986 6.999861,-6.99986 z" id="path3014" inkscape:connector-curvature="0" />
@@ -64,6 +63,8 @@
64
63
  </g>
65
64
  <path style="fill:#b3b3b3;fill-opacity:1;stroke:none" d="m 63.71429,890.36216 -1.14285,1.1428 2.28571,2.2858 L 66,892.64786 Z M 62,892.07646 55.714286,898.36218 58,900.64788 l 6.28572,-6.2857 z m -6.285714,6.28572 -1.714286,4 4,-1.7143 z" id="path3684-2" inkscape:connector-curvature="0" sodipodi:nodetypes="cccccccccccccc" />
66
65
  <path inkscape:connector-curvature="0" id="table-5-8-8-6-1" style="fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:none" d="m 54,914.3622 v 1 h 1 v -1 z m 2,0 v 1 h 10 v -1 z m -2,2 v 1 h 1 v -1 z m 2,0 v 1 h 10 v -1 z m -2,2 v 1 h 1 v -1 z m 2,0 v 1 h 10 v -1 z m -2,2 v 1 h 1 v -1 z m 2,0 v 1 h 10 v -1 z m -2,2 v 1 h 1 v -1 z m 2,0 v 1 h 10 v -1 z m -2,2 v 1 h 1 v -1 z m 2,0 v 1 h 10 v -1 z" />
66
+ <circle style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" id="path3764" cx="108" cy="844.36218" r="1.5" />
67
+ <path style="fill:#f2f2f2;fill-opacity:1;stroke:#999999;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 107,847.36218 h 2 v 6 h -2 z" id="rect4274" inkscape:connector-curvature="0" sodipodi:nodetypes="ccccc" />
67
68
  <g id="g4717" transform="translate(-54.789185,-114.477)">
68
69
  <path style="fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" d="m 141.26953,173.42383 -6.75586,2.67969 0.95313,6.3457 5.87109,3.12695 4.14844,-7.87305 z m -1.44726,2.48828 2.99023,1.60156 -0.5918,2.43164 -3.35742,1.50391 -1.73828,-3.81055 z" transform="translate(-1.210815,854.83918)" id="path3862" inkscape:connector-curvature="0" />
69
70
  </g>
@@ -138,6 +139,7 @@
138
139
  <path inkscape:connector-curvature="0" id="path4353-1-6-1-3-3-9-6" transform="matrix(1.9000195,0,0,1.9000195,-245.02393,606.04174)" d="m 222.11328,179.64258 -1.04883,1.04883 1.58203,1.58007 -1.58203,1.58204 1.04883,1.04687 1.58203,-1.58008 1.58008,1.58008 1.04883,-1.04687 -1.58203,-1.58204 1.58203,-1.58007 -1.04883,-1.04883 -1.58008,1.58008 z" style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2.81628;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" />
139
140
  </g>
140
141
  </g>
142
+ <path style="color:#000000;font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:medium;line-height:normal;font-family:sans-serif;text-indent:0;text-align:start;text-decoration:none;text-decoration-line:none;text-decoration-style:solid;text-decoration-color:#000000;letter-spacing:normal;word-spacing:normal;text-transform:none;writing-mode:lr-tb;direction:ltr;baseline-shift:baseline;text-anchor:start;white-space:normal;clip-rule:nonzero;display:inline;overflow:visible;visibility:visible;opacity:1;isolation:auto;mix-blend-mode:normal;color-interpolation:sRGB;color-interpolation-filters:linearRGB;solid-color:#000000;solid-opacity:1;fill:#f2f2f2;fill-opacity:1;fill-rule:nonzero;stroke:#999999;stroke-width:0.25;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;color-rendering:auto;image-rendering:auto;shape-rendering:auto;text-rendering:auto;enable-background:accumulate" d="m 108,840.36204 c -4.41236,0 -8.00014,3.58778 -8.00014,8.00014 0,4.41235 3.58778,8.00014 8.00014,8.00014 4.41236,0 8.00014,-3.58779 8.00014,-8.00014 0,-4.41236 -3.58778,-8.00014 -8.00014,-8.00014 z m 0,1.00028 c 3.87192,0 6.99986,3.12794 6.99986,6.99986 0,3.87191 -3.12794,6.99986 -6.99986,6.99986 -3.87192,0 -6.99986,-3.12795 -6.99986,-6.99986 0,-3.87192 3.12794,-6.99986 6.99986,-6.99986 z" id="path3014-4" inkscape:connector-curvature="0" />
141
143
  <rect style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="rect4237" width="2" height="2" x="77" y="889.36218" />
142
144
  <rect style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="rect4239" width="2" height="2" x="81" y="889.36218" />
143
145
  <rect style="fill:#f2f2f2;fill-opacity:1;stroke:none;stroke-width:0.25;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1" id="rect4241" width="2" height="2" x="85" y="889.36218" />
@@ -143,6 +143,8 @@ export default class Browser {
143
143
  open(mode) {
144
144
  // Force only if mode is known, otherwise keep current mode.
145
145
  if (mode) this.mode = mode
146
+ // Get once but use it for each feature later
147
+ this.filterKeys = this.map.getFilterKeys()
146
148
  const container = DomUtil.create('div')
147
149
  // HOTFIX. Remove when this is released:
148
150
  // https://github.com/Leaflet/Leaflet/pull/9052
@@ -203,11 +205,9 @@ export default class Browser {
203
205
  }
204
206
 
205
207
  static backButton(map) {
206
- const button = DomUtil.createButtonIcon(
207
- DomUtil.create('li', '', undefined),
208
- 'icon-back',
209
- translate('Back to browser')
210
- )
208
+ const button = DomUtil.create('li', '')
209
+ DomUtil.create('i', 'icon icon-16 icon-back', button)
210
+ button.title = translate('Back to browser')
211
211
  // Fixme: remove me when this is merged and released
212
212
  // https://github.com/Leaflet/Leaflet/pull/9052
213
213
  DomEvent.disableClickPropagation(button)
@@ -24,7 +24,7 @@ export default class Caption {
24
24
  if (this.map.options.description) {
25
25
  const description = DomUtil.element({
26
26
  tagName: 'div',
27
- className: 'umap-map-description text',
27
+ className: 'umap-map-description',
28
28
  safeHTML: Utils.toHTML(this.map.options.description),
29
29
  parent: container,
30
30
  })
@@ -230,21 +230,13 @@ export default class Importer {
230
230
 
231
231
  openFiles() {
232
232
  this.open()
233
- this.qs('[type=file]').showPicker()
233
+ this.fileInput.showPicker()
234
234
  }
235
235
 
236
236
  submit() {
237
- let hasErrors = false
238
- if (this.format === 'umap') {
239
- hasErrors = !this.full()
240
- } else if (!this.url) {
241
- hasErrors = !this.copy()
242
- } else if (this.action) {
243
- hasErrors = !this[this.action]()
244
- }
245
- if (!hasErrors) {
246
- Alert.info(translate('Data successfully imported!'))
247
- }
237
+ if (this.format === 'umap') this.full()
238
+ else if (!this.url) this.copy()
239
+ else if (this.action) this[this.action]()
248
240
  }
249
241
 
250
242
  full() {
@@ -262,19 +254,16 @@ export default class Importer {
262
254
  } catch (e) {
263
255
  Alert.error(translate('Invalid umap data'))
264
256
  console.error(e)
265
- return false
266
257
  }
267
258
  }
268
259
 
269
260
  link() {
270
- if (!this.url) {
271
- return false
272
- }
261
+ if (!this.url) return
273
262
  if (!this.format) {
274
263
  Alert.error(translate('Please choose a format'))
275
- return false
264
+ return
276
265
  }
277
- const layer = this.layer
266
+ let layer = this.layer
278
267
  layer.options.remoteData = {
279
268
  url: this.url,
280
269
  format: this.format,
@@ -291,9 +280,9 @@ export default class Importer {
291
280
  // Usefull in case of multiple files with different formats.
292
281
  if (!this.format && !this.files.length) {
293
282
  Alert.error(translate('Please choose a format'))
294
- return false
283
+ return
295
284
  }
296
- const layer = this.layer
285
+ let layer = this.layer
297
286
  if (this.clear) layer.empty()
298
287
  if (this.files.length) {
299
288
  for (const file of this.files) {
@@ -28,7 +28,6 @@ export class Importer {
28
28
  if (select.value) {
29
29
  importer.url = select.value
30
30
  importer.format = select.options[select.selectedIndex].dataset.format
31
- importer.layerName = select.options[select.selectedIndex].textContent
32
31
  }
33
32
  importer.dialog.close()
34
33
  }
@@ -124,9 +124,9 @@ export function toHTML(r, options) {
124
124
  }
125
125
 
126
126
  // headings and hr
127
- r = r.replace(/^### (.*)(\r\n|\r|\n)?/gm, '<h6>$1</h6>')
128
- r = r.replace(/^## (.*)(\r\n|\r|\n)?/gm, '<h5>$1</h5>')
129
- r = r.replace(/^# (.*)(\r\n|\r|\n)?/gm, '<h4>$1</h4>')
127
+ r = r.replace(/^### (.*)(\r\n|\r|\n)?/gm, '<h5>$1</h5>')
128
+ r = r.replace(/^## (.*)(\r\n|\r|\n)?/gm, '<h4>$1</h4>')
129
+ r = r.replace(/^# (.*)(\r\n|\r|\n)?/gm, '<h3>$1</h3>')
130
130
  r = r.replace(/^---/gm, '<hr>')
131
131
 
132
132
  // bold, italics
@@ -144,11 +144,7 @@ U.FeatureMixin = {
144
144
  edit: function (e) {
145
145
  if (!this.map.editEnabled || this.isReadOnly()) return
146
146
  const container = L.DomUtil.create('div', 'umap-feature-container')
147
- L.DomUtil.createTitle(
148
- container,
149
- L._('Feature properties'),
150
- `icon-${this.getClassName()}`
151
- )
147
+ L.DomUtil.createTitle(container, L._('Feature properties'), `icon-${this.getClassName()}`)
152
148
 
153
149
  let builder = new U.FormBuilder(
154
150
  this,
@@ -532,7 +528,7 @@ U.FeatureMixin = {
532
528
  },
533
529
 
534
530
  isFiltered: function () {
535
- const filterKeys = this.datalayer.getFilterKeys()
531
+ const filterKeys = this.map.getFilterKeys()
536
532
  const filter = this.map.browser.options.filter
537
533
  if (filter && !this.matchFilter(filter, filterKeys)) return true
538
534
  if (!this.matchFacets()) return true
@@ -541,10 +537,6 @@ U.FeatureMixin = {
541
537
 
542
538
  matchFilter: function (filter, keys) {
543
539
  filter = filter.toLowerCase()
544
- if (U.Utils.hasVar(keys)) {
545
- return this.getDisplayName().toLowerCase().indexOf(filter) !== -1
546
- }
547
- keys = keys.split(',')
548
540
  for (let i = 0, value; i < keys.length; i++) {
549
541
  value = (this.properties[keys[i]] || '') + ''
550
542
  if (value.toLowerCase().indexOf(filter) !== -1) return true
@@ -606,7 +598,7 @@ U.FeatureMixin = {
606
598
  if (locale) properties.locale = locale
607
599
  if (L.lang) properties.lang = L.lang
608
600
  properties.rank = this.getRank() + 1
609
- if (this._map && this.hasGeom()) {
601
+ if (this.hasGeom()) {
610
602
  center = this.getCenter()
611
603
  properties.lat = center.lat
612
604
  properties.lon = center.lng