scrivito
Version:
Scrivito is a professional, yet easy to use SaaS Enterprise Content Management Service, built for digital agencies and medium to large businesses. It is completely maintenance-free, cost-effective, and has unprecedented performance and security.
20 lines (16 loc) • 542 B
text/typescript
import { Streamable } from 'scrivito_sdk/common';
import { StateStream } from 'scrivito_sdk/loadable/observe_and_load';
export function dejitterStateStream<T>(stream: StateStream<T>): StateStream<T> {
return new Streamable((observer) => {
let isComplete = false;
return stream.subscribe((state) => {
if (state.meta.incomplete === true) {
// once completed, we only forward complete states
if (isComplete) return;
} else {
isComplete = true;
}
observer.next(state);
});
});
}