Compare commits

..

No commits in common. "815ff046ff723bd48ca08cd3c22b326d44369ddf" and "c5ee9fc283f2a89e612ba52f3fd3fcfb088b999b" have entirely different histories.

6 changed files with 6 additions and 81 deletions

View file

@ -22,15 +22,6 @@ location / {
}
```
Also add this mapping for the `$connection_upgrade` variable:
```
map $http_upgrade $connection_upgrade {
default upgrade;
'' close;
}
```
## Uvicorn
Uvicorn must be installed in the umap virtualenv:

View file

@ -564,10 +564,6 @@ class Feature {
return false
}
isEmpty() {
return !this.coordinates.length
}
clone() {
const geojson = this.toGeoJSON()
delete geojson.id
@ -955,6 +951,10 @@ export class LineString extends Path {
return { coordinates, type }
}
isEmpty() {
return !this.coordinates.length
}
getUIClass() {
return super.getUIClass() || LeafletPolyline
}

View file

@ -522,7 +522,7 @@ export class DataLayer extends ServerStored {
})
)
}
if (feature && !feature.isEmpty()) {
if (feature) {
this.addFeature(feature)
if (sync) feature.onCommit()
return feature

View file

@ -1251,7 +1251,6 @@ Fields.Range = class extends Fields.FloatInput {
Fields.ManageOwner = class extends BaseElement {
build() {
super.build()
const options = {
className: 'edit-owner',
on_select: L.bind(this.onSelect, this),
@ -1282,7 +1281,6 @@ Fields.ManageOwner = class extends BaseElement {
Fields.ManageEditors = class extends BaseElement {
build() {
super.build()
const options = {
className: 'edit-editors',
on_select: L.bind(this.onSelect, this),

View file

@ -119,7 +119,7 @@ const PointMixin = {
this.on('dragend', (event) => {
this.isDirty = true
this.feature.edit(event)
this.feature.pullGeometry(false)
this.feature.pullGeometry()
})
if (!this.feature.isReadOnly()) this.on('mouseover', this._enableDragging)
this.on('mouseout', this._onMouseOut)

View file

@ -500,70 +500,6 @@ def test_import_multipolyline(live_server, page, tilelayer):
expect(paths).to_have_count(1)
def test_should_not_import_empty_coordinates(live_server, page, tilelayer):
data = {
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"properties": {"name": "An empty polygon"},
"geometry": {
"type": "Polygon",
"coordinates": [],
},
},
{
"type": "Feature",
"properties": {"name": "An empty linestring"},
"geometry": {
"type": "LineString",
"coordinates": [],
},
},
{
"type": "Feature",
"properties": {"name": "An empty point"},
"geometry": {
"type": "Point",
"coordinates": [],
},
},
{
"geometry": {
"type": "Point",
"coordinates": [6.922931671142578, 47.481161607175736],
},
"type": "Feature",
"properties": {"name": "A point"},
},
{
"geometry": {
"type": "LineString",
"coordinates": [
[2.4609375, 48.88639177703194],
[2.48291015625, 48.76343113791796],
[2.164306640625, 48.719961222646276],
],
},
"type": "Feature",
"properties": {
"name": "A linestring",
},
},
],
}
page.goto(f"{live_server.url}/map/new/")
page.get_by_title("Open browser").click()
page.get_by_title("Import data").click()
textarea = page.locator(".umap-import textarea")
textarea.fill(json.dumps(data))
page.locator('select[name="format"]').select_option("geojson")
page.get_by_role("button", name="Import data", exact=True).click()
page.locator("#map").click(button="right")
page.get_by_role("button", name="browse data").click()
expect(page.locator("li.feature")).to_have_count(2)
def test_import_csv_without_valid_latlon_headers(tilelayer, live_server, page):
page.goto(f"{live_server.url}/map/new/")
page.get_by_title("Open browser").click()