forked from MapComplete/MapComplete
Fix: stabilize change injector
This commit is contained in:
parent
46244b8345
commit
efdff6335f
1 changed files with 6 additions and 0 deletions
|
@ -6,6 +6,7 @@ import { UIEventSource } from "../../UIEventSource"
|
||||||
import { FeatureSource, IndexedFeatureSource } from "../FeatureSource"
|
import { FeatureSource, IndexedFeatureSource } from "../FeatureSource"
|
||||||
import { ChangeDescription, ChangeDescriptionTools } from "../../Osm/Actions/ChangeDescription"
|
import { ChangeDescription, ChangeDescriptionTools } from "../../Osm/Actions/ChangeDescription"
|
||||||
import { Feature } from "geojson"
|
import { Feature } from "geojson"
|
||||||
|
import {Utils} from "../../../Utils";
|
||||||
|
|
||||||
export default class ChangeGeometryApplicator implements FeatureSource {
|
export default class ChangeGeometryApplicator implements FeatureSource {
|
||||||
public readonly features: UIEventSource<Feature[]> = new UIEventSource<Feature[]>([])
|
public readonly features: UIEventSource<Feature[]> = new UIEventSource<Feature[]>([])
|
||||||
|
@ -69,6 +70,11 @@ export default class ChangeGeometryApplicator implements FeatureSource {
|
||||||
// We only apply the last change as that one'll have the latest geometry
|
// We only apply the last change as that one'll have the latest geometry
|
||||||
const change = changesForFeature[changesForFeature.length - 1]
|
const change = changesForFeature[changesForFeature.length - 1]
|
||||||
copy.geometry = ChangeDescriptionTools.getGeojsonGeometry(change)
|
copy.geometry = ChangeDescriptionTools.getGeojsonGeometry(change)
|
||||||
|
if(Utils.SameObject(copy.geometry, feature.geometry)){
|
||||||
|
// No actual changes: pass along the original
|
||||||
|
newFeatures.push(feature)
|
||||||
|
continue
|
||||||
|
}
|
||||||
console.log(
|
console.log(
|
||||||
"Applying a geometry change onto:",
|
"Applying a geometry change onto:",
|
||||||
feature,
|
feature,
|
||||||
|
|
Loading…
Reference in a new issue