umap-project 2.5.1__py3-none-any.whl → 2.6.0b0__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.
- umap/__init__.py +1 -1
- umap/admin.py +6 -1
- umap/context_processors.py +2 -1
- umap/decorators.py +13 -2
- umap/forms.py +26 -2
- umap/locale/br/LC_MESSAGES/django.mo +0 -0
- umap/locale/br/LC_MESSAGES/django.po +252 -146
- umap/locale/ca/LC_MESSAGES/django.mo +0 -0
- umap/locale/ca/LC_MESSAGES/django.po +274 -162
- umap/locale/cs_CZ/LC_MESSAGES/django.mo +0 -0
- umap/locale/cs_CZ/LC_MESSAGES/django.po +261 -150
- umap/locale/de/LC_MESSAGES/django.mo +0 -0
- umap/locale/de/LC_MESSAGES/django.po +299 -187
- umap/locale/el/LC_MESSAGES/django.mo +0 -0
- umap/locale/el/LC_MESSAGES/django.po +215 -159
- umap/locale/en/LC_MESSAGES/django.po +211 -155
- umap/locale/es/LC_MESSAGES/django.mo +0 -0
- umap/locale/es/LC_MESSAGES/django.po +255 -144
- umap/locale/eu/LC_MESSAGES/django.mo +0 -0
- umap/locale/eu/LC_MESSAGES/django.po +254 -198
- umap/locale/fa_IR/LC_MESSAGES/django.mo +0 -0
- umap/locale/fa_IR/LC_MESSAGES/django.po +346 -234
- umap/locale/fr/LC_MESSAGES/django.mo +0 -0
- umap/locale/fr/LC_MESSAGES/django.po +216 -160
- umap/locale/hu/LC_MESSAGES/django.mo +0 -0
- umap/locale/hu/LC_MESSAGES/django.po +215 -159
- umap/locale/it/LC_MESSAGES/django.mo +0 -0
- umap/locale/it/LC_MESSAGES/django.po +252 -146
- umap/locale/ms/LC_MESSAGES/django.mo +0 -0
- umap/locale/ms/LC_MESSAGES/django.po +252 -146
- umap/locale/pl/LC_MESSAGES/django.mo +0 -0
- umap/locale/pl/LC_MESSAGES/django.po +254 -148
- umap/locale/pt/LC_MESSAGES/django.mo +0 -0
- umap/locale/pt/LC_MESSAGES/django.po +215 -159
- umap/locale/sv/LC_MESSAGES/django.mo +0 -0
- umap/locale/sv/LC_MESSAGES/django.po +254 -143
- umap/locale/th_TH/LC_MESSAGES/django.mo +0 -0
- umap/locale/th_TH/LC_MESSAGES/django.po +125 -70
- umap/locale/zh_TW/LC_MESSAGES/django.mo +0 -0
- umap/locale/zh_TW/LC_MESSAGES/django.po +256 -145
- umap/migrations/0022_add_team.py +94 -0
- umap/models.py +45 -10
- umap/settings/__init__.py +2 -0
- umap/settings/base.py +3 -2
- umap/static/umap/base.css +32 -41
- umap/static/umap/content.css +19 -25
- umap/static/umap/css/icon.css +63 -37
- umap/static/umap/css/importers.css +1 -1
- umap/static/umap/css/slideshow.css +7 -5
- umap/static/umap/css/tableeditor.css +4 -3
- umap/static/umap/img/16-white.svg +1 -4
- umap/static/umap/img/16.svg +2 -6
- umap/static/umap/img/24-white.svg +4 -4
- umap/static/umap/img/24.svg +6 -6
- umap/static/umap/img/source/16-white.svg +2 -5
- umap/static/umap/img/source/16.svg +3 -7
- umap/static/umap/img/source/24-white.svg +7 -14
- umap/static/umap/img/source/24.svg +10 -17
- umap/static/umap/js/components/alerts/alert.css +20 -8
- umap/static/umap/js/modules/autocomplete.js +3 -3
- umap/static/umap/js/modules/browser.js +4 -3
- umap/static/umap/js/modules/caption.js +9 -11
- umap/static/umap/js/modules/data/features.js +994 -0
- umap/static/umap/js/modules/data/layer.js +1210 -0
- umap/static/umap/js/modules/formatter.js +12 -3
- umap/static/umap/js/modules/global.js +21 -5
- umap/static/umap/js/modules/permissions.js +280 -0
- umap/static/umap/js/{umap.icon.js → modules/rendering/icon.js} +77 -56
- umap/static/umap/js/modules/rendering/layers/base.js +105 -0
- umap/static/umap/js/modules/rendering/layers/classified.js +484 -0
- umap/static/umap/js/modules/rendering/layers/cluster.js +103 -0
- umap/static/umap/js/modules/rendering/layers/heat.js +182 -0
- umap/static/umap/js/modules/rendering/popup.js +99 -0
- umap/static/umap/js/modules/rendering/template.js +217 -0
- umap/static/umap/js/modules/rendering/ui.js +573 -0
- umap/static/umap/js/modules/schema.js +24 -0
- umap/static/umap/js/modules/share.js +66 -45
- umap/static/umap/js/modules/sync/updaters.js +9 -10
- umap/static/umap/js/modules/tableeditor.js +7 -7
- umap/static/umap/js/modules/ui/dialog.js +8 -4
- umap/static/umap/js/modules/utils.js +22 -13
- umap/static/umap/js/umap.controls.js +79 -146
- umap/static/umap/js/umap.core.js +9 -9
- umap/static/umap/js/umap.forms.js +32 -12
- umap/static/umap/js/umap.js +65 -63
- umap/static/umap/locale/br.js +35 -35
- umap/static/umap/locale/br.json +35 -35
- umap/static/umap/locale/ca.js +50 -50
- umap/static/umap/locale/ca.json +50 -50
- umap/static/umap/locale/de.js +136 -136
- umap/static/umap/locale/de.json +136 -136
- umap/static/umap/locale/el.js +47 -47
- umap/static/umap/locale/el.json +47 -47
- umap/static/umap/locale/en.js +7 -1
- umap/static/umap/locale/en.json +7 -1
- umap/static/umap/locale/fa_IR.js +44 -44
- umap/static/umap/locale/fa_IR.json +44 -44
- umap/static/umap/locale/fr.js +8 -2
- umap/static/umap/locale/fr.json +8 -2
- umap/static/umap/locale/pt.js +17 -17
- umap/static/umap/locale/pt.json +17 -17
- umap/static/umap/locale/pt_PT.js +207 -207
- umap/static/umap/locale/pt_PT.json +207 -207
- umap/static/umap/locale/th_TH.js +25 -25
- umap/static/umap/locale/th_TH.json +25 -25
- umap/static/umap/map.css +107 -104
- umap/static/umap/nav.css +19 -10
- umap/static/umap/unittests/utils.js +230 -107
- umap/static/umap/vendors/csv2geojson/csv2geojson.js +62 -40
- umap/static/umap/vendors/markercluster/MarkerCluster.Default.css +1 -1
- umap/storage.py +1 -0
- umap/templates/404.html +5 -1
- umap/templates/500.html +3 -1
- umap/templates/auth/user_detail.html +8 -2
- umap/templates/auth/user_form.html +19 -10
- umap/templates/auth/user_stars.html +8 -2
- umap/templates/base.html +1 -0
- umap/templates/registration/login.html +18 -3
- umap/templates/umap/about.html +1 -0
- umap/templates/umap/about_summary.html +22 -7
- umap/templates/umap/components/alerts/alert.html +42 -21
- umap/templates/umap/content.html +2 -0
- umap/templates/umap/content_footer.html +6 -2
- umap/templates/umap/css.html +1 -0
- umap/templates/umap/dashboard_menu.html +15 -0
- umap/templates/umap/home.html +14 -4
- umap/templates/umap/js.html +4 -9
- umap/templates/umap/login_popup_end.html +10 -4
- umap/templates/umap/map_detail.html +8 -2
- umap/templates/umap/map_fragment.html +3 -1
- umap/templates/umap/map_init.html +2 -1
- umap/templates/umap/map_list.html +4 -3
- umap/templates/umap/map_table.html +36 -12
- umap/templates/umap/messages.html +0 -1
- umap/templates/umap/navigation.html +2 -1
- umap/templates/umap/password_change.html +5 -1
- umap/templates/umap/password_change_done.html +8 -2
- umap/templates/umap/search.html +8 -2
- umap/templates/umap/search_bar.html +1 -0
- umap/templates/umap/team_confirm_delete.html +19 -0
- umap/templates/umap/team_detail.html +27 -0
- umap/templates/umap/team_form.html +60 -0
- umap/templates/umap/user_dashboard.html +7 -9
- umap/templates/umap/user_teams.html +51 -0
- umap/tests/base.py +8 -1
- umap/tests/conftest.py +6 -0
- umap/tests/fixtures/test_circles_layer.geojson +219 -0
- umap/tests/fixtures/test_upload_georss.xml +20 -0
- umap/tests/integration/conftest.py +18 -4
- umap/tests/integration/helpers.py +12 -0
- umap/tests/integration/test_anonymous_owned_map.py +23 -0
- umap/tests/integration/test_basics.py +29 -0
- umap/tests/integration/test_caption.py +20 -0
- umap/tests/integration/test_circles_layer.py +69 -0
- umap/tests/integration/test_draw_polygon.py +110 -13
- umap/tests/integration/test_draw_polyline.py +8 -18
- umap/tests/integration/test_edit_datalayer.py +1 -1
- umap/tests/integration/test_import.py +64 -5
- umap/tests/integration/test_owned_map.py +21 -13
- umap/tests/integration/test_team.py +47 -0
- umap/tests/integration/test_tilelayer.py +19 -2
- umap/tests/integration/test_view_marker.py +28 -1
- umap/tests/integration/test_websocket_sync.py +5 -5
- umap/tests/test_datalayer.py +32 -7
- umap/tests/test_datalayer_views.py +1 -1
- umap/tests/test_map.py +30 -4
- umap/tests/test_map_views.py +2 -2
- umap/tests/test_statics.py +40 -0
- umap/tests/test_team_views.py +131 -0
- umap/tests/test_views.py +15 -1
- umap/urls.py +23 -13
- umap/views.py +116 -10
- {umap_project-2.5.1.dist-info → umap_project-2.6.0b0.dist-info}/METADATA +9 -9
- {umap_project-2.5.1.dist-info → umap_project-2.6.0b0.dist-info}/RECORD +177 -170
- umap/static/umap/js/umap.datalayer.permissions.js +0 -70
- umap/static/umap/js/umap.features.js +0 -1290
- umap/static/umap/js/umap.layer.js +0 -1837
- umap/static/umap/js/umap.permissions.js +0 -208
- umap/static/umap/js/umap.popup.js +0 -341
- umap/static/umap/test/TableEditor.js +0 -104
- umap/static/umap/vendors/leaflet/leaflet-src.js +0 -14512
- umap/static/umap/vendors/leaflet/leaflet-src.js.map +0 -1
- umap/static/umap/vendors/leaflet/leaflet.js +0 -6
- umap/static/umap/vendors/leaflet/leaflet.js.map +0 -1
- umap/static/umap/vendors/markercluster/WhereAreTheJavascriptFiles.txt +0 -5
- umap/static/umap/vendors/markercluster/leaflet.markercluster-src.js +0 -2718
- umap/static/umap/vendors/markercluster/leaflet.markercluster-src.js.map +0 -1
- umap/static/umap/vendors/toolbar/leaflet.toolbar-src.css +0 -117
- umap/static/umap/vendors/toolbar/leaflet.toolbar-src.js +0 -365
- umap/tests/integration/test_statics.py +0 -47
- {umap_project-2.5.1.dist-info → umap_project-2.6.0b0.dist-info}/WHEEL +0 -0
- {umap_project-2.5.1.dist-info → umap_project-2.6.0b0.dist-info}/entry_points.txt +0 -0
- {umap_project-2.5.1.dist-info → umap_project-2.6.0b0.dist-info}/licenses/LICENSE +0 -0
umap/static/umap/js/umap.js
CHANGED
|
@@ -62,8 +62,10 @@ U.Map = L.Map.extend({
|
|
|
62
62
|
this.editPanel = new U.EditPanel(this)
|
|
63
63
|
this.fullPanel = new U.FullPanel(this)
|
|
64
64
|
}
|
|
65
|
-
|
|
66
|
-
|
|
65
|
+
if (!this.options.noControl) {
|
|
66
|
+
L.DomEvent.on(document.body, 'dataloading', (e) => this.fire('dataloading', e))
|
|
67
|
+
L.DomEvent.on(document.body, 'dataload', (e) => this.fire('dataload', e))
|
|
68
|
+
}
|
|
67
69
|
this.server = new U.ServerRequest()
|
|
68
70
|
this.request = new U.Request()
|
|
69
71
|
|
|
@@ -193,7 +195,7 @@ U.Map = L.Map.extend({
|
|
|
193
195
|
window.onbeforeunload = () => (this.editEnabled && this.isDirty) || null
|
|
194
196
|
this.backup()
|
|
195
197
|
this.initContextMenu()
|
|
196
|
-
this.on('click
|
|
198
|
+
this.on('click', this.closeInplaceToolbar)
|
|
197
199
|
},
|
|
198
200
|
|
|
199
201
|
initSyncEngine: async function () {
|
|
@@ -393,7 +395,7 @@ U.Map = L.Map.extend({
|
|
|
393
395
|
this._controls.search = new U.SearchControl()
|
|
394
396
|
this._controls.embed = new L.Control.Embed(this)
|
|
395
397
|
this._controls.tilelayersChooser = new U.TileLayerChooser(this)
|
|
396
|
-
if (this.options.user) this._controls.star = new U.StarControl(this)
|
|
398
|
+
if (this.options.user?.id) this._controls.star = new U.StarControl(this)
|
|
397
399
|
this._controls.editinosm = new L.Control.EditInOSM({
|
|
398
400
|
position: 'topleft',
|
|
399
401
|
widgetOptions: {
|
|
@@ -841,11 +843,9 @@ U.Map = L.Map.extend({
|
|
|
841
843
|
this.options.tilelayer = tilelayer.toJSON()
|
|
842
844
|
this.isDirty = true
|
|
843
845
|
}
|
|
844
|
-
if (this._controls.tilelayersChooser)
|
|
845
|
-
this._controls.tilelayersChooser.openSwitcher({
|
|
846
|
-
|
|
847
|
-
className: 'dark',
|
|
848
|
-
})
|
|
846
|
+
if (this._controls.tilelayersChooser) {
|
|
847
|
+
this._controls.tilelayersChooser.openSwitcher({ callback, edit: true })
|
|
848
|
+
}
|
|
849
849
|
},
|
|
850
850
|
|
|
851
851
|
toGeoJSON: function () {
|
|
@@ -863,7 +863,7 @@ U.Map = L.Map.extend({
|
|
|
863
863
|
},
|
|
864
864
|
|
|
865
865
|
eachFeature: function (callback, context) {
|
|
866
|
-
this.
|
|
866
|
+
this.eachBrowsableDataLayer((datalayer) => {
|
|
867
867
|
if (datalayer.isVisible()) datalayer.eachFeature(callback, context)
|
|
868
868
|
})
|
|
869
869
|
},
|
|
@@ -1048,7 +1048,15 @@ U.Map = L.Map.extend({
|
|
|
1048
1048
|
if (error) {
|
|
1049
1049
|
return
|
|
1050
1050
|
}
|
|
1051
|
-
|
|
1051
|
+
if (data.login_required) {
|
|
1052
|
+
window.onLogin = () => this.saveSelf()
|
|
1053
|
+
window.open(data.login_required)
|
|
1054
|
+
return
|
|
1055
|
+
}
|
|
1056
|
+
if (data.user?.id) {
|
|
1057
|
+
this.options.user = data.user
|
|
1058
|
+
this.renderEditToolbar()
|
|
1059
|
+
}
|
|
1052
1060
|
if (!this.options.umap_id) {
|
|
1053
1061
|
this.options.umap_id = data.id
|
|
1054
1062
|
this.permissions.setOptions(data.permissions)
|
|
@@ -1219,46 +1227,12 @@ U.Map = L.Map.extend({
|
|
|
1219
1227
|
_editDefaultProperties: function (container) {
|
|
1220
1228
|
const optionsFields = [
|
|
1221
1229
|
'options.zoomTo',
|
|
1222
|
-
|
|
1230
|
+
'options.easing',
|
|
1223
1231
|
'options.labelKey',
|
|
1224
|
-
|
|
1225
|
-
|
|
1226
|
-
|
|
1227
|
-
|
|
1228
|
-
helpEntries: 'sortKey',
|
|
1229
|
-
placeholder: L._('Default: name'),
|
|
1230
|
-
label: L._('Sort key'),
|
|
1231
|
-
inheritable: true,
|
|
1232
|
-
},
|
|
1233
|
-
],
|
|
1234
|
-
[
|
|
1235
|
-
'options.filterKey',
|
|
1236
|
-
{
|
|
1237
|
-
handler: 'Input',
|
|
1238
|
-
helpEntries: 'filterKey',
|
|
1239
|
-
placeholder: L._('Default: name'),
|
|
1240
|
-
label: L._('Search keys'),
|
|
1241
|
-
inheritable: true,
|
|
1242
|
-
},
|
|
1243
|
-
],
|
|
1244
|
-
[
|
|
1245
|
-
'options.facetKey',
|
|
1246
|
-
{
|
|
1247
|
-
handler: 'BlurInput',
|
|
1248
|
-
helpEntries: 'facetKey',
|
|
1249
|
-
placeholder: L._('Example: key1,key2|Label 2,key3|Label 3|checkbox'),
|
|
1250
|
-
label: L._('Filters keys'),
|
|
1251
|
-
},
|
|
1252
|
-
],
|
|
1253
|
-
[
|
|
1254
|
-
'options.slugKey',
|
|
1255
|
-
{
|
|
1256
|
-
handler: 'BlurInput',
|
|
1257
|
-
helpEntries: 'slugKey',
|
|
1258
|
-
placeholder: L._('Default: name'),
|
|
1259
|
-
label: L._('Feature identifier key'),
|
|
1260
|
-
},
|
|
1261
|
-
],
|
|
1232
|
+
'options.sortKey',
|
|
1233
|
+
'options.filterKey',
|
|
1234
|
+
'options.facetKey',
|
|
1235
|
+
'options.slugKey',
|
|
1262
1236
|
]
|
|
1263
1237
|
|
|
1264
1238
|
builder = new U.FormBuilder(this, optionsFields)
|
|
@@ -1485,13 +1459,13 @@ U.Map = L.Map.extend({
|
|
|
1485
1459
|
const advancedActions = L.DomUtil.createFieldset(container, L._('Advanced actions'))
|
|
1486
1460
|
const advancedButtons = L.DomUtil.create('div', 'button-bar half', advancedActions)
|
|
1487
1461
|
if (this.permissions.isOwner()) {
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1491
|
-
|
|
1492
|
-
|
|
1493
|
-
|
|
1494
|
-
|
|
1462
|
+
const deleteButton = U.Utils.loadTemplate(`
|
|
1463
|
+
<button class="button" type="button">
|
|
1464
|
+
<i class="icon icon-24 icon-delete"></i>${L._('Delete')}
|
|
1465
|
+
</button>`)
|
|
1466
|
+
deleteButton.addEventListener('click', () => this.del())
|
|
1467
|
+
advancedButtons.appendChild(deleteButton)
|
|
1468
|
+
|
|
1495
1469
|
L.DomUtil.createButton(
|
|
1496
1470
|
'button umap-empty',
|
|
1497
1471
|
advancedButtons,
|
|
@@ -1589,6 +1563,7 @@ U.Map = L.Map.extend({
|
|
|
1589
1563
|
this.editPanel.close()
|
|
1590
1564
|
this.fullPanel.close()
|
|
1591
1565
|
this.sync.stop()
|
|
1566
|
+
this.closeInplaceToolbar()
|
|
1592
1567
|
},
|
|
1593
1568
|
|
|
1594
1569
|
hasEditMode: function () {
|
|
@@ -1607,7 +1582,7 @@ U.Map = L.Map.extend({
|
|
|
1607
1582
|
)
|
|
1608
1583
|
const name = L.DomUtil.create('h3', '', container)
|
|
1609
1584
|
L.DomEvent.disableClickPropagation(container)
|
|
1610
|
-
this.
|
|
1585
|
+
this.addAuthorLink('span', container)
|
|
1611
1586
|
if (this.getOption('captionMenus')) {
|
|
1612
1587
|
L.DomUtil.createButton(
|
|
1613
1588
|
'umap-about-link flat',
|
|
@@ -1663,11 +1638,13 @@ U.Map = L.Map.extend({
|
|
|
1663
1638
|
},
|
|
1664
1639
|
|
|
1665
1640
|
del: async function () {
|
|
1666
|
-
|
|
1667
|
-
|
|
1668
|
-
|
|
1669
|
-
|
|
1670
|
-
|
|
1641
|
+
this.dialog
|
|
1642
|
+
.confirm(L._('Are you sure you want to delete this map?'))
|
|
1643
|
+
.then(async () => {
|
|
1644
|
+
const url = this.urls.get('map_delete', { map_id: this.options.umap_id })
|
|
1645
|
+
const [data, response, error] = await this.server.post(url)
|
|
1646
|
+
if (data.redirect) window.location = data.redirect
|
|
1647
|
+
})
|
|
1671
1648
|
},
|
|
1672
1649
|
|
|
1673
1650
|
clone: async function () {
|
|
@@ -1866,6 +1843,14 @@ U.Map = L.Map.extend({
|
|
|
1866
1843
|
return url
|
|
1867
1844
|
},
|
|
1868
1845
|
|
|
1846
|
+
getFeatureById: function (id) {
|
|
1847
|
+
let feature
|
|
1848
|
+
for (const datalayer of Object.values(this.datalayers)) {
|
|
1849
|
+
feature = datalayer.getFeatureById(id)
|
|
1850
|
+
if (feature) return feature
|
|
1851
|
+
}
|
|
1852
|
+
},
|
|
1853
|
+
|
|
1869
1854
|
closeInplaceToolbar: function () {
|
|
1870
1855
|
const toolbar = this._toolbars[L.Toolbar.Popup._toolbar_class_id]
|
|
1871
1856
|
if (toolbar) toolbar.remove()
|
|
@@ -1902,4 +1887,21 @@ U.Map = L.Map.extend({
|
|
|
1902
1887
|
.filter((val, idx, arr) => arr.indexOf(val) === idx)
|
|
1903
1888
|
.sort(U.Utils.naturalSort)
|
|
1904
1889
|
},
|
|
1890
|
+
|
|
1891
|
+
addAuthorLink: function (element, container) {
|
|
1892
|
+
if (this.options.author?.name) {
|
|
1893
|
+
const authorContainer = L.DomUtil.add(
|
|
1894
|
+
element,
|
|
1895
|
+
'umap-map-author',
|
|
1896
|
+
container,
|
|
1897
|
+
` ${L._('by')} `
|
|
1898
|
+
)
|
|
1899
|
+
L.DomUtil.createLink(
|
|
1900
|
+
'',
|
|
1901
|
+
authorContainer,
|
|
1902
|
+
this.options.author.name,
|
|
1903
|
+
this.options.author.url
|
|
1904
|
+
)
|
|
1905
|
+
}
|
|
1906
|
+
},
|
|
1905
1907
|
})
|
umap/static/umap/locale/br.js
CHANGED
|
@@ -426,15 +426,15 @@ const locale = {
|
|
|
426
426
|
"Filters keys": "Filters keys",
|
|
427
427
|
"Filter data": "Roadennoù ar sil",
|
|
428
428
|
"Search map features…": "Klask perzhioù ar gartenn..",
|
|
429
|
-
"Reset all": "
|
|
430
|
-
"Open browser": "
|
|
429
|
+
"Reset all": "Adlakaat pep tra",
|
|
430
|
+
"Open browser": "Digeriñ ar merdeer",
|
|
431
431
|
"Open caption": "Open caption",
|
|
432
432
|
"Your map has been created with an anonymous account!": "Your map has been created with an anonymous account!",
|
|
433
433
|
"Real-time collaboration": "Real-time collaboration",
|
|
434
|
-
"Cannot parse data": "
|
|
435
|
-
"Start typing...": "
|
|
436
|
-
"No result": "
|
|
437
|
-
"Data browser": "
|
|
434
|
+
"Cannot parse data": "N'haller ket dielfennañ ar roadennoù",
|
|
435
|
+
"Start typing...": "Krogit da skrivañ...",
|
|
436
|
+
"No result": "Disoc'h ebet",
|
|
437
|
+
"Data browser": "Furchal ar roadennoù",
|
|
438
438
|
"When providing an URL, uMap can copy the remote data in a layer, or add this URL as remote source of the layer. In that case, data will always be fetched from that URL, and thus be up to date, but it will not be possible to edit it inside uMap.": "When providing an URL, uMap can copy the remote data in a layer, or add this URL as remote source of the layer. In that case, data will always be fetched from that URL, and thus be up to date, but it will not be possible to edit it inside uMap.",
|
|
439
439
|
"Overpass supported expressions": "Overpass supported expressions",
|
|
440
440
|
"key (eg. building)": "key (eg. building)",
|
|
@@ -445,25 +445,25 @@ const locale = {
|
|
|
445
445
|
"key=\"value|value2\" (eg. name=\"Paris|Berlin\")": "key=\"value|value2\" (eg. name=\"Paris|Berlin\")",
|
|
446
446
|
"More info about Overpass syntax": "More info about Overpass syntax",
|
|
447
447
|
"For more complex needs, see": "For more complex needs, see",
|
|
448
|
-
"Choose data": "
|
|
448
|
+
"Choose data": "Dibab ar roadennoù",
|
|
449
449
|
"Import helpers:": "Import helpers:",
|
|
450
|
-
"Choose the format": "
|
|
451
|
-
"Choose the layer": "
|
|
452
|
-
"Layer name": "
|
|
450
|
+
"Choose the format": "Dibab ar furmad",
|
|
451
|
+
"Choose the layer": "Dibab ar gwiskad",
|
|
452
|
+
"Layer name": "Anv ar gwiskad",
|
|
453
453
|
"Choose import mode": "Choose import mode",
|
|
454
|
-
"Copy into the layer": "
|
|
454
|
+
"Copy into the layer": "Eilañ e-barzh ar gwiskad",
|
|
455
455
|
"Link to the layer as remote data": "Link to the layer as remote data",
|
|
456
456
|
"Condition": "Condition",
|
|
457
|
-
"key=value or key!=value": "key=value
|
|
458
|
-
"Are you sure you want to delete this rule?": "
|
|
459
|
-
"empty rule": "
|
|
457
|
+
"key=value or key!=value": "key=value pe key!=value",
|
|
458
|
+
"Are you sure you want to delete this rule?": "Ha sur oc'h e faot deoc'h dilemel ar reolenn-mañ?",
|
|
459
|
+
"empty rule": "Reolenn goullo",
|
|
460
460
|
"Conditional style rules": "Conditional style rules",
|
|
461
|
-
"Add rule": "
|
|
462
|
-
"Browser: data": "
|
|
463
|
-
"Browser: layers": "
|
|
464
|
-
"Browser: filters": "
|
|
461
|
+
"Add rule": "Ouzhpennañ ur reolenn",
|
|
462
|
+
"Browser: data": "Merdeer: roadennoù",
|
|
463
|
+
"Browser: layers": "Merdeer: gwiskadoù",
|
|
464
|
+
"Browser: filters": "Merdeer: siloù",
|
|
465
465
|
"Enable real-time collaboration": "Enable real-time collaboration",
|
|
466
|
-
"✅ Copied!": "✅
|
|
466
|
+
"✅ Copied!": "✅ Eilet !",
|
|
467
467
|
"Choose a dataset": "Choose a dataset",
|
|
468
468
|
"Choose this dataset": "Choose this dataset",
|
|
469
469
|
"GeoDataMine: thematic data from OpenStreetMap": "GeoDataMine: thematic data from OpenStreetMap",
|
|
@@ -473,32 +473,32 @@ const locale = {
|
|
|
473
473
|
"Search admin boundary": "Search admin boundary",
|
|
474
474
|
"Please choose a theme and a boundary first.": "Please choose a theme and a boundary first.",
|
|
475
475
|
"Expression": "Expression",
|
|
476
|
-
"Geometry mode": "
|
|
476
|
+
"Geometry mode": "Mod mentoniezh",
|
|
477
477
|
"Only geometry centers": "Only geometry centers",
|
|
478
478
|
"Search area": "Search area",
|
|
479
479
|
"Type area name, or let empty to load data in current map view": "Type area name, or let empty to load data in current map view",
|
|
480
|
-
"Data successfully imported!": "
|
|
481
|
-
"My Dashboard ({username})": "
|
|
482
|
-
"Clear data": "
|
|
483
|
-
"Remove layers": "
|
|
484
|
-
"Categorized": "
|
|
485
|
-
"Alphabetical": "
|
|
486
|
-
"Category property": "
|
|
480
|
+
"Data successfully imported!": "Roadennoù enporzhiet gant berzh!",
|
|
481
|
+
"My Dashboard ({username})": "Ma Zaolenn-vourzh ({username})",
|
|
482
|
+
"Clear data": "Skarzhañ ar roadennoù",
|
|
483
|
+
"Remove layers": "Lemel ar gwiskadoù",
|
|
484
|
+
"Categorized": "Dre rummad",
|
|
485
|
+
"Alphabetical": "Urzh al lizherenneg",
|
|
486
|
+
"Category property": "Perzh",
|
|
487
487
|
"Color palette": "Color palette",
|
|
488
|
-
"Categories": "
|
|
488
|
+
"Categories": "Rummadoù",
|
|
489
489
|
"Comma separated list of categories.": "Comma separated list of categories.",
|
|
490
490
|
"Categories mode": "Categories mode",
|
|
491
491
|
"Remove filter for this column": "Remove filter for this column",
|
|
492
492
|
"Add filter for this column": "Add filter for this column",
|
|
493
|
-
"Rename this column": "
|
|
494
|
-
"Delete this column": "
|
|
495
|
-
"Name “{name}” should not contain a dot.": "
|
|
496
|
-
"This name already exists: “{name}”": "
|
|
497
|
-
"Delete selected rows": "
|
|
493
|
+
"Rename this column": "Adenvel ar bann-mañ",
|
|
494
|
+
"Delete this column": "Dilemel ar bann-mañ",
|
|
495
|
+
"Name “{name}” should not contain a dot.": "Ne rankfe ket bout ur pik e-barzh an anv “{name}”.",
|
|
496
|
+
"This name already exists: “{name}”": "Bout 'zo an anv-se dija: “{name}”",
|
|
497
|
+
"Delete selected rows": "Dilemel al linennoù diuzet",
|
|
498
498
|
"Found {count} rows. Are you sure you want to delete all?": "Found {count} rows. Are you sure you want to delete all?",
|
|
499
499
|
"Expression is empty": "Expression is empty",
|
|
500
|
-
"OK": "
|
|
501
|
-
"Cancel": "
|
|
500
|
+
"OK": "Mat eo",
|
|
501
|
+
"Cancel": "Nullañ"
|
|
502
502
|
}
|
|
503
503
|
L.registerLocale("br", locale)
|
|
504
504
|
L.setLocale("br")
|
umap/static/umap/locale/br.json
CHANGED
|
@@ -426,15 +426,15 @@
|
|
|
426
426
|
"Filters keys": "Filters keys",
|
|
427
427
|
"Filter data": "Roadennoù ar sil",
|
|
428
428
|
"Search map features…": "Klask perzhioù ar gartenn..",
|
|
429
|
-
"Reset all": "
|
|
430
|
-
"Open browser": "
|
|
429
|
+
"Reset all": "Adlakaat pep tra",
|
|
430
|
+
"Open browser": "Digeriñ ar merdeer",
|
|
431
431
|
"Open caption": "Open caption",
|
|
432
432
|
"Your map has been created with an anonymous account!": "Your map has been created with an anonymous account!",
|
|
433
433
|
"Real-time collaboration": "Real-time collaboration",
|
|
434
|
-
"Cannot parse data": "
|
|
435
|
-
"Start typing...": "
|
|
436
|
-
"No result": "
|
|
437
|
-
"Data browser": "
|
|
434
|
+
"Cannot parse data": "N'haller ket dielfennañ ar roadennoù",
|
|
435
|
+
"Start typing...": "Krogit da skrivañ...",
|
|
436
|
+
"No result": "Disoc'h ebet",
|
|
437
|
+
"Data browser": "Furchal ar roadennoù",
|
|
438
438
|
"When providing an URL, uMap can copy the remote data in a layer, or add this URL as remote source of the layer. In that case, data will always be fetched from that URL, and thus be up to date, but it will not be possible to edit it inside uMap.": "When providing an URL, uMap can copy the remote data in a layer, or add this URL as remote source of the layer. In that case, data will always be fetched from that URL, and thus be up to date, but it will not be possible to edit it inside uMap.",
|
|
439
439
|
"Overpass supported expressions": "Overpass supported expressions",
|
|
440
440
|
"key (eg. building)": "key (eg. building)",
|
|
@@ -445,25 +445,25 @@
|
|
|
445
445
|
"key=\"value|value2\" (eg. name=\"Paris|Berlin\")": "key=\"value|value2\" (eg. name=\"Paris|Berlin\")",
|
|
446
446
|
"More info about Overpass syntax": "More info about Overpass syntax",
|
|
447
447
|
"For more complex needs, see": "For more complex needs, see",
|
|
448
|
-
"Choose data": "
|
|
448
|
+
"Choose data": "Dibab ar roadennoù",
|
|
449
449
|
"Import helpers:": "Import helpers:",
|
|
450
|
-
"Choose the format": "
|
|
451
|
-
"Choose the layer": "
|
|
452
|
-
"Layer name": "
|
|
450
|
+
"Choose the format": "Dibab ar furmad",
|
|
451
|
+
"Choose the layer": "Dibab ar gwiskad",
|
|
452
|
+
"Layer name": "Anv ar gwiskad",
|
|
453
453
|
"Choose import mode": "Choose import mode",
|
|
454
|
-
"Copy into the layer": "
|
|
454
|
+
"Copy into the layer": "Eilañ e-barzh ar gwiskad",
|
|
455
455
|
"Link to the layer as remote data": "Link to the layer as remote data",
|
|
456
456
|
"Condition": "Condition",
|
|
457
|
-
"key=value or key!=value": "key=value
|
|
458
|
-
"Are you sure you want to delete this rule?": "
|
|
459
|
-
"empty rule": "
|
|
457
|
+
"key=value or key!=value": "key=value pe key!=value",
|
|
458
|
+
"Are you sure you want to delete this rule?": "Ha sur oc'h e faot deoc'h dilemel ar reolenn-mañ?",
|
|
459
|
+
"empty rule": "Reolenn goullo",
|
|
460
460
|
"Conditional style rules": "Conditional style rules",
|
|
461
|
-
"Add rule": "
|
|
462
|
-
"Browser: data": "
|
|
463
|
-
"Browser: layers": "
|
|
464
|
-
"Browser: filters": "
|
|
461
|
+
"Add rule": "Ouzhpennañ ur reolenn",
|
|
462
|
+
"Browser: data": "Merdeer: roadennoù",
|
|
463
|
+
"Browser: layers": "Merdeer: gwiskadoù",
|
|
464
|
+
"Browser: filters": "Merdeer: siloù",
|
|
465
465
|
"Enable real-time collaboration": "Enable real-time collaboration",
|
|
466
|
-
"✅ Copied!": "✅
|
|
466
|
+
"✅ Copied!": "✅ Eilet !",
|
|
467
467
|
"Choose a dataset": "Choose a dataset",
|
|
468
468
|
"Choose this dataset": "Choose this dataset",
|
|
469
469
|
"GeoDataMine: thematic data from OpenStreetMap": "GeoDataMine: thematic data from OpenStreetMap",
|
|
@@ -473,30 +473,30 @@
|
|
|
473
473
|
"Search admin boundary": "Search admin boundary",
|
|
474
474
|
"Please choose a theme and a boundary first.": "Please choose a theme and a boundary first.",
|
|
475
475
|
"Expression": "Expression",
|
|
476
|
-
"Geometry mode": "
|
|
476
|
+
"Geometry mode": "Mod mentoniezh",
|
|
477
477
|
"Only geometry centers": "Only geometry centers",
|
|
478
478
|
"Search area": "Search area",
|
|
479
479
|
"Type area name, or let empty to load data in current map view": "Type area name, or let empty to load data in current map view",
|
|
480
|
-
"Data successfully imported!": "
|
|
481
|
-
"My Dashboard ({username})": "
|
|
482
|
-
"Clear data": "
|
|
483
|
-
"Remove layers": "
|
|
484
|
-
"Categorized": "
|
|
485
|
-
"Alphabetical": "
|
|
486
|
-
"Category property": "
|
|
480
|
+
"Data successfully imported!": "Roadennoù enporzhiet gant berzh!",
|
|
481
|
+
"My Dashboard ({username})": "Ma Zaolenn-vourzh ({username})",
|
|
482
|
+
"Clear data": "Skarzhañ ar roadennoù",
|
|
483
|
+
"Remove layers": "Lemel ar gwiskadoù",
|
|
484
|
+
"Categorized": "Dre rummad",
|
|
485
|
+
"Alphabetical": "Urzh al lizherenneg",
|
|
486
|
+
"Category property": "Perzh",
|
|
487
487
|
"Color palette": "Color palette",
|
|
488
|
-
"Categories": "
|
|
488
|
+
"Categories": "Rummadoù",
|
|
489
489
|
"Comma separated list of categories.": "Comma separated list of categories.",
|
|
490
490
|
"Categories mode": "Categories mode",
|
|
491
491
|
"Remove filter for this column": "Remove filter for this column",
|
|
492
492
|
"Add filter for this column": "Add filter for this column",
|
|
493
|
-
"Rename this column": "
|
|
494
|
-
"Delete this column": "
|
|
495
|
-
"Name “{name}” should not contain a dot.": "
|
|
496
|
-
"This name already exists: “{name}”": "
|
|
497
|
-
"Delete selected rows": "
|
|
493
|
+
"Rename this column": "Adenvel ar bann-mañ",
|
|
494
|
+
"Delete this column": "Dilemel ar bann-mañ",
|
|
495
|
+
"Name “{name}” should not contain a dot.": "Ne rankfe ket bout ur pik e-barzh an anv “{name}”.",
|
|
496
|
+
"This name already exists: “{name}”": "Bout 'zo an anv-se dija: “{name}”",
|
|
497
|
+
"Delete selected rows": "Dilemel al linennoù diuzet",
|
|
498
498
|
"Found {count} rows. Are you sure you want to delete all?": "Found {count} rows. Are you sure you want to delete all?",
|
|
499
499
|
"Expression is empty": "Expression is empty",
|
|
500
|
-
"OK": "
|
|
501
|
-
"Cancel": "
|
|
500
|
+
"OK": "Mat eo",
|
|
501
|
+
"Cancel": "Nullañ"
|
|
502
502
|
}
|