umap-project 3.0.6__py3-none-any.whl → 3.1.1__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 (143) hide show
  1. umap/__init__.py +1 -1
  2. umap/forms.py +1 -1
  3. umap/locale/br/LC_MESSAGES/django.mo +0 -0
  4. umap/locale/br/LC_MESSAGES/django.po +219 -72
  5. umap/locale/ca/LC_MESSAGES/django.mo +0 -0
  6. umap/locale/ca/LC_MESSAGES/django.po +286 -95
  7. umap/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
  8. umap/locale/cs_CZ/LC_MESSAGES/django.po +211 -65
  9. umap/locale/da/LC_MESSAGES/django.mo +0 -0
  10. umap/locale/da/LC_MESSAGES/django.po +394 -202
  11. umap/locale/de/LC_MESSAGES/django.mo +0 -0
  12. umap/locale/de/LC_MESSAGES/django.po +146 -75
  13. umap/locale/el/LC_MESSAGES/django.mo +0 -0
  14. umap/locale/el/LC_MESSAGES/django.po +125 -59
  15. umap/locale/en/LC_MESSAGES/django.po +124 -58
  16. umap/locale/es/LC_MESSAGES/django.mo +0 -0
  17. umap/locale/es/LC_MESSAGES/django.po +125 -59
  18. umap/locale/et/LC_MESSAGES/django.mo +0 -0
  19. umap/locale/et/LC_MESSAGES/django.po +210 -64
  20. umap/locale/eu/LC_MESSAGES/django.mo +0 -0
  21. umap/locale/eu/LC_MESSAGES/django.po +212 -65
  22. umap/locale/fa_IR/LC_MESSAGES/django.mo +0 -0
  23. umap/locale/fa_IR/LC_MESSAGES/django.po +286 -95
  24. umap/locale/fr/LC_MESSAGES/django.mo +0 -0
  25. umap/locale/fr/LC_MESSAGES/django.po +125 -59
  26. umap/locale/gl/LC_MESSAGES/django.mo +0 -0
  27. umap/locale/gl/LC_MESSAGES/django.po +212 -66
  28. umap/locale/hu/LC_MESSAGES/django.mo +0 -0
  29. umap/locale/hu/LC_MESSAGES/django.po +148 -78
  30. umap/locale/is/LC_MESSAGES/django.mo +0 -0
  31. umap/locale/is/LC_MESSAGES/django.po +130 -60
  32. umap/locale/it/LC_MESSAGES/django.mo +0 -0
  33. umap/locale/it/LC_MESSAGES/django.po +125 -59
  34. umap/locale/ms/LC_MESSAGES/django.mo +0 -0
  35. umap/locale/ms/LC_MESSAGES/django.po +289 -98
  36. umap/locale/nl/LC_MESSAGES/django.mo +0 -0
  37. umap/locale/nl/LC_MESSAGES/django.po +128 -61
  38. umap/locale/pl/LC_MESSAGES/django.mo +0 -0
  39. umap/locale/pl/LC_MESSAGES/django.po +287 -96
  40. umap/locale/pt/LC_MESSAGES/django.mo +0 -0
  41. umap/locale/pt/LC_MESSAGES/django.po +211 -65
  42. umap/locale/zh_TW/LC_MESSAGES/django.mo +0 -0
  43. umap/locale/zh_TW/LC_MESSAGES/django.po +212 -66
  44. umap/management/commands/migrate_to_S3.py +42 -20
  45. umap/management/commands/purge_old_versions.py +63 -0
  46. umap/management/commands/switch_user.py +52 -0
  47. umap/managers.py +29 -2
  48. umap/middleware.py +1 -1
  49. umap/migrations/0028_map_is_template.py +21 -0
  50. umap/models.py +14 -4
  51. umap/settings/base.py +22 -0
  52. umap/static/umap/base.css +4 -2
  53. umap/static/umap/content.css +1 -1
  54. umap/static/umap/css/dialog.css +5 -2
  55. umap/static/umap/css/form.css +19 -12
  56. umap/static/umap/css/icon.css +6 -0
  57. umap/static/umap/css/importers.css +4 -0
  58. umap/static/umap/css/panel.css +2 -0
  59. umap/static/umap/img/16-white.svg +5 -1
  60. umap/static/umap/img/16.svg +1 -1
  61. umap/static/umap/img/24-white.svg +3 -2
  62. umap/static/umap/img/24.svg +3 -4
  63. umap/static/umap/img/importers/opendata.svg +1 -0
  64. umap/static/umap/img/providers/bitbucket.png +0 -0
  65. umap/static/umap/img/source/16-white.svg +8 -4
  66. umap/static/umap/img/source/16.svg +1 -1
  67. umap/static/umap/img/source/24-white.svg +5 -4
  68. umap/static/umap/img/source/24.svg +5 -6
  69. umap/static/umap/js/components/modal.js +27 -0
  70. umap/static/umap/js/modules/caption.js +4 -4
  71. umap/static/umap/js/modules/data/features.js +40 -4
  72. umap/static/umap/js/modules/data/layer.js +208 -138
  73. umap/static/umap/js/modules/form/builder.js +6 -14
  74. umap/static/umap/js/modules/form/fields.js +2 -2
  75. umap/static/umap/js/modules/help.js +11 -3
  76. umap/static/umap/js/modules/importer.js +7 -4
  77. umap/static/umap/js/modules/importers/opendata.js +142 -0
  78. umap/static/umap/js/modules/permissions.js +3 -3
  79. umap/static/umap/js/modules/rendering/controls.js +34 -2
  80. umap/static/umap/js/modules/rendering/icon.js +2 -2
  81. umap/static/umap/js/modules/rendering/layers/base.js +1 -1
  82. umap/static/umap/js/modules/rendering/layers/classified.js +55 -49
  83. umap/static/umap/js/modules/rendering/layers/cluster.js +16 -9
  84. umap/static/umap/js/modules/rendering/layers/heat.js +13 -11
  85. umap/static/umap/js/modules/rendering/map.js +5 -0
  86. umap/static/umap/js/modules/rendering/ui.js +23 -0
  87. umap/static/umap/js/modules/rules.js +24 -23
  88. umap/static/umap/js/modules/schema.js +60 -4
  89. umap/static/umap/js/modules/sync/updaters.js +7 -3
  90. umap/static/umap/js/modules/tableeditor.js +7 -30
  91. umap/static/umap/js/modules/templates.js +122 -0
  92. umap/static/umap/js/modules/ui/bar.js +13 -3
  93. umap/static/umap/js/modules/ui/panel.js +1 -1
  94. umap/static/umap/js/modules/umap.js +28 -13
  95. umap/static/umap/js/umap.controls.js +11 -4
  96. umap/static/umap/locale/br.js +51 -18
  97. umap/static/umap/locale/br.json +51 -18
  98. umap/static/umap/locale/da.js +343 -310
  99. umap/static/umap/locale/da.json +343 -310
  100. umap/static/umap/locale/de.js +40 -7
  101. umap/static/umap/locale/de.json +40 -7
  102. umap/static/umap/locale/el.js +31 -4
  103. umap/static/umap/locale/el.json +31 -4
  104. umap/static/umap/locale/en.js +33 -1
  105. umap/static/umap/locale/en.json +33 -1
  106. umap/static/umap/locale/es.js +37 -4
  107. umap/static/umap/locale/es.json +37 -4
  108. umap/static/umap/locale/fr.js +34 -1
  109. umap/static/umap/locale/fr.json +34 -1
  110. umap/static/umap/locale/hu.js +44 -17
  111. umap/static/umap/locale/hu.json +44 -17
  112. umap/static/umap/locale/it.js +74 -41
  113. umap/static/umap/locale/it.json +74 -41
  114. umap/static/umap/locale/nl.js +42 -9
  115. umap/static/umap/locale/nl.json +42 -9
  116. umap/static/umap/map.css +3 -23
  117. umap/static/umap/vendors/textpath/leaflet.textpath.js +184 -0
  118. umap/storage/fs.py +19 -9
  119. umap/templates/umap/dashboard_menu.html +5 -0
  120. umap/templates/umap/design_system.html +9 -0
  121. umap/templates/umap/js.html +3 -0
  122. umap/templates/umap/map_list.html +2 -2
  123. umap/templates/umap/map_table.html +18 -18
  124. umap/templates/umap/user_dashboard.html +9 -58
  125. umap/templates/umap/user_map_table.html +36 -0
  126. umap/templates/umap/user_templates.html +19 -0
  127. umap/templatetags/umap_tags.py +5 -0
  128. umap/tests/integration/test_conditional_rules.py +57 -0
  129. umap/tests/integration/test_datalayer.py +16 -9
  130. umap/tests/integration/test_edit_marker.py +11 -0
  131. umap/tests/integration/test_tableeditor.py +42 -7
  132. umap/tests/integration/test_templates.py +44 -0
  133. umap/tests/test_dashboard.py +19 -0
  134. umap/tests/test_purge_old_versions.py +91 -0
  135. umap/tests/test_switch_user.py +31 -0
  136. umap/tests/test_views.py +67 -0
  137. umap/urls.py +7 -1
  138. umap/views.py +64 -18
  139. {umap_project-3.0.6.dist-info → umap_project-3.1.1.dist-info}/METADATA +13 -13
  140. {umap_project-3.0.6.dist-info → umap_project-3.1.1.dist-info}/RECORD +143 -130
  141. {umap_project-3.0.6.dist-info → umap_project-3.1.1.dist-info}/WHEEL +0 -0
  142. {umap_project-3.0.6.dist-info → umap_project-3.1.1.dist-info}/entry_points.txt +0 -0
  143. {umap_project-3.0.6.dist-info → umap_project-3.1.1.dist-info}/licenses/LICENSE +0 -0
