vellum-ai 0.0.45 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Client.d.ts +23 -26
- package/Client.js +288 -242
- package/api/resources/deployments/client/Client.d.ts +8 -4
- package/api/resources/deployments/client/Client.js +52 -34
- package/api/resources/documentIndexes/client/Client.d.ts +9 -5
- package/api/resources/documentIndexes/client/Client.js +97 -69
- package/api/resources/documents/client/Client.d.ts +14 -10
- package/api/resources/documents/client/Client.js +222 -176
- package/api/resources/modelVersions/client/Client.d.ts +9 -5
- package/api/resources/modelVersions/client/Client.js +96 -68
- package/api/resources/registeredPrompts/client/Client.d.ts +11 -7
- package/api/resources/registeredPrompts/client/Client.js +72 -53
- package/api/resources/sandboxes/client/Client.d.ts +9 -5
- package/api/resources/sandboxes/client/Client.js +92 -65
- package/api/resources/testSuites/client/Client.d.ts +9 -5
- package/api/resources/testSuites/client/Client.js +90 -63
- package/core/fetcher/Fetcher.d.ts +5 -3
- package/core/fetcher/Fetcher.js +104 -62
- package/core/fetcher/Supplier.js +11 -2
- package/core/fetcher/index.d.ts +3 -2
- package/core/form-data-utils/getFormDataContentLength.d.ts +1 -1
- package/core/form-data-utils/getFormDataContentLength.js +20 -9
- package/core/index.d.ts +1 -2
- package/core/index.js +4 -5
- package/core/schemas/Schema.d.ts +19 -0
- package/core/schemas/Schema.js +1 -0
- package/core/schemas/builders/date/date.js +22 -14
- package/core/schemas/builders/enum/enum.js +17 -7
- package/core/schemas/builders/lazy/index.d.ts +2 -1
- package/core/schemas/builders/lazy/lazy.js +21 -13
- package/core/schemas/builders/lazy/lazyObject.js +11 -11
- package/core/schemas/builders/list/list.js +53 -38
- package/core/schemas/builders/literals/booleanLiteral.d.ts +2 -0
- package/core/schemas/builders/literals/booleanLiteral.js +29 -0
- package/core/schemas/builders/literals/index.d.ts +1 -0
- package/core/schemas/builders/literals/index.js +3 -1
- package/core/schemas/builders/literals/stringLiteral.js +4 -3
- package/core/schemas/builders/object/index.d.ts +5 -2
- package/core/schemas/builders/object/index.js +3 -1
- package/core/schemas/builders/object/object.js +150 -129
- package/core/schemas/builders/object/objectWithoutOptionalProperties.d.ts +6 -0
- package/core/schemas/builders/object/objectWithoutOptionalProperties.js +8 -0
- package/core/schemas/builders/object-like/getObjectLikeUtils.js +19 -18
- package/core/schemas/builders/object-like/index.d.ts +1 -1
- package/core/schemas/builders/primitives/boolean.js +4 -3
- package/core/schemas/builders/primitives/number.js +4 -3
- package/core/schemas/builders/primitives/string.js +4 -3
- package/core/schemas/builders/record/index.d.ts +1 -1
- package/core/schemas/builders/record/record.js +82 -67
- package/core/schemas/builders/schema-utils/JsonError.js +0 -1
- package/core/schemas/builders/schema-utils/ParseError.js +0 -1
- package/core/schemas/builders/schema-utils/getSchemaUtils.js +23 -20
- package/core/schemas/builders/schema-utils/index.d.ts +2 -1
- package/core/schemas/builders/set/set.js +21 -12
- package/core/schemas/builders/undiscriminated-union/index.d.ts +1 -1
- package/core/schemas/builders/undiscriminated-union/undiscriminatedUnion.js +38 -24
- package/core/schemas/builders/union/index.d.ts +3 -2
- package/core/schemas/builders/union/union.js +95 -74
- package/core/schemas/index.d.ts +1 -1
- package/core/schemas/utils/createIdentitySchemaCreator.js +2 -4
- package/core/schemas/utils/getErrorMessageForIncorrectType.d.ts +1 -0
- package/core/schemas/utils/getErrorMessageForIncorrectType.js +24 -0
- package/core/schemas/utils/isPlainObject.d.ts +0 -1
- package/core/schemas/utils/isPlainObject.js +1 -2
- package/core/schemas/utils/maybeSkipValidation.d.ts +2 -0
- package/core/schemas/utils/maybeSkipValidation.js +37 -0
- package/core/streaming-fetcher/Stream.d.ts +14 -0
- package/core/streaming-fetcher/Stream.js +75 -0
- package/core/streaming-fetcher/StreamingFetcher.d.ts +10 -8
- package/core/streaming-fetcher/StreamingFetcher.js +38 -44
- package/core/streaming-fetcher/getHeader.d.ts +2 -0
- package/core/streaming-fetcher/getHeader.js +12 -0
- package/core/streaming-fetcher/index.d.ts +4 -1
- package/core/streaming-fetcher/index.js +5 -1
- package/dist/Client.d.ts +23 -26
- package/dist/Client.js +288 -242
- package/dist/api/resources/deployments/client/Client.d.ts +8 -4
- package/dist/api/resources/deployments/client/Client.js +52 -34
- package/dist/api/resources/documentIndexes/client/Client.d.ts +9 -5
- package/dist/api/resources/documentIndexes/client/Client.js +97 -69
- package/dist/api/resources/documents/client/Client.d.ts +14 -10
- package/dist/api/resources/documents/client/Client.js +222 -176
- package/dist/api/resources/modelVersions/client/Client.d.ts +9 -5
- package/dist/api/resources/modelVersions/client/Client.js +96 -68
- package/dist/api/resources/registeredPrompts/client/Client.d.ts +11 -7
- package/dist/api/resources/registeredPrompts/client/Client.js +72 -53
- package/dist/api/resources/sandboxes/client/Client.d.ts +9 -5
- package/dist/api/resources/sandboxes/client/Client.js +92 -65
- package/dist/api/resources/testSuites/client/Client.d.ts +9 -5
- package/dist/api/resources/testSuites/client/Client.js +90 -63
- package/dist/core/fetcher/Fetcher.d.ts +5 -3
- package/dist/core/fetcher/Fetcher.js +104 -62
- package/dist/core/fetcher/Supplier.js +11 -2
- package/dist/core/fetcher/index.d.ts +3 -2
- package/dist/core/form-data-utils/getFormDataContentLength.d.ts +1 -1
- package/dist/core/form-data-utils/getFormDataContentLength.js +20 -9
- package/dist/core/index.d.ts +1 -2
- package/dist/core/index.js +4 -5
- package/dist/core/schemas/Schema.d.ts +19 -0
- package/dist/core/schemas/Schema.js +1 -0
- package/dist/core/schemas/builders/date/date.js +22 -14
- package/dist/core/schemas/builders/enum/enum.js +17 -7
- package/dist/core/schemas/builders/lazy/index.d.ts +2 -1
- package/dist/core/schemas/builders/lazy/lazy.js +21 -13
- package/dist/core/schemas/builders/lazy/lazyObject.js +11 -11
- package/dist/core/schemas/builders/list/list.js +53 -38
- package/dist/core/schemas/builders/literals/booleanLiteral.d.ts +2 -0
- package/dist/core/schemas/builders/literals/booleanLiteral.js +29 -0
- package/dist/core/schemas/builders/literals/index.d.ts +1 -0
- package/dist/core/schemas/builders/literals/index.js +3 -1
- package/dist/core/schemas/builders/literals/stringLiteral.js +4 -3
- package/dist/core/schemas/builders/object/index.d.ts +5 -2
- package/dist/core/schemas/builders/object/index.js +3 -1
- package/dist/core/schemas/builders/object/object.js +150 -129
- package/dist/core/schemas/builders/object/objectWithoutOptionalProperties.d.ts +6 -0
- package/dist/core/schemas/builders/object/objectWithoutOptionalProperties.js +8 -0
- package/dist/core/schemas/builders/object-like/getObjectLikeUtils.js +19 -18
- package/dist/core/schemas/builders/object-like/index.d.ts +1 -1
- package/dist/core/schemas/builders/primitives/boolean.js +4 -3
- package/dist/core/schemas/builders/primitives/number.js +4 -3
- package/dist/core/schemas/builders/primitives/string.js +4 -3
- package/dist/core/schemas/builders/record/index.d.ts +1 -1
- package/dist/core/schemas/builders/record/record.js +82 -67
- package/dist/core/schemas/builders/schema-utils/JsonError.js +0 -1
- package/dist/core/schemas/builders/schema-utils/ParseError.js +0 -1
- package/dist/core/schemas/builders/schema-utils/getSchemaUtils.js +23 -20
- package/dist/core/schemas/builders/schema-utils/index.d.ts +2 -1
- package/dist/core/schemas/builders/set/set.js +21 -12
- package/dist/core/schemas/builders/undiscriminated-union/index.d.ts +1 -1
- package/dist/core/schemas/builders/undiscriminated-union/undiscriminatedUnion.js +38 -24
- package/dist/core/schemas/builders/union/index.d.ts +3 -2
- package/dist/core/schemas/builders/union/union.js +95 -74
- package/dist/core/schemas/index.d.ts +1 -1
- package/dist/core/schemas/utils/createIdentitySchemaCreator.js +2 -4
- package/dist/core/schemas/utils/getErrorMessageForIncorrectType.d.ts +1 -0
- package/dist/core/schemas/utils/getErrorMessageForIncorrectType.js +24 -0
- package/dist/core/schemas/utils/isPlainObject.d.ts +0 -1
- package/dist/core/schemas/utils/isPlainObject.js +1 -2
- package/dist/core/schemas/utils/maybeSkipValidation.d.ts +2 -0
- package/dist/core/schemas/utils/maybeSkipValidation.js +37 -0
- package/dist/core/streaming-fetcher/Stream.d.ts +14 -0
- package/dist/core/streaming-fetcher/Stream.js +75 -0
- package/dist/core/streaming-fetcher/StreamingFetcher.d.ts +10 -8
- package/dist/core/streaming-fetcher/StreamingFetcher.js +38 -44
- package/dist/core/streaming-fetcher/getHeader.d.ts +2 -0
- package/dist/core/streaming-fetcher/getHeader.js +12 -0
- package/dist/core/streaming-fetcher/index.d.ts +4 -1
- package/dist/core/streaming-fetcher/index.js +5 -1
- package/dist/errors/VellumError.js +14 -3
- package/dist/serialization/client/requests/ExecuteWorkflowStreamRequest.js +11 -2
- package/dist/serialization/client/requests/GenerateBodyRequest.js +11 -2
- package/dist/serialization/client/requests/GenerateStreamBodyRequest.js +11 -2
- package/dist/serialization/client/requests/SearchRequestBodyRequest.js +10 -1
- package/dist/serialization/client/requests/SubmitCompletionActualsRequest.js +10 -1
- package/dist/serialization/client/requests/SubmitWorkflowExecutionActualsRequest.js +10 -1
- package/dist/serialization/resources/documentIndexes/client/requests/DocumentIndexCreateRequest.js +11 -2
- package/dist/serialization/resources/documents/client/requests/PatchedDocumentUpdateRequest.js +10 -1
- package/dist/serialization/resources/registeredPrompts/client/requests/RegisterPromptRequestRequest.js +12 -3
- package/dist/serialization/resources/sandboxes/client/requests/UpsertSandboxScenarioRequestRequest.js +11 -2
- package/dist/serialization/resources/testSuites/client/requests/TestSuiteTestCaseRequest.js +10 -1
- package/dist/serialization/types/ApiNodeResult.js +10 -1
- package/dist/serialization/types/ChatMessage.js +10 -1
- package/dist/serialization/types/ChatMessageRequest.js +10 -1
- package/dist/serialization/types/ConditionalNodeResult.js +10 -1
- package/dist/serialization/types/DeploymentRead.js +12 -3
- package/dist/serialization/types/DocumentDocumentToDocumentIndex.js +10 -1
- package/dist/serialization/types/DocumentIndexRead.js +11 -2
- package/dist/serialization/types/DocumentRead.js +12 -3
- package/dist/serialization/types/EnrichedNormalizedCompletion.js +12 -3
- package/dist/serialization/types/GenerateOptionsRequest.js +10 -1
- package/dist/serialization/types/GenerateRequest.js +10 -1
- package/dist/serialization/types/GenerateResponse.js +10 -1
- package/dist/serialization/types/GenerateResult.js +11 -2
- package/dist/serialization/types/GenerateResultData.js +10 -1
- package/dist/serialization/types/GenerateStreamResponse.js +10 -1
- package/dist/serialization/types/GenerateStreamResult.js +11 -2
- package/dist/serialization/types/GenerateStreamResultData.js +10 -1
- package/dist/serialization/types/MetadataFilterConfigRequest.js +12 -3
- package/dist/serialization/types/MetadataFilterRuleRequest.js +12 -3
- package/dist/serialization/types/ModelVersionBuildConfig.js +10 -1
- package/dist/serialization/types/ModelVersionCompilePromptResponse.js +10 -1
- package/dist/serialization/types/ModelVersionExecConfig.js +12 -3
- package/dist/serialization/types/ModelVersionRead.js +13 -4
- package/dist/serialization/types/NodeInputCompiledChatHistoryValue.js +10 -1
- package/dist/serialization/types/NodeInputCompiledErrorValue.js +10 -1
- package/dist/serialization/types/NodeInputCompiledSearchResultsValue.js +10 -1
- package/dist/serialization/types/NodeInputVariableCompiledValue.js +15 -6
- package/dist/serialization/types/NormalizedLogProbs.js +10 -1
- package/dist/serialization/types/PaginatedSlimDocumentList.js +10 -1
- package/dist/serialization/types/PromptNodeResult.js +10 -1
- package/dist/serialization/types/PromptTemplateBlock.js +11 -2
- package/dist/serialization/types/PromptTemplateBlockData.js +10 -1
- package/dist/serialization/types/PromptTemplateBlockDataRequest.js +10 -1
- package/dist/serialization/types/PromptTemplateBlockProperties.js +12 -3
- package/dist/serialization/types/PromptTemplateBlockPropertiesRequest.js +12 -3
- package/dist/serialization/types/PromptTemplateBlockRequest.js +11 -2
- package/dist/serialization/types/RegisterPromptPromptInfoRequest.js +11 -2
- package/dist/serialization/types/RegisterPromptResponse.js +14 -5
- package/dist/serialization/types/RegisteredPromptInputVariableRequest.js +10 -1
- package/dist/serialization/types/SandboxMetricInputParams.js +10 -1
- package/dist/serialization/types/SandboxMetricInputParamsRequest.js +10 -1
- package/dist/serialization/types/SandboxScenario.js +11 -2
- package/dist/serialization/types/ScenarioInput.js +11 -2
- package/dist/serialization/types/ScenarioInputRequest.js +11 -2
- package/dist/serialization/types/SearchFiltersRequest.js +10 -1
- package/dist/serialization/types/SearchNodeResult.js +10 -1
- package/dist/serialization/types/SearchNodeResultData.js +10 -1
- package/dist/serialization/types/SearchRequestOptionsRequest.js +12 -3
- package/dist/serialization/types/SearchResponse.js +10 -1
- package/dist/serialization/types/SearchResult.js +10 -1
- package/dist/serialization/types/SlimDocument.js +13 -4
- package/dist/serialization/types/SubmitWorkflowExecutionActualRequest.js +12 -3
- package/dist/serialization/types/TemplatingNodeChatHistoryResult.js +10 -1
- package/dist/serialization/types/TemplatingNodeErrorResult.js +10 -1
- package/dist/serialization/types/TemplatingNodeResult.js +10 -1
- package/dist/serialization/types/TemplatingNodeResultData.js +10 -1
- package/dist/serialization/types/TemplatingNodeResultOutput.js +15 -6
- package/dist/serialization/types/TemplatingNodeSearchResultsResult.js +10 -1
- package/dist/serialization/types/TerminalNodeChatHistoryResult.js +10 -1
- package/dist/serialization/types/TerminalNodeErrorResult.js +10 -1
- package/dist/serialization/types/TerminalNodeResult.js +10 -1
- package/dist/serialization/types/TerminalNodeResultData.js +10 -1
- package/dist/serialization/types/TerminalNodeResultOutput.js +15 -6
- package/dist/serialization/types/TerminalNodeSearchResultsResult.js +10 -1
- package/dist/serialization/types/TestSuiteTestCase.js +10 -1
- package/dist/serialization/types/VellumError.js +10 -1
- package/dist/serialization/types/VellumVariable.js +10 -1
- package/dist/serialization/types/WorkflowEventError.js +10 -1
- package/dist/serialization/types/WorkflowExecutionActualChatHistoryRequest.js +10 -1
- package/dist/serialization/types/WorkflowExecutionNodeResultEvent.js +10 -1
- package/dist/serialization/types/WorkflowExecutionWorkflowResultEvent.js +10 -1
- package/dist/serialization/types/WorkflowNodeResultData.js +15 -6
- package/dist/serialization/types/WorkflowNodeResultEvent.js +13 -4
- package/dist/serialization/types/WorkflowRequestChatHistoryInputRequest.js +10 -1
- package/dist/serialization/types/WorkflowRequestInputRequest.js +12 -3
- package/dist/serialization/types/WorkflowResultEvent.js +12 -3
- package/dist/serialization/types/WorkflowResultEventOutputData.js +15 -6
- package/dist/serialization/types/WorkflowResultEventOutputDataChatHistory.js +11 -2
- package/dist/serialization/types/WorkflowResultEventOutputDataError.js +11 -2
- package/dist/serialization/types/WorkflowResultEventOutputDataJson.js +10 -1
- package/dist/serialization/types/WorkflowResultEventOutputDataNumber.js +10 -1
- package/dist/serialization/types/WorkflowResultEventOutputDataSearchResults.js +11 -2
- package/dist/serialization/types/WorkflowResultEventOutputDataString.js +10 -1
- package/dist/serialization/types/WorkflowStreamEvent.js +11 -2
- package/errors/VellumError.js +14 -3
- package/package.json +4 -3
- package/serialization/client/requests/ExecuteWorkflowStreamRequest.js +11 -2
- package/serialization/client/requests/GenerateBodyRequest.js +11 -2
- package/serialization/client/requests/GenerateStreamBodyRequest.js +11 -2
- package/serialization/client/requests/SearchRequestBodyRequest.js +10 -1
- package/serialization/client/requests/SubmitCompletionActualsRequest.js +10 -1
- package/serialization/client/requests/SubmitWorkflowExecutionActualsRequest.js +10 -1
- package/serialization/resources/documentIndexes/client/requests/DocumentIndexCreateRequest.js +11 -2
- package/serialization/resources/documents/client/requests/PatchedDocumentUpdateRequest.js +10 -1
- package/serialization/resources/registeredPrompts/client/requests/RegisterPromptRequestRequest.js +12 -3
- package/serialization/resources/sandboxes/client/requests/UpsertSandboxScenarioRequestRequest.js +11 -2
- package/serialization/resources/testSuites/client/requests/TestSuiteTestCaseRequest.js +10 -1
- package/serialization/types/ApiNodeResult.js +10 -1
- package/serialization/types/ChatMessage.js +10 -1
- package/serialization/types/ChatMessageRequest.js +10 -1
- package/serialization/types/ConditionalNodeResult.js +10 -1
- package/serialization/types/DeploymentRead.js +12 -3
- package/serialization/types/DocumentDocumentToDocumentIndex.js +10 -1
- package/serialization/types/DocumentIndexRead.js +11 -2
- package/serialization/types/DocumentRead.js +12 -3
- package/serialization/types/EnrichedNormalizedCompletion.js +12 -3
- package/serialization/types/GenerateOptionsRequest.js +10 -1
- package/serialization/types/GenerateRequest.js +10 -1
- package/serialization/types/GenerateResponse.js +10 -1
- package/serialization/types/GenerateResult.js +11 -2
- package/serialization/types/GenerateResultData.js +10 -1
- package/serialization/types/GenerateStreamResponse.js +10 -1
- package/serialization/types/GenerateStreamResult.js +11 -2
- package/serialization/types/GenerateStreamResultData.js +10 -1
- package/serialization/types/MetadataFilterConfigRequest.js +12 -3
- package/serialization/types/MetadataFilterRuleRequest.js +12 -3
- package/serialization/types/ModelVersionBuildConfig.js +10 -1
- package/serialization/types/ModelVersionCompilePromptResponse.js +10 -1
- package/serialization/types/ModelVersionExecConfig.js +12 -3
- package/serialization/types/ModelVersionRead.js +13 -4
- package/serialization/types/NodeInputCompiledChatHistoryValue.js +10 -1
- package/serialization/types/NodeInputCompiledErrorValue.js +10 -1
- package/serialization/types/NodeInputCompiledSearchResultsValue.js +10 -1
- package/serialization/types/NodeInputVariableCompiledValue.js +15 -6
- package/serialization/types/NormalizedLogProbs.js +10 -1
- package/serialization/types/PaginatedSlimDocumentList.js +10 -1
- package/serialization/types/PromptNodeResult.js +10 -1
- package/serialization/types/PromptTemplateBlock.js +11 -2
- package/serialization/types/PromptTemplateBlockData.js +10 -1
- package/serialization/types/PromptTemplateBlockDataRequest.js +10 -1
- package/serialization/types/PromptTemplateBlockProperties.js +12 -3
- package/serialization/types/PromptTemplateBlockPropertiesRequest.js +12 -3
- package/serialization/types/PromptTemplateBlockRequest.js +11 -2
- package/serialization/types/RegisterPromptPromptInfoRequest.js +11 -2
- package/serialization/types/RegisterPromptResponse.js +14 -5
- package/serialization/types/RegisteredPromptInputVariableRequest.js +10 -1
- package/serialization/types/SandboxMetricInputParams.js +10 -1
- package/serialization/types/SandboxMetricInputParamsRequest.js +10 -1
- package/serialization/types/SandboxScenario.js +11 -2
- package/serialization/types/ScenarioInput.js +11 -2
- package/serialization/types/ScenarioInputRequest.js +11 -2
- package/serialization/types/SearchFiltersRequest.js +10 -1
- package/serialization/types/SearchNodeResult.js +10 -1
- package/serialization/types/SearchNodeResultData.js +10 -1
- package/serialization/types/SearchRequestOptionsRequest.js +12 -3
- package/serialization/types/SearchResponse.js +10 -1
- package/serialization/types/SearchResult.js +10 -1
- package/serialization/types/SlimDocument.js +13 -4
- package/serialization/types/SubmitWorkflowExecutionActualRequest.js +12 -3
- package/serialization/types/TemplatingNodeChatHistoryResult.js +10 -1
- package/serialization/types/TemplatingNodeErrorResult.js +10 -1
- package/serialization/types/TemplatingNodeResult.js +10 -1
- package/serialization/types/TemplatingNodeResultData.js +10 -1
- package/serialization/types/TemplatingNodeResultOutput.js +15 -6
- package/serialization/types/TemplatingNodeSearchResultsResult.js +10 -1
- package/serialization/types/TerminalNodeChatHistoryResult.js +10 -1
- package/serialization/types/TerminalNodeErrorResult.js +10 -1
- package/serialization/types/TerminalNodeResult.js +10 -1
- package/serialization/types/TerminalNodeResultData.js +10 -1
- package/serialization/types/TerminalNodeResultOutput.js +15 -6
- package/serialization/types/TerminalNodeSearchResultsResult.js +10 -1
- package/serialization/types/TestSuiteTestCase.js +10 -1
- package/serialization/types/VellumError.js +10 -1
- package/serialization/types/VellumVariable.js +10 -1
- package/serialization/types/WorkflowEventError.js +10 -1
- package/serialization/types/WorkflowExecutionActualChatHistoryRequest.js +10 -1
- package/serialization/types/WorkflowExecutionNodeResultEvent.js +10 -1
- package/serialization/types/WorkflowExecutionWorkflowResultEvent.js +10 -1
- package/serialization/types/WorkflowNodeResultData.js +15 -6
- package/serialization/types/WorkflowNodeResultEvent.js +13 -4
- package/serialization/types/WorkflowRequestChatHistoryInputRequest.js +10 -1
- package/serialization/types/WorkflowRequestInputRequest.js +12 -3
- package/serialization/types/WorkflowResultEvent.js +12 -3
- package/serialization/types/WorkflowResultEventOutputData.js +15 -6
- package/serialization/types/WorkflowResultEventOutputDataChatHistory.js +11 -2
- package/serialization/types/WorkflowResultEventOutputDataError.js +11 -2
- package/serialization/types/WorkflowResultEventOutputDataJson.js +10 -1
- package/serialization/types/WorkflowResultEventOutputDataNumber.js +10 -1
- package/serialization/types/WorkflowResultEventOutputDataSearchResults.js +11 -2
- package/serialization/types/WorkflowResultEventOutputDataString.js +10 -1
- package/serialization/types/WorkflowStreamEvent.js +11 -2
- package/core/callback-queue/CallbackQueue.d.ts +0 -6
- package/core/callback-queue/CallbackQueue.js +0 -20
- package/core/callback-queue/index.d.ts +0 -1
- package/core/callback-queue/index.js +0 -5
- package/dist/core/callback-queue/CallbackQueue.d.ts +0 -6
- package/dist/core/callback-queue/CallbackQueue.js +0 -20
- package/dist/core/callback-queue/index.d.ts +0 -1
- package/dist/core/callback-queue/index.js +0 -5
|
@@ -1,91 +1,106 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.record = void 0;
|
|
4
13
|
const Schema_1 = require("../../Schema");
|
|
5
14
|
const entries_1 = require("../../utils/entries");
|
|
15
|
+
const getErrorMessageForIncorrectType_1 = require("../../utils/getErrorMessageForIncorrectType");
|
|
6
16
|
const isPlainObject_1 = require("../../utils/isPlainObject");
|
|
17
|
+
const maybeSkipValidation_1 = require("../../utils/maybeSkipValidation");
|
|
7
18
|
const schema_utils_1 = require("../schema-utils");
|
|
8
19
|
function record(keySchema, valueSchema) {
|
|
9
20
|
const baseSchema = {
|
|
10
|
-
parse:
|
|
21
|
+
parse: (raw, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
11
22
|
return validateAndTransformRecord({
|
|
12
23
|
value: raw,
|
|
13
|
-
isKeyNumeric: (
|
|
14
|
-
transformKey: (key) =>
|
|
15
|
-
|
|
24
|
+
isKeyNumeric: (yield keySchema.getType()) === Schema_1.SchemaType.NUMBER,
|
|
25
|
+
transformKey: (key) => {
|
|
26
|
+
var _a;
|
|
27
|
+
return keySchema.parse(key, Object.assign(Object.assign({}, opts), { breadcrumbsPrefix: [...((_a = opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix) !== null && _a !== void 0 ? _a : []), `${key} (key)`] }));
|
|
28
|
+
},
|
|
29
|
+
transformValue: (value, key) => {
|
|
30
|
+
var _a;
|
|
31
|
+
return valueSchema.parse(value, Object.assign(Object.assign({}, opts), { breadcrumbsPrefix: [...((_a = opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix) !== null && _a !== void 0 ? _a : []), `${key}`] }));
|
|
32
|
+
},
|
|
33
|
+
breadcrumbsPrefix: opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix,
|
|
16
34
|
});
|
|
17
|
-
},
|
|
18
|
-
json:
|
|
35
|
+
}),
|
|
36
|
+
json: (parsed, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
19
37
|
return validateAndTransformRecord({
|
|
20
38
|
value: parsed,
|
|
21
|
-
isKeyNumeric: (
|
|
22
|
-
transformKey: (key) =>
|
|
23
|
-
|
|
39
|
+
isKeyNumeric: (yield keySchema.getType()) === Schema_1.SchemaType.NUMBER,
|
|
40
|
+
transformKey: (key) => {
|
|
41
|
+
var _a;
|
|
42
|
+
return keySchema.json(key, Object.assign(Object.assign({}, opts), { breadcrumbsPrefix: [...((_a = opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix) !== null && _a !== void 0 ? _a : []), `${key} (key)`] }));
|
|
43
|
+
},
|
|
44
|
+
transformValue: (value, key) => {
|
|
45
|
+
var _a;
|
|
46
|
+
return valueSchema.json(value, Object.assign(Object.assign({}, opts), { breadcrumbsPrefix: [...((_a = opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix) !== null && _a !== void 0 ? _a : []), `${key}`] }));
|
|
47
|
+
},
|
|
48
|
+
breadcrumbsPrefix: opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix,
|
|
24
49
|
});
|
|
25
|
-
},
|
|
50
|
+
}),
|
|
26
51
|
getType: () => Schema_1.SchemaType.RECORD,
|
|
27
52
|
};
|
|
28
|
-
return {
|
|
29
|
-
...baseSchema,
|
|
30
|
-
...(0, schema_utils_1.getSchemaUtils)(baseSchema),
|
|
31
|
-
};
|
|
53
|
+
return Object.assign(Object.assign({}, (0, maybeSkipValidation_1.maybeSkipValidation)(baseSchema)), (0, schema_utils_1.getSchemaUtils)(baseSchema));
|
|
32
54
|
}
|
|
33
55
|
exports.record = record;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
return (0, entries_1.entries)(value).reduce(async (accPromise, [stringKey, value]) => {
|
|
47
|
-
// skip nullish keys
|
|
48
|
-
if (value == null) {
|
|
49
|
-
return accPromise;
|
|
56
|
+
function validateAndTransformRecord({ value, isKeyNumeric, transformKey, transformValue, breadcrumbsPrefix = [], }) {
|
|
57
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
58
|
+
if (!(0, isPlainObject_1.isPlainObject)(value)) {
|
|
59
|
+
return {
|
|
60
|
+
ok: false,
|
|
61
|
+
errors: [
|
|
62
|
+
{
|
|
63
|
+
path: breadcrumbsPrefix,
|
|
64
|
+
message: (0, getErrorMessageForIncorrectType_1.getErrorMessageForIncorrectType)(value, "object"),
|
|
65
|
+
},
|
|
66
|
+
],
|
|
67
|
+
};
|
|
50
68
|
}
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
69
|
+
return (0, entries_1.entries)(value).reduce((accPromise, [stringKey, value]) => __awaiter(this, void 0, void 0, function* () {
|
|
70
|
+
// skip nullish keys
|
|
71
|
+
if (value == null) {
|
|
72
|
+
return accPromise;
|
|
73
|
+
}
|
|
74
|
+
const acc = yield accPromise;
|
|
75
|
+
let key = stringKey;
|
|
76
|
+
if (isKeyNumeric) {
|
|
77
|
+
const numberKey = stringKey.length > 0 ? Number(stringKey) : NaN;
|
|
78
|
+
if (!isNaN(numberKey)) {
|
|
79
|
+
key = numberKey;
|
|
80
|
+
}
|
|
81
|
+
}
|
|
82
|
+
const transformedKey = yield transformKey(key);
|
|
83
|
+
const transformedValue = yield transformValue(value, key);
|
|
84
|
+
if (acc.ok && transformedKey.ok && transformedValue.ok) {
|
|
85
|
+
return {
|
|
86
|
+
ok: true,
|
|
87
|
+
value: Object.assign(Object.assign({}, acc.value), { [transformedKey.value]: transformedValue.value }),
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
const errors = [];
|
|
91
|
+
if (!acc.ok) {
|
|
92
|
+
errors.push(...acc.errors);
|
|
93
|
+
}
|
|
94
|
+
if (!transformedKey.ok) {
|
|
95
|
+
errors.push(...transformedKey.errors);
|
|
96
|
+
}
|
|
97
|
+
if (!transformedValue.ok) {
|
|
98
|
+
errors.push(...transformedValue.errors);
|
|
57
99
|
}
|
|
58
|
-
}
|
|
59
|
-
const transformedKey = await transformKey(key);
|
|
60
|
-
const transformedValue = await transformValue(value);
|
|
61
|
-
if (acc.ok && transformedKey.ok && transformedValue.ok) {
|
|
62
100
|
return {
|
|
63
|
-
ok:
|
|
64
|
-
|
|
65
|
-
...acc.value,
|
|
66
|
-
[transformedKey.value]: transformedValue.value,
|
|
67
|
-
},
|
|
101
|
+
ok: false,
|
|
102
|
+
errors,
|
|
68
103
|
};
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
if (!acc.ok) {
|
|
72
|
-
errors.push(...acc.errors);
|
|
73
|
-
}
|
|
74
|
-
if (!transformedKey.ok) {
|
|
75
|
-
errors.push(...transformedKey.errors.map((error) => ({
|
|
76
|
-
path: [`${key} (key)`, ...error.path],
|
|
77
|
-
message: error.message,
|
|
78
|
-
})));
|
|
79
|
-
}
|
|
80
|
-
if (!transformedValue.ok) {
|
|
81
|
-
errors.push(...transformedValue.errors.map((error) => ({
|
|
82
|
-
path: [stringKey, ...error.path],
|
|
83
|
-
message: error.message,
|
|
84
|
-
})));
|
|
85
|
-
}
|
|
86
|
-
return {
|
|
87
|
-
ok: false,
|
|
88
|
-
errors,
|
|
89
|
-
};
|
|
90
|
-
}, Promise.resolve({ ok: true, value: {} }));
|
|
104
|
+
}), Promise.resolve({ ok: true, value: {} }));
|
|
105
|
+
});
|
|
91
106
|
}
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.JsonError = void 0;
|
|
4
4
|
const stringifyValidationErrors_1 = require("./stringifyValidationErrors");
|
|
5
5
|
class JsonError extends Error {
|
|
6
|
-
errors;
|
|
7
6
|
constructor(errors) {
|
|
8
7
|
super(errors.map(stringifyValidationErrors_1.stringifyValidationError).join("; "));
|
|
9
8
|
this.errors = errors;
|
|
@@ -3,7 +3,6 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.ParseError = void 0;
|
|
4
4
|
const stringifyValidationErrors_1 = require("./stringifyValidationErrors");
|
|
5
5
|
class ParseError extends Error {
|
|
6
|
-
errors;
|
|
7
6
|
constructor(errors) {
|
|
8
7
|
super(errors.map(stringifyValidationErrors_1.stringifyValidationError).join("; "));
|
|
9
8
|
this.errors = errors;
|
|
@@ -1,4 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.transform = exports.optional = exports.getSchemaUtils = void 0;
|
|
4
13
|
const Schema_1 = require("../../Schema");
|
|
@@ -8,20 +17,20 @@ function getSchemaUtils(schema) {
|
|
|
8
17
|
return {
|
|
9
18
|
optional: () => optional(schema),
|
|
10
19
|
transform: (transformer) => transform(schema, transformer),
|
|
11
|
-
parseOrThrow:
|
|
12
|
-
const parsed =
|
|
20
|
+
parseOrThrow: (raw, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
21
|
+
const parsed = yield schema.parse(raw, opts);
|
|
13
22
|
if (parsed.ok) {
|
|
14
23
|
return parsed.value;
|
|
15
24
|
}
|
|
16
25
|
throw new ParseError_1.ParseError(parsed.errors);
|
|
17
|
-
},
|
|
18
|
-
jsonOrThrow:
|
|
19
|
-
const raw =
|
|
26
|
+
}),
|
|
27
|
+
jsonOrThrow: (parsed, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
28
|
+
const raw = yield schema.json(parsed, opts);
|
|
20
29
|
if (raw.ok) {
|
|
21
30
|
return raw.value;
|
|
22
31
|
}
|
|
23
32
|
throw new JsonError_1.JsonError(raw.errors);
|
|
24
|
-
},
|
|
33
|
+
}),
|
|
25
34
|
};
|
|
26
35
|
}
|
|
27
36
|
exports.getSchemaUtils = getSchemaUtils;
|
|
@@ -50,16 +59,13 @@ function optional(schema) {
|
|
|
50
59
|
},
|
|
51
60
|
getType: () => Schema_1.SchemaType.OPTIONAL,
|
|
52
61
|
};
|
|
53
|
-
return {
|
|
54
|
-
...baseSchema,
|
|
55
|
-
...getSchemaUtils(baseSchema),
|
|
56
|
-
};
|
|
62
|
+
return Object.assign(Object.assign({}, baseSchema), getSchemaUtils(baseSchema));
|
|
57
63
|
}
|
|
58
64
|
exports.optional = optional;
|
|
59
65
|
function transform(schema, transformer) {
|
|
60
66
|
const baseSchema = {
|
|
61
|
-
parse:
|
|
62
|
-
const parsed =
|
|
67
|
+
parse: (raw, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
68
|
+
const parsed = yield schema.parse(raw, opts);
|
|
63
69
|
if (!parsed.ok) {
|
|
64
70
|
return parsed;
|
|
65
71
|
}
|
|
@@ -67,16 +73,13 @@ function transform(schema, transformer) {
|
|
|
67
73
|
ok: true,
|
|
68
74
|
value: transformer.transform(parsed.value),
|
|
69
75
|
};
|
|
70
|
-
},
|
|
71
|
-
json:
|
|
72
|
-
const parsed =
|
|
76
|
+
}),
|
|
77
|
+
json: (transformed, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
78
|
+
const parsed = yield transformer.untransform(transformed);
|
|
73
79
|
return schema.json(parsed, opts);
|
|
74
|
-
},
|
|
80
|
+
}),
|
|
75
81
|
getType: () => schema.getType(),
|
|
76
82
|
};
|
|
77
|
-
return {
|
|
78
|
-
...baseSchema,
|
|
79
|
-
...getSchemaUtils(baseSchema),
|
|
80
|
-
};
|
|
83
|
+
return Object.assign(Object.assign({}, baseSchema), getSchemaUtils(baseSchema));
|
|
81
84
|
}
|
|
82
85
|
exports.transform = transform;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export { getSchemaUtils, optional, transform
|
|
1
|
+
export { getSchemaUtils, optional, transform } from "./getSchemaUtils";
|
|
2
|
+
export type { SchemaUtils } from "./getSchemaUtils";
|
|
2
3
|
export { JsonError } from "./JsonError";
|
|
3
4
|
export { ParseError } from "./ParseError";
|
|
@@ -1,14 +1,25 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.set = void 0;
|
|
4
13
|
const Schema_1 = require("../../Schema");
|
|
14
|
+
const getErrorMessageForIncorrectType_1 = require("../../utils/getErrorMessageForIncorrectType");
|
|
15
|
+
const maybeSkipValidation_1 = require("../../utils/maybeSkipValidation");
|
|
5
16
|
const list_1 = require("../list");
|
|
6
17
|
const schema_utils_1 = require("../schema-utils");
|
|
7
18
|
function set(schema) {
|
|
8
19
|
const listSchema = (0, list_1.list)(schema);
|
|
9
20
|
const baseSchema = {
|
|
10
|
-
parse:
|
|
11
|
-
const parsedList =
|
|
21
|
+
parse: (raw, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
const parsedList = yield listSchema.parse(raw, opts);
|
|
12
23
|
if (parsedList.ok) {
|
|
13
24
|
return {
|
|
14
25
|
ok: true,
|
|
@@ -18,27 +29,25 @@ function set(schema) {
|
|
|
18
29
|
else {
|
|
19
30
|
return parsedList;
|
|
20
31
|
}
|
|
21
|
-
},
|
|
22
|
-
json:
|
|
32
|
+
}),
|
|
33
|
+
json: (parsed, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
34
|
+
var _a;
|
|
23
35
|
if (!(parsed instanceof Set)) {
|
|
24
36
|
return {
|
|
25
37
|
ok: false,
|
|
26
38
|
errors: [
|
|
27
39
|
{
|
|
28
|
-
path: [],
|
|
29
|
-
message:
|
|
40
|
+
path: (_a = opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix) !== null && _a !== void 0 ? _a : [],
|
|
41
|
+
message: (0, getErrorMessageForIncorrectType_1.getErrorMessageForIncorrectType)(parsed, "Set"),
|
|
30
42
|
},
|
|
31
43
|
],
|
|
32
44
|
};
|
|
33
45
|
}
|
|
34
|
-
const jsonList =
|
|
46
|
+
const jsonList = yield listSchema.json([...parsed], opts);
|
|
35
47
|
return jsonList;
|
|
36
|
-
},
|
|
48
|
+
}),
|
|
37
49
|
getType: () => Schema_1.SchemaType.SET,
|
|
38
50
|
};
|
|
39
|
-
return {
|
|
40
|
-
...baseSchema,
|
|
41
|
-
...(0, schema_utils_1.getSchemaUtils)(baseSchema),
|
|
42
|
-
};
|
|
51
|
+
return Object.assign(Object.assign({}, (0, maybeSkipValidation_1.maybeSkipValidation)(baseSchema)), (0, schema_utils_1.getSchemaUtils)(baseSchema));
|
|
43
52
|
}
|
|
44
53
|
exports.set = set;
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export type { inferParsedUnidiscriminatedUnionSchema, inferRawUnidiscriminatedUnionSchema, UndiscriminatedUnionSchema, } from "./types";
|
|
2
2
|
export { undiscriminatedUnion } from "./undiscriminatedUnion";
|
|
@@ -1,37 +1,51 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
2
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
12
|
exports.undiscriminatedUnion = void 0;
|
|
4
13
|
const Schema_1 = require("../../Schema");
|
|
14
|
+
const maybeSkipValidation_1 = require("../../utils/maybeSkipValidation");
|
|
5
15
|
const schema_utils_1 = require("../schema-utils");
|
|
6
16
|
function undiscriminatedUnion(schemas) {
|
|
7
17
|
const baseSchema = {
|
|
8
|
-
parse:
|
|
9
|
-
return validateAndTransformUndiscriminatedUnion((schema) => schema.parse(raw, opts), schemas);
|
|
10
|
-
},
|
|
11
|
-
json:
|
|
12
|
-
return validateAndTransformUndiscriminatedUnion((schema) => schema.json(parsed, opts), schemas);
|
|
13
|
-
},
|
|
18
|
+
parse: (raw, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
19
|
+
return validateAndTransformUndiscriminatedUnion((schema, opts) => schema.parse(raw, opts), schemas, opts);
|
|
20
|
+
}),
|
|
21
|
+
json: (parsed, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
22
|
+
return validateAndTransformUndiscriminatedUnion((schema, opts) => schema.json(parsed, opts), schemas, opts);
|
|
23
|
+
}),
|
|
14
24
|
getType: () => Schema_1.SchemaType.UNDISCRIMINATED_UNION,
|
|
15
25
|
};
|
|
16
|
-
return {
|
|
17
|
-
...baseSchema,
|
|
18
|
-
...(0, schema_utils_1.getSchemaUtils)(baseSchema),
|
|
19
|
-
};
|
|
26
|
+
return Object.assign(Object.assign({}, (0, maybeSkipValidation_1.maybeSkipValidation)(baseSchema)), (0, schema_utils_1.getSchemaUtils)(baseSchema));
|
|
20
27
|
}
|
|
21
28
|
exports.undiscriminatedUnion = undiscriminatedUnion;
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
const
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
function validateAndTransformUndiscriminatedUnion(transform, schemas, opts) {
|
|
30
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
31
|
+
const errors = [];
|
|
32
|
+
for (const [index, schema] of schemas.entries()) {
|
|
33
|
+
const transformed = yield transform(schema, Object.assign(Object.assign({}, opts), { skipValidation: false }));
|
|
34
|
+
if (transformed.ok) {
|
|
35
|
+
return transformed;
|
|
36
|
+
}
|
|
37
|
+
else {
|
|
38
|
+
for (const error of transformed.errors) {
|
|
39
|
+
errors.push({
|
|
40
|
+
path: error.path,
|
|
41
|
+
message: `[Variant ${index}] ${error.message}`,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
}
|
|
31
45
|
}
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
};
|
|
46
|
+
return {
|
|
47
|
+
ok: false,
|
|
48
|
+
errors,
|
|
49
|
+
};
|
|
50
|
+
});
|
|
37
51
|
}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
-
export { discriminant
|
|
2
|
-
export
|
|
1
|
+
export { discriminant } from "./discriminant";
|
|
2
|
+
export type { Discriminant } from "./discriminant";
|
|
3
|
+
export type { inferParsedDiscriminant, inferParsedUnion, inferRawDiscriminant, inferRawUnion, UnionSubtypes, } from "./types";
|
|
3
4
|
export { union } from "./union";
|
|
@@ -1,9 +1,31 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
var __rest = (this && this.__rest) || function (s, e) {
|
|
12
|
+
var t = {};
|
|
13
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
|
|
14
|
+
t[p] = s[p];
|
|
15
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function")
|
|
16
|
+
for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
17
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
|
|
18
|
+
t[p[i]] = s[p[i]];
|
|
19
|
+
}
|
|
20
|
+
return t;
|
|
21
|
+
};
|
|
2
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
23
|
exports.union = void 0;
|
|
4
24
|
const Schema_1 = require("../../Schema");
|
|
25
|
+
const getErrorMessageForIncorrectType_1 = require("../../utils/getErrorMessageForIncorrectType");
|
|
5
26
|
const isPlainObject_1 = require("../../utils/isPlainObject");
|
|
6
27
|
const keys_1 = require("../../utils/keys");
|
|
28
|
+
const maybeSkipValidation_1 = require("../../utils/maybeSkipValidation");
|
|
7
29
|
const enum_1 = require("../enum");
|
|
8
30
|
const object_like_1 = require("../object-like");
|
|
9
31
|
const schema_utils_1 = require("../schema-utils");
|
|
@@ -14,107 +36,106 @@ function union(discriminant, union) {
|
|
|
14
36
|
: discriminant.parsedDiscriminant;
|
|
15
37
|
const discriminantValueSchema = (0, enum_1.enum_)((0, keys_1.keys)(union));
|
|
16
38
|
const baseSchema = {
|
|
17
|
-
parse:
|
|
39
|
+
parse: (raw, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
18
40
|
return transformAndValidateUnion({
|
|
19
41
|
value: raw,
|
|
20
42
|
discriminant: rawDiscriminant,
|
|
21
43
|
transformedDiscriminant: parsedDiscriminant,
|
|
22
|
-
transformDiscriminantValue: (discriminantValue) =>
|
|
23
|
-
|
|
24
|
-
|
|
44
|
+
transformDiscriminantValue: (discriminantValue) => {
|
|
45
|
+
var _a;
|
|
46
|
+
return discriminantValueSchema.parse(discriminantValue, {
|
|
47
|
+
allowUnrecognizedEnumValues: opts === null || opts === void 0 ? void 0 : opts.allowUnrecognizedUnionMembers,
|
|
48
|
+
breadcrumbsPrefix: [...((_a = opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix) !== null && _a !== void 0 ? _a : []), rawDiscriminant],
|
|
49
|
+
});
|
|
50
|
+
},
|
|
25
51
|
getAdditionalPropertiesSchema: (discriminantValue) => union[discriminantValue],
|
|
26
|
-
allowUnrecognizedUnionMembers: opts
|
|
52
|
+
allowUnrecognizedUnionMembers: opts === null || opts === void 0 ? void 0 : opts.allowUnrecognizedUnionMembers,
|
|
27
53
|
transformAdditionalProperties: (additionalProperties, additionalPropertiesSchema) => additionalPropertiesSchema.parse(additionalProperties, opts),
|
|
54
|
+
breadcrumbsPrefix: opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix,
|
|
28
55
|
});
|
|
29
|
-
},
|
|
30
|
-
json:
|
|
56
|
+
}),
|
|
57
|
+
json: (parsed, opts) => __awaiter(this, void 0, void 0, function* () {
|
|
31
58
|
return transformAndValidateUnion({
|
|
32
59
|
value: parsed,
|
|
33
60
|
discriminant: parsedDiscriminant,
|
|
34
61
|
transformedDiscriminant: rawDiscriminant,
|
|
35
|
-
transformDiscriminantValue: (discriminantValue) =>
|
|
36
|
-
|
|
37
|
-
|
|
62
|
+
transformDiscriminantValue: (discriminantValue) => {
|
|
63
|
+
var _a;
|
|
64
|
+
return discriminantValueSchema.json(discriminantValue, {
|
|
65
|
+
allowUnrecognizedEnumValues: opts === null || opts === void 0 ? void 0 : opts.allowUnrecognizedUnionMembers,
|
|
66
|
+
breadcrumbsPrefix: [...((_a = opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix) !== null && _a !== void 0 ? _a : []), parsedDiscriminant],
|
|
67
|
+
});
|
|
68
|
+
},
|
|
38
69
|
getAdditionalPropertiesSchema: (discriminantValue) => union[discriminantValue],
|
|
39
|
-
allowUnrecognizedUnionMembers: opts
|
|
70
|
+
allowUnrecognizedUnionMembers: opts === null || opts === void 0 ? void 0 : opts.allowUnrecognizedUnionMembers,
|
|
40
71
|
transformAdditionalProperties: (additionalProperties, additionalPropertiesSchema) => additionalPropertiesSchema.json(additionalProperties, opts),
|
|
72
|
+
breadcrumbsPrefix: opts === null || opts === void 0 ? void 0 : opts.breadcrumbsPrefix,
|
|
41
73
|
});
|
|
42
|
-
},
|
|
74
|
+
}),
|
|
43
75
|
getType: () => Schema_1.SchemaType.UNION,
|
|
44
76
|
};
|
|
45
|
-
return {
|
|
46
|
-
...baseSchema,
|
|
47
|
-
...(0, schema_utils_1.getSchemaUtils)(baseSchema),
|
|
48
|
-
...(0, object_like_1.getObjectLikeUtils)(baseSchema),
|
|
49
|
-
};
|
|
77
|
+
return Object.assign(Object.assign(Object.assign({}, (0, maybeSkipValidation_1.maybeSkipValidation)(baseSchema)), (0, schema_utils_1.getSchemaUtils)(baseSchema)), (0, object_like_1.getObjectLikeUtils)(baseSchema));
|
|
50
78
|
}
|
|
51
79
|
exports.union = union;
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
ok: false,
|
|
56
|
-
errors: [
|
|
57
|
-
{
|
|
58
|
-
path: [],
|
|
59
|
-
message: isPlainObject_1.NOT_AN_OBJECT_ERROR_MESSAGE,
|
|
60
|
-
},
|
|
61
|
-
],
|
|
62
|
-
};
|
|
63
|
-
}
|
|
64
|
-
const { [discriminant]: discriminantValue, ...additionalProperties } = value;
|
|
65
|
-
if (discriminantValue == null) {
|
|
66
|
-
return {
|
|
67
|
-
ok: false,
|
|
68
|
-
errors: [
|
|
69
|
-
{
|
|
70
|
-
path: [],
|
|
71
|
-
message: `Missing discriminant ("${discriminant}")`,
|
|
72
|
-
},
|
|
73
|
-
],
|
|
74
|
-
};
|
|
75
|
-
}
|
|
76
|
-
const transformedDiscriminantValue = await transformDiscriminantValue(discriminantValue);
|
|
77
|
-
if (!transformedDiscriminantValue.ok) {
|
|
78
|
-
return {
|
|
79
|
-
ok: false,
|
|
80
|
-
errors: transformedDiscriminantValue.errors.map((error) => ({
|
|
81
|
-
path: [discriminant, ...error.path],
|
|
82
|
-
message: error.message,
|
|
83
|
-
})),
|
|
84
|
-
};
|
|
85
|
-
}
|
|
86
|
-
const additionalPropertiesSchema = getAdditionalPropertiesSchema(transformedDiscriminantValue.value);
|
|
87
|
-
if (additionalPropertiesSchema == null) {
|
|
88
|
-
if (allowUnrecognizedUnionMembers) {
|
|
80
|
+
function transformAndValidateUnion({ value, discriminant, transformedDiscriminant, transformDiscriminantValue, getAdditionalPropertiesSchema, allowUnrecognizedUnionMembers = false, transformAdditionalProperties, breadcrumbsPrefix = [], }) {
|
|
81
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
82
|
+
if (!(0, isPlainObject_1.isPlainObject)(value)) {
|
|
89
83
|
return {
|
|
90
|
-
ok:
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
84
|
+
ok: false,
|
|
85
|
+
errors: [
|
|
86
|
+
{
|
|
87
|
+
path: breadcrumbsPrefix,
|
|
88
|
+
message: (0, getErrorMessageForIncorrectType_1.getErrorMessageForIncorrectType)(value, "object"),
|
|
89
|
+
},
|
|
90
|
+
],
|
|
95
91
|
};
|
|
96
92
|
}
|
|
97
|
-
|
|
93
|
+
const _a = value, _b = discriminant, discriminantValue = _a[_b], additionalProperties = __rest(_a, [typeof _b === "symbol" ? _b : _b + ""]);
|
|
94
|
+
if (discriminantValue == null) {
|
|
98
95
|
return {
|
|
99
96
|
ok: false,
|
|
100
97
|
errors: [
|
|
101
98
|
{
|
|
102
|
-
path:
|
|
103
|
-
message:
|
|
99
|
+
path: breadcrumbsPrefix,
|
|
100
|
+
message: `Missing discriminant ("${discriminant}")`,
|
|
104
101
|
},
|
|
105
102
|
],
|
|
106
103
|
};
|
|
107
104
|
}
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
value
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
105
|
+
const transformedDiscriminantValue = yield transformDiscriminantValue(discriminantValue);
|
|
106
|
+
if (!transformedDiscriminantValue.ok) {
|
|
107
|
+
return {
|
|
108
|
+
ok: false,
|
|
109
|
+
errors: transformedDiscriminantValue.errors,
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
const additionalPropertiesSchema = getAdditionalPropertiesSchema(transformedDiscriminantValue.value);
|
|
113
|
+
if (additionalPropertiesSchema == null) {
|
|
114
|
+
if (allowUnrecognizedUnionMembers) {
|
|
115
|
+
return {
|
|
116
|
+
ok: true,
|
|
117
|
+
value: Object.assign({ [transformedDiscriminant]: transformedDiscriminantValue.value }, additionalProperties),
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
else {
|
|
121
|
+
return {
|
|
122
|
+
ok: false,
|
|
123
|
+
errors: [
|
|
124
|
+
{
|
|
125
|
+
path: [...breadcrumbsPrefix, discriminant],
|
|
126
|
+
message: "Unexpected discriminant value",
|
|
127
|
+
},
|
|
128
|
+
],
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
}
|
|
132
|
+
const transformedAdditionalProperties = yield transformAdditionalProperties(additionalProperties, additionalPropertiesSchema);
|
|
133
|
+
if (!transformedAdditionalProperties.ok) {
|
|
134
|
+
return transformedAdditionalProperties;
|
|
135
|
+
}
|
|
136
|
+
return {
|
|
137
|
+
ok: true,
|
|
138
|
+
value: Object.assign({ [transformedDiscriminant]: discriminantValue }, transformedAdditionalProperties.value),
|
|
139
|
+
};
|
|
140
|
+
});
|
|
120
141
|
}
|
package/core/schemas/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
export * from "./builders";
|
|
2
|
-
export {
|
|
2
|
+
export type { inferParsed, inferRaw, Schema, SchemaOptions } from "./Schema";
|