effect 3.12.4 → 3.12.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/Arbitrary.js +72 -14
- package/dist/cjs/Arbitrary.js.map +1 -1
- package/dist/cjs/Array.js +11 -9
- package/dist/cjs/Array.js.map +1 -1
- package/dist/cjs/Cause.js +26 -2
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/Cron.js +55 -23
- package/dist/cjs/Cron.js.map +1 -1
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +32 -23
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/FiberHandle.js +8 -8
- package/dist/cjs/FiberMap.js +8 -8
- package/dist/cjs/FiberSet.js +8 -8
- package/dist/cjs/Inspectable.js +0 -4
- package/dist/cjs/Inspectable.js.map +1 -1
- package/dist/cjs/LogLevel.js +30 -2
- package/dist/cjs/LogLevel.js.map +1 -1
- package/dist/cjs/ParseResult.js +38 -18
- package/dist/cjs/ParseResult.js.map +1 -1
- package/dist/cjs/Schema.js +192 -118
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/internal/cause.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +6 -5
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +6 -5
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/dateTime.js +12 -3
- package/dist/cjs/internal/dateTime.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +15 -2
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/groupBy.js +7 -7
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/rateLimiter.js +8 -7
- package/dist/cjs/internal/rateLimiter.js.map +1 -1
- package/dist/cjs/internal/runtime.js +7 -11
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/stream.js +5 -5
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Arbitrary.d.ts.map +1 -1
- package/dist/dts/Array.d.ts +62 -16
- package/dist/dts/Array.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +27 -3
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +10 -3
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +5 -5
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +31 -22
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts +8 -8
- package/dist/dts/FiberMap.d.ts +8 -8
- package/dist/dts/FiberSet.d.ts +8 -8
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/LogLevel.d.ts +90 -6
- package/dist/dts/LogLevel.d.ts.map +1 -1
- package/dist/dts/ParseResult.d.ts +11 -0
- package/dist/dts/ParseResult.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +53 -33
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/internal/core-effect.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Arbitrary.js +72 -14
- package/dist/esm/Arbitrary.js.map +1 -1
- package/dist/esm/Array.js +11 -9
- package/dist/esm/Array.js.map +1 -1
- package/dist/esm/Cause.js +26 -2
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/Cron.js +53 -22
- package/dist/esm/Cron.js.map +1 -1
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +32 -23
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/FiberHandle.js +8 -8
- package/dist/esm/FiberMap.js +8 -8
- package/dist/esm/FiberSet.js +8 -8
- package/dist/esm/Inspectable.js +0 -3
- package/dist/esm/Inspectable.js.map +1 -1
- package/dist/esm/LogLevel.js +30 -2
- package/dist/esm/LogLevel.js.map +1 -1
- package/dist/esm/ParseResult.js +38 -18
- package/dist/esm/ParseResult.js.map +1 -1
- package/dist/esm/Schema.js +186 -110
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/internal/cause.js.map +1 -1
- package/dist/esm/internal/core-effect.js +6 -5
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +6 -5
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/dateTime.js +11 -2
- package/dist/esm/internal/dateTime.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +15 -2
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/groupBy.js +7 -7
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/rateLimiter.js +8 -7
- package/dist/esm/internal/rateLimiter.js.map +1 -1
- package/dist/esm/internal/runtime.js +7 -11
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/stream.js +5 -5
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Arbitrary.ts +84 -14
- package/src/Array.ts +65 -19
- package/src/Cause.ts +27 -3
- package/src/Cron.ts +30 -27
- package/src/Duration.ts +11 -3
- package/src/Effect.ts +35 -23
- package/src/FiberHandle.ts +8 -8
- package/src/FiberMap.ts +8 -8
- package/src/FiberSet.ts +8 -8
- package/src/Inspectable.ts +0 -1
- package/src/LogLevel.ts +90 -6
- package/src/ParseResult.ts +52 -28
- package/src/Schema.ts +233 -124
- package/src/internal/cause.ts +1 -1
- package/src/internal/core-effect.ts +16 -9
- package/src/internal/core.ts +9 -4
- package/src/internal/dateTime.ts +12 -2
- package/src/internal/effect/circular.ts +19 -17
- package/src/internal/fiberRuntime.ts +2 -1
- package/src/internal/groupBy.ts +35 -39
- package/src/internal/rateLimiter.ts +8 -7
- package/src/internal/runtime.ts +6 -14
- package/src/internal/stream.ts +13 -15
- package/src/internal/version.ts +1 -1
package/dist/cjs/Schema.js
CHANGED
|
@@ -3,15 +3,15 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.ListFromSelf = exports.List = exports.LessThanSchemaId = exports.LessThanOrEqualToSchemaId = exports.LessThanOrEqualToDurationSchemaId = exports.LessThanOrEqualToDateSchemaId = exports.LessThanOrEqualToBigIntSchemaId = exports.LessThanOrEqualToBigDecimalSchemaId = exports.LessThanDurationSchemaId = exports.LessThanDateSchemaId = exports.LessThanBigIntSchemaId = exports.LessThanBigDecimalSchemaId = exports.LengthSchemaId = exports.JsonNumberSchemaId = exports.JsonNumber = exports.ItemsCountSchemaId = exports.IntSchemaId = exports.Int = exports.InstanceOfSchemaId = exports.IncludesSchemaId = exports.HashSetFromSelf = exports.HashSet = exports.HashMapFromSelf = exports.HashMap = exports.GreaterThanSchemaId = exports.GreaterThanOrEqualToSchemaId = exports.GreaterThanOrEqualToDurationSchemaId = exports.GreaterThanOrEqualToDateSchemaId = exports.GreaterThanOrEqualToBigIntSchemaId = exports.GreaterThanOrEqualToBigDecimalSchemaId = exports.GreaterThanDurationSchemaId = exports.GreaterThanDateSchemaId = exports.GreaterThanBigIntSchemaId = exports.GreaterThanBigDecimalSchemaId = exports.FromPropertySignature = exports.FiniteSchemaId = exports.Finite = exports.FiberIdFromSelf = exports.FiberId = exports.ExitFromSelf = exports.Exit = exports.Enums = exports.EndsWithSchemaId = exports.EitherFromUnion = exports.EitherFromSelf = exports.Either = exports.DurationFromSelf = exports.DurationFromNanos = exports.DurationFromMillis = exports.Duration = exports.Defect = exports.DateTimeZonedFromSelf = exports.DateTimeZoned = exports.DateTimeUtcFromSelf = exports.DateTimeUtcFromNumber = exports.DateTimeUtcFromDate = exports.DateTimeUtc = exports.DateFromString = exports.DateFromSelfSchemaId = exports.DateFromSelf = exports.DateFromNumber = exports.Date = exports.DataFromSelf = exports.Data = exports.Config = exports.Class = exports.ChunkFromSelf = exports.Chunk = exports.Char = exports.CauseFromSelf = exports.Cause = exports.CapitalizedSchemaId = exports.Capitalized = exports.Capitalize = exports.BrandSchemaId = exports.BooleanFromUnknown = exports.BooleanFromString = exports.Boolean = exports.BigIntFromSelf = exports.BigIntFromNumber = exports.BigInt = exports.BigDecimalFromSelf = exports.BigDecimalFromNumber = exports.BigDecimal = exports.BetweenSchemaId = exports.BetweenDurationSchemaId = exports.BetweenDateSchemaId = exports.BetweenBigIntSchemaId = exports.BetweenBigDecimalSchemaId = exports.ArrayEnsure = exports.Array = exports.Any = void 0;
|
|
6
|
+
exports.ListFromSelf = exports.List = exports.LessThanSchemaId = exports.LessThanOrEqualToSchemaId = exports.LessThanOrEqualToDurationSchemaId = exports.LessThanOrEqualToDateSchemaId = exports.LessThanOrEqualToBigIntSchemaId = exports.LessThanOrEqualToBigDecimalSchemaId = exports.LessThanDurationSchemaId = exports.LessThanDateSchemaId = exports.LessThanBigIntSchemaId = exports.LessThanBigDecimalSchemaId = exports.LengthSchemaId = exports.JsonNumberSchemaId = exports.JsonNumber = exports.ItemsCountSchemaId = exports.IntSchemaId = exports.Int = exports.InstanceOfSchemaId = exports.IncludesSchemaId = exports.HashSetFromSelf = exports.HashSet = exports.HashMapFromSelf = exports.HashMap = exports.GreaterThanSchemaId = exports.GreaterThanOrEqualToSchemaId = exports.GreaterThanOrEqualToDurationSchemaId = exports.GreaterThanOrEqualToDateSchemaId = exports.GreaterThanOrEqualToBigIntSchemaId = exports.GreaterThanOrEqualToBigDecimalSchemaId = exports.GreaterThanDurationSchemaId = exports.GreaterThanDateSchemaId = exports.GreaterThanBigIntSchemaId = exports.GreaterThanBigDecimalSchemaId = exports.FromPropertySignature = exports.FiniteSchemaId = exports.Finite = exports.FiberIdFromSelf = exports.FiberId = exports.ExitFromSelf = exports.Exit = exports.Enums = exports.EndsWithSchemaId = exports.EitherFromUnion = exports.EitherFromSelf = exports.Either = exports.DurationFromSelf = exports.DurationFromNanos = exports.DurationFromMillis = exports.Duration = exports.Defect = exports.DateTimeZonedFromSelf = exports.DateTimeZoned = exports.DateTimeUtcFromSelf = exports.DateTimeUtcFromNumber = exports.DateTimeUtcFromDate = exports.DateTimeUtc = exports.DateFromString = exports.DateFromSelfSchemaId = exports.DateFromSelf = exports.DateFromNumber = exports.Date = exports.DataFromSelf = exports.Data = exports.Config = exports.Class = exports.ChunkFromSelf = exports.Chunk = exports.Char = exports.CauseFromSelf = exports.Cause = exports.CapitalizedSchemaId = exports.Capitalized = exports.Capitalize = exports.BrandSchemaId = exports.BooleanFromUnknown = exports.BooleanFromString = exports.Boolean = exports.BigIntFromSelf = exports.BigIntFromNumber = exports.BigInt = exports.BigDecimalFromSelf = exports.BigDecimalFromNumber = exports.BigDecimal = exports.BetweenSchemaId = exports.BetweenDurationSchemaId = exports.BetweenDateSchemaId = exports.BetweenBigIntSchemaId = exports.BetweenBigDecimalSchemaId = exports.ArrayFormatterIssue = exports.ArrayEnsure = exports.Array = exports.Any = void 0;
|
|
7
7
|
exports.Literal = Literal;
|
|
8
|
-
exports.
|
|
9
|
-
exports.StringFromUriComponent = exports.StringFromHex = exports.StringFromBase64Url = exports.StringFromBase64 = exports.String = exports.StartsWithSchemaId = exports.SortedSetFromSelf = exports.SortedSet = exports.SetFromSelf = exports.Set = exports.RefineSchemaId = exports.RedactedFromSelf = exports.Redacted = exports.Record = exports.ReadonlySetFromSelf = exports.ReadonlySet = exports.ReadonlyMapFromSelf = exports.ReadonlyMapFromRecord = exports.ReadonlyMap = exports.PropertySignatureTypeId = exports.PropertySignatureTransformation = exports.PropertySignatureDeclaration = exports.PositiveBigIntFromSelf = exports.PositiveBigInt = exports.PositiveBigDecimalSchemaId = exports.PositiveBigDecimalFromSelf = exports.Positive = exports.PatternSchemaId = exports.OptionFromUndefinedOr = exports.OptionFromSelf = exports.OptionFromNullishOr = exports.OptionFromNullOr = exports.OptionFromNonEmptyTrimmedString = exports.Option = exports.Object = exports.NumberFromString = exports.Number = exports.NullishOr = exports.NullOr = exports.Null = exports.Not = exports.NonPositiveBigIntFromSelf = exports.NonPositiveBigInt = exports.NonPositiveBigDecimalSchemaId = exports.NonPositiveBigDecimalFromSelf = exports.NonPositive = exports.NonNegativeInt = exports.NonNegativeBigIntFromSelf = exports.NonNegativeBigInt = exports.NonNegativeBigDecimalSchemaId = exports.NonNegativeBigDecimalFromSelf = exports.NonNegative = exports.NonNaNSchemaId = exports.NonNaN = exports.NonEmptyTrimmedString = exports.NonEmptyString = exports.NonEmptyChunkFromSelf = exports.NonEmptyChunk = exports.NonEmptyArrayEnsure = exports.NonEmptyArray = exports.Never = exports.NegativeBigIntFromSelf = exports.NegativeBigInt = exports.NegativeBigDecimalSchemaId = exports.NegativeBigDecimalFromSelf = exports.Negative = exports.MultipleOfSchemaId = exports.MinLengthSchemaId = exports.MinItemsSchemaId = exports.MaxLengthSchemaId = void 0;
|
|
8
|
+
exports.MapFromSelf = exports.MapFromRecord = exports.Map = exports.LowercasedSchemaId = exports.Lowercased = exports.Lowercase = void 0;
|
|
9
|
+
exports.StringFromUriComponent = exports.StringFromHex = exports.StringFromBase64Url = exports.StringFromBase64 = exports.String = exports.StartsWithSchemaId = exports.SortedSetFromSelf = exports.SortedSet = exports.SetFromSelf = exports.Set = exports.RefineSchemaId = exports.RedactedFromSelf = exports.Redacted = exports.Record = exports.ReadonlySetFromSelf = exports.ReadonlySet = exports.ReadonlyMapFromSelf = exports.ReadonlyMapFromRecord = exports.ReadonlyMap = exports.PropertySignatureTypeId = exports.PropertySignatureTransformation = exports.PropertySignatureDeclaration = exports.PropertyKey = exports.PositiveBigIntFromSelf = exports.PositiveBigInt = exports.PositiveBigDecimalSchemaId = exports.PositiveBigDecimalFromSelf = exports.Positive = exports.PatternSchemaId = exports.OptionFromUndefinedOr = exports.OptionFromSelf = exports.OptionFromNullishOr = exports.OptionFromNullOr = exports.OptionFromNonEmptyTrimmedString = exports.Option = exports.Object = exports.NumberFromString = exports.Number = exports.NullishOr = exports.NullOr = exports.Null = exports.Not = exports.NonPositiveBigIntFromSelf = exports.NonPositiveBigInt = exports.NonPositiveBigDecimalSchemaId = exports.NonPositiveBigDecimalFromSelf = exports.NonPositive = exports.NonNegativeInt = exports.NonNegativeBigIntFromSelf = exports.NonNegativeBigInt = exports.NonNegativeBigDecimalSchemaId = exports.NonNegativeBigDecimalFromSelf = exports.NonNegative = exports.NonNaNSchemaId = exports.NonNaN = exports.NonEmptyTrimmedString = exports.NonEmptyString = exports.NonEmptyChunkFromSelf = exports.NonEmptyChunk = exports.NonEmptyArrayEnsure = exports.NonEmptyArray = exports.Never = exports.NegativeBigIntFromSelf = exports.NegativeBigInt = exports.NegativeBigDecimalSchemaId = exports.NegativeBigDecimalFromSelf = exports.Negative = exports.MultipleOfSchemaId = exports.MinLengthSchemaId = exports.MinItemsSchemaId = exports.MaxLengthSchemaId = exports.MaxItemsSchemaId = void 0;
|
|
10
10
|
exports.Struct = Struct;
|
|
11
11
|
exports.TrimmedSchemaId = exports.Trimmed = exports.Trim = exports.ToPropertySignature = exports.TimeZoneOffsetFromSelf = exports.TimeZoneOffset = exports.TimeZoneNamedFromSelf = exports.TimeZoneNamed = exports.TimeZoneFromSelf = exports.TimeZone = exports.TemplateLiteralParser = exports.TemplateLiteral = exports.TaggedStruct = exports.TaggedRequest = exports.TaggedError = exports.TaggedClass = exports.SymbolFromSelf = exports.Symbol = void 0;
|
|
12
12
|
exports.Tuple = Tuple;
|
|
13
|
-
exports.
|
|
14
|
-
exports.UndefinedOr = exports.Undefined = exports.UncapitalizedSchemaId = exports.Uncapitalized = exports.Uncapitalize = exports.Uint8ArrayFromSelf = exports.Uint8ArrayFromHex = exports.Uint8ArrayFromBase64Url = void 0;
|
|
13
|
+
exports.Uint8 = exports.UUIDSchemaId = exports.UUID = exports.URLFromSelf = exports.URL = exports.ULIDSchemaId = exports.ULID = exports.TypeId = void 0;
|
|
14
|
+
exports.UndefinedOr = exports.Undefined = exports.UncapitalizedSchemaId = exports.Uncapitalized = exports.Uncapitalize = exports.Uint8ArrayFromSelf = exports.Uint8ArrayFromHex = exports.Uint8ArrayFromBase64Url = exports.Uint8ArrayFromBase64 = exports.Uint8Array = void 0;
|
|
15
15
|
exports.Union = Union;
|
|
16
16
|
exports.asWithResult = exports.asSerializableWithResult = exports.asSerializable = exports.asSchema = exports.annotations = exports.Void = exports.ValidDateSchemaId = exports.ValidDateFromSelf = exports.UppercasedSchemaId = exports.Uppercased = exports.Uppercase = exports.Unknown = exports.UniqueSymbolFromSelf = void 0;
|
|
17
17
|
Object.defineProperty(exports, "asserts", {
|
|
@@ -85,8 +85,8 @@ Object.defineProperty(exports, "is", {
|
|
|
85
85
|
return ParseResult.is;
|
|
86
86
|
}
|
|
87
87
|
});
|
|
88
|
-
exports.
|
|
89
|
-
exports.transformLiteral = exports.transform = exports.tag = exports.symbolWithResult = exports.symbolSerializable = exports.suspend = exports.successSchema = exports.startsWith = exports.split = exports.serializeSuccess = exports.serializeFailure = exports.serializeExit = exports.serialize = exports.serializableSchema = exports.requiredToOptional = exports.required = exports.rename = exports.propertySignature = exports.positiveBigInt = exports.positiveBigDecimal = exports.positive = exports.pluck = exports.pickLiteral = exports.pick = exports.pattern = exports.partialWith = exports.partial = exports.parseNumber = exports.parseJson = exports.optionalWith = exports.optionalToRequired = exports.optionalToOptional = exports.optionalElement = exports.optional = exports.omit = exports.nonPositiveBigInt = exports.nonPositiveBigDecimal = exports.nonPositive = exports.nonNegativeBigInt = exports.nonNegativeBigDecimal = exports.nonNegative = exports.nonNaN = exports.nonEmptyString = exports.negativeBigInt = exports.negativeBigDecimal = exports.negative = exports.mutable = exports.multipleOf = exports.minLength = exports.minItems = exports.maxLength = exports.maxItems = exports.makePropertySignature = exports.make = exports.lowercased = exports.lessThanOrEqualToDuration = exports.lessThanOrEqualToDate = exports.lessThanOrEqualToBigInt = exports.lessThanOrEqualToBigDecimal = exports.lessThanOrEqualTo = exports.lessThanDuration = exports.lessThanDate = exports.lessThanBigInt = exports.lessThanBigDecimal = void 0;
|
|
88
|
+
exports.keyof = exports.itemsCount = exports.isSchema = exports.isPropertySignature = void 0;
|
|
89
|
+
exports.transformLiteral = exports.transform = exports.tag = exports.symbolWithResult = exports.symbolSerializable = exports.suspend = exports.successSchema = exports.startsWith = exports.split = exports.serializeSuccess = exports.serializeFailure = exports.serializeExit = exports.serialize = exports.serializableSchema = exports.requiredToOptional = exports.required = exports.rename = exports.propertySignature = exports.positiveBigInt = exports.positiveBigDecimal = exports.positive = exports.pluck = exports.pickLiteral = exports.pick = exports.pattern = exports.partialWith = exports.partial = exports.parseNumber = exports.parseJson = exports.optionalWith = exports.optionalToRequired = exports.optionalToOptional = exports.optionalElement = exports.optional = exports.omit = exports.nonPositiveBigInt = exports.nonPositiveBigDecimal = exports.nonPositive = exports.nonNegativeBigInt = exports.nonNegativeBigDecimal = exports.nonNegative = exports.nonNaN = exports.nonEmptyString = exports.negativeBigInt = exports.negativeBigDecimal = exports.negative = exports.mutable = exports.multipleOf = exports.minLength = exports.minItems = exports.maxLength = exports.maxItems = exports.makePropertySignature = exports.make = exports.lowercased = exports.lessThanOrEqualToDuration = exports.lessThanOrEqualToDate = exports.lessThanOrEqualToBigInt = exports.lessThanOrEqualToBigDecimal = exports.lessThanOrEqualTo = exports.lessThanDuration = exports.lessThanDate = exports.lessThanBigInt = exports.lessThanBigDecimal = exports.lessThan = exports.length = void 0;
|
|
90
90
|
exports.transformLiterals = transformLiterals;
|
|
91
91
|
exports.validateEither = exports.validate = exports.validDate = exports.uppercased = exports.uncapitalized = exports.typeSchema = exports.trimmed = exports.transformOrFail = void 0;
|
|
92
92
|
Object.defineProperty(exports, "validateOption", {
|
|
@@ -2283,22 +2283,21 @@ const split = separator => transform(String$.annotations({
|
|
|
2283
2283
|
encode: array_.join(separator)
|
|
2284
2284
|
});
|
|
2285
2285
|
exports.split = split;
|
|
2286
|
-
const
|
|
2287
|
-
|
|
2288
|
-
[AST.
|
|
2289
|
-
|
|
2290
|
-
});
|
|
2291
|
-
const getParseJsonTransformation = options => transformOrFail(JsonString, Unknown, {
|
|
2286
|
+
const getErrorMessage = e => e instanceof Error ? e.message : String(e);
|
|
2287
|
+
const getParseJsonTransformation = options => transformOrFail(String$.annotations({
|
|
2288
|
+
[AST.DescriptionAnnotationId]: "a string to be decoded into JSON"
|
|
2289
|
+
}), Unknown, {
|
|
2292
2290
|
strict: true,
|
|
2293
2291
|
decode: (s, _, ast) => ParseResult.try({
|
|
2294
2292
|
try: () => JSON.parse(s, options?.reviver),
|
|
2295
|
-
catch: e => new ParseResult.Type(ast, s, e
|
|
2293
|
+
catch: e => new ParseResult.Type(ast, s, getErrorMessage(e))
|
|
2296
2294
|
}),
|
|
2297
2295
|
encode: (u, _, ast) => ParseResult.try({
|
|
2298
2296
|
try: () => JSON.stringify(u, options?.replacer, options?.space),
|
|
2299
|
-
catch: e => new ParseResult.Type(ast, u, e
|
|
2297
|
+
catch: e => new ParseResult.Type(ast, u, getErrorMessage(e))
|
|
2300
2298
|
})
|
|
2301
2299
|
}).annotations({
|
|
2300
|
+
title: "parseJson",
|
|
2302
2301
|
schemaId: AST.ParseJsonSchemaId
|
|
2303
2302
|
});
|
|
2304
2303
|
/**
|
|
@@ -2391,12 +2390,12 @@ class URLFromSelf extends /*#__PURE__*/instanceOf(URL, {
|
|
|
2391
2390
|
/** @ignore */
|
|
2392
2391
|
exports.URLFromSelf = URLFromSelf;
|
|
2393
2392
|
class URL$ extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
2394
|
-
description: "a string
|
|
2393
|
+
description: "a string to be decoded into a URL"
|
|
2395
2394
|
}), URLFromSelf, {
|
|
2396
2395
|
strict: true,
|
|
2397
|
-
decode: (
|
|
2398
|
-
try: () => new URL(
|
|
2399
|
-
catch:
|
|
2396
|
+
decode: (s, _, ast) => ParseResult.try({
|
|
2397
|
+
try: () => new URL(s),
|
|
2398
|
+
catch: e => new ParseResult.Type(ast, s, `Unable to decode ${JSON.stringify(s)} into a URL. ${getErrorMessage(e)}`)
|
|
2400
2399
|
}),
|
|
2401
2400
|
encode: url => ParseResult.succeed(url.toString())
|
|
2402
2401
|
}).annotations({
|
|
@@ -2653,7 +2652,7 @@ const clamp = (minimum, maximum) => self => transform(self, self.pipe(typeSchema
|
|
|
2653
2652
|
exports.clamp = clamp;
|
|
2654
2653
|
const parseNumber = self => transformOrFail(self, Number$, {
|
|
2655
2654
|
strict: false,
|
|
2656
|
-
decode: (s, _, ast) => ParseResult.fromOption(number_.parse(s), () => new ParseResult.Type(ast, s)),
|
|
2655
|
+
decode: (s, _, ast) => ParseResult.fromOption(number_.parse(s), () => new ParseResult.Type(ast, s, `Unable to decode ${JSON.stringify(s)} into a number`)),
|
|
2657
2656
|
encode: n => ParseResult.succeed(String(n))
|
|
2658
2657
|
});
|
|
2659
2658
|
/**
|
|
@@ -2668,7 +2667,7 @@ const parseNumber = self => transformOrFail(self, Number$, {
|
|
|
2668
2667
|
*/
|
|
2669
2668
|
exports.parseNumber = parseNumber;
|
|
2670
2669
|
class NumberFromString extends /*#__PURE__*/parseNumber(String$.annotations({
|
|
2671
|
-
description: "a string
|
|
2670
|
+
description: "a string to be decoded into a number"
|
|
2672
2671
|
})).annotations({
|
|
2673
2672
|
identifier: "NumberFromString"
|
|
2674
2673
|
}) {}
|
|
@@ -2770,18 +2769,37 @@ class Not extends /*#__PURE__*/transform( /*#__PURE__*/Boolean$.annotations({
|
|
|
2770
2769
|
decode: boolean_.not,
|
|
2771
2770
|
encode: boolean_.not
|
|
2772
2771
|
}) {}
|
|
2773
|
-
/** @ignore */
|
|
2774
2772
|
exports.Not = Not;
|
|
2775
|
-
|
|
2776
|
-
|
|
2773
|
+
const encodeSymbol = (sym, _, ast) => {
|
|
2774
|
+
const key = Symbol.keyFor(sym);
|
|
2775
|
+
return key === undefined ? ParseResult.fail(new ParseResult.Type(ast, sym, `Unable to encode a unique symbol ${String(sym)} into a string`)) : ParseResult.succeed(key);
|
|
2776
|
+
};
|
|
2777
|
+
const decodeSymbol = s => ParseResult.succeed(Symbol.for(s));
|
|
2778
|
+
/** @ignore */
|
|
2779
|
+
class Symbol$ extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
2780
|
+
description: "a string to be decoded into a globally shared symbol"
|
|
2777
2781
|
}), SymbolFromSelf, {
|
|
2778
2782
|
strict: false,
|
|
2779
|
-
decode:
|
|
2780
|
-
encode:
|
|
2783
|
+
decode: decodeSymbol,
|
|
2784
|
+
encode: encodeSymbol
|
|
2781
2785
|
}).annotations({
|
|
2782
|
-
identifier: "
|
|
2786
|
+
identifier: "Symbol"
|
|
2783
2787
|
}) {}
|
|
2784
2788
|
exports.Symbol = Symbol$;
|
|
2789
|
+
const SymbolStruct = /*#__PURE__*/TaggedStruct("symbol", {
|
|
2790
|
+
key: String$
|
|
2791
|
+
}).annotations({
|
|
2792
|
+
description: "an object to be decoded into a globally shared symbol"
|
|
2793
|
+
});
|
|
2794
|
+
const SymbolFromStruct = /*#__PURE__*/transformOrFail(SymbolStruct, SymbolFromSelf, {
|
|
2795
|
+
strict: true,
|
|
2796
|
+
decode: ({
|
|
2797
|
+
key
|
|
2798
|
+
}) => decodeSymbol(key),
|
|
2799
|
+
encode: (sym, _, ast) => ParseResult.map(encodeSymbol(sym, _, ast), key => SymbolStruct.make({
|
|
2800
|
+
key
|
|
2801
|
+
}))
|
|
2802
|
+
});
|
|
2785
2803
|
/**
|
|
2786
2804
|
* @category schema id
|
|
2787
2805
|
* @since 3.10.0
|
|
@@ -2931,13 +2949,13 @@ const clampBigInt = (minimum, maximum) => self => transform(self, self.pipe(type
|
|
|
2931
2949
|
/** @ignore */
|
|
2932
2950
|
exports.clampBigInt = clampBigInt;
|
|
2933
2951
|
class BigInt$ extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
2934
|
-
description: "a string
|
|
2952
|
+
description: "a string to be decoded into a bigint"
|
|
2935
2953
|
}), BigIntFromSelf, {
|
|
2936
2954
|
strict: true,
|
|
2937
|
-
decode: (s, _, ast) => ParseResult.fromOption(bigInt_.fromString(s), () => new ParseResult.Type(ast, s)),
|
|
2955
|
+
decode: (s, _, ast) => ParseResult.fromOption(bigInt_.fromString(s), () => new ParseResult.Type(ast, s, `Unable to decode ${JSON.stringify(s)} into a bigint`)),
|
|
2938
2956
|
encode: n => ParseResult.succeed(String(n))
|
|
2939
2957
|
}).annotations({
|
|
2940
|
-
identifier: "
|
|
2958
|
+
identifier: "BigInt"
|
|
2941
2959
|
}) {}
|
|
2942
2960
|
exports.BigInt = BigInt$;
|
|
2943
2961
|
/**
|
|
@@ -3005,13 +3023,13 @@ const NonNegativeBigInt = exports.NonNegativeBigInt = /*#__PURE__*/BigInt$.pipe(
|
|
|
3005
3023
|
* @since 3.10.0
|
|
3006
3024
|
*/
|
|
3007
3025
|
class BigIntFromNumber extends /*#__PURE__*/transformOrFail(Number$.annotations({
|
|
3008
|
-
description: "a number
|
|
3009
|
-
}), BigIntFromSelf, {
|
|
3026
|
+
description: "a number to be decoded into a bigint"
|
|
3027
|
+
}), BigIntFromSelf.pipe(betweenBigInt(BigInt(Number.MIN_SAFE_INTEGER), BigInt(Number.MAX_SAFE_INTEGER))), {
|
|
3010
3028
|
strict: true,
|
|
3011
|
-
decode: (n, _, ast) => ParseResult.fromOption(bigInt_.fromNumber(n), () => new ParseResult.Type(ast, n)),
|
|
3012
|
-
encode: (b, _, ast) => ParseResult.fromOption(bigInt_.toNumber(b), () => new ParseResult.Type(ast, b))
|
|
3029
|
+
decode: (n, _, ast) => ParseResult.fromOption(bigInt_.fromNumber(n), () => new ParseResult.Type(ast, n, `Unable to decode ${n} into a bigint`)),
|
|
3030
|
+
encode: (b, _, ast) => ParseResult.fromOption(bigInt_.toNumber(b), () => new ParseResult.Type(ast, b, `Unable to encode ${b}n into a number`))
|
|
3013
3031
|
}).annotations({
|
|
3014
|
-
identifier: "
|
|
3032
|
+
identifier: "BigIntFromNumber"
|
|
3015
3033
|
}) {}
|
|
3016
3034
|
exports.BigIntFromNumber = BigIntFromNumber;
|
|
3017
3035
|
const redactedArbitrary = value => fc => value(fc).map(redacted_.make);
|
|
@@ -3055,73 +3073,86 @@ exports.Redacted = Redacted;
|
|
|
3055
3073
|
class DurationFromSelf extends /*#__PURE__*/declare(duration_.isDuration, {
|
|
3056
3074
|
identifier: "DurationFromSelf",
|
|
3057
3075
|
pretty: () => String,
|
|
3058
|
-
arbitrary: () => fc => fc.oneof(fc.constant(duration_.infinity), fc.
|
|
3076
|
+
arbitrary: () => fc => fc.oneof(fc.constant(duration_.infinity), fc.bigInt({
|
|
3077
|
+
min: 0n
|
|
3078
|
+
}).map(_ => duration_.nanos(_)), fc.maxSafeNat().map(_ => duration_.millis(_))),
|
|
3059
3079
|
equivalence: () => duration_.Equivalence
|
|
3060
3080
|
}) {}
|
|
3061
3081
|
/**
|
|
3062
|
-
* A schema that transforms a `bigint`
|
|
3063
|
-
*
|
|
3082
|
+
* A schema that transforms a non negative `bigint` into a `Duration`. Treats
|
|
3083
|
+
* the value as the number of nanoseconds.
|
|
3064
3084
|
*
|
|
3065
3085
|
* @category Duration transformations
|
|
3066
3086
|
* @since 3.10.0
|
|
3067
3087
|
*/
|
|
3068
3088
|
exports.DurationFromSelf = DurationFromSelf;
|
|
3069
|
-
class DurationFromNanos extends /*#__PURE__*/transformOrFail(
|
|
3070
|
-
description: "a bigint
|
|
3071
|
-
}), DurationFromSelf, {
|
|
3089
|
+
class DurationFromNanos extends /*#__PURE__*/transformOrFail(NonNegativeBigIntFromSelf.annotations({
|
|
3090
|
+
description: "a bigint to be decoded into a Duration"
|
|
3091
|
+
}), DurationFromSelf.pipe(filter(duration => duration_.isFinite(duration), {
|
|
3092
|
+
description: "a finite duration"
|
|
3093
|
+
})), {
|
|
3072
3094
|
strict: true,
|
|
3073
3095
|
decode: nanos => ParseResult.succeed(duration_.nanos(nanos)),
|
|
3074
3096
|
encode: (duration, _, ast) => option_.match(duration_.toNanos(duration), {
|
|
3075
|
-
onNone: () => ParseResult.fail(new ParseResult.Type(ast, duration)),
|
|
3076
|
-
onSome:
|
|
3097
|
+
onNone: () => ParseResult.fail(new ParseResult.Type(ast, duration, `Unable to encode ${duration} into a bigint`)),
|
|
3098
|
+
onSome: nanos => ParseResult.succeed(nanos)
|
|
3077
3099
|
})
|
|
3078
3100
|
}).annotations({
|
|
3079
3101
|
identifier: "DurationFromNanos"
|
|
3080
3102
|
}) {}
|
|
3081
3103
|
/**
|
|
3082
|
-
* A
|
|
3083
|
-
*
|
|
3104
|
+
* A non-negative integer. +Infinity is excluded.
|
|
3105
|
+
*
|
|
3106
|
+
* @category number constructors
|
|
3107
|
+
* @since 3.11.10
|
|
3108
|
+
*/
|
|
3109
|
+
exports.DurationFromNanos = DurationFromNanos;
|
|
3110
|
+
const NonNegativeInt = exports.NonNegativeInt = /*#__PURE__*/NonNegative.pipe(int()).annotations({
|
|
3111
|
+
identifier: "NonNegativeInt"
|
|
3112
|
+
});
|
|
3113
|
+
/**
|
|
3114
|
+
* A schema that transforms a (possibly Infinite) non negative number into a
|
|
3115
|
+
* `Duration`. Treats the value as the number of milliseconds.
|
|
3084
3116
|
*
|
|
3085
3117
|
* @category Duration transformations
|
|
3086
3118
|
* @since 3.10.0
|
|
3087
3119
|
*/
|
|
3088
|
-
|
|
3089
|
-
|
|
3090
|
-
description: "a number that will be parsed into a Duration"
|
|
3120
|
+
class DurationFromMillis extends /*#__PURE__*/transform(NonNegative.annotations({
|
|
3121
|
+
description: "a non-negative number to be decoded into a Duration"
|
|
3091
3122
|
}), DurationFromSelf, {
|
|
3092
3123
|
strict: true,
|
|
3093
3124
|
decode: ms => duration_.millis(ms),
|
|
3094
|
-
encode:
|
|
3125
|
+
encode: duration => duration_.toMillis(duration)
|
|
3095
3126
|
}).annotations({
|
|
3096
3127
|
identifier: "DurationFromMillis"
|
|
3097
3128
|
}) {}
|
|
3098
|
-
/**
|
|
3099
|
-
* @category number constructors
|
|
3100
|
-
* @since 3.11.10
|
|
3101
|
-
*/
|
|
3102
3129
|
exports.DurationFromMillis = DurationFromMillis;
|
|
3103
|
-
const
|
|
3104
|
-
identifier: "NonNegativeInt"
|
|
3105
|
-
});
|
|
3106
|
-
const HRTime = /*#__PURE__*/Tuple(element(NonNegativeInt).annotations({
|
|
3130
|
+
const FiniteHRTime = /*#__PURE__*/Tuple(element(NonNegativeInt).annotations({
|
|
3107
3131
|
title: "seconds"
|
|
3108
3132
|
}), element(NonNegativeInt).annotations({
|
|
3109
3133
|
title: "nanos"
|
|
3110
3134
|
})).annotations({
|
|
3111
|
-
identifier: "
|
|
3135
|
+
identifier: "FiniteHRTime"
|
|
3136
|
+
});
|
|
3137
|
+
const InfiniteHRTime = /*#__PURE__*/Tuple(Literal(-1), Literal(0)).annotations({
|
|
3138
|
+
identifier: "InfiniteHRTime"
|
|
3139
|
+
});
|
|
3140
|
+
const HRTime = /*#__PURE__*/Union(FiniteHRTime, InfiniteHRTime).annotations({
|
|
3141
|
+
identifier: "HRTime",
|
|
3142
|
+
description: "a tuple of seconds and nanos to be decoded into a Duration"
|
|
3112
3143
|
});
|
|
3113
3144
|
/**
|
|
3114
3145
|
* A schema that transforms a `[number, number]` tuple into a `Duration`.
|
|
3115
3146
|
*
|
|
3147
|
+
* Infinite durations are encoded as `[-1, 0]`.
|
|
3148
|
+
*
|
|
3116
3149
|
* @category Duration transformations
|
|
3117
3150
|
* @since 3.10.0
|
|
3118
3151
|
*/
|
|
3119
|
-
class Duration extends /*#__PURE__*/transform(HRTime
|
|
3120
|
-
description: "a tuple of seconds and nanos that will be parsed into a Duration"
|
|
3121
|
-
}), DurationFromSelf, {
|
|
3152
|
+
class Duration extends /*#__PURE__*/transform(HRTime, DurationFromSelf, {
|
|
3122
3153
|
strict: true,
|
|
3123
|
-
decode: ([seconds, nanos]) => duration_.nanos(BigInt(seconds) * BigInt(1e9) + BigInt(nanos)),
|
|
3124
|
-
encode: duration => duration_.toHrTime(duration)
|
|
3154
|
+
decode: ([seconds, nanos]) => seconds === -1 ? duration_.infinity : duration_.nanos(BigInt(seconds) * BigInt(1e9) + BigInt(nanos)),
|
|
3155
|
+
encode: duration => duration.value._tag === "Infinity" ? [-1, 0] : duration_.toHrTime(duration)
|
|
3125
3156
|
}).annotations({
|
|
3126
3157
|
identifier: "Duration"
|
|
3127
3158
|
}) {}
|
|
@@ -3259,7 +3290,7 @@ const Uint8 = exports.Uint8 = /*#__PURE__*/Number$.pipe( /*#__PURE__*/between(0,
|
|
|
3259
3290
|
description: "a 8-bit unsigned integer"
|
|
3260
3291
|
}));
|
|
3261
3292
|
const Uint8Array$ = exports.Uint8Array = /*#__PURE__*/transform(Array$(Uint8).annotations({
|
|
3262
|
-
description: "an array of 8-bit unsigned integers
|
|
3293
|
+
description: "an array of 8-bit unsigned integers to be decoded into a Uint8Array"
|
|
3263
3294
|
}), Uint8ArrayFromSelf, {
|
|
3264
3295
|
strict: true,
|
|
3265
3296
|
decode: numbers => Uint8Array.from(numbers),
|
|
@@ -3268,7 +3299,7 @@ const Uint8Array$ = exports.Uint8Array = /*#__PURE__*/transform(Array$(Uint8).an
|
|
|
3268
3299
|
identifier: "Uint8Array"
|
|
3269
3300
|
});
|
|
3270
3301
|
const makeUint8ArrayTransformation = (id, decode, encode) => transformOrFail(String$.annotations({
|
|
3271
|
-
description: "a string
|
|
3302
|
+
description: "a string to be decoded into a Uint8Array"
|
|
3272
3303
|
}), Uint8ArrayFromSelf, {
|
|
3273
3304
|
strict: true,
|
|
3274
3305
|
decode: (s, _, ast) => either_.mapLeft(decode(s), decodeException => new ParseResult.Type(ast, s, decodeException.message)),
|
|
@@ -3393,16 +3424,22 @@ const MaxItemsSchemaId = exports.MaxItemsSchemaId = schemaId_.MaxItemsSchemaId;
|
|
|
3393
3424
|
* @category ReadonlyArray filters
|
|
3394
3425
|
* @since 3.10.0
|
|
3395
3426
|
*/
|
|
3396
|
-
const maxItems = (n, annotations) => self =>
|
|
3397
|
-
|
|
3398
|
-
|
|
3399
|
-
|
|
3400
|
-
|
|
3401
|
-
|
|
3402
|
-
|
|
3403
|
-
|
|
3404
|
-
|
|
3405
|
-
|
|
3427
|
+
const maxItems = (n, annotations) => self => {
|
|
3428
|
+
const maxItems = Math.floor(n);
|
|
3429
|
+
if (maxItems < 1) {
|
|
3430
|
+
throw new Error(errors_.getInvalidArgumentErrorMessage(`Expected an integer greater than or equal to 1, actual ${n}`));
|
|
3431
|
+
}
|
|
3432
|
+
return self.pipe(filter(a => a.length <= maxItems, {
|
|
3433
|
+
schemaId: MaxItemsSchemaId,
|
|
3434
|
+
title: `maxItems(${maxItems})`,
|
|
3435
|
+
description: `an array of at most ${maxItems} item(s)`,
|
|
3436
|
+
jsonSchema: {
|
|
3437
|
+
maxItems
|
|
3438
|
+
},
|
|
3439
|
+
[AST.StableFilterAnnotationId]: true,
|
|
3440
|
+
...annotations
|
|
3441
|
+
}));
|
|
3442
|
+
};
|
|
3406
3443
|
/**
|
|
3407
3444
|
* @category schema id
|
|
3408
3445
|
* @since 3.10.0
|
|
@@ -3413,17 +3450,23 @@ const ItemsCountSchemaId = exports.ItemsCountSchemaId = schemaId_.ItemsCountSche
|
|
|
3413
3450
|
* @category ReadonlyArray filters
|
|
3414
3451
|
* @since 3.10.0
|
|
3415
3452
|
*/
|
|
3416
|
-
const itemsCount = (n, annotations) => self =>
|
|
3417
|
-
|
|
3418
|
-
|
|
3419
|
-
|
|
3420
|
-
|
|
3421
|
-
|
|
3422
|
-
|
|
3423
|
-
|
|
3424
|
-
|
|
3425
|
-
|
|
3426
|
-
|
|
3453
|
+
const itemsCount = (n, annotations) => self => {
|
|
3454
|
+
const itemsCount = Math.floor(n);
|
|
3455
|
+
if (itemsCount < 1) {
|
|
3456
|
+
throw new Error(errors_.getInvalidArgumentErrorMessage(`Expected an integer greater than or equal to 1, actual ${n}`));
|
|
3457
|
+
}
|
|
3458
|
+
return self.pipe(filter(a => a.length === itemsCount, {
|
|
3459
|
+
schemaId: ItemsCountSchemaId,
|
|
3460
|
+
title: `itemsCount(${itemsCount})`,
|
|
3461
|
+
description: `an array of exactly ${itemsCount} item(s)`,
|
|
3462
|
+
jsonSchema: {
|
|
3463
|
+
minItems: itemsCount,
|
|
3464
|
+
maxItems: itemsCount
|
|
3465
|
+
},
|
|
3466
|
+
[AST.StableFilterAnnotationId]: true,
|
|
3467
|
+
...annotations
|
|
3468
|
+
}));
|
|
3469
|
+
};
|
|
3427
3470
|
/**
|
|
3428
3471
|
* @category ReadonlyArray transformations
|
|
3429
3472
|
* @since 3.10.0
|
|
@@ -3468,7 +3511,7 @@ const headNonEmpty = self => transform(self, getNumberIndexedAccess(typeSchema(s
|
|
|
3468
3511
|
exports.headNonEmpty = headNonEmpty;
|
|
3469
3512
|
const headOrElse = exports.headOrElse = /*#__PURE__*/(0, _Function.dual)(args => isSchema(args[0]), (self, fallback) => transformOrFail(self, getNumberIndexedAccess(typeSchema(self)), {
|
|
3470
3513
|
strict: true,
|
|
3471
|
-
decode: (as, _, ast) => as.length > 0 ? ParseResult.succeed(as[0]) : fallback ? ParseResult.succeed(fallback()) : ParseResult.fail(new ParseResult.Type(ast, as)),
|
|
3514
|
+
decode: (as, _, ast) => as.length > 0 ? ParseResult.succeed(as[0]) : fallback ? ParseResult.succeed(fallback()) : ParseResult.fail(new ParseResult.Type(ast, as, "Unable to retrieve the first element of an empty array")),
|
|
3472
3515
|
encode: a => ParseResult.succeed(array_.of(a))
|
|
3473
3516
|
}));
|
|
3474
3517
|
/**
|
|
@@ -3642,7 +3685,7 @@ class ValidDateFromSelf extends /*#__PURE__*/DateFromSelf.pipe( /*#__PURE__*/val
|
|
|
3642
3685
|
*/
|
|
3643
3686
|
exports.ValidDateFromSelf = ValidDateFromSelf;
|
|
3644
3687
|
class DateFromString extends /*#__PURE__*/transform(String$.annotations({
|
|
3645
|
-
description: "a string
|
|
3688
|
+
description: "a string to be decoded into a Date"
|
|
3646
3689
|
}), DateFromSelf, {
|
|
3647
3690
|
strict: true,
|
|
3648
3691
|
decode: s => new Date(s),
|
|
@@ -3667,7 +3710,7 @@ exports.Date = Date$;
|
|
|
3667
3710
|
* @since 3.10.0
|
|
3668
3711
|
*/
|
|
3669
3712
|
class DateFromNumber extends /*#__PURE__*/transform(Number$.annotations({
|
|
3670
|
-
description: "a number
|
|
3713
|
+
description: "a number to be decoded into a Date"
|
|
3671
3714
|
}), DateFromSelf, {
|
|
3672
3715
|
strict: true,
|
|
3673
3716
|
decode: n => new Date(n),
|
|
@@ -3686,13 +3729,15 @@ class DateTimeUtcFromSelf extends /*#__PURE__*/declare(u => dateTime.isDateTime(
|
|
|
3686
3729
|
identifier: "DateTimeUtcFromSelf",
|
|
3687
3730
|
description: "a DateTime.Utc instance",
|
|
3688
3731
|
pretty: () => dateTime => dateTime.toString(),
|
|
3689
|
-
arbitrary: () => fc => fc.date(
|
|
3732
|
+
arbitrary: () => fc => fc.date({
|
|
3733
|
+
noInvalidDate: true
|
|
3734
|
+
}).map(date => dateTime.unsafeFromDate(date)),
|
|
3690
3735
|
equivalence: () => dateTime.Equivalence
|
|
3691
3736
|
}) {}
|
|
3692
3737
|
exports.DateTimeUtcFromSelf = DateTimeUtcFromSelf;
|
|
3693
|
-
const
|
|
3738
|
+
const decodeDateTimeUtc = (input, _, ast) => ParseResult.try({
|
|
3694
3739
|
try: () => dateTime.unsafeMake(input),
|
|
3695
|
-
catch: () => new ParseResult.Type(ast, input)
|
|
3740
|
+
catch: () => new ParseResult.Type(ast, input, `Unable to decode ${util_.formatUnknown(input)} into a DateTime.Utc`)
|
|
3696
3741
|
});
|
|
3697
3742
|
/**
|
|
3698
3743
|
* Defines a schema that attempts to convert a `number` to a `DateTime.Utc` instance using the `DateTime.unsafeMake` constructor.
|
|
@@ -3701,10 +3746,10 @@ const decodeDateTime = (input, _, ast) => ParseResult.try({
|
|
|
3701
3746
|
* @since 3.10.0
|
|
3702
3747
|
*/
|
|
3703
3748
|
class DateTimeUtcFromNumber extends /*#__PURE__*/transformOrFail(Number$.annotations({
|
|
3704
|
-
description: "a number
|
|
3749
|
+
description: "a number to be decoded into a DateTime.Utc"
|
|
3705
3750
|
}), DateTimeUtcFromSelf, {
|
|
3706
3751
|
strict: true,
|
|
3707
|
-
decode:
|
|
3752
|
+
decode: decodeDateTimeUtc,
|
|
3708
3753
|
encode: dt => ParseResult.succeed(dateTime.toEpochMillis(dt))
|
|
3709
3754
|
}).annotations({
|
|
3710
3755
|
identifier: "DateTimeUtcFromNumber"
|
|
@@ -3717,10 +3762,10 @@ class DateTimeUtcFromNumber extends /*#__PURE__*/transformOrFail(Number$.annotat
|
|
|
3717
3762
|
*/
|
|
3718
3763
|
exports.DateTimeUtcFromNumber = DateTimeUtcFromNumber;
|
|
3719
3764
|
class DateTimeUtcFromDate extends /*#__PURE__*/transformOrFail(DateFromSelf.annotations({
|
|
3720
|
-
description: "a Date
|
|
3765
|
+
description: "a Date to be decoded into a DateTime.Utc"
|
|
3721
3766
|
}), DateTimeUtcFromSelf, {
|
|
3722
3767
|
strict: true,
|
|
3723
|
-
decode:
|
|
3768
|
+
decode: decodeDateTimeUtc,
|
|
3724
3769
|
encode: dt => ParseResult.succeed(dateTime.toDateUtc(dt))
|
|
3725
3770
|
}).annotations({
|
|
3726
3771
|
identifier: "DateTimeUtcFromDate"
|
|
@@ -3733,10 +3778,10 @@ class DateTimeUtcFromDate extends /*#__PURE__*/transformOrFail(DateFromSelf.anno
|
|
|
3733
3778
|
*/
|
|
3734
3779
|
exports.DateTimeUtcFromDate = DateTimeUtcFromDate;
|
|
3735
3780
|
class DateTimeUtc extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
3736
|
-
description: "a string
|
|
3781
|
+
description: "a string to be decoded into a DateTime.Utc"
|
|
3737
3782
|
}), DateTimeUtcFromSelf, {
|
|
3738
3783
|
strict: true,
|
|
3739
|
-
decode:
|
|
3784
|
+
decode: decodeDateTimeUtc,
|
|
3740
3785
|
encode: dt => ParseResult.succeed(dateTime.formatIso(dt))
|
|
3741
3786
|
}).annotations({
|
|
3742
3787
|
identifier: "DateTimeUtc"
|
|
@@ -3744,7 +3789,7 @@ class DateTimeUtc extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
|
3744
3789
|
exports.DateTimeUtc = DateTimeUtc;
|
|
3745
3790
|
const timeZoneOffsetArbitrary = () => fc => fc.integer({
|
|
3746
3791
|
min: -12 * 60 * 60 * 1000,
|
|
3747
|
-
max:
|
|
3792
|
+
max: 14 * 60 * 60 * 1000
|
|
3748
3793
|
}).map(dateTime.zoneMakeOffset);
|
|
3749
3794
|
/**
|
|
3750
3795
|
* Describes a schema that represents a `TimeZone.Offset` instance.
|
|
@@ -3766,7 +3811,7 @@ class TimeZoneOffsetFromSelf extends /*#__PURE__*/declare(dateTime.isTimeZoneOff
|
|
|
3766
3811
|
*/
|
|
3767
3812
|
exports.TimeZoneOffsetFromSelf = TimeZoneOffsetFromSelf;
|
|
3768
3813
|
class TimeZoneOffset extends /*#__PURE__*/transform(Number$.annotations({
|
|
3769
|
-
description: "a number
|
|
3814
|
+
description: "a number to be decoded into a TimeZone.Offset"
|
|
3770
3815
|
}), TimeZoneOffsetFromSelf, {
|
|
3771
3816
|
strict: true,
|
|
3772
3817
|
decode: dateTime.zoneMakeOffset,
|
|
@@ -3796,12 +3841,12 @@ class TimeZoneNamedFromSelf extends /*#__PURE__*/declare(dateTime.isTimeZoneName
|
|
|
3796
3841
|
*/
|
|
3797
3842
|
exports.TimeZoneNamedFromSelf = TimeZoneNamedFromSelf;
|
|
3798
3843
|
class TimeZoneNamed extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
3799
|
-
description: "a string
|
|
3844
|
+
description: "a string to be decoded into a TimeZone.Named"
|
|
3800
3845
|
}), TimeZoneNamedFromSelf, {
|
|
3801
3846
|
strict: true,
|
|
3802
3847
|
decode: (s, _, ast) => ParseResult.try({
|
|
3803
3848
|
try: () => dateTime.zoneUnsafeMakeNamed(s),
|
|
3804
|
-
catch: () => new ParseResult.Type(ast, s)
|
|
3849
|
+
catch: () => new ParseResult.Type(ast, s, `Unable to decode ${JSON.stringify(s)} into a TimeZone.Named`)
|
|
3805
3850
|
}),
|
|
3806
3851
|
encode: tz => ParseResult.succeed(tz.id)
|
|
3807
3852
|
}).annotations({
|
|
@@ -3812,19 +3857,20 @@ class TimeZoneNamed extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
|
3812
3857
|
* @since 3.10.0
|
|
3813
3858
|
*/
|
|
3814
3859
|
exports.TimeZoneNamed = TimeZoneNamed;
|
|
3815
|
-
|
|
3860
|
+
class TimeZoneFromSelf extends /*#__PURE__*/Union(TimeZoneOffsetFromSelf, TimeZoneNamedFromSelf) {}
|
|
3816
3861
|
/**
|
|
3817
3862
|
* Defines a schema that attempts to convert a `string` to a `TimeZone` using the `DateTime.zoneFromString` constructor.
|
|
3818
3863
|
*
|
|
3819
3864
|
* @category TimeZone transformations
|
|
3820
3865
|
* @since 3.10.0
|
|
3821
3866
|
*/
|
|
3867
|
+
exports.TimeZoneFromSelf = TimeZoneFromSelf;
|
|
3822
3868
|
class TimeZone extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
3823
|
-
description: "a string
|
|
3869
|
+
description: "a string to be decoded into a TimeZone"
|
|
3824
3870
|
}), TimeZoneFromSelf, {
|
|
3825
3871
|
strict: true,
|
|
3826
3872
|
decode: (s, _, ast) => option_.match(dateTime.zoneFromString(s), {
|
|
3827
|
-
onNone: () => ParseResult.fail(new ParseResult.Type(ast, s)),
|
|
3873
|
+
onNone: () => ParseResult.fail(new ParseResult.Type(ast, s, `Unable to decode ${JSON.stringify(s)} into a TimeZone`)),
|
|
3828
3874
|
onSome: ParseResult.succeed
|
|
3829
3875
|
}),
|
|
3830
3876
|
encode: tz => ParseResult.succeed(dateTime.zoneToString(tz))
|
|
@@ -3843,9 +3889,13 @@ class DateTimeZonedFromSelf extends /*#__PURE__*/declare(u => dateTime.isDateTim
|
|
|
3843
3889
|
identifier: "DateTimeZonedFromSelf",
|
|
3844
3890
|
description: "a DateTime.Zoned instance",
|
|
3845
3891
|
pretty: () => dateTime => dateTime.toString(),
|
|
3846
|
-
arbitrary: () => fc => fc.
|
|
3892
|
+
arbitrary: () => fc => fc.tuple(fc.integer({
|
|
3893
|
+
// time zone db supports +/- 1000 years or so
|
|
3894
|
+
min: -31536000000000,
|
|
3895
|
+
max: 31536000000000
|
|
3896
|
+
}), timeZoneArbitrary(fc)).map(([millis, timeZone]) => dateTime.unsafeMakeZoned(millis, {
|
|
3847
3897
|
timeZone
|
|
3848
|
-
}))
|
|
3898
|
+
})),
|
|
3849
3899
|
equivalence: () => dateTime.Equivalence
|
|
3850
3900
|
}) {}
|
|
3851
3901
|
/**
|
|
@@ -3856,11 +3906,11 @@ class DateTimeZonedFromSelf extends /*#__PURE__*/declare(u => dateTime.isDateTim
|
|
|
3856
3906
|
*/
|
|
3857
3907
|
exports.DateTimeZonedFromSelf = DateTimeZonedFromSelf;
|
|
3858
3908
|
class DateTimeZoned extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
3859
|
-
description: "a string
|
|
3909
|
+
description: "a string to be decoded into a DateTime.Zoned"
|
|
3860
3910
|
}), DateTimeZonedFromSelf, {
|
|
3861
3911
|
strict: true,
|
|
3862
3912
|
decode: (s, _, ast) => option_.match(dateTime.makeZonedFromString(s), {
|
|
3863
|
-
onNone: () => ParseResult.fail(new ParseResult.Type(ast, s)),
|
|
3913
|
+
onNone: () => ParseResult.fail(new ParseResult.Type(ast, s, `Unable to decode ${JSON.stringify(s)} into a DateTime.Zoned`)),
|
|
3864
3914
|
onSome: ParseResult.succeed
|
|
3865
3915
|
}),
|
|
3866
3916
|
encode: dt => ParseResult.succeed(dateTime.formatIsoZoned(dt))
|
|
@@ -4207,7 +4257,7 @@ const ReadonlyMapFromRecord = ({
|
|
|
4207
4257
|
key: encodedBoundSchema(key),
|
|
4208
4258
|
value
|
|
4209
4259
|
}).annotations({
|
|
4210
|
-
description: "a record
|
|
4260
|
+
description: "a record to be decoded into a ReadonlyMap"
|
|
4211
4261
|
}), ReadonlyMapFromSelf({
|
|
4212
4262
|
key,
|
|
4213
4263
|
value: typeSchema(value)
|
|
@@ -4228,7 +4278,7 @@ const MapFromRecord = ({
|
|
|
4228
4278
|
key: encodedBoundSchema(key),
|
|
4229
4279
|
value
|
|
4230
4280
|
}).annotations({
|
|
4231
|
-
description: "a record
|
|
4281
|
+
description: "a record to be decoded into a Map"
|
|
4232
4282
|
}), MapFromSelf({
|
|
4233
4283
|
key,
|
|
4234
4284
|
value: typeSchema(value)
|
|
@@ -4312,11 +4362,11 @@ class BigDecimalFromSelf extends /*#__PURE__*/declare(bigDecimal_.isBigDecimal,
|
|
|
4312
4362
|
*/
|
|
4313
4363
|
exports.BigDecimalFromSelf = BigDecimalFromSelf;
|
|
4314
4364
|
class BigDecimal extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
4315
|
-
description: "a string
|
|
4365
|
+
description: "a string to be decoded into a BigDecimal"
|
|
4316
4366
|
}), BigDecimalFromSelf, {
|
|
4317
4367
|
strict: true,
|
|
4318
|
-
decode: (
|
|
4319
|
-
onNone: () => ParseResult.fail(new ParseResult.Type(ast,
|
|
4368
|
+
decode: (s, _, ast) => bigDecimal_.fromString(s).pipe(option_.match({
|
|
4369
|
+
onNone: () => ParseResult.fail(new ParseResult.Type(ast, s, `Unable to decode ${JSON.stringify(s)} into a BigDecimal`)),
|
|
4320
4370
|
onSome: val => ParseResult.succeed(bigDecimal_.normalize(val))
|
|
4321
4371
|
})),
|
|
4322
4372
|
encode: val => ParseResult.succeed(bigDecimal_.format(bigDecimal_.normalize(val)))
|
|
@@ -4331,12 +4381,12 @@ class BigDecimal extends /*#__PURE__*/transformOrFail(String$.annotations({
|
|
|
4331
4381
|
* @since 3.10.0
|
|
4332
4382
|
*/
|
|
4333
4383
|
exports.BigDecimal = BigDecimal;
|
|
4334
|
-
class BigDecimalFromNumber extends /*#__PURE__*/
|
|
4335
|
-
description: "a number
|
|
4384
|
+
class BigDecimalFromNumber extends /*#__PURE__*/transform(Number$.annotations({
|
|
4385
|
+
description: "a number to be decoded into a BigDecimal"
|
|
4336
4386
|
}), BigDecimalFromSelf, {
|
|
4337
4387
|
strict: true,
|
|
4338
|
-
decode:
|
|
4339
|
-
encode:
|
|
4388
|
+
decode: bigDecimal_.unsafeFromNumber,
|
|
4389
|
+
encode: bigDecimal_.unsafeToNumber
|
|
4340
4390
|
}).annotations({
|
|
4341
4391
|
identifier: "BigDecimalFromNumber"
|
|
4342
4392
|
}) {}
|
|
@@ -5893,4 +5943,28 @@ const go = (ast, path) => {
|
|
|
5893
5943
|
}
|
|
5894
5944
|
}
|
|
5895
5945
|
};
|
|
5946
|
+
/** @ignore */
|
|
5947
|
+
class PropertyKey$ extends /*#__PURE__*/Union(String$, Number$, SymbolFromStruct).annotations({
|
|
5948
|
+
identifier: "PropertyKey"
|
|
5949
|
+
}) {}
|
|
5950
|
+
exports.PropertyKey = PropertyKey$;
|
|
5951
|
+
/**
|
|
5952
|
+
* @category ArrayFormatter
|
|
5953
|
+
* @since 3.12.5
|
|
5954
|
+
*/
|
|
5955
|
+
class ArrayFormatterIssue extends /*#__PURE__*/Struct({
|
|
5956
|
+
_tag: propertySignature(Literal("Pointer", "Unexpected", "Missing", "Composite", "Refinement", "Transformation", "Type", "Forbidden")).annotations({
|
|
5957
|
+
description: "The tag identifying the type of parse issue"
|
|
5958
|
+
}),
|
|
5959
|
+
path: propertySignature(Array$(PropertyKey$)).annotations({
|
|
5960
|
+
description: "The path to the property where the issue occurred"
|
|
5961
|
+
}),
|
|
5962
|
+
message: propertySignature(String$).annotations({
|
|
5963
|
+
description: "A descriptive message explaining the issue"
|
|
5964
|
+
})
|
|
5965
|
+
}).annotations({
|
|
5966
|
+
identifier: "ArrayFormatterIssue",
|
|
5967
|
+
description: "Represents an issue returned by the ArrayFormatter formatter"
|
|
5968
|
+
}) {}
|
|
5969
|
+
exports.ArrayFormatterIssue = ArrayFormatterIssue;
|
|
5896
5970
|
//# sourceMappingURL=Schema.js.map
|