@@ -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: 2025-04-25 15:38+0000\n"
11
+ "POT-Creation-Date: 2025-06-10 09:19+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"
@@ -41,7 +41,7 @@ msgstr ""
41
41
  msgid "name"
42
42
  msgstr ""
43
43
 
44
- #: models.py:63 models.py:493
44
+ #: models.py:63 models.py:503
45
45
  msgid "description"
46
46
  msgstr ""
47
47
 
@@ -61,23 +61,23 @@ msgstr ""
61
61
  msgid "Order of the tilelayers in the edit box"
62
62
  msgstr ""
63
63
 
64
- #: models.py:176 models.py:487
64
+ #: models.py:176 models.py:497
65
65
  msgid "Only editable with secret edit link"
66
66
  msgstr ""
67
67
 
68
- #: models.py:177 models.py:488
68
+ #: models.py:177 models.py:498
69
69
  msgid "Everyone can edit"
70
70
  msgstr ""
71
71
 
72
- #: models.py:180 models.py:481
72
+ #: models.py:180 models.py:491
73
73
  msgid "Everyone"
74
74
  msgstr ""
75
75
 
76
- #: models.py:181 models.py:190 models.py:482
76
+ #: models.py:181 models.py:190 models.py:492
77
77
  msgid "Editors and team only"
