effect 4.0.0-beta.94 → 4.0.0-beta.98
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/Array.d.ts.map +1 -1
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Channel.d.ts.map +1 -1
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +44 -6
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +63 -24
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts.map +1 -1
- package/dist/Context.d.ts.map +1 -1
- package/dist/Cron.d.ts +4 -1
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +98 -53
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Data.d.ts.map +1 -1
- package/dist/DateTime.d.ts +12 -12
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Encoding.d.ts.map +1 -1
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ExecutionPlan.d.ts +2 -2
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/FiberHandle.d.ts +8 -8
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberMap.d.ts +8 -8
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberSet.d.ts +4 -4
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Function.d.ts.map +1 -1
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js.map +1 -1
- package/dist/Hash.d.ts.map +1 -1
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Layer.d.ts.map +1 -1
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerRef.d.ts +5 -7
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +4 -6
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/Logger.d.ts.map +1 -1
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/Metric.d.ts.map +1 -1
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +28 -10
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Option.d.ts.map +1 -1
- package/dist/Order.d.ts.map +1 -1
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/Pool.d.ts.map +1 -1
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Random.d.ts.map +1 -1
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/Record.d.ts.map +1 -1
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Ref.d.ts.map +1 -1
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/Request.d.ts +1 -1
- package/dist/Request.d.ts.map +1 -1
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Result.d.ts.map +1 -1
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Schedule.d.ts +1206 -4013
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +244 -1348
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +71 -22
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +76 -33
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +25 -10
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaError.d.ts +53 -0
- package/dist/SchemaError.d.ts.map +1 -0
- package/dist/SchemaError.js +61 -0
- package/dist/SchemaError.js.map +1 -0
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +17 -12
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaRepresentation.d.ts +106 -106
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +186 -224
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +38 -2
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +38 -2
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stream.d.ts +2 -2
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +1 -1
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts.map +1 -1
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/Take.d.ts.map +1 -1
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/Types.d.ts +1 -1
- package/dist/Types.d.ts.map +1 -1
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/Utils.d.ts.map +1 -1
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/effect.js +26 -8
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/schema/equivalence.js +1 -2
- package/dist/internal/schema/equivalence.js.map +1 -1
- package/dist/internal/schema/representation.js +1 -3
- package/dist/internal/schema/representation.js.map +1 -1
- package/dist/internal/schema/schema.d.ts +0 -13
- package/dist/internal/schema/schema.d.ts.map +1 -1
- package/dist/internal/schema/schema.js +4 -29
- package/dist/internal/schema/schema.js.map +1 -1
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestSchema.d.ts.map +1 -1
- package/dist/unstable/ai/AiError.d.ts +1 -1
- package/dist/unstable/ai/AiError.d.ts.map +1 -1
- package/dist/unstable/ai/Chat.d.ts +1 -1
- package/dist/unstable/ai/Chat.d.ts.map +1 -1
- package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
- package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
- package/dist/unstable/ai/McpSchema.d.ts +278 -278
- package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
- package/dist/unstable/ai/McpServer.d.ts.map +1 -1
- package/dist/unstable/ai/Model.d.ts.map +1 -1
- package/dist/unstable/ai/Prompt.d.ts.map +1 -1
- package/dist/unstable/ai/Response.d.ts.map +1 -1
- package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
- package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
- package/dist/unstable/ai/Tool.d.ts.map +1 -1
- package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
- package/dist/unstable/cli/Argument.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.d.ts +8 -16
- package/dist/unstable/cli/CliError.d.ts.map +1 -1
- package/dist/unstable/cli/CliError.js +8 -16
- package/dist/unstable/cli/CliError.js.map +1 -1
- package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
- package/dist/unstable/cli/Command.d.ts +4 -3
- package/dist/unstable/cli/Command.d.ts.map +1 -1
- package/dist/unstable/cli/Command.js +3 -3
- package/dist/unstable/cli/Command.js.map +1 -1
- package/dist/unstable/cli/Completions.d.ts.map +1 -1
- package/dist/unstable/cli/Flag.d.ts.map +1 -1
- package/dist/unstable/cli/GlobalFlag.d.ts +6 -8
- package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
- package/dist/unstable/cli/GlobalFlag.js +6 -6
- package/dist/unstable/cli/GlobalFlag.js.map +1 -1
- package/dist/unstable/cli/Param.d.ts.map +1 -1
- package/dist/unstable/cli/Primitive.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.d.ts.map +1 -1
- package/dist/unstable/cli/Prompt.js.map +1 -1
- package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
- package/dist/unstable/cli/internal/ansi.js.map +1 -1
- package/dist/unstable/cli/internal/command.d.ts.map +1 -1
- package/dist/unstable/cli/internal/help.d.ts.map +1 -1
- package/dist/unstable/cli/internal/parser.js.map +1 -1
- package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterCron.js +1 -1
- package/dist/unstable/cluster/ClusterCron.js.map +1 -1
- package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts +1 -1
- package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js +1 -1
- package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
- package/dist/unstable/cluster/Entity.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts +1 -1
- package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
- package/dist/unstable/cluster/EntityProxyServer.js +2 -4
- package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
- package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
- package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
- package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
- package/dist/unstable/cluster/Message.d.ts.map +1 -1
- package/dist/unstable/cluster/MessageStorage.d.ts +25 -29
- package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/Reply.d.ts.map +1 -1
- package/dist/unstable/cluster/Runner.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
- package/dist/unstable/cluster/RunnerServer.d.ts +1 -1
- package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/Runners.d.ts +8 -8
- package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
- package/dist/unstable/cluster/Sharding.js +3 -4
- package/dist/unstable/cluster/Sharding.js.map +1 -1
- package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +6 -8
- package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
- package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
- package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
- package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts +1 -1
- package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
- package/dist/unstable/cluster/Snowflake.js +1 -1
- package/dist/unstable/cluster/Snowflake.js.map +1 -1
- package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts +1 -1
- package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/unstable/cluster/internal/entityManager.js +26 -24
- package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
- package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
- package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
- package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
- package/dist/unstable/encoding/Sse.d.ts.map +1 -1
- package/dist/unstable/eventlog/Event.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventJournal.js.map +1 -1
- package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLog.js +2 -2
- package/dist/unstable/eventlog/EventLog.js.map +1 -1
- package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogRemote.d.ts +21 -21
- package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +1 -1
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +3 -4
- package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
- package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/unstable/http/Cookies.d.ts +1 -1
- package/dist/unstable/http/Cookies.d.ts.map +1 -1
- package/dist/unstable/http/Etag.d.ts.map +1 -1
- package/dist/unstable/http/Headers.d.ts.map +1 -1
- package/dist/unstable/http/HttpBody.d.ts.map +1 -1
- package/dist/unstable/http/HttpClient.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientError.d.ts +1 -1
- package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
- package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
- package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts +1 -1
- package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
- package/dist/unstable/http/HttpServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerError.d.ts +1 -1
- package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRequest.d.ts +2 -2
- package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
- package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
- package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/unstable/http/Multipart.d.ts +2 -1
- package/dist/unstable/http/Multipart.d.ts.map +1 -1
- package/dist/unstable/http/Url.d.ts.map +1 -1
- package/dist/unstable/http/UrlParams.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.d.ts +36 -15
- package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApi.js +19 -20
- package/dist/unstable/httpapi/HttpApi.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts +51 -62
- package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiBuilder.js +68 -58
- package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.d.ts +53 -53
- package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiClient.js +40 -30
- package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +171 -170
- package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiEndpoint.js +31 -19
- package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts +23 -1
- package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiError.js +31 -0
- package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.d.ts +55 -30
- package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiGroup.js +22 -29
- package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +8 -8
- package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.d.ts +2 -2
- package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiScalar.js +4 -3
- package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.d.ts +8 -0
- package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.d.ts +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.d.ts +4 -4
- package/dist/unstable/httpapi/HttpApiTest.d.ts.map +1 -1
- package/dist/unstable/httpapi/HttpApiTest.js +9 -8
- package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts +1 -1
- package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
- package/dist/unstable/httpapi/OpenApi.js +77 -37
- package/dist/unstable/httpapi/OpenApi.js.map +1 -1
- package/dist/unstable/httpapi/internal/html.js +6 -2
- package/dist/unstable/httpapi/internal/html.js.map +1 -1
- package/dist/unstable/httpapi/internal/mediaType.d.ts +2 -0
- package/dist/unstable/httpapi/internal/mediaType.d.ts.map +1 -0
- package/dist/unstable/httpapi/internal/mediaType.js +7 -0
- package/dist/unstable/httpapi/internal/mediaType.js.map +1 -0
- package/dist/unstable/observability/Otlp.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpExporter.js +3 -1
- package/dist/unstable/observability/OtlpExporter.js.map +1 -1
- package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
- package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
- package/dist/unstable/observability/internal/otlpEnv.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
- package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
- package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts +1 -1
- package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
- package/dist/unstable/persistence/PersistedQueue.js +16 -12
- package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
- package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
- package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
- package/dist/unstable/persistence/Redis.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
- package/dist/unstable/process/ChildProcess.js.map +1 -1
- package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
- package/dist/unstable/reactivity/AsyncResult.d.ts +2 -2
- package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
- package/dist/unstable/reactivity/Atom.js +1 -1
- package/dist/unstable/reactivity/Atom.js.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.d.ts +7 -7
- package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomHttpApi.js +3 -2
- package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
- package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.d.ts +2 -2
- package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/unstable/reactivity/AtomRegistry.js +28 -37
- package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
- package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
- package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
- package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
- package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.d.ts +2 -1
- package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcClient.js +5 -5
- package/dist/unstable/rpc/RpcClient.js.map +1 -1
- package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.d.ts +7 -7
- package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcMessage.js +2 -2
- package/dist/unstable/rpc/RpcMessage.js.map +1 -1
- package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSchema.d.ts +1 -1
- package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcSerialization.js +8 -8
- package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
- package/dist/unstable/rpc/RpcServer.d.ts +5 -3
- package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
- package/dist/unstable/rpc/RpcServer.js +11 -8
- package/dist/unstable/rpc/RpcServer.js.map +1 -1
- package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
- package/dist/unstable/rpc/Utils.d.ts.map +1 -1
- package/dist/unstable/schema/Model.d.ts +24 -38
- package/dist/unstable/schema/Model.d.ts.map +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts +1 -1
- package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
- package/dist/unstable/socket/Socket.d.ts +1 -1
- package/dist/unstable/socket/Socket.d.ts.map +1 -1
- package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
- package/dist/unstable/sql/Migrator.d.ts.map +1 -1
- package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.d.ts +2 -2
- package/dist/unstable/sql/SqlError.d.ts.map +1 -1
- package/dist/unstable/sql/SqlError.js.map +1 -1
- package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
- package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
- package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
- package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
- package/dist/unstable/sql/Statement.d.ts.map +1 -1
- package/dist/unstable/workers/Transferable.d.ts.map +1 -1
- package/dist/unstable/workers/Worker.d.ts.map +1 -1
- package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.d.ts +1 -1
- package/dist/unstable/workflow/Activity.d.ts.map +1 -1
- package/dist/unstable/workflow/Activity.js +1 -1
- package/dist/unstable/workflow/Activity.js.map +1 -1
- package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableDeferred.js +1 -1
- package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
- package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
- package/dist/unstable/workflow/DurableQueue.js +1 -1
- package/dist/unstable/workflow/DurableQueue.js.map +1 -1
- package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js +1 -1
- package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
- package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
- package/dist/unstable/workflow/WorkflowProxyServer.js +1 -2
- package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
- package/package.json +11 -12
- package/src/ConfigProvider.ts +79 -27
- package/src/Cron.ts +109 -57
- package/src/LayerRef.ts +4 -6
- package/src/Number.ts +29 -10
- package/src/Schedule.ts +1437 -4445
- package/src/Schema.ts +95 -34
- package/src/SchemaAST.ts +25 -13
- package/src/SchemaError.ts +64 -0
- package/src/SchemaGetter.ts +22 -16
- package/src/SchemaRepresentation.ts +165 -202
- package/src/SchemaTransformation.ts +42 -2
- package/src/Stream.ts +1 -1
- package/src/index.ts +10 -0
- package/src/internal/effect.ts +39 -22
- package/src/internal/schema/equivalence.ts +1 -2
- package/src/internal/schema/representation.ts +4 -4
- package/src/internal/schema/schema.ts +4 -37
- package/src/unstable/cli/CliError.ts +24 -16
- package/src/unstable/cli/Command.ts +8 -8
- package/src/unstable/cli/GlobalFlag.ts +22 -33
- package/src/unstable/cluster/ClusterCron.ts +4 -3
- package/src/unstable/cluster/ClusterWorkflowEngine.ts +4 -3
- package/src/unstable/cluster/EntityProxyServer.ts +15 -17
- package/src/unstable/cluster/Sharding.ts +4 -4
- package/src/unstable/cluster/Snowflake.ts +2 -2
- package/src/unstable/cluster/internal/entityManager.ts +61 -47
- package/src/unstable/eventlog/EventLog.ts +4 -3
- package/src/unstable/httpapi/HttpApi.ts +72 -47
- package/src/unstable/httpapi/HttpApiBuilder.ts +320 -217
- package/src/unstable/httpapi/HttpApiClient.ts +196 -151
- package/src/unstable/httpapi/HttpApiEndpoint.ts +251 -447
- package/src/unstable/httpapi/HttpApiError.ts +33 -0
- package/src/unstable/httpapi/HttpApiGroup.ts +95 -74
- package/src/unstable/httpapi/HttpApiMiddleware.ts +10 -7
- package/src/unstable/httpapi/HttpApiScalar.ts +15 -12
- package/src/unstable/httpapi/HttpApiSchema.ts +8 -0
- package/src/unstable/httpapi/HttpApiSwagger.ts +2 -2
- package/src/unstable/httpapi/HttpApiTest.ts +15 -14
- package/src/unstable/httpapi/OpenApi.ts +74 -36
- package/src/unstable/httpapi/internal/html.ts +9 -2
- package/src/unstable/httpapi/internal/mediaType.ts +6 -0
- package/src/unstable/observability/OtlpExporter.ts +1 -1
- package/src/unstable/persistence/PersistedQueue.ts +16 -14
- package/src/unstable/reactivity/Atom.ts +1 -1
- package/src/unstable/reactivity/AtomHttpApi.ts +164 -162
- package/src/unstable/reactivity/AtomRegistry.ts +35 -44
- package/src/unstable/rpc/RpcClient.ts +10 -9
- package/src/unstable/rpc/RpcMessage.ts +8 -9
- package/src/unstable/rpc/RpcSerialization.ts +16 -16
- package/src/unstable/rpc/RpcServer.ts +15 -9
- package/src/unstable/workflow/Activity.ts +6 -5
- package/src/unstable/workflow/DurableDeferred.ts +1 -1
- package/src/unstable/workflow/DurableQueue.ts +4 -3
- package/src/unstable/workflow/WorkflowEngine.ts +4 -3
- package/src/unstable/workflow/WorkflowProxyServer.ts +11 -12
|
@@ -5,7 +5,7 @@ import type { Path } from "../../Path.ts";
|
|
|
5
5
|
import { type Pipeable } from "../../Pipeable.ts";
|
|
6
6
|
import * as Redacted from "../../Redacted.ts";
|
|
7
7
|
import * as Scope from "../../Scope.ts";
|
|
8
|
-
import type {
|
|
8
|
+
import type { NoInfer } from "../../Types.ts";
|
|
9
9
|
import type { Cookie } from "../http/Cookies.ts";
|
|
10
10
|
import type * as Etag from "../http/Etag.ts";
|
|
11
11
|
import type { HttpPlatform } from "../http/HttpPlatform.ts";
|
|
@@ -23,7 +23,7 @@ import type * as HttpApiSecurity from "./HttpApiSecurity.ts";
|
|
|
23
23
|
* @category constructors
|
|
24
24
|
* @since 4.0.0
|
|
25
25
|
*/
|
|
26
|
-
export declare const layer: <Id extends string, Groups extends HttpApiGroup.
|
|
26
|
+
export declare const layer: <Id extends string, Groups extends HttpApiGroup.Constraint>(api: HttpApi.HttpApi<Id, Groups>, options?: {
|
|
27
27
|
readonly openapiPath?: `/${string}` | undefined;
|
|
28
28
|
}) => Layer.Layer<never, never, Etag.Generator | HttpRouter.HttpRouter | FileSystem | HttpPlatform | Path | HttpApiGroup.ToService<Id, Groups>>;
|
|
29
29
|
/**
|
|
@@ -38,52 +38,65 @@ export declare const layer: <Id extends string, Groups extends HttpApiGroup.Any>
|
|
|
38
38
|
* @category handlers
|
|
39
39
|
* @since 4.0.0
|
|
40
40
|
*/
|
|
41
|
-
export declare const group: <ApiId extends string, Groups extends HttpApiGroup.
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
41
|
+
export declare const group: <ApiId extends string, Groups extends HttpApiGroup.Constraint, const Identifier extends HttpApiGroup.Identifier<Groups>, Return>(api: HttpApi.HttpApi<ApiId, Groups>, groupIdentifier: Identifier, build: (handlers: Handlers.FromGroup<HttpApiGroup.WithIdentifier<Groups, Identifier>>) => Handlers.ValidateReturn<Return>) => Layer.Layer<HttpApiGroup.Service<ApiId, Identifier>, Handlers.Error<Return>, Exclude<Handlers.Context<Return>, Scope.Scope>>;
|
|
42
|
+
declare const HandlersTypeId = "~effect/httpapi/HttpApiBuilder/Handlers";
|
|
43
|
+
type HandlerRequirements<Endpoint extends HttpApiEndpoint.Constraint, R1, R = HttpApiEndpoint.ExcludeProvided<Endpoint, R1 | HttpApiEndpoint.ServerServices<Endpoint>>> = HttpApiEndpoint.Middleware<Endpoint> | HttpApiEndpoint.MiddlewareServices<Endpoint> | ([R] extends [never] ? never : HttpRouter.Request<"Requires", R>);
|
|
44
|
+
interface HandlerOptions {
|
|
45
|
+
readonly uninterruptible?: boolean | undefined;
|
|
46
|
+
}
|
|
47
|
+
type HandleAllEntry<Endpoint extends HttpApiEndpoint.Constraint> = HttpApiEndpoint.Handler<Endpoint, HttpApiEndpoint.MiddlewareError<Endpoint>, unknown> | {
|
|
48
|
+
readonly handler: HttpApiEndpoint.Handler<Endpoint, HttpApiEndpoint.MiddlewareError<Endpoint>, unknown>;
|
|
49
|
+
readonly options?: HandlerOptions | undefined;
|
|
50
|
+
};
|
|
51
|
+
type HandleAllHandlers<EndpointsByIdentifier extends Record<string, HttpApiEndpoint.Constraint>> = {
|
|
52
|
+
readonly [Identifier in keyof EndpointsByIdentifier]?: HandleAllEntry<EndpointsByIdentifier[Identifier]>;
|
|
53
|
+
};
|
|
54
|
+
type HandleAllExtraKeys<EndpointsByIdentifier extends Record<string, HttpApiEndpoint.Constraint>, HandlersByIdentifier> = {
|
|
55
|
+
readonly [Identifier in Exclude<keyof HandlersByIdentifier, keyof EndpointsByIdentifier>]: never;
|
|
56
|
+
};
|
|
57
|
+
type NotHandledIdentifier<Identifier extends PropertyKey, HandledIdentifiers extends PropertyKey> = Identifier extends HandledIdentifiers ? never : unknown;
|
|
58
|
+
type HandleAllEntryHandler<Entry> = Entry extends {
|
|
59
|
+
readonly handler: infer Handler;
|
|
60
|
+
} ? Handler : Entry;
|
|
61
|
+
type HandleAllRequirements<EndpointsByIdentifier extends Record<string, HttpApiEndpoint.Constraint>, HandlersByIdentifier extends HandleAllHandlers<EndpointsByIdentifier>> = {
|
|
62
|
+
readonly [Identifier in keyof HandlersByIdentifier & keyof EndpointsByIdentifier]: HandleAllEntryHandler<HandlersByIdentifier[Identifier]> extends HttpApiEndpoint.Handler<EndpointsByIdentifier[Identifier], HttpApiEndpoint.MiddlewareError<EndpointsByIdentifier[Identifier]>, infer R1> ? HandlerRequirements<EndpointsByIdentifier[Identifier], R1> : never;
|
|
63
|
+
}[keyof HandlersByIdentifier & keyof EndpointsByIdentifier];
|
|
64
|
+
type HandlersResult<A> = A extends Effect.Effect<infer H, any, any> ? H : A;
|
|
65
|
+
type MissingHandlerNames<H extends Handlers<any, any, any>> = Exclude<keyof H["~EndpointsByIdentifier"], H["~HandledIdentifiers"]>;
|
|
66
|
+
type ValidateHandlersReturn<A, H = HandlersResult<A>, Missing = H extends Handlers<any, any, any> ? MissingHandlerNames<H> : never> = H extends Handlers<any, any, any> ? [Missing] extends [never] ? A : `Endpoint not handled: ${Missing & string}` : `Must return the implemented handlers`;
|
|
56
67
|
/**
|
|
57
68
|
* Mutable handler collection for one `HttpApi` group.
|
|
58
69
|
*
|
|
59
70
|
* **Details**
|
|
60
71
|
*
|
|
61
72
|
* Each call to `handle` or `handleRaw` registers an endpoint implementation and
|
|
62
|
-
*
|
|
63
|
-
*
|
|
73
|
+
* adds that endpoint identifier to the type-level set of implemented endpoints.
|
|
74
|
+
* Endpoint identifiers that were already handled are rejected at the type level.
|
|
64
75
|
*
|
|
65
76
|
* @category handlers
|
|
66
77
|
* @since 4.0.0
|
|
67
78
|
*/
|
|
68
|
-
export interface Handlers<R,
|
|
69
|
-
readonly [HandlersTypeId]:
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
readonly group: HttpApiGroup.AnyWithProps;
|
|
73
|
-
readonly handlers: Map<string, Handlers.Item<R>>;
|
|
79
|
+
export interface Handlers<R, EndpointsByIdentifier extends Record<string, HttpApiEndpoint.Constraint> = {}, HandledIdentifiers extends keyof EndpointsByIdentifier = never> extends Pipeable {
|
|
80
|
+
readonly [HandlersTypeId]: typeof HandlersTypeId;
|
|
81
|
+
readonly "~EndpointsByIdentifier": EndpointsByIdentifier;
|
|
82
|
+
readonly "~HandledIdentifiers": HandledIdentifiers;
|
|
74
83
|
/**
|
|
75
|
-
* Add the implementation for an `HttpApiEndpoint` to a `Handlers` group.
|
|
84
|
+
* Add the implementation for an unhandled `HttpApiEndpoint` to a `Handlers` group.
|
|
76
85
|
*/
|
|
77
|
-
handle<
|
|
86
|
+
handle<Identifier extends keyof EndpointsByIdentifier, R1>(identifier: Identifier & NotHandledIdentifier<Identifier, HandledIdentifiers>, handler: HttpApiEndpoint.Handler<EndpointsByIdentifier[Identifier], HttpApiEndpoint.MiddlewareError<EndpointsByIdentifier[Identifier]>, R1>, options?: {
|
|
78
87
|
readonly uninterruptible?: boolean | undefined;
|
|
79
|
-
} | undefined): Handlers<R |
|
|
88
|
+
} | undefined): Handlers<R | HandlerRequirements<EndpointsByIdentifier[Identifier], R1>, EndpointsByIdentifier, HandledIdentifiers | Identifier>;
|
|
80
89
|
/**
|
|
81
|
-
* Add
|
|
90
|
+
* Add implementations for unhandled `HttpApiEndpoint`s in a `Handlers` group.
|
|
91
|
+
*/
|
|
92
|
+
handleAll<const HandlersByIdentifier extends HandleAllHandlers<Omit<EndpointsByIdentifier, HandledIdentifiers>>>(handlers: HandlersByIdentifier & HandleAllExtraKeys<Omit<EndpointsByIdentifier, HandledIdentifiers>, HandlersByIdentifier>): Handlers<R | HandleAllRequirements<EndpointsByIdentifier, HandlersByIdentifier>, EndpointsByIdentifier, HandledIdentifiers | (keyof HandlersByIdentifier & keyof EndpointsByIdentifier)>;
|
|
93
|
+
/**
|
|
94
|
+
* Add the implementation for an unhandled `HttpApiEndpoint` to a `Handlers` group.
|
|
82
95
|
* This version opts out of automatic payload decoding and provides the raw request.
|
|
83
96
|
*/
|
|
84
|
-
handleRaw<
|
|
97
|
+
handleRaw<Identifier extends keyof EndpointsByIdentifier, R1>(identifier: Identifier & NotHandledIdentifier<Identifier, HandledIdentifiers>, handler: HttpApiEndpoint.HandlerRaw<EndpointsByIdentifier[Identifier], HttpApiEndpoint.MiddlewareError<EndpointsByIdentifier[Identifier]>, R1>, options?: {
|
|
85
98
|
readonly uninterruptible?: boolean | undefined;
|
|
86
|
-
} | undefined): Handlers<R |
|
|
99
|
+
} | undefined): Handlers<R | HandlerRequirements<EndpointsByIdentifier[Identifier], R1>, EndpointsByIdentifier, HandledIdentifiers | Identifier>;
|
|
87
100
|
}
|
|
88
101
|
/**
|
|
89
102
|
* Namespace containing helper types for `HttpApiBuilder` handler collections.
|
|
@@ -91,32 +104,6 @@ export interface Handlers<R, Endpoints extends HttpApiEndpoint.Any = never> exte
|
|
|
91
104
|
* @since 4.0.0
|
|
92
105
|
*/
|
|
93
106
|
export declare namespace Handlers {
|
|
94
|
-
/**
|
|
95
|
-
* A `Handlers` value with its context and endpoint types erased.
|
|
96
|
-
*
|
|
97
|
-
* @category handlers
|
|
98
|
-
* @since 4.0.0
|
|
99
|
-
*/
|
|
100
|
-
interface Any {
|
|
101
|
-
readonly [HandlersTypeId]: any;
|
|
102
|
-
}
|
|
103
|
-
/**
|
|
104
|
-
* Record stored for a registered endpoint handler.
|
|
105
|
-
*
|
|
106
|
-
* **Details**
|
|
107
|
-
*
|
|
108
|
-
* It keeps the endpoint metadata, handler function, whether raw request handling
|
|
109
|
-
* is used, and whether the handler should run uninterruptibly.
|
|
110
|
-
*
|
|
111
|
-
* @category handlers
|
|
112
|
-
* @since 4.0.0
|
|
113
|
-
*/
|
|
114
|
-
type Item<R> = {
|
|
115
|
-
readonly endpoint: HttpApiEndpoint.AnyWithProps;
|
|
116
|
-
readonly handler: HttpApiEndpoint.Handler<any, any, R>;
|
|
117
|
-
readonly isRaw: boolean;
|
|
118
|
-
readonly uninterruptible: boolean;
|
|
119
|
-
};
|
|
120
107
|
/**
|
|
121
108
|
* Creates a handler collection for a group where every endpoint in the group is
|
|
122
109
|
* still awaiting an implementation.
|
|
@@ -124,7 +111,7 @@ export declare namespace Handlers {
|
|
|
124
111
|
* @category handlers
|
|
125
112
|
* @since 4.0.0
|
|
126
113
|
*/
|
|
127
|
-
type FromGroup<Group extends HttpApiGroup.
|
|
114
|
+
type FromGroup<Group extends HttpApiGroup.Constraint> = Handlers<never, Group["endpoints"]>;
|
|
128
115
|
/**
|
|
129
116
|
* Validates the return value of a group handler builder, preserving successful
|
|
130
117
|
* handler collections and producing a descriptive type error when endpoints remain
|
|
@@ -133,7 +120,7 @@ export declare namespace Handlers {
|
|
|
133
120
|
* @category handlers
|
|
134
121
|
* @since 4.0.0
|
|
135
122
|
*/
|
|
136
|
-
type ValidateReturn<A> =
|
|
123
|
+
type ValidateReturn<A> = ValidateHandlersReturn<A>;
|
|
137
124
|
/**
|
|
138
125
|
* Extracts the error channel from an effect that produces a `Handlers`
|
|
139
126
|
* collection, returning `never` for non-effectful handler collections.
|
|
@@ -141,7 +128,7 @@ export declare namespace Handlers {
|
|
|
141
128
|
* @category handlers
|
|
142
129
|
* @since 4.0.0
|
|
143
130
|
*/
|
|
144
|
-
type Error<A> = A extends Effect.Effect<Handlers<infer _R, infer
|
|
131
|
+
type Error<A> = A extends Effect.Effect<Handlers<infer _R, infer _EndpointsByIdentifier, infer _HandledIdentifiers>, infer _EX, infer _RX> ? _EX : never;
|
|
145
132
|
/**
|
|
146
133
|
* Extracts the services required by a handler collection, including both handler
|
|
147
134
|
* requirements and the environment required to construct the handlers.
|
|
@@ -149,8 +136,9 @@ export declare namespace Handlers {
|
|
|
149
136
|
* @category handlers
|
|
150
137
|
* @since 4.0.0
|
|
151
138
|
*/
|
|
152
|
-
type Context<A> = A extends Handlers<infer _R, infer
|
|
139
|
+
type Context<A> = A extends Handlers<infer _R, infer _EndpointsByIdentifier, infer _HandledIdentifiers> ? _R : A extends Effect.Effect<Handlers<infer _R, infer _EndpointsByIdentifier, infer _HandledIdentifiers>, infer _EX, infer _RX> ? _R | _RX : never;
|
|
153
140
|
}
|
|
141
|
+
type EndpointReturn<Groups extends HttpApiGroup.Constraint, GroupIdentifier extends HttpApiGroup.Identifier<Groups>, EndpointIdentifier extends HttpApiGroup.Endpoints<HttpApiGroup.WithIdentifier<Groups, GroupIdentifier>>["identifier"], R, Endpoint extends HttpApiEndpoint.Constraint = HttpApiEndpoint.WithIdentifier<HttpApiGroup.Endpoints<HttpApiGroup.WithIdentifier<Groups, GroupIdentifier>>, EndpointIdentifier>> = Effect.Effect<Effect.Effect<HttpServerResponse, never, HttpServerRequest | HttpRouter.RouteContext | Request.ParsedSearchParams | Exclude<R, HttpApiEndpoint.MiddlewareProvides<Endpoint>>>, never, HttpApiEndpoint.ServerServices<Endpoint> | HttpApiEndpoint.Middleware<Endpoint> | HttpApiEndpoint.MiddlewareServices<Endpoint> | Etag.Generator | FileSystem | HttpPlatform | Path>;
|
|
154
142
|
/**
|
|
155
143
|
* Builds the server-side HTTP effect for a single endpoint in an API group using
|
|
156
144
|
* the endpoint metadata, middleware, codecs, and supplied handler.
|
|
@@ -158,7 +146,7 @@ export declare namespace Handlers {
|
|
|
158
146
|
* @category handlers
|
|
159
147
|
* @since 4.0.0
|
|
160
148
|
*/
|
|
161
|
-
export declare const endpoint: <ApiId extends string, Groups extends HttpApiGroup.
|
|
149
|
+
export declare const endpoint: <ApiId extends string, Groups extends HttpApiGroup.Constraint, const GroupIdentifier extends HttpApiGroup.Identifier<Groups>, const EndpointIdentifier extends HttpApiGroup.Endpoints<HttpApiGroup.WithIdentifier<Groups, GroupIdentifier>>["identifier"], R>(api: HttpApi.HttpApi<ApiId, Groups>, groupIdentifier: GroupIdentifier, endpointIdentifier: EndpointIdentifier, handler: NoInfer<HttpApiEndpoint.HandlerWithIdentifier<HttpApiGroup.Endpoints<HttpApiGroup.WithIdentifier<Groups, GroupIdentifier>>, EndpointIdentifier, never, R>>) => EndpointReturn<Groups, GroupIdentifier, EndpointIdentifier, R>;
|
|
162
150
|
/**
|
|
163
151
|
* Decodes credentials for an HTTP API security scheme from the current request,
|
|
164
152
|
* supporting bearer, API key, and basic authentication inputs.
|
|
@@ -175,4 +163,5 @@ export declare const securityDecode: <Security extends HttpApiSecurity.HttpApiSe
|
|
|
175
163
|
* @since 4.0.0
|
|
176
164
|
*/
|
|
177
165
|
export declare const securitySetCookie: (self: HttpApiSecurity.ApiKey, value: string | Redacted.Redacted, options?: Cookie["options"]) => Effect.Effect<void, never, HttpServerRequest>;
|
|
166
|
+
export {};
|
|
178
167
|
//# sourceMappingURL=HttpApiBuilder.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpApiBuilder.d.ts","sourceRoot":"","sources":["../../../src/unstable/httpapi/HttpApiBuilder.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,MAAM,MAAM,iBAAiB,CAAA;AAGzC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAA;AAGrD,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAEvC,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAA;AACzC,OAAO,EAAE,KAAK,QAAQ,EAAiB,MAAM,mBAAmB,CAAA;AAEhE,OAAO,KAAK,QAAQ,MAAM,mBAAmB,CAAA;AAM7C,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AAEvC,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"HttpApiBuilder.d.ts","sourceRoot":"","sources":["../../../src/unstable/httpapi/HttpApiBuilder.ts"],"names":[],"mappings":"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"}
|
|
@@ -30,6 +30,7 @@ import * as HttpApiEndpoint from "./HttpApiEndpoint.js";
|
|
|
30
30
|
import { HttpApiSchemaError } from "./HttpApiError.js";
|
|
31
31
|
import * as HttpApiMiddleware from "./HttpApiMiddleware.js";
|
|
32
32
|
import * as HttpApiSchema from "./HttpApiSchema.js";
|
|
33
|
+
import * as MediaType from "./internal/mediaType.js";
|
|
33
34
|
import * as OpenApi from "./OpenApi.js";
|
|
34
35
|
/**
|
|
35
36
|
* Registers an `HttpApi` with a `HttpRouter`.
|
|
@@ -41,7 +42,8 @@ export const layer = (api, options) => HttpRouter.use(Effect.fnUntraced(function
|
|
|
41
42
|
const services = yield* Effect.context();
|
|
42
43
|
const routes = [];
|
|
43
44
|
const availableGroups = Array.from(services.mapUnsafe.keys()).filter(key => key.startsWith("effect/httpapi/HttpApiGroup/"));
|
|
44
|
-
|
|
45
|
+
const groups = Object.values(api.groups);
|
|
46
|
+
for (const group of groups) {
|
|
45
47
|
const groupRoutes = services.mapUnsafe.get(group.key)?.routes;
|
|
46
48
|
if (groupRoutes === undefined) {
|
|
47
49
|
const available = availableGroups.length === 0 ? "none" : availableGroups.join(", ");
|
|
@@ -67,9 +69,9 @@ export const layer = (api, options) => HttpRouter.use(Effect.fnUntraced(function
|
|
|
67
69
|
* @category handlers
|
|
68
70
|
* @since 4.0.0
|
|
69
71
|
*/
|
|
70
|
-
export const group = (api,
|
|
72
|
+
export const group = (api, groupIdentifier, build) => Layer.effectContext(Effect.gen(function* () {
|
|
71
73
|
const services = (yield* Effect.context()).pipe(Context.omit(Scope.Scope));
|
|
72
|
-
const group = api.groups[
|
|
74
|
+
const group = api.groups[groupIdentifier];
|
|
73
75
|
const result = build(makeHandlers(group));
|
|
74
76
|
const handlers = Effect.isEffect(result) ? yield* result : result;
|
|
75
77
|
const routes = [];
|
|
@@ -81,13 +83,7 @@ export const group = (api, groupName, build) => Layer.effectContext(Effect.gen(f
|
|
|
81
83
|
handlers: handlers.handlers
|
|
82
84
|
}]]));
|
|
83
85
|
}));
|
|
84
|
-
|
|
85
|
-
* Type identifier symbol used to brand `Handlers` values.
|
|
86
|
-
*
|
|
87
|
-
* @category type IDs
|
|
88
|
-
* @since 4.0.0
|
|
89
|
-
*/
|
|
90
|
-
export const HandlersTypeId = /*#__PURE__*/Symbol.for("@effect/platform/HttpApiBuilder/Handlers");
|
|
86
|
+
const HandlersTypeId = "~effect/httpapi/HttpApiBuilder/Handlers";
|
|
91
87
|
/**
|
|
92
88
|
* Builds the server-side HTTP effect for a single endpoint in an API group using
|
|
93
89
|
* the endpoint metadata, middleware, codecs, and supplied handler.
|
|
@@ -95,9 +91,9 @@ export const HandlersTypeId = /*#__PURE__*/Symbol.for("@effect/platform/HttpApiB
|
|
|
95
91
|
* @category handlers
|
|
96
92
|
* @since 4.0.0
|
|
97
93
|
*/
|
|
98
|
-
export const endpoint = (api,
|
|
99
|
-
const group = api.groups[
|
|
100
|
-
const endpoint = group.endpoints[
|
|
94
|
+
export const endpoint = (api, groupIdentifier, endpointIdentifier, handler) => Effect.contextWith(context => {
|
|
95
|
+
const group = api.groups[groupIdentifier];
|
|
96
|
+
const endpoint = group.endpoints[endpointIdentifier];
|
|
101
97
|
return Effect.succeed(handlerToHttpEffect(group, endpoint, Context.omit(Scope.Scope)(context), handler, false));
|
|
102
98
|
});
|
|
103
99
|
/**
|
|
@@ -111,9 +107,7 @@ export const securityDecode = self => {
|
|
|
111
107
|
switch (self._tag) {
|
|
112
108
|
case "Http":
|
|
113
109
|
{
|
|
114
|
-
return Effect.map(HttpServerRequest,
|
|
115
|
-
// schemeLength + space
|
|
116
|
-
request => Redacted.make((request.headers.authorization ?? "").slice(self.schemeLength + 1)));
|
|
110
|
+
return Effect.map(HttpServerRequest, request => Redacted.make(getAuthorizationCredential(request.headers.authorization, self.scheme) ?? ""));
|
|
117
111
|
}
|
|
118
112
|
case "ApiKey":
|
|
119
113
|
{
|
|
@@ -133,19 +127,20 @@ export const securityDecode = self => {
|
|
|
133
127
|
username: "",
|
|
134
128
|
password: Redacted.make("")
|
|
135
129
|
};
|
|
136
|
-
return
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
130
|
+
return Effect.map(HttpServerRequest, request => {
|
|
131
|
+
const encoded = getAuthorizationCredential(request.headers.authorization, basicScheme);
|
|
132
|
+
if (encoded === undefined) return empty;
|
|
133
|
+
const decoded = Result.getOrUndefined(Encoding.decodeBase64String(encoded));
|
|
134
|
+
if (decoded === undefined) return empty;
|
|
135
|
+
// RFC 7617, Section 2: only the first colon separates the user-id from the password.
|
|
136
|
+
// https://www.rfc-editor.org/rfc/rfc7617.html#section-2
|
|
137
|
+
const separator = decoded.indexOf(":");
|
|
138
|
+
if (separator === -1) return empty;
|
|
139
|
+
return {
|
|
140
|
+
username: decoded.slice(0, separator),
|
|
141
|
+
password: Redacted.make(decoded.slice(separator + 1))
|
|
142
|
+
};
|
|
143
|
+
});
|
|
149
144
|
}
|
|
150
145
|
}
|
|
151
146
|
};
|
|
@@ -164,33 +159,54 @@ export const securitySetCookie = (self, value, options) => HttpEffect.appendPreR
|
|
|
164
159
|
// -----------------------------------------------------------------------------
|
|
165
160
|
// Internal
|
|
166
161
|
// -----------------------------------------------------------------------------
|
|
167
|
-
const
|
|
162
|
+
const basicScheme = "Basic";
|
|
163
|
+
function getAuthorizationCredential(authorization, scheme) {
|
|
164
|
+
const schemeLength = scheme.length;
|
|
165
|
+
// RFC 9110, Section 11.1: schemes are case-insensitive and credentials follow 1*SP.
|
|
166
|
+
// https://www.rfc-editor.org/rfc/rfc9110.html#section-11.1
|
|
167
|
+
if (authorization === undefined || authorization.length <= schemeLength || authorization.charCodeAt(schemeLength) !== 32 || authorization.slice(0, schemeLength).toLowerCase() !== scheme.toLowerCase()) {
|
|
168
|
+
return undefined;
|
|
169
|
+
}
|
|
170
|
+
let credentialStart = schemeLength + 1;
|
|
171
|
+
while (authorization.charCodeAt(credentialStart) === 32) {
|
|
172
|
+
credentialStart++;
|
|
173
|
+
}
|
|
174
|
+
return credentialStart === authorization.length ? undefined : authorization.slice(credentialStart);
|
|
175
|
+
}
|
|
176
|
+
const registerHandler = (self, identifier, handler, isRaw, options) => {
|
|
177
|
+
if (!Object.hasOwn(self.group.endpoints, identifier)) {
|
|
178
|
+
throw new Error(`HttpApiEndpoint "${identifier}" not found in HttpApiGroup "${self.group.identifier}"`);
|
|
179
|
+
}
|
|
180
|
+
if (self.handlers.has(identifier)) {
|
|
181
|
+
throw new Error(`Handler for HttpApiEndpoint "${identifier}" is already registered in HttpApiGroup "${self.group.identifier}"`);
|
|
182
|
+
}
|
|
183
|
+
const endpoint = self.group.endpoints[identifier];
|
|
184
|
+
self.handlers.set(identifier, {
|
|
185
|
+
endpoint,
|
|
186
|
+
handler,
|
|
187
|
+
isRaw,
|
|
188
|
+
uninterruptible: options?.uninterruptible ?? false
|
|
189
|
+
});
|
|
190
|
+
return self;
|
|
191
|
+
};
|
|
168
192
|
const HandlersProto = {
|
|
169
|
-
[HandlersTypeId]:
|
|
170
|
-
_Endpoints: identity
|
|
171
|
-
},
|
|
193
|
+
[HandlersTypeId]: HandlersTypeId,
|
|
172
194
|
pipe() {
|
|
173
195
|
return pipeArguments(this, arguments);
|
|
174
196
|
},
|
|
175
|
-
handle(
|
|
176
|
-
|
|
177
|
-
this.handlers.set(name, {
|
|
178
|
-
endpoint,
|
|
179
|
-
handler,
|
|
180
|
-
isRaw: false,
|
|
181
|
-
uninterruptible: options?.uninterruptible ?? false
|
|
182
|
-
});
|
|
183
|
-
return this;
|
|
197
|
+
handle(identifier, handler, options) {
|
|
198
|
+
return registerHandler(this, identifier, handler, false, options);
|
|
184
199
|
},
|
|
185
|
-
|
|
186
|
-
const
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
handler,
|
|
190
|
-
|
|
191
|
-
uninterruptible: options?.uninterruptible ?? false
|
|
192
|
-
});
|
|
200
|
+
handleAll(handlers) {
|
|
201
|
+
for (const [identifier, entry] of Object.entries(handlers)) {
|
|
202
|
+
const handler = typeof entry === "function" ? entry : entry.handler;
|
|
203
|
+
const options = typeof entry === "function" ? undefined : entry.options;
|
|
204
|
+
registerHandler(this, identifier, handler, false, options);
|
|
205
|
+
}
|
|
193
206
|
return this;
|
|
207
|
+
},
|
|
208
|
+
handleRaw(identifier, handler, options) {
|
|
209
|
+
return registerHandler(this, identifier, handler, true, options);
|
|
194
210
|
}
|
|
195
211
|
};
|
|
196
212
|
const makeHandlers = group => {
|
|
@@ -225,7 +241,7 @@ function buildPayloadDecoders(payloadMap) {
|
|
|
225
241
|
}
|
|
226
242
|
function decodePayload(payloadBy, httpRequest, query) {
|
|
227
243
|
const hasBody = HttpMethod.hasBody(httpRequest.method);
|
|
228
|
-
const contentType = hasBody ?
|
|
244
|
+
const contentType = hasBody ? MediaType.normalize(httpRequest.headers["content-type"] ?? "application/json") : "application/x-www-form-urlencoded";
|
|
229
245
|
const existing = payloadBy.get(contentType);
|
|
230
246
|
if (!existing) {
|
|
231
247
|
return Response.text(`Unsupported content-type: ${contentType}`, {
|
|
@@ -331,12 +347,6 @@ export function handlerToRoute(group, handler, context) {
|
|
|
331
347
|
uninterruptible: handler.uninterruptible
|
|
332
348
|
});
|
|
333
349
|
}
|
|
334
|
-
const getRequestContentType = request => request.headers["content-type"] ? request.headers["content-type"].toLowerCase().trim() : "application/json";
|
|
335
|
-
const getRequestMediaType = request => {
|
|
336
|
-
const contentType = getRequestContentType(request);
|
|
337
|
-
const index = contentType.indexOf(";");
|
|
338
|
-
return index === -1 ? contentType : contentType.slice(0, index).trim();
|
|
339
|
-
};
|
|
340
350
|
const applyMiddleware = (group, endpoint, context, handler) => {
|
|
341
351
|
const options = {
|
|
342
352
|
group,
|
|
@@ -497,7 +507,7 @@ function toResponseSchema(getStatus) {
|
|
|
497
507
|
return cached;
|
|
498
508
|
}
|
|
499
509
|
const responseSchema = $HttpServerResponse.pipe(Schema.decodeTo(schema, getResponseTransformation(getStatus, schema)));
|
|
500
|
-
cache.set(
|
|
510
|
+
cache.set(schema.ast, responseSchema);
|
|
501
511
|
return responseSchema;
|
|
502
512
|
};
|
|
503
513
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HttpApiBuilder.js","names":["Context","Effect","Encoding","Fiber","identity","stringOrRedacted","Layer","Option","pipeArguments","hasProperty","Redacted","Result","Schema","SchemaAST","SchemaIssue","SchemaTransformation","Scope","Stream","UndefinedOr","Sse","HttpEffect","HttpMethod","HttpRouter","Request","HttpServerRequest","Response","Multipart","UrlParams","HttpApiEndpoint","HttpApiSchemaError","HttpApiMiddleware","HttpApiSchema","OpenApi","layer","api","options","use","fnUntraced","router","services","context","routes","availableGroups","Array","from","mapUnsafe","keys","filter","key","startsWith","group","Object","values","groups","groupRoutes","get","undefined","available","length","join","die","identifier","push","addAll","openapiPath","spec","fromApi","add","succeed","jsonUnsafe","groupName","build","effectContext","gen","pipe","omit","result","makeHandlers","handlers","isEffect","item","handlerToRoute","makeUnsafe","Map","HandlersTypeId","Symbol","for","endpoint","endpointName","handler","contextWith","endpoints","handlerToHttpEffect","securityDecode","self","_tag","map","request","make","headers","authorization","slice","schemeLength","in","toLowerCase","schema","Struct","String","decode","schemaSearchParams","schemaCookies","schemaHeaders","match","onFailure","onSuccess","empty","username","password","flatMap","fromResult","decodeBase64String","basicLen","header","parts","split","securitySetCookie","value","appendPreResponseHandler","_req","response","orDie","setCookie","secure","httpOnly","HandlersProto","_Endpoints","arguments","handle","name","set","isRaw","uninterruptible","handleRaw","create","buildPayloadDecoders","payloadMap","forEach","encoding","schemas","contentType","decodeUnknownEffect","Union","mode","limits","nullOnEmpty","some","s","isNull","toEncoded","ast","decodePayload","payloadBy","httpRequest","query","hasBody","method","getRequestMediaType","existing","text","status","eff","multipart","provideContext","limitsServices","multipartStream","JSON","parse","cause","fail","SchemaError","InvalidValue","message","source","urlParamsBody","toRecord","arrayBuffer","buffer","Uint8Array","encodeSuccess","encodeUnknownEffect","makeSuccessSchema","encodeError","makeErrorSchema","decodeParams","params","decodeHeaders","decodeQuery","encodeStream","makeStreamEncoder","shouldParsePayload","payload","size","applyMiddleware","fiber","getCurrent","getUnsafe","routeContext","RouteContext","ParsedSearchParams","wrap","isHttpServerResponse","streamResponse","withErrorReporting","catch","error","is","route","path","getRequestContentType","trim","index","indexOf","key_","middlewares","service","apply","isSecurity","makeSecurityMiddleware","securityMiddlewareCache","WeakMap","cached","entries","security","securityKey","middleware","mapError","HandlerError","lastResult","i","credential","isFailure","isHandlerError","failure","success","HandlerErrorTypeId","constructor","$HttpServerResponse","declare","streamSchema","getStreamSuccessSchema","hasBuffered","hasBufferedSuccess","getStatusStream","isStreamUint8Array","isStream","stream","sseEncoder","makeSseEncoder","encodeSseStream","isStreamSchema","isSchema","CauseSchema","toCodecJson","Cause","Defect","sseMode","encodeEvents","events","encodeCause","fromJsonString","encoder","id","event","data","mapArrayEffect","chunk","catchCause","fromEffect","encodeFailureEvent","renderSseEvent","encodeText","encodedCause","reservedStreamFailureEvent","write","toResponseSuccessSchema","toResponseSchema","getStatusSuccess","toResponseErrorSchema","getStatusError","getSuccessSchemas","getErrorSchemas","Never","getStatus","cache","responseSchema","decodeTo","getResponseTransformation","encode","getResponseEncode","getResponseEncoding","isNoContent","transformOrFail","res","Forbidden","e","stringify","globalThis","uint8Array","urlParams","setHeader"],"sources":["../../../src/unstable/httpapi/HttpApiBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"HttpApiBuilder.js","names":["Context","Effect","Encoding","Fiber","identity","stringOrRedacted","Layer","Option","pipeArguments","hasProperty","Redacted","Result","Schema","SchemaAST","SchemaIssue","SchemaTransformation","Scope","Stream","UndefinedOr","Sse","HttpEffect","HttpMethod","HttpRouter","Request","HttpServerRequest","Response","Multipart","UrlParams","HttpApiEndpoint","HttpApiSchemaError","HttpApiMiddleware","HttpApiSchema","MediaType","OpenApi","layer","api","options","use","fnUntraced","router","services","context","routes","availableGroups","Array","from","mapUnsafe","keys","filter","key","startsWith","groups","Object","values","group","groupRoutes","get","undefined","available","length","join","die","identifier","push","addAll","openapiPath","spec","fromApi","add","succeed","jsonUnsafe","groupIdentifier","build","effectContext","gen","pipe","omit","result","makeHandlers","handlers","isEffect","item","handlerToRoute","makeUnsafe","Map","HandlersTypeId","endpoint","endpointIdentifier","handler","contextWith","endpoints","handlerToHttpEffect","securityDecode","self","_tag","map","request","make","getAuthorizationCredential","headers","authorization","scheme","in","toLowerCase","schema","Struct","String","decode","schemaSearchParams","schemaCookies","schemaHeaders","match","onFailure","onSuccess","empty","username","password","encoded","basicScheme","decoded","getOrUndefined","decodeBase64String","separator","indexOf","slice","securitySetCookie","value","appendPreResponseHandler","_req","response","orDie","setCookie","secure","httpOnly","schemeLength","charCodeAt","credentialStart","registerHandler","isRaw","hasOwn","Error","has","set","uninterruptible","HandlersProto","arguments","handle","handleAll","entry","entries","handleRaw","create","buildPayloadDecoders","payloadMap","forEach","encoding","schemas","contentType","decodeUnknownEffect","Union","mode","limits","nullOnEmpty","some","s","isNull","toEncoded","ast","decodePayload","payloadBy","httpRequest","query","hasBody","method","normalize","existing","text","status","eff","multipart","provideContext","limitsServices","flatMap","multipartStream","JSON","parse","cause","fail","SchemaError","InvalidValue","message","source","urlParamsBody","toRecord","arrayBuffer","buffer","Uint8Array","encodeSuccess","encodeUnknownEffect","makeSuccessSchema","encodeError","makeErrorSchema","decodeParams","params","decodeHeaders","decodeQuery","encodeStream","makeStreamEncoder","shouldParsePayload","payload","size","applyMiddleware","fiber","getCurrent","getUnsafe","routeContext","RouteContext","ParsedSearchParams","wrap","isHttpServerResponse","streamResponse","withErrorReporting","catch","error","is","route","path","key_","middlewares","service","apply","isSecurity","makeSecurityMiddleware","securityMiddlewareCache","WeakMap","cached","security","securityKey","middleware","mapError","HandlerError","lastResult","i","credential","isFailure","isHandlerError","failure","success","fromResult","HandlerErrorTypeId","constructor","$HttpServerResponse","declare","streamSchema","getStreamSuccessSchema","hasBuffered","hasBufferedSuccess","getStatusStream","isStreamUint8Array","isStream","stream","sseEncoder","makeSseEncoder","encodeSseStream","isStreamSchema","isSchema","CauseSchema","toCodecJson","Cause","Defect","sseMode","encodeEvents","events","encodeCause","fromJsonString","encoder","id","event","data","mapArrayEffect","chunk","catchCause","fromEffect","encodeFailureEvent","renderSseEvent","encodeText","encodedCause","reservedStreamFailureEvent","write","toResponseSuccessSchema","toResponseSchema","getStatusSuccess","toResponseErrorSchema","getStatusError","getSuccessSchemas","getErrorSchemas","Never","getStatus","cache","responseSchema","decodeTo","getResponseTransformation","encode","getResponseEncode","getResponseEncoding","isNoContent","transformOrFail","res","Forbidden","e","stringify","globalThis","uint8Array","urlParams","setHeader"],"sources":["../../../src/unstable/httpapi/HttpApiBuilder.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|