effect 3.10.18 → 3.11.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/Array.js +206 -0
- package/dist/cjs/Array.js.map +1 -1
- package/dist/cjs/BigDecimal.js +181 -24
- package/dist/cjs/BigDecimal.js.map +1 -1
- package/dist/cjs/BigInt.js +54 -0
- package/dist/cjs/BigInt.js.map +1 -1
- package/dist/cjs/Boolean.js +24 -0
- package/dist/cjs/Boolean.js.map +1 -1
- package/dist/cjs/Brand.js +4 -0
- package/dist/cjs/Brand.js.map +1 -1
- package/dist/cjs/Channel.js +44 -4
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/Chunk.js +8 -0
- package/dist/cjs/Chunk.js.map +1 -1
- package/dist/cjs/Config.js +10 -1
- package/dist/cjs/Config.js.map +1 -1
- package/dist/cjs/Context.js +50 -1
- package/dist/cjs/Context.js.map +1 -1
- package/dist/cjs/Cron.js +81 -67
- package/dist/cjs/Cron.js.map +1 -1
- package/dist/cjs/Data.js +14 -0
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/DateTime.js +178 -664
- package/dist/cjs/DateTime.js.map +1 -1
- package/dist/cjs/Duration.js +2 -0
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +296 -4
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +38 -2
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/FiberHandle.js +6 -0
- package/dist/cjs/FiberHandle.js.map +1 -1
- package/dist/cjs/FiberMap.js +6 -0
- package/dist/cjs/FiberMap.js.map +1 -1
- package/dist/cjs/FiberSet.js +6 -0
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/Function.js +34 -0
- package/dist/cjs/Function.js.map +1 -1
- package/dist/cjs/GlobalValue.js +2 -0
- package/dist/cjs/GlobalValue.js.map +1 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/Inspectable.js +8 -4
- package/dist/cjs/Inspectable.js.map +1 -1
- package/dist/cjs/Iterable.js +18 -0
- package/dist/cjs/Iterable.js.map +1 -1
- package/dist/cjs/JSONSchema.js.map +1 -1
- package/dist/cjs/List.js +4 -0
- package/dist/cjs/List.js.map +1 -1
- package/dist/cjs/Logger.js +26 -0
- package/dist/cjs/Logger.js.map +1 -1
- package/dist/cjs/Mailbox.js +2 -0
- package/dist/cjs/Mailbox.js.map +1 -1
- package/dist/cjs/ManagedRuntime.js +2 -0
- package/dist/cjs/ManagedRuntime.js.map +1 -1
- package/dist/cjs/Metric.js +10 -0
- package/dist/cjs/Metric.js.map +1 -1
- package/dist/cjs/Micro.js +1104 -1069
- package/dist/cjs/Micro.js.map +1 -1
- package/dist/cjs/Number.js +44 -0
- package/dist/cjs/Number.js.map +1 -1
- package/dist/cjs/Option.js +70 -0
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Order.js +2 -0
- package/dist/cjs/Order.js.map +1 -1
- package/dist/cjs/Ordering.js +4 -0
- package/dist/cjs/Ordering.js.map +1 -1
- package/dist/cjs/Predicate.js +68 -0
- package/dist/cjs/Predicate.js.map +1 -1
- package/dist/cjs/Random.js +4 -0
- package/dist/cjs/Random.js.map +1 -1
- package/dist/cjs/RateLimiter.js +4 -0
- package/dist/cjs/RateLimiter.js.map +1 -1
- package/dist/cjs/RcMap.js +2 -0
- package/dist/cjs/RcMap.js.map +1 -1
- package/dist/cjs/RcRef.js +2 -0
- package/dist/cjs/RcRef.js.map +1 -1
- package/dist/cjs/Record.js +56 -0
- package/dist/cjs/Record.js.map +1 -1
- package/dist/cjs/Redacted.js +8 -0
- package/dist/cjs/Redacted.js.map +1 -1
- package/dist/cjs/RegExp.js +4 -0
- package/dist/cjs/RegExp.js.map +1 -1
- package/dist/cjs/Request.js +4 -0
- package/dist/cjs/Request.js.map +1 -1
- package/dist/cjs/RequestResolver.js +2 -0
- package/dist/cjs/RequestResolver.js.map +1 -1
- package/dist/cjs/Runtime.js +6 -0
- package/dist/cjs/Runtime.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schema.js +91 -8
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/Sink.js +9 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/Stream.js +179 -7
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/String.js +62 -0
- package/dist/cjs/String.js.map +1 -1
- package/dist/cjs/Struct.js +12 -0
- package/dist/cjs/Struct.js.map +1 -1
- package/dist/cjs/Symbol.js +2 -0
- package/dist/cjs/Symbol.js.map +1 -1
- package/dist/cjs/Trie.js +56 -0
- package/dist/cjs/Trie.js.map +1 -1
- package/dist/cjs/Tuple.js +18 -0
- package/dist/cjs/Tuple.js.map +1 -1
- package/dist/cjs/Utils.js +7 -1
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/internal/channel/channelExecutor.js +5 -9
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel.js +156 -130
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/config.js +13 -4
- package/dist/cjs/internal/config.js.map +1 -1
- package/dist/cjs/internal/context.js +46 -3
- package/dist/cjs/internal/context.js.map +1 -1
- package/dist/cjs/internal/dateTime.js +747 -0
- package/dist/cjs/internal/dateTime.js.map +1 -0
- package/dist/cjs/internal/fiberRuntime.js +34 -11
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/groupBy.js +9 -3
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/layer.js +1 -1
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/mailbox.js +1 -1
- package/dist/cjs/internal/mailbox.js.map +1 -1
- package/dist/cjs/internal/sink.js +25 -21
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stream.js +70 -71
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/cjs/internal/version.js.map +1 -1
- package/dist/dts/Array.d.ts +534 -0
- package/dist/dts/Array.d.ts.map +1 -1
- package/dist/dts/BigDecimal.d.ts +172 -1
- package/dist/dts/BigDecimal.d.ts.map +1 -1
- package/dist/dts/BigInt.d.ts +114 -0
- package/dist/dts/BigInt.d.ts.map +1 -1
- package/dist/dts/Boolean.d.ts +56 -0
- package/dist/dts/Boolean.d.ts.map +1 -1
- package/dist/dts/Brand.d.ts +6 -0
- package/dist/dts/Brand.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +66 -5
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +30 -0
- package/dist/dts/Chunk.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +25 -1
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +155 -0
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +21 -6
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +26 -0
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/DateTime.d.ts +192 -49
- package/dist/dts/DateTime.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +2 -0
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +658 -1
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +84 -2
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts +6 -0
- package/dist/dts/FiberHandle.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +6 -0
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +6 -0
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/Function.d.ts +50 -0
- package/dist/dts/Function.d.ts.map +1 -1
- package/dist/dts/GlobalValue.d.ts +2 -0
- package/dist/dts/GlobalValue.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +6 -0
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/Iterable.d.ts +26 -0
- package/dist/dts/Iterable.d.ts.map +1 -1
- package/dist/dts/JSONSchema.d.ts +1 -0
- package/dist/dts/JSONSchema.d.ts.map +1 -1
- package/dist/dts/List.d.ts +20 -0
- package/dist/dts/List.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +34 -0
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/Mailbox.d.ts +2 -0
- package/dist/dts/Mailbox.d.ts.map +1 -1
- package/dist/dts/ManagedRuntime.d.ts +2 -0
- package/dist/dts/ManagedRuntime.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +18 -0
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/Micro.d.ts +880 -863
- package/dist/dts/Micro.d.ts.map +1 -1
- package/dist/dts/Number.d.ts +104 -0
- package/dist/dts/Number.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +142 -0
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Order.d.ts +2 -0
- package/dist/dts/Order.d.ts.map +1 -1
- package/dist/dts/Ordering.d.ts +8 -0
- package/dist/dts/Ordering.d.ts.map +1 -1
- package/dist/dts/Predicate.d.ts +104 -0
- package/dist/dts/Predicate.d.ts.map +1 -1
- package/dist/dts/Random.d.ts +4 -0
- package/dist/dts/Random.d.ts.map +1 -1
- package/dist/dts/RateLimiter.d.ts +4 -0
- package/dist/dts/RateLimiter.d.ts.map +1 -1
- package/dist/dts/RcMap.d.ts +6 -0
- package/dist/dts/RcMap.d.ts.map +1 -1
- package/dist/dts/RcRef.d.ts +2 -0
- package/dist/dts/RcRef.d.ts.map +1 -1
- package/dist/dts/Record.d.ts +136 -0
- package/dist/dts/Record.d.ts.map +1 -1
- package/dist/dts/Redacted.d.ts +8 -0
- package/dist/dts/Redacted.d.ts.map +1 -1
- package/dist/dts/RegExp.d.ts +4 -0
- package/dist/dts/RegExp.d.ts.map +1 -1
- package/dist/dts/Request.d.ts +4 -0
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +6 -0
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Runtime.d.ts +18 -0
- package/dist/dts/Runtime.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +2 -0
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +90 -0
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +8 -0
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +394 -32
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/String.d.ts +94 -0
- package/dist/dts/String.d.ts.map +1 -1
- package/dist/dts/Struct.d.ts +24 -0
- package/dist/dts/Struct.d.ts.map +1 -1
- package/dist/dts/Symbol.d.ts +2 -0
- package/dist/dts/Symbol.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +132 -0
- package/dist/dts/Trie.d.ts.map +1 -1
- package/dist/dts/Tuple.d.ts +42 -0
- package/dist/dts/Tuple.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +24 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/Utils.d.ts +4 -0
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/internal/context.d.ts +1 -1
- package/dist/dts/internal/context.d.ts.map +1 -1
- package/dist/dts/internal/dateTime.d.ts +2 -0
- package/dist/dts/internal/dateTime.d.ts.map +1 -0
- package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Array.js +208 -0
- package/dist/esm/Array.js.map +1 -1
- package/dist/esm/BigDecimal.js +175 -20
- package/dist/esm/BigDecimal.js.map +1 -1
- package/dist/esm/BigInt.js +54 -0
- package/dist/esm/BigInt.js.map +1 -1
- package/dist/esm/Boolean.js +24 -0
- package/dist/esm/Boolean.js.map +1 -1
- package/dist/esm/Brand.js +4 -0
- package/dist/esm/Brand.js.map +1 -1
- package/dist/esm/Channel.js +42 -2
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/Chunk.js +8 -0
- package/dist/esm/Chunk.js.map +1 -1
- package/dist/esm/Config.js +9 -0
- package/dist/esm/Config.js.map +1 -1
- package/dist/esm/Context.js +49 -0
- package/dist/esm/Context.js.map +1 -1
- package/dist/esm/Cron.js +81 -67
- package/dist/esm/Cron.js.map +1 -1
- package/dist/esm/Data.js +16 -0
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/DateTime.js +176 -627
- package/dist/esm/DateTime.js.map +1 -1
- package/dist/esm/Duration.js +2 -0
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +297 -0
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +40 -2
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/FiberHandle.js +6 -0
- package/dist/esm/FiberHandle.js.map +1 -1
- package/dist/esm/FiberMap.js +6 -0
- package/dist/esm/FiberMap.js.map +1 -1
- package/dist/esm/FiberSet.js +6 -0
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/Function.js +34 -0
- package/dist/esm/Function.js.map +1 -1
- package/dist/esm/GlobalValue.js +2 -0
- package/dist/esm/GlobalValue.js.map +1 -1
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/Inspectable.js +8 -4
- package/dist/esm/Inspectable.js.map +1 -1
- package/dist/esm/Iterable.js +18 -0
- package/dist/esm/Iterable.js.map +1 -1
- package/dist/esm/JSONSchema.js.map +1 -1
- package/dist/esm/List.js +4 -0
- package/dist/esm/List.js.map +1 -1
- package/dist/esm/Logger.js +26 -0
- package/dist/esm/Logger.js.map +1 -1
- package/dist/esm/Mailbox.js +2 -0
- package/dist/esm/Mailbox.js.map +1 -1
- package/dist/esm/ManagedRuntime.js +2 -0
- package/dist/esm/ManagedRuntime.js.map +1 -1
- package/dist/esm/Metric.js +10 -0
- package/dist/esm/Metric.js.map +1 -1
- package/dist/esm/Micro.js +1077 -1037
- package/dist/esm/Micro.js.map +1 -1
- package/dist/esm/Number.js +44 -0
- package/dist/esm/Number.js.map +1 -1
- package/dist/esm/Option.js +72 -0
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Order.js +2 -0
- package/dist/esm/Order.js.map +1 -1
- package/dist/esm/Ordering.js +4 -0
- package/dist/esm/Ordering.js.map +1 -1
- package/dist/esm/Predicate.js +68 -0
- package/dist/esm/Predicate.js.map +1 -1
- package/dist/esm/Random.js +4 -0
- package/dist/esm/Random.js.map +1 -1
- package/dist/esm/RateLimiter.js +4 -0
- package/dist/esm/RateLimiter.js.map +1 -1
- package/dist/esm/RcMap.js +2 -0
- package/dist/esm/RcMap.js.map +1 -1
- package/dist/esm/RcRef.js +2 -0
- package/dist/esm/RcRef.js.map +1 -1
- package/dist/esm/Record.js +56 -0
- package/dist/esm/Record.js.map +1 -1
- package/dist/esm/Redacted.js +8 -0
- package/dist/esm/Redacted.js.map +1 -1
- package/dist/esm/RegExp.js +4 -0
- package/dist/esm/RegExp.js.map +1 -1
- package/dist/esm/Request.js +4 -0
- package/dist/esm/Request.js.map +1 -1
- package/dist/esm/RequestResolver.js +2 -0
- package/dist/esm/RequestResolver.js.map +1 -1
- package/dist/esm/Runtime.js +6 -0
- package/dist/esm/Runtime.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schema.js +88 -0
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/Sink.js +8 -0
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/Stream.js +183 -5
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/String.js +62 -0
- package/dist/esm/String.js.map +1 -1
- package/dist/esm/Struct.js +12 -0
- package/dist/esm/Struct.js.map +1 -1
- package/dist/esm/Symbol.js +2 -0
- package/dist/esm/Symbol.js.map +1 -1
- package/dist/esm/Trie.js +56 -0
- package/dist/esm/Trie.js.map +1 -1
- package/dist/esm/Tuple.js +22 -0
- package/dist/esm/Tuple.js.map +1 -1
- package/dist/esm/Utils.js +5 -0
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js +5 -7
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel.js +152 -129
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/config.js +11 -3
- package/dist/esm/internal/config.js.map +1 -1
- package/dist/esm/internal/context.js +42 -2
- package/dist/esm/internal/context.js.map +1 -1
- package/dist/esm/internal/dateTime.js +704 -0
- package/dist/esm/internal/dateTime.js.map +1 -0
- package/dist/esm/internal/fiberRuntime.js +31 -9
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/groupBy.js +9 -3
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/layer.js +1 -1
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/mailbox.js +1 -1
- package/dist/esm/internal/mailbox.js.map +1 -1
- package/dist/esm/internal/sink.js +23 -20
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stream.js +66 -69
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/internal/version.js.map +1 -1
- package/package.json +1 -1
- package/src/Array.ts +534 -0
- package/src/BigDecimal.ts +247 -21
- package/src/BigInt.ts +114 -0
- package/src/Boolean.ts +56 -0
- package/src/Brand.ts +6 -0
- package/src/Channel.ts +81 -5
- package/src/Chunk.ts +32 -0
- package/src/Config.ts +26 -1
- package/src/Context.ts +163 -0
- package/src/Cron.ts +91 -68
- package/src/Data.ts +26 -0
- package/src/DateTime.ts +307 -757
- package/src/Duration.ts +2 -0
- package/src/Effect.ts +910 -1
- package/src/Either.ts +84 -2
- package/src/FiberHandle.ts +6 -0
- package/src/FiberMap.ts +6 -0
- package/src/FiberSet.ts +6 -0
- package/src/Function.ts +50 -0
- package/src/GlobalValue.ts +2 -0
- package/src/HashMap.ts +6 -0
- package/src/Inspectable.ts +11 -7
- package/src/Iterable.ts +26 -0
- package/src/JSONSchema.ts +1 -0
- package/src/List.ts +24 -0
- package/src/Logger.ts +34 -0
- package/src/Mailbox.ts +2 -0
- package/src/ManagedRuntime.ts +2 -0
- package/src/Metric.ts +18 -0
- package/src/Micro.ts +2007 -1745
- package/src/Number.ts +104 -0
- package/src/Option.ts +142 -0
- package/src/Order.ts +2 -0
- package/src/Ordering.ts +8 -0
- package/src/Predicate.ts +104 -0
- package/src/Random.ts +4 -0
- package/src/RateLimiter.ts +4 -0
- package/src/RcMap.ts +6 -0
- package/src/RcRef.ts +2 -0
- package/src/Record.ts +136 -0
- package/src/Redacted.ts +8 -0
- package/src/RegExp.ts +4 -0
- package/src/Request.ts +4 -0
- package/src/RequestResolver.ts +6 -0
- package/src/Runtime.ts +18 -0
- package/src/STM.ts +2 -0
- package/src/Schema.ts +124 -0
- package/src/Sink.ts +11 -0
- package/src/Stream.ts +399 -44
- package/src/String.ts +94 -0
- package/src/Struct.ts +24 -0
- package/src/Symbol.ts +2 -0
- package/src/Trie.ts +132 -0
- package/src/Tuple.ts +42 -0
- package/src/Types.ts +24 -0
- package/src/Utils.ts +8 -0
- package/src/internal/channel/channelExecutor.ts +37 -33
- package/src/internal/channel.ts +504 -467
- package/src/internal/config.ts +18 -6
- package/src/internal/context.ts +56 -4
- package/src/internal/dateTime.ts +1126 -0
- package/src/internal/fiberRuntime.ts +35 -16
- package/src/internal/groupBy.ts +13 -22
- package/src/internal/layer.ts +5 -8
- package/src/internal/mailbox.ts +6 -4
- package/src/internal/sink.ts +55 -35
- package/src/internal/stream.ts +299 -299
- package/src/internal/version.ts +1 -1
package/src/Schema.ts
CHANGED
|
@@ -628,6 +628,7 @@ export function Literal<Literals extends ReadonlyArray<AST.LiteralValue>>(
|
|
|
628
628
|
* Creates a new `Schema` from a literal schema.
|
|
629
629
|
*
|
|
630
630
|
* @example
|
|
631
|
+
* ```ts
|
|
631
632
|
* import * as Schema from "effect/Schema"
|
|
632
633
|
* import { Either } from "effect"
|
|
633
634
|
*
|
|
@@ -636,6 +637,7 @@ export function Literal<Literals extends ReadonlyArray<AST.LiteralValue>>(
|
|
|
636
637
|
* assert.deepStrictEqual(Schema.decodeSync(schema)("a"), "a")
|
|
637
638
|
* assert.deepStrictEqual(Schema.decodeSync(schema)("b"), "b")
|
|
638
639
|
* assert.strictEqual(Either.isLeft(Schema.decodeUnknownEither(schema)("c")), true)
|
|
640
|
+
* ```
|
|
639
641
|
*
|
|
640
642
|
* @category constructors
|
|
641
643
|
* @since 3.10.0
|
|
@@ -2794,6 +2796,7 @@ export interface tag<Tag extends AST.LiteralValue> extends PropertySignature<":"
|
|
|
2794
2796
|
* @see {@link TaggedStruct}
|
|
2795
2797
|
*
|
|
2796
2798
|
* @example
|
|
2799
|
+
* ```ts
|
|
2797
2800
|
* import { Schema } from "effect"
|
|
2798
2801
|
*
|
|
2799
2802
|
* const User = Schema.Struct({
|
|
@@ -2803,6 +2806,7 @@ export interface tag<Tag extends AST.LiteralValue> extends PropertySignature<":"
|
|
|
2803
2806
|
* })
|
|
2804
2807
|
*
|
|
2805
2808
|
* assert.deepStrictEqual(User.make({ name: "John", age: 44 }), { _tag: "User", name: "John", age: 44 })
|
|
2809
|
+
* ```
|
|
2806
2810
|
*
|
|
2807
2811
|
* @since 3.10.0
|
|
2808
2812
|
*/
|
|
@@ -2823,6 +2827,7 @@ export type TaggedStruct<Tag extends AST.LiteralValue, Fields extends Struct.Fie
|
|
|
2823
2827
|
* The tag is optional when using the `make` method.
|
|
2824
2828
|
*
|
|
2825
2829
|
* @example
|
|
2830
|
+
* ```ts
|
|
2826
2831
|
* import { Schema } from "effect"
|
|
2827
2832
|
*
|
|
2828
2833
|
* const User = Schema.TaggedStruct("User", {
|
|
@@ -2831,6 +2836,7 @@ export type TaggedStruct<Tag extends AST.LiteralValue, Fields extends Struct.Fie
|
|
|
2831
2836
|
* })
|
|
2832
2837
|
*
|
|
2833
2838
|
* assert.deepStrictEqual(User.make({ name: "John", age: 44 }), { _tag: "User", name: "John", age: 44 })
|
|
2839
|
+
* ```
|
|
2834
2840
|
*
|
|
2835
2841
|
* @category constructors
|
|
2836
2842
|
* @since 3.10.0
|
|
@@ -2899,6 +2905,7 @@ export const omit = <A, I, Keys extends ReadonlyArray<keyof A & keyof I>>(...key
|
|
|
2899
2905
|
* producing a new schema that represents a transformation from the `{ readonly [key]: I[K] }` type to `A[K]`.
|
|
2900
2906
|
*
|
|
2901
2907
|
* @example
|
|
2908
|
+
* ```ts
|
|
2902
2909
|
* import * as Schema from "effect/Schema"
|
|
2903
2910
|
*
|
|
2904
2911
|
* // ---------------------------------------------
|
|
@@ -2918,6 +2925,7 @@ export const omit = <A, I, Keys extends ReadonlyArray<keyof A & keyof I>>(...key
|
|
|
2918
2925
|
*
|
|
2919
2926
|
* console.log(Schema.decodeUnknownEither(Schema.Array(pullOutColumn))([{ column1: "1", column2: 100 }, { column1: "2", column2: 300 }]))
|
|
2920
2927
|
* // Output: { _id: 'Either', _tag: 'Right', right: [ 1, 2 ] }
|
|
2928
|
+
* ```
|
|
2921
2929
|
*
|
|
2922
2930
|
* @category struct transformations
|
|
2923
2931
|
* @since 3.10.0
|
|
@@ -2928,6 +2936,7 @@ export const pluck: {
|
|
|
2928
2936
|
* producing a new schema that represents a transformation from the `{ readonly [key]: I[K] }` type to `A[K]`.
|
|
2929
2937
|
*
|
|
2930
2938
|
* @example
|
|
2939
|
+
* ```ts
|
|
2931
2940
|
* import * as Schema from "effect/Schema"
|
|
2932
2941
|
*
|
|
2933
2942
|
* // ---------------------------------------------
|
|
@@ -2947,6 +2956,7 @@ export const pluck: {
|
|
|
2947
2956
|
*
|
|
2948
2957
|
* console.log(Schema.decodeUnknownEither(Schema.Array(pullOutColumn))([{ column1: "1", column2: 100 }, { column1: "2", column2: 300 }]))
|
|
2949
2958
|
* // Output: { _id: 'Either', _tag: 'Right', right: [ 1, 2 ] }
|
|
2959
|
+
* ```
|
|
2950
2960
|
*
|
|
2951
2961
|
* @category struct transformations
|
|
2952
2962
|
* @since 3.10.0
|
|
@@ -2959,6 +2969,7 @@ export const pluck: {
|
|
|
2959
2969
|
* producing a new schema that represents a transformation from the `{ readonly [key]: I[K] }` type to `A[K]`.
|
|
2960
2970
|
*
|
|
2961
2971
|
* @example
|
|
2972
|
+
* ```ts
|
|
2962
2973
|
* import * as Schema from "effect/Schema"
|
|
2963
2974
|
*
|
|
2964
2975
|
* // ---------------------------------------------
|
|
@@ -2978,6 +2989,7 @@ export const pluck: {
|
|
|
2978
2989
|
*
|
|
2979
2990
|
* console.log(Schema.decodeUnknownEither(Schema.Array(pullOutColumn))([{ column1: "1", column2: 100 }, { column1: "2", column2: 300 }]))
|
|
2980
2991
|
* // Output: { _id: 'Either', _tag: 'Right', right: [ 1, 2 ] }
|
|
2992
|
+
* ```
|
|
2981
2993
|
*
|
|
2982
2994
|
* @category struct transformations
|
|
2983
2995
|
* @since 3.10.0
|
|
@@ -2996,6 +3008,7 @@ export const pluck: {
|
|
|
2996
3008
|
* producing a new schema that represents a transformation from the `{ readonly [key]: I[K] }` type to `A[K]`.
|
|
2997
3009
|
*
|
|
2998
3010
|
* @example
|
|
3011
|
+
* ```ts
|
|
2999
3012
|
* import * as Schema from "effect/Schema"
|
|
3000
3013
|
*
|
|
3001
3014
|
* // ---------------------------------------------
|
|
@@ -3015,6 +3028,7 @@ export const pluck: {
|
|
|
3015
3028
|
*
|
|
3016
3029
|
* console.log(Schema.decodeUnknownEither(Schema.Array(pullOutColumn))([{ column1: "1", column2: 100 }, { column1: "2", column2: 300 }]))
|
|
3017
3030
|
* // Output: { _id: 'Either', _tag: 'Right', right: [ 1, 2 ] }
|
|
3031
|
+
* ```
|
|
3018
3032
|
*
|
|
3019
3033
|
* @category struct transformations
|
|
3020
3034
|
* @since 3.10.0
|
|
@@ -3024,6 +3038,7 @@ export const pluck: {
|
|
|
3024
3038
|
* producing a new schema that represents a transformation from the `{ readonly [key]: I[K] }` type to `A[K]`.
|
|
3025
3039
|
*
|
|
3026
3040
|
* @example
|
|
3041
|
+
* ```ts
|
|
3027
3042
|
* import * as Schema from "effect/Schema"
|
|
3028
3043
|
*
|
|
3029
3044
|
* // ---------------------------------------------
|
|
@@ -3043,6 +3058,7 @@ export const pluck: {
|
|
|
3043
3058
|
*
|
|
3044
3059
|
* console.log(Schema.decodeUnknownEither(Schema.Array(pullOutColumn))([{ column1: "1", column2: 100 }, { column1: "2", column2: 300 }]))
|
|
3045
3060
|
* // Output: { _id: 'Either', _tag: 'Right', right: [ 1, 2 ] }
|
|
3061
|
+
* ```
|
|
3046
3062
|
*
|
|
3047
3063
|
* @category struct transformations
|
|
3048
3064
|
* @since 3.10.0
|
|
@@ -3052,6 +3068,7 @@ export const pluck: {
|
|
|
3052
3068
|
* producing a new schema that represents a transformation from the `{ readonly [key]: I[K] }` type to `A[K]`.
|
|
3053
3069
|
*
|
|
3054
3070
|
* @example
|
|
3071
|
+
* ```ts
|
|
3055
3072
|
* import * as Schema from "effect/Schema"
|
|
3056
3073
|
*
|
|
3057
3074
|
* // ---------------------------------------------
|
|
@@ -3071,6 +3088,7 @@ export const pluck: {
|
|
|
3071
3088
|
*
|
|
3072
3089
|
* console.log(Schema.decodeUnknownEither(Schema.Array(pullOutColumn))([{ column1: "1", column2: 100 }, { column1: "2", column2: 300 }]))
|
|
3073
3090
|
* // Output: { _id: 'Either', _tag: 'Right', right: [ 1, 2 ] }
|
|
3091
|
+
* ```
|
|
3074
3092
|
*
|
|
3075
3093
|
* @category struct transformations
|
|
3076
3094
|
* @since 3.10.0
|
|
@@ -3132,10 +3150,12 @@ const makeBrandClass = <S extends Schema.Any, B extends string | symbol>(
|
|
|
3132
3150
|
* @param brand - The brand to apply.
|
|
3133
3151
|
*
|
|
3134
3152
|
* @example
|
|
3153
|
+
* ```ts
|
|
3135
3154
|
* import * as Schema from "effect/Schema"
|
|
3136
3155
|
*
|
|
3137
3156
|
* const Int = Schema.Number.pipe(Schema.int(), Schema.brand("Int"))
|
|
3138
3157
|
* type Int = Schema.Schema.Type<typeof Int> // number & Brand<"Int">
|
|
3158
|
+
* ```
|
|
3139
3159
|
*
|
|
3140
3160
|
* @category branding
|
|
3141
3161
|
* @since 3.10.0
|
|
@@ -3431,6 +3451,7 @@ export interface extend<Self extends Schema.Any, That extends Schema.Any> extend
|
|
|
3431
3451
|
* - A suspend of a struct with a supported schema
|
|
3432
3452
|
*
|
|
3433
3453
|
* @example
|
|
3454
|
+
* ```ts
|
|
3434
3455
|
* import * as Schema from "effect/Schema"
|
|
3435
3456
|
*
|
|
3436
3457
|
* const schema = Schema.Struct({
|
|
@@ -3452,6 +3473,7 @@ export interface extend<Self extends Schema.Any, That extends Schema.Any> extend
|
|
|
3452
3473
|
* Schema.extend(Schema.Struct({ c: Schema.String })), // <= you can add more fields
|
|
3453
3474
|
* Schema.extend(Schema.Record({ key: Schema.String, value: Schema.String })) // <= you can add index signatures
|
|
3454
3475
|
* ))
|
|
3476
|
+
* ```
|
|
3455
3477
|
*
|
|
3456
3478
|
* @category combinators
|
|
3457
3479
|
* @since 3.10.0
|
|
@@ -3473,6 +3495,7 @@ export const extend: {
|
|
|
3473
3495
|
* - A suspend of a struct with a supported schema
|
|
3474
3496
|
*
|
|
3475
3497
|
* @example
|
|
3498
|
+
* ```ts
|
|
3476
3499
|
* import * as Schema from "effect/Schema"
|
|
3477
3500
|
*
|
|
3478
3501
|
* const schema = Schema.Struct({
|
|
@@ -3494,6 +3517,7 @@ export const extend: {
|
|
|
3494
3517
|
* Schema.extend(Schema.Struct({ c: Schema.String })), // <= you can add more fields
|
|
3495
3518
|
* Schema.extend(Schema.Record({ key: Schema.String, value: Schema.String })) // <= you can add index signatures
|
|
3496
3519
|
* ))
|
|
3520
|
+
* ```
|
|
3497
3521
|
*
|
|
3498
3522
|
* @category combinators
|
|
3499
3523
|
* @since 3.10.0
|
|
@@ -3515,6 +3539,7 @@ export const extend: {
|
|
|
3515
3539
|
* - A suspend of a struct with a supported schema
|
|
3516
3540
|
*
|
|
3517
3541
|
* @example
|
|
3542
|
+
* ```ts
|
|
3518
3543
|
* import * as Schema from "effect/Schema"
|
|
3519
3544
|
*
|
|
3520
3545
|
* const schema = Schema.Struct({
|
|
@@ -3536,6 +3561,7 @@ export const extend: {
|
|
|
3536
3561
|
* Schema.extend(Schema.Struct({ c: Schema.String })), // <= you can add more fields
|
|
3537
3562
|
* Schema.extend(Schema.Record({ key: Schema.String, value: Schema.String })) // <= you can add index signatures
|
|
3538
3563
|
* ))
|
|
3564
|
+
* ```
|
|
3539
3565
|
*
|
|
3540
3566
|
* @category combinators
|
|
3541
3567
|
* @since 3.10.0
|
|
@@ -4086,11 +4112,13 @@ export interface transformLiteral<Type, Encoded> extends Annotable<transformLite
|
|
|
4086
4112
|
* Creates a new `Schema` which transforms literal values.
|
|
4087
4113
|
*
|
|
4088
4114
|
* @example
|
|
4115
|
+
* ```ts
|
|
4089
4116
|
* import * as S from "effect/Schema"
|
|
4090
4117
|
*
|
|
4091
4118
|
* const schema = S.transformLiteral(0, "a")
|
|
4092
4119
|
*
|
|
4093
4120
|
* assert.deepStrictEqual(S.decodeSync(schema)(0), "a")
|
|
4121
|
+
* ```
|
|
4094
4122
|
*
|
|
4095
4123
|
* @category constructors
|
|
4096
4124
|
* @since 3.10.0
|
|
@@ -4105,6 +4133,7 @@ export const transformLiteral = <Encoded extends AST.LiteralValue, Type extends
|
|
|
4105
4133
|
* Creates a new `Schema` which maps between corresponding literal values.
|
|
4106
4134
|
*
|
|
4107
4135
|
* @example
|
|
4136
|
+
* ```ts
|
|
4108
4137
|
* import * as S from "effect/Schema"
|
|
4109
4138
|
*
|
|
4110
4139
|
* const Animal = S.transformLiterals(
|
|
@@ -4114,6 +4143,7 @@ export const transformLiteral = <Encoded extends AST.LiteralValue, Type extends
|
|
|
4114
4143
|
* )
|
|
4115
4144
|
*
|
|
4116
4145
|
* assert.deepStrictEqual(S.decodeSync(Animal)(1), "dog")
|
|
4146
|
+
* ```
|
|
4117
4147
|
*
|
|
4118
4148
|
* @category constructors
|
|
4119
4149
|
* @since 3.10.0
|
|
@@ -4143,6 +4173,7 @@ export function transformLiterals<
|
|
|
4143
4173
|
* @param value - The value of the property to add to the schema.
|
|
4144
4174
|
*
|
|
4145
4175
|
* @example
|
|
4176
|
+
* ```ts
|
|
4146
4177
|
* import * as S from "effect/Schema"
|
|
4147
4178
|
* import { pipe } from "effect/Function"
|
|
4148
4179
|
*
|
|
@@ -4157,6 +4188,7 @@ export function transformLiterals<
|
|
|
4157
4188
|
* kind: "circle",
|
|
4158
4189
|
* radius: 10
|
|
4159
4190
|
* })
|
|
4191
|
+
* ```
|
|
4160
4192
|
*
|
|
4161
4193
|
* @category combinators
|
|
4162
4194
|
* @since 3.10.0
|
|
@@ -4172,6 +4204,7 @@ export const attachPropertySignature: {
|
|
|
4172
4204
|
* @param value - The value of the property to add to the schema.
|
|
4173
4205
|
*
|
|
4174
4206
|
* @example
|
|
4207
|
+
* ```ts
|
|
4175
4208
|
* import * as S from "effect/Schema"
|
|
4176
4209
|
* import { pipe } from "effect/Function"
|
|
4177
4210
|
*
|
|
@@ -4186,6 +4219,7 @@ export const attachPropertySignature: {
|
|
|
4186
4219
|
* kind: "circle",
|
|
4187
4220
|
* radius: 10
|
|
4188
4221
|
* })
|
|
4222
|
+
* ```
|
|
4189
4223
|
*
|
|
4190
4224
|
* @category combinators
|
|
4191
4225
|
* @since 3.10.0
|
|
@@ -4207,6 +4241,7 @@ export const attachPropertySignature: {
|
|
|
4207
4241
|
* @param value - The value of the property to add to the schema.
|
|
4208
4242
|
*
|
|
4209
4243
|
* @example
|
|
4244
|
+
* ```ts
|
|
4210
4245
|
* import * as S from "effect/Schema"
|
|
4211
4246
|
* import { pipe } from "effect/Function"
|
|
4212
4247
|
*
|
|
@@ -4221,6 +4256,7 @@ export const attachPropertySignature: {
|
|
|
4221
4256
|
* kind: "circle",
|
|
4222
4257
|
* radius: 10
|
|
4223
4258
|
* })
|
|
4259
|
+
* ```
|
|
4224
4260
|
*
|
|
4225
4261
|
* @category combinators
|
|
4226
4262
|
* @since 3.10.0
|
|
@@ -4837,11 +4873,13 @@ export class Trimmed extends String$.pipe(
|
|
|
4837
4873
|
* leading or trailing whitespace.
|
|
4838
4874
|
*
|
|
4839
4875
|
* @example
|
|
4876
|
+
* ```ts
|
|
4840
4877
|
* import { Schema } from "effect"
|
|
4841
4878
|
*
|
|
4842
4879
|
* console.log(Schema.decodeOption(Schema.NonEmptyTrimmedString)("")) // Option.none()
|
|
4843
4880
|
* console.log(Schema.decodeOption(Schema.NonEmptyTrimmedString)(" a ")) // Option.none()
|
|
4844
4881
|
* console.log(Schema.decodeOption(Schema.NonEmptyTrimmedString)("a")) // Option.some("a")
|
|
4882
|
+
* ```
|
|
4845
4883
|
*
|
|
4846
4884
|
* @category string constructors
|
|
4847
4885
|
* @since 3.10.0
|
|
@@ -4918,10 +4956,12 @@ const getParseJsonTransformation = (options?: ParseJsonOptions) =>
|
|
|
4918
4956
|
* Optionally, you can pass a schema `Schema<A, I, R>` to obtain an `A` type instead of `unknown`.
|
|
4919
4957
|
*
|
|
4920
4958
|
* @example
|
|
4959
|
+
* ```ts
|
|
4921
4960
|
* import * as Schema from "effect/Schema"
|
|
4922
4961
|
*
|
|
4923
4962
|
* assert.deepStrictEqual(Schema.decodeUnknownSync(Schema.parseJson())(`{"a":"1"}`), { a: "1" })
|
|
4924
4963
|
* assert.deepStrictEqual(Schema.decodeUnknownSync(Schema.parseJson(Schema.Struct({ a: Schema.NumberFromString })))(`{"a":"1"}`), { a: 1 })
|
|
4964
|
+
* ```
|
|
4925
4965
|
*
|
|
4926
4966
|
* @category string transformations
|
|
4927
4967
|
* @since 3.10.0
|
|
@@ -4936,10 +4976,12 @@ export const parseJson: {
|
|
|
4936
4976
|
* Optionally, you can pass a schema `Schema<A, I, R>` to obtain an `A` type instead of `unknown`.
|
|
4937
4977
|
*
|
|
4938
4978
|
* @example
|
|
4979
|
+
* ```ts
|
|
4939
4980
|
* import * as Schema from "effect/Schema"
|
|
4940
4981
|
*
|
|
4941
4982
|
* assert.deepStrictEqual(Schema.decodeUnknownSync(Schema.parseJson())(`{"a":"1"}`), { a: "1" })
|
|
4942
4983
|
* assert.deepStrictEqual(Schema.decodeUnknownSync(Schema.parseJson(Schema.Struct({ a: Schema.NumberFromString })))(`{"a":"1"}`), { a: 1 })
|
|
4984
|
+
* ```
|
|
4943
4985
|
*
|
|
4944
4986
|
* @category string transformations
|
|
4945
4987
|
* @since 3.10.0
|
|
@@ -4954,10 +4996,12 @@ export const parseJson: {
|
|
|
4954
4996
|
* Optionally, you can pass a schema `Schema<A, I, R>` to obtain an `A` type instead of `unknown`.
|
|
4955
4997
|
*
|
|
4956
4998
|
* @example
|
|
4999
|
+
* ```ts
|
|
4957
5000
|
* import * as Schema from "effect/Schema"
|
|
4958
5001
|
*
|
|
4959
5002
|
* assert.deepStrictEqual(Schema.decodeUnknownSync(Schema.parseJson())(`{"a":"1"}`), { a: "1" })
|
|
4960
5003
|
* assert.deepStrictEqual(Schema.decodeUnknownSync(Schema.parseJson(Schema.Struct({ a: Schema.NumberFromString })))(`{"a":"1"}`), { a: 1 })
|
|
5004
|
+
* ```
|
|
4961
5005
|
*
|
|
4962
5006
|
* @category string transformations
|
|
4963
5007
|
* @since 3.10.0
|
|
@@ -4997,6 +5041,10 @@ export class UUID extends String$.pipe(
|
|
|
4997
5041
|
schemaId: UUIDSchemaId,
|
|
4998
5042
|
identifier: "UUID",
|
|
4999
5043
|
title: "UUID",
|
|
5044
|
+
jsonSchema: {
|
|
5045
|
+
format: "uuid",
|
|
5046
|
+
pattern: uuidRegexp.source
|
|
5047
|
+
},
|
|
5000
5048
|
description: "a Universally Unique Identifier",
|
|
5001
5049
|
arbitrary: (): LazyArbitrary<string> => (fc) => fc.uuid()
|
|
5002
5050
|
})
|
|
@@ -5029,6 +5077,49 @@ export class ULID extends String$.pipe(
|
|
|
5029
5077
|
})
|
|
5030
5078
|
) {}
|
|
5031
5079
|
|
|
5080
|
+
/**
|
|
5081
|
+
* Defines a schema that represents a `URL` object.
|
|
5082
|
+
*
|
|
5083
|
+
* @category URL constructors
|
|
5084
|
+
* @since 3.11.0
|
|
5085
|
+
*/
|
|
5086
|
+
export class URLFromSelf extends instanceOf(URL, {
|
|
5087
|
+
identifier: "URLFromSelf",
|
|
5088
|
+
title: "URLFromSelf",
|
|
5089
|
+
arbitrary: (): LazyArbitrary<URL> => (fc) => fc.webUrl().map((s) => new URL(s)),
|
|
5090
|
+
pretty: () => (url) => url.toString()
|
|
5091
|
+
}) {}
|
|
5092
|
+
|
|
5093
|
+
/** @ignore */
|
|
5094
|
+
class URL$ extends transformOrFail(
|
|
5095
|
+
String$.annotations({ description: "a string that will be parsed into a URL" }),
|
|
5096
|
+
URLFromSelf,
|
|
5097
|
+
{
|
|
5098
|
+
strict: true,
|
|
5099
|
+
decode: (str, _, ast) =>
|
|
5100
|
+
ParseResult.try({
|
|
5101
|
+
try: () => new URL(str),
|
|
5102
|
+
catch: () => new ParseResult.Type(ast, str)
|
|
5103
|
+
}),
|
|
5104
|
+
encode: (url) => ParseResult.succeed(url.toString())
|
|
5105
|
+
}
|
|
5106
|
+
).annotations({
|
|
5107
|
+
identifier: "URL",
|
|
5108
|
+
title: "URL",
|
|
5109
|
+
pretty: () => (url) => url.toString()
|
|
5110
|
+
}) {}
|
|
5111
|
+
|
|
5112
|
+
export {
|
|
5113
|
+
/**
|
|
5114
|
+
* Defines a schema that attempts to convert a `string` to a `URL` object using
|
|
5115
|
+
* the `new URL` constructor.
|
|
5116
|
+
*
|
|
5117
|
+
* @category URL transformations
|
|
5118
|
+
* @since 3.11.0
|
|
5119
|
+
*/
|
|
5120
|
+
URL$ as URL
|
|
5121
|
+
}
|
|
5122
|
+
|
|
5032
5123
|
/**
|
|
5033
5124
|
* @category schema id
|
|
5034
5125
|
* @since 3.10.0
|
|
@@ -5430,6 +5521,7 @@ export const JsonNumberSchemaId: unique symbol = Symbol.for("effect/SchemaId/Jso
|
|
|
5430
5521
|
* format.
|
|
5431
5522
|
*
|
|
5432
5523
|
* @example
|
|
5524
|
+
* ```ts
|
|
5433
5525
|
* import * as Schema from "effect/Schema"
|
|
5434
5526
|
*
|
|
5435
5527
|
* const is = Schema.is(S.JsonNumber)
|
|
@@ -5438,6 +5530,7 @@ export const JsonNumberSchemaId: unique symbol = Symbol.for("effect/SchemaId/Jso
|
|
|
5438
5530
|
* assert.deepStrictEqual(is(Number.NaN), false)
|
|
5439
5531
|
* assert.deepStrictEqual(is(Number.POSITIVE_INFINITY), false)
|
|
5440
5532
|
* assert.deepStrictEqual(is(Number.NEGATIVE_INFINITY), false)
|
|
5533
|
+
* ```
|
|
5441
5534
|
*
|
|
5442
5535
|
* @category number constructors
|
|
5443
5536
|
* @since 3.10.0
|
|
@@ -7089,11 +7182,13 @@ export const OptionFromUndefinedOr = <Value extends Schema.Any>(
|
|
|
7089
7182
|
* `none` for invalid inputs and `some` for valid non-empty strings.
|
|
7090
7183
|
*
|
|
7091
7184
|
* @example
|
|
7185
|
+
* ```ts
|
|
7092
7186
|
* import { Schema } from "effect"
|
|
7093
7187
|
*
|
|
7094
7188
|
* console.log(Schema.decodeSync(Schema.OptionFromNonEmptyTrimmedString)("")) // Option.none()
|
|
7095
7189
|
* console.log(Schema.decodeSync(Schema.OptionFromNonEmptyTrimmedString)(" a ")) // Option.some("a")
|
|
7096
7190
|
* console.log(Schema.decodeSync(Schema.OptionFromNonEmptyTrimmedString)("a")) // Option.some("a")
|
|
7191
|
+
* ```
|
|
7097
7192
|
*
|
|
7098
7193
|
* @category Option transformations
|
|
7099
7194
|
* @since 3.10.0
|
|
@@ -7279,10 +7374,12 @@ export interface EitherFromUnion<R extends Schema.All, L extends Schema.All> ext
|
|
|
7279
7374
|
|
|
7280
7375
|
/**
|
|
7281
7376
|
* @example
|
|
7377
|
+
* ```ts
|
|
7282
7378
|
* import * as Schema from "effect/Schema"
|
|
7283
7379
|
*
|
|
7284
7380
|
* // Schema<string | number, Either<string, number>>
|
|
7285
7381
|
* Schema.EitherFromUnion({ left: Schema.String, right: Schema.Number })
|
|
7382
|
+
* ```
|
|
7286
7383
|
*
|
|
7287
7384
|
* @category Either transformations
|
|
7288
7385
|
* @since 3.10.0
|
|
@@ -8243,6 +8340,7 @@ export interface Class<Self, Fields extends Struct.Fields, I, R, C, Inherited, P
|
|
|
8243
8340
|
|
|
8244
8341
|
/**
|
|
8245
8342
|
* @example
|
|
8343
|
+
* ```ts
|
|
8246
8344
|
* import { Schema } from "effect"
|
|
8247
8345
|
*
|
|
8248
8346
|
* class MyClass extends Schema.Class<MyClass>("MyClass")({
|
|
@@ -8260,6 +8358,7 @@ export interface Class<Self, Fields extends Struct.Fields, I, R, C, Inherited, P
|
|
|
8260
8358
|
* return this.myMethod() + this.myField + this.nextField
|
|
8261
8359
|
* }
|
|
8262
8360
|
* }
|
|
8361
|
+
* ```
|
|
8263
8362
|
*/
|
|
8264
8363
|
extend<Extended = never>(identifier: string): <newFields extends Struct.Fields>(
|
|
8265
8364
|
fields: newFields | HasFields<newFields>,
|
|
@@ -8277,6 +8376,7 @@ export interface Class<Self, Fields extends Struct.Fields, I, R, C, Inherited, P
|
|
|
8277
8376
|
|
|
8278
8377
|
/**
|
|
8279
8378
|
* @example
|
|
8379
|
+
* ```ts
|
|
8280
8380
|
* import { Effect, Schema } from "effect"
|
|
8281
8381
|
*
|
|
8282
8382
|
* class MyClass extends Schema.Class<MyClass>("MyClass")({
|
|
@@ -8301,6 +8401,7 @@ export interface Class<Self, Fields extends Struct.Fields, I, R, C, Inherited, P
|
|
|
8301
8401
|
* return this.myMethod() + this.myField + this.nextField
|
|
8302
8402
|
* }
|
|
8303
8403
|
* }
|
|
8404
|
+
* ```
|
|
8304
8405
|
*/
|
|
8305
8406
|
transformOrFail<Transformed = never>(identifier: string): <
|
|
8306
8407
|
newFields extends Struct.Fields,
|
|
@@ -8334,6 +8435,7 @@ export interface Class<Self, Fields extends Struct.Fields, I, R, C, Inherited, P
|
|
|
8334
8435
|
|
|
8335
8436
|
/**
|
|
8336
8437
|
* @example
|
|
8438
|
+
* ```ts
|
|
8337
8439
|
* import { Effect, Schema } from "effect"
|
|
8338
8440
|
*
|
|
8339
8441
|
* class MyClass extends Schema.Class<MyClass>("MyClass")({
|
|
@@ -8358,6 +8460,7 @@ export interface Class<Self, Fields extends Struct.Fields, I, R, C, Inherited, P
|
|
|
8358
8460
|
* return this.myMethod() + this.myField + this.nextField
|
|
8359
8461
|
* }
|
|
8360
8462
|
* }
|
|
8463
|
+
* ```
|
|
8361
8464
|
*/
|
|
8362
8465
|
transformOrFailFrom<Transformed = never>(identifier: string): <
|
|
8363
8466
|
newFields extends Struct.Fields,
|
|
@@ -8410,6 +8513,7 @@ const getFieldsFromFieldsOr = <Fields extends Struct.Fields>(fieldsOr: Fields |
|
|
|
8410
8513
|
|
|
8411
8514
|
/**
|
|
8412
8515
|
* @example
|
|
8516
|
+
* ```ts
|
|
8413
8517
|
* import { Schema } from "effect"
|
|
8414
8518
|
*
|
|
8415
8519
|
* class MyClass extends Schema.Class<MyClass>("MyClass")({
|
|
@@ -8419,6 +8523,7 @@ const getFieldsFromFieldsOr = <Fields extends Struct.Fields>(fieldsOr: Fields |
|
|
|
8419
8523
|
* return this.someField + "bar"
|
|
8420
8524
|
* }
|
|
8421
8525
|
* }
|
|
8526
|
+
* ```
|
|
8422
8527
|
*
|
|
8423
8528
|
* @category classes
|
|
8424
8529
|
* @since 3.10.0
|
|
@@ -8470,11 +8575,13 @@ export interface TaggedClass<Self, Tag extends string, Fields extends Struct.Fie
|
|
|
8470
8575
|
|
|
8471
8576
|
/**
|
|
8472
8577
|
* @example
|
|
8578
|
+
* ```ts
|
|
8473
8579
|
* import { Schema } from "effect"
|
|
8474
8580
|
*
|
|
8475
8581
|
* class MyClass extends Schema.TaggedClass<MyClass>("MyClass")("MyClass", {
|
|
8476
8582
|
* a: Schema.String
|
|
8477
8583
|
* }) {}
|
|
8584
|
+
* ```
|
|
8478
8585
|
*
|
|
8479
8586
|
* @category classes
|
|
8480
8587
|
* @since 3.10.0
|
|
@@ -8523,6 +8630,7 @@ export interface TaggedErrorClass<Self, Tag extends string, Fields extends Struc
|
|
|
8523
8630
|
|
|
8524
8631
|
/**
|
|
8525
8632
|
* @example
|
|
8633
|
+
* ```ts
|
|
8526
8634
|
* import { Schema } from "effect"
|
|
8527
8635
|
*
|
|
8528
8636
|
* class MyError extends Schema.TaggedError<MyError>("MyError")(
|
|
@@ -8537,6 +8645,7 @@ export interface TaggedErrorClass<Self, Tag extends string, Fields extends Struc
|
|
|
8537
8645
|
* return `${this.module}.${this.method}: ${this.description}`
|
|
8538
8646
|
* }
|
|
8539
8647
|
* }
|
|
8648
|
+
* ```
|
|
8540
8649
|
* @category classes
|
|
8541
8650
|
* @since 3.10.0
|
|
8542
8651
|
*/
|
|
@@ -9731,6 +9840,19 @@ export class BooleanFromUnknown extends transform(
|
|
|
9731
9840
|
{ strict: true, decode: Predicate.isTruthy, encode: identity }
|
|
9732
9841
|
).annotations({ identifier: "BooleanFromUnknown" }) {}
|
|
9733
9842
|
|
|
9843
|
+
/**
|
|
9844
|
+
* Converts an `string` value into its corresponding `boolean`
|
|
9845
|
+
* ("true" as `true` and "false" as `false`).
|
|
9846
|
+
*
|
|
9847
|
+
* @category boolean transformations
|
|
9848
|
+
* @since 3.11.0
|
|
9849
|
+
*/
|
|
9850
|
+
export class BooleanFromString extends transform(
|
|
9851
|
+
Literal("true", "false"),
|
|
9852
|
+
Boolean$,
|
|
9853
|
+
{ strict: true, decode: (value) => value === "true", encode: (value) => value ? "true" : "false" }
|
|
9854
|
+
).annotations({ identifier: "BooleanFromString" }) {}
|
|
9855
|
+
|
|
9734
9856
|
/**
|
|
9735
9857
|
* @category Config validations
|
|
9736
9858
|
* @since 3.10.0
|
|
@@ -10259,6 +10381,7 @@ export interface TaggedRequestClass<
|
|
|
10259
10381
|
|
|
10260
10382
|
/**
|
|
10261
10383
|
* @example
|
|
10384
|
+
* ```ts
|
|
10262
10385
|
* import { Schema } from "effect"
|
|
10263
10386
|
*
|
|
10264
10387
|
* class MyRequest extends Schema.TaggedRequest<MyRequest>("MyRequest")("MyRequest", {
|
|
@@ -10266,6 +10389,7 @@ export interface TaggedRequestClass<
|
|
|
10266
10389
|
* success: Schema.Number,
|
|
10267
10390
|
* payload: { id: Schema.String }
|
|
10268
10391
|
* }) {}
|
|
10392
|
+
* ```
|
|
10269
10393
|
*
|
|
10270
10394
|
* @category classes
|
|
10271
10395
|
* @since 3.10.0
|
package/src/Sink.ts
CHANGED
|
@@ -1765,6 +1765,17 @@ export const unwrapScoped: <A, In, L, E, R>(
|
|
|
1765
1765
|
effect: Effect.Effect<Sink<A, In, L, E, R>, E, R>
|
|
1766
1766
|
) => Sink<A, In, L, E, Exclude<R, Scope.Scope>> = internal.unwrapScoped
|
|
1767
1767
|
|
|
1768
|
+
/**
|
|
1769
|
+
* Constructs a `Sink` from a function which receives a `Scope` and returns
|
|
1770
|
+
* an effect that will result in a `Sink` if successful.
|
|
1771
|
+
*
|
|
1772
|
+
* @since 3.11.0
|
|
1773
|
+
* @category constructors
|
|
1774
|
+
*/
|
|
1775
|
+
export const unwrapScopedWith: <A, In, L, E, R>(
|
|
1776
|
+
f: (scope: Scope.Scope) => Effect.Effect<Sink<A, In, L, E, R>, E, R>
|
|
1777
|
+
) => Sink<A, In, L, E, R> = internal.unwrapScopedWith
|
|
1778
|
+
|
|
1768
1779
|
/**
|
|
1769
1780
|
* Returns the sink that executes this one and times its execution.
|
|
1770
1781
|
*
|