78
78
  msgstr ""
79
79
 
80
- #: models.py:182 models.py:483
80
+ #: models.py:182 models.py:493
81
81
  msgid "Owner only"
82
82
  msgstr ""
83
83
 
@@ -97,7 +97,7 @@ msgstr ""
97
97
  msgid "Blocked"
98
98
  msgstr ""
99
99
 
100
- #: models.py:192 models.py:477
100
+ #: models.py:192 models.py:487
101
101
  msgid "Deleted"
102
102
  msgstr ""
103
103
 
@@ -137,99 +137,123 @@ msgstr ""
137
137
  msgid "team"
138
138
  msgstr ""
139
139
 
140
- #: models.py:230 models.py:509
140
+ #: models.py:230 models.py:519
141
141
  msgid "edit status"
142
142
  msgstr ""
143
143
 
144
- #: models.py:235 models.py:514
144
+ #: models.py:235 models.py:524
145
145
  msgid "share status"
146
146
  msgstr ""
147
147
 
148
- #: models.py:238 models.py:504
148
+ #: models.py:238 models.py:514
149
149
  msgid "settings"
150
150
  msgstr ""
151
151
 
152
- #: models.py:410
152
+ #: models.py:243
153
+ msgid "save as template"
154
+ msgstr ""
155
+
156
+ #: models.py:244
157
+ msgid "This map is a template map."
158
+ msgstr ""
159
+
160
+ #: models.py:420
153
161
  msgid "Clone of"
