effect 2.3.8 → 2.4.0
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/dist/cjs/BigInt.js +14 -1
- package/dist/cjs/BigInt.js.map +1 -1
- package/dist/cjs/Effect.js +16 -61
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +35 -6
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Equal.js +1 -1
- package/dist/cjs/Equal.js.map +1 -1
- package/dist/cjs/Exit.js +1 -1
- package/dist/cjs/Number.js +25 -1
- package/dist/cjs/Number.js.map +1 -1
- package/dist/cjs/ReadonlyArray.js +2 -2
- package/dist/cjs/ReadonlyArray.js.map +1 -1
- package/dist/cjs/ReadonlyRecord.js +71 -76
- package/dist/cjs/ReadonlyRecord.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/Stream.js +3 -23
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/Struct.js +3 -1
- package/dist/cjs/Struct.js.map +1 -1
- package/dist/cjs/TestAnnotation.js.map +1 -1
- package/dist/cjs/internal/channel/channelExecutor.js +5 -5
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel/channelState.js +5 -5
- package/dist/cjs/internal/channel/channelState.js.map +1 -1
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/clock.js +3 -4
- package/dist/cjs/internal/clock.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +6 -23
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +11 -27
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +4 -5
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/either.js +3 -3
- package/dist/cjs/internal/either.js.map +1 -1
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/layer.js +0 -2
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/runtime.js +12 -1
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/schedule.js +4 -4
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/sink.js +0 -2
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stm/stm.js +1 -0
- package/dist/cjs/internal/stm/stm.js.map +1 -1
- package/dist/cjs/internal/stream.js +51 -64
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/BigInt.d.ts +7 -0
- package/dist/dts/BigInt.d.ts.map +1 -1
- package/dist/dts/Brand.d.ts +1 -1
- package/dist/dts/Brand.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +1 -1
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +11 -11
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +3 -3
- package/dist/dts/Config.d.ts +4 -4
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +1 -1
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/Differ.d.ts +2 -2
- package/dist/dts/Differ.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +52 -108
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +126 -83
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Encoding.d.ts +6 -6
- package/dist/dts/Encoding.d.ts.map +1 -1
- package/dist/dts/Equal.d.ts.map +1 -1
- package/dist/dts/Exit.d.ts +2 -2
- package/dist/dts/Fiber.d.ts +2 -2
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/GroupBy.d.ts +12 -12
- package/dist/dts/GroupBy.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +26 -26
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/List.d.ts +2 -2
- package/dist/dts/Logger.d.ts +4 -4
- package/dist/dts/Match.d.ts +2 -2
- package/dist/dts/Match.d.ts.map +1 -1
- package/dist/dts/MergeDecision.d.ts +1 -1
- package/dist/dts/MergeState.d.ts +5 -5
- package/dist/dts/MergeState.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +13 -13
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/MetricPolling.d.ts +4 -4
- package/dist/dts/MetricPolling.d.ts.map +1 -1
- package/dist/dts/Number.d.ts +8 -0
- package/dist/dts/Number.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +11 -11
- package/dist/dts/ReadonlyArray.d.ts +9 -8
- package/dist/dts/ReadonlyArray.d.ts.map +1 -1
- package/dist/dts/ReadonlyRecord.d.ts +111 -94
- package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
- package/dist/dts/Reloadable.d.ts +4 -4
- package/dist/dts/Reloadable.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +13 -13
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Resource.d.ts +1 -1
- package/dist/dts/Resource.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +144 -139
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +171 -179
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/SingleProducerAsyncInput.d.ts +1 -1
- package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +13 -13
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +355 -366
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/Struct.d.ts +3 -3
- package/dist/dts/Struct.d.ts.map +1 -1
- package/dist/dts/SubscriptionRef.d.ts +2 -2
- package/dist/dts/TArray.d.ts +2 -2
- package/dist/dts/TDeferred.d.ts +3 -3
- package/dist/dts/TMap.d.ts +10 -10
- package/dist/dts/TSet.d.ts +4 -4
- package/dist/dts/Take.d.ts +2 -2
- package/dist/dts/TestAnnotation.d.ts +2 -2
- package/dist/dts/TestAnnotation.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +7 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/internal/stm/stm.d.ts +2 -15
- package/dist/dts/internal/stm/stm.d.ts.map +1 -1
- package/dist/esm/BigInt.js +12 -0
- package/dist/esm/BigInt.js.map +1 -1
- package/dist/esm/Effect.js +13 -58
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +42 -5
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Equal.js +1 -1
- package/dist/esm/Equal.js.map +1 -1
- package/dist/esm/Exit.js +1 -1
- package/dist/esm/Number.js +23 -0
- package/dist/esm/Number.js.map +1 -1
- package/dist/esm/ReadonlyArray.js +2 -2
- package/dist/esm/ReadonlyArray.js.map +1 -1
- package/dist/esm/ReadonlyRecord.js +70 -75
- package/dist/esm/ReadonlyRecord.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schedule.js.map +1 -1
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/Stream.js +5 -22
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/Struct.js +3 -1
- package/dist/esm/Struct.js.map +1 -1
- package/dist/esm/TestAnnotation.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js +5 -5
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel/channelState.js +3 -3
- package/dist/esm/internal/channel/channelState.js.map +1 -1
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/clock.js +3 -4
- package/dist/esm/internal/clock.js.map +1 -1
- package/dist/esm/internal/core-effect.js +4 -20
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +8 -22
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +4 -5
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/either.js +3 -3
- package/dist/esm/internal/either.js.map +1 -1
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/layer.js +0 -2
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/runtime.js +12 -1
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/schedule.js +4 -4
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/sink.js +0 -2
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stm/stm.js +1 -0
- package/dist/esm/internal/stm/stm.js.map +1 -1
- package/dist/esm/internal/stream.js +49 -59
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/BigInt.ts +13 -0
- package/src/Brand.ts +4 -4
- package/src/Cause.ts +1 -1
- package/src/Channel.ts +17 -17
- package/src/Chunk.ts +4 -4
- package/src/Config.ts +4 -4
- package/src/Cron.ts +2 -2
- package/src/Differ.ts +2 -2
- package/src/Effect.ts +68 -145
- package/src/Either.ts +215 -133
- package/src/Encoding.ts +3 -3
- package/src/Equal.ts +1 -1
- package/src/Exit.ts +2 -2
- package/src/Fiber.ts +2 -2
- package/src/GroupBy.ts +16 -16
- package/src/Layer.ts +32 -32
- package/src/List.ts +3 -3
- package/src/Logger.ts +4 -4
- package/src/Match.ts +3 -3
- package/src/MergeDecision.ts +1 -1
- package/src/MergeState.ts +8 -8
- package/src/Metric.ts +13 -13
- package/src/MetricPolling.ts +9 -9
- package/src/Number.ts +26 -0
- package/src/Option.ts +17 -17
- package/src/ReadonlyArray.ts +23 -15
- package/src/ReadonlyRecord.ts +421 -265
- package/src/Reloadable.ts +4 -4
- package/src/RequestResolver.ts +19 -19
- package/src/Resource.ts +3 -3
- package/src/STM.ts +166 -213
- package/src/Schedule.ts +331 -361
- package/src/SingleProducerAsyncInput.ts +1 -1
- package/src/Sink.ts +19 -19
- package/src/Stream.ts +449 -456
- package/src/Struct.ts +8 -5
- package/src/SubscriptionRef.ts +2 -2
- package/src/TArray.ts +2 -2
- package/src/TDeferred.ts +4 -4
- package/src/TMap.ts +10 -10
- package/src/TSet.ts +4 -4
- package/src/Take.ts +4 -4
- package/src/TestAnnotation.ts +5 -8
- package/src/Types.ts +11 -0
- package/src/internal/blockedRequests.ts +2 -2
- package/src/internal/cause.ts +2 -2
- package/src/internal/channel/channelExecutor.ts +26 -26
- package/src/internal/channel/channelState.ts +13 -13
- package/src/internal/channel/mergeDecision.ts +1 -1
- package/src/internal/channel/mergeState.ts +6 -6
- package/src/internal/channel/singleProducerAsyncInput.ts +5 -5
- package/src/internal/channel.ts +43 -43
- package/src/internal/clock.ts +3 -4
- package/src/internal/config.ts +7 -7
- package/src/internal/configError.ts +1 -1
- package/src/internal/configProvider/pathPatch.ts +2 -2
- package/src/internal/configProvider.ts +1 -1
- package/src/internal/core-effect.ts +28 -43
- package/src/internal/core.ts +15 -40
- package/src/internal/dataSource.ts +26 -26
- package/src/internal/differ/orPatch.ts +7 -7
- package/src/internal/differ.ts +2 -2
- package/src/internal/effect/circular.ts +9 -10
- package/src/internal/either.ts +25 -22
- package/src/internal/encoding/base64.ts +1 -1
- package/src/internal/encoding/base64Url.ts +1 -1
- package/src/internal/encoding/hex.ts +1 -1
- package/src/internal/fiber.ts +2 -2
- package/src/internal/fiberRuntime.ts +9 -9
- package/src/internal/groupBy.ts +40 -40
- package/src/internal/layer/circular.ts +4 -4
- package/src/internal/layer.ts +52 -54
- package/src/internal/matcher.ts +5 -5
- package/src/internal/metric/polling.ts +8 -8
- package/src/internal/metric.ts +6 -6
- package/src/internal/reloadable.ts +4 -4
- package/src/internal/resource.ts +2 -2
- package/src/internal/runtime.ts +32 -19
- package/src/internal/schedule.ts +430 -500
- package/src/internal/sink.ts +27 -29
- package/src/internal/stm/core.ts +23 -23
- package/src/internal/stm/stm.ts +158 -157
- package/src/internal/stm/tArray.ts +3 -3
- package/src/internal/stm/tDeferred.ts +5 -5
- package/src/internal/stm/tMap.ts +13 -13
- package/src/internal/stm/tSet.ts +4 -4
- package/src/internal/stream.ts +688 -723
- package/src/internal/subscriptionRef.ts +3 -3
- package/src/internal/take.ts +6 -6
- package/src/internal/version.ts +1 -1
package/package.json
CHANGED
package/src/BigInt.ts
CHANGED
|
@@ -545,3 +545,16 @@ export const multiplyAll = (collection: Iterable<bigint>): bigint => {
|
|
|
545
545
|
}
|
|
546
546
|
return out
|
|
547
547
|
}
|
|
548
|
+
|
|
549
|
+
/**
|
|
550
|
+
* Convers a bigint into a number
|
|
551
|
+
*
|
|
552
|
+
* @since 2.0.0
|
|
553
|
+
* @category conversions
|
|
554
|
+
*/
|
|
555
|
+
export const toNumber = (b: bigint): Option.Option<number> => {
|
|
556
|
+
if (b > BigInt(Number.MAX_SAFE_INTEGER) || b < BigInt(Number.MIN_SAFE_INTEGER)) {
|
|
557
|
+
return Option.none()
|
|
558
|
+
}
|
|
559
|
+
return Option.some(Number(b))
|
|
560
|
+
}
|
package/src/Brand.ts
CHANGED
|
@@ -102,7 +102,7 @@ export declare namespace Brand {
|
|
|
102
102
|
* Constructs a branded type from a value of type `A`, returning `Right<A>`
|
|
103
103
|
* if the provided `A` is valid, `Left<BrandError>` otherwise.
|
|
104
104
|
*/
|
|
105
|
-
either(args: Brand.Unbranded<A>): Either.Either<Brand.BrandErrors
|
|
105
|
+
either(args: Brand.Unbranded<A>): Either.Either<A, Brand.BrandErrors>
|
|
106
106
|
/**
|
|
107
107
|
* Attempts to refine the provided value of type `A`, returning `true` if
|
|
108
108
|
* the provided `A` is valid, `false` otherwise.
|
|
@@ -218,7 +218,7 @@ export const refined: <A extends Brand<any>>(
|
|
|
218
218
|
refinement: Predicate<Brand.Unbranded<A>>,
|
|
219
219
|
onFailure: (a: Brand.Unbranded<A>) => Brand.BrandErrors
|
|
220
220
|
): Brand.Constructor<A> => {
|
|
221
|
-
const either = (args: Brand.Unbranded<A>): Either.Either<Brand.BrandErrors
|
|
221
|
+
const either = (args: Brand.Unbranded<A>): Either.Either<A, Brand.BrandErrors> =>
|
|
222
222
|
refinement(args) ? Either.right(args as A) : Either.left(onFailure(args))
|
|
223
223
|
// @ts-expect-error
|
|
224
224
|
return Object.assign((args) =>
|
|
@@ -305,8 +305,8 @@ export const all: <Brands extends readonly [Brand.Constructor<any>, ...Array<Bra
|
|
|
305
305
|
}[number]
|
|
306
306
|
> extends infer X extends Brand<any> ? X : Brand<any>
|
|
307
307
|
> => {
|
|
308
|
-
const either = (args: any): Either.Either<Brand.BrandErrors
|
|
309
|
-
let result: Either.Either<Brand.BrandErrors
|
|
308
|
+
const either = (args: any): Either.Either<any, Brand.BrandErrors> => {
|
|
309
|
+
let result: Either.Either<any, Brand.BrandErrors> = Either.right(args)
|
|
310
310
|
for (const brand of brands) {
|
|
311
311
|
const nextResult = brand.either(args)
|
|
312
312
|
if (Either.isLeft(result) && Either.isLeft(nextResult)) {
|
package/src/Cause.ts
CHANGED
|
@@ -577,7 +577,7 @@ export const failureOption: <E>(self: Cause<E>) => Option.Option<E> = internal.f
|
|
|
577
577
|
* @since 2.0.0
|
|
578
578
|
* @category getters
|
|
579
579
|
*/
|
|
580
|
-
export const failureOrCause: <E>(self: Cause<E>) => Either.Either<
|
|
580
|
+
export const failureOrCause: <E>(self: Cause<E>) => Either.Either<Cause<never>, E> = internal.failureOrCause
|
|
581
581
|
|
|
582
582
|
/**
|
|
583
583
|
* Converts the specified `Cause<Option<E>>` to an `Option<Cause<E>>` by
|
package/src/Channel.ts
CHANGED
|
@@ -388,14 +388,14 @@ export const concatAllWith: <
|
|
|
388
388
|
* @category utils
|
|
389
389
|
*/
|
|
390
390
|
export const concatMap: {
|
|
391
|
-
<OutElem, OutElem2, InElem2, OutErr2, InErr2,
|
|
392
|
-
f: (o: OutElem) => Channel<OutElem2, InElem2, OutErr2, InErr2,
|
|
391
|
+
<OutElem, OutElem2, InElem2, OutErr2, InErr2, X, InDone2, Env2>(
|
|
392
|
+
f: (o: OutElem) => Channel<OutElem2, InElem2, OutErr2, InErr2, X, InDone2, Env2>
|
|
393
393
|
): <Env, InErr, InElem, InDone, OutErr, OutDone>(
|
|
394
394
|
self: Channel<OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>
|
|
395
395
|
) => Channel<OutElem2, InElem & InElem2, OutErr2 | OutErr, InErr & InErr2, unknown, InDone & InDone2, Env2 | Env>
|
|
396
|
-
<Env, InErr, InElem, InDone, OutErr, OutDone, OutElem, OutElem2, Env2, InErr2, InElem2, InDone2, OutErr2,
|
|
396
|
+
<Env, InErr, InElem, InDone, OutErr, OutDone, OutElem, OutElem2, Env2, InErr2, InElem2, InDone2, OutErr2, X>(
|
|
397
397
|
self: Channel<OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>,
|
|
398
|
-
f: (o: OutElem) => Channel<OutElem2, InElem2, OutErr2, InErr2,
|
|
398
|
+
f: (o: OutElem) => Channel<OutElem2, InElem2, OutErr2, InErr2, X, InDone2, Env2>
|
|
399
399
|
): Channel<OutElem2, InElem & InElem2, OutErr | OutErr2, InErr & InErr2, unknown, InDone & InDone2, Env | Env2>
|
|
400
400
|
} = channel.concatMap
|
|
401
401
|
|
|
@@ -1077,7 +1077,7 @@ export const fromEffect: <A, E, R>(
|
|
|
1077
1077
|
* @since 2.0.0
|
|
1078
1078
|
* @category constructors
|
|
1079
1079
|
*/
|
|
1080
|
-
export const fromEither: <
|
|
1080
|
+
export const fromEither: <R, L>(either: Either.Either<R, L>) => Channel<never, unknown, L, unknown, R, unknown> =
|
|
1081
1081
|
channel.fromEither
|
|
1082
1082
|
|
|
1083
1083
|
/**
|
|
@@ -1097,7 +1097,7 @@ export const fromInput: <Err, Elem, Done>(
|
|
|
1097
1097
|
* @category constructors
|
|
1098
1098
|
*/
|
|
1099
1099
|
export const fromPubSub: <Done, Err, Elem>(
|
|
1100
|
-
pubsub: PubSub.PubSub<Either.Either<Exit.Exit<Done, Err
|
|
1100
|
+
pubsub: PubSub.PubSub<Either.Either<Elem, Exit.Exit<Done, Err>>>
|
|
1101
1101
|
) => Channel<Elem, unknown, Err, unknown, Done, unknown> = channel.fromPubSub
|
|
1102
1102
|
|
|
1103
1103
|
/**
|
|
@@ -1107,7 +1107,7 @@ export const fromPubSub: <Done, Err, Elem>(
|
|
|
1107
1107
|
* @category constructors
|
|
1108
1108
|
*/
|
|
1109
1109
|
export const fromPubSubScoped: <Done, Err, Elem>(
|
|
1110
|
-
pubsub: PubSub.PubSub<Either.Either<Exit.Exit<Done, Err
|
|
1110
|
+
pubsub: PubSub.PubSub<Either.Either<Elem, Exit.Exit<Done, Err>>>
|
|
1111
1111
|
) => Effect.Effect<Channel<Elem, unknown, Err, unknown, Done, unknown>, never, Scope.Scope> = channel.fromPubSubScoped
|
|
1112
1112
|
|
|
1113
1113
|
/**
|
|
@@ -1127,7 +1127,7 @@ export const fromOption: <A>(
|
|
|
1127
1127
|
* @category constructors
|
|
1128
1128
|
*/
|
|
1129
1129
|
export const fromQueue: <Done, Err, Elem>(
|
|
1130
|
-
queue: Queue.Dequeue<Either.Either<Exit.Exit<Done, Err
|
|
1130
|
+
queue: Queue.Dequeue<Either.Either<Elem, Exit.Exit<Done, Err>>>
|
|
1131
1131
|
) => Channel<Elem, unknown, Err, unknown, Done, unknown> = channel.fromQueue
|
|
1132
1132
|
|
|
1133
1133
|
/**
|
|
@@ -1782,15 +1782,15 @@ export const mapInputContext: {
|
|
|
1782
1782
|
* @category context
|
|
1783
1783
|
*/
|
|
1784
1784
|
export const provideSomeLayer: {
|
|
1785
|
-
<
|
|
1786
|
-
layer: Layer.Layer<
|
|
1785
|
+
<R2, OutErr2, Env0>(
|
|
1786
|
+
layer: Layer.Layer<R2, OutErr2, Env0>
|
|
1787
1787
|
): <OutElem, InElem, OutErr, InErr, OutDone, InDone, R>(
|
|
1788
1788
|
self: Channel<OutElem, InElem, OutErr, InErr, OutDone, InDone, R>
|
|
1789
|
-
) => Channel<OutElem, InElem, OutErr2 | OutErr, InErr, OutDone, InDone, Env0 | Exclude<R,
|
|
1790
|
-
<OutElem, InElem, OutErr, InErr, OutDone, InDone, R,
|
|
1789
|
+
) => Channel<OutElem, InElem, OutErr2 | OutErr, InErr, OutDone, InDone, Env0 | Exclude<R, R2>>
|
|
1790
|
+
<OutElem, InElem, OutErr, InErr, OutDone, InDone, R, R2, OutErr2, Env0>(
|
|
1791
1791
|
self: Channel<OutElem, InElem, OutErr, InErr, OutDone, InDone, R>,
|
|
1792
|
-
layer: Layer.Layer<
|
|
1793
|
-
): Channel<OutElem, InElem, OutErr | OutErr2, InErr, OutDone, InDone, Env0 | Exclude<R,
|
|
1792
|
+
layer: Layer.Layer<R2, OutErr2, Env0>
|
|
1793
|
+
): Channel<OutElem, InElem, OutErr | OutErr2, InErr, OutDone, InDone, Env0 | Exclude<R, R2>>
|
|
1794
1794
|
} = channel.provideSomeLayer
|
|
1795
1795
|
|
|
1796
1796
|
/**
|
|
@@ -1986,7 +1986,7 @@ export const sync: <OutDone>(
|
|
|
1986
1986
|
* @category destructors
|
|
1987
1987
|
*/
|
|
1988
1988
|
export const toPubSub: <Done, Err, Elem>(
|
|
1989
|
-
pubsub: PubSub.PubSub<Either.Either<Exit.Exit<Done, Err
|
|
1989
|
+
pubsub: PubSub.PubSub<Either.Either<Elem, Exit.Exit<Done, Err>>>
|
|
1990
1990
|
) => Channel<never, Elem, never, Err, unknown, Done> = channel.toPubSub
|
|
1991
1991
|
|
|
1992
1992
|
/**
|
|
@@ -2000,7 +2000,7 @@ export const toPubSub: <Done, Err, Elem>(
|
|
|
2000
2000
|
*/
|
|
2001
2001
|
export const toPull: <OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>(
|
|
2002
2002
|
self: Channel<OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>
|
|
2003
|
-
) => Effect.Effect<Effect.Effect<Either.Either<
|
|
2003
|
+
) => Effect.Effect<Effect.Effect<Either.Either<OutElem, OutDone>, OutErr, Env>, never, Scope.Scope | Env> =
|
|
2004
2004
|
channel.toPull
|
|
2005
2005
|
|
|
2006
2006
|
/**
|
|
@@ -2010,7 +2010,7 @@ export const toPull: <OutElem, InElem, OutErr, InErr, OutDone, InDone, Env>(
|
|
|
2010
2010
|
* @category destructors
|
|
2011
2011
|
*/
|
|
2012
2012
|
export const toQueue: <Done, Err, Elem>(
|
|
2013
|
-
queue: Queue.Enqueue<Either.Either<Exit.Exit<Done, Err
|
|
2013
|
+
queue: Queue.Enqueue<Either.Either<Elem, Exit.Exit<Done, Err>>>
|
|
2014
2014
|
) => Channel<never, Elem, never, Err, unknown, Done> = channel.toQueue
|
|
2015
2015
|
|
|
2016
2016
|
/** Converts this channel to a `Sink`.
|
package/src/Chunk.ts
CHANGED
|
@@ -934,9 +934,9 @@ export const partition: {
|
|
|
934
934
|
* @since 2.0.0
|
|
935
935
|
*/
|
|
936
936
|
export const partitionMap: {
|
|
937
|
-
<A, B, C>(f: (a: A) => Either<
|
|
938
|
-
<A, B, C>(self: Chunk<A>, f: (a: A) => Either<
|
|
939
|
-
} = dual(2, <A, B, C>(self: Chunk<A>, f: (a: A) => Either<
|
|
937
|
+
<A, B, C>(f: (a: A) => Either<C, B>): (self: Chunk<A>) => [left: Chunk<B>, right: Chunk<C>]
|
|
938
|
+
<A, B, C>(self: Chunk<A>, f: (a: A) => Either<C, B>): [left: Chunk<B>, right: Chunk<C>]
|
|
939
|
+
} = dual(2, <A, B, C>(self: Chunk<A>, f: (a: A) => Either<C, B>): [left: Chunk<B>, right: Chunk<C>] =>
|
|
940
940
|
pipe(
|
|
941
941
|
RA.partitionMap(toReadonlyArray(self), f),
|
|
942
942
|
([l, r]) => [unsafeFromArray(l), unsafeFromArray(r)]
|
|
@@ -948,7 +948,7 @@ export const partitionMap: {
|
|
|
948
948
|
* @category filtering
|
|
949
949
|
* @since 2.0.0
|
|
950
950
|
*/
|
|
951
|
-
export const separate = <A, B>(self: Chunk<Either<
|
|
951
|
+
export const separate = <A, B>(self: Chunk<Either<B, A>>): [Chunk<A>, Chunk<B>] =>
|
|
952
952
|
pipe(
|
|
953
953
|
RA.separate(toReadonlyArray(self)),
|
|
954
954
|
([l, r]) => [unsafeFromArray(l), unsafeFromArray(r)]
|
package/src/Config.ts
CHANGED
|
@@ -55,7 +55,7 @@ export declare namespace Config {
|
|
|
55
55
|
*/
|
|
56
56
|
export interface Primitive<out A> extends Config<A> {
|
|
57
57
|
readonly description: string
|
|
58
|
-
parse(text: string): Either.Either<ConfigError.ConfigError
|
|
58
|
+
parse(text: string): Either.Either<A, ConfigError.ConfigError>
|
|
59
59
|
}
|
|
60
60
|
|
|
61
61
|
/**
|
|
@@ -233,8 +233,8 @@ export const mapAttempt: {
|
|
|
233
233
|
* @category utils
|
|
234
234
|
*/
|
|
235
235
|
export const mapOrFail: {
|
|
236
|
-
<A, B>(f: (a: A) => Either.Either<ConfigError.ConfigError
|
|
237
|
-
<A, B>(self: Config<A>, f: (a: A) => Either.Either<ConfigError.ConfigError
|
|
236
|
+
<A, B>(f: (a: A) => Either.Either<B, ConfigError.ConfigError>): (self: Config<A>) => Config<B>
|
|
237
|
+
<A, B>(self: Config<A>, f: (a: A) => Either.Either<B, ConfigError.ConfigError>): Config<B>
|
|
238
238
|
} = internal.mapOrFail
|
|
239
239
|
|
|
240
240
|
/**
|
|
@@ -303,7 +303,7 @@ export const option: <A>(self: Config<A>) => Config<Option.Option<A>> = internal
|
|
|
303
303
|
*/
|
|
304
304
|
export const primitive: <A>(
|
|
305
305
|
description: string,
|
|
306
|
-
parse: (text: string) => Either.Either<ConfigError.ConfigError
|
|
306
|
+
parse: (text: string) => Either.Either<A, ConfigError.ConfigError>
|
|
307
307
|
) => Config<A> = internal.primitive
|
|
308
308
|
|
|
309
309
|
/**
|
package/src/Cron.ts
CHANGED
|
@@ -185,7 +185,7 @@ export const isParseError = (u: unknown): u is ParseError => hasProperty(u, Pars
|
|
|
185
185
|
* @since 2.0.0
|
|
186
186
|
* @category constructors
|
|
187
187
|
*/
|
|
188
|
-
export const parse = (cron: string): Either.Either<
|
|
188
|
+
export const parse = (cron: string): Either.Either<Cron, ParseError> => {
|
|
189
189
|
const segments = cron.split(" ").filter(String.isNonEmpty)
|
|
190
190
|
if (segments.length !== 5) {
|
|
191
191
|
return Either.left(ParseError(`Invalid number of segments in cron expression`, cron))
|
|
@@ -440,7 +440,7 @@ const weekdayOptions: SegmentOptions = {
|
|
|
440
440
|
const parseSegment = (
|
|
441
441
|
input: string,
|
|
442
442
|
options: SegmentOptions
|
|
443
|
-
): Either.Either<
|
|
443
|
+
): Either.Either<ReadonlySet<number>, ParseError> => {
|
|
444
444
|
const capacity = options.max - options.min + 1
|
|
445
445
|
const values = new Set<number>()
|
|
446
446
|
const fields = input.split(",")
|
package/src/Differ.ts
CHANGED
|
@@ -366,14 +366,14 @@ export const orElseEither: {
|
|
|
366
366
|
<Value2, Patch2>(that: Differ<Value2, Patch2>): <Value, Patch>(
|
|
367
367
|
self: Differ<Value, Patch>
|
|
368
368
|
) => Differ<
|
|
369
|
-
Either<
|
|
369
|
+
Either<Value2, Value>,
|
|
370
370
|
Differ.Or.Patch<Value, Value2, Patch, Patch2>
|
|
371
371
|
>
|
|
372
372
|
<Value, Patch, Value2, Patch2>(
|
|
373
373
|
self: Differ<Value, Patch>,
|
|
374
374
|
that: Differ<Value2, Patch2>
|
|
375
375
|
): Differ<
|
|
376
|
-
Either<
|
|
376
|
+
Either<Value2, Value>,
|
|
377
377
|
Differ.Or.Patch<Value, Value2, Patch, Patch2>
|
|
378
378
|
>
|
|
379
379
|
} = internal.orElseEither
|