effect 4.0.1 → 4.0.2
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/ai-docs/package.json +2 -2
- package/ai-docs/tsconfig.json +2 -1
- package/dist/Array.d.ts +339 -0
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +143 -3
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +88 -0
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +44 -0
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +68 -0
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +36 -0
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +34 -0
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +18 -0
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts +9 -0
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +6 -0
- package/dist/Brand.js.map +1 -1
- package/dist/ByteSize.d.ts +86 -0
- package/dist/ByteSize.d.ts.map +1 -1
- package/dist/ByteSize.js +51 -0
- package/dist/ByteSize.js.map +1 -1
- package/dist/Cache.d.ts +38 -1
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +27 -7
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +82 -0
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +60 -0
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +327 -4
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +168 -8
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +11 -0
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js +6 -0
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +192 -0
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +78 -0
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +7 -0
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +5 -0
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +10 -0
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +8 -0
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +52 -12
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +55 -5
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +28 -0
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +19 -0
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +22 -0
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +20 -0
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +50 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +21 -0
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +16 -0
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +26 -1
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +5 -0
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +3 -0
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +13 -0
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +5 -0
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +171 -0
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +89 -0
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +51 -0
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +22 -0
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +2 -0
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +1 -0
- package/dist/Duration.d.ts +90 -0
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +53 -0
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +527 -0
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +240 -5
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +4 -0
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +3 -0
- package/dist/Effectable.js.map +1 -1
- package/dist/Equal.d.ts +8 -0
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +9 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +21 -0
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +16 -0
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +36 -0
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +11 -0
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +49 -8
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -0
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +40 -0
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +27 -0
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +20 -0
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +11 -0
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +21 -0
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +21 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +35 -0
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +19 -0
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +20 -0
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +14 -0
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +15 -0
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +8 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +55 -0
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +28 -0
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +3 -0
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +39 -1
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +30 -0
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +20 -0
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +247 -12
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +149 -28
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +5 -0
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +14 -0
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +12 -0
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +91 -0
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +39 -0
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts +17 -0
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +9 -0
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +49 -0
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +19 -0
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +7 -0
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +6 -0
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +127 -0
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +51 -0
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +4 -0
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +3 -0
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +5 -0
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +5 -0
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +16 -0
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +11 -0
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +14 -0
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +10 -0
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +100 -0
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +45 -1
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +7 -0
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +4 -0
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +5 -0
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +3 -0
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +20 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +9 -0
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +25 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +30 -4
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +5 -0
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +9 -1
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +51 -0
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +39 -0
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +59 -0
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +31 -0
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +32 -0
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +16 -0
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +16 -0
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +10 -0
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +20 -0
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +18 -0
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +31 -0
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +17 -0
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +9 -0
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +6 -0
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +4 -0
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +2 -0
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +61 -0
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +31 -0
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +41 -0
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +20 -0
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +134 -0
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +61 -0
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +29 -0
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +24 -0
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +7 -0
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +3 -0
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +24 -0
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +47 -21
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +6 -0
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +4 -0
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +7 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +5 -0
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +8 -0
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +7 -0
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +19 -0
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +8 -1
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +84 -0
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +48 -0
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +5 -0
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +4 -0
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +67 -5
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +60 -8
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +20 -0
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +10 -0
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +60 -0
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +58 -8
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +13 -0
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +9 -0
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +23 -0
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +8 -0
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +6 -0
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +3 -0
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +100 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +43 -0
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -0
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +4 -0
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +8 -0
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +6 -0
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +4 -0
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +3 -0
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +20 -0
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +16 -0
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +21 -0
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +19 -0
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +3 -0
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +4 -0
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +32 -0
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +12 -0
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +42 -0
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +27 -6
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +6 -0
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +6 -0
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +91 -0
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +41 -0
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +9 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +7 -0
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +57 -0
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +32 -0
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +7 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +5 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +496 -1
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +280 -1
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +107 -0
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +81 -1
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +69 -2
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +63 -4
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +33 -0
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +18 -0
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +25 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +26 -0
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +147 -0
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +99 -0
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +53 -0
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +46 -0
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +19 -0
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +12 -0
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +34 -0
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +26 -3
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +9 -0
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +6 -0
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +26 -0
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +10 -0
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +125 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +75 -1
- package/dist/Sink.js.map +1 -1
- package/dist/StandardSchema.d.ts +1 -0
- package/dist/StandardSchema.d.ts.map +1 -1
- package/dist/StandardSchema.js +1 -0
- package/dist/Stdio.d.ts +7 -0
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +5 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +558 -0
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +261 -13
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +87 -0
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +61 -0
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +46 -0
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +19 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +65 -0
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +25 -0
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +2 -0
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +2 -0
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +63 -0
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +24 -0
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +3 -0
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js +1 -0
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +8 -0
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +4 -0
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +23 -0
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +12 -0
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +68 -0
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +28 -0
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +38 -0
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +18 -0
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +52 -0
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +23 -0
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +15 -0
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +8 -0
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +83 -0
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +52 -7
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +51 -0
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +29 -4
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +30 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +22 -1
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +25 -0
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +19 -0
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +51 -0
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +30 -0
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +24 -0
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +32 -18
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +14 -0
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +7 -0
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +25 -0
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +29 -13
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +25 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +12 -0
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +36 -0
- package/dist/Types.d.ts.map +1 -1
- package/dist/Types.js +1 -0
- package/dist/UndefinedOr.d.ts +15 -0
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +9 -0
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +15 -0
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +2 -0
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +4 -0
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +1 -0
- package/dist/Utils.js.map +1 -1
- package/dist/Version.d.ts +26 -0
- package/dist/Version.d.ts.map +1 -0
- package/dist/Version.js +36 -0
- package/dist/Version.js.map +1 -0
- package/dist/ai/Chat.js +1 -1
- package/dist/ai/Chat.js.map +1 -1
- package/dist/ai/DecisionModel.d.ts +22 -0
- package/dist/ai/DecisionModel.d.ts.map +1 -1
- package/dist/ai/DecisionModel.js +22 -4
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +14 -13
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpServer.d.ts +32 -11
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +213 -169
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Telemetry.d.ts +49 -41
- package/dist/ai/Telemetry.d.ts.map +1 -1
- package/dist/ai/Telemetry.js +6 -8
- package/dist/ai/Telemetry.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +79 -46
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
- package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
- package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/cluster/K8sHttpClient.js +5 -2
- package/dist/cluster/K8sHttpClient.js.map +1 -1
- package/dist/encoding/Base64.d.ts +4 -0
- package/dist/encoding/Base64.d.ts.map +1 -1
- package/dist/encoding/Base64.js +4 -0
- package/dist/encoding/Base64.js.map +1 -1
- package/dist/encoding/Base64Url.d.ts +4 -0
- package/dist/encoding/Base64Url.d.ts.map +1 -1
- package/dist/encoding/Base64Url.js +4 -0
- package/dist/encoding/Base64Url.js.map +1 -1
- package/dist/encoding/EncodingError.d.ts +4 -0
- package/dist/encoding/EncodingError.d.ts.map +1 -1
- package/dist/encoding/EncodingError.js +4 -0
- package/dist/encoding/EncodingError.js.map +1 -1
- package/dist/encoding/Hex.d.ts +5 -0
- package/dist/encoding/Hex.d.ts.map +1 -1
- package/dist/encoding/Hex.js +5 -0
- package/dist/encoding/Hex.js.map +1 -1
- package/dist/encoding/Toml.js +2 -2
- package/dist/encoding/Toml.js.map +1 -1
- package/dist/encoding/Yaml.d.ts.map +1 -1
- package/dist/encoding/Yaml.js +6 -4
- package/dist/encoding/Yaml.js.map +1 -1
- package/dist/encoding/index.d.ts +4 -0
- package/dist/encoding/index.d.ts.map +1 -1
- package/dist/encoding/index.js +4 -0
- package/dist/encoding/index.js.map +1 -1
- package/dist/eventlog/SqlEventJournal.js +8 -4
- package/dist/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
- package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/http/Headers.d.ts +3 -1
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +4 -2
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +9 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +40 -21
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientResponse.js +3 -1
- package/dist/http/HttpClientResponse.js.map +1 -1
- package/dist/http/HttpEffect.d.ts +3 -0
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +5 -2
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +17 -0
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +56 -39
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpServer.d.ts +1 -1
- package/dist/http/HttpServer.d.ts.map +1 -1
- package/dist/http/internal/tracing.d.ts +2 -0
- package/dist/http/internal/tracing.d.ts.map +1 -0
- package/dist/http/internal/tracing.js +37 -0
- package/dist/http/internal/tracing.js.map +1 -0
- package/dist/http-api/HttpApiBuilder.js +2 -1
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +12 -3
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiError.d.ts +4 -3
- package/dist/http-api/HttpApiError.d.ts.map +1 -1
- package/dist/http-api/HttpApiError.js +7 -4
- package/dist/http-api/HttpApiError.js.map +1 -1
- package/dist/http-api/HttpApiSecurity.d.ts +8 -8
- package/dist/http-api/HttpApiSecurity.js +8 -8
- package/dist/index.d.ts +155 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +155 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/array.js +3 -3
- package/dist/internal/arbitrary/array.js.map +1 -1
- package/dist/internal/arbitrary/model.js +26 -11
- package/dist/internal/arbitrary/model.js.map +1 -1
- package/dist/internal/arbitrary/runner.js +8 -8
- package/dist/internal/arbitrary/runner.js.map +1 -1
- package/dist/internal/arbitrary/schema.js +4 -5
- package/dist/internal/arbitrary/schema.js.map +1 -1
- package/dist/internal/effect.js +41 -39
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/schedule.js +7 -5
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/standardSchema.js +2 -2
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/version.d.ts +2 -0
- package/dist/internal/version.d.ts.map +1 -0
- package/dist/internal/version.js +3 -0
- package/dist/internal/version.js.map +1 -0
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +5 -6
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/observability/OtlpLogger.js +23 -27
- package/dist/observability/OtlpLogger.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts +5 -3
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +21 -94
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpResource.d.ts +4 -3
- package/dist/observability/OtlpResource.d.ts.map +1 -1
- package/dist/observability/OtlpResource.js +20 -23
- package/dist/observability/OtlpResource.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts +1 -0
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +32 -36
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/observability/internal/otlpProtobuf.js +32 -1
- package/dist/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +1 -1
- package/dist/reactivity/Atom.d.ts +5 -5
- package/dist/reactivity/Atom.d.ts.map +1 -1
- package/dist/reactivity/Atom.js +9 -5
- package/dist/reactivity/Atom.js.map +1 -1
- package/dist/reactivity/AtomHttpApi.d.ts +2 -2
- package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.d.ts +8 -0
- package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +21 -3
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +38 -20
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +18 -21
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/rpc/internal/tracing.d.ts +2 -0
- package/dist/rpc/internal/tracing.d.ts.map +1 -0
- package/dist/rpc/internal/tracing.js +18 -0
- package/dist/rpc/internal/tracing.js.map +1 -0
- package/dist/schema/SchemaCompiler/runtime.js +9 -1
- package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
- package/dist/sql/SqlClient.js +4 -4
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/Statement.d.ts +21 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +55 -7
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts +8 -0
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +7 -0
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +7 -0
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +6 -0
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +3 -0
- package/dist/testing/index.js.map +1 -1
- package/package.json +3 -3
- package/src/Array.ts +351 -3
- package/src/BigDecimal.ts +88 -0
- package/src/BigInt.ts +68 -0
- package/src/Boolean.ts +34 -0
- package/src/Brand.ts +10 -0
- package/src/ByteSize.ts +87 -0
- package/src/Cache.ts +50 -8
- package/src/Cause.ts +82 -0
- package/src/Channel.ts +368 -18
- package/src/ChannelSchema.ts +13 -0
- package/src/Chunk.ts +193 -0
- package/src/Clock.ts +7 -0
- package/src/Combiner.ts +10 -0
- package/src/Config.ts +82 -8
- package/src/ConfigProvider.ts +28 -0
- package/src/Console.ts +26 -0
- package/src/Context.ts +50 -0
- package/src/Cron.ts +32 -1
- package/src/Crypto.ts +5 -0
- package/src/Data.ts +13 -0
- package/src/DateTime.ts +171 -0
- package/src/Deferred.ts +51 -0
- package/src/Differ.ts +2 -0
- package/src/Duration.ts +90 -0
- package/src/Effect.ts +539 -5
- package/src/Effectable.ts +4 -0
- package/src/Equal.ts +12 -1
- package/src/Equivalence.ts +22 -0
- package/src/ErrorReporter.ts +36 -0
- package/src/ExecutionPlan.ts +58 -14
- package/src/Exit.ts +40 -0
- package/src/Fiber.ts +20 -0
- package/src/FiberHandle.ts +29 -4
- package/src/FiberMap.ts +38 -0
- package/src/FiberSet.ts +21 -0
- package/src/FileSystem.ts +16 -0
- package/src/Filter.ts +55 -0
- package/src/Formatter.ts +42 -1
- package/src/Function.ts +30 -0
- package/src/Graph.ts +317 -36
- package/src/HKT.ts +5 -0
- package/src/Hash.ts +15 -0
- package/src/HashMap.ts +91 -0
- package/src/HashRing.ts +18 -0
- package/src/HashSet.ts +53 -0
- package/src/Inspectable.ts +8 -0
- package/src/Iterable.ts +127 -0
- package/src/JsonPatch.ts +5 -0
- package/src/JsonPointer.ts +5 -0
- package/src/JsonSchema.ts +17 -0
- package/src/Latch.ts +14 -0
- package/src/Layer.ts +101 -1
- package/src/LayerMap.ts +7 -0
- package/src/LayerRef.ts +5 -0
- package/src/LogLevel.ts +20 -0
- package/src/Logger.ts +41 -5
- package/src/ManagedRuntime.ts +12 -1
- package/src/Match.ts +52 -0
- package/src/Metric.ts +69 -0
- package/src/MutableHashMap.ts +44 -0
- package/src/MutableHashSet.ts +17 -0
- package/src/MutableList.ts +21 -0
- package/src/MutableRef.ts +32 -0
- package/src/Newtype.ts +9 -0
- package/src/NonEmptyIterable.ts +4 -0
- package/src/Number.ts +61 -0
- package/src/Optic.ts +57 -0
- package/src/Option.ts +134 -0
- package/src/Order.ts +30 -0
- package/src/Ordering.ts +7 -0
- package/src/PartitionedSemaphore.ts +61 -22
- package/src/Path.ts +6 -0
- package/src/Pipeable.ts +7 -0
- package/src/PlatformError.ts +8 -0
- package/src/Pool.ts +20 -1
- package/src/Predicate.ts +85 -0
- package/src/PrimaryKey.ts +5 -0
- package/src/PubSub.ts +90 -9
- package/src/Pull.ts +20 -0
- package/src/Queue.ts +80 -10
- package/src/Random.ts +13 -0
- package/src/RcMap.ts +23 -0
- package/src/RcRef.ts +6 -0
- package/src/Record.ts +100 -0
- package/src/Redactable.ts +6 -0
- package/src/Redacted.ts +8 -0
- package/src/Reducer.ts +4 -0
- package/src/Ref.ts +42 -0
- package/src/References.ts +21 -0
- package/src/RegExp.ts +4 -0
- package/src/Request.ts +32 -0
- package/src/RequestResolver.ts +59 -10
- package/src/Resource.ts +7 -0
- package/src/Result.ts +93 -0
- package/src/Runtime.ts +10 -0
- package/src/Schedule.ts +61 -0
- package/src/Scheduler.ts +7 -0
- package/src/Schema.ts +499 -4
- package/src/SchemaAST.ts +115 -1
- package/src/SchemaGetter.ts +80 -4
- package/src/SchemaIssue.ts +34 -0
- package/src/SchemaParser.ts +26 -0
- package/src/SchemaRepresentation.ts +148 -0
- package/src/SchemaTransformation.ts +53 -0
- package/src/Scope.ts +19 -0
- package/src/ScopedCache.ts +55 -3
- package/src/ScopedRef.ts +9 -0
- package/src/Semaphore.ts +26 -0
- package/src/Sink.ts +126 -2
- package/src/StandardSchema.ts +1 -0
- package/src/Stdio.ts +7 -0
- package/src/Stream.ts +622 -15
- package/src/String.ts +87 -0
- package/src/Struct.ts +46 -0
- package/src/SubscriptionRef.ts +65 -0
- package/src/Symbol.ts +2 -0
- package/src/SynchronizedRef.ts +63 -0
- package/src/Take.ts +3 -0
- package/src/Terminal.ts +8 -0
- package/src/Tracer.ts +23 -0
- package/src/Trie.ts +68 -0
- package/src/Tuple.ts +38 -0
- package/src/TxChunk.ts +52 -0
- package/src/TxDeferred.ts +15 -0
- package/src/TxHashMap.ts +97 -6
- package/src/TxHashSet.ts +83 -3
- package/src/TxPriorityQueue.ts +34 -2
- package/src/TxPubSub.ts +26 -0
- package/src/TxQueue.ts +51 -0
- package/src/TxReentrantLock.ts +53 -36
- package/src/TxRef.ts +14 -0
- package/src/TxSemaphore.ts +47 -31
- package/src/TxSubscriptionRef.ts +25 -0
- package/src/Types.ts +36 -0
- package/src/UndefinedOr.ts +15 -0
- package/src/Unify.ts +15 -0
- package/src/Utils.ts +4 -0
- package/src/Version.ts +38 -0
- package/src/ai/Chat.ts +1 -1
- package/src/ai/DecisionModel.ts +42 -1
- package/src/ai/LanguageModel.ts +16 -19
- package/src/ai/McpServer.ts +107 -36
- package/src/ai/Telemetry.ts +62 -58
- package/src/ai/internal/mcpRuntime.ts +84 -43
- package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
- package/src/cluster/K8sHttpClient.ts +12 -2
- package/src/encoding/Base64.ts +4 -0
- package/src/encoding/Base64Url.ts +4 -0
- package/src/encoding/EncodingError.ts +5 -0
- package/src/encoding/Hex.ts +5 -0
- package/src/encoding/Toml.ts +2 -2
- package/src/encoding/Yaml.ts +8 -4
- package/src/encoding/index.ts +4 -0
- package/src/eventlog/SqlEventJournal.ts +18 -4
- package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
- package/src/http/Headers.ts +8 -2
- package/src/http/HttpClient.ts +44 -27
- package/src/http/HttpClientResponse.ts +3 -1
- package/src/http/HttpEffect.ts +11 -2
- package/src/http/HttpMiddleware.ts +60 -45
- package/src/http/HttpServer.ts +1 -1
- package/src/http/internal/tracing.ts +52 -0
- package/src/http-api/HttpApiBuilder.ts +5 -1
- package/src/http-api/HttpApiClient.ts +13 -4
- package/src/http-api/HttpApiError.ts +8 -4
- package/src/http-api/HttpApiSecurity.ts +8 -8
- package/src/index.ts +156 -0
- package/src/internal/arbitrary/array.ts +3 -3
- package/src/internal/arbitrary/model.ts +37 -14
- package/src/internal/arbitrary/runner.ts +7 -7
- package/src/internal/arbitrary/schema.ts +4 -3
- package/src/internal/effect.ts +47 -45
- package/src/internal/schedule.ts +23 -17
- package/src/internal/schema/standardSchema.ts +2 -2
- package/src/internal/version.ts +2 -0
- package/src/observability/OtlpExporter.ts +9 -6
- package/src/observability/OtlpLogger.ts +20 -21
- package/src/observability/OtlpMetrics.ts +34 -93
- package/src/observability/OtlpResource.ts +18 -27
- package/src/observability/OtlpTracer.ts +34 -40
- package/src/observability/internal/otlpProtobuf.ts +60 -0
- package/src/reactivity/AsyncResult.ts +1 -1
- package/src/reactivity/Atom.ts +10 -6
- package/src/reactivity/AtomHttpApi.ts +2 -4
- package/src/reactivity/AtomRegistry.ts +7 -0
- package/src/rpc/RpcClient.ts +48 -24
- package/src/rpc/RpcServer.ts +26 -24
- package/src/rpc/internal/tracing.ts +22 -0
- package/src/schema/SchemaCompiler/runtime.ts +4 -1
- package/src/sql/SqlClient.ts +4 -4
- package/src/sql/Statement.ts +59 -7
- package/src/testing/TestClock.ts +9 -0
- package/src/testing/TestConsole.ts +8 -0
- package/src/testing/index.ts +3 -0
package/src/Filter.ts
CHANGED
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
* filters for common JavaScript values and tags, helpers for combining filters,
|
|
9
9
|
* and conversions to predicates, options, and results.
|
|
10
10
|
*
|
|
11
|
+
* @stability stable
|
|
11
12
|
* @since 4.0.0
|
|
12
13
|
*/
|
|
13
14
|
import type { Effect } from "./Effect.ts"
|
|
@@ -38,6 +39,7 @@ import type { EqualsWith, ExcludeTag, ExtractReason, ExtractTag, ReasonTags, Tag
|
|
|
38
39
|
* positiveFilter(-3) // => Result.fail(-3)
|
|
39
40
|
* ```
|
|
40
41
|
*
|
|
42
|
+
* @stability stable
|
|
41
43
|
* @category models
|
|
42
44
|
* @since 4.0.0
|
|
43
45
|
*/
|
|
@@ -79,6 +81,7 @@ export interface Filter<in Input, out Pass = Input, out Fail = Input> {
|
|
|
79
81
|
* await Effect.runPromise(validateUser("")) // => Result.fail({ id: "", isActive: false })
|
|
80
82
|
* ```
|
|
81
83
|
*
|
|
84
|
+
* @stability stable
|
|
82
85
|
* @category models
|
|
83
86
|
* @since 4.0.0
|
|
84
87
|
*/
|
|
@@ -120,6 +123,7 @@ export interface FilterEffect<
|
|
|
120
123
|
* uppercaseFilter("ok") // => Result.succeed("OK")
|
|
121
124
|
* ```
|
|
122
125
|
*
|
|
126
|
+
* @stability stable
|
|
123
127
|
* @category constructors
|
|
124
128
|
* @since 4.0.0
|
|
125
129
|
*/
|
|
@@ -152,6 +156,7 @@ export const make = <Input, Pass, Fail>(
|
|
|
152
156
|
* await Effect.runPromise(asyncValidate("id")) // => Result.succeed("id")
|
|
153
157
|
* ```
|
|
154
158
|
*
|
|
159
|
+
* @stability stable
|
|
155
160
|
* @category constructors
|
|
156
161
|
* @since 4.0.0
|
|
157
162
|
*/
|
|
@@ -163,6 +168,7 @@ export const makeEffect = <Input, Pass, Fail, E, R>(
|
|
|
163
168
|
* Transforms the failure value produced by a `Filter`, leaving successful
|
|
164
169
|
* results unchanged.
|
|
165
170
|
*
|
|
171
|
+
* @stability stable
|
|
166
172
|
* @category mapping
|
|
167
173
|
* @since 4.0.0
|
|
168
174
|
*/
|
|
@@ -171,6 +177,7 @@ export const mapFail: {
|
|
|
171
177
|
* Transforms the failure value produced by a `Filter`, leaving successful
|
|
172
178
|
* results unchanged.
|
|
173
179
|
*
|
|
180
|
+
* @stability stable
|
|
174
181
|
* @category mapping
|
|
175
182
|
* @since 4.0.0
|
|
176
183
|
*/
|
|
@@ -179,6 +186,7 @@ export const mapFail: {
|
|
|
179
186
|
* Transforms the failure value produced by a `Filter`, leaving successful
|
|
180
187
|
* results unchanged.
|
|
181
188
|
*
|
|
189
|
+
* @stability stable
|
|
182
190
|
* @category mapping
|
|
183
191
|
* @since 4.0.0
|
|
184
192
|
*/
|
|
@@ -202,6 +210,7 @@ export {
|
|
|
202
210
|
* Creates a Filter that tries to apply a function and returns `fail` on
|
|
203
211
|
* error.
|
|
204
212
|
*
|
|
213
|
+
* @stability stable
|
|
205
214
|
* @category constructors
|
|
206
215
|
* @since 4.0.0
|
|
207
216
|
*/
|
|
@@ -235,6 +244,7 @@ export {
|
|
|
235
244
|
* isString("ok") // => Result.succeed("ok")
|
|
236
245
|
* ```
|
|
237
246
|
*
|
|
247
|
+
* @stability stable
|
|
238
248
|
* @category constructors
|
|
239
249
|
* @since 4.0.0
|
|
240
250
|
*/
|
|
@@ -266,6 +276,7 @@ export const fromPredicate: {
|
|
|
266
276
|
* isString("ok") // => Result.succeed("ok")
|
|
267
277
|
* ```
|
|
268
278
|
*
|
|
279
|
+
* @stability stable
|
|
269
280
|
* @category constructors
|
|
270
281
|
* @since 4.0.0
|
|
271
282
|
*/
|
|
@@ -297,6 +308,7 @@ export const fromPredicate: {
|
|
|
297
308
|
* isString("ok") // => Result.succeed("ok")
|
|
298
309
|
* ```
|
|
299
310
|
*
|
|
311
|
+
* @stability stable
|
|
300
312
|
* @category constructors
|
|
301
313
|
* @since 4.0.0
|
|
302
314
|
*/
|
|
@@ -308,6 +320,7 @@ export const fromPredicate: {
|
|
|
308
320
|
* Creates a `Filter` from a function that returns an `Option`; `Some(value)`
|
|
309
321
|
* passes with `value`, and `None` fails with the original input.
|
|
310
322
|
*
|
|
323
|
+
* @stability stable
|
|
311
324
|
* @category constructors
|
|
312
325
|
* @since 4.0.0
|
|
313
326
|
*/
|
|
@@ -327,6 +340,7 @@ export const fromPredicateOption = <A, B>(predicate: (a: A) => Option.Option<B>)
|
|
|
327
340
|
* @see {@link toOption} for keeping passed values and discarding failure values
|
|
328
341
|
* @see {@link toResult} for preserving both pass and failure values
|
|
329
342
|
*
|
|
343
|
+
* @stability stable
|
|
330
344
|
* @category converting
|
|
331
345
|
* @since 4.0.0
|
|
332
346
|
*/
|
|
@@ -347,6 +361,7 @@ export const toPredicate = <A, Pass, Fail>(
|
|
|
347
361
|
* Filter.string(42) // => Result.fail(42)
|
|
348
362
|
* ```
|
|
349
363
|
*
|
|
364
|
+
* @stability stable
|
|
350
365
|
* @category constructors
|
|
351
366
|
* @since 4.0.0
|
|
352
367
|
*/
|
|
@@ -370,6 +385,7 @@ export const string: Filter<unknown, string> = fromPredicate(Predicate.isString)
|
|
|
370
385
|
* @see {@link equals} for structural equality when distinct values with equal
|
|
371
386
|
* contents should pass
|
|
372
387
|
*
|
|
388
|
+
* @stability stable
|
|
373
389
|
* @category constructors
|
|
374
390
|
* @since 4.0.0
|
|
375
391
|
*/
|
|
@@ -391,6 +407,7 @@ export const equalsStrict =
|
|
|
391
407
|
* @see {@link Predicate.hasProperty} for guarding property presence instead of
|
|
392
408
|
* calling an input's `has` method
|
|
393
409
|
*
|
|
410
|
+
* @stability stable
|
|
394
411
|
* @category constructors
|
|
395
412
|
* @since 4.0.0
|
|
396
413
|
*/
|
|
@@ -418,6 +435,7 @@ export const has =
|
|
|
418
435
|
*
|
|
419
436
|
* @see {@link fromPredicate} for custom predicate-based narrowing
|
|
420
437
|
*
|
|
438
|
+
* @stability stable
|
|
421
439
|
* @category constructors
|
|
422
440
|
* @since 4.0.0
|
|
423
441
|
*/
|
|
@@ -438,6 +456,7 @@ export const instanceOf =
|
|
|
438
456
|
* Filter.number("42") // => Result.fail("42")
|
|
439
457
|
* ```
|
|
440
458
|
*
|
|
459
|
+
* @stability stable
|
|
441
460
|
* @category constructors
|
|
442
461
|
* @since 4.0.0
|
|
443
462
|
*/
|
|
@@ -459,6 +478,7 @@ export const number: Filter<unknown, number> = fromPredicate(Predicate.isNumber)
|
|
|
459
478
|
* @see {@link Predicate.isBoolean} for the underlying guard
|
|
460
479
|
* @see {@link fromPredicate} for custom predicate-based filters
|
|
461
480
|
*
|
|
481
|
+
* @stability stable
|
|
462
482
|
* @category constructors
|
|
463
483
|
* @since 4.0.0
|
|
464
484
|
*/
|
|
@@ -485,6 +505,7 @@ export const boolean: Filter<unknown, boolean> = fromPredicate(Predicate.isBoole
|
|
|
485
505
|
* @see {@link number} for JavaScript `number` values
|
|
486
506
|
* @see {@link Predicate.isBigInt} for the underlying guard
|
|
487
507
|
*
|
|
508
|
+
* @stability stable
|
|
488
509
|
* @category constructors
|
|
489
510
|
* @since 4.0.0
|
|
490
511
|
*/
|
|
@@ -493,6 +514,7 @@ export const bigint: Filter<unknown, bigint> = fromPredicate(Predicate.isBigInt)
|
|
|
493
514
|
/**
|
|
494
515
|
* A predefined filter that only passes through Symbol values.
|
|
495
516
|
*
|
|
517
|
+
* @stability stable
|
|
496
518
|
* @category constructors
|
|
497
519
|
* @since 4.0.0
|
|
498
520
|
*/
|
|
@@ -520,6 +542,7 @@ export const symbol: Filter<unknown, symbol> = fromPredicate(Predicate.isSymbol)
|
|
|
520
542
|
* @see {@link instanceOf} for constructor-based filtering
|
|
521
543
|
* @see {@link fromPredicate} for custom date checks
|
|
522
544
|
*
|
|
545
|
+
* @stability stable
|
|
523
546
|
* @category constructors
|
|
524
547
|
* @since 4.0.0
|
|
525
548
|
*/
|
|
@@ -546,6 +569,7 @@ export const date: Filter<unknown, Date> = fromPredicate(Predicate.isDate)
|
|
|
546
569
|
* `Filter` result is not needed
|
|
547
570
|
* @see {@link reason} for extracting a nested reason variant from tagged errors
|
|
548
571
|
*
|
|
572
|
+
* @stability stable
|
|
549
573
|
* @category constructors
|
|
550
574
|
* @since 4.0.0
|
|
551
575
|
*/
|
|
@@ -571,6 +595,7 @@ export const tagged: {
|
|
|
571
595
|
* `Filter` result is not needed
|
|
572
596
|
* @see {@link reason} for extracting a nested reason variant from tagged errors
|
|
573
597
|
*
|
|
598
|
+
* @stability stable
|
|
574
599
|
* @category constructors
|
|
575
600
|
* @since 4.0.0
|
|
576
601
|
*/
|
|
@@ -596,6 +621,7 @@ export const tagged: {
|
|
|
596
621
|
* `Filter` result is not needed
|
|
597
622
|
* @see {@link reason} for extracting a nested reason variant from tagged errors
|
|
598
623
|
*
|
|
624
|
+
* @stability stable
|
|
599
625
|
* @category constructors
|
|
600
626
|
* @since 4.0.0
|
|
601
627
|
*/
|
|
@@ -621,6 +647,7 @@ export const tagged: {
|
|
|
621
647
|
* `Filter` result is not needed
|
|
622
648
|
* @see {@link reason} for extracting a nested reason variant from tagged errors
|
|
623
649
|
*
|
|
650
|
+
* @stability stable
|
|
624
651
|
* @category constructors
|
|
625
652
|
* @since 4.0.0
|
|
626
653
|
*/
|
|
@@ -637,6 +664,7 @@ const taggedImpl =
|
|
|
637
664
|
/**
|
|
638
665
|
* Creates a filter that extracts a reason from a tagged error.
|
|
639
666
|
*
|
|
667
|
+
* @stability stable
|
|
640
668
|
* @category constructors
|
|
641
669
|
* @since 4.0.0
|
|
642
670
|
*/
|
|
@@ -644,6 +672,7 @@ export const reason: {
|
|
|
644
672
|
/**
|
|
645
673
|
* Creates a filter that extracts a reason from a tagged error.
|
|
646
674
|
*
|
|
675
|
+
* @stability stable
|
|
647
676
|
* @category constructors
|
|
648
677
|
* @since 4.0.0
|
|
649
678
|
*/
|
|
@@ -654,6 +683,7 @@ export const reason: {
|
|
|
654
683
|
/**
|
|
655
684
|
* Creates a filter that extracts a reason from a tagged error.
|
|
656
685
|
*
|
|
686
|
+
* @stability stable
|
|
657
687
|
* @category constructors
|
|
658
688
|
* @since 4.0.0
|
|
659
689
|
*/
|
|
@@ -661,6 +691,7 @@ export const reason: {
|
|
|
661
691
|
/**
|
|
662
692
|
* Creates a filter that extracts a reason from a tagged error.
|
|
663
693
|
*
|
|
694
|
+
* @stability stable
|
|
664
695
|
* @category constructors
|
|
665
696
|
* @since 4.0.0
|
|
666
697
|
*/
|
|
@@ -698,6 +729,7 @@ const reasonImpl =
|
|
|
698
729
|
* equality
|
|
699
730
|
* @see {@link Equal.equals} for the underlying structural equality semantics
|
|
700
731
|
*
|
|
732
|
+
* @stability stable
|
|
701
733
|
* @category constructors
|
|
702
734
|
* @since 4.0.0
|
|
703
735
|
*/
|
|
@@ -708,6 +740,7 @@ export const equals =
|
|
|
708
740
|
/**
|
|
709
741
|
* Combines two filters with logical OR semantics.
|
|
710
742
|
*
|
|
743
|
+
* @stability stable
|
|
711
744
|
* @category combinators
|
|
712
745
|
* @since 4.0.0
|
|
713
746
|
*/
|
|
@@ -715,6 +748,7 @@ export const or: {
|
|
|
715
748
|
/**
|
|
716
749
|
* Combines two filters with logical OR semantics.
|
|
717
750
|
*
|
|
751
|
+
* @stability stable
|
|
718
752
|
* @category combinators
|
|
719
753
|
* @since 4.0.0
|
|
720
754
|
*/
|
|
@@ -722,6 +756,7 @@ export const or: {
|
|
|
722
756
|
/**
|
|
723
757
|
* Combines two filters with logical OR semantics.
|
|
724
758
|
*
|
|
759
|
+
* @stability stable
|
|
725
760
|
* @category combinators
|
|
726
761
|
* @since 4.0.0
|
|
727
762
|
*/
|
|
@@ -749,6 +784,7 @@ export const or: {
|
|
|
749
784
|
*
|
|
750
785
|
* @see {@link zip} for combining two filters into a tuple
|
|
751
786
|
*
|
|
787
|
+
* @stability stable
|
|
752
788
|
* @category combinators
|
|
753
789
|
* @since 4.0.0
|
|
754
790
|
*/
|
|
@@ -767,6 +803,7 @@ export const zipWith: {
|
|
|
767
803
|
*
|
|
768
804
|
* @see {@link zip} for combining two filters into a tuple
|
|
769
805
|
*
|
|
806
|
+
* @stability stable
|
|
770
807
|
* @category combinators
|
|
771
808
|
* @since 4.0.0
|
|
772
809
|
*/
|
|
@@ -785,6 +822,7 @@ export const zipWith: {
|
|
|
785
822
|
*
|
|
786
823
|
* @see {@link zip} for combining two filters into a tuple
|
|
787
824
|
*
|
|
825
|
+
* @stability stable
|
|
788
826
|
* @category combinators
|
|
789
827
|
* @since 4.0.0
|
|
790
828
|
*/
|
|
@@ -826,6 +864,7 @@ export const zipWith: {
|
|
|
826
864
|
* positiveAndEven(2) // => Result.succeed([2, 2])
|
|
827
865
|
* ```
|
|
828
866
|
*
|
|
867
|
+
* @stability stable
|
|
829
868
|
* @category combinators
|
|
830
869
|
* @since 4.0.0
|
|
831
870
|
*/
|
|
@@ -850,6 +889,7 @@ export const zip: {
|
|
|
850
889
|
* positiveAndEven(2) // => Result.succeed([2, 2])
|
|
851
890
|
* ```
|
|
852
891
|
*
|
|
892
|
+
* @stability stable
|
|
853
893
|
* @category combinators
|
|
854
894
|
* @since 4.0.0
|
|
855
895
|
*/
|
|
@@ -876,6 +916,7 @@ export const zip: {
|
|
|
876
916
|
* positiveAndEven(2) // => Result.succeed([2, 2])
|
|
877
917
|
* ```
|
|
878
918
|
*
|
|
919
|
+
* @stability stable
|
|
879
920
|
* @category combinators
|
|
880
921
|
* @since 4.0.0
|
|
881
922
|
*/
|
|
@@ -901,6 +942,7 @@ export const zip: {
|
|
|
901
942
|
* positiveEven(2) // => Result.succeed(2)
|
|
902
943
|
* ```
|
|
903
944
|
*
|
|
945
|
+
* @stability stable
|
|
904
946
|
* @category combinators
|
|
905
947
|
* @since 4.0.0
|
|
906
948
|
*/
|
|
@@ -920,6 +962,7 @@ export const andLeft: {
|
|
|
920
962
|
* positiveEven(2) // => Result.succeed(2)
|
|
921
963
|
* ```
|
|
922
964
|
*
|
|
965
|
+
* @stability stable
|
|
923
966
|
* @category combinators
|
|
924
967
|
* @since 4.0.0
|
|
925
968
|
*/
|
|
@@ -941,6 +984,7 @@ export const andLeft: {
|
|
|
941
984
|
* positiveEven(2) // => Result.succeed(2)
|
|
942
985
|
* ```
|
|
943
986
|
*
|
|
987
|
+
* @stability stable
|
|
944
988
|
* @category combinators
|
|
945
989
|
* @since 4.0.0
|
|
946
990
|
*/
|
|
@@ -967,6 +1011,7 @@ export const andLeft: {
|
|
|
967
1011
|
* positiveDoubled(2) // => Result.succeed(4)
|
|
968
1012
|
* ```
|
|
969
1013
|
*
|
|
1014
|
+
* @stability stable
|
|
970
1015
|
* @category combinators
|
|
971
1016
|
* @since 4.0.0
|
|
972
1017
|
*/
|
|
@@ -988,6 +1033,7 @@ export const andRight: {
|
|
|
988
1033
|
* positiveDoubled(2) // => Result.succeed(4)
|
|
989
1034
|
* ```
|
|
990
1035
|
*
|
|
1036
|
+
* @stability stable
|
|
991
1037
|
* @category combinators
|
|
992
1038
|
* @since 4.0.0
|
|
993
1039
|
*/
|
|
@@ -1011,6 +1057,7 @@ export const andRight: {
|
|
|
1011
1057
|
* positiveDoubled(2) // => Result.succeed(4)
|
|
1012
1058
|
* ```
|
|
1013
1059
|
*
|
|
1060
|
+
* @stability stable
|
|
1014
1061
|
* @category combinators
|
|
1015
1062
|
* @since 4.0.0
|
|
1016
1063
|
*/
|
|
@@ -1037,6 +1084,7 @@ export const andRight: {
|
|
|
1037
1084
|
* stringToUpper("hello") // => Result.succeed("HELLO")
|
|
1038
1085
|
* ```
|
|
1039
1086
|
*
|
|
1087
|
+
* @stability stable
|
|
1040
1088
|
* @category combinators
|
|
1041
1089
|
* @since 4.0.0
|
|
1042
1090
|
*/
|
|
@@ -1058,6 +1106,7 @@ export const compose: {
|
|
|
1058
1106
|
* stringToUpper("hello") // => Result.succeed("HELLO")
|
|
1059
1107
|
* ```
|
|
1060
1108
|
*
|
|
1109
|
+
* @stability stable
|
|
1061
1110
|
* @category combinators
|
|
1062
1111
|
* @since 4.0.0
|
|
1063
1112
|
*/
|
|
@@ -1079,6 +1128,7 @@ export const compose: {
|
|
|
1079
1128
|
* stringToUpper("hello") // => Result.succeed("HELLO")
|
|
1080
1129
|
* ```
|
|
1081
1130
|
*
|
|
1131
|
+
* @stability stable
|
|
1082
1132
|
* @category combinators
|
|
1083
1133
|
* @since 4.0.0
|
|
1084
1134
|
*/
|
|
@@ -1102,6 +1152,7 @@ export const compose: {
|
|
|
1102
1152
|
* If either filter fails, the returned filter fails with the original input
|
|
1103
1153
|
* instead of the intermediate failure value.
|
|
1104
1154
|
*
|
|
1155
|
+
* @stability stable
|
|
1105
1156
|
* @category combinators
|
|
1106
1157
|
* @since 4.0.0
|
|
1107
1158
|
*/
|
|
@@ -1115,6 +1166,7 @@ export const composePassthrough: {
|
|
|
1115
1166
|
* If either filter fails, the returned filter fails with the original input
|
|
1116
1167
|
* instead of the intermediate failure value.
|
|
1117
1168
|
*
|
|
1169
|
+
* @stability stable
|
|
1118
1170
|
* @category combinators
|
|
1119
1171
|
* @since 4.0.0
|
|
1120
1172
|
*/
|
|
@@ -1128,6 +1180,7 @@ export const composePassthrough: {
|
|
|
1128
1180
|
* If either filter fails, the returned filter fails with the original input
|
|
1129
1181
|
* instead of the intermediate failure value.
|
|
1130
1182
|
*
|
|
1183
|
+
* @stability stable
|
|
1131
1184
|
* @category combinators
|
|
1132
1185
|
* @since 4.0.0
|
|
1133
1186
|
*/
|
|
@@ -1156,6 +1209,7 @@ export const composePassthrough: {
|
|
|
1156
1209
|
* @see {@link toResult} for keeping the filter failure value
|
|
1157
1210
|
* @see {@link toPredicate} for plain boolean pass/fail checks
|
|
1158
1211
|
*
|
|
1212
|
+
* @stability stable
|
|
1159
1213
|
* @category converting
|
|
1160
1214
|
* @since 4.0.0
|
|
1161
1215
|
*/
|
|
@@ -1179,6 +1233,7 @@ export const toOption = <A, Pass, Fail>(
|
|
|
1179
1233
|
* @see {@link toOption} for keeping only passed values
|
|
1180
1234
|
* @see {@link toPredicate} for plain boolean pass/fail checks
|
|
1181
1235
|
*
|
|
1236
|
+
* @stability stable
|
|
1182
1237
|
* @category converting
|
|
1183
1238
|
* @since 4.0.0
|
|
1184
1239
|
*/
|
package/src/Formatter.ts
CHANGED
|
@@ -7,6 +7,7 @@
|
|
|
7
7
|
* wraps JSON formatting with redaction and circular-reference handling, and the
|
|
8
8
|
* module also includes helpers for property keys, paths, and dates.
|
|
9
9
|
*
|
|
10
|
+
* @stability stable
|
|
10
11
|
* @since 4.0.0
|
|
11
12
|
*/
|
|
12
13
|
import * as Predicate from "./Predicate.ts"
|
|
@@ -35,6 +36,7 @@ import { getRedacted, redact, symbolRedactable } from "./Redactable.ts"
|
|
|
35
36
|
*
|
|
36
37
|
* @see {@link format}
|
|
37
38
|
* @see {@link formatJson}
|
|
39
|
+
* @stability stable
|
|
38
40
|
* @category models
|
|
39
41
|
* @since 4.0.0
|
|
40
42
|
*/
|
|
@@ -102,6 +104,7 @@ export interface Formatter<in Value, out Format = string> {
|
|
|
102
104
|
*
|
|
103
105
|
* @see {@link formatJson}
|
|
104
106
|
* @see {@link Formatter}
|
|
107
|
+
* @stability stable
|
|
105
108
|
* @category formatting
|
|
106
109
|
* @since 2.0.0
|
|
107
110
|
*/
|
|
@@ -298,6 +301,7 @@ function safeGet(input: object, key: PropertyKey): unknown {
|
|
|
298
301
|
*
|
|
299
302
|
* @see {@link format}
|
|
300
303
|
* @see {@link Formatter}
|
|
304
|
+
* @stability stable
|
|
301
305
|
* @category serialization
|
|
302
306
|
* @since 4.0.0
|
|
303
307
|
*/
|
|
@@ -331,8 +335,45 @@ export function formatJson(input: unknown, options?: {
|
|
|
331
335
|
if (current !== redacted) {
|
|
332
336
|
ancestors.push(current)
|
|
333
337
|
}
|
|
334
|
-
|
|
338
|
+
// Leave boxed primitives intact so JSON.stringify can unbox them natively.
|
|
339
|
+
if (!hasGetter(current) || isJsonPrimitiveWrapper(current)) {
|
|
340
|
+
return current
|
|
341
|
+
}
|
|
342
|
+
// JSON.stringify reads a getter once, then calls toJSON on the result
|
|
343
|
+
// before the replacer sees it. Intercept that read to redact the value
|
|
344
|
+
// first, instead of re-reading the getter in the replacer, which could
|
|
345
|
+
// repeat side effects or return a different value.
|
|
346
|
+
const serialized = new Proxy(current, {
|
|
347
|
+
get(target, key) {
|
|
348
|
+
const value = Reflect.get(target, key, target)
|
|
349
|
+
return Object.getOwnPropertyDescriptor(target, key)?.get !== undefined ? redact(value) : value
|
|
350
|
+
}
|
|
351
|
+
})
|
|
352
|
+
ancestors.push(serialized)
|
|
353
|
+
return serialized
|
|
335
354
|
},
|
|
336
355
|
options?.space
|
|
337
356
|
) ?? "null"
|
|
338
357
|
}
|
|
358
|
+
|
|
359
|
+
function hasGetter(object: object): boolean {
|
|
360
|
+
for (const key of Object.getOwnPropertyNames(object)) {
|
|
361
|
+
if (Object.getOwnPropertyDescriptor(object, key)?.get !== undefined) {
|
|
362
|
+
return true
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
return false
|
|
366
|
+
}
|
|
367
|
+
|
|
368
|
+
function isJsonPrimitiveWrapper(object: object): boolean {
|
|
369
|
+
// Built-in valueOf checks internal slots across realms without calling user code.
|
|
370
|
+
for (const valueOf of [Number.prototype.valueOf, Boolean.prototype.valueOf, String.prototype.valueOf]) {
|
|
371
|
+
try {
|
|
372
|
+
Reflect.apply(valueOf, object, [])
|
|
373
|
+
return true
|
|
374
|
+
} catch {
|
|
375
|
+
// Try the next wrapper type.
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
return false
|
|
379
|
+
}
|
package/src/Function.ts
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
* module also contains small identity, constant, tuple, type-level, and
|
|
7
7
|
* memoization helpers used across the library.
|
|
8
8
|
*
|
|
9
|
+
* @stability stable
|
|
9
10
|
* @since 2.0.0
|
|
10
11
|
*/
|
|
11
12
|
import type { TypeLambda } from "./HKT.ts"
|
|
@@ -29,6 +30,7 @@ import { pipeArguments } from "./Pipeable.ts"
|
|
|
29
30
|
* // Equivalent to: (a: string) => number
|
|
30
31
|
* ```
|
|
31
32
|
*
|
|
33
|
+
* @stability stable
|
|
32
34
|
* @category utility types
|
|
33
35
|
* @since 2.0.0
|
|
34
36
|
*/
|
|
@@ -96,6 +98,7 @@ export interface FunctionTypeLambda extends TypeLambda {
|
|
|
96
98
|
* pipe(2, sum(3)) // => 5
|
|
97
99
|
* ```
|
|
98
100
|
*
|
|
101
|
+
* @stability stable
|
|
99
102
|
* @category combinators
|
|
100
103
|
* @since 2.0.0
|
|
101
104
|
*/
|
|
@@ -160,6 +163,7 @@ export const dual: {
|
|
|
160
163
|
* pipe(2, sum(3)) // => 5
|
|
161
164
|
* ```
|
|
162
165
|
*
|
|
166
|
+
* @stability stable
|
|
163
167
|
* @category combinators
|
|
164
168
|
* @since 2.0.0
|
|
165
169
|
*/
|
|
@@ -224,6 +228,7 @@ export const dual: {
|
|
|
224
228
|
* pipe(2, sum(3)) // => 5
|
|
225
229
|
* ```
|
|
226
230
|
*
|
|
231
|
+
* @stability stable
|
|
227
232
|
* @category combinators
|
|
228
233
|
* @since 2.0.0
|
|
229
234
|
*/
|
|
@@ -297,6 +302,7 @@ export const dual: {
|
|
|
297
302
|
*
|
|
298
303
|
* @see {@link pipe} for building left-to-right pipelines
|
|
299
304
|
*
|
|
305
|
+
* @stability stable
|
|
300
306
|
* @category combinators
|
|
301
307
|
* @since 2.0.0
|
|
302
308
|
*/
|
|
@@ -318,6 +324,7 @@ export const apply = <A>(a: A) => <B>(self: (a: A) => B): B => self(a)
|
|
|
318
324
|
* constNull() // => null
|
|
319
325
|
* ```
|
|
320
326
|
*
|
|
327
|
+
* @stability stable
|
|
321
328
|
* @category models
|
|
322
329
|
* @since 2.0.0
|
|
323
330
|
*/
|
|
@@ -340,6 +347,7 @@ export type LazyArg<A> = () => A
|
|
|
340
347
|
* sum(2, 3) // => 5
|
|
341
348
|
* ```
|
|
342
349
|
*
|
|
350
|
+
* @stability stable
|
|
343
351
|
* @category models
|
|
344
352
|
* @since 2.0.0
|
|
345
353
|
*/
|
|
@@ -360,6 +368,7 @@ export type FunctionN<A extends ReadonlyArray<unknown>, B> = (...args: A) => B
|
|
|
360
368
|
* identity(5) // => 5
|
|
361
369
|
* ```
|
|
362
370
|
*
|
|
371
|
+
* @stability stable
|
|
363
372
|
* @category combinators
|
|
364
373
|
* @since 2.0.0
|
|
365
374
|
*/
|
|
@@ -388,6 +397,7 @@ export const identity = <A>(a: A): A => a
|
|
|
388
397
|
*
|
|
389
398
|
* @see {@link cast} for changing only the static TypeScript type
|
|
390
399
|
*
|
|
400
|
+
* @stability stable
|
|
391
401
|
* @category utility types
|
|
392
402
|
* @since 2.0.0
|
|
393
403
|
*/
|
|
@@ -408,6 +418,7 @@ export const satisfies = <A>() => <B extends A>(b: B) => b
|
|
|
408
418
|
*
|
|
409
419
|
* @see {@link satisfies} for checking assignability without changing the resulting type
|
|
410
420
|
*
|
|
421
|
+
* @stability stable
|
|
411
422
|
* @category utility types
|
|
412
423
|
* @since 4.0.0
|
|
413
424
|
*/
|
|
@@ -432,6 +443,7 @@ export const cast: <A, B>(a: A) => B = identity as any
|
|
|
432
443
|
* constNull() // => null
|
|
433
444
|
* ```
|
|
434
445
|
*
|
|
446
|
+
* @stability stable
|
|
435
447
|
* @category constructors
|
|
436
448
|
* @since 2.0.0
|
|
437
449
|
*/
|
|
@@ -452,6 +464,7 @@ export const constant = <A>(value: A): LazyArg<A> => () => value
|
|
|
452
464
|
* Function.constTrue() // => true
|
|
453
465
|
* ```
|
|
454
466
|
*
|
|
467
|
+
* @stability stable
|
|
455
468
|
* @category constants
|
|
456
469
|
* @since 2.0.0
|
|
457
470
|
*/
|
|
@@ -472,6 +485,7 @@ export const constTrue: LazyArg<boolean> = constant(true)
|
|
|
472
485
|
* Function.constFalse() // => false
|
|
473
486
|
* ```
|
|
474
487
|
*
|
|
488
|
+
* @stability stable
|
|
475
489
|
* @category constants
|
|
476
490
|
* @since 2.0.0
|
|
477
491
|
*/
|
|
@@ -492,6 +506,7 @@ export const constFalse: LazyArg<boolean> = constant(false)
|
|
|
492
506
|
* Function.constNull() // => null
|
|
493
507
|
* ```
|
|
494
508
|
*
|
|
509
|
+
* @stability stable
|
|
495
510
|
* @category constants
|
|
496
511
|
* @since 2.0.0
|
|
497
512
|
*/
|
|
@@ -512,6 +527,7 @@ export const constNull: LazyArg<null> = constant(null)
|
|
|
512
527
|
* Function.constUndefined() // => undefined
|
|
513
528
|
* ```
|
|
514
529
|
*
|
|
530
|
+
* @stability stable
|
|
515
531
|
* @category constants
|
|
516
532
|
* @since 2.0.0
|
|
517
533
|
*/
|
|
@@ -533,6 +549,7 @@ export const constUndefined: LazyArg<undefined> = constant(undefined)
|
|
|
533
549
|
* Function.constVoid() // => undefined
|
|
534
550
|
* ```
|
|
535
551
|
*
|
|
552
|
+
* @stability stable
|
|
536
553
|
* @category constants
|
|
537
554
|
* @since 2.0.0
|
|
538
555
|
*/
|
|
@@ -556,6 +573,7 @@ export const constVoid: LazyArg<void> = constUndefined
|
|
|
556
573
|
* Function.flip(f)("aaa")(2) // => -1
|
|
557
574
|
* ```
|
|
558
575
|
*
|
|
576
|
+
* @stability stable
|
|
559
577
|
* @category combinators
|
|
560
578
|
* @since 2.0.0
|
|
561
579
|
*/
|
|
@@ -587,6 +605,7 @@ export const flip = <A extends Array<unknown>, B extends Array<unknown>, C>(
|
|
|
587
605
|
* @see {@link flow} for composing a left-to-right sequence of functions
|
|
588
606
|
* @see {@link pipe} for applying a value through a left-to-right sequence immediately
|
|
589
607
|
*
|
|
608
|
+
* @stability stable
|
|
590
609
|
* @category combinators
|
|
591
610
|
* @since 2.0.0
|
|
592
611
|
*/
|
|
@@ -613,6 +632,7 @@ export const compose: {
|
|
|
613
632
|
* @see {@link flow} for composing a left-to-right sequence of functions
|
|
614
633
|
* @see {@link pipe} for applying a value through a left-to-right sequence immediately
|
|
615
634
|
*
|
|
635
|
+
* @stability stable
|
|
616
636
|
* @category combinators
|
|
617
637
|
* @since 2.0.0
|
|
618
638
|
*/
|
|
@@ -639,6 +659,7 @@ export const compose: {
|
|
|
639
659
|
* @see {@link flow} for composing a left-to-right sequence of functions
|
|
640
660
|
* @see {@link pipe} for applying a value through a left-to-right sequence immediately
|
|
641
661
|
*
|
|
662
|
+
* @stability stable
|
|
642
663
|
* @category combinators
|
|
643
664
|
* @since 2.0.0
|
|
644
665
|
*/
|
|
@@ -669,6 +690,7 @@ export const compose: {
|
|
|
669
690
|
* }
|
|
670
691
|
* ```
|
|
671
692
|
*
|
|
693
|
+
* @stability stable
|
|
672
694
|
* @category utility types
|
|
673
695
|
* @since 2.0.0
|
|
674
696
|
*/
|
|
@@ -695,6 +717,7 @@ export const absurd = <A>(_: never): A => {
|
|
|
695
717
|
*
|
|
696
718
|
* @see {@link untupled} for adapting a tuple-argument function back to multiple arguments
|
|
697
719
|
*
|
|
720
|
+
* @stability stable
|
|
698
721
|
* @category combinators
|
|
699
722
|
* @since 2.0.0
|
|
700
723
|
*/
|
|
@@ -719,6 +742,7 @@ export const tupled = <A extends ReadonlyArray<unknown>, B>(f: (...a: A) => B):
|
|
|
719
742
|
*
|
|
720
743
|
* @see {@link tupled} for adapting a multi-argument function to one tuple argument
|
|
721
744
|
*
|
|
745
|
+
* @stability stable
|
|
722
746
|
* @category combinators
|
|
723
747
|
* @since 2.0.0
|
|
724
748
|
*/
|
|
@@ -777,6 +801,7 @@ export const untupled = <A extends ReadonlyArray<unknown>, B>(f: (a: A) => B): (
|
|
|
777
801
|
* ) // => [6, 8]
|
|
778
802
|
* ```
|
|
779
803
|
*
|
|
804
|
+
* @stability stable
|
|
780
805
|
* @category combinators
|
|
781
806
|
* @since 2.0.0
|
|
782
807
|
*/
|
|
@@ -1261,6 +1286,7 @@ export function pipe(a: unknown, ...args: Array<any>): unknown {
|
|
|
1261
1286
|
* @see {@link pipe} for applying a value through a left-to-right sequence immediately
|
|
1262
1287
|
* @see {@link compose} for composing exactly two functions
|
|
1263
1288
|
*
|
|
1289
|
+
* @stability stable
|
|
1264
1290
|
* @category combinators
|
|
1265
1291
|
* @since 2.0.0
|
|
1266
1292
|
*/
|
|
@@ -1454,6 +1480,7 @@ export function flow(
|
|
|
1454
1480
|
*
|
|
1455
1481
|
* ```
|
|
1456
1482
|
*
|
|
1483
|
+
* @stability stable
|
|
1457
1484
|
* @category utility types
|
|
1458
1485
|
* @since 2.0.0
|
|
1459
1486
|
*/
|
|
@@ -1476,6 +1503,7 @@ export const hole: <T>() => T = cast(absurd)
|
|
|
1476
1503
|
* Function.SK(0, "hello") // => "hello"
|
|
1477
1504
|
* ```
|
|
1478
1505
|
*
|
|
1506
|
+
* @stability stable
|
|
1479
1507
|
* @category combinators
|
|
1480
1508
|
* @since 2.0.0
|
|
1481
1509
|
*/
|
|
@@ -1503,6 +1531,7 @@ export const SK = <A, B>(_: A, b: B): B => b
|
|
|
1503
1531
|
* mutated after its first call, later calls still return the cached result for
|
|
1504
1532
|
* that reference.
|
|
1505
1533
|
*
|
|
1534
|
+
* @stability stable
|
|
1506
1535
|
* @category caching
|
|
1507
1536
|
* @since 4.0.0
|
|
1508
1537
|
*/
|
|
@@ -1539,6 +1568,7 @@ export function memoize<A extends object, O extends {} | null>(f: (a: A) => O):
|
|
|
1539
1568
|
* different value, this memoization changes that behavior.
|
|
1540
1569
|
*
|
|
1541
1570
|
* @see {@link memoize} for memoizing functions without an idempotence requirement
|
|
1571
|
+
* @stability stable
|
|
1542
1572
|
* @category caching
|
|
1543
1573
|
* @since 4.0.0
|
|
1544
1574
|
*/
|