154
162
  msgstr ""
155
163
 
156
- #: models.py:476 models.py:480 models.py:486
164
+ #: models.py:486 models.py:490 models.py:496
157
165
  msgid "Inherit"
158
166
  msgstr ""
159
167
 
160
- #: models.py:499
168
+ #: models.py:509
161
169
  msgid "display on load"
162
170
  msgstr ""
163
171
 
164
- #: models.py:500
172
+ #: models.py:510
165
173
  msgid "Display this layer on load."
166
174
  msgstr ""
167
175
 
168
- #: settings/base.py:296
176
+ #: settings/base.py:283
177
+ msgid "uMap user documentation"
178
+ msgstr ""
179
+
180
+ #: settings/base.py:288
181
+ msgid "Video tutorials"
182
+ msgstr ""
183
+
184
+ #: settings/base.py:293
185
+ msgid "OpenStreetMap.org forum"
186
+ msgstr ""
187
+
188
+ #: settings/base.py:298
189
+ msgid "OpenStreetMap France forum"
190
+ msgstr ""
191
+
192
+ #: settings/base.py:318
169
193
  msgid "Art and Culture"
170
194
  msgstr ""
171
195
 
172
- #: settings/base.py:297
196
+ #: settings/base.py:319
173
197
  msgid "Cycling"
174
198
  msgstr ""
175
199
 
176
- #: settings/base.py:298
200
+ #: settings/base.py:320
177
201
  msgid "Business"
178
202
  msgstr ""
179
203
 
180
- #: settings/base.py:299
204
+ #: settings/base.py:321
181
205
  msgid "Environment"
182
206
  msgstr ""
183
207
 
184
- #: settings/base.py:300
208
+ #: settings/base.py:322
185
209
  msgid "Education"
186
210
  msgstr ""
187
211
 
188
- #: settings/base.py:301
212
+ #: settings/base.py:323
189
213
  msgid "Food and Agriculture"
190
214
  msgstr ""
191
215
 
192
- #: settings/base.py:302
216
+ #: settings/base.py:324
193
217
  msgid "Geopolitics"
194
218
  msgstr ""
195
219
 
196
- #: settings/base.py:303
220
+ #: settings/base.py:325
197
221
  msgid "Health"
198
222
  msgstr ""
199
223
 
200
- #: settings/base.py:304
224
+ #: settings/base.py:326
201
225
  msgid "Hiking"
202
226
  msgstr ""
203
227
 
204
- #: settings/base.py:305
228
+ #: settings/base.py:327
205
229
  msgid "History"
206
230
  msgstr ""
207
231
 
208
- #: settings/base.py:306
232
+ #: settings/base.py:328
209
233
  msgid "Public sector"
210
234
  msgstr ""
211
235
 
212
- #: settings/base.py:307
236
+ #: settings/base.py:329
213
237
  msgid "Science"
214
238
  msgstr ""
215
239
 
216
- #: settings/base.py:308
240
+ #: settings/base.py:330
217
241
  msgid "Shopping"
218
242
  msgstr ""
219
243
 
220
- #: settings/base.py:309
244
+ #: settings/base.py:331
221
245
  msgid "Sport and Leisure"
222
246
  msgstr ""
223
247
 
224
- #: settings/base.py:310
248
+ #: settings/base.py:332
225
249
  msgid "Travel"
226
250
  msgstr ""
227
251
 
228
- #: settings/base.py:311
252
+ #: settings/base.py:333
229
253
  msgid "Transports"
230
254
  msgstr ""
231
255
 
232
- #: settings/base.py:312
256
+ #: settings/base.py:334
233
257
  msgid "Tourism"
234
258
  msgstr ""
235
259
 
@@ -375,7 +399,7 @@ msgid "And it's <a href=\"%(repo_url)s\">open source</a>!"
375
399
  msgstr ""
376
400
 
377
401
  #: templates/umap/about_summary.html:63 templates/umap/navigation.html:39
378
- #: templates/umap/user_dashboard.html:40
402
+ #: templates/umap/user_dashboard.html:16
379
403
  msgid "Create a map"
380
404
  msgstr ""
381
405
 
@@ -473,11 +497,20 @@ msgstr ""
473
497
  msgid "My Maps"
474
498
  msgstr ""
475
499
 
476
- #: templates/umap/dashboard_menu.html:12
500
+ #: templates/umap/dashboard_menu.html:11
501
+ #, python-format
502
+ msgid "My Templates (%(count)s)"
503
+ msgstr ""
504
+
505
+ #: templates/umap/dashboard_menu.html:13 templates/umap/user_templates.html:6
506
+ msgid "My Templates"
507
+ msgstr ""
508
+
509
+ #: templates/umap/dashboard_menu.html:17
477
510
  msgid "My profile"
478
511
  msgstr ""
479
512
 
480
- #: templates/umap/dashboard_menu.html:15
513
+ #: templates/umap/dashboard_menu.html:20
481
514
  msgid "My teams"
482
515
  msgstr ""
483
516
 
@@ -493,10 +526,18 @@ msgstr ""
493
526
  msgid "You are logged in. Continuing..."
494
527
  msgstr ""
495
528
 
496
- #: templates/umap/map_list.html:18 views.py:444
529
+ #: templates/umap/map_list.html:15
530
+ msgid "template"
531
+ msgstr ""
532
+
533
+ #: templates/umap/map_list.html:18 views.py:458
497
534
  msgid "by"
498
535
  msgstr ""
499
536
 
537
+ #: templates/umap/map_list.html:22
538
+ msgid "See the template"
539
+ msgstr ""
540
+
500
541
  #: templates/umap/map_list.html:22
501
542
  msgid "See the map"
502
543
  msgstr ""
@@ -533,7 +574,7 @@ msgstr ""
533
574
  msgid "Actions"
534
575
  msgstr ""
535
576
 
536
- #: templates/umap/map_table.html:41 templates/umap/map_table.html:43
577
+ #: templates/umap/map_table.html:40 templates/umap/map_table.html:42
537
578
  msgid "Open preview"
538
579
  msgstr ""
539
580
 
@@ -659,7 +700,7 @@ msgid_plural "%(count)s maps found:"
659
700
  msgstr[0] ""
660
701
  msgstr[1] ""
661
702
 
662
- #: templates/umap/search.html:30
703
+ #: templates/umap/search.html:30 templates/umap/user_dashboard.html:17
663
704
  msgid "No map found."
664
705
  msgstr ""
665
706
 
@@ -714,20 +755,20 @@ msgstr ""
714
755
  msgid "Add user"
715
756
  msgstr ""
716
757
 
717
- #: templates/umap/user_dashboard.html:9 templates/umap/user_dashboard.html:25
758
+ #: templates/umap/user_dashboard.html:10
718
759
  msgid "Search my maps"
719
760
  msgstr ""
720
761
 
721
- #: templates/umap/user_dashboard.html:17 templates/umap/user_dashboard.html:22
722
- msgid "Map’s title"
762
+ #: templates/umap/user_dashboard.html:11
763
+ msgid "Map’s name"
723
764
  msgstr ""
724
765
 
725
- #: templates/umap/user_dashboard.html:30
766
+ #: templates/umap/user_dashboard.html:12
726
767
  #, python-format
