forked from MapComplete/MapComplete
Reformat all files with prettier
This commit is contained in:
parent
e22d189376
commit
b541d3eab4
382 changed files with 50893 additions and 35566 deletions
|
@ -1,46 +1,42 @@
|
|||
import {Changes} from "../Osm/Changes";
|
||||
import Constants from "../../Models/Constants";
|
||||
import {UIEventSource} from "../UIEventSource";
|
||||
import {Utils} from "../../Utils";
|
||||
import { Changes } from "../Osm/Changes"
|
||||
import Constants from "../../Models/Constants"
|
||||
import { UIEventSource } from "../UIEventSource"
|
||||
import { Utils } from "../../Utils"
|
||||
|
||||
export default class PendingChangesUploader {
|
||||
|
||||
private lastChange: Date;
|
||||
private lastChange: Date
|
||||
|
||||
constructor(changes: Changes, selectedFeature: UIEventSource<any>) {
|
||||
const self = this;
|
||||
this.lastChange = new Date();
|
||||
const self = this
|
||||
this.lastChange = new Date()
|
||||
changes.pendingChanges.addCallback(() => {
|
||||
self.lastChange = new Date();
|
||||
self.lastChange = new Date()
|
||||
|
||||
window.setTimeout(() => {
|
||||
const diff = (new Date().getTime() - self.lastChange.getTime()) / 1000;
|
||||
const diff = (new Date().getTime() - self.lastChange.getTime()) / 1000
|
||||
if (Constants.updateTimeoutSec >= diff - 1) {
|
||||
changes.flushChanges("Flushing changes due to timeout");
|
||||
changes.flushChanges("Flushing changes due to timeout")
|
||||
}
|
||||
}, Constants.updateTimeoutSec * 1000);
|
||||
});
|
||||
}, Constants.updateTimeoutSec * 1000)
|
||||
})
|
||||
|
||||
|
||||
selectedFeature
|
||||
.stabilized(10000)
|
||||
.addCallback(feature => {
|
||||
if (feature === undefined) {
|
||||
// The popup got closed - we flush
|
||||
changes.flushChanges("Flushing changes due to popup closed");
|
||||
}
|
||||
});
|
||||
selectedFeature.stabilized(10000).addCallback((feature) => {
|
||||
if (feature === undefined) {
|
||||
// The popup got closed - we flush
|
||||
changes.flushChanges("Flushing changes due to popup closed")
|
||||
}
|
||||
})
|
||||
|
||||
if (Utils.runningFromConsole) {
|
||||
return;
|
||||
return
|
||||
}
|
||||
|
||||
document.addEventListener('mouseout', e => {
|
||||
document.addEventListener("mouseout", (e) => {
|
||||
// @ts-ignore
|
||||
if (!e.toElement && !e.relatedTarget) {
|
||||
changes.flushChanges("Flushing changes due to focus lost");
|
||||
changes.flushChanges("Flushing changes due to focus lost")
|
||||
}
|
||||
});
|
||||
})
|
||||
|
||||
document.onfocus = () => {
|
||||
changes.flushChanges("OnFocus")
|
||||
|
@ -50,28 +46,28 @@ export default class PendingChangesUploader {
|
|||
changes.flushChanges("OnFocus")
|
||||
}
|
||||
try {
|
||||
document.addEventListener("visibilitychange", () => {
|
||||
changes.flushChanges("Visibility change")
|
||||
}, false);
|
||||
document.addEventListener(
|
||||
"visibilitychange",
|
||||
() => {
|
||||
changes.flushChanges("Visibility change")
|
||||
},
|
||||
false
|
||||
)
|
||||
} catch (e) {
|
||||
console.warn("Could not register visibility change listener", e)
|
||||
}
|
||||
|
||||
|
||||
function onunload(e) {
|
||||
if (changes.pendingChanges.data.length == 0) {
|
||||
return;
|
||||
return
|
||||
}
|
||||
changes.flushChanges("onbeforeunload - probably closing or something similar");
|
||||
e.preventDefault();
|
||||
changes.flushChanges("onbeforeunload - probably closing or something similar")
|
||||
e.preventDefault()
|
||||
return "Saving your last changes..."
|
||||
}
|
||||
|
||||
window.onbeforeunload = onunload
|
||||
// https://stackoverflow.com/questions/3239834/window-onbeforeunload-not-working-on-the-ipad#4824156
|
||||
window.addEventListener("pagehide", onunload)
|
||||
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue