chore: add timeout and sequence retrigger

This commit is contained in:
waterplea
2022-08-09 10:58:15 +03:00
parent f118b21a30
commit 001360d09a
2 changed files with 16 additions and 15 deletions

View File

@@ -100,9 +100,12 @@ export class Store<T extends { [key: string]: any }> {
update(update: Update<T>): void {
if (this.isRevision(update)) {
// if old or known, return
if (update.id <= this.cache.sequence || this.stash.get(update.id)) return
this.handleRevision(update)
// if old or known, re-trigger the latest revision
if (update.id <= this.cache.sequence || this.stash.get(update.id)) {
this.updateSequence(this.cache.sequence)
} else {
this.handleRevision(update)
}
} else {
this.handleDump(update)
}