727
768
  msgid "Download %(count)s maps"
728
769
  msgstr ""
729
770
 
730
- #: templates/umap/user_dashboard.html:40
771
+ #: templates/umap/user_dashboard.html:15
731
772
  msgid "You have no map yet."
732
773
  msgstr ""
733
774
 
@@ -743,70 +784,95 @@ msgstr ""
743
784
  msgid "New team"
744
785
  msgstr ""
745
786
 
746
- #: views.py:235
787
+ #: templates/umap/user_templates.html:10
788
+ msgid "Search my templates"
789
+ msgstr ""
790
+
791
+ #: templates/umap/user_templates.html:11
792
+ msgid "Template’s name"
793
+ msgstr ""
794
+
795
+ #: templates/umap/user_templates.html:12
796
+ #, python-format
797
+ msgid "Download %(count)s templates"
798
+ msgstr ""
799
+
800
+ #: templates/umap/user_templates.html:15
801
+ msgid "You have no template yet."
802
+ msgstr ""
803
+
804
+ #: templates/umap/user_templates.html:16
805
+ msgid "Create a template"
806
+ msgstr ""
807
+
808
+ #: templates/umap/user_templates.html:17
809
+ msgid "No template found."
810
+ msgstr ""
811
+
812
+ #: views.py:233
747
813
  msgid "Cannot delete a team with more than one member"
748
814
  msgstr ""
749
815
 
750
- #: views.py:239
816
+ #: views.py:237
751
817
  #, python-format
752
818
  msgid "Team “%(name)s” has been deleted"
753
819
  msgstr ""
754
820
 
755
- #: views.py:449
821
+ #: views.py:463
756
822
  msgid "View the map"
757
823
  msgstr ""
758
824
 
759
- #: views.py:845
825
+ #: views.py:864
760
826
  msgid "See full screen"
761
827
  msgstr ""
762
828
 
763
- #: views.py:988
829
+ #: views.py:1007
764
830
  msgid "Map editors updated with success!"
765
831
  msgstr ""
766
832
 
767
- #: views.py:1024
833
+ #: views.py:1043
768
834
  #, python-format
769
835
  msgid "The uMap edit link for your map: %(map_name)s"
770
836
  msgstr ""
771
837
 
772
- #: views.py:1027
838
+ #: views.py:1046
773
839
  #, python-format
774
840
  msgid "Here is your secret edit link: %(link)s"
775
841
  msgstr ""
776
842
 
777
- #: views.py:1034
843
+ #: views.py:1053
778
844
  #, python-format
779
845
  msgid "Can't send email to %(email)s"
780
846
  msgstr ""
781
847
 
782
- #: views.py:1037
848
+ #: views.py:1056
783
849
  #, python-format
784
850
  msgid "Email sent to %(email)s"
785
851
  msgstr ""
786
852
 
787
- #: views.py:1048
853
+ #: views.py:1067
788
854
  msgid "Only its owner can delete the map."
789
855
  msgstr ""
790
856
 
791
- #: views.py:1054
857
+ #: views.py:1073
792
858
  msgid "Map successfully deleted."
793
859
  msgstr ""
794
860
 
795
- #: views.py:1080
861
+ #: views.py:1099
796
862
  #, python-format
797
863
  msgid ""
798
864
  "Your map has been cloned! If you want to edit this map from another "
799
865
  "computer, please use this link: %(anonymous_url)s"
800
866
  msgstr ""
801
867
 
802
- #: views.py:1085
868
+ #: views.py:1104
803
869
  msgid "Congratulations, your map has been cloned!"
804
870
  msgstr ""
805
871
 
806
- #: views.py:1339
872
+ #: views.py:1358
807
873
  msgid "Layer successfully deleted."
808
874
  msgstr ""
809
875
 
810
- #: views.py:1361
876
+ #: views.py:1380
811
877
  msgid "Permissions updated with success!"
812
878
  msgstr ""
Binary file