@xylabs/threads
Version:
Web workers & worker threads as simple as a function call
31 lines • 904 B
JavaScript
// src/observable.ts
import { Observable } from "observable-fns";
import { Observable as Observable2 } from "observable-fns";
var $observers = /* @__PURE__ */ Symbol("observers");
var Subject = class extends Observable {
[$observers];
constructor() {
super((observer) => {
this[$observers] = [...this[$observers] || [], observer];
const unsubscribe = () => {
this[$observers] = this[$observers].filter((someObserver) => someObserver !== observer);
};
return unsubscribe;
});
this[$observers] = [];
}
complete() {
for (const observer of this[$observers]) observer.complete();
}
error(error) {
for (const observer of this[$observers]) observer.error(error);
}
next(value) {
for (const observer of this[$observers]) observer.next(value);
}
};
export {
Observable2 as Observable,
Subject
};
//# sourceMappingURL=observable.mjs.map