effect 3.13.3 → 3.13.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/dist/cjs/Match.js.map +1 -1
- package/dist/cjs/Schema.js +22 -21
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/internal/matcher.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Match.d.ts +4 -4
- package/dist/dts/Match.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +7 -0
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +1 -1
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/esm/Match.js.map +1 -1
- package/dist/esm/Schema.js +22 -21
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/internal/matcher.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Match.ts +23 -13
- package/src/Schema.ts +56 -54
- package/src/Types.ts +1 -1
- package/src/internal/matcher.ts +46 -32
- package/src/internal/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"matcher.js","names":["Either","identity","Option","pipeArguments","TypeId","Symbol","for","TypeMatcherProto","_input","_filters","_remaining","_result","_return","_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","withReturnType","self","when","f","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","getExhaustiveAbsurdErrorMessage"],"sources":["../../../src/internal/matcher.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"matcher.js","names":["Either","identity","Option","pipeArguments","TypeId","Symbol","for","TypeMatcherProto","_input","_filters","_remaining","_result","_return","_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","withReturnType","self","when","f","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","getExhaustiveAbsurdErrorMessage"],"sources":["../../../src/internal/matcher.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
package/src/Match.ts
CHANGED
|
@@ -511,15 +511,15 @@ export const whenAnd: <
|
|
|
511
511
|
*/
|
|
512
512
|
export const discriminator: <D extends string>(
|
|
513
513
|
field: D
|
|
514
|
-
) => <R, P extends Types.Tags<D, R> & string, Ret,
|
|
515
|
-
...pattern: [first: P, ...values: Array<P>, f:
|
|
514
|
+
) => <R, P extends Types.Tags<D, R> & string, Ret, Fn extends (_: Extract<R, Record<D, P>>) => Ret>(
|
|
515
|
+
...pattern: [first: P, ...values: Array<P>, f: Fn]
|
|
516
516
|
) => <I, F, A, Pr>(
|
|
517
517
|
self: Matcher<I, F, R, A, Pr, Ret>
|
|
518
518
|
) => Matcher<
|
|
519
519
|
I,
|
|
520
520
|
Types.AddWithout<F, Extract<R, Record<D, P>>>,
|
|
521
521
|
Types.ApplyFilters<I, Types.AddWithout<F, Extract<R, Record<D, P>>>>,
|
|
522
|
-
|
|
522
|
+
A | ReturnType<Fn>,
|
|
523
523
|
Pr,
|
|
524
524
|
Ret
|
|
525
525
|
> = internal.discriminator
|
|
@@ -560,19 +560,19 @@ export const discriminator: <D extends string>(
|
|
|
560
560
|
*/
|
|
561
561
|
export const discriminatorStartsWith: <D extends string>(
|
|
562
562
|
field: D
|
|
563
|
-
) => <R, P extends string, Ret,
|
|
563
|
+
) => <R, P extends string, Ret, Fn extends (_: Extract<R, Record<D, `${P}${string}`>>) => Ret>(
|
|
564
564
|
pattern: P,
|
|
565
|
-
f:
|
|
565
|
+
f: Fn
|
|
566
566
|
) => <I, F, A, Pr>(
|
|
567
567
|
self: Matcher<I, F, R, A, Pr, Ret>
|
|
568
568
|
) => Matcher<
|
|
569
569
|
I,
|
|
570
570
|
Types.AddWithout<F, Extract<R, Record<D, `${P}${string}`>>>,
|
|
571
571
|
Types.ApplyFilters<I, Types.AddWithout<F, Extract<R, Record<D, `${P}${string}`>>>>,
|
|
572
|
-
|
|
572
|
+
A | ReturnType<Fn>,
|
|
573
573
|
Pr,
|
|
574
574
|
Ret
|
|
575
|
-
> = internal.discriminatorStartsWith
|
|
575
|
+
> = internal.discriminatorStartsWith
|
|
576
576
|
|
|
577
577
|
/**
|
|
578
578
|
* Matches values based on a field that serves as a discriminator, mapping each
|
|
@@ -716,15 +716,20 @@ export const discriminatorsExhaustive: <D extends string>(
|
|
|
716
716
|
* @category Defining patterns
|
|
717
717
|
* @since 1.0.0
|
|
718
718
|
*/
|
|
719
|
-
export const tag: <
|
|
720
|
-
|
|
719
|
+
export const tag: <
|
|
720
|
+
R,
|
|
721
|
+
P extends Types.Tags<"_tag", R> & string,
|
|
722
|
+
Ret,
|
|
723
|
+
Fn extends (_: Extract<R, Record<"_tag", P>>) => Ret
|
|
724
|
+
>(
|
|
725
|
+
...pattern: [first: P, ...values: Array<P>, f: Fn]
|
|
721
726
|
) => <I, F, A, Pr>(
|
|
722
727
|
self: Matcher<I, F, R, A, Pr, Ret>
|
|
723
728
|
) => Matcher<
|
|
724
729
|
I,
|
|
725
730
|
Types.AddWithout<F, Extract<R, Record<"_tag", P>>>,
|
|
726
731
|
Types.ApplyFilters<I, Types.AddWithout<F, Extract<R, Record<"_tag", P>>>>,
|
|
727
|
-
|
|
732
|
+
ReturnType<Fn> | A,
|
|
728
733
|
Pr,
|
|
729
734
|
Ret
|
|
730
735
|
> = internal.tag
|
|
@@ -758,16 +763,21 @@ export const tag: <R, P extends Types.Tags<"_tag", R> & string, Ret, B extends R
|
|
|
758
763
|
* @category Defining patterns
|
|
759
764
|
* @since 1.0.0
|
|
760
765
|
*/
|
|
761
|
-
export const tagStartsWith: <
|
|
766
|
+
export const tagStartsWith: <
|
|
767
|
+
R,
|
|
768
|
+
P extends string,
|
|
769
|
+
Ret,
|
|
770
|
+
Fn extends (_: Extract<R, Record<"_tag", `${P}${string}`>>) => Ret
|
|
771
|
+
>(
|
|
762
772
|
pattern: P,
|
|
763
|
-
f:
|
|
773
|
+
f: Fn
|
|
764
774
|
) => <I, F, A, Pr>(
|
|
765
775
|
self: Matcher<I, F, R, A, Pr, Ret>
|
|
766
776
|
) => Matcher<
|
|
767
777
|
I,
|
|
768
778
|
Types.AddWithout<F, Extract<R, Record<"_tag", `${P}${string}`>>>,
|
|
769
779
|
Types.ApplyFilters<I, Types.AddWithout<F, Extract<R, Record<"_tag", `${P}${string}`>>>>,
|
|
770
|
-
|
|
780
|
+
ReturnType<Fn> | A,
|
|
771
781
|
Pr,
|
|
772
782
|
Ret
|
|
773
783
|
> = internal.tagStartsWith
|
package/src/Schema.ts
CHANGED
|
@@ -3469,18 +3469,13 @@ const intersectTypeLiterals = (
|
|
|
3469
3469
|
throw new Error(errors_.getSchemaExtendErrorMessage(x, y, path))
|
|
3470
3470
|
}
|
|
3471
3471
|
|
|
3472
|
-
const preserveRefinementAnnotations = AST.blackListAnnotations([
|
|
3473
|
-
AST.IdentifierAnnotationId
|
|
3474
|
-
])
|
|
3472
|
+
const preserveRefinementAnnotations = AST.blackListAnnotations([AST.IdentifierAnnotationId])
|
|
3475
3473
|
|
|
3476
3474
|
const addRefinementToMembers = (refinement: AST.Refinement, asts: ReadonlyArray<AST.AST>): Array<AST.Refinement> =>
|
|
3477
3475
|
asts.map((ast) => new AST.Refinement(ast, refinement.filter, preserveRefinementAnnotations(refinement)))
|
|
3478
3476
|
|
|
3479
|
-
const extendAST = (
|
|
3480
|
-
|
|
3481
|
-
y: AST.AST,
|
|
3482
|
-
path: ReadonlyArray<PropertyKey>
|
|
3483
|
-
): AST.AST => AST.Union.make(intersectUnionMembers([x], [y], path))
|
|
3477
|
+
const extendAST = (x: AST.AST, y: AST.AST, path: ReadonlyArray<PropertyKey>): AST.AST =>
|
|
3478
|
+
AST.Union.make(intersectUnionMembers([x], [y], path))
|
|
3484
3479
|
|
|
3485
3480
|
const getTypes = (ast: AST.AST): ReadonlyArray<AST.AST> => AST.isUnion(ast) ? ast.types : [ast]
|
|
3486
3481
|
|
|
@@ -3555,59 +3550,63 @@ const intersectUnionMembers = (
|
|
|
3555
3550
|
case "TypeLiteral":
|
|
3556
3551
|
return [intersectTypeLiterals(x, y, path)]
|
|
3557
3552
|
case "Transformation": {
|
|
3558
|
-
|
|
3559
|
-
|
|
3560
|
-
|
|
3561
|
-
|
|
3562
|
-
|
|
3563
|
-
|
|
3564
|
-
|
|
3553
|
+
const transformation = x.transformation
|
|
3554
|
+
const from = intersectTypeLiterals(x.from, y, path)
|
|
3555
|
+
const to = intersectTypeLiterals(x.to, AST.typeAST(y), path)
|
|
3556
|
+
switch (transformation._tag) {
|
|
3557
|
+
case "TypeLiteralTransformation":
|
|
3558
|
+
return [
|
|
3559
|
+
new AST.Transformation(
|
|
3560
|
+
from,
|
|
3561
|
+
to,
|
|
3562
|
+
new AST.TypeLiteralTransformation(transformation.propertySignatureTransformations)
|
|
3565
3563
|
)
|
|
3566
|
-
|
|
3567
|
-
|
|
3564
|
+
]
|
|
3565
|
+
case "ComposeTransformation":
|
|
3566
|
+
return [new AST.Transformation(from, to, AST.composeTransformation)]
|
|
3567
|
+
case "FinalTransformation":
|
|
3568
|
+
return [
|
|
3569
|
+
new AST.Transformation(
|
|
3570
|
+
from,
|
|
3571
|
+
to,
|
|
3572
|
+
new AST.FinalTransformation(
|
|
3573
|
+
(fromA, options, ast, fromI) =>
|
|
3574
|
+
ParseResult.map(
|
|
3575
|
+
transformation.decode(fromA, options, ast, fromI),
|
|
3576
|
+
(partial) => ({ ...fromA, ...partial })
|
|
3577
|
+
),
|
|
3578
|
+
(toI, options, ast, toA) =>
|
|
3579
|
+
ParseResult.map(
|
|
3580
|
+
transformation.encode(toI, options, ast, toA),
|
|
3581
|
+
(partial) => ({ ...toI, ...partial })
|
|
3582
|
+
)
|
|
3583
|
+
)
|
|
3584
|
+
)
|
|
3585
|
+
]
|
|
3568
3586
|
}
|
|
3569
|
-
break
|
|
3570
3587
|
}
|
|
3571
3588
|
}
|
|
3572
3589
|
break
|
|
3573
3590
|
}
|
|
3574
3591
|
case "Transformation": {
|
|
3575
|
-
if (AST.
|
|
3576
|
-
|
|
3577
|
-
|
|
3578
|
-
|
|
3579
|
-
|
|
3580
|
-
|
|
3581
|
-
|
|
3582
|
-
|
|
3583
|
-
|
|
3584
|
-
|
|
3585
|
-
|
|
3586
|
-
intersectTypeLiterals(x, y.from, path),
|
|
3587
|
-
intersectTypeLiterals(AST.typeAST(x), y.to, path),
|
|
3588
|
-
new AST.TypeLiteralTransformation(
|
|
3589
|
-
y.transformation.propertySignatureTransformations
|
|
3592
|
+
if (AST.isTransformation(x)) {
|
|
3593
|
+
if (
|
|
3594
|
+
AST.isTypeLiteralTransformation(y.transformation) && AST.isTypeLiteralTransformation(x.transformation)
|
|
3595
|
+
) {
|
|
3596
|
+
return [
|
|
3597
|
+
new AST.Transformation(
|
|
3598
|
+
intersectTypeLiterals(x.from, y.from, path),
|
|
3599
|
+
intersectTypeLiterals(x.to, y.to, path),
|
|
3600
|
+
new AST.TypeLiteralTransformation(
|
|
3601
|
+
y.transformation.propertySignatureTransformations.concat(
|
|
3602
|
+
x.transformation.propertySignatureTransformations
|
|
3590
3603
|
)
|
|
3591
3604
|
)
|
|
3592
|
-
|
|
3593
|
-
|
|
3594
|
-
{
|
|
3595
|
-
if (AST.isTypeLiteralTransformation(x.transformation)) {
|
|
3596
|
-
return [
|
|
3597
|
-
new AST.Transformation(
|
|
3598
|
-
intersectTypeLiterals(x.from, y.from, path),
|
|
3599
|
-
intersectTypeLiterals(x.to, y.to, path),
|
|
3600
|
-
new AST.TypeLiteralTransformation(
|
|
3601
|
-
y.transformation.propertySignatureTransformations.concat(
|
|
3602
|
-
x.transformation.propertySignatureTransformations
|
|
3603
|
-
)
|
|
3604
|
-
)
|
|
3605
|
-
)
|
|
3606
|
-
]
|
|
3607
|
-
}
|
|
3608
|
-
}
|
|
3609
|
-
break
|
|
3605
|
+
)
|
|
3606
|
+
]
|
|
3610
3607
|
}
|
|
3608
|
+
} else {
|
|
3609
|
+
return intersectUnionMembers([y], [x], path)
|
|
3611
3610
|
}
|
|
3612
3611
|
break
|
|
3613
3612
|
}
|
|
@@ -9284,9 +9283,12 @@ const extendFields = (a: Struct.Fields, b: Struct.Fields): Struct.Fields => {
|
|
|
9284
9283
|
return out
|
|
9285
9284
|
}
|
|
9286
9285
|
|
|
9287
|
-
/**
|
|
9286
|
+
/**
|
|
9287
|
+
* @category Constructor utils
|
|
9288
|
+
* @since 3.13.4
|
|
9289
|
+
*/
|
|
9288
9290
|
export type MakeOptions = boolean | {
|
|
9289
|
-
readonly disableValidation?: boolean
|
|
9291
|
+
readonly disableValidation?: boolean | undefined
|
|
9290
9292
|
}
|
|
9291
9293
|
|
|
9292
9294
|
function getDisableValidationMakeOption(options: MakeOptions | undefined): boolean {
|
|
@@ -9382,7 +9384,7 @@ const makeClass = <Fields extends Struct.Fields>(
|
|
|
9382
9384
|
}
|
|
9383
9385
|
|
|
9384
9386
|
const declaration: Schema.Any = declare(
|
|
9385
|
-
[
|
|
9387
|
+
[schema],
|
|
9386
9388
|
{
|
|
9387
9389
|
decode: () => (input, _, ast) =>
|
|
9388
9390
|
input instanceof this || fallbackInstanceOf(input)
|
package/src/Types.ts
CHANGED
|
@@ -251,7 +251,7 @@ export type Mutable<T> = {
|
|
|
251
251
|
*/
|
|
252
252
|
export type DeepMutable<T> = T extends ReadonlyMap<infer K, infer V> ? Map<DeepMutable<K>, DeepMutable<V>>
|
|
253
253
|
: T extends ReadonlySet<infer V> ? Set<DeepMutable<V>>
|
|
254
|
-
:
|
|
254
|
+
: T extends string | number | boolean | bigint | symbol ? T
|
|
255
255
|
: { -readonly [K in keyof T]: DeepMutable<T[K]> }
|
|
256
256
|
|
|
257
257
|
/**
|
package/src/internal/matcher.ts
CHANGED
|
@@ -321,38 +321,47 @@ export const whenAnd = <
|
|
|
321
321
|
}
|
|
322
322
|
|
|
323
323
|
/** @internal */
|
|
324
|
-
export const discriminator =
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
324
|
+
export const discriminator = <D extends string>(field: D) =>
|
|
325
|
+
<
|
|
326
|
+
R,
|
|
327
|
+
P extends Types.Tags<D, R> & string,
|
|
328
|
+
Ret,
|
|
329
|
+
Fn extends (_: Extract<R, Record<D, P>>) => Ret
|
|
330
|
+
>(
|
|
331
|
+
...pattern: [
|
|
332
|
+
first: P,
|
|
333
|
+
...values: Array<P>,
|
|
334
|
+
f: Fn
|
|
335
|
+
]
|
|
336
|
+
) => {
|
|
337
|
+
const f = pattern[pattern.length - 1]
|
|
338
|
+
const values: Array<P> = pattern.slice(0, -1) as any
|
|
339
|
+
const pred = values.length === 1
|
|
340
|
+
? (_: any) => _[field] === values[0]
|
|
341
|
+
: (_: any) => values.includes(_[field])
|
|
342
|
+
|
|
343
|
+
return <I, F, A, Pr>(
|
|
344
|
+
self: Matcher<I, F, R, A, Pr, Ret>
|
|
345
|
+
): Matcher<
|
|
346
|
+
I,
|
|
347
|
+
Types.AddWithout<F, Extract<R, Record<D, P>>>,
|
|
348
|
+
Types.ApplyFilters<I, Types.AddWithout<F, Extract<R, Record<D, P>>>>,
|
|
349
|
+
A | ReturnType<Fn>,
|
|
350
|
+
Pr,
|
|
351
|
+
Ret
|
|
352
|
+
> => (self as any).add(makeWhen(pred, f as any)) as any
|
|
353
|
+
}
|
|
350
354
|
|
|
351
355
|
/** @internal */
|
|
352
356
|
export const discriminatorStartsWith = <D extends string>(field: D) =>
|
|
353
|
-
<
|
|
357
|
+
<
|
|
358
|
+
R,
|
|
359
|
+
P extends string,
|
|
360
|
+
Ret,
|
|
361
|
+
Fn extends (_: Extract<R, Record<D, `${P}${string}`>>) => Ret
|
|
362
|
+
>(
|
|
354
363
|
pattern: P,
|
|
355
|
-
f:
|
|
364
|
+
f: Fn
|
|
356
365
|
) => {
|
|
357
366
|
const pred = (_: any) => typeof _[field] === "string" && _[field].startsWith(pattern)
|
|
358
367
|
|
|
@@ -365,7 +374,7 @@ export const discriminatorStartsWith = <D extends string>(field: D) =>
|
|
|
365
374
|
I,
|
|
366
375
|
Types.AddWithout<F, Extract<R, Record<D, `${P}${string}`>>>
|
|
367
376
|
>,
|
|
368
|
-
A |
|
|
377
|
+
A | ReturnType<Fn>,
|
|
369
378
|
Pr,
|
|
370
379
|
Ret
|
|
371
380
|
> => (self as any).add(makeWhen(pred, f as any)) as any
|
|
@@ -427,11 +436,16 @@ export const discriminatorsExhaustive: <D extends string>(
|
|
|
427
436
|
}
|
|
428
437
|
|
|
429
438
|
/** @internal */
|
|
430
|
-
export const tag: <
|
|
439
|
+
export const tag: <
|
|
440
|
+
R,
|
|
441
|
+
P extends Types.Tags<"_tag", R> & string,
|
|
442
|
+
Ret,
|
|
443
|
+
Fn extends (_: Extract<R, Record<"_tag", P>>) => Ret
|
|
444
|
+
>(
|
|
431
445
|
...pattern: [
|
|
432
446
|
first: P,
|
|
433
447
|
...values: Array<P>,
|
|
434
|
-
f:
|
|
448
|
+
f: Fn
|
|
435
449
|
]
|
|
436
450
|
) => <I, F, A, Pr>(
|
|
437
451
|
self: Matcher<I, F, R, A, Pr, Ret>
|
|
@@ -439,7 +453,7 @@ export const tag: <R, P extends Types.Tags<"_tag", R> & string, Ret, B extends R
|
|
|
439
453
|
I,
|
|
440
454
|
Types.AddWithout<F, Extract<R, Record<"_tag", P>>>,
|
|
441
455
|
Types.ApplyFilters<I, Types.AddWithout<F, Extract<R, Record<"_tag", P>>>>,
|
|
442
|
-
|
|
456
|
+
ReturnType<Fn> | A,
|
|
443
457
|
Pr,
|
|
444
458
|
Ret
|
|
445
459
|
> = discriminator("_tag")
|
package/src/internal/version.ts
CHANGED