effect 2.0.0-next.61 → 2.0.0-next.62

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.
Files changed (42) hide show
  1. package/dist/cjs/Effect.js +7 -2
  2. package/dist/cjs/Effect.js.map +1 -1
  3. package/dist/cjs/Layer.js +8 -1
  4. package/dist/cjs/Layer.js.map +1 -1
  5. package/dist/cjs/internal/core-effect.js +47 -38
  6. package/dist/cjs/internal/core-effect.js.map +1 -1
  7. package/dist/cjs/internal/effect/circular.js +2 -3
  8. package/dist/cjs/internal/effect/circular.js.map +1 -1
  9. package/dist/cjs/internal/layer.js +3 -1
  10. package/dist/cjs/internal/layer.js.map +1 -1
  11. package/dist/cjs/internal/matcher.js +13 -16
  12. package/dist/cjs/internal/matcher.js.map +1 -1
  13. package/dist/cjs/internal/version.js +1 -1
  14. package/dist/dts/Effect.d.ts +12 -7
  15. package/dist/dts/Effect.d.ts.map +1 -1
  16. package/dist/dts/Layer.d.ts +7 -0
  17. package/dist/dts/Layer.d.ts.map +1 -1
  18. package/dist/dts/Match.d.ts +15 -27
  19. package/dist/dts/Match.d.ts.map +1 -1
  20. package/dist/dts/internal/version.d.ts +1 -1
  21. package/dist/esm/Effect.js +5 -0
  22. package/dist/esm/Effect.js.map +1 -1
  23. package/dist/esm/Layer.js +7 -0
  24. package/dist/esm/Layer.js.map +1 -1
  25. package/dist/esm/internal/core-effect.js +43 -35
  26. package/dist/esm/internal/core-effect.js.map +1 -1
  27. package/dist/esm/internal/effect/circular.js +2 -3
  28. package/dist/esm/internal/effect/circular.js.map +1 -1
  29. package/dist/esm/internal/layer.js +2 -0
  30. package/dist/esm/internal/layer.js.map +1 -1
  31. package/dist/esm/internal/matcher.js +13 -16
  32. package/dist/esm/internal/matcher.js.map +1 -1
  33. package/dist/esm/internal/version.js +1 -1
  34. package/package.json +1 -1
  35. package/src/Effect.ts +18 -7
  36. package/src/Layer.ts +8 -0
  37. package/src/Match.ts +37 -75
  38. package/src/internal/core-effect.ts +74 -72
  39. package/src/internal/effect/circular.ts +7 -5
  40. package/src/internal/layer.ts +3 -0
  41. package/src/internal/matcher.ts +16 -16
  42. package/src/internal/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"layer.js","names":["Cause","Clock","Context","Duration","FiberRefsPatch","dual","pipe","pipeArguments","hasProperty","ScheduleDecision","Intervals","Scope","effect","core","circular","fiberRuntime","EffectOpCodes","OpCodes","ref","runtime","runtimeFlags","synchronized","tracer","LayerSymbolKey","LayerTypeId","Symbol","for","layerVariance","_RIn","_","_E","_ROut","proto","arguments","MemoMapTypeIdKey","MemoMapTypeId","isLayer","u","isFresh","self","_tag","OP_FRESH","MemoMapImpl","constructor","getOrElseMemoize","layer","scope","modifyEffect","map","inMap","get","undefined","acquire","release","cached","flatMap","patch","b","patchFiberRefs","as","onExit","exitMatch","onFailure","unit","onSuccess","scopeAddFinalizerExit","succeed","make","observers","deferredMake","deferred","finalizerRef","resource","uninterruptibleMask","restore","scopeMake","innerScope","makeBuilder","f","diffFiberRefs","exit","OP_FAILURE","deferredFailCause","i0","zipRight","scopeClose","failCause","OP_SUCCESS","set","whenEffect","modify","n","asUnit","update","sync","delete","finalizer","deferredSucceed","memoized","deferredAwait","exitMatchEffect","flatten","makeMemoMap","suspend","makeSynchronized","Map","build","scopeWith","buildWithScope","memoMap","run","buildWithMemoMap","inMemoMap","op","matchCauseEffect","cause","failureK","value","successK","first","env","second","provideContext","scopeExtend","evaluate","zipWith","zipK","zipWithOptions","concurrent","catchAll","match","succeedContext","catchAllCause","matchCause","die","defect","dieSync","failCauseSync","discard","empty","context","fromEffectContext","extendScope","Object","create","OP_EXTEND_SCOPE","fail","error","failSync","tag","fresh","fromEffect","a","tagFirst","isTag","service","fromEffectDiscard","OP_FROM_EFFECT","fiberRefLocally","locallyEffect","locally","fiberRefLocallyWith","fiberRefLocallyScoped","scopedDiscard","fiberRefLocallyScopedWith","fromFunction","tagA","tagB","launch","scopedEffect","never","mapError","fold","OP_FOLD","failureOrCause","left","right","memoize","merge","that","mergeAll","layers","final","i","length","orDie","orElse","passthrough","project","unsafeGet","retry","schedule","stateTag","Tag","state","initial","retryLoop","retryUpdate","currentTimeMillis","now","step","decision","isDone","sleep","millis","start","intervals","scoped","scopedContext","OP_SCOPED","acquireRelease","close","OP_SUSPEND","syncContext","tap","tapError","e","tapErrorCause","toRuntime","provide","provideTo","OP_PROVIDE","OP_PROVIDE_MERGE","enumerable","provideMerge","OP_ZIP_WITH","unwrapEffect","unwrapScoped","withSpan","args","name","options","onEnd","makeSpanScoped","span","addFinalizer","withParentSpan","spanTag","provideSomeLayer","acquireUseRelease","provideSomeContext","provideSomeRuntime","rt","patchRefs","diff","defaultRuntime","fiberRefs","patchFlags","withFiberRuntime","fiber","oldRefs","getFiberRefs","newRefs","id","oldFlags","_runtimeFlags","newFlags","rollbackRefs","rollbackFlags","setFiberRefs","ensuring","effect_provide","source","isContext"],"sources":["../../../src/internal/layer.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"layer.js","names":["Cause","Clock","Context","Duration","FiberRefsPatch","dual","pipe","pipeArguments","hasProperty","ScheduleDecision","Intervals","Scope","effect","core","circular","fiberRuntime","EffectOpCodes","OpCodes","ref","runtime","runtimeFlags","synchronized","tracer","LayerSymbolKey","LayerTypeId","Symbol","for","layerVariance","_RIn","_","_E","_ROut","proto","arguments","MemoMapTypeIdKey","MemoMapTypeId","isLayer","u","isFresh","self","_tag","OP_FRESH","MemoMapImpl","constructor","getOrElseMemoize","layer","scope","modifyEffect","map","inMap","get","undefined","acquire","release","cached","flatMap","patch","b","patchFiberRefs","as","onExit","exitMatch","onFailure","unit","onSuccess","scopeAddFinalizerExit","succeed","make","observers","deferredMake","deferred","finalizerRef","resource","uninterruptibleMask","restore","scopeMake","innerScope","makeBuilder","f","diffFiberRefs","exit","OP_FAILURE","deferredFailCause","i0","zipRight","scopeClose","failCause","OP_SUCCESS","set","whenEffect","modify","n","asUnit","update","sync","delete","finalizer","deferredSucceed","memoized","deferredAwait","exitMatchEffect","flatten","makeMemoMap","suspend","makeSynchronized","Map","build","scopeWith","buildWithScope","memoMap","run","buildWithMemoMap","inMemoMap","op","matchCauseEffect","cause","failureK","value","successK","first","env","second","provideContext","scopeExtend","evaluate","zipWith","zipK","zipWithOptions","concurrent","catchAll","match","succeedContext","catchAllCause","matchCause","die","defect","dieSync","failCauseSync","discard","empty","context","fromEffectContext","extendScope","Object","create","OP_EXTEND_SCOPE","fail","error","failSync","tag","fresh","fromEffect","a","tagFirst","isTag","service","fromEffectDiscard","OP_FROM_EFFECT","fiberRefLocally","locallyEffect","locally","fiberRefLocallyWith","fiberRefLocallyScoped","scopedDiscard","fiberRefLocallyScopedWith","fromFunction","tagA","tagB","launch","scopedEffect","never","mapError","fold","OP_FOLD","failureOrCause","left","right","memoize","merge","that","mergeAll","layers","final","i","length","orDie","orElse","passthrough","project","unsafeGet","retry","schedule","stateTag","Tag","state","initial","retryLoop","retryUpdate","currentTimeMillis","now","step","decision","isDone","sleep","millis","start","intervals","scoped","scopedContext","OP_SCOPED","acquireRelease","close","OP_SUSPEND","syncContext","tap","tapError","e","tapErrorCause","toRuntime","provide","provideTo","OP_PROVIDE","OP_PROVIDE_MERGE","enumerable","provideMerge","OP_ZIP_WITH","unwrapEffect","unwrapScoped","withSpan","args","name","options","onEnd","makeSpanScoped","span","addFinalizer","withParentSpan","spanTag","provideSomeLayer","acquireUseRelease","provideSomeContext","provideSomeRuntime","rt","patchRefs","diff","defaultRuntime","fiberRefs","patchFlags","withFiberRuntime","fiber","oldRefs","getFiberRefs","newRefs","id","oldFlags","_runtimeFlags","newFlags","rollbackRefs","rollbackFlags","setFiberRefs","ensuring","effect_provide","source","isContext"],"sources":["../../../src/internal/layer.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -163,22 +163,8 @@ export const discriminatorStartsWith = field => (pattern, f) => {
163
163
  };
164
164
  /** @internal */
165
165
  export const discriminators = field => fields => {
166
- const predicates = [];
167
- for (const key in fields) {
168
- const pred = _ => _[field] === key;
169
- const f = fields[key];
170
- if (f) {
171
- predicates.push(makeWhen(pred, f));
172
- }
173
- }
174
- const len = predicates.length;
175
- return self => {
176
- let matcher = self;
177
- for (let i = 0; i < len; i++) {
178
- matcher = matcher.add(predicates[i]);
179
- }
180
- return matcher;
181
- };
166
+ const predicate = makeWhen(_ => _[field] in fields, data => fields[data[field]](data));
167
+ return self => self.add(predicate);
182
168
  };
183
169
  /** @internal */
184
170
  export const discriminatorsExhaustive = field => fields => {
@@ -240,6 +226,17 @@ export const either = self => {
240
226
  return self.value;
241
227
  }
242
228
  const len = self.cases.length;
229
+ if (len === 1) {
230
+ const _case = self.cases[0];
231
+ return input => {
232
+ if (_case._tag === "When" && _case.guard(input) === true) {
233
+ return Either.right(_case.evaluate(input));
234
+ } else if (_case._tag === "Not" && _case.guard(input) === false) {
235
+ return Either.right(_case.evaluate(input));
236
+ }
237
+ return Either.left(input);
238
+ };
239
+ }
243
240
  return input => {
244
241
  for (let i = 0; i < len; i++) {
245
242
  const _case = self.cases[i];
@@ -1 +1 @@
1
- {"version":3,"file":"matcher.js","names":["Either","identity","Option","pipeArguments","TypeId","Symbol","for","TypeMatcherProto","_input","_filters","_remaining","_result","_tag","add","_case","makeTypeMatcher","cases","pipe","arguments","matcher","Object","create","ValueMatcherProto","value","guard","provided","makeValueMatcher","right","evaluate","makeWhen","makeNot","makePredicate","pattern","Array","isArray","predicates","map","len","length","u","i","keysAndPredicates","entries","k","p","key","predicate","makeOrPredicate","patterns","makeAndPredicate","type","left","valueTags","fields","match","tagsExhaustive","input","typeTags","when","f","self","whenOr","args","onMatch","slice","whenAnd","discriminator","field","values","pred","_","includes","discriminatorStartsWith","startsWith","discriminators","push","discriminatorsExhaustive","addCases","exhaustive","tag","tagStartsWith","tags","not","nonEmptyString","is","literals","any","defined","undefined","instanceOf","constructor","instanceOfUnsafe","orElse","result","either","isEither","a","orElseAbsurd","Error","option","toEither","onLeft","none","onRight","some"],"sources":["../../../src/internal/matcher.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"matcher.js","names":["Either","identity","Option","pipeArguments","TypeId","Symbol","for","TypeMatcherProto","_input","_filters","_remaining","_result","_tag","add","_case","makeTypeMatcher","cases","pipe","arguments","matcher","Object","create","ValueMatcherProto","value","guard","provided","makeValueMatcher","right","evaluate","makeWhen","makeNot","makePredicate","pattern","Array","isArray","predicates","map","len","length","u","i","keysAndPredicates","entries","k","p","key","predicate","makeOrPredicate","patterns","makeAndPredicate","type","left","valueTags","fields","match","tagsExhaustive","input","typeTags","when","f","self","whenOr","args","onMatch","slice","whenAnd","discriminator","field","values","pred","_","includes","discriminatorStartsWith","startsWith","discriminators","data","discriminatorsExhaustive","addCases","exhaustive","tag","tagStartsWith","tags","not","nonEmptyString","is","literals","any","defined","undefined","instanceOf","constructor","instanceOfUnsafe","orElse","result","either","isEither","a","orElseAbsurd","Error","option","toEither","onLeft","none","onRight","some"],"sources":["../../../src/internal/matcher.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export const moduleVersion = "2.0.0-next.61";
1
+ export const moduleVersion = "2.0.0-next.62";
2
2
  //# sourceMappingURL=version.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect",
3
- "version": "2.0.0-next.61",
3
+ "version": "2.0.0-next.62",
4
4
  "description": "Functional programming in TypeScript",
5
5
  "license": "MIT",
6
6
  "repository": {
package/src/Effect.ts CHANGED
@@ -670,7 +670,8 @@ export const forEach: {
670
670
  * @since 2.0.0
671
671
  * @category collecting & elements
672
672
  */
673
- export const head: <R, E, A>(self: Effect<R, E, Iterable<A>>) => Effect<R, Option.Option<E>, A> = effect.head
673
+ export const head: <R, E, A>(self: Effect<R, E, Iterable<A>>) => Effect<R, E | Cause.NoSuchElementException, A> =
674
+ effect.head
674
675
 
675
676
  /**
676
677
  * Merges an `Iterable<Effect<R, E, A>>` to a single effect, working
@@ -1403,7 +1404,9 @@ export const never: Effect<never, never, never> = core.never
1403
1404
  * @since 2.0.0
1404
1405
  * @category constructors
1405
1406
  */
1406
- export const none: <R, E, A>(self: Effect<R, E, Option.Option<A>>) => Effect<R, Option.Option<E>, void> = effect.none
1407
+ export const none: <R, E, A>(
1408
+ self: Effect<R, E, Option.Option<A>>
1409
+ ) => Effect<R, E | Cause.NoSuchElementException, void> = effect.none
1407
1410
 
1408
1411
  /**
1409
1412
  * Like `tryPromise` but produces a defect in case of errors.
@@ -2940,8 +2943,8 @@ export const timedWith: {
2940
2943
  * @category delays & timeouts
2941
2944
  */
2942
2945
  export const timeout: {
2943
- (duration: Duration.DurationInput): <R, E, A>(self: Effect<R, E, A>) => Effect<R, E, Option.Option<A>>
2944
- <R, E, A>(self: Effect<R, E, A>, duration: Duration.DurationInput): Effect<R, E, Option.Option<A>>
2946
+ (duration: Duration.DurationInput): <R, E, A>(self: Effect<R, E, A>) => Effect<R, E | Cause.NoSuchElementException, A>
2947
+ <R, E, A>(self: Effect<R, E, A>, duration: Duration.DurationInput): Effect<R, Cause.NoSuchElementException | E, A>
2945
2948
  } = circular.timeout
2946
2949
 
2947
2950
  /**
@@ -3208,9 +3211,16 @@ export const serviceMembers: <I, S>(tag: Context.Tag<I, S>) => {
3208
3211
  * @since 2.0.0
3209
3212
  * @category context
3210
3213
  */
3211
- export const serviceOption: <I, A>(tag: Context.Tag<I, A>) => Effect<never, never, Option.Option<A>> =
3214
+ export const serviceOption: <I, S>(tag: Context.Tag<I, S>) => Effect<never, never, Option.Option<S>> =
3212
3215
  effect.serviceOption
3213
3216
 
3217
+ /**
3218
+ * @since 2.0.0
3219
+ * @category context
3220
+ */
3221
+ export const serviceOptional: <I, S>(tag: Context.Tag<I, S>) => Effect<never, Cause.NoSuchElementException, S> =
3222
+ effect.serviceOptional
3223
+
3214
3224
  /**
3215
3225
  * Updates the service with the required service entry.
3216
3226
  *
@@ -5079,13 +5089,14 @@ export const annotateCurrentSpan: {
5079
5089
  * @since 2.0.0
5080
5090
  * @category tracing
5081
5091
  */
5082
- export const currentSpan: Effect<never, never, Option.Option<Tracer.Span>> = effect.currentSpan
5092
+ export const currentSpan: Effect<never, Cause.NoSuchElementException, Tracer.Span> = effect.currentSpan
5083
5093
 
5084
5094
  /**
5085
5095
  * @since 2.0.0
5086
5096
  * @category tracing
5087
5097
  */
5088
- export const currentParentSpan: Effect<never, never, Option.Option<Tracer.ParentSpan>> = effect.currentParentSpan
5098
+ export const currentParentSpan: Effect<never, Cause.NoSuchElementException, Tracer.ParentSpan> =
5099
+ effect.currentParentSpan
5089
5100
 
5090
5101
  /**
5091
5102
  * @since 2.0.0
package/src/Layer.ts CHANGED
@@ -256,6 +256,14 @@ export const effectDiscard: <R, E, _>(effect: Effect.Effect<R, E, _>) => Layer<R
256
256
  export const effectContext: <R, E, A>(effect: Effect.Effect<R, E, Context.Context<A>>) => Layer<R, E, A> =
257
257
  internal.fromEffectContext
258
258
 
259
+ /**
260
+ * A Layer that constructs an empty Context.
261
+ *
262
+ * @since 2.0.0
263
+ * @category constructors
264
+ */
265
+ export const empty: Layer<never, never, never> = internal.empty
266
+
259
267
  /**
260
268
  * Extends the scope of this layer, returning a new layer that when provided
261
269
  * to an effect will not immediately release its associated resources when
package/src/Match.ts CHANGED
@@ -613,27 +613,27 @@ export declare namespace Types {
613
613
  type SafeRefinementP<A> = A extends never ? never
614
614
  : A extends SafeRefinement<infer S, infer _> ? S
615
615
  : A extends Function ? A
616
- : A extends Record<string, any> ? DrainOuterGeneric<{ [K in keyof A]: SafeRefinementP<A[K]> }>
616
+ : A extends Record<string, any> ? { [K in keyof A]: SafeRefinementP<A[K]> }
617
617
  : A
618
618
 
619
619
  type SafeRefinementR<A> = A extends never ? never
620
620
  : A extends SafeRefinement<infer _, infer R> ? R
621
621
  : A extends Function ? A
622
- : A extends Record<string, any> ? DrainOuterGeneric<{ [K in keyof A]: SafeRefinementR<A[K]> }>
622
+ : A extends Record<string, any> ? { [K in keyof A]: SafeRefinementR<A[K]> }
623
623
  : A
624
624
 
625
625
  type ResolvePred<A> = A extends never ? never
626
626
  : A extends Predicate.Refinement<any, infer P> ? P
627
627
  : A extends Predicate.Predicate<infer P> ? P
628
628
  : A extends SafeRefinement<any> ? A
629
- : A extends Record<string, any> ? DrainOuterGeneric<{ [K in keyof A]: ResolvePred<A[K]> }>
629
+ : A extends Record<string, any> ? { [K in keyof A]: ResolvePred<A[K]> }
630
630
  : A
631
631
 
632
632
  type ToSafeRefinement<A> = A extends never ? never
633
633
  : A extends Predicate.Refinement<any, infer P> ? SafeRefinement<P, P>
634
634
  : A extends Predicate.Predicate<infer P> ? SafeRefinement<P, never>
635
635
  : A extends SafeRefinement<any> ? A
636
- : A extends Record<string, any> ? DrainOuterGeneric<{ [K in keyof A]: ToSafeRefinement<A[K]> }>
636
+ : A extends Record<string, any> ? { [K in keyof A]: ToSafeRefinement<A[K]> }
637
637
  : NonLiteralsTo<A, never>
638
638
 
639
639
  type NonLiteralsTo<A, T> = [A] extends [string | number | boolean | bigint] ? [string] extends [A] ? T
@@ -643,16 +643,12 @@ export declare namespace Types {
643
643
  : A
644
644
  : A
645
645
 
646
- type DrainOuterGeneric<T> = [T] extends [unknown] ? T : never
647
-
648
646
  /**
649
647
  * @since 1.0.0
650
648
  */
651
649
  export type PatternBase<A> = A extends ReadonlyArray<infer _T> ? ReadonlyArray<any> | PatternPrimitive<A>
652
650
  : A extends Record<string, any> ? Partial<
653
- DrainOuterGeneric<
654
- { [K in keyof A]: PatternPrimitive<A[K] & {}> | PatternBase<A[K] & {}> }
655
- >
651
+ { [K in keyof A]: PatternPrimitive<A[K] & {}> | PatternBase<A[K] & {}> }
656
652
  >
657
653
  : never
658
654
 
@@ -718,33 +714,6 @@ export declare namespace Types {
718
714
  export type ExtractMatch<I, P> = [ExtractAndNarrow<I, P>] extends [infer EI] ? EI
719
715
  : never
720
716
 
721
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint
722
- type IntersectOf<U extends unknown> = (
723
- U extends unknown ? (k: U) => void : never
724
- ) extends (k: infer I) => void ? I
725
- : never
726
-
727
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint
728
- type Last<U extends any> = IntersectOf<
729
- U extends unknown ? (x: U) => void : never
730
- > extends (x: infer P) => void ? P
731
- : never
732
-
733
- type _ListOf<U, LN extends Array<any> = [], LastU = Last<U>> = {
734
- 0: _ListOf<Exclude<U, LastU>, [LastU, ...LN]>
735
- 1: LN
736
- }[[U] extends [never] ? 1 : 0]
737
-
738
- // eslint-disable-next-line @typescript-eslint/no-unnecessary-type-constraint
739
- type ListOf<U extends any> = _ListOf<U> extends infer X ? X extends Array<any> ? X
740
- : []
741
- : never
742
-
743
- type IsUnion<T, U extends T = T> = (
744
- T extends any ? (U extends T ? false : true) : never
745
- ) extends false ? false
746
- : true
747
-
748
717
  type Replace<A, B> = A extends Function ? A
749
718
  : A extends Record<string | number, any> ? { [K in keyof A]: K extends keyof B ? Replace<A[K], B[K]> : A[K] }
750
719
  : [B] extends [A] ? B
@@ -767,46 +736,39 @@ export declare namespace Types {
767
736
 
768
737
  type Simplify<A> = { [K in keyof A]: A[K] } & {}
769
738
 
770
- type ExtractAndNarrow<I, P> =
739
+ type ExtractAndNarrow<Input, P> =
771
740
  // unknown is a wildcard pattern
772
- unknown extends P ? I
773
- : IsUnion<I> extends true ? ListOf<I> extends infer L ? L extends Array<any> ? Exclude<
774
- DrainOuterGeneric<
775
- { [K in keyof L]: ExtractAndNarrow<L[K], P> }
776
- >[number],
777
- Fail
778
- >
779
- : never
780
- : never
781
- : I extends ReadonlyArray<any> ? P extends ReadonlyArray<any> ? DrainOuterGeneric<
782
- {
783
- readonly [K in keyof I]: K extends keyof P ? ExtractAndNarrow<I[K], P[K]>
784
- : I[K]
785
- }
786
- > extends infer R ? Fail extends R[keyof R] ? never
787
- : R
788
- : never
789
- : never
790
- : IsPlainObject<I> extends true ? string extends keyof I ? I extends P ? I
791
- : never
792
- : symbol extends keyof I ? I extends P ? I
793
- : never
794
- : Simplify<
795
- DrainOuterGeneric<
796
- {
797
- [RK in Extract<keyof I, keyof P>]-?: ExtractAndNarrow<I[RK], P[RK]>
798
- }
799
- > & Omit<I, keyof P>
800
- > extends infer R ? [keyof P] extends [keyof RemoveFails<R>] ? R
801
- : never
802
- : never
803
- : MaybeReplace<I, P> extends infer R ? [I] extends [R] ? I
804
- : R
805
- : never
806
-
807
- type RemoveFails<A> = {
808
- [K in keyof A & {}]: A[K] extends Fail ? never : K
809
- }[keyof A] extends infer K ? [K] extends [keyof A] ? { [RK in K]: A[RK] }
741
+ unknown extends P ? Input
742
+ : Input extends infer I ? Exclude<
743
+ I extends ReadonlyArray<any> ? P extends ReadonlyArray<any> ? {
744
+ readonly [K in keyof I]: K extends keyof P ? ExtractAndNarrow<I[K], P[K]>
745
+ : I[K]
746
+ } extends infer R ? Fail extends R[keyof R] ? never
747
+ : R
748
+ : never
749
+ : never
750
+ : IsPlainObject<I> extends true ? string extends keyof I ? I extends P ? I
751
+ : never
752
+ : symbol extends keyof I ? I extends P ? I
753
+ : never
754
+ : Simplify<
755
+ & { [RK in Extract<keyof I, keyof P>]-?: ExtractAndNarrow<I[RK], P[RK]> }
756
+ & Omit<I, keyof P>
757
+ > extends infer R ? [keyof P] extends [keyof RemoveFails<R>] ? R
758
+ : never
759
+ : never
760
+ : MaybeReplace<I, P> extends infer R ? [I] extends [R] ? I
761
+ : R
762
+ : never,
763
+ Fail
764
+ > :
765
+ never
766
+
767
+ type RemoveFails<A> = NonFailKeys<A> extends infer K ? [K] extends [keyof A] ? { [RK in K]: A[RK] }
810
768
  : {}
811
769
  : {}
770
+
771
+ type NonFailKeys<A> = keyof A & {} extends infer K ? K extends keyof A ? A[K] extends Fail ? never : K
772
+ : never :
773
+ never
812
774
  }