mirror of
https://github.com/morten-olsen/morten-olsen.github.io.git
synced 2026-02-08 01:46:28 +01:00
cleanup
This commit is contained in:
@@ -58,7 +58,7 @@ class Observable<T> {
|
||||
};
|
||||
|
||||
static combine = <U extends Record<string, Observable<any>>>(
|
||||
record: U
|
||||
record: U,
|
||||
): Observable<ObservableRecord<U>> => {
|
||||
const loader = () =>
|
||||
Object.entries(record).reduce(
|
||||
@@ -66,7 +66,7 @@ class Observable<T> {
|
||||
...(await accP),
|
||||
[key]: await value.data,
|
||||
}),
|
||||
{} as any
|
||||
{} as any,
|
||||
);
|
||||
const observable = new Observable<ObservableRecord<U>>(loader);
|
||||
Object.values(record).forEach((item) => {
|
||||
@@ -76,6 +76,16 @@ class Observable<T> {
|
||||
});
|
||||
return observable;
|
||||
};
|
||||
|
||||
static link = <T>(observables: Observable<any>[], generate: () => Promise<T>) => {
|
||||
const observable = new Observable<T>(generate);
|
||||
observables.forEach((item) => {
|
||||
item.subscribe(() => {
|
||||
observable.recreate();
|
||||
});
|
||||
});
|
||||
return observable;
|
||||
};
|
||||
}
|
||||
|
||||
export { Observable };
|
||||
|
||||
Reference in New Issue
Block a user