@typed/fx 2.0.0-beta.4 → 2.0.0-beta.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +34 -20
- package/dist/Fx/Fx.d.ts +362 -10
- package/dist/Fx/Fx.d.ts.map +1 -1
- package/dist/Fx/Fx.js +32 -1
- package/dist/Fx/TypeId.d.ts +49 -3
- package/dist/Fx/TypeId.d.ts.map +1 -1
- package/dist/Fx/TypeId.js +39 -2
- package/dist/Fx/combinators/additive.d.ts +156 -5
- package/dist/Fx/combinators/additive.d.ts.map +1 -1
- package/dist/Fx/combinators/additive.js +156 -5
- package/dist/Fx/combinators/catch.d.ts +195 -22
- package/dist/Fx/combinators/catch.d.ts.map +1 -1
- package/dist/Fx/combinators/catch.js +186 -16
- package/dist/Fx/combinators/causes.d.ts +24 -1
- package/dist/Fx/combinators/causes.d.ts.map +1 -1
- package/dist/Fx/combinators/causes.js +24 -1
- package/dist/Fx/combinators/changesWithEffect.d.ts +20 -0
- package/dist/Fx/combinators/changesWithEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/changesWithEffect.js +20 -0
- package/dist/Fx/combinators/compact.d.ts +17 -0
- package/dist/Fx/combinators/compact.d.ts.map +1 -1
- package/dist/Fx/combinators/compact.js +17 -0
- package/dist/Fx/combinators/concatMap.d.ts +86 -0
- package/dist/Fx/combinators/concatMap.d.ts.map +1 -0
- package/dist/Fx/combinators/concatMap.js +86 -0
- package/dist/Fx/combinators/continueWith.d.ts +109 -1
- package/dist/Fx/combinators/continueWith.d.ts.map +1 -1
- package/dist/Fx/combinators/continueWith.js +109 -1
- package/dist/Fx/combinators/debounce.d.ts +34 -0
- package/dist/Fx/combinators/debounce.d.ts.map +1 -0
- package/dist/Fx/combinators/debounce.js +35 -0
- package/dist/Fx/combinators/delay.d.ts +34 -0
- package/dist/Fx/combinators/delay.d.ts.map +1 -0
- package/dist/Fx/combinators/delay.js +31 -0
- package/dist/Fx/combinators/dropUntil.d.ts +42 -0
- package/dist/Fx/combinators/dropUntil.d.ts.map +1 -1
- package/dist/Fx/combinators/dropUntil.js +42 -0
- package/dist/Fx/combinators/during.d.ts +38 -0
- package/dist/Fx/combinators/during.d.ts.map +1 -0
- package/dist/Fx/combinators/during.js +85 -0
- package/dist/Fx/combinators/ensuring.d.ts +33 -3
- package/dist/Fx/combinators/ensuring.d.ts.map +1 -1
- package/dist/Fx/combinators/ensuring.js +33 -3
- package/dist/Fx/combinators/exhaustLatestMap.d.ts +40 -4
- package/dist/Fx/combinators/exhaustLatestMap.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustLatestMap.js +40 -4
- package/dist/Fx/combinators/exhaustLatestMapEffect.d.ts +39 -3
- package/dist/Fx/combinators/exhaustLatestMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustLatestMapEffect.js +39 -3
- package/dist/Fx/combinators/exhaustMap.d.ts +37 -0
- package/dist/Fx/combinators/exhaustMap.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustMap.js +37 -0
- package/dist/Fx/combinators/exhaustMapEffect.d.ts +32 -0
- package/dist/Fx/combinators/exhaustMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/exhaustMapEffect.js +32 -0
- package/dist/Fx/combinators/exit.d.ts +22 -1
- package/dist/Fx/combinators/exit.d.ts.map +1 -1
- package/dist/Fx/combinators/exit.js +22 -1
- package/dist/Fx/combinators/filter.d.ts +16 -0
- package/dist/Fx/combinators/filter.d.ts.map +1 -1
- package/dist/Fx/combinators/filter.js +16 -0
- package/dist/Fx/combinators/filterEffect.d.ts +21 -0
- package/dist/Fx/combinators/filterEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterEffect.js +21 -0
- package/dist/Fx/combinators/filterMap.d.ts +19 -0
- package/dist/Fx/combinators/filterMap.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMap.js +19 -0
- package/dist/Fx/combinators/filterMapEffect.d.ts +20 -0
- package/dist/Fx/combinators/filterMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapEffect.js +20 -0
- package/dist/Fx/combinators/filterMapLoop.d.ts +19 -0
- package/dist/Fx/combinators/filterMapLoop.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoop.js +19 -0
- package/dist/Fx/combinators/filterMapLoopCause.d.ts +20 -0
- package/dist/Fx/combinators/filterMapLoopCause.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoopCause.js +20 -0
- package/dist/Fx/combinators/filterMapLoopCauseEffect.d.ts +20 -0
- package/dist/Fx/combinators/filterMapLoopCauseEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoopCauseEffect.js +20 -0
- package/dist/Fx/combinators/filterMapLoopEffect.d.ts +20 -0
- package/dist/Fx/combinators/filterMapLoopEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/filterMapLoopEffect.js +20 -0
- package/dist/Fx/combinators/flatMap.d.ts +48 -3
- package/dist/Fx/combinators/flatMap.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMap.js +35 -2
- package/dist/Fx/combinators/flatMapConcurrently.d.ts +50 -3
- package/dist/Fx/combinators/flatMapConcurrently.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMapConcurrently.js +47 -1
- package/dist/Fx/combinators/flatMapConcurrentlyEffect.d.ts +47 -3
- package/dist/Fx/combinators/flatMapConcurrentlyEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMapConcurrentlyEffect.js +39 -1
- package/dist/Fx/combinators/flatMapEffect.d.ts +44 -2
- package/dist/Fx/combinators/flatMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/flatMapEffect.js +31 -1
- package/dist/Fx/combinators/flip.d.ts +33 -1
- package/dist/Fx/combinators/flip.d.ts.map +1 -1
- package/dist/Fx/combinators/flip.js +33 -1
- package/dist/Fx/combinators/gen.d.ts +28 -9
- package/dist/Fx/combinators/gen.d.ts.map +1 -1
- package/dist/Fx/combinators/gen.js +27 -3
- package/dist/Fx/combinators/genScoped.d.ts +32 -9
- package/dist/Fx/combinators/genScoped.d.ts.map +1 -1
- package/dist/Fx/combinators/genScoped.js +30 -2
- package/dist/Fx/combinators/grouped.d.ts +89 -0
- package/dist/Fx/combinators/grouped.d.ts.map +1 -0
- package/dist/Fx/combinators/grouped.js +146 -0
- package/dist/Fx/combinators/index.d.ts +35 -0
- package/dist/Fx/combinators/index.d.ts.map +1 -1
- package/dist/Fx/combinators/index.js +35 -0
- package/dist/Fx/combinators/keyed.d.ts +121 -7
- package/dist/Fx/combinators/keyed.d.ts.map +1 -1
- package/dist/Fx/combinators/keyed.js +64 -6
- package/dist/Fx/combinators/loop.d.ts +16 -0
- package/dist/Fx/combinators/loop.d.ts.map +1 -1
- package/dist/Fx/combinators/loop.js +16 -0
- package/dist/Fx/combinators/loopCause.d.ts +17 -0
- package/dist/Fx/combinators/loopCause.d.ts.map +1 -1
- package/dist/Fx/combinators/loopCause.js +17 -0
- package/dist/Fx/combinators/loopCauseEffect.d.ts +18 -0
- package/dist/Fx/combinators/loopCauseEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/loopCauseEffect.js +18 -0
- package/dist/Fx/combinators/loopEffect.d.ts +23 -0
- package/dist/Fx/combinators/loopEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/loopEffect.js +23 -0
- package/dist/Fx/combinators/map.d.ts +45 -0
- package/dist/Fx/combinators/map.d.ts.map +1 -1
- package/dist/Fx/combinators/map.js +42 -0
- package/dist/Fx/combinators/mapBoth.d.ts +19 -0
- package/dist/Fx/combinators/mapBoth.d.ts.map +1 -1
- package/dist/Fx/combinators/mapBoth.js +19 -0
- package/dist/Fx/combinators/mapEffect.d.ts +24 -0
- package/dist/Fx/combinators/mapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/mapEffect.js +24 -0
- package/dist/Fx/combinators/mapError.d.ts +20 -4
- package/dist/Fx/combinators/mapError.d.ts.map +1 -1
- package/dist/Fx/combinators/mapError.js +20 -4
- package/dist/Fx/combinators/mergeAll.d.ts +34 -0
- package/dist/Fx/combinators/mergeAll.d.ts.map +1 -1
- package/dist/Fx/combinators/mergeAll.js +34 -0
- package/dist/Fx/combinators/mergeOrdered.d.ts +35 -3
- package/dist/Fx/combinators/mergeOrdered.d.ts.map +1 -1
- package/dist/Fx/combinators/mergeOrdered.js +35 -3
- package/dist/Fx/combinators/onError.d.ts +33 -3
- package/dist/Fx/combinators/onError.d.ts.map +1 -1
- package/dist/Fx/combinators/onError.js +33 -3
- package/dist/Fx/combinators/onExit.d.ts +28 -2
- package/dist/Fx/combinators/onExit.d.ts.map +1 -1
- package/dist/Fx/combinators/onExit.js +28 -2
- package/dist/Fx/combinators/onInterrupt.d.ts +48 -3
- package/dist/Fx/combinators/onInterrupt.d.ts.map +1 -1
- package/dist/Fx/combinators/onInterrupt.js +48 -3
- package/dist/Fx/combinators/pairwise.d.ts +28 -0
- package/dist/Fx/combinators/pairwise.d.ts.map +1 -0
- package/dist/Fx/combinators/pairwise.js +31 -0
- package/dist/Fx/combinators/provide.d.ts +130 -9
- package/dist/Fx/combinators/provide.d.ts.map +1 -1
- package/dist/Fx/combinators/provide.js +130 -9
- package/dist/Fx/combinators/race.d.ts +92 -0
- package/dist/Fx/combinators/race.d.ts.map +1 -0
- package/dist/Fx/combinators/race.js +149 -0
- package/dist/Fx/combinators/repeat.d.ts +41 -0
- package/dist/Fx/combinators/repeat.d.ts.map +1 -0
- package/dist/Fx/combinators/repeat.js +57 -0
- package/dist/Fx/combinators/result.d.ts +22 -0
- package/dist/Fx/combinators/result.d.ts.map +1 -1
- package/dist/Fx/combinators/result.js +26 -12
- package/dist/Fx/combinators/retry.d.ts +53 -0
- package/dist/Fx/combinators/retry.d.ts.map +1 -0
- package/dist/Fx/combinators/retry.js +71 -0
- package/dist/Fx/combinators/sample.d.ts +31 -0
- package/dist/Fx/combinators/sample.d.ts.map +1 -0
- package/dist/Fx/combinators/sample.js +42 -0
- package/dist/Fx/combinators/scan.d.ts +39 -0
- package/dist/Fx/combinators/scan.d.ts.map +1 -1
- package/dist/Fx/combinators/scan.js +39 -0
- package/dist/Fx/combinators/since.d.ts +30 -0
- package/dist/Fx/combinators/since.d.ts.map +1 -0
- package/dist/Fx/combinators/since.js +39 -0
- package/dist/Fx/combinators/skip.d.ts +31 -0
- package/dist/Fx/combinators/skip.d.ts.map +1 -1
- package/dist/Fx/combinators/skip.js +31 -0
- package/dist/Fx/combinators/skipRepeats.d.ts +16 -0
- package/dist/Fx/combinators/skipRepeats.d.ts.map +1 -1
- package/dist/Fx/combinators/skipRepeats.js +16 -0
- package/dist/Fx/combinators/skipRepeatsWith.d.ts +17 -0
- package/dist/Fx/combinators/skipRepeatsWith.d.ts.map +1 -1
- package/dist/Fx/combinators/skipRepeatsWith.js +17 -0
- package/dist/Fx/combinators/skipWhile.d.ts +68 -0
- package/dist/Fx/combinators/skipWhile.d.ts.map +1 -1
- package/dist/Fx/combinators/skipWhile.js +68 -0
- package/dist/Fx/combinators/slice.d.ts +82 -0
- package/dist/Fx/combinators/slice.d.ts.map +1 -1
- package/dist/Fx/combinators/slice.js +33 -0
- package/dist/Fx/combinators/switchMap.d.ts +38 -0
- package/dist/Fx/combinators/switchMap.d.ts.map +1 -1
- package/dist/Fx/combinators/switchMap.js +38 -0
- package/dist/Fx/combinators/switchMapEffect.d.ts +37 -0
- package/dist/Fx/combinators/switchMapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/switchMapEffect.js +37 -0
- package/dist/Fx/combinators/take.d.ts +32 -0
- package/dist/Fx/combinators/take.d.ts.map +1 -1
- package/dist/Fx/combinators/take.js +32 -0
- package/dist/Fx/combinators/takeUntil.d.ts +46 -0
- package/dist/Fx/combinators/takeUntil.d.ts.map +1 -1
- package/dist/Fx/combinators/takeUntil.js +46 -0
- package/dist/Fx/combinators/takeWhile.d.ts +31 -0
- package/dist/Fx/combinators/takeWhile.d.ts.map +1 -1
- package/dist/Fx/combinators/takeWhile.js +31 -0
- package/dist/Fx/combinators/tapEffect.d.ts +16 -0
- package/dist/Fx/combinators/tapEffect.d.ts.map +1 -1
- package/dist/Fx/combinators/tapEffect.js +16 -0
- package/dist/Fx/combinators/throttle.d.ts +79 -0
- package/dist/Fx/combinators/throttle.d.ts.map +1 -0
- package/dist/Fx/combinators/throttle.js +99 -0
- package/dist/Fx/combinators/timeout.d.ts +76 -0
- package/dist/Fx/combinators/timeout.d.ts.map +1 -0
- package/dist/Fx/combinators/timeout.js +110 -0
- package/dist/Fx/combinators/tuple.d.ts +30 -0
- package/dist/Fx/combinators/tuple.d.ts.map +1 -1
- package/dist/Fx/combinators/tuple.js +34 -3
- package/dist/Fx/combinators/until.d.ts +27 -0
- package/dist/Fx/combinators/until.d.ts.map +1 -0
- package/dist/Fx/combinators/until.js +56 -0
- package/dist/Fx/combinators/unwrap.d.ts +29 -0
- package/dist/Fx/combinators/unwrap.d.ts.map +1 -1
- package/dist/Fx/combinators/unwrap.js +29 -0
- package/dist/Fx/combinators/unwrapScoped.d.ts +33 -0
- package/dist/Fx/combinators/unwrapScoped.d.ts.map +1 -1
- package/dist/Fx/combinators/unwrapScoped.js +33 -0
- package/dist/Fx/combinators/when.d.ts +35 -0
- package/dist/Fx/combinators/when.d.ts.map +1 -1
- package/dist/Fx/combinators/when.js +36 -1
- package/dist/Fx/combinators/withLatestFrom.d.ts +58 -0
- package/dist/Fx/combinators/withLatestFrom.d.ts.map +1 -0
- package/dist/Fx/combinators/withLatestFrom.js +68 -0
- package/dist/Fx/combinators/withSpan.d.ts +35 -1
- package/dist/Fx/combinators/withSpan.d.ts.map +1 -1
- package/dist/Fx/combinators/withSpan.js +34 -3
- package/dist/Fx/combinators/zip.d.ts +60 -0
- package/dist/Fx/combinators/zip.d.ts.map +1 -1
- package/dist/Fx/combinators/zip.js +60 -0
- package/dist/Fx/constructors/at.d.ts +20 -0
- package/dist/Fx/constructors/at.d.ts.map +1 -1
- package/dist/Fx/constructors/at.js +20 -0
- package/dist/Fx/constructors/die.d.ts +21 -0
- package/dist/Fx/constructors/die.d.ts.map +1 -1
- package/dist/Fx/constructors/die.js +21 -0
- package/dist/Fx/constructors/empty.d.ts +18 -0
- package/dist/Fx/constructors/empty.d.ts.map +1 -1
- package/dist/Fx/constructors/empty.js +18 -0
- package/dist/Fx/constructors/fail.d.ts +21 -0
- package/dist/Fx/constructors/fail.d.ts.map +1 -1
- package/dist/Fx/constructors/fail.js +21 -0
- package/dist/Fx/constructors/failCause.d.ts +22 -0
- package/dist/Fx/constructors/failCause.d.ts.map +1 -1
- package/dist/Fx/constructors/failCause.js +22 -0
- package/dist/Fx/constructors/fn.d.ts +113 -13
- package/dist/Fx/constructors/fn.d.ts.map +1 -1
- package/dist/Fx/constructors/fn.js +36 -0
- package/dist/Fx/constructors/fromEffect.d.ts +43 -1
- package/dist/Fx/constructors/fromEffect.d.ts.map +1 -1
- package/dist/Fx/constructors/fromEffect.js +43 -1
- package/dist/Fx/constructors/fromFailures.d.ts +24 -0
- package/dist/Fx/constructors/fromFailures.d.ts.map +1 -1
- package/dist/Fx/constructors/fromFailures.js +24 -0
- package/dist/Fx/constructors/fromIterable.d.ts +22 -0
- package/dist/Fx/constructors/fromIterable.d.ts.map +1 -1
- package/dist/Fx/constructors/fromIterable.js +22 -0
- package/dist/Fx/constructors/fromSchedule.d.ts +23 -0
- package/dist/Fx/constructors/fromSchedule.d.ts.map +1 -1
- package/dist/Fx/constructors/fromSchedule.js +25 -2
- package/dist/Fx/constructors/index.d.ts +2 -1
- package/dist/Fx/constructors/index.d.ts.map +1 -1
- package/dist/Fx/constructors/index.js +2 -1
- package/dist/Fx/constructors/interrupt.d.ts +21 -1
- package/dist/Fx/constructors/interrupt.d.ts.map +1 -1
- package/dist/Fx/constructors/interrupt.js +21 -1
- package/dist/Fx/constructors/make.d.ts +146 -1
- package/dist/Fx/constructors/make.d.ts.map +1 -1
- package/dist/Fx/constructors/make.js +54 -3
- package/dist/Fx/constructors/periodic.d.ts +29 -0
- package/dist/Fx/constructors/periodic.d.ts.map +1 -1
- package/dist/Fx/constructors/periodic.js +29 -0
- package/dist/Fx/constructors/succeed.d.ts +75 -3
- package/dist/Fx/constructors/succeed.d.ts.map +1 -1
- package/dist/Fx/constructors/succeed.js +75 -3
- package/dist/Fx/constructors/suspend.d.ts +28 -0
- package/dist/Fx/constructors/suspend.d.ts.map +1 -1
- package/dist/Fx/constructors/suspend.js +28 -0
- package/dist/Fx/constructors/sync.d.ts +32 -0
- package/dist/Fx/constructors/sync.d.ts.map +1 -0
- package/dist/Fx/constructors/sync.js +32 -0
- package/dist/Fx/internal/DeferredRef.d.ts +259 -7
- package/dist/Fx/internal/DeferredRef.d.ts.map +1 -1
- package/dist/Fx/internal/DeferredRef.js +260 -9
- package/dist/Fx/internal/UnionToTuple.d.ts +22 -0
- package/dist/Fx/internal/UnionToTuple.d.ts.map +1 -1
- package/dist/Fx/internal/diff.d.ts +586 -0
- package/dist/Fx/internal/diff.d.ts.map +1 -1
- package/dist/Fx/internal/diff.js +120 -9
- package/dist/Fx/internal/effectableEvaluateKey.d.ts +30 -0
- package/dist/Fx/internal/effectableEvaluateKey.d.ts.map +1 -0
- package/dist/Fx/internal/effectableEvaluateKey.js +29 -0
- package/dist/Fx/internal/effectableWithOverride.d.ts +55 -0
- package/dist/Fx/internal/effectableWithOverride.d.ts.map +1 -0
- package/dist/Fx/internal/effectableWithOverride.js +46 -0
- package/dist/Fx/internal/equivalence.d.ts +29 -0
- package/dist/Fx/internal/equivalence.d.ts.map +1 -1
- package/dist/Fx/internal/equivalence.js +29 -0
- package/dist/Fx/internal/multicast.d.ts +145 -2
- package/dist/Fx/internal/multicast.d.ts.map +1 -1
- package/dist/Fx/internal/multicast.js +146 -4
- package/dist/Fx/internal/ring-buffer.d.ts +149 -0
- package/dist/Fx/internal/ring-buffer.d.ts.map +1 -1
- package/dist/Fx/internal/ring-buffer.js +155 -0
- package/dist/Fx/internal/scope.d.ts +184 -0
- package/dist/Fx/internal/scope.d.ts.map +1 -1
- package/dist/Fx/internal/scope.js +150 -0
- package/dist/Fx/internal/yieldable.d.ts +117 -2
- package/dist/Fx/internal/yieldable.d.ts.map +1 -1
- package/dist/Fx/internal/yieldable.js +86 -3
- package/dist/Fx/run/collect.d.ts +89 -0
- package/dist/Fx/run/collect.d.ts.map +1 -1
- package/dist/Fx/run/collect.js +90 -1
- package/dist/Fx/run/first.d.ts +22 -0
- package/dist/Fx/run/first.d.ts.map +1 -1
- package/dist/Fx/run/first.js +22 -0
- package/dist/Fx/run/fork.d.ts +50 -0
- package/dist/Fx/run/fork.d.ts.map +1 -1
- package/dist/Fx/run/fork.js +50 -0
- package/dist/Fx/run/observe.d.ts +106 -0
- package/dist/Fx/run/observe.d.ts.map +1 -1
- package/dist/Fx/run/observe.js +106 -0
- package/dist/Fx/run/runPromise.d.ts +43 -0
- package/dist/Fx/run/runPromise.d.ts.map +1 -1
- package/dist/Fx/run/runPromise.js +43 -0
- package/dist/Fx/stream.d.ts +92 -0
- package/dist/Fx/stream.d.ts.map +1 -1
- package/dist/Fx/stream.js +60 -1
- package/dist/Push/Push.d.ts +1216 -91
- package/dist/Push/Push.d.ts.map +1 -1
- package/dist/Push/Push.js +1012 -83
- package/dist/RefArray.d.ts +2 -0
- package/dist/RefArray.d.ts.map +1 -0
- package/dist/RefArray.js +1 -0
- package/dist/RefBigDecimal.d.ts +2 -0
- package/dist/RefBigDecimal.d.ts.map +1 -0
- package/dist/RefBigDecimal.js +1 -0
- package/dist/RefBigInt.d.ts +2 -0
- package/dist/RefBigInt.d.ts.map +1 -0
- package/dist/RefBigInt.js +1 -0
- package/dist/RefBoolean.d.ts +2 -0
- package/dist/RefBoolean.d.ts.map +1 -0
- package/dist/RefBoolean.js +1 -0
- package/dist/RefCause.d.ts +2 -0
- package/dist/RefCause.d.ts.map +1 -0
- package/dist/RefCause.js +1 -0
- package/dist/RefChunk.d.ts +2 -0
- package/dist/RefChunk.d.ts.map +1 -0
- package/dist/RefChunk.js +1 -0
- package/dist/RefDateTime.d.ts +2 -0
- package/dist/RefDateTime.d.ts.map +1 -0
- package/dist/RefDateTime.js +1 -0
- package/dist/RefDuration.d.ts +2 -0
- package/dist/RefDuration.d.ts.map +1 -0
- package/dist/RefDuration.js +1 -0
- package/dist/RefGraph.d.ts +2 -0
- package/dist/RefGraph.d.ts.map +1 -0
- package/dist/RefGraph.js +1 -0
- package/dist/RefHashMap.d.ts +2 -0
- package/dist/RefHashMap.d.ts.map +1 -0
- package/dist/RefHashMap.js +1 -0
- package/dist/RefHashRing.d.ts +2 -0
- package/dist/RefHashRing.d.ts.map +1 -0
- package/dist/RefHashRing.js +1 -0
- package/dist/RefHashSet.d.ts +2 -0
- package/dist/RefHashSet.d.ts.map +1 -0
- package/dist/RefHashSet.js +1 -0
- package/dist/RefIterable.d.ts +2 -0
- package/dist/RefIterable.d.ts.map +1 -0
- package/dist/RefIterable.js +1 -0
- package/dist/RefOption.d.ts +2 -0
- package/dist/RefOption.d.ts.map +1 -0
- package/dist/RefOption.js +1 -0
- package/dist/RefRecord.d.ts +2 -0
- package/dist/RefRecord.d.ts.map +1 -0
- package/dist/RefRecord.js +1 -0
- package/dist/RefResult.d.ts +2 -0
- package/dist/RefResult.d.ts.map +1 -0
- package/dist/RefResult.js +1 -0
- package/dist/RefString.d.ts +2 -0
- package/dist/RefString.d.ts.map +1 -0
- package/dist/RefString.js +1 -0
- package/dist/RefStruct.d.ts +2 -0
- package/dist/RefStruct.d.ts.map +1 -0
- package/dist/RefStruct.js +1 -0
- package/dist/RefSubject/Hydration.d.ts +504 -0
- package/dist/RefSubject/Hydration.d.ts.map +1 -0
- package/dist/RefSubject/Hydration.js +300 -0
- package/dist/RefSubject/RefArray.d.ts +351 -4
- package/dist/RefSubject/RefArray.d.ts.map +1 -1
- package/dist/RefSubject/RefArray.js +339 -3
- package/dist/RefSubject/RefBigDecimal.d.ts +221 -1
- package/dist/RefSubject/RefBigDecimal.d.ts.map +1 -1
- package/dist/RefSubject/RefBigDecimal.js +210 -1
- package/dist/RefSubject/RefBigInt.d.ts +166 -1
- package/dist/RefSubject/RefBigInt.d.ts.map +1 -1
- package/dist/RefSubject/RefBigInt.js +155 -1
- package/dist/RefSubject/RefBoolean.d.ts +166 -1
- package/dist/RefSubject/RefBoolean.d.ts.map +1 -1
- package/dist/RefSubject/RefBoolean.js +155 -1
- package/dist/RefSubject/RefCause.d.ts +122 -1
- package/dist/RefSubject/RefCause.d.ts.map +1 -1
- package/dist/RefSubject/RefCause.js +111 -1
- package/dist/RefSubject/RefChunk.d.ts +406 -1
- package/dist/RefSubject/RefChunk.d.ts.map +1 -1
- package/dist/RefSubject/RefChunk.js +394 -0
- package/dist/RefSubject/RefDateTime.d.ts +122 -1
- package/dist/RefSubject/RefDateTime.d.ts.map +1 -1
- package/dist/RefSubject/RefDateTime.js +111 -1
- package/dist/RefSubject/RefDuration.d.ts +155 -1
- package/dist/RefSubject/RefDuration.d.ts.map +1 -1
- package/dist/RefSubject/RefDuration.js +144 -1
- package/dist/RefSubject/RefGraph.d.ts +320 -6
- package/dist/RefSubject/RefGraph.d.ts.map +1 -1
- package/dist/RefSubject/RefGraph.js +303 -0
- package/dist/RefSubject/RefHashMap.d.ts +296 -1
- package/dist/RefSubject/RefHashMap.d.ts.map +1 -1
- package/dist/RefSubject/RefHashMap.js +284 -0
- package/dist/RefSubject/RefHashRing.d.ts +146 -2
- package/dist/RefSubject/RefHashRing.d.ts.map +1 -1
- package/dist/RefSubject/RefHashRing.js +133 -0
- package/dist/RefSubject/RefHashSet.d.ts +230 -1
- package/dist/RefSubject/RefHashSet.d.ts.map +1 -1
- package/dist/RefSubject/RefHashSet.js +218 -0
- package/dist/RefSubject/RefIterable.d.ts +327 -1
- package/dist/RefSubject/RefIterable.d.ts.map +1 -1
- package/dist/RefSubject/RefIterable.js +315 -0
- package/dist/RefSubject/RefOption.d.ts +144 -1
- package/dist/RefSubject/RefOption.d.ts.map +1 -1
- package/dist/RefSubject/RefOption.js +133 -1
- package/dist/RefSubject/RefRecord.d.ts +339 -1
- package/dist/RefSubject/RefRecord.d.ts.map +1 -1
- package/dist/RefSubject/RefRecord.js +327 -0
- package/dist/RefSubject/RefResult.d.ts +155 -23
- package/dist/RefSubject/RefResult.d.ts.map +1 -1
- package/dist/RefSubject/RefResult.js +122 -1
- package/dist/RefSubject/RefString.d.ts +188 -1
- package/dist/RefSubject/RefString.d.ts.map +1 -1
- package/dist/RefSubject/RefString.js +177 -1
- package/dist/RefSubject/RefStruct.d.ts +156 -1
- package/dist/RefSubject/RefStruct.d.ts.map +1 -1
- package/dist/RefSubject/RefStruct.js +145 -1
- package/dist/RefSubject/RefSubject.d.ts +1166 -13
- package/dist/RefSubject/RefSubject.d.ts.map +1 -1
- package/dist/RefSubject/RefSubject.js +843 -51
- package/dist/RefSubject/RefTrie.d.ts +290 -4
- package/dist/RefSubject/RefTrie.d.ts.map +1 -1
- package/dist/RefSubject/RefTrie.js +278 -3
- package/dist/RefSubject/RefTuple.d.ts +117 -1
- package/dist/RefSubject/RefTuple.d.ts.map +1 -1
- package/dist/RefSubject/RefTuple.js +106 -1
- package/dist/RefSubject/index.d.ts +1 -0
- package/dist/RefSubject/index.d.ts.map +1 -1
- package/dist/RefSubject/index.js +1 -0
- package/dist/RefSubject.d.ts +2 -1
- package/dist/RefSubject.d.ts.map +1 -1
- package/dist/RefSubject.js +2 -1
- package/dist/RefTrie.d.ts +2 -0
- package/dist/RefTrie.d.ts.map +1 -0
- package/dist/RefTrie.js +1 -0
- package/dist/RefTuple.d.ts +2 -0
- package/dist/RefTuple.d.ts.map +1 -0
- package/dist/RefTuple.js +1 -0
- package/dist/Sink/Sink.d.ts +381 -10
- package/dist/Sink/Sink.d.ts.map +1 -1
- package/dist/Sink/Sink.js +49 -2
- package/dist/Sink/combinators.d.ts +731 -2
- package/dist/Sink/combinators.d.ts.map +1 -1
- package/dist/Sink/combinators.js +706 -4
- package/dist/Subject/Subject.d.ts +1013 -19
- package/dist/Subject/Subject.d.ts.map +1 -1
- package/dist/Subject/Subject.js +901 -36
- package/dist/Versioned/Versioned.d.ts +424 -7
- package/dist/Versioned/Versioned.d.ts.map +1 -1
- package/dist/Versioned/Versioned.js +238 -12
- package/dist/index.d.ts +22 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +22 -3
- package/package.json +123 -14
- package/dist/Fx/constructors/fromYieldable.d.ts +0 -12
- package/dist/Fx/constructors/fromYieldable.d.ts.map +0 -1
- package/dist/Fx/constructors/fromYieldable.js +0 -12
- package/src/Fx/Fx.ts +0 -164
- package/src/Fx/TypeId.ts +0 -25
- package/src/Fx/combinators/additive.ts +0 -142
- package/src/Fx/combinators/catch.ts +0 -416
- package/src/Fx/combinators/causes.ts +0 -23
- package/src/Fx/combinators/changesWithEffect.ts +0 -66
- package/src/Fx/combinators/compact.ts +0 -15
- package/src/Fx/combinators/continueWith.ts +0 -78
- package/src/Fx/combinators/dropUntil.ts +0 -47
- package/src/Fx/combinators/ensuring.ts +0 -23
- package/src/Fx/combinators/exhaustLatestMap.ts +0 -74
- package/src/Fx/combinators/exhaustLatestMapEffect.ts +0 -25
- package/src/Fx/combinators/exhaustMap.ts +0 -36
- package/src/Fx/combinators/exhaustMapEffect.ts +0 -23
- package/src/Fx/combinators/exit.ts +0 -15
- package/src/Fx/combinators/filter.ts +0 -22
- package/src/Fx/combinators/filterEffect.ts +0 -31
- package/src/Fx/combinators/filterMap.ts +0 -23
- package/src/Fx/combinators/filterMapEffect.ts +0 -32
- package/src/Fx/combinators/filterMapLoop.ts +0 -35
- package/src/Fx/combinators/filterMapLoopCause.ts +0 -36
- package/src/Fx/combinators/filterMapLoopCauseEffect.ts +0 -46
- package/src/Fx/combinators/filterMapLoopEffect.ts +0 -36
- package/src/Fx/combinators/flatMap.ts +0 -51
- package/src/Fx/combinators/flatMapConcurrently.ts +0 -39
- package/src/Fx/combinators/flatMapConcurrentlyEffect.ts +0 -26
- package/src/Fx/combinators/flatMapEffect.ts +0 -42
- package/src/Fx/combinators/flip.ts +0 -14
- package/src/Fx/combinators/gen.ts +0 -24
- package/src/Fx/combinators/genScoped.ts +0 -24
- package/src/Fx/combinators/index.ts +0 -61
- package/src/Fx/combinators/keyed.ts +0 -369
- package/src/Fx/combinators/loop.ts +0 -27
- package/src/Fx/combinators/loopCause.ts +0 -34
- package/src/Fx/combinators/loopCauseEffect.ts +0 -36
- package/src/Fx/combinators/loopEffect.ts +0 -34
- package/src/Fx/combinators/map.ts +0 -22
- package/src/Fx/combinators/mapBoth.ts +0 -40
- package/src/Fx/combinators/mapEffect.ts +0 -32
- package/src/Fx/combinators/mapError.ts +0 -28
- package/src/Fx/combinators/mergeAll.ts +0 -22
- package/src/Fx/combinators/mergeOrdered.ts +0 -123
- package/src/Fx/combinators/onError.ts +0 -40
- package/src/Fx/combinators/onExit.ts +0 -82
- package/src/Fx/combinators/onInterrupt.ts +0 -87
- package/src/Fx/combinators/provide.ts +0 -124
- package/src/Fx/combinators/result.ts +0 -39
- package/src/Fx/combinators/scan.ts +0 -82
- package/src/Fx/combinators/skip.ts +0 -41
- package/src/Fx/combinators/skipRepeats.ts +0 -15
- package/src/Fx/combinators/skipRepeatsWith.ts +0 -40
- package/src/Fx/combinators/skipWhile.ts +0 -100
- package/src/Fx/combinators/slice.ts +0 -55
- package/src/Fx/combinators/switchMap.ts +0 -55
- package/src/Fx/combinators/switchMapEffect.ts +0 -25
- package/src/Fx/combinators/take.ts +0 -38
- package/src/Fx/combinators/takeUntil.ts +0 -88
- package/src/Fx/combinators/takeWhile.ts +0 -47
- package/src/Fx/combinators/tapEffect.ts +0 -39
- package/src/Fx/combinators/tuple.ts +0 -79
- package/src/Fx/combinators/unwrap.ts +0 -21
- package/src/Fx/combinators/unwrapScoped.ts +0 -26
- package/src/Fx/combinators/when.ts +0 -64
- package/src/Fx/combinators/withSpan.ts +0 -24
- package/src/Fx/combinators/zip.ts +0 -175
- package/src/Fx/constructors/at.ts +0 -23
- package/src/Fx/constructors/die.ts +0 -17
- package/src/Fx/constructors/empty.ts +0 -10
- package/src/Fx/constructors/fail.ts +0 -14
- package/src/Fx/constructors/failCause.ts +0 -14
- package/src/Fx/constructors/fn.ts +0 -245
- package/src/Fx/constructors/fromEffect.ts +0 -24
- package/src/Fx/constructors/fromFailures.ts +0 -19
- package/src/Fx/constructors/fromIterable.ts +0 -15
- package/src/Fx/constructors/fromSchedule.ts +0 -18
- package/src/Fx/constructors/fromYieldable.ts +0 -17
- package/src/Fx/constructors/index.ts +0 -15
- package/src/Fx/constructors/interrupt.ts +0 -13
- package/src/Fx/constructors/make.ts +0 -103
- package/src/Fx/constructors/periodic.ts +0 -15
- package/src/Fx/constructors/succeed.ts +0 -37
- package/src/Fx/constructors/suspend.ts +0 -6
- package/src/Fx/index.ts +0 -6
- package/src/Fx/internal/DeferredRef.ts +0 -87
- package/src/Fx/internal/UnionToTuple.ts +0 -12
- package/src/Fx/internal/diff.ts +0 -191
- package/src/Fx/internal/equivalence.ts +0 -12
- package/src/Fx/internal/multicast.ts +0 -51
- package/src/Fx/internal/ring-buffer.ts +0 -60
- package/src/Fx/internal/scope.ts +0 -58
- package/src/Fx/internal/yieldable.ts +0 -31
- package/src/Fx/run/collect.ts +0 -79
- package/src/Fx/run/first.ts +0 -20
- package/src/Fx/run/fork.ts +0 -40
- package/src/Fx/run/index.ts +0 -5
- package/src/Fx/run/observe.ts +0 -114
- package/src/Fx/run/runPromise.ts +0 -32
- package/src/Fx/stream.ts +0 -42
- package/src/Fx.additive-combinators.test.ts +0 -126
- package/src/Fx.catch-additive.test.ts +0 -206
- package/src/Fx.catch.test.ts +0 -60
- package/src/Fx.dropUntil.test.ts +0 -61
- package/src/Fx.fn.test.ts +0 -51
- package/src/Fx.lifecycle.test.ts +0 -79
- package/src/Fx.mapError-mapBoth.test.ts +0 -101
- package/src/Fx.provide-combinators.test.ts +0 -94
- package/src/Fx.result-changesWithEffect.test.ts +0 -112
- package/src/Fx.scan.test.ts +0 -73
- package/src/Fx.takeWhile-skipWhile.test.ts +0 -84
- package/src/Fx.test.ts +0 -71
- package/src/Fx.ts +0 -1
- package/src/Fx.zip-merge-additive.test.ts +0 -171
- package/src/Fx.zip.test.ts +0 -133
- package/src/Push/Push.ts +0 -1093
- package/src/Push/index.ts +0 -1
- package/src/Push.additive.test.ts +0 -256
- package/src/Push.test.ts +0 -26
- package/src/Push.ts +0 -1
- package/src/RefSubject/RefArray.ts +0 -516
- package/src/RefSubject/RefBigDecimal.test.ts +0 -56
- package/src/RefSubject/RefBigDecimal.ts +0 -295
- package/src/RefSubject/RefBigInt.test.ts +0 -56
- package/src/RefSubject/RefBigInt.ts +0 -189
- package/src/RefSubject/RefBoolean.test.ts +0 -57
- package/src/RefSubject/RefBoolean.ts +0 -185
- package/src/RefSubject/RefCause.test.ts +0 -53
- package/src/RefSubject/RefCause.ts +0 -146
- package/src/RefSubject/RefChunk.ts +0 -516
- package/src/RefSubject/RefDateTime.test.ts +0 -43
- package/src/RefSubject/RefDateTime.ts +0 -261
- package/src/RefSubject/RefDuration.test.ts +0 -49
- package/src/RefSubject/RefDuration.ts +0 -188
- package/src/RefSubject/RefGraph.ts +0 -649
- package/src/RefSubject/RefHashMap.ts +0 -474
- package/src/RefSubject/RefHashRing.ts +0 -262
- package/src/RefSubject/RefHashSet.ts +0 -308
- package/src/RefSubject/RefIterable.ts +0 -454
- package/src/RefSubject/RefOption.test.ts +0 -67
- package/src/RefSubject/RefOption.ts +0 -193
- package/src/RefSubject/RefRecord.ts +0 -621
- package/src/RefSubject/RefResult.test.ts +0 -63
- package/src/RefSubject/RefResult.ts +0 -209
- package/src/RefSubject/RefString.test.ts +0 -61
- package/src/RefSubject/RefString.ts +0 -256
- package/src/RefSubject/RefStruct.test.ts +0 -60
- package/src/RefSubject/RefStruct.ts +0 -253
- package/src/RefSubject/RefSubject.ts +0 -2642
- package/src/RefSubject/RefTrie.ts +0 -365
- package/src/RefSubject/RefTuple.test.ts +0 -60
- package/src/RefSubject/RefTuple.ts +0 -231
- package/src/RefSubject/index.ts +0 -21
- package/src/RefSubject.additive-parity.test.ts +0 -101
- package/src/RefSubject.test.ts +0 -65
- package/src/RefSubject.ts +0 -1
- package/src/Sink/Sink.ts +0 -159
- package/src/Sink/combinators.ts +0 -1115
- package/src/Sink/index.ts +0 -2
- package/src/Sink.combinators.test.ts +0 -88
- package/src/Sink.reduce-collect-head-last.test.ts +0 -107
- package/src/Sink.ts +0 -1
- package/src/Subject/Subject.ts +0 -440
- package/src/Subject/index.ts +0 -1
- package/src/Subject.test.ts +0 -47
- package/src/Subject.ts +0 -1
- package/src/Versioned/Versioned.ts +0 -595
- package/src/Versioned/index.ts +0 -1
- package/src/Versioned.filterMap.test.ts +0 -91
- package/src/Versioned.test.ts +0 -23
- package/src/Versioned.ts +0 -1
- package/src/index.ts +0 -7
|
@@ -10,6 +10,17 @@ import * as Option from "effect/Option";
|
|
|
10
10
|
import * as RefSubject from "./RefSubject.js";
|
|
11
11
|
/**
|
|
12
12
|
* Creates a new `RefIterable` from an Iterable, `Effect`, or `Fx`.
|
|
13
|
+
* @remarks
|
|
14
|
+
* ## Why
|
|
15
|
+
*
|
|
16
|
+
* Creates iterable state with equality suited to that Effect data type, so unchanged values do not
|
|
17
|
+
* produce redundant pushed updates.
|
|
18
|
+
*
|
|
19
|
+
* ## Ownership and lifetime
|
|
20
|
+
*
|
|
21
|
+
* The creation Effect requires Scope. It owns initializer acquisition, live source subscriptions,
|
|
22
|
+
* and cleanup; source failures and services stay on reads and pushes.
|
|
23
|
+
*
|
|
13
24
|
* @since 1.18.0
|
|
14
25
|
* @category constructors
|
|
15
26
|
*/
|
|
@@ -21,6 +32,17 @@ export function make(initial) {
|
|
|
21
32
|
// ========================================
|
|
22
33
|
/**
|
|
23
34
|
* Prepend a value to the current state of a RefIterable.
|
|
35
|
+
* @remarks
|
|
36
|
+
* ## Why
|
|
37
|
+
*
|
|
38
|
+
* Expresses prepend as one ordered iterable transition; readers never observe the intermediate
|
|
39
|
+
* collection used to build the result.
|
|
40
|
+
*
|
|
41
|
+
* ## Ownership and lifetime
|
|
42
|
+
*
|
|
43
|
+
* Running prepend performs one serialized iterable transition and resolves with its committed
|
|
44
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
45
|
+
*
|
|
24
46
|
* @since 1.18.0
|
|
25
47
|
* @category combinators
|
|
26
48
|
*/
|
|
@@ -29,6 +51,17 @@ export const prepend = dual(2, function prepend(ref, value) {
|
|
|
29
51
|
});
|
|
30
52
|
/**
|
|
31
53
|
* Prepend an iterable of values to the current state of a RefIterable.
|
|
54
|
+
* @remarks
|
|
55
|
+
* ## Why
|
|
56
|
+
*
|
|
57
|
+
* Expresses prepend all as one ordered iterable transition; readers never observe the intermediate
|
|
58
|
+
* collection used to build the result.
|
|
59
|
+
*
|
|
60
|
+
* ## Ownership and lifetime
|
|
61
|
+
*
|
|
62
|
+
* Running prepend all performs one serialized iterable transition and resolves with its committed
|
|
63
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
64
|
+
*
|
|
32
65
|
* @since 1.18.0
|
|
33
66
|
* @category combinators
|
|
34
67
|
*/
|
|
@@ -37,6 +70,17 @@ export const prependAll = dual(2, function prependAll(ref, value) {
|
|
|
37
70
|
});
|
|
38
71
|
/**
|
|
39
72
|
* Append a value to the current state of a RefIterable.
|
|
73
|
+
* @remarks
|
|
74
|
+
* ## Why
|
|
75
|
+
*
|
|
76
|
+
* Expresses append as one ordered iterable transition; readers never observe the intermediate
|
|
77
|
+
* collection used to build the result.
|
|
78
|
+
*
|
|
79
|
+
* ## Ownership and lifetime
|
|
80
|
+
*
|
|
81
|
+
* Running append performs one serialized iterable transition and resolves with its committed
|
|
82
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
83
|
+
*
|
|
40
84
|
* @since 1.18.0
|
|
41
85
|
* @category combinators
|
|
42
86
|
*/
|
|
@@ -45,6 +89,17 @@ export const append = dual(2, function append(ref, value) {
|
|
|
45
89
|
});
|
|
46
90
|
/**
|
|
47
91
|
* Append an iterable of values to the current state of a RefIterable.
|
|
92
|
+
* @remarks
|
|
93
|
+
* ## Why
|
|
94
|
+
*
|
|
95
|
+
* Expresses append all as one ordered iterable transition; readers never observe the intermediate
|
|
96
|
+
* collection used to build the result.
|
|
97
|
+
*
|
|
98
|
+
* ## Ownership and lifetime
|
|
99
|
+
*
|
|
100
|
+
* Running append all performs one serialized iterable transition and resolves with its committed
|
|
101
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
102
|
+
*
|
|
48
103
|
* @since 1.18.0
|
|
49
104
|
* @category combinators
|
|
50
105
|
*/
|
|
@@ -53,6 +108,17 @@ export const appendAll = dual(2, function appendAll(ref, value) {
|
|
|
53
108
|
});
|
|
54
109
|
/**
|
|
55
110
|
* Drop the first `n` values from a RefIterable.
|
|
111
|
+
* @remarks
|
|
112
|
+
* ## Why
|
|
113
|
+
*
|
|
114
|
+
* Applies drop to the committed iterable value and publishes only the result, preserving its
|
|
115
|
+
* element order and equality rules.
|
|
116
|
+
*
|
|
117
|
+
* ## Ownership and lifetime
|
|
118
|
+
*
|
|
119
|
+
* Running drop performs one serialized iterable transition and resolves with its committed value.
|
|
120
|
+
* It acquires no resource; failures and services remain those of the source ref.
|
|
121
|
+
*
|
|
56
122
|
* @since 1.18.0
|
|
57
123
|
* @category combinators
|
|
58
124
|
*/
|
|
@@ -61,6 +127,17 @@ export const drop = dual(2, function drop(ref, n) {
|
|
|
61
127
|
});
|
|
62
128
|
/**
|
|
63
129
|
* Take the first `n` values from a RefIterable.
|
|
130
|
+
* @remarks
|
|
131
|
+
* ## Why
|
|
132
|
+
*
|
|
133
|
+
* Applies take to the committed iterable value and publishes only the result, preserving its
|
|
134
|
+
* element order and equality rules.
|
|
135
|
+
*
|
|
136
|
+
* ## Ownership and lifetime
|
|
137
|
+
*
|
|
138
|
+
* Running take performs one serialized iterable transition and resolves with its committed value.
|
|
139
|
+
* It acquires no resource; failures and services remain those of the source ref.
|
|
140
|
+
*
|
|
64
141
|
* @since 1.18.0
|
|
65
142
|
* @category combinators
|
|
66
143
|
*/
|
|
@@ -69,6 +146,17 @@ export const take = dual(2, function take(ref, n) {
|
|
|
69
146
|
});
|
|
70
147
|
/**
|
|
71
148
|
* Take values from a RefIterable while a predicate is true.
|
|
149
|
+
* @remarks
|
|
150
|
+
* ## Why
|
|
151
|
+
*
|
|
152
|
+
* Applies take while to the committed iterable value and publishes only the result, preserving its
|
|
153
|
+
* element order and equality rules.
|
|
154
|
+
*
|
|
155
|
+
* ## Ownership and lifetime
|
|
156
|
+
*
|
|
157
|
+
* Running take while performs one serialized iterable transition and resolves with its committed
|
|
158
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
159
|
+
*
|
|
72
160
|
* @since 1.18.0
|
|
73
161
|
* @category combinators
|
|
74
162
|
*/
|
|
@@ -77,6 +165,16 @@ export const takeWhile = dual(2, function takeWhile(ref, predicate) {
|
|
|
77
165
|
});
|
|
78
166
|
/**
|
|
79
167
|
* Filter the values of a RefIterable (mutating).
|
|
168
|
+
* @remarks
|
|
169
|
+
* ## Why
|
|
170
|
+
*
|
|
171
|
+
* Applies filter to the committed Iterable through `RefSubject.update` and publishes one coherent
|
|
172
|
+
* replacement; this is a mutation, not a read-only Computed projection.
|
|
173
|
+
*
|
|
174
|
+
* ## Ownership and lifetime
|
|
175
|
+
*
|
|
176
|
+
* The Effect starts when run, participates in the source ref's serialized update boundary, and
|
|
177
|
+
* acquires no resource. It returns the committed Iterable and retains the ref's E and R channels.
|
|
80
178
|
* @since 1.18.0
|
|
81
179
|
* @category combinators
|
|
82
180
|
*/
|
|
@@ -85,6 +183,16 @@ export const filter = dual(2, function filter(ref, predicate) {
|
|
|
85
183
|
});
|
|
86
184
|
/**
|
|
87
185
|
* Map (Endomorphic) the values of a RefIterable.
|
|
186
|
+
* @remarks
|
|
187
|
+
* ## Why
|
|
188
|
+
*
|
|
189
|
+
* Applies map to the committed Iterable through `RefSubject.update` and publishes one coherent
|
|
190
|
+
* replacement; this is a mutation, not a read-only Computed projection.
|
|
191
|
+
*
|
|
192
|
+
* ## Ownership and lifetime
|
|
193
|
+
*
|
|
194
|
+
* The Effect starts when run, participates in the source ref's serialized update boundary, and
|
|
195
|
+
* acquires no resource. It returns the committed Iterable and retains the ref's E and R channels.
|
|
88
196
|
* @since 1.18.0
|
|
89
197
|
* @category combinators
|
|
90
198
|
*/
|
|
@@ -93,12 +201,34 @@ export const map = dual(2, function map(ref, f) {
|
|
|
93
201
|
});
|
|
94
202
|
/**
|
|
95
203
|
* Remove adjacent duplicate values from a RefIterable.
|
|
204
|
+
* @remarks
|
|
205
|
+
* ## Why
|
|
206
|
+
*
|
|
207
|
+
* Derives the reordered iterable through its Effect collection operation while retaining
|
|
208
|
+
* RefSubject equality and version tracking.
|
|
209
|
+
*
|
|
210
|
+
* ## Ownership and lifetime
|
|
211
|
+
*
|
|
212
|
+
* Running dedupe adjacent performs one serialized iterable transition and resolves with its
|
|
213
|
+
* committed value. It acquires no resource; failures and services remain those of the source ref.
|
|
214
|
+
*
|
|
96
215
|
* @since 1.18.0
|
|
97
216
|
* @category combinators
|
|
98
217
|
*/
|
|
99
218
|
export const dedupeAdjacent = (ref) => RefSubject.update(ref, Iterable.dedupeAdjacent);
|
|
100
219
|
/**
|
|
101
220
|
* Intersperse a separator between elements.
|
|
221
|
+
* @remarks
|
|
222
|
+
* ## Why
|
|
223
|
+
*
|
|
224
|
+
* Intersperse a separator between elements. The operation remains attached to the RefSubject's
|
|
225
|
+
* versioned state boundary.
|
|
226
|
+
*
|
|
227
|
+
* ## Ownership and lifetime
|
|
228
|
+
*
|
|
229
|
+
* Running intersperse performs one serialized iterable transition and resolves with its committed
|
|
230
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
231
|
+
*
|
|
102
232
|
* @since 1.18.0
|
|
103
233
|
* @category combinators
|
|
104
234
|
*/
|
|
@@ -107,6 +237,17 @@ export const intersperse = dual(2, function intersperse(ref, middle) {
|
|
|
107
237
|
});
|
|
108
238
|
/**
|
|
109
239
|
* Repeat the iterable n times.
|
|
240
|
+
* @remarks
|
|
241
|
+
* ## Why
|
|
242
|
+
*
|
|
243
|
+
* Repeat the iterable n times. The operation remains attached to the RefSubject's versioned state
|
|
244
|
+
* boundary.
|
|
245
|
+
*
|
|
246
|
+
* ## Ownership and lifetime
|
|
247
|
+
*
|
|
248
|
+
* Running repeat performs one serialized iterable transition and resolves with its committed
|
|
249
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
250
|
+
*
|
|
110
251
|
* @since 1.18.0
|
|
111
252
|
* @category combinators
|
|
112
253
|
*/
|
|
@@ -115,6 +256,17 @@ export const repeat = dual(2, function repeat(ref, n) {
|
|
|
115
256
|
});
|
|
116
257
|
/**
|
|
117
258
|
* FlatMap (endomorphic).
|
|
259
|
+
* @remarks
|
|
260
|
+
* ## Why
|
|
261
|
+
*
|
|
262
|
+
* FlatMap (endomorphic). The operation remains attached to the RefSubject's versioned state
|
|
263
|
+
* boundary.
|
|
264
|
+
*
|
|
265
|
+
* ## Ownership and lifetime
|
|
266
|
+
*
|
|
267
|
+
* Running flat map performs one serialized iterable transition and resolves with its committed
|
|
268
|
+
* value. It acquires no resource; failures and services remain those of the source ref.
|
|
269
|
+
*
|
|
118
270
|
* @since 1.18.0
|
|
119
271
|
* @category combinators
|
|
120
272
|
*/
|
|
@@ -123,6 +275,16 @@ export const flatMap = dual(2, function flatMap(ref, f) {
|
|
|
123
275
|
});
|
|
124
276
|
/**
|
|
125
277
|
* Filter and map values in place.
|
|
278
|
+
* @remarks
|
|
279
|
+
* ## Why
|
|
280
|
+
*
|
|
281
|
+
* Applies `filterMap` to the committed Iterable through `RefSubject.update` and publishes one
|
|
282
|
+
* coherent replacement; this is a mutation, not a read-only Computed projection.
|
|
283
|
+
*
|
|
284
|
+
* ## Ownership and lifetime
|
|
285
|
+
*
|
|
286
|
+
* The Effect starts when run, participates in the source ref's serialized update boundary, and
|
|
287
|
+
* acquires no resource. It returns the committed Iterable and retains the ref's E and R channels.
|
|
126
288
|
* @since 1.18.0
|
|
127
289
|
* @category combinators
|
|
128
290
|
*/
|
|
@@ -134,6 +296,16 @@ export const filterMap = dual(2, function filterMap(ref, f) {
|
|
|
134
296
|
});
|
|
135
297
|
/**
|
|
136
298
|
* Extract Some values from Option iterable.
|
|
299
|
+
* @remarks
|
|
300
|
+
* ## Why
|
|
301
|
+
*
|
|
302
|
+
* Applies `getSomes` to the committed Iterable through `RefSubject.update` and publishes one
|
|
303
|
+
* coherent replacement; this is a mutation, not a read-only Computed projection.
|
|
304
|
+
*
|
|
305
|
+
* ## Ownership and lifetime
|
|
306
|
+
*
|
|
307
|
+
* The Effect starts when run, participates in the source ref's serialized update boundary, and
|
|
308
|
+
* acquires no resource. It returns the committed Iterable and retains the ref's E and R channels.
|
|
137
309
|
* @since 1.18.0
|
|
138
310
|
* @category combinators
|
|
139
311
|
*/
|
|
@@ -143,18 +315,51 @@ export const getSomes = (ref) => RefSubject.update(ref, (iter) => Iterable.getSo
|
|
|
143
315
|
// ========================================
|
|
144
316
|
/**
|
|
145
317
|
* Check if a RefIterable is empty.
|
|
318
|
+
* @remarks
|
|
319
|
+
* ## Why
|
|
320
|
+
*
|
|
321
|
+
* Makes is empty a live projection of the iterable; consumers can sample it now or observe it
|
|
322
|
+
* without copying the source state.
|
|
323
|
+
*
|
|
324
|
+
* ## Ownership and lifetime
|
|
325
|
+
*
|
|
326
|
+
* The is empty view retains no independent state. An Effect read samples the source once; Fx
|
|
327
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
328
|
+
*
|
|
146
329
|
* @since 1.18.0
|
|
147
330
|
* @category computed
|
|
148
331
|
*/
|
|
149
332
|
export const isEmpty = (ref) => RefSubject.map(ref, Iterable.isEmpty);
|
|
150
333
|
/**
|
|
151
334
|
* Get the current size of a RefIterable.
|
|
335
|
+
* @remarks
|
|
336
|
+
* ## Why
|
|
337
|
+
*
|
|
338
|
+
* Makes size a live projection of the iterable; consumers can sample it now or observe it without
|
|
339
|
+
* copying the source state.
|
|
340
|
+
*
|
|
341
|
+
* ## Ownership and lifetime
|
|
342
|
+
*
|
|
343
|
+
* The size view retains no independent state. An Effect read samples the source once; Fx
|
|
344
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
345
|
+
*
|
|
152
346
|
* @since 1.18.0
|
|
153
347
|
* @category computed
|
|
154
348
|
*/
|
|
155
349
|
export const size = (ref) => RefSubject.map(ref, Iterable.size);
|
|
156
350
|
/**
|
|
157
351
|
* Map the values of a RefIterable to a different type.
|
|
352
|
+
* @remarks
|
|
353
|
+
* ## Why
|
|
354
|
+
*
|
|
355
|
+
* Projects iterable state with map values for both current reads and future pushes, avoiding a
|
|
356
|
+
* second mutable cache of the derived value.
|
|
357
|
+
*
|
|
358
|
+
* ## Ownership and lifetime
|
|
359
|
+
*
|
|
360
|
+
* The map values view retains no independent state. An Effect read samples the source once; Fx
|
|
361
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
362
|
+
*
|
|
158
363
|
* @since 1.18.0
|
|
159
364
|
* @category computed
|
|
160
365
|
*/
|
|
@@ -163,6 +368,17 @@ export const mapValues = dual(2, function mapValues(ref, f) {
|
|
|
163
368
|
});
|
|
164
369
|
/**
|
|
165
370
|
* Filter the values of a RefIterable creating a Computed value.
|
|
371
|
+
* @remarks
|
|
372
|
+
* ## Why
|
|
373
|
+
*
|
|
374
|
+
* Projects iterable state with filter values for both current reads and future pushes, avoiding a
|
|
375
|
+
* second mutable cache of the derived value.
|
|
376
|
+
*
|
|
377
|
+
* ## Ownership and lifetime
|
|
378
|
+
*
|
|
379
|
+
* The filter values view retains no independent state. An Effect read samples the source once; Fx
|
|
380
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
381
|
+
*
|
|
166
382
|
* @since 1.18.0
|
|
167
383
|
* @category computed
|
|
168
384
|
*/
|
|
@@ -171,6 +387,17 @@ export const filterValues = dual(2, function filterValues(ref, predicate) {
|
|
|
171
387
|
});
|
|
172
388
|
/**
|
|
173
389
|
* Group the values of a RefIterable by a key.
|
|
390
|
+
* @remarks
|
|
391
|
+
* ## Why
|
|
392
|
+
*
|
|
393
|
+
* Projects iterable state with group by for both current reads and future pushes, avoiding a
|
|
394
|
+
* second mutable cache of the derived value.
|
|
395
|
+
*
|
|
396
|
+
* ## Ownership and lifetime
|
|
397
|
+
*
|
|
398
|
+
* The group by view retains no independent state. An Effect read samples the source once; Fx
|
|
399
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
400
|
+
*
|
|
174
401
|
* @since 1.18.0
|
|
175
402
|
* @category computed
|
|
176
403
|
*/
|
|
@@ -179,6 +406,17 @@ export const groupBy = dual(2, function groupBy(ref, f) {
|
|
|
179
406
|
});
|
|
180
407
|
/**
|
|
181
408
|
* Reduce the values of a RefIterable to a single value.
|
|
409
|
+
* @remarks
|
|
410
|
+
* ## Why
|
|
411
|
+
*
|
|
412
|
+
* Makes reduce a live projection of the iterable; consumers can sample it now or observe it
|
|
413
|
+
* without copying the source state.
|
|
414
|
+
*
|
|
415
|
+
* ## Ownership and lifetime
|
|
416
|
+
*
|
|
417
|
+
* The reduce view retains no independent state. An Effect read samples the source once; Fx
|
|
418
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
419
|
+
*
|
|
182
420
|
* @since 1.18.0
|
|
183
421
|
* @category computed
|
|
184
422
|
*/
|
|
@@ -187,6 +425,17 @@ export const reduce = dual(3, function reduce(ref, b, f) {
|
|
|
187
425
|
});
|
|
188
426
|
/**
|
|
189
427
|
* Check if any value satisfies a predicate.
|
|
428
|
+
* @remarks
|
|
429
|
+
* ## Why
|
|
430
|
+
*
|
|
431
|
+
* Makes some a live projection of the iterable; consumers can sample it now or observe it without
|
|
432
|
+
* copying the source state.
|
|
433
|
+
*
|
|
434
|
+
* ## Ownership and lifetime
|
|
435
|
+
*
|
|
436
|
+
* The some view retains no independent state. An Effect read samples the source once; Fx
|
|
437
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
438
|
+
*
|
|
190
439
|
* @since 1.18.0
|
|
191
440
|
* @category computed
|
|
192
441
|
*/
|
|
@@ -195,6 +444,17 @@ export const some = dual(2, function some(ref, predicate) {
|
|
|
195
444
|
});
|
|
196
445
|
/**
|
|
197
446
|
* Check if a RefIterable contains a value.
|
|
447
|
+
* @remarks
|
|
448
|
+
* ## Why
|
|
449
|
+
*
|
|
450
|
+
* Makes contains a live projection of the iterable; consumers can sample it now or observe it
|
|
451
|
+
* without copying the source state.
|
|
452
|
+
*
|
|
453
|
+
* ## Ownership and lifetime
|
|
454
|
+
*
|
|
455
|
+
* The contains view retains no independent state. An Effect read samples the source once; Fx
|
|
456
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
457
|
+
*
|
|
198
458
|
* @since 1.18.0
|
|
199
459
|
* @category computed
|
|
200
460
|
*/
|
|
@@ -203,6 +463,17 @@ export const contains = dual(2, function contains(ref, value) {
|
|
|
203
463
|
});
|
|
204
464
|
/**
|
|
205
465
|
* Count elements satisfying a predicate.
|
|
466
|
+
* @remarks
|
|
467
|
+
* ## Why
|
|
468
|
+
*
|
|
469
|
+
* Makes count by a live projection of the iterable; consumers can sample it now or observe it
|
|
470
|
+
* without copying the source state.
|
|
471
|
+
*
|
|
472
|
+
* ## Ownership and lifetime
|
|
473
|
+
*
|
|
474
|
+
* The count by view retains no independent state. An Effect read samples the source once; Fx
|
|
475
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
476
|
+
*
|
|
206
477
|
* @since 1.18.0
|
|
207
478
|
* @category computed
|
|
208
479
|
*/
|
|
@@ -211,6 +482,17 @@ export const countBy = dual(2, function countBy(ref, predicate) {
|
|
|
211
482
|
});
|
|
212
483
|
/**
|
|
213
484
|
* Convert to array.
|
|
485
|
+
* @remarks
|
|
486
|
+
* ## Why
|
|
487
|
+
*
|
|
488
|
+
* Projects iterable state with to array for both current reads and future pushes, avoiding a
|
|
489
|
+
* second mutable cache of the derived value.
|
|
490
|
+
*
|
|
491
|
+
* ## Ownership and lifetime
|
|
492
|
+
*
|
|
493
|
+
* The to array view retains no independent state. An Effect read samples the source once; Fx
|
|
494
|
+
* observation follows later pushes and its observing Scope owns subscription cleanup.
|
|
495
|
+
*
|
|
214
496
|
* @since 1.18.0
|
|
215
497
|
* @category computed
|
|
216
498
|
*/
|
|
@@ -220,12 +502,34 @@ export const toArray = (ref) => RefSubject.map(ref, (iter) => Array.from(iter));
|
|
|
220
502
|
// ========================================
|
|
221
503
|
/**
|
|
222
504
|
* Get the first element of a RefIterable as a Filtered.
|
|
505
|
+
* @remarks
|
|
506
|
+
* ## Why
|
|
507
|
+
*
|
|
508
|
+
* Models the possibly absent result of head as Filtered state, so absence stays explicit while
|
|
509
|
+
* later source versions can make a value available.
|
|
510
|
+
*
|
|
511
|
+
* ## Ownership and lifetime
|
|
512
|
+
*
|
|
513
|
+
* The head view retains no independent value. Its Effect read fails with NoSuchElement
|
|
514
|
+
* while absent; the observing Scope owns and finalizes its Fx subscription.
|
|
515
|
+
*
|
|
223
516
|
* @since 1.18.0
|
|
224
517
|
* @category filtered
|
|
225
518
|
*/
|
|
226
519
|
export const head = (ref) => RefSubject.filterMap(ref, Iterable.head);
|
|
227
520
|
/**
|
|
228
521
|
* Find the first value satisfying a predicate.
|
|
522
|
+
* @remarks
|
|
523
|
+
* ## Why
|
|
524
|
+
*
|
|
525
|
+
* Models the possibly absent result of find first as Filtered state, so absence stays explicit
|
|
526
|
+
* while later source versions can make a value available.
|
|
527
|
+
*
|
|
528
|
+
* ## Ownership and lifetime
|
|
529
|
+
*
|
|
530
|
+
* The find first view retains no independent value. Its Effect read fails with NoSuchElement
|
|
531
|
+
* while absent; the observing Scope owns and finalizes its Fx subscription.
|
|
532
|
+
*
|
|
229
533
|
* @since 1.18.0
|
|
230
534
|
* @category filtered
|
|
231
535
|
*/
|
|
@@ -234,6 +538,17 @@ export const findFirst = dual(2, function findFirst(ref, predicate) {
|
|
|
234
538
|
});
|
|
235
539
|
/**
|
|
236
540
|
* Find the last value satisfying a predicate.
|
|
541
|
+
* @remarks
|
|
542
|
+
* ## Why
|
|
543
|
+
*
|
|
544
|
+
* Models the possibly absent result of find last as Filtered state, so absence stays explicit
|
|
545
|
+
* while later source versions can make a value available.
|
|
546
|
+
*
|
|
547
|
+
* ## Ownership and lifetime
|
|
548
|
+
*
|
|
549
|
+
* The find last view retains no independent value. Its Effect read fails with NoSuchElement
|
|
550
|
+
* while absent; the observing Scope owns and finalizes its Fx subscription.
|
|
551
|
+
*
|
|
237
552
|
* @since 1.18.0
|
|
238
553
|
* @category filtered
|
|
239
554
|
*/
|