@react-rxjs/utils
Advanced tools
Comparing version
import { Observable } from "rxjs"; | ||
export interface MapWithChanges<K, V> extends Map<K, V> { | ||
changes: Set<K>; | ||
} | ||
/** | ||
@@ -9,2 +12,2 @@ * Creates a stream that combines the result of the streams from each key of the input stream. | ||
*/ | ||
export declare const combineKeys: <K, T>(keys$: Observable<K[] | Set<K>>, getInner$: (key: K) => Observable<T>) => Observable<Map<K, T>>; | ||
export declare const combineKeys: <K, T>(keys$: Observable<K[] | Set<K>>, getInner$: (key: K) => Observable<T>) => Observable<MapWithChanges<K, T>>; |
@@ -1,5 +0,2 @@ | ||
export { collectValues } from "./collectValues"; | ||
export { collect } from "./collect"; | ||
export { combineKeys } from "./combineKeys"; | ||
export { getGroupedObservable } from "./getGroupedObservable"; | ||
export { combineKeys, MapWithChanges } from "./combineKeys"; | ||
export { createSignal } from "./createSignal"; | ||
@@ -9,3 +6,2 @@ export { createKeyedSignal } from "./createKeyedSignal"; | ||
export { partitionByKey } from "./partitionByKey"; | ||
export { split } from "./split"; | ||
export { suspend } from "./suspend"; | ||
@@ -12,0 +8,0 @@ export { suspended } from "./suspended"; |
@@ -1,3 +0,2 @@ | ||
import { Observable, GroupedObservable } from "rxjs"; | ||
import { Observable } from "rxjs"; | ||
export declare const defaultStart: <T, D>(value: D) => (source$: Observable<T>) => Observable<T | D>; | ||
export declare const collector: <K, V, VV>(enhancer: (source: GroupedObservable<K, V>) => Observable<VV>) => (source: Observable<GroupedObservable<K, V>>) => Observable<Map<K, VV>>; |
@@ -27,4 +27,2 @@ var __create = Object.create; | ||
__export(exports, { | ||
collect: () => collect, | ||
collectValues: () => collectValues, | ||
combineKeys: () => combineKeys, | ||
@@ -35,7 +33,5 @@ contextBinder: () => contextBinder, | ||
createSignal: () => createSignal, | ||
getGroupedObservable: () => getGroupedObservable, | ||
mergeWithKey: () => mergeWithKey, | ||
partitionByKey: () => partitionByKey, | ||
selfDependant: () => selfDependant, | ||
split: () => split, | ||
suspend: () => suspend, | ||
@@ -46,70 +42,17 @@ suspended: () => suspended, | ||
// src/internal-utils.ts | ||
// src/combineKeys.ts | ||
var import_rxjs = __toModule(require("rxjs")); | ||
var import_core = __toModule(require("@react-rxjs/core")); | ||
var defaultStart = (value) => (source$) => new import_rxjs.Observable((observer) => { | ||
let emitted = false; | ||
const subscription = source$.subscribe((x) => { | ||
emitted = true; | ||
observer.next(x); | ||
}, (e) => { | ||
observer.error(e); | ||
}, () => { | ||
observer.complete(); | ||
}); | ||
if (!emitted) { | ||
observer.next(value); | ||
} | ||
return subscription; | ||
}); | ||
var collector = (enhancer2) => (source$) => new import_rxjs.Observable((observer) => { | ||
const subscription = new import_rxjs.Subscription(); | ||
const map3 = new Map(); | ||
let emitted = false; | ||
subscription.add(source$.subscribe((x) => { | ||
subscription.add(enhancer2(x).subscribe((v) => { | ||
map3.set(x.key, v); | ||
emitted = true; | ||
observer.next(map3); | ||
}, (e) => { | ||
observer.error(e); | ||
}, () => { | ||
map3.delete(x.key); | ||
observer.next(map3); | ||
})); | ||
}, (e) => { | ||
observer.error(e); | ||
}, () => { | ||
map3.clear(); | ||
observer.next(map3); | ||
observer.complete(); | ||
})); | ||
if (!emitted) | ||
observer.next(map3); | ||
return subscription; | ||
}).pipe((0, import_core.shareLatest)()); | ||
// src/collectValues.ts | ||
var collectValues = () => collector((x) => x); | ||
// src/collect.ts | ||
var import_rxjs2 = __toModule(require("rxjs")); | ||
var enhancer = (source) => new import_rxjs2.Observable((observer) => { | ||
const done = () => { | ||
observer.complete(); | ||
}; | ||
observer.next(source); | ||
return source.subscribe(import_rxjs2.noop, done, done); | ||
}); | ||
var collect = () => collector(enhancer); | ||
// src/combineKeys.ts | ||
var import_rxjs3 = __toModule(require("rxjs")); | ||
var combineKeys = (keys$, getInner$) => new import_rxjs3.Observable((observer) => { | ||
var combineKeys = (keys$, getInner$) => new import_rxjs.Observable((observer) => { | ||
const innerSubscriptions = new Map(); | ||
let changes = new Set(); | ||
const currentValue = new Map(); | ||
let updatingSource = false; | ||
const next = () => { | ||
if (!updatingSource) | ||
observer.next(new Map(currentValue)); | ||
if (!updatingSource) { | ||
const result = Object.assign(new Map(currentValue), { | ||
changes | ||
}); | ||
changes = new Set(); | ||
observer.next(result); | ||
} | ||
}; | ||
@@ -119,3 +62,2 @@ const subscription = keys$.subscribe((nextKeysArr) => { | ||
const nextKeys = new Set(nextKeysArr); | ||
let changes = false; | ||
innerSubscriptions.forEach((sub, key) => { | ||
@@ -126,3 +68,3 @@ if (!nextKeys.has(key)) { | ||
if (currentValue.has(key)) { | ||
changes = true; | ||
changes.add(key); | ||
currentValue.delete(key); | ||
@@ -137,3 +79,3 @@ } | ||
if (!currentValue.has(key) || currentValue.get(key) !== x) { | ||
changes = true; | ||
changes.add(key); | ||
currentValue.set(key, x); | ||
@@ -147,3 +89,3 @@ next(); | ||
updatingSource = false; | ||
if (changes) | ||
if (changes.size) | ||
next(); | ||
@@ -163,28 +105,6 @@ }, (e) => { | ||
// src/getGroupedObservable.ts | ||
var import_rxjs4 = __toModule(require("rxjs")); | ||
var getGroupedObservable = (source$, key) => { | ||
const result = new import_rxjs4.Observable((observer) => { | ||
let innerSub; | ||
let outterSub = source$.subscribe((n) => { | ||
var _a; | ||
innerSub = innerSub || ((_a = n.get(key)) == null ? void 0 : _a.subscribe(observer)); | ||
}, (e) => { | ||
observer.error(e); | ||
}, () => { | ||
observer.complete(); | ||
}); | ||
return () => { | ||
innerSub == null ? void 0 : innerSub.unsubscribe(); | ||
outterSub.unsubscribe(); | ||
}; | ||
}); | ||
result.key = key; | ||
return result; | ||
}; | ||
// src/createSignal.ts | ||
var import_rxjs5 = __toModule(require("rxjs")); | ||
function createSignal(mapper = import_rxjs5.identity) { | ||
const subject = new import_rxjs5.Subject(); | ||
var import_rxjs2 = __toModule(require("rxjs")); | ||
function createSignal(mapper = import_rxjs2.identity) { | ||
const subject = new import_rxjs2.Subject(); | ||
return [subject.asObservable(), (...args) => subject.next(mapper(...args))]; | ||
@@ -194,3 +114,3 @@ } | ||
// src/createKeyedSignal.ts | ||
var import_rxjs6 = __toModule(require("rxjs")); | ||
var import_rxjs3 = __toModule(require("rxjs")); | ||
function createKeyedSignal(keySelector, mapper) { | ||
@@ -200,3 +120,3 @@ const observersMap = new Map(); | ||
(key) => { | ||
const res = new import_rxjs6.Observable((observer) => { | ||
const res = new import_rxjs3.Observable((observer) => { | ||
if (!observersMap.has(key)) { | ||
@@ -229,54 +149,117 @@ observersMap.set(key, new Set()); | ||
// src/mergeWithKey.ts | ||
var import_rxjs7 = __toModule(require("rxjs")); | ||
var import_rxjs4 = __toModule(require("rxjs")); | ||
var import_operators = __toModule(require("rxjs/operators")); | ||
var mergeWithKey = (input, ...optionalArgs) => (0, import_rxjs7.merge)(...Object.entries(input).map(([type, stream]) => (0, import_rxjs7.from)(stream).pipe((0, import_operators.map)((payload) => ({ type, payload })))).concat(optionalArgs)); | ||
var mergeWithKey = (input, ...optionalArgs) => (0, import_rxjs4.merge)(...Object.entries(input).map(([type, stream]) => (0, import_rxjs4.from)(stream).pipe((0, import_operators.map)((payload) => ({ type, payload })))).concat(optionalArgs)); | ||
// src/partitionByKey.ts | ||
var import_core = __toModule(require("@react-rxjs/core")); | ||
var import_rxjs5 = __toModule(require("rxjs")); | ||
var import_operators2 = __toModule(require("rxjs/operators")); | ||
function partitionByKey(stream, keySelector, streamSelector) { | ||
const source$ = stream.pipe(split(keySelector, streamSelector), collect()); | ||
return [ | ||
(key) => getGroupedObservable(source$, key), | ||
source$.pipe((0, import_operators2.map)((x) => Array.from(x.keys()))) | ||
]; | ||
} | ||
// src/split.ts | ||
var import_rxjs8 = __toModule(require("rxjs")); | ||
var import_operators3 = __toModule(require("rxjs/operators")); | ||
var emptyError = {}; | ||
function split(keySelector, streamSelector) { | ||
return (stream) => new import_rxjs8.Observable((subscriber) => { | ||
const groupedObservables$ = new import_rxjs5.Observable((subscriber) => { | ||
const groups = new Map(); | ||
let error = emptyError; | ||
let emitted = false; | ||
let sourceCompleted = false; | ||
const sub = stream.subscribe((x) => { | ||
const key = keySelector(x); | ||
if (groups.has(key)) { | ||
return groups.get(key).next(x); | ||
return groups.get(key).source.next(x); | ||
} | ||
const subject = streamSelector ? new import_rxjs8.Subject() : new import_rxjs8.ReplaySubject(1); | ||
groups.set(key, subject); | ||
const res = streamSelector ? streamSelector(subject, key).pipe((0, import_operators3.shareReplay)(1)) : subject.asObservable(); | ||
const subject = new import_rxjs5.Subject(); | ||
const res = streamSelector(subject, key).pipe((0, import_core.shareLatest)()); | ||
res.key = key; | ||
const onFinish = () => groups.delete(key); | ||
res.subscribe(import_rxjs8.noop, onFinish, onFinish); | ||
const innerGroup = { | ||
source: subject, | ||
observable: res, | ||
subscription: new import_rxjs5.Subscription() | ||
}; | ||
groups.set(key, innerGroup); | ||
innerGroup.subscription = res.subscribe(import_rxjs5.noop, (e) => subscriber.error(e), () => { | ||
groups.delete(key); | ||
subscriber.next(mapGroups(groups)); | ||
if (groups.size === 0 && sourceCompleted) { | ||
subscriber.complete(); | ||
} | ||
}); | ||
subject.next(x); | ||
subscriber.next(res); | ||
subscriber.next(mapGroups(groups)); | ||
emitted = true; | ||
}, (e) => { | ||
subscriber.error(error = e); | ||
sourceCompleted = true; | ||
if (groups.size) { | ||
groups.forEach((g) => g.source.error(e)); | ||
} else { | ||
subscriber.error(e); | ||
} | ||
}, () => { | ||
subscriber.complete(); | ||
sourceCompleted = true; | ||
if (groups.size) { | ||
groups.forEach((g) => g.source.complete()); | ||
} else { | ||
subscriber.complete(); | ||
} | ||
}); | ||
if (!emitted) | ||
subscriber.next(mapGroups(groups)); | ||
return () => { | ||
sub.unsubscribe(); | ||
groups.forEach(error === emptyError ? (g) => g.complete() : (g) => g.error(error)); | ||
groups.forEach((g) => { | ||
g.source.unsubscribe(); | ||
g.subscription.unsubscribe(); | ||
}); | ||
}; | ||
}).pipe((0, import_core.shareLatest)()); | ||
return [ | ||
(key) => getGroupedObservable(groupedObservables$, key), | ||
groupedObservables$.pipe((0, import_operators2.map)((x) => Array.from(x.keys()))) | ||
]; | ||
} | ||
function mapGroups(groups) { | ||
return new Map(Array.from(groups.entries()).map(([key, group]) => [key, group.observable])); | ||
} | ||
var getGroupedObservable = (source$, key) => { | ||
const result = new import_rxjs5.Observable((observer) => { | ||
let innerSub; | ||
let outterSub = source$.subscribe((n) => { | ||
var _a; | ||
innerSub = innerSub || ((_a = n.get(key)) == null ? void 0 : _a.subscribe(observer)); | ||
}, (e) => { | ||
observer.error(e); | ||
}, () => { | ||
observer.complete(); | ||
}); | ||
return () => { | ||
innerSub == null ? void 0 : innerSub.unsubscribe(); | ||
outterSub.unsubscribe(); | ||
}; | ||
}); | ||
} | ||
result.key = key; | ||
return result; | ||
}; | ||
// src/suspend.ts | ||
var import_rxjs9 = __toModule(require("rxjs")); | ||
var import_rxjs7 = __toModule(require("rxjs")); | ||
var import_core2 = __toModule(require("@react-rxjs/core")); | ||
var suspend = (source$) => defaultStart(import_core2.SUSPENSE)((0, import_rxjs9.from)(source$)); | ||
// src/internal-utils.ts | ||
var import_rxjs6 = __toModule(require("rxjs")); | ||
var defaultStart = (value) => (source$) => new import_rxjs6.Observable((observer) => { | ||
let emitted = false; | ||
const subscription = source$.subscribe((x) => { | ||
emitted = true; | ||
observer.next(x); | ||
}, (e) => { | ||
observer.error(e); | ||
}, () => { | ||
observer.complete(); | ||
}); | ||
if (!emitted) { | ||
observer.next(value); | ||
} | ||
return subscription; | ||
}); | ||
// src/suspend.ts | ||
var suspend = (source$) => defaultStart(import_core2.SUSPENSE)((0, import_rxjs7.from)(source$)); | ||
// src/suspended.ts | ||
@@ -286,14 +269,14 @@ var suspended = () => suspend; | ||
// src/switchMapSuspended.ts | ||
var import_rxjs10 = __toModule(require("rxjs")); | ||
var import_operators4 = __toModule(require("rxjs/operators")); | ||
var switchMapSuspended = (project) => (0, import_rxjs10.pipe)((0, import_operators4.switchMap)((x, index) => suspend(project(x, index)))); | ||
var import_rxjs8 = __toModule(require("rxjs")); | ||
var import_operators3 = __toModule(require("rxjs/operators")); | ||
var switchMapSuspended = (project) => (0, import_rxjs8.pipe)((0, import_operators3.switchMap)((x, index) => suspend(project(x, index)))); | ||
// src/selfDependant.ts | ||
var import_rxjs11 = __toModule(require("rxjs")); | ||
var import_operators5 = __toModule(require("rxjs/operators")); | ||
var import_rxjs9 = __toModule(require("rxjs")); | ||
var import_operators4 = __toModule(require("rxjs/operators")); | ||
var selfDependant = () => { | ||
const mirrored$ = new import_rxjs11.Subject(); | ||
const mirrored$ = new import_rxjs9.Subject(); | ||
return [ | ||
mirrored$.asObservable(), | ||
() => (0, import_operators5.tap)(mirrored$) | ||
() => (0, import_operators4.tap)(mirrored$) | ||
]; | ||
@@ -300,0 +283,0 @@ }; |
@@ -1,2 +0,2 @@ | ||
var _=Object.create;var x=Object.defineProperty;var ee=Object.getOwnPropertyDescriptor;var re=Object.getOwnPropertyNames;var te=Object.getPrototypeOf,oe=Object.prototype.hasOwnProperty;var j=e=>x(e,"__esModule",{value:!0});var ne=(e,n)=>{for(var r in n)x(e,r,{get:n[r],enumerable:!0})},se=(e,n,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let t of re(n))!oe.call(e,t)&&t!=="default"&&x(e,t,{get:()=>n[t],enumerable:!(r=ee(n,t))||r.enumerable});return e},b=e=>se(j(x(e!=null?_(te(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);j(exports);ne(exports,{collect:()=>K,collectValues:()=>h,combineKeys:()=>E,contextBinder:()=>Y,createKeyedSignal:()=>F,createListener:()=>Z,createSignal:()=>g,getGroupedObservable:()=>y,mergeWithKey:()=>P,partitionByKey:()=>N,selfDependant:()=>Q,split:()=>G,suspend:()=>f,suspended:()=>W,switchMapSuspended:()=>C});var m=b(require("rxjs")),V=b(require("@react-rxjs/core")),w=e=>n=>new m.Observable(r=>{let t=!1,o=n.subscribe(s=>{t=!0,r.next(s)},s=>{r.error(s)},()=>{r.complete()});return t||r.next(e),o}),T=e=>n=>new m.Observable(r=>{let t=new m.Subscription,o=new Map,s=!1;return t.add(n.subscribe(a=>{t.add(e(a).subscribe(p=>{o.set(a.key,p),s=!0,r.next(o)},p=>{r.error(p)},()=>{o.delete(a.key),r.next(o)}))},a=>{r.error(a)},()=>{o.clear(),r.next(o),r.complete()})),s||r.next(o),t}).pipe((0,V.shareLatest)());var h=()=>T(e=>e);var v=b(require("rxjs"));var ae=e=>new v.Observable(n=>{let r=()=>{n.complete()};return n.next(e),e.subscribe(v.noop,r,r)}),K=()=>T(ae);var k=b(require("rxjs")),E=(e,n)=>new k.Observable(r=>{let t=new Map,o=new Map,s=!1,a=()=>{s||r.next(new Map(o))},p=e.subscribe(i=>{s=!0;let c=new Set(i),O=!1;t.forEach((l,u)=>{c.has(u)?c.delete(u):(l.unsubscribe(),t.delete(u),o.has(u)&&(O=!0,o.delete(u)))}),c.forEach(l=>{t.set(l,n(l).subscribe(u=>{(!o.has(l)||o.get(l)!==u)&&(O=!0,o.set(l,u),a())},u=>{r.error(u)}))}),s=!1,O&&a()},i=>{r.error(i)},()=>{r.complete()});return()=>{p.unsubscribe(),t.forEach(i=>{i.unsubscribe()})}});var M=b(require("rxjs")),y=(e,n)=>{let r=new M.Observable(t=>{let o,s=e.subscribe(a=>{var p;o=o||((p=a.get(n))==null?void 0:p.subscribe(t))},a=>{t.error(a)},()=>{t.complete()});return()=>{o==null||o.unsubscribe(),s.unsubscribe()}});return r.key=n,r};var S=b(require("rxjs"));function g(e=S.identity){let n=new S.Subject;return[n.asObservable(),(...r)=>n.next(e(...r))]}var R=b(require("rxjs"));function F(e,n){let r=new Map;return[t=>{let o=new R.Observable(s=>{r.has(t)||r.set(t,new Set);let a=r.get(t);return a.add(s),()=>{a.delete(s),a.size===0&&r.delete(t)}});return o.key=t,o},(...t)=>{var a;let o=n?n(...t):t.length===2?t[1]:t[0],s=e?e(o):t[0];(a=r.get(s))==null||a.forEach(p=>{p.next(o)})}]}var A=b(require("rxjs")),L=b(require("rxjs/operators")),P=(e,...n)=>(0,A.merge)(...Object.entries(e).map(([r,t])=>(0,A.from)(t).pipe((0,L.map)(o=>({type:r,payload:o})))).concat(n));var I=b(require("rxjs/operators"));function N(e,n,r){let t=e.pipe(G(n,r),K());return[o=>y(t,o),t.pipe((0,I.map)(o=>Array.from(o.keys())))]}var d=b(require("rxjs")),U=b(require("rxjs/operators")),B={};function G(e,n){return r=>new d.Observable(t=>{let o=new Map,s=B,a=r.subscribe(p=>{let i=e(p);if(o.has(i))return o.get(i).next(p);let c=n?new d.Subject:new d.ReplaySubject(1);o.set(i,c);let O=n?n(c,i).pipe((0,U.shareReplay)(1)):c.asObservable();O.key=i;let l=()=>o.delete(i);O.subscribe(d.noop,l,l),c.next(p),t.next(O)},p=>{t.error(s=p)},()=>{t.complete()});return()=>{a.unsubscribe(),o.forEach(s===B?p=>p.complete():p=>p.error(s))}})}var D=b(require("rxjs")),$=b(require("@react-rxjs/core"));var f=e=>w($.SUSPENSE)((0,D.from)(e));var W=()=>f;var z=b(require("rxjs")),q=b(require("rxjs/operators"));var C=e=>(0,z.pipe)((0,q.switchMap)((n,r)=>f(e(n,r))));var H=b(require("rxjs")),J=b(require("rxjs/operators")),Q=()=>{let e=new H.Subject;return[e.asObservable(),()=>(0,J.tap)(e)]};var X=b(require("@react-rxjs/core")),pe=e=>e();function Y(...e){let n=()=>e.map(pe);return function(){let[r,t]=X.bind.apply(null,arguments);return[(...o)=>r(...n(),...o),t]}}function Z(...e){return g(...e)} | ||
var H=Object.create;var T=Object.defineProperty;var J=Object.getOwnPropertyDescriptor;var Q=Object.getOwnPropertyNames;var X=Object.getPrototypeOf,Y=Object.prototype.hasOwnProperty;var g=e=>T(e,"__esModule",{value:!0});var Z=(e,s)=>{for(var r in s)T(e,r,{get:s[r],enumerable:!0})},_=(e,s,r)=>{if(s&&typeof s=="object"||typeof s=="function")for(let t of Q(s))!Y.call(e,t)&&t!=="default"&&T(e,t,{get:()=>s[t],enumerable:!(r=J(s,t))||r.enumerable});return e},i=e=>_(g(T(e!=null?H(X(e)):{},"default",e&&e.__esModule&&"default"in e?{get:()=>e.default,enumerable:!0}:{value:e,enumerable:!0})),e);g(exports);Z(exports,{combineKeys:()=>h,contextBinder:()=>C,createKeyedSignal:()=>j,createListener:()=>$,createSignal:()=>x,mergeWithKey:()=>E,partitionByKey:()=>R,selfDependant:()=>W,suspend:()=>f,suspended:()=>P,switchMapSuspended:()=>B});var A=i(require("rxjs")),h=(e,s)=>new A.Observable(r=>{let t=new Map,n=new Set,o=new Map,p=!1,l=()=>{if(!p){let a=Object.assign(new Map(o),{changes:n});n=new Set,r.next(a)}},K=e.subscribe(a=>{p=!0;let c=new Set(a);t.forEach((b,u)=>{c.has(u)?c.delete(u):(b.unsubscribe(),t.delete(u),o.has(u)&&(n.add(u),o.delete(u)))}),c.forEach(b=>{t.set(b,s(b).subscribe(u=>{(!o.has(b)||o.get(b)!==u)&&(n.add(b),o.set(b,u),l())},u=>{r.error(u)}))}),p=!1,n.size&&l()},a=>{r.error(a)},()=>{r.complete()});return()=>{K.unsubscribe(),t.forEach(a=>{a.unsubscribe()})}});var m=i(require("rxjs"));function x(e=m.identity){let s=new m.Subject;return[s.asObservable(),(...r)=>s.next(e(...r))]}var w=i(require("rxjs"));function j(e,s){let r=new Map;return[t=>{let n=new w.Observable(o=>{r.has(t)||r.set(t,new Set);let p=r.get(t);return p.add(o),()=>{p.delete(o),p.size===0&&r.delete(t)}});return n.key=t,n},(...t)=>{var p;let n=s?s(...t):t.length===2?t[1]:t[0],o=e?e(n):t[0];(p=r.get(o))==null||p.forEach(l=>{l.next(n)})}]}var O=i(require("rxjs")),G=i(require("rxjs/operators")),E=(e,...s)=>(0,O.merge)(...Object.entries(e).map(([r,t])=>(0,O.from)(t).pipe((0,G.map)(n=>({type:r,payload:n})))).concat(s));var v=i(require("@react-rxjs/core")),d=i(require("rxjs")),M=i(require("rxjs/operators"));function R(e,s,r){let t=new d.Observable(n=>{let o=new Map,p=!1,l=!1,K=e.subscribe(a=>{let c=s(a);if(o.has(c))return o.get(c).source.next(a);let b=new d.Subject,u=r(b,c).pipe((0,v.shareLatest)());u.key=c;let y={source:b,observable:u,subscription:new d.Subscription};o.set(c,y),y.subscription=u.subscribe(d.noop,q=>n.error(q),()=>{o.delete(c),n.next(S(o)),o.size===0&&l&&n.complete()}),b.next(a),n.next(S(o)),p=!0},a=>{l=!0,o.size?o.forEach(c=>c.source.error(a)):n.error(a)},()=>{l=!0,o.size?o.forEach(a=>a.source.complete()):n.complete()});return p||n.next(S(o)),()=>{K.unsubscribe(),o.forEach(a=>{a.source.unsubscribe(),a.subscription.unsubscribe()})}}).pipe((0,v.shareLatest)());return[n=>ee(t,n),t.pipe((0,M.map)(n=>Array.from(n.keys())))]}function S(e){return new Map(Array.from(e.entries()).map(([s,r])=>[s,r.observable]))}var ee=(e,s)=>{let r=new d.Observable(t=>{let n,o=e.subscribe(p=>{var l;n=n||((l=p.get(s))==null?void 0:l.subscribe(t))},p=>{t.error(p)},()=>{t.complete()});return()=>{n==null||n.unsubscribe(),o.unsubscribe()}});return r.key=s,r};var V=i(require("rxjs")),L=i(require("@react-rxjs/core"));var k=i(require("rxjs")),I=e=>s=>new k.Observable(r=>{let t=!1,n=s.subscribe(o=>{t=!0,r.next(o)},o=>{r.error(o)},()=>{r.complete()});return t||r.next(e),n});var f=e=>I(L.SUSPENSE)((0,V.from)(e));var P=()=>f;var N=i(require("rxjs")),U=i(require("rxjs/operators"));var B=e=>(0,N.pipe)((0,U.switchMap)((s,r)=>f(e(s,r))));var F=i(require("rxjs")),D=i(require("rxjs/operators")),W=()=>{let e=new F.Subject;return[e.asObservable(),()=>(0,D.tap)(e)]};var z=i(require("@react-rxjs/core")),re=e=>e();function C(...e){let s=()=>e.map(re);return function(){let[r,t]=z.bind.apply(null,arguments);return[(...n)=>r(...s(),...n),t]}}function $(...e){return x(...e)} | ||
//# sourceMappingURL=utils.cjs.production.min.js.map |
{ | ||
"version": "0.8.3", | ||
"version": "0.9.0", | ||
"repository": { | ||
@@ -4,0 +4,0 @@ "type": "git", |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
220313
-6.27%1826
-